/* Xela Nails — feuille de style partagée des landing pages dédiées (manucure-russe, vernis-semi-permanent, pose-gel, extensions-ongles, pedicure-russe). */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
:root{--bg:#F5F0E9;--bg-2:#EDE5D9;--ink:#2B211A;--soft:#8A7A6B;--accent:#9E5A52;--accent-d:#84463F;--hair:rgba(43,33,26,.16);--hair-2:rgba(43,33,26,.08);--ease:cubic-bezier(.25,.6,.25,1)}
body{font-family:'Outfit',-apple-system,sans-serif;font-weight:300;background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
.gar{font-family:'Cormorant Garamond',Georgia,serif}
.wrap{max-width:880px;margin:0 auto;padding:0 22px}
.eyebrow{font-size:.66rem;font-weight:500;letter-spacing:.26em;text-transform:uppercase;color:var(--accent);display:inline-block;margin-bottom:12px}
.bt{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#FBF7F1;font-weight:500;font-size:.92rem;padding:16px 32px;border-radius:6px;cursor:pointer;transition:background .3s,transform .3s}
.bt .ar{transition:transform .3s}
.bt:hover{background:var(--accent-d);transform:translateY(-1px)}.bt:hover .ar{transform:translateX(5px)}

.promo{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;background:var(--ink);color:var(--bg);font-size:.85rem;padding:11px 46px 11px 18px;position:sticky;top:0;z-index:130;text-align:center}
.promo[hidden]{display:none}.promo b{color:#fff;font-weight:600}
.promo .code{display:inline-block;border:1px dashed rgba(247,242,235,.5);border-radius:5px;padding:2px 9px;font-weight:700;letter-spacing:.14em;color:#fff}
.promo .promo-cta{color:var(--bg);border-bottom:1px solid rgba(247,242,235,.55);padding-bottom:1px;font-weight:600;white-space:nowrap}
.promo-x{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:none;background:none;color:rgba(247,242,235,.6);font-size:1.25rem;cursor:pointer}
@media(max-width:560px){.promo{font-size:.78rem;padding:9px 40px 9px 14px;gap:9px}.promo .promo-cta{display:none}}

.head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--hair)}
.brand{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.5rem;letter-spacing:.04em}
.brand i{font-style:italic;color:var(--accent)}
.head .mini{font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--ink);padding:11px 20px;border-radius:6px;transition:.25s}
.head .mini:hover{background:var(--ink);color:var(--bg)}

.hero{background:var(--bg-2);text-align:center;padding:56px 22px 50px;border-bottom:1px solid var(--hair)}
.crumbs{font-size:.72rem;color:var(--soft);margin-bottom:16px}.crumbs a{color:var(--accent-d)}
.hero .stars{display:inline-flex;gap:8px;align-items:center;margin-bottom:14px;color:var(--accent-d);font-size:.92rem}
.hero .stars .s{color:var(--accent);letter-spacing:2px}
.hero h1{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(2.1rem,5.5vw,3.2rem);line-height:1.05;margin-bottom:14px}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero p{color:var(--soft);max-width:600px;margin:0 auto 24px;font-size:1.02rem}
.hero p b{color:var(--ink);font-weight:500}

.sec{padding:46px 0}
.sec h2{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(1.6rem,4vw,2.1rem);margin-bottom:14px}
.sec h2 em{font-style:italic;color:var(--accent)}
.sec h3{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.24rem;margin:24px 0 8px}
.sec p{color:var(--ink);margin-bottom:14px}.sec p b{font-weight:500}
.sec p a{color:var(--accent-d);border-bottom:1px solid var(--hair)}

.prices{width:100%;border-collapse:collapse;margin:12px 0 4px}
.prices th,.prices td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--hair-2)}
.prices th{font-weight:500;color:var(--soft);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}
.prices td:last-child,.prices th:last-child{text-align:right;white-space:nowrap}
.prices .nm{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:500}
.prices .du{color:var(--soft);font-size:.86rem}
.prices .pr{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.2rem;font-variant-numeric:tabular-nums}
.prices.bookable tbody tr{cursor:pointer;transition:background .2s var(--ease)}
.prices.bookable tbody tr:hover,.prices.bookable tbody tr:focus-visible{background:var(--bg-2);outline:none}
.prices.bookable td.go{color:var(--accent);font-weight:600;font-size:.82rem;opacity:.5;transition:opacity .2s}
.prices.bookable tbody tr:hover td.go,.prices.bookable tbody tr:focus-visible td.go{opacity:1}
@media(max-width:560px){.prices .du{display:none}.prices.bookable td.go{opacity:1;font-size:.74rem}}
.badge{color:var(--accent);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.note{font-size:.86rem;color:var(--soft);margin-top:12px}.note b{color:var(--accent);font-weight:500}

.shot{margin:8px 0 4px;border-radius:12px;overflow:hidden;border:1px solid var(--hair)}
.shot img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.revs{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:22px}
.rev{background:var(--bg-2);border:1px solid var(--hair-2);border-radius:12px;padding:18px}
.rev .s{color:var(--accent);letter-spacing:2px;font-size:.82rem;margin-bottom:8px}
.rev blockquote{margin:0;font-size:.94rem}.rev figcaption{margin-top:10px;color:var(--soft);font-size:.8rem}

.booking{background:var(--bg-2);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:50px 0}
.booking .eyebrow,.booking h2{text-align:center;display:block}
.booking h2{font-family:'Cormorant Garamond',serif;font-weight:500;font-size:clamp(1.6rem,4vw,2.1rem)}
.code-note{max-width:600px;margin:8px auto 20px;text-align:center;font-size:.94rem;color:var(--soft)}
.code-note .code{display:inline-block;border:1px dashed var(--accent);border-radius:5px;padding:1px 9px;font-weight:700;letter-spacing:.12em;color:var(--accent-d)}
.box{max-width:840px;margin:0 auto;background:#fff;border:1px solid var(--hair);border-radius:10px;padding:10px;position:relative}
.box iframe{width:100%;border:none;display:block;min-height:770px;border-radius:6px;opacity:0;transition:opacity .35s}
.box iframe.is-ready{opacity:1}
.bk-skel{position:absolute;inset:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#fff;border-radius:6px;transition:opacity .4s;pointer-events:none}
.bk-skel.is-hidden{opacity:0;visibility:hidden}
.bk-skel .ring{width:38px;height:38px;border-radius:50%;border:2px solid var(--hair);border-top-color:var(--accent);animation:spin .9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.fq{border-bottom:1px solid var(--hair-2)}
.fq summary{list-style:none;cursor:pointer;padding:16px 30px 16px 0;position:relative;font-family:'Cormorant Garamond',serif;font-weight:500;font-size:1.18rem}
.fq summary::-webkit-details-marker{display:none}
.fq summary::after{content:"+";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-weight:300;font-size:1.3rem;color:var(--accent)}
.fq[open] summary::after{content:"\2212"}
.fq p{padding:0 0 18px;color:var(--soft);font-size:.92rem;max-width:560px}
.related{font-size:.9rem;color:var(--soft);margin-top:22px}.related a{color:var(--accent-d);font-weight:500;border-bottom:1px solid var(--hair)}

footer{background:#221A15;color:rgba(245,240,233,.6);padding:30px 0;font-size:.8rem;margin-bottom:76px}
.frow{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.frow a{border-bottom:1px solid rgba(245,240,233,.25)}.frow a:hover{color:#fff}
@media(max-width:560px){.frow{flex-direction:column;gap:8px}}

.sticky{position:fixed;left:0;right:0;bottom:0;z-index:120;display:none;gap:9px;background:var(--bg);border-top:1px solid var(--hair);padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
.sticky-wa{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:54px;border-radius:12px;background:#25D366}
.sticky-wa svg{width:25px;height:25px;fill:#fff}
.sticky-bk{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:#FBF7F1;border-radius:12px;padding:15px;font-weight:600;font-size:.96rem}
.sticky-bk .ar{transition:transform .3s}
@media(max-width:820px){.sticky{display:flex}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
