/* THESIVE v3.6.8 — Consumer-first reconciliation.
   Styling is additive: existing Companion, layout, motion and evidence systems remain intact. */
.v355-home .v354-hero-copy{max-width:690px}
.v355-home .v354-hero-copy .display{font-size:clamp(43px,5vw,72px);letter-spacing:-.049em;max-width:680px;line-height:1.02}
.v355-home .v354-hero-sub{max-width:550px;color:#b8c0c1;font-size:14px;line-height:1.68}
.v355-home .v354-hero-line{color:#b8bdc0;font-size:10px;letter-spacing:.095em}
.v368-subscription{margin:20px 0 17px;max-width:565px;padding:15px 18px 14px;border:1px solid rgba(215,164,77,.20);border-left:2px solid #c9a85c;border-radius:12px;background:linear-gradient(120deg,rgba(221,171,88,.055),rgba(255,255,255,.009))}
.v368-sub-label{font:600 9px/1.4 var(--sans, sans-serif);color:#c9a85c;letter-spacing:.13em;margin-bottom:7px}
.v368-subscription strong{display:block;font-size:15px;line-height:1.43;font-weight:600;letter-spacing:-.012em;color:#f0e6d7}
.v368-subscription p{font-size:12px;line-height:1.5;color:#b7bcbd;margin:7px 0 7px}
.v368-subscription small{display:block;font-size:10px;line-height:1.55;color:#9aa2a5}
.v368-store-group{display:flex;align-items:center;gap:9px;margin:0 0 17px;flex-wrap:wrap}
.v368-store-indicator{display:flex;align-items:center;gap:10px;min-width:172px;max-width:240px;padding:9px 13px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.012);user-select:none;cursor:default;pointer-events:none}
.v368-store-icon{width:23px;height:23px;display:grid;place-items:center;flex:none;color:#c9a85c;font:600 16px/1 sans-serif}
.v368-store-indicator b{display:block;color:#e4e7e7;font-size:11px;font-weight:600;line-height:1.3}
.v368-store-indicator small{display:block;color:#bc985b;font-size:9px;letter-spacing:.045em;margin-top:2px}
.v355-home .v354-learning-note{margin-top:15px;line-height:1.4;color:#b4bdc0}
.v355-home .v354-learning-note i{flex:none}
.v355-home .v354-context-grid .v368-pillar{min-height:245px}
.v355-home .v354-context-grid .v368-pillar h3{margin-top:34px;color:#ecedef;font-size:23px;line-height:1.2}
.v355-home .v354-context-grid .v368-pillar small{color:#c9a85c;font-size:10px}
.v355-home .v354-context-grid .v368-pillar p{font-size:12px;max-width:350px;color:#abb4b6;line-height:1.74}
.v368-proof-bridge{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:24px 2px 0;margin-top:22px;border-top:1px solid rgba(255,255,255,.085)}
.v368-proof-bridge small{display:block;font-size:9px;letter-spacing:.12em;color:#c9a85c}
.v368-proof-bridge p{margin:6px 0 0;color:#aab2b4;font-size:12px;line-height:1.6}
.v368-proof-bridge a{font-size:12px;color:#e8b86d;white-space:normal;text-decoration:none}
.v368-proof-bridge a:hover,.v368-proof-bridge a:focus-visible{text-decoration:underline}
.v368-record-boundary{max-width:850px;margin:14px 0 0;color:#b8c0c0;font-size:12px;line-height:1.65}
.v368-founder-note{max-width:740px;color:#aeb6b8;font-size:12px;line-height:1.6;padding-top:8px}
.v368-legal-status{margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;line-height:1.65;color:#c0a979}
/* Keep contrast strong without changing the inherited contact animation or routing. */
.contact-route-list span{line-height:1.75}
.v355-contact .v355-ai-contact-card p{font-size:12px}
/* Overflow protection for long consumer labels within existing components. */
.v355-home .v354-hero-grid,.v355-home .v354-hero-copy,.v355-home .v354-context-grid,.v355-home .v354-context-grid article{min-width:0}
.v368-subscription,.v368-proof-bridge,.v368-store-group{box-sizing:border-box;max-width:100%}
@media(min-width:1121px) and (max-width:1400px){
 .v355-home .v354-hero-grid{grid-template-columns:.9fr 1.1fr;gap:24px}
 .v355-home .v354-hero-copy .display{font-size:clamp(45px,4.45vw,64px)}
 .v368-store-indicator{min-width:150px}
}
@media(max-width:1120px){
 .v355-home .v354-hero-copy{max-width:760px}
 .v355-home .v354-hero-copy .display{font-size:clamp(48px,6vw,72px)}
 .v355-home .v354-customer-hero{padding-bottom:40px!important}
}
@media(max-width:700px){
 .v355-home .v354-hero-copy .display{font-size:clamp(43px,11vw,60px);line-height:1.06}
 .v355-home .v354-hero-sub{font-size:13px}
 .v368-subscription{padding:13px 15px;margin-top:18px}
 .v368-subscription strong{font-size:14px}
 .v368-subscription p{font-size:11px}
 .v368-subscription small{font-size:10px}
 .v368-store-group{gap:7px}
 .v368-store-indicator{flex:1 1 146px;min-width:0;padding:10px 11px;gap:8px}
 .v355-home .v354-context-grid .v368-pillar{min-height:0;padding:23px}
 .v355-home .v354-context-grid .v368-pillar h3{margin-top:23px}
 .v368-proof-bridge{align-items:flex-start;gap:14px}
}
@media(max-width:390px){
 .v355-home .v354-hero-copy .display{font-size:clamp(39px,10.7vw,48px)}
 .v368-store-indicator b{font-size:10px}
 .v368-store-icon{font-size:14px;width:18px}
 .v368-store-indicator small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.v368-store-indicator,.v368-subscription{transition:none!important}}
/* Restore intentional horizontal scrolling to the wide historical journal on phones.
   The baseline table was 760px wide with a non-scrolling wrapper; do not clip rows. */
@media(max-width:700px){
 .v354-founder-proof .v360-table-wrap{display:block;max-width:100%;min-width:0;overflow-x:auto!important;overflow-y:visible;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .v354-founder-proof .v360-table-wrap table{min-width:760px}
}
/* Retain the original overlay header, but prevent it overlapping the longer consumer hero. */
@media(min-width:701px){
  .v355-home .v354-customer-hero{padding-top:120px!important}
}
