/* Shared final cascade: one navigation, one footer and one accessible button system. */
:root body .site-header{width:100%;max-width:none;height:76px;min-height:76px;padding:0 40px;position:sticky;top:0;z-index:50;background:#022827;color:#f4eedf;border-bottom:1px solid #e5d8af1f;display:flex;flex-wrap:nowrap;align-items:center;gap:24px}
:root body .site-header .wordmark,:root body .agency-footer .wordmark{font:500 29px/1 Journey,Georgia,serif;letter-spacing:-1.2px;color:#f4eedf;white-space:nowrap}
:root body .wordmark{font-variant-numeric:lining-nums;align-items:baseline}
:root body .wordmark>span:first-child{font:inherit;font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;letter-spacing:inherit;vertical-align:baseline;margin:0;color:#d6bd83}
:root body .wordmark .dot{font:inherit;color:inherit}
:root body .site-header .site-desktop-nav{display:flex;flex-wrap:nowrap;align-items:center;order:initial;width:auto;padding:0;border:0;gap:34px;font:600 12px/1.4 Manrope,Arial,sans-serif}
:root body .site-header .site-disclosure,:root body .site-header .site-popover a{font:600 12px/1.4 Manrope,Arial,sans-serif;color:#f4eedf}
:root body .site-header a[aria-current="page"]{color:#e2bf86;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
:root body .site-header .site-popover,:root body .site-header .site-mobile-menu{background:#082c28;color:#f4eedf;border-color:#e2bf8633}
:root body .site-header .site-popover .eyebrow{color:#e2bf86}
:root body .button,:root body .site-header .site-booking{border-radius:999px;background:#b54a2b;border:1px solid #cd6845;color:#fff6e2;font:650 12px/1.4 Manrope,Arial,sans-serif;padding:14px 24px;min-height:46px}
:root body .site-header .site-booking{display:inline-flex;padding:10px 20px;min-height:38px;margin-left:auto}
:root body .button:hover,:root body .site-header .site-booking:hover{background:#c2562f;border-color:#cd6845;color:#fff6e2}
:root body :is(a,button,summary):focus-visible{outline:2px solid #e2bf86;outline-offset:3px}
:root body .agency-footer{background:#082c28;color:#d8dec6;padding:55px 0 25px}
:root body .agency-footer .frame{width:calc(100% - 128px);max-width:1250px;margin-inline:auto}
:root body .agency-footer .footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
:root body .agency-footer .footer-top p{font:italic 500 22px/1.4 Journey,Georgia,serif;color:#f4eedf}
:root body .agency-footer .footer-columns{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px}
:root body .agency-footer .footer-columns h2{font:600 10px/1.5 Manrope,Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#e2bf86}
:root body .agency-footer .footer-columns a{font:400 12px/1.7 Manrope,Arial,sans-serif;min-height:35px;color:#d8dec6}
:root body .agency-footer .footer-bottom{border-color:#d8dec62b}
:root body .agency-footer .footer-bottom :is(p,a){font:400 11px/1.7 Manrope,Arial,sans-serif;color:#d8dec6}
:root body .agency-footer .footer-artwork-note,:root body .agency-footer .artwork-note,:root body .agency-footer .brand-artwork-note{font:400 10px/1.7 Manrope,Arial,sans-serif;color:#d8dec6;opacity:.7;text-align:center;margin:20px auto 0;max-width:850px}@media(max-width:1100px){
:root body .site-header .site-desktop-nav{gap:18px}
:root body .agency-footer .frame{width:calc(100% - 80px)}}@media(max-width:900px){
:root body .site-header .site-desktop-nav{display:none}
:root body .site-header .site-mobile-toggle{display:inline-flex}
:root body .agency-footer .footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){
:root body .site-header{padding:0 20px;gap:12px}
:root body .site-header .wordmark{font-size:24px}
:root body .site-header .site-booking{font-size:11px;padding:10px 14px}
:root body .site-header .site-mobile-toggle{font-size:11px}
:root body .site-header .site-mobile-menu{top:76px}
:root body .agency-footer .frame{width:calc(100% - 40px)}
:root body .agency-footer .footer-top{align-items:flex-start;flex-wrap:wrap}
:root body .agency-footer .footer-top p{max-width:230px}
:root body .inner-reading-progress{top:76px}}@media(max-width:360px){
:root body .site-header{gap:8px;padding-inline:12px}
:root body .site-header .site-booking{padding-inline:10px}}/* Fix scrims and preserve the chapter-number gutter. */
.inner-imagery .campaign-intro.inner-scene::after{inset:0;height:auto}
.inner-imagery .inner-scene>.section-index{position:absolute;z-index:2}
.inner-imagery .inner-scene-dark:has(>.inner-paint-left)::after{background:linear-gradient(90deg,#032f2e40,#032f2ebf 35%,#032f2eeb 65%)}
.inner-imagery .inner-scene-dark:has(>.inner-paint-right)::after{background:linear-gradient(270deg,#032f2e40,#032f2ebf 35%,#032f2eeb 65%)}
.inner-imagery .work-rhythm{background:#032f2e;color:#f4eedf}
.inner-imagery .work-rhythm>.inner-paint{mix-blend-mode:normal;--paint-opacity:.35}
.inner-imagery .work-rhythm :is(h2,h3,p,li){color:#f4eedf}
.inner-imagery .core-intro.inner-hero{padding-top:48px}
.inner-imagery .core-intro.inner-hero>.campaign-intro-copy,.inner-imagery .campaign-intro-copy{max-width:560px}
.inner-imagery .inner-hero>.inner-paint{width:52%}
.inner-imagery .core-section.inner-scene>.inner-paint{inset:32px 0 32px auto;width:min(30vw,440px);height:auto;max-height:none;mix-blend-mode:multiply}
.inner-imagery .core-section.inner-scene>.inner-paint img{opacity:.7;object-position:center;mask-image:radial-gradient(ellipse 70% 62% at 55% 50%,#000 45%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 70% 62% at 55% 50%,#000 45%,transparent 100%)}
.inner-imagery .core-section.inner-scene::after{display:none}
.inner-imagery .core-section.inner-scene>*:not(.inner-paint):not(.section-index):not(.inner-motif){max-width:min(760px,58vw)}
.inner-imagery .inner-paint img[src*="o-shield"]{object-position:60% 40%}
.inner-imagery .campaign-intro .core-price-note{margin-top:24px;max-width:520px;font-size:13px}
.campaign-careers .core-callout{margin-top:32px}/* Drawings have their own reserved space, not a low-opacity layer over copy. */
.inner-imagery .inner-motif{opacity:.4;color:#ac4728}
.inner-imagery :is(.inner-scene-dark,.agency-closing,.core-cta,.work-hero,.work-closing) .inner-motif{opacity:.5;color:#e2bf86}
.inner-imagery .core-section>.inner-motif{left:auto;right:24px;top:auto;bottom:24px;width:150px;height:150px}
.inner-imagery .core-section:has(>.inner-motif){padding-bottom:200px}
.inner-imagery :is(.agency-closing,.core-cta):has(>.inner-motif){padding-bottom:200px}
.inner-imagery :is(.agency-closing,.core-cta)>.inner-motif{top:auto;right:32px;bottom:24px;width:150px;height:150px}
.inner-imagery h2>.inner-motif{left:calc(100% + 24px);right:auto;top:0;width:100px;height:100px}
.inner-imagery .inner-work-gutter{left:-48px;right:auto}
.inner-imagery .work-chapter-reverse .inner-work-gutter{left:auto;right:-48px}
.inner-imagery .utility-number>.inner-motif{width:360px;height:360px;opacity:.6;right:0;top:50%;transform:translateY(-50%)}@media(max-width:1099px){
.inner-imagery .inner-motif{display:none}
.inner-imagery [data-inner-drawing="v12"],.inner-imagery [data-inner-drawing="v17"]{display:block}
.inner-imagery .core-section:has(>.inner-motif){padding-bottom:48px}
.inner-imagery .inner-scene:has(>.inner-paint){display:flex;flex-direction:column}
.inner-imagery .inner-scene>.inner-paint,.inner-imagery .core-section.inner-scene>.inner-paint,.inner-imagery.campaign-pricing .core-intro.inner-hero>.inner-paint,.inner-imagery .audit-intro.inner-scene>.inner-paint{position:relative;order:-1;inset:auto;width:100%;height:220px;max-height:none;flex:none;margin:0 0 24px;mix-blend-mode:normal}
.inner-imagery .inner-scene>.inner-paint img,.inner-imagery .core-section.inner-scene>.inner-paint img{opacity:.55;object-position:center;mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 70%,transparent),linear-gradient(to right,transparent,#000 15%,#000 85%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 70%,transparent),linear-gradient(to right,transparent,#000 15%,#000 85%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.inner-imagery .inner-scene::after{display:none}
.inner-imagery .core-section.inner-scene>*:not(.inner-paint):not(.section-index):not(.inner-motif){max-width:100%}
.inner-imagery .core-intro.inner-hero>.campaign-intro-copy{max-width:100%}
.inner-imagery .utility-number>.inner-motif{width:260px;height:260px}
}/* Sample audit uses the same forest, paper and serif system. */
:root body.audit-report{--plum:#002828;--ink:#002828;--paper:#f3ebdd;--ivory:#f3ebdd;--copper:#ac4728;background:#f3ebdd;color:#002828}
.audit-report :is(h1,h2,h3){font-family:Journey,Georgia,serif;font-weight:500}
.audit-report .audit-map{background:#002828;color:#f3ebdd}
.inner-imagery .audit-intro.inner-scene>.inner-paint{width:50%;--paint-opacity:.55}
.inner-imagery .audit-intro.inner-scene>.inner-paint img{opacity:.55}@media(max-width:1099px){
.inner-imagery .audit-intro.inner-scene>.inner-paint{width:100%}}
.campaign-careers .record-visual{margin-top:32px}
.campaign-founder-video .campaign-intro-copy>.core-note{margin-top:24px;max-width:520px;font-size:13px}/* Every large decorative motif gets a reserved lower gutter, including service and editorial hosts. */@media(min-width:1100px){
.inner-imagery .inner-motif-host:not(h2):not(a):not(.utility-number):not(.founder-hero):not(.route-marker):has(>.inner-motif:not(.inner-motif-small)){padding-bottom:200px}
.inner-imagery .inner-motif-host:not(h2):not(a):not(.utility-number):not(.founder-hero):not(.route-marker)>.inner-motif:not(.inner-motif-small){inset:auto 24px 24px auto;width:150px;height:150px}
.inner-imagery .inner-motif-host:has(>.inner-plan-laurel){padding-top:80px}
.inner-imagery .inner-plan-laurel{inset:20px 20px auto auto;width:40px;height:40px}
.inner-imagery .inner-featured-article{padding-right:80px!important}
.inner-imagery .guide-copy h2.inner-motif-host{max-width:calc(100% - 124px)}
}@media(max-width:1099px){
.inner-imagery .inner-motif-host:has(>[data-inner-drawing="v12"]){padding-bottom:200px}
.inner-imagery .inner-motif-host>[data-inner-drawing="v12"]{position:absolute;inset:auto 24px 24px auto;width:150px;height:150px}}
:root body:has(.audit-report){--plum:#002828;--ink:#002828;--ivory:#f3ebdd;--paper:#f3ebdd;--copper:#ac4728;background:#f3ebdd;color:#002828}
.audit-report{--audit-dark:#002828;--audit-wash:#eee5d5}
.inner-imagery .utility-main .utility-number{opacity:1;color:#bba27c29}@media(min-width:1100px){
.inner-imagery .utility-main>h1{max-width:calc(100% - 400px)}
.inner-imagery .utility-main .utility-number{right:0;width:360px;font-size:240px}}@media(max-width:1099px){
.inner-imagery .utility-main .utility-number{position:relative;inset:auto;width:100%;height:260px;margin:0;font-size:0}
.inner-imagery .utility-number>.inner-motif{right:50%;transform:translate(50%,-50%)}}
:root body .agency-footer .home-brand-note{font:400 10px/1.7 Manrope,Arial,sans-serif;color:#d8dec6;opacity:.7;text-align:center;margin:20px auto 0;max-width:850px;padding-inline:20px}
:root body .agency-footer .footer-rider{display:inline-block;width:80px;height:46px;vertical-align:middle;margin-left:18px;color:#e2bf86}
:root body .site-header .site-desktop-nav>a{font:600 12px/1.4 Manrope,Arial,sans-serif;color:#f4eedf}
:root body .site-header .site-desktop-nav>a[aria-current="page"]{color:#e2bf86}
:root body .site-header .site-mobile-toggle{display:none}
:root body .agency-footer .footer-top p{display:flex;align-items:center;gap:18px;max-width:none;margin:0}
:root body .agency-footer .footer-rider{flex:0 0 80px;opacity:.5;margin-left:0}
:root body:has(.audit-report){--plum:#002828;--ink:#002828;--paper:#f3ebdd;--ivory:#f3ebdd;--copper:#ac4728;background:#f3ebdd;color:#002828}
.audit-report{--audit-dark:#002828;--audit-border:#d8c8b3;--audit-wash:#eee4d1}@media(max-width:1000px){
:root body .site-header .site-desktop-nav{display:none}
:root body .site-header .site-mobile-toggle{display:inline-flex}}@media(max-width:360px){
:root body .site-header .wordmark{font-size:20px}
:root body .site-header .site-booking{font-size:10px;padding-inline:8px}
:root body .site-header .site-mobile-toggle{font-size:10px;padding-inline:0}}@media(forced-colors:active){
:root body .agency-footer .footer-rider{display:none}}/* Keep native navigation surfaces readable against the shared forest panel. */
:root body .site-header .site-popover a[aria-current="page"]{background:#123d35;color:#e2bf86}
:root body .site-header .site-mobile-menu .site-menu-close{background:#082c28;color:#f4eedf}/* Reset homepage-only spacing so the shared footer renders consistently. */
:root body .agency-footer .footer-top{padding-bottom:35px;gap:24px;flex-direction:row}
:root body .agency-footer .footer-columns{padding-block:38px;gap:30px}
:root body .agency-footer .footer-bottom{display:flex;flex-direction:row;align-items:center;gap:30px;padding-top:22px}
:root body .agency-footer .footer-bottom a{min-height:44px}
:root body .agency-footer .home-brand-note{font-size:10px!important;padding:15px 20px}@media(max-width:700px){
:root body .agency-footer .footer-top{flex-direction:column;gap:17px;padding-bottom:28px}
:root body .agency-footer .footer-columns{gap:35px 25px;padding-block:30px}
:root body .agency-footer .footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}
}/* Keep the complete founder portrait in natural proportion with soft feathered edges. */
.inner-imagery .core-intro.inner-about-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:60px;align-items:center;min-height:0}
.inner-imagery .core-intro.inner-about-hero>.campaign-intro-copy{max-width:100%}
.inner-imagery .core-intro .founder-hero.inner-jake-portrait{position:relative;inset:auto;width:100%;max-width:360px;height:auto;aspect-ratio:auto;justify-self:end}
.inner-imagery .core-intro .inner-jake-portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;mask-image:radial-gradient(ellipse at 50% 35%,#000 35%,transparent 73%),linear-gradient(to bottom,transparent,#000 15%,#000 78%,transparent);-webkit-mask-image:radial-gradient(ellipse at 50% 35%,#000 35%,transparent 73%),linear-gradient(to bottom,transparent,#000 15%,#000 78%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
.inner-imagery .core-intro .inner-jake-portrait figcaption{margin-top:14px;text-align:left}
.inner-imagery .core-intro .inner-jake-orbit{display:block;inset:0;width:100%;height:100%;opacity:.15;z-index:-1}@media(max-width:767px){
.inner-imagery .core-intro.inner-about-hero{display:flex;flex-direction:column;align-items:stretch;gap:28px}
.inner-imagery .core-intro .founder-hero.inner-jake-portrait{width:100%;max-width:300px;height:auto;align-self:flex-start;margin:0!important}
}/* Non-core editorial chapters reserve the same clear painting gutter as core pages.
   Diagrams and evidence stay below the illustrated copy, at full frame width. */@media(min-width:1100px){
.inner-imagery :is(.campaign-chapter,.source-observation).inner-scene>.inner-paint{inset:80px max(40px,calc((100% - 1250px)/2)) auto auto;width:min(30vw,400px);height:300px;max-height:none;mix-blend-mode:normal}
.inner-imagery :is(.campaign-chapter,.source-observation).inner-scene>.inner-paint img{opacity:.65;object-position:center;mask-image:radial-gradient(ellipse 70% 62% at 50% 50%,#000 45%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 70% 62% at 50% 50%,#000 45%,transparent 100%)}
.inner-imagery :is(.campaign-chapter,.source-observation).inner-scene::after{display:none}
.inner-imagery .campaign-chapter.inner-scene>.feature-grid,.inner-imagery .source-observation.inner-scene>.fieldwork-chapter{display:block;padding-left:0;max-width:1250px}
.inner-imagery .campaign-chapter.inner-scene>.feature-grid>div:first-child,.inner-imagery .source-observation.inner-scene>.fieldwork-chapter>div:first-child{max-width:58%;min-height:300px}
.inner-imagery .campaign-chapter.inner-scene>.feature-grid:not(:has(>figure)) .eyebrow{position:static;font:600 12px/1.5 Manrope,Arial,sans-serif;letter-spacing:.08em}
.inner-imagery .campaign-chapter.inner-scene>.feature-grid>figure,.inner-imagery .source-observation.inner-scene>.fieldwork-chapter>.source-excerpt{width:100%;margin-top:40px}
.inner-imagery .inner-featured-article.inner-scene{padding-right:40%!important}
.inner-imagery .inner-featured-article.inner-scene>.inner-paint{inset:24px 0 24px auto;width:35%;height:auto;max-height:none;mix-blend-mode:normal}
.inner-imagery .inner-featured-article.inner-scene>.inner-paint img{opacity:.65;mask-image:radial-gradient(ellipse 70% 62% at 50% 50%,#000 45%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 70% 62% at 50% 50%,#000 45%,transparent 100%)}
.inner-imagery .inner-featured-article.inner-scene::after{display:none}
}@media(max-width:1099px){
.inner-imagery .inner-hover-art.inner-scene>.inner-paint{display:none}}/* The extended portrait places the complete face lower in the 4:5 canvas.
   Keep hair through chin opaque, feathering only the surrounding backdrop. */
.inner-imagery .core-intro .inner-jake-portrait img{mask-image:radial-gradient(ellipse 72% 70% at 50% 54%,#000 65%,transparent 100%),linear-gradient(to bottom,transparent,#000 15%,#000 90%,transparent);-webkit-mask-image:radial-gradient(ellipse 72% 70% at 50% 54%,#000 65%,transparent 100%),linear-gradient(to bottom,transparent,#000 15%,#000 90%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}/* Retain the merged pricing split layout; smaller screens follow the shared art-first flow. */@media(min-width:1100px){
.inner-imagery.campaign-pricing .core-intro.inner-hero>.inner-paint{width:100%}}@media(max-width:1099px){
.inner-imagery.campaign-pricing .core-intro.inner-hero{display:flex;flex-direction:column;align-items:stretch;gap:24px}
.inner-imagery.campaign-pricing .core-intro.inner-hero>.inner-paint{order:-1;max-width:none;width:100%;height:220px;aspect-ratio:auto}
.inner-imagery.campaign-pricing .core-intro.inner-hero>.campaign-intro-copy{max-width:100%}}/* Feather the portrait's vertical source edges without fading facial features. */
.inner-imagery .core-intro .inner-jake-portrait img{mask-image:radial-gradient(ellipse 72% 70% at 50% 54%,#000 65%,transparent 100%),linear-gradient(to bottom,transparent,#000 15%,#000 90%,transparent),linear-gradient(to right,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:radial-gradient(ellipse 72% 70% at 50% 54%,#000 65%,transparent 100%),linear-gradient(to bottom,transparent,#000 15%,#000 90%,transparent),linear-gradient(to right,transparent,#000 10%,#000 90%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}/* Prevent workflow-page paragraph spacing from changing the shared footer. */
:root body .agency-footer .footer-bottom p{margin:0}/* Pricing's older 460px scene height must not override the narrow painting strip. */@media(max-width:1099px){
.inner-imagery.campaign-pricing .core-section.inner-scene>.inner-paint{height:220px;max-height:none}}/* Homepage readability upgrade, scoped to preserve all other page fixes. */
:root body.approved-home .site-header :is(.site-desktop-nav>a,.site-disclosure,.site-popover a){font-size:var(--fs-nav)}
:root body.approved-home .button,:root body.approved-home .site-header .site-booking{font-size:var(--fs-button);padding:.85em 1.3em;white-space:nowrap}
:root body.approved-home .site-header .site-desktop-nav{gap:24px}
:root body.approved-home .site-header .site-mobile-toggle{font-size:var(--fs-small)}
:root body.approved-home .agency-footer .footer-columns h2{font-size:var(--fs-eyebrow)}
:root body.approved-home .agency-footer .footer-columns a{font-size:var(--fs-nav)}
:root body.approved-home .agency-footer :is(.footer-bottom p,.footer-bottom a,.home-brand-note){font-size:var(--fs-small)!important}@media(max-width:767px){
:root body.approved-home .site-header{padding-inline:12px;gap:10px}
:root body.approved-home .site-header .wordmark{font-size:24px;letter-spacing:-1px}
:root body.approved-home .site-header .site-booking{font-size:var(--fs-small);padding:10px 12px;gap:0}
:root body.approved-home .site-header .site-booking>span{display:none}
:root body.approved-home .site-header .site-mobile-toggle{padding-inline:0}}@media(max-width:399px){
:root body.approved-home .site-header{padding-inline:8px;gap:7px}
:root body.approved-home .site-header .wordmark{font-size:21px}
:root body.approved-home .site-header .site-booking{padding-inline:8px}
:root body.approved-home .site-header .site-mobile-toggle{font-size:var(--fs-eyebrow)}}/* A compact, labelled menu icon leaves room for the full booking CTA on phones. */@media(max-width:399px){
:root body.approved-home .site-header .site-mobile-toggle{font-size:0;gap:0;min-width:28px;justify-content:center}
:root body.approved-home .site-header .site-mobile-toggle>span{font-size:var(--fs-small)}
:root body.approved-home .site-header .site-booking{font-size:var(--fs-small);padding-inline:7px}
:root body.approved-home .site-header .wordmark{font-size:20px;letter-spacing:-1.2px}}/* Overnight design system: a readable editorial field guide across the full journey.
   This final layer owns shared type, practical page rhythm and decision components.
   Artwork, offers and the approved homepage content remain in their source modules. */
:root{--ui-body:17px;--ui-card:16px;--ui-small:14px;--ui-nav:15px;--ui-button:16px;--ui-paper:#f4eedf;--ui-ink:#183d34;--ui-muted:#536452;--ui-line:#b9aa8d70;--ui-copper:#a94427}
:root body .site-header :is(.site-desktop-nav>a,.site-disclosure,.site-popover a){font-size:var(--ui-nav)}
:root body .site-header .site-desktop-nav{gap:24px}
:root body .button,:root body .site-header .site-booking{font-size:var(--ui-button);padding:13px 22px;min-height:48px;line-height:1.4}
:root body .site-header .site-booking{min-height:44px;padding:10px 18px;white-space:nowrap}
:root body .site-header .site-disclosure{min-height:44px}
:root body .agency-footer .footer-columns h2{font-size:14px;line-height:1.5;letter-spacing:.07em;margin-bottom:13px}
:root body .agency-footer .footer-columns a{font-size:15px;line-height:1.6;min-height:40px;padding-block:7px}
:root body .agency-footer :is(.footer-bottom p,.footer-bottom a,.home-brand-note){font-size:14px!important;line-height:1.65}
:root body .agency-footer .home-brand-note{max-width:880px;opacity:.85}
:root body.campaign-site{background:var(--ui-paper);--paper:var(--ui-paper);--muted:var(--ui-muted)}
:root body.campaign-site .site-breadcrumbs{font-size:14px;padding-block:20px;line-height:1.5}
:root body.campaign-site .site-breadcrumbs li{font-size:14px}
:root body.campaign-site main .eyebrow{font-size:14px;line-height:1.5;letter-spacing:.08em}
:root body.campaign-site :is(.core-intro.campaign-intro,.agency-page-hero.editorial-page-hero){min-height:0;padding-block:38px 56px}
:root body.campaign-site .campaign-intro h1,:root body.campaign-site .editorial-page-hero h1{font-size:clamp(42px,4.5vw,64px);line-height:1.06;letter-spacing:-.035em;margin:18px 0 24px;max-width:760px}
:root body.campaign-site .campaign-intro .core-answer,:root body.campaign-site .page-hero-deck p{font-size:18px;line-height:1.7;color:#46594e;max-width:62ch}
:root body.campaign-site .editorial-page-hero .page-hero-copy{padding-block:20px}
:root body.campaign-site .core-section{padding:56px 0 56px 13%;min-height:0}
:root body.campaign-site .core-section>.section-index{top:60px;font-size:36px;color:#997146;line-height:1}
:root body.campaign-site .core-section>h2,:root body.campaign-site .campaign-chapter h2{font-size:clamp(34px,3.5vw,48px);line-height:1.12;letter-spacing:-.025em;margin-bottom:24px}
:root body.campaign-site .core-section>p,:root body.campaign-site .core-section>ul,:root body.campaign-site .campaign-chapter p:not(.eyebrow){font-size:17px;line-height:1.75;max-width:68ch}
:root body.campaign-site .core-section :is(.core-note,.core-price-note){font-size:14px;line-height:1.65}
:root body.campaign-site .chapter-navigation{padding:20px 0;margin-bottom:12px}
:root body.campaign-site .chapter-navigation li{font-size:14px;line-height:1.55}
:root body.campaign-site .chapter-navigation a{min-height:44px;display:flex;align-items:center;gap:14px}
:root body.campaign-site .chapter-navigation li span{font-size:14px}
:root body.campaign-site .core-cta{padding:48px;margin-top:56px}
:root body.campaign-site .core-cta h2,:root body.campaign-site .agency-closing h2{font-size:clamp(34px,3.8vw,50px);line-height:1.12}
:root body.campaign-site .core-cta p,:root body.campaign-site .agency-closing p{font-size:17px;line-height:1.75}
:root body.campaign-site .core-facts{font-size:16px;line-height:1.7}
:root body.campaign-site .core-facts :is(dt,dd){font-size:16px}
:root body.campaign-site :is(.text-link,.technology-card-cta){font-size:16px;line-height:1.5;min-height:44px}
:root body.campaign-site .guide-copy :is(p,li){font-size:17px;line-height:1.8}
:root body.campaign-site .guide-copy :is(.reading-time,.article-meta){font-size:14px;line-height:1.6}
:root body.campaign-site .guide-copy h2{font-size:clamp(32px,3.2vw,44px);line-height:1.18}
:root body.campaign-site .guide-copy h3{font-size:28px;line-height:1.2}
:root body.campaign-site .core-section>.inner-motif{width:96px;height:96px;right:28px;bottom:30px}
:root body.campaign-site .core-section:has(>.inner-motif){padding-bottom:145px}
:root body.campaign-site :is(.core-cta,.agency-closing):has(>.inner-motif){padding-bottom:145px}
:root body.campaign-site :is(.core-cta,.agency-closing)>.inner-motif{width:96px;height:96px}/* Pricing: prices and boundaries line up, so the reader can compare rather than decode. */
:root body.page-pricing .core-intro.campaign-intro{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:28px;padding-block:24px 34px;min-height:0}
:root body.page-pricing .campaign-intro h1{font-size:clamp(42px,4.1vw,58px);max-width:760px;margin-block:14px 18px}
:root body.page-pricing .campaign-intro-copy{max-width:100%}
:root body.page-pricing .core-intro.inner-hero>.inner-paint{width:100%;height:300px;max-height:none;align-self:center}
:root body.page-pricing .pricing-opening-terms{font-size:14px;line-height:1.65;margin-top:20px;color:#536452}
:root body.page-pricing .pricing-shortcuts{gap:10px;margin-top:22px}
:root body.page-pricing .pricing-shortcuts a{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-size:14px;line-height:1.45;padding:12px 26px 12px 13px;background:#fffaf044;border-color:#9d896b88;min-width:0}
:root body.page-pricing .pricing-shortcuts strong{font-size:16px;line-height:1.5;font-weight:650;white-space:nowrap}
:root body.page-pricing .pricing-shortcuts a>span{position:absolute;right:10px;top:14px}
:root body.page-pricing .pricing-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-block:20px 58px;border:1px solid #a9987c;background:#fff9ee}
:root body.page-pricing .pricing-plans>article{padding:32px 26px;display:flex;flex-direction:column;min-width:0;position:relative;border-right:1px solid #a9987c;gap:0}
:root body.page-pricing .pricing-plans>article:last-child{border-right:0}
:root body.page-pricing .pricing-plans article.inner-motif-host:has(>.inner-plan-laurel){padding-top:32px;padding-bottom:32px}
:root body.page-pricing .pricing-plans .inner-plan-laurel{width:30px;height:30px;top:25px;right:20px;opacity:.5}
:root body.page-pricing .pricing-plans .eyebrow{font-size:14px;letter-spacing:0;line-height:1.5;margin:0 42px 15px 0;min-height:42px}
:root body.page-pricing .pricing-plans h2{font-size:38px!important;line-height:1.15;margin:0 0 14px;letter-spacing:-.025em}
:root body.page-pricing .pricing-plans .plan-price{font-size:48px;line-height:1.1;margin:0 0 22px;letter-spacing:-.035em}
:root body.page-pricing .pricing-plans .plan-price>span{font-size:14px;letter-spacing:0;margin-left:3px}
:root body.page-pricing .pricing-plans .plan-summary{font-size:17px;line-height:1.65;min-height:84px;margin:0 0 18px}
:root body.page-pricing .pricing-plans .plan-note{font-size:14px;line-height:1.65;min-height:92px;margin:0}
:root body.page-pricing .pricing-plans .plan-allowance-summary{padding-block:22px;margin-block:22px;display:grid;gap:12px;list-style:none}
:root body.page-pricing .pricing-plans .plan-allowance-summary li{position:relative;padding-left:22px;font-size:16px;line-height:1.6;margin:0}
:root body.page-pricing .pricing-plans .plan-allowance-summary li::before{content:'✓';position:absolute;left:0;color:#a94427}
:root body.page-pricing .pricing-plans .complete-plan .plan-allowance-summary li::before{color:#dfc188}
:root body.page-pricing .pricing-plans .plan-allowance-boundary{font-size:14px;line-height:1.65;margin:0 0 24px}
:root body.page-pricing .pricing-plans .button{margin-top:auto;align-self:flex-start;font-size:15px;padding-inline:18px;white-space:normal}
:root body.page-pricing .pricing-tier-scope figcaption{gap:12px}
:root body.page-pricing .pricing-tier-scope figcaption strong{font-size:28px;line-height:1.2}
:root body.page-pricing .pricing-tier-scope figcaption span{font-size:16px;line-height:1.6}
:root body.page-pricing .scope-shared-grid{gap:24px}
:root body.page-pricing .scope-shared-grid h3{font-size:28px;line-height:1.15}
:root body.page-pricing .scope-shared-grid :is(p,li){font-size:16px;line-height:1.7}
:root body.page-pricing .scope-shared-grid .scope-small-label{font-size:14px;line-height:1.5}
:root body.page-pricing .scope-written-boundary p{font-size:14px;line-height:1.7}
:root body.page-pricing .core-section.pricing-scope-section{padding-left:0}
:root body.page-pricing .pricing-scope-section>.section-index{position:static;display:block;margin-bottom:16px}/* About: supported founder experience sits next to the real portrait. */
:root body.page-about .core-intro.inner-about-hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);padding-block:22px 42px;gap:55px;min-height:0}
:root body.page-about .core-intro .founder-hero.inner-jake-portrait{max-width:300px;justify-self:center}
:root body.page-about .founder-credentials{list-style:none;padding:0;margin:28px 0 18px;display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--ui-line)}
:root body.page-about .founder-credentials li{padding:18px 16px 18px 0;display:flex;flex-direction:column;gap:5px}
:root body.page-about .founder-credentials span{font:500 14px/1.5 Manrope,Arial,sans-serif;color:#536452}
:root body.page-about .founder-credentials strong{font:500 26px/1.2 Journey,Georgia,serif;color:var(--ui-ink)}
:root body .experience-text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font:650 16px/1.5 Manrope,Arial,sans-serif;text-decoration:none;color:inherit}
:root body .experience-text-link:hover{text-decoration:underline;text-underline-offset:5px}
:root body.page-about .core-intro .inner-jake-portrait figcaption{font-size:14px;line-height:1.6;text-align:center}/* Contact: an appointment page, not a report with a table of contents. */
:root body.page-contact .core-main{display:grid;grid-template-columns:1.05fr .95fr;column-gap:6%;padding-bottom:68px}
:root body.page-contact .site-breadcrumbs,:root body.page-contact .core-intro{grid-column:1/-1}
:root body.page-contact .core-intro.campaign-intro{grid-template-columns:1.2fr .8fr;padding-block:22px 44px;min-height:0;gap:45px}
:root body.page-contact .core-intro.inner-hero>.inner-paint{width:100%;max-height:340px;height:100%;min-height:240px}
:root body.page-contact .contact-booking-note{font-size:14px;line-height:1.65;max-width:43ch;margin-top:18px;color:#536452}
:root body.page-contact .core-section{padding:32px 0 0;margin:0;min-height:0;border-bottom:0;border-top:1px solid var(--ui-line)}
:root body.page-contact .core-section>.section-index{display:none}
:root body.page-contact .core-section h2{font-size:34px;line-height:1.15;margin-bottom:26px}
:root body.page-contact .contact-agenda{padding:0;margin:0;list-style:none;display:grid;gap:24px}
:root body.page-contact .contact-agenda li{display:flex;gap:20px;align-items:flex-start}
:root body.page-contact .contact-agenda li>span{font:500 23px/1.3 Journey,Georgia,serif;color:#a1583c;min-width:28px}
:root body.page-contact .contact-agenda h3{font-size:25px;line-height:1.15;margin:0 0 8px}
:root body.page-contact .contact-agenda p{font-size:16px;line-height:1.7;margin:0}
:root body.page-contact .contact-boundary{font-size:14px!important;line-height:1.65!important;margin-top:25px}
:root body.page-contact .contact-reading{margin-top:30px;display:grid;gap:6px}
:root body.page-contact .contact-reading .eyebrow{margin-bottom:6px}
:root body.page-contact .contact-reading>a{font-size:16px;line-height:1.5;min-height:44px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ui-line);padding-block:10px;text-decoration:none}
:root body.page-contact .contact-reading>a:hover{text-decoration:underline;text-underline-offset:4px}/* Technology: show the working system at a readable scale. */
:root body.campaign-technology .agency-page-hero.editorial-page-hero{padding-block:18px 42px;min-height:420px}
:root body.campaign-technology .page-hero-copy{padding-block:16px}
:root body.campaign-technology .page-hero-deck{max-width:560px}
:root body.campaign-technology .technology-stages p,:root body.campaign-technology .technology-link-card p{font-size:16px;line-height:1.7}
:root body.campaign-technology .technology-stages h3,:root body.campaign-technology .technology-link-card h3{font-size:30px;line-height:1.15}
:root body.campaign-technology :is(.technology-intro,.technology-boundary){font-size:16px;line-height:1.7}
:root body.campaign-technology .technology-record{font-size:14px;line-height:1.6}
:root body.campaign-technology .technology-record strong{font-size:14px;line-height:1.5}
:root body.campaign-technology .technology-stage-label{font-size:14px}@media(max-width:1099px){
:root body.campaign-site .core-section{padding-left:0}
:root body.campaign-site .core-section>.section-index{position:static;display:block;margin-bottom:18px;font-size:28px}
:root body.campaign-site .core-intro.inner-hero>.inner-paint{order:1;height:180px;margin:20px 0 0}
:root body.page-pricing .core-intro.campaign-intro{display:grid;grid-template-columns:1fr .6fr;gap:25px}
:root body.page-pricing .core-intro.inner-hero>.inner-paint{order:1;height:260px;margin:0;min-width:0}
:root body.page-pricing .pricing-plans>article{padding:28px 20px}
:root body.page-pricing .pricing-plans h2{font-size:34px!important}
:root body.page-pricing .pricing-plans .plan-price{font-size:42px}
:root body.page-pricing .pricing-plans .plan-summary{min-height:112px}
:root body.page-pricing .pricing-plans .plan-note{min-height:116px}
:root body.page-contact .core-intro.campaign-intro{display:grid;grid-template-columns:1.3fr .7fr;gap:25px}
:root body.page-contact .core-intro.inner-hero>.inner-paint{height:280px;min-height:0;margin:0}
:root body.campaign-site .core-section:has(>.inner-motif){padding-bottom:56px}
}@media(max-width:800px){
:root body.page-pricing .core-intro.campaign-intro{display:flex;flex-direction:column;gap:0}
:root body.page-pricing .core-intro.inner-hero>.inner-paint{order:1;width:100%;height:160px;margin:18px 0 0}
:root body.page-pricing .pricing-plans{grid-template-columns:1fr;margin-top:8px}
:root body.page-pricing .pricing-plans>article{border-right:0;border-bottom:1px solid #a9987c;padding:30px}
:root body.page-pricing .pricing-plans>article:last-child{border-bottom:0}
:root body.page-pricing .pricing-plans :is(.eyebrow,.plan-summary,.plan-note){min-height:0}
:root body.page-pricing .pricing-plans .eyebrow{margin-bottom:12px}
:root body.page-pricing .pricing-plans .plan-summary{margin-bottom:16px}
:root body.page-pricing .pricing-plans .plan-price{font-size:48px;margin-bottom:18px}
:root body.page-pricing .pricing-plans .plan-allowance-summary{gap:10px;padding-block:20px;margin-block:20px}
:root body.page-pricing .pricing-plans .button{align-self:stretch;justify-content:center}
:root body.page-about .core-intro.inner-about-hero{gap:26px;grid-template-columns:1.3fr .7fr}
:root body.page-contact .core-main{grid-template-columns:1fr;row-gap:32px}
:root body.page-contact .site-breadcrumbs{padding-bottom:0}
:root body.page-contact .core-intro.campaign-intro{padding-top:0;grid-template-columns:1fr .65fr;gap:20px;padding-bottom:0}
:root body.page-contact .core-section{padding-top:30px}
}@media(max-width:767px){
:root body .site-header,:root body.approved-home .site-header{padding-inline:12px;gap:10px}
:root body .site-header .wordmark{font-size:24px;letter-spacing:-1px}
:root body .site-header .site-booking,:root body.approved-home .site-header .site-booking{font-size:14px;padding:10px 12px;gap:0;min-height:44px}
:root body .site-header .site-booking>span{display:none}
:root body .site-header .site-mobile-toggle{font-size:14px;padding-inline:0;min-width:44px;min-height:44px}
:root body .agency-footer .footer-columns a{min-height:44px}
:root body.campaign-site :is(.core-intro.campaign-intro,.agency-page-hero.editorial-page-hero){padding-top:18px;padding-bottom:30px}
:root body.campaign-site .campaign-intro h1,:root body.campaign-site .editorial-page-hero h1{font-size:clamp(38px,8.5vw,48px);line-height:1.08;margin-block:16px 22px}
:root body.campaign-site .campaign-intro .core-answer,:root body.campaign-site .page-hero-deck p{font-size:17px;line-height:1.7}
:root body.campaign-site .core-section{padding-block:40px}
:root body.campaign-site .core-section>h2,:root body.campaign-site .campaign-chapter h2{font-size:34px;line-height:1.15}
:root body.campaign-site .core-cta{padding:32px 24px;margin-top:32px}
:root body.campaign-site .chapter-navigation li{font-size:14px}
:root body.campaign-site .chapter-navigation ol{gap:4px}
:root body.page-about .core-intro.inner-about-hero{display:flex;flex-direction:column;align-items:stretch;gap:12px}
:root body.page-about .core-intro .founder-hero.inner-jake-portrait{align-self:center;max-width:250px;margin:0!important}
:root body.page-about .founder-credentials{margin-top:22px}
:root body.page-contact .core-intro.campaign-intro{display:flex;flex-direction:column;align-items:stretch}
:root body.page-contact .core-intro.inner-hero>.inner-paint{order:1;width:100%;height:150px;margin-top:16px}
:root body.page-contact .core-section{padding-block:30px 0}
:root body.page-contact .contact-reading{margin-top:24px}
:root body.campaign-technology .agency-page-hero.editorial-page-hero{min-height:0}
:root body.campaign-technology .inner-hero>.inner-paint{order:1;height:180px;margin-top:0}
}@media(max-width:399px){
:root body .site-header,:root body.approved-home .site-header{padding-inline:8px;gap:6px}
:root body .site-header .wordmark,:root body.approved-home .site-header .wordmark{font-size:20px;letter-spacing:-1.2px}
:root body .site-header .site-booking,:root body.approved-home .site-header .site-booking{padding-inline:7px;font-size:14px}
:root body .site-header .site-mobile-toggle,:root body.approved-home .site-header .site-mobile-toggle{font-size:0;gap:0;min-width:44px;justify-content:center}
:root body .site-header .site-mobile-toggle>span{font-size:16px}
:root body.page-pricing .pricing-shortcuts{grid-template-columns:1fr;gap:7px}
:root body.page-pricing .pricing-shortcuts a{flex-direction:row;align-items:center;justify-content:space-between;padding:12px 28px 12px 14px}
:root body.page-pricing .pricing-plans>article{padding:26px 22px}
}@media(max-width:359px){
:root body .site-header .wordmark,:root body.approved-home .site-header .wordmark{font-size:18px}
:root body .site-header,:root body.approved-home .site-header{padding-inline:6px;gap:4px}}@media(prefers-reduced-motion:reduce){
:root body .button:hover{transform:none}}
:root body.campaign-technology .agency-page-hero.inner-scene-dark .page-hero-deck p,:root body.campaign-technology .agency-page-hero.inner-hero .page-hero-deck p{color:#dbe5d2}
:root body.page-pricing .pricing-plans h2[id]{scroll-margin-top:105px}/* Editorial homepage rebuild, revision two. Section art is composition, never a text backdrop. */
:root body.approved-home .home-frame{width:calc(100% - 112px);max-width:1320px}
:root body.approved-home main>section{padding-block:104px}
:root body.approved-home .home-heading{margin-bottom:52px}
:root body.approved-home .home-heading h2{max-width:22ch}
:root body.approved-home main>.home-hero{display:block;padding:88px 0 64px;min-height:0}
:root body.approved-home .hero-copy{text-align:left;margin-top:0}
:root body.approved-home .hero-copy h1{max-width:760px;width:68%;margin:0 0 28px;position:relative}
:root body.approved-home .hero-copy>p:not(.home-eyebrow){max-width:660px;width:63%;margin-left:0;margin-right:0;color:#d5dece}
:root body.approved-home .hero-copy .hero-signature{font-size:18px;line-height:1.65;color:#e9e2ca;margin-top:24px}
:root body.approved-home .hero-copy .hero-small{width:auto;color:#b9c8b7;font-size:var(--fs-small)}
:root body.approved-home .hero-actions{justify-content:flex-start;gap:28px}
:root body.approved-home .platform-list{justify-content:flex-start;max-width:660px;margin:34px 0 12px;padding-top:22px}
:root body.approved-home .platform-note{display:block;text-align:left;color:#b6c4b1}
:root body.approved-home .hero-person{position:absolute;inset:0 -6% 0 auto;width:54%;height:100%;margin:0;opacity:1;z-index:0;order:initial}
:root body.approved-home .hero-person img{object-fit:cover;object-position:50% 28%;transform:scaleX(-1);mask-image:linear-gradient(to right,transparent,#000 38%);-webkit-mask-image:linear-gradient(to right,transparent,#000 38%)}
:root body.approved-home .home-hero::after{z-index:1;background:linear-gradient(90deg,#022827 0%,#022827 36%,#022827f5 47%,#0228279c 61%,transparent 80%),linear-gradient(0deg,#022827,transparent 27%)}
:root body.approved-home .hero-copy{z-index:2}
:root body.approved-home .home-signal-map{opacity:.15;width:650px;left:-240px;z-index:1}/* A legible four-step service spread, with the original scene in its own side composition. */
:root body.approved-home main>.home-process{display:block;background:#faf7ee;color:#183d34;border-top:1px solid #b9aa8d55;padding:100px 0}
:root body.approved-home .home-process::before{display:none;background:none}
:root body.approved-home .home-process>.painting-process{position:absolute;inset:20px 0 auto auto;width:42%;height:380px;opacity:.78;mix-blend-mode:multiply;z-index:-1;mask-image:linear-gradient(to right,transparent,#000 30%),linear-gradient(to bottom,transparent,#000 20%,#000 65%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 30%),linear-gradient(to bottom,transparent,#000 20%,#000 65%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
:root body.approved-home .home-process .home-heading{max-width:62%;min-height:280px;margin-bottom:40px}
:root body.approved-home .home-process .home-heading p{color:#4a5e50;text-shadow:none;background:none}
:root body.approved-home .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 64px;border-top:1px solid #b9aa8d80;padding-top:36px}
:root body.approved-home .process-grid li{display:grid;grid-template-columns:55px 1fr;column-gap:20px;border:0;padding:0}
:root body.approved-home .process-grid .step-number{grid-row:1/3;font-size:42px;line-height:1;color:#a1583c;font-style:normal;margin:0}
:root body.approved-home .process-grid h3{margin:0 0 14px;font-size:32px}
:root body.approved-home .process-grid p{grid-column:2;color:#4a5e50;text-shadow:none;max-width:47ch;margin:0;line-height:1.7}/* Generous working documents replace cramped, equal-weight dashboard tiles. */
:root body.approved-home main>.home-services{padding:0}
:root body.approved-home .services-record,:root body.approved-home .services-work{padding:100px 0}
:root body.approved-home .report-stage{padding:28px 0}
:root body.approved-home .report-window{box-shadow:none;transform:none;border-radius:0;border:1px solid #173f35;padding:0;background:#fbf8f0;color:#183d34}
:root body.approved-home .window-title{background:#123f35;color:#f4eedf;padding:22px 26px;margin:0;font-weight:650}
:root body.approved-home .report-grid{padding:0 26px}
:root body.approved-home .report-row{border-color:#b9aa8d70;gap:28px;padding-block:24px}
:root body.approved-home .report-head{color:#794d35;background:#ece5d3;padding:16px 26px;margin:0 -26px;font-weight:650}
:root body.approved-home .report-row>span:not(:first-child){color:#4a5e50}
:root body.approved-home .report-row>span:last-child{color:#214a39;font-weight:600}
:root body.approved-home .record-foot{color:#596753;padding:20px 26px}
:root body.approved-home .hw-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
:root body.approved-home .hw-card{padding:28px 24px;border:0;border-top:2px solid #b26943;background:#faf7ee;border-radius:0;box-shadow:none}
:root body.approved-home .hw-card-copy{margin-bottom:26px}
:root body.approved-home .hw-card h3{font-size:32px}
:root body.approved-home .hw-card-copy>p{font-size:17px;line-height:1.7}
:root body.approved-home .hw-card .hw-artifact{padding:20px;min-height:260px;border:1px solid #c1b596;background:#eae4d2;margin-top:auto}
:root body.approved-home .hw-card .hw-artifact :is(h4,span,dt){font-size:14px}
:root body.approved-home .hw-card:last-child{display:flex;grid-column:auto;gap:0}
:root body.approved-home .hw-card:last-child .hw-artifact{min-height:260px;margin-top:auto}
:root body.approved-home .hw-log>div{grid-template-columns:66px 1fr;gap:10px}
:root body.approved-home .hw-film p{color:#f4eedf}
:root body.approved-home .home-plan{border:0;border-top:2px solid #b26943;border-radius:0;background:#faf7ee}
:root body.approved-home .home-plan:nth-child(2){background:#e8e0cc}@media(max-width:1099px){
:root body.approved-home .home-frame{width:calc(100% - 72px)}
:root body.approved-home .hero-copy h1{width:76%;max-width:760px}
:root body.approved-home .hero-copy>p:not(.home-eyebrow){width:70%}
:root body.approved-home .services-record,:root body.approved-home .services-work{display:block}
:root body.approved-home .hw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
:root body.approved-home .hw-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:32px}
}@media(max-width:800px){
:root body.approved-home .home-frame{width:calc(100% - 40px)}
:root body.approved-home main>section{padding-block:68px}
:root body.approved-home main>.home-hero{padding:54px 0 42px;display:flex;flex-direction:column}
:root body.approved-home .hero-copy h1,:root body.approved-home .hero-copy>p:not(.home-eyebrow){width:100%;max-width:720px}
:root body.approved-home .hero-person{position:relative;inset:auto;width:100%;height:310px;order:2;margin:24px 0 -42px;opacity:.95;z-index:0}
:root body.approved-home .hero-person img{object-fit:contain;object-position:center;mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 70%,transparent),linear-gradient(to right,transparent,#000 30%,#000 70%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 70%,transparent),linear-gradient(to right,transparent,#000 30%,#000 70%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
:root body.approved-home .home-hero::after{display:none}
:root body.approved-home .hero-actions{flex-direction:row;flex-wrap:wrap;gap:16px 24px}
:root body.approved-home .home-process .home-heading{max-width:100%;min-height:0;margin-bottom:38px}
:root body.approved-home .home-process>.painting-process{position:relative;inset:auto;order:initial;width:100%;height:220px;margin:0 0 24px;opacity:.75;z-index:-1;mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 60%,transparent),linear-gradient(to right,transparent,#000 25%,#000 75%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 60%,transparent),linear-gradient(to right,transparent,#000 25%,#000 75%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
:root body.approved-home main>.home-process{padding:48px 0 64px}
:root body.approved-home .process-grid{gap:34px;grid-template-columns:1fr}
:root body.approved-home .process-grid li{grid-template-columns:44px 1fr;column-gap:18px}
:root body.approved-home .process-grid .step-number{font-size:36px}
:root body.approved-home .process-grid h3{font-size:30px}
:root body.approved-home .services-record,:root body.approved-home .services-work{padding:64px 0}
:root body.approved-home .report-cell-label{color:#794d35}
}@media(max-width:620px){
:root body.approved-home .home-frame{width:calc(100% - 36px)}
:root body.approved-home .hw-grid{grid-template-columns:1fr;gap:30px}
:root body.approved-home .hw-card{padding:26px 20px}
:root body.approved-home .hw-card:last-child{display:flex;grid-column:auto;gap:0}
:root body.approved-home .hw-card .hw-artifact,:root body.approved-home .hw-card:last-child .hw-artifact{min-height:0}
:root body.approved-home .report-grid{padding:0 20px}
:root body.approved-home .report-row{gap:18px}
:root body.approved-home .window-title{padding:20px}
}/* Review corrections: feather the containing image, independent of its mirrored pixels. */@media(min-width:801px){
:root body.approved-home .hero-person{mask-image:linear-gradient(to right,transparent,#000 48%),linear-gradient(to bottom,transparent,#000 10%,#000 75%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 48%),linear-gradient(to bottom,transparent,#000 10%,#000 75%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in}
:root body.approved-home .hero-person img{mask-image:none;-webkit-mask-image:none}
:root body.approved-home .hero-person::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,#022827e8,transparent 65%);pointer-events:none}
}/* Second independent review: align exhibits and remove competing visual frames. */
:root body.approved-home main>.home-hero{padding-top:48px;padding-bottom:48px}
:root body.approved-home .hero-copy .home-eyebrow{margin-bottom:18px}
:root body.approved-home .hero-copy h1{margin-bottom:20px}
:root body.approved-home .hero-copy .hero-signature{margin-top:18px}
:root body.approved-home .hero-actions{margin-top:22px}
:root body.approved-home .platform-list{margin-top:26px;padding-top:18px}
:root body.approved-home .home-heading{margin-bottom:38px}
:root body.approved-home .services-record,:root body.approved-home .services-work{padding-top:72px;padding-bottom:72px}
:root body.approved-home .process-grid{grid-auto-rows:auto}
:root body.approved-home .process-grid li{grid-template-rows:auto 1fr;align-content:start}
:root body.approved-home .process-grid h3{margin:0 0 14px;padding:0;align-self:start}
:root body.approved-home .process-grid p{align-self:start;margin:0;padding:0}
:root body.approved-home .hw-grid{row-gap:18px}
:root body.approved-home .hw-card,:root body.approved-home .hw-card:last-child{display:grid;grid-template-rows:subgrid;grid-row:span 4;grid-column:auto;gap:18px;padding:26px 0 0;background:transparent;border:0;border-top:2px solid #a76440;box-shadow:none}
:root body.approved-home .hw-card-copy{display:contents}
:root body.approved-home .hw-card .hw-index{margin:0;align-self:start}
:root body.approved-home .hw-card h3{margin:0;align-self:start}
:root body.approved-home .hw-card-copy>p{margin:0;max-width:35ch;align-self:start}
:root body.approved-home .hw-card .hw-artifact,:root body.approved-home .hw-card:last-child .hw-artifact{margin:0 0 28px;min-height:0;padding:22px;background:#fffaf0;border:1px solid #c2b494;align-self:stretch;box-shadow:3px 3px 0 #d6ccb64d}
:root body.approved-home .hw-file-heading{border-bottom:1px solid #b9aa8d80}
:root body.approved-home .home-comparison .home-heading{max-width:none;margin-bottom:34px}
:root body.approved-home .home-comparison .home-heading>div{display:grid;grid-template-columns:1.1fr .9fr;gap:20px 70px;align-items:end}
:root body.approved-home .home-comparison .home-heading .home-eyebrow{grid-column:1/-1;margin-bottom:0}
:root body.approved-home .home-comparison .home-heading h2{grid-column:1;margin:0}
:root body.approved-home .home-comparison .home-heading p:not(.home-eyebrow){grid-column:2;margin:0;max-width:38ch}
:root body.approved-home .approach-table tr>:last-child{background:#e0ddc8;color:#183d34;border-left:1px solid #a9b997}
:root body.approved-home .approach-table tr>:last-child :is(button,.mobile-cell-label){color:#183d34}
:root body.approved-home .approach-table[data-spotlight="4"] tr>:last-child{background:#f4eedf;box-shadow:inset 0 0 0 2px #b26943}
:root body.approved-home .approach-table tr>:last-child::after{display:none}/* Text is readable before motion begins and in a long-page capture. */
:root body.approved-home .will-reveal{opacity:1;transform:none;transition:none}@media(max-width:800px){
:root body.approved-home main>.home-hero{padding-top:38px;padding-bottom:42px}
:root body.approved-home .home-comparison .home-heading>div{display:block}
:root body.approved-home .home-comparison .home-heading .home-eyebrow{margin-bottom:20px}
:root body.approved-home .home-comparison .home-heading p:not(.home-eyebrow){margin-top:20px;max-width:100%}
}@media(max-width:620px){
:root body.approved-home .hw-card,:root body.approved-home .hw-card:last-child{display:block;grid-row:auto;padding-top:24px;margin-bottom:18px}
:root body.approved-home .hw-card-copy{display:block;margin-bottom:24px}
:root body.approved-home .hw-card h3{margin:12px 0 14px}
:root body.approved-home .hw-card .hw-artifact,:root body.approved-home .hw-card:last-child .hw-artifact{margin:0}
:root body.approved-home .approach-table tr>:last-child::before{color:#183d34}
}
:root body.approved-home .hw-card,:root body.approved-home .hw-card:last-child{grid-template-columns:minmax(0,1fr)}
:root body.page-sample-audit #audit-implementation-title{scroll-margin-top:100px}/* M01: page-local reading order and mobile composition. */
body#top.how-work-page .work-chapter-grid{grid-template-areas:"summary example" "scope example";row-gap:0}
body#top.how-work-page .work-chapter-copy{grid-area:summary}
body#top.how-work-page .work-document-stage{grid-area:example}
body#top.how-work-page .work-chapter-grid>.work-scope-detail{grid-area:scope;margin-top:20px}
:root body.page-pricing.campaign-site .pricing-shortcuts a{display:grid;grid-template-columns:1fr;position:relative}
:root body.page-pricing.campaign-site .pricing-shortcuts a>.pricing-tier-name{position:static;transform:none;font-size:16px;line-height:1.5}
:root body.page-pricing.campaign-site .pricing-shortcuts a>small{display:block;font-size:16px;line-height:1.5;color:#46594e;font-weight:400}
:root body.page-pricing.campaign-site .pricing-shortcuts a>.pricing-jump{position:absolute;right:8px;top:26px}@media(max-width:1000px){
body#top.how-work-page .work-chapter-grid{grid-template-areas:"summary" "example" "scope";grid-template-columns:minmax(0,1fr);gap:20px}
body#top.how-work-page .work-chapter-grid>.work-scope-detail{margin-top:0}
}@media(max-width:650px){/* The initial decision is text, then prices and terms, then the retained painting. */
:root body.page-pricing.campaign-site .core-intro.campaign-intro{display:flex;flex-direction:column;gap:20px;padding-block:16px 24px}
:root body.page-pricing.campaign-site .core-intro.inner-hero>.inner-paint{order:1;position:relative;inset:auto;width:100%;height:150px;margin:0;flex:none}
:root body.page-pricing.campaign-site .campaign-intro-copy{width:100%;min-width:0}
:root body.page-pricing.campaign-site .core-intro h1{font-size:38px;line-height:1.08;max-width:18ch;margin-block:12px 18px}
:root body.page-pricing.campaign-site .core-intro .core-answer{font-size:17px;line-height:1.6;margin-bottom:20px}
:root body.page-pricing.campaign-site .pricing-shortcuts{grid-template-columns:1fr;margin-top:0}
:root body.page-pricing.campaign-site .pricing-shortcuts a,:root body.page-pricing.campaign-site .pricing-shortcuts a:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:5px;padding:14px 22px 14px 0;border:0;border-bottom:1px solid #ac97735c;min-height:44px}
:root body.page-pricing.campaign-site .pricing-shortcuts a:last-child{border-bottom:0}
:root body.page-pricing.campaign-site .pricing-shortcuts a>strong{font-size:17px;line-height:1.5;white-space:nowrap}
:root body.page-pricing.campaign-site .pricing-shortcuts a>small{grid-column:1/-1}
:root body.page-pricing.campaign-site .pricing-shortcuts a>.pricing-jump{right:0;top:26px}
:root body.page-pricing.campaign-site .pricing-opening-terms{margin-top:16px;font-size:16px;line-height:1.55}
:root body.page-pricing.campaign-site .chapter-navigation{padding-block:16px;margin-bottom:24px}
:root body.page-pricing.campaign-site .chapter-navigation a{min-height:44px;align-items:center}/* Keep the full introduction before the illustrative workshop scene. */
/* One page gutter; the example no longer sits in two padded frames. */
body#top.how-work-page .work-chapter{padding-block:24px 32px}
body#top.how-work-page .work-chapter.inner-motif-host:has(>.inner-motif){padding-bottom:32px}
body#top.how-work-page .work-chapter-copy>.work-eyebrow{margin-bottom:8px;min-height:28px}
body#top.how-work-page .work-chapter-copy>h3{margin-bottom:12px}
body#top.how-work-page .work-chapter-copy>p,body#top.how-work-page .work-scope-detail>p{font-size:17px;line-height:1.6}
body#top.how-work-page .work-output{margin-block:16px 0;padding-top:12px}
body#top.how-work-page .work-scope-detail{padding-top:16px}
body#top.how-work-page .work-checklist{gap:10px;margin-block:16px}
body#top.how-work-page .work-document-stage{padding:16px 0 0;background:transparent;border-top:2px solid #a56d42}
body#top.how-work-page .work-document-stage>.work-exhibit-label{color:#895035;margin-bottom:12px}
body#top.how-work-page .work-document{margin:0;max-width:none}
body#top.how-work-page .work-document .wd-paper{padding:0;background:transparent;border:0;box-shadow:none}
body#top.how-work-page .work-document .wd-heading{padding-block:12px;margin-bottom:12px}
body#top.how-work-page .work-document .wd-paper-note{margin-block:14px 12px;padding:10px 12px}
body#top.how-work-page .work-document>figcaption{color:#536452;margin-top:12px;line-height:1.55}
body#top.how-work-page .work-document .wd-question{padding:12px}
body#top.how-work-page .work-document .wd-table tbody tr{padding-block:12px}
body#top.how-work-page .work-text-link{min-height:44px;display:inline-flex;align-items:center}
}@media(max-width:620px){/* The catalog is a list of complete examples, with a single framing level. */
:root body.approved-home #services .hw-grid{gap:24px}
:root body.approved-home #services .hw-card,:root body.approved-home #services .hw-card:last-child{padding:20px 0 0;margin:0}
:root body.approved-home #services .hw-card-copy{margin-bottom:16px}
:root body.approved-home #services .hw-card h3{margin-block:8px 10px}
:root body.approved-home #services .hw-card-copy>p{max-width:none;font-size:17px;line-height:1.6}
:root body.approved-home #services .hw-card .hw-artifact,:root body.approved-home #services .hw-card:last-child .hw-artifact{padding:14px 0 0;border:0;border-top:1px solid #c2b494;background:transparent;box-shadow:none}
:root body.approved-home #services .hw-file-heading{padding-bottom:10px;margin-bottom:12px;gap:4px 12px}
:root body.approved-home #services .hw-artifact :is(p,li,dd){font-size:16px;line-height:1.55}
:root body.approved-home #services .hw-log>div{grid-template-columns:70px minmax(0,1fr);gap:10px;padding-block:6px}
:root body.approved-home #services .hw-file-note{margin-top:12px;padding-top:10px}
}/* Mobile navigation: preserve the full booking label without shrinking the brand. */@media(max-width:480px){
:root body .site-header,:root body.approved-home .site-header{
  position:relative;top:auto;height:auto;min-height:112px;
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"brand menu" "booking booking";
  padding:8px 16px 12px;gap:4px 16px;
 }
:root body .site-header .wordmark,:root body.approved-home .site-header .wordmark{
  grid-area:brand;justify-self:start;font-size:26px;letter-spacing:-1px;min-height:44px;
 }
:root body .site-header .site-mobile-toggle,:root body.approved-home .site-header .site-mobile-toggle{
  grid-area:menu;justify-self:end;font-size:15px;gap:8px;min-width:64px;min-height:44px;padding:0 4px;
 }
:root body .site-header .site-mobile-toggle>span{font-size:16px}
:root body .site-header .site-booking,:root body.approved-home .site-header .site-booking{
  grid-area:booking;justify-self:stretch;width:100%;margin:0;
  justify-content:center;font-size:16px;min-height:44px;padding:10px 12px;white-space:normal;text-align:center;
 }
}/* Homepage art is atmosphere: no image or art wrapper reserves layout space. */
:root body.approved-home #journey-start .hero-layout{position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr)}
:root body.approved-home #journey-start .hero-copy{grid-column:1;grid-row:1;max-width:48%}
:root body.approved-home #journey-start .hero-copy h1,:root body.approved-home #journey-start .hero-copy>p{width:100%}
:root body.approved-home #journey-start .hero-proof-band{grid-column:1;grid-row:2;position:relative;z-index:2}
:root body.approved-home #journey-start .hero-person{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;margin:0;opacity:1;mask-image:none;-webkit-mask-image:none}
:root body.approved-home #journey-start .hero-person img{object-fit:cover;object-position:center 15%;mask-image:none;-webkit-mask-image:none}
:root body.approved-home #journey-start .hero-person::after{display:none}
:root body.approved-home #journey-start .hero-voices-quotes{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:24px}
:root body.approved-home main .home-painting{position:absolute;inset:0;order:initial;width:100%;height:100%;margin:0;z-index:-2;opacity:.5;mask-image:radial-gradient(ellipse at 75% 45%,#000 32%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse at 75% 45%,#000 32%,transparent 78%)}
:root body.approved-home :is(.engagement-art,.faq-art){position:absolute;inset:0;width:100%;height:100%;margin:0;min-height:0;pointer-events:none;z-index:-1;display:block}
:root body.approved-home #engagement .engagement-heading{position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr)}
:root body.approved-home .faq-grid{position:relative;isolation:isolate}
:root body.approved-home .art-pending{transition:opacity 1100ms ease}
:root body.approved-home main .art-pending:not(.art-visible){opacity:0!important}@media(max-width:800px){
:root body.approved-home #journey-start .hero-voices-quotes{grid-template-columns:minmax(0,1fr)}
:root body.approved-home #journey-start .hero-copy{max-width:100%;background:none;border-radius:0}
:root body.approved-home main .home-painting{opacity:.4}
}@media(prefers-reduced-motion:reduce){
:root body.approved-home .art-pending{transition:none}}/* Section two: a quiet continuation of the industry voices. */
:root body.approved-home main>#how-it-works{background:#022827;color:#f4eedf;border:0;padding:80px 0 72px;isolation:isolate;overflow:hidden}
:root body.approved-home #how-it-works .home-heading{position:relative;z-index:1;max-width:560px;min-height:0;margin:0 0 64px;display:block;background:#022827}
:root body.approved-home #how-it-works .home-eyebrow{color:#f4eedf;font-size:13px;line-height:1.5;letter-spacing:.08em;margin:0 0 24px;text-shadow:none;background:none}
:root body.approved-home #how-it-works h2{font-family:Journey,Georgia,serif;font-size:54px;font-weight:500;line-height:1.08;letter-spacing:-.025em;color:#f4eedf;margin:0;max-width:560px}
:root body.approved-home #how-it-works h2 em{color:#d6bd83;font-style:italic}
:root body.approved-home #how-it-works>.painting-process{position:absolute;inset:24px 0 auto auto;width:42%;height:310px;margin:0;opacity:.45;mix-blend-mode:normal;z-index:0;pointer-events:none;mask-image:radial-gradient(ellipse at center,#000 0%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,#000 0%,transparent 70%);animation:process-art-enter 1.6s ease-out both}
:root body.approved-home #how-it-works .process-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;border-top:1px solid #f4eedf24}
:root body.approved-home #how-it-works .process-grid li{display:block;border:0;padding:32px 36px 0;background:none;box-shadow:none;border-radius:0}
:root body.approved-home #how-it-works .process-grid li+li{border-left:1px solid #f4eedf24}
:root body.approved-home #how-it-works .step-number{display:block;font:500 13px/1.5 Manrope,sans-serif;color:#d6bd83;margin:0 0 24px}
:root body.approved-home #how-it-works .process-grid h3{font:500 25px/1.2 Journey,Georgia,serif;color:#f4eedf;margin:0 0 14px;padding:0}
:root body.approved-home #how-it-works .process-grid p{font:400 16px/1.65 Manrope,sans-serif;color:#f4eedf;max-width:34ch;margin:0;padding:0;text-shadow:none}
@keyframes process-art-enter{from{opacity:0}to{opacity:.45}}@media(max-width:800px){
:root body.approved-home main>#how-it-works{padding:40px 0 36px}
:root body.approved-home #how-it-works .home-heading{max-width:560px;margin-bottom:30px}
:root body.approved-home #how-it-works h2{font-size:36px}
:root body.approved-home #how-it-works>.painting-process{display:none}
:root body.approved-home #how-it-works .process-grid{grid-template-columns:1fr}
:root body.approved-home #how-it-works .process-grid li{padding:20px 0}
:root body.approved-home #how-it-works .process-grid li+li{border-left:0;border-top:1px solid #f4eedf24}
:root body.approved-home #how-it-works .step-number{margin-bottom:10px}
:root body.approved-home #how-it-works .process-grid h3{font-size:24px;margin-bottom:8px}
:root body.approved-home #how-it-works .process-grid p{font-size:15px;line-height:1.5;max-width:none}
}@media(prefers-reduced-motion:reduce){
:root body.approved-home #how-it-works>.painting-process{animation:none}}/* Independent voices: two quiet, readable quote cards. */
:root body.approved-home #journey-start .hero-voices figure{display:flex;flex-direction:column;margin:0;padding:36px 36px 30px;background:#0b3a37;border:1px solid rgba(214,189,131,.28);border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.25);transition:border-color .2s ease,transform .2s ease}
:root body.approved-home #journey-start .hero-voices figure::before{content:none;display:none;height:0;font:400 64px/1 Georgia,serif;color:#d6bd83;opacity:.9}
:root body.approved-home #journey-start .hero-voices blockquote{flex:1}
:root body.approved-home #journey-start .hero-voices blockquote p{font:500 26px/1.35 Journey,Georgia,serif;color:#f4eedf}
:root body.approved-home #journey-start .hero-voices figcaption{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:16px;margin:28px 0 0;padding-top:20px;border-top:1px solid rgba(214,189,131,.28)}
:root body.approved-home #journey-start .voice-attribution{display:flex;flex-direction:column;gap:4px;color:#d5dece;font-size:14px;line-height:1.5}
:root body.approved-home #journey-start .voice-attribution strong{color:#f4eedf;font-size:16px;font-weight:600}
:root body.approved-home #journey-start .hero-voices a{flex-shrink:0;color:#d6bd83;font-size:14px;white-space:nowrap}@media(hover:hover){
:root body.approved-home #journey-start .hero-voices figure:hover{border-color:rgba(214,189,131,.5);transform:translateY(-2px)}}@media(max-width:800px){
:root body.approved-home #journey-start .hero-voices figure{padding:28px 26px 24px}
:root body.approved-home #journey-start .hero-voices blockquote p{font-size:20px}
:root body.approved-home #journey-start .hero-voices figcaption{flex-direction:column;align-items:flex-start;gap:8px;margin-top:24px;padding-top:16px}
}@media(prefers-reduced-motion:reduce){
:root body.approved-home #journey-start .hero-voices figure{transition:none;transform:none}}/* Approved photographic hero: its containing grid row ends before the proof band. */
:root body.approved-home main>#journey-start{padding-top:0}
:root body.approved-home #journey-start .hero-layout{row-gap:24px}
:root body.approved-home #journey-start .hero-copy{padding:64px 0;min-height:590px;display:flex;flex-direction:column;justify-content:center}
:root body.approved-home #journey-start .hero-identity{position:absolute;grid-area:1 / 1 / 2 / 2;inset:0 calc((100vw - 100%) / -2) 0 auto;width:calc(60% + max(0px, (100vw - 1440px) / 2));height:100%;max-height:none;max-width:none;margin:0;z-index:0;pointer-events:none;opacity:1;visibility:visible;display:grid;mask-image:linear-gradient(90deg,transparent,#000 35%),linear-gradient(180deg,#000 82%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%),linear-gradient(180deg,#000 82%,transparent);mask-composite:intersect;-webkit-mask-composite:source-in;animation:none}
:root body.approved-home #journey-start .hero-person img{object-fit:cover;object-position:right top;transform:none;mask-image:none;-webkit-mask-image:none}
@keyframes hero-portrait-arrive{from{opacity:0}to{opacity:1}}@media(min-width:801px){
:root body.approved-home main>#journey-start{background:linear-gradient(90deg,#022827 40%,#0d1a11 100%)}
}@media(max-width:1023px) and (min-width:801px){
:root body.approved-home #journey-start .hero-copy{max-width:51%;padding:40px 0}
:root body.approved-home #journey-start .hero-copy h1{font-size:48px}
}@media(max-width:800px){
:root body.approved-home #journey-start .hero-identity{position:relative;grid-area:1 / 1 / 2 / 2;inset:auto;justify-self:center;width:calc(100% + 36px);height:390px;max-width:none;opacity:1;mask-image:linear-gradient(180deg,#000 75%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 75%,transparent)}
:root body.approved-home #journey-start .hero-copy{grid-row:2;max-width:100%;padding:0;min-height:0;display:block}
:root body.approved-home #journey-start .hero-proof-band{grid-row:3}
:root body.approved-home #journey-start .hero-layout{row-gap:0}
:root body.approved-home #journey-start .hero-copy{margin-top:-12px;margin-bottom:22px}
:root body.approved-home #journey-start .hero-person img{object-position:82% top}
}@media(prefers-reduced-motion:reduce){
:root body.approved-home #journey-start .hero-identity{animation:none}}/* Approved Roman wordmark: shared vector artwork in every header and footer. */
:root body .wordmark,:root body .site-header .wordmark,:root body.approved-home .site-header .wordmark,:root body .agency-footer .wordmark{display:inline-flex;align-items:center;flex-shrink:0;width:260px;height:76px;min-height:44px;line-height:1;letter-spacing:normal;text-decoration:none}
:root body .wordmark .brand-wordmark{display:block;width:100%;height:100%;overflow:visible}
:root body .wordmark .brand-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:767px){
:root body .site-header .wordmark,:root body.approved-home .site-header .wordmark{width:195px;height:58px}
:root body .site-header .site-booking{display:none}
:root body .site-header .site-mobile-toggle,:root body.approved-home .site-header .site-mobile-toggle{font-size:var(--fs-small);gap:7px;width:auto;min-width:44px}
:root body .site-header,:root body.approved-home .site-header{justify-content:space-between;padding-inline:20px}}@media(max-width:359px){
:root body .site-header .wordmark,:root body.approved-home .site-header .wordmark{width:170px}}/* Room for the enlarged numeral and fully visible laurel. */@media(min-width:1024px){
:root body .site-header,:root body.approved-home .site-header{height:90px;min-height:90px}}

/* Option coverage: all data remains visible until the controls initialize. */
:root body.approved-home #compare h2 em{color:#d4af5f}
#compare .home-heading{max-width:880px;margin-bottom:34px}
#compare .comparison-pills{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}
#compare .comparison-select{display:flex;align-items:center;justify-content:space-between;gap:20px;width:auto;min-height:54px;padding:12px 20px;border:1px solid #f2e8d540;border-radius:40px;background:#063936;color:#f2e8d5;font:600 13px/1.4 Manrope,sans-serif;text-decoration:none}
#compare .comparison-select small{font:500 11px/1.4 Manrope,sans-serif;white-space:nowrap;opacity:.8}
#compare .comparison-select:first-child{background:#d4af5f;color:#032f2e;border-color:#d4af5f}
#compare .comparison-select[aria-pressed=true]{box-shadow:0 0 0 2px #d4af5f;outline-offset:5px}
#compare .comparison-select:focus-visible{outline:3px solid #f2e8d5;outline-offset:5px}
#compare .comparison-table-wrap{overflow:auto;border:1px solid #f2e8d526;border-radius:8px;background:#032f2ee8}
#compare .approach-table{display:table;table-layout:fixed;width:100%;border-collapse:collapse;color:#f2e8d5;font:14px/1.5 Manrope,sans-serif}
#compare .approach-table thead{display:table-header-group}
#compare .approach-table tbody{display:table-row-group}
#compare .approach-table tr{display:table-row;border:0}
#compare .approach-table tr>*{display:table-cell;width:17%;padding:20px 16px;vertical-align:middle;border:0;border-bottom:1px solid #f2e8d51a;background:transparent;color:inherit;box-shadow:none;opacity:1;font:500 13px/1.5 Manrope,sans-serif;letter-spacing:0;text-transform:none}
#compare .approach-table tr>:first-child{width:32%;text-align:left}
#compare .approach-table thead th{font-weight:700;font-size:14px;text-align:center}
#compare .approach-table thead td{color:#b4c4bf;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
#compare .approach-table td{text-align:center}
#compare .approach-table td::before,#compare .approach-table td::after{content:none;display:none}
#compare .approach-table [data-option="2"]{background:#d4af5f0b;color:#edce8d}
#compare .approach-table .comparison-group th{padding:22px 16px 9px;color:#d4af5f;font-size:10px;text-transform:uppercase;letter-spacing:.16em;border-bottom:1px solid #d4af5f40}
#compare .coverage-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:15px;margin-right:7px}
#compare .is-yes{background:#b6d5ba18;color:#bad7b9}
#compare .is-no{background:#f2e8d508;color:#a2b5af}
#compare .approach-table small{display:block;margin-top:5px;color:#adbfba;font-size:10px;font-weight:400;line-height:1.5}
#compare .approach-table caption{display:table-caption;caption-side:bottom;text-align:left;padding:18px 16px;color:#a8b9b3;font:11px/1.6 Manrope,sans-serif}
#compare[data-spotlight="3"] [data-option]:not([data-option="2"]):not([data-option="3"]),#compare[data-spotlight="4"] [data-option]:not([data-option="2"]):not([data-option="4"]),#compare[data-spotlight="5"] [data-option]:not([data-option="2"]):not([data-option="5"]){opacity:.42}
#compare .comparison-bottom .home-link{font-size:12px;color:#c2cec5}
@media(max-width:700px){
 #compare .comparison-pills{gap:9px}
 #compare .comparison-select{padding:10px 13px;gap:12px;min-height:48px;font-size:11px}
 #compare .comparison-select small{font-size:10px}
 #compare .approach-table tr>*{padding:14px 8px;font-size:11px;width:auto}
 #compare .approach-table thead th{font-size:11px}
 #compare .approach-table tr>:first-child{width:44%}
 #compare .coverage-icon{width:19px;height:19px;margin-right:4px;font-size:12px}
 #compare .approach-table small{font-size:9px}
 #compare[data-spotlight="3"] [data-option]:not([data-option="2"]):not([data-option="3"]),#compare[data-spotlight="4"] [data-option]:not([data-option="2"]):not([data-option="4"]),#compare[data-spotlight="5"] [data-option]:not([data-option="2"]):not([data-option="5"]){display:none}
 #compare:not([data-spotlight]) .approach-table{min-width:720px}
}
@media(max-width:700px){
 #compare[data-spotlight] .approach-table,#compare[data-spotlight] .approach-table thead,#compare[data-spotlight] .approach-table tbody{display:block}
 #compare[data-spotlight] .approach-table tr{display:grid;grid-template-columns:44% 28% 28%}
 #compare[data-spotlight] .approach-table tr>*{display:block;width:auto;align-content:center;min-width:0}
 #compare[data-spotlight] .approach-table .comparison-group{grid-template-columns:1fr}
 #compare[data-spotlight] .approach-table caption{display:block}
}
@media(max-width:700px){
 #compare[data-spotlight] .approach-table{display:flex;flex-direction:column}
 #compare[data-spotlight] .approach-table caption{order:1}
}

/* Homepage story art dissolves at every boundary, including the top and right.
   Explicit ellipse radii end the radial fade inside the image; intersecting
   linear fades guarantee transparent edges at every responsive aspect ratio. */
:root body.approved-home main :is(.painting-faq,.painting-process,.painting-closing){
 -webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 30%,transparent 100%),linear-gradient(to right,transparent,#000 18%,#000 82%,transparent),linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
 mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 30%,transparent 100%),linear-gradient(to right,transparent,#000 18%,#000 82%,transparent),linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
 -webkit-mask-composite:source-in;
 mask-composite:intersect;
}
.compare-mobile-label{display:none}
@media(max-width:800px){
 #compare .comparison-pills{display:none!important}
 #compare .comparison-table-wrap{overflow:visible}
 #compare .approach-table,#compare:not([data-spotlight]) .approach-table,#compare[data-spotlight] .approach-table{display:table;min-width:0;width:100%;table-layout:fixed}
 #compare .approach-table thead,#compare[data-spotlight] .approach-table thead{display:table-header-group}
 #compare .approach-table tbody,#compare[data-spotlight] .approach-table tbody{display:table-row-group}
 #compare .approach-table tr,#compare[data-spotlight] .approach-table tr{display:table-row}
 #compare .approach-table tr>* ,#compare[data-spotlight] .approach-table tr>*{display:table-cell!important;width:16.5%;padding:12px 3px;opacity:1!important;font-size:13px;line-height:1.4}
 #compare .approach-table tr>:first-child{width:34%;padding-left:9px;text-align:left}
 #compare .approach-table thead th{font-size:10px;overflow-wrap:normal;letter-spacing:-.4px}
 #compare .approach-table thead td{font-size:11px;letter-spacing:0}
 #compare .compare-desktop-label,#compare .approach-table small{display:none}
 #compare .compare-mobile-label{display:inline}
 #compare .coverage-answer{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 #compare .coverage-icon{width:19px;height:19px;margin:0;font-size:13px}
 #compare .is-yes{color:#edce8d;background:#d4af5f18}
 #compare .is-no{color:#a2b5af}
 #compare .approach-table [data-option="2"]{background:#d4af5f12}
 #compare .approach-table .comparison-group th{font-size:10px;padding:17px 9px 8px;letter-spacing:.1em}
 #compare .approach-table caption,#compare[data-spotlight] .approach-table caption{display:table-caption;padding:12px 9px;font-size:10px}
 :root body.approved-home #compare .painting-comparison{opacity:.16}
}

/* Keep editorial headlines balanced at every viewport. */
h1,h2,h3,[class*="eyebrow"],[class*="card-title"]{text-wrap:balance!important}
.nowrap-phrase{white-space:nowrap;text-wrap:nowrap!important}
/* Inline groups move as a unit when they fit; longer emphasis still balances. */
h1 em,h2 em,h3 em{display:inline-block;max-width:100%;text-wrap:balance}
.headline-compact{font-size:clamp(20px,2.1vw,28px)!important;max-width:none!important}
#answer-title{max-width:none!important}
#answer-title .question-answer-line{display:inline-block}
.chapter-navigation>.eyebrow{white-space:nowrap;text-wrap:nowrap!important}

.headline-label{text-wrap:nowrap!important;font-size:10px!important;letter-spacing:.04em!important}
.headline-compact{text-wrap:nowrap!important}
.headline-sentence{display:inline-block;max-width:100%;text-wrap:balance}
.headline-privacy{font-size:clamp(30px,4.2vw,60px)!important;text-wrap:nowrap!important}
.headline-practical{font-size:clamp(32px,3.2vw,48px)!important}
.headline-information{font-size:24px!important}
.headline-participation{font-size:clamp(32px,3.5vw,48px)!important}
.headline-hubspot{font-size:24px!important}
:root body#top .headline-measurement{font-size:clamp(20px,2.8vw,24px)!important}

.headline-information,.headline-measurement{max-width:none!important}
