/* Minimal normalize/preflight (replaces the prototype's Tailwind preflight). */
*,*::before,*::after{box-sizing:border-box;border:0 solid;}
html{-webkit-text-size-adjust:100%;line-height:1.5;}
body{margin:0;line-height:inherit;}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0;}
p,figure,blockquote,dl,dd,pre{margin:0;}
ol,ul,menu{list-style:none;margin:0;padding:0;}
b,strong{font-weight:bolder;}
small{font-size:80%;}
button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0;}
button,[type="button"],[type="submit"]{-webkit-appearance:button;background-color:transparent;background-image:none;cursor:pointer;}
:-moz-focusring{outline:auto;}
table{text-indent:0;border-color:inherit;border-collapse:collapse;}
img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle;}
img,video{max-width:100%;height:auto;}
[hidden]{display:none;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
:root{--font-fredoka:"Fredoka","Arial Rounded MT Bold","Trebuchet MS",sans-serif;}

:root { --pink:#e40088; --aqua:#61d3d8; --orange:#ee7808; --purple:#762bb7; --yellow:#e6e416; --ink:#101010; --paper:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:white; color:var(--ink); font-family:"Gotham","Avenir Next","Montserrat",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
img { display:block; max-width:100%; }
.nav-shell { position:sticky; top:0; z-index:30; display:grid; grid-template-columns:190px 1fr auto; align-items:center; min-height:82px; padding:0 5vw; background:white; border-bottom:1px solid #eee; }
.wordmark { color:var(--pink); font-family:Georgia,serif; font-size:1.05rem; font-weight:900; line-height:.78; }
.wordmark span { margin-left:10px; }
.nav-shell nav { display:flex; justify-content:center; gap:3.2vw; font-size:.82rem; font-weight:700; }
.nav-shell nav a:hover { color:var(--pink); }
.nav-cta,.hero-actions a:first-child,.range footer button,.signup button { padding:.85rem 1.35rem; border:0; border-radius:999px; background:var(--ink); color:white; font-family:var(--font-fredoka),sans-serif; font-size:.75rem; font-weight:700; }
.menu { display:none; }
.hero { position:relative; display:grid; min-height:650px; grid-template-columns:1fr .9fr; overflow:hidden; color:white; transition:background .35s ease; }
.hero.cetaglow { background:linear-gradient(135deg,#f51690,#e40088 60%,#ff4aaf); }
.hero.hydramatrix { background:linear-gradient(135deg,#f5ef1c,#e6e416 60%,#ffc928); color:#602071; }
.hero.auri { background:linear-gradient(135deg,#ffae00,var(--orange)); }
.hero.immoria { background:linear-gradient(135deg,#562087,var(--purple) 48%,#ef43bf); }
.hero-copy { z-index:2; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:7vw 3vw 7vw 7vw; }
.eyebrow,.section-kicker { margin:0 0 1rem; font-size:.72rem; font-weight:950; letter-spacing:.13em; }
h1,h2,h3 { font-family:var(--font-fredoka),"Arial Rounded MT Bold","Trebuchet MS",sans-serif; font-weight:700; letter-spacing:-.035em; }
.hero h1 { max-width:690px; margin:0; font-size:clamp(4.3rem,6vw,7rem); line-height:.92; }
.hero-copy>p:not(.eyebrow) { max-width:610px; margin:1.5rem 0 2rem; font-size:clamp(1rem,1.35vw,1.22rem); font-weight:650; line-height:1.55; }
.hero-actions { display:flex; gap:.8rem; }
.hero-actions a { padding:.95rem 1.45rem; border:2px solid white; border-radius:999px; font-size:.75rem; font-weight:900; }
.hero-actions a:first-child { border-color:var(--ink); }
.hero-product { display:grid; place-items:end center; padding:4vw 7vw 3vw 1vw; }
.hero-product img { width:min(72%,380px); max-height:76%; object-fit:contain; filter:drop-shadow(0 24px 28px rgba(48,8,44,.2)); animation:arrive .5s ease; }
@keyframes arrive { from { opacity:0; transform:translateY(20px) scale(.97); } }
.arrow { position:absolute; top:50%; z-index:5; display:grid; width:46px; height:46px; place-items:center; border:1px solid rgba(255,255,255,.65); border-radius:50%; background:rgba(255,255,255,.18); color:white; font-size:2rem; cursor:pointer; }
.prev { left:1.5rem; }.next { right:1.5rem; }
.dots { position:absolute; bottom:1.8rem; left:50%; display:flex; gap:.55rem; transform:translateX(-50%); }
.dots button { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:white; opacity:.45; }.dots button.active { width:28px; border-radius:10px; opacity:1; }
.ticker { overflow:hidden; padding:.85rem 0; background:var(--yellow); color:var(--pink); font-size:.66rem; font-weight:950; letter-spacing:.12em; white-space:nowrap; }
.ticker div { display:flex; width:max-content; gap:2rem; animation:ticker 24s linear infinite; }.ticker b{color:var(--orange)}
@keyframes ticker { to{transform:translateX(-50%)} }
.section-white { background:white; }
.ritual,.range { padding:7rem 5vw; text-align:center; }
.ritual h2,.range h2,.why h2,.story h2,.signup h2 { margin:0; font-size:clamp(3rem,5vw,5.8rem); line-height:.95; }
.intro { max-width:650px; margin:1rem auto 3.2rem; color:#555; line-height:1.6; }
.ritual-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; max-width:1400px; margin:auto; text-align:left; }
.ritual-grid article { position:relative; min-height:300px; padding:2rem; border-radius:34px; overflow:hidden; }
.ritual-grid article:after { content:""; position:absolute; inset:-40%; background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.35),transparent 28%); }
.ritual-0{background:var(--aqua)}.ritual-1{background:linear-gradient(135deg,#f60b95,#ff54c0);color:white}.ritual-2{background:linear-gradient(135deg,#ffad00,var(--orange));color:white}.ritual-3{background:linear-gradient(135deg,#4f1a78,var(--purple));color:white}
.ritual-grid small,.ritual-grid h3,.ritual-grid p,.ritual-grid span { position:relative; z-index:2; }.ritual-grid small{font-size:.64rem;font-weight:950;letter-spacing:.1em}.ritual-grid h3{margin:2.2rem 0 .8rem;font-size:2.1rem}.ritual-grid p{margin:0;line-height:1.55}.ritual-grid span{position:absolute;right:2rem;bottom:1.6rem;font-size:1.5rem}
.range { padding-top:2rem; text-align:left; }
.section-head { display:flex; align-items:end; justify-content:space-between; max-width:1400px; margin:0 auto 2.5rem; }.section-head a{font-size:.72rem;font-weight:900;text-decoration:underline}.section-head h2{font-size:clamp(3rem,4.6vw,5.3rem)}
.range-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; max-width:1400px; margin:auto; }
.range-grid>article { display:flex; min-width:0; flex-direction:column; padding:1.35rem; border-radius:28px; background:#f5f5f1; }
.tag { align-self:flex-start; padding:.35rem .7rem; border-radius:999px; color:white; font-size:.62rem; font-weight:950; }.range-0 .tag{background:var(--aqua);color:#082c37}.range-1 .tag{background:var(--pink)}.range-2 .tag{background:var(--orange)}.range-3 .tag{background:var(--purple)}
.range-image { display:grid; aspect-ratio:1.3; place-items:center; margin:1rem 0; overflow:hidden; border-radius:20px; background:white; }.range-image img{width:100%;height:100%;object-fit:cover}
.range-grid h3{margin:.3rem 0;font-size:1.45rem}.range-grid p{min-height:42px;margin:.25rem 0 1rem;font-size:.82rem;line-height:1.45}.chips{display:flex;flex-wrap:wrap;gap:.35rem}.chips span{padding:.35rem .5rem;border-radius:999px;background:#e8e8e3;font-size:.6rem;font-weight:800}.range footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:1.6rem}.range footer button{padding:.7rem 1rem}
.why { padding:7rem 7vw; background:#151515; color:white; text-align:center; }.why .section-kicker{color:var(--yellow)}
.why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; max-width:1250px; margin:3.5rem auto 0; text-align:left; }.why-grid article{min-height:240px;padding:2.2rem;border:1px solid #383838;border-radius:26px;background:#202020}.why-grid b{color:var(--yellow);font-size:.7rem}.why-grid h3{margin:1.7rem 0 .7rem;font-size:1.55rem}.why-grid p{margin:0;line-height:1.6;color:#eee}
.story { display:grid; grid-template-columns:1.2fr .8fr; gap:6vw; padding:7rem 7vw; }.story>div{align-self:center}.story h2{font-size:clamp(3.3rem,5vw,6rem)}.story>div>p:not(.section-kicker){max-width:780px;margin:1.4rem 0;line-height:1.75}.story strong{display:block;margin-top:1.7rem;color:var(--pink)}
.story aside { display:flex; min-height:530px; flex-direction:column; align-items:center; justify-content:center; gap:1rem; border-radius:40px; background:var(--yellow); color:var(--pink); text-align:center; transform:none; }.story aside span{font-size:.68rem;font-weight:950;letter-spacing:.12em}.story aside b{font-family:Georgia,serif;font-size:5rem}
.signup { padding:5rem 1rem; background:linear-gradient(135deg,#ff9b00,var(--orange)); color:white; text-align:center; }.signup h2{font-size:clamp(2.6rem,4vw,4.7rem)}.signup p{margin:.7rem 0 1.8rem}.signup form{display:flex;max-width:650px;gap:.7rem;margin:auto}.signup input{min-width:0;flex:1;padding:1rem 1.3rem;border:0;border-radius:999px}.signup button{padding:1rem 1.6rem}
.footer { position:relative; display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:4vw; padding:4.5rem 7vw 5.5rem; background:white; }.footer>div{display:flex;flex-direction:column;gap:.6rem}.footer b,.footer a{font-size:.72rem}.footer-logo{color:var(--pink);font-family:Georgia,serif;font-size:1.2rem!important;font-weight:900}.footer p{max-width:230px;line-height:1.5}.footer small{position:absolute;bottom:1.5rem;left:7vw}.footer em{position:absolute;right:7vw;bottom:1.5rem;font-size:.72rem}
@media(max-width:900px){.nav-shell{grid-template-columns:1fr auto auto}.nav-shell nav{position:absolute;top:72px;left:0;right:0;display:none;flex-direction:column;padding:1rem 5vw;background:white}.nav-shell nav.open{display:flex}.menu{display:flex;width:42px;height:42px;flex-direction:column;justify-content:center;gap:6px;border:0;background:none}.menu i{display:block;width:22px;height:2px;background:#111}.hero{grid-template-columns:1fr;min-height:calc(100svh - 72px)}.hero-copy{padding:5rem 7vw 2rem}.hero-product{padding:1rem 12vw 5rem}.ritual-grid,.range-grid{grid-template-columns:repeat(2,1fr)}.story{grid-template-columns:1fr}.values{} }
@media(max-width:620px){.nav-shell{min-height:70px;padding:0 1rem}.wordmark{font-size:.8rem}.nav-cta{padding:.7rem .9rem}.hero{display:flex;min-height:calc(100svh - 70px);flex-direction:column}.hero-copy{padding:4rem 1.3rem 1rem}.hero h1{font-size:clamp(3.6rem,16vw,5rem)}.hero-copy>p:not(.eyebrow){margin:1.1rem 0 1.4rem;font-size:.92rem}.hero-actions{flex-wrap:wrap}.hero-product{padding:1rem 3rem 5.2rem}.hero-product img{border-radius:26px}.arrow{top:auto;bottom:1.3rem}.prev{left:1.3rem}.next{right:1.3rem}.dots{bottom:2.4rem}.ritual,.range{padding:5rem 1.1rem}.ritual h2,.range h2,.why h2,.story h2,.signup h2{font-size:clamp(3rem,13vw,4.2rem)}.ritual-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.7rem}.ritual-grid article{min-width:84vw;scroll-snap-align:start}.section-head{align-items:flex-start;flex-direction:column;gap:1rem}.range-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.range-grid>article{min-width:84vw;scroll-snap-align:start}.why{padding:5rem 1.1rem}.why-grid{grid-template-columns:1fr}.story{padding:5rem 1.1rem}.story aside{min-height:330px}.signup{padding:4rem 1.1rem}.signup form{flex-direction:column}.footer{grid-template-columns:1fr 1fr;padding:4rem 1.2rem 7rem}.footer>div:first-child{grid-column:1/-1}.footer small{left:1.2rem}.footer em{right:auto;bottom:3rem;left:1.2rem}}

/* Mobile hero: one complete, phone-width square before the first scroll. */
@media(max-width:620px){
  .hero{display:block;width:100%;height:auto;min-height:0;aspect-ratio:1/1}
  .hero-copy{position:absolute;inset:0;z-index:3;display:flex;justify-content:center;padding:1.7rem 3.1rem 2.7rem 1.35rem}
  .hero h1{max-width:100%;font-size:clamp(2.65rem,12vw,3.45rem);line-height:.9}
  .eyebrow{margin-bottom:.65rem;font-size:.58rem;line-height:1.35}
  .hero-copy>p:not(.eyebrow){max-width:94%;margin:.75rem 0 1rem;font-size:.72rem;line-height:1.38}
  .hero-actions{gap:.45rem;flex-wrap:nowrap}
  .hero-actions a,.hero-actions a:first-child{padding:.67rem .78rem;font-size:.59rem;white-space:nowrap}
  .hero-product{display:none}
  .arrow{top:50%;bottom:auto;width:34px;height:34px;font-size:1.45rem;transform:translateY(-50%)}
  .prev{left:.45rem}.next{right:.45rem}
  .dots{bottom:.9rem}
}

/* Final polish: larger live-product cutouts, brand-pink Hydra copy, neon footer (v2). */
.hero-product img{width:min(82%,430px);max-height:82%}
.hero.hydramatrix .hero-copy,.hero.hydramatrix .eyebrow,.hero.hydramatrix h1,.hero.hydramatrix .hero-copy>p{color:var(--pink)}
.hero.hydramatrix .hero-actions a{color:var(--pink);border-color:var(--pink)}
.hero.hydramatrix .hero-actions a:first-child{background:var(--pink);border-color:var(--pink);color:white}
.footer{background:#101116;color:white}
.footer b,.footer-logo{color:#ff9418!important}.footer a{color:white}.footer p,.footer small,.footer em{color:#f5f5f7}

@media(max-width:620px){
  .hero-product{right:.35rem!important;width:24%!important;height:42%!important}
  .hero.cetaglow .hero-copy,.hero.hydramatrix .hero-copy{padding-right:29%}
}

/* Three icon badges remain visible together and break the card-heavy rhythm. */
.trust-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.55rem,2vw,1.5rem);padding:1.4rem clamp(.75rem,4vw,3rem)}
.trust-strip article,.trust-strip article:nth-child(n){display:flex;min-height:0;align-items:center;flex-direction:column;padding:0;background:transparent;color:#17171b;text-align:center}
.trust-icon{display:grid!important;width:74px;height:74px;place-items:center;margin:0 0 .7rem!important;border-radius:48% 52% 42% 58% / 54% 43% 57% 46%;font-family:Arial,sans-serif!important;font-size:2.2rem!important;font-weight:900!important;line-height:1;letter-spacing:0!important;transform:rotate(-4deg);box-shadow:5px 6px 0 #111}
.trust-strip article:nth-child(1) .trust-icon{background:var(--aqua);color:var(--purple)}
.trust-strip article:nth-child(2) .trust-icon{background:var(--orange);color:white;transform:rotate(4deg)}
.trust-strip article:nth-child(3) .trust-icon{background:var(--purple);color:var(--yellow)}
.trust-strip b{font-size:clamp(.9rem,1.8vw,1.35rem);line-height:1.05}.trust-strip p{max-width:240px;margin:.35rem 0 0;font-size:clamp(.65rem,1vw,.78rem)}

@media(max-width:620px){
  .trust-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:.28rem;overflow:visible!important;padding:1.1rem .42rem 1.25rem;scroll-snap-type:none!important}
  .trust-strip article{min-width:0!important;scroll-snap-align:none!important}
  .trust-icon{width:54px;height:54px;margin-bottom:.55rem!important;font-size:1.7rem!important;box-shadow:3px 4px 0 #111}
  .trust-strip b{font-size:.72rem}.trust-strip p{font-size:.52rem;line-height:1.3}
}

/* Editorial neon range: black is confined to the product frames. */
.range-grid>article{background:#101116;color:white;border:1px solid #282932;box-shadow:0 16px 38px rgba(16,17,22,.11)}
.range-grid h3{font-size:1.7rem}
.range-0 h3{color:var(--aqua)}
.range-1 h3{color:#ff3fac}
.range-2 h3{color:#ff9418}
.range-3 h3{color:#b96cff}
.range-grid p{color:#ededf2}
.range-image{background:white;border:1px solid #30313a}
.chips span{background:#202129;color:#f4f4f7;border:1px solid #353640}
.range footer b{color:white}
.range-0 footer button{background:var(--aqua);color:#09242a}
.range-1 footer button{background:var(--pink);color:white}
.range-2 footer button{background:var(--orange);color:white}
.range-3 footer button{background:var(--purple);color:white}

/* One deliberate dark pause keeps the long page from reading white-on-white. */
.different{background:#101116;color:white;border-top:0}
.different .section-kicker{color:#ff3fac}
.different h2{color:#eff400}
.different>div>p:not(.section-kicker){color:white}

/* Inset organic frame: unmistakably dark, softly irregular, never a plain box. */
.different{width:calc(100% - 10vw);margin:2rem 5vw;padding:7rem 7vw!important;background:#101116!important;border:0!important;border-radius:62px 96px 58px 84px / 78px 52px 92px 60px;box-shadow:0 0 0 5px rgba(239,244,0,.14),14px 16px 0 rgba(97,211,216,.18);overflow:hidden}
.different .section-kicker{color:#ff3fac!important}
.different h2{color:#eff400!important}
.different>div>p:not(.section-kicker){color:#fff!important}

@media(max-width:620px){
  .different{width:calc(100% - 2rem);margin:1.2rem 1rem;padding:4.5rem 1.35rem!important;border-radius:34px 52px 32px 46px / 48px 34px 58px 38px;box-shadow:0 0 0 3px rgba(239,244,0,.14),7px 8px 0 rgba(97,211,216,.18)}
}

/* Iridescent molecule scenes replace the divider-line treatment. */
.mascot-break-one,.mascot-break-two{border:0}
.mascot-break-one{background:
  radial-gradient(circle at 18% 30%,rgba(255,255,255,.98) 0 5px,rgba(228,0,136,.28) 7px 26px,rgba(97,211,216,.18) 28px 35px,transparent 37px),
  radial-gradient(circle at 80% 68%,rgba(255,255,255,.98) 0 4px,rgba(97,211,216,.35) 6px 22px,rgba(228,0,136,.14) 24px 31px,transparent 33px),
  radial-gradient(circle at 72% 18%,rgba(255,255,255,.98) 0 3px,rgba(230,228,22,.42) 5px 15px,transparent 17px),
  linear-gradient(135deg,#fff8fc 0%,#f3fdff 52%,#fffbea 100%)}
.mascot-break-two{background:
  radial-gradient(circle at 22% 70%,rgba(255,255,255,.98) 0 5px,rgba(118,43,183,.28) 7px 25px,rgba(97,211,216,.18) 27px 34px,transparent 36px),
  radial-gradient(circle at 82% 32%,rgba(255,255,255,.98) 0 4px,rgba(228,0,136,.32) 6px 23px,rgba(97,211,216,.15) 25px 32px,transparent 34px),
  radial-gradient(circle at 69% 76%,rgba(255,255,255,.98) 0 3px,rgba(97,211,216,.4) 5px 16px,transparent 18px),
  linear-gradient(135deg,#f7fdff 0%,#fff7fc 55%,#f9f4ff 100%)}
.mascot-break img{bottom:50%;width:310px;height:310px;border:7px solid rgba(255,255,255,.9);border-radius:50%;object-fit:cover;object-position:center 31%;transform:translate(-50%,50%);box-shadow:inset 18px 18px 24px rgba(255,255,255,.75),0 0 0 4px rgba(97,211,216,.24),0 24px 60px rgba(118,43,183,.16)}
.mascot-break-two img{box-shadow:inset 18px 18px 24px rgba(255,255,255,.75),0 0 0 4px rgba(228,0,136,.2),0 24px 60px rgba(228,0,136,.13)}

@media(max-width:620px){
  .range{text-align:center}
  .range .section-head{width:100%;align-items:center;text-align:center}
  .range .section-head a{align-self:center}
  .mascot-break img{width:215px;height:215px;border-width:5px}
}

/* Centred mascot interludes: recurring voice, never a spare content column. */
.positioning,.different{grid-template-columns:1fr}
.positioning-copy,.different>div{max-width:1180px;margin-inline:auto}
.different>div:last-child{justify-self:stretch}
.mascot-break{position:relative;min-height:430px;overflow:hidden;background:white}
.mascot-break-one{border-top:16px solid var(--yellow);border-bottom:16px solid var(--aqua)}
.mascot-break-two{border-top:16px solid var(--pink);border-bottom:16px solid var(--purple)}
.mascot-break img{position:absolute;z-index:2;bottom:-20px;left:50%;width:290px;height:380px;max-width:none;object-fit:cover;object-position:center 38%;transform:translateX(-50%)}
.speech-bubble{position:absolute;z-index:3;top:62px;width:min(360px,30vw);padding:1.25rem 1.5rem;border-radius:28px;font-family:var(--font-fredoka),sans-serif;font-size:clamp(1.15rem,1.8vw,1.8rem);font-weight:700;line-height:1.08}
.speech-bubble:after{content:"";position:absolute;bottom:-18px;width:0;height:0;border-top:24px solid transparent}
.mascot-break-one .speech-bubble{left:calc(50% + 125px);background:var(--aqua);color:var(--purple)}
.mascot-break-one .speech-bubble:after{left:28px;border-left:26px solid var(--aqua)}
.mascot-break-two .speech-bubble{right:calc(50% + 125px);background:linear-gradient(135deg,var(--purple),#ef43bf);color:white}
.mascot-break-two .speech-bubble:after{right:28px;border-right:26px solid var(--purple)}

@media(max-width:620px){
  .mascot-break{min-height:345px}
  .mascot-break-one,.mascot-break-two{border-top-width:10px;border-bottom-width:10px}
  .mascot-break img{bottom:-18px;width:205px;height:274px;object-position:center 38%}
  .speech-bubble{top:20px;width:57vw;padding:.85rem 1rem;border-radius:20px;font-size:1.05rem}
  .mascot-break-one .speech-bubble{right:.8rem;left:auto}
  .mascot-break-two .speech-bubble{right:auto;left:.8rem}
  .speech-bubble:after{bottom:-13px;border-top-width:18px}
  .mascot-break-one .speech-bubble:after{left:24px;border-left-width:20px}
  .mascot-break-two .speech-bubble:after{right:24px;border-right-width:20px}
}

/* Compact mascot callouts: tightly cropped artwork, no empty image column. */
.mascot{display:grid;width:100%;height:230px;grid-template-columns:.82fr 1.18fr;align-items:center;justify-self:stretch;gap:.25rem;overflow:hidden;padding:0 1rem;border-radius:34px}
.mascot:before{display:none}
.mascot-cheerful{background:var(--yellow)}
.mascot-confident{grid-template-columns:1.18fr .82fr;background:var(--aqua)}
.mascot>span{position:relative;z-index:2;font-family:var(--font-fredoka),sans-serif;font-size:clamp(1.25rem,2vw,2rem);font-weight:700;line-height:1.05}
.mascot-cheerful>span{color:var(--pink);text-align:right}
.mascot-confident>span{color:var(--purple);text-align:left}
.mascot-crop{position:relative;align-self:stretch;overflow:hidden}
.mascot-crop img{position:absolute;top:-13%;left:50%;width:158%;max-width:none;transform:translateX(-50%)}
.mascot-confident .mascot-crop img{top:-10%;width:162%}

@media(max-width:900px){
  .positioning .mascot{grid-row:auto;order:2}
  .different .mascot{order:2}
  .different>div:last-child{order:1}
  .mascot{width:100%;max-width:540px;justify-self:start}
}

@media(max-width:620px){
  .positioning,.different{gap:1.4rem}
  .mascot{width:100%;min-width:0;max-width:none;height:158px;margin:0!important;padding:0 .65rem;border-radius:24px}
  .mascot>span{font-size:1.2rem}
  .mascot-crop img{top:-17%;width:145%}
  .mascot-confident .mascot-crop img{top:-14%;width:148%}
}

/* Brand story modules added without changing the established visual system. */
.positioning,.different{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:5vw;align-items:center;padding:7rem 7vw;background:white}
.positioning-copy h2,.different h2{max-width:1050px;margin:0;font-size:clamp(3rem,4.7vw,5.6rem);line-height:1.02}
.positioning-copy h2 span{color:var(--pink)}
.positioning-copy>p:not(.section-kicker),.different>div>p:not(.section-kicker){max-width:820px;margin:1.6rem 0 0;color:#555;font-size:1rem;line-height:1.75}
.mascot{position:relative;display:grid;place-items:center;isolation:isolate}
.mascot:before{content:"";position:absolute;z-index:-1;width:82%;aspect-ratio:1;border-radius:50%}
.mascot-cheerful:before{background:var(--yellow)}
.mascot-confident:before{background:var(--aqua)}
.mascot img{position:relative;width:min(100%,380px);max-height:520px;object-fit:contain}
.different{grid-template-columns:minmax(260px,.55fr) minmax(0,1.45fr);border-top:1px solid #eee}
.different>div:last-child{justify-self:end}

/* Values stay bright: colour cards on a clean white field. */
.why{background:white;color:var(--ink)}
.why .section-kicker{color:var(--pink)}
.why-grid article{border:0;color:var(--ink)}
.why-grid article:nth-child(1){background:var(--aqua)}
.why-grid article:nth-child(2){background:linear-gradient(135deg,#ffad00,var(--orange));color:white}
.why-grid article:nth-child(3){background:linear-gradient(135deg,var(--purple),#ef43bf);color:white}
.why-grid b{color:var(--pink)}
.why-grid article:nth-child(2) b,.why-grid article:nth-child(3) b{color:var(--yellow)}
.why-grid p{color:inherit}

@media(max-width:900px){
  .positioning,.different{grid-template-columns:1fr;padding:6rem 7vw}
  .positioning .mascot{grid-row:1}
  .mascot{justify-self:center;width:min(46vw,340px)}
  .different>div:last-child{justify-self:stretch}
}

@media(max-width:620px){
  .range{padding-top:3.4rem;padding-bottom:4.2rem}
  .range .section-head h2{font-size:clamp(2.9rem,13vw,4rem)}
  .range-grid{margin-right:-1.1rem;padding-right:1.1rem;padding-bottom:.8rem;scrollbar-width:none}
  .range-grid::-webkit-scrollbar{display:none}
  .range-grid>article{min-width:78vw}
  .positioning,.different{padding:4.5rem 1.2rem;gap:1.6rem}
  .positioning-copy h2,.different h2{font-size:clamp(2.65rem,11.5vw,3.65rem)}
  .positioning-copy>p:not(.section-kicker),.different>div>p:not(.section-kicker){font-size:.9rem;line-height:1.65}
  .mascot{width:39vw;min-width:145px;max-width:180px}
  .mascot img{max-height:250px}
  .positioning .mascot{justify-self:end;margin-top:-1rem}
  .different .mascot{justify-self:start;margin-bottom:-.5rem}
  .why-grid{display:flex;overflow-x:auto;margin-right:-1.1rem;padding:0 1.1rem .8rem 0;scroll-snap-type:x mandatory;scrollbar-width:none}
  .why-grid::-webkit-scrollbar{display:none}
  .why-grid article{min-width:82vw;scroll-snap-align:start}
}

/* Final mobile landing-page additions. */
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;padding:1rem;background:white}
.trust-strip article{min-height:150px;padding:1.3rem 1.45rem;border-radius:26px}
.trust-strip article:nth-child(1){background:var(--aqua);color:#113a48}.trust-strip article:nth-child(2){background:var(--orange);color:white}.trust-strip article:nth-child(3){background:var(--purple);color:white}
.trust-strip span{display:block;margin-bottom:.8rem;font-size:.62rem;font-weight:950;letter-spacing:.12em}.trust-strip b{font-family:var(--font-fredoka),sans-serif;font-size:1.45rem}.trust-strip p{margin:.45rem 0 0;font-size:.78rem;font-weight:650;line-height:1.45}
.view-all{display:flex;width:max-content;align-items:center;gap:.7rem;margin:2rem auto 0;padding:.9rem 1.25rem;border-radius:999px;background:var(--yellow);color:var(--purple);font-family:var(--font-fredoka),sans-serif;font-size:.85rem;font-weight:750;box-shadow:6px 6px 0 var(--pink)}
.view-all span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--purple);color:white}
.model-editorial{position:relative;display:grid;min-height:680px;grid-template-columns:1.05fr .95fr;overflow:hidden;background:linear-gradient(135deg,#63d7df,#b4f5f1 54%,#f1ef23)}
.model-editorial>img{width:100%;height:100%;min-height:680px;object-fit:cover;object-position:center}.model-editorial>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:6vw}
.model-editorial .section-kicker{color:var(--pink)}.model-editorial h2{max-width:600px;margin:0;color:var(--purple);font-size:clamp(3.5rem,5.4vw,6.5rem);line-height:.9}.model-editorial>div>p:not(.section-kicker){max-width:500px;margin:1.4rem 0;font-weight:700;line-height:1.55}.model-editorial a{padding:.9rem 1.2rem;border-radius:999px;background:var(--pink);color:white;font-family:var(--font-fredoka),sans-serif;font-size:.78rem;font-weight:750}
.reviews{padding:7rem 5vw;background:#fff;text-align:center}.reviews h2{margin:0;color:var(--pink);font-size:clamp(3.3rem,5vw,6rem);line-height:.92}.reviews .section-kicker{color:var(--purple)}.review-intro{margin:.7rem 0 2.3rem;font-weight:650}.review-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1350px;margin:auto;text-align:left}.review-row article{min-height:310px;padding:2rem;border-radius:32px}.review-row article:nth-child(1){background:var(--aqua);color:#103445}.review-row article:nth-child(2){background:linear-gradient(135deg,#ffb000,var(--orange));color:white}.review-row article:nth-child(3){background:linear-gradient(135deg,var(--purple),#ef43bf);color:white}.review-row span{color:var(--yellow);letter-spacing:.08em}.review-row h3{margin:1.5rem 0 .9rem;font-size:1.75rem;line-height:1.05}.review-row p{font-size:.85rem;line-height:1.6}.review-row b{display:block;margin-top:1.4rem;font-size:.7rem}
.signup{margin:0 1rem 1rem!important;padding:5rem 1rem!important;border-radius:52px 72px 48px 66px!important;background:var(--yellow)!important;color:var(--purple)!important;box-shadow:9px 10px 0 var(--aqua)}.signup .section-kicker{color:var(--pink)}.signup p{font-weight:650}.signup input{border:3px solid white!important;background:white}.signup button{background:var(--pink)!important}

@media(max-width:620px){
  .hero-product{position:absolute!important;z-index:2;right:.55rem;bottom:1.8rem;display:block!important;width:20%;height:38%;padding:0!important}.hero-product img{width:100%!important;height:100%;max-height:none;aspect-ratio:auto!important;object-fit:contain!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 10px 10px rgba(45,10,45,.24))}.hero.cetaglow .hero-copy,.hero.hydramatrix .hero-copy{padding-right:25%}
  .trust-strip{display:flex;overflow-x:auto;padding:.8rem;scroll-snap-type:x mandatory;scrollbar-width:none}.trust-strip::-webkit-scrollbar{display:none}.trust-strip article{min-width:72vw;min-height:128px;scroll-snap-align:start}.trust-strip b{font-size:1.3rem}
  .model-editorial{display:block;min-height:0}.model-editorial>img{width:100%;height:auto;min-height:0;aspect-ratio:4/5;object-fit:cover}.model-editorial>div{padding:2.2rem 1.25rem 2.7rem;background:var(--aqua);text-align:center;align-items:center}.model-editorial h2{font-size:clamp(3.2rem,14vw,4.2rem)}
  .reviews{padding:5rem 1.1rem}.review-row{display:flex;overflow-x:auto;margin-right:-1.1rem;padding-right:1.1rem;scroll-snap-type:x mandatory;scrollbar-width:none}.review-row::-webkit-scrollbar{display:none}.review-row article{min-width:82vw;min-height:290px;scroll-snap-align:start}.signup{margin:0 .8rem .8rem!important;padding:4rem 1.1rem!important;border-radius:34px 46px 32px 42px!important}.signup form{flex-direction:column}
}

/* ---------------------------------------------------------------
   WordPress-specific styles (content pages, archives, comments,
   widgets, Gutenberg alignment) built with the same design system.
   --------------------------------------------------------------- */
.site-main-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:4vw;max-width:1400px;margin:auto;padding:5rem 5vw 6rem}
.site-main-inner.no-sidebar{grid-template-columns:minmax(0,1fr);max-width:900px}
.page-header{max-width:1400px;margin:auto;padding:4rem 5vw 0}
.page-header .page-title{font-family:var(--font-fredoka),sans-serif;font-weight:700;letter-spacing:-.035em;font-size:clamp(2.6rem,5vw,4.4rem);line-height:.98;color:var(--ink)}
.page-header .archive-description{margin-top:1rem;color:#555;line-height:1.7}
.entry{margin-bottom:3.5rem;padding-bottom:3rem;border-bottom:1px solid #eee}
.entry:last-child{border-bottom:0}
.entry-thumb img{width:100%;border-radius:28px;margin-bottom:1.6rem}
.entry-title{font-family:var(--font-fredoka),sans-serif;font-weight:700;letter-spacing:-.035em;font-size:clamp(1.9rem,3vw,2.9rem);line-height:1.02}
.entry-title a:hover{color:var(--pink)}
.entry-meta{margin:.8rem 0 1.2rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--purple)}
.entry-content{line-height:1.75;color:#333}
.entry-content>*{margin-bottom:1.2rem}
.entry-content h2{font-family:var(--font-fredoka),sans-serif;font-size:2rem;margin-top:2.4rem}
.entry-content h3{font-family:var(--font-fredoka),sans-serif;font-size:1.5rem;margin-top:2rem}
.entry-content a{color:var(--pink);text-decoration:underline}
.entry-content ul,.entry-content ol{padding-left:1.3rem;list-style:disc}
.entry-content ol{list-style:decimal}
.entry-content li{margin-bottom:.4rem}
.entry-content blockquote{padding:1.4rem 1.6rem;border-radius:24px;background:var(--yellow);color:var(--purple);font-weight:650}
.entry-content img,.entry-content iframe{border-radius:24px}
.entry-content .alignwide{width:min(100%,1100px);margin-inline:auto}
.entry-content .alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
.alignleft{float:left;margin:0 1.4rem 1rem 0}
.alignright{float:right;margin:0 0 1rem 1.4rem}
.aligncenter{margin-inline:auto}
.wp-caption-text,.wp-element-caption{font-size:.78rem;color:#666;margin-top:.5rem}
.btn-pill{display:inline-block;padding:.85rem 1.35rem;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--font-fredoka),sans-serif;font-size:.75rem;font-weight:700}
.btn-pill:hover{background:var(--pink)}
.tm-pagination{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}
.tm-pagination .page-numbers{display:grid;min-width:42px;height:42px;place-items:center;padding:0 .8rem;border-radius:999px;background:#f2f2ee;font-size:.8rem;font-weight:800}
.tm-pagination .page-numbers.current,.tm-pagination .page-numbers:hover{background:var(--pink);color:#fff}
.widget-area{display:flex;flex-direction:column;gap:1.4rem}
.widget{padding:1.7rem;border-radius:28px;background:#f5f5f1}
.widget-title{margin-bottom:.9rem;font-family:var(--font-fredoka),sans-serif;font-size:1.15rem;font-weight:700}
.widget ul{display:flex;flex-direction:column;gap:.5rem;font-size:.86rem}
.widget a:hover{color:var(--pink)}
.search-form{display:flex;gap:.5rem}
.search-form input[type="search"]{min-width:0;flex:1;padding:.85rem 1.1rem;border:2px solid #e3e3dd;border-radius:999px;background:#fff}
.search-form button{padding:.85rem 1.2rem;border-radius:999px;background:var(--pink);color:#fff;font-size:.72rem;font-weight:800}
.error-404{display:grid;min-height:70vh;place-items:center;padding:5rem 1.2rem;text-align:center;background:linear-gradient(135deg,#f51690,#e40088 60%,#ff4aaf);color:#fff}
.error-404 h1{font-family:var(--font-fredoka),sans-serif;font-size:clamp(4rem,14vw,9rem);line-height:.9;letter-spacing:-.035em}
.error-404 p{margin:1.2rem 0 2rem;font-weight:650}
.error-404 .btn-pill{background:var(--yellow);color:var(--purple)}
.comments-area{margin-top:3rem;padding-top:2.5rem;border-top:1px solid #eee}
.comments-title,.comment-reply-title{font-family:var(--font-fredoka),sans-serif;font-size:1.6rem;font-weight:700;margin-bottom:1.4rem}
.comment-list{display:flex;flex-direction:column;gap:1rem}
.comment-list .children{margin-left:1.5rem;margin-top:1rem;display:flex;flex-direction:column;gap:1rem}
.comment-body{padding:1.4rem;border-radius:24px;background:#f5f5f1}
.comment-author img{display:inline-block;border-radius:50%;margin-right:.6rem;vertical-align:middle}
.comment-metadata{font-size:.7rem;color:#777;margin:.3rem 0 .7rem}
.comment-respond input[type="text"],.comment-respond input[type="email"],.comment-respond input[type="url"],.comment-respond textarea{width:100%;padding:.9rem 1.1rem;border:2px solid #e3e3dd;border-radius:20px;background:#fff;margin-top:.35rem}
.comment-form p{margin-bottom:1rem}
.comment-form .submit{padding:.9rem 1.4rem;border-radius:999px;background:var(--ink);color:#fff;font-weight:700;font-size:.78rem}
.skip-link{position:absolute;left:-9999px;z-index:999;padding:1rem;background:#fff}
.skip-link:focus{left:1rem;top:1rem}
.admin-bar .nav-shell{top:32px}
@media(max-width:900px){.site-main-inner{grid-template-columns:1fr;padding:3.5rem 7vw 4rem}.admin-bar .nav-shell{top:46px}}
@media(max-width:620px){.site-main-inner{padding:3rem 1.2rem 4rem}.page-header{padding:2.6rem 1.2rem 0}}

/* ---- wp_nav_menu markup compatibility (keeps the prototype layout) ---- */
.nav-shell nav ul{display:flex;justify-content:center;gap:3.2vw;margin:0;padding:0;list-style:none}
.nav-shell nav ul li{position:relative}
.nav-shell nav ul ul{position:absolute;top:100%;left:0;display:none;flex-direction:column;gap:.6rem;min-width:190px;padding:.9rem 1.1rem;border-radius:18px;background:#fff;box-shadow:0 18px 40px rgba(16,17,22,.14);text-align:left}
.nav-shell nav ul li:hover>ul,.nav-shell nav ul li:focus-within>ul{display:flex}
.nav-shell nav a{transition:color .2s ease}
.wordmark-image img{max-height:52px;width:auto}
.footer-menu{display:flex;flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none}
.footer-menu a{font-size:.72rem}
.footer .widget{background:transparent;padding:0}
@media(max-width:900px){
	.nav-shell nav ul{flex-direction:column;gap:1rem;justify-content:flex-start}
	.nav-shell nav ul ul{position:static;display:flex;padding:.4rem 0 0 .9rem;box-shadow:none;background:transparent}
}

/* Range CTA rendered as a link (WordPress-editable target) keeps button styling. */
.range footer .range-button{display:inline-block;padding:.7rem 1rem;border:0;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--font-fredoka),sans-serif;font-size:.75rem;font-weight:700;line-height:1;text-align:center;transition:transform .18s ease,filter .18s ease}
.range footer .range-button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.range-0 footer .range-button{background:var(--aqua);color:#09242a}
.range-1 footer .range-button{background:var(--pink);color:#fff}
.range-2 footer .range-button{background:var(--orange);color:#fff}
.range-3 footer .range-button{background:var(--purple);color:#fff}
.nav-cta,.hero-actions a,.view-all,.model-editorial a,.signup button{transition:transform .18s ease,filter .18s ease,background .2s ease,color .2s ease}
.nav-cta:hover,.view-all:hover,.model-editorial a:hover,.signup button:hover{transform:translateY(-2px);filter:brightness(1.08)}
.hero-actions a:hover{transform:translateY(-2px)}
.arrow{transition:background .2s ease,transform .2s ease}
.arrow:hover{background:rgba(255,255,255,.34);transform:scale(1.06)}
.dots button{transition:width .25s ease,opacity .25s ease;cursor:pointer}
.trust-icon{transition:transform .25s ease}
.trust-strip article:hover .trust-icon{transform:rotate(0) scale(1.05)}
.range-grid>article{transition:transform .25s ease,box-shadow .25s ease}
.range-grid>article:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(16,17,22,.18)}
@media(prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* Brand story block ships without the mascot column: keep the copy full-width */
.different{grid-template-columns:minmax(0,1fr)}
.different>div:last-child{justify-self:stretch}
