/*lumiere-bundle bundle-tx src:tx=37674,tx2=40153 */
/* ---- tx.css ---- */
/* =====================================================================
   Lumiere: the eight skin treatment pages (/treatments/*).
   Built on the shared core system (core.css .k-* tokens). Mobile first. Body text is 18px or larger.
   Motion lives in tx.js; every effect here is a static, readable fallback when motion is off.
   ===================================================================== */
.tx{--g:var(--k-gold);--gd:var(--k-gold-d);--tl:calc(var(--k-navbot,100px) + 14px)}
.tx .link{color:var(--g);font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.tx .k-sec--cream .link,.tx .k-sec--cream2 .link{color:#6A5A2C}
.tx [data-tx-layer]{--k:10;translate:calc(var(--px,0)*var(--k)*1px) calc(var(--py,0)*var(--k)*1px + var(--sy,0)*var(--k)*.3px)}
.tx figure{margin:0}
.tx img{max-width:100%}
.txs{overflow:visible}
.txs__head{max-width:42rem}
.txs__head.k-head--c{margin-inline:auto;text-align:center}
.txs__head .k-h2{margin:0}
.txs__head .k-p{margin-top:16px}
.k-sec--ink .k-h2,.k-sec--dark .k-h2{color:var(--k-ivory)}
.txs__head{margin-bottom:clamp(26px,3.6vw,48px)}

/* ---------- hero (shared frame) ---------- */
.txh{position:relative;isolation:isolate;overflow:hidden;color:var(--k-ivory);background:radial-gradient(70% 90% at 78% 28%,#2E2317 0%,#1C1814 56%,#100C08 100%);padding:calc(var(--hdr) + clamp(20px,4vw,46px)) 0 clamp(44px,6vw,84px)}
.txh__grid{display:grid;gap:30px;align-items:center}
.txh__txt{text-align:center;position:relative;z-index:2}
.txh__txt .k-lede{margin-inline:auto}
.txh__h1{font-size:clamp(32px,4.2vw,60px);overflow-wrap:break-word}
.txh__meta{display:flex;justify-content:center;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin:22px 0 0;font-size:19px;color:var(--k-muted-l);font-weight:600}
.txh__price b{font-size:clamp(36px,4vw,48px);font-weight:800;letter-spacing:-.03em;background:var(--k-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.txh__txt .k-btns{justify-content:center}
.txh__vis{position:relative;width:100%;max-width:540px;margin-inline:auto;z-index:1}
@media (min-width:961px){
	.txh__grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:clamp(36px,5vw,84px);min-height:min(76vh,700px)}
	.txh__txt{text-align:left}
	.txh__txt .k-lede{margin-inline:0}
	.txh__meta,.txh__txt .k-btns{justify-content:flex-start}
	.txh__vis{max-width:none}
}
.txh figure img{width:100%;height:100%;object-fit:cover}
.txt{background:#15100B;border-block:1px solid rgba(208,190,133,.2)}
.txt__in{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 30px;list-style:none;margin-inline:auto;padding-block:16px;font-size:18px;font-weight:700;color:var(--g);text-align:center;line-height:1.4}
.txt__in li{display:inline-flex;align-items:center;gap:10px}
.txt__in li+li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--g);opacity:.7}
@media (max-width:640px){.txt__in li+li::before{display:none}.txt__in{flex-direction:column;gap:2px;align-items:center}}

/* 1 Oxygen: porthole + bubbles + equipment lifted out in front */
.oxh{position:relative;aspect-ratio:1/1;width:100%}
.oxh__port{position:absolute;inset:6% 2% 8% 12%;border-radius:50%;overflow:hidden;box-shadow:0 40px 90px -36px rgba(0,0,0,.85),0 0 0 1px rgba(208,190,133,.45)}
.oxh__ring{position:absolute;inset:4% 0 6% 10%;border-radius:50%;border:1px solid rgba(208,190,133,.4);animation:txPulse 7s ease-in-out infinite}
.oxh__ring--2{inset:-3% -4% -1% 5%;animation-delay:-3.5s;opacity:.6}
.oxh__cut{position:absolute;left:-4%;bottom:-6%;width:44%;filter:drop-shadow(0 26px 30px rgba(0,0,0,.55))}
.oxh__cut img{width:100%;height:auto;object-fit:contain}
.oxh__b{position:absolute;left:var(--x);top:var(--y);width:var(--s);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 30%,rgba(255,255,255,.9),rgba(255,248,225,.28) 40%,rgba(208,190,133,.1) 70%);border:1px solid rgba(255,244,214,.35);opacity:0;pointer-events:none;animation:oxRise 9s ease-in infinite;animation-delay:var(--d);z-index:3}
@keyframes oxRise{0%{transform:translateY(40px) scale(.6);opacity:0}15%{opacity:.9}100%{transform:translateY(-150px) scale(1.05);opacity:0}}
@keyframes txPulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.035);opacity:1}}

/* 2 Deluxe: photograph built into the background, mask opens on scroll */
.txh--mask .dxh__bg{position:relative;margin:0 var(--gut) 20px;height:min(66vw,330px);border-radius:26px;overflow:hidden;box-shadow:0 0 0 1px rgba(208,190,133,.3)}
.txh--mask .dxh__bg img{width:100%;height:100%;object-fit:cover}
.txh--mask .dxh__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(16,12,8,.5))}
.dxh{display:flex;justify-content:center}
.dxh__card{padding:14px 22px;border-radius:16px;background:rgba(16,12,8,.78);backdrop-filter:blur(8px);border:1px solid rgba(208,190,133,.45);text-align:center}
.dxh__card b{display:block;color:var(--g);font-size:20px}.dxh__card span{font-size:18px;color:var(--k-muted-l)}
@media (min-width:961px){
	.txh--mask{padding-top:calc(var(--hdr) + 36px)}
	.txh--mask .dxh__bg{position:absolute;z-index:-1;margin:0;inset:0 0 0 36%;height:auto;border-radius:0;box-shadow:none;clip-path:inset(9% 3% 9% 7% round 44px)}
	.txh--mask .dxh__bg::after{background:linear-gradient(90deg,#1C1814 0,rgba(28,24,20,.55) 18%,transparent 46%),linear-gradient(0deg,#100C08 0,transparent 22%)}
	.dxh{min-height:clamp(380px,44vw,560px);align-items:flex-end;justify-content:flex-end}
}

/* 3 LuminFusion: tilted panel, LED glow and a slow sweep of light */
.lmh{position:relative;aspect-ratio:1.05/1;perspective:1200px}
.lmh__halo{position:absolute;inset:-8%;background:radial-gradient(closest-side,rgba(255,110,60,.36),rgba(255,140,80,.12) 55%,transparent 76%);filter:blur(10px);animation:lmGlow 5s ease-in-out infinite}
.lmh__panel{position:absolute;inset:3% 6% 12% 0;border-radius:26px;overflow:hidden;transform:rotateY(-8deg) rotateX(2deg);box-shadow:0 44px 80px -36px rgba(0,0,0,.85),0 0 0 1px rgba(208,190,133,.32)}
.lmh__sweep{position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(255,170,120,.34) 50%,transparent 62%);transform:translateX(-130%);animation:lmSweep 6.5s ease-in-out infinite;pointer-events:none}
.lmh__inset{position:absolute;right:0;bottom:0;width:34%;aspect-ratio:4/5;border-radius:20px;overflow:hidden;border:2px solid rgba(208,190,133,.6);box-shadow:0 26px 40px -18px rgba(0,0,0,.8)}
@keyframes lmGlow{0%,100%{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
@keyframes lmSweep{0%,12%{transform:translateX(-130%)}60%,100%{transform:translateX(130%)}}

/* 4 Buccal: arch with rings that spread like released tension */
.bch{position:relative;aspect-ratio:1/1.08;max-width:480px;margin-inline:auto}
.bch__arch{position:absolute;inset:0 12% 0 12%;border-radius:999px 999px 28px 28px;overflow:hidden;box-shadow:0 40px 80px -34px rgba(0,0,0,.85),0 0 0 1px rgba(208,190,133,.45)}
.bch__r{position:absolute;inset:0 12% 0 12%;border-radius:999px 999px 28px 28px;border:1px solid rgba(208,190,133,.55);opacity:0;animation:bcRing 7.5s ease-out infinite}
.bch__r--2{animation-delay:2.5s}.bch__r--3{animation-delay:5s}
.bch__dot{position:absolute;left:-2%;bottom:6%;width:34%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:2px solid var(--g);box-shadow:0 26px 40px -18px rgba(0,0,0,.8)}
@keyframes bcRing{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.32);opacity:0}}

/* 5 Peels: diagonal cut that bleeds off the right edge */
.txh--diag .pch__bg{position:relative;margin:0 var(--gut) 20px;height:min(64vw,320px);overflow:hidden;clip-path:polygon(0 0,100% 0,100% 90%,0 100%)}
.txh--diag .pch__bg img{width:100%;height:100%;object-fit:cover}
.pch__sheen{position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,236,190,.3) 50%,transparent 60%);transform:translateX(-130%);animation:lmSweep 8s ease-in-out infinite;pointer-events:none}
.pch{min-height:0}
@media (min-width:961px){
	.txh--diag .pch__bg{position:absolute;z-index:-1;margin:0;right:0;top:0;bottom:0;width:56%;height:auto;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}
	.txh--diag .pch__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,24,20,.55),transparent 34%)}
	.pch{min-height:clamp(380px,42vw,540px)}
}

/* 6 Skin needling: three photographs stacked in depth */
.sph{position:relative;aspect-ratio:1/.95;max-width:560px;margin-inline:auto}
.sph figure{position:absolute;border-radius:22px;overflow:hidden;box-shadow:0 34px 60px -26px rgba(0,0,0,.85),0 0 0 1px rgba(208,190,133,.4)}
.sph__b{left:26%;top:0;width:74%;aspect-ratio:1.35;rotate:5deg}
.sph__f{left:4%;top:16%;width:52%;aspect-ratio:4/5;rotate:-3deg;z-index:2}
.sph__s{right:0;bottom:0;width:32%;aspect-ratio:3/4;rotate:6deg;z-index:3}

/* 7 Hydro + micro: two panels, one raised */
.mdh{position:relative;aspect-ratio:1/1.02;max-width:540px;margin-inline:auto}
.mdh figure{position:absolute;width:52%;aspect-ratio:3/4.2;border-radius:26px;overflow:hidden;box-shadow:0 34px 60px -26px rgba(0,0,0,.85),0 0 0 1px rgba(208,190,133,.4)}
.mdh__a{left:0;top:0;animation:mdFloat 8s ease-in-out infinite}
.mdh__b{right:0;bottom:0;animation:mdFloat 8s ease-in-out -4s infinite}
.mdh figcaption{position:absolute;left:12px;bottom:12px;padding:7px 16px;border-radius:99px;background:rgba(16,12,8,.78);color:var(--g);font-weight:700;font-size:18px;border:1px solid rgba(208,190,133,.4)}
.mdh__or{position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:3;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--k-grad);color:#1A1307;font-weight:800;font-size:18px;box-shadow:0 16px 30px -10px rgba(0,0,0,.7)}
@keyframes mdFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

/* 8 Brows, lashes, sugaring: two halves, one seam */
.brh{position:relative;aspect-ratio:1/1;max-width:520px;margin-inline:auto;border-radius:26px;overflow:hidden;box-shadow:0 40px 80px -34px rgba(0,0,0,.85),0 0 0 1px rgba(208,190,133,.4);background:#241C14}
.brh figure{position:absolute;inset:0}
.brh__a{clip-path:polygon(0 0,100% 0,0 100%)}
.brh__b{clip-path:polygon(100% 0,100% 100%,0 100%)}
.brh__seam{position:absolute;inset:0;background:linear-gradient(to top right,transparent calc(50% - 1px),var(--g) calc(50% - 1px),var(--g) calc(50% + 1px),transparent calc(50% + 1px));pointer-events:none}
.brh figcaption{position:absolute;padding:7px 16px;border-radius:99px;background:rgba(16,12,8,.78);color:var(--g);font-weight:700;font-size:18px;border:1px solid rgba(208,190,133,.4)}
.brh__a figcaption{left:14px;top:14px}.brh__b figcaption{right:14px;bottom:14px}

/* ---------- "Is this for you?" ---------- */
.txf__list{list-style:none;margin:0;padding:0}
.txf__list li{display:flex;gap:18px;align-items:flex-start;padding:20px 0;border-top:1px solid rgba(208,190,133,.28);font-size:clamp(19px,1.7vw,22px);line-height:1.5}
.txf__list li:last-child{border-bottom:1px solid rgba(208,190,133,.28)}
.txf__n{flex:none;min-width:40px;color:var(--g);font-weight:800;letter-spacing:.1em;font-size:17px;padding-top:3px}
.txf__n .ic{width:26px;height:26px;color:var(--gd)}
.k-sec--cream .txf__list li,.k-sec--cream2 .txf__list li{border-color:rgba(122,106,60,.32);color:#2A2118}
.txf__in{display:grid;gap:30px}
@media (min-width:900px){
	.txf--ledger .txf__main,.txf--cascade .txf__main{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,6vw,96px);align-items:start}
	.txf--ledger .txf__head,.txf--cascade .txf__head{position:sticky;top:var(--tl)}
	.txf--ledger .txs__head,.txf--cascade .txs__head{margin-bottom:0}
	.txf--cascade .txf__list li:nth-child(2){padding-left:28px}.txf--cascade .txf__list li:nth-child(3){padding-left:56px}.txf--cascade .txf__list li:nth-child(4){padding-left:84px}.txf--cascade .txf__list li:nth-child(5){padding-left:112px}
	.txf--split .txf__in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,6vw,96px);align-items:center}
}
.txf--cloud .txf__main{text-align:center}
.txf--cloud .txs__head{margin-inline:auto}
.txf--cloud .txf__list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.txf--cloud .txf__list li{border:1px solid rgba(122,106,60,.4);border-radius:22px;padding:14px 22px;background:#FFFBF0;text-align:left;align-items:center;max-width:34em}
.txf--cloud .txf__list li:last-child{border-bottom:1px solid rgba(122,106,60,.4)}
.txf--cloud .txf__n{min-width:0;padding:0}
.txf__fig{border-radius:200px 200px 26px 26px;overflow:hidden;aspect-ratio:4/5;max-width:420px;margin-inline:auto;box-shadow:0 34px 60px -30px rgba(40,26,8,.6),0 0 0 1px rgba(122,106,60,.4)}
.txf__fig img{width:100%;height:100%;object-fit:cover}

/* ---------- what you can expect ---------- */
.txc__list{list-style:none;margin:0;padding:0}
.txc__list li{display:grid;grid-template-columns:48px 1fr;gap:4px 14px;padding:20px 0;border-top:1px solid rgba(122,106,60,.32)}
.txc__list li:last-child{border-bottom:1px solid rgba(122,106,60,.32)}
.txc__n{color:var(--gd);font-weight:800;font-size:18px;letter-spacing:.08em;padding-top:3px}
.txc__b b{display:block;font-size:clamp(20px,1.8vw,23px);line-height:1.35;color:#241B12}
.txc__b em{display:block;font-style:normal;font-size:18.5px;line-height:1.6;color:var(--k-muted-d);margin-top:2px}
.k-sec--dark .txc__list li,.k-sec--ink .txc__list li{border-color:rgba(208,190,133,.28)}
.k-sec--dark .txc__n,.k-sec--ink .txc__n{color:var(--g)}
.k-sec--dark .txc__b b,.k-sec--ink .txc__b b{color:var(--k-ivory)}
.k-sec--dark .txc__b em,.k-sec--ink .txc__b em{color:var(--k-muted-l)}
.txc__note{margin:28px 0 0;padding:16px 20px;border-left:3px solid var(--g);font-size:18.5px;line-height:1.6;background:rgba(208,190,133,.1);border-radius:0 14px 14px 0}
.txc__in{display:grid;gap:30px}
.txc__fig{border-radius:26px;overflow:hidden;aspect-ratio:4/3.2;box-shadow:0 34px 60px -30px rgba(0,0,0,.6),0 0 0 1px rgba(208,190,133,.4)}
.txc__fig img{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){
	.txc--list .txc__in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,6vw,92px);align-items:start}
	.txc--list .txc__fig{position:sticky;top:var(--tl);aspect-ratio:4/5}
	.txc--rows .txc__main{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(40px,6vw,96px)}
	.txc--rows .txc__head,.txc--rows .txc__note{grid-column:1/-1}
	.txc--rows .txc__list{display:contents}
	.txc--rows .txc__list li:nth-last-child(2):nth-child(odd){border-bottom:1px solid rgba(122,106,60,.32)}
	.txc--rows .txc__note{max-width:46rem}
}

/* ---------- why Lumiere ---------- */
.txw__list{display:grid;gap:0}
.txw__it{padding:24px 0;border-top:1px solid rgba(208,190,133,.28)}
.txw__it h3{margin:0 0 8px;font-size:clamp(21px,2vw,25px);color:var(--g);line-height:1.3}
.txw__it p{margin:0;font-size:18.5px;line-height:1.7}
.k-sec--cream .txw__it,.k-sec--cream2 .txw__it{border-color:rgba(122,106,60,.32)}
.k-sec--cream .txw__it h3,.k-sec--cream2 .txw__it h3{color:#6A5A2C}
.k-sec--cream .txw__it p,.k-sec--cream2 .txw__it p{color:var(--k-muted-d)}
.k-sec--dark .txw__it p,.k-sec--ink .txw__it p{color:var(--k-muted-l)}
@media (min-width:900px){.txw__list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));column-gap:clamp(24px,3vw,48px)}.txw__list:has(.txw__it:only-child){grid-template-columns:minmax(0,46rem)}}

/* ---------- appointment steps ---------- */
.txp__in{display:grid;gap:30px}
.txp__list{list-style:none;margin:0;padding:0;position:relative}
.txp__line{position:absolute;left:22px;top:24px;bottom:40px;width:2px;background:rgba(208,190,133,.25);display:block}
.txp__line i{display:block;width:100%;height:100%;background:var(--k-grad);transform-origin:top;transform:scaleY(var(--f,1))}
.txp__it{display:grid;grid-template-columns:46px 1fr;gap:20px;padding:0 0 34px;position:relative}
.txp__it:last-child{padding-bottom:0}
.txp__n{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:17px;background:#241C14;border:1px solid rgba(208,190,133,.5);color:var(--g);transition:background .4s,color .4s;position:relative;z-index:1}
.txp__it.is-on .txp__n{background:var(--k-grad);color:#1A1307;border-color:transparent}
.txp__c h3{margin:6px 0 4px;font-size:clamp(21px,2vw,25px);line-height:1.3;color:var(--k-ivory)}
.txp__c p{margin:0;font-size:18.5px;line-height:1.65;color:var(--k-muted-l)}
.k-sec--cream .txp__n,.k-sec--cream2 .txp__n{background:#FFFBF0;color:var(--gd);border-color:rgba(122,106,60,.5)}
.k-sec--cream .txp__it.is-on .txp__n,.k-sec--cream2 .txp__it.is-on .txp__n{background:var(--k-grad);color:#1A1307}
.k-sec--cream .txp__line,.k-sec--cream2 .txp__line{background:rgba(122,106,60,.25)}
.k-sec--cream .txp__c h3,.k-sec--cream2 .txp__c h3{color:#241B12}
.k-sec--cream .txp__c p,.k-sec--cream2 .txp__c p{color:var(--k-muted-d)}
.txp__fig{margin-top:28px;border-radius:26px;overflow:hidden;aspect-ratio:4/3.4;box-shadow:0 34px 60px -30px rgba(0,0,0,.6),0 0 0 1px rgba(208,190,133,.4)}
.txp__fig img{width:100%;height:100%;object-fit:cover}
.txp--rail .txp__fig img[src*="ox-cut"]{object-fit:contain}
.txp__after{margin-top:clamp(36px,5vw,64px);padding:24px 28px;border:1px solid rgba(208,190,133,.4);border-radius:20px;max-width:52rem}
.txp__after h3{margin:0 0 6px;color:var(--g);font-size:22px}.txp__after p{margin:0;font-size:18.5px;color:var(--k-muted-l)}
@media (min-width:900px){
	.txp--rail .txp__in{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,6vw,96px);align-items:start}
	.txp--rail .txp__side{position:sticky;top:var(--tl)}
	.txp--path .txp__in{display:block}
	.txp--path .txp__side{text-align:center}.txp--path .txs__head{margin-inline:auto;text-align:center}
	.txp--path .txp__list{max-width:980px;margin:clamp(30px,4vw,56px) auto 0}
	.txp--path .txp__line{left:50%;margin-left:-1px;top:20px;bottom:20px}
	.txp--path .txp__it{display:block;width:calc(50% - 44px);padding:20px 26px;margin-bottom:26px;border:1px solid rgba(122,106,60,.35);border-radius:18px;background:#FFFBF0}
	.txp--path .txp__it:nth-child(even){margin-left:auto}
	.txp--path .txp__n{position:absolute;top:14px}
	.txp--path .txp__it:nth-child(odd) .txp__n{right:-71px}
	.txp--path .txp__it:nth-child(even) .txp__n{left:-71px}
	.txp--path .txp__c h3{margin-top:0}
	.txp--path .txp__line{z-index:0}
	/* row: five steps across, line along the circles */
	.txp--row .txp__in{display:block}.txp--row .txp__side{text-align:center}.txp--row .txs__head{margin-inline:auto;text-align:center}
	.txp--row .txp__list{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:clamp(30px,4vw,56px)}
	.txp--row .txp__line{left:23px;right:23px;top:22px;bottom:auto;width:auto;height:2px}
	.txp--row .txp__line i{transform:scaleX(var(--f,1));transform-origin:left}
	.txp--row .txp__it{display:block;padding:0}
	.txp--row .txp__n{margin-bottom:16px}
	.txp--row .txp__c h3{margin-top:0}
}
.txp--stack{}
.dxs{list-style:none;margin:0 auto;padding:0;max-width:860px}
.dxs__it{display:flex;gap:20px;align-items:center;padding:22px 24px;margin-bottom:16px;background:#FFFBF0;border:1px solid rgba(122,106,60,.35);border-radius:20px;box-shadow:0 20px 40px -26px rgba(60,40,10,.45)}
.dxs__n{flex:none;font-size:clamp(34px,5vw,50px);font-weight:800;line-height:1;color:var(--gd);letter-spacing:-.03em;min-width:64px}
.dxs__it h3{margin:0 0 2px;font-size:clamp(21px,2vw,25px);color:#241B12;line-height:1.3}
.dxs__it p{margin:0;font-size:18.5px;color:var(--k-muted-d);line-height:1.6}
@media (min-width:900px){.dxs__it{position:sticky;top:calc(var(--k-navbot,110px) + 18px + var(--i)*16px);min-height:110px;margin-bottom:26px}}

/* ---------- results, reviews ---------- */
.txr__in{display:grid;gap:30px}
.txr__tip{margin:20px 0 0;padding:14px 18px;border-radius:14px;background:rgba(122,106,60,.14);font-weight:600;font-size:18.5px;line-height:1.6}
.txr__q{padding:28px;border-radius:24px;background:#1C1814;color:var(--k-ivory);border:1px solid rgba(208,190,133,.5);box-shadow:0 30px 60px -34px rgba(0,0,0,.7)}
.txr__stars{display:block;color:var(--g);letter-spacing:.18em;font-size:20px;margin-bottom:10px}
.txr__q blockquote{margin:0;font-size:clamp(19px,1.8vw,22px);line-height:1.65}
.txr__q figcaption{margin-top:14px;color:var(--g);font-weight:700;font-size:17px}
.txr__rev .link{display:inline-block;margin-top:18px}
.txr__rev--link{padding:26px;border:1px solid rgba(122,106,60,.4);border-radius:20px;background:#FFFBF0}
.txr__rev--link p{margin:0;font-size:19px;color:var(--k-muted-d)}
@media (min-width:900px){.txr__in{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,6vw,92px);align-items:start}}

/* ---------- price box ---------- */
.txq__box{max-width:900px;margin-inline:auto;padding:clamp(26px,4vw,52px);border-radius:28px;background:linear-gradient(160deg,#2B2116,#1C1814 60%);border:1px solid rgba(208,190,133,.5);box-shadow:0 40px 90px -44px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,236,190,.1)}
.txq__top{text-align:center;margin-bottom:26px}
.txq__top .k-ey{margin-bottom:10px}
.txq__t{margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:700;line-height:1.25;color:var(--k-ivory)}
.txq__p{margin:10px 0 0;display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:6px 14px}
.txq__p b{font-size:clamp(54px,8vw,88px);line-height:1;font-weight:800;letter-spacing:-.04em;background:var(--k-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.txq__p b.txq__ask{font-size:clamp(30px,4.4vw,46px)}
.txq__p span{font-size:20px;color:var(--k-muted-l);font-weight:600}
.txq__incl{list-style:none;margin:0 0 24px;padding:22px 0;border-block:1px solid rgba(208,190,133,.28);display:grid;gap:12px 28px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.txq__incl li{display:flex;gap:10px;align-items:center;font-size:18.5px;color:var(--k-ivory);line-height:1.4}
.txq__incl .ic{width:22px;height:22px;flex:none;color:var(--g)}
.txq__credit{display:flex;gap:14px;align-items:flex-start;margin:0 0 6px;padding:16px 20px;border-radius:16px;background:rgba(208,190,133,.12);border:1px solid rgba(208,190,133,.35);font-size:18.5px;line-height:1.55;color:var(--k-ivory)}
.txq__credit .ic{flex:none;color:var(--g);margin-top:2px}
.txq__credit .link{display:block;margin-top:4px;font-size:17px}
.txq__credit--plain{background:none;border:0;padding:0 0 0 4px;color:var(--k-muted-l)}
.txq__btn{margin-top:24px;text-align:center}

/* ---------- check first, FAQ, related ---------- */
.txk__in{display:flex;gap:20px;align-items:flex-start;max-width:58rem}
.txk__ic{flex:none;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#FFFBF0;border:1px solid rgba(122,106,60,.45);color:var(--gd)}
.txk__h{margin:0 0 8px;font-size:clamp(22px,2.2vw,28px);color:#241B12;line-height:1.3}
.txk__in p{margin:0;font-size:18.5px;line-height:1.7;color:var(--k-muted-d)}
@media (max-width:640px){.txk__in{flex-direction:column;align-items:center;text-align:center}}
.txy__in{max-width:860px}
.txy__in .fq__q{font-size:clamp(19px,1.8vw,22px)}
.txn{background:#15100B;border-top:1px solid rgba(208,190,133,.2)}
.txn__in{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center;justify-content:center;padding-block:26px}
.txn__l{margin:0 10px 0 0;color:var(--k-muted-l);font-weight:700;font-size:18px}
.txn ul{display:contents;list-style:none;margin:0;padding:0}
.txn a{display:inline-flex;align-items:center;min-height:48px;padding:0 20px;border-radius:99px;border:1px solid rgba(208,190,133,.45);color:var(--g);font-weight:700;font-size:18px;transition:background .3s,color .3s}
.txn a:hover{background:var(--g);color:#1A1307}

/* ---------- page: Oxygen ---------- */
.oxw__in{display:grid;gap:34px}
.oxw__layers{display:grid;gap:14px;perspective:1100px}
.oxl{display:grid;grid-template-columns:46px 1fr;column-gap:16px;padding:22px 26px;border-radius:20px;background:linear-gradient(160deg,rgba(60,46,30,.92),rgba(34,26,18,.96));border:1px solid rgba(208,190,133,.4);box-shadow:0 24px 44px -30px rgba(0,0,0,.8)}
.oxl__n{grid-row:1/3;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--k-grad);color:#1A1307;font-weight:800}
.oxl h3{margin:0;font-size:clamp(21px,2vw,25px);color:var(--k-ivory)}.oxl p{margin:2px 0 0;font-size:18.5px;color:var(--k-muted-l)}
@media (min-width:900px){.oxw__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px);align-items:center}.oxl:nth-child(2){margin-left:clamp(0px,4vw,56px)}.oxl:nth-child(3){margin-left:clamp(0px,8vw,112px)}}

/* ---------- page: Deluxe ---------- */
.dxw__in{text-align:center}
.dxw__big{max-width:26em;margin:0 auto;font-size:clamp(23px,2.8vw,36px);font-weight:600;line-height:1.4;color:var(--k-ivory)}
.dxw__chips{list-style:none;margin:30px 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.dxw__chips li{padding:12px 24px;border-radius:99px;border:1px solid rgba(208,190,133,.55);color:var(--g);font-weight:700;font-size:19px}
.dxw__sub{margin-inline:auto;text-align:center}
.dxq__in{max-width:58rem}
.dxq__q{margin:0;font-size:clamp(22px,2.6vw,32px);line-height:1.5;font-weight:600;color:var(--k-ivory)}
.dxq__s{margin:22px 0 0;color:var(--g);font-weight:700;font-size:clamp(20px,2vw,24px)}

/* ---------- page: LuminFusion ---------- */
.lmw__in{display:grid;gap:36px}
.lmw__h{margin:0 0 20px;font-size:clamp(24px,2.6vw,32px);line-height:1.2;color:var(--k-ivory)}
.lmw__h em{font-style:normal;color:var(--g)}
.lmw__list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.lmw__it{position:relative;overflow:hidden;display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;padding:22px 24px;border-radius:20px;border:1px solid rgba(208,190,133,.28);background:rgba(255,255,255,.025);transition:opacity .5s,border-color .5s,background .5s,box-shadow .5s}
.lmw__n{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:19px;color:var(--g);border:1px solid rgba(208,190,133,.5)}
.lmw__it h4{margin:0 0 4px;font-size:clamp(22px,2vw,26px);color:var(--k-ivory)}.lmw__it p{margin:0;font-size:18.5px;color:var(--k-muted-l)}
.lmw__glow{position:absolute;inset:auto -20% -60% auto;width:70%;aspect-ratio:1;background:radial-gradient(closest-side,rgba(255,130,80,.4),transparent 70%);opacity:0;transition:opacity .6s;pointer-events:none}
.tx-on .lmw__it:not(.is-lit){opacity:.72}
.lmw__it.is-lit{border-color:rgba(255,160,110,.65);background:linear-gradient(160deg,rgba(120,50,30,.32),rgba(34,26,18,.9));box-shadow:0 0 44px -12px rgba(255,120,70,.45)}
.lmw__it.is-lit .lmw__glow{opacity:1}.lmw__it.is-lit .lmw__n{background:var(--k-grad);color:#1A1307;border-color:transparent}
@media (min-width:900px){.lmw__in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,6vw,92px);align-items:start}}
.lmc__grid{display:grid;gap:18px;max-width:900px;margin-inline:auto}
.lmc__col{padding:28px;border-radius:24px;border:1px solid rgba(208,190,133,.3);background:rgba(255,255,255,.03)}
.lmc__col--on{border-color:rgba(208,190,133,.7);background:linear-gradient(160deg,rgba(208,190,133,.14),rgba(255,255,255,.02))}
.lmc__col h3{margin:0;font-size:clamp(22px,2.2vw,27px);color:var(--k-ivory)}
.lmc__tag{margin:4px 0 14px;color:var(--g);font-weight:700;font-size:18px}
.lmc__col ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}.lmc__col li{font-size:18.5px;color:var(--k-muted-l);padding-left:22px;position:relative;line-height:1.55}
.lmc__col li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:50%;background:var(--g)}
@media (min-width:760px){.lmc__grid{grid-template-columns:1fr 1fr}}

/* ---------- page: Buccal ---------- */
.bcw__in{display:grid;gap:36px;align-items:center}
.bcw__imgs{position:relative;aspect-ratio:1/1.02;max-width:520px;margin-inline:auto;width:100%}
.bcw__a{position:absolute;inset:0 20% 20% 0;border-radius:26px;overflow:hidden;box-shadow:0 34px 60px -30px rgba(0,0,0,.8),0 0 0 1px rgba(208,190,133,.4)}
.bcw__b{position:absolute;right:0;bottom:0;width:48%;aspect-ratio:3/4;border-radius:200px 200px 22px 22px;overflow:hidden;border:2px solid var(--g);box-shadow:0 30px 50px -24px rgba(0,0,0,.85)}
.bcw__a img,.bcw__b img{width:100%;height:100%;object-fit:cover}
.bcw__tag{position:absolute;left:14px;bottom:14px;padding:10px 18px;border-radius:99px;background:rgba(16,12,8,.8);border:1px solid rgba(208,190,133,.45);font-size:18px;color:var(--k-ivory)}.bcw__tag b{color:var(--g)}
@media (min-width:900px){.bcw__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px)}}
.bcq__in{text-align:center}
.bcq__big{max-width:30em;margin:0 auto;font-size:clamp(22px,2.6vw,32px);line-height:1.5;font-weight:600;color:var(--k-ivory)}
.bcq__s{margin:22px auto 0;max-width:30em;color:var(--g);font-weight:700;font-size:clamp(20px,2vw,24px)}

/* ---------- page: Peels ---------- */
.pcw__in{display:grid;gap:36px}
.pcw__spec{align-self:center}
.pcw__bar{position:relative;height:16px;border-radius:99px;background:linear-gradient(90deg,#EADFB8,#D0BE85 42%,#A8643F 100%);box-shadow:0 0 0 1px rgba(208,190,133,.4)}
.pcw__pin{position:absolute;left:var(--p,38%);top:50%;translate:-50% -50%;width:30px;height:30px;border-radius:50%;background:#1C1814;border:3px solid var(--g);box-shadow:0 10px 20px -6px rgba(0,0,0,.8)}
.pcw__pin b{position:absolute;bottom:calc(100% + 14px);left:50%;translate:-50% 0;white-space:nowrap;padding:8px 16px;border-radius:99px;background:var(--k-grad);color:#1A1307;font-size:17px}
.pcw__ends{display:flex;justify-content:space-between;margin-top:18px;font-weight:700;font-size:18px;color:var(--k-muted-l)}
.pcw__spec{padding-top:52px}
@media (min-width:900px){.pcw__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px)}}
.pcq__trio{display:grid;gap:14px;max-width:1000px;margin-inline:auto}
.pcq__c{padding:26px;border-radius:22px;border:1px solid rgba(208,190,133,.25);background:rgba(255,255,255,.03);text-align:center}
.pcq__c span{display:block;font-weight:800;font-size:clamp(21px,2vw,25px);color:var(--k-muted-l);margin-bottom:6px}
.pcq__c p{margin:0;font-size:18.5px;color:var(--k-muted-l);line-height:1.6}
.pcq__c--mid{border-color:rgba(208,190,133,.75);background:linear-gradient(160deg,rgba(208,190,133,.16),rgba(255,255,255,.03))}.pcq__c--mid span{color:var(--g)}.pcq__c--mid p{color:var(--k-ivory)}
.pcq__s{max-width:46rem;margin:28px auto 0;text-align:center;font-size:19px;color:var(--k-muted-l)}
@media (min-width:800px){.pcq__trio{grid-template-columns:1fr 1.15fr 1fr;align-items:center}.pcq__c--mid{padding-block:40px}}
.pca__tl{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-width:1040px;margin-inline:auto}
.pca__tl li{padding:22px 24px;border-radius:20px;border:1px solid rgba(208,190,133,.25);transition:border-color .5s,background .5s,opacity .5s}
.tx-on .pca__tl li:not(.is-lit){opacity:.72}
.pca__tl li.is-lit{border-color:rgba(208,190,133,.7);background:rgba(208,190,133,.1)}
.pca__when{display:block;color:var(--g);font-weight:800;font-size:20px;margin-bottom:4px}
.pca__tl p{margin:0;font-size:18.5px;color:var(--k-muted-l);line-height:1.6}
@media (min-width:900px){.pca__tl{grid-template-columns:repeat(4,1fr)}}

/* ---------- page: Skin needling ---------- */
.spw__top{display:grid;gap:26px}
.spw__beats{list-style:none;margin:clamp(30px,4vw,56px) 0 0;padding:0;display:grid;gap:14px}
.spw__beats li{display:flex;gap:16px;align-items:center;padding:20px 24px;border-radius:20px;background:#FFFBF0;border:1px solid rgba(122,106,60,.35);font-size:20px;font-weight:600;color:#2A2118;line-height:1.45}
.spw__beats b{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--k-grad);color:#1A1307}
@media (min-width:900px){.spw__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,96px)}.spw__beats{grid-template-columns:repeat(3,1fr)}.spw__beats li{flex-direction:column;text-align:center;padding:28px 22px}}
.spq__in{max-width:58rem;text-align:center}
.spq__big{margin:0;font-size:clamp(22px,2.6vw,32px);line-height:1.5;font-weight:600;color:var(--k-ivory)}
.spt__track{position:relative;display:grid;gap:22px;max-width:1080px;margin-inline:auto;padding-left:34px}
.spt__line{position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:rgba(208,190,133,.28)}
.spt__line i{display:block;width:100%;height:100%;background:var(--k-grad);transform-origin:top;transform:scaleY(var(--f,1))}
.spt__pt{position:relative}
.spt__pt::before{content:"";position:absolute;left:-34px;top:8px;width:18px;height:18px;border-radius:50%;background:#241C14;border:2px solid var(--g);transition:background .4s}
.spt__pt.is-lit::before{background:var(--g)}
.spt__pt b{display:block;color:var(--g);font-size:clamp(21px,2vw,25px)}.spt__pt p{margin:4px 0 0;font-size:18.5px;color:var(--k-muted-l);line-height:1.6}
.spt__course{margin:clamp(28px,4vw,48px) auto 0;text-align:center;font-size:clamp(20px,2vw,24px);color:var(--k-ivory)}.spt__course b{color:var(--g)}
.spt__note{max-width:46rem;margin-inline:auto;color:var(--k-muted-l)}
@media (min-width:900px){
	.spt__track{grid-template-columns:repeat(4,1fr);gap:28px;padding:34px 0 0}
	.spt__line{left:0;right:0;top:8px;bottom:auto;width:auto;height:2px}.spt__line i{transform:scaleX(var(--f,1));transform-origin:left}
	.spt__pt::before{left:0;top:-35px}
}
.spa__in{max-width:52rem}

/* ---------- page: Hydro + micro ---------- */
.mdw__pair{display:grid;gap:16px;max-width:1040px;margin-inline:auto}
.mdw__c{position:relative;overflow:hidden;padding:clamp(26px,3vw,40px);border-radius:26px;border:1px solid rgba(208,190,133,.4)}
.mdw__c h3{margin:0 0 10px;font-size:clamp(24px,2.6vw,32px);color:var(--k-ivory);position:relative}
.mdw__c p{margin:0 0 12px;font-size:18.5px;line-height:1.7;color:var(--k-muted-l);position:relative}
.mdw__c .mdw__feel{color:var(--g);font-weight:700;margin:0}
.mdw__c--micro{background:radial-gradient(circle,rgba(208,190,133,.13) 1.5px,transparent 1.6px) 0 0/16px 16px,linear-gradient(160deg,#3A2C1B,#241C14)}
.mdw__c--hydro{background:repeating-radial-gradient(circle at 85% 15%,rgba(180,214,228,.1) 0 2px,transparent 2px 26px),linear-gradient(160deg,#2A2C2B,#1D1E1D);border-color:rgba(190,215,225,.4)}
.mdw__c--hydro .mdw__feel{color:#BFE0EA}
.mdw__note{text-align:center;margin:28px auto 0;font-size:clamp(20px,2vw,23px);font-weight:600;color:var(--k-ivory);max-width:34em}
@media (min-width:800px){.mdw__pair{grid-template-columns:1fr 1fr;gap:22px}}

/* ---------- page: Brows, lashes, sugaring ---------- */
.brs__in{display:grid;gap:30px}
.brm{list-style:none;margin:0;padding:0}
.brm li{display:flex;align-items:baseline;gap:6px;padding:15px 0;border-bottom:1px solid rgba(122,106,60,.3)}
.brm__n{font-size:clamp(19px,1.8vw,22px);font-weight:600;line-height:1.35}
.brm i{flex:1;min-width:16px;border-bottom:2px dotted rgba(122,106,60,.5);transform:translateY(-5px)}
.brm__t{font-size:18.5px;font-weight:700;color:var(--gd);white-space:nowrap}
.brs--sugar .brm li{border-color:rgba(208,190,133,.28)}.brs--sugar .brm i{border-color:rgba(208,190,133,.5)}.brs--sugar .brm__t{color:var(--g)}.brs--sugar .brm__n{color:var(--k-ivory)}
.brs__note{margin:18px 0 0;font-size:18.5px;line-height:1.65;color:var(--k-muted-d)}
.brs--sugar .brs__note{color:var(--k-muted-l)}
.brs__facts{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.brs__facts li{padding:10px 18px;border-radius:99px;border:1px solid rgba(208,190,133,.45);color:var(--g);font-weight:600;font-size:18px}
@media (min-width:900px){.brs__in{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,6vw,96px);align-items:start}}
.bra__in{text-align:center;max-width:44rem}
.bra__in .k-p{margin-inline:auto}.bra__in .k-btns{justify-content:center}

/* ---------- motion states (tx.js adds .tx-on; reduced motion shows everything) ---------- */
@media (prefers-reduced-motion:reduce){
	.oxh__b,.lmh__halo,.lmh__sweep,.pch__sheen,.bch__r,.mdh__a,.mdh__b,.oxh__ring{animation:none!important}
	.oxh__b{display:none}.bch__r{opacity:0}
	.tx [data-tx-layer]{translate:none}
	.tx .txp__line i,.tx .spt__line i{transform:none}
	.lmw__it,.pca__tl li{opacity:1!important}
}

/* gold second line: solid colour (gradient text breaks inside the split-word headings) */
.tx .k-sec--dark .k-h2 em,.tx .k-sec--ink .k-h2 em,.tx .lmw__h em{background:none;-webkit-text-fill-color:var(--g);color:var(--g)}

.txh--led .txh__h1,.txh--dual .txh__h1{font-size:clamp(30px,3.3vw,50px)}
.txs__head.k-head--c+*{margin-top:0}

/* heading sizes for this section (override the shared page scale; no oversized headings) */
.lm-core .tx .txh__h1{font-size:clamp(34px,9.4vw,46px);line-height:1.06}
.lm-core .tx .txh--led .txh__h1,.lm-core .tx .txh--dual .txh__h1{font-size:clamp(29px,8vw,40px)}
@media (min-width:600px){.lm-core .tx .txh__h1{font-size:clamp(42px,6vw,56px)}.lm-core .tx .txh--led .txh__h1,.lm-core .tx .txh--dual .txh__h1{font-size:clamp(32px,5vw,44px)}}
@media (min-width:961px){.lm-core .tx .txh__h1{font-size:clamp(40px,4.2vw,64px)}.lm-core .tx .txh--led .txh__h1,.lm-core .tx .txh--dual .txh__h1{font-size:clamp(32px,3.4vw,52px)}}
.lm-core .tx .k-h2{font-size:clamp(29px,7.4vw,38px);line-height:1.12}
@media (min-width:600px){.lm-core .tx .k-h2{font-size:clamp(34px,4.4vw,46px)}}
@media (min-width:961px){.lm-core .tx .k-h2{font-size:clamp(36px,3.5vw,52px)}}
.tx .fin .btn{white-space:normal;height:auto;min-height:58px;padding-block:12px;line-height:1.3;max-width:100%}
.tx .fin .btns{width:100%}
@media (max-width:560px){.tx .fin .btns{flex-direction:column;align-items:stretch}.tx .fin .btns .btn{width:100%}}
/* ---- tx2.css ---- */
/* =====================================================================
   Lumiere treatment pages: refinement layer (loads after tx.css, only on the eight treatment pages).
   Video heroes, editorial content blocks, premium "check first" and "keep exploring", aligned timelines.
   Every layout is complete and readable with motion off; tx.js only adds movement on top.
   ===================================================================== */
.tx{--e:cubic-bezier(.22,1,.36,1);--gr:208,190,133}
.tx .txg{width:18px;height:18px;display:block}

/* ---------- mobile: heading groups centred (eyebrow, heading, short intro); lists, steps and long text stay left ---------- */
@media (max-width:899px){
	.tx .txs__head{margin-inline:auto;text-align:center}
	.tx .txs__head .k-ey{justify-content:center}
	.tx .txs__head .k-p{margin-inline:auto}
	.tx .lmw__h{text-align:center}
}

/* ---------- hero video (shared) ---------- */
.tx .txv__v,.tx .txh figure video{display:block;width:100%;height:100%;object-fit:cover;background:#1C1814}
.txh__vis{--vw:min(100%,440px)}
@media (max-width:960px){.txh__vis{max-width:340px}}

/* Oxygen: a tall porthole with rings and rising bubbles */
.oxh{aspect-ratio:4/5;max-width:460px;margin-inline:auto}
.oxh__port{inset:1% 9% 3% 9%;border-radius:999px;background:#1C1814}
.oxh__ring{inset:-1% 5% 1% 5%;border-radius:999px}
.oxh__ring--2{inset:-5% 1% -3% 1%}
.oxh__veil{position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 70% at 50% 100%,rgba(16,12,8,.5),transparent 60%),linear-gradient(180deg,rgba(255,238,200,.1),transparent 34%)}

/* Deluxe: a tall frame with an offset gold outline and a warm light behind it */
.dxh.dxv{position:relative;display:block;aspect-ratio:4/5;max-width:430px;min-height:0;margin-inline:auto}
.dxv::before{content:"";position:absolute;inset:-14% -14% -10% -10%;background:radial-gradient(closest-side,rgba(208,190,133,.28),transparent 70%);z-index:-1}
.dxv__frame{position:absolute;inset:-14px 16px 16px -14px;border:1px solid rgba(var(--gr),.6);border-radius:30px}
.dxv__vid{position:absolute;inset:0;margin:0;border-radius:28px;overflow:hidden;box-shadow:0 46px 90px -40px rgba(0,0,0,.9),0 0 0 1px rgba(var(--gr),.4)}
.dxv__vid::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,12,8,.5),transparent 38%)}
.dxv .dxh__card{position:absolute;right:-10px;bottom:30px;z-index:2}
@media (min-width:961px){.dxh.dxv{min-height:0;align-items:initial;justify-content:initial}.dxv .dxh__card{right:-26px}}

/* LuminFusion: tilted LED panel */
.lmh{aspect-ratio:4/5;max-width:470px;margin-inline:auto}
.lmh__panel{inset:2% 5% 3% 5%}
.lmh__panel::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 60% at 50% 0%,rgba(255,120,70,.22),transparent 70%);pointer-events:none;mix-blend-mode:screen}

/* Buccal: arch with spreading rings */
.bch{aspect-ratio:1/1.12;max-width:440px;margin-inline:auto}
.bch__arch{background:#1C1814}
.bch--for{aspect-ratio:1/1.08;max-width:460px}

/* Peels: diagonal cut that bleeds off the right edge */
.txh--diag .pch__bg video{width:100%;height:100%;object-fit:cover}
.txh--diag .pch__bg{height:min(112vw,470px)}
@media (min-width:961px){
	.txh--diag .pch__bg{width:50%;height:auto}
	.pch{min-height:clamp(520px,48vw,680px)}
}

/* Hydro and micro: a leaf-shaped frame, cool ripples, two labels */
.mdh{aspect-ratio:4/5;max-width:440px;margin-inline:auto}
.mdh__v{position:absolute;inset:3% 7% 4% 7%;margin:0;overflow:hidden;border-radius:140px 28px 140px 28px;box-shadow:0 40px 80px -34px rgba(0,0,0,.9),0 0 0 1px rgba(var(--gr),.45);background:#1C1814}
.mdh__v::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(150,205,225,.14),transparent 45%),linear-gradient(0deg,rgba(16,12,8,.45),transparent 40%)}
.mdh__rip{position:absolute;right:-4%;bottom:-3%;width:70%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(170,215,230,.45);opacity:0;animation:bcRing 8s ease-out infinite;pointer-events:none}
.mdh__rip--2{animation-delay:2.6s}.mdh__rip--3{animation-delay:5.2s}
.mdh__chip{position:absolute;z-index:3;padding:9px 20px;border-radius:99px;background:rgba(16,12,8,.8);backdrop-filter:blur(8px);border:1px solid rgba(var(--gr),.5);color:var(--g);font-weight:700;font-size:18px}
.mdh__chip--a{left:-2%;top:16%}.mdh__chip--b{right:-2%;bottom:14%;color:#BFE0EA;border-color:rgba(170,215,230,.5)}

/* Brows, lashes, sugaring: framed video with gold corner marks */
.brh{aspect-ratio:4/5;max-width:440px;margin-inline:auto;overflow:visible;border-radius:0;box-shadow:none;background:none}
.brh__v{position:absolute;inset:0;margin:0;overflow:hidden;border-radius:24px;box-shadow:0 44px 90px -40px rgba(0,0,0,.9),0 0 0 1px rgba(var(--gr),.4);background:#1C1814;clip-path:none}
.brh__v::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,12,8,.5),transparent 40%);pointer-events:none}
.brh__c{position:absolute;width:64px;height:64px;border:2px solid var(--g);pointer-events:none;z-index:2}
.brh__c--tl{left:-14px;top:-14px;border-right:0;border-bottom:0;border-radius:18px 0 0 0}
.brh__c--br{right:-14px;bottom:-14px;border-left:0;border-top:0;border-radius:0 0 18px 0}
.brh__chip{position:absolute;z-index:3;padding:8px 18px;border-radius:99px;background:rgba(16,12,8,.8);backdrop-filter:blur(8px);border:1px solid rgba(var(--gr),.5);color:var(--g);font-weight:700;font-size:18px}
.brh__chip--a{left:16px;top:16px}.brh__chip--b{right:16px;bottom:16px}

/* ---------- "Is this for you?" ---------- */
.txf__n .txg{color:var(--g)}
.k-sec--cream .txf__n .txg,.k-sec--cream2 .txf__n .txg{color:var(--gd)}
.txf--ledger .txf__n{min-width:28px;padding-top:4px}
.txf--ledger .txf__n .txg{width:20px;height:20px}

/* cascade (Oxygen, Peels): a gold thread with sparkles, hairlines that fade out, glide on hover */
.txf--cascade{overflow:hidden}
.txf--cascade::before{content:"";position:absolute;right:-12%;top:8%;width:min(680px,70vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--gr),.34),transparent 72%);z-index:-1;pointer-events:none}
.txf--cascade .txf__list{position:relative}
.txf--cascade .txf__list::before{content:"";position:absolute;left:10px;top:30px;bottom:30px;width:1px;background:linear-gradient(180deg,transparent,rgba(127,108,52,.7) 10%,rgba(127,108,52,.7) 90%,transparent)}
.txf--cascade .txf__list li{border:0!important;padding:22px 0 22px 50px;position:relative;transition:transform .55s var(--e)}
.txf--cascade .txf__list li::after{content:"";position:absolute;left:50px;right:0;bottom:0;height:1px;background:linear-gradient(90deg,rgba(127,108,52,.6),transparent 85%)}
.txf--cascade .txf__list li:last-child::after{display:none}
.txf--cascade .txf__n{position:absolute;left:0;top:26px;width:22px;height:22px;display:grid;place-items:center;min-width:0;padding:0;background:var(--k-cream);border-radius:50%;z-index:1;transition:transform .6s var(--e)}
.k-sec--cream2.txf--cascade .txf__n{background:var(--k-cream2)}
.txf--cascade .txf__list li:hover{transform:translateX(10px)}
.txf--cascade .txf__list li:hover .txf__n{transform:rotate(90deg) scale(1.25)}
.txf--cascade .txf__list li:nth-child(n){padding-left:50px}
@media (min-width:900px){.txf--cascade .txf__list li:nth-child(n){padding-left:50px}}

/* cloud (LuminFusion, Hydro/Micro): open, drifting composition with glowing orbs; no pills */
.txf--cloud{overflow:hidden}
.txf__orb{position:absolute;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(30px);animation:txDrift 16s ease-in-out infinite}
.txf__orb--a{width:min(520px,80vw);aspect-ratio:1;left:-10%;top:-8%;background:radial-gradient(closest-side,rgba(var(--gr),.4),transparent 72%)}
.txf__orb--b{width:min(460px,70vw);aspect-ratio:1;right:-8%;bottom:-10%;background:radial-gradient(closest-side,rgba(232,140,100,.26),transparent 72%);animation-delay:-8s}
.tx--micro .txf__orb--b{background:radial-gradient(closest-side,rgba(150,205,225,.3),transparent 72%)}
@keyframes txDrift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(26px,-22px,0) scale(1.08)}}
.txf--cloud .txf__main{text-align:left}
.txf--cloud .txs__head{margin-inline:auto}
.txf--cloud .txf__list{display:grid;gap:0 clamp(32px,6vw,88px);grid-template-columns:1fr;max-width:64rem;margin-inline:auto}
.txf--cloud .txf__list li{display:flex;gap:16px;align-items:flex-start;position:relative;max-width:none;padding:28px 0 24px;border:0;border-radius:0;background:none;font-size:clamp(19px,1.7vw,22px);color:#2A2118}
.txf--cloud .txf__list li:last-child{border:0}
.txf--cloud .txf__list li::before{content:"";position:absolute;left:0;top:0;width:64px;height:2px;background:linear-gradient(90deg,#9A8445,transparent);transition:width .8s var(--e)}
.txf--cloud .txf__list li:hover::before{width:100%}
.txf--cloud .txf__n{min-width:0;padding:4px 0 0}
.txf--cloud .txf__n .txg{width:22px;height:22px}
@media (min-width:760px){.txf--cloud .txf__list{grid-template-columns:1fr 1fr}.txf--cloud .txf__list li:nth-child(even){margin-top:46px}}

/* split: the picture sits in a clean frame, or carries its own composition (Buccal) */
.txf__fig--raw{border-radius:0;overflow:visible;box-shadow:none;aspect-ratio:auto;max-width:480px}
.txf__fig--raw .bch{width:100%}

/* ---------- "What it can do" ---------- */
.txc__g{padding-top:3px}
.txc__g .txg{width:22px;height:22px;color:var(--gd)}
.k-sec--dark .txc__g .txg,.k-sec--ink .txc__g .txg{color:var(--g)}
.txc__list li{grid-template-columns:34px minmax(0,1fr);transition:transform .5s var(--e),background .4s}

/* list + photograph that melts into the section from the side (same approach as the Home page) */
.txc--list{overflow:hidden}
.txc--list .txc__in{position:static;display:block}
.txc--list .txc__main{position:relative;z-index:1}
.txc--list .txc__fig{position:relative;z-index:0;margin:0 0 -40px;border-radius:0;box-shadow:none;aspect-ratio:4/3;overflow:hidden;width:100vw;margin-left:calc(50% - 50vw);max-width:none}
.txc--list .txc__fig img{width:100%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}
.txc--list .txc__list li:hover{transform:translateX(8px)}
@media (min-width:900px){
	.txc--list .txc__fig{position:absolute;left:0;top:0;bottom:0;width:47%;margin:0;aspect-ratio:auto;position:absolute}
	.txc--list .txc__fig img{-webkit-mask-image:linear-gradient(90deg,#000 50%,transparent 100%),linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%);mask-image:linear-gradient(90deg,#000 50%,transparent 100%),linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
	.txc--list .txc__main{margin-left:auto;width:min(53%,620px)}
	.txc--list .txc__list li{position:relative}
}

/* ledger (Deluxe, Hydro/Micro): editorial rows, a gold rule draws in as each row arrives */
.txc--ledger .txc__list li{position:relative;border:0;grid-template-columns:34px minmax(0,1fr);padding:24px 0 24px}
.txc--ledger .txc__list li::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(127,108,52,.7),rgba(127,108,52,.15));transform-origin:left;transition:transform 1.1s var(--e)}
.k-sec--ink.txc--ledger .txc__list li::before,.k-sec--dark.txc--ledger .txc__list li::before{background:linear-gradient(90deg,rgba(var(--gr),.7),rgba(var(--gr),.12))}
.tx-on .txc--ledger .txc__list li::before{transform:scaleX(0)}
.tx-on .txc--ledger .txc__list li.is-in::before{transform:scaleX(1)}
.txc--ledger .txc__list li:last-child{border:0}
.txc--ledger .txc__list li:last-child::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,rgba(127,108,52,.5),transparent)}
.txc--ledger .txc__list li:hover{background:linear-gradient(90deg,rgba(var(--gr),.14),transparent 70%)}
.txc--ledger .txc__list li:hover .txc__b b{color:var(--gd)}
.k-sec--ink.txc--ledger .txc__list li:hover .txc__b b{color:var(--g)}
@media (min-width:900px){
	.txc--ledger .txc__main{display:block}
	.txc--ledger .txc__list{display:block}
	.txc--ledger .txc__list li{display:grid;grid-template-columns:36px minmax(0,.95fr) minmax(0,1.05fr);column-gap:clamp(20px,3vw,44px);align-items:baseline;padding:30px 12px}
	.txc--ledger .txc__b{display:contents}
	.txc--ledger .txc__b b{font-size:clamp(23px,2.1vw,29px);letter-spacing:-.01em;transition:color .4s}
	.txc--ledger .txc__b em{margin:0}
	.txc--ledger .txc__b b:last-child{grid-column:2/4}
	.txc--ledger .txc__note{max-width:none}
}

/* stagger (Buccal): soft, offset bricks with a gold bubble */
.txc--stagger{overflow:hidden}
.txc--stagger::before{content:"";position:absolute;left:-14%;top:-12%;width:min(620px,70vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--gr),.38),transparent 72%);z-index:-1}
.txc--stagger .txc__list{display:grid;gap:16px}
.txc--stagger .txc__list li{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px 18px;align-items:start;padding:24px 26px;border:0;border-radius:30px 30px 30px 8px;background:radial-gradient(120% 140% at 0% 0%,#FFFBF0,#F6EDD6);box-shadow:0 24px 50px -34px rgba(60,40,10,.55),0 0 0 1px rgba(122,106,60,.22);transition:translate .6s var(--e),box-shadow .6s var(--e)}
.txc--stagger .txc__list li:last-child{border:0}
.txc--stagger .txc__g{grid-row:1/3;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--k-grad);padding:0}
.txc--stagger .txc__g .txg{color:#1A1307;width:22px;height:22px}
.txc--stagger .txc__list li:hover{translate:0 -6px;box-shadow:0 34px 60px -30px rgba(60,40,10,.6),0 0 0 1px rgba(122,106,60,.4)}
@media (min-width:900px){
	.txc--stagger .txc__main{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(32px,5vw,72px)}
	.txc--stagger .txc__head,.txc--stagger .txc__note{grid-column:1/-1}
	.txc--stagger .txc__list{display:contents}
	.txc--stagger .txc__list li{margin-bottom:18px}
	.txc--stagger .txc__list li:nth-child(even){margin-top:46px;margin-bottom:0}
	.txc--stagger .txc__note{margin-top:30px}
}

/* spot (Peels): a quiet list; the row you point at lights up, the others rest */
.txc--spot .txc__list li{position:relative;border:0;padding:24px 14px 24px 22px;border-bottom:1px solid rgba(122,106,60,.3);transition:opacity .45s,background .45s,padding .5s var(--e)}
.txc--spot .txc__list li::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:3px;border-radius:3px;background:var(--k-grad);transform:scaleY(0);transition:transform .6s var(--e)}
.txc--spot .txc__b b{font-size:clamp(22px,2.1vw,28px)}
@media (hover:hover){
	.txc--spot .txc__list:hover li:not(:hover){opacity:.5}
	.txc--spot .txc__list li:hover{background:linear-gradient(90deg,rgba(var(--gr),.22),transparent 80%);padding-left:30px}
	.txc--spot .txc__list li:hover::before{transform:scaleY(1)}
}
.txc--spot .txc__list li:focus-within::before{transform:scaleY(1)}
@media (min-width:900px){
	.txc--spot .txc__main{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:clamp(36px,6vw,96px);align-items:start}
	.txc--spot .txc__head{position:sticky;top:var(--tl)}
	.txc--spot .txc__head{grid-row:1/3}
	.txc--spot .txc__list{grid-column:2}
	.txc--spot .txc__note{grid-column:2}
}

/* ---------- "Why have it at Lumiere" ---------- */
.txw{overflow:hidden}
.txw__hl{background:linear-gradient(transparent 64%,rgba(var(--gr),.3) 0);color:inherit;font-weight:700;padding:0 2px}
.k-sec--dark .txw__hl,.k-sec--ink .txw__hl{color:var(--g);background:linear-gradient(transparent 64%,rgba(var(--gr),.2) 0)}
.txw__head{max-width:42rem}

/* showcase (Oxygen): four reasons; tabs on desktop, all four stacked on phones and without JS */
.txw__show{display:grid;gap:20px}
.txw__tabs{display:none}
.txw__panel{position:relative;overflow:hidden;padding:4px 0 4px 24px;border-left:2px solid rgba(127,108,52,.5)}
.txw__panel h3{margin:0 0 8px;font-size:clamp(22px,2.2vw,28px);line-height:1.3;color:#6A5A2C}
.txw__panel p{margin:0;font-size:19px;line-height:1.7;color:var(--k-muted-d)}
.txw__ring{display:none}
.txw__show.is-tabs{gap:clamp(30px,5vw,76px)}
@media (min-width:900px){
	.txw__show.is-tabs{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);align-items:stretch}
	.txw__show.is-tabs .txw__tabs{display:grid;align-content:center;gap:8px}
	.txw__tab{appearance:none;display:flex;align-items:center;gap:16px;width:100%;padding:20px 22px;border:1px solid transparent;border-radius:18px;background:none;font:inherit;font-size:clamp(20px,1.7vw,23px);font-weight:700;line-height:1.3;text-align:left;color:#5A4B26;cursor:pointer;transition:background .45s,color .45s,border-color .45s,box-shadow .45s,transform .45s var(--e)}
	.txw__tab i{flex:none;width:26px;height:1px;background:currentColor;transition:width .6s var(--e)}
	.txw__tab:hover{transform:translateX(6px)}
	.txw__tab.is-on{background:linear-gradient(160deg,#2B2116,#1C1814);color:var(--g);border-color:rgba(var(--gr),.6);box-shadow:0 26px 50px -30px rgba(40,26,8,.8)}
	.txw__tab.is-on i{width:52px}
	.txw__tab:focus-visible{outline:2px solid var(--gd);outline-offset:3px}
	.txw__show.is-tabs .txw__panels{position:relative;min-height:clamp(320px,30vw,400px)}
	.txw__show.is-tabs .txw__panel{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,3.6vw,56px);border:1px solid rgba(var(--gr),.5);border-radius:30px;background:radial-gradient(90% 90% at 100% 0%,rgba(var(--gr),.16),transparent 60%),linear-gradient(160deg,#2B2116,#1C1814 72%);box-shadow:0 44px 90px -50px rgba(40,26,8,.9);opacity:0;visibility:hidden;transform:translateY(16px) scale(.985);transition:opacity .55s var(--e),transform .7s var(--e),visibility 0s linear .55s}
	.txw__show.is-tabs .txw__panel.is-on{opacity:1;visibility:visible;transform:none;transition-delay:0s}
	.txw__show.is-tabs .txw__panel h3{font-size:clamp(26px,2.5vw,34px);color:var(--g);position:relative}
	.txw__show.is-tabs .txw__panel p{font-size:clamp(19px,1.5vw,22px);color:#EFE6D2;max-width:30em;position:relative}
	.txw__show.is-tabs .txw__panel .txw__hl{color:var(--g)}
	.txw__show.is-tabs .txw__ring{display:block;position:absolute;right:-70px;top:-70px;width:280px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(var(--gr),.35);pointer-events:none}
	.txw__show.is-tabs .txw__ring::after{content:"";position:absolute;inset:34px;border-radius:50%;border:1px solid rgba(var(--gr),.22)}
}

/* stat (LuminFusion): one statement beside "42 years" */
.txw--stat{background:radial-gradient(60% 70% at 18% 40%,rgba(255,110,60,.16),transparent 70%),var(--k-dark)}
.txw__stat{display:grid;gap:22px;max-width:60rem;margin-inline:auto;align-items:center}
.txw__big{text-align:center}
.txw__big b{display:block;font-size:clamp(96px,22vw,200px);line-height:.9;font-weight:800;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px var(--g);text-shadow:0 0 60px rgba(232,140,100,.35)}
.txw__big span{display:block;margin-top:8px;color:var(--g);font-weight:700;font-size:19px;letter-spacing:.04em}
.txw__body h3{margin:0 0 10px;font-size:clamp(24px,2.4vw,32px);color:var(--g);line-height:1.25}
.txw__body p{margin:0;font-size:clamp(19px,1.6vw,22px);line-height:1.75;color:var(--k-muted-l)}
@media (min-width:800px){
	.txw__stat{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(34px,5vw,80px)}
	.txw__big{text-align:right;padding-right:clamp(26px,4vw,64px);border-right:1px solid rgba(var(--gr),.4)}
}

/* quote (Deluxe, Buccal, Needling): a lead statement over a photograph that fades in from the side */
.txw--quote .txw__bg,.txw--photo .txw__bg{position:absolute;margin:0;z-index:-1;left:0;right:0;top:0;height:300px;pointer-events:none}
.txw--quote .txw__bg img,.txw--photo .txw__bg img{width:100%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(180deg,#000 40%,transparent 100%);mask-image:linear-gradient(180deg,#000 40%,transparent 100%)}
.txw--quote .txw__wrap,.txw--photo .txw__wrap{padding-top:210px}
.txw__qm{display:block;width:50px;color:var(--g);opacity:.9;margin:22px 0 10px}
.txw__lead{margin:0;font-size:clamp(20px,2vw,26px);line-height:1.65;font-weight:500;color:var(--k-ivory)}
.txw__lines{margin-top:26px;display:grid;gap:8px;padding-left:20px;border-left:2px solid var(--g)}
.txw__lines p{margin:0;color:var(--g);font-weight:700;font-size:clamp(19px,1.8vw,22px);line-height:1.5}
@media (min-width:900px){
	.txw--quote .txw__bg,.txw--photo .txw__bg{left:auto;right:0;top:-6%;bottom:-6%;height:auto;width:54%}
	.txw--quote .txw__bg img,.txw--photo .txw__bg img{-webkit-mask-image:linear-gradient(270deg,#000 42%,transparent 100%),linear-gradient(180deg,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(270deg,#000 42%,transparent 100%),linear-gradient(180deg,transparent 0,#000 18%,#000 82%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
	.txw--quote .txw__wrap,.txw--photo .txw__wrap{padding-top:0}
	.txw__qwrap{max-width:min(40rem,52%)}
	.txw__qwrap .txs__head{margin-inline:0}
}
/* photo (Hydro/Micro): text one side, picture fills the other */
.txw--photo{display:flex;align-items:center}
.txw--photo .txw__wrap{width:100%}
.txw__h3{margin:0 0 12px;font-size:clamp(23px,2.3vw,30px);color:var(--g);line-height:1.3}
.txw__p{margin:0;font-size:clamp(19px,1.6vw,21.5px);line-height:1.75;color:var(--k-muted-l)}
@media (min-width:900px){
	.txw--photo{min-height:clamp(480px,46vw,620px)}
	.txw--photo .txw__bg{width:52%}
	.txw__ph{max-width:min(36rem,48%)}
	.txw__ph .txs__head{margin-inline:0}
}

/* ---------- Buccal: "What is a buccal facial?" with the smaller photo melting into the background ---------- */
.bcw{overflow:hidden}
.bcw__in{display:block}
.bcw__bg{position:absolute;margin:0;z-index:-1;inset:0;pointer-events:none}
.bcw__bg img{width:100%;height:100%;object-fit:cover;opacity:.3;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 30%,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 30%,#000 70%,transparent 100%)}
.bcw__copy{max-width:36rem}
@media (min-width:900px){
	.bcw__bg{inset:-6% 0 -6% 40%}
	.bcw__bg img{opacity:1;-webkit-mask-image:linear-gradient(270deg,#000 38%,transparent 100%),linear-gradient(180deg,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(270deg,#000 38%,transparent 100%),linear-gradient(180deg,transparent 0,#000 18%,#000 82%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
	.bcw{padding-block:calc(var(--k-sec) + 30px)}
}
.bcw__copy .txs__head{margin-bottom:22px}

/* Oxygen "What it is": sparkle markers instead of numbers */
.oxl__n .txg{width:20px;height:20px;color:#1A1307}

/* ---------- Peels: how we choose the peel (a plain explanation, not a control) ---------- */
.pcw{overflow:hidden}
.pcw__orb{position:absolute;right:-12%;top:8%;width:min(560px,80vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--gr),.18),transparent 72%);z-index:-1;pointer-events:none}
.pcw__how{align-self:center;padding:clamp(26px,3vw,40px);border-radius:28px;border:1px solid rgba(var(--gr),.38);background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.01));box-shadow:0 40px 80px -50px rgba(0,0,0,.9)}
.pcw__hl{margin:0 0 20px;color:var(--g);font-weight:800;font-size:clamp(20px,1.9vw,24px);letter-spacing:.01em}
.pcw__flow{list-style:none;margin:0;padding:0;display:grid}
.pcw__flow li{position:relative;padding:0 0 26px 40px;transition:opacity .5s}
.pcw__flow li:last-child{padding-bottom:0}
.pcw__flow li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:14px;border-radius:50%;border:2px solid var(--g);background:#1C1814;transition:background .5s,box-shadow .5s}
.pcw__flow li:not(:last-child)::after{content:"";position:absolute;left:6px;top:24px;bottom:2px;width:2px;background:rgba(var(--gr),.3)}
.pcw__flow li.is-lit::before{background:var(--g);box-shadow:0 0 0 5px rgba(var(--gr),.2)}
.pcw__flow b{display:block;font-size:clamp(21px,2vw,25px);color:var(--k-ivory);line-height:1.3}
.pcw__flow span{display:block;margin-top:2px;font-size:18.5px;line-height:1.6;color:var(--k-muted-l)}
@media (min-width:900px){.pcw__how{padding-top:clamp(30px,3.4vw,46px)}}

/* ---------- Hydro and micro: two comparison panels with readable text on solid surfaces ---------- */
.tx .mdw__c{padding:0;display:flex;flex-direction:column;overflow:hidden;border-radius:26px;background:#241C14;border:1px solid rgba(var(--gr),.4);transition:transform .6s var(--e),box-shadow .6s var(--e)}
.tx .mdw__c.mdw__c--micro,.tx .mdw__c.mdw__c--hydro{background:#241C14}
.tx .mdw__c.mdw__c--hydro{border-color:rgba(170,215,230,.45)}
.tx .mdw__c:hover{transform:translateY(-6px);box-shadow:0 40px 70px -40px rgba(0,0,0,.95)}
.mdw__ph{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden}
.mdw__ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e)}
.mdw__c:hover .mdw__ph img{transform:scale(1.05)}
.mdw__ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#241C14 100%)}
.mdw__c--hydro .mdw__ph::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(200deg,rgba(150,205,225,.22),transparent 55%)}
.mdw__tx{padding:6px clamp(24px,3vw,36px) clamp(26px,3vw,36px)}
.tx .mdw__c h3{margin:0 0 10px;font-size:clamp(25px,2.6vw,32px);color:var(--k-ivory)}
.tx .mdw__c p{margin:0 0 12px;font-size:19px;line-height:1.7;color:#EFE6D2}
.tx .mdw__c .mdw__feel{margin:0;color:var(--g);font-weight:700}
.tx .mdw__c--hydro .mdw__feel{color:#BFE0EA}

/* ---------- appointment steps: circles sit exactly on the line and on their own box ---------- */
.txp__list{position:relative}
.txp__n{flex:none}
@media (min-width:900px){
	.txp--path .txp__list{--gap:48px}
	.txp--path .txp__line{left:50%;margin-left:-1px;top:0;bottom:0;-webkit-mask-image:linear-gradient(180deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(180deg,transparent,#000 4%,#000 96%,transparent)}
	.txp--path .txp__it{width:calc(50% - var(--gap));padding:22px 28px;margin-bottom:28px;position:relative;overflow:visible}
	.txp--path .txp__it:last-child{margin-bottom:0}
	.txp--path .txp__it:nth-child(even){margin-left:auto}
	.txp--path .txp__n{position:absolute;top:50%;translate:0 -50%;width:46px;height:46px}
	.txp--path .txp__it:nth-child(odd) .txp__n{right:calc(-1*(var(--gap) + 23px));left:auto}
	.txp--path .txp__it:nth-child(even) .txp__n{left:calc(-1*(var(--gap) + 23px));right:auto}
	.txp--path .txp__it::after{content:"";position:absolute;top:50%;width:calc(var(--gap) - 23px);height:1px;background:rgba(127,108,52,.5)}
	.txp--path .txp__it:nth-child(odd)::after{left:100%}
	.txp--path .txp__it:nth-child(even)::after{right:100%}
	.txp--path .txp__c h3{margin:0 0 4px}
}
@media (max-width:899px){
	.txp__it{align-items:start}
	.txp__c h3{margin-top:10px}
}

/* ---------- Brows page ---------- */
.brs__fig{position:relative;margin:0;max-width:420px;margin-inline:auto;width:100%}
.brs__fig img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:999px 999px 28px 28px;box-shadow:0 40px 70px -36px rgba(40,26,8,.7),0 0 0 1px rgba(122,106,60,.4)}
.brs__ring{position:absolute;inset:-14px -14px 14px 14px;border:1px solid rgba(127,108,52,.5);border-radius:999px 999px 34px 34px;pointer-events:none}
.brs__fig figcaption{position:absolute;left:50%;bottom:18px;translate:-50% 0;padding:8px 20px;border-radius:99px;background:rgba(16,12,8,.8);color:var(--g);font-weight:700;font-size:18px;white-space:nowrap;border:1px solid rgba(var(--gr),.45)}
.brm li{transition:padding .5s var(--e),background .4s}
.brm li:hover{padding-left:14px;background:linear-gradient(90deg,rgba(var(--gr),.22),transparent 80%)}
.brm li:hover .brm__t{color:#5A4B26}
.brs--sugar .brm li:hover{background:linear-gradient(90deg,rgba(var(--gr),.14),transparent 80%)}
.brs--sugar .brm li:hover .brm__t{color:#fff}
@media (min-width:900px){
	.brs--brows .brs__in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-areas:"fig copy" "fig menu";column-gap:clamp(36px,6vw,92px);row-gap:6px;align-items:start}
	.brs--brows .brs__fig{grid-area:fig;align-self:center}
	.brs--brows .brs__copy{grid-area:copy}
	.brs--brows .brs__menu{grid-area:menu}
}
.bra{overflow:hidden}
.bra__bg{position:absolute;margin:0;inset:-6% 0;z-index:-1;pointer-events:none}
.bra__bg img{width:100%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 26%,#000 74%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 26%,#000 74%,transparent 100%)}
.bra__bg::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 90% at 50% 50%,rgba(16,12,8,.8),rgba(16,12,8,.55))}
.bra{padding-block:calc(var(--k-sec) + 20px)}

/* ---------- Check with us first: a calm, defined information panel ---------- */
.tx .txk{background:radial-gradient(70% 90% at 15% 0%,rgba(255,250,235,.6),transparent 70%),linear-gradient(180deg,var(--k-cream2),#E2D3AC);padding-block:clamp(48px,6vw,88px);color:var(--k-ivory)}
.txk__card{position:relative;overflow:hidden;display:grid;gap:22px;max-width:1040px;margin-inline:auto;padding:clamp(26px,4vw,54px);border-radius:32px;background:linear-gradient(150deg,#2B2116,#1B1611 72%);border:1px solid rgba(var(--gr),.55);box-shadow:0 46px 90px -52px rgba(40,26,8,.85),inset 0 1px 0 rgba(255,236,190,.14)}
.txk__glow{position:absolute;right:-90px;top:-110px;width:400px;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--gr),.3),transparent 70%);pointer-events:none;animation:txDrift 14s ease-in-out infinite}
.txk__card::after{content:"";position:absolute;inset:10px;border:1px solid rgba(var(--gr),.14);border-radius:24px;pointer-events:none}
.txk__side{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
.txk__ic{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;color:var(--g);background:radial-gradient(circle,rgba(var(--gr),.26),rgba(var(--gr),.05));border:1px solid rgba(var(--gr),.7);box-shadow:0 0 0 8px rgba(var(--gr),.07)}
.txk__ic svg{width:34px;height:34px}
.txk__ey{margin:0;font-size:13px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--g)}
.txk__body{position:relative}
.tx .txk__h{margin:0;font-size:clamp(24px,2.6vw,34px);line-height:1.25;color:var(--k-ivory);text-align:center}
.txk__list{margin:16px 0 0;padding-left:18px;border-left:2px solid var(--g);font-size:clamp(19px,1.6vw,21px);line-height:1.75;color:#F1E8D2}
.txk__care{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding:16px 18px;border-radius:16px;background:rgba(var(--gr),.1);border:1px solid rgba(var(--gr),.3)}
.txk__care>span{flex:none;color:var(--g);margin-top:3px}.txk__care .ic{width:22px;height:22px}
.txk__care p{margin:0;font-size:18.5px;line-height:1.65;color:var(--k-muted-l)}
.txk__help{margin:18px 0 0;text-align:center;font-size:18px;color:var(--k-muted-l)}
.txk__call{color:var(--g);font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
@media (min-width:800px){
	.txk__card{grid-template-columns:200px minmax(0,1fr);gap:clamp(30px,4vw,60px);align-items:center}
	.txk__side{padding-right:clamp(20px,3vw,40px);border-right:1px solid rgba(var(--gr),.25);align-self:stretch;justify-content:center}
	.tx .txk__h{text-align:left}
	.txk__help{text-align:left}
}

/* ---------- Keep exploring ---------- */
.tx .txn{background:radial-gradient(60% 100% at 50% 0%,#241B12,#15100B 70%);border-top:1px solid rgba(var(--gr),.25);padding-block:clamp(48px,6vw,88px)}
.tx .txn__in{display:block;padding-block:0}
.txn__head{text-align:center;margin-bottom:clamp(22px,3vw,36px)}
.txn__head .k-ey{margin:0;font-size:14px}
.tx .txn ul.txn__grid{list-style:none;margin:0 auto;padding:0;display:grid;gap:16px;max-width:1120px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.tx .txn a.txn__c{position:relative;display:flex;flex-direction:column;min-height:0;height:100%;padding:0;border-radius:24px;overflow:hidden;background:#1C1612;border:1px solid rgba(var(--gr),.32);color:var(--k-ivory);transition:transform .6s var(--e),border-color .4s,box-shadow .6s var(--e)}
.tx .txn a.txn__c:hover,.tx .txn a.txn__c:focus-visible{background:#221A13;color:var(--k-ivory);transform:translateY(-6px);border-color:rgba(var(--gr),.75);box-shadow:0 36px 60px -34px rgba(0,0,0,.95),0 0 40px -10px rgba(var(--gr),.35)}
.txn__img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden}
.txn__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e)}
.txn__img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,#1C1612 100%)}
.txn__c:hover .txn__img img{transform:scale(1.07)}
.txn__txt{display:flex;flex-direction:column;gap:2px;padding:6px 72px 22px 22px}
.txn__t{font-size:clamp(20px,1.8vw,23px);font-weight:700;line-height:1.3;color:var(--k-ivory)}
.txn__m{font-size:17px;color:var(--g);font-weight:600}
.txn__go{position:absolute;right:18px;bottom:20px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(var(--gr),.6);color:var(--g);transition:background .4s,color .4s,transform .5s var(--e)}
.txn__go svg{width:20px;height:20px}
.txn__c:hover .txn__go{background:var(--g);color:#1A1307;transform:translateX(5px)}
.txn__all{margin:clamp(22px,3vw,34px) 0 0;text-align:center}
.tx .txn__all a{display:inline-flex}

/* ---------- reduced motion: finished layout, no loops ---------- */
@media (prefers-reduced-motion:reduce){
	.txf__orb,.txk__glow,.mdh__rip{animation:none!important}
	.mdh__rip{opacity:0}
	.tx-on .txc--ledger .txc__list li::before{transform:none}
	.txn__c,.txn__img img,.mdw__c,.mdw__ph img,.txc__list li,.txf--cascade .txf__list li{transition:none!important}
}

/* Deluxe "What is": the paragraph returns to the approved body scale */
.tx .dxw__big,.tx .dxw__sub{font-size:18.5px;font-weight:400;line-height:1.75;color:var(--k-muted-l);max-width:36em;margin:16px auto 0}
.tx .dxw__chips{margin:26px 0 8px}
.tx .txf--cloud .txs__head{text-align:center}
.tx .txf--cloud .txs__head .k-ey{justify-content:center}
.tx .txf--cloud .txs__head .k-p{margin-inline:auto}

/* =====================================================================
   Round 3: corrections (hydro hero heading, hydro can-do image, needling journey + aftercare, mobile intros)
   ===================================================================== */

/* mobile: a short intro under a centred heading is centred with it; lists, steps, warnings and long copy stay left */
@media (max-width:899px){
	.tx .txs__intro{text-align:center;max-width:34rem;margin-inline:auto}
}

/* hydro / micro hero heading: no broken words at any width. The type scales with its own column. */
.tx--micro .txh__txt{container-type:inline-size;min-width:0}
.lm-core .tx.tx--micro .txh__h1,.tx.tx--micro .txh__h1{font-size:min(9.3cqi,56px);line-height:1.08;letter-spacing:-.012em;overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:balance}
.tx--micro .txh__vis{--vw:min(100%,500px)}
@media (min-width:961px){.tx .mdh{max-width:500px}}
.tx--micro .txh::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(180deg,transparent,rgba(16,12,8,.55));pointer-events:none}

/* hydro "what it can do": photograph on the right, same blend language as the Home page */
@media (min-width:900px){
	.txc--flip .txc__fig{left:auto;right:0;width:46%}
	.txc--flip .txc__fig img{-webkit-mask-image:linear-gradient(270deg,#000 52%,transparent 100%),linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(270deg,#000 52%,transparent 100%),linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
	.txc--flip .txc__main{margin-left:0;margin-right:auto;width:min(52%,640px)}
}
.txc--flip .txc__fig::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 75% 40%,rgba(var(--gr),.16),transparent 60%);pointer-events:none;mix-blend-mode:soft-light}

/* needling: five-step treatment journey */
.txp--row{position:relative;overflow:hidden}
.txp--row .txp__glow{position:absolute;left:50%;top:-10%;width:min(1100px,130vw);aspect-ratio:2/1;translate:-50% 0;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.55),rgba(var(--gr),.22) 55%,transparent 75%);pointer-events:none;z-index:0}
.txp--row .wrap{position:relative;z-index:1}
.txp--row .txp__n{width:50px;height:50px;font-size:17px;box-shadow:0 0 0 6px rgba(var(--gr),.16),0 10px 22px -10px rgba(60,40,10,.6);border:1px solid rgba(255,255,255,.55);transition:box-shadow .6s var(--e),transform .6s var(--e),background .6s,color .6s}
.txp--row .txp__it.is-on .txp__n{box-shadow:0 0 0 7px rgba(var(--gr),.3),0 0 34px 6px rgba(var(--gr),.55),0 12px 22px -10px rgba(60,40,10,.6)}
.txp--row .txp__c{transition:opacity .7s var(--e),translate .7s var(--e)}
.tx-on .txp--row .txp__it:not(.is-on) .txp__c{opacity:.62}
.txp--row .txp__c h3{font-size:clamp(21px,1.7vw,25px);letter-spacing:-.005em;text-wrap:balance}
.txp--row .txp__line{height:3px;border-radius:3px;background:rgba(122,106,60,.22)}
.txp--row .txp__line i{background:linear-gradient(90deg,#B89B4F,#E7D79E);box-shadow:0 0 14px rgba(var(--gr),.8);border-radius:3px}
@media (min-width:900px){
	.txp--row .txp__line{left:25px;right:25px;top:24px}
	.txp--row .txp__list{gap:clamp(18px,2.2vw,36px)}
	.txp--row .txp__it{padding-right:6px}
	.txp--row .txp__it::before{content:"";position:absolute;left:0;right:0;top:25px;height:0}
	.txp--row .txp__n{margin-bottom:22px}
	.txp--row .txp__c{padding-top:2px;border-top:0}
	.txp--row .txp__c p{font-size:18.5px;line-height:1.65}
}
@media (max-width:899px){
	.txp--row .txp__list{padding-left:0;margin-top:34px}
	.txp--row .txp__it{padding-bottom:30px}
	.txp--row .txp__n{width:46px;height:46px}
}

/* needling aftercare: editorial layout, the approved sentences grouped, nothing hidden */
.spa{position:relative;overflow:hidden}
.spa__sun{position:absolute;right:-12%;top:-30%;width:min(760px,110vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--gr),.34),rgba(var(--gr),.1) 55%,transparent 72%);pointer-events:none}
.spa__sun::before,.spa__sun::after{content:"";position:absolute;inset:14%;border-radius:50%;border:1px solid rgba(122,106,60,.22)}
.spa__sun::after{inset:28%;border-color:rgba(122,106,60,.18)}
.spa .spa__in{position:relative;z-index:1;max-width:none;display:grid;gap:clamp(28px,4vw,56px)}
.spa__rule{display:block;width:96px;height:2px;margin-top:22px;background:rgba(122,106,60,.25);border-radius:2px;overflow:hidden}
.spa__rule i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#B89B4F,#E7D79E)}
.spa__groups{display:grid;gap:0}
.spa__g{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;align-items:start;padding:26px 0;border-top:1px solid rgba(122,106,60,.32);transition:background .4s,padding .4s}
.spa__g:last-child{border-bottom:1px solid rgba(122,106,60,.32)}
.spa__ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--k-grad);color:#1A1307;box-shadow:0 0 0 5px rgba(var(--gr),.22)}
.spa__ic .txg{width:20px;height:20px}
.spa__g h3{margin:2px 0 6px;font-size:clamp(21px,2vw,26px);line-height:1.25;color:#241B12;letter-spacing:-.005em}
.spa__g p{margin:0;font-size:19px;line-height:1.7;color:var(--k-muted-d);max-width:40rem}
@media (min-width:900px){
	.spa .spa__in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center}
	.spa__g:hover{background:linear-gradient(90deg,rgba(var(--gr),.16),transparent 80%);padding-left:14px}
}
@media (prefers-reduced-motion:reduce){.txp--row .txp__c,.txp--row .txp__n{transition:none}}
.tx .mdh .mdh__v{width:auto;aspect-ratio:auto;position:absolute;inset:2% 4% 3% 4%}
.spa__sun{right:auto;left:-16%;top:auto;bottom:-46%}
@media (max-width:899px){.spa__sun{left:-40%;bottom:-20%}}
@media (max-width:899px){.spa__rule{margin-inline:auto}}
