:root{--n:#0B0B0C;--g:#C9A24B;--m:#F4EFE6;--gr:#1C1C1E}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--n);color:var(--m);font:17px/1.65 Lato,sans-serif}
a{color:var(--g);text-decoration:none}
h1,h2,h3{font-family:'Playfair Display',serif;font-weight:700;color:var(--g);line-height:1.15}
em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500}
.wrap{max-width:1040px;margin:0 auto;padding:0 22px}
.top{position:sticky;top:0;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 22px;background:rgba(11,11,12,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(201,162,75,.25)}
.brand{display:flex;align-items:center;gap:10px;font-family:'Playfair Display',serif;color:var(--m);font-size:1.05rem}.brand b{color:var(--g)}.brand img{height:34px}
nav{display:flex;gap:22px}nav a{color:var(--m);font-size:.9rem;letter-spacing:.04em}nav a:hover{color:var(--g)}
.btn{display:inline-block;background:linear-gradient(#E2C277,#B98F38);color:#17130a;font-weight:700;padding:14px 26px;border-radius:2px;letter-spacing:.03em}
.btn.small{padding:9px 16px;font-size:.85rem}.btn.ghost{background:none;border:1px solid var(--g);color:var(--g)}
.hero{text-align:center;padding:70px 22px 90px;background:radial-gradient(ellipse at 50% 0,#1d1a12,var(--n) 65%)}
.hero .emb{width:min(420px,80%);margin:0 auto 18px;display:block}
.kick{font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;color:var(--g);margin-bottom:14px}.kick.dark{color:#3b2e0f}
.hero h1{font-size:clamp(2rem,5vw,3.4rem);max-width:760px;margin:0 auto 18px;color:var(--m)}.hero h1 em{color:var(--g)}
.lead{max-width:560px;margin:0 auto 30px;opacity:.88;font-size:1.1rem}
.cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.val{margin-top:44px;letter-spacing:.35em;text-transform:uppercase;font-size:.78rem;color:var(--g)}
.band{background:linear-gradient(#E2C277,#B98F38);color:#17130a;text-align:center;padding:60px 0}
.band h2{color:#17130a;font-size:clamp(1.7rem,4vw,2.5rem);margin-bottom:14px}.band p{max-width:620px;margin:0 auto 6px}.band .small{font-weight:700;font-style:italic}
.sec{padding:86px 0}.sec h2{font-size:clamp(1.7rem,4vw,2.5rem);margin-bottom:38px}.sec h2 em{color:var(--m)}
.dark2{background:var(--gr)}
.grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.grid li{border:1px solid rgba(201,162,75,.3);padding:26px;background:#101011}
.grid i{font-family:'Cormorant Garamond',serif;font-size:1.6rem;color:var(--g);font-style:normal}.grid h3{font-size:1.15rem;margin:6px 0 8px}.grid p{opacity:.82;font-size:.95rem}
.two{display:grid;grid-template-columns:1fr 1.3fr;gap:44px;align-items:center}.two h2{font-size:clamp(2.4rem,6vw,4rem);margin:0}.two p{margin-bottom:16px;opacity:.9}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card{border:1px solid rgba(201,162,75,.35);padding:30px;background:#101011}.card h3{font-size:1.1rem;margin-bottom:14px}
.tel{display:block;font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--m);margin-bottom:6px}.tel:hover{color:var(--g)}
.small{font-size:.85rem;opacity:.75}
footer{text-align:center;padding:46px 22px 90px;border-top:1px solid rgba(201,162,75,.25)}footer img{height:60px;margin-bottom:8px}
.wa{position:fixed;right:16px;bottom:16px;z-index:9;background:#25D366;color:#06210f;font-weight:700;padding:13px 20px;border-radius:40px;box-shadow:0 4px 18px #0008}
@media(max-width:780px){nav{display:none}.two,.contact{grid-template-columns:1fr}.sec{padding:60px 0}}
.legal{max-width:780px;padding-top:60px;padding-bottom:70px}.legal h1{font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:6px;color:var(--m)}
.legal h2{font-size:1.2rem;margin:30px 0 8px}.legal p,.legal li{opacity:.9;margin-bottom:10px}.legal ul{padding-left:22px}.legal b{color:var(--m)}
footer a{color:var(--g)}
:root{--ease:cubic-bezier(.2,.7,.2,1)}
.bar{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#F1D88F,#C9A24B);z-index:20}
.top{transition:padding .35s var(--ease),background .35s,box-shadow .35s}.top.sc{padding-top:7px;padding-bottom:7px;background:rgba(11,11,12,.97);box-shadow:0 6px 24px #0007}
.brand img{transition:transform .6s var(--ease)}.brand:hover img{transform:rotate(-6deg) scale(1.08)}
nav a{position:relative;padding:4px 0}nav a:after{content:"";position:absolute;left:0;bottom:-2px;height:1px;width:100%;background:var(--g);transform:scaleX(0);transform-origin:0 50%;transition:transform .35s var(--ease)}nav a:hover:after{transform:scaleX(1)}
.btn{position:relative;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s}
.btn:after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,#fff7,transparent);transform:skewX(-20deg);transition:left .7s var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(201,162,75,.35)}.btn:hover:after{left:130%}
.btn.ghost:hover{background:rgba(201,162,75,.12)}
.hero{position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 50% 30%,rgba(201,162,75,.16),transparent 55%);animation:breathe 9s ease-in-out infinite}
.hero>*{position:relative}
.hero .emb{will-change:transform;animation:rise 1.4s var(--ease) both}
.hero h1{animation:rise 1.2s .25s var(--ease) both}.hero .lead,.hero .kick{animation:rise 1.2s .45s var(--ease) both}.hero .cta{animation:rise 1.2s .65s var(--ease) both}.hero .val{animation:rise 1.2s .85s var(--ease) both}
@keyframes rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes breathe{50%{opacity:.55;transform:scale(1.08)}}
.scroll{display:block;width:1px;height:46px;margin:30px auto 0;background:linear-gradient(var(--g),transparent);animation:drip 2.2s ease-in-out infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:50% 0}50%{transform:scaleY(1);transform-origin:50% 0}51%{transform-origin:50% 100%}100%{transform:scaleY(0);transform-origin:50% 100%}}
.light{background:var(--m);color:#2a2620}.light h2,.light h3{color:#14110b}.light h2 em{color:#9a7424}.light .kick{color:#9a7424}.light a{color:#8a6518}
.light .grid li{background:#fff;border:1px solid rgba(154,116,36,.22);position:relative;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s,border-color .45s}
.light .grid li:before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,#F1D88F,#B98F38);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--ease)}
.light .grid li:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(60,45,10,.15);border-color:rgba(154,116,36,.55)}.light .grid li:hover:before{transform:scaleX(1)}
.light .grid i{color:#B98F38;display:inline-block;transition:transform .45s var(--ease)}.light .grid li:hover i{transform:translateX(6px)}
.light .grid p{opacity:.78}
.light .card{background:#fff;border:1px solid rgba(154,116,36,.22);transition:transform .45s var(--ease),box-shadow .45s}.light .card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(60,45,10,.13)}
.light .tel{color:#14110b;transition:color .3s,padding-left .3s var(--ease)}.light .tel:hover{color:#9a7424;padding-left:8px}
.band{position:relative;overflow:hidden}.band:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,#fff4 50%,transparent 60%);transform:translateX(-100%);animation:sheen 7s 1s ease-in-out infinite}
@keyframes sheen{40%,100%{transform:translateX(100%)}}
.band .wrap{position:relative}
.gl{max-width:620px;margin:-14px 0 34px;opacity:.85}
.photos{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:14px}
.photos figure{overflow:hidden;border:1px solid rgba(201,162,75,.3);min-height:220px;background:#000}.photos .big{grid-row:span 2}
.photos img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.4s var(--ease),filter .6s;filter:saturate(.92)}
.photos figure:hover img{transform:scale(1.06);filter:saturate(1.05)}
.sec.dark2 h2 em{color:var(--g)}
.js .rv,.js .stg>*{opacity:0;transform:translateY(34px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.js .rv.in,.js .stg.in>*{opacity:1;transform:none}
.js .stg.in>*:nth-child(2){transition-delay:.1s}.js .stg.in>*:nth-child(3){transition-delay:.2s}.js .stg.in>*:nth-child(4){transition-delay:.3s}.js .stg.in>*:nth-child(5){transition-delay:.4s}.js .stg.in>*:nth-child(6){transition-delay:.5s}.js .stg.in>*:nth-child(7){transition-delay:.6s}
.js .photos.stg>*{clip-path:inset(0 0 100% 0);transform:none}.js .photos.stg.in>*{clip-path:inset(0)}
.js .photos.stg>*{transition:opacity .8s,clip-path 1.3s var(--ease)}
.wa{transition:transform .3s var(--ease)}.wa:hover{transform:scale(1.06)}.wa:before{content:"";position:absolute;inset:0;border-radius:40px;box-shadow:0 0 0 0 #25D36699;animation:ping 2.6s infinite}
@keyframes ping{70%,100%{box-shadow:0 0 0 16px #25D36600}}
@media(max-width:780px){.photos{grid-template-columns:1fr;grid-template-rows:none}.photos .big{grid-row:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.js .rv,.js .stg>*{opacity:1!important;transform:none!important;clip-path:none!important}html{scroll-behavior:auto}}
