:root{--media-radius:24px;--quiet-white:#EAF0EC;--quiet-grey:#A9B9B0}
body #navCta{background:#243B31!important;color:#E7EEE9!important;border:1px solid #afc3b333;box-shadow:inset 0 1px #ffffff08!important;font-weight:500!important;letter-spacing:.12em!important;transition:background .25s ease,border-color .25s ease!important}
body #navCta [data-icon]{transition:transform .35s cubic-bezier(.2,.7,.3,1)!important}
@media(hover:hover){body #navCta:hover{background:#365345!important;border-color:#afc3b377}body #navCta:hover [data-icon]{transform:translateX(4px)}}
body #navCta:active,body #navCta:focus-visible{background:#365345!important;color:#fff!important}
body #heroCta{gap:20px!important}
body #heroCta .hero-benefit{order:-1;display:flex;gap:18px;align-items:center;justify-content:center;margin:0;max-width:none;line-height:1.2;font-size:clamp(17px,1.4vw,22px);letter-spacing:-.025em;color:#F4F6F4!important}
.hero-benefit-time{color:#A6B6AC;font-weight:450}.hero-benefit strong{font-weight:600}.hero-benefit-arrow{color:#8BAA99;font-size:17px}
#heroMore{background:transparent!important;border:1px solid #a6b6ac55!important;color:#BFD0C5!important;min-height:34px!important}
#ritualFilm,.doctor-player{border-radius:var(--media-radius)!important}
#ritual{padding:clamp(64px,8vw,110px) clamp(24px,6vw,80px)!important}
.ritual-layout{align-items:start;gap:clamp(30px,5vw,70px)}
.ritual-media-column{min-width:0}
#ritualFilm{background:#0B110E!important;border:0!important;aspect-ratio:16/9;isolation:isolate}
#ritualFilm[data-mode="tutorial"] #ritualFilmToggle{top:50%;left:50%;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%);width:60px!important;height:60px!important;font-size:20px}
#ritualFilmToggle[hidden]{display:none}
.preview-options{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 18px;font:12px/1.3 Archivo,system-ui;color:#788A80}
.preview-options>span{margin-right:8px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.preview-options button,.preview-options a{border:1px solid #6c837344;color:inherit;text-decoration:none;background:transparent;border-radius:99px;padding:9px 12px;cursor:pointer;font:inherit;transition:color .2s,background .2s}
.preview-options [aria-pressed="true"],.preview-options [aria-current="true"]{background:#203C2E;color:#F3F6F2;border-color:#203C2E}
.story-options{max-width:1320px;margin:0 auto;padding:22px 6%;color:#B5C7BB;position:relative;z-index:3}
.story-options [aria-current="true"]{background:#dce8df;color:#183325;border-color:#dce8df}
.availability-section{background:#0C1510;padding:64px 24px;border:0;text-align:center}
.availability-section>div{max-width:800px;display:block;margin:auto}
.availability-section h2{font-size:22px;font-weight:550;letter-spacing:0;text-transform:none;color:#A9BCAF;margin:0 0 18px}
.availability-section p{font-size:clamp(28px,2.7vw,38px);line-height:1.25;letter-spacing:-.025em}
.availability-section p strong{font-weight:600;color:#E8EEE9;display:block}
.availability-section p span{display:block;color:#A9BCAF;font-size:20px;font-weight:450;margin-top:8px;letter-spacing:0}
@media(max-width:760px){
 body #heroText{padding-inline:12px!important}
 body #heroText #humLine{font-size:clamp(30px,8.6vw,64px)!important;letter-spacing:-.05em!important}
 body #heroCta{gap:14px!important;bottom:calc(82px + env(safe-area-inset-bottom))!important}
 body #heroCta .hero-benefit{display:grid;grid-template-columns:auto auto;column-gap:10px;row-gap:5px;font-size:17px!important}
 .hero-benefit-time{font-size:16px}.hero-benefit strong{grid-column:1/-1;font-size:20px}.hero-benefit-arrow{grid-column:2;grid-row:1;font-size:15px}
 .availability-section{padding:48px 24px}.availability-section h2{font-size:21px;margin-bottom:16px}.availability-section p{font-size:28px}.availability-section p span{font-size:18px;line-height:1.4}
 .story-options{padding:18px 6%;gap:6px}.story-options>span{width:100%;margin-bottom:4px}.story-options a{font-size:11px;padding:9px 10px}
}
@media(prefers-reduced-motion:reduce){body #navCta [data-icon]{transition:none!important}}
@media(max-width:760px){.bone-story-toggle{position:fixed;bottom:100px;right:24px}.bone-story:not([data-onscreen="true"]) .bone-story-toggle{display:none}}
/* Portal shutters open from the center; the label keeps a clear light/dark contrast. */
body #navCta{isolation:isolate;background:#0D281D!important;color:#F3F9F5!important;border-color:#87BFA7!important;transition:color .32s ease,border-color .32s ease!important}
body #navCta:before,body #navCta:after{content:'';position:absolute;z-index:-1;top:0;bottom:0;width:51%;background:#B9E8CF;transition:transform .45s cubic-bezier(.22,.7,.25,1)}
body #navCta:before{left:0;transform:translateX(-103%)}body #navCta:after{right:0;transform:translateX(103%)}
body #navCta [data-ink],body #navCta [data-icon]{color:inherit!important}
body #navCta:hover,body #navCta:focus-visible{background:#0D281D!important;color:#092B1A!important;border-color:#B9E8CF!important}
body #navCta:hover:before,body #navCta:hover:after,body #navCta:focus-visible:before,body #navCta:focus-visible:after{transform:translateX(0)}
body #navCta:hover [data-icon]{transform:translateX(5px)}
#professionalAccess.professional-access{align-items:start;grid-template-columns:1fr 1fr}
#professionalAccess>h2{min-height:66px;display:flex;align-items:center;margin:0!important;font-size:clamp(30px,3.4vw,48px)!important}
#professionalAccess>div{min-width:0}#professionalLogin{box-sizing:border-box;height:66px}
#cta footer .footer-contact{justify-self:end;text-align:right;align-items:flex-end}
.availability-section{overflow:hidden}.availability-section h2{font-size:17px;margin-bottom:22px;color:#94AA9C}
.availability-section p .prescription-label{position:relative;isolation:isolate;display:inline-block;font-size:clamp(25px,3.1vw,43px);font-weight:400;letter-spacing:.13em;line-height:1.35;color:#ECF6EF}

.availability-section p span{font-size:18px;margin-top:13px}
@media(max-width:760px){#professionalAccess.professional-access{grid-template-columns:1fr;gap:24px}#professionalAccess>h2{min-height:0}.availability-section p .prescription-label{font-size:23px;letter-spacing:.075em}.bone-story-copy p,.bone-story--separated .bone-story-copy p{font-size:19px;line-height:1.45}}
@media(prefers-reduced-motion:reduce){body #navCta:before,body #navCta:after{transition:none}}

/* Standard site typography for availability. */
.availability-section p .prescription-label{font-family:inherit;font-size:clamp(28px,2.7vw,38px);letter-spacing:-.025em;font-weight:600;font-style:normal;text-transform:none;text-shadow:none}
@media(max-width:760px){.availability-section p .prescription-label{font-size:28px;letter-spacing:-.025em}}

/* Shared eyebrow treatment, from hero to availability. */
.site-eyebrow,.availability-section h2.site-eyebrow{font-family:Archivo,system-ui,sans-serif;font-stretch:75%;font-weight:600;font-size:11px;line-height:1.5;letter-spacing:.22em;text-indent:.22em;text-transform:uppercase;color:rgba(244,246,244,.66)}
#navBrandMark{height:64px!important;width:199px!important}
#navLogoW,#navLogoD{height:100%!important}
#topNav>div:first-child{height:86px!important}
@media(max-width:760px){
 #navBrandMark{height:58px!important;width:180px!important}
 #topNav>div:first-child{height:80px!important}
 #topNav{transition:transform .18s ease-out,background-color .18s ease,border-color .18s ease!important}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){#heroRunway{height:calc(var(--a5-vh,1vh)*220)!important}}
