:root {
  --forest:#26351F;
  --black-olive:#20251D;
  --milk:#F1EEE5;
  --oat:#D8D0BF;
  --aluminium:#A9AAA5;
  --timber:#755E47;
  --brick:#9A4734;
  --blue:#7694A4;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--milk);
  color:var(--black-olive);
  font-family:Arial, Helvetica, sans-serif;
  letter-spacing:-0.01em;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.header{
  position:sticky; top:0; z-index:20;
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  height:78px; padding:0 5vw;
  background:rgba(241,238,229,.92); backdrop-filter: blur(8px);
  border-bottom:1px solid rgba(38,53,31,.12);
}
.logo-lockup{
  display:flex; align-items:center; gap:10px;
}
.logo-word{
  font-family:"job-clarendon", serif;
  font-size:18px;
  font-weight:500;
  font-style:normal;
  font-synthesis:none;
  letter-spacing:0.132em;
  white-space:nowrap;
}
.logo-horse{height:28px; width:auto; display:block}
.nav{display:flex;gap:30px;font-size:13px}
.header-cta{justify-self:end;font-size:13px}
.hero{
  min-height:78vh; display:grid; grid-template-columns:1.25fr .75fr;
  gap:0; border-bottom:1px solid rgba(38,53,31,.12);
}
.hero-img{position:relative; overflow:hidden; min-height:650px}
.hero-img > img:first-child{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.82) contrast(.94)}
.hero-crest{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:33%; max-width:280px; height:auto;
  pointer-events:none; filter:none;
  color:#091212;
}
.hero-copy{
  display:flex; flex-direction:column; justify-content:center;
  padding:8vw 7vw; background:var(--milk);
}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:28px}
h1{font-size:clamp(52px,6vw,92px);line-height:.96;margin:0 0 28px;font-weight:500;letter-spacing:-.055em}
.lead{font-size:19px;line-height:1.55;max-width:470px;margin:0 0 34px}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.btn{padding:15px 22px;border:1px solid var(--forest);font-size:13px;background:transparent;color:var(--black-olive);cursor:pointer;border-radius:0;box-shadow:none;display:inline-block;font-family:inherit}
.btn.primary{background:var(--forest);color:var(--milk)}
.section{padding:130px 6vw}
.product{
  display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center
}
.product-stage{
  aspect-ratio:1/1;margin:0;overflow:hidden
}
.product-stage--editorial img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%
}
.product h2,.section h2{font-size:clamp(40px,4.6vw,70px);line-height:1;margin:0 0 22px;font-weight:500;letter-spacing:-.045em}
.product p{font-size:18px;line-height:1.6;max-width:520px}
.facts{
  border-top:1px solid rgba(38,53,31,.18);border-bottom:1px solid rgba(38,53,31,.18);
  display:grid;grid-template-columns:repeat(4,1fr)
}
.fact{padding:34px 28px;border-right:1px solid rgba(38,53,31,.18)}
.fact:last-child{border-right:none}
.fact strong{display:block;font-size:14px;margin-bottom:6px}
.fact span{font-size:13px;opacity:.68}
.statement{
  min-height:78vh;position:relative;overflow:hidden;display:flex;align-items:flex-end
}
.statement img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.76)}
.statement-copy{position:relative;z-index:1;color:white;padding:8vw 6vw;max-width:700px}
.statement h2{font-size:clamp(54px,7vw,100px);color:white;margin-bottom:18px}
.statement p{font-size:20px;line-height:1.5;max-width:570px}
.provenance{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,31vw) minmax(0,1fr);
  grid-template-rows:auto 1fr auto;
  column-gap:clamp(26px,4vw,72px);
  row-gap:0;
  padding:clamp(84px,10vw,170px) 6vw clamp(80px,9vw,150px);
  overflow:hidden;
  background:var(--milk);
  color:var(--black-olive);
}
.provenance:before{content:"";position:absolute;top:calc(clamp(84px,10vw,170px) - 36px);right:6vw;left:6vw;border-top:1px solid rgba(38,53,31,.22)}
.provenance-copy{z-index:2;grid-column:1;grid-row:2;align-self:start;width:min(100%,360px);margin-top:32px}
.provenance-copy p{margin:0;font-size:15px;line-height:1.55}
.provenance-figure{z-index:1;grid-column:2;grid-row:1 / span 3;align-self:start;margin:0;padding-top:clamp(20px,3vw,44px)}
.provenance-figure img{display:block;width:100%;height:min(58vw,850px);min-height:620px;object-fit:cover;object-position:center top;filter:none}
.provenance-figure figcaption{margin-top:10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(32,37,29,.58)}
.provenance h2{z-index:2;grid-column:1 / 4;grid-row:1;align-self:end;width:min(100%,1180px);margin:0 0 clamp(-2px,-.25vw,-1px);font-size:clamp(70px,9.2vw,154px);font-weight:500;line-height:.76;letter-spacing:-.075em;pointer-events:none}
.provenance-notes{z-index:1;grid-column:3;grid-row:3;align-self:end;display:grid;gap:clamp(28px,4vw,52px);padding-bottom:4px}
.provenance-note{padding-top:12px;border-top:1px solid rgba(38,53,31,.34)}
.provenance-note span,.provenance-note strong{display:block;font-size:10px;line-height:1.4;letter-spacing:.15em;text-transform:uppercase}
.provenance-note span{margin-bottom:8px;color:rgba(32,37,29,.62)}
.provenance-note strong{font-weight:700}
.why{background:var(--forest);color:var(--milk)}
.why-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}
.why-list{border-top:1px solid rgba(241,238,229,.25)}
.why-item{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:28px 0;border-bottom:1px solid rgba(241,238,229,.25)}
.why-item strong{font-size:20px}
.why-item span{font-size:16px;line-height:1.5;opacity:.82}
.gallery{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:16px;padding:0 6vw 130px}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.78) contrast(.96)}
.gallery .tall{grid-row:span 2;min-height:720px}
.gallery .small{min-height:350px}
.story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.story img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.78)}
.story p{font-size:18px;line-height:1.7;max-width:540px}
.quote{padding:150px 10vw;text-align:center}
.quote blockquote{font-size:clamp(34px,4vw,62px);line-height:1.12;margin:0 auto 24px;max-width:1000px;letter-spacing:-.04em}
.quote small{font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.final{display:grid;grid-template-columns:1.2fr .8fr;min-height:650px}
.final img{width:100%;height:100%;object-fit:cover;filter:saturate(.78);display:block}
.final-copy{background:var(--oat);padding:8vw 7vw;display:flex;flex-direction:column;justify-content:center}
.waitlist{
  display:flex;flex-direction:column;gap:14px;max-width:420px;margin-top:8px
}
.waitlist label{font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.waitlist input,.waitlist select{
  width:100%;padding:15px 16px;border:1px solid var(--forest);
  background:var(--milk);color:var(--black-olive);font-size:15px;
  font-family:inherit;border-radius:0;appearance:none
}
.final-copy .waitlist input,.final-copy .waitlist select{background:var(--milk)}
.waitlist button{align-self:flex-start}
.thanks-main{min-height:calc(100vh - 78px - 220px);display:flex;align-items:center;padding:130px 6vw}
.thanks-copy{max-width:720px}
.footer{background:var(--black-olive);color:var(--milk);padding:60px 6vw 30px}
.footer-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;font-size:13px}
.footer-links{display:flex;gap:26px;flex-wrap:wrap}
.footer-logo{
  font-family:"job-clarendon",serif;
  font-size:clamp(70px,14vw,190px);
  line-height:.85;
  margin-top:90px;
  letter-spacing:0.132em;
  font-weight:500;
  font-style:normal;
  font-synthesis:none;
  font-stretch:normal;
}
@media(max-width:900px){
  .nav{display:none}
  .hero,.product,.why-grid,.story,.final{grid-template-columns:1fr}
  .hero-img{min-height:52vh}
  .hero-copy{padding:70px 24px}
  .section{padding:88px 24px}
  .facts{grid-template-columns:1fr 1fr}
  .fact{border-bottom:1px solid rgba(38,53,31,.18)}
  .gallery{grid-template-columns:1fr 1fr;padding:0 24px 88px}
  .gallery .tall{grid-row:auto;min-height:480px}
  .why-item{grid-template-columns:1fr}
  .header{padding:0 24px}
  .thanks-main{padding:88px 24px}
  .provenance{display:flex;flex-direction:column;gap:0;padding:72px 24px 76px}
  .provenance:before{top:36px;right:24px;left:24px}
  .provenance h2{order:2;margin:31px 0 0;font-size:clamp(48px,13.2vw,60px);line-height:.82;letter-spacing:-.075em}
  .provenance-copy{order:3;width:min(100%,360px);margin:30px 0 0}
  .provenance-copy p{font-size:15px}
  .provenance-figure{order:4;width:100%;margin:38px 0 0;padding:0}
  .provenance-figure img{width:100%;height:auto;min-height:0;aspect-ratio:3 / 4;object-position:center top}
  .provenance-figure figcaption{margin-top:8px}
  .provenance-notes{order:5;width:100%;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px;padding:0}
}

/* Approved Billboard Hero — recovered from b8a1917. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header--billboard{position:absolute;inset:0 0 auto;z-index:5;width:100%;height:76px;background:transparent;border:0;backdrop-filter:none;color:var(--black-olive)}
.header--billboard .nav{gap:32px;font-size:12px;letter-spacing:.025em}
.header--billboard .header-cta{font-size:12px;letter-spacing:.025em;text-transform:uppercase}
.header--billboard .header-cta a{display:inline-flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--forest)}
.hero--billboard{position:relative;display:flex;align-items:flex-start;min-height:0;height:clamp(860px,90svh,1120px);overflow:hidden;border:0;background:var(--milk);isolation:isolate}
.hero-photo{position:absolute;inset:0;z-index:0;background-image:var(--hero-image,url("/images/hero-draft-03.png"));background-size:cover;background-position:right center;background-repeat:no-repeat}
.hero--draft-03{--hero-image:url("images/hero-draft-03.png")}
.hero-copy--billboard{position:relative;z-index:1;width:min(63vw,1120px);min-height:100%;justify-content:flex-end;padding:clamp(150px,16vw,285px) 0 clamp(176px,15vw,246px) clamp(38px,6.5vw,126px);background:transparent}
.hero-copy--billboard .hero-kicker{margin:0 0 clamp(18px,2.2vw,32px);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--black-olive)}
.hero-copy--billboard h1{max-width:none;margin:0 0 clamp(24px,2.6vw,40px);font-size:clamp(78px,7.1vw,136px);line-height:.8;font-weight:700;letter-spacing:-.065em;white-space:nowrap;color:var(--black-olive)}
.hero-copy--billboard .lead{max-width:520px;margin-bottom:clamp(26px,2.8vw,42px);font-size:clamp(16px,1.22vw,19px);font-weight:600;line-height:1.4;color:var(--black-olive)}
.hero-copy--billboard .waitlist{display:block;width:min(100%,520px);max-width:none;margin:0}
.hero-copy--billboard .email-row{display:flex;align-items:stretch}
.hero-copy--billboard .email-row input{min-width:0;border-color:var(--black-olive);border-right:0;background:var(--milk)}
.hero-copy--billboard .email-row .btn{flex:0 0 auto;align-self:auto;padding-inline:25px;background:var(--black-olive);border-color:var(--black-olive);font-size:12px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
@media(max-width:900px){
  .header--billboard{display:flex;justify-content:space-between;gap:12px;height:68px;color:var(--black-olive)}
  .header--billboard .logo-lockup{gap:6px}
  .header--billboard .logo-word{font-size:15px}
  .header--billboard .logo-horse{height:21px}
  .hero--billboard{height:100svh;min-height:0;align-items:stretch}
  .hero-photo{background-image:none}
  .hero-photo__image[hidden]{display:block;position:absolute;top:2%;left:0;width:100%;height:106%;max-width:none;object-fit:cover;object-position:88% top}
  .hero-copy--billboard{width:100%;padding:max(82px,calc(env(safe-area-inset-top) + 64px)) 24px max(20px,env(safe-area-inset-bottom));justify-content:flex-start}
  .hero-copy--billboard .hero-kicker{max-width:270px;margin-bottom:10px;font-size:10px;line-height:1.35}
  .hero-copy--billboard h1{max-width:340px;margin-bottom:14px;font-size:clamp(48px,13vw,58px);line-height:.84;letter-spacing:-.072em;white-space:normal}
  .hero-copy--billboard .lead{max-width:310px;margin-bottom:16px;font-size:16px;font-weight:600;line-height:1.42}
  .hero-copy--billboard .waitlist{width:100%;max-width:360px}
  .hero-copy--billboard .email-row{flex-direction:row}
  .hero-copy--billboard .email-row input{border-right:0;border-bottom:1px solid var(--black-olive)}
  .hero-copy--billboard .email-row .btn{width:auto;padding-inline:12px;font-size:10px}
}

/* Product proof — V3 packaging render is temporary development-only content. */
.product-proof{
  padding:clamp(68px,6vw,96px) 6vw clamp(38px,3vw,48px);
  background:var(--milk);
  border-bottom:1px solid rgba(38,53,31,.18);
}
.product-proof-heading{max-width:980px;margin:0 auto;text-align:center}
.product-proof-heading .eyebrow{margin-bottom:18px}
.product-proof-heading h2{
  margin:0;
  font-size:clamp(44px,5vw,76px);
  font-weight:500;
  line-height:.95;
  letter-spacing:-.06em;
  white-space:nowrap;
}
.product-proof-heading p{max-width:475px;margin:18px auto 0;font-size:16px;line-height:1.5}
.product-proof-layout{
  display:grid;
  grid-template-columns:minmax(180px,.85fr) minmax(300px,.96fr) minmax(180px,.85fr);
  gap:clamp(22px,3vw,52px);
  align-items:center;
  max-width:1180px;
  min-height:430px;
  margin:clamp(34px,4.4vw,62px) auto 0;
}
.product-proof-notes{display:flex;flex-direction:column}
.proof-note{max-width:245px;padding-top:12px;border-top:1px solid rgba(38,53,31,.34)}
.proof-note-meta{display:flex;gap:12px;font-size:10px;line-height:1.35;letter-spacing:.15em;text-transform:uppercase}
.proof-note-meta span:first-child{color:rgba(32,37,29,.58)}
.proof-note-meta span:last-child{font-weight:700}
.proof-note p{max-width:230px;margin:12px 0 0;font-size:14px;line-height:1.48}
.product-proof-notes-left{align-items:flex-end;padding-top:34px}
.product-proof-notes-left .proof-note{width:100%}
.proof-note-dose{margin-top:104px}
.product-proof-notes-right{align-items:flex-start;padding-top:0}
.product-proof-notes-right .proof-note{width:100%}
.proof-note-supply{margin-top:108px}
.product-proof-figure{position:relative;min-width:0;margin:0}
.product-proof-visual{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1}
.product-proof-visual:before,.product-proof-visual:after{position:absolute;content:"";pointer-events:none}
.product-proof-visual:before{top:4%;bottom:5%;left:50%;border-left:1px solid rgba(38,53,31,.18)}
.product-proof-visual:after{top:67%;right:3%;left:3%;border-top:1px solid rgba(38,53,31,.18)}
.product-proof-visual img{position:relative;z-index:1;display:block;width:min(100%,440px);max-width:100%;height:auto;transform:translateX(12px);mix-blend-mode:normal}
.product-proof-figure figcaption{margin-top:8px;text-align:center;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:rgba(32,37,29,.62)}
.product-proof-cta{display:flex;justify-content:center;margin-top:28px}
.product-proof-cta .btn{min-width:196px;padding:16px 24px;background:var(--black-olive);border-color:var(--black-olive);color:var(--milk);font-size:12px;letter-spacing:.04em;text-align:center;text-transform:uppercase;transition:background-color .18s ease,border-color .18s ease}
.product-proof-cta .btn:hover{background:var(--forest);border-color:var(--forest)}
.product-proof-cta .btn:focus-visible{outline:2px solid var(--milk);outline-offset:3px;box-shadow:0 0 0 4px var(--black-olive)}
@media(max-width:900px){
  .product-proof{padding:64px 24px 44px}
  .product-proof-heading{text-align:left}
  .product-proof-heading .eyebrow{margin-bottom:18px}
  .product-proof-heading h2{font-size:clamp(43px,12vw,61px);line-height:.94;white-space:normal}
  .product-proof-heading p{margin:19px 0 0;font-size:16px}
  .product-proof-layout{display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:0;margin-top:32px}
  .product-proof-figure{order:1;width:min(100%,410px);align-self:center}
  .product-proof-visual img{width:100%;transform:translateX(6px)}
  .product-proof-figure figcaption{margin-top:5px}
  .product-proof-notes{display:grid;grid-template-columns:1fr 1fr;gap:24px 18px;width:100%;padding-top:32px}
  .product-proof-cta{margin-top:30px}
  .product-proof-notes-left{order:2;align-items:stretch}
  .product-proof-notes-right{order:3;align-items:stretch}
  .proof-note,.product-proof-notes-left .proof-note,.product-proof-notes-right .proof-note{width:auto;max-width:none;margin:0}
  .proof-note p{max-width:220px;font-size:13px}
  .product-proof-visual:before{top:3%;bottom:3%}
  .product-proof-visual:after{top:67%;right:0;left:0}
}
@media(max-width:480px){
  .product-proof-notes{grid-template-columns:1fr;gap:24px;padding-top:30px}
  .proof-note p{max-width:290px}
}

/* Phone-only editorial split: message, action, then product ritual. */
@media(max-width:600px){
  .hero--billboard{display:flex;flex-direction:column;height:100svh;min-height:0}
  .hero-copy--billboard{order:1;flex:0 0 auto;min-height:0;width:100%;padding:max(82px,calc(env(safe-area-inset-top) + 64px)) 24px max(20px,env(safe-area-inset-bottom));background:var(--milk);justify-content:flex-start}
  .hero-copy--billboard .waitlist{max-width:360px}
  .hero-photo{position:relative;inset:auto;order:2;flex:1 1 auto;min-height:clamp(260px,39svh,440px);overflow:hidden;background-image:none}
  .hero-photo__image[hidden]{inset:0;width:100%;height:100%;object-fit:cover;object-position:right center}
}

/* Phone-only typography billboard: stable layout with no hero photograph. */
@media(max-width:600px){
  .header--billboard{position:relative;inset:auto}
  .hero--billboard{display:block;height:auto;min-height:0}
  .hero-photo{display:none}
  .hero-copy--billboard{display:flex;min-height:0;padding:max(30px,env(safe-area-inset-top)) 24px 56px;background:var(--milk)}
  .hero-copy--billboard .hero-kicker{margin-bottom:18px}
  .hero-copy--billboard h1{margin-bottom:26px}
  .hero-copy--billboard .lead{margin-bottom:28px}
}

@media(max-width:600px){
  .hero--billboard{display:flex;flex-direction:column;background:var(--milk)}
  .hero-photo{display:block;position:relative;inset:auto;order:1;width:100%;min-height:0;aspect-ratio:16 / 9;overflow:hidden;background:none}
  .hero-photo__image[hidden]{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:right center}
  .hero-copy--billboard{order:2;width:100%;padding:0 24px 44px;background:var(--milk)}
  .hero-copy--billboard .hero-kicker{position:relative;align-self:flex-start;margin:-13px 0 18px;padding:8px 10px;background:var(--milk);font-size:0;line-height:1;letter-spacing:0}
  .hero-copy--billboard .hero-kicker:after{content:'LAKE DEBORAH · WESTERN AUSTRALIA';font-size:10px;font-weight:700;letter-spacing:.12em;line-height:1.25;color:var(--black-olive)}
  .hero-copy--billboard h1{font-size:clamp(44px,12vw,52px);line-height:.86;margin-bottom:18px}
  .hero-copy--billboard .lead{font-size:0;margin:0 0 22px;line-height:1.45}
  .hero-copy--billboard .lead:after{content:'Four simple capsules. Nothing to mix. Nothing to flavour.';font-size:16px;font-weight:600;line-height:1.45}
  .hero-copy--billboard .email-row{flex-direction:column;gap:0}
  .hero-copy--billboard .email-row input{height:54px;border-right:1px solid var(--black-olive);border-bottom:0}
  .hero-copy--billboard .email-row .btn{width:100%;height:54px;padding:0;font-size:0}
  .hero-copy--billboard .email-row .btn:after{content:'GET FIRST ACCESS';font-size:12px;letter-spacing:.05em}
}

/* Santo World — layout study. Each flat field is a direct responsive-image replacement well. */
.santo-world{
  position:relative;
  padding:clamp(100px,10vw,180px) 6vw clamp(108px,11vw,190px);
  overflow:hidden;
  background:var(--milk);
  border-bottom:1px solid rgba(38,53,31,.18);
}
.santo-world:before{
  position:absolute;
  top:clamp(64px,6vw,106px);
  right:6vw;
  left:6vw;
  content:"";
  border-top:1px solid rgba(38,53,31,.28);
}
.santo-world-heading{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(0,8.5fr) minmax(190px,3.5fr);
  column-gap:clamp(32px,5vw,84px);
  align-items:end;
}
.santo-world-heading .eyebrow{grid-column:1 / -1;margin-bottom:clamp(32px,4vw,62px)}
.santo-world-heading h2{
  grid-column:1;
  margin:0;
  font-size:clamp(70px,8.3vw,142px);
  font-weight:500;
  line-height:.78;
  letter-spacing:-.075em;
  color:var(--forest);
}
.santo-world-heading p{
  grid-column:2;
  margin:0 0 .65em;
  padding-top:14px;
  border-top:1px solid rgba(38,53,31,.38);
  font-size:clamp(15px,1.15vw,18px);
  line-height:1.45;
}
.santo-world-images{
  --world-caption-block:33px;
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  align-items:start;
  margin-top:clamp(-18px,-1vw,-8px);
  margin-bottom:calc(clamp(46px,5vw,82px) + 64px);
}
.world-image{position:relative;margin:0;min-width:0}
.world-placeholder{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  overflow:hidden;
  color:var(--forest);
}
.world-image__asset{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.world-placeholder span{
  position:relative;
  z-index:1;
  padding:8px 10px;
  background:inherit;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.world-image figcaption{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid rgba(38,53,31,.34);
  font-size:10px;
  line-height:1.3;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.world-image figcaption span:first-child{color:rgba(32,37,29,.58)}
.world-image figcaption span:last-child{font-weight:700}
.world-image--land{grid-column:1 / 9;grid-row:1;margin-top:clamp(70px,8vw,132px)}
.world-image--land .world-placeholder{aspect-ratio:16 / 9;background:var(--oat)}
.world-image--sunlight{z-index:2;grid-column:9 / 13;grid-row:1;margin:0 0 0 clamp(-24px,-1.5vw,-10px)}
.world-image--sunlight .world-placeholder{aspect-ratio:4 / 5;background:#c6b88f;color:var(--black-olive)}
.world-image--real-life{z-index:2;grid-column:7 / 12;grid-row:2;margin:clamp(-86px,-5vw,-54px) 0 0 clamp(18px,2vw,36px)}
.world-image--real-life .world-placeholder{aspect-ratio:3 / 2;background:var(--blue);color:var(--black-olive)}
.santo-world-cta{
  z-index:1;
  grid-column:2 / 6;
  grid-row:2;
  align-self:center;
  justify-self:stretch;
  display:flex;
  justify-content:center;
  width:100%;
  /* Centre on the image edges by balancing the equal caption blocks below both figures. */
  margin:0 0 calc(var(--world-caption-block) + var(--world-caption-block));
}
.santo-world-cta .btn{min-width:196px;padding:16px 24px;text-align:center;text-transform:uppercase;font-size:12px;letter-spacing:.04em}
.santo-world-cta .btn:hover{background:var(--black-olive);border-color:var(--black-olive)}
.santo-world-cta .btn:focus-visible{outline:2px solid var(--milk);outline-offset:3px;box-shadow:0 0 0 4px var(--black-olive)}

@media(max-width:900px){
  .santo-world{padding:72px 24px 88px}
  .santo-world:before{top:36px;right:24px;left:24px}
  .santo-world-heading{display:block}
  .santo-world-heading .eyebrow{margin-bottom:30px}
  .santo-world-heading h2{font-size:clamp(50px,13.8vw,66px);line-height:.84}
  .santo-world-heading p{width:min(100%,280px);margin:24px 0 0;padding-top:12px;font-size:16px}
  .santo-world-images{display:flex;flex-direction:column;margin-top:42px;margin-bottom:0}
  .world-image--land{width:100%;margin:0}
  .world-image--sunlight{width:72%;margin:44px 0 0 auto}
  .world-image--real-life{width:88%;margin:44px auto 0 0}
  .santo-world-cta{align-self:stretch;justify-content:flex-start;width:100%;margin:54px 0 0;padding-top:16px}
  .santo-world-cta .btn{align-self:flex-start;min-width:196px}
}

@media(max-width:430px){
  .santo-world{padding-right:20px;padding-left:20px}
  .santo-world:before{right:20px;left:20px}
  .santo-world-heading h2{font-size:clamp(48px,13.2vw,57px)}
  .world-image--sunlight{width:76%}
  .world-image--real-life{width:91%}
}

/* Daily Ritual — an asymmetric 02 + 02 editorial daybook. */
.daily-ritual{
  --ritual-ink:var(--milk);
  --ritual-rule:rgba(241,238,229,.34);
  position:relative;
  min-height:clamp(920px,78vw,1180px);
  padding:clamp(92px,8vw,138px) 6vw clamp(88px,8vw,132px);
  overflow:hidden;
  background:var(--forest);
  color:var(--ritual-ink);
}
.daily-ritual:before{
  position:absolute;
  top:clamp(54px,5vw,84px);
  right:6vw;
  left:6vw;
  content:"";
  border-top:1px solid var(--ritual-rule);
}
.daily-ritual-heading{position:relative;z-index:4}
.daily-ritual-heading .eyebrow{margin-bottom:clamp(24px,2.6vw,42px)}
.daily-ritual-heading h2{
  width:min(100%,980px);
  margin:0;
  font-size:clamp(68px,8.1vw,132px);
  font-weight:500;
  line-height:.8;
  letter-spacing:-.075em;
  color:var(--ritual-ink);
}
.ritual-daybook{
  position:relative;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  align-items:flex-start;
  min-height:clamp(490px,42vw,650px);
  margin-top:clamp(42px,5vw,82px);
}
.ritual-daybook:before{
  position:absolute;
  z-index:0;
  top:50%;
  right:2.5%;
  left:2.5%;
  content:"";
  border-top:1px solid var(--ritual-rule);
}
.ritual-moment{position:relative;z-index:1;grid-row:1;margin:0;min-width:0}
.ritual-moment--morning{grid-column:1 / 6;align-self:start;width:82%}
.ritual-moment--evening{grid-column:7 / 13;align-self:end;width:100%;padding-top:clamp(96px,9vw,148px)}
.ritual-placeholder{
  position:relative;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  border:1px solid rgba(241,238,229,.48);
  color:var(--ritual-ink);
  background:var(--timber);
}
.ritual-placeholder:before,.ritual-placeholder:after{position:absolute;content:"";background:currentColor;opacity:.22}
.ritual-placeholder:before{top:50%;right:0;left:0;height:1px}
.ritual-placeholder:after{top:0;bottom:0;left:50%;width:1px}
.ritual-placeholder span{
  position:relative;
  z-index:2;
  margin:0 0 14px 16px;
  padding:7px 9px;
  border:1px solid rgba(241,238,229,.5);
  background:var(--forest);
  font-size:10px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.15em;
  text-transform:uppercase;
  white-space:nowrap;
}
.ritual-placeholder--photo:before,.ritual-placeholder--photo:after{display:none}
.ritual-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.ritual-moment--morning .ritual-placeholder{aspect-ratio:4 / 5;background:#755e47}
.ritual-moment--evening .ritual-placeholder{aspect-ratio:3 / 2;background:#657566}
.ritual-number{
  position:absolute;
  z-index:3;
  font-family:"job-clarendon",Georgia,serif;
  font-size:clamp(148px,18vw,292px);
  font-weight:500;
  font-style:normal;
  font-synthesis:none;
  line-height:.68;
  letter-spacing:-.095em;
  color:var(--ritual-ink);
  pointer-events:none;
}
.ritual-moment--morning .ritual-number{top:13%;right:-16%}
.ritual-moment--evening .ritual-number{top:2%;left:-8%}
.ritual-moment figcaption{
  display:grid;
  grid-template-columns:minmax(88px,.38fr) 1fr;
  gap:18px;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid var(--ritual-rule);
}
.ritual-moment figcaption span{font-size:11px;font-weight:700;letter-spacing:.16em}
.ritual-moment figcaption p{margin:0;font-size:15px;line-height:1.45}
.ritual-bridge{
  position:relative;
  z-index:4;
  grid-column:6 / 8;
  grid-row:1;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  min-height:100%;
  padding-top:clamp(108px,9vw,148px);
  transform:translateX(-2.4vw);
}
.ritual-plus{
  display:flex;
  align-items:center;
  justify-content:center;
  width:50px;
  height:50px;
  border:1px solid var(--ritual-rule);
  background:var(--forest);
  font-family:Georgia,serif;
  font-size:34px;
  font-weight:400;
  line-height:1;
}
.ritual-close{
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:48px;
  align-items:end;
  margin-top:clamp(56px,6vw,96px);
  padding-top:clamp(28px,3vw,48px);
  border-top:1px solid var(--ritual-rule);
}
.ritual-close-copy{max-width:780px}
.ritual-statement{margin:0;font-size:clamp(34px,4.1vw,64px);line-height:.98;letter-spacing:-.045em}
.ritual-detail{margin:20px 0 0;font-size:15px;line-height:1.5;opacity:.78}
.ritual-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:220px;
  min-height:54px;
  padding:16px 26px;
  border-color:var(--milk);
  background:var(--milk);
  color:var(--forest);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-align:center;
}
.ritual-cta:hover{background:var(--oat);border-color:var(--oat)}
.ritual-cta:focus-visible{outline:2px solid var(--milk);outline-offset:4px}

@media(max-width:900px){
  .daily-ritual{min-height:0;padding:72px 24px 84px}
  .daily-ritual:before{top:36px;right:24px;left:24px}
  .daily-ritual-heading .eyebrow{margin-bottom:28px}
  .daily-ritual-heading h2{font-size:clamp(50px,13.6vw,86px);line-height:.83}
  .ritual-daybook{display:flex;flex-direction:column;align-items:stretch;min-height:0;margin-top:54px}
  .ritual-daybook:before{top:48%;right:50%;bottom:12%;left:auto;border-top:0;border-left:1px solid var(--ritual-rule)}
  .ritual-moment--morning{width:72%;align-self:flex-start}
  .ritual-moment--evening{width:84%;align-self:flex-end;padding-top:0}
  .ritual-number{font-size:clamp(142px,35vw,240px)}
  .ritual-moment--morning .ritual-number{top:10%;right:-12%}
  .ritual-moment--evening .ritual-number{top:12%;left:-10%}
  .ritual-moment figcaption{display:block;margin-top:12px}
  .ritual-moment figcaption p{margin-top:8px}
  .ritual-bridge{align-self:center;min-height:116px}
  .ritual-bridge{padding-top:0;transform:none}
  .ritual-plus{width:46px;height:46px;font-size:31px}
  .ritual-close{display:block;margin-top:64px;padding-top:30px}
  .ritual-statement{max-width:700px;font-size:clamp(38px,8vw,58px)}
  .ritual-detail{margin-top:18px}
  .ritual-cta{width:100%;margin-top:34px;min-height:54px}
}

@media(max-width:480px){
  .daily-ritual{padding:72px 20px 76px}
  .daily-ritual:before{right:20px;left:20px}
  .daily-ritual-heading h2{font-size:clamp(49px,13.5vw,58px)}
  .ritual-daybook{margin-top:48px}
  .ritual-moment--morning{width:75%}
  .ritual-moment--evening{width:88%}
  .ritual-number{font-size:clamp(132px,35vw,158px)}
  .ritual-moment--morning .ritual-number{right:-16%}
  .ritual-moment--evening .ritual-number{left:-13%}
  .ritual-placeholder span{margin:0 0 10px 10px;padding:6px 7px;font-size:9px;letter-spacing:.12em}
  .ritual-moment figcaption{grid-template-columns:1fr;padding-top:11px}
  .ritual-moment figcaption span{font-size:10px}
  .ritual-moment figcaption p{font-size:14px}
  .ritual-bridge{min-height:108px}
  .ritual-close{margin-top:58px}
  .ritual-statement{font-size:clamp(36px,10vw,43px)}
}

/* Desktop Daily Ritual — preserve the mobile sequence as a stepped day journey. */
@media(min-width:901px){
  .daily-ritual{
    min-height:0;
    padding:clamp(92px,7.5vw,120px) 6vw clamp(86px,7vw,112px);
  }
  .daily-ritual-heading .eyebrow{margin-bottom:clamp(24px,2.2vw,34px)}
  .daily-ritual-heading h2{font-size:clamp(68px,7.5vw,120px)}
  .ritual-daybook{
    display:block;
    height:clamp(700px,49vw,750px);
    min-height:0;
    margin-top:clamp(38px,3.4vw,54px);
  }
  .ritual-daybook:before{display:none}
  .ritual-moment{position:absolute;grid-row:auto}
  .ritual-moment--morning{
    top:0;
    left:0;
    width:clamp(300px,28vw,390px);
  }
  .ritual-moment--evening{
    top:clamp(220px,17vw,270px);
    right:0;
    width:clamp(460px,42vw,630px);
    padding-top:0;
  }
  .ritual-number{font-size:clamp(184px,16vw,250px)}
  .ritual-moment--morning .ritual-number{top:14%;right:-12%}
  .ritual-moment--evening .ritual-number{top:10%;left:-10%}
  .ritual-bridge{
    position:absolute;
    top:clamp(408px,34vw,510px);
    left:31%;
    display:block;
    width:30%;
    height:150px;
    min-height:0;
    padding:0;
    transform:none;
  }
  .ritual-bridge:before,.ritual-bridge:after{
    position:absolute;
    width:50%;
    height:50%;
    content:"";
    pointer-events:none;
  }
  .ritual-bridge:before{
    top:0;
    left:0;
    border-top:1px solid var(--ritual-rule);
    border-right:1px solid var(--ritual-rule);
  }
  .ritual-bridge:after{
    right:0;
    bottom:0;
    border-bottom:1px solid var(--ritual-rule);
    border-left:1px solid var(--ritual-rule);
  }
  .ritual-plus{
    position:absolute;
    z-index:2;
    top:50%;
    left:50%;
    width:46px;
    height:46px;
    font-size:31px;
    transform:translate(-50%,-50%);
  }
  .ritual-close{
    grid-template-columns:minmax(0,520px) 220px;
    justify-content:start;
    gap:clamp(28px,2.5vw,40px);
    width:auto;
    margin:clamp(34px,3vw,48px) 0 0 34%;
    padding-top:0;
    border-top:0;
    align-items:center;
  }
  .ritual-close-copy{max-width:660px}
  .ritual-statement{font-size:clamp(40px,3.3vw,52px)}
  .ritual-cta{min-width:220px}
}
