:root{--powder-pink:#F8E9EC;--soft-blush:#EBCDD3;--ivory:#FFFDFC;--muted-gold:#B79A61;--text-dark:#1F1A1A;--text-secondary:#74666a;--white:#fff;--line:#e9dfe0;--font-body:'Heebo',Arial,sans-serif;--font-editorial:'Frank Ruhl Libre',Georgia,serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ivory);color:var(--text-dark);font-family:var(--font-body);font-weight:300}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,figure:focus-visible{outline:2px solid var(--muted-gold);outline-offset:6px}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.skip{position:fixed;top:12px;right:12px;z-index:20;background:white;padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}.announcement{min-height:27px;display:flex;justify-content:center;align-items:center;gap:16px;background:#fcf5f6;font-size:.75rem;font-weight:300}.announcement bdi{font-size:.65rem;letter-spacing:.15em}.header{position:sticky;top:0;z-index:5;background:#fff;transition:box-shadow .3s}.header.scrolled{box-shadow:0 1px 0 var(--line),0 6px 24px #1f1a1a04}.header-inner{min-height:98px;padding:0 5.3%;display:grid;grid-template-columns:185px 1fr 185px;align-items:center;gap:38px;max-width:1920px;margin:auto}.logo{position:relative;display:block;width:160px;height:26px;overflow:hidden;justify-self:start}.logo img{position:absolute;max-width:none;width:190px;height:190px;left:-15px;top:-118px;object-fit:contain}nav{display:flex;justify-content:center;align-items:center;gap:clamp(26px,3.3vw,64px);font-size:.875rem;font-weight:300}nav a,nav button{position:relative;padding:16px 0;border:0;background:none;white-space:nowrap}nav a:after,nav button:after{content:'';position:absolute;bottom:8px;right:0;width:0;height:1px;background:var(--muted-gold);transition:width .3s}nav a:hover:after,nav button:hover:after{width:100%}.header-actions{justify-self:end;display:flex;gap:20px;direction:ltr}.icon-button{width:36px;height:44px;border:0;background:none;display:grid;place-items:center;position:relative;transition:color .25s}.icon-button:hover{color:#997d49}.cart-count{position:absolute;right:-3px;top:1px;font-size:.65rem;font-weight:400}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:46% 54%;align-items:center;width:100%;min-height:670px;height:calc(100svh - 125px);max-height:920px;overflow:hidden;background:#f7e9ec}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(125deg,#fbf4f5 0%,#f8edef 42%,#f4e0e5 100%)}.hero-copy{position:relative;z-index:2;padding:0 12% 20px 5%;max-width:780px;align-self:center}.eyebrow{font-size:.6875rem;letter-spacing:.23em;font-weight:400;text-align:right;margin:0 0 47px;color:#715d63}.gold-line{display:none}h1{font-family:var(--font-editorial);font-weight:400;font-size:clamp(3.7rem,5.5vw,6.4rem);line-height:1.16;letter-spacing:-.035em;margin:0 0 33px;white-space:nowrap}h1 span{color:#76515c;font-weight:300}.support{max-width:345px;font-size:1rem;font-weight:300;line-height:1.95;color:#6e5f64;margin:0 0 40px}.cta{display:inline-flex;align-items:center;gap:5px;min-height:48px;padding:0 0 8px;border-bottom:1px solid var(--muted-gold);font-size:.875rem;font-weight:400;transition:color .25s,border-color .25s}.cta svg{width:25px;margin-inline-start:33px;transition:transform .3s}.cta:hover{color:#947542;border-color:#705629}.cta:hover svg{transform:translateX(-6px)}
.hero-visual{position:relative;align-self:stretch;margin:0;width:100%;height:100%;min-height:0;scroll-margin-top:100px;outline-offset:-8px!important}.image-frame{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(to right,#000 0%,#000 77%,transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 77%,transparent 100%)}.image-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:48% 52%}.hero-visual figcaption{position:absolute;bottom:32px;left:8%;right:15%;display:flex;align-items:center;gap:16px;direction:ltr;color:#402d36;font-size:.75rem}.hero-visual figcaption span[lang]{font-size:.6875rem;letter-spacing:.17em;font-weight:400}.caption-line{display:block;width:32px;height:1px;background:#957a54}.hero-visual figcaption span:last-child{display:none}dialog{width:min(440px,calc(100% - 40px));border:1px solid var(--line);background:var(--ivory);color:var(--text-dark);padding:55px 36px 36px;box-shadow:0 20px 80px #1f1a1a16}dialog::backdrop{background:#1f1a1a40;backdrop-filter:blur(3px)}dialog h2{font-family:var(--font-editorial);font-weight:400;font-size:1.8rem}dialog p{font-size:1rem;line-height:1.8;color:var(--text-secondary)}.close{position:absolute;top:10px;left:10px}
@media(min-width:1700px){.hero-copy{padding-right:17%}.image-frame img{object-position:50% 55%}}
@media(max-width:1100px){.header-inner{grid-template-columns:160px 1fr 140px;padding-inline:4%;gap:18px}.header-actions{gap:10px}nav{gap:22px;font-size:.8125rem}.hero{min-height:600px;grid-template-columns:48% 52%}.hero-copy{padding-right:9%;padding-left:0}h1{font-size:clamp(3rem,5.6vw,4.3rem)}.support{max-width:300px}.eyebrow{font-size:.625rem;letter-spacing:.16em}.image-frame img{object-position:43% 50%}.hero-visual figcaption{left:6%;right:8%}}
@media(max-width:700px){.announcement{min-height:25px}.header-inner{min-height:78px;grid-template-columns:1fr 125px 1fr;padding-inline:18px;gap:8px}.logo{width:125px;height:21px;grid-column:2;grid-row:1;justify-self:center}.logo img{width:148px;height:148px;left:-11.5px;top:-91.8px}.menu-toggle{display:grid;grid-column:1;grid-row:1;justify-self:start}.header-actions{grid-column:3;grid-row:1;gap:0}.icon-button{width:32px}.account{display:none}nav{display:none;grid-column:1/-1;border-top:1px solid var(--line);padding:8px 0 18px;align-items:stretch;gap:0}nav.open{display:flex;flex-direction:column}nav a,nav button{text-align:right;font-size:1rem;padding:12px 0}.hero{height:auto;max-height:none;min-height:0;grid-template-columns:1fr;overflow:hidden}.hero-copy{padding:46px 8% 42px;max-width:none}.eyebrow{margin-bottom:28px;font-size:.625rem}h1{font-size:clamp(3rem,10.5vw,4.2rem);line-height:1.16;margin-bottom:24px}.support{font-size:1rem;max-width:320px;margin-bottom:22px}.cta{min-height:44px}.hero-visual{height:540px}.image-frame{mask-image:linear-gradient(to bottom,transparent,#000 12%,#000);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 12%,#000);inset:-24px 0 0}.image-frame img{object-fit:cover;object-position:50% 52%}.hero-visual figcaption{bottom:22px;left:8%;right:8%}.hero-visual figcaption span[lang]{font-size:.625rem;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep the editorial copy comfortably inside wide desktop review panels. */
@media(min-width:1101px){.header-inner{padding-inline:7%}.hero-copy{padding-right:18%;padding-left:4%}h1{font-size:clamp(3.7rem,5.2vw,6.4rem)}}
/* Campaign composition: original photography clipped in the browser, never repainted. */
.hero{grid-template-columns:43% 57%;background:#f6e6eb;min-height:690px}
.hero:before{background:none}
.hero-copy{padding-right:19%;padding-left:0;padding-bottom:10px}
.eyebrow{margin-bottom:38px;letter-spacing:.25em;font-size:.625rem;color:#7c606a}
h1{font-size:clamp(4rem,5.4vw,6.8rem);line-height:1.12;font-weight:300;letter-spacing:-.025em;margin-bottom:34px}
h1 span{color:#71505c}
.support{font-size:1rem;max-width:315px;line-height:2;color:#806a73;margin-bottom:34px}
.cta{font-weight:300;font-size:.875rem;border-color:#b79a6180;gap:5px;padding-bottom:7px}
.hero-visual{overflow:visible}
.image-frame{inset:0;overflow:visible;mask-image:none;-webkit-mask-image:none;background:none}
.image-frame img{position:absolute;width:clamp(730px,62vw,1130px);height:auto;max-width:none;object-fit:contain;left:50%;top:50%;transform:translate(-42%,-51%);clip-path:polygon(34.1% 18.1%,37% 17.7%,42% 17.8%,47% 18.5%,52% 19.8%,54.9% 21%,55.1% 23%,50% 42%,49.5% 43%,48.9% 46%,42% 77.8%,41.8% 80.8%,40.4% 82%,36% 83%,30% 82.7%,24% 81.8%,19% 80.6%,18.3% 78.5%,27.5% 41%,28.5% 38.8%,32.8% 22%);filter:drop-shadow(22px 32px 21px #6e465224)}
.hero-visual:after{content:'';position:absolute;width:260px;height:23px;left:39%;bottom:10%;background:#865d6b1b;border-radius:50%;filter:blur(18px);transform:rotate(-8deg);z-index:-1}
.hero-visual figcaption{left:18%;bottom:34px;color:#806a73}
.caption-line{display:none}
.header-inner{min-height:82px;grid-template-columns:170px 1fr 170px}
.header-actions{gap:17px}
nav{font-size:.8125rem;gap:clamp(28px,3.5vw,68px)}
@media(min-width:1700px){.hero-copy{padding-right:23%}.image-frame img{left:47%}}
@media(min-width:701px) and (max-width:1100px){.hero{grid-template-columns:47% 53%;min-height:650px}.hero-copy{padding-right:12%}h1{font-size:clamp(3rem,5.4vw,4rem)}.image-frame img{width:740px;transform:translate(-42%,-51%)}.header-inner{grid-template-columns:150px 1fr 130px;gap:16px}nav{gap:20px}}
@media(max-width:700px){.header-inner{min-height:74px;grid-template-columns:1fr 125px 1fr}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:48px 9% 0}h1{font-size:clamp(3rem,11vw,4.4rem);line-height:1.13}.eyebrow{margin-bottom:27px}.support{margin-bottom:22px}.hero-visual{height:535px}.image-frame{inset:0}.image-frame img{width:650px;left:50%;top:50%;transform:translate(-39%,-51%)}.hero-visual:after{width:170px;left:32%;bottom:9%}.hero-visual figcaption{left:9%;bottom:20px;font-size:.625rem}}
@media(min-width:701px){.image-frame img{width:clamp(650px,49vw,880px);transform:translate(-42%,-50%)}}
.image-frame{filter:drop-shadow(18px 25px 18px #6e46521a)}
.image-frame img{filter:none;clip-path:polygon(34.4% 18.1%,37% 17.8%,42% 17.9%,47% 18.6%,52% 19.9%,54.8% 21%,54.8% 23%,50% 42%,49.4% 43%,48.8% 46%,41.9% 77.8%,41.6% 80.7%,40.2% 81.7%,36% 82.5%,30% 82.3%,24% 81.4%,19.5% 80%,19.3% 78.5%,28.4% 41%,29.4% 38.8%,33.4% 22%)}
.hero-visual figcaption{display:none}
.logo{width:84px;height:56px;overflow:visible}
.logo img{position:static;display:block;width:100%;height:100%;object-fit:contain;max-width:100%}
@media(max-width:700px){.logo{width:72px;height:48px}.logo img{position:static;width:100%;height:100%}}
/* Quiet motion and a single typographic focal point. */
.cta,.cta svg,nav a:after,nav button:after,.icon-button{transition-duration:.45s}
.hero-copy{padding-bottom:0}
/* Header floats over the campaign until the visitor scrolls. */
.header{background:transparent;transition:background-color .4s ease,box-shadow .4s ease}
.header.scrolled{background:#fff}
main{margin-top:-82px}
.hero{padding-top:82px;height:calc(100svh - 27px);max-height:1002px;min-height:772px}
@media(max-width:700px){main{margin-top:-74px}.hero{padding-top:74px;height:auto;max-height:none;min-height:0}}
@media(min-width:701px){.hero{height:100svh;max-height:none}}
/* White background review. */
body,.hero,.announcement{background:#fff}
.hero:before{background:none}
@media(min-width:701px){.hero{height:calc(100svh + 24px)}}
.logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:84px;height:56px}
.logo-bag{width:22px;height:22px;color:var(--muted-gold)}
.logo-wordmark{position:relative;display:block;width:84px;height:20px;overflow:hidden}
.logo .logo-wordmark img{position:absolute;display:block;max-width:none;width:100px;height:66.667px;left:-7px;top:-46px;object-fit:contain}
@media(max-width:700px){.logo{width:84px;height:56px}}
@media(max-width:700px){.hero-visual{height:680px}.image-frame img{transform:translate(-39%,-48%)}}
.cart-brand-mark{position:relative;display:block;width:29px;height:29px;overflow:hidden}
.cart-brand-mark img{position:absolute;max-width:none;width:66px;height:44px;left:-20px;top:-1px;object-fit:contain}
.beauty-opening{height:50svh;overflow:hidden;background:white}
.beauty-opening img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 43%}
.header-inner{grid-template-columns:1fr 125px 1fr;min-height:82px}
.menu-toggle{display:grid;grid-column:1;grid-row:1;justify-self:start}
.logo{grid-column:2;grid-row:1;justify-self:center}
.header-actions{grid-column:3;grid-row:1;justify-self:end}
.header>nav{display:none;padding:16px 7%;background:white;gap:30px}
.header>nav.open{display:flex}
.hero{grid-template-columns:1fr;height:80svh;min-height:650px;padding-top:0}
.hero-visual{width:100%;overflow:hidden}
.image-frame img{left:50%;transform:translate(-39%,-50%)}
@media(max-width:700px){.header-inner{min-height:74px}.beauty-opening{height:50svh}.beauty-opening img{object-position:50% 45%}.hero{height:680px;min-height:0}.hero-visual{height:680px}.image-frame img{transform:translate(-39%,-48%)}.header>nav.open{flex-direction:column}}
/* Preserve the photograph's calm upper field underneath the floating header. */
.beauty-opening{position:relative;background:#eeece8}
.beauty-opening img{object-position:50% 0%;object-fit:cover}
.logo-wordmark,.cart-brand-mark{filter:contrast(1.55) saturate(1.22) drop-shadow(0 1px 0 #ffffffc7) drop-shadow(0 -0.5px 0 #79582280)}
.menu-toggle{color:#554737}
@media(min-width:701px){.beauty-opening{padding-top:82px}.beauty-opening img{object-position:50% 29%}}
@media(max-width:700px){.beauty-opening img{object-position:50% 0%}}
@media(min-width:701px){.beauty-opening img{object-position:50% 52%}}
/* Show the complete supplied photograph at its original proportions. */
.beauty-opening{height:auto;min-height:0;padding:0;overflow:visible}
.beauty-opening img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
/* Richer original gold, without the dark engraving effect. */
.logo-wordmark,.cart-brand-mark{filter:saturate(1.4) brightness(1.08) contrast(1.08)}
:root{--brand-gold:#B28E41}
.logo-wordmark,.cart-brand-mark{filter:none}
.logo .logo-wordmark img,.cart-brand-mark img{filter:url(#brand-gold)}
.header .menu-toggle,.header.scrolled .menu-toggle{color:var(--brand-gold)}
.header .menu-toggle:hover{color:#94722e}
.beauty-opening{position:relative;height:100svh;overflow:hidden}
.beauty-opening img{height:100%;width:100%;object-fit:cover;object-position:50% 50%}
.campaign-copy{position:absolute;left:6%;right:6%;bottom:6%;text-align:center;color:#fff9f0;text-shadow:0 1px 14px #44281940}
.campaign-brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:1rem;letter-spacing:.25em;margin:0 0 14px;font-weight:500}
.campaign-copy h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(2.3rem,4.4vw,4.8rem);line-height:1.05;letter-spacing:-.02em;white-space:normal;margin:0 0 15px}
.campaign-subtitle{font-size:.8125rem;letter-spacing:.08em;font-weight:300;margin:0;line-height:1.6}
@media(max-width:700px){.beauty-opening{height:100svh}.beauty-opening img{object-position:50% 50%}.campaign-copy{bottom:7%;left:5%;right:5%}.campaign-brand{font-size:.875rem;margin-bottom:12px}.campaign-copy h1{font-size:clamp(2.1rem,8.8vw,3rem)}.campaign-subtitle{font-size:.75rem;letter-spacing:.045em}}
.campaign-brand{display:block;white-space:nowrap;font-size:clamp(1.45rem,2.2vw,2.3rem);letter-spacing:.18em;margin-bottom:18px}
@media(max-width:700px){.campaign-brand{font-size:1.6rem;margin-bottom:15px}}
/* Restore the full photograph; typography does not change its dimensions. */
.beauty-opening{height:auto;min-height:0;padding:0;overflow:visible}
.beauty-opening img{width:100%;height:auto;object-fit:contain;object-position:center}
.campaign-copy{bottom:19%;left:7%;right:7%;color:#fffaf3;text-shadow:0 1px 8px #38231830}
.campaign-brand{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(1.6rem,2.7vw,3rem);letter-spacing:.2em;line-height:1.2;margin:0 0 20px}
.campaign-copy h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(2rem,4.5vw,4.5rem);letter-spacing:0;line-height:1.12;margin:0 0 18px}
.campaign-subtitle{font-family:'Heebo',Arial,sans-serif;font-weight:300;font-size:clamp(.75rem,1.1vw,1rem);line-height:1.6;letter-spacing:.065em;margin:0}
@media(max-width:700px){.beauty-opening{height:auto}.campaign-copy{bottom:19%;left:6%;right:6%}.campaign-brand{font-size:1.65rem;letter-spacing:.18em;margin-bottom:15px}.campaign-copy h1{font-size:clamp(1.9rem,8vw,2.6rem);line-height:1.12;margin-bottom:16px}.campaign-subtitle{font-size:.75rem;letter-spacing:.035em}}
.campaign-brand,.campaign-copy h1{font-family:'Bodoni Moda',Didot,'Times New Roman',serif;font-weight:400;font-optical-sizing:auto}
.campaign-copy h1{font-size:clamp(1.8rem,3.7vw,4rem);line-height:1.25;letter-spacing:-.025em}
@media(max-width:700px){.campaign-copy h1{font-size:clamp(1.65rem,7vw,2.3rem)}}
.original-teeth{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
/* Slightly larger wordmark and more legible matching gold menu. */
.logo{width:100px}
.logo-wordmark{width:100px;height:24px}
.logo .logo-wordmark img{width:119px;height:79.333px;left:-8.33px;top:-54.74px}
.header .menu-toggle{color:var(--brand-gold)}
.menu-toggle svg{width:24px;height:24px;stroke-width:1.8}
@media(max-width:700px){.logo{width:100px}}
/* Gold campaign typography, with the lower brand line slightly lowered. */
.campaign-copy{color:var(--brand-gold);text-shadow:0 1px 2px #fff7e933}
.campaign-brand{position:relative;top:8px}
/* One shared gold value for the header marks and all campaign lettering. */
.campaign-copy,.campaign-brand,.campaign-copy h1,.campaign-subtitle{color:var(--brand-gold);text-shadow:none;font-family:'Jost','Helvetica Neue',Arial,sans-serif;font-weight:300}
.campaign-brand{letter-spacing:.23em;font-weight:400}
.campaign-copy h1{letter-spacing:.025em;line-height:1.3}
.campaign-subtitle{letter-spacing:.075em}
/* Approved high-contrast typography over the photograph. */
.campaign-copy,.campaign-brand,.campaign-copy h1,.campaign-subtitle{color:#FFF8EE;font-weight:400;text-shadow:0 2px 10px rgba(25,19,20,.6),0 1px 2px rgba(25,19,20,.5)}
/* Phone opening: reserve the calm header field and keep all copy on screen. */
@media(max-width:700px){
.beauty-opening{height:100svh;min-height:0;overflow:hidden;padding-top:74px;background:#eeece8}
.beauty-opening>img{width:100%;height:calc(100% - 0px);object-fit:cover;object-position:50% 60%}
.campaign-copy{bottom:max(26px,env(safe-area-inset-bottom));left:6%;right:6%}
.campaign-brand{font-size:1.5rem;margin-bottom:13px;top:0}
.campaign-copy h1{font-size:clamp(1.7rem,7vw,2.25rem);line-height:1.22;margin-bottom:14px}
.campaign-subtitle{font-size:.75rem;line-height:1.5}
}
/* A small scroll range lets the floating header leave the opening naturally. */
body{padding-bottom:90px}
.header,.header.scrolled{position:relative;top:auto;background:transparent;box-shadow:none}
@media(max-width:700px){.beauty-opening{padding-top:0}.beauty-opening>img{height:100%;object-position:50% 48%}.beauty-opening:before{content:'';position:absolute;inset:0 0 auto;height:74px;background:linear-gradient(to bottom,#eeece8f5,#eeece8e8 75%,#eeece800);pointer-events:none;z-index:1}}
/* More transparent header backing, with the gold marks kept intact. */
@media(max-width:700px){.beauty-opening:before{background:linear-gradient(to bottom,rgba(238,236,232,.45),rgba(238,236,232,.2) 65%,transparent)}}
/* Lower the portrait behind the header without moving the campaign copy. */
@media(max-width:700px){.beauty-opening>img{object-position:50% 20%}}
@media(max-width:700px){.beauty-opening>img{object-position:50% 0%}}
/* Lift the three header elements clear of the hairline. */
.header-inner>.logo,.header-inner>.menu-toggle,.header-inner>.header-actions{transform:translateY(-10px)}
.edit-launcher{position:fixed;bottom:12px;left:12px;z-index:30;border:1px solid #d9ccaf;background:#fffdf8;color:#51432d;font:400 13px var(--font-body);padding:10px 14px;box-shadow:0 2px 12px #0001}
.layout-editor{position:fixed;bottom:62px;left:12px;z-index:30;width:min(290px,calc(100vw - 24px));background:#fffdf8;color:#322b25;padding:18px;border:1px solid #ddd0b5;box-shadow:0 8px 30px #0002;font:400 14px var(--font-body)}
.layout-editor[hidden]{display:none}.layout-editor p{font-size:13px;line-height:1.6}.layout-editor label{display:block;margin:12px 0}.layout-editor input{display:block;width:100%;accent-color:#b28e41}.layout-editor select{font:inherit;padding:5px;border:1px solid #ddd;margin-right:8px}.layout-editor button{font:inherit;background:white;border:1px solid #ddd;padding:8px;margin-left:6px}.editing-selected{outline:1px dashed #b28e41;outline-offset:5px}.layout-editing .campaign-copy,.layout-editing .logo,.layout-editing .header-actions,.layout-editing .menu-toggle,.layout-editing .beauty-opening>img{touch-action:none;cursor:move;user-select:none}
.layout-editor{max-height:calc(100svh - 90px);overflow-y:auto}
.layout-editor .editor-color{width:100%;height:36px;padding:2px;border:1px solid #ddd;background:white;cursor:pointer}
.hero-position-controls .hero-lock-button{width:100%;margin:4px 0 10px;border-color:#b28e41;background:#fbf2df;color:#705629}.hero-position-controls button:disabled,.layout-editor input:disabled{opacity:.42;cursor:not-allowed}.hero-position-locked .photo-hero>img{cursor:default!important;touch-action:auto!important}
.editor-palette{display:flex;gap:8px;margin:10px 0 16px}.editor-palette[hidden]{display:none}
.layout-editor .editor-palette button{width:30px;height:30px;padding:0;margin:0;border:1px solid #c9bca4;border-radius:50%;flex-shrink:0}

/* LUMINÉRA gold study — restrained dimensional metal with a slow holographic light pass. */
:root{--gold-deep:#6f4813;--gold-mid:#b97c22;--gold-light:#f7dda0;--gold-pale:#fff1b5}
.logo-wordmark,.cart-brand-mark{isolation:isolate;filter:drop-shadow(0 1px 1px rgba(83,48,7,.2)) drop-shadow(0 5px 12px rgba(110,70,12,.08))}
.logo-wordmark img,.cart-brand-mark img{opacity:.08;filter:sepia(1) saturate(2.2) brightness(.72)!important}
.logo-wordmark::before,.logo-wordmark::after,.cart-brand-mark::before,.cart-brand-mark::after{content:"";position:absolute;inset:0;pointer-events:none}
.logo-wordmark::before,.cart-brand-mark::before{z-index:1;background:linear-gradient(112deg,var(--gold-deep) 0%,#a66c1e 17%,var(--gold-light) 38%,#9b641a 56%,var(--gold-pale) 73%,#8a5818 100%)}
.logo-wordmark::after,.cart-brand-mark::after{z-index:2;background:linear-gradient(104deg,transparent 15%,rgba(255,251,218,0) 37%,rgba(255,251,218,.96) 48%,rgba(255,255,245,.62) 52%,rgba(255,251,218,0) 63%,transparent 84%);background-size:260% 100%;animation:brand-hologram 5.8s var(--ease) infinite}
.logo-wordmark::before,.logo-wordmark::after{-webkit-mask-image:url('assets/logo-new.png');mask-image:url('assets/logo-new.png');-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:119px 79.333px;mask-size:119px 79.333px;-webkit-mask-position:-8.33px -54.74px;mask-position:-8.33px -54.74px}
.cart-brand-mark::before,.cart-brand-mark::after{-webkit-mask-image:url('assets/logo-new.png');mask-image:url('assets/logo-new.png');-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:66px 44px;mask-size:66px 44px;-webkit-mask-position:-20px -1px;mask-position:-20px -1px}
.menu-toggle svg{stroke:url(#menu-gold);filter:drop-shadow(0 1px 1px rgba(83,48,7,.18)) drop-shadow(0 4px 9px rgba(110,70,12,.08));animation:menu-hologram 5.8s var(--ease) infinite}
.menu-toggle::after{content:"";position:absolute;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle,rgba(255,231,156,.19),transparent 68%);opacity:0;animation:gold-aura 5.8s var(--ease) infinite;pointer-events:none}
.logo::after,.header-actions::after{content:"";position:absolute;inset:5px -12px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,229,146,.2),transparent 70%);filter:blur(6px);opacity:0;animation:gold-aura 5.8s var(--ease) infinite;pointer-events:none;z-index:-1}
.header-actions{position:relative}
@keyframes brand-hologram{0%,18%{background-position:120% 0;opacity:0}26%{opacity:.9}44%{background-position:-110% 0;opacity:0}100%{background-position:-110% 0;opacity:0}}
@keyframes gold-aura{0%,19%,48%,100%{opacity:0;transform:scale(.92)}29%{opacity:.75;transform:scale(1.04)}}
@keyframes menu-hologram{0%,18%,48%,100%{filter:drop-shadow(0 1px 1px rgba(83,48,7,.18)) drop-shadow(0 4px 9px rgba(110,70,12,.08))}29%{filter:drop-shadow(0 0 2px rgba(255,242,184,.9)) drop-shadow(0 5px 11px rgba(110,70,12,.16))}}
@media(hover:hover){.logo:hover .logo-wordmark::after,.header-actions:hover .cart-brand-mark::after{animation-duration:1.35s}.menu-toggle:hover svg{filter:drop-shadow(0 0 3px rgba(255,236,171,.9)) drop-shadow(0 5px 10px rgba(110,70,12,.16))}}
@media(prefers-reduced-motion:reduce){.logo-wordmark::after,.cart-brand-mark::after,.menu-toggle svg,.menu-toggle::after,.logo::after,.header-actions::after{animation:none!important}.logo-wordmark::after,.cart-brand-mark::after{opacity:0}}

/* Four-product opening study. Real product cutouts, staged with depth rather than cards. */
.product-opening{position:relative;height:min(920px,100svh);min-height:720px;overflow:hidden;background:radial-gradient(ellipse at 50% 58%,#fff 0 15%,#fdf7f8 40%,#f6e5e9 100%);isolation:isolate}
.product-opening::before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,rgba(255,255,255,.58),transparent 35% 68%,rgba(226,185,194,.2));pointer-events:none}
.product-stage{position:absolute;inset:8% 5% 7%;perspective:1400px;transform-style:preserve-3d}
.floating-product{position:absolute;margin:0;transform-style:preserve-3d;will-change:transform;transition:filter .7s var(--ease),z-index 0s .35s}
.floating-product img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 36px 32px rgba(89,49,58,.18)) drop-shadow(0 9px 8px rgba(89,49,58,.1));transition:transform .9s var(--ease),filter .9s var(--ease)}
.floating-product figcaption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.product-powder{width:23%;height:44%;left:5%;top:27%;z-index:2;animation:product-float-a 8.2s ease-in-out infinite}
.product-purple{width:23%;height:72%;left:25%;top:8%;z-index:4;animation:product-float-b 9.1s ease-in-out infinite}
.product-pen{width:13%;height:62%;left:43.5%;top:22%;z-index:6;animation:product-pen-float 7.6s ease-in-out -1.2s infinite}
.product-led{width:24%;height:68%;left:49%;top:10%;z-index:3;animation:product-float-a 8.8s ease-in-out -2.1s infinite}
.product-serum{width:21%;height:68%;left:73%;top:10%;z-index:2;animation:product-float-b 9.6s ease-in-out -3.4s infinite}
.product-aura{position:absolute;width:72%;height:28%;left:14%;bottom:7%;border-radius:50%;background:radial-gradient(ellipse,rgba(183,122,114,.18),rgba(255,255,255,0) 68%);filter:blur(28px);transform:rotateX(67deg);animation:aura-breathe 7s ease-in-out infinite}
.collection-mark{position:absolute;bottom:3.4%;left:50%;transform:translateX(-50%);margin:0;font:400 .68rem 'Jost',sans-serif;letter-spacing:.32em;color:#98764b;white-space:nowrap}
@keyframes product-float-a{0%,100%{transform:translate3d(0,0,0) rotateY(-4deg)}50%{transform:translate3d(0,-13px,24px) rotateY(3deg)}}
@keyframes product-float-b{0%,100%{transform:translate3d(0,-5px,16px) rotateY(3deg)}50%{transform:translate3d(0,10px,0) rotateY(-3deg)}}
@keyframes product-pen-float{0%,100%{transform:translate3d(0,3px,44px) rotateY(-7deg) rotateZ(-2deg)}50%{transform:translate3d(0,-15px,70px) rotateY(8deg) rotateZ(2deg)}}
@keyframes aura-breathe{0%,100%{opacity:.65;transform:rotateX(67deg) scale(.96)}50%{opacity:1;transform:rotateX(67deg) scale(1.04)}}
@media(hover:hover){.floating-product:hover{z-index:8;filter:brightness(1.025)}.floating-product:hover img{transform:translateY(-16px) scale(1.035) rotateY(-4deg);filter:drop-shadow(0 46px 38px rgba(89,49,58,.21)) drop-shadow(0 12px 9px rgba(89,49,58,.12))}}
@media(max-width:900px){.product-opening{min-height:680px}.product-stage{inset:10% 2% 7%}.product-powder{width:25%;left:1%}.product-purple{width:25%;left:23%}.product-pen{width:15%;left:42.5%}.product-led{width:27%;left:47%}.product-serum{width:23%;left:73%}}
@media(max-width:700px){.product-opening{height:100svh;min-height:650px}.product-stage{inset:12% 1% 8%}.product-powder{width:39%;height:34%;left:4%;top:8%}.product-purple{width:42%;height:57%;left:5%;top:35%}.product-pen{width:24%;height:47%;left:38%;top:27%;z-index:7}.product-led{width:42%;height:51%;left:52%;top:5%}.product-serum{width:39%;height:51%;left:55%;top:42%}.collection-mark{bottom:2.4%;font-size:.58rem;letter-spacing:.24em}}
@media(prefers-reduced-motion:reduce){.floating-product,.product-aura{animation:none!important}}

/* Supplied cinematic campaign films replace the temporary product collage. */
.film-opening{position:relative;height:calc(100svh - 82px);min-height:650px;overflow:hidden;background:#f2dadd;isolation:isolate}
.campaign-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.018);transition:opacity 1.25s ease,transform 7s ease;pointer-events:none}
.campaign-film.active{opacity:1;transform:scale(1)}
.film-vignette{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.12),transparent 22% 78%,rgba(65,31,40,.1));pointer-events:none}
.film-signature{position:absolute;left:50%;bottom:4.5%;transform:translateX(-50%);margin:0;color:#fffaf1;font:400 clamp(1rem,1.6vw,1.45rem) 'Bodoni Moda',serif;letter-spacing:.25em;text-shadow:0 2px 16px rgba(60,23,32,.3)}
.film-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5;border:1px solid rgba(255,255,255,.7);background:rgba(255,253,250,.78);backdrop-filter:blur(10px);color:#6f4d2b;padding:12px 22px;border-radius:999px;font-size:.82rem}
@media(max-width:700px){.film-opening{height:calc(100svh - 74px);min-height:590px}.campaign-film{object-position:center}.film-signature{bottom:3.5%;font-size:1rem}}
@media(prefers-reduced-motion:reduce){.campaign-film{transition:none;transform:none}}

/* One continuous opening: the supplied group film, followed by four quiet product portraits. */
.campaign-film{z-index:0;opacity:0}
.spotlight-backdrop{position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 47%,#fff 0 12%,#fdf7f8 42%,#efd6dc 100%);opacity:1}
.group-scene{position:absolute;inset:5% 5% 7%;z-index:2;perspective:1400px;transform-style:preserve-3d;animation:group-scene 32s ease-in-out infinite}
.group-product{position:absolute;transform-style:preserve-3d}
.group-product img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 34px 28px rgba(75,38,48,.18))}
.group-powder{width:25%;height:56%;left:3%;top:23%;transform:translateZ(20px) rotateY(-4deg)}
.group-tube{width:29%;height:83%;left:23%;top:3%;transform:translateZ(70px) rotateY(3deg)}
.group-led{width:27%;height:76%;left:47%;top:10%;transform:translateZ(38px) rotateY(-3deg)}
.group-serum{width:24%;height:78%;right:2%;top:8%;transform:translateZ(25px) rotateY(4deg)}
.hero-product{position:absolute;z-index:2;pointer-events:none;opacity:0;transform-style:preserve-3d;perspective:1200px}
.hero-product img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 34px 28px rgba(75,38,48,.2))}
.focus-purple{width:39%;height:82%;left:30.5%;top:8%;animation:focus-purple 32s ease-in-out infinite}
.focus-powder{width:43%;height:67%;left:28.5%;top:16%;animation:focus-powder 32s ease-in-out infinite}
.focus-led{width:41%;height:79%;left:29.5%;top:8%;animation:focus-led 32s ease-in-out infinite}
.focus-serum{width:37%;height:79%;left:31.5%;top:8%;animation:focus-serum 32s ease-in-out infinite}
.film-vignette,.film-signature{z-index:3}
@keyframes group-scene{0%{opacity:1;transform:translate3d(0,12px,0) scale(.97)}5%,19%{opacity:1;transform:translate3d(0,0,20px) scale(1)}23%,90%{opacity:0;visibility:hidden}94%{opacity:1;visibility:visible;transform:translate3d(0,0,20px) scale(1)}100%{opacity:1;transform:translate3d(0,-5px,0) scale(1.01)}}
@keyframes focus-purple{0%,22%,39%,100%{opacity:0;transform:translate3d(-80px,28px,-120px) rotateY(-20deg) scale(.88)}25%,36%{opacity:1;transform:translate3d(0,0,70px) rotateY(4deg) scale(1)}38%{opacity:0;transform:translate3d(55px,-18px,110px) rotateY(15deg) scale(1.04)}}
@keyframes focus-powder{0%,37%,55%,100%{opacity:0;transform:translate3d(70px,20px,-130px) rotateY(22deg) scale(.88)}41%,52%{opacity:1;transform:translate3d(0,-5px,75px) rotateY(-4deg) scale(1)}54%{opacity:0;transform:translate3d(-50px,-18px,110px) rotateY(-15deg) scale(1.04)}}
@keyframes focus-led{0%,53%,71%,100%{opacity:0;transform:translate3d(-70px,18px,-130px) rotateY(-24deg) scale(.88)}57%,68%{opacity:1;transform:translate3d(0,-8px,80px) rotateY(5deg) scale(1)}70%{opacity:0;transform:translate3d(55px,-20px,120px) rotateY(17deg) scale(1.04)}}
@keyframes focus-serum{0%,69%,88%,100%{opacity:0;transform:translate3d(70px,22px,-120px) rotateY(20deg) scale(.88)}73%,85%{opacity:1;transform:translate3d(0,-6px,75px) rotateY(-5deg) scale(1)}87%{opacity:0;transform:translate3d(-50px,-18px,110px) rotateY(-15deg) scale(1.04)}}
@media(max-width:700px){.group-scene{inset:9% 1% 8%}.group-powder{width:39%;height:38%;left:1%;top:9%}.group-tube{width:43%;height:59%;left:4%;top:37%}.group-led{width:43%;height:52%;left:51%;top:6%}.group-serum{width:39%;height:54%;right:3%;top:43%}.focus-purple{width:70%;height:77%;left:15%;top:10%}.focus-powder{width:77%;height:65%;left:11.5%;top:18%}.focus-led{width:75%;height:75%;left:12.5%;top:10%}.focus-serum{width:67%;height:76%;left:16.5%;top:10%}}
@media(prefers-reduced-motion:reduce){.group-scene,.hero-product{animation-play-state:paused}.group-scene{opacity:1}}

/* User-adjustable, single-line product film. */
.film-opening{--product-row-y:62%;--product-size:310px;--product-gap:80px;--product-speed:22s}
.product-marquee{position:absolute;z-index:2;left:3%;right:3%;top:var(--product-row-y);height:var(--product-size);transform:translateY(-50%);overflow:visible;perspective:1200px}
.product-track{direction:ltr;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:clamp(18px,4vw,var(--product-gap));width:100%;height:100%;padding:0 2%;transform-style:preserve-3d}
.marquee-product{--rx:0deg;--ry:0deg;--lift:0px;position:relative;width:100%;height:100%;display:grid;place-items:center;transform-style:preserve-3d;animation:product-float 5.8s ease-in-out infinite;transition:filter .45s ease;will-change:transform}
.marquee-product:nth-child(2){animation-delay:-1.45s}.marquee-product:nth-child(3){animation-delay:-2.9s}.marquee-product:nth-child(4){animation-delay:-4.35s}
.marquee-product img{display:block;width:min(100%,var(--product-size));height:min(100%,var(--product-size));object-fit:contain;transform:translateZ(28px);filter:drop-shadow(0 24px 20px rgba(75,38,48,.16));transition:filter .45s ease}
.marquee-product.is-tilting{animation:none;transform:translateY(-10px) rotateX(var(--rx)) rotateY(var(--ry)) scale(1.045)}
.marquee-product.is-tilting img{filter:drop-shadow(0 38px 27px rgba(75,38,48,.24))}
.layout-editing .marquee-product{touch-action:none;cursor:move;user-select:none}
.layout-editing .marquee-product.editing-selected{outline:1px dashed #b28e41;outline-offset:4px}
.hero-product{display:none}
@keyframes product-float{0%,100%{transform:translate3d(0,7px,0) rotateX(-1deg) rotateY(-3deg)}50%{transform:translate3d(0,-10px,32px) rotateX(2deg) rotateY(4deg)}}
@media(max-width:700px){.film-opening{--product-row-y:56%;--product-size:390px;--product-gap:20px}.product-marquee{left:6%;right:6%}.product-track{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,1fr);gap:18px 24px}.marquee-product img{width:100%;height:100%}}
@media(prefers-reduced-motion:reduce){.marquee-product{animation:none}}

/* Compact side editor: the page stays visible while adjustments are made. */
.layout-editor{top:86px;bottom:auto;right:10px;left:auto;width:min(224px,40vw);max-height:calc(100svh - 100px);padding:12px 13px;font-size:12px;background:rgba(255,253,248,.94);backdrop-filter:blur(12px);overflow:auto}
.layout-editor>p,.layout-editor .product-controls p{font-size:11px;line-height:1.35;margin:5px 0 8px}
.layout-editor label{margin:7px 0}.layout-editor input{height:18px}.layout-editor hr{border:0;border-top:1px solid #ddd0b5;margin:11px 0}.layout-editor button{padding:6px;font-size:11px}
@media(max-width:700px){.layout-editor{top:76px;right:6px;left:auto;width:min(190px,46vw);max-height:calc(100svh - 88px);padding:9px}.layout-editor label{margin:5px 0}.editor-palette{flex-wrap:wrap}}
.layout-editor .editor-close{position:sticky;top:-10px;z-index:2;display:block;width:100%;margin:0 0 10px;padding:9px;border:1px solid #cbb98f;background:#fffaf0;color:#5c4726;font-weight:500}
.hero-position-controls>div{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:7px 0}.layout-editor .hero-position-controls button{margin:0;width:100%}.hero-position-controls>[data-hero-reset]{margin-bottom:5px!important}

/* New photographic opening; the moving product film follows directly beneath it. */
.photo-hero{position:relative;width:100%;height:min(88svh,940px);min-height:620px;box-sizing:border-box;padding-top:26px;overflow:hidden;background:#fff;display:grid;place-items:center}
.photo-hero img{display:block;width:100%;height:100%;object-fit:contain;object-position:center top}
.hero-motion{position:absolute;z-index:1;inset:26px 0 0;pointer-events:none;will-change:transform;animation:hero-hand-sway 8.2s ease-in-out infinite}
.hero-motion img{position:absolute;inset:0}
.hero-motion-tube{-webkit-mask-image:radial-gradient(ellipse 24% 23% at 14% 27%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);mask-image:radial-gradient(ellipse 24% 23% at 14% 27%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%)}
.hero-motion-serum{-webkit-mask-image:radial-gradient(ellipse 24% 22% at 86% 25%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);mask-image:radial-gradient(ellipse 24% 22% at 86% 25%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);animation-delay:-1.6s}
.hero-motion-powder{-webkit-mask-image:radial-gradient(ellipse 25% 22% at 14% 64%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);mask-image:radial-gradient(ellipse 25% 22% at 14% 64%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);animation-delay:-3.2s}
.hero-motion-led{-webkit-mask-image:radial-gradient(ellipse 25% 22% at 86% 60%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);mask-image:radial-gradient(ellipse 25% 22% at 86% 60%,#000 36%,rgba(0,0,0,.82) 54%,transparent 75%);animation-delay:-4.8s}
@keyframes hero-hand-sway{0%,100%{transform:translate3d(0,0,0)}35%{transform:translate3d(1px,0,0)}68%{transform:translate3d(-1px,0,0)}}
.intro-bridge{--bridge-pad-y:14px;position:relative;z-index:2;margin-top:-1px;padding:var(--bridge-pad-y) 24px;background:#fff;text-align:center;color:var(--text-dark)}
.products-pill{position:absolute;z-index:4;left:50%;top:-44px;display:inline-flex;align-items:center;justify-content:center;min-width:116px;height:34px;margin:0;padding:0 20px;border:1px solid rgba(178,142,65,.24);border-radius:999px;background:#fbeff2;color:#a47d32;font-family:'Heebo',sans-serif;font-size:.78rem;font-weight:400;line-height:1;box-shadow:0 5px 16px rgba(106,67,77,.1);transform:translateX(-50%);transition:transform .3s ease,background-color .3s ease,box-shadow .3s ease}
.products-pill:hover,.products-pill:focus-visible{background:#f7e3e8;transform:translateX(-50%) translateY(-2px);box-shadow:0 9px 22px rgba(106,67,77,.15)}
.intro-bridge-brand{margin:0 0 6px;font-family:'Cormorant Garamond',serif;font-size:clamp(1.35rem,2.15vw,1.85rem);font-weight:500;line-height:1;letter-spacing:.22em;color:#a17b35}
.intro-bridge h2{margin:0;font-family:'Heebo',sans-serif;font-size:clamp(1.65rem,3vw,2.8rem);font-weight:300;line-height:1.35;letter-spacing:-.035em;color:#2f2929}
.intro-bridge-brand,.intro-bridge h2{animation:intro-shimmer 2.15s ease-in-out .45s 1 both}
.intro-bridge h2{animation-delay:.62s}
@keyframes intro-shimmer{0%,100%{filter:brightness(1);text-shadow:none}42%{filter:brightness(1.06);text-shadow:0 0 3px rgba(255,241,189,.3)}52%{filter:brightness(1.16);text-shadow:0 0 5px rgba(255,245,207,.78),0 0 15px rgba(183,154,97,.34)}64%{filter:brightness(1.04);text-shadow:0 0 3px rgba(255,241,189,.22)}}
.video-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.3vw,20px);margin-top:24px;padding:clamp(12px,1.8vw,26px);background:#fff}
.video-trio{margin-top:8px;padding-top:8px}
.video-tile{position:relative;aspect-ratio:4/5;overflow:hidden;background:#f7edef;border-radius:clamp(8px,1.1vw,16px);box-shadow:0 12px 35px rgba(78,43,52,.08)}
.video-tile video{display:block;width:100%;height:100%;object-fit:cover}
.video-tile::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(183,154,97,.13);border-radius:inherit}
.film-opening{height:calc(100svh - 82px);min-height:650px}
@media(max-width:700px){.photo-hero{height:auto;min-height:0;padding-top:22px}.photo-hero img{width:100%;height:auto;object-fit:contain}.intro-bridge{padding:var(--bridge-pad-y) 20px}.intro-bridge-brand{margin-bottom:5px;font-size:1.12rem}.intro-bridge h2{font-size:clamp(1.45rem,6.8vw,2rem)}.film-opening{height:calc(100svh - 74px);min-height:590px}}
@media(max-width:700px){.hero-motion{inset:22px 0 0;animation-duration:7.6s}}
@media(max-width:700px){.video-trio{gap:6px;margin-top:6px;padding:6px 6px 12px}.video-tile{aspect-ratio:3/5;border-radius:7px}}

.promo-marquee{direction:ltr;width:100%;overflow:hidden;border-block:1px solid rgba(183,154,97,.3);background:#fbf0f2;color:#705a42}
.promo-marquee-track{display:flex;align-items:center;width:max-content;min-width:200%;height:48px;white-space:nowrap;animation:promo-run 26s linear infinite;will-change:transform}
.promo-marquee span{direction:rtl;display:inline-block;padding-inline:clamp(28px,4vw,70px);font-family:'Assistant',sans-serif;font-size:.86rem;font-weight:300;letter-spacing:.01em}
.promo-marquee b{font-family:'Jost',sans-serif;font-size:.8rem;font-weight:400;letter-spacing:.08em;color:#9b7633}
.promo-marquee i{font-style:normal;font-size:.58rem;color:#b79a61}
@keyframes promo-run{to{transform:translateX(-50%)}}
@media(max-width:700px){.promo-marquee-track{height:42px;animation-duration:22s}.promo-marquee span{padding-inline:26px;font-size:.76rem}.promo-marquee b{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.promo-marquee-track{animation:none}}

/* Four quiet product stories: one floating product and one focused explanation per row. */
.product-stories{padding:clamp(100px,15svh,170px) 20px 54px;background:#fffdfc;color:var(--text-dark);scroll-margin-top:70px}
.results-marquee{padding:58px 0 64px;background:#fffdfc;overflow:hidden;border-bottom:1px solid rgba(183,154,97,.14)}.results-heading{text-align:center;margin:0 20px 30px}.results-heading p{margin:0 0 7px;color:#a17b35;font:400 .62rem 'Jost',sans-serif;letter-spacing:.22em}.results-heading h2{margin:0;color:#342d2e;font:300 clamp(2rem,4vw,3.4rem)/1.1 'Frank Ruhl Libre',serif}.results-viewport{direction:ltr;width:100%;overflow:hidden}.results-track{display:flex;width:max-content;will-change:transform;animation:results-run 52s linear infinite}.results-set{display:flex;flex:0 0 auto;gap:18px;padding-right:18px}.results-set figure{flex:0 0 auto;width:clamp(250px,27vw,380px);height:clamp(320px,34vw,480px);margin:0;overflow:hidden;background:#f7efef;border:1px solid rgba(178,142,65,.16)}.results-set img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff}.results-viewport:hover .results-track{animation-play-state:paused}@keyframes results-run{to{transform:translateX(-50%)}}@media(max-width:700px){.results-marquee{padding:42px 0 48px}.results-heading{margin-bottom:22px}.results-heading h2{font-size:2rem}.results-set{gap:10px;padding-right:10px}.results-set figure{width:260px;height:340px}.results-track{animation-duration:42s}}@media(prefers-reduced-motion:reduce){.results-track{animation:none}}
.results-marquee{padding:18px 0 22px}.results-heading{margin:0 16px 9px}.results-heading p{margin:0;font-size:.58rem;letter-spacing:.24em}.results-set{gap:9px;padding-right:9px}.results-set figure{width:clamp(150px,18vw,230px);height:clamp(170px,21vw,270px)}.results-track{animation-duration:48s}.results-marquee+.product-stories{padding-top:clamp(54px,8svh,90px)}@media(max-width:700px){.results-marquee{padding:14px 0 18px}.results-heading{margin-bottom:7px}.results-set{gap:7px;padding-right:7px}.results-set figure{width:145px;height:176px}.results-track{animation-duration:38s}.results-marquee+.product-stories{padding-top:52px}}
.results-marquee{padding:7px 0 9px}.results-heading{margin:0 12px 4px}.results-heading p{font-size:.52rem;line-height:1.2}.results-set{gap:6px;padding-right:6px}.results-set figure{width:clamp(145px,16vw,205px);height:clamp(112px,12vw,150px)}.results-set img{object-fit:cover}.results-track{animation-duration:44s}.results-marquee+.product-stories{padding-top:42px}@media(max-width:700px){.results-marquee{padding:6px 0 8px}.results-heading{margin-bottom:3px}.results-set{gap:5px;padding-right:5px}.results-set figure{width:142px;height:112px}.results-track{animation-duration:34s}.results-marquee+.product-stories{padding-top:38px}}
.results-set figure{width:clamp(220px,23vw,320px);height:clamp(280px,30vw,410px);background:#fff}
.results-set img{object-fit:contain;object-position:center}
@media(max-width:700px){.results-set figure{width:220px;height:275px}}
.results-marquee{padding:12px 0 14px}
.results-heading{margin:0 12px 9px}
.results-marquee+.product-stories{padding-top:20px}
.products-section-heading{margin-bottom:0}
.product-stories>.product-story:first-of-type{padding-top:20px}
@media(max-width:700px){.results-marquee{padding:10px 0 12px}.results-heading{margin-bottom:8px}.results-marquee+.product-stories{padding-top:18px}.product-stories>.product-story:first-of-type{padding-top:18px}}
.product-story{width:min(100%,940px);min-height:0;margin:0 auto;display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,64px);padding:48px 24px;overflow:hidden;border-bottom:1px solid rgba(183,154,97,.11)}
.product-story:first-child{scroll-margin-top:86px}
.product-story:nth-child(even){grid-template-columns:minmax(0,1fr) 240px;background:transparent}
.product-story:nth-child(even) .product-story-visual{order:2}
.product-story-visual{position:relative;width:240px;height:240px;display:grid;place-items:center}
.product-story-visual::before{content:"";position:absolute;width:54%;height:11%;left:23%;bottom:7%;border-radius:50%;background:radial-gradient(ellipse,rgba(100,62,72,.11),transparent 68%);filter:blur(12px)}
.product-story-visual img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 17px rgba(84,47,57,.09));transform:none;animation:product-detail-float 5.8s ease-in-out infinite;transition:none;will-change:transform}
.product-story-powder .product-story-visual img{scale:1.14}.product-story-purple .product-story-visual img{scale:.92}.product-story-led .product-story-visual img{scale:1.03}.product-story-serum .product-story-visual img{scale:.96}
.product-story-purple .product-story-visual img{animation-delay:-1.45s}.product-story-led .product-story-visual img{animation-delay:-2.9s}.product-story-serum .product-story-visual img{animation-delay:-4.35s}
@keyframes product-detail-float{0%,100%{transform:translate3d(0,4px,0)}50%{transform:translate3d(0,-7px,0)}}
.product-story-copy{width:min(100%,560px);margin-inline:auto;text-align:center}
.product-story-kicker{display:none}
.product-story-copy h2{margin:0 0 9px;font-family:'Frank Ruhl Libre','Assistant',serif;font-size:clamp(1.45rem,2vw,1.9rem);font-weight:300;line-height:1.22;letter-spacing:-.018em}
.product-story-lead{margin:0 0 13px!important;font-family:'Assistant',sans-serif;font-size:clamp(.93rem,1.05vw,1.02rem)!important;font-weight:300;color:#745d60}
.product-story-copy>p:not(.product-story-kicker):not(.product-story-lead){margin:0 auto 8px;font-family:'Assistant',sans-serif;font-size:clamp(.8rem,.9vw,.91rem);font-weight:300;line-height:1.68;color:#514748}
.product-buy{display:inline-flex;align-items:center;justify-content:center;min-width:92px;height:32px;margin-top:12px;padding:0 20px;border:1px solid rgba(178,142,65,.28);border-radius:999px;background:#fbeff2;color:#9d7938;font-family:'Assistant',sans-serif;font-size:.78rem;font-weight:400;line-height:1;box-shadow:0 4px 13px rgba(106,67,77,.07);cursor:pointer;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.product-buy:hover,.product-buy:focus-visible{border-color:rgba(178,142,65,.48);background:#f7e3e8;box-shadow:0 7px 17px rgba(106,67,77,.12);transform:translateY(-1px);outline:none}
@keyframes story-float{0%,100%{transform:translate3d(0,8px,0) rotateX(var(--story-rx)) rotateY(var(--story-ry))}50%{transform:translate3d(0,-14px,34px) rotateX(var(--story-rx)) rotateY(var(--story-ry))}}
@media(max-width:760px){.product-stories{padding:16svh 10px 28px}.product-story,.product-story:nth-child(even){grid-template-columns:112px minmax(0,1fr);gap:14px;padding:34px 2px}.product-story:nth-child(even) .product-story-visual{order:0}.product-story-visual{width:112px;height:168px}.product-story-copy{width:100%;max-width:none;text-align:center}.product-story-copy h2{margin-bottom:7px;font-size:1.05rem;line-height:1.22}.product-story-lead{margin-bottom:9px!important;font-size:.78rem!important}.product-story-copy>p:not(.product-story-kicker):not(.product-story-lead){margin-bottom:6px;font-size:.68rem;line-height:1.55}.product-buy{min-width:78px;height:28px;margin-top:8px;padding-inline:15px;font-size:.7rem}}
.product-story-copy{position:relative;padding:34px 38px 32px;border:1px solid rgba(183,154,97,.16);border-radius:22px;background:linear-gradient(145deg,rgba(252,239,242,.96),rgba(248,224,230,.82));box-shadow:0 16px 42px rgba(95,57,66,.07)}.product-story-copy::before{content:'';position:absolute;inset:8px;border:1px solid rgba(255,255,255,.62);border-radius:16px;pointer-events:none}.product-story-copy>*{position:relative;z-index:1}@media(max-width:760px){.product-story-copy{padding:22px 14px 20px;border-radius:16px;box-shadow:0 10px 28px rgba(95,57,66,.06)}.product-story-copy::before{inset:5px;border-radius:12px}}
.products-section-heading{text-align:center;margin:0 auto 18px;grid-column:1/-1}.products-section-heading p{margin:0;color:#a17b35;font:400 .58rem/1.2 'Jost',sans-serif;letter-spacing:.24em}@media(max-width:760px){.products-section-heading{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){.product-story-visual img{animation:none}}
/* Compact, continuously moving customer review gallery. */
.reviews-marquee{padding:22px 0 28px;overflow:hidden;background:#fffdfc;border-top:1px solid rgba(183,154,97,.12)}
.reviews-heading{margin:0 16px 12px;text-align:center}
.reviews-heading p{margin:0;color:#a17b35;font:400 .58rem/1.2 'Jost',sans-serif;letter-spacing:.24em}
.reviews-viewport{direction:ltr;width:100%;overflow:hidden}
.reviews-track{display:flex;width:max-content;will-change:transform;animation:reviews-run 68s linear infinite}
.reviews-set{display:flex;flex:0 0 auto;align-items:center;gap:12px;padding-right:12px}
.reviews-set figure{flex:0 0 auto;width:clamp(170px,17vw,230px);height:clamp(235px,24vw,325px);margin:0;overflow:hidden;border:1px solid rgba(178,142,65,.15);border-radius:14px;background:#f8f4ef;box-shadow:0 9px 26px rgba(74,48,53,.07)}
.reviews-set img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 37%}
.reviews-viewport:hover .reviews-track{animation-play-state:paused}
@keyframes reviews-run{to{transform:translateX(-50%)}}
@media(max-width:700px){.reviews-marquee{padding:17px 0 22px}.reviews-heading{margin-bottom:9px}.reviews-set{gap:8px;padding-right:8px}.reviews-set figure{width:158px;height:218px;border-radius:11px}.reviews-track{animation-duration:52s}}
@media(prefers-reduced-motion:reduce){.reviews-track{animation:none}}
@media(prefers-reduced-motion:reduce){.intro-bridge-brand,.intro-bridge h2{animation:none}}
@media(prefers-reduced-motion:reduce){.hero-motion{animation:none}}

/* Keep the photographic opening completely stable. */
.photo-hero .hero-motion{display:none}
.photo-hero{padding-top:0}
.photo-hero>img{object-fit:cover;object-position:50% 100%;transform:none}
@media(max-width:700px){.photo-hero{padding-top:0}.photo-hero>img{object-fit:cover;object-position:50% 84%;transform:none}}
.layout-editing .photo-hero>img{touch-action:none;cursor:move;user-select:none}

/* The brand header remains visible throughout the page. */
.header,.header.scrolled{position:fixed;inset:0 0 auto;top:0;z-index:50;box-shadow:none}
.header{background:transparent}
.header.scrolled{background:rgba(255,255,255,.94);box-shadow:0 1px 0 rgba(92,67,72,.08);backdrop-filter:blur(14px)}
.header-inner{min-height:60px}
.header-inner>.logo,.header-inner>.menu-toggle,.header-inner>.header-actions{transform:translateY(-2px)}
@media(max-width:700px){.header-inner{min-height:52px;padding-inline:16px}.logo{height:38px}.icon-button{height:38px}}
body.menu-open::before{content:"";position:fixed;z-index:40;inset:0;background:rgba(255,255,255,.68);backdrop-filter:blur(3px);pointer-events:auto}
body.menu-open .header-inner{opacity:.34;filter:blur(2px);transition:opacity .25s ease,filter .25s ease}
body:not(.menu-open) .header-inner{transition:opacity .25s ease,filter .25s ease}
.header-actions .cart-count{position:absolute;left:-5px;right:auto;top:0;z-index:5;min-width:18px;height:18px;padding:0 5px;border:2px solid #fff;border-radius:999px;display:grid;place-items:center;background:#d99ba7;color:#fff;font:500 .65rem/1 'Assistant',sans-serif;box-shadow:0 2px 8px rgba(100,54,65,.2)}
.header-actions .cart-count[hidden]{display:none}
#panel.cart-panel{position:fixed;top:68px;left:12px;right:auto;margin:0;width:25vw;min-width:250px;max-width:330px;padding:24px 22px 20px;border:1px solid rgba(178,142,65,.2);border-radius:0 0 16px 16px;box-shadow:0 18px 50px rgba(52,34,38,.16)}#panel.cart-panel #panel-title{margin:4px 0 20px;color:#a17b35;font:300 1.65rem 'Frank Ruhl Libre',serif;text-align:right}#panel.cart-panel #panel-copy{margin:0}#panel.cart-panel .cart-items{display:block;background:transparent}#panel.cart-panel .cart-item{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;color:#3f3536;font-size:.9rem;text-align:right}#panel.cart-panel .cart-item-name::before{content:'•';margin-left:8px;color:#b28e41}#panel.cart-panel .cart-remove{flex:0 0 auto;width:24px;height:24px;padding:0;border:0;background:transparent;color:#8b7779;font:300 1.4rem/1 sans-serif}#panel.cart-panel .close{top:11px;left:10px}@media(max-width:700px){#panel.cart-panel{top:56px;left:8px;width:72vw;min-width:0;max-width:280px;padding:20px 18px 16px}}
#panel.cart-panel .cart-product{display:flex;align-items:center;gap:9px;min-width:0}#panel.cart-panel .cart-thumb{flex:0 0 auto;width:38px;height:38px;border-radius:8px;object-fit:cover;object-position:center;background:#f8e9ec;border:1px solid rgba(178,142,65,.15)}
#panel.cart-panel .cart-checkout{width:100%;height:40px;margin-top:16px;border:0;border-radius:999px;background:#f3dce1;color:#8a682c;font:400 .86rem 'Assistant',sans-serif;transition:transform .2s ease,background .2s ease}#panel.cart-panel .cart-checkout:hover{background:#ecd0d7;transform:translateY(-1px)}#panel.cart-panel.is-leaving{opacity:0;transform:translateX(-12px);transition:opacity .18s ease,transform .18s ease}
@media(max-width:700px){.header>nav.open{position:fixed;z-index:100;top:52px;right:0;left:auto;width:50vw;max-width:320px;height:auto;max-height:calc(100svh - 64px);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:8px 20px 10px;background:#fff;box-shadow:-18px 18px 50px rgba(50,30,35,.16);backdrop-filter:blur(16px);overflow:auto}.header>nav.open button{text-align:right;padding:16px 0;border-bottom:1px solid rgba(80,55,60,.08)}.header>nav.open button:last-child{border-bottom:0}}

/* Quiet, editorial ending for the storefront. */
.site-footer{display:block;width:100%;max-width:none;margin:0;padding:0;background:#fbf4f3;color:#4b4041;border-top:1px solid rgba(178,142,65,.16);overflow:hidden}
.site-footer[hidden]{display:none}
.footer-inner{width:min(1180px,calc(100% - 48px));margin:auto;padding:48px 0 45px;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,5vw,72px)}
.site-footer section{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.site-footer h2{margin:0 0 8px;color:#9b7738;font:400 .78rem/1.3 'Assistant',sans-serif;letter-spacing:.06em}
.site-footer p,.site-footer a,.site-footer button{margin:0;color:#675a5c;font:300 .82rem/1.7 'Assistant',sans-serif;text-align:center}
.site-footer a,.site-footer button{border:0;padding:0;background:none;transition:color .2s ease}
.site-footer a:hover,.site-footer button:hover{color:#a17b35}
.site-footer .footer-brand{grid-column:1/-1;align-items:center;text-align:center}
.footer-brand .footer-logo{margin:0;color:#a17b35;font:500 1.55rem/1 'Cormorant Garamond',serif;letter-spacing:.22em}
.footer-socials{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px}
.footer-social-link{display:grid!important;place-items:center;width:32px;height:32px;border:1px solid rgba(155,119,56,.5)!important;border-radius:50%;color:#9b7738!important;background:rgba(255,255,255,.58)!important;transition:transform .2s ease,background .2s ease,border-color .2s ease!important}
.footer-social-link:hover{transform:translateY(-2px);background:#fff!important;border-color:#9b7738!important}
.footer-social-link svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.45;fill:none}.footer-social-link .social-dot{fill:currentColor;stroke:none}

.footer-whatsapp{direction:ltr;unicode-bidi:plaintext;display:flex;flex-direction:column;align-items:center;gap:3px}
.whatsapp-label{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#8f6d30;font-weight:400}.whatsapp-label svg{width:18px;height:18px;stroke:#8f6d30;stroke-width:1.5}
.footer-whatsapp bdi{font-size:.88rem;letter-spacing:.035em;color:#514647}
.site-footer .footer-contact-note{font-size:.7rem;color:#8d8081}
.footer-bottom{width:100%;min-height:64px;padding:16px 24px calc(16px + env(safe-area-inset-bottom));border-top:1px solid rgba(178,142,65,.13);display:flex;align-items:center;justify-content:center;gap:18px;color:#8b7b7d;background:#f8eeee;font:300 .7rem 'Assistant',sans-serif;text-align:center}
@media(max-width:760px){.footer-inner{width:calc(100% - 38px);padding:34px 0 32px;grid-template-columns:repeat(3,1fr);gap:24px 18px}.footer-brand{grid-column:1/-1}.footer-bottom{min-height:62px;flex-wrap:wrap;gap:7px 14px}}
@media(max-width:520px){.footer-inner{grid-template-columns:1fr 1fr}.site-footer section:last-child{grid-column:1/-1}.site-footer section:last-child{display:grid;grid-template-columns:repeat(3,auto);align-items:center}.site-footer section:last-child h2{grid-column:1/-1}}
.site-footer .footer-email{direction:ltr;unicode-bidi:plaintext;margin-top:1px;color:#8f6d30;font-size:.76rem;letter-spacing:.015em;overflow-wrap:anywhere}
.site-footer .footer-email{display:flex;flex-direction:column;align-items:center;gap:1px;margin-top:4px;color:#8f6d30;font-size:.82rem;font-weight:400;line-height:1.45;text-decoration:none}.site-footer .footer-email span{font-size:.7rem;color:#9b7738}.site-footer .footer-email bdi{direction:ltr;unicode-bidi:plaintext;letter-spacing:.015em;overflow-wrap:anywhere}
