:root {
    --navy-950:#071931;
    --navy-900:#0b2342;
    --navy-800:#12386a;
    --blue-650:#075fca;
    --blue-600:#0b6de8;
    --blue-100:#eaf3ff;
    --yellow-400:#ffc629;
    --orange-450:#ff7a32;
    --text:#102a46;
    --muted:#5f7184;
    --surface:#fff;
    --surface-soft:#f5f8fc;
    --surface-warm:#fff9ec;
    --border:#dbe4ee;
    --white:#fff;
    --container:72rem;
    --radius-sm:.7rem;
    --radius-md:1rem;
    --radius-lg:1.35rem;
    --shadow:0 1rem 2.8rem rgb(7 25 49 / 8%);
    --section-standard:clamp(3rem,5vw,4.75rem);
    --section-compact:clamp(2.5rem,4vw,3.75rem);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6.25rem;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.65;text-rendering:optimizeLegibility;overflow-wrap:anywhere}
img{max-width:100%;height:auto}
a{color:var(--blue-650);text-underline-offset:.17em}
a:hover{color:var(--navy-800)}
button,input,select,textarea{font:inherit}
h1,h2,h3{margin:0 0 .7rem;color:var(--navy-950);line-height:1.06;letter-spacing:-.035em}
h1{font-size:clamp(2.35rem,6.5vw,5.35rem);max-width:13ch}
h2{font-size:clamp(1.8rem,4vw,3.25rem);max-width:20ch}
h3{font-size:clamp(1.05rem,2vw,1.3rem);letter-spacing:-.02em}
p{margin:0 0 1rem}
main{min-height:60vh}
.container{width:min(calc(100% - 2rem),var(--container));margin-inline:auto}
.section{padding:var(--section-standard) 0}
.section--soft{background:var(--surface-soft)}
.section--navy{background:linear-gradient(135deg,var(--navy-950),#123c70);color:var(--white)}
.section--navy h2,.section--navy p{color:var(--white)}
.section--navy .eyebrow--light{color:#bcd9ff}
.eyebrow{margin:0 0 .85rem;color:var(--blue-650);font-size:.75rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.eyebrow--light{color:#bcd9ff}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;transform:translateY(-180%);padding:.7rem 1rem;background:var(--white);border:2px solid var(--blue-650);border-radius:.5rem;font-weight:800}
.skip-link:focus{transform:none}

/* Header */
.utility-bar{background:var(--navy-950);color:#d9e7f6;font-size:.73rem}
.utility-bar__inner{min-height:2.35rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem 1rem;padding-block:.35rem}
.utility-bar a{color:var(--white);font-weight:800;text-decoration:none}
.utility-bar__contact{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}
.site-header{position:sticky;top:0;z-index:70;background:var(--white);border-bottom:1px solid var(--border);box-shadow:0 .3rem 1rem rgb(7 25 49 / 6%)}
.site-header__inner{min-height:5.5rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}
.brand{display:block;width:5.1rem;line-height:0}
.brand img{width:100%}
.primary-nav{display:flex;align-items:center;justify-content:center;gap:clamp(.5rem,1.7vw,1.25rem)}
.primary-nav>a,.nav-services>summary{color:var(--navy-900);font-size:.87rem;font-weight:800;text-decoration:none;cursor:pointer;list-style:none;white-space:nowrap}
.primary-nav>a[aria-current="page"]{color:var(--blue-650)}
.nav-services{position:relative}
.nav-services>summary{display:inline-flex;align-items:center;gap:.35rem}
.nav-services>summary::-webkit-details-marker{display:none}
.nav-services>summary::after{content:"";width:.42rem;height:.42rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.12rem) rotate(45deg);transition:transform 150ms ease}
.nav-services[open]>summary::after{transform:translateY(.1rem) rotate(225deg)}
.nav-services__panel{position:absolute;left:50%;top:calc(100% + .9rem);transform:translateX(-50%);min-width:17rem;padding:.55rem;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow)}
.nav-services__panel a{display:block;padding:.7rem .8rem;border-radius:.45rem;color:var(--navy-900);font-size:.82rem;font-weight:750;text-decoration:none}
.nav-services__panel a:hover,.nav-services__panel a[aria-current="page"]{background:var(--blue-100);color:var(--blue-650)}
.header-actions{display:flex;align-items:center;gap:.75rem}
.header-phone{color:var(--navy-950);font-size:.88rem;font-weight:900;text-decoration:none;white-space:nowrap}
.nav-toggle{display:none}
.mobile-sticky-actions{display:none}

/* Buttons */
.button-row{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}
.button{max-width:100%;min-height:3rem;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.15rem;border:1px solid transparent;border-radius:.72rem;font-weight:900;line-height:1.15;text-align:center;text-decoration:none;transition:transform 150ms ease,box-shadow 150ms ease,background 150ms ease}
.button:hover{transform:translateY(-1px)}
.button--compact{min-height:2.65rem;padding:.62rem .9rem;font-size:.82rem}
.button--primary{background:var(--blue-650);color:var(--white);box-shadow:0 .55rem 1.2rem rgb(7 95 202 / 18%)}
.button--primary:hover{background:#0757b7;color:var(--white)}
.button--secondary{background:var(--white);border-color:#aebfd0;color:var(--navy-900)}
.button--secondary:hover{border-color:var(--blue-650);color:var(--blue-650)}
.button--accent{background:var(--yellow-400);color:var(--navy-950)}
.button--accent:hover{background:#ffd657;color:var(--navy-950)}
.button--light{background:var(--white);color:var(--navy-950)}
.button--quiet{min-height:2.75rem;padding:.65rem .4rem;background:transparent;border-color:transparent;color:var(--blue-650);box-shadow:none}
.button--quiet:hover{background:var(--blue-100);color:var(--navy-900);transform:none}
.button--quiet-light{color:var(--white)}
.button--quiet-light:hover{background:rgb(255 255 255 / 10%);color:var(--white)}
.text-link{color:var(--blue-650);font-weight:800;text-decoration:none}
.text-link--strong{font-size:.92rem}

/* Hero */
.hero{padding:clamp(3.5rem,6vw,5rem) 0;background:linear-gradient(180deg,#fff 0%,#f7faff 100%)}
.subpage-hero{padding:clamp(3rem,5vw,4.5rem) 0;background:linear-gradient(180deg,#fff 0%,#f7faff 100%)}
.hero--home h1{font-size:clamp(2.35rem,5vw,4.5rem);line-height:1.02;max-width:18ch}
.subpage-hero h1{font-size:clamp(2.25rem,4.4vw,4rem);line-height:1.04;max-width:18ch}
.hero__grid,.subpage-hero__grid{display:grid;gap:2.5rem;align-items:center}
.hero__lead,.subpage-hero__lead{max-width:39rem;margin:1rem 0 1.6rem;color:var(--muted);font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.62}
.hero__actions,.subpage-hero__actions{margin-top:.4rem}
.hero__availability{max-width:42rem;margin:-.55rem 0 1.35rem;color:var(--navy-800);font-size:.83rem;font-weight:800;line-height:1.55}
.hero__availability span{margin-inline:.25rem;color:var(--blue-650)}
.hero__text-link{margin:.9rem 0 0;font-size:.86rem}
.hero__text-link a{font-weight:750}
.brand-panel{min-height:20rem;display:grid;place-items:center;align-content:center;gap:1.1rem;padding:1.6rem;border-radius:1.7rem;background:linear-gradient(145deg,var(--navy-950),#164b88);box-shadow:var(--shadow);overflow:hidden}
.brand-panel img{width:min(56%,14rem);filter:drop-shadow(0 .6rem 1.1rem rgb(0 0 0 / 18%))}
.brand-panel__steps{width:100%;display:grid;gap:.45rem}
.brand-panel__steps span{padding:.58rem .75rem;border:1px solid rgb(255 255 255 / 18%);border-radius:.55rem;color:#eaf4ff;background:rgb(255 255 255 / 6%);font-size:.8rem;font-weight:750}
.simple-note{display:grid;gap:.55rem;padding:1.55rem;border-left:.3rem solid var(--yellow-400);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--white);box-shadow:var(--shadow)}
.simple-note strong{color:var(--navy-950);font-size:1.15rem;line-height:1.25}
.simple-note span{color:var(--muted);font-size:.9rem}

/* Trust bar */
.trust-bar{border-block:1px solid var(--border);background:var(--white)}
.trust-bar__grid{display:grid}
.trust-bar__grid>div{display:grid;gap:.15rem;padding:1.2rem 0;border-bottom:1px solid var(--border)}
.trust-bar__grid>div:last-child{border-bottom:0}
.trust-bar strong{color:var(--navy-950);font-size:.98rem}
.trust-bar span{color:var(--muted);font-size:.78rem}

/* Section headings */
.section-heading{margin-bottom:2.2rem}
.section-heading--center{text-align:center}
.section-heading--center h2{margin-inline:auto}
.section-heading--split{display:flex;flex-direction:column;gap:1rem;justify-content:space-between;align-items:flex-start}
.section-heading--split>p{max-width:35rem;color:var(--muted)}

/* Services */
.service-grid{display:grid;gap:1rem}
.service-card{display:block;min-width:0;padding:1.35rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white);color:inherit;text-decoration:none;transition:transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
.service-card:hover{transform:translateY(-2px);border-color:#a9c4e2;box-shadow:0 .8rem 2.2rem rgb(7 25 49 / 7%)}
.service-card__icon{width:2.6rem;height:2.6rem;display:grid;place-items:center;margin-bottom:1rem;border-radius:.65rem;background:var(--blue-100);color:var(--blue-650);font-size:.78rem;font-weight:950}
.service-card p{margin:0 0 .9rem;color:var(--muted);font-size:.88rem}
.service-card .text-link{font-size:.8rem}


.more-services{display:flex;flex-wrap:wrap;gap:.45rem .9rem;align-items:center;margin-top:1.25rem;color:var(--muted);font-size:.82rem}
.more-services>span{font-weight:850;color:var(--navy-900)}
.more-services a{font-weight:800;text-decoration:none}

/* Ambient owner trust band */
.owner-airflow{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,rgb(255 255 255 / 18%),rgb(234 243 255 / 14%)),var(--surface-soft)}
.owner-airflow::before,.owner-airflow::after{content:"";position:absolute;z-index:0;pointer-events:none}
.owner-airflow::before{inset:-24% -30%;background:radial-gradient(ellipse at 24% 50%,rgb(11 109 232 / 13%) 0 10%,transparent 38%),radial-gradient(ellipse at 77% 48%,rgb(255 198 41 / 6%) 0 8%,transparent 32%);opacity:.48;transform:translate3d(-3%,0,0) scale(.98)}
.owner-airflow::after{top:50%;left:-58%;width:54%;height:1px;background:linear-gradient(90deg,transparent 0%,rgb(11 109 232 / 0%) 8%,rgb(11 109 232 / 18%) 45%,rgb(11 109 232 / 8%) 72%,transparent 100%);box-shadow:0 -2.15rem 0 rgb(11 109 232 / 5%),0 2.15rem 0 rgb(11 109 232 / 4%);opacity:0;transform:translate3d(0,-50%,0) skewX(-16deg)}
.owner-airflow>.container{position:relative;z-index:1}

@media (prefers-reduced-motion:no-preference){
    .owner-airflow::before{animation:owner-airflow-breathe 9s ease-in-out infinite}
    .owner-airflow::after{animation:owner-airflow-drift 16s ease-in-out infinite 1.5s}
}

@keyframes owner-airflow-breathe{
    0%,100%{opacity:.38;transform:translate3d(-3%,0,0) scale(.97)}
    50%{opacity:.64;transform:translate3d(3%,0,0) scale(1.035)}
}

@keyframes owner-airflow-drift{
    0%{opacity:0;transform:translate3d(0,-50%,0) skewX(-16deg)}
    14%{opacity:.24}
    72%{opacity:.18}
    100%{opacity:0;transform:translate3d(295%,-50%,0) skewX(-16deg)}
}

/* Split feature */
.split-feature{display:grid;gap:2.2rem;align-items:center}
.photo-placeholder{min-height:22rem;display:flex;align-items:flex-end;padding:1.25rem;border-radius:var(--radius-lg);background:linear-gradient(145deg,#dbe7f5,#eff4fa);border:1px solid #cfdae6;color:#61758b}
.photo-placeholder--owners{min-height:26rem;background:linear-gradient(145deg,#dfe9f4 0%,#edf3f8 55%,#fff5d9 120%)}
.photo-placeholder span{max-width:16rem;font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.split-feature__content>p:not(.eyebrow){max-width:38rem;color:var(--muted)}
.split-feature--copy-only{max-width:58rem}
.split-feature--copy-only .split-feature__content{max-width:48rem}
.clean-list{margin:1.2rem 0 1.4rem;padding:0;list-style:none;display:grid;gap:.65rem}
.clean-list li{position:relative;padding-left:1.35rem;color:var(--muted)}
.clean-list li::before{content:"✓";position:absolute;left:0;color:var(--blue-650);font-weight:950}

/* Offers */
.offer-feature-grid{display:grid;gap:1rem}
.offer-feature{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding:1.35rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white)}
.offer-feature__price{min-width:4.2rem;margin:0;color:var(--blue-650);font-size:2rem;line-height:1;font-weight:950;letter-spacing:-.05em}
.offer-feature h3{margin-bottom:.25rem}
.offer-feature div p{margin:0;color:var(--muted);font-size:.84rem}
.offer-list{display:grid;border-top:1px solid var(--border)}
.offer-list article{display:grid;grid-template-columns:minmax(0,6rem) minmax(0,1fr);gap:1rem;padding:1.35rem 0;border-bottom:1px solid var(--border)}
.offer-list article>span{color:var(--blue-650);font-size:1.45rem;font-weight:950;letter-spacing:-.035em}
.offer-list article p{margin:0;color:var(--muted);font-size:.88rem}
.micro-note{margin-top:1rem;color:var(--muted);font-size:.77rem}

/* Areas */
.area-callout{display:grid;gap:1.5rem;align-items:center}
.area-callout p:last-child{max-width:42rem;color:#d7e5f4}
.area-callout--stacked{grid-template-columns:minmax(0,1fr) auto}
.area-callout--stacked h2{max-width:24ch}
.area-chip-row{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.2rem 0 .8rem}
.area-chip-row span{display:inline-flex;align-items:center;min-height:2.2rem;padding:.4rem .68rem;border:1px solid rgb(255 255 255 / 28%);border-radius:999px;color:var(--white);background:rgb(255 255 255 / 7%);font-size:.75rem;font-weight:850}
.area-additional{margin-bottom:0;font-size:.88rem}
.area-group+.area-group{margin-top:2rem}
.area-group>h3{margin-bottom:.85rem}
.area-group--secondary .area-chip{min-height:2.65rem;background:var(--surface-soft);font-weight:750}
.area-grid{display:grid;grid-template-columns:1fr;gap:.65rem}
.area-chip{min-height:3rem;display:flex;align-items:center;justify-content:center;padding:.7rem;border:1px solid var(--border);border-radius:.6rem;background:var(--white);color:var(--navy-900);font-size:.83rem;font-weight:850;text-align:center}

/* Two-column information and steps */
.two-column-info{display:grid;gap:2rem;align-items:start}
.two-column-info>div:first-child p:last-child{color:var(--muted)}
.clean-list-wrap .clean-list,.two-column-info>.clean-list{margin:0}
.steps-row{display:grid;gap:1rem}
.steps-row article{padding:1.25rem;border-top:2px solid var(--blue-650)}
.steps-row article>span{display:inline-grid;place-items:center;width:1.85rem;height:1.85rem;margin-bottom:.8rem;border-radius:50%;background:var(--blue-100);color:var(--blue-650);font-size:.75rem;font-weight:950}
.steps-row p{margin:0;color:var(--muted);font-size:.88rem}

/* Progressive disclosure */
.compact-details{padding-top:0;padding-bottom:var(--section-compact)}
.compact-details .container{max-width:54rem}
.compact-details details{border-top:1px solid var(--border)}
.compact-details details:last-child{border-bottom:1px solid var(--border)}
.compact-details summary{position:relative;padding:1.1rem 2.5rem 1.1rem 0;cursor:pointer;list-style:none;color:var(--navy-950);font-weight:900}
.compact-details summary::-webkit-details-marker{display:none}
.compact-details summary::after{content:"+";position:absolute;right:.2rem;top:50%;transform:translateY(-50%);color:var(--blue-650);font-size:1.35rem}
.compact-details details[open] summary::after{content:"−"}
.compact-details details>div{padding:0 2rem 1.1rem 0;color:var(--muted);font-size:.9rem}
.compact-details details>div p:last-child{margin-bottom:0}
.narrow-copy{max-width:50rem}
.narrow-copy>p:not(.eyebrow){color:var(--muted)}
.link-row{display:flex;flex-wrap:wrap;gap:1rem 1.4rem;margin-top:1.4rem}

/* Pricing */
.pricing-grid{display:grid;gap:1rem}
.pricing-card{padding:1.45rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--white)}
.pricing-card--featured{background:linear-gradient(145deg,var(--navy-950),#164b88);border-color:transparent;color:var(--white)}
.pricing-card__price{margin:0;color:var(--navy-950);font-size:2.9rem;line-height:1;font-weight:950;letter-spacing:-.055em}
.pricing-card--featured .pricing-card__price,.pricing-card--featured h3{color:var(--white)}
.pricing-card>span{display:block;margin:.2rem 0 .9rem;color:var(--muted);font-size:.75rem;font-weight:800}
.pricing-card--featured>span{color:#fff}
.pricing-card p:last-child{margin:0;color:var(--muted);font-size:.84rem}
.pricing-card--featured p:last-child{color:#dbe7f4}
.plan-details{margin-top:1.25rem;padding:1.1rem 1.2rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}
.plan-details h3{margin-bottom:.7rem}
.plan-details ul{display:flex;flex-wrap:wrap;gap:.45rem .7rem;margin:0;padding:0;list-style:none}
.plan-details li{padding:.42rem .62rem;border:1px solid var(--border);border-radius:999px;background:var(--white);color:var(--navy-800);font-size:.75rem;font-weight:750}

/* Owners */
.owner-grid{display:grid;gap:1rem}
.owner-card{display:grid;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--white)}
.owner-card__portrait{min-height:14rem;display:flex;align-items:flex-end;padding:1.25rem;background:linear-gradient(145deg,var(--navy-950),#1c568f);color:var(--white)}
.owner-card__portrait--alt{background:linear-gradient(145deg,#0c2d52,#0b6de8)}
.owner-card__portrait span{font-size:1.3rem;font-weight:900}
.owner-card__body{padding:1.35rem}
.owner-card__meta{margin-bottom:.3rem;color:var(--blue-650);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.owner-card__body p:last-child{margin-bottom:0;color:var(--muted)}
.owner-grid--text-only .owner-card{display:block}
.owner-grid--text-only .owner-card__body{padding:clamp(1.3rem,3vw,1.9rem)}

/* FAQ */
.faq-layout{display:grid;gap:2rem;align-items:start}
.faq-list{display:grid}
.faq-item{border-top:1px solid var(--border)}
.faq-item:last-child{border-bottom:1px solid var(--border)}
.faq-item>summary{position:relative;min-height:3.7rem;display:flex;align-items:center;padding:.9rem 2.5rem .9rem 0;cursor:pointer;list-style:none;color:var(--navy-950);font-weight:850}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary::after{content:"+";position:absolute;right:.2rem;color:var(--blue-650);font-size:1.25rem}
.faq-item[open]>summary::after{content:"−"}
.faq-item>div{padding:0 2rem 1rem 0}
.faq-item>div p{margin:0;color:var(--muted);font-size:.9rem}

/* Contact / form */
.contact-layout{display:grid;gap:2rem;align-items:start}
.contact-copy>p:not(.eyebrow){color:var(--muted)}
.form-status{margin-top:1.1rem;padding:1rem;border-left:.25rem solid var(--yellow-400);background:var(--surface-warm);color:var(--navy-900);font-size:.84rem}
.form-status--success{border-left-color:#2a9d64;background:#eefaf4}
.form-status--error{border-left-color:#bb3240;background:#fff1f2}
.request-form{padding:clamp(1.1rem,3vw,1.7rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--white);box-shadow:0 .8rem 2.3rem rgb(7 25 49 / 5%)}
.request-form fieldset{min-width:0;margin:0;padding:0;border:0}
.form-grid{display:grid;gap:.95rem}
.field{display:grid;gap:.35rem;min-width:0}
.field label{color:var(--navy-900);font-size:.78rem;font-weight:850}
.field input,.field textarea,.field select{width:100%;min-width:0;min-height:3rem;padding:.7rem .8rem;border:1px solid #7f91a5;border-radius:var(--radius-sm);background:var(--white);color:var(--navy-950)}
.field textarea{min-height:8rem;resize:vertical}
.request-form fieldset[disabled] input,.request-form fieldset[disabled] textarea,.request-form fieldset[disabled] select{opacity:1;cursor:not-allowed;background:var(--surface-soft);color:#52667c;border-color:#7f91a5}
.field__help,.field__optional{color:var(--muted);font-size:.68rem;font-weight:600}
.field__error{color:#9b2432;font-size:.72rem;font-weight:800}
.form-note{margin:1rem 0;color:var(--muted);font-size:.73rem}
.request-form__submit[disabled]{cursor:not-allowed;opacity:.58;filter:grayscale(.1)}
.request-form__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* CTA */
.final-cta{padding-top:clamp(2.7rem,6vw,5rem)}
.final-cta__box{display:flex;flex-direction:column;gap:1.4rem;align-items:flex-start;justify-content:space-between;padding:clamp(1.6rem,4vw,2.5rem);border-radius:var(--radius-lg);background:var(--navy-950);color:var(--white)}
.final-cta__box h2{color:var(--white);max-width:18ch}
.final-cta__box p{margin-bottom:0;color:#d6e4f2}


/* Error pages */
.error-page{min-height:55vh;display:grid;align-items:center}
.error-page__inner{max-width:44rem}
.error-page__inner>p:last-child{color:var(--muted);font-size:1.05rem}

/* Footer */
.site-footer{padding:2.65rem 0 5.5rem;background:#061426;color:#c7d6e6}
.site-footer__inner{display:grid;gap:1.5rem}
.footer-brand{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding-bottom:1.45rem;border-bottom:1px solid rgb(199 214 230 / 16%)}
.footer-logo{display:block;width:5.2rem;line-height:0}
.footer-brand p{margin:0;max-width:28rem;color:#d2deea;font-size:.92rem;line-height:1.6}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}
.footer-links__group{min-width:0}
.footer-links__group:last-child{padding-left:1.1rem;border-left:1px solid rgb(199 214 230 / 16%)}
.site-footer strong{display:block;margin-bottom:.75rem;color:var(--white);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}
.site-footer a,.site-footer span{display:block;margin:.35rem 0;color:#c7d6e6;font-size:.8rem;text-decoration:none}
.site-footer a:hover{color:var(--white)}
.footer-meta{display:grid;gap:.85rem;padding-top:1.3rem;border-top:1px solid rgb(199 214 230 / 16%)}
.footer-meta__item{margin:0 !important;color:#dfe9f3 !important;font-size:.88rem !important;line-height:1.45}
.footer-meta a.footer-meta__item{font-weight:800}

/* Focus */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--yellow-400);outline-offset:3px}

/* Mobile navigation */
@media (max-width:63.999rem){
    .site-header__inner{min-height:4.8rem;grid-template-columns:auto 1fr auto}
    .brand{width:4.25rem}
    .header-actions{display:none}
    .nav-toggle{grid-column:3;justify-self:end;width:2.75rem;height:2.75rem;display:grid;place-items:center;border:1px solid var(--border);border-radius:.65rem;background:var(--white);cursor:pointer}
    .no-js .nav-toggle{display:none}
    .nav-toggle__icon{width:1.15rem;display:grid;gap:.23rem}
    .nav-toggle__icon span{height:2px;background:var(--navy-950)}
    .primary-nav{grid-column:1/-1;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:.4rem 0 1rem}
    .js .primary-nav{display:none}
    .js .primary-nav[data-open]{display:flex;max-height:calc(100dvh - 7.2rem - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
    .primary-nav>a,.nav-services>summary{padding:.72rem 0;border-bottom:1px solid var(--border);font-size:.9rem}
    .nav-services__panel{position:static;transform:none;min-width:0;margin:.2rem 0 .4rem;padding:.25rem 0 .25rem .8rem;border:0;border-left:2px solid var(--blue-100);border-radius:0;box-shadow:none}
    .nav-services__panel a{padding:.55rem 0}
    html[data-nav-open]{overflow:hidden}
    .mobile-sticky-actions{position:fixed;z-index:60;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr 1.35fr;padding-bottom:env(safe-area-inset-bottom);background:var(--white);border-top:1px solid var(--border);box-shadow:0 -.4rem 1.6rem rgb(7 25 49 / 10%)}
    .mobile-sticky-actions a{min-height:3.35rem;display:grid;place-items:center;color:var(--navy-900);font-size:.76rem;font-weight:900;text-decoration:none;border-right:1px solid var(--border)}
    .mobile-sticky-actions a:last-child{border-right:0}
    .mobile-sticky-actions__primary{background:var(--yellow-400)}
}

@media (min-width:36rem){
    .trust-bar__grid{grid-template-columns:repeat(3,1fr)}
    .trust-bar__grid>div{padding:1.2rem 1rem;border-bottom:0;border-right:1px solid var(--border)}
    .trust-bar__grid>div:first-child{padding-left:0}.trust-bar__grid>div:last-child{border-right:0;padding-right:0}
    .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .steps-row{grid-template-columns:repeat(2,minmax(0,1fr))}
    .area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .field--wide{grid-column:1/-1}
}

@media (min-width:48rem){
    .offer-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .steps-row{grid-template-columns:repeat(3,minmax(0,1fr))}
    .area-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .owner-card{grid-template-columns:.7fr 1.3fr}.owner-card__portrait{min-height:100%}
    .owner-grid--text-only .owner-card{grid-template-columns:1fr}
    .site-footer__inner{gap:1.8rem}
    .footer-brand{gap:1.25rem}
    .footer-links{gap:1.8rem}
    .footer-meta{grid-template-columns:auto minmax(0,1fr);align-items:center}.footer-meta__item:last-child{padding-left:1rem;border-left:1px solid rgb(199 214 230 / 16%)}
    .final-cta__box{flex-direction:row;align-items:center}
}

@media (min-width:64rem){
    .site-header__inner{gap:.7rem}
    .primary-nav{gap:clamp(.35rem,1vw,.85rem)}
    .primary-nav>a,.nav-services>summary{font-size:.82rem}
    .header-actions{gap:.5rem}
    .header-phone{font-size:.82rem}
    .hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(24rem,.8fr);gap:5rem}
    .subpage-hero__grid{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.65fr);gap:4rem}
    .service-grid--clean{grid-template-columns:repeat(3,minmax(0,1fr))}
    .service-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
    .split-feature{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:5rem}
    .split-feature--copy-only{grid-template-columns:minmax(0,1fr);gap:0}
    .two-column-info{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.7fr);gap:5rem}
    .section-heading--split{flex-direction:row;align-items:end}
    .area-callout{grid-template-columns:1fr auto}
    .contact-layout--lean{grid-template-columns:minmax(18rem,.7fr) minmax(0,1.2fr);gap:4rem}
    .faq-layout--lean{grid-template-columns:minmax(15rem,.45fr) minmax(0,1.25fr);gap:5rem}
    .area-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
    .site-footer__inner{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,.9fr);align-items:start;gap:2rem 2.5rem}.footer-brand{padding-bottom:0;border-bottom:0}.footer-links{grid-column:2/4;gap:2rem}.footer-meta{grid-column:1/-1;grid-template-columns:auto auto;justify-content:flex-start;gap:0}.footer-meta__item:last-child{margin-left:1.2rem}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card,.nav-services>summary::after{transition:none}.owner-airflow::before,.owner-airflow::after{animation:none!important}}

@media (max-width:40rem){
    .utility-bar__inner{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;gap:.18rem;padding-block:.45rem}
    .utility-bar__contact{justify-content:center;gap:1rem}
    .more-services{display:grid;grid-template-columns:1fr;gap:.3rem}
    .site-footer{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}
}

@media (max-width:26rem){
    h1{font-size:clamp(2.05rem,9.5vw,2.45rem)}
    h2{font-size:clamp(1.65rem,8vw,2.1rem)}
    .hero,.subpage-hero{padding:3rem 0}
    .area-callout--stacked{grid-template-columns:1fr}
    .button-row{align-items:stretch;width:100%}
    .button-row .button{width:100%}
    .brand-panel{min-height:20rem;padding:1.2rem}
    .offer-feature{grid-template-columns:1fr}
    .offer-list article{grid-template-columns:1fr}
    .final-cta__box .button-row{width:100%}
}

/* v0.9.5.1 mobile service-area layout correction */
@media (max-width:40rem){
    .section--area .area-callout--stacked{grid-template-columns:1fr;gap:1.25rem}
    .section--area .area-callout--stacked h2{max-width:18ch;font-size:clamp(1.9rem,8.1vw,2.35rem);line-height:1.04;text-wrap:balance}
    .section--area .area-chip-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:1.15rem 0 1rem}
    .section--area .area-chip-row span{justify-content:center;min-height:2.7rem;padding:.55rem .7rem;font-size:.8rem;text-align:center}
    .section--area .area-chip-row span:nth-child(3){grid-column:1/-1;width:min(100%,14rem);justify-self:center}
    .section--area .area-additional{max-width:32rem;font-size:.9rem;line-height:1.65}
    .section--area .button{width:100%;min-height:3.25rem}
}
@media (max-width:23rem){
    .section--area .area-callout--stacked h2{font-size:1.82rem}
    .section--area .area-chip-row{grid-template-columns:1fr}
    .section--area .area-chip-row span:nth-child(3){grid-column:auto;width:100%}
}

/* Desktop canvas expansion: wider presentation without stretching readable copy */
@media (min-width:64rem){
    :root{--container:80rem}
}
@media (min-width:90rem){
    :root{--container:88rem}
}
@media (min-width:120rem){
    :root{--container:96rem}
    .hero__grid,
    .subpage-hero__grid,
    .contact-layout--lean,
    .faq-layout--lean,
    .two-column-info{max-width:88rem}
}

/* v0.9.5.5 integrated homepage hero: stronger desktop branding and tighter mobile composition */
.hero--scene{position:relative;isolation:isolate;overflow:hidden;padding:0;background:#f8fbff}
.hero-scene__media{position:absolute;inset:0;z-index:-2;background:#eef5fb}
.hero-scene__media picture{display:block;width:100%;height:100%}
.hero-scene__media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center right}
.hero--scene::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgb(255 255 255 / 98%) 0%,rgb(255 255 255 / 95%) 23%,rgb(255 255 255 / 66%) 42%,rgb(255 255 255 / 22%) 60%,transparent 77%)}
.hero--scene::before{content:"";position:absolute;left:-6%;right:46%;bottom:-7rem;height:12rem;pointer-events:none;background:linear-gradient(180deg,rgb(255 198 41 / 0%) 0%,rgb(255 198 41 / 14%) 100%);border-radius:50%;filter:blur(18px);opacity:.7}
.hero-scene__inner{position:relative;min-height:clamp(28rem,31vw,33rem);display:flex;align-items:center;padding-block:1rem}
.hero-scene__content{width:min(52%,42rem);padding:clamp(1.65rem,2.4vw,2.2rem) 0 1.9rem}
.hero-scene__logo{display:block;width:clamp(12.5rem,20vw,18.5rem);height:auto;margin:0 0 .75rem}
.hero--scene .eyebrow{margin-bottom:.72rem;color:var(--navy-800)}
.hero--scene h1{max-width:14.5ch;font-size:clamp(2.35rem,3.25vw,3.65rem);line-height:1;text-wrap:balance}
.hero--scene .hero__lead{max-width:34rem;margin:.7rem 0 .82rem;color:#334f6c;font-size:clamp(.96rem,1.15vw,1.08rem);line-height:1.48}
.hero--scene .hero__availability{max-width:38rem;margin:0 0 1rem;color:var(--navy-800);font-size:.84rem;font-weight:700}
.hero-scene__actions{gap:.65rem}
.hero-scene__actions .button{min-width:9.5rem;box-shadow:0 .45rem 1.15rem rgb(7 25 49 / 12%)}
.hero-scene__actions .button:first-child{min-width:10.25rem}
.hero-scene__utility{position:absolute;top:0;right:0;display:flex;align-items:stretch;min-width:min(27rem,34vw);background:rgb(7 25 49 / 96%);border-radius:0 0 0 1.3rem;overflow:hidden;box-shadow:0 1rem 2.3rem rgb(7 25 49 / 18%)}
.hero-scene__utility-item{display:grid;gap:.14rem;padding:.72rem 1rem .68rem;color:var(--white)}
.hero-scene__utility-item+.hero-scene__utility-item{border-left:1px solid rgb(255 255 255 / 18%)}
.hero-scene__utility-label{font-size:.74rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:#dbe7f4}
.hero-scene__utility-value{color:var(--white);font-size:1.14rem;font-weight:950;line-height:1.05;text-decoration:none}
.hero-scene__utility-note{font-size:.76rem;font-weight:700;color:#dbe7f4}
.hero-scene__tagline{position:absolute;top:4.25rem;right:0;display:grid;gap:.12rem;min-width:12rem;margin:0;padding:.75rem 1rem .8rem 1.45rem;background:var(--yellow-400);color:var(--navy-950);clip-path:polygon(14% 0,100% 0,100% 100%,0 100%,0 24%);box-shadow:0 .8rem 1.6rem rgb(7 25 49 / 15%);text-align:left}
.hero-scene__tagline span{font-size:1rem;font-weight:950;line-height:1.05;text-transform:uppercase}
.hero-scene__tagline strong{font-size:1.68rem;font-weight:950;line-height:.98;font-style:italic;letter-spacing:-.03em}
.trust-bar--hero{border-top:.2rem solid var(--yellow-400);box-shadow:0 .35rem 1.5rem rgb(7 25 49 / 5%)}
.trust-bar__grid--four>div{min-width:0}
.trust-bar__grid--four strong{font-size:.95rem}
.trust-bar__grid--four span{line-height:1.45}

@media (min-width:64rem){
    .trust-bar__grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
    .trust-bar__grid--four>div{padding:1.25rem 1.15rem;border-bottom:0;border-right:1px solid var(--border)}
    .trust-bar__grid--four>div:first-child{padding-left:0}
    .trust-bar__grid--four>div:last-child{padding-right:0;border-right:0}
}

@media (max-width:74rem){
    .hero-scene__utility{min-width:23.5rem}
    .hero-scene__utility-value{font-size:1.12rem}
    .hero-scene__tagline{top:5rem;min-width:11.75rem;padding:.85rem 1rem .92rem 1.4rem}
    .hero-scene__tagline span{font-size:.88rem}
    .hero-scene__tagline strong{font-size:1.68rem}
}

@media (max-width:63.999rem){
    .hero--scene{display:block;background:var(--white)}
    .hero--scene::after{display:none}
    .hero--scene::before{display:none}
    .hero-scene__inner{min-height:0;display:block;width:min(calc(100% - 2rem),var(--container));padding:0}
    .hero-scene__content{width:100%;padding:1.75rem 0 1rem}
    .hero-scene__logo{width:min(17rem,72vw);margin:0 0 1rem}
    .hero-scene__utility,.hero-scene__tagline{display:none}
    .hero-scene__media{position:relative;inset:auto;z-index:0;width:min(calc(100% - 2rem),var(--container));height:clamp(15rem,47vw,21rem);margin:0 auto;overflow:hidden;border:1px solid var(--border);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:#eef5fb}
    .hero-scene__media img{object-position:right center}
    .hero--scene h1{max-width:15.5ch;font-size:clamp(2.25rem,7vw,3.45rem)}
    .hero--scene .hero__lead{max-width:42rem}
    .hero-scene__actions .button{min-width:0}
    .trust-bar--hero{padding-top:0;border-top:0;background:transparent;box-shadow:none}
    .trust-bar--hero .container{width:min(calc(100% - 2rem),var(--container))}
    .trust-bar__grid--four{grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--border);border-top:0;border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--white);box-shadow:0 .9rem 2rem rgb(7 25 49 / 7%);overflow:hidden}
    .trust-bar__grid--four>div{padding:1rem .9rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
    .trust-bar__grid--four>div:nth-child(2n){border-right:0}
    .trust-bar__grid--four>div:nth-last-child(-n+2){border-bottom:0}
}

@media (max-width:47.999rem){
    .hero-scene__logo{display:none}
    .hero-scene__media{height:clamp(13rem,62vw,17rem)}
    .hero-scene__media img{object-position:center center}
}

@media (max-width:40rem){
    .hero-scene__content{padding:1.5rem 0 .9rem}
    .hero-scene__logo{width:min(15rem,70vw);margin-bottom:.85rem}
    .hero--scene .eyebrow{margin-bottom:.55rem;font-size:.69rem}
    .hero--scene h1{max-width:16ch;font-size:clamp(2rem,9vw,2.65rem);line-height:1.02}
    .hero--scene .hero__lead{margin:.78rem 0 .88rem;font-size:.98rem;line-height:1.5}
    .hero--scene .hero__availability{margin-bottom:.9rem;font-size:.76rem;line-height:1.5}
    .hero-scene__actions{display:grid;grid-template-columns:1fr;width:100%;gap:.55rem}
    .hero-scene__actions .button{width:100%;min-height:3.2rem;padding-inline:.9rem}
    .trust-bar__grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}
    .trust-bar__grid--four>div{min-height:5.5rem;padding:.8rem .7rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);align-content:center}
    .trust-bar__grid--four>div:nth-child(2n){border-right:0}
    .trust-bar__grid--four>div:nth-last-child(-n+2){border-bottom:0}
    .trust-bar__grid--four strong{font-size:.82rem;line-height:1.18}
    .trust-bar__grid--four span{font-size:.7rem;line-height:1.35}
}

@media (max-width:21rem){
    .hero-scene__content{padding-top:1.4rem}
    .hero-scene__logo{width:min(13.4rem,72vw)}
    .hero--scene h1{font-size:1.9rem}
    .hero-scene__media{height:12.8rem}
    .trust-bar__grid--four{grid-template-columns:1fr}
    .trust-bar__grid--four>div{min-height:auto;padding:.85rem 0;border-right:0;border-bottom:1px solid var(--border)}
    .trust-bar__grid--four>div:nth-last-child(-n+2){border-bottom:1px solid var(--border)}
    .trust-bar__grid--four>div:last-child{border-bottom:0}
}

/* v0.9.5.8 professional full-bleed desktop canvas
   Keep full-width section backgrounds while allowing desktop content to use the viewport.
   Readable copy widths remain independently constrained. Mobile/tablet below 64rem unchanged. */
@media (min-width:64rem){
    .container{
        width:calc(100% - clamp(3rem,5vw,8rem));
        max-width:none;
    }

    /* Remove the earlier ultra-wide grid cap so desktop content can actually use the canvas. */
    .hero__grid,
    .subpage-hero__grid,
    .contact-layout--lean,
    .faq-layout--lean,
    .two-column-info{
        max-width:none;
    }

    /* Keep the photographic hero broad but reduce vertical dominance. */
    .hero-scene__inner{
        min-height:clamp(26rem,28vw,30rem);
    }
    .hero-scene__content{
        width:min(49%,43rem);
        padding:clamp(1.45rem,2vw,1.9rem) 0 1.65rem;
    }
    .hero-scene__logo{
        width:clamp(11.75rem,15vw,17rem);
    }
    .hero--scene h1{
        max-width:15ch;
        font-size:clamp(2.25rem,2.9vw,3.4rem);
    }

    /* Give wide desktop grids intentional breathing room rather than narrow islands. */
    .service-grid--clean,
    .offer-feature-grid{
        gap:clamp(1rem,1.4vw,1.6rem);
    }
    .service-card{
        padding:clamp(1.35rem,1.5vw,1.75rem);
    }
    .offer-feature{
        padding:clamp(1.35rem,1.5vw,1.7rem);
    }

    /* Owner copy remains readable, but the subsection no longer feels undersized on desktop. */
    .split-feature--copy-only{
        max-width:72rem;
    }
    .split-feature--copy-only .split-feature__content{
        max-width:58rem;
    }

    /* Use the width in sections that naturally benefit from separation across the screen. */
    .section-heading--split{
        gap:clamp(2rem,5vw,6rem);
    }
    .area-callout--stacked{
        column-gap:clamp(3rem,10vw,12rem);
    }
    .final-cta__box{
        padding-inline:clamp(2rem,3vw,4rem);
    }
}

@media (min-width:90rem){
    .container{
        width:calc(100% - clamp(4rem,5vw,9rem));
    }
}

@media (min-width:120rem){
    .container{
        width:calc(100% - clamp(5rem,6vw,10rem));
    }
}


/* v0.9.5.10 hero utility/tagline separation */
@media (min-width:64rem){
    .hero-scene__tagline{
        top:6.25rem;
    }
}


/* =========================================================
   v1 visual-fix pass — everything above this line is unchanged
   from the current live file. This block only ADDS rules; it
   does not remove or override anything. To roll back, delete
   everything from this comment to the end of the file (or
   re-upload the backup copy of site.css).
   ========================================================= */

/* Real hover depth on cards instead of a 2px nudge */
.service-card,.offer-feature{transition:transform 220ms ease,box-shadow 220ms ease,border-color 220ms ease}
.service-card:hover,.offer-feature:hover{transform:translateY(-6px);box-shadow:0 1.4rem 2.8rem rgb(7 25 49 / 14%);border-color:#a9c4e2}
@media (hover:hover){.trust-bar__grid>div{transition:background 200ms ease}.trust-bar__grid>div:hover{background:var(--surface-soft)}}

/* Scroll-in reveal for page sections. Progressive enhancement only:
   gated on html.js (already set by site.js on load), so content is
   fully visible with no flash if JavaScript is off or slow. The
   hero and subpage-hero blocks are untouched, so nothing above the
   fold is ever hidden on load. */
html.js .reveal{opacity:0;transform:translateY(22px);transition:opacity 700ms ease,transform 700ms ease}
html.js .reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1!important;transform:none!important;transition:none!important}}


/* =========================================================
   v2 "warm up the site" pass — added after Brian chose to keep
   the logo as-is and warm the site up to match it instead of
   redesigning the mascot. Still purely additive: nothing above
   this line is changed, and no HTML/PHP templates were touched
   for this pass, only this stylesheet. To roll back, delete
   everything from this comment to the end of the file (or
   re-upload the backup copy of site.css).

   What this does: pulls the same warm sunlight-glow treatment
   already used behind the homepage hero logo onto every inner
   page and the dark sections, swaps the cool blue-gray section
   background for the warm cream one that was already defined
   but barely used, softens corners, and warms up shadow tint.
   No new colors were invented — everything here reuses tokens
   already defined in :root at the top of this file (the same
   yellow/orange from the logo, the cream surface, etc).
   ========================================================= */

/* Slightly rounder, friendlier corners sitewide (cards, buttons,
   panels) instead of the sharper corporate-SaaS radius. */
:root{
    --radius-sm:.85rem;
    --radius-md:1.15rem;
    --radius-lg:1.6rem;
    --shadow:0 1rem 2.8rem rgb(120 72 20 / 10%);
}

/* The pale blue-gray section background becomes the warm cream
   token that already existed in :root but was only used once
   (the form-status note). Text contrast is unaffected: both are
   near-white, so this stays comfortably within WCAG AA. */
.section--soft{background:var(--surface-warm)}

/* Warm card/button shadows to match, instead of the cooler navy
   tint used in the v1 pass. */
.service-card:hover,.offer-feature:hover{box-shadow:0 1.4rem 2.8rem rgb(120 72 20 / 16%)}

/* Every inner page currently opens on a flat, personality-free
   banner. This adds the same soft sunlight glow already sitting
   behind the homepage hero logo, so every page opens with a hint
   of the same warmth instead of only the homepage having it. */
.subpage-hero{position:relative;isolation:isolate;overflow:hidden}
.subpage-hero::before{
    content:"";
    position:absolute;
    top:-8rem;
    right:-6rem;
    width:26rem;
    height:26rem;
    background:radial-gradient(circle,rgb(255 198 41 / 32%) 0%,rgb(255 122 50 / 14%) 45%,transparent 72%);
    pointer-events:none;
    z-index:-1;
}

/* The dark navy sections (service-area callout, final CTA) get a
   matching low, quiet glow in the corner instead of being flat
   solid navy. Kept subtle so white text stays easily readable. */
.section--navy,.final-cta{position:relative;isolation:isolate;overflow:hidden}
.section--navy::before,.final-cta::before{
    content:"";
    position:absolute;
    bottom:-10rem;
    right:-8rem;
    width:28rem;
    height:28rem;
    background:radial-gradient(circle,rgb(255 198 41 / 16%) 0%,rgb(255 122 50 / 8%) 45%,transparent 70%);
    pointer-events:none;
    z-index:-1;
}

@media (max-width:37.4rem){
    .subpage-hero::before{width:18rem;height:18rem;top:-5rem;right:-5rem}
    .section--navy::before,.final-cta::before{width:18rem;height:18rem;bottom:-6rem;right:-5rem}
}

@media (prefers-reduced-motion:reduce),(prefers-contrast:more){
    .subpage-hero::before,.section--navy::before,.final-cta::before{display:none}
}

/* Quiet, wrapping breadcrumbs added for canonical page navigation. */
.breadcrumb-trail{padding-top:1rem;padding-bottom:.25rem}
.breadcrumb-trail ol{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .55rem;margin:0;padding:0;list-style:none;color:var(--muted);font-size:.875rem;font-weight:700}
.breadcrumb-trail li{display:flex;align-items:center;gap:.55rem}
.breadcrumb-trail li+li::before{content:"/";color:#75869a}
.breadcrumb-trail a{color:var(--blue-650);text-decoration:none}
.breadcrumb-trail a:hover{text-decoration:underline}
.breadcrumb-trail [aria-current="page"]{color:var(--navy-950);font-weight:800}
