/* Focused consumer-experience corrections. Loaded after the preserved Pass C cascade. */
:root{--ui-ink:#143e33;--ui-muted:#345d4e;--ui-focus:#103d32}
html{scroll-padding-top:112px;scrollbar-gutter:stable}
body{overflow-wrap:break-word}
[hidden]{display:none!important}
.ui-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex:0 0 20px;overflow:visible;stroke:currentColor;fill:none}
.v4-feature-kicker .ui-icon,.v4-eco-icon .ui-icon{width:22px;height:22px}
.action .arrow,.v4-category-arrow{display:inline-flex;align-items:center;justify-content:center}
.menu-trigger,.menu-close,.gallery-arrow,.screen-lightbox-close{cursor:pointer;touch-action:manipulation}
.menu-trigger svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.mobile-overlay{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:rgba(11,42,34,.27);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px)}
.menu-dialog{width:min(100%,510px);margin:0;max-height:calc(100dvh - max(12px,env(safe-area-inset-top,0px)) - max(12px,env(safe-area-inset-bottom,0px)));padding:22px clamp(20px,5vw,30px) 26px;border:1px solid rgba(255,255,255,.94);border-radius:30px;background:linear-gradient(142deg,rgba(245,252,246,.96),rgba(215,237,225,.95));box-shadow:0 24px 68px rgba(8,43,33,.24),inset 0 1px 0 #fff;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);color:var(--ui-ink);overscroll-behavior:contain;scrollbar-width:thin}
.menu-head{padding-bottom:16px;gap:14px;border-bottom:1px solid rgba(20,62,51,.18);align-items:center}
.menu-head .smallcap{font:700 12px/1.5 var(--sans);letter-spacing:.14em;color:#345d4e}
.menu-close{width:44px;height:44px;min-width:44px;flex:0 0 44px;padding:11px;border:1px solid #668375;background:rgba(255,255,255,.67);color:#143e33;display:grid;place-items:center;border-radius:50%}
.mobile-links{padding:8px 0 0;gap:0}
.mobile-links a,.v4-home .mobile-links a,.pass-c .mobile-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:17px 0;font:550 clamp(18px,4.9vw,23px)/1.3 var(--sans);letter-spacing:-.02em;border-bottom:1px solid rgba(20,62,51,.16);color:#143e33}
.mobile-links a>span{display:flex;align-items:center;flex:0 0 20px}
.mobile-links a[aria-current=page],.v4-home .mobile-links a[aria-current=page],.pass-c .mobile-links a[aria-current=page]{color:#103d32;font-weight:750;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.mobile-links a:hover,.mobile-links a:active{background:rgba(255,255,255,.34)}
.mobile-links a:focus-visible{outline-offset:3px}
.menu-foot{margin:19px 0 0;font:400 14px/1.65 var(--sans);color:#345d4e}
.nav-links a[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:2px}
body.overlay-locked{position:fixed;overflow:hidden;inset-inline:0;width:100%}
body :is(a,button,[tabindex="0"]):focus-visible{outline:3px solid #103d32!important;outline-offset:3px;box-shadow:0 0 0 6px #fff!important}
body .screenshot-button:focus-visible{outline-offset:-4px;box-shadow:inset 0 0 0 7px #fff!important}
.screen-lightbox-close{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-color:#668375}
.screen-lightbox-header{position:sticky;top:0;z-index:2;background:#eaf5ed;padding:6px;border-radius:15px}
.screen-lightbox-note,.consumer-disclosure{color:#345d4e;font-size:15px;line-height:1.6}
.pass-c .consumer-disclosure{font-size:15px;padding:16px 18px;border-left:3px solid #4c7b63;background:rgba(255,255,255,.42);border-radius:0 14px 14px 0}
.hero-preview-disclosure{position:absolute;left:5%;right:5%;bottom:-35px;margin:0;font:400 12px/1.5 var(--sans);color:#0c332b;text-align:center}
.pass-c .pc-hero-micro{font-size:13px;line-height:1.6}
.pass-c .pc-app-phone img{height:100%;width:100%;object-fit:cover;object-position:top}
.pass-c .promise-band,.pass-c .promise-band h2,.pass-c .promise-band p{color:#173e32}
.pass-c .promise-band p{color:#345d4e}
.pass-c .category-editorial{scroll-margin-top:112px}
.contact-topic-grid strong{display:inline-flex;align-items:center;gap:8px}
.pass-c .pc-contact-visual>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid #668375;border-radius:99px;background:rgba(255,255,255,.45);text-decoration:none;font:650 16px/1.4 var(--sans)}
.contact-tile .contact-email{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:100%;min-height:44px;overflow-wrap:anywhere}
.pass-c footer .footer-columns a,.v4-home footer .footer-columns a,footer .footer-columns a{min-height:44px}
.pass-c footer .footer-columns .group{min-width:0}
footer a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}
.pass-c-legal .page-hero{min-height:430px;padding:155px 0 65px}
.pass-c-legal .page-hero h1{max-width:900px}
.legal-reading{max-width:820px;font-size:17px;line-height:1.75;color:#345d4e}
.legal-reading h2{font:400 clamp(27px,3vw,36px)/1.2 var(--serif);letter-spacing:-.025em;color:#143e33;margin:36px 0 15px}
.legal-reading a{color:#174e3b;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.policy-status{font-size:14px;line-height:1.65;padding:18px 20px;background:#e0ece2;border-left:3px solid #4c7b63;border-radius:0 14px 14px 0;color:#264c3c}
@media(max-width:760px){html{scroll-padding-top:96px}.hero-preview-disclosure{bottom:-42px;font-size:12px;left:0;right:0}.v4-home .v4-hero-stage{margin-bottom:36px}.v4-home .v4-overline,.v4-home .v4-eyebrow{font-size:11px}.v4-home .v4-category-number{font-size:10px}.pass-c .pc-smallcap{font-size:12px}.pass-c-legal .page-hero{padding-top:125px;min-height:390px}.legal-reading{font-size:16px;line-height:1.75}.pass-c .category-editorial{scroll-margin-top:96px}.screen-lightbox{width:calc(100% - 24px)}}
@media(max-width:360px){.menu-dialog{padding:18px 19px 22px}.mobile-links a,.v4-home .mobile-links a,.pass-c .mobile-links a{font-size:18px;min-height:61px;gap:12px}.contact-tile .contact-email{font-size:19px}}
@media(max-height:600px){.menu-dialog{padding-top:12px;padding-bottom:18px}.menu-head{padding-bottom:10px}.mobile-links a,.v4-home .mobile-links a,.pass-c .mobile-links a{font-size:19px;min-height:48px;padding-block:12px}.menu-foot{margin-top:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(prefers-reduced-transparency:reduce){.menu-dialog{background:#eaf4ed;backdrop-filter:none;-webkit-backdrop-filter:none}.mobile-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(11,42,34,.8)}}
@media(forced-colors:active){body :is(a,button,[tabindex="0"]):focus-visible{outline-color:Highlight!important}.ui-icon{forced-color-adjust:auto}.menu-close,.screen-lightbox-close{border-color:ButtonText}.menu-dialog{border-color:CanvasText}}
/* Measured contrast corrections on the darkest permitted gradient stops. */
.pass-c .page-hero .eyebrow,.pass-c .page-hero-lens .eyebrow{color:#174f3f!important}
.pass-c .page-hero p{color:#234a3c}
.pass-c .pc-smallcap{color:#1d523f}
.v4-home .v4-hero-lead,.v4-home .v4-hero-support{color:#0c332b}
.v4-home .v4-eco-product small{color:#345d4e}
.v4-home .v4-feature-disclaimer{font-size:14px!important;line-height:1.65!important;color:#345d4e!important}
.v4-home .v4-standard .v4-eyebrow{color:#1e5a45}
.v4-home .v4-story-part small{color:#345d4e}
.pass-c-legal .page-hero .container{background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;box-shadow:none;padding:0;width:min(calc(100% - 2 * var(--gutter)),var(--wrap))}
.v4-home .v4-story .v4-story-art p{color:#345d4e!important}

/* Final customer-facing mobile type precision: app introduction and gallery only. */
.v4-home .v4-feature-kicker{font-size:12px;line-height:1.5;letter-spacing:.105em}
.v4-home .v4-feature-detail{font-size:13px;line-height:1.5;color:#345e50}
.v4-home .v4-gallery .app-image figcaption{font-size:14px;line-height:1.45}
.v4-home .v4-hero-caption-kicker{font-size:11px;letter-spacing:.13em}
.v4-home .v4-hero-caption-text{font-size:13px;line-height:1.45}
@media(max-width:760px){
 .v4-home .v4-feature-kicker{font-size:11px}
 .v4-home .v4-feature-detail{font-size:13px}
 .v4-home .v4-hero-caption-kicker{font-size:11px}
 .v4-home .v4-hero-caption-text{font-size:13px}
}
