/* Sprint D3 — MAISON ÉCLAT. Built on original salon art direction. */
:root{--eclat-rose:#c39e86;--eclat-deep:#2f2627;--eclat-bright:#fcf6ef;--eclat-gold:#e6c7a7}
body{overflow-x:clip}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c79768;outline-offset:4px}
.hero{min-height:640px}.hero-content{bottom:clamp(105px,13vh,150px)}.hero video,.stage video{opacity:0;transition:opacity .8s ease;pointer-events:none}.hero video.is-playing,.stage video.is-playing{opacity:1}
.hero-actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:26px}.hero .btn{margin:0}.hero-link{color:#fff;text-decoration:none;border-bottom:1px solid #ffffffaa;padding-bottom:7px;font-size:12px;letter-spacing:.08em;font-weight:700}.hero-link:hover{border-color:#fff}
.film-toggle{position:absolute;z-index:5;border:1px solid #ffffff85;background:#241c1a8a;color:#fff;border-radius:50px;display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.08em;padding:12px 18px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .2s;min-height:44px}.film-toggle:hover{background:#241c1acc}.film-toggle span{font-size:14px}.hero-film{bottom:34px;left:clamp(25px,8vw,130px)}.stage-film{right:24px;top:24px}
.hero:after,.stage:after{pointer-events:none}
.selector button{min-height:90px}.selector button:hover{border-color:#514039;background:#f6eee5}.selector button[aria-pressed=true]:hover{background:#3b3430}
.stage-content{pointer-events:none}.stage-content .btn{pointer-events:auto}
.atelier{background:#32292a;color:#fcf7f1;padding:clamp(70px,8vw,125px) clamp(20px,7vw,112px) clamp(75px,9vw,135px);position:relative;overflow:hidden}
.atelier:before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,#8461514a,transparent 65%);right:-220px;top:-220px;pointer-events:none}
.atelier-header{max-width:1200px;margin:0 auto 48px;display:flex;gap:55px;align-items:end;justify-content:space-between;position:relative}.atelier .eyebrow{color:#d8ab8d}.atelier-header h2{font:400 clamp(55px,8vw,115px)/.91 'Italiana',Georgia,serif;letter-spacing:-.027em;margin:24px 0 0}.atelier-header h2 em,.conversion h2 em{color:#dbb49b;font-weight:400}.atelier-header>p{max-width:350px;line-height:1.85;color:#dfd2ca;font-size:15px;margin:0 0 6px}
.atelier-layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:.91fr 1.09fr;gap:clamp(26px,5.5vw,83px);position:relative;align-items:stretch}
.atelier-choices{display:flex;flex-direction:column;padding-top:20px}
.atelier-choices button{width:100%;border:0;border-top:1px solid #9f84755c;background:none;text-align:left;color:#fff;padding:29px 25px 29px 0;transition:padding .25s,background .25s;position:relative}
.atelier-choices button:last-of-type{border-bottom:1px solid #9f84755c}
.atelier-choices button[aria-pressed=true]{padding-left:19px;background:linear-gradient(90deg,#8f66533f,transparent)}
.atelier-choices button:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#d8ae92;transform:scaleY(0);transition:transform .22s}.atelier-choices button[aria-pressed=true]:before{transform:scaleY(1)}
.atelier-choice-index{font-size:10px;letter-spacing:.2em;color:#caab96;display:block;margin-bottom:15px}.atelier-choice-main{font:400 clamp(27px,3.5vw,49px)/1.1 'Italiana',Georgia,serif;display:flex;align-items:center;justify-content:space-between;gap:10px}.atelier-choice-main>span{font:18px 'DM Sans',sans-serif;color:#c99f82}.atelier-choice-sub{display:block;margin-top:10px;font-size:12px;letter-spacing:.04em;color:#c2b3a9}
.atelier-aside{display:flex;align-items:flex-start;gap:22px;margin-top:auto;padding-top:40px}.atelier-aside>span{font-size:38px;color:#c69f81}.atelier-aside p{line-height:1.8;font-size:12px;color:#c9b7a9;margin:2px 0 0;max-width:260px}
.atelier-preview{background:#fcf7ef;color:#332b2b;min-width:0;box-shadow:0 24px 65px #0d0a0a35}
.atelier-preview-photo{height:clamp(240px,26vw,370px);position:relative;overflow:hidden;background:#b9a492}.atelier-preview-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .24s}.atelier-preview-stamp{position:absolute;bottom:21px;left:25px;letter-spacing:.24em;line-height:1.8;color:white;font-size:9px;font-weight:700;text-shadow:0 2px 10px #0008}
.atelier-preview-body{padding:clamp(25px,3.3vw,48px)}.atelier-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.atelier-preview-heading .eyebrow{color:#9b7a64}.atelier-reco-count{color:#927c6d;letter-spacing:.12em;font-size:10px}.atelier-preview h3{font:400 clamp(43px,5vw,72px)/1 'Italiana',Georgia,serif;margin:18px 0 8px}.atelier-preview p{margin:0;line-height:1.7;color:#756860;font-size:14px;max-width:510px}.atelier-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 27px}.atelier-tags span{font-size:11px;border:1px solid #d7c7ba;background:#f4ece3;color:#685549;padding:9px 12px}
.atelier-preview-bottom{border-top:1px solid #dfd1c5;padding-top:24px;display:flex;align-items:end;justify-content:space-between;gap:14px}.atelier-price-label{display:block;font-size:10px;letter-spacing:.16em;color:#8c7568}.atelier-price{font:400 43px 'Italiana',Georgia,serif;margin-top:6px}.atelier-saving{font-size:11px;color:#657651}.atelier-duration{font-size:10px;letter-spacing:.14em;color:#705b4f;white-space:nowrap;padding-bottom:10px}.atelier-book{width:100%;margin-top:27px;min-height:54px;justify-content:space-between}.atelier-fineprint{font-size:10px;color:#94857a;display:block;margin-top:14px}
.booking{background:#f5f0e9}.booking h2{font-size:clamp(58px,6.3vw,95px)}.booking-card{border:1px solid #e1d2c2}.booking-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.booking-card-top .eyebrow{color:#9a765c}.booking-step{font-size:11px;color:#a28a77}.booking-card h3{margin-bottom:22px}.bundle{margin-top:8px;padding:clamp(15px,3vw,26px)}.bundle-choice:hover{background:#f7eee4}.bundle-total .grand{font-size:clamp(19px,3vw,24px)}.bundle-choice input{cursor:pointer}.booking-card button:disabled{opacity:.5;cursor:not-allowed}.time-note{font-size:12px!important;line-height:1.5!important;margin:0!important}.form-error{background:#fff2e7;border-left:3px solid #b65840;color:#7c3328;font-size:13px;padding:11px 15px;margin:16px 0 0}.result{border-left:3px solid #aa876f}.result a{display:inline-block;margin-top:10px;color:#755138;font-weight:700}
.conversion{background:#221d1e;color:#f7f0eb;padding:clamp(80px,8vw,125px) clamp(20px,7vw,112px);position:relative;overflow:hidden}.conversion:before{content:"";position:absolute;width:700px;height:700px;right:-230px;bottom:-370px;background:radial-gradient(circle,#97775c28,transparent 70%);pointer-events:none}.conversion-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(45px,8vw,130px);align-items:center}.conversion .eyebrow{color:#d2a68c}.conversion h2{font:400 clamp(56px,6.8vw,100px)/.94 'Italiana',Georgia,serif;margin:23px 0 27px;letter-spacing:-.024em}.conversion-copy p{font-size:15px;max-width:460px;line-height:1.85;color:#d6cbc4;margin-bottom:32px}.conversion-cta{background:#e7c9b1;color:#332729;border-color:#e7c9b1;display:flex;justify-content:space-between;max-width:420px}.conversion-cta:hover{background:#ffead5}.conversion-note{font-size:11px;display:block;letter-spacing:.08em;color:#9b8d84;margin-top:18px}.conversion-board{border:1px solid #9b786064;background:#3a2e2e;box-shadow:16px 17px 0 #80614a22;padding:clamp(25px,4vw,51px);min-width:0}.conversion-board-kicker{display:block;font-size:10px;letter-spacing:.18em;color:#d5b29c;margin-bottom:40px}.conversion-board-head{font:400 clamp(40px,4.7vw,62px)/1 'Italiana',Georgia,serif;margin-bottom:38px}.conversion-board-head em{color:#d7b296}.conversion-line{border-top:1px solid #91735d77;display:grid;grid-template-columns:28px 1fr;gap:9px 12px;padding:20px 0}.conversion-line>span:first-child{font-size:11px;color:#caa68c}.conversion-line strong{font-size:14px;font-weight:500}.conversion-line>span:last-child{grid-column:2;font-size:12px;color:#b8a79d}.conversion-board-bottom{border-top:1px solid #91735d77;padding-top:18px;display:flex;justify-content:space-between;align-items:center;color:#cbb7a9;font-size:10px;letter-spacing:.13em}.conversion-board-bottom>span:last-child{font-size:25px;color:#d6b195}
.demo-tag{text-decoration:none;max-width:180px;line-height:1.45;border:1px solid #cfb59d;font-weight:700;z-index:35}.demo-tag:hover{background:white}
@media(max-width:1024px){.atelier-layout{gap:24px}.atelier-header{gap:30px}.atelier-choice-main{font-size:32px}.conversion-inner{gap:46px}}
@media(max-width:800px){header{height:auto;min-height:72px;gap:12px}header .brand{font-size:22px}header nav{flex-wrap:wrap;justify-content:flex-end;gap:7px 13px;font-size:9px}.atelier-header{display:block}.atelier-header>p{margin-top:24px}.atelier-layout{grid-template-columns:1fr}.atelier-choices{padding-top:0}.atelier-aside{margin:0 0 15px;padding-top:25px}.atelier-preview-photo{height:350px}.conversion-inner{grid-template-columns:1fr}.conversion-board{max-width:640px}}
@media(max-width:540px){header{padding:13px 18px}header .brand{font-size:18px;letter-spacing:.09em;white-space:nowrap}header nav{max-width:170px;gap:8px;font-size:9px}header nav a{display:block;white-space:nowrap}.hero{height:100svh;min-height:620px}.hero-content{left:24px;right:20px;bottom:140px}.hero h1{font-size:clamp(71px,19vw,100px)}.hero-actions{gap:20px}.hero-link{font-size:11px}.hero-film{bottom:65px;left:24px}.scrollhint{font-size:8px;bottom:30px;right:20px}.intro{padding:85px 24px}.intro h2{font-size:clamp(49px,12vw,65px)}.experience{padding:65px 16px 75px}.selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.selector button{padding:13px 8px;min-height:88px;min-width:0}.selector .num{font-size:8px;letter-spacing:.06em}.selector .name{font-size:clamp(17px,5.1vw,22px)}.stage{height:590px}.stage-content{left:22px;right:15px;bottom:38px}.stage h3{font-size:clamp(55px,14vw,75px)}.stage-meta{gap:18px}.stage-film{top:15px;right:15px}.stage-counter{bottom:20px;right:18px}.atelier{padding:75px 20px 90px}.atelier-header{margin-bottom:25px}.atelier-header h2{font-size:clamp(64px,16vw,90px)}.atelier-choices button{padding-top:23px;padding-bottom:23px}.atelier-choice-main{font-size:clamp(30px,8vw,43px)}.atelier-preview-photo{height:245px}.atelier-preview-body{padding:26px 22px}.atelier-preview h3{font-size:50px}.atelier-preview-bottom{align-items:start}.atelier-price{font-size:37px}.atelier-duration{font-size:9px;padding-top:8px}.atelier-tags span{padding:7px 10px}.booking{padding:75px 17px}.booking h2{font-size:66px}.booking-card{padding:24px 17px}.booking-card h3{font-size:34px}.bundle{padding:15px 12px}.bundle-head h4{font-size:27px}.bundle-head>span{font-size:9px}.bundle-choice{gap:9px}.bundle-choice .choice-copy strong{font-size:12px}.bundle-choice .choice-copy small{font-size:10px}.bundle-choice .choice-price{font-size:12px}.demo-tag{font-size:8px;bottom:8px;right:7px;padding:8px 9px;max-width:128px;opacity:.94}.conversion{padding:80px 19px}.conversion h2{font-size:clamp(61px,15vw,82px)}.conversion-cta{font-size:10px;padding:15px 17px;gap:10px}.conversion-board{padding:27px 20px}.conversion-board-head{font-size:43px}}
@media(max-width:360px){header nav{max-width:140px}.hero{min-height:610px}.hero-actions .btn{padding:15px 20px}.stage-meta{font-size:10px}.bundle-total .grand{font-size:19px}.atelier-preview-heading{gap:7px}.atelier-reco-count{font-size:9px}.atelier-preview h3{font-size:43px}}
@media(prefers-reduced-motion:reduce){.hero video,.stage video,.atelier-preview-photo img,.film-toggle,.atelier-choices button{transition:none!important}}
/* Final visual acceptance fixes: links are buttons, and the demo label never covers content. */
.btn{text-decoration:none}
.demo-tag,.demo-tag:hover{position:static;display:block;max-width:none;width:100%;text-align:center;padding:18px 20px;margin:0;border:0;border-radius:0;box-shadow:none;opacity:1;background:#e9ddd0;color:#58463c;letter-spacing:.12em}
