:root{--ink:#0a0a0a;--ink2:#151515;--char:#1c1c1c;--mid:#6e6e6e;--ivory:#f2f2f2;--paper:#e3e3e3;--gold:#8e9196;--gold2:#c8c9cb;--silver:#c0c0c0;--muted:#7d7d7d;--sgrad:linear-gradient(135deg,#9a9da1 0%,#e4e5e6 45%,#b9bbbe 70%,#8d9094 100%);--emgrad:linear-gradient(100deg,#55585c 0%,#9b9ea2 50%,#5f6266 100%);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",system-ui,sans-serif;--ease:cubic-bezier(.22,.61,.36,1);--pad:clamp(1.25rem,5vw,6rem)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--sans);background:var(--ivory);color:var(--ink);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
em{font-style:italic;color:var(--gold)}
.small{font-size:.85rem}.muted{color:var(--muted)}.muted-light{color:#b3b3b3}.center{text-align:center}
.eyebrow{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:1.1rem}
.h2{font-family:var(--serif);font-weight:500;font-size:clamp(2.2rem,5vw,4rem);line-height:1.05;letter-spacing:-.01em;margin-bottom:1.5rem}
.section{padding:clamp(5rem,11vw,9rem) var(--pad);position:relative}
.section__head{max-width:46rem;margin-bottom:clamp(2.5rem,5vw,4rem)}.section__head.center{margin-inline:auto}

/* loader */
.loader{position:fixed;inset:0;background:var(--ink);z-index:200;display:grid;place-items:center;transition:opacity .9s var(--ease) .2s,visibility .9s .2s}
.loader img{width:150px;height:auto;opacity:0;animation:lo 1.2s var(--ease) forwards}
@keyframes lo{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
body.loaded .loader{opacity:0;visibility:hidden}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 1.9rem;border-radius:999px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:all .45s var(--ease);border:1px solid transparent;cursor:pointer;font-family:var(--sans)}
.btn--gold{background:var(--gold);color:var(--ink)}.btn--gold:hover{background:var(--gold2);transform:translateY(-2px);box-shadow:0 12px 30px -10px rgba(192,192,192,.6)}
.btn--ghost{border-color:rgba(242,242,242,.4);color:var(--ivory)}.btn--ghost:hover{background:var(--ivory);color:var(--ink)}
.btn--ghost-dark{border-color:rgba(11,11,11,.25);margin-top:3rem}.btn--ghost-dark:hover{background:var(--ink);color:var(--ivory)}
.btn--sm{padding:.7rem 1.3rem;font-size:.7rem}.full{width:100%;justify-content:center}
.ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.1rem var(--pad);color:var(--ivory);transition:background .5s var(--ease),padding .5s var(--ease),transform .5s var(--ease)}
.nav.scrolled{background:rgba(11,11,11,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding-block:.7rem}
.nav.hide{transform:translateY(-100%)}
.nav__brand img{height:46px;width:auto;aspect-ratio:444/336;transition:height .5s var(--ease)}.nav.scrolled .nav__brand img{height:38px}
.nav__links{display:flex;gap:2.2rem;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase}
.nav__links a{position:relative;opacity:.85;transition:opacity .3s}.nav__links a:hover,.nav__links a.active{opacity:1}
.nav__links a::after{content:"";position:absolute;left:0;bottom:-6px;height:1px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav__links a:hover::after,.nav__links a.active::after{transform:scaleX(1);transform-origin:left}
.nav__actions{display:flex;align-items:center;gap:1rem}
.lang{background:none;border:0;color:var(--ivory);font:600 .72rem var(--sans);letter-spacing:.15em;cursor:pointer;padding:.4rem}
.lang span{opacity:.45;transition:opacity .3s}.lang__sep{margin:0 .3rem}
html[lang=es] .lang__es,html[lang=en] .lang__en{opacity:1;color:var(--gold2)}
.burger{display:none;background:none;border:0;width:34px;height:34px;position:relative;cursor:pointer}
.burger span{position:absolute;left:5px;right:5px;height:1.5px;background:var(--ivory);transition:transform .5s var(--ease),top .5s var(--ease)}
.burger span:first-child{top:12px}.burger span:last-child{top:21px}
.menu-open .burger span:first-child{top:16px;transform:rotate(45deg)}.menu-open .burger span:last-child{top:16px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;background:var(--ink);z-index:90;display:flex;flex-direction:column;justify-content:center;padding:var(--pad);gap:1.1rem;clip-path:circle(0 at calc(100% - 40px) 40px);transition:clip-path .8s var(--ease)}
.mobile-menu a{font-family:var(--serif);font-size:2.6rem;color:var(--ivory);opacity:0;transform:translateY(20px);transition:all .6s var(--ease)}
.menu-open .mobile-menu{clip-path:circle(150% at calc(100% - 40px) 40px)}
.menu-open .mobile-menu a{opacity:1;transform:none}
.menu-open .mobile-menu a:nth-child(2){transition-delay:.05s}.menu-open .mobile-menu a:nth-child(3){transition-delay:.1s}.menu-open .mobile-menu a:nth-child(4){transition-delay:.15s}.menu-open .mobile-menu a:nth-child(5){transition-delay:.2s}.menu-open .mobile-menu a:nth-child(6){transition-delay:.25s}

/* hero */
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding:0 var(--pad) clamp(4rem,10vh,7rem);color:var(--ivory);overflow:hidden;background:var(--ink)}
.hero__bg{position:absolute;inset:-6% 0 0 0}.hero__bg img{width:100%;height:100%;object-fit:cover;object-position:60% 40%;transform:scale(1.12);transition:transform 2.6s var(--ease);filter:saturate(.85) contrast(1.05)}
.loaded .hero__bg img{transform:scale(1.02)}
.hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,11,.55) 0%,rgba(11,11,11,.15) 40%,rgba(11,11,11,.85) 100%),linear-gradient(90deg,rgba(11,11,11,.7),transparent 70%)}
.hero__content{position:relative;max-width:52rem}
.hero__title{font-family:var(--serif);font-weight:400;font-size:clamp(3.4rem,10vw,8.5rem);line-height:.92;letter-spacing:-.02em;margin-bottom:1.6rem}
.hero__title .line{display:block;overflow:hidden;padding-bottom:.08em}
.hero__title .line>*{display:inline-block;transform:translateY(110%);transition:transform 1.3s var(--ease)}
.hero__title .line:nth-child(2)>*{transition-delay:.15s}
.loaded .hero__title .line>*{transform:none}
.hero__title em{color:var(--gold2)}
.hero__lead{max-width:32rem;font-size:clamp(1rem,1.3vw,1.12rem);color:#d2d2d2;margin-bottom:2.2rem;font-weight:300}
.hero__ctas{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:2.4rem}
.hero__rating{display:flex;align-items:center;gap:.8rem;font-size:.85rem;color:#c9c9c9}
.stars{color:var(--gold2);letter-spacing:.15em}
.scroll-cue{position:absolute;right:var(--pad);bottom:3rem;width:1px;height:70px;background:rgba(242,242,242,.25);overflow:hidden}
.scroll-cue span{position:absolute;top:-30px;left:0;width:1px;height:30px;background:var(--gold2);animation:cue 2.2s var(--ease) infinite}
@keyframes cue{to{top:100%}}

/* marquee */
.marquee{background:var(--ink);color:var(--ivory);overflow:hidden;padding:1.4rem 0;border-top:1px solid #222}
.marquee__track{display:flex;gap:2.5rem;width:max-content;animation:mq 38s linear infinite;font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);font-style:italic;white-space:nowrap}
.marquee i{color:var(--gold);font-style:normal;font-size:.8em}
@keyframes mq{to{transform:translateX(-50%)}}

/* about (static, follows the intro) */
.about{background:#0a0a0a;color:#f2f2f2;padding:clamp(5rem,11vw,9rem) var(--pad) clamp(3.2rem,6vw,5.5rem);position:relative;--sfg:#f2f2f2;--sbg:#0a0a0a;--gold:#b4b6b9;--emgrad:linear-gradient(100deg,#a7aaae 0%,#f1f2f3 45%,#b4b7ba 75%,#9a9da1 100%)}
.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.8rem,6vw,7rem);max-width:80rem;margin:0 auto;align-items:start}
.about__title{font-family:var(--serif);font-weight:500;font-size:clamp(2.4rem,4.6vw,4.4rem);line-height:.95;letter-spacing:-.02em;margin:0 0 1.2rem}
.about__lead{font-size:clamp(.98rem,1.2vw,1.1rem);max-width:30rem;opacity:.82;margin:0 0 1.8rem;font-weight:400}
.about .stats{border-top-color:rgba(242,242,242,.18);margin-bottom:1.8rem}
.about .stats strong{color:#f2f2f2}
.about .stats span{color:#c4c4c4}
.about .btn--line{margin-top:.2rem}
.about .btn--line:hover{background:#fff;color:#0a0a0a}
@media (max-width:760px){.about__grid{grid-template-columns:1fr;gap:3.2rem}.about__title{font-size:clamp(2.4rem,11vw,3.4rem)}}
.stats{display:flex;gap:clamp(1.5rem,4vw,3.5rem);margin-top:2.4rem;padding-top:2rem;border-top:1px solid rgba(11,11,11,.12)}
.stats strong{display:block;font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.4rem);font-weight:500;line-height:1;color:var(--ink)}
.stats span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

/* services (static price cards) */
.services{background:#0a0a0a;color:#f2f2f2;overflow:hidden;padding:clamp(2.5rem,6vw,5rem) var(--pad) clamp(5rem,11vw,8rem);position:relative;--sfg:#f2f2f2;--sbg:#0a0a0a;--gold:#b4b6b9;--emgrad:linear-gradient(100deg,#a7aaae 0%,#f1f2f3 45%,#b4b7ba 75%,#9a9da1 100%)}
.services__head{max-width:42rem;margin:0 auto clamp(2.2rem,4.5vw,3.4rem) 0}
.services__title{font-family:var(--serif);font-weight:500;font-size:clamp(2.4rem,4.6vw,4.8rem);line-height:.95;letter-spacing:-.02em;margin:0}
.services__bg{position:absolute;inset:-10% 0;opacity:.13}.services__bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.services__inner{position:relative;max-width:62rem;margin:0 auto}
.menu{list-style:none;display:grid;gap:.4rem}
.menu__item{padding:1.6rem 1.4rem;border-bottom:1px solid rgba(242,242,242,.1);position:relative;transition:background .5s var(--ease);border-radius:4px}
.menu__item:hover{background:rgba(242,242,242,.04)}
.menu__item--feat{background:linear-gradient(90deg,rgba(192,192,192,.12),transparent)}
.menu__row{display:flex;align-items:baseline;gap:1rem}
.menu__row h3{font-family:var(--serif);font-weight:500;font-size:clamp(1.35rem,2.4vw,1.9rem)}
.dots{flex:1;border-bottom:1px dotted rgba(242,242,242,.25);transform:translateY(-6px);min-width:1rem}
.price{font-family:var(--serif);font-size:clamp(1.4rem,2.4vw,2rem);color:var(--gold2)}
.menu__item p{color:#a1a1a1;font-size:.92rem;margin-top:.3rem}
.dur{display:inline-block;margin-left:.6rem;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(192,192,192,.4);padding:.1rem .55rem;border-radius:99px}
.tag{position:absolute;top:-.7rem;left:1.4rem;background:var(--gold);color:var(--ink);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;padding:.25rem .7rem;border-radius:99px}
.services__cta{margin-top:3rem;display:flex;flex-wrap:wrap;gap:1.4rem;align-items:center}
.services__cta p{max-width:26rem}

/* team */
.team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.2rem,3vw,2.5rem);max-width:72rem;margin:0 auto}
.member__img{overflow:hidden;aspect-ratio:3/4;margin-bottom:1.35rem;background:#0c0c0e;border-radius:0;border:1px solid rgba(192,192,192,.34);position:relative}
.member__img img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform 1.15s var(--ease)}
.member:hover .member__img{border-color:rgba(220,220,224,.62)}
.member:hover .member__img img{transform:scale(1.035)}
.member h3{font-family:var(--serif);font-size:clamp(1.7rem,2.2vw,2rem);font-weight:500;line-height:1.1;letter-spacing:-.015em;margin-top:.15rem}
.member .muted{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:1rem}
.member blockquote{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:#474747;line-height:1.4}
.member cite{display:block;font-family:var(--sans);font-style:normal;font-size:.72rem;letter-spacing:.12em;color:var(--muted);margin-top:.5rem}

/* gallery */
.work{background:var(--paper)}
.gallery{display:grid;grid-auto-flow:dense;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(180px,22vw,320px);gap:clamp(.6rem,1.2vw,1rem)}
.g{overflow:hidden;border-radius:2px;position:relative}
.g img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.g:hover img{transform:scale(1.06)}
.g--tall{grid-row:span 2}.g--wide{grid-column:span 2}
.work .center{text-align:center}

/* reviews */
.reviews{background:var(--ivory);overflow:hidden}
.big{font-size:1.3em;font-family:var(--serif)}
.reviews .h2{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}
.reviews .h2 .stars{font-size:.45em}
.slider{overflow:hidden;outline:none;margin:0 calc(var(--pad)*-1);padding:0 var(--pad);cursor:grab}
.slider__track{display:flex;gap:1.5rem;transition:transform .9s var(--ease)}
.quote{flex:0 0 clamp(280px,38vw,460px);background:#fff;padding:2.4rem 2.2rem;border-radius:4px;box-shadow:0 30px 60px -40px rgba(0,0,0,.25);display:flex;flex-direction:column;justify-content:space-between;min-height:250px;position:relative}
.quote::before{content:"“";position:absolute;top:.4rem;right:1.4rem;font-family:var(--serif);font-size:6rem;line-height:1;color:var(--gold);opacity:.25}
.quote blockquote{font-family:var(--serif);font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.35;margin-bottom:1.6rem}
.quote figcaption{font-weight:600;font-size:.85rem}.quote figcaption span{font-weight:400;color:var(--muted)}
.slider__nav{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:2.4rem}
.sbtn{width:48px;height:48px;border-radius:50%;border:1px solid rgba(11,11,11,.2);background:none;cursor:pointer;font-size:1.1rem;transition:all .4s var(--ease)}
.sbtn:hover{background:var(--ink);color:var(--ivory)}
.slider__dots{display:flex;gap:.5rem}
.slider__dots button{width:8px;height:8px;border-radius:99px;border:0;background:rgba(11,11,11,.18);cursor:pointer;transition:all .5s var(--ease);padding:0}
.slider__dots button.on{width:28px;background:var(--gold)}

/* visit */
.visit{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(2.5rem,6vw,6rem);background:var(--ivory);padding-top:0}
.info{margin-bottom:2rem}
.info h4{font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem;font-weight:600}
.info p{font-size:1.05rem}
.link{border-bottom:1px solid var(--gold);padding-bottom:1px;transition:color .3s}.link:hover{color:var(--gold)}
.info .link{display:inline-block;margin-top:.4rem}
.hours{border-collapse:collapse;width:100%;max-width:26rem}
.hours td{padding:.65rem 0;border-bottom:1px solid rgba(11,11,11,.1);vertical-align:top}
.hours td:last-child{text-align:right}
.hours tr.today td{color:var(--gold);font-weight:600}
.status{margin-top:.9rem;display:flex;align-items:center;gap:.5rem}
.dot{width:8px;height:8px;border-radius:50%;background:#6e6e6e}.status.open .dot{background:#f2f2f2;box-shadow:0 0 0 4px rgba(242,242,242,.18);animation:pulse 2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(242,242,242,0)}}
.visit__map{min-height:460px;border-radius:4px;overflow:hidden;box-shadow:0 40px 80px -50px rgba(0,0,0,.5)}
.visit__map iframe{width:100%;height:100%;min-height:460px;border:0;filter:grayscale(1) contrast(1.05)}

/* book */
.book{background:var(--ink);color:var(--ivory);overflow:hidden}
.book__bg{position:absolute;inset:-10% 0;opacity:.22}.book__bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(.6)}
.book::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,11,.95) 30%,rgba(11,11,11,.6))}
.book__inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,6rem);align-items:center;max-width:76rem;margin:0 auto}
.book__copy p{color:#c4c4c4;max-width:30rem;margin-bottom:2rem}
.book__copy .btn{margin:0 .6rem .6rem 0}
.enquiry{background:rgba(242,242,242,.05);border:1px solid rgba(242,242,242,.12);backdrop-filter:blur(10px);padding:clamp(1.6rem,3vw,2.6rem);border-radius:6px;display:grid;gap:1rem}
.enquiry h3{font-family:var(--serif);font-size:1.9rem;font-weight:500}
.enquiry label{display:grid;gap:.35rem;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#b3b3b3}
.enquiry input,.enquiry select{font:400 1rem var(--sans);color:var(--ivory);background:transparent;border:0;border-bottom:1px solid rgba(242,242,242,.25);padding:.6rem 0;outline:none;transition:border-color .3s;letter-spacing:0;text-transform:none;color-scheme:dark;border-radius:0;width:100%}
.enquiry select option{background:var(--ink)}
.enquiry input:focus,.enquiry select:focus{border-color:var(--gold)}
.enquiry input.err{border-color:#d66}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hp{position:absolute;left:-9999px}
.form__msg{min-height:1.2em;color:var(--gold2)}

/* footer */
.footer{background:#070707;color:var(--ivory);text-align:center;padding:5rem var(--pad) 6rem;display:grid;justify-items:center;gap:1rem}
.footer__logo{width:140px;height:auto;aspect-ratio:444/336;opacity:.95}
.footer__tag{font-family:var(--serif);font-style:italic;font-size:1.4rem;color:var(--gold2)}
.footer__social{display:flex;gap:1rem;margin:.6rem 0 1rem}
.footer__social a{width:46px;height:46px;border-radius:50%;border:1px solid rgba(242,242,242,.2);display:grid;place-items:center;transition:all .4s var(--ease)}
.footer__social a:hover{background:var(--gold);border-color:var(--gold);color:var(--ink);transform:translateY(-3px)}

.fab{position:fixed;right:1rem;bottom:1rem;z-index:80;background:var(--gold);color:var(--ink);padding:.95rem 1.5rem;border-radius:99px;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;box-shadow:0 14px 30px -10px rgba(0,0,0,.5);transform:translateY(150%);transition:transform .6s var(--ease);display:none}
.fab.show{transform:none}

/* reveal */
.reveal{opacity:0;transform:translateY(36px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.g.reveal{transform:translateY(50px) scale(.98)}.g.reveal.in{transform:none}

@media (max-width:1020px){
 .nav__links{display:none}.burger{display:block}
 .about,.visit,.book__inner{grid-template-columns:1fr}
 .about__media{max-width:560px}
 .team__grid{grid-template-columns:1fr 1fr}
 .gallery{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
 .nav .btn--sm{display:none}.fab{display:inline-flex}
 .team__grid{grid-template-columns:1fr}
 .member{max-width:420px;margin:0 auto}
 .gallery{grid-auto-rows:220px}.g--wide{grid-column:span 2}
 .stats{gap:1.4rem}
 .row2{grid-template-columns:1fr}
 .menu__item{padding:1.4rem .4rem}
 .menu__row{flex-wrap:wrap}.dots{display:none}.menu__row .price{margin-left:auto}
 .scroll-cue{display:none}
 .visit__map,.visit__map iframe{min-height:340px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.hero__title .line>*{transform:none}}

/* ================= SHARED (buttons, cards, index marks) ================= */
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
.idx{display:inline-grid;place-items:center;width:2.1rem;height:2.1rem;border:1px solid currentColor;border-radius:50%;font-size:.62rem;letter-spacing:.05em}
.about .eyebrow,.services .eyebrow{color:var(--gold);display:flex;gap:.8rem;align-items:center}
.btn--ink{background:var(--sfg,#f2f2f2);color:var(--sbg,#0a0a0a)}.btn--ink:hover{background:var(--gold);color:#111;transform:translateY(-2px)}
.btn--line{border-color:currentColor;color:inherit;opacity:.85}.btn--line:hover{opacity:1;background:#fff;color:#0a0a0a}
.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(.6rem,1.1vw,1.1rem)}
.card{position:relative;background:var(--ivory);color:var(--ink);border-radius:18px;padding:1.4rem 1.3rem 1.2rem;display:flex;flex-direction:column;min-height:clamp(240px,34vh,320px);box-shadow:0 30px 60px -30px rgba(0,0,0,.6);transition:transform .6s var(--ease),box-shadow .6s var(--ease);will-change:transform}
.card:hover{transform:translateY(-10px)!important;box-shadow:0 40px 70px -30px rgba(0,0,0,.75)}
.card.feat{background:var(--gold);}
.card .tag{position:absolute;top:-.7rem;right:1rem;left:auto;background:var(--ink);color:var(--gold2)}
.card__num{font-size:.7rem;letter-spacing:.2em;opacity:.5;margin-bottom:auto}
.card h3{font-family:var(--serif);font-weight:500;font-size:clamp(1.25rem,1.6vw,1.6rem);line-height:1.08;margin:1.2rem 0 .5rem}
.card p{font-size:.8rem;opacity:.7;line-height:1.45;margin-bottom:1rem}
.card__foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(0,0,0,.12);padding-top:.8rem}
.card .price{font-family:var(--serif);font-size:2.2rem;line-height:1;color:var(--ink)}.card .price small{font-size:.55em;margin-left:.1em}
.card .dur{margin:0;color:var(--ink);border-color:rgba(0,0,0,.25)}
.card__cta{margin-top:.8rem;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:.4rem}
.card__cta::after{content:"→";transition:transform .4s var(--ease)}.card:hover .card__cta::after{transform:translateX(5px)}
.scroll-hint{position:absolute;left:50%;bottom:1.6rem;transform:translateX(-50%);z-index:4;display:grid;justify-items:center;gap:.5rem;font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;opacity:.6}
.scroll-hint b{width:1px;height:40px;background:currentColor;opacity:.4;position:relative;overflow:hidden}
.scroll-hint b::after{content:"";position:absolute;left:0;top:-20px;width:1px;height:20px;background:var(--gold);animation:cue 2s var(--ease) infinite}
.nav{color:var(--navfg,var(--ivory))}
.nav .lang{color:inherit}.nav .burger span{background:currentColor}
.nav.on-light:not(.scrolled){--navfg:#111111}
.nav.on-light:not(.scrolled) .nav__brand img{filter:invert(1)}
.team{padding-top:clamp(6rem,12vw,10rem)}
@media (max-width:1020px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){
 .scroll-hint{display:none}
 .cards{grid-template-columns:1fr;gap:.5rem}
 .card,.card:nth-child(n+4){display:grid;grid-template-columns:1fr auto;align-items:center;min-height:0;padding:.85rem 1rem;border-radius:12px}
 .card__num,.card p,.card__cta{display:none}
 .card h3{margin:0;font-size:1.08rem}
 .card__foot{border:0;padding:0;gap:.6rem}.card .price{font-size:1.5rem}.card .dur{display:none}
 .card .tag{top:-.55rem;font-size:.55rem}
}

/* Booksy official widget (dialog) */
.booksy-host{position:absolute;left:-9999px;top:0;width:1px;height:1px;overflow:hidden}
.booksy-widget-overlay{position:fixed!important;z-index:2147483000!important;background:rgba(8,8,8,.72)!important;backdrop-filter:blur(6px)!important;cursor:pointer;animation:bkfade .4s var(--ease)}
.booksy-widget-dialog{position:fixed!important;top:50%!important;left:50%!important;margin:0!important;transform:translate(-50%,-50%)!important;max-height:94vh;max-height:94dvh;overflow:auto!important;border-radius:14px!important;box-shadow:0 40px 120px -20px rgba(0,0,0,.6);animation:bkin .5s var(--ease)}
.booksy-widget-dialog iframe{max-width:100%;display:block}
.bk-close{position:fixed;z-index:2147483647;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:0;background:var(--ivory);color:var(--ink);font-size:1.3rem;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.4)}
@keyframes bkfade{from{opacity:0}}@keyframes bkin{from{opacity:0;transform:translate(-50%,-46%)}}
@media (max-width:480px){.bk-close{display:none}.booksy-widget-dialog{top:0!important;transform:translateX(-50%)!important;max-height:100dvh;border-radius:0!important;width:100%!important}@keyframes bkin{from{opacity:0}}}
.book--solo .book__inner{grid-template-columns:1fr;text-align:center;justify-items:center}
.book--solo .book__copy p{margin-inline:auto}
/* hairstyles showcase (pinned horizontal on desktop) */
.styles{background:var(--ink);color:var(--ivory);position:relative;overflow:hidden}
.styles__pin{height:100vh;height:100svh;display:flex;align-items:center;gap:clamp(2rem,4vw,4rem);padding:0 var(--pad);overflow:hidden}
.styles__head{flex:0 0 clamp(18rem,26vw,24rem)}
.styles__head .h2 em{color:var(--gold2)}
.styles__sub{color:#b3b3b3;font-size:.95rem;max-width:22rem}
.styles__bar{margin-top:2rem;height:2px;background:rgba(242,242,242,.12);max-width:16rem;overflow:hidden;border-radius:2px}
.styles__bar i{display:block;height:100%;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}
.styles__track{display:flex;gap:clamp(1.2rem,2.4vw,2.4rem);will-change:transform}
.sty{flex:0 0 clamp(20rem,30vw,27rem);display:flex;flex-direction:column;gap:1.2rem}
.sty__img{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:16px;background:#181818;clip-path:inset(0 0 0 0 round 16px)}
.sty__img img{width:100%;height:118%;object-fit:cover;will-change:transform;display:block}
.img-in{display:block;width:100%;height:100%;will-change:transform;transform:translateZ(0);backface-visibility:hidden}
.g .img-in{height:118%}
.g .img-in img{height:100%;width:100%;display:block;object-fit:cover}
@media (hover:none){
  .g:hover img,.member:hover .member__img img{transform:none}
}
.sty__num{font-size:.66rem;letter-spacing:.24em;color:var(--gold)}
.sty h3{font-family:var(--serif);font-weight:500;font-size:clamp(1.6rem,2.2vw,2.1rem);line-height:1.05;margin:.35rem 0 .45rem}
.sty p{color:#c4c4c4;font-size:.9rem;line-height:1.5}
.sty .sty__meta{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#888888;margin:.5rem 0 1rem}
@media (max-width:760px){
 .styles__pin{height:auto;display:block;padding:clamp(5rem,14vw,7rem) var(--pad)}
 .styles__head{margin-bottom:2.5rem}.styles__bar{display:none}
 .styles__track{display:grid;gap:3.2rem}
 .sty__img img{height:112%}
}
/* quick booking band */
.quick{background:var(--ink);color:var(--ivory);padding:0 var(--pad) clamp(4rem,8vw,6rem)}
.quick__inner{max-width:76rem;margin:0 auto;display:flex;flex-wrap:wrap;gap:2rem;align-items:center;justify-content:space-between;border:1px solid rgba(192,192,192,.35);border-radius:22px;padding:clamp(1.8rem,3.5vw,3rem);background:linear-gradient(120deg,rgba(192,192,192,.14),rgba(192,192,192,.02))}
.quick__title{font-family:var(--serif);font-weight:500;font-size:clamp(1.8rem,3.2vw,2.8rem);line-height:1.05}
.quick__title em{color:var(--gold2)}
.quick__status{color:#c4c4c4;margin-top:1rem}
.quick__ctas{display:flex;flex-wrap:wrap;gap:.7rem}
/* sticky booking: desktop pill + mobile bottom bar */
.fab{display:inline-flex;bottom:1.4rem;right:1.4rem}
.bbar{display:none}
@media (max-width:640px){
 .fab{display:none!important}
 .bbar{position:fixed;left:.6rem;right:.6rem;bottom:calc(.6rem + env(safe-area-inset-bottom));z-index:85;display:flex;gap:.5rem;padding:.45rem;border-radius:999px;background:rgba(10,10,10,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 18px 40px -12px rgba(0,0,0,.6);border:1px solid rgba(242,242,242,.1)}
 .bbar__ic{flex:0 0 48px;height:48px;border-radius:50%;display:grid;place-items:center;color:var(--ivory);border:1px solid rgba(242,242,242,.18)}
 .bbar__book{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:999px;background:var(--gold);color:var(--ink);font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.1}
 .bbar__book small{font-size:.55rem;letter-spacing:.14em;font-weight:600;opacity:.7;margin-top:.15rem}
 .footer{padding-bottom:8rem}
 }
.styles__head{position:relative;z-index:2;align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:var(--ink);box-shadow:3rem 0 3rem 1rem var(--ink)}.styles__track{position:relative;z-index:1}
@media (max-width:760px){.styles__head{box-shadow:none;display:block}}
@media (min-width:761px){.styles__head{margin-left:calc(-1*var(--pad));padding-left:var(--pad);flex-basis:calc(clamp(18rem,26vw,24rem) + var(--pad))}}

/* ================= MONOCHROME THEME (brand: black / white / greys, silver accent) ================= */
em{color:#7a7d81;background:var(--emgrad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.about,.services,.styles,.quick,.book,.footer,.loc,.mobile-menu,.hero{--emgrad:linear-gradient(100deg,#a7aaae 0%,#f1f2f3 45%,#b4b7ba 75%,#9a9da1 100%);--gold:#b4b6b9}
.stars{color:transparent;background:var(--sgrad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ch__rating .stars{background:var(--emgrad);-webkit-background-clip:text;background-clip:text}
.card.feat{background:var(--sgrad)}
.card .tag{background:var(--ink);color:#e6e6e6}
.status.open .dot{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
.nav__links a::after,.styles__bar i,.scroll-hint b::after,.scroll-cue span{background:var(--silver)}
.link{border-bottom-color:currentColor}
/* buttons: sharp rectangles (HEXXEE-style proportions) */
.btn{border-radius:0;min-height:52px;padding:0 2rem;font-size:.78rem;font-weight:700;letter-spacing:.14em;border-width:2px;justify-content:center;line-height:1}
.btn--sm{min-height:40px;padding:0 1.25rem;font-size:.7rem;letter-spacing:.14em}
.btn--gold,.btn--silver{background:var(--sgrad);background-size:160% 100%;background-position:0 0;color:#0a0a0a;border-color:transparent}
.btn--gold:hover,.btn--silver:hover{background-position:100% 0;box-shadow:0 14px 30px -12px rgba(0,0,0,.55);transform:translateY(-2px)}
.btn--white{background:#fff;color:#0a0a0a;border-color:#fff}.btn--white:hover{background:transparent;color:#fff}
.btn--outline{background:transparent;color:inherit;border-color:currentColor}.btn--outline:hover{background:#fff;color:#0a0a0a;border-color:#fff}
.btn--ghost{border-color:rgba(242,242,242,.55)}
.btn--ghost-dark{border-color:#0a0a0a}
.btn--line{opacity:1}
.btn--xl{min-height:64px;font-size:.86rem;padding:0 2.4rem}
.btn .ico{width:18px;height:18px}
.lang{border:1.5px solid currentColor;border-radius:0;padding:.45rem .6rem;min-height:34px;letter-spacing:.14em}
html[lang=es] .lang__es,html[lang=en] .lang__en{color:inherit}
.sbtn{border-radius:0;border-width:2px;border-color:#0a0a0a}
.dur,.tag,.card .tag{border-radius:0}
.fab{border-radius:0;background:var(--sgrad);color:#0a0a0a;min-height:52px;align-items:center;padding:0 1.8rem;letter-spacing:.14em}
.bk-close{border-radius:0}
.quick__inner{border-color:rgba(192,192,192,.35);background:linear-gradient(120deg,rgba(255,255,255,.07),rgba(255,255,255,.01))}
/* nav location link */
.nav__loc{display:inline-flex;align-items:center;gap:.45rem;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;opacity:.9}
.nav__loc:hover{opacity:1}.nav__loc .ico{width:18px;height:18px}
@media (max-width:1180px){.nav__loc span{display:none}}
@media (max-width:640px){
 .bbar{border-radius:0;background:rgba(10,10,10,.9);padding:.4rem;gap:.4rem}
 .bbar__ic{border-radius:0;flex-basis:46px;height:48px}
 .bbar__book{border-radius:0;background:var(--sgrad);color:#0a0a0a}
}
/* ================= LOCATION ================= */
.loc{position:relative;background:var(--char);color:var(--ivory);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);min-height:100vh;min-height:100svh}
.loc__map{position:relative;min-height:640px;background:#141414;overflow:hidden}
.loc__map .leaflet-container{background:#141414;font-family:var(--sans)}
.loc__map::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:500;box-shadow:inset -120px 0 120px -60px var(--char)}
.loc__mapfallback{position:absolute;inset:0;display:grid;place-items:center}
.loc__map.ready .loc__mapfallback{display:none}
.loc__panel{padding:clamp(4rem,8vw,7rem) var(--pad) clamp(4rem,8vw,7rem) clamp(2rem,4vw,4rem);display:flex;flex-direction:column;justify-content:center;gap:1.8rem}
.loc .h2{margin-bottom:0}
.loc__street{font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.2}
.loc__copy{margin-top:.8rem;display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;border-bottom:1px solid rgba(242,242,242,.35);color:#c9c9c9;font:600 .7rem var(--sans);letter-spacing:.16em;text-transform:uppercase;padding:.35rem 0;cursor:pointer;transition:color .3s,border-color .3s}
.loc__copy:hover{color:#fff;border-color:#fff}.loc__copy .ico{width:16px;height:16px}
.loc__copy.done{color:#fff;border-color:#fff}
.loc__go{display:grid;gap:.7rem;max-width:34rem}
.loc__go .btn--xl{width:100%}
.loc__alt{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.loc__alt .btn{width:100%;padding:0 1rem}
.loc__hours{max-width:34rem;border-top:1px solid rgba(242,242,242,.14);padding-top:1.4rem}
.loc__hhead{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.4rem}
.loc__hhead h3{font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;color:#a1a1a1;font-weight:600}
.loc__badge{margin:0;border:1px solid rgba(242,242,242,.25);padding:.4rem .75rem;font-size:.7rem;letter-spacing:.08em}
.loc .hours{max-width:none}.loc .hours td{border-bottom-color:rgba(242,242,242,.1);font-size:.95rem}
.loc .hours tr.today td{color:#fff;font-weight:700}
.loc__note{color:#8a8a8a;margin-top:.6rem}
.loc__ctas{display:flex;flex-wrap:wrap;gap:.7rem}
/* custom pin */
.eleven-pin{position:relative}
.eleven-pin__dot{position:absolute;left:50%;top:100%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.18),0 0 0 14px rgba(255,255,255,.07);animation:pinpulse 2.4s var(--ease) infinite}
.eleven-pin__tag{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);white-space:nowrap;background:var(--sgrad);color:#0a0a0a;padding:.7rem 1rem .65rem;font:700 .66rem var(--sans);letter-spacing:.16em;text-transform:uppercase;box-shadow:0 18px 40px -12px rgba(0,0,0,.7);display:flex;align-items:center;gap:.6rem}
.eleven-pin__tag img{width:28px;height:28px;filter:invert(1)}
.eleven-pin__tag::after{content:"";position:absolute;left:50%;top:100%;margin-left:-7px;border:7px solid transparent;border-top-color:#b9bbbe}
.eleven-pin__tag small{display:block;font-weight:500;letter-spacing:.06em;text-transform:none;font-size:.66rem;opacity:.75}
@keyframes pinpulse{50%{box-shadow:0 0 0 10px rgba(255,255,255,.12),0 0 0 22px rgba(255,255,255,0)}}
.leaflet-control-attribution{background:rgba(20,20,20,.75)!important;color:#8a8a8a!important;font-size:10px!important}
.leaflet-control-attribution a{color:#b3b3b3!important}
.leaflet-bar a{border-radius:0!important;background:#1c1c1c!important;color:#f2f2f2!important;border-color:#333!important}
.leaflet-bar{border-radius:0!important;border:1px solid #333!important}
@media (max-width:1020px){.loc{grid-template-columns:1fr;min-height:0}.loc__map{min-height:min(62vh,520px)}.loc__map::after{box-shadow:inset 0 -100px 100px -60px var(--char)}.loc__panel{padding:3rem var(--pad) 4rem}}
@media (max-width:640px){.loc__alt{grid-template-columns:1fr 1fr}.loc__ctas .btn{flex:1 1 100%}.loc__map{min-height:56vh}}
.book__bg img,.services__bg img{filter:grayscale(1) contrast(1.05)!important}
.footer__tag{color:#c8c9cb}
.footer__social a:hover{background:#fff;border-color:#fff;color:#0a0a0a}
.loader{background:#0a0a0a}
.loc__map .leaflet-tile-pane{filter:grayscale(1) invert(1) brightness(.82) contrast(1.15)}
@media (max-width:640px){.hide-m{display:none}.loc__street{font-size:1.3rem}}
.quick__inner{border-radius:0}

/* ===== Intro hero (replaces razor sequence) ===== */
.intro{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(2rem,5vh,3.5rem);padding:clamp(7rem,16vh,10rem) 0 clamp(2rem,5vh,3rem);background:#0a0a0a;color:#f2f2f2;overflow:hidden;isolation:isolate;--gold:#b4b6b9;--emgrad:linear-gradient(100deg,#a7aaae 0%,#f1f2f3 45%,#b4b7ba 75%,#9a9da1 100%)}
.intro__bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(90% 70% at 78% 18%,#2b2c2e 0%,#151516 42%,#0a0a0a 78%)}
.intro__lines{position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px calc(100%/12));-webkit-mask:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);mask:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}
.intro__mark{position:absolute;right:-4vw;top:50%;width:min(58vw,820px);height:auto;transform:translateY(-58%);opacity:.05;filter:blur(.5px);animation:markdrift 24s ease-in-out infinite alternate}
@keyframes markdrift{to{transform:translateY(-52%) scale(1.04)}}
.intro__sweep{position:absolute;inset:-40% -60%;background:linear-gradient(105deg,transparent 42%,rgba(200,202,205,.06) 47%,rgba(255,255,255,.13) 50%,rgba(200,202,205,.06) 53%,transparent 58%);mix-blend-mode:screen;animation:sweep 12s cubic-bezier(.45,0,.55,1) infinite;will-change:transform}
@keyframes sweep{0%{transform:translateX(-38%)}55%,100%{transform:translateX(38%)}}
.intro__glow{position:absolute;inset:0;background:radial-gradient(60% 50% at 50% 115%,rgba(0,0,0,.9),transparent 70%),radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(0,0,0,.75) 100%)}
.intro__grain{position:absolute;inset:-20%;opacity:.11;pointer-events:none;contain:strict;will-change:transform;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(5) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}}
.intro__inner{padding:0 var(--pad);max-width:62rem}
.intro .eyebrow{color:#a7aaae;margin-bottom:1.4rem}
.intro__title{font-family:var(--serif);font-weight:400;font-size:clamp(3.4rem,9.2vw,9rem);line-height:.9;letter-spacing:-.02em;margin-bottom:1.6rem}
.intro__title .ln{display:block;overflow:hidden;padding-bottom:.06em}
.intro__title .ln>*{display:inline-block;transform:translateY(105%);transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.intro__title .ln:nth-child(2)>*{transition-delay:.12s}
.loaded .intro__title .ln>*{transform:none}
.intro__lead{max-width:34rem;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.6;color:#b9babc;margin-bottom:2.2rem}
.intro__ctas{display:flex;flex-wrap:wrap;gap:.8rem}
.intro .btn--outline{color:#f2f2f2;border-color:rgba(242,242,242,.55)}
.intro .btn--outline:hover{background:#f2f2f2;color:#0a0a0a;border-color:#f2f2f2}
.intro__rev{display:grid;gap:1.3rem}
.intro__score{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;padding:0 var(--pad);font-size:.8rem;letter-spacing:.08em;color:#a7aaae}
.intro__big{font-family:var(--serif);font-size:2.4rem;line-height:1;color:#f2f2f2}
.intro__score .stars{font-size:1.05rem}
.intro__cnt strong{color:#f2f2f2;font-weight:600}
.intro__all{margin-left:auto;color:#c0c0c0;text-transform:uppercase;font-weight:700;font-size:.7rem;letter-spacing:.16em;border-bottom:1px solid rgba(192,192,192,.4);padding-bottom:.2rem}
.intro__all:hover{color:#fff;border-color:#fff}
.rvm{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.rvm__track{display:flex;gap:1rem;width:max-content;animation:marq var(--mdur,90s) linear infinite}
.rvm:hover .rvm__track,.rvm:focus-within .rvm__track{animation-play-state:paused}
@keyframes marq{to{transform:translateX(calc(-50% - .5rem))}}
.rv{box-sizing:border-box;white-space:normal;font-style:normal;font-family:var(--sans);flex:0 0 clamp(270px,26vw,360px);display:flex;flex-direction:column;gap:.9rem;padding:1.4rem 1.5rem 1.3rem;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.rv__top{display:flex;justify-content:space-between;align-items:center}
.rv .stars{font-size:.95rem}
.rv__src{font-size:.6rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#8e9196}
.rv__q{font-family:var(--serif);font-size:1.18rem;line-height:1.35;color:#ececec;flex:1}
.rv__en{display:none;font-size:.8rem;line-height:1.5;color:#9b9ea2}
.rv__en span{display:block;font-size:.58rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#6e7175;margin-bottom:.3rem}
html[lang=en] .rv__en{display:block}
html[lang=en] .rv__q{font-size:1.02rem}
.rv figcaption{display:flex;align-items:center;gap:.7rem;padding-top:.9rem;border-top:1px solid rgba(255,255,255,.08)}
.rv__av{display:grid;place-items:center;width:34px;height:34px;flex:none;background:var(--sgrad);color:#0a0a0a;font-weight:700;font-size:.85rem}
.rv figcaption strong{display:block;font-size:.85rem;font-weight:600;color:#f2f2f2}
.rv figcaption small{font-size:.7rem;color:#8e9196}
.intro .scroll-hint{color:#f2f2f2;bottom:1rem;display:none}

@media (max-width:760px){
 .intro{padding:calc(5.5rem + env(safe-area-inset-top)) 0 calc(1.5rem + 64px);justify-content:center}
 .intro__title{font-size:clamp(3rem,14vw,4.6rem)}
 .intro__lead{font-size:.95rem;margin-bottom:1.6rem}
 .intro__ctas .btn{flex:1 1 100%}
 .intro__mark{width:110vw;right:-30vw;top:30%;opacity:.045}
 .intro__lines{background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px calc(100%/5))}
 .intro__all{margin-left:0}
 .intro__big{font-size:2rem}
 .rv{flex-basis:78vw}
}
@media (prefers-reduced-motion:reduce){.rvm{overflow-x:auto}.intro__title .ln>*{transform:none}}
@media (min-width:761px){
 .intro{padding-top:clamp(5.5rem,11vh,8rem);gap:clamp(1.6rem,3.6vh,2.6rem)}
 .intro .eyebrow{margin-bottom:1rem}
 .intro__title{font-size:clamp(3rem,min(6.6vw,11vh),7.6rem);margin-bottom:1.2rem}
 .intro__lead{margin-bottom:1.6rem}
 .intro__rev{gap:1rem}
 .rv{padding:1.2rem 1.35rem 1.1rem;gap:.7rem}
 .rv__q{font-size:1.08rem}
}
