/* ==========================================================================
   CLINICAL — the active design layer ("the drop")
   ==========================================================================
   Loads after style.css + premium-v4.css and is the only layer that styles the
   site; every id/class hook the JS uses is left intact. Visual layer only.
   Language: a dark film opens the home page (a drop falling into water, the
   formula standing where it falls); every other surface is light — white
   pages, cool pearl panels, navy ink, one steel-blue accent, rounded vitrines
   for the studio photographs, pill actions.
   Fonts: IBM Plex Sans Hebrew (display at 200, text at 300/400) and Archivo
   (the name, product names and prices; wide cut for the wordmark).
   The name: SEC [the drop O] ND CHANCE — the O is a ring with a drop.
   ========================================================================== */

/* metric-matched fallback for IBM Plex Sans Hebrew (ascent 1025 / descent 275) */
@font-face{font-family:"Plex Fallback";src:local("Arial Hebrew"),local("Arial");ascent-override:102.5%;descent-override:27.5%;line-gap-override:0%;size-adjust:100%}

/* ---------- 0. tokens ---------- */
:root{
  --ed-paper:#FFFFFF;        /* the page */
  --ed-ivory:#F1F5F8;        /* cool pearl panels */
  --ed-sand:#E3E9EF;         /* tags, carousel arrows, tracks */
  --ed-ink:#0F1E2E;          /* navy ink: text and the darkest band */
  --ed-espresso:#0C1824;     /* dark surfaces */
  --ed-bronze:#2F5F86;       /* the one accent: steel blue, AA on white (6.6:1) */
  --ed-amber-light:#A9C8E0;  /* the accent on dark */
  --ed-muted:#566676;        /* quiet text on white (5.9:1) */
  --ed-muted-dark:#AAB7C4;   /* quiet text on dark */
  --ed-line:rgba(15,30,46,.12);
  --ed-line-dark:rgba(170,183,196,.24);
  --ed-serif:'IBM Plex Sans Hebrew','Plex Fallback',system-ui,sans-serif;   /* display lines, at a light weight */
  --ed-sans:'IBM Plex Sans Hebrew','Plex Fallback',system-ui,sans-serif;
  --ed-latin:'Archivo','IBM Plex Sans Hebrew','Plex Fallback',system-ui,sans-serif;   /* Hebrew words and ₪ inside a Latin line fall to Plex, not Arial */
  --ed-disp:200;
  --ed-radius:14px; --ed-radius-sm:10px; --ed-pill:999px;
  --ed-gutter:clamp(16px,2.8vw,40px);
  --ed-max:1440px;
  --ed-gap:clamp(14px,1.6vw,24px);
  --ed-ease:cubic-bezier(.22,1,.36,1);
  --night:#060B12; --foam:#F2EFEA; --mist:#AAB7C4;

  /* legacy names used by style.css / premium-v4.css, re-pointed at the clinical
     palette so every existing view inherits it. --brand-* stay literal hex (CLAUDE.md, trap 2). */
  --sc-midnight:#0F1E2E; --sc-midnight-deep:#0A1522; --sc-navy:#13263A; --sc-mineral-blue:#2F5F86;
  --sc-calm-blue:#AAB7C4; --sc-ivory:#F1F5F8; --sc-pearl:#FFFFFF; --sc-stone:#D5DEE6;
  --sc-champagne:#2F5F86; --sc-champagne-light:#A9C8E0; --sc-silver:#D5DEE6;
  --sc-ink:#0F1E2E; --sc-muted:#566676;
  --sc-border-light:rgba(15,30,46,.12); --sc-border-dark:rgba(170,183,196,.26);
  --sc-shadow-soft:0 18px 50px rgba(15,30,46,.07); --sc-shadow-dark:0 30px 80px rgba(0,0,0,.3);
  --sc-radius-sm:10px; --sc-radius-md:14px; --sc-radius-lg:14px; --sc-radius-xl:18px;
  --sc-container:1320px; --sc-header-height:76px;
  --font-display:'IBM Plex Sans Hebrew','Plex Fallback',system-ui,sans-serif;
  --font-body:'IBM Plex Sans Hebrew','Plex Fallback',system-ui,sans-serif;
  --font-latin:'Archivo','IBM Plex Sans Hebrew','Plex Fallback',system-ui,sans-serif;
  --brand-navy:#0F1E2E; --brand-navy-deep:#0A1522; --brand-navy-ink:#0F1E2E;
  --navy:#0F1E2E; --navy-deep:#0A1522;
  --page-bg:#FFFFFF; --bg:#FFFFFF; --bg-alt:#F1F5F8;
  --surface:#FFFFFF; --surface-deep:#F1F5F8;
  --ink:#24323F; --ink-strong:#0F1E2E; --ink-mute:#566676; --muted:#566676;
  --gold:#2F5F86; --gold-soft:#A9C8E0; --gold-ink:#2F5F86; --gold-on-navy:#2F5F86;
  --orange-soft:#2F5F86; --orange:#2F5F86; --gold-deep:#2F5F86;   /* style.css draws ~90 accents (focus rings, remove links, rules) in --orange */
  --scrim-c:255,255,255; --shadow-c:15,30,46;
  --line:rgba(15,30,46,.12);
  --wrap-max:1320px;
  --r-sm:10px; --r-md:14px; --r-lg:14px; --r-xl:18px;
}
/* dark zones: literal values (a var() alias would resolve at :root — CLAUDE.md, trap 1) */
.zone-navy,.odone,.pp-done{
  --bg:#0F1E2E; --surface:#13263A; --surface-deep:#0C1824;
  --ink:#E7EDF2; --ink-strong:#FFFFFF; --ink-mute:#AAB7C4; --muted:#AAB7C4;
  --gold:#A9C8E0; --gold-soft:#A9C8E0; --gold-on-navy:#A9C8E0; --on-navy:#E7EDF2;
  --line:rgba(170,183,196,.24);
}

/* ---------- 1. base ---------- */
html{scroll-behavior:smooth}
body{background:var(--ed-paper);color:var(--ink);font-family:var(--ed-sans);font-weight:400;overflow-x:clip}
::selection{background:rgba(47,95,134,.18)}
:focus-visible{outline:2px solid var(--ed-ink);outline-offset:3px}
/* a button with no colour of its own takes its surroundings' (iOS Safari paints it system blue, Chrome black) */
button{color:inherit}
.hamburger{color:inherit}
.zone-navy :focus-visible,.odone :focus-visible,.hero.dr :focus-visible{outline-color:#FFFFFF}
h1,h2,h3,h4{font-family:var(--ed-sans);letter-spacing:0;line-height:1.25}
.wrap{max-width:var(--ed-max);padding-inline:var(--ed-gutter)}
.btn .arr{display:none}   /* actions never carry an appended arrow */
.logo::after,.eyebrow::after{display:none!important}
.eyebrow{display:inline-flex;align-items:center;gap:.55em;font:500 .76rem/1.3 var(--ed-sans);letter-spacing:0;text-transform:none;color:var(--ed-muted)}
.zone-navy .eyebrow{color:var(--ed-amber-light)}

/* ---------- 2. atoms ---------- */
.ed-wrap{width:100%;max-width:var(--ed-max);margin-inline:auto;padding-inline:var(--ed-gutter);box-sizing:border-box}
.ed-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;flex-wrap:wrap;margin-bottom:clamp(1.6rem,3vw,2.8rem);text-align:start}
/* style.css sizes every h2 with !important — the section lines here need their own */
.ed-h2,.ed-head .ed-h2{margin:0;font-family:var(--ed-serif);font-weight:var(--ed-disp);letter-spacing:0;text-wrap:balance;color:var(--ed-ink);
  font-size:clamp(2.2rem,1.2rem + 2.4vw,3.7rem)!important;line-height:1.08!important}
.ed-label,.ed-head .ed-label{display:flex;align-items:center;gap:.55em;margin:0;font:500 .82rem/1.35 var(--ed-sans);font-size:.82rem!important;
  line-height:1.35!important;letter-spacing:0;color:var(--ed-muted)}
.ed-sub{margin:.7rem 0 0;font-size:clamp(15px,.86rem + .2vw,17px);line-height:1.75;font-weight:300;color:var(--ed-muted);max-width:56ch}
.ed-link{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:0;margin:0;border:0;background:none;
  font:500 .86rem/1.2 var(--ed-sans);color:var(--ed-ink);text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:.5em;text-decoration-color:rgba(15,30,46,.35);cursor:pointer;transition:color .25s ease,text-decoration-color .25s ease}
.ed-link:hover{color:var(--ed-bronze);text-decoration-color:currentColor}
.ed-link--light,.ed-link--light:visited{color:#FFFFFF;text-decoration-color:rgba(255,255,255,.4)}
.ed-link--light:hover{color:#FFFFFF;text-decoration-color:currentColor}
.ed-display{font-family:var(--ed-serif);font-weight:var(--ed-disp);letter-spacing:0;line-height:1.08;text-wrap:balance;margin:0}
.rv{opacity:0;transform:translateY(14px);transition:opacity .7s var(--ed-ease),transform .7s var(--ed-ease)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}.rv.d4{transition-delay:.32s}

/* the name: SEC [the drop O] ND CHANCE, in the wide cut */
.wm{display:inline-flex;align-items:baseline;white-space:nowrap;direction:ltr;font-family:var(--ed-latin);font-weight:400;
  font-variation-settings:"wdth" 125;letter-spacing:.2em}
.wm__o{flex:none;display:inline-block;height:.74em;width:auto;margin:0 .2em 0 .02em;overflow:visible}
.wm__o ellipse{fill:none;stroke:currentColor;stroke-width:5.2}
.wm__o circle{fill:currentColor}

/* ---------- 3. homepage flow ---------- */
/* main is a flex column in style.css with order: on legacy sections — the page reads in DOM order */
main>*{order:0!important}
main>.quiz-strip,main>#entry,main>#value,main>#sun{display:none!important}
.ed-shelf,.ed-duo,.ed-protocols,.ed-sci,.ed-method,.ed-story,.ed-service,.ed-soon{padding-inline:0!important;margin:0!important;background:var(--ed-paper)!important}
.ed-shelf,.ed-duo,.ed-protocols,.ed-method,.ed-story,.ed-soon{padding-block:clamp(4rem,7vw,7rem) 0!important}
.ed-duo,.ed-method{background:var(--ed-ivory)!important;padding-block:clamp(4rem,7vw,7rem)!important}
.ed-protocols{padding-bottom:clamp(4rem,7vw,7rem)!important}
#formulas,#bundles,#formula,#routine,#soon,#contact{scroll-margin-top:calc(var(--headerh,76px) + 12px)}

/* ---------- 4. header — transparent over the film, white after it ---------- */
.announce{display:none!important}
header{position:fixed!important;inset-inline:0;top:0;z-index:60;background:transparent;color:#FFFFFF;
  border-bottom:1px solid transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;
  transition:background-color .35s ease,border-color .35s ease,color .35s ease,transform .45s var(--ed-ease)}
header.is-stuck{box-shadow:none!important}
header.is-stuck.is-over-hero{background:transparent!important;border-bottom-color:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#FFFFFF}
header.is-stuck:not(.is-over-hero){background:rgba(255,255,255,.96);color:var(--ed-ink);border-bottom-color:var(--ed-line);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
/* while the name opens the film, the header waits above the screen */
.dr-intro header{transform:translateY(-110%)}
header .wrap.nav{display:flex;align-items:center;gap:4px;position:relative;min-height:76px;max-width:var(--ed-max);padding-inline:var(--ed-gutter)}
header .logo{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0;text-decoration:none;color:inherit;white-space:nowrap;padding:0}
/* style.css and premium-v4.css restyle `.logo b` in several places (a bold display face, a navy colour, and under 520px a
   two-line block 8ch wide) — the name keeps its own cut, takes its bar's colour and stays on one line */
.logo .wm{display:inline-flex;max-width:none;font-size:.98rem;font-family:var(--ed-latin);font-weight:400;font-variation-settings:"wdth" 125;
  letter-spacing:.2em;color:inherit;white-space:nowrap;line-height:1;text-align:start}
.logo span{display:block;margin:0;padding:0;font:400 .5rem/1 var(--ed-latin);font-variation-settings:"wdth" 110;letter-spacing:.42em;
  text-transform:uppercase;color:currentColor;opacity:.72;margin-inline-start:.42em}
.searchbtn,#openFavs,.cart-btn{position:relative;display:inline-grid;place-items:center;min-width:44px;min-height:44px;
  padding:0;border:0;background:transparent;color:currentColor;box-shadow:none;border-radius:var(--ed-pill)}
.searchbtn svg,#openFavs svg,.cart-btn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.4}
.cart-count{position:absolute;margin:0!important;top:calc(50% - 19px);inset-inline-end:calc(50% - 21px);min-width:16px;height:16px;
  padding:0 4px;border-radius:8px;font:500 .6rem/16px var(--ed-latin);text-align:center;background:currentColor;box-sizing:border-box}
.cart-count{color:inherit}
header .cart-count{background:#FFFFFF;color:var(--ed-ink)}
header.is-stuck:not(.is-over-hero) .cart-count{background:var(--ed-ink);color:#FFFFFF}
.hamburger span{background:currentColor}
.hamburger{flex:none!important;width:44px!important;min-width:44px!important;height:44px!important}   /* style.css shrank it to 24px at 320 */
/* the open mobile menu is white, so the bar above it is too */
body.nav-open header{background:var(--ed-paper)!important;color:var(--ed-ink)!important;border-bottom-color:var(--ed-line)!important}
body.nav-open header .cart-count{background:var(--ed-ink);color:#FFFFFF}
.hamburger[aria-expanded="true"]{color:var(--ed-ink)}
/* the five links fit beside the centred name only from 961px (at 834px the last one ran 28px under it, at 900px
   they touched); up to 960px they wait in the menu, with the booking line */
@media (min-width:961px){
  .hamburger{display:none!important}
  /* the name sits in the middle of the bar, the menu at its start */
  header .logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
  .nav__links{position:static!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;transform:none!important;
    display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:clamp(1rem,2vw,2rem)!important;
    width:auto!important;height:auto!important;padding:0!important;margin:0!important;margin-inline-end:auto!important;background:none!important;box-shadow:none!important;
    visibility:visible!important;opacity:1!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  header .nav__links a{position:relative;width:auto!important;min-width:0!important;flex:0 0 auto!important;padding:.45rem 0!important;margin:0!important;
    border:0!important;background:none!important;color:inherit!important;text-align:start!important;font:400 .86rem/1.2 var(--ed-sans)!important;white-space:nowrap;text-decoration:none;opacity:.9}
  header .nav__links a:hover{opacity:1}
  header .nav__links a::after{content:""!important;position:absolute;inset-inline:0;bottom:.15rem;height:1px;background:currentColor;
    transform:scaleX(0);transition:transform .3s var(--ed-ease)}
  header .nav__links a:hover::after,header .nav__links a:focus-visible::after,header .nav__links a[aria-current="page"]::after{transform:scaleX(1)}
  header .nav__links a.nav__more{display:none!important}
  .nav__mobile-title{display:none!important}
}
@media (max-width:960px){
  header .wrap.nav{min-height:62px;gap:0}
  header .logo{flex:0 0 auto!important;min-width:max-content!important;margin-inline-end:auto}
  .logo .wm{font-size:.84rem;letter-spacing:.16em}
  .logo span{font-size:.44rem;letter-spacing:.34em}
  /* premium-v4.css opens the menu 95px down (its old header); here it starts right under the bar */
  .nav__links{background:var(--ed-paper)!important;inset:var(--headerh,62px) 0 0!important;padding:26px 22px calc(26px + env(safe-area-inset-bottom,0px))!important}
  .nav__links a{color:var(--ed-ink)!important;font-family:var(--ed-serif)!important;font-weight:300!important;font-size:1.5rem!important}
  .nav__links a:hover{color:var(--ed-bronze)!important}
  .nav__mobile-title{color:var(--ed-muted);letter-spacing:0}
}
/* style.css makes the menu a drawer only up to 900px and hides it while closed only up to 860px: the same drawer up to 960px */
@media (min-width:821px) and (max-width:960px){
  .hamburger{display:flex}
  .nav__links{position:fixed;flex-direction:column;z-index:55;overflow-y:auto;visibility:hidden;transform:translateX(100%);transition:transform .4s var(--ease)}
  .nav__links.open{visibility:visible;transform:none!important}
  .nav__links a::after{opacity:.6}
  .nav__mobile-title{display:block;font-size:.8rem;margin-bottom:1.5rem;opacity:.7}
  body.nav-open{overflow:hidden}
}

/* "book a visit" in the bar: the personal area opens at the booking. Under 1061px the bar is too full for it (up to
   960px it is a line of the menu) */
.navbook{display:none}
@media (min-width:1061px){
  .navbook{position:relative;display:inline-flex;align-items:center;flex:none;min-height:40px;padding:0 18px;margin-inline:4px 2px;border:1px solid currentColor;border-radius:999px;
    color:inherit;font:400 .8rem/1 var(--ed-sans);letter-spacing:.02em;text-decoration:none;white-space:nowrap;opacity:.9;transition:opacity .2s,background .2s}
  .navbook::before{content:"";position:absolute;inset:-3px -1px}   /* a 44px target around the 40px pill (the inset starts inside its border) */
  .navbook:hover{opacity:1;background:rgba(127,127,127,.12)}
}

/* ---------- 5. the opening — the drop ----------
   The film fills the screen; the formula stands where the drop falls (--wx/--wy
   come from enhance.js): its foot is under the surface (masked), the splash of
   the same frame is screened onto it, its image ripples on the water, its
   chrome takes the colour of the water. Once a visit the name opens as a window
   onto the film (multiply) and the view dives into the drop of its O. */
.hero.dr{position:relative;display:block;height:100svh;min-height:600px;margin:0!important;padding:0!important;overflow:hidden;isolation:isolate;
  background:var(--night);color:var(--foam);text-align:start;
  --fs:1.35;--fx:-12%;--bh:clamp(290px,46svh,440px);--sub:.06;--m:url(images/cut/srm@3x.webp)}
.hero.dr::before,.hero.dr::after{content:none!important}
.dr-film{position:absolute;inset:0;z-index:0;overflow:hidden}
.dr-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(var(--fs)) translateX(var(--fx));
  filter:saturate(.92) contrast(1.06) brightness(.86);transition:opacity 1.4s ease,filter 1.2s ease}
.dr-film video.on{opacity:1}
.hero.dr:not(.is-shown) .dr-film video{filter:saturate(1) contrast(1.12) brightness(1.12)}
.dr-film::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 1.2s ease;
  background:linear-gradient(to left,rgba(6,11,18,.72) 0%,rgba(6,11,18,.38) 34%,transparent 58%),
    linear-gradient(to bottom,rgba(6,11,18,.62) 0%,transparent 20%,transparent 72%,rgba(6,11,18,.7) 100%)}
.is-shown .dr-film::after{opacity:1}
/* the opening word */
.dr-curtain{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:#000;mix-blend-mode:multiply;pointer-events:none}
.hero.dr .dr-word{margin:0;max-width:none;color:#FFFFFF;font-size:7.4vw;line-height:.9;opacity:0;animation:drShow 1.2s ease .25s forwards;will-change:transform}
.dr-word .wm{font-weight:500;letter-spacing:.06em}
.dr-word .wm__o{margin:0 .05em}
.dr-word .wm__w+.wm__w{margin-inline-start:.28em}
.is-done .dr-curtain{display:none}
.hero.dr:not(.is-shown) .dr-copy,.hero.dr:not(.is-shown) .dr-cap,.hero.dr:not(.is-shown) .dr-ctl{opacity:0}
/* the formula in the water */
.dr-bottle{position:absolute;z-index:2;left:var(--wx,33.8%);bottom:calc(100% - var(--wy,58%) - var(--bh) * var(--sub));height:var(--bh);translate:-50% 0;
  opacity:0;pointer-events:none;transition:opacity .9s var(--ed-ease)}
.is-shown .dr-bottle{opacity:1}
.dr-body{position:relative;display:block;height:100%;
  -webkit-mask:linear-gradient(to top,transparent 0,transparent calc(var(--sub) * 100% - 1.5%),#000 calc(var(--sub) * 100% + 2.5%));
  mask:linear-gradient(to top,transparent 0,transparent calc(var(--sub) * 100% - 1.5%),#000 calc(var(--sub) * 100% + 2.5%))}
.dr-bottle img{display:block;height:100%;width:auto;max-width:none;filter:brightness(.9) contrast(1.03) saturate(.95)}
.dr-rim,.dr-chrome,.dr-wet,.dr-sweep{position:absolute;inset:0;pointer-events:none;
  -webkit-mask:var(--m) center/100% 100% no-repeat;mask:var(--m) center/100% 100% no-repeat}
.dr-rim{mix-blend-mode:screen;opacity:.7;background:linear-gradient(90deg,rgba(143,176,201,.5) 0%,transparent 14%,transparent 86%,rgba(198,165,122,.42) 100%)}
.dr-chrome{mix-blend-mode:color;background:linear-gradient(to bottom,rgba(84,124,164,.6) 0%,rgba(84,124,164,.42) 21%,transparent 21.5%)}
.dr-wet{mix-blend-mode:multiply;background:linear-gradient(to top,rgba(10,24,38,.72) 0%,rgba(10,24,38,.3) 11%,transparent 21%)}
.dr-sweep{overflow:hidden;mix-blend-mode:screen}
.dr-sweep::before{content:"";position:absolute;top:-20%;bottom:-20%;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,250,240,.26),transparent);
  transform:skewX(-12deg);animation:drSweep 11s var(--ed-ease) 6s infinite}
.dr-line{position:absolute;left:50%;top:calc((1 - var(--sub)) * 100% - 6px);width:150%;height:12px;translate:-50% 0;border-radius:50%;
  border-bottom:1px solid rgba(214,230,242,.5);filter:blur(.4px);opacity:.8}
.dr-shade{position:absolute;z-index:-1;left:50%;top:calc((1 - var(--sub)) * 100% - 3%);width:320%;height:10%;translate:-50% 0;
  background:radial-gradient(closest-side,rgba(2,6,11,.55),transparent 72%)}
.dr-refl{position:absolute;z-index:-1;left:0;right:0;top:calc((1 - 2 * var(--sub)) * 100%);height:100%;opacity:.42;filter:url(#drRipple) blur(.5px);
  -webkit-mask:linear-gradient(to bottom,transparent 0,transparent calc(var(--sub) * 100%),#000 calc(var(--sub) * 100% + 1.5%),transparent 46%);
  mask:linear-gradient(to bottom,transparent 0,transparent calc(var(--sub) * 100%),#000 calc(var(--sub) * 100% + 1.5%),transparent 46%)}
.dr-refl img{height:100%;transform:scaleY(-1);filter:brightness(.72) saturate(.8)}
/* the splash of the same frame, in front of the foot (outside the bottle's stacking context, so it screens onto the film) */
.dr-spray{position:absolute;z-index:3;left:0;top:0;width:0;height:0;pointer-events:none;mix-blend-mode:screen;filter:contrast(2.1) brightness(.8) saturate(.7);
  opacity:0;transition:opacity .9s var(--ed-ease);
  -webkit-mask:var(--m) center/100% 100% no-repeat,linear-gradient(to top,transparent 0,transparent calc(var(--sub) * 100% - 2%),#000 calc(var(--sub) * 100% + 1%),transparent 30%);
  -webkit-mask-composite:source-in;
  mask:var(--m) center/100% 100% no-repeat,linear-gradient(to top,transparent 0,transparent calc(var(--sub) * 100% - 2%),#000 calc(var(--sub) * 100% + 1%),transparent 30%);
  mask-composite:intersect}
.is-shown .dr-spray{opacity:1}
/* the words on the film */
.dr-copy{position:absolute;z-index:4;top:50%;translate:0 -42%;inset-inline-start:var(--ed-gutter);width:min(35rem,39vw);
  transition:opacity 1s ease .15s,transform 1.1s var(--ed-ease) .15s}
.hero.dr:not(.is-shown) .dr-copy{transform:translateY(14px)}
.hero.dr h1.dr-title{margin:0;max-width:none;font-family:var(--ed-serif);font-weight:200;letter-spacing:0;text-align:start;color:#FFFFFF;
  font-size:clamp(2.7rem,1.3rem + 2.7vw,4.35rem)!important;line-height:1.1!important;text-wrap:balance}
.hero.dr h1.dr-title::after{content:none!important}
.dr-title span{display:block}
.hero.dr .dr-lede{margin:1.15rem 0 0;max-width:36ch;font-size:16px;font-weight:300;line-height:1.75;color:var(--mist);text-wrap:pretty}
.dr-acts{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:1.9rem}
.hero.dr .btn--solid{min-height:48px;padding:0 28px!important;border-radius:var(--ed-pill)!important;border:1px solid rgba(242,239,234,.36)!important;
  background:rgba(242,239,234,.06)!important;color:var(--foam)!important;box-shadow:none!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  font:500 .9rem/1 var(--ed-sans)!important}
.hero.dr .btn--solid:hover{background:var(--foam)!important;border-color:var(--foam)!important;color:var(--night)!important}
.dr-ask{appearance:none;display:inline-flex;align-items:center;gap:.75em;min-height:44px;margin:0;padding:0;border:0;background:none;cursor:pointer;color:#FFFFFF;
  font:400 .95rem/1.25 var(--ed-sans);text-align:start;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.55em;text-decoration-color:rgba(242,239,234,.45)}
.dr-ask:hover{text-decoration-color:currentColor}
.dr-ask::after{content:"";flex:none;width:9px;height:9px;transition:rotate .35s var(--ed-ease);
  background:linear-gradient(currentColor,currentColor) center/100% 1px no-repeat,linear-gradient(currentColor,currentColor) center/1px 100% no-repeat}
.dr-ask[aria-expanded="true"]::after{rotate:45deg;width:14px;height:14px}
.dr-copy.is-asking .dr-title,.dr-copy.is-asking .dr-lede,.dr-copy.is-asking .dr-cta{display:none}
.dr-copy.is-asking .dr-acts{margin-top:0}
.dr-copy.is-asking .dr-ask{font-family:var(--ed-serif);font-weight:200;font-size:clamp(2.1rem,1.1rem + 1.7vw,2.9rem);line-height:1.12;text-decoration-color:transparent;animation:drShow .5s ease both}
.dr-opts{margin-top:.7rem;border-top:1px solid rgba(242,239,234,.18)}
.dr-opt{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:48px;margin:0;padding:.55rem 0;border:0;
  border-bottom:1px solid rgba(242,239,234,.18);border-radius:0;background:none;cursor:pointer;color:rgba(242,239,234,.86);font:300 1.05rem/1.35 var(--ed-sans);
  text-align:start;transition:color .25s,padding .35s var(--ed-ease);animation:drShow .5s ease both;animation-delay:calc(var(--k) * 60ms)}
.dr-opt::after{content:"";flex:none;width:24px;height:1px;background:var(--ed-amber-light);opacity:0;transform:scaleX(.3);transform-origin:left;transition:opacity .25s,transform .35s var(--ed-ease)}
.dr-opt:hover,.dr-opt:focus-visible{color:#FFFFFF;padding-inline-start:.5rem}
.dr-opt:hover::after,.dr-opt:focus-visible::after{opacity:1;transform:none}
.dr-copy.is-rec .dr-title,.dr-copy.is-rec .dr-lede,.dr-copy.is-rec .dr-acts,.dr-copy.is-rec .dr-opts{display:none}
.dr-rec{animation:drShow .6s ease both}
.hero.dr .dr-rec__label{margin:0;font-size:.82rem;color:var(--mist)}
.hero.dr .dr-rec__name{margin:.9rem 0 0;font-family:var(--ed-latin);font-weight:300;font-variation-settings:"wdth" 100;letter-spacing:.01em;text-align:right;color:#FFFFFF;
  font-size:clamp(2.2rem,1.2rem + 2vw,3.4rem)!important;line-height:1.05!important}
.hero.dr .dr-rec__why{margin:1rem 0 0;max-width:40ch;font-size:1rem;font-weight:300;line-height:1.7;color:rgba(242,239,234,.86)}
.dr-rec__row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:1.6rem}
.dr-rec__price{font:400 1.2rem/1 var(--ed-latin);color:#FFFFFF;font-variant-numeric:tabular-nums}
.dr-rec__next{display:flex;flex-wrap:wrap;gap:0 24px;margin-top:.4rem}
.dr-rec__next .ed-link{font-weight:400;color:rgba(242,239,234,.72)}
/* the caption under the formula, and the film control */
.dr-cap{position:absolute;z-index:4;left:var(--wx,33.8%);bottom:calc(env(safe-area-inset-bottom,0px) + clamp(22px,4.4svh,44px));translate:-50% 0;
  display:inline-flex;align-items:baseline;gap:16px;min-height:32px;padding:4px 0;color:var(--foam);text-decoration:none;white-space:nowrap;
  font:400 .72rem/1 var(--ed-latin);font-variation-settings:"wdth" 112;letter-spacing:.24em;text-transform:uppercase;text-shadow:0 1px 14px rgba(0,0,0,.7);
  transition:opacity .9s ease .3s}
.dr-cap b{font-weight:400;font-size:.92rem;letter-spacing:.04em;color:var(--ed-amber-light)}
.dr-cap:hover span{text-decoration:underline;text-underline-offset:.5em}
.dr-ctl{position:absolute;z-index:4;inset-inline-start:var(--ed-gutter);bottom:calc(env(safe-area-inset-bottom,0px) + clamp(18px,4svh,40px));appearance:none;display:grid;
  place-items:center;width:44px;height:44px;margin:0;padding:0;border-radius:50%;border:1px solid rgba(242,239,234,.3);background:rgba(6,11,18,.3);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--foam);cursor:pointer;transition:opacity .9s ease .45s,background .25s}
.dr-ctl:hover{background:rgba(242,239,234,.14)}
.dr-ctl svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.dr-ctl__play{display:none}
.dr-ctl[aria-pressed="true"] .dr-ctl__play{display:block}
.dr-ctl[aria-pressed="true"] .dr-ctl__stop{display:none}
@keyframes drShow{from{opacity:0}to{opacity:1}}
@keyframes drSweep{0%{transform:translateX(0) skewX(-12deg)}24%,100%{transform:translateX(420%) skewX(-12deg)}}

/* ---------- 6. the formulas: a row of vitrines for the studio photographs ---------- */
.fx-rail{position:relative}
.ed-track{display:grid;grid-auto-flow:column;grid-template-columns:none!important;grid-auto-columns:calc((100% - 3 * var(--ed-gap)) / 4.15);
  gap:var(--ed-gap)!important;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;
  margin:0;padding:0 0 4px!important;list-style:none;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.ed-track::-webkit-scrollbar{display:none}
.fcard{scroll-snap-align:start;position:relative;display:flex!important;flex-direction:column;align-items:stretch!important;min-width:0;min-height:0!important;
  margin:0;padding:0!important;text-align:start!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.fcard::before,.fcard::after{display:none!important}
.fcard__media{position:relative;aspect-ratio:4/5;overflow:hidden;border:1px solid var(--ed-line);border-radius:var(--ed-radius);background:#FFFFFF}
.fcard__photo{appearance:none;position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;padding:0;border:0;background:none;cursor:pointer;color:inherit;box-sizing:border-box}
span.fcard__photo{cursor:default}
button.fcard__photo::after,span.fcard__photo::after{display:none!important}
/* absolutely placed: a % height inside a grid cell falls back to the intrinsic size (ONBOARDING, trap 3) */
/* the legacy shelf lifted the image (z-index 2) over its tag and dropped a shadow under it — the studio photographs carry their own light */
.fcard__photo img{position:absolute;inset:0;z-index:auto!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;filter:none!important;
  transition:transform 1.2s var(--ed-ease)}
.fcard:hover .fcard__photo img{transform:scale(1.035)}
.fcard:hover,.fcard:focus-within{transform:none!important}
.fcard__tag{position:absolute;top:12px;inset-inline-start:12px;z-index:3;padding:.5em .8em;border-radius:var(--ed-pill);font:500 .66rem/1 var(--ed-sans);
  letter-spacing:.02em;background:var(--ed-ink);color:#FFFFFF}
.fcard__tag--dark{background:var(--ed-ink);color:#FFFFFF}
.fcard__body{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem}
.fcard__series{font-family:var(--ed-sans);font-weight:400;font-size:.76rem;line-height:1.4;letter-spacing:0;color:var(--ed-muted)}
.fcard .fcard__name{margin:0;font:400 .8rem/1.4 var(--ed-latin)!important;font-variation-settings:"wdth" 112;letter-spacing:.14em;text-transform:uppercase;color:var(--ed-ink)}
.fcard__desc{margin:.3rem 0 .1rem;max-width:34ch;font-size:.84rem;line-height:1.55;color:var(--ed-muted)}
.fcard__row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:.35rem}
.fcard__price{font:400 1rem/1.3 var(--ed-latin);letter-spacing:.02em;color:var(--ed-ink);font-variant-numeric:tabular-nums}
.fcard__add{appearance:none;display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:1px solid var(--ed-line);border-radius:50%;
  background:#FFFFFF;color:var(--ed-ink);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.fcard__add:hover{background:var(--ed-ink);border-color:var(--ed-ink);color:#FFFFFF}
.fcard__add svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.fx-nav{position:absolute;top:calc(var(--fx-h,300px) / 2);z-index:4;width:44px;height:44px;margin-top:-22px;display:grid;
  place-items:center;padding:0;border:1px solid var(--ed-line);border-radius:50%;background:#FFFFFF;color:var(--ed-ink);cursor:pointer;
  box-shadow:0 8px 24px rgba(15,30,46,.08);transition:opacity .3s ease,background-color .25s ease}
.fx-nav:hover{background:var(--ed-ivory)}
.fx-nav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.fx-nav--next{left:calc(var(--ed-gutter) + 8px)}
.fx-nav--prev{right:calc(var(--ed-gutter) + 8px)}
.fx-nav:disabled{opacity:0;pointer-events:none}
.fx-rail--static .fx-nav{display:none}

/* ---------- 7. the two series, on the colours of their boxes ---------- */
.ed-duo__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ed-gap)}
/* the set photographed on white, multiplied into the tone of its box; the words sit below it, in the box's dark ink */
.ed-tile{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-height:clamp(480px,46vw,690px);padding:0 0 clamp(20px,2.6vw,34px);overflow:hidden;
  border-radius:var(--ed-radius);color:var(--tone);text-decoration:none;background:var(--tile-bg)}
.ed-tile--glow{--tile-bg:#EADBC8;--tone:#4A2A1A}
.ed-tile--calm{--tile-bg:#D3DEE8;--tone:#12304F}
/* the photo's own box carries the tone too: multiply blends inside the nearest stacking context */
.ed-tile__photo{position:relative;display:block;min-height:0;overflow:hidden;background:var(--tile-bg)}
.ed-tile__photo img{position:absolute;inset:4% 0 0;width:100%;height:96%;max-width:none;object-fit:contain;object-position:center bottom;mix-blend-mode:multiply;
  filter:brightness(1.012);   /* the studio paper is 253/255: lift it to white so the photograph's edge disappears into the tone */
  transition:scale 1.4s var(--ed-ease);transform-origin:center bottom}
.ed-tile:hover .ed-tile__photo img{scale:1.025}
.ed-tile::after{content:none}
.ed-tile__top{display:grid;justify-items:start;gap:.35rem;max-width:40ch;padding:clamp(16px,2vw,26px) clamp(22px,3vw,40px) 0}
.ed-tile__lat{font:400 .72rem/1 var(--ed-latin);font-variation-settings:"wdth" 112;letter-spacing:.22em;text-transform:uppercase;opacity:.85}
.ed-tile__name{font-family:var(--ed-serif);font-weight:200;font-size:clamp(2rem,1.2rem + 1.7vw,3rem);line-height:1.08}
.ed-tile__top>span{font-size:.95rem;font-weight:300;line-height:1.5;opacity:.85}
.ed-tile__cta{justify-self:start;display:inline-flex;align-items:center;min-height:44px;margin:.3rem clamp(22px,3vw,40px) 0;font:500 .86rem/1 var(--ed-sans);
  color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.5em;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}
.ed-tile:hover .ed-tile__cta{text-decoration-color:currentColor}
.ed-tile:focus-visible{outline:2px solid var(--ed-ink);outline-offset:3px}

/* ---------- 8. protocols (app.js renders .bcard) ---------- */
.bundles.ed-protocols{border:0;text-align:start}
.ed-protocols .bundles__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ed-gap);margin:0;padding:0}
.ed-protocols .bcard{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:.35rem;min-width:0;min-height:0;margin:0;
  padding:clamp(18px,2vw,26px)!important;text-align:start;background:#FFFFFF!important;border:1px solid var(--ed-line)!important;border-radius:var(--ed-radius)!important;
  box-shadow:none!important;transform:none!important}
/* one row height for two or three photographs (premium-v4 capped them at 150px over a 170px row, with a drop shadow) */
.ed-protocols .bimgs{order:-1;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;aspect-ratio:12/5;min-height:0!important;margin:0 0 .9rem!important;padding:0;
  background:none;direction:ltr;align-items:stretch}
.ed-protocols .bimgs img{width:100%!important;height:100%!important;max-width:none;max-height:none!important;min-height:0;object-fit:cover;margin:0!important;padding:0!important;
  border-radius:var(--ed-radius-sm);background:#FFFFFF;border:1px solid var(--ed-line);filter:none!important;transform:none!important;box-sizing:border-box}
.ed-protocols .bsave,.ed-protocols .bhot{position:absolute;top:calc(clamp(18px,2vw,26px) + 10px)!important;z-index:2;display:inline-block!important;width:auto!important;height:auto!important;
  min-width:0!important;margin:0;padding:.5em .8em!important;border-radius:var(--ed-pill)!important;font:500 .66rem/1 var(--ed-sans)!important;letter-spacing:.02em!important;
  white-space:nowrap;text-align:start;box-shadow:none;transform:none!important}
.ed-protocols .bsave{inset-inline-start:calc(clamp(18px,2vw,26px) + 10px)!important;background:var(--ed-ink)!important;color:#FFFFFF!important}
.ed-protocols .bhot{inset-inline-end:calc(clamp(18px,2vw,26px) + 10px)!important;background:#FFFFFF!important;color:var(--ed-ink)!important;border:1px solid var(--ed-line)!important}
.ed-protocols .bcard h3{margin:0;font-family:var(--ed-serif)!important;font-weight:300!important;font-size:1.55rem!important;line-height:1.2!important;color:var(--ed-ink)}
.ed-protocols .bsub{display:block;font-size:.86rem;line-height:1.5;color:var(--ed-muted)}
.ed-protocols .bitems{min-height:0!important;font-size:.8rem;line-height:1.5;color:var(--ed-muted);text-align:start!important;direction:ltr;text-align:right!important}
.ed-protocols .bprice{display:flex;align-items:baseline;justify-content:flex-start!important;gap:.7rem;margin-top:.4rem!important}
.ed-protocols .bprice .now{font:400 1.45rem/1.2 var(--ed-latin);color:var(--ed-ink);font-variant-numeric:tabular-nums}
.ed-protocols .bprice .was{font:400 .92rem/1.2 var(--ed-latin);color:var(--ed-muted);text-decoration:line-through;font-variant-numeric:tabular-nums}
.ed-protocols .bcard .btn{align-self:stretch;margin-top:auto!important}
.ed-protocols .bprice{margin-bottom:1rem!important}   /* the actions line up across the row whatever the item list */

/* ---------- 9. the founder ---------- */
.ed-story__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.6rem,4vw,4.4rem);align-items:center}
.ed-story__fig{position:relative;margin:0;overflow:hidden;border-radius:var(--ed-radius);background:var(--ed-ivory);aspect-ratio:646/421}
.ed-story__fig img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(.15) contrast(1.02)}
.ed-story__card{position:absolute;top:clamp(12px,1.6vw,22px);inset-inline-start:clamp(12px,1.6vw,22px);display:grid;gap:.2rem;
  min-width:170px;padding:.75rem 1rem;border-radius:var(--ed-radius-sm);background:rgba(255,255,255,.94);text-align:start}
.ed-story__card b{font:500 .82rem/1.3 var(--ed-sans);color:var(--ed-ink)}
.ed-story__card span{font-size:.74rem;line-height:1.4;color:var(--ed-muted)}
.ed-quote{margin:0 0 1rem;padding:0;border:0}
.ed-quote p{margin:0;font-family:var(--ed-serif);font-weight:200;font-size:clamp(2rem,1rem + 2.6vw,3.4rem);line-height:1.14;color:var(--ed-ink);text-wrap:balance}
.ed-story__p{margin:0 0 .8rem;max-width:52ch;font-size:1rem;font-weight:300;line-height:1.8;color:var(--ed-muted)}

/* ---------- 10. morning and evening, numbered like the bottles ---------- */
.routine.ed-method{text-align:start}
.ed-routine{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.6rem,4vw,4rem)}
.rhead{margin:0 0 1rem;font-family:var(--ed-serif);font-weight:300;font-size:1.7rem!important;line-height:1.2!important;color:var(--ed-ink)}
.rsteps{margin:0;padding:0;list-style:none;border-top:1px solid var(--ed-line)}
/* style.css / premium-v4.css built .rstep as a centred 210px card with a hover lift — here it is a row of the list */
.ed-routine .rstep{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:0;margin:0;padding:16px 0;text-align:start;
  background:none;border:0;border-bottom:1px solid var(--ed-line);border-radius:0;box-shadow:none;transform:none;transition:none}
.ed-routine .rstep:hover{background:none;border-color:var(--ed-line);transform:none}
.ed-routine .rstep:first-child{border-top:0}
.rstep::before,.rstep::after{display:none!important}
.rnum{min-width:1.2ch;font:300 clamp(2.4rem,1.9rem + 1.2vw,3.3rem)/1 var(--ed-latin);font-variation-settings:"wdth" 125;color:var(--ed-bronze)}
.ed-routine .rtxt b{display:block;margin:0;font-weight:500;font-size:1rem;color:var(--ed-ink)}
.ed-routine .rtxt span{display:block;margin-top:.15rem;font-size:.9rem;line-height:1.55;font-weight:300;color:var(--ed-muted)}
.rprod{appearance:none;display:inline-flex;align-items:center;min-height:44px;margin:0;padding:0;border:0;background:none;cursor:pointer;white-space:nowrap;
  font:400 .78rem/1.2 var(--ed-latin);letter-spacing:.06em;color:var(--ed-ink);text-decoration:underline;text-underline-offset:.45em;text-decoration-color:rgba(15,30,46,.3)}
.rprod:hover{color:var(--ed-bronze);text-decoration-color:currentColor}
.rprod--soon{cursor:default;text-decoration:none;color:var(--ed-muted)}

/* ---------- 11. the science ---------- */
.sci.ed-sci{color:var(--ink);padding-block:clamp(4rem,7vw,7rem)!important;border-radius:0!important;border:0}
.sci.ed-sci::before,.sci.ed-sci::after{display:none}
.ed-sci__kicker{margin-bottom:1rem!important}
.sci.ed-sci h2.ed-display{max-width:20ch;font-size:clamp(2.2rem,1.2rem + 2.4vw,3.7rem)!important;line-height:1.08!important;color:var(--ed-ink);-webkit-text-fill-color:currentColor}
.sci.ed-sci .ed-sci__lede{margin:1rem 0 0;max-width:56ch;font-size:1rem;font-weight:300;line-height:1.75;color:var(--ed-muted)}
.ed-sci__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:2.6rem 0 0;padding:0;border-block:1px solid var(--ed-line)}
.ed-sci__list>div{display:grid;align-content:start;gap:.45rem;padding:1.6rem 1.8rem 1.8rem}
.ed-sci__list>div:first-child{padding-inline-start:0}
.ed-sci__list>div+div{border-inline-start:1px solid var(--ed-line)}
.ed-sci__list dt{font-family:var(--ed-serif);font-weight:300;font-size:1.5rem;line-height:1.2;color:var(--ed-ink)}
.ed-sci__list dd{margin:0;max-width:44ch;font-size:.92rem;font-weight:300;line-height:1.75;color:var(--ed-muted)}
.ed-sci__list .ed-link{min-height:44px}

/* ---------- 11b. coming soon ---------- */
.ed-soon{padding-bottom:clamp(4rem,7vw,7rem)!important}
.ed-soon__row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--ed-gap)}
.ed-soon .fcard__series{font-family:var(--ed-latin);font-size:.66rem;line-height:1.5;letter-spacing:.12em;text-transform:uppercase}

/* ---------- 12. service row ---------- */
.service.ed-service{padding-block:0 clamp(3rem,5vw,4.4rem)!important;border:0!important}
.ed-service .service__row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;background:none!important;
  border:0!important;border-block:1px solid var(--ed-line)!important}
.ed-service .service__row>div{display:grid;justify-items:center;align-content:start;gap:.35rem;padding:1.9rem 1rem 2rem;text-align:center;background:none!important}
.ed-service .service__row>div+div{border-inline-start:1px solid var(--ed-line)}
.ed-ic{width:24px;height:24px;margin-bottom:.45rem;fill:none;stroke:var(--ed-ink);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.ed-service .service__row b{font:500 .86rem/1.35 var(--ed-sans);color:var(--ed-ink)}
.ed-service .service__row span{font-size:.82rem;font-weight:300;line-height:1.5;color:var(--ed-muted)}

/* ---------- 13. the club ---------- */
.newsletter.ed-club{display:block!important;background:var(--ed-ivory)!important;color:var(--ink);padding-block:clamp(3.4rem,6vw,5.4rem)!important}
.newsletter.ed-club::before,.newsletter.ed-club::after{display:none!important}
.ed-club .newsletter__in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:2rem 4rem;align-items:end}
.ed-club .newsletter__in h2.ed-display{font-size:clamp(2rem,1.1rem + 2.4vw,3.3rem)!important;line-height:1.1!important;color:var(--ed-ink)!important}
.ed-club .ed-club__txt p{margin:.9rem 0 0;max-width:48ch;font-weight:300;font-size:1rem;line-height:1.7;color:var(--ed-muted)}
.ed-club .newsletter__form{display:grid;gap:1rem;margin:0}
.ed-club .newsletter__fields{display:grid;gap:.9rem}
.ed-club input[type="email"]{width:100%;min-height:52px;box-sizing:border-box;padding:0 18px!important;border:1px solid var(--ed-line)!important;
  border-radius:var(--ed-pill)!important;background:#FFFFFF!important;color:var(--ed-ink)!important;font:400 1rem/1.2 var(--ed-sans)}
.ed-club input[type="email"]:focus{border-color:var(--ed-ink)!important;outline:none}
.ed-club input[type="email"]::placeholder{color:var(--ed-muted)}
/* one line of text with its box (a flex row would split the sentence around its link) */
.ed-club .newsletter__consent{display:block;font-size:.82rem;line-height:1.7;color:var(--ed-muted)}
.ed-club .newsletter__consent input{accent-color:var(--ed-ink)}
.ed-club .newsletter__consent a{color:var(--ed-ink);text-decoration:underline;text-underline-offset:.3em}
.ed-club .btn{justify-self:start}
.ed-club .newsletter__done{color:var(--ed-ink)}
.ed-club .newsletter__done b{display:block;margin:.4rem 0;font:400 2rem/1.1 var(--ed-latin);font-variation-settings:"wdth" 125;letter-spacing:.14em;color:var(--ed-ink)}
.ed-club .newsletter__done span{color:var(--ed-muted);font-size:.9rem}

/* ---------- 14. footer ---------- */
footer.site{margin:0!important;background:var(--ed-paper)!important;color:var(--ed-muted);border-top:1px solid var(--ed-line)}
footer.site>.wrap{max-width:var(--ed-max);padding:clamp(2.8rem,5vw,4.2rem) var(--ed-gutter)!important;row-gap:1.4rem}
/* premium-v4.css paints every footer link and paragraph light with !important (it was a navy footer) */
footer.site .logo{display:flex;flex-direction:column;align-items:center;gap:6px;width:max-content;color:var(--ed-ink)!important}
footer.site .logo .wm{font-size:1.02rem;color:inherit}
footer.site .logo span{color:var(--ed-muted)}
footer.site p{color:var(--ed-muted)!important;font-weight:300;font-size:.9rem!important;line-height:1.7}
footer.site .footer__h{margin:0 0 .6rem;font:500 .84rem/1.3 var(--ed-sans)!important;letter-spacing:0;color:var(--ed-ink)!important}
footer.site nav a{display:flex;align-items:center;min-height:36px;color:var(--ed-muted)!important;font-size:.9rem!important;text-decoration:none}
footer.site a:hover,footer.site nav a:hover{color:var(--ed-ink)!important}
footer.site :focus-visible{outline-color:var(--ed-ink)}
.footer-legal,.footer-legal.zone-navy{background:var(--ed-ivory)!important;color:var(--ed-muted)!important;border-top:1px solid var(--ed-line);
  font:400 .62rem/1 var(--ed-latin)!important;font-variation-settings:"wdth" 112;font-style:normal;letter-spacing:.3em;text-align:center;
  padding:1.1rem var(--ed-gutter) calc(1.1rem + env(safe-area-inset-bottom,0px))!important}

/* ---------- 15. actions across the views: navy pills ---------- */
.btn{border-radius:var(--ed-pill)}
.btn--solid::after,.btn--solid::before{display:none!important}   /* the legacy sheen sweep */
.btn--solid,.btn--primary,.btn--dark,.btn--gold{background:var(--ed-ink)!important;color:#FFFFFF!important;border:1px solid var(--ed-ink)!important;
  border-radius:var(--ed-pill)!important;box-shadow:none!important;font-weight:500;background-image:none!important;min-height:48px}
.btn--solid:hover,.btn--primary:hover,.btn--dark:hover,.btn--gold:hover{background:var(--ed-bronze)!important;border-color:var(--ed-bronze)!important;transform:none}
.btn--ghost,.btn--navy,.btn--gold-line{background:transparent!important;color:var(--ed-ink)!important;border:1px solid var(--ed-ink)!important;
  border-radius:var(--ed-pill)!important;box-shadow:none!important}
.btn--ghost:hover,.btn--navy:hover{background:var(--ed-ink)!important;color:#FFFFFF!important}
.zone-navy .btn--solid,.odone .btn--solid,.pp-done .btn--solid,.pp-done .btn--gold{background:#FFFFFF!important;color:var(--ed-ink)!important;border-color:#FFFFFF!important}
.zone-navy .btn--ghost,.odone .btn--ghost,.pp-done .btn--ghost,.zone-navy .btn--navy{color:#FFFFFF!important;border-color:rgba(255,255,255,.6)!important}
.zone-navy .btn--ghost:hover,.odone .btn--ghost:hover{background:rgba(255,255,255,.1)!important}

/* ---------- 16. catalogue view (/shop) ---------- */
.catalog-page{background:var(--ed-paper)!important}
.catalog-page__bar,.ppage__bar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--ed-line)!important;
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:none!important;color:var(--ed-ink)}
.catalog-page__bar .logo,.ppage__bar .logo{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--ed-ink);text-decoration:none}
.catalog-page__bar .logo .wm,.ppage__bar .logo .wm{font-size:.9rem}
.catalog-page__bar .logo span,.ppage__bar .logo span{margin:0;color:var(--ed-muted)}
.shop__head .eyebrow::before{background:var(--ed-bronze)!important}
.ppage__back,.ppage__bar .ppage__back{gap:.5rem;min-height:44px;padding:0 16px!important;background:none!important;border:1px solid var(--ed-line)!important;
  border-radius:var(--ed-pill)!important;box-shadow:none!important;color:var(--ed-ink)!important;font:500 .84rem/1 var(--ed-sans)}
.ppage__back svg{stroke:currentColor}
.shop__head h1{margin:.5rem 0 0;font-family:var(--ed-serif);font-weight:200;font-size:clamp(2.4rem,1.4rem + 2.6vw,3.8rem);color:var(--ed-ink)}
.shop__head p{color:var(--ed-muted)!important;font-weight:300}
.filters{display:flex;flex-wrap:wrap;gap:8px}
.chip{appearance:none;display:inline-flex;align-items:center;min-height:44px;padding:0 16px!important;border:1px solid var(--ed-line)!important;border-radius:var(--ed-pill)!important;
  background:#FFFFFF!important;box-shadow:none!important;font:400 .86rem/1 var(--ed-sans);color:var(--ed-ink)!important;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.chip:hover{border-color:var(--ed-ink)!important}
.chip[aria-pressed="true"]{background:var(--ed-ink)!important;border-color:var(--ed-ink)!important;color:#FFFFFF!important}
.chip[aria-pressed="true"]::before{content:none}
.sortsel{min-height:44px;padding:0 14px;border:1px solid var(--ed-line);border-radius:var(--ed-pill);background:#FFFFFF;font:400 .86rem/1 var(--ed-sans);color:var(--ed-ink)}
.shop__count{color:var(--ed-muted)}
.clearfilters{border-radius:var(--ed-pill)}
.grid{gap:clamp(2rem,3vw,3rem) var(--ed-gap)!important}
.card{padding:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;transform:none!important}
.card::before{display:none!important}
.card:hover{box-shadow:none!important;border-color:transparent!important}
.card__photo{position:relative;display:block;height:auto!important;aspect-ratio:4/5!important;padding:0!important;overflow:hidden;
  background:#FFFFFF!important;border:1px solid var(--ed-line);border-radius:var(--ed-radius)!important}
.card__photo::after{display:none!important}
/* style.css sets .main-img relative + contain with padding, premium-v4.css adds padding and a drop shadow — the studio photograph fills its vitrine */
.card__photo img,.card__photo .main-img,.card__photo .alt-img{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-width:none!important;
  padding:0!important;object-fit:cover!important;filter:none!important;transition:transform 1.2s var(--ed-ease),opacity .6s ease}
.card__photo:hover img{transform:scale(1.035)}
.card__photo .alt-img{opacity:0}
.card__body{padding:1rem 0 0!important;text-align:start!important;align-items:stretch!important;gap:.25rem}
.card__body::before,.card__body::after{display:none!important}
.card__series{font-size:.76rem!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--ed-muted)!important}
.card__name{margin:0;font:400 .82rem/1.4 var(--ed-latin)!important;font-variation-settings:"wdth" 112;letter-spacing:.14em;text-transform:uppercase;color:var(--ed-ink)!important}
.card__desc{font-size:.86rem!important;line-height:1.55!important;font-weight:300;color:var(--ed-muted)!important}
.link-more{padding:0;border:0;background:none;min-height:44px;font:500 .8rem/1 var(--ed-sans);color:var(--ed-ink);
  text-decoration:underline;text-underline-offset:.45em;text-decoration-color:rgba(15,30,46,.3);cursor:pointer}
.card__row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:.3rem;padding:0!important;border:0!important}
.card .price{font:400 1rem/1 var(--ed-latin)!important;color:var(--ed-ink)!important;font-variant-numeric:tabular-nums}
.card .add{display:inline-flex;align-items:center;flex:none;width:auto!important;min-height:44px;padding:0 16px!important;border:1px solid var(--ed-ink)!important;
  border-radius:var(--ed-pill)!important;background:var(--ed-ink)!important;box-shadow:none!important;color:#FFFFFF!important;font:500 .8rem/1 var(--ed-sans)!important;text-decoration:none}
.card .add:hover{background:var(--ed-bronze)!important;border-color:var(--ed-bronze)!important}
.card .fav{background:#FFFFFF!important;border:1px solid var(--ed-line)!important;border-radius:50%!important;box-shadow:none!important;color:var(--ed-ink)!important;opacity:.85}
.card:hover .fav,.card .fav:focus-visible,.card .fav[aria-pressed="true"]{opacity:1}
.card .fav svg{fill:none;stroke:currentColor;stroke-width:1.4}
.card .fav[aria-pressed="true"] svg{fill:currentColor}
.badge{border-radius:var(--ed-pill)!important;padding:.5em .8em!important;font:500 .66rem/1 var(--ed-sans)!important;letter-spacing:.02em!important;
  background:#FFFFFF!important;color:var(--ed-ink)!important;border:1px solid var(--ed-line);box-shadow:none!important}
.badge--new{background:var(--ed-ink)!important;color:#FFFFFF!important;border-color:var(--ed-ink)}
.soon-label,.soon-pill{border-radius:var(--ed-pill);font:500 .66rem/1 var(--ed-sans);letter-spacing:.02em}
.soon-pill{position:absolute;top:12px;inset-inline-start:12px;z-index:2;padding:.5em .8em;background:var(--ed-ink);color:#FFFFFF}
.card--soon .card__photo img{filter:none!important;opacity:1!important}

/* ---------- 17. product view ---------- */
.ppage{background:var(--ed-paper)!important}
.pp-num{display:none!important}   /* numbered section markers are not a real sequence */
.pp-breadcrumbs{max-width:var(--ed-max)!important;padding:18px var(--ed-gutter) 0!important;color:var(--ed-muted);justify-content:flex-start!important}
.pp-breadcrumbs a{color:var(--ed-muted)!important;min-height:44px;min-width:44px;justify-content:center;padding-inline:6px;display:inline-flex;align-items:center}
.pp-sec{padding-block:0!important;background:var(--ed-paper)!important;border-bottom:1px solid var(--ed-line)!important}
.pp-in{max-width:var(--ed-max)!important;padding-inline:var(--ed-gutter)!important;padding-block:clamp(2.8rem,5vw,4.6rem)!important}
.pp-hero .pp-in{padding-block:1.2rem clamp(2.8rem,5vw,4.2rem)!important}
.pp-sci,.pp-how,.pp-faq,.pp-hero{background:var(--ed-paper)!important}
.pp-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(2rem,5vw,5rem)!important;min-height:0!important;align-items:center}
.pp-stage{position:relative;width:100%;align-self:stretch;min-height:clamp(440px,44vw,660px)!important;overflow:hidden;background:#FFFFFF!important;
  border:1px solid var(--ed-line);border-radius:var(--ed-radius)}
.pp-halo{display:none!important}
/* the studio photograph fills the vitrine, so its own paper never shows as a box inside the box */
.pp-stage img{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;
  object-fit:cover;filter:none!important;transform:none!important;animation:none!important}
.pp-name{font-family:var(--ed-latin)!important;font-weight:300!important;font-variation-settings:"wdth" 100;font-size:clamp(2.4rem,1.4rem + 2.6vw,4rem)!important;
  line-height:1.02!important;letter-spacing:.005em!important;color:var(--ed-ink)!important}
.pp-sub{margin-top:.6rem!important;font:400 .78rem/1.5 var(--ed-latin)!important;letter-spacing:.14em;color:var(--ed-muted)!important}
.pp-tags{font:400 .74rem/1.6 var(--ed-latin)!important;letter-spacing:.14em!important;color:var(--ed-ink)!important}
.pp-lead{color:var(--ink)!important;font-weight:300}
.pp-hl{margin-top:1.8rem!important;padding-block:1.2rem;border-block:1px solid var(--ed-line)}
.pp-hl>div,.pp-bcard,.pp-step,.pp-rcard,.pp-acc,.pp-tex{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.pp-bcard,.pp-step,.pp-rcard,.pp-acc{border-top:1px solid var(--ed-line)!important}
.pp-hl svg{stroke:var(--ed-ink)!important}
.pp-buy .pmodal__price{font:400 1.6rem/1 var(--ed-latin)!important;color:var(--ed-ink)!important;font-variant-numeric:tabular-nums}
.pp-buy #psAdd2{min-height:52px;padding:0 2rem!important;font:500 .9rem/1 var(--ed-sans)!important}
.trust span{color:var(--ed-muted)}
.trust svg{stroke:var(--ed-ink)}
.pp-h2{font-family:var(--ed-serif)!important;font-weight:200!important;font-size:clamp(2rem,1.1rem + 2vw,3rem)!important;color:var(--ed-ink)!important}
.pp-done{background:var(--ed-ink)!important;color:#E7EDF2}
.pp-done h2{font-family:var(--ed-serif);font-weight:200;color:#FFFFFF!important}
.pp-done p{color:var(--ed-muted-dark)!important}
.pbuy{background:rgba(255,255,255,.96)!important;border-top:1px solid var(--ed-line)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  padding-bottom:calc(.9rem + env(safe-area-inset-bottom,0px))}
.pbuy__info b,.pbuy__price{color:var(--ed-ink)!important}
.pbuy__info span{color:var(--ed-muted)!important}
.ppage .origin{background:var(--ed-ivory)!important;border:0!important;border-radius:var(--ed-radius)!important}
.ppage .ingcard,.ppage .pp-ing{border-radius:var(--ed-radius)!important}
.ppage .thumbs button,.pshow__hero2 .thumbs button{border-radius:var(--ed-radius-sm)!important;border-color:var(--ed-line)!important;background:#FFFFFF!important}
.pp-soon-tag{border-radius:var(--ed-pill);background:var(--ed-ink);color:#FFFFFF}

/* ---------- 18. quiz view ---------- */
.qpage{background:var(--ed-paper)!important;color:var(--ink)}
.qpage .ppage__bar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--ed-line)!important}
.qpage h1,.qpage h2{font-family:var(--ed-serif)!important;font-weight:200!important;color:var(--ed-ink)!important;margin:0}
.qpage h2{margin:.35rem 0 1.4rem}
.qpage h1{font-size:clamp(2.1rem,1.2rem + 2.4vw,3.2rem)}
.qpage .qstep-label{color:var(--ed-muted)!important;font-family:var(--ed-sans)!important;letter-spacing:0!important}
.qopt{min-height:60px;border:1px solid var(--ed-line)!important;border-radius:var(--ed-radius)!important;background:#FFFFFF!important;color:var(--ed-ink)!important;box-shadow:none!important;
  font-weight:400!important}
.qopt:hover,.qopt:focus-visible{background:var(--ed-ivory)!important;border-color:var(--ed-ink)!important}
.qprogress{background:var(--ed-sand)!important;border-radius:var(--ed-pill)!important}
.qprogress i{background:var(--ed-bronze)!important;border-radius:var(--ed-pill)}
.qback{color:var(--ed-muted)!important}
.qresult__card{border:1px solid var(--ed-line)!important;border-radius:var(--ed-radius)!important;background:#FFFFFF!important}
.qresult__card img{border-radius:var(--ed-radius-sm);background:#FFFFFF}
.qbundle{--ink:#E7EDF2;--ink-strong:#FFFFFF;--ink-mute:#AAB7C4;--muted:#AAB7C4;background:var(--ed-ink)!important;border:0!important;border-radius:var(--ed-radius)!important;color:#E7EDF2}
.qbundle .btn--solid{background:#FFFFFF!important;color:var(--ed-ink)!important;border-color:#FFFFFF!important}

/* ---------- 19. cart, checkout, search, toasts, confirmation ---------- */
.overlay{background:rgba(15,30,46,.4)!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
/* the cart: style.css floated a 540px box under the old two-row header; here it is a full-height panel at the side
   (under 700px style.css / premium-v4.css make it a bottom sheet, kept) */
.drawer{background:var(--ed-paper)!important;color:var(--ink);border-top:1px solid var(--ed-line)!important;box-shadow:0 -18px 50px rgba(15,30,46,.12)}
@media (min-width:701px){
  .drawer{top:0!important;bottom:0!important;inset-inline-end:0!important;width:min(440px,100%)!important;height:100dvh;max-height:none!important;
    border:0!important;border-inline-start:1px solid var(--ed-line)!important;border-radius:0!important;box-shadow:-24px 0 60px rgba(15,30,46,.1)!important;
    transform:translateX(-16px)}
  .drawer.open{transform:none}
}
.drawer__head{padding:1.1rem 1.4rem!important;background:var(--ed-paper)!important;border-bottom:1px solid var(--ed-line)!important}
.drawer__head h2{font-family:var(--ed-serif)!important;font-weight:300!important;color:var(--ed-ink)}
.drawer__items{padding:.4rem 1.4rem 1rem!important;gap:0!important}
.drawer .line{align-items:flex-start;gap:1rem;padding:1rem 0!important;background:none!important;border:0!important;border-bottom:1px solid var(--ed-line)!important;
  border-radius:0!important;box-shadow:none!important}
.drawer .line__art{width:64px;height:80px;overflow:hidden;border:1px solid var(--ed-line)!important;border-radius:var(--ed-radius-sm);background:#FFFFFF!important}
.drawer .line__name{font:500 .95rem/1.35 var(--ed-latin);color:var(--ed-ink)}
.drawer .line__price{margin-top:.15rem;font-size:.84rem;color:var(--ed-muted)}
.drawer .line__info>div[style]{color:var(--ed-bronze)!important}   /* the bundle saving line carried an inline orange */
.drawer .qty{display:inline-flex!important;margin-top:.6rem}
.drawer .line__remove{min-width:44px;justify-content:center;color:var(--ed-muted)!important;font-weight:400!important;letter-spacing:0!important;text-decoration:underline;text-underline-offset:.35em;
  text-decoration-color:rgba(15,30,46,.3)}
.drawer .line__remove:hover{color:var(--ed-ink)!important}
.drawer__foot{background:var(--ed-ivory)!important;padding-inline:1.4rem!important;border-top:1px solid var(--ed-line)!important}
.crossell__t{font:500 .84rem/1.4 var(--ed-sans)!important;letter-spacing:0!important;text-transform:none!important;color:var(--ed-ink)!important}   /* Hebrew is never tracked */
.crossell__row .add{min-height:44px;padding:0 18px!important;border:1px solid var(--ed-ink)!important;border-radius:var(--ed-pill)!important;background:transparent!important;
  color:var(--ed-ink)!important;font:500 .82rem/1 var(--ed-sans)!important;letter-spacing:0!important}
.crossell__row .add:hover{background:var(--ed-ink)!important;color:#FFFFFF!important}
.coupon-row input{border-color:var(--ed-line)!important;letter-spacing:0!important}
/* form focus: one ink ring everywhere (style.css drew it in orange, the review form in gold) */
.field input:focus,.field select:focus,.field textarea:focus,.field input:focus-visible,.searchpanel input:focus,.coupon-row input:focus,
.rvform__field input:focus,.rvform__field textarea:focus{outline:2px solid var(--ed-ink)!important;outline-offset:1px!important;border-color:var(--ed-ink)!important}
.shipbar__track{background:var(--ed-sand)!important;border-radius:var(--ed-pill)!important}
.shipbar__track i{background:var(--ed-bronze)!important;border-radius:var(--ed-pill)!important}
.coupon-row input,.field input,.field textarea,.field select{border-radius:var(--ed-radius-sm)!important}
.coupon-row button{border-radius:var(--ed-pill)!important}
.drawer__foot{padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px))}
.modal{background:var(--ed-paper)}
.modal__box h2,#coTitle{font-family:var(--ed-serif)!important;font-weight:200!important;color:var(--ed-ink)}
.checkout-paynote{background:var(--ed-ivory)!important;border:1px solid var(--ed-line)!important;border-radius:var(--ed-radius)!important}
.searchpanel{background:rgba(255,255,255,.98)!important;border-bottom:1px solid var(--ed-line)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.searchpanel input{background:#FFFFFF!important;border:1px solid var(--ed-line)!important;border-radius:var(--ed-pill)!important;color:var(--ed-ink)!important;padding-inline:20px!important}
.searchpanel input::placeholder{color:var(--ed-muted)!important}
.sugg__item{min-height:44px;background:none!important;border:0!important;border-bottom:1px solid var(--ed-line)!important;border-radius:0!important;color:var(--ed-ink)!important}
.searchpanel .sugg a{min-height:44px}
/* the idle toast must clear the viewport whatever its height */
.toast{background:var(--ed-ink)!important;color:#FFFFFF!important;border:0!important;border-radius:16px!important;max-width:min(92vw,440px);line-height:1.5;text-align:center;
  transform:translateX(50%) translateY(calc(100% + 2.6rem))}
.toast.show{transform:translateX(50%) translateY(0)}
.odone{background:var(--ed-espresso)!important}
.mobile-cta{bottom:calc(12px + env(safe-area-inset-bottom,0px))}
.legal__title{margin:0 0 1.2rem;font-family:var(--ed-serif);font-weight:200;font-size:clamp(2rem,1.2rem + 2vw,3rem);color:var(--ed-ink)}
/* the view titles take focus programmatically so screen readers start there; they are not controls, so they draw no ring */
#legalTitle:focus,#abTitle:focus{outline:none}
.ltab{border-radius:var(--ed-pill)!important}

/* ---------- 19b. checkout: delivery choice, the full total, order tracking ---------- */
.co-ship{margin:.4rem 0 .9rem;padding:0;border:0;min-width:0}
.co-ship legend{padding:0;margin:0 0 .5rem;font:500 .86rem/1.3 var(--ed-sans);color:var(--ed-ink)}
.co-ship__opts{display:grid;gap:8px}
.co-opt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:10px 14px;
  border:1px solid var(--ed-line);border-radius:var(--ed-radius-sm);background:#FFFFFF;cursor:pointer;transition:border-color .2s,background .2s}
.co-opt:hover{border-color:rgba(15,30,46,.35)}
.co-opt:has(input:checked){border-color:var(--ed-ink);background:var(--ed-ivory)}
.co-opt:has(input:focus-visible){outline:2px solid var(--ed-ink);outline-offset:2px}
.co-opt input{width:18px;height:18px;margin:0;accent-color:var(--ed-ink)}
.co-opt__main{display:grid;gap:2px;min-width:0}
.co-opt__main b{font:500 .92rem/1.3 var(--ed-sans);color:var(--ed-ink)}
.co-opt__main small{font-size:.78rem;line-height:1.45;color:var(--ed-muted)}
.co-opt__price{font:400 .95rem/1 var(--ed-latin);color:var(--ed-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.co-addr[hidden]{display:none!important}
.field__opt{font-weight:400;color:var(--ed-muted);font-size:.78rem}
.co-sum{display:grid;gap:6px;margin:.6rem 0 .9rem;padding:12px 14px;border-radius:var(--ed-radius-sm);background:var(--ed-ivory);border:1px solid var(--ed-line)}
.co-sum__row{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;color:var(--ed-muted)}
.co-sum__row[hidden]{display:none}
.co-sum__row span:last-child{font-family:var(--ed-latin);font-variant-numeric:tabular-nums;color:var(--ed-ink)}
.co-sum__tot{margin-top:4px;padding-top:8px;border-top:1px solid var(--ed-line);color:var(--ed-ink);font-weight:500}
.co-sum__tot b{font:400 1.2rem/1 var(--ed-latin);font-variant-numeric:tabular-nums}
.checkout-consent--opt{margin-top:-.2rem}
.total-row__hint{display:block;font-size:.72rem;font-weight:400;color:var(--ed-muted);letter-spacing:0}
.odone__cta .btn[hidden]{display:none!important}
.odone__items .oi span:last-child{font-family:var(--ed-latin);font-variant-numeric:tabular-nums}
/* /track */
.track{max-width:640px;margin:0 auto;padding:clamp(2rem,5vw,3.4rem) var(--ed-gutter) 5rem}
.track h1{margin:0;font-family:var(--ed-serif);font-weight:200;font-size:clamp(2.2rem,1.4rem + 2.2vw,3.2rem);line-height:1.1;color:var(--ed-ink)}
.track h1:focus{outline:none}
.track__lead{margin:.7rem 0 1.6rem;max-width:52ch;font-weight:300;line-height:1.7;color:var(--ed-muted)}
.track__form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 14px;align-items:end}
.track__form .btn{grid-column:1 / -1;min-height:48px}
.track__result{margin-top:1.8rem;padding:clamp(18px,3vw,26px);border:1px solid var(--ed-line);border-radius:var(--ed-radius);background:#FFFFFF}
.track__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem}
.track__head h2{margin:0;font-family:var(--ed-serif);font-weight:300;font-size:1.5rem!important;line-height:1.25!important;color:var(--ed-ink)}
.track__badge{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:var(--ed-pill);background:var(--ed-ink);color:#FFFFFF;font:500 .78rem/1 var(--ed-sans)}
.track__steps{list-style:none;margin:1.3rem 0 0;padding:0;display:grid;gap:0}
.track__steps li{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:42px;color:var(--ed-muted)}
.track__steps li b{font-weight:400}
.track__steps li small{font-family:var(--ed-latin);font-size:.76rem;color:var(--ed-muted);font-variant-numeric:tabular-nums}
.track__dot{width:12px;height:12px;justify-self:center;border-radius:50%;border:1.5px solid rgba(15,30,46,.3);background:#FFFFFF}
.track__steps li:not(:last-child)::after{content:"";position:absolute;inset-inline-start:10px;top:28px;height:28px;width:1.5px;background:rgba(15,30,46,.14)}
.track__steps li.is-done{color:var(--ed-ink)}
.track__steps li.is-done .track__dot{background:var(--ed-bronze);border-color:var(--ed-bronze)}
.track__steps li.is-done:not(:last-child)::after{background:var(--ed-bronze)}
.track__steps li.is-now b{font-weight:500}
.track__steps li.is-now .track__dot{box-shadow:0 0 0 4px rgba(47,95,134,.18)}
.track__stopped{margin:1rem 0 0;color:var(--ed-ink);line-height:1.7}
.track__trk,.track__pickup{margin:1rem 0 0;padding:10px 12px;border-radius:var(--ed-radius-sm);background:var(--ed-ivory);font-size:.9rem;line-height:1.6;color:var(--ed-ink)}
.track__trk a{color:var(--ed-ink);text-decoration:underline;text-underline-offset:.3em}
.track__items{display:grid;gap:.45rem;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--ed-line)}
.track__items .oi{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;color:var(--ed-muted)}
.track__items .oi span:last-child{font-family:var(--ed-latin);font-variant-numeric:tabular-nums;color:var(--ed-ink)}
.track__items .oi--tot{margin-top:.2rem;padding-top:.55rem;border-top:1px solid var(--ed-line);color:var(--ed-ink);font-weight:500}
.track__items .oi--tot b{font:400 1.15rem/1 var(--ed-latin)}
.track__wa{margin-top:1.3rem;width:100%;justify-content:center}
@media (max-width:520px){ .track__form{grid-template-columns:1fr} }

/* ---------- 20. about view ---------- */
#aboutPage .about h1,#aboutPage .about h2{font-family:var(--ed-serif)!important;font-weight:200!important;letter-spacing:0!important;color:var(--ed-ink)}
#aboutPage .about__quote p{font-family:var(--ed-serif);font-weight:200}
#aboutPage .about__quote::before{color:var(--ed-bronze)}
#aboutPage .about__grid h2::before{background:var(--ed-ink)}
#aboutPage .vnum{color:var(--ed-bronze);font-family:var(--ed-latin)}
#aboutPage .about__cta p{color:var(--ed-muted)!important}   /* the closing signature line carried an inline light-on-light colour — AA fix */
#aboutPage img{border-radius:var(--ed-radius)}

/* ---------- 21. view states and small mechanics ---------- */
body.catalog-open main>*:not(#shop){visibility:hidden}
body.catalog-open .newsletter,body.catalog-open footer.site{visibility:hidden}
body::after{content:"";position:fixed;inset:0;z-index:9000;background:#FFFFFF;opacity:0;pointer-events:none;transition:opacity .16s var(--ed-ease)}
body.veil::after{opacity:.35;transition-duration:.14s}

/* ---------- 22. responsive ---------- */
@media (max-width:1100px){
  .ed-track{grid-auto-columns:calc((100% - 2 * var(--ed-gap)) / 3.2)}
  .ed-soon__row{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .ed-story__grid,.ed-club .newsletter__in,.ed-routine{grid-template-columns:1fr}
  .ed-sci__list{grid-template-columns:1fr}
  .ed-sci__list>div,.ed-sci__list>div:first-child{padding:1.3rem 0}
  .ed-sci__list>div+div{border-inline-start:0;border-top:1px solid var(--ed-line)}
  .ed-service .service__row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ed-service .service__row>div:nth-child(3){border-inline-start:0}
  .ed-service .service__row>div:nth-child(n+3){border-top:1px solid var(--ed-line)}
  .pp-hero__grid{grid-template-columns:1fr!important}
}
@media (max-width:860px){
  /* the film: the words above the formula, the actions at the foot of the screen */
  .hero.dr{--fs:1;--fx:0%;--bh:clamp(200px,31svh,280px)}
  .dr-film::after{background:linear-gradient(to bottom,rgba(6,11,18,.78) 0%,rgba(6,11,18,.25) 30%,transparent 46%,transparent 62%,rgba(6,11,18,.82) 100%)}
  .hero.dr .dr-word{font-size:15.5vw;line-height:.95;text-align:center}   /* Safari sets the wide cut a little wider than Chrome */
  .dr-word .wm{flex-direction:column;align-items:center;gap:.08em}
  .dr-word .wm__w+.wm__w{margin-inline-start:0}
  .dr-copy{top:calc(env(safe-area-inset-top,0px) + 86px);bottom:calc(env(safe-area-inset-bottom,0px) + 22px);translate:none;inset-inline:20px;width:auto;
    display:flex;flex-direction:column}
  .hero.dr h1.dr-title{font-size:clamp(1.9rem,9.6vw,2.9rem)!important}   /* two lines down to 320px */
  .hero.dr .dr-lede{display:none}
  .dr-acts{margin-top:auto;flex-direction:column;align-items:flex-start;gap:6px}
  /* the question and the recommendation sit at the foot of the screen, under the formula, like the actions they replace */
  .dr-copy.is-asking .dr-acts,.dr-copy.is-rec .dr-rec{margin-top:auto}
  .dr-copy.is-asking .dr-ask{font-size:1.7rem}
  .dr-opt{font-size:1rem;min-height:46px}
  .hero.dr .dr-rec__name{font-size:2.1rem!important}
  .hero.dr .dr-rec__why{font-size:.95rem;line-height:1.65}
  .dr-rec__row{margin-top:1.2rem;gap:6px 22px}
  .dr-cap{display:none}
  .dr-ctl{inset-inline-start:auto;inset-inline-end:20px;bottom:calc(env(safe-area-inset-bottom,0px) + 22px)}
  .dr-copy.is-asking~.dr-ctl,.dr-copy.is-rec~.dr-ctl{opacity:0;pointer-events:none}
}
@media (max-width:760px){
  .ed-track{grid-auto-columns:64%}
  .fx-nav{display:none}
  .ed-duo__grid{grid-template-columns:1fr}
  .ed-tile{min-height:clamp(480px,140vw,600px)}
  .ed-protocols .bundles__grid{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:82%;overflow-x:auto;
    scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
  .ed-protocols .bundles__grid::-webkit-scrollbar{display:none}
  .ed-protocols .bcard{scroll-snap-align:start}
  .ed-soon__row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ed-routine .rstep{grid-template-columns:auto minmax(0,1fr);row-gap:4px}
  .rprod{grid-column:2;justify-self:start;min-height:44px}
  footer.site nav a{min-height:44px}
  .ed-story__card{position:static;min-width:0;margin-top:.7rem;padding:0;background:none}
  .ed-story__fig{overflow:visible;aspect-ratio:auto;background:none}
  .ed-story__fig img{height:auto;border-radius:var(--ed-radius)}
  .catalog-page__bar .logo .wm,.ppage__bar .logo .wm{font-size:.76rem;letter-spacing:.14em}
}
@media (max-width:520px){
  #openFavs{display:none!important}   /* favourites stay one tap away in the menu */
}
@media (max-width:760px){
  /* iOS Safari zooms the page into any field set under 16px */
  input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}
}
@media (max-width:640px){
  /* the sticky mobile actions (style.css, #mobileCta) must not cover the last line of the page */
  .footer-legal,.footer-legal.zone-navy{padding-bottom:calc(1.1rem + 92px + env(safe-area-inset-bottom,0px))!important}
}
@media (max-width:360px){
  /* three 44px icons and the name must share 320px */
  header .wrap.nav{padding-inline:12px}
  .logo .wm{font-size:.72rem;letter-spacing:.12em}
  .logo span{font-size:.4rem;letter-spacing:.3em}
}
@media (hover:none){ .fx-nav{display:none} }
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .dr-curtain{display:none}
  .hero.dr .dr-word,.dr-opt,.dr-rec,.dr-copy.is-asking .dr-ask{animation:none}
  .dr-sweep::before{animation:none}
  .dr-copy,.dr-bottle,.dr-cap,.dr-ctl,.dr-film video,.dr-spray,header{transition:none}
  .rv{opacity:1;transform:none;transition:none}
  .fcard__photo img,.card__photo img,.ed-tile__photo img{transition:none}
  body::after{transition:none}
}

/* ---------- 21. the personal area (/account) and the club at the checkout ---------- */
.acct [hidden],.acct__form[hidden],.co-pts[hidden],.co-pts__hint[hidden],.acctbtn__dot[hidden]{display:none!important}
.acctbtn{text-decoration:none}
.acctbtn__dot{position:absolute;top:calc(50% - 13px);inset-inline-end:calc(50% - 13px);width:8px;height:8px;border-radius:50%;background:var(--ed-bronze);box-shadow:0 0 0 2px #FFFFFF}
header .nav > .acctbtn{display:inline-grid}   /* premium-v4.css hides every .nav > .searchbtn under 700px */
@media (max-width:520px){ header .nav > .acctbtn{display:none!important} }   /* like favourites: on a phone it waits one tap away in the menu (a fourth icon pushes the menu button off the bar) */
.acct{max-width:680px;margin:0 auto;padding:clamp(2rem,5vw,3.4rem) var(--ed-gutter) 5rem}
.acct h1{margin:0;font-family:var(--ed-serif);font-weight:200;font-size:clamp(2.2rem,1.4rem + 2.2vw,3.2rem);line-height:1.1;color:var(--ed-ink)}
.acct h1:focus{outline:none}
.acct__lead{margin:.7rem 0 1.6rem;max-width:52ch;font-weight:300;line-height:1.7;color:var(--ed-muted)}
.acct__form{display:grid;max-width:440px}
.acct__form .btn{min-height:48px}
.acct__sent{margin:0 0 1rem;line-height:1.7;color:var(--ed-ink)}
.acct__alt{margin:.7rem 0 0;color:var(--ed-muted);font-size:.9rem}
.acct__link{min-height:44px;padding:0 .2rem;border:0;background:none;color:var(--ed-ink);font:inherit;cursor:pointer;
  text-decoration:underline;text-underline-offset:.3em;text-decoration-color:rgba(15,30,46,.35)}
.acct__link:hover{text-decoration-color:currentColor}
.acct__head{margin-bottom:1.5rem}
.acct__head .acct__lead{margin:.45rem 0 0;font-family:var(--ed-latin);text-align:right}
.acct__back{width:100%;justify-content:center;margin:0 0 1.4rem;min-height:48px}
/* the balance: the one number this page is about */
.acct__pts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem 1.8rem;align-items:center;margin-bottom:1.8rem;
  padding:clamp(20px,3vw,28px);border-radius:var(--ed-radius);background:var(--ed-ivory)}
.acct__bal{display:grid;gap:.4rem;grid-row:span 2}
.acct__bal span{font-size:.84rem;color:var(--ed-muted)}
.acct__bal b{font:200 clamp(2.7rem,2rem + 2.2vw,3.7rem)/1 var(--ed-latin);font-variation-settings:"wdth" 112;color:var(--ed-bronze);font-variant-numeric:tabular-nums}
.acct__pts--wait .acct__bal b{color:var(--ed-muted)}
.acct__pts p{margin:0;max-width:44ch;line-height:1.7;font-weight:300;color:var(--ed-ink)}
.acct__exp{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem 1rem;font-size:.84rem;color:var(--ed-muted)}
.acct__exp b{font:500 .9rem/1 var(--ed-latin);color:var(--ed-ink)}
@media (max-width:520px){ .acct__pts{grid-template-columns:1fr} .acct__bal{grid-row:auto} }
.acct__sec{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--ed-line)}
.acct__sec h2{margin:0 0 1rem;font:300 1.35rem/1.3 var(--ed-serif)!important;color:var(--ed-ink)}
.acct__small{margin:.6rem 0 0;font-size:.84rem;line-height:1.6;color:var(--ed-muted)}
.acct__codes{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.acct__codes li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:12px 14px;
  border:1px dashed rgba(47,95,134,.5);border-radius:var(--ed-radius-sm);background:#FFFFFF}
.acct__codes li div{display:grid;gap:.25rem;min-width:0}
.acct__codes b{font:500 1.05rem/1.2 var(--ed-latin);letter-spacing:.08em;color:var(--ed-ink);text-align:right}
.acct__codes span{font-size:.84rem;color:var(--ed-muted)}
.acct__codes .btn{flex:none;min-height:40px;padding:0 16px!important}
.acct__orders{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.acct__order{padding:16px 18px;border:1px solid var(--ed-line);border-radius:var(--ed-radius);background:#FFFFFF}
.acct__ohead{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.acct__ohead b{font:500 1rem/1.2 var(--ed-latin);color:var(--ed-ink)}
.acct__ometa{margin:.45rem 0 0;font-size:.86rem;color:var(--ed-muted)}
.acct__num{font-family:var(--ed-latin);font-variant-numeric:tabular-nums;color:var(--ed-ink)}
.acct__oitems{margin:.35rem 0 0;font-size:.9rem;line-height:1.6;color:var(--ed-ink)}
.acct__oact{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin-top:.8rem}
.acct__oact .btn{min-height:40px;padding:0 18px!important}
.acct__empty{margin:0;line-height:1.7;color:var(--ed-muted)}
.acct__check{display:flex;align-items:flex-start;gap:.7rem;line-height:1.6;color:var(--ed-ink);cursor:pointer}
.acct__check input{flex:none;width:20px;height:20px;margin-top:.2rem;accent-color:var(--ed-ink)}
.acct__bday{margin-top:1.4rem}
.acct__k{display:block;margin-bottom:.5rem;font-size:.9rem;color:var(--ed-ink)}
.acct__k small{font-size:.8rem;color:var(--ed-muted)}
.acct__bdayrow{display:flex;flex-wrap:wrap;gap:.6rem}
.acct__sel{min-height:44px;padding:0 12px;border:1px solid var(--ed-line);border-radius:var(--ed-radius-sm);background:#FFFFFF;color:var(--ed-ink);font:inherit}
.acct__sel:focus-visible{outline:2px solid var(--ed-ink);outline-offset:1px}
.acct__out{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;margin-top:2.2rem;padding-top:1.5rem;border-top:1px solid var(--ed-line)}
.acct__out .btn{min-height:44px}
/* /join: the welcome code */
.acct__gift{display:grid;justify-items:start;gap:.45rem;margin:0 0 1.4rem;padding:clamp(20px,3vw,28px);border-radius:var(--ed-radius);background:var(--ed-ivory)}
.acct__gift span,.acct__gift small{font-size:.86rem;color:var(--ed-muted)}
.acct__gift b{font:300 2.3rem/1.1 var(--ed-latin);letter-spacing:.14em;color:var(--ed-bronze)}
.acct__gift .btn{margin-top:.4rem;min-height:40px}
#acNote .btn{min-height:48px}
/* points at the checkout */
.co-pts{margin:.2rem 0 .9rem;padding:12px 14px;border-radius:var(--ed-radius-sm);background:var(--ed-ivory)}
.co-pts__opt{display:flex;align-items:center;gap:.6rem;color:var(--ed-ink);cursor:pointer}
.co-pts__opt input{flex:none;width:20px;height:20px;accent-color:var(--ed-ink)}
.co-pts__opt b{font-family:var(--ed-latin);color:var(--ed-bronze)}
.co-pts small{display:block;margin:.3rem 0 0;padding-inline-start:calc(20px + .6rem);font-size:.8rem;color:var(--ed-muted)}
.co-pts__hint{margin:.1rem 0 .9rem;font-size:.84rem;line-height:1.6;color:var(--ed-muted)}
.co-pts__hint a{color:var(--ed-ink);text-decoration:underline;text-underline-offset:.3em}
/* the legacy sheets pad and rule every <section> (96px): the personal area's sections set their own */
#accountPage section{padding:0!important;margin:0!important;border:0!important;min-height:0!important;background:none!important}
#accountPage .acct__pts{margin:0 0 1.8rem!important;padding:clamp(20px,3vw,28px)!important;border-radius:var(--ed-radius)!important;background:var(--ed-ivory)!important}
#accountPage .acct__sec{margin:2rem 0 0!important;padding:1.5rem 0 0!important;border-top:1px solid var(--ed-line)!important}

/* ---------- 22. the personal area in Midnight (the approved design, Sept 2026) ----------
   Its own palette and faces: navy, gold, Frank Ruhl Libre for the lines, Heebo for reading, Cormorant Garamond for
   Latin and numbers (account.js fetches the three the first time the page opens). Everything is scoped to #accountPage;
   the legacy sheets pad every <section> and style every .btn, so the page's sections restate their box with !important. */
#accountPage{--mn0:#050b12;--mn1:#0b1821;--mn2:#163144;--mn-gold:#d7b98f;--mn-gold-l:#e8d0a8;--mn-gold-d:#b8985f;
  --mn-text:#e9e4da;--mn-muted:rgba(233,228,218,.66);--mn-line:rgba(215,185,143,.22);--mn-line2:rgba(215,185,143,.38);--mn-err:#ffb4a2;
  --mn-serif:"Frank Ruhl Libre","IBM Plex Sans Hebrew",serif;--mn-sans:Heebo,"IBM Plex Sans Hebrew",system-ui,sans-serif;
  --mn-latin:"Cormorant Garamond",Heebo,"IBM Plex Sans Hebrew",serif;--mn-gut:clamp(20px,5.5vw,40px);
  background:radial-gradient(ellipse 110% 520px at 72% 0,rgba(215,185,143,.13),transparent 70%) local,var(--mn0)!important;   /* the warm light at the top scrolls away with the page */
  color:var(--mn-text);font-family:var(--mn-sans);font-variant-numeric:lining-nums;color-scheme:dark}
#accountPage .ppage__bar{background:rgba(5,11,18,.84)!important;border-bottom:1px solid var(--mn-line)!important;color:var(--mn-text)}
#accountPage .ppage__bar .logo,#accountPage .ppage__bar .logo .wm{color:var(--mn-text)}
#accountPage .ppage__bar .logo span{color:var(--mn-muted)}
#accountPage .ppage__back{color:var(--mn-text)!important;border-color:var(--mn-line2)!important;font-family:var(--mn-sans)}
#accountPage .ppage__back:hover{border-color:var(--mn-gold)!important;color:var(--mn-gold-l)!important}
#accountPage :is(a,button,input,select,summary):focus-visible{outline:2px solid var(--mn-gold-l)!important;outline-offset:3px!important}
#accountPage .acct{max-width:none;padding:0}
#accountPage h1,#accountPage h2{letter-spacing:0!important;text-wrap:balance}
#accountPage h1:focus,#accountPage h2:focus,#accountPage [tabindex="-1"]:focus{outline:none}
.mn-eb{display:block;font:500 11.5px/1.3 var(--mn-latin);letter-spacing:.42em;text-transform:uppercase;color:var(--mn-gold);text-align:right}
.mn-kicker{font:500 13px/1.3 var(--mn-sans);color:var(--mn-gold)}
.mn-gold{color:var(--mn-gold)}
.mn-text{margin:0;max-width:52ch;font:300 15px/1.7 var(--mn-sans);color:var(--mn-muted)}
.mn-note{margin:0;font-size:12.5px;line-height:1.6;color:var(--mn-muted)}
.mn-self{justify-self:start}

/* buttons: gold for the one thing to do, a hairline for the rest */
.mn-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border:0;border-radius:999px;
  background:linear-gradient(135deg,#e8d0a8,#d7b98f 55%,#b8985f);color:#050b12;font:500 15px/1 var(--mn-sans);letter-spacing:.02em;text-decoration:none;
  cursor:pointer;box-shadow:0 10px 40px -12px rgba(215,185,143,.55);transition:filter .2s,transform .2s}
.mn-btn:hover{filter:brightness(1.07);color:#050b12}
.mn-btn:active{transform:translateY(1px)}
.mn-btn[disabled]{opacity:.6;cursor:progress}
.mn-btn--sm{min-height:44px;padding:0 20px;font-size:14px}
.mn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border:1px solid var(--mn-line2);border-radius:999px;
  background:transparent;color:var(--mn-text);font:400 14px/1 var(--mn-sans);text-decoration:none;cursor:pointer;transition:border-color .2s,color .2s}
.mn-ghost:hover{border-color:var(--mn-gold);color:var(--mn-gold-l)}
.mn-ghost--sm{padding:0 16px;font-size:13.5px}
.mn-link{min-height:44px;padding:0 2px;border:0;background:none;color:var(--mn-gold);font:400 14px/1.3 var(--mn-sans);cursor:pointer;
  text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(215,185,143,.45)}
.mn-link:hover{color:var(--mn-gold-l);text-decoration-color:currentColor}

.mn-lead{margin:0;max-width:46ch;font:300 15px/1.7 var(--mn-sans);color:var(--mn-muted)}
/* the opening: the next visit, the series or booking, over the drop (the approved mockup, Sept 2026). The hero, the band
   and the booking run the page's full width; the rest of the page keeps its 760px column. */
#accountPage #acIn,#accountPage #acNote,#accountPage .mn-col{max-width:760px;margin-inline:auto!important}
#accountPage .mn-hx{position:relative;isolation:isolate;overflow:hidden;display:flex!important;align-items:center;
  min-height:clamp(560px,calc(100svh - 72px),760px)!important;padding:clamp(56px,6vw,88px) clamp(24px,6.7vw,96px) clamp(48px,5vw,72px)!important;background:var(--mn0)!important}
.mn-hx__img{position:absolute;inset:0;z-index:-2}
.mn-hx__img img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:50% 58%}
#accountPage .mn-hx::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(to left,rgba(5,11,18,.95) 0%,rgba(5,11,18,.84) 40%,rgba(5,11,18,.28) 100%)}
.mn-hx__in{display:flex;flex-direction:column;align-items:flex-start;gap:28px;width:100%;max-width:640px}
#accountPage .mn-hx h1{margin:0!important;font:300 clamp(2rem,1.2rem + 2.6vw,3.625rem)/1.1 var(--mn-serif)!important;color:var(--mn-text)!important}
.mn-hx .mn-lead{max-width:52ch;font-size:clamp(15.5px,.25vw + 14.6px,17px);line-height:1.75}
.mn-lead--on{color:var(--mn-text)}
.mn-hx .mn-note{max-width:58ch;font-size:clamp(13.5px,.1vw + 13.1px,14.5px);line-height:1.7}
#accountPage :is(.mn-hx,.mn-band,.mn-bk) a:not([class]){color:var(--mn-gold);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(215,185,143,.45)}
#accountPage :is(.mn-hx,.mn-band,.mn-bk) a:not([class]):hover{color:var(--mn-gold-l);text-decoration-color:currentColor}
.mn-hx__cart{margin:0;font-size:13.5px;color:var(--mn-muted)}
.mn-hx__rule{width:100%;padding-top:18px;border-top:1px solid var(--mn-line);color:var(--mn-text)}
/* the day of the visit: its number outlined in gold, the month, the time */
.mn-when{display:flex;align-items:flex-end;gap:clamp(16px,2vw,28px);margin:0}
.mn-when__d{font:300 clamp(140px,6.5vw + 136px,230px)/.78 var(--mn-latin);color:var(--mn-gold)}
@supports (-webkit-text-stroke:1px black){ .mn-when__d{color:transparent;-webkit-text-stroke:1px var(--mn-gold)} }
.mn-when__s{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding-bottom:clamp(8px,1vw,14px)}
.mn-when__m{font:300 clamp(26px,.85vw + 22.7px,38px)/1.1 var(--mn-serif);color:var(--mn-text)}
.mn-when__t{font:400 clamp(32px,1vw + 28px,46px)/1 var(--mn-latin);letter-spacing:.04em;color:var(--mn-gold)}
.mn-when__w{font-size:clamp(14px,.15vw + 13.4px,16px);line-height:1.4;color:var(--mn-muted)}
.mn-what{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.mn-what__n{margin:0;font:300 clamp(21px,.5vw + 19px,28px)/1.25 var(--mn-serif);color:var(--mn-text)}
.mn-meta{display:flex;flex-wrap:wrap;margin:0;font-size:clamp(14px,.1vw + 13.6px,15px);line-height:1.5;color:var(--mn-muted)}
.mn-meta span + span{margin-inline-start:18px;padding-inline-start:18px;border-inline-start:1px solid var(--mn-line2)}
.mn-flag{margin:2px 0 0;padding:4px 12px;border-radius:999px;background:rgba(215,185,143,.12);color:var(--mn-gold-l);font-size:12.5px}
.mn-acts{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.mn-ico{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.mn-confirm{display:grid;gap:10px;width:100%;max-width:520px;padding:14px 16px;border:1px solid var(--mn-line2);border-radius:12px;background:rgba(5,11,18,.6)}
.mn-confirm p{margin:0;font-size:14.5px;line-height:1.6;color:var(--mn-text)}
/* the series: a dot for each treatment of the punch card */
.mn-dots{display:inline-flex;flex-wrap:wrap;gap:8px}
.mn-dots i{display:block;width:12px;height:12px;box-sizing:border-box;border-radius:50%;border:1px solid rgba(215,185,143,.45)}
.mn-dots i.on{border:0;background:var(--mn-gold)}
.mn-dots i.nx{border-color:var(--mn-gold)}
/* the nearest free times, one tap from booking */
.mn-quick{display:flex;flex-direction:column;gap:12px;width:100%;max-width:520px}
#accountPage .mn-quick__h{margin:0!important;font:400 15px/1.4 var(--mn-sans)!important;color:var(--mn-muted)!important}
.mn-quick__l{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mn-slot{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:8px 22px;border:1px solid var(--mn-line2);border-radius:999px;
  background:rgba(5,11,18,.5);color:var(--mn-text);font:inherit;text-align:start;cursor:pointer;transition:border-color .2s,background .2s}
.mn-slot:hover{border-color:var(--mn-gold);background:rgba(215,185,143,.08)}
.mn-slot__d{display:flex;flex-direction:column;gap:2px}
.mn-slot__d b{font:400 15.5px/1.35 var(--mn-sans)}
.mn-slot__d small{font-size:13px;color:var(--mn-muted)}
.mn-slot__t{flex:none;font:400 22px/1 var(--mn-latin);color:var(--mn-gold)}
.mn-ghost--wide{min-height:48px;padding:0 26px}
@keyframes mnRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.mn-hx--rise .mn-hx__in{animation:mnRise .9s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--rise,0ms)}
@media (prefers-reduced-motion:reduce){ .mn-hx--rise .mn-hx__in{animation:none} .mn-slot{transition:none} }
@media (max-width:760px){
  #accountPage .mn-hx{align-items:flex-end;min-height:calc(100svh - 62px)!important;padding:120px 24px 34px!important}
  #accountPage .mn-hx::before{background:linear-gradient(to top,rgba(5,11,18,.97) 0%,rgba(5,11,18,.9) 52%,rgba(5,11,18,.35) 100%)}
  .mn-hx__img{bottom:auto;height:66%;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}   /* the drop above the words, fading out */
  .mn-hx__img img{object-position:50% 64%}
  .mn-hx__in{gap:18px}
  .mn-hx .mn-acts{width:100%}
  .mn-hx .mn-acts > :is(.mn-btn,.mn-ghost--wide){flex:1 1 100%}
  .mn-acts--visit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .mn-acts--visit > :is(.mn-btn,.mn-link){grid-column:1/-1}
  .mn-acts--visit > .mn-link{justify-self:start}
  .mn-acts--one > .mn-ghost{grid-column:1/-1}
  .mn-meta span + span{margin-inline-start:12px;padding-inline-start:12px}
  .mn-meta .mn-meta__place{flex-basis:100%;margin:2px 0 0!important;padding:0!important;border:0!important}   /* the address on its own line */
}
@media (max-width:360px){ .mn-acts--visit{grid-template-columns:minmax(0,1fr)} }

/* the membership card */
#accountPage .mn-cardwrap{display:grid;gap:12px;padding:0 var(--mn-gut) 34px!important}
.mn-card{position:relative;isolation:isolate;overflow:hidden;min-height:222px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;
  padding:22px 22px 20px;border:1px solid var(--mn-line2);border-radius:16px;
  background:radial-gradient(90% 120% at 100% 0%,rgba(215,185,143,.22),transparent 55%),linear-gradient(160deg,#0f2233 0%,#0b1821 45%,#050b12 100%);
  box-shadow:0 30px 60px -32px rgba(0,0,0,.85),inset 0 1px 0 rgba(232,208,168,.12)}
.mn-card::before,.mn-card::after{content:"";position:absolute;z-index:-1;border-radius:50%;border:1px solid rgba(215,185,143,.14);pointer-events:none}
.mn-card::before{left:-60px;bottom:-80px;width:240px;height:240px}
.mn-card::after{left:-30px;bottom:-50px;width:180px;height:180px;border-color:rgba(215,185,143,.1)}
.mn-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.mn-card__top > div{display:grid;gap:4px;min-width:0}
.mn-card__tier{font:500 12px/1.2 var(--mn-latin);letter-spacing:.42em;color:var(--mn-gold);text-align:right}
.mn-card__name{font:300 22px/1.3 var(--mn-serif);color:var(--mn-text);overflow-wrap:anywhere}
.mn-mono{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(215,185,143,.6);
  box-shadow:inset 0 0 0 3px #0b1821,inset 0 0 0 4px rgba(215,185,143,.35);font:500 14px/1 var(--mn-latin);letter-spacing:.08em;color:var(--mn-gold)}
.mn-card__mid{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 14px}
#accountPage .acct__bal{display:grid;gap:2px}
#accountPage .acct__bal span,.mn-card__since span{font-size:12px;color:var(--mn-muted)}
#accountPage .acct__bal b{font:400 54px/.95 var(--mn-latin);font-variant-numeric:lining-nums tabular-nums;color:var(--mn-gold-l);text-align:right}
#accountPage .acct__bal--wait b{color:var(--mn-muted)}
.mn-cur{font:300 .4em/1 var(--mn-sans);margin-inline-end:.14em;vertical-align:1.1em;color:var(--mn-gold)}
.mn-card__since{display:grid;gap:4px}
.mn-card__since b{font:300 22px/1.2 var(--mn-serif);color:var(--mn-gold-l)}
.mn-card__side{display:grid;justify-items:end;gap:2px;padding-bottom:6px;font-size:12px;color:var(--mn-muted)}
.mn-card__foot{display:grid;gap:7px;font-size:12.5px;line-height:1.5;color:var(--mn-muted)}
.mn-card__foot b{font:500 12px/1 var(--mn-latin);letter-spacing:.2em;color:var(--mn-text)}
.mn-bar{height:3px;border-radius:999px;background:rgba(215,185,143,.18);overflow:hidden}
.mn-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(270deg,#b8985f,#e8d0a8)}
.mn-ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--mn-line);border-radius:12px;overflow:hidden}
.mn-ladder li{display:grid;gap:2px;align-content:start;padding:10px 12px;border-inline-start:1px solid var(--mn-line)}
.mn-ladder li:first-child{border-inline-start:0}
.mn-ladder b{font:500 12px/1.3 var(--mn-latin);letter-spacing:.24em;color:var(--mn-muted);text-align:right}
.mn-ladder span{font-size:13px;color:var(--mn-text)}
.mn-ladder small{font-size:12px;color:var(--mn-muted)}
.mn-ladder .is-on{background:rgba(215,185,143,.08)}
.mn-ladder .is-on b{color:var(--mn-gold)}

/* sections: a hairline inset to the text, then the content */
#accountPage .mn-sec{display:grid;gap:14px;align-content:start;padding:32px var(--mn-gut)!important;margin:0!important;border:0!important;
  background:linear-gradient(var(--mn-line),var(--mn-line)) 50% 0/calc(100% - 2 * var(--mn-gut)) 1px no-repeat!important}
#accountPage .mn-h{margin:0!important;font:300 28px/1.2 var(--mn-serif)!important;color:var(--mn-text)!important}
#accountPage .mn-h--sm{font-size:22px!important}
.mn-headrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px}

.mn-codes{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mn-codes li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px dashed rgba(215,185,143,.55);border-radius:12px}
.mn-codes li div{display:grid;gap:3px;min-width:0}
.mn-codes b{font:500 18px/1.2 var(--mn-latin);letter-spacing:.14em;color:var(--mn-gold-l);text-align:right}
.mn-codes span{font-size:12.5px;line-height:1.5;color:var(--mn-muted)}
.mn-codes .mn-ghost{flex:none}

/* a promotion: the product in an arch, the words below it */
#accountPage .mn-promo{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 112px;grid-template-areas:"kick art" "body body";gap:16px 14px;
  margin:4px var(--mn-gut) 32px!important;padding:22px!important;border:1px solid var(--mn-line)!important;border-radius:16px;
  background:radial-gradient(70% 80% at 10% 14%,rgba(215,185,143,.24),transparent 62%),linear-gradient(165deg,#10263a 0%,#0b1821 48%,#050b12 100%)!important}
.mn-promo__kick{grid-area:kick;align-self:end;display:grid;gap:8px}
.mn-promo .mn-eb{letter-spacing:.3em}
.mn-until{font-size:12.5px;color:var(--mn-muted)}
.mn-promo__art{grid-area:art;justify-self:end}
.mn-arch{display:block;width:112px;aspect-ratio:4/5;overflow:hidden;border-radius:999px 999px 8px 8px;border:1px solid rgba(232,208,168,.5);background:#FFFFFF;
  box-shadow:0 24px 40px -18px rgba(0,0,0,.75)}
.mn-arch img{display:block;width:100%;height:100%;object-fit:cover}
.mn-seal{display:grid;place-items:center;width:88px;aspect-ratio:1;margin:6px 12px;border-radius:50%;border:1px solid rgba(215,185,143,.55);
  box-shadow:inset 0 0 0 5px #0d1d2b,inset 0 0 0 6px rgba(215,185,143,.3),0 0 0 14px rgba(215,185,143,.05);
  font:400 26px/1 var(--mn-latin);letter-spacing:.08em;color:var(--mn-gold)}
.mn-promo__body{grid-area:body;display:grid;gap:10px}
#accountPage .mn-promo h2{margin:0!important;font:300 26px/1.2 var(--mn-serif)!important;color:var(--mn-text)!important}
.mn-promo p{margin:0;font-size:14px;line-height:1.65;color:var(--mn-muted)}
.mn-promo__cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px}
.mn-code{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:1px dashed rgba(215,185,143,.6);border-radius:999px;
  font:500 15px/1 var(--mn-latin);letter-spacing:.18em;color:var(--mn-gold-l)}
@media (min-width:600px){
  #accountPage .mn-promo{grid-template-columns:minmax(0,1fr) 150px;grid-template-areas:"kick art" "body art";padding:28px!important}
  .mn-arch{width:150px}
  .mn-promo__art{align-self:center}
}

/* the skin profile */
.mn-skin{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--mn-line)}
.mn-skin div{display:grid;gap:4px;align-content:start;padding:14px 0;border-bottom:1px solid var(--mn-line)}
.mn-skin div:nth-child(odd){padding-inline-end:12px;border-inline-end:1px solid var(--mn-line)}
.mn-skin div:nth-child(even){padding-inline-start:14px}
.mn-skin dt{font-size:12px;color:var(--mn-muted)}
.mn-skin dd{margin:0;font-size:15px;line-height:1.45;color:var(--mn-text)}

/* my ritual */
.mn-rit{list-style:none;margin:0;padding:0;display:grid}
.mn-rit li{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--mn-line)}
.mn-rit li:first-child{padding-top:2px}
.mn-rit li:last-child{padding-bottom:2px;border-bottom:0}
.mn-rit__ph{flex:none;width:68px;aspect-ratio:4/5;overflow:hidden;border-radius:4px;border:1px solid rgba(232,208,168,.35);background:#FFFFFF}
.mn-rit__ph img{display:block;width:100%;height:100%;object-fit:cover}
.mn-rit__t{flex:1;min-width:0;display:grid;gap:3px}
.mn-rit__t b{font:500 17px/1.25 var(--mn-latin);letter-spacing:.02em;color:var(--mn-text);text-align:right}
.mn-rit__t span{font-size:13px;line-height:1.45;color:var(--mn-muted)}
.mn-rit__t .is-soon{color:var(--mn-gold-l)}
.mn-rit__t small{font-size:12px;color:var(--mn-muted)}
.mn-rit .mn-ghost{flex:none}
@media (max-width:380px){ .mn-rit li{flex-wrap:wrap} .mn-rit .mn-ghost{margin-inline-start:84px} }

/* orders: one line each, opened for the items and the actions */
.mn-orders{list-style:none;margin:0;padding:0}
.mn-orders > li{border-bottom:1px solid var(--mn-line)}
.mn-orders > li:last-child{border-bottom:0}
.mn-order summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 0;cursor:pointer}
.mn-order summary::-webkit-details-marker{display:none}
.mn-order summary::after{content:"";flex:none;width:7px;height:7px;margin:0 4px 4px 2px;border-left:1.5px solid var(--mn-gold);border-bottom:1.5px solid var(--mn-gold);
  transform:rotate(-45deg);transition:transform .2s}
.mn-order[open] summary::after{transform:rotate(135deg);margin-bottom:-4px}
.mn-order__a,.mn-order__b{display:grid;gap:3px}
.mn-order__a{flex:1;min-width:0}
.mn-order__b{justify-items:end}
.mn-order__a b{font:500 16px/1.2 var(--mn-latin);letter-spacing:.06em;color:var(--mn-text);text-align:right}
.mn-order__b b{font:500 17px/1.2 var(--mn-latin);color:var(--mn-gold)}
.mn-order small{font-size:12.5px;color:var(--mn-muted)}
.mn-order__in{display:grid;gap:8px;padding:0 0 14px}
.mn-order__in p{margin:0;font-size:14px;line-height:1.6;color:var(--mn-text)}
.mn-order__act{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}

/* the details and the address book: the raised part of the page */
#accountPage .mn-det{background:var(--mn1)!important;border-top:1px solid var(--mn-line)!important}
#accountPage .mn-book{border-top:0!important;padding-top:8px!important}
.mn-form{display:grid;gap:18px}
.mn-field{display:grid;gap:6px;min-width:0;margin:0;padding:0;border:0}
.mn-field label,.mn-label{padding:0;font-size:13px;line-height:1.4;color:var(--mn-muted)}
.mn-field small,.mn-label small{font-size:12px}
#accountPage .mn-field input:not([type="checkbox"]):not([type="radio"]),#accountPage .mn-sel,#accountPage .mn-in{width:100%;min-height:48px;margin:0;padding:0 16px!important;border:1px solid var(--mn-line2)!important;border-radius:999px!important;
  background:var(--mn0)!important;color:var(--mn-text)!important;font:300 16px/1.2 var(--mn-sans)!important;box-shadow:none!important}
#accountPage .mn-field input:not([type="checkbox"]):not([type="radio"]):focus,#accountPage .mn-sel:focus,#accountPage .mn-in:focus{border-color:var(--mn-gold)!important}
#accountPage .mn-ta{min-height:88px!important;padding:12px 16px!important;border-radius:16px!important;line-height:1.6!important;resize:vertical}
#accountPage .mn-sel{-webkit-appearance:none;appearance:none;padding-inline-end:38px!important;
  background:var(--mn0) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23d7b98f' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat left 16px center/10px 6px!important}
.mn-sel{flex:1 1 92px}
.mn-sel--wide{flex:2 1 150px}
.mn-ro{display:flex;align-items:center;min-height:48px;padding:0 16px;border:1px solid rgba(215,185,143,.18);border-radius:999px;font:300 16px/1.2 var(--mn-sans);color:var(--mn-muted);overflow-wrap:anywhere}
.mn-ro[dir="ltr"]{justify-content:flex-end}
.mn-hint{font-size:12.5px;line-height:1.55;color:var(--mn-muted)}
.mn-err{display:none;font-size:12.5px;color:var(--mn-err)}
.mn-field.invalid .mn-err{display:block}
#accountPage .mn-field.invalid :is(input,textarea){border-color:var(--mn-err)!important}
.mn-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.mn-row2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:12px}
.mn-check{display:flex;align-items:center;gap:12px;min-height:44px;font-size:15px;line-height:1.4;color:var(--mn-text);cursor:pointer}
.mn-check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--mn-gold)}
.mn-form .mn-btn{margin-top:4px}
.mn-addrs{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mn-addr{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:12px 16px;border:1px solid var(--mn-line2);border-radius:12px}
.mn-addr > div:first-child{display:grid;gap:2px;min-width:0}
.mn-addr b{font:400 15px/1.45 var(--mn-sans);color:var(--mn-text)}
.mn-addr small{font-size:12.5px;color:var(--mn-muted)}
.mn-tag{color:var(--mn-gold)}
.mn-addr__act{display:flex;flex-wrap:wrap;gap:0 14px}
.mn-aform{display:grid;gap:14px;padding:16px;border:1px solid var(--mn-line2);border-radius:12px;background:rgba(5,11,18,.55)}
@media (max-width:360px){ .mn-row2{grid-template-columns:1fr} }
.mn-out{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 20px;padding:18px var(--mn-gut) calc(30px + env(safe-area-inset-bottom,0px));background:var(--mn1);border-top:1px solid var(--mn-line)}
.mn-out .mn-link{color:var(--mn-muted);text-decoration-color:rgba(233,228,218,.3)}
@media (min-width:800px){
  #accountPage .mn-det{margin:10px var(--mn-gut) 0!important;border:1px solid var(--mn-line)!important;border-bottom:0!important;border-radius:16px 16px 0 0}
  #accountPage .mn-book{margin-top:0!important;border-top:0!important;border-radius:0}
  .mn-out{margin:0 var(--mn-gut) 56px;border:1px solid var(--mn-line);border-radius:0 0 16px 16px}
}

/* signing in, /join and /unsub in the same palette */
#accountPage #acIn,#accountPage #acNote{display:grid;gap:12px;align-content:start;padding:48px var(--mn-gut) 72px!important}
#accountPage #acIn h1,#accountPage #acNote h1{margin:0;font:300 clamp(2.2rem,1.9rem + 1.6vw,3rem)/1.12 var(--mn-serif)!important;color:var(--mn-text)!important}
#accountPage .acct__lead{margin:0 0 12px;max-width:46ch;font:300 15px/1.7 var(--mn-sans);color:var(--mn-muted)}
#accountPage .acct__sent{margin:0 0 12px;line-height:1.7;color:var(--mn-text)}
#accountPage .acct__form{gap:6px;max-width:440px}
#accountPage .field{margin-bottom:10px}
#accountPage .field label{color:var(--mn-muted)!important;font:400 13px/1.3 var(--mn-sans)!important}
#accountPage .field input{min-height:52px;padding:0 18px!important;border:1px solid var(--mn-line2)!important;border-radius:999px!important;
  background:var(--mn1)!important;color:var(--mn-text)!important;font:300 17px/1.2 var(--mn-sans)!important}
#accountPage .field input:focus{outline:2px solid var(--mn-gold-l)!important;outline-offset:2px!important;border-color:var(--mn-gold)!important}
#accountPage .field .err{color:var(--mn-err)!important}
#accountPage .field.invalid input{border-color:var(--mn-err)!important;background:var(--mn1)!important}
#accountPage .acct__alt{margin:10px 0 0;color:var(--mn-muted)}
#accountPage .acct__link{color:var(--mn-gold);text-decoration-color:rgba(215,185,143,.45)}
#accountPage .acct__gift{display:grid;justify-items:start;gap:8px;margin:0 0 16px;padding:24px;border:1px dashed rgba(215,185,143,.55);border-radius:16px;background:var(--mn1)}
#accountPage .acct__gift span,#accountPage .acct__gift small{font-size:13px;color:var(--mn-muted)}
#accountPage .acct__gift b{font:500 2.4rem/1.1 var(--mn-latin);letter-spacing:.16em;color:var(--mn-gold-l)}
#acNote .mn-btn,#acNote .mn-ghost{justify-self:start}
#accountPage .acct__ez{max-width:440px;margin:14px 0 0;padding-top:16px;border-top:1px solid var(--mn-line);font-size:14px;line-height:1.7;color:var(--mn-muted)}
@media (prefers-reduced-motion:reduce){ .mn-btn,.mn-ghost,.mn-order summary::after{transition:none} }

/* the clinic (Easybizy), under the hero: the band (the series, the gift from a treatment, the visits after the next), then
   booking in three steps: side by side from 1000px, one screen each below it (the page shows only the booking then) */
#accountPage .mn-band{--bgap:clamp(40px,6.7vw,96px);padding:clamp(48px,6.7vw,96px) clamp(24px,6.7vw,96px)!important;background:var(--mn1)!important;border-bottom:1px solid var(--mn-line)!important}
.mn-band__in{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px var(--bgap);max-width:1248px;margin:0 auto}
.mn-band__in[data-n="1"]{grid-template-columns:minmax(0,680px)}
#accountPage .mn-bx{position:relative;display:flex!important;flex-direction:column;align-items:flex-start;gap:20px;padding:0!important}
.mn-band__in > .mn-bx:nth-child(2n)::before{content:"";position:absolute;inset-block:0;inset-inline-start:calc(var(--bgap) / -2);width:1px;background:var(--mn-line)}
#accountPage .mn-hx2{margin:0!important;font:300 clamp(28px,1.1vw + 22px,40px)/1.15 var(--mn-serif)!important;color:var(--mn-text)!important}
.mn-bx .mn-text{max-width:46ch;font-size:16px;line-height:1.75;color:var(--mn-text)}
.mn-bx__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0;font-size:16px;color:var(--mn-text)}
.mn-bx__code{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
.mn-gift{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 26px;border:1px dashed rgba(215,185,143,.5);
  font:400 clamp(21px,.4vw + 19.5px,26px)/1 var(--mn-latin);letter-spacing:.22em;color:var(--mn-gold)}
.mn-more{list-style:none;margin:0;padding:0;display:grid;width:100%;border-top:1px solid var(--mn-line)}
.mn-more li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:12px 0;border-bottom:1px solid var(--mn-line)}
.mn-more li > div:first-child{display:grid;gap:2px;min-width:0}
.mn-more b{font:400 15px/1.4 var(--mn-sans);color:var(--mn-text)}
.mn-more span{font-size:13.5px;color:var(--mn-muted)}
.mn-more__act{display:flex;gap:0 14px}
.mn-more .mn-confirm{flex-basis:100%}
@media (max-width:760px){
  .mn-band__in,.mn-band__in[data-n="1"]{grid-template-columns:minmax(0,1fr);gap:0}
  .mn-band__in > .mn-bx:nth-child(2n)::before{content:none}
  #accountPage .mn-band__in > .mn-bx + .mn-bx{margin-top:30px!important;padding-top:30px!important;border-top:1px solid var(--mn-line)!important}
  .mn-bx__code{width:100%}
  .mn-bx__code .mn-gift{flex:1 1 auto}
}

#accountPage .mn-bk{padding:clamp(56px,6.7vw,96px) clamp(24px,6.7vw,96px) clamp(64px,7.6vw,110px)!important;scroll-margin-top:72px}
.mn-bk__in{display:flex;flex-direction:column;gap:44px;max-width:1248px;margin:0 auto}
.mn-bk__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 40px}
.mn-bk__ttl{display:flex;flex-direction:column;gap:16px}
#accountPage .mn-bk #acBkT{font-size:clamp(34px,1.2vw + 28.7px,46px)!important;line-height:1.12}
.mn-bk__src{max-width:42ch;font-size:15px}
.mn-bk__back,.mn-bk__teaser,.mn-steps,.mn-bk__bar,.mn-step__q,.mn-bk__src2{display:none}
.mn-bk__grid{display:grid;grid-template-columns:1.15fr 1fr .9fr;gap:64px;align-items:start}
.mn-bk__col{display:flex;flex-direction:column;gap:22px;min-width:0}
#accountPage .mn-step{display:flex;align-items:baseline;gap:10px;margin:0!important;font:400 15px/1.3 var(--mn-sans)!important;color:var(--mn-muted)!important}
.mn-step__n{font:400 18px/1 var(--mn-latin);color:var(--mn-gold)}
.mn-hint2{margin:0;padding:18px 0 0;border-top:1px solid var(--mn-line);font-size:14px;line-height:1.7;color:var(--mn-muted)}
.mn-link--in{min-height:0;padding:0;font-size:inherit;vertical-align:baseline}
/* 1: the treatments, each with its minutes and price; the chosen one opens its description as the clinic wrote it */
.mn-tl{border-top:1px solid var(--mn-line)}
.mn-tr{border-bottom:1px solid var(--mn-line)}
.mn-tr > button{display:flex;align-items:baseline;gap:16px;width:100%;min-height:62px;padding:18px 0;border:0;background:none;color:var(--mn-text);font:inherit;text-align:start;cursor:pointer}
.mn-tr__n{flex:1 1 auto;min-width:0;font:300 21px/1.3 var(--mn-serif);transition:color .2s}
.mn-tr__m{flex:none;font-size:14px;color:var(--mn-muted)}
.mn-tr__p{flex:none;min-width:56px;text-align:left;font:400 20px/1 var(--mn-latin);color:var(--mn-gold)}
.mn-tr > button:hover .mn-tr__n{color:var(--mn-gold-l)}
.mn-tr.is-on{margin:0 -20px;padding:0 20px;background:var(--mn1)}
.mn-tr.is-on .mn-tr__n{color:var(--mn-gold)}
.mn-tr.is-on > button{padding-bottom:10px}
.mn-tr__d{margin:0;padding:0 0 20px;font-size:14.5px;line-height:1.75;color:var(--mn-muted);white-space:pre-line}
:is(.mn-tr__p,.mn-sum__p,.mn-bk__bar) .mn-cur{font-size:.66em;vertical-align:.14em;margin-inline-end:.08em}
/* 2: the days that have free times, then that day's times */
.mn-month{margin:0;font:300 24px/1.2 var(--mn-serif);color:var(--mn-text)}
.mn-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;border-bottom:1px solid var(--mn-line)}
.mn-days button{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:64px;padding:12px 0;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;
  background:none;color:var(--mn-text);font:inherit;cursor:pointer}
.mn-days button span{font-size:13px;color:var(--mn-muted)}
.mn-days button b{font:400 24px/1 var(--mn-latin)}
.mn-days button:hover b{color:var(--mn-gold-l)}
.mn-days [aria-pressed="true"]{border-bottom-color:var(--mn-gold)}
.mn-days [aria-pressed="true"] :is(span,b){color:var(--mn-gold)}
.mn-dayname{margin:0;font-size:15px;color:var(--mn-text)}
.mn-times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mn-times button{min-height:46px;padding:0 10px;border:1px solid var(--mn-line2);border-radius:999px;background:transparent;color:var(--mn-text);
  font:400 18px/1 var(--mn-latin);cursor:pointer;transition:border-color .2s,background .2s}
.mn-times button:hover{border-color:var(--mn-gold)}
.mn-times [aria-pressed="true"]{border-color:var(--mn-gold);background:var(--mn-gold);color:var(--mn0)}
/* 3: what is booked, a note to the clinic, the policy */
.mn-bk__col--sum{padding:32px 30px;border:1px solid var(--mn-line);background:var(--mn1)}
.mn-sum{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.mn-sum p{margin:0}
.mn-sum__n{font:300 24px/1.25 var(--mn-serif);color:var(--mn-text)}
.mn-sum__w{font-size:16px;color:var(--mn-text)}
.mn-sum__m{font-size:14.5px;color:var(--mn-muted)}
.mn-sum__p{font:400 22px/1.2 var(--mn-latin);color:var(--mn-gold)}
#accountPage .mn-bk .mn-ta{min-height:96px!important;border-radius:10px!important;background:transparent!important}
.mn-bk .mn-label{font-size:14.5px;color:var(--mn-text)}
.mn-btn--full{width:100%}
.mn-bk__keep{align-self:flex-start}
/* booked */
.mn-done{display:flex;flex-direction:column;align-items:flex-start;gap:18px;max-width:560px}
.mn-okmark{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid var(--mn-gold);border-radius:50%;color:var(--mn-gold)}
.mn-okmark .mn-ico{width:24px;height:24px}
#accountPage .mn-done__h{margin:0!important;font:300 34px/1.15 var(--mn-serif)!important;color:var(--mn-text)!important}
.mn-text--on{color:var(--mn-text)}
.mn-when--sm{gap:16px;width:100%;padding:18px 0;border-top:1px solid var(--mn-line);border-bottom:1px solid var(--mn-line)}
.mn-when--sm .mn-when__d{font-size:96px}
.mn-when--sm .mn-when__s{flex:1 1 auto;gap:4px;padding-bottom:4px}
.mn-when--sm .mn-when__m{font-size:22px}
.mn-when--sm .mn-when__w{font-size:14px}
.mn-when--sm .mn-when__t{flex:none;padding-bottom:4px;font-size:30px}
.mn-hd{display:flex;flex-direction:column;gap:10px;width:100%;padding:22px 22px 24px;background:var(--mn2)}
.mn-hd .mn-eb{color:#9fc3d6}
#accountPage .mn-hd h4{margin:0!important;font:300 22px/1.25 var(--mn-serif)!important;color:#dceaf2!important}
.mn-hd p{margin:0;font-size:14.5px;line-height:1.75;color:var(--mn-text)}
@media (max-width:999px){
  #accountPage .mn-bk{padding:44px var(--mn-gut) 52px!important}
  .mn-bk__in{gap:20px}
  .mn-bk__src{display:none}
  #accountPage .mn-bk:not(.is-open) :is(.mn-steps,.mn-bk__grid,.mn-bk__bar,.mn-bk__keep){display:none}
  .mn-bk:not(.is-open) .mn-bk__teaser{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
  /* open, it is the page: the other parts step aside until it closes */
  #acMe.is-bk > :not(#acBk){display:none!important}
  #accountPage .mn-bk.is-open{display:flex!important;flex-direction:column;min-height:calc(100svh - 62px)!important;padding:0!important}
  .mn-bk.is-open .mn-bk__in{flex:1 1 auto;gap:0;width:100%}
  .mn-bk.is-open .mn-bk__head{flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:8px;min-height:62px;padding:0 12px;border-bottom:1px solid var(--mn-line)}
  .mn-bk.is-open .mn-bk__back{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:0;border:0;background:none;color:var(--mn-text);cursor:pointer}
  .mn-bk.is-open .mn-bk__ttl .mn-eb{display:none}
  #accountPage .mn-bk.is-open #acBkT{font-size:20px!important;line-height:1.3}
  .mn-bk.is-open .mn-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:16px 24px;font-size:13px;color:var(--mn-muted)}
  .mn-steps li{display:flex;flex-direction:column;gap:8px;min-width:0}
  .mn-steps li::before{content:"";height:2px;background:var(--mn-line)}
  .mn-steps li.is-done::before{background:var(--mn-gold-d)}
  .mn-steps li.is-on{color:var(--mn-gold)}
  .mn-steps li.is-on::before{background:var(--mn-gold)}
  .mn-steps__t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mn-steps__t span{font:400 15px/1 var(--mn-latin)}
  .mn-bk.is-open .mn-bk__grid{display:block;padding:6px 24px 28px}
  .mn-bk.is-open .mn-bk__col{display:none;gap:16px}
  .mn-bk.is-open[data-at="1"] [data-col="1"],.mn-bk.is-open[data-at="2"] [data-col="2"],.mn-bk.is-open[data-at="3"] [data-col="3"]{display:flex}
  #accountPage .mn-bk.is-open .mn-step{font:300 28px/1.2 var(--mn-serif)!important;color:var(--mn-text)!important}
  .mn-bk.is-open :is(.mn-step__n,.mn-step__t){display:none}
  .mn-bk.is-open .mn-step__q{display:inline}
  .mn-bk.is-open #bkS2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .mn-bk.is-open .mn-bk__src2{display:block;margin-top:-8px}
  .mn-bk.is-open .mn-tr.is-on{margin:0 -24px;padding:0 24px}
  .mn-bk.is-open .mn-tr__n{font-size:19px}
  .mn-bk.is-open .mn-month{font-size:28px}
  .mn-bk.is-open .mn-days{gap:0}
  .mn-bk.is-open .mn-days button b{font-size:22px}
  .mn-bk.is-open .mn-bk__col--sum{padding:0;border:0;background:none}
  .mn-bk.is-open .mn-bk__bar{position:sticky;bottom:0;z-index:2;display:flex;align-items:center;gap:14px;margin-top:auto;
    padding:16px 24px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--mn-line);background:var(--mn1)}
  .mn-bk__bar p{display:flex;flex-direction:column;align-items:flex-start;flex:1 1 auto;min-width:0;margin:0}
  .mn-bk__bar b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 15px/1.35 var(--mn-sans);color:var(--mn-text)}
  .mn-bk__bar span{font:400 18px/1.2 var(--mn-latin);color:var(--mn-gold)}
  .mn-bk.is-open .mn-bk__keep{margin:0 24px 24px}
  .mn-bk.is-open > .mn-bk__in > :is(.mn-done,.mn-text,.mn-acts){margin:24px 24px 0}
  .mn-bk.is-open .mn-done{max-width:none;padding-bottom:30px}
  .mn-bk.is-open .mn-done > .mn-acts:last-child{flex-direction:column;align-items:stretch;width:100%;margin-top:auto}
}
@media (prefers-reduced-motion:reduce){ .mn-tr__n,.mn-times button{transition:none} }
/* the font shorthand resets the figures: Cormorant's old-style digits (a "1" that reads as "I") come back without this */
#accountPage *{font-variant-numeric:lining-nums}


/* ===================================================================
   23. The 2026-09 catalogue: five series, the kits, each series' routine
   =================================================================== */
/* five tiles, each on the colour of its box; the orange tile moves a step toward apricot so it reads apart from the brown */
.ed-duo__grid--five{grid-template-columns:repeat(5,minmax(0,1fr))}
.ed-duo__grid--five .ed-tile{min-height:clamp(440px,36vw,600px)}
.ed-duo__grid--five .ed-tile__top{padding-inline:clamp(16px,1.5vw,24px);max-width:none}
.ed-duo__grid--five .ed-tile__name{font-size:clamp(1.5rem,.9rem + 1.05vw,2.15rem)}
.ed-duo__grid--five .ed-tile__lat{letter-spacing:.14em;line-height:1.35}
.ed-duo__grid--five .ed-tile__cta{margin-inline:clamp(16px,1.5vw,24px)}
.ed-duo__grid--five .ed-tile--glow{--tile-bg:#F0DAC3;--tone:#5A2A0C}
.ed-tile--brown{--tile-bg:#DDCFC5;--tone:#3A2218}
.ed-tile--purple{--tile-bg:#E4D6E0;--tone:#3D1733}
.ed-tile--scalp{--tile-bg:#E0E3E6;--tone:#1F262C}
@media (max-width:1100px){
  .ed-duo__grid--five{grid-template-columns:repeat(6,minmax(0,1fr))}
  .ed-duo__grid--five .ed-tile{grid-column:span 2}
  .ed-duo__grid--five .ed-tile:nth-child(n+4){grid-column:span 3}
}
@media (max-width:760px){
  .ed-duo__grid--five{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;
    scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding-bottom:4px}
  .ed-duo__grid--five::-webkit-scrollbar{display:none}
  .ed-duo__grid--five .ed-tile,.ed-duo__grid--five .ed-tile:nth-child(n+4){grid-column:auto;scroll-snap-align:start;min-height:clamp(440px,118vw,560px)}
}

/* morning and evening: one series at a time */
.ed-tabs{display:flex;flex-wrap:wrap;gap:4px 22px;margin:0 0 clamp(1.4rem,3vw,2.2rem);border-bottom:1px solid var(--ed-line)}
.ed-tabs button{appearance:none;min-height:44px;margin:0 0 -1px;padding:0 2px;border:0;border-bottom:2px solid transparent;background:none;cursor:pointer;
  font:400 1rem/1 var(--ed-sans);color:var(--ed-muted)}
.ed-tabs button:hover{color:var(--ed-ink)}
.ed-tabs button[aria-selected="true"]{color:var(--ed-ink);font-weight:500;border-bottom-color:var(--ed-ink)}
.ed-tabs button:focus-visible{outline:2px solid var(--ed-bronze);outline-offset:2px}
.ed-routine:focus-visible{outline:2px solid var(--ed-bronze);outline-offset:6px}
.ed-routine--1{grid-template-columns:minmax(0,1fr)}
.ed-routine--1 .rcol{max-width:720px}
.ed-routine--3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){ .ed-routine--3{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:900px){ .ed-routine--3{grid-template-columns:1fr} }
@media (max-width:760px){ .ed-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.ed-tabs::-webkit-scrollbar{display:none}.ed-tabs button{white-space:nowrap} }

/* the product page, in the products page's own sections */
.pp-sci__more .pp-lead{margin-top:.9rem}
.pp-h3{margin:1.8rem 0 0;font-family:var(--ed-serif);font-weight:300;font-size:1.35rem;line-height:1.3;color:var(--ed-ink)}
.pp-how__notes{max-width:760px;margin:1.6rem auto 0;display:grid;gap:.6rem}
.pp-how__notes p{margin:0;padding:.9rem 1.1rem;border-inline-start:2px solid var(--ed-bronze);background:var(--ed-ivory);font-size:.95rem;line-height:1.7;color:var(--ed-ink)}
.pp-how__notes b{font-weight:500}
.pp-faq--nofaq .pp-faq__cols{grid-template-columns:minmax(0,1fr)!important;max-width:760px;margin-inline:auto}
.pp-faq--nofaq #ppFaq,.pp-faq--nofaq #psFaq>h3{display:none}
