/* La Vella Sol · finish layer (one build, October 2026)
   Loaded after every other stylesheet. Contents:
   1. copper material (wordmark, controls, hairlines)  2. the arrival  3. header and hero  4. section colour and rhythm
   Copper source: the TOP tile of Jess's reference board (IMG_0491), cut at native pixels, untiled (images/material/SOURCE.txt).
   Temporary: not a licensed photograph; replace the three copper-*.jpg files with a real >=2400px copper photograph. */

:root{
  --cu-letters:url(/images/material/copper-lettering.jpg);
  --cu-smooth:url(/images/material/copper-smooth.jpg);
  --cu-button:url(/images/material/copper-button.jpg);
  --cu-line:rgba(196,146,106,.42);
  --cu-line-strong:rgba(214,170,130,.6);
  --cu-text:#f4e7d6;
  --oat:#ead7c7;           /* oat limewash */
  --oat-deep:#e2d4c0;
  --taupe:#bba392;         /* mineral taupe, reading surfaces */
  --taupe-deep:#977f70;
  --ink:#2a2019;
  --walnut:#1f140f;
  --cocoa:#4b372e;
  --plum:#311b14;
  --oxblood:#311b14;       /* oxblood, deep and muted */
  --wine:#704440;          /* wine-maroon, the principal dark accent */
  --wine-hi:#704440;
}

/* ============ 1. COPPER ============ */
/* every wordmark in the site is the same SVG letterforms filled with the same copper */
.wm{background:var(--cu-letters) 50% 50%/cover no-repeat,#a8714f!important}
.logo .wm,.nav-brand .wm,footer .wm.s{background:var(--cu-smooth) 50% 50%/cover no-repeat,#a8714f!important}
.ingot,.hero .ingot,.founder.ivory .fp::after{background:var(--cu-smooth) center/cover,#a8714f!important;box-shadow:none!important}

/* controls: deep copper, quiet grain, fine edge; the lettering above is the expressive element */
html body .btn.f,html body a.btn.f,html body button.btn.f,html body .hero .btn.f,
nav#nav .nav-in .bk,nav#nav .drawer .dbk,
.pf-submit,.j-sign button,.valsia-waitlist-form button,.valsia-cta-band a,.closing-band a{
  background:var(--cu-button) 50% 50%/cover no-repeat,#7c4d34!important;
  border:1px solid var(--cu-line-strong)!important;
  color:var(--cu-text)!important;-webkit-text-fill-color:var(--cu-text)!important;
  text-shadow:none!important;box-shadow:none!important;filter:none!important;
  transition:border-color .35s ease,background-position .9s cubic-bezier(.2,.7,.2,1),filter .35s ease}
html body .btn.f:hover,html body a.btn.f:hover,html body .hero .btn.f:hover,nav#nav .nav-in .bk:hover,.pf-submit:hover{
  background-position:30% 50%!important;border-color:#e0b891!important;filter:brightness(1.1)!important}
html body .btn.f:focus-visible,nav#nav .nav-in .bk:focus-visible{outline:2px solid #e0b891;outline-offset:3px}
nav#nav .nav-in .bk{min-height:40px;font-weight:600!important;letter-spacing:.14em!important}
nav#nav .drawer .dbk{font-weight:600;letter-spacing:.14em}

/* ============ 2. THE ARRIVAL ============ */
.splash.arrival{background:#150a08;padding:0;align-items:stretch;justify-content:flex-end;text-align:left;overflow:hidden}
.splash.arrival .ar-photo{position:absolute;inset:0;overflow:hidden;background:#150a08}
.splash.arrival .ar-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%;display:block;
  transform-origin:58% 48%}
/* the veil is deliberately light: it only protects the lettering side, the photograph carries the rest */
.splash.arrival .ar-veil{position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(18,8,6,.74) 0%,rgba(18,8,6,.52) 26%,rgba(18,8,6,.12) 52%,rgba(18,8,6,0) 66%),
    linear-gradient(0deg,rgba(18,8,6,.38) 0%,rgba(18,8,6,0) 28%)}
.splash.arrival .ar-petals{position:absolute;inset:0;overflow:hidden;pointer-events:none;contain:strict}
.splash.arrival{outline:0}
.splash.arrival .ar-copy{position:relative;z-index:2;flex:1 1 auto;align-self:stretch;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  padding:0 clamp(36px,6.2vw,96px);max-width:min(52vw,720px);margin:0}
.splash.arrival .mark{margin:0;font-size:0;line-height:0}
.splash.arrival .mark .wm{display:block;width:clamp(330px,34vw,520px);height:auto;aspect-ratio:5.06;
  background:var(--cu-letters) 50% 50%/cover no-repeat,#a8714f!important;filter:drop-shadow(0 2px 14px rgba(0,0,0,.35))}
.splash.arrival .k{margin:18px 0 0!important;color:rgba(236,222,205,.8)!important}
.splash.arrival .ent-line{margin:clamp(26px,4.6vh,42px) 0!important;background:var(--cu-line-strong)!important}
.splash.arrival .breath{color:#f1e5d6!important;font-size:clamp(30px,3.5vw,48px)!important;text-shadow:0 1px 18px rgba(0,0,0,.4)}
.splash.arrival .breath em{color:#e3bf9d!important}
.splash.arrival .enter{display:inline-flex;align-items:center;justify-content:center;margin-top:clamp(26px,4vh,38px);min-height:48px;padding:0 32px;
  background:var(--cu-button) 50% 50%/cover no-repeat,#7c4d34!important;border:1px solid var(--cu-line-strong)!important;
  color:var(--cu-text)!important;-webkit-text-fill-color:var(--cu-text)!important;letter-spacing:.24em!important}
.splash.arrival .enter:hover,.splash.arrival .enter:focus-visible{background-position:30% 50%!important;border-color:#e0b891!important;filter:brightness(1.1)}
.splash.arrival .enter:focus-visible{outline:2px solid #e0b891;outline-offset:4px}
/* the season is secondary: one quiet line, never a second call to action */
.splash.arrival .season-tag{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;padding:0;border:0;background:none;text-decoration:none}
.splash.arrival .season-tag span,.splash.arrival .season-tag strong,.splash.arrival .season-tag i{font:600 9.5px/1.5 var(--sans)!important;letter-spacing:.26em;text-transform:uppercase;font-style:normal;color:rgba(236,222,205,.66)!important}
.splash.arrival .season-tag strong{color:rgba(240,226,208,.92)!important}
.splash.arrival .season-tag:hover strong{color:#fff!important}

/* motion: one slow photographic push-in, one restrained fade for the lettering; the button never waits */
@media (prefers-reduced-motion:no-preference){
  .splash.arrival .ar-photo img{animation:arPush 16s cubic-bezier(.25,.1,.25,1) forwards}
  .splash.arrival .mark,.splash.arrival .k,.splash.arrival .ent-line,.splash.arrival .breath,.splash.arrival .season-tag{opacity:0;animation:entFade 1.5s cubic-bezier(.2,.7,.2,1) forwards}
  .splash.arrival .mark{animation-delay:.15s}.splash.arrival .k{animation-delay:.35s}.splash.arrival .ent-line{animation-delay:.5s}
  .splash.arrival .breath{animation-delay:.65s}.splash.arrival .season-tag{animation-delay:1s}
  .splash.arrival .enter{animation:none;opacity:1}
  .splash.arrival.out .ar-photo img{transition:transform 1.4s ease-out}
}
@keyframes arPush{from{transform:scale(1)}to{transform:scale(1.055)}}
.splash.arrival.out{transition:opacity 1.3s ease,visibility 1.3s}

/* petals: photographic, three depths, slow fall with drift and tumble. No reset is ever visible. */
.ar-petal{position:absolute;top:0;left:var(--x);width:var(--w);opacity:0;will-change:transform,opacity;
  animation:arFall var(--d) linear var(--dl) infinite}
.ar-petal i{display:block;width:100%;aspect-ratio:var(--ar);background:var(--img) center/contain no-repeat;
  filter:blur(var(--b,0px)) drop-shadow(0 8px 10px rgba(0,0,0,.32));
  animation:arTumble var(--td) ease-in-out var(--dl) infinite alternate;transform-style:preserve-3d}
@keyframes arFall{
  0%{transform:translate3d(0,-16vh,0);opacity:0}
  9%{opacity:var(--o)}
  72%{opacity:var(--o)}
  100%{transform:translate3d(var(--dx),112vh,0);opacity:0}}
@keyframes arTumble{
  0%{transform:translateX(-22px) rotateZ(var(--r0)) rotateX(8deg) rotateY(-24deg)}
  50%{transform:translateX(8px) rotateZ(calc(var(--r0) + 34deg)) rotateX(52deg) rotateY(16deg)}
  100%{transform:translateX(24px) rotateZ(calc(var(--r0) + 70deg)) rotateX(14deg) rotateY(38deg)}}
@media (prefers-reduced-motion:reduce){
  .ar-petal,.ar-petal i{animation:none!important}
  .ar-petal{opacity:var(--o);transform:translate3d(0,var(--rest),0)}
  .ar-petal i{transform:rotateZ(var(--r0))}
}

@media(max-width:760px){
  .splash.arrival{justify-content:flex-end}
  .splash.arrival .ar-photo img{object-position:52% 0%;transform-origin:52% 30%}
  .splash.arrival .ar-veil{background:linear-gradient(180deg,rgba(18,8,6,0) 0%,rgba(18,8,6,0) 36%,rgba(18,8,6,.55) 56%,rgba(18,8,6,.84) 74%,rgba(18,8,6,.93) 100%)}
  .splash.arrival .ar-copy{align-self:auto;align-items:center;text-align:center;max-width:none;width:100%;padding:0 24px calc(26px + env(safe-area-inset-bottom));justify-content:flex-end}
  .splash.arrival .mark .wm{width:min(84vw,340px)}
  .splash.arrival .k{margin-top:14px!important;font-size:9.5px!important;letter-spacing:.3em!important}
  .splash.arrival .ent-line{margin:18px auto!important}
  .splash.arrival .breath{font-size:clamp(28px,8.2vw,34px)!important}
  .splash.arrival .enter{width:min(100%,340px);margin-top:22px}
  .splash.arrival .season-tag{justify-content:center;margin-top:18px}
  .splash.arrival .season-tag i{display:none}
  .splash.arrival .season-tag span,.splash.arrival .season-tag strong{font-size:9px!important;letter-spacing:.22em}
}
@media (max-height:620px) and (max-width:760px){.splash.arrival .ent-line{display:none}.splash.arrival .season-tag{display:none}}

/* hold the homepage hero's own introduction until the arrival releases it, so there is one introduction, not two */
html.arriving .hero .atel,html.arriving .hero .hsvc,html.arriving .hero .btns,html.arriving .hero .hinfo,
html.arriving .hero .hwm .wm,html.arriving .hero .hfg,html.arriving .hero .petal,html.arriving .hero .petal i{animation-play-state:paused!important}
html.arriving,html.arriving body{overflow:hidden}

/* ============ 4. COLOUR AND COMPOSITION (homepage) ============ */
/* Wine-maroon and oxblood lead. Walnut supports. Taupe and oat carry reading. Copper is only lettering, controls and hairlines. */
body.home{--disp:clamp(54px,8.4vw,142px)}
body.home .trust.mq{background:var(--walnut)!important;border-top:1px solid var(--cu-line)!important;border-bottom:1px solid var(--cu-line)!important}
body.home .trust.mq span{color:#d9b595!important}
body.home .trust.mq span::after{border-color:#9a6a49!important}

body.home #rituals{background:radial-gradient(90% 70% at 0% 0%,#704440 0%,var(--wine) 55%,var(--oxblood) 100%)!important}
body.home #letter{background:var(--taupe)!important}
body.home .founder.ivory{background:var(--oat)!important}
body.home #paths{background:var(--walnut)!important}
body.home #philosophy{background:linear-gradient(180deg,#704440,var(--oxblood))!important}
body.home #seasonal{background:var(--oxblood)!important}
body.home #hair{background:radial-gradient(90% 80% at 100% 0%,#704440,var(--wine) 60%,var(--oxblood))!important}
body.home #valsia{background:radial-gradient(80% 90% at 80% 20%,#704440,var(--wine) 60%,var(--oxblood))!important}
body.home #atelier{background:var(--oat)!important}
body.home #voices{background:var(--oxblood)!important}
body.home #faq{background:var(--taupe)!important}
body.home #about{background:linear-gradient(160deg,var(--wine),var(--oxblood))!important}
body.home #at-home{background:var(--walnut)!important}
body.home #boutique{background:var(--oat)!important}
body.home #gift{background:var(--walnut)!important}
body.home #sonic{background:linear-gradient(170deg,var(--oxblood),#311b14)!important}
body.home #learn{background:var(--oxblood)!important}
body.home #professionals{background:radial-gradient(90% 100% at 100% 0%,#704440,var(--wine) 60%,var(--oxblood))!important}
body.home #journal{background:var(--oat)!important}
body.home #scalp-letters{background:var(--taupe)!important}
body.home #close{background:radial-gradient(90% 120% at 50% 0%,var(--wine-hi) 0%,var(--wine) 45%,var(--oxblood) 100%)!important}
body.home .deep :is(.k,.pn,.s3k),body.home #at-home .cn{color:#dcb592!important}

/* reading surfaces: calm, whisper of drawn limewash grain only */
body.home :is(#letter,#founder,#atelier,#faq,#journal,#scalp-letters,#boutique){color:var(--ink)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='320'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .26 0 0 0 0 .18 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")!important}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) :is(h1,h2,h3,h4,p,li,dt,dd,blockquote,figcaption,label,.lead,.ser,.sub,.hcap,.cap,.rnote,.also,summary,.s3k){color:var(--ink)!important}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) :is(h2,h3) em{color:#704440!important}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) .k{color:#311b14!important}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) a:not(.btn):not(.art):not(.card){color:#311b14!important;text-decoration-color:rgba(49,27,20,.4)}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique,#founder) .btn:not(.f){color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;border-color:rgba(49,27,20,.5)!important;background:transparent!important}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) :is(h2,h3){background:none!important;-webkit-text-fill-color:currentColor!important;text-shadow:none!important}
body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique,#founder) :is(div,span,i,hr).rule,body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) h2.rule::after,body.home :is(#letter,#atelier,#faq,#journal,#scalp-letters,#boutique) h2.rule::before{background:rgba(49,27,20,.3)!important}
body.home #boutique .steps3,body.home #boutique .steps3>li,body.home #faq details,body.home #faq summary{border-color:rgba(49,27,20,.28)!important}
body.home #scalp-letters input{background:rgba(255,250,243,.55)!important;border:1px solid rgba(49,27,20,.4)!important;color:var(--ink)!important}
body.home #scalp-letters input::placeholder{color:rgba(42,32,25,.6)}
body.home #faq summary::before,body.home #faq summary::after{color:#311b14!important;opacity:1!important}
body.home #journal .art{background:var(--wine)!important}
body.home #journal .art :is(h3,p,.k){color:#f1e5d6!important}
body.home #journal .art .k{color:#e0b891!important}

/* the letter: cream paper laid over the join between sections */
body.home #letter{overflow:visible;position:relative;padding-bottom:clamp(40px,5vw,80px)!important}
body.home #letter .paper{position:relative;z-index:6;translate:0 clamp(70px,9vw,150px);box-shadow:0 40px 70px -30px rgba(49,27,20,.55)}
body.home #letter .paper :is(.q,.from,small,.k){color:#2a2019!important}
body.home #letter .paper .k{color:#704440!important}
body.home .founder.ivory{position:relative;overflow:visible!important}

/* ---------- type that does the composing ---------- */
body.home :is(#rituals,#philosophy,#founder,#voices,#close) h2{font-size:var(--disp)!important;line-height:.94!important;letter-spacing:-.025em!important}
body.home #rituals .wrap{display:block!important}
body.home #rituals .g6.menu{grid-column:auto!important;margin-top:clamp(40px,5vw,80px)}
body.home #rituals .head{display:block!important}
body.home #rituals .head h2{margin:10px 0 0!important}
body.home #rituals .head h2 em{display:block;padding-left:clamp(0px,14vw,240px);color:#e3b690!important}
body.home #rituals .head h2::after{display:none}
body.home #rituals .head .lead{max-width:34em;margin:36px 0 0 clamp(0px,14vw,240px)}
body.home #rituals .head .btns,body.home #rituals .rnote{margin-left:clamp(0px,14vw,240px)}
body.home #rituals .wrap{padding-top:clamp(20px,4vw,60px)}
body.home .g6.menu{border-top-color:var(--cu-line)!important}
body.home .g6.menu .rc{grid-template-columns:clamp(120px,15vw,230px) 1fr auto!important;gap:6px clamp(22px,3.4vw,56px)!important;padding:clamp(26px,3vw,44px) 0!important;border-bottom-color:var(--cu-line)!important}
body.home .g6.menu .rc img{width:100%!important;height:clamp(150px,18vw,280px)!important;border-radius:0}
body.home .g6.menu .rc:nth-child(even){margin-left:clamp(0px,7vw,120px)}
body.home .g6.menu .rc em{font-size:clamp(32px,4.2vw,68px)!important;line-height:1!important;letter-spacing:-.02em!important;counter-increment:rc}
body.home .g6.menu{counter-reset:rc}
body.home .g6.menu .rc em::before{content:counter(rc,decimal-leading-zero);display:inline-block;vertical-align:top;margin:.55em .9em 0 0;font:600 11px/1 var(--sans);letter-spacing:.2em;color:#dcb592;font-style:normal}
body.home .g6.menu .rc .pr{font-size:clamp(18px,1.6vw,24px)!important}
@media(max-width:760px){
  body.home .g6.menu .rc{grid-template-columns:96px minmax(0,1fr)!important}
  body.home .g6.menu .rc img{height:128px!important}
  body.home .g6.menu .rc:nth-child(even){margin-left:0}
  body.home .g6.menu .rc em{font-size:clamp(28px,8.4vw,40px)!important}
  body.home #rituals .head h2 em,body.home #rituals .head .lead,body.home #rituals .head .btns,body.home #rituals .rnote{padding-left:0;margin-left:0}
}

/* founder: the portrait is larger than its column and hangs up into the section above; the name is set big */
body.home .founder.ivory .fp{max-width:none;width:112%;margin:0 0 0 -4%!important;position:relative;z-index:5;translate:0 calc(-1*clamp(110px,13vw,230px))}
body.home .founder.ivory{padding-bottom:clamp(40px,6vw,100px)!important}
body.home .founder.ivory h2{margin:14px 0 8px!important;color:var(--wine)!important}
body.home .founder.ivory .always{font-size:clamp(46px,6vw,96px)!important;line-height:.98;margin-top:56px}
body.home .founder.ivory .always em{color:#704440!important}
body.home .founder.ivory .k{color:#311b14!important}
@media(max-width:760px){body.home .founder.ivory .fp{width:92%;margin:0 0 36px 0!important;translate:0 -70px}body.home #letter .paper{translate:0 40px}}

/* paths: three columns at three different heights */
body.home #paths .ph{font-size:clamp(34px,5vw,84px)!important;line-height:1!important;letter-spacing:-.02em!important;max-width:14em}
body.home .pgrid{grid-template-columns:1.2fr .9fr 1.05fr!important;gap:clamp(24px,5vw,90px)!important}
body.home .pth.p2{margin-top:clamp(0px,11vw,190px)}
body.home .pth.p3{margin-top:clamp(0px,4vw,70px)}
body.home .pth .pimg img{aspect-ratio:3/4;object-fit:cover;width:100%;height:auto}
body.home .pth h3{font-size:clamp(28px,3vw,46px)!important;line-height:1.02!important;margin:10px 0 14px}
body.home .pth .pn{color:#dcb592!important;font-size:12px!important}
@media(max-width:760px){body.home .pgrid{grid-template-columns:1fr!important}body.home .pth.p2,body.home .pth.p3{margin-top:0}}

/* philosophy: one statement, set at poster scale */
body.home .phil{grid-template-columns:1fr!important}
body.home .phil h2{max-width:9em;color:#f4e7d6!important}
body.home .phil h2::first-line{font-style:italic;color:#e3b690}
body.home .phil .body{margin-left:clamp(0px,42%,560px);max-width:30em}
body.home #philosophy .phil .body p{color:#e9d6c3!important;font-size:clamp(18px,1.6vw,24px)!important}
body.home #philosophy .diff{counter-reset:df;border-color:var(--cu-line)!important}
body.home #philosophy .diff>div{counter-increment:df;border-color:var(--cu-line)!important;padding-top:34px!important}
body.home #philosophy .diff>div::before{content:counter(df,decimal-leading-zero);display:block;font:300 clamp(54px,6vw,96px)/1 var(--serif);color:transparent;-webkit-text-stroke:1px #c99772;margin-bottom:18px;letter-spacing:-.02em}
body.home #philosophy :is(h3,.diff p){color:#f1e5d6!important}
body.home #philosophy h2.rule{font-size:clamp(34px,4vw,64px)!important;color:#f4e7d6!important}
@media(max-width:760px){body.home .phil .body{margin-left:0}body.home #philosophy .diff>div::before{font-size:56px}}

/* voices: the quote carries the section */
body.home #voices h2{font-size:clamp(34px,4.6vw,76px)!important}
body.home #voices .voice p{font-size:clamp(26px,3.2vw,52px)!important;line-height:1.14!important;color:#f4e7d6!important}
body.home #voices .voice cite{color:#dcb592!important}

/* room gallery: second photograph overlaps the first */
body.home #atelier .room{grid-template-columns:.8fr 1fr!important;gap:clamp(30px,6vw,110px)!important;align-items:center}
body.home #atelier .r2{max-width:560px;justify-self:end;box-shadow:0 30px 60px -30px rgba(49,27,20,.5)}
body.home #atelier .r3{margin-top:clamp(40px,8vw,130px);margin-left:clamp(-90px,-6vw,-20px);position:relative;z-index:2;box-shadow:0 30px 60px -30px rgba(49,27,20,.5)}
@media(max-width:760px){body.home #atelier .r3{margin:0}}

/* closing */
body.home #close h2{color:#f4e7d6!important}
body.home .founder.ivory .fx h2,body.home .founder.ivory h2{font-size:clamp(60px,8vw,132px)!important;line-height:.9!important}

/* photographs lead */
body.home .ep img{filter:brightness(.96) saturate(1)!important}
body.home .estrip:not(:hover) .ep:first-child img,body.home .ep:hover img{filter:none!important}
@media(max-width:760px){
  body.home .trust.mq{padding:4px 0!important}
  body.home .trust.mq .mqt{display:grid!important;grid-template-columns:1fr 1fr;width:100%!important;gap:0}
  body.home .trust.mq span{padding:12px 6px!important;white-space:normal!important;text-align:center;font-size:14px!important;letter-spacing:.02em!important}
  body.home .trust.mq span::after,body.home .trust.mq span[aria-hidden]{display:none!important}
}

/* botanical journey: numbered chapters, in the manner of an herbarium index */
body.home{counter-reset:jr}
body.home :is(#rituals .head .k,#letter .letter>div:first-child .k,#founder .fx .k,#paths .wrap>.k,#philosophy .phil .k,#seasonal .head .k,#hair .at .k,#valsia .val>div:first-child .k,#atelier .head .k,#voices .head .k,#faq .k,#about .ab>.k,#boutique .head .k){counter-increment:jr}
body.home :is(#rituals .head .k,#letter .letter>div:first-child .k,#founder .fx .k,#paths .wrap>.k,#philosophy .phil .k,#seasonal .head .k,#hair .at .k,#valsia .val>div:first-child .k,#atelier .head .k,#voices .head .k,#faq .k,#about .ab>.k,#boutique .head .k)::before{content:counter(jr,lower-roman) ".";display:inline-block;margin-right:14px;font:italic 400 17px/1 var(--serif);letter-spacing:0;text-transform:none;color:inherit;opacity:.9}
@media(max-width:760px){body.home #atelier .room{grid-template-columns:1fr!important}body.home #atelier .r2{max-width:none;justify-self:stretch;width:100%}}

/* ===== MOTION, round 2 ===== */
/* arrival -> hero: the photograph keeps pushing in while the veil dissolves; the hero then settles (home.css heroSettle) */
@media (prefers-reduced-motion:no-preference){
  .splash.arrival.out .ar-photo img{scale:1.07;transition:scale 1.5s cubic-bezier(.3,.1,.2,1)}
  .splash.arrival.out .ar-copy,.splash.arrival.out .ar-veil{opacity:0;transition:opacity .55s ease}
  .splash.arrival.out .ar-petals{transition:opacity .9s ease;opacity:0}
}
/* scroll-driven photography: only four images, a slow settle as each enters. Not parallax everywhere. */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    body.home .founder .fp,body.home #valsia figure.a,body.home #atelier .r2,body.home #gift{overflow:clip}
    body.home .founder .fp img,body.home #valsia figure.a img,body.home #atelier .r2 img,body.home #gift>img{
      animation:lvsSettle linear both;animation-timeline:view();animation-range:entry 0% cover 55%;transform-origin:50% 40%}
  }
}
@keyframes lvsSettle{from{transform:scale(1.09) translateY(2.5%)}to{transform:scale(1) translateY(0)}}
body.home .founder.ivory .fr{color:#5f4535!important}

/* ===== wordmark light: a clear sweep of light plus small star glints, clipped to the letterforms by the wordmark's own mask ===== */
.wm{position:relative}
.wm .gl{display:none}
@media (prefers-reduced-motion:no-preference){
  .wm::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(104deg,rgba(255,236,218,0) 36%,rgba(255,222,196,.35) 43%,rgba(255,244,232,.8) 50%,rgba(255,222,196,.35) 57%,rgba(255,236,218,0) 64%) 0 0/300% 100% no-repeat;
    background-position:0% 0;opacity:0;animation:lvsSheen 5.2s cubic-bezier(.4,.1,.3,1) 1.8s infinite}
  .splash.arrival .wm::after{animation-delay:1.2s}
  html.arriving .hero .wm::after,html.arriving .hero .wm .gl{animation-play-state:paused}
  .wm .gl{display:block;position:absolute;height:46%;aspect-ratio:1;translate:-50% -50%;pointer-events:none;opacity:0;
    background:
      radial-gradient(circle,#fff 0 7%,rgba(255,236,214,.9) 9%,rgba(255,214,180,0) 38%),
      linear-gradient(90deg,transparent 0,rgba(255,240,222,.95) 50%,transparent 100%) 50% 50%/100% 5% no-repeat,
      linear-gradient(0deg,transparent 0,rgba(255,240,222,.95) 50%,transparent 100%) 50% 50%/5% 100% no-repeat;
    animation:lvsGlint 4.6s ease-in-out infinite}
  .nav-brand .wm::after,.logo .wm::after,footer .wm::after{animation-duration:8s;animation-delay:4s}
}
@keyframes lvsSheen{0%{background-position:0% 0;opacity:1}26%{background-position:100% 0;opacity:1}27%,100%{background-position:100% 0;opacity:0}}
@keyframes lvsGlint{0%,70%,100%{opacity:0;scale:.2;rotate:0deg}80%{opacity:1;scale:1;rotate:20deg}90%{opacity:0;scale:.4;rotate:45deg}}

/* pointer light on the hero wordmark (desktop, fine pointers only): the copper catches a highlight that follows the cursor */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .hero .hwm .wm::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:var(--lo,0);transition:opacity .5s ease;
    background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,240,224,.95) 0,rgba(255,214,184,.45) 14%,rgba(255,214,184,0) 34%)}
}

/* copper panel: the owner's top tile at native size, used once, as a plaque (not tiled, not stretched past 1:1 on desktop) */
body.home #close .sign{display:block;box-sizing:border-box;width:min(902px,100%);aspect-ratio:902/381;margin:clamp(40px,5vw,72px) auto 0;padding:0 24px;display:flex;align-items:center;justify-content:center;text-align:center;
  font-family:var(--serif);font-style:italic;font-size:clamp(30px,4.6vw,60px);color:#f6e9da!important;-webkit-text-fill-color:#f6e9da!important;text-shadow:0 2px 24px rgba(49,27,20,.7);
  background:radial-gradient(ellipse 62% 72% at 50% 50%,rgba(49,27,20,.66),rgba(49,27,20,.2) 70%,rgba(49,27,20,0) 100%),url(/images/material/copper-panel.jpg) center/100% 100% no-repeat;
  border:1px solid rgba(214,170,130,.5);box-shadow:0 40px 80px rgba(20,4,10,.45)}

/* floor-light: a low rose-copper glow along the foot of a few dark wine sections, the way a lit plinth glows in a dark room (no new hue) */
body.home :is(#rituals,#valsia,#close){position:relative}
body.home :is(#rituals,#valsia,#close)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;pointer-events:none;mix-blend-mode:screen;
  background:radial-gradient(70% 100% at 50% 100%,rgba(201,144,108,.2),rgba(201,144,108,0) 72%)}
