/* ---- static-kit base (prepended to every site's style.css) ---- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
h1,h2,h3,h4,p,figure,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
section{position:relative;overflow-x:clip}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
::selection{background:var(--sel,#000);color:var(--sel-ink,#fff)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* reveals: transform/opacity only */
[data-reveal]:not([data-split]){opacity:0;transform:translate3d(0,34px,0);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0)*1s)}
[data-reveal].in:not([data-split]){opacity:1;transform:none}
[data-reveal="fade"]:not([data-split]){transform:none}
[data-reveal="scale"]:not([data-split]){transform:scale(.94)}
[data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
[data-split] .wi{display:inline-block;transform:translate3d(0,105%,0);transition:transform 1.05s cubic-bezier(.2,.75,.15,1);transition-delay:calc(var(--i)*.055s + var(--d,0)*1s)}
[data-split].in .wi{transform:none}
.img-reveal{overflow:hidden}
.img-reveal img{transform:scale(1.18);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.img-reveal.in img{transform:scale(1)}
@media (prefers-reduced-motion:reduce){
  [data-reveal],[data-split] .wi,.img-reveal img{transition:none!important;transform:none!important;opacity:1!important}
  *{animation-duration:.001s!important;animation-iteration-count:1!important}
}
/* header hide */
[data-header]{transition:transform .5s cubic-bezier(.2,.7,.2,1),background-color .4s,backdrop-filter .4s}
[data-header].hide{transform:translate3d(0,-110%,0)}
canvas.stage{opacity:0;transition:opacity 1.2s ease}
canvas.stage.ready{opacity:1}

/* ---------- novo ---------- */
:root{
  --plaster:#ece3d6; --plaster-2:#e2d6c4; --stone:#f6f1ea; --brown:#6b5244; --espresso:#3a2a22;
  --green:#2f4a3a; --green-2:#3f5e48; --gold:#c9a25a; --gold-2:#e2c27f; --ink:#2a201b; --muted:#8a7a6c;
  --line:rgba(58,42,34,.14); --line-l:rgba(236,227,214,.18);
  --sans:'Inter Tight',system-ui,sans-serif; --serif:'Newsreader',Georgia,serif;
  --sel:#2f4a3a; --sel-ink:#fff; --pad:clamp(20px,5vw,72px);
}
body{background:var(--plaster);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}
.wrap{max-width:1320px;margin:0 auto;padding:0 var(--pad)}
em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em}
.kicker{font-size:13px;font-weight:600;color:var(--green);margin-bottom:18px;letter-spacing:.01em}
.kicker.light{color:var(--gold-2)}
.h2{font-weight:800;font-size:clamp(38px,5.4vw,82px);line-height:.95;letter-spacing:-.05em;max-width:15ch}
.display{font-weight:900;font-size:clamp(54px,8.6vw,140px);line-height:.88;letter-spacing:-.06em}
.light{color:var(--stone)}
.lead{font-size:clamp(16px,1.3vw,19px);color:var(--muted);max-width:46ch;margin-top:20px}
.lead.light{color:rgba(246,241,234,.72)}

.btn{position:relative;display:inline-flex;align-items:center;height:54px;padding:0 28px;border-radius:999px;font-weight:700;font-size:15px;overflow:hidden;isolation:isolate;transition:color .4s}
.btn span{position:relative;z-index:1}
.btn::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;transform:translate3d(0,101%,0);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.btn:hover::before{transform:none}
.btn-fill{background:var(--stone);color:var(--green)}
.btn-fill::before{background:var(--gold)}
.btn-gold{background:var(--gold);color:var(--espresso)}
.btn-gold::before{background:var(--stone)}
.btn-line{border:1.5px solid rgba(246,241,234,.6);color:var(--stone)}
.btn-line::before{background:var(--stone)}
.btn-line:hover{color:var(--green)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:30px;padding:18px var(--pad);color:var(--stone);transition:color .4s}
.nav.scrolled{background:rgba(236,227,214,.9);color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.logo{font-weight:900;font-size:30px;letter-spacing:-.06em;margin-right:auto}
.logo i,.foot-logo i{font-style:normal;color:var(--gold)}
.nav-links{display:flex;gap:26px;font-weight:600;font-size:15px}
.nav-links a{opacity:.8}.nav-links a:hover{opacity:1}
.status{font-size:13px;font-weight:600;padding:8px 14px 8px 30px;border-radius:999px;border:1px solid currentColor;position:relative;white-space:nowrap;opacity:.9}
.status::before{content:"";position:absolute;left:13px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#999}
.status[data-state="open"]::before{background:#6fcf7a;box-shadow:0 0 10px #6fcf7a}
.burger{display:none;width:42px;height:42px;position:relative}
.burger span{position:absolute;left:10px;right:10px;height:2px;background:currentColor;transition:transform .4s}
.burger span:first-child{top:16px}.burger span:last-child{top:24px}
.menu-open .burger span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-open .burger span:last-child{transform:translateY(-4px) rotate(-45deg)}

/* hero */
.hero{min-height:100svh;color:var(--stone);display:flex;flex-direction:column;justify-content:flex-end;padding:120px 0 90px;overflow:hidden;background:radial-gradient(70% 60% at 60% 40%,#e9cf98,#b98f52 45%,#5a4130 100%)}
.hero .stage{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(30,24,20,.7),rgba(30,24,20,.25) 55%,transparent),linear-gradient(0deg,rgba(30,24,20,.55),transparent 45%);pointer-events:none}
.hero-inner{position:relative;z-index:2;max-width:1320px;width:100%;margin:0 auto;padding:0 var(--pad)}
.chip{display:inline-block;font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;background:rgba(246,241,234,.14);border:1px solid rgba(246,241,234,.25);margin-bottom:22px}
.hero-title{font-weight:900;font-size:clamp(60px,10vw,170px);line-height:.86;letter-spacing:-.065em;max-width:8ch}
.hero-title em{color:var(--gold-2);font-weight:400}
.hero-sub{max-width:44ch;color:rgba(246,241,234,.8);font-size:clamp(16px,1.3vw,19px);margin-top:24px}
.hero-scroll{position:absolute;z-index:2;right:var(--pad);bottom:34px;font-size:13px;font-weight:600;opacity:.75;display:flex;align-items:center;gap:10px}
.hero-scroll::after{content:"";width:40px;height:1px;background:currentColor}

/* space */
.space{padding:clamp(100px,12vw,170px) 0;background:var(--plaster)}
.space-head{margin-bottom:60px}
.arches{display:grid;grid-template-columns:1.1fr .9fr 1fr .9fr;gap:18px;align-items:end}
.arch{border-radius:999px 999px 0 0;overflow:hidden;background:var(--plaster-2)}
.arch img{width:100%;height:100%;object-fit:cover}
.a1{aspect-ratio:3/5}.a2{aspect-ratio:3/4.4}.a3{aspect-ratio:3/5.4}.a4{aspect-ratio:3/4}
.space-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:56px;border-top:1px solid var(--line);padding-top:30px}
.space-notes p{color:var(--muted)}
.space-notes b{display:block;color:var(--ink);font-size:20px;letter-spacing:-.03em;margin-bottom:6px}

/* menu (their brown menu board) */
.menu{padding:clamp(100px,12vw,170px) 0;background:var(--brown);color:var(--plaster)}
.menu-head{display:flex;justify-content:space-between;align-items:end;gap:20px;border-top:1px solid rgba(236,227,214,.5);border-bottom:1px solid rgba(236,227,214,.5);padding:14px 0 18px;flex-wrap:wrap}
.menu-title{font-weight:800;font-size:clamp(64px,11vw,180px);line-height:.85;letter-spacing:-.06em}
.menu-note{font-family:var(--serif);font-style:italic;font-size:18px;opacity:.8}
.m-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:36px 0}
.m-tabs button{padding:10px 18px;border-radius:999px;border:1px solid rgba(236,227,214,.35);font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.06em;transition:background .3s,color .3s}
.m-tabs button[aria-selected="true"]{background:var(--plaster);color:var(--brown)}
.m-panel{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(30px,5vw,80px);align-items:start;border-left:1px solid rgba(236,227,214,.4);border-right:1px solid rgba(236,227,214,.4);padding:10px clamp(20px,3vw,44px) 30px}
.m-list li{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid rgba(236,227,214,.18);font-size:clamp(17px,1.5vw,21px);opacity:0;transform:translateY(12px);animation:mi .55s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i)*.035s)}
.m-list li b{font-weight:600;font-variant-numeric:tabular-nums}
.m-list li.star span::after{content:" ★";color:var(--gold-2);font-size:.8em}
@keyframes mi{to{opacity:1;transform:none}}
.m-aside{position:sticky;top:110px}
.m-fig{aspect-ratio:3/4;border-radius:999px 999px 0 0;overflow:hidden;background:var(--espresso)}
.m-fig img{width:100%;height:100%;object-fit:cover;transition:opacity .4s,transform .7s cubic-bezier(.2,.7,.2,1)}
.m-fig img.swap{opacity:0;transform:scale(1.06)}
.m-cap{font-family:var(--serif);font-style:italic;font-size:19px;margin-top:14px;opacity:.85}

/* special */
.special{padding:clamp(100px,12vw,170px) 0;background:var(--green);color:var(--stone);overflow:hidden}
.special-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,100px);align-items:center}
.special .lead em{color:var(--gold-2);font-size:1.1em}
.price{margin-top:30px;font-weight:900;font-size:clamp(70px,9vw,140px);letter-spacing:-.06em;line-height:.9;color:var(--gold-2)}
.price small{font-size:.28em;letter-spacing:0;margin-right:8px;vertical-align:top;color:var(--stone)}
.sp-media{position:relative;height:clamp(460px,48vw,640px)}
.sp-media figure{position:absolute;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.sp-media img{width:100%;height:100%;object-fit:cover}
.sp-a{left:0;top:0;width:60%;aspect-ratio:3/4;border-radius:999px 999px 0 0}
.sp-b{right:0;bottom:0;width:52%;aspect-ratio:1;border-radius:20px;transform:rotate(4deg)}

/* feed */
.feed{padding:clamp(100px,12vw,170px) 0;background:var(--stone)}
.feed-head{margin-bottom:50px}
.reels{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.reels::-webkit-scrollbar{display:none}
.reels.drag{cursor:grabbing;scroll-snap-type:none}
.reel-track{display:flex;gap:16px;padding:0 var(--pad);width:max-content}
.reel{width:clamp(220px,20vw,290px);flex:none;scroll-snap-align:start;user-select:none}
.reel img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:22px;pointer-events:none;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.reel:hover img{transform:translateY(-6px)}
.reel figcaption{font-size:14px;color:var(--muted);margin-top:10px;font-weight:500}

/* events */
.events{padding:clamp(100px,12vw,170px) 0;background:var(--plaster)}
.events-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,6vw,100px);align-items:center}
.ev-img{aspect-ratio:3/4.4;border-radius:999px 999px 0 0;overflow:hidden}
.ev-img img{width:100%;height:100%;object-fit:cover}
.ev-list{margin-top:34px;border-top:1px solid var(--line)}
.ev-list li{display:flex;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:18px;font-weight:500}
.ev-list span{min-width:96px;font-size:13px;color:var(--green);font-weight:700;padding-top:3px}

/* visit */
.visit{padding:clamp(100px,12vw,170px) 0;background:var(--espresso);color:var(--stone)}
.visit-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(40px,6vw,100px);align-items:center}
.facts{margin-top:36px;border-top:1px solid var(--line-l)}
.facts div{display:grid;grid-template-columns:110px 1fr;padding:14px 0;border-bottom:1px solid var(--line-l)}
.facts dt{font-size:13px;font-weight:700;color:var(--gold-2);padding-top:2px}
.facts dd{margin:0;font-size:18px}
.visit-arch{aspect-ratio:3/4.2;border-radius:999px 999px 0 0;overflow:hidden}
.visit-arch img{width:100%;height:100%;object-fit:cover}

.foot{background:var(--green);color:rgba(246,241,234,.65);padding:60px 0 28px;overflow:hidden}
.foot-logo{font-weight:900;font-size:clamp(120px,28vw,420px);letter-spacing:-.07em;line-height:.8;color:var(--stone)}
.foot-b{display:flex;justify-content:space-between;margin-top:30px;padding-top:20px;border-top:1px solid var(--line-l);font-size:12px}

@media (max-width:1000px){
  .nav-links{position:fixed;inset:0;background:var(--green);color:var(--stone);flex-direction:column;justify-content:center;align-items:center;gap:22px;font-size:38px;font-weight:800;letter-spacing:-.04em;transform:translate3d(100%,0,0);transition:transform .6s cubic-bezier(.2,.7,.2,1);z-index:-1}
  .menu-open .nav-links{transform:none}
  .burger{display:block}
}
@media (max-width:820px){
  .status{display:none}
  .hero{padding-bottom:70px}
  .hero-shade{background:linear-gradient(0deg,rgba(30,24,20,.82) 10%,rgba(30,24,20,.2) 65%,transparent)}
  .hero-scroll{display:none}
  .space-head{display:block}
  .arches{grid-template-columns:1fr 1fr;gap:12px}
  .space-notes{grid-template-columns:1fr;gap:18px}
  .m-panel{grid-template-columns:1fr;padding:0 16px 20px}
  .m-aside{display:none}
  .special-grid,.events-grid,.visit-grid{grid-template-columns:1fr}
  .sp-media{height:110vw}
  .reel{width:62vw}
  .facts div{grid-template-columns:1fr}
  .foot-b{flex-direction:column;gap:8px}
}
