/* Keep compact labels distinct from body copy, with full Lithuanian font coverage. */
body{
 --vln-font-body:"Montserrat",Arial,sans-serif;
 --vln-font-heading:"Cormorant Garamond",Georgia,serif;
 --vln-text-body:16px;
 --vln-text-small:14px;
 --vln-heading-section:clamp(34px,3.6vw,48px);
 --vln-heading-card:clamp(25px,2.2vw,29px);
}
body .processSteps h3{font-family:"Montserrat",Arial,sans-serif!important;font-size:18px!important;font-weight:600!important;line-height:1.4!important}
body .processSteps p{font-size:15px!important;line-height:1.7!important;max-width:29ch;color:#625a50}
body :is(.hallIntro,.hallPageIntro)>p:not(.eyebrow),
body :is(.homeAbout,.whyChoose,.homeServices,.reviewsHeading)>p:not(.eyebrow),
body :is(.serviceCard,.articleCard,.benefitStrip,.hallCapacity) p,
body .hallFaq details p,body .hallAddressCards article>p{font-size:15px!important;line-height:1.7!important}
body :is(.primaryButton,.outlineButton,.darkButton){font-size:12px!important;line-height:1.5!important;min-height:44px}
body :is(.homeHalls,.allHalls) .hallCarousel .hallInfo footer a{font-size:12px!important;line-height:1.45!important}
body .centralServicesNoticeCard{font-size:13px!important;line-height:1.65!important}
body .heroFeatures span{font-size:12px!important;line-height:1.6!important}
body :is(.sideIntro,.whyUs,.aboutText,.guideQuestion)>p:not(.eyebrow),body .innerServiceGrid p,
body .articleGrid p,body .aboutText li{font-size:15px!important;line-height:1.7!important}
body .benefitStrip span,body .metrics span{font-size:13px!important;line-height:1.6!important}
body .articleGrid footer a,body .articleGrid footer span{font-size:12px!important;line-height:1.5!important}
body .siteFooter>div:not(.footBottom){font-size:14px!important;line-height:1.65!important}
body .eyebrow{font-size:12px!important;line-height:1.5!important}
body :is(.contactForm,.detailContact,.siteModalBackdrop,.modalBackdrop) :is(input,select,textarea){font-size:16px!important}
@media(max-width:700px){
 body .processSteps article{grid-template-columns:38px minmax(0,1fr)!important;gap:8px 14px!important;padding:20px 18px!important}
 body .processSteps .stepNo{grid-column:1!important;grid-row:1!important}
 body .processSteps i{grid-column:1!important;grid-row:2!important;width:38px!important;height:38px!important;margin:0!important}
 body .processSteps h3{grid-column:2!important;grid-row:1!important;font-size:17px!important}
 body .processSteps p{grid-column:2!important;grid-row:2!important;margin:0!important;max-width:none}
}

/* Shared typography for the CMS inner landing components. */
body :is(.pageHero,.serviceDetailHero) h1{
 font-family:var(--vln-font-heading)!important;
 font-size:clamp(40px,5vw,64px)!important;
 font-weight:500!important;line-height:1.08!important;letter-spacing:-.02em;
}
body :is(.pageHero,.serviceDetailHero) p:not(.eyebrow){
 font-family:var(--vln-font-body)!important;font-size:var(--vln-text-body)!important;line-height:1.75!important;
}
body :is(.innerIntro,.detailLead,.included,.hallPageIntro,.gallerySection,.aboutStory,.values,.locations,.detailSplit,.hallDetailCopy,.hallDetailIntro,.hallFaq,.hallLocation,.contentLead,.contentFaq,.contentFeatures,.contentCta,.coffinsDetail__copy,.monumentsDetail__copy) h2{
 font-family:var(--vln-font-heading)!important;font-size:var(--vln-heading-section)!important;
 font-weight:500!important;line-height:1.15!important;letter-spacing:-.015em;margin-bottom:22px;
}
body :is(.innerIntro,.detailLead,.aboutStory,.serviceIntroText,.hallPageIntro,.hallDetailCopy,.hallDetailIntro,.contentLead,.coffinsDetail__copy,.monumentsDetail__copy) p:not(.eyebrow),
body :is(.included,.values,.hallFacilities,.serviceTrust,.contentFeatures) p:not(.eyebrow),
body :is(.serviceLists,.detailSplit) li,
body :is(.coffinsAccordion__panel,.contentFaq,.hallFaq) p{
 font-family:var(--vln-font-body)!important;font-size:var(--vln-text-body)!important;
 font-weight:400;line-height:1.8!important;letter-spacing:normal;
}
body :is(.included,.values,.hallFacilities,.serviceTrust,.contentFeatures) h3,
body .innerServiceGrid article h3,body .innerServiceGrid article h3 a{
 font-family:var(--vln-font-heading)!important;font-size:var(--vln-heading-card)!important;
 font-weight:500!important;line-height:1.25!important;letter-spacing:normal;
}
body .serviceLists :is(h2,h3){font-family:var(--vln-font-body)!important;font-size:18px!important;line-height:1.5!important;font-weight:600!important;letter-spacing:.03em}
body .detailSplit li span,body .serviceLists aside b,body .numbersBand span,
body .locations article :is(span,a){font-family:var(--vln-font-body)!important;font-size:var(--vln-text-small)!important;line-height:1.65!important}
body :is(.hallFaq,.contentFaq) summary{font-family:var(--vln-font-body)!important;font-size:16px!important;line-height:1.5!important}
body .faqPage h1{font-family:var(--vln-font-heading)!important;font-size:clamp(40px,5vw,64px)!important;font-weight:500!important;line-height:1.08!important}
body .faqPage h2{font-family:var(--vln-font-heading)!important;font-size:clamp(30px,2.8vw,36px)!important;font-weight:500!important;line-height:1.2!important}
body .faqPage__cta h2{font-size:var(--vln-heading-section)!important}
body .innerServiceGrid a{font-size:12px!important;line-height:1.5!important}

/* About: readable paragraphs and an image aligned with the opening copy. */
body .aboutStoryExpanded{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,80px);align-items:start;padding-top:72px;padding-bottom:72px}
body .aboutStoryExpanded>div{min-width:0;max-width:70ch}
body .aboutStoryExpanded p:not(.eyebrow){margin:0 0 20px;color:#625a50}
body .aboutStoryExpanded>img{display:block;width:100%;height:auto;margin:0;border-radius:16px;align-self:start}
body .aboutValues>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body .aboutValues article{min-width:0;padding:28px;border:1px solid #e3dbcf;border-radius:16px;background:#f6f2eb}
body .aboutValues article h3{margin:18px 0 12px}
body .aboutValues article p{margin:0;color:#625a50}
@media(max-width:700px){
 body .aboutStoryExpanded{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:48px;padding-bottom:48px}
 body .aboutValues>div{grid-template-columns:minmax(0,1fr);gap:18px}
 body .aboutValues article{padding:24px}
 body :is(.innerIntro,.detailLead,.aboutStory,.serviceIntroText) p:not(.eyebrow){text-align:left}
}
