/** Shared content layouts: mobile first, expanded at 721 / 961 / 1151px. */
:root { --lareen-ux-radius:14px; --lareen-ux-gap:clamp(16px,2.4vw,28px); }
.site-main :where(img,video,iframe) { max-width:100%; }
:where(.site-main) :where(.container,.article-shell,.entry-content,.page-hero-content,.page-hero-visual,.form-card,.quote-sidebar,.lareen-service-card,.sp-card) { min-width:0; }
:where(.site-main) :where(h1,h2,h3,p,li) { overflow-wrap:break-word; }
.site-main .section-padding { padding-block:34px; }
.site-main .section-header { margin-bottom:clamp(18px,3vw,34px); }
.site-main .section-header h2 { font-size:clamp(1.5rem,2.6vw,2.2rem); line-height:1.4; }
.site-main .section-header p { font-size:clamp(.98rem,1.25vw,1.075rem); line-height:1.8; }
.site-main :where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #c5922e; outline-offset:3px; }
.site-main .btn { min-height:48px; max-width:100%; white-space:normal; text-align:center; line-height:1.55; }
.site-main :where(.lareen-service-card,.audience-card,.sp-card) { min-width:0; }
.lareen-service-page .page-hero,.route-landing .page-hero,.site-main>.page-hero { background:linear-gradient(120deg,#061527,#0b2545 66%,#13406b); isolation:isolate; padding-block:40px; }
.lareen-service-page .page-hero::before,.route-landing .page-hero::before,.site-main>.page-hero::before { background:radial-gradient(circle at 85% 20%,rgba(197,146,46,.11),transparent 40%); }
.lareen-service-page .page-hero-grid,.route-landing .page-hero-grid,.site-main>.page-hero .page-hero-grid { grid-template-columns:minmax(0,1fr); gap:24px; align-items:center; }
.lareen-service-page .page-hero-grid h1,.route-landing .page-hero-grid h1 { font-size:clamp(1.7rem,5.5vw,2.4rem); line-height:1.35; }
.lareen-service-page .page-hero-grid .hero-lead,.route-landing .page-hero-grid .hero-lead { font-size:clamp(.96rem,1.35vw,1.12rem); line-height:1.85; }
.lareen-service-page .page-hero-grid .hero-actions,.route-landing .page-hero-grid .hero-actions,.site-main>.page-hero .page-hero-grid .hero-actions { display:flex; flex-direction:column; flex-wrap:wrap; gap:12px; align-items:stretch; }
.lareen-service-page .page-hero-grid .hero-actions .btn,.route-landing .page-hero-grid .hero-actions .btn,.site-main>.page-hero .page-hero-grid .hero-actions .btn { width:100%; min-width:0; justify-content:center; }
.lareen-service-page .page-hero-visual,.route-landing .page-hero-visual,.site-main>.page-hero .page-hero-visual { width:100%; max-width:580px; justify-self:stretch; }
.lareen-service-page .lareen-hero-slider-wrap,.route-landing .lareen-hero-slider-wrap { width:100%; max-width:100%; }
.lareen-service-page .lareen-hero-slider,.route-landing .lareen-hero-slider { width:100%; aspect-ratio:16/11; min-height:0; }
.lareen-service-page .lareen-hero-slider img,.route-landing .lareen-hero-slider img { max-width:100%; object-fit:cover; }
.lareen-service-page .lareen-service-reading,.route-landing .lareen-service-reading { width:min(100%,930px); margin-inline:auto; }
.lareen-service-page .lareen-service-grid,.route-landing .lareen-service-grid,.site-main .lareen-service-grid { grid-template-columns:minmax(0,1fr); gap:var(--lareen-ux-gap); }
.lareen-service-page .lareen-service-card,.route-landing .lareen-service-card,.site-main .lareen-service-card { display:flex; flex-direction:column; gap:10px; height:100%; padding:20px; border:1px solid #e0e8f0; border-radius:var(--lareen-ux-radius); box-shadow:0 3px 14px rgba(11,37,69,.035); }
.site-main .lareen-service-card :where(h3,p) { margin:0; }
.site-main .lareen-service-card h3 { font-size:clamp(1.08rem,1.55vw,1.22rem); line-height:1.5; }
.site-main .lareen-service-card p { font-size:clamp(.94rem,1vw,1rem); line-height:1.8; flex:1; }
.site-main .lareen-service-card>.btn,.site-main .lareen-service-card>a:last-child { margin-top:auto; align-self:flex-start; }
.site-main .lareen-service-card .eyebrow { align-self:flex-start; margin:0; padding:4px 10px; border-radius:20px; background:#f5eee0; color:#755116; font-size:.85rem; }
.site-main .lareen-service-card>a:not(.btn) { display:inline-flex; min-height:44px; align-items:center; }
.lareen-service-page .lareen-service-faq,.route-landing .lareen-service-faq { padding:0; border-color:#dce5ee; border-radius:12px; overflow:hidden; }
.lareen-service-page .lareen-service-faq summary,.route-landing .lareen-service-faq summary { padding:16px 45px 16px 18px; min-height:54px; display:list-item; position:relative; cursor:pointer; }
.lareen-service-page .lareen-service-faq p,.route-landing .lareen-service-faq p { margin:0; padding:0 20px 20px; line-height:1.85; }
.site-main .lareen-service-reading a:not(.btn) { text-underline-offset:3px; }
.lareen-service-page .lareen-quickstart-section { padding-block:clamp(24px,4vw,44px); }
.lareen-jump-nav { background:#fff; border-block:1px solid #e3e9ef; }
.lareen-jump-nav .container { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; padding-block:12px; }
.lareen-jump-nav-label { grid-column:1/-1; margin:0; font-size:.85rem; color:#52657a; font-weight:700; }
.lareen-jump-nav a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px; border:1px solid #dee6ef; background:#f8fafc; color:#0b2545; border-radius:10px; font-size:.85rem; font-weight:700; line-height:1.4; }
.lareen-jump-nav a:hover { background:#f3e6cb; border-color:#c5922e; }
.site-main [id^="lareen-section-"],.site-main .form-step { scroll-margin-top:var(--lareen-header-offset,90px); }
.home-hero-fullwidth,.fullwidth-hero-content { min-height:0; }
.home-hero-fullwidth .fullwidth-hero-content { padding:clamp(58px,9vw,85px) 0 clamp(55px,8vw,80px); }
.home-hero-fullwidth .fullwidth-hero-content h1 { font-size:clamp(1.7rem,6vw,2.3rem); line-height:1.45; }
.home-hero-fullwidth .fullwidth-hero-content .hero-lead { font-size:1rem; line-height:1.8; }
.home-hero-fullwidth .hero-actions { display:flex; flex-direction:column; gap:12px; width:100%; }
.home-hero-fullwidth .hero-actions .btn { width:100%; min-height:50px; justify-content:center; }
.home-hero-fullwidth .hero-guarantees-dock { width:100%; padding:12px 15px; gap:8px; flex-direction:column; align-items:stretch; }
.home-hero-fullwidth .hero-guarantees-dock .hgd-item { width:100%; }
.services-premium-section .service-grid-premium,.audience-section .cards-grid.four { grid-template-columns:minmax(0,1fr); gap:16px; align-items:stretch; }
.services-premium-section .sp-card { display:flex; flex-direction:column; height:100%; padding:0; border-radius:16px; overflow:hidden; }
.services-premium-section .sp-image-wrap { position:relative; width:100%; height:auto; aspect-ratio:16/9; overflow:hidden; flex:0 0 auto; }
.services-premium-section .sp-image-wrap img { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; }
.services-premium-section .sp-content { flex:1; display:flex; flex-direction:column; padding:20px; margin-top:-10px; transform:none; min-width:0; }
.services-premium-section .sp-card:hover .sp-content { transform:none; }
.services-premium-section .sp-header { gap:10px; align-items:center; }
.services-premium-section .sp-header h3 { line-height:1.5; font-size:clamp(1.05rem,1.2vw,1.2rem); }
.services-premium-section .sp-header h3 a { color:inherit; text-decoration:none; }
.services-premium-section .sp-header h3 a:hover { color:#865c16; text-decoration:underline; text-underline-offset:3px; }
.services-premium-section .sp-features { margin-bottom:18px; }
.services-premium-section .sp-btn { margin-top:auto; min-height:48px; }
.audience-section .audience-card { height:100%; padding:20px; }
.audience-section .audience-card h3 { font-size:clamp(1.1rem,1.4vw,1.25rem); line-height:1.5; }
.audience-section .audience-card p { font-size:.98rem; line-height:1.85; }
.page-hero.compact { padding-block:24px; }
.page-hero.compact h1 { font-size:clamp(1.45rem,5vw,2.1rem); line-height:1.4; }
.page-hero.compact .container.narrow { width:min(100% - 32px,920px); }
.site-main .article-shell { width:min(100%,920px); max-width:920px; padding:16px 0; }
.site-main .article-content { min-width:0; padding:20px 16px; border-radius:var(--lareen-ux-radius); }
.site-main .article-content table { display:block; max-width:100%; overflow-x:auto; }
.site-main .article-content img { height:auto; max-width:100%; }
.prefooter-cta-section .prefooter-cta-actions { display:flex; flex-direction:column; align-items:stretch; gap:12px; }
.prefooter-cta-section .prefooter-cta-actions .btn { width:100%; justify-content:center; max-width:100%; min-height:48px; }
.lareen-noscript-help { padding:16px 18px; margin-bottom:20px; border:1px solid #dce5ef; border-radius:12px; background:#fff7e6; color:#4d3c20; line-height:1.8; }
.lareen-noscript-help a { color:#0b2545; font-weight:700; text-decoration:underline; }
.lareen-services-hub .lareen-hub-advice { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--lareen-ux-gap); margin-block-start:clamp(22px,3.8vw,40px); }
.lareen-services-hub .lareen-hub-tip { min-width:0; padding:clamp(18px,2.2vw,28px); background:#f8fafc; border:1px solid #dce5ed; border-inline-start:3px solid #c5922e; border-radius:14px; display:flex; flex-direction:column; gap:11px; }
.lareen-services-hub .lareen-hub-tip .eyebrow { align-self:flex-start; color:#805b23; font-weight:700; font-size:.83rem; }
.lareen-services-hub .lareen-hub-tip h3 { font-size:clamp(1.18rem,1.6vw,1.4rem); margin:0; line-height:1.55; }
.lareen-services-hub .lareen-hub-tip p { line-height:1.85; font-size:.99rem; color:#40556b; margin:0; }
.lareen-services-hub .lareen-hub-tip>a { margin-top:auto; align-self:flex-start; font-weight:800; min-height:44px; display:inline-flex; align-items:center; text-underline-offset:3px; text-decoration:underline; }
@media (min-width:381px) { .lareen-jump-nav .container { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:721px) {
 .site-main .section-padding { padding-block:clamp(36px,5vw,72px); }
 .lareen-service-page .page-hero,.route-landing .page-hero,.site-main>.page-hero:not(.compact) { padding-block:clamp(35px,5vw,64px); }
 .lareen-service-page .page-hero-grid h1,.route-landing .page-hero-grid h1 { font-size:clamp(1.9rem,3.6vw,2.85rem); }
 .lareen-service-page .page-hero-grid .hero-actions,.route-landing .page-hero-grid .hero-actions,.site-main>.page-hero .page-hero-grid .hero-actions { flex-direction:row; }
 .lareen-service-page .page-hero-grid .hero-actions .btn,.route-landing .page-hero-grid .hero-actions .btn,.site-main>.page-hero .page-hero-grid .hero-actions .btn { width:auto; min-width:190px; }
 .site-main .lareen-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .site-main .lareen-service-card { padding:clamp(18px,2vw,26px); }
 .lareen-jump-nav .container { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding-block:14px; }
 .lareen-jump-nav-label { margin-inline-end:8px; }
 .lareen-jump-nav a { padding:7px 16px; border-radius:999px; font-size:.9rem; }
 .home-hero-fullwidth,.fullwidth-hero-content { min-height:clamp(510px,70svh,760px); }
 .home-hero-fullwidth .fullwidth-hero-content { padding-block:clamp(55px,7vw,90px); }
 .home-hero-fullwidth .fullwidth-hero-content h1 { font-size:clamp(28px,4vw,46px); line-height:1.35; }
 .home-hero-fullwidth .fullwidth-hero-content .hero-lead { font-size:clamp(15.5px,1.8vw,17px); line-height:1.85; }
 .home-hero-fullwidth .hero-actions { width:auto; flex-direction:row; }
 .home-hero-fullwidth .hero-actions .btn { width:auto; }
 .home-hero-fullwidth .hero-guarantees-dock { width:auto; padding:8px 24px; gap:16px; flex-direction:row; align-items:center; }
 .home-hero-fullwidth .hero-guarantees-dock .hgd-item { width:auto; }
 .services-premium-section .service-grid-premium,.audience-section .cards-grid.four { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--lareen-ux-gap); }
 .services-premium-section .sp-image-wrap { aspect-ratio:16/10; }
 .services-premium-section .sp-content { margin-top:-12px; padding:clamp(16px,1.6vw,22px); }
 .audience-section .audience-card { padding:clamp(18px,2vw,27px); }
 .site-main .article-content { padding:clamp(18px,3vw,34px); }
 .site-main .article-shell { padding-block:clamp(16px,2vw,28px); }
 .prefooter-cta-section .prefooter-cta-actions { flex-direction:row; flex-wrap:wrap; }
 .prefooter-cta-section .prefooter-cta-actions .btn { width:auto; }
 .lareen-services-hub .lareen-hub-advice { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:961px) {
 .lareen-service-page .page-hero-grid,.route-landing .page-hero-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:26px; }
 .site-main>.page-hero .page-hero-grid { grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr); gap:clamp(24px,3.8vw,52px); }
 .lareen-service-page .page-hero-visual,.route-landing .page-hero-visual { max-width:500px; justify-self:center; }
 .site-main>.page-hero .page-hero-visual { max-width:520px; justify-self:center; }
 .site-main .lareen-service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:1151px) {
 .services-premium-section .service-grid-premium,.audience-section .cards-grid.four { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .lareen-service-page .page-hero-grid,.route-landing .page-hero-grid { gap:clamp(24px,4vw,54px); }
}
@media (hover:none),(pointer:coarse) {
 .services-premium-section .sp-card:hover,.site-main .lareen-service-card:hover,.audience-section .audience-card:hover { transform:none; }
 .services-premium-section .sp-card:hover .sp-image-wrap img { transform:none; }
}
@media (prefers-reduced-motion:reduce) {
 .site-main :where(.slider-slide,.slider-track,.slider-dot,.slide-image,.lareen-hero-slider,.page-hero-image,.sp-card,.sp-content,.sp-image-wrap img,.btn,.audience-card,.lareen-service-card) { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
