/* V3: shared actions, readable headings and responsive portraits. */
:root{--action:#075bff;--action-hover:#0047d4;--green:#008763}
h1,h2,h3{max-width:none;text-wrap:wrap;overflow-wrap:break-word}
.button,.home-hero .button:first-child{background:var(--action);border-color:var(--action);color:#fff}
.button:hover,.button:focus-visible,.home-hero .button:first-child:hover{background:var(--action-hover);border-color:var(--action-hover);color:#fff}
.button.secondary{background:#fff;color:var(--action-hover);border:1px solid var(--action)}
.button.secondary:hover,.button.secondary:focus-visible{background:#e9f2ff;color:#00399f}
.companion .button.secondary{background:#fff;color:var(--action-hover);border-color:#9fc4ff}.companion .button.secondary:hover,.companion .button.secondary:focus-visible{background:#e9f2ff;color:#00399f}
.site-footer .button{background:var(--action);border-color:var(--action);color:#fff}.site-footer .button:hover,.site-footer .button:focus-visible{background:var(--action-hover);border-color:var(--action-hover)}
.cookie-settings{margin-top:1rem;font-size:var(--text-sm)}.cookie-settings summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.cookie-settings p{font-size:var(--text-sm)}
.nav-group{gap:0;align-items:center}.nav-label{padding-right:.15rem}.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;color:var(--action);padding:0;width:28px;min-width:28px;height:48px}
.nav-chevron{width:14px;height:14px;transition:transform .18s}.submenu-toggle[aria-expanded=true] .nav-chevron{transform:rotate(180deg)}
.submenu-toggle:hover,.submenu-toggle:focus-visible{background:#e9f2ff}.submenu{top:100%}
.home-hero-grid{grid-template-columns:1.05fr 1fr;min-height:0;align-items:center;padding-top:1.7rem;padding-bottom:1.2rem;gap:0 2rem}
.home-hero-art{grid-row:1/3;grid-column:2;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-content:end;min-height:0;padding:0 1rem;overflow:visible}
.hero-person{position:relative;left:auto;right:auto;bottom:auto;width:100%;height:auto;max-height:510px;object-fit:contain;object-position:center bottom;z-index:1}
.home-hero-art blockquote{position:relative;top:auto;right:auto;max-width:100%;font-size:1rem;text-align:center;line-height:1.6;margin:0 0 1rem;order:-1}
.home-hero-art blockquote br{display:none}.home-hero-art blockquote br:after{content:' '}
.person-label{position:relative;right:auto;bottom:auto;text-align:center;margin:.5rem 0 0;padding:.4rem 1rem;display:flex;gap:.75rem;align-items:center;max-width:100%}
.person-label strong{font-size:1.2rem}.shield-watermark{inset:15% 8% 10%;display:grid;place-items:center}.shield-watermark .icon{max-width:100%;width:100%;height:100%}
.values{grid-row:2;grid-column:1}.home-hero-copy{min-width:0}.home-hero h1{letter-spacing:-.025em}.home-hero .lead{max-width:none}
.philosophy .script-note,.check-list li:before{color:var(--green)}
.companion-grid{grid-template-columns:minmax(230px,.85fr) minmax(0,1.2fr);align-items:center}
.companion-image{justify-self:center;align-self:center;object-position:center;object-fit:contain;width:100%;max-width:400px;height:auto;max-height:520px;margin:auto;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 85%,transparent);mask-composite:intersect}
.companion .home-process{margin:1.5rem 0 0;grid-column:2}.companion .process{gap:.75rem}.companion .process li{min-width:0}
.consult-band,.cta-section{background:radial-gradient(ellipse at 90% 15%,#c6f3f8 0,transparent 45%),linear-gradient(115deg,#c9e0ff,#e7f5ff);border-top:1px solid #a6caff;border-bottom:1px solid #a6caff}
.consult-strip{padding-block:.5rem}.consult-band h2{color:#083f9f}.consult-band .lead-form{background:#ffffff85;border-radius:18px;padding:1.5rem}
.social-link{width:46px;height:46px;padding:.6rem!important}.social-link span{display:none}.site-footer .social{gap:.6rem}.social-icon{width:24px;height:24px}
.article-layout{grid-template-columns:240px minmax(0,1fr);gap:3rem}.article-prose{grid-column:2;grid-row:1;width:100%;max-width:none}.article-aside{grid-column:1;grid-row:1;position:static;min-width:0}.article-aside h2{font-size:var(--heading-sm)}
.aside-consult{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.aside-consult .button{width:100%;font-size:var(--text-sm)}
.related-links{list-style:none;margin:0;padding:0;max-width:100%}.related-links li{padding:1rem 0;border-bottom:1px solid var(--line)}.related-links a{display:inline-block;color:var(--action-hover);font-size:var(--heading-sm);line-height:1.5;text-decoration:underline;text-underline-offset:.2em}.related-links a:hover{color:var(--navy)}
.story-card h3,.card-body h3,.page-hero h1{max-width:none;text-wrap:wrap}.card-body{min-width:0}.policy-prose,.product-prose{max-width:900px;padding-bottom:3.5rem;font-size:var(--text-body);line-height:1.85}.policy-prose .toc{margin-top:2rem}.policy-content h2{scroll-margin-top:7rem}.policy-status h2{margin-top:0}
.product-prose h2{margin-top:2.5rem;font-size:var(--heading-md)}.product-prose figure{margin:2rem 0}.product-prose figure img{width:100%;height:auto;border-radius:16px}.product-documents{padding:1.5rem;background:#eef6ff;border-radius:16px;margin-top:2rem}.product-documents h2{margin-top:0}.product-documents a{overflow-wrap:anywhere}.product-cards{align-items:stretch}
@media(max-width:1250px){.submenu-toggle{width:48px;min-width:48px}.nav-chevron{width:16px;height:16px}}
@media(min-width:701px) and (max-width:950px){.home-hero-grid{grid-template-columns:1.1fr 1fr;gap:1rem}.home-hero h1{font-size:2.2rem}.home-hero-art{padding:0}.home-hero-art blockquote{font-size:.9rem}.person-label{flex-direction:column;gap:0}.values{grid-column:1/-1;grid-row:3}.companion .home-process{grid-column:1/-1}.companion-image{grid-row:1}}
@media(max-width:800px){.article-layout{display:block}.article-aside{margin-top:2rem}.policy-prose,.product-prose{width:calc(100% - 36px)}}
@media(max-width:700px){.home-hero-grid{display:flex;flex-direction:column;gap:0;padding-bottom:1.5rem}.home-hero-art{width:100%;padding:0 1rem;margin-top:1.5rem;min-height:0}.hero-person{max-height:390px;width:100%;height:auto;left:auto}.home-hero-art blockquote{font-size:1rem;max-width:100%;margin-bottom:1rem}.person-label{display:flex;flex-direction:row;max-width:100%;margin-top:.5rem}.values{width:100%;padding-bottom:1rem}.companion-grid{display:flex;flex-direction:column;gap:1rem}.companion-image{order:0;max-width:330px;max-height:390px;object-position:center}.companion-grid>div{order:1;width:100%}.companion .home-process{display:none;margin:0}.companion{padding-top:1.8rem;padding-bottom:2.5rem}.consult-band .lead-form{padding:1rem}.product-prose .life-preview{padding:1rem}}
@media(prefers-reduced-motion:reduce){.nav-chevron{transition:none}}
