:root{
  --bg:#f2eee7;
  --bg-alt:#e8e2d8;
  --ink:#0b0b0b;
  --muted:#6c665f;
  --line:rgba(11,11,11,.12);
  --dark:#0b0b0b;
  --dark-soft:#121212;
  --bone:#eee7db;
  --header:72px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  overflow-x:hidden;
}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
#app{min-height:100vh}
#progress{position:fixed;left:0;top:0;height:2px;width:0;background:#fff;z-index:200;mix-blend-mode:difference;pointer-events:none}
.page-transition{position:fixed;inset:0;background:#0b0b0b;z-index:180;transform:scaleY(0);transform-origin:bottom;pointer-events:none}
.page-transition.run{animation:pagewipe .48s cubic-bezier(.75,0,.2,1)}
@keyframes pagewipe{0%{transform:scaleY(0);transform-origin:bottom}45%{transform:scaleY(1);transform-origin:bottom}55%{transform:scaleY(1);transform-origin:top}100%{transform:scaleY(0);transform-origin:top}}
.header{position:fixed;inset:0 0 auto;height:var(--header);z-index:100;padding:0 28px;display:flex;align-items:center;justify-content:space-between;mix-blend-mode:difference;color:#fff;pointer-events:none}
.header *{pointer-events:auto}.brand{background:none;border:0;color:inherit;font-weight:800;font-size:24px;letter-spacing:-.05em}.brand small{font-size:10px;letter-spacing:.18em;margin-left:6px}.nav{display:flex;gap:24px;align-items:center}.nav button{border:0;background:none;color:inherit;padding:0;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.nav .bag{border:1px solid currentColor;border-radius:999px;padding:8px 12px}.mobile{display:none;border:0;background:none;color:inherit;font-size:22px}
.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.title-xl{font-size:clamp(76px,10.8vw,174px);line-height:.8;letter-spacing:-.085em;margin:0}.title-lg{font-size:clamp(60px,8vw,130px);line-height:.85;letter-spacing:-.075em;margin:0}.body{font-size:18px;line-height:1.65;color:var(--muted)}.pill{border:1px solid var(--ink);background:transparent;border-radius:999px;padding:13px 18px;text-transform:uppercase;letter-spacing:.12em;font-size:11px}.pill-dark{border:0;background:#111;color:#fff;border-radius:999px;padding:14px 20px;text-transform:uppercase;letter-spacing:.12em;font-size:11px}
.reveal{opacity:0;transform:translateY(34px);clip-path:inset(0 0 18% 0);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1),clip-path .8s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none;clip-path:inset(0)}.delay1{transition-delay:.08s}.delay2{transition-delay:.16s}.delay3{transition-delay:.24s}
.hero{min-height:100vh;position:relative;overflow:hidden;padding:calc(var(--header) + 44px) 5vw 50px;background:radial-gradient(circle at 74% 20%,rgba(255,255,255,.9),transparent 28%),linear-gradient(180deg,#f4f1eb,#e7e1d8)}
.hero-grid{min-height:calc(100vh - var(--header) - 94px);display:grid;grid-template-columns:1.04fr .96fr;align-items:end}.hero-copy{position:relative;z-index:4;padding-bottom:7vh}.hero-copy h1{margin:10px 0 0}.hero-sub{display:flex;justify-content:space-between;gap:26px;align-items:end;max-width:760px;margin-top:30px}.hero-sub p{margin:0;max-width:440px;font-size:18px;line-height:1.6}.hero-notes{display:flex;gap:24px;flex-wrap:wrap;margin-top:36px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero-products{position:relative;height:min(76vh,760px);align-self:center;display:flex;align-items:flex-end;justify-content:center;gap:8px;isolation:isolate;padding:20px 0 0}.hero-products:before{content:"";position:absolute;inset:8% -12% 0 -18%;background:radial-gradient(circle at 55% 52%,rgba(255,255,255,.65),transparent 56%);filter:blur(8px);z-index:-1}
.hero-product{position:relative;display:flex;align-items:flex-end;justify-content:center;height:100%;min-width:0;transition:transform .45s ease,filter .45s ease}.hero-product img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 22px 26px rgba(0,0,0,.10));-webkit-mask-image:none;mask-image:none}.hero-product.shower{flex:1.08;transform:translate(5%,8px)}.hero-product.am{flex:.92;transform:translate(-1%,24px)}.hero-product.pm{flex:.92;transform:translate(-7%,24px)}.hero-products:hover .hero-product.shower{transform:translate(5%,0)}.hero-products:hover .hero-product.am{transform:translate(-1%,16px)}.hero-products:hover .hero-product.pm{transform:translate(-7%,16px)}
.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;background:rgba(255,255,255,.22)}.marquee-track{display:flex;gap:38px;white-space:nowrap;min-width:max-content;animation:marquee 22s linear infinite;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:110px 5vw}.section-head{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:54px}.section-head p{max-width:440px;margin:0}
