:root{
  --ink:#0d0b09;
  --ink-2:#17120e;
  --paper:#f1eadf;
  --paper-2:#e7ddd0;
  --fire:#b8461f;
  --ember:#e38a3b;
  --gold:#d2a85f;
  --white:#fffaf2;
  --muted:#6c6259;
  --line:rgba(13,11,9,.16);
  --line-light:rgba(255,250,242,.17);
  --wrap:min(100% - 56px,1480px);
  --head:88px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
body.menu-open{overflow:hidden}
.skip-link{position:fixed;left:-999px;top:12px;z-index:1000;background:var(--white);padding:12px 16px}
.skip-link:focus{left:12px}
.wrap{width:var(--wrap);margin-inline:auto}
.scroll-line{position:fixed;inset:0 0 auto;z-index:120;height:3px;background:rgba(255,255,255,.06)}
.scroll-line span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--fire),var(--ember))}
.header{position:fixed;inset:0 0 auto;z-index:100;color:var(--white);transition:background .35s ease,border-color .35s ease}
.header.is-scrolled{background:rgba(13,11,9,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.header__inner{width:var(--wrap);height:var(--head);margin:auto;display:grid;grid-template-columns:240px 1fr auto;gap:30px;align-items:center}
.logo{display:grid;line-height:1}.logo span{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,250,242,.64)}.logo strong{font-family:'Bodoni Moda',serif;font-size:34px;letter-spacing:.08em}
.nav{display:flex;justify-content:center;gap:28px}.nav a{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,250,242,.72);transition:color .25s}.nav a:hover{color:var(--white)}
.header__cta{display:inline-flex;align-items:center;gap:14px;min-height:50px;padding:0 22px;border:1px solid rgba(255,255,255,.28);border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.header__cta:hover{background:var(--white);color:var(--ink)}
.menu{display:none}
.hero{position:relative;min-height:100svh;color:var(--white);overflow:hidden;background:var(--ink)}
.hero__media,.hero__shade{position:absolute;inset:0}.hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transform:scale(1.02)}
.hero__shade{background:linear-gradient(90deg,rgba(13,11,9,.82) 0%,rgba(13,11,9,.42) 48%,rgba(13,11,9,.24) 100%),linear-gradient(180deg,rgba(13,11,9,.3),rgba(13,11,9,.72))}
.hero__grid{position:relative;z-index:2;width:var(--wrap);min-height:100svh;margin:auto;padding:calc(var(--head) + 80px) 0 48px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);grid-template-rows:auto 1fr auto;column-gap:7vw}
.hero__eyebrow{grid-column:1/3;align-self:start;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.hero__title{align-self:center;display:grid;line-height:.74;letter-spacing:-.08em}.hero__title span,.hero__title strong{display:block}.hero__thin{font-size:clamp(28px,3vw,54px);font-weight:300;letter-spacing:.36em;margin-left:.22em}.hero__title strong{font-family:'Bodoni Moda',serif;font-size:clamp(104px,15vw,246px);font-weight:600}.hero__script{font-family:'Bodoni Moda',serif;font-size:clamp(44px,6vw,96px);font-style:italic;font-weight:500;margin-left:15vw;white-space:nowrap}
.hero__copy{align-self:center;max-width:520px;padding-top:90px}.hero__copy p{margin:0;color:rgba(255,250,242,.84);font-size:16px;line-height:1.75}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px}.hero__map{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:56px;padding:0 26px;border-radius:999px;border:1px solid transparent;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:transform .25s,background .25s,color .25s}.btn:hover{transform:translateY(-2px)}.btn--light{background:var(--white);color:var(--ink)}.btn--dark{background:var(--ink);color:var(--white)}
.hero__facts{grid-column:1/3;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.22)}.hero__facts div{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:20px 20px 0 0;border-right:1px solid rgba(255,255,255,.16)}.hero__facts div:last-child{border-right:0}.hero__facts span{color:var(--gold);font-size:10px}.hero__facts b{font-size:13px;font-weight:500;color:rgba(255,250,242,.76)}
.hero__scroll{position:absolute;right:28px;bottom:34px;z-index:3;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.hero__scroll i{width:46px;height:1px;background:rgba(255,255,255,.5)}
.origin{padding:140px 0;background:var(--paper)}
.origin__grid{display:grid;grid-template-columns:160px minmax(0,1.15fr) minmax(300px,.62fr);gap:38px}.index{display:flex;align-items:center;gap:14px;align-self:start;color:var(--muted);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.index span{display:grid;place-items:center;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;letter-spacing:0}.index b{font-weight:700}.index--light{color:rgba(255,250,242,.62)}
.kicker{margin:0 0 22px;color:var(--fire);font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.kicker--light{color:var(--gold)}
.headline{margin:0;font-size:clamp(52px,7vw,112px);line-height:.94;letter-spacing:-.065em;font-weight:300}.headline em{font-family:'Bodoni Moda',serif;font-weight:600}.headline--light{color:var(--white)}
.origin__copy{padding-top:72px}.origin__copy>p{margin:0;color:var(--muted);font-size:16px;line-height:1.9}.origin__copy dl{margin:40px 0 0;border-top:1px solid var(--line)}.origin__copy dl div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.origin__copy dt{color:var(--fire);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.origin__copy dd{margin:0;font-size:13px}
.origin__strip{width:min(100% - 28px,1680px);margin:96px auto 0;display:grid;grid-template-columns:1.55fr .62fr .48fr;gap:16px;align-items:end}.origin__frame{margin:0;overflow:hidden;background:#d4c8ba}.origin__frame img{width:100%;height:100%;object-fit:cover}.origin__frame--wide{height:620px}.origin__frame--tall{height:720px}.origin__frame--small{height:430px}
.bull{position:relative;min-height:240svh;background:radial-gradient(circle at 20% 20%,#2a140c 0,#130e0b 34%,#090807 80%);color:var(--white)}
.bull__sticky{position:sticky;top:0;height:100svh;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr);overflow:hidden}
.bull__stage{position:relative;display:grid;place-items:center;overflow:hidden;padding:clamp(16px,2vw,28px) 0 clamp(44px,5vw,74px)}.bull__stage::after{content:'CHRISTO';position:absolute;left:3vw;bottom:-.05em;font-family:'Bodoni Moda',serif;font-size:clamp(90px,16vw,260px);letter-spacing:-.09em;color:rgba(255,255,255,.025);pointer-events:none}.bull__halo{position:absolute;width:74%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(227,138,59,.32),rgba(184,70,31,.12) 45%,transparent 70%);filter:blur(10px)}
.bull__poster{position:absolute;inset:6% 6% 7%;z-index:1;border-radius:28px;background:linear-gradient(180deg,rgba(8,6,5,.18),rgba(8,6,5,.78)),url("../img/touro-entrada-hq.webp") center 42%/cover no-repeat;transition:opacity .5s ease}.bull__poster span{position:absolute;left:18px;bottom:16px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,250,242,.62)}.bull__stage.is-loaded .bull__poster{opacity:0;pointer-events:none}
model-viewer{width:100%;height:100%;z-index:2;background:transparent;--poster-color:transparent}.bull__progress{position:absolute;left:50%;bottom:80px;width:180px;height:3px;transform:translateX(-50%);background:rgba(255,255,255,.15)}.bull__progress span{display:block;width:0;height:100%;background:var(--ember)}.bull__status{position:absolute;bottom:50px;z-index:4;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,250,242,.62)}.bull__status.is-ready{color:var(--gold)}.bull__drag{position:absolute;left:30px;bottom:28px;z-index:4;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,250,242,.48)}
.bull__content{padding:clamp(78px,10vh,120px) 5vw 60px 20px;display:grid;align-content:center;gap:20px;background:linear-gradient(90deg,transparent,rgba(7,6,5,.45))}.bull__content .headline{max-width:720px;font-size:clamp(44px,6vw,92px)}.bull__lead{margin:0;max-width:620px;color:rgba(255,250,242,.74);font-size:15px;line-height:1.85}.bull__facts{display:grid;gap:0;margin-top:12px;border-top:1px solid var(--line-light)}.bull__facts article{display:grid;grid-template-columns:44px 1fr;gap:8px 20px;padding:20px 0;border-bottom:1px solid var(--line-light)}.bull__facts span{color:var(--gold);font-size:9px}.bull__facts h3,.bull__facts p{grid-column:2;margin:0}.bull__facts h3{font-family:'Bodoni Moda',serif;font-size:30px}.bull__facts p{color:rgba(255,250,242,.58);font-size:13px;line-height:1.6}
.fire{position:relative;min-height:100svh;color:var(--white);overflow:hidden}.fire__media,.fire__shade{position:absolute;inset:0}.fire__media img{width:100%;height:100%;object-fit:cover}.fire__shade{background:linear-gradient(90deg,rgba(10,7,5,.88),rgba(10,7,5,.52) 50%,rgba(10,7,5,.18)),linear-gradient(180deg,rgba(10,7,5,.15),rgba(10,7,5,.7))}.fire__content{position:relative;z-index:2;min-height:100svh;padding:130px 0 80px;display:grid;grid-template-columns:160px minmax(0,1fr) minmax(280px,.54fr);gap:36px;align-items:end}.fire__headline{align-self:center}.fire__text{padding-bottom:20px}.fire__text p{margin:0 0 26px;color:rgba(255,250,242,.76);font-size:16px;line-height:1.8}
.buffet{padding:140px 0;background:var(--paper)}.buffet__head{display:grid;grid-template-columns:160px minmax(0,1fr) minmax(300px,.58fr);gap:38px;align-items:start}.buffet__intro{margin:70px 0 0;color:var(--muted);font-size:16px;line-height:1.85}.buffet__mosaic{margin-top:80px;display:grid;grid-template-columns:1.2fr .75fr .55fr;grid-template-rows:360px 280px;gap:16px}.buffet__photo{position:relative;margin:0;overflow:hidden}.buffet__photo--main{grid-row:1/3}.buffet__photo--fish{grid-column:2/4}.buffet__photo img{width:100%;height:100%;object-fit:cover}.buffet__photo figcaption{position:absolute;inset:auto 16px 16px;display:flex;gap:12px;color:var(--white);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.buffet__photo::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.65))}.buffet__photo figcaption{z-index:2}
.buffet__features{display:grid;grid-template-columns:repeat(3,1fr);margin-top:54px;border-top:1px solid var(--line)}.buffet__features article{padding:30px 28px 0 0;border-right:1px solid var(--line)}.buffet__features article+article{padding-left:28px}.buffet__features article:last-child{border-right:0}.buffet__features span{color:var(--fire);font-size:9px}.buffet__features h3{margin:18px 0 10px;font-family:'Bodoni Moda',serif;font-size:30px}.buffet__features p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.structure{padding:140px 0;background:#10100e;color:var(--white);overflow:hidden}.structure__head{display:grid;grid-template-columns:160px minmax(0,1fr);gap:38px}.structure__head .headline{max-width:1100px}.structure__rail{display:flex;gap:18px;margin:80px 0 0;padding:0 max(28px,calc((100vw - 1480px)/2));overflow-x:auto;scrollbar-width:none}.structure__rail::-webkit-scrollbar{display:none}.structure__card{flex:0 0 min(70vw,760px);position:relative;height:620px;overflow:hidden}.structure__card img{width:100%;height:100%;object-fit:cover}.structure__card::after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.82))}.structure__card>div{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}.structure__card span{color:var(--gold);font-size:9px}.structure__card h3{margin:8px 0;font-family:'Bodoni Moda',serif;font-size:48px}.structure__card p{margin:0;max-width:520px;color:rgba(255,250,242,.66);font-size:14px;line-height:1.65}.structure__tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:48px}.structure__tags span{padding:10px 14px;border:1px solid var(--line-light);border-radius:999px;color:rgba(255,250,242,.65);font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.storyline{padding:140px 0;background:var(--paper-2)}.storyline__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(400px,.78fr);gap:70px;align-items:center}.storyline__copy{display:grid;gap:24px}.storyline__lead{margin:0;max-width:720px;color:var(--muted);font-size:16px;line-height:1.85}.text-arrow{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.storyline__video{position:relative;display:block;min-height:620px;overflow:hidden;background:#1d1712}.storyline__video img{width:100%;height:100%;object-fit:cover}.storyline__video::after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8))}.storyline__video>span{position:absolute;z-index:2;left:50%;top:50%;display:grid;place-items:center;width:90px;height:90px;transform:translate(-50%,-50%);border-radius:50%;background:var(--white);color:var(--ink);font-size:28px}.storyline__video>div{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;display:grid;gap:4px;color:var(--white)}.storyline__video b{font-family:'Bodoni Moda',serif;font-size:32px}.storyline__video small{color:rgba(255,255,255,.62)}
.gallery{padding:140px 0;background:var(--paper)}.gallery__head{display:grid;grid-template-columns:160px minmax(0,1fr) minmax(280px,.5fr);gap:38px}.gallery__intro{margin:72px 0 0;color:var(--muted);font-size:15px;line-height:1.8;max-width:520px}.gallery__film{display:flex;gap:16px;margin-top:72px;padding:0 max(28px,calc((100vw - 1480px)/2));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery__film::-webkit-scrollbar{display:none}.gallery__item{position:relative;flex:0 0 360px;height:560px;padding:0;border:0;background:#d5cabd;overflow:hidden;cursor:zoom-in;scroll-snap-align:start}.gallery__item--land{flex-basis:620px}.gallery__item--square{height:420px;align-self:end}.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.gallery__item:hover img{transform:scale(1.035)}.gallery__item::after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72))}.gallery__item span{position:absolute;z-index:2;left:18px;bottom:16px;color:var(--white);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.visit{padding:140px 0;background:var(--paper-2)}.visit__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.65fr);gap:80px}.visit__main{display:grid;align-content:start;gap:30px}.visit__main .headline{max-width:900px}.visit__main .btn{justify-self:start}.visit__list{border-top:1px solid var(--line)}.visit__list article{display:grid;grid-template-columns:40px 1fr;gap:8px 18px;padding:24px 0;border-bottom:1px solid var(--line)}.visit__list span{color:var(--fire);font-size:9px}.visit__list h3,.visit__list p,.visit__list a{grid-column:2;margin:0}.visit__list h3{font-family:'Bodoni Moda',serif;font-size:32px}.visit__list p{color:var(--muted);font-size:14px;line-height:1.7}.visit__list a{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.footer{padding:72px 0 28px;background:var(--ink);color:var(--white)}.footer__top{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(300px,1fr);gap:50px;padding-bottom:48px}.footer__logo{display:grid;line-height:1}.footer__logo span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,250,242,.5)}.footer__logo strong{font-family:'Bodoni Moda',serif;font-size:54px;letter-spacing:.08em}.footer__top p{margin:8px 0 0;max-width:620px;color:rgba(255,250,242,.58);font-size:14px;line-height:1.8}.footer__grid{display:grid;grid-template-columns:1.1fr 1fr 1.2fr 1fr;gap:32px;padding:34px 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}.footer__grid>div{display:grid;align-content:start;gap:10px}.footer__grid span{margin-bottom:6px;color:var(--gold);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.footer__grid a,.footer__grid p{margin:0;color:rgba(255,250,242,.68);font-size:13px;line-height:1.65}.footer__bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;color:rgba(255,250,242,.38);font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.lightbox{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:30px;border:0;background:rgba(8,6,5,.97);color:var(--white)}.lightbox::backdrop{background:rgba(0,0,0,.86)}.lightbox[open]{display:grid;grid-template-columns:80px 1fr 80px;align-items:center}.lightbox figure{height:calc(100dvh - 60px);margin:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:14px}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox figcaption{text-align:center;color:rgba(255,250,242,.58);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.lightbox__close{position:absolute;right:20px;top:16px;z-index:4;width:48px;height:48px;border:1px solid var(--line-light);border-radius:50%;background:transparent;color:var(--white);font-size:28px;cursor:pointer}.lightbox__nav{width:58px;height:58px;border:1px solid var(--line-light);border-radius:50%;background:transparent;color:var(--white);font-size:22px;cursor:pointer}.lightbox__nav--next{justify-self:end}
.reveal,.reveal-text{opacity:0;transform:translateY(36px);transition:opacity .85s ease,transform 1s var(--ease)}.reveal.is-visible,.reveal-text.is-visible{opacity:1;transform:none}
@media(max-width:1180px){:root{--wrap:min(100% - 40px,1480px)}.header__inner{grid-template-columns:210px 1fr auto}.nav{gap:18px}.nav a{font-size:9px}.hero__grid{grid-template-columns:1fr}.hero__eyebrow,.hero__facts{grid-column:auto}.hero__copy{padding-top:30px;max-width:620px}.hero__script{margin-left:8vw}.origin__grid,.buffet__head,.gallery__head{grid-template-columns:130px 1fr}.origin__copy,.buffet__intro,.gallery__intro{grid-column:2;padding-top:0;margin-top:0}.origin__strip{grid-template-columns:1.3fr .7fr}.origin__frame--small{display:none}.bull__sticky{grid-template-columns:1fr 420px}.fire__content{grid-template-columns:130px 1fr}.fire__text{grid-column:2;max-width:620px}.storyline__grid{grid-template-columns:1fr}.storyline__video{min-height:520px}.visit__grid{grid-template-columns:1fr}.footer__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){:root{--head:76px;--wrap:calc(100% - 30px)}.header__inner{grid-template-columns:1fr auto}.header__cta{display:none}.menu{position:relative;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:transparent}.menu span{position:absolute;width:18px;height:1px;background:var(--white);transition:.3s}.menu span:first-child{transform:translateY(-4px)}.menu span:last-child{transform:translateY(4px)}.menu[aria-expanded=true] span:first-child{transform:rotate(45deg)}.menu[aria-expanded=true] span:last-child{transform:rotate(-45deg)}.nav{position:fixed;inset:var(--head) 15px auto;display:grid;gap:4px;padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(13,11,9,.98);opacity:0;visibility:hidden;transform:translateY(-10px);transition:.35s}.nav.is-open{opacity:1;visibility:visible;transform:none}.nav a{font-size:15px;text-transform:none;letter-spacing:.03em}.hero__grid{padding-top:calc(var(--head) + 70px)}.hero__title strong{font-size:clamp(92px,22vw,170px)}.hero__script{font-size:clamp(42px,10vw,72px);margin-left:0;white-space:normal}.hero__facts{grid-template-columns:1fr}.hero__facts div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:14px 0}.hero__facts div:last-child{border-bottom:0}.origin__grid,.buffet__head,.gallery__head,.structure__head{grid-template-columns:1fr}.origin__copy,.buffet__intro,.gallery__intro{grid-column:auto}.origin__strip{grid-template-columns:1fr .55fr}.origin__frame--wide{height:500px}.origin__frame--tall{height:580px}.bull{min-height:auto}.bull__sticky{position:relative;height:auto;grid-template-columns:1fr}.bull__stage{height:82svh}.bull__content{padding:80px 24px}.fire__content{grid-template-columns:1fr;align-content:end}.fire__text{grid-column:auto}.buffet__mosaic{grid-template-columns:1fr 1fr;grid-template-rows:460px 300px}.buffet__photo--main{grid-row:1/3}.buffet__photo--fish{grid-column:2}.buffet__features{grid-template-columns:1fr}.buffet__features article{border-right:0;border-bottom:1px solid var(--line);padding:24px 0}.buffet__features article+article{padding-left:0}.structure__card{flex-basis:82vw;height:540px}.footer__top{grid-template-columns:1fr}.lightbox[open]{grid-template-columns:1fr}.lightbox__nav{position:absolute;bottom:22px;z-index:4}.lightbox__nav--prev{left:20px}.lightbox__nav--next{right:20px}}
@media(max-width:620px){:root{--wrap:calc(100% - 24px)}.logo strong{font-size:29px}.hero__grid{padding-bottom:28px}.hero__title{line-height:.82}.hero__thin{font-size:20px;letter-spacing:.24em}.hero__title strong{font-size:clamp(74px,24vw,112px)}.hero__copy p{font-size:14px}.hero__actions{align-items:flex-start;flex-direction:column}.hero__scroll{display:none}.origin,.buffet,.structure,.storyline,.gallery,.visit{padding:90px 0}.headline{font-size:clamp(44px,13vw,68px)}.origin__strip{width:100%;grid-template-columns:1fr}.origin__frame--wide{height:420px}.origin__frame--tall{display:none}.bull__stage{height:66svh}.bull__content{padding:70px 14px}.bull__drag{left:14px}.fire__content{padding:100px 0 50px}.buffet__mosaic{grid-template-columns:1fr;grid-template-rows:auto}.buffet__photo,.buffet__photo--main,.buffet__photo--fish,.buffet__photo--detail{grid-column:auto;grid-row:auto;height:360px}.structure__card{flex-basis:88vw;height:500px}.storyline__video{min-height:430px}.gallery__item,.gallery__item--land{flex-basis:82vw;height:500px}.gallery__item--square{height:420px}.footer__grid{grid-template-columns:1fr}.footer__bottom{flex-direction:column}.lightbox{padding:16px}.lightbox figure{height:calc(100dvh - 92px);padding-bottom:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}}

/* Revisão estrutural: imagens nunca invadem seções vizinhas e o 3D ocupa o palco inteiro. */
main > section,
.origin,
.bull,
.fire,
.buffet,
.structure,
.storyline,
.gallery,
.visit {
  position: relative;
  isolation: isolate;
}

.origin,
.buffet,
.structure,
.storyline,
.gallery,
.visit {
  overflow: clip;
}

.origin__grid > *,
.origin__strip > *,
.bull__sticky > *,
.buffet__head > *,
.buffet__mosaic > *,
.storyline__grid > *,
.gallery__head > *,
.visit__grid > * {
  min-width: 0;
}

.origin__strip {
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, .72fr) minmax(220px, .55fr);
  align-items: start;
}

.origin__frame {
  position: relative;
  width: 100%;
  height: auto !important;
  min-height: 0;
  aspect-ratio: 4 / 3;
}

.origin__frame--wide { aspect-ratio: 16 / 10; }
.origin__frame--tall { aspect-ratio: 4 / 5; }
.origin__frame--small { aspect-ratio: 4 / 3; }
.origin__frame img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

.bull { z-index: 1; }
.bull__sticky { z-index: 1; }
.bull__stage,
.bull__content { min-width: 0; }
.bull__stage { background: radial-gradient(circle at 50% 44%, rgba(227,138,59,.18), transparent 48%); }
.bull__poster { z-index: 1; }
.bull__stage.is-loaded .bull__poster { opacity: 0; visibility: hidden; }
model-viewer#bullModel {
  position: relative;
  z-index: 3;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 620px;
  opacity: 1;
  background: transparent;
  --poster-color: transparent;
  --progress-bar-color: var(--ember);
}
.bull__status,
.bull__drag,
.bull__progress { z-index: 5; }
.bull__stage.has-error .bull__poster { opacity: 1; visibility: visible; }
.bull__stage.has-error model-viewer { opacity: 0; }

.buffet__mosaic {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .75fr) minmax(0, .55fr);
  grid-template-rows: minmax(320px, 1fr) minmax(260px, .82fr);
  align-items: stretch;
}
.buffet__photo { min-width: 0; min-height: 0; }
.buffet__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

.structure__rail,
.gallery__film { overscroll-behavior-x: contain; }
.structure__card,
.gallery__item { min-width: 0; }

@media (max-width: 1180px) {
  .origin__strip { grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr); }
  .origin__frame--small { display: none; }
  model-viewer#bullModel { min-height: 560px; }
}

@media (max-width: 920px) {
  .origin__strip { grid-template-columns: 1fr; gap: 14px; }
  .origin__frame--wide,
  .origin__frame--tall { display: block; aspect-ratio: 16 / 10; }
  .bull__stage { min-height: 680px; height: 78svh; }
  model-viewer#bullModel { min-height: 100%; height: 100%; }
  .buffet__mosaic {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 460px 300px;
  }
  .buffet__photo--main { grid-row: 1 / 3; }
  .buffet__photo--fish { grid-column: 2; }
}

@media (max-width: 620px) {
  .origin__frame--wide,
  .origin__frame--tall { aspect-ratio: 4 / 3; }
  .bull__stage { min-height: 560px; height: 72svh; }
  .bull__poster { inset: 5% 4%; }
  .bull__status { left: 14px; right: 14px; text-align: center; }
  .bull__progress { bottom: 76px; }
  .buffet__mosaic {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
  .buffet__photo,
  .buffet__photo--main,
  .buffet__photo--fish,
  .buffet__photo--detail {
    grid-column: auto;
    grid-row: auto;
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 3;
  }
}


/* Correção definitiva da seção 3D: fluxo normal, touro inteiro e sem sobreposição. */
.hero__media img { transform: none; image-rendering: auto; }

.bull {
  min-height: 0 !important;
  padding: clamp(72px, 7vw, 110px) 0;
  overflow: hidden;
}
.bull__sticky {
  position: relative !important;
  top: auto !important;
  width: var(--wrap);
  height: auto !important;
  min-height: 920px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(400px, .8fr) !important;
  gap: clamp(28px, 4vw, 64px);
  align-items: center;
  overflow: visible !important;
}
.bull__stage {
  width: 100%;
  min-height: 900px !important;
  height: 900px !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 1px solid rgba(255,250,242,.08);
  border-radius: 32px;
  background:
    radial-gradient(circle at 48% 48%, rgba(227,138,59,.24), rgba(184,70,31,.08) 44%, transparent 72%),
    linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,0));
}
.bull__stage::after { bottom: .02em; opacity: .8; }
.bull__halo { width: 82%; }
.bull__poster { inset: 20px !important; background-position: center 46% !important; }
model-viewer#bullModel {
  width: 100% !important;
  height: 900px !important;
  min-height: 900px !important;
  overflow: visible !important;
}
.bull__status {
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  white-space: nowrap;
}
.bull__status.is-ready { opacity: 0; pointer-events: none; }
.bull__drag { display: none !important; }
.bull__progress { bottom: 48px; }
.bull__content {
  padding: 20px 0 !important;
  background: none !important;
  align-content: center;
}
.bull__content .headline {
  max-width: 660px;
  font-size: clamp(42px, 4.7vw, 76px) !important;
  line-height: .98;
}
.bull__lead { max-width: 600px; }
.bull__facts article { padding: 16px 0; }
.origin__frame img,
.fire__media img,
.buffet__photo img,
.structure__card img,
.storyline__video img,
.gallery__item img {
  image-rendering: auto;
  backface-visibility: hidden;
}
@media (max-width: 1180px) {
  .bull__sticky {
    grid-template-columns: minmax(0, 1fr) minmax(350px, .72fr) !important;
    min-height: 820px;
  }
  .bull__stage,
  model-viewer#bullModel {
    min-height: 780px !important;
    height: 780px !important;
  }
}
@media (max-width: 920px) {
  .bull { padding: 70px 0; }
  .bull__sticky {
    width: var(--wrap);
    grid-template-columns: 1fr !important;
    gap: 40px;
    min-height: 0;
  }
  .bull__stage,
  model-viewer#bullModel {
    min-height: 660px !important;
    height: 660px !important;
  }
  .bull__content { padding: 0 4px 20px !important; }
}
@media (max-width: 620px) {
  .bull__stage,
  model-viewer#bullModel {
    min-height: 520px !important;
    height: 520px !important;
  }
  .bull__poster { inset: 10px !important; }
  .bull__content .headline { font-size: clamp(38px, 11vw, 58px) !important; }
}

/* =========================================================
   REFINO FINAL — IMAGENS HD, VÍDEO AUTOMÁTICO E GALERIA INDEX
   ========================================================= */

.buffet__mosaic--hd {
  grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
  grid-template-rows: 430px 330px;
  gap: 18px;
}
.buffet__mosaic--hd .buffet__photo--main {
  grid-row: 1 / 3;
}
.buffet__mosaic--hd .buffet__photo--fish,
.buffet__mosaic--hd .buffet__photo--detail {
  grid-column: 2;
}
.buffet__mosaic--hd .buffet__photo--fish { grid-row: 1; }
.buffet__mosaic--hd .buffet__photo--detail { grid-row: 2; }
.buffet__mosaic--hd .buffet__photo img {
  object-position: center;
  filter: none;
}
.buffet__mosaic--hd .buffet__photo--main img { object-position: center 44%; }
.buffet__mosaic--hd .buffet__photo--fish img { object-position: center 58%; }
.buffet__mosaic--hd .buffet__photo--detail img { object-position: center; }

.structure__card img {
  image-rendering: auto;
  object-position: center;
}
.structure__card:nth-child(1) img { object-position: center 48%; }
.structure__card:nth-child(2) img { object-position: center 45%; }
.structure__card:nth-child(3) img { object-position: center 58%; }

.storyline__grid {
  grid-template-columns: minmax(0, .78fr) minmax(520px, 1.08fr);
  gap: clamp(42px, 6vw, 84px);
}
.storyline__copy .headline {
  max-width: 760px;
  font-size: clamp(50px, 6.4vw, 96px);
  line-height: .96;
}
.storyline__video {
  position: relative;
  min-height: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 2px;
  background: #0b0907;
  box-shadow: 0 28px 90px rgba(26, 17, 12, .18);
}
.storyline__video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  transform: scale(1.012);
  pointer-events: none;
}
.storyline__video::after {
  content: '';
  position: absolute;
  inset: 52% 0 0;
  background: linear-gradient(transparent, rgba(6, 5, 4, .78));
  pointer-events: none;
}
.storyline__video-label {
  position: absolute;
  z-index: 2;
  left: 24px;
  right: 24px;
  bottom: 22px;
  display: grid;
  gap: 5px;
  color: var(--white);
  pointer-events: none;
}
.storyline__video-label b {
  font-family: 'Bodoni Moda', serif;
  font-size: clamp(25px, 2.6vw, 38px);
  font-weight: 500;
}
.storyline__video-label small {
  color: rgba(255, 250, 242, .66);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.gallery--index {
  padding: 140px 0;
  background: var(--paper);
  overflow: hidden;
}
.gallery--index .gallery__head {
  margin-bottom: 64px;
}
.gallery-index {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(320px, .65fr);
  gap: 22px;
  align-items: stretch;
}
.gallery-index__stage {
  position: relative;
  width: 100%;
  min-height: 760px;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: #17120e;
  cursor: zoom-in;
  text-align: left;
}
.gallery-index__stage::after {
  content: '';
  position: absolute;
  inset: 46% 0 0;
  background: linear-gradient(transparent, rgba(5, 4, 3, .82));
  pointer-events: none;
}
.gallery-index__stage img {
  width: 100%;
  height: 100%;
  min-height: 760px;
  object-fit: cover;
  object-position: center;
  transition: opacity .34s ease, transform .8s var(--ease);
}
.gallery-index__stage.is-changing img { opacity: .2; transform: scale(1.02); }
.gallery-index__stage:hover img { transform: scale(1.018); }
.gallery-index__counter {
  position: absolute;
  z-index: 2;
  top: 22px;
  right: 22px;
  padding: 10px 13px;
  border: 1px solid rgba(255, 255, 255, .22);
  color: var(--white);
  background: rgba(7, 6, 5, .28);
  backdrop-filter: blur(12px);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .14em;
}
.gallery-index__caption {
  position: absolute;
  z-index: 2;
  left: 28px;
  right: 28px;
  bottom: 26px;
  display: grid;
  gap: 5px;
  color: var(--white);
}
.gallery-index__caption b {
  font-family: 'Bodoni Moda', serif;
  font-size: clamp(40px, 5vw, 72px);
  font-weight: 500;
  line-height: .96;
}
.gallery-index__caption small {
  max-width: 620px;
  color: rgba(255, 250, 242, .7);
  font-size: 13px;
  line-height: 1.55;
}
.gallery-index__list {
  display: grid;
  grid-template-rows: repeat(6, minmax(0, 1fr));
  border-top: 1px solid var(--line);
}
.gallery-index__item {
  position: relative;
  min-height: 100px;
  display: grid;
  grid-template-columns: 34px 82px 1fr;
  gap: 14px;
  align-items: center;
  width: 100%;
  padding: 14px 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  color: var(--ink);
  background: transparent;
  cursor: pointer;
  text-align: left;
  transition: padding-left .35s var(--ease), color .25s ease, background .25s ease;
}
.gallery-index__item:hover,
.gallery-index__item.is-active {
  padding-left: 10px;
  color: var(--rust);
  background: rgba(122, 56, 25, .035);
}
.gallery-index__item > span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .13em;
}
.gallery-index__item img {
  width: 82px;
  height: 72px;
  object-fit: cover;
  background: #d2c7ba;
}
.gallery-index__item b {
  font-family: 'Bodoni Moda', serif;
  font-size: clamp(23px, 2vw, 31px);
  font-weight: 500;
  line-height: 1;
}

@media (max-width: 1180px) {
  .storyline__grid { grid-template-columns: 1fr; }
  .storyline__video { width: 100%; aspect-ratio: 16 / 9; }
  .gallery-index { grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); }
  .gallery-index__stage,
  .gallery-index__stage img { min-height: 650px; }
}

@media (max-width: 920px) {
  .buffet__mosaic--hd {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 520px 330px;
  }
  .buffet__mosaic--hd .buffet__photo--main { grid-row: 1 / 3; }
  .buffet__mosaic--hd .buffet__photo--fish,
  .buffet__mosaic--hd .buffet__photo--detail { grid-column: 2; }
  .gallery-index { grid-template-columns: 1fr; }
  .gallery-index__stage,
  .gallery-index__stage img { min-height: 620px; }
  .gallery-index__list {
    grid-template-columns: repeat(6, minmax(160px, 1fr));
    grid-template-rows: 1fr;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .gallery-index__list::-webkit-scrollbar { display: none; }
  .gallery-index__item {
    min-width: 180px;
    grid-template-columns: 26px 58px 1fr;
    padding: 12px 8px;
    border-right: 1px solid var(--line);
  }
  .gallery-index__item img { width: 58px; height: 54px; }
}

@media (max-width: 620px) {
  .buffet__mosaic--hd {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
  .buffet__mosaic--hd .buffet__photo,
  .buffet__mosaic--hd .buffet__photo--main,
  .buffet__mosaic--hd .buffet__photo--fish,
  .buffet__mosaic--hd .buffet__photo--detail {
    grid-column: auto;
    grid-row: auto;
    height: 420px;
  }
  .storyline__copy .headline { font-size: clamp(44px, 13vw, 68px); }
  .storyline__video { aspect-ratio: 4 / 3; }
  .storyline__video-label { left: 16px; right: 16px; bottom: 15px; }
  .gallery--index { padding: 90px 0; }
  .gallery-index__stage,
  .gallery-index__stage img { min-height: 520px; }
  .gallery-index__caption { left: 18px; right: 18px; bottom: 18px; }
  .gallery-index__caption b { font-size: clamp(36px, 12vw, 58px); }
  .gallery-index__caption small { font-size: 12px; }
}
