@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Manrope:wght@400;500;600&display=swap');
:root{--ink:#071914;--deep:#0b2c22;--green:#123d30;--cream:#f7f1e4;--paper:#fffaf0;--gold:#d5b567;--gold2:#f0dca3;--muted:#b9c8c0;--line:rgba(213,181,103,.28);--r:26px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:Manrope,sans-serif;line-height:1.65}img{display:block;width:100%}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Cormorant Garamond',serif;line-height:.98;margin:0}button{font:inherit}.shell{width:min(1200px,calc(100% - 40px));margin:auto}.skip{position:fixed;left:16px;top:-70px;background:var(--paper);color:var(--ink);padding:12px 18px;z-index:999}.skip:focus{top:12px}.top{position:fixed;inset:0 0 auto;z-index:90;padding:18px 0;transition:.35s}.top.stuck{background:rgba(7,25,20,.92);backdrop-filter:blur(14px);padding:10px 0;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;align-items:center;gap:12px}.monogram{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold2);font:600 25px 'Cormorant Garamond'}.wordmark b{display:block;font:600 23px 'Cormorant Garamond'}.wordmark small{display:block;font-size:8px;letter-spacing:.24em;color:var(--gold2)}.links{display:flex;align-items:center;gap:23px;font-size:12px;text-transform:uppercase;letter-spacing:.11em}.links a:hover{color:var(--gold2)}.book,.ghost{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 24px;border-radius:999px;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:600}.book{background:linear-gradient(120deg,var(--gold),var(--gold2));color:var(--ink);box-shadow:0 14px 35px rgba(213,181,103,.18)}.ghost{border:1px solid var(--line)}.burger{display:none;background:none;color:var(--cream);border:1px solid var(--line);border-radius:50%;width:44px;height:44px}.hero{min-height:92vh;position:relative;display:grid;align-items:end;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,25,20,.98) 0%,rgba(7,25,20,.72) 45%,rgba(7,25,20,.2)),linear-gradient(0deg,rgba(7,25,20,.75),transparent 50%)}.hero-copy{position:relative;z-index:2;padding:150px 0 88px;max-width:800px}.kicker{color:var(--gold2);text-transform:uppercase;letter-spacing:.3em;font-size:11px;font-weight:600}.hero h1{font-size:clamp(55px,9vw,108px);margin:18px 0 20px}.hero h1 em{color:var(--gold2);font-weight:500}.hero p{max-width:650px;color:#e1e8e3;font-size:clamp(17px,2vw,21px)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.proof{display:flex;gap:28px;flex-wrap:wrap;margin-top:38px;padding-top:24px;border-top:1px solid var(--line)}.proof b{font:600 26px 'Cormorant Garamond';color:var(--gold2)}.proof span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.section{padding:105px 0}.section.alt{background:var(--deep)}.head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.head h2{font-size:clamp(42px,6vw,70px);max-width:760px}.head p{max-width:430px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--deep);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:.35s}.card:hover{transform:translateY(-7px);border-color:var(--gold)}.card img{height:300px;object-fit:cover}.card-body{padding:25px}.card h3{font-size:32px}.card p{color:var(--muted)}.text-link{color:var(--gold2);font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:600}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.portrait{border-radius:var(--r);overflow:hidden;position:relative}.portrait img{aspect-ratio:4/5;object-fit:cover}.copy h2{font-size:clamp(44px,6vw,74px);margin:14px 0 22px}.copy p{color:var(--muted);font-size:17px}.team{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.person img{aspect-ratio:4/5;object-fit:cover;border-radius:180px 180px 20px 20px;border:1px solid var(--line)}.person h3{font-size:27px;margin-top:16px}.person small{color:var(--gold2);text-transform:uppercase;letter-spacing:.14em}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery img{height:310px;object-fit:cover;border-radius:16px}.gallery img:nth-child(2),.gallery img:nth-child(7){height:380px}.quote{text-align:center;max-width:900px;margin:auto}.stars{color:var(--gold2);letter-spacing:.3em}.quote blockquote{font:italic 500 clamp(31px,5vw,55px) 'Cormorant Garamond';line-height:1.15;margin:25px 0}.cities{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.city{padding:32px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(145deg,var(--green),var(--deep))}.city h3{font-size:38px}.price-list{border-top:1px solid var(--line)}.price{display:grid;grid-template-columns:1fr auto auto;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.price span:nth-child(2){color:var(--muted)}.price b{color:var(--gold2)}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-weight:600}.faq p{color:var(--muted)}.cta-band{background:linear-gradient(120deg,var(--gold),var(--gold2));color:var(--ink);padding:65px 0}.cta-band .shell{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta-band h2{font-size:clamp(40px,6vw,67px)}.cta-band .book{background:var(--ink);color:var(--cream)}footer{padding:70px 0 35px;background:#04110d;border-top:1px solid var(--line)}.foot{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}.foot h3{font-size:30px}.foot a,.foot p{display:block;color:var(--muted);margin:8px 0}.legal{margin-top:45px;padding-top:20px;border-top:1px solid var(--line);color:#82978c;font-size:12px}.locale{display:flex;gap:6px}.locale button{background:transparent;border:1px solid var(--line);color:var(--cream);padding:6px 9px;border-radius:20px;font-size:10px;cursor:pointer}.locale button.active{background:var(--gold);color:var(--ink)}.wa{position:fixed;right:20px;bottom:20px;z-index:80;background:#25d366;color:white;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;font-weight:700;box-shadow:0 12px 32px #0008}.local-box{background:var(--deep);border-left:3px solid var(--gold);padding:27px;border-radius:0 18px 18px 0}.breadcrumbs{padding-top:105px;color:var(--muted);font-size:12px}.breadcrumbs a{color:var(--gold2)}@media(max-width:900px){.links{display:none}.links.open{display:flex;position:absolute;top:70px;left:20px;right:20px;background:var(--deep);padding:25px;border:1px solid var(--line);border-radius:20px;flex-direction:column;align-items:flex-start}.burger{display:block}.nav>.book{display:none}.cards,.cities{grid-template-columns:repeat(2,1fr)}.team{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.foot{grid-template-columns:1fr 1fr}.cta-band .shell{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.shell{width:min(100% - 28px,1200px)}.hero{min-height:86vh}.hero-copy{padding-bottom:55px}.section{padding:76px 0}.head{display:block}.cards,.cities{grid-template-columns:1fr}.card img{height:250px}.team{grid-template-columns:1fr 1fr;gap:12px}.person h3{font-size:22px}.gallery img,.gallery img:nth-child(2),.gallery img:nth-child(7){height:240px}.foot{grid-template-columns:1fr}.price{grid-template-columns:1fr auto}.price span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Production art direction: editorial portrait, paced motion, and depth. */
body{background:radial-gradient(900px 500px at 100% 0,rgba(213,181,103,.08),transparent 55%),var(--ink)}
.hero{min-height:100svh;isolation:isolate}.hero>img{object-position:50% 27%;filter:saturate(.82) contrast(1.05) brightness(.84);transform:scale(1.035);animation:portraitBreath 18s cubic-bezier(.45,0,.55,1) infinite alternate}.hero:after{background:linear-gradient(94deg,rgba(4,19,14,.98) 0%,rgba(6,28,20,.86) 34%,rgba(7,25,20,.42) 66%,rgba(7,25,20,.12) 100%),linear-gradient(0deg,rgba(3,15,11,.78),transparent 48%)}.hero-copy{padding:172px 0 105px}.hero-copy .kicker{animation:intro .9s .15s both}.hero h1{font-size:clamp(63px,9.5vw,126px);letter-spacing:-.045em;max-width:850px;animation:intro 1.1s .25s both}.hero h1 em{background:linear-gradient(100deg,#e7cd8d,#f9ebbd,#cfa950);background-clip:text;-webkit-background-clip:text;color:transparent;font-style:normal}.hero p{font-size:clamp(16px,1.55vw,20px);line-height:1.7;animation:intro .9s .42s both}.actions{animation:intro .9s .55s both}.book,.ghost{transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}.book:hover,.ghost:hover{transform:translateY(-4px)}.proof{max-width:590px;animation:intro .9s .68s both}.proof div{min-width:115px}.proof b{font-size:34px}.hero-orb{position:absolute;z-index:1;border-radius:50%;filter:blur(8px);pointer-events:none}.hero-orb-one{width:300px;height:300px;right:12%;top:14%;background:radial-gradient(circle,rgba(213,181,103,.14),transparent 68%);animation:drift 12s ease-in-out infinite}.hero-orb-two{width:400px;height:400px;left:28%;bottom:-20%;background:radial-gradient(circle,rgba(39,103,76,.3),transparent 67%);animation:drift 14s ease-in-out -4s infinite}.section{overflow:clip}.head h2{letter-spacing:-.035em}.cards{gap:22px}.card{background:linear-gradient(145deg,rgba(18,61,48,.9),rgba(5,24,18,.98));box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 22px 55px rgba(0,0,0,.16)}.card:before{content:'';display:block;position:absolute;inset:0;background:linear-gradient(140deg,rgba(255,255,255,.08),transparent 28%);pointer-events:none;z-index:1}.card img{transition:transform 1.05s cubic-bezier(.16,1,.3,1),filter .8s}.card:hover img{transform:scale(1.055);filter:saturate(1.08)}.card-body{position:relative;z-index:2}.card h3{font-size:36px}.portrait{box-shadow:22px 22px 0 rgba(213,181,103,.09)}.portrait:after{content:'';position:absolute;inset:15px;border:1px solid rgba(240,220,163,.55);border-radius:18px;pointer-events:none}.person{transition:transform .55s cubic-bezier(.2,.8,.2,1)}.person:hover{transform:translateY(-9px)}.person img{transition:filter .55s,transform .65s}.person:hover img{filter:brightness(1.09);transform:scale(1.02)}.gallery{gap:15px}.gallery img{transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .6s,box-shadow .6s}.gallery img:hover{transform:translateY(-6px) scale(1.02);filter:brightness(1.08);box-shadow:0 25px 45px rgba(0,0,0,.32)}.cities .city{position:relative;overflow:hidden;transition:transform .55s,border-color .55s}.cities .city:after{content:'↗';position:absolute;right:25px;bottom:21px;font-size:22px;color:var(--gold2);transition:transform .45s}.cities .city:hover{transform:translateY(-7px);border-color:var(--gold2)}.cities .city:hover:after{transform:translate(4px,-4px)}.cta-band{position:relative;overflow:hidden}.cta-band:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.25),transparent 64%);transform:translateX(-100%);animation:bandShine 8s ease-in-out infinite}.cta-band .shell{position:relative;z-index:1}.motion-reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.8,.2,1) var(--motion-delay),transform .8s cubic-bezier(.2,.8,.2,1) var(--motion-delay)}.motion-reveal.is-visible{opacity:1;transform:none}@keyframes intro{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes portraitBreath{to{transform:scale(1.1) translate(-1.2%,-.8%)}}@keyframes drift{50%{transform:translate(30px,-23px) scale(1.1)}}@keyframes bandShine{12%,100%{transform:translateX(120%)}}@media(max-width:600px){.hero>img{object-position:53% 20%}.hero-copy{padding:145px 0 75px}.hero h1{font-size:clamp(55px,16vw,75px)}.hero-orb-one{right:-35%;top:8%}.proof{gap:17px}.proof div{min-width:83px}.proof b{font-size:27px}.card h3{font-size:33px}}@media(prefers-reduced-motion:reduce){.hero>img,.hero-orb,.cta-band:after{animation:none!important}.motion-reveal{opacity:1;transform:none;transition:none}}


/* Visual rebuild: image-first editorial rhythm rather than a card-based template. */
.top{mix-blend-mode:normal}.top:not(.stuck){background:linear-gradient(180deg,rgba(2,12,9,.48),transparent)}.hero-copy{max-width:720px}.hero h1{font-weight:500}.hero h1 em{display:block}.hero .actions{margin-top:36px}.signature-reel{position:relative;z-index:4;margin-top:-72px;overflow:hidden;padding:0 0 22px}.signature-reel:before,.signature-reel:after{content:'';position:absolute;z-index:2;top:0;bottom:22px;width:13vw;pointer-events:none}.signature-reel:before{left:0;background:linear-gradient(90deg,var(--ink),transparent)}.signature-reel:after{right:0;background:linear-gradient(270deg,var(--ink),transparent)}.reel-track{display:flex;gap:14px;width:max-content;animation:reelFlow 38s linear infinite}.reel-item{position:relative;width:240px;height:168px;flex:none;overflow:hidden;border-radius:12px;border:1px solid rgba(240,220,163,.28);box-shadow:0 18px 38px rgba(0,0,0,.3)}.reel-item:nth-child(even){margin-top:24px}.reel-item img{height:100%;object-fit:cover;filter:saturate(.9)}.reel-item span{position:absolute;left:13px;bottom:10px;color:var(--cream);font:500 20px 'Cormorant Garamond';text-shadow:0 2px 12px #000}.section#services{padding-top:80px}.section#services .head{align-items:center}.section#services .cards{grid-template-columns:repeat(12,1fr);gap:16px}.section#services .card{grid-column:span 4;border-radius:0;background:transparent;border:0;box-shadow:none}.section#services .card:nth-child(2),.section#services .card:nth-child(5){transform:translateY(46px)}.section#services .card img{height:390px;border-radius:160px 160px 12px 12px;filter:saturate(.82);box-shadow:0 18px 50px rgba(0,0,0,.18)}.section#services .card:nth-child(2) img,.section#services .card:nth-child(5) img{border-radius:12px 12px 160px 160px}.section#services .card-body{padding:19px 5px}.section#services .card:hover{transform:translateY(-8px)}.section#services .card:nth-child(2):hover,.section#services .card:nth-child(5):hover{transform:translateY(38px)}.section#services .card:before{display:none}.section#about{margin-top:80px;background:linear-gradient(130deg,#193c2d,#061c14)}.section#about .portrait{border-radius:0 220px 0 0}.section#team{background:var(--paper);color:var(--ink)}.section#team .kicker{color:#896a24}.section#team .person small{color:#896a24}.section#team .person img{border-color:rgba(7,25,20,.18)}.section#work{padding-top:130px;background:#071914}.section#work .head{margin-bottom:58px}.section#work .head h2{font-size:clamp(55px,8vw,106px)}.section#work .head h2 em{font-weight:400;color:var(--gold2)}.gallery-card:nth-child(5n+1){min-height:500px}.gallery-card:nth-child(7n+3){min-height:713px}.gallery-card:nth-child(4n+2){border-radius:120px 0 0 0}.gallery-card:nth-child(6n+4){border-radius:0 0 120px 0}.quote{padding:50px 0}.section#areas{background:#0d3024}.section#visit{background:var(--paper);color:var(--ink)}.section#visit .kicker{color:#896a24}.section#visit .copy p{color:#3e554b}.section#visit .local-box{background:#e8ddc3;color:#173329}.locale a{background:transparent;border:1px solid var(--line);color:var(--cream);padding:6px 9px;border-radius:20px;font-size:10px}.locale a.active{background:var(--gold);color:var(--ink)}@keyframes reelFlow{to{transform:translateX(-50%)}}@media(max-width:900px){.section#services .cards{grid-template-columns:repeat(2,1fr)}.section#services .card{grid-column:auto}.section#services .card:nth-child(2),.section#services .card:nth-child(5){transform:none}.section#services .card:nth-child(2):hover,.section#services .card:nth-child(5):hover{transform:translateY(-8px)}}@media(max-width:600px){.signature-reel{margin-top:-32px}.reel-item{width:176px;height:126px}.section#services .card img{height:300px}.section#services{padding-top:48px}.section#about{margin-top:32px}.section#work{padding-top:86px}.gallery-card:nth-child(5n+1),.gallery-card:nth-child(7n+3){min-height:220px}.gallery-card:nth-child(4n+2),.gallery-card:nth-child(6n+4){border-radius:12px}}@media(prefers-reduced-motion:reduce){.reel-track{animation:none}}


.gallery{grid-template-columns:repeat(6,1fr);gap:13px}.gallery-card{appearance:none;position:relative;min-height:290px;padding:0;border:0;border-radius:15px;overflow:hidden;background:#102d23;cursor:zoom-in;text-align:left;isolation:isolate}.gallery-card:nth-child(5n+1){grid-column:span 2;min-height:400px}.gallery-card:nth-child(7n+3){grid-row:span 2;min-height:613px}.gallery-card img{height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.16,1,.3,1),filter .7s}.gallery-card:after{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(2,12,9,.85));transition:opacity .5s}.gallery-card span{position:absolute;z-index:2;left:18px;bottom:16px;right:16px;display:grid;gap:2px;transform:translateY(34px);opacity:0;transition:.5s cubic-bezier(.2,.8,.2,1);color:var(--cream)}.gallery-card b{font:600 28px 'Cormorant Garamond'}.gallery-card small{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold2)}.gallery-card:hover img,.gallery-card:focus-visible img{transform:scale(1.09);filter:saturate(1.14)}.gallery-card:hover span,.gallery-card:focus-visible span{transform:none;opacity:1}.gallery-card:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}.lightbox{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:38px;background:rgba(2,12,9,.94);backdrop-filter:blur(13px);opacity:0;visibility:hidden;transition:.35s}.lightbox.open{opacity:1;visibility:visible}.lightbox img{width:auto;max-width:min(92vw,980px);max-height:80vh;object-fit:contain;border-radius:12px;box-shadow:0 30px 90px #000a;transform:scale(.94);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.lightbox.open img{transform:scale(1)}.lightbox p{position:absolute;bottom:12px;left:0;right:0;text-align:center;color:var(--gold2);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.lightbox-close{position:absolute;right:20px;top:18px;border:1px solid var(--line);background:#092219;color:var(--cream);width:46px;height:46px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer}@media(max-width:900px){.gallery{grid-template-columns:repeat(3,1fr)}.gallery-card:nth-child(7n+3){min-height:430px}}@media(max-width:600px){.gallery{grid-template-columns:repeat(2,1fr);gap:9px}.gallery-card,.gallery-card:nth-child(5n+1){grid-column:span 1;min-height:210px}.gallery-card:nth-child(7n+3){grid-row:span 1;min-height:210px}.gallery-card span{transform:none;opacity:1;left:11px;bottom:10px}.gallery-card b{font-size:22px}.gallery-card small{font-size:8px}}@media(prefers-reduced-motion:reduce){.gallery-card span{transition:none}}


.lead-section{background:#e8ddc3;color:var(--ink);padding:105px 0}.lead-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.lead-section .kicker{color:#896a24}.lead-section h2{font-size:clamp(52px,6vw,82px);letter-spacing:-.04em;margin:14px 0 22px}.lead-section p{font-size:17px;color:#3f554a;max-width:490px}.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:28px;background:#fffaf0;border:1px solid rgba(7,25,20,.12);box-shadow:17px 17px 0 rgba(7,25,20,.11)}.lead-form label{display:grid;gap:7px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#375145}.lead-form label.full{grid-column:1/-1}.lead-form input,.lead-form select,.lead-form textarea{appearance:none;width:100%;border:1px solid rgba(7,25,20,.22);padding:14px;background:white;color:var(--ink);font:15px Manrope,sans-serif;border-radius:4px}.lead-form textarea{min-height:100px;resize:vertical}.lead-form button{border:0;cursor:pointer}.form-note{grid-column:1/-1;margin:0;font-size:11px!important;line-height:1.55}.hp{position:absolute;left:-9999px}@media(max-width:760px){.lead-section{padding:76px 0}.lead-grid{grid-template-columns:1fr;gap:32px}.lead-form{grid-template-columns:1fr;padding:20px}.lead-form label.full{grid-column:auto}}

.section#team .team{grid-template-columns:repeat(3,1fr);max-width:760px;margin:0 auto}@media(max-width:900px){.section#team .team{grid-template-columns:repeat(2,1fr);max-width:none;margin:0}}

/* 2026 depth pass: same palette, richer spatial motion. */
.hero{--hero-x:0px;--hero-y:0px}
.hero>img{translate:var(--hero-x) var(--hero-y);transition:translate 1.1s cubic-bezier(.16,1,.3,1)}
.hero-copy{--copy-x:0px;--copy-y:0px;translate:var(--copy-x) var(--copy-y);transition:translate .9s cubic-bezier(.16,1,.3,1)}
.depth-card{--depth-rx:0deg;--depth-ry:0deg;--depth-x:50%;--depth-y:50%;transform:perspective(1100px) rotateX(var(--depth-rx)) rotateY(var(--depth-ry)) translateZ(0);transform-style:preserve-3d;will-change:transform;transition:transform .18s ease-out,box-shadow .55s cubic-bezier(.2,.8,.2,1)}
.depth-card:hover{box-shadow:0 30px 70px rgba(0,0,0,.3)}
.depth-card img,.depth-card .card-body,.depth-card h3,.depth-card p{transform:translateZ(18px)}
.city.depth-card:before,.lead-form.depth-card:before{content:'';position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;background:radial-gradient(420px circle at var(--depth-x) var(--depth-y),rgba(240,220,163,.13),transparent 44%);opacity:0;transition:opacity .45s}
.city.depth-card:hover:before,.lead-form.depth-card:hover:before{opacity:1}
.city.depth-card>* ,.lead-form.depth-card>*{position:relative;z-index:1}
.reading-progress{position:fixed;z-index:120;top:0;left:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--gold),var(--gold2));box-shadow:0 0 16px rgba(240,220,163,.45);pointer-events:none}
@media(max-width:900px),(hover:none),(pointer:coarse){.depth-card{transform:none!important;will-change:auto}.hero>img,.hero-copy{translate:0 0!important}}
@media(prefers-reduced-motion:reduce){.reading-progress{display:none}.depth-card{transform:none!important}.hero>img,.hero-copy{translate:0 0!important;transition:none!important}}

/* Premium salon interaction pass. */
.reel-track{padding:18px 0 34px}
.reel-item{appearance:none;padding:0;color:inherit;font:inherit;cursor:zoom-in;transform-origin:center;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s,border-color .5s,filter .5s}
.reel-item:hover,.reel-item:focus-visible{z-index:5;transform:translateY(-9px) scale(1.16) rotateX(2deg);border-color:var(--gold2);box-shadow:0 30px 70px rgba(0,0,0,.58),0 0 0 1px rgba(240,220,163,.35);filter:brightness(1.08)}
.reel-item:nth-child(even):hover,.reel-item:nth-child(even):focus-visible{transform:translateY(-31px) scale(1.16) rotateX(2deg)}
.reel-item:focus-visible{outline:2px solid var(--gold2);outline-offset:5px}

/* Portraits retain their complete real photographs instead of cropping heads. */
.section#team .person{display:grid;grid-template-rows:auto auto auto;align-content:start;text-align:center}
.section#team .person img{width:100%;height:340px!important;aspect-ratio:4/5;object-fit:cover;object-position:center;background:none;padding:0;border-radius:150px 150px 18px 18px}
.section#team .person h3{margin-top:18px}
.section#about .portrait{background:radial-gradient(circle at 50% 38%,rgba(213,181,103,.18),rgba(7,25,20,.98) 74%)}
.section#about .portrait img{width:100%;height:640px!important;aspect-ratio:auto;object-fit:cover;object-position:center;padding:0}

/* Lightbox shared by the moving reel and the full work gallery. */
.lightbox{grid-template-columns:minmax(46px,90px) minmax(0,980px) minmax(46px,90px);gap:18px}
.lightbox figure{width:100%;margin:0;display:grid;justify-items:center;gap:12px;touch-action:pan-y}
.lightbox figure img{max-width:100%}
.lightbox figcaption{display:flex;align-items:center;justify-content:center;gap:18px;min-height:30px;color:var(--gold2);text-align:center}
.lightbox figcaption p{position:static;margin:0;color:var(--gold2);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.lightbox-count{color:var(--muted);font-size:11px;letter-spacing:.12em;white-space:nowrap}
.lightbox-prev,.lightbox-next{appearance:none;justify-self:center;width:58px;height:58px;border-radius:50%;border:1px solid var(--line);background:rgba(9,34,25,.88);color:var(--gold2);font:400 43px/1 'Cormorant Garamond';cursor:pointer;transition:transform .35s,background .35s,border-color .35s}
.lightbox-prev:hover,.lightbox-next:hover,.lightbox-prev:focus-visible,.lightbox-next:focus-visible{transform:scale(1.12);background:var(--green);border-color:var(--gold2)}
.lightbox img.is-changing{opacity:.4;transform:scale(.97)}

/* Review spotlight: a restrained orbital shimmer around social proof. */
.quote{position:relative;isolation:isolate;padding:86px 55px}
.quote:before,.quote:after{content:'';position:absolute;z-index:-1;left:50%;top:50%;border:1px solid rgba(213,181,103,.22);border-radius:50%;translate:-50% -50%;animation:reviewOrbit 12s linear infinite}
.quote:before{width:min(72vw,430px);height:min(40vw,260px)}
.quote:after{width:min(58vw,340px);height:min(31vw,210px);animation-direction:reverse;animation-duration:9s}
.quote .stars{display:inline-block;font-size:18px;background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));background-size:200% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:reviewShimmer 3.2s linear infinite,reviewFloat 4.5s ease-in-out infinite}
.quote blockquote{position:relative;text-wrap:balance;text-shadow:0 12px 36px rgba(0,0,0,.28);animation:reviewFloat 5.2s ease-in-out -1s infinite}
.quote blockquote:before{content:'“';position:absolute;left:-28px;top:-48px;font-size:150px;line-height:1;color:rgba(213,181,103,.12)}
.quote .kicker{display:inline-block;padding:9px 17px;border:1px solid var(--line);border-radius:999px;background:rgba(18,61,48,.48);backdrop-filter:blur(10px)}

/* Multilingual welcome as an animated premium service signature. */
#areas{position:relative;isolation:isolate;overflow:hidden}
#areas:before{content:'';position:absolute;z-index:-1;width:620px;height:620px;right:-180px;top:-220px;border-radius:50%;background:radial-gradient(circle,rgba(213,181,103,.13),transparent 68%);animation:languageGlow 10s ease-in-out infinite}
.language-showcase{display:grid;grid-template-columns:330px 1fr;gap:55px;align-items:center;margin:-2px 0 52px;padding:32px 42px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(120deg,rgba(7,25,20,.72),rgba(18,61,48,.58));box-shadow:0 28px 70px rgba(0,0,0,.18);overflow:hidden}
.language-orbit{position:relative;width:250px;height:250px;margin:auto;border:1px solid rgba(240,220,163,.22);border-radius:50%;animation:languageSpin 24s linear infinite}
.language-orbit:before,.language-orbit:after{content:'';position:absolute;inset:22px;border:1px dashed rgba(240,220,163,.18);border-radius:50%}
.language-orbit:after{inset:52px;border-style:solid}
.language-core,.language-node{position:absolute;display:grid;place-items:center;border-radius:50%;box-shadow:0 14px 35px rgba(0,0,0,.25)}
.language-core{inset:50%;width:110px;height:110px;translate:-50% -50%;padding:9px;background:linear-gradient(145deg,var(--gold),var(--gold2));color:var(--ink);font:600 19px/1.05 'Cormorant Garamond';text-align:center;animation:languageSpin 24s linear infinite reverse;transition:opacity .35s,filter .35s}
.language-node{width:52px;height:52px;background:var(--deep);border:1px solid var(--gold);color:var(--gold2);font-size:11px;font-weight:700;letter-spacing:.12em;animation:languageSpin 24s linear infinite reverse}
.language-en{left:99px;top:-6px}.language-pt{right:8px;bottom:46px}.language-es{left:8px;bottom:46px}
.language-node.is-active{background:linear-gradient(145deg,var(--gold),var(--gold2));color:var(--ink);box-shadow:0 0 0 8px rgba(213,181,103,.1),0 14px 35px rgba(0,0,0,.3)}
.language-copy .kicker{color:var(--gold2)}
.language-copy p{margin:12px 0 5px;font:500 clamp(34px,4.2vw,58px)/1.03 'Cormorant Garamond';color:var(--cream)}
.language-copy p b{color:var(--gold2);font-weight:500}
.language-copy small{color:var(--muted);font-size:14px}
.language-copy .kicker,.language-copy p,.language-copy small{transition:opacity .32s,transform .42s cubic-bezier(.2,.8,.2,1)}
.language-showcase.is-switching .language-copy .kicker,.language-showcase.is-switching .language-copy p,.language-showcase.is-switching .language-copy small,.language-showcase.is-switching .language-core{opacity:0;transform:translateY(8px)}

/* P4 attribution remains secondary to the salon while clearly promoting both brands. */
.legal{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.legal a{color:var(--gold2);font-weight:600;text-decoration:none;position:relative}
.legal a:after{content:'';position:absolute;left:0;right:100%;bottom:-2px;height:1px;background:var(--gold2);transition:right .35s}
.legal a:hover:after,.legal a:focus-visible:after{right:0}

@keyframes reviewOrbit{50%{transform:rotate(180deg) scale(1.04)}to{transform:rotate(360deg)}}
@keyframes reviewShimmer{to{background-position:200% 0}}
@keyframes reviewFloat{50%{transform:translateY(-7px)}}
@keyframes languageSpin{to{transform:rotate(360deg)}}
@keyframes languageGlow{50%{transform:translate(-45px,35px) scale(1.1);opacity:.72}}

@media(max-width:900px){.language-showcase{grid-template-columns:1fr;gap:28px;text-align:center}.section#about .portrait img{height:560px!important}}
@media(max-width:600px){.reel-track{padding-top:9px}.reel-item:hover,.reel-item:focus-visible,.reel-item:nth-child(even):hover,.reel-item:nth-child(even):focus-visible{transform:none}.section#team .person img{height:250px!important}.section#about .portrait img{height:430px!important}.lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:18px 8px;gap:4px}.lightbox-prev,.lightbox-next{width:42px;height:42px;font-size:32px}.lightbox figcaption{display:grid;gap:2px}.quote{padding:70px 14px}.quote:before{width:76vw;height:44vw}.quote:after{width:60vw;height:35vw}.quote blockquote:before{left:-4px;top:-50px}.language-showcase{padding:26px 16px;margin-bottom:34px}.language-orbit{width:210px;height:210px}.language-core{width:92px;height:92px;font-size:16px}.language-en{left:79px;top:-6px}.language-pt{right:5px;bottom:36px}.language-es{left:5px;bottom:36px}.language-copy p{font-size:38px}}
@media(prefers-reduced-motion:reduce){.quote:before,.quote:after,.quote .stars,.quote blockquote,#areas:before,.language-orbit,.language-core,.language-node{animation:none!important}.reel-item{transition:none}}
