/* Abertura em filme + capítulos que passam sobre a página anterior. */
.topline{display:none}
.header{position:fixed;inset:0 0 auto;height:100px;background:transparent;backdrop-filter:none;border-color:#fff3;color:var(--paper);z-index:50}
.header:not(.scrolled) .brand img{filter:url(#logo-light);mix-blend-mode:normal}
.header:not(.scrolled) .header-cta{background:transparent;border-color:#f7f3ec80;color:var(--paper)}
.header:not(.scrolled) nav a::after{background:var(--paper)}
.header:not(.scrolled) .menu-toggle{color:var(--paper)}
.header.scrolled{background:rgb(247 243 236 / 97%);backdrop-filter:blur(16px);color:var(--ink)}
main{position:relative;isolation:isolate}
.hero-film{display:flex;align-items:center;min-height:760px;height:100svh;padding:145px var(--shell) 140px;gap:0;background:#251b15;color:var(--paper);isolation:isolate}
.film-media{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#251b15}
.film-media video{position:absolute;right:0;top:0;width:69%;height:100%;object-fit:cover;object-position:center 53%;opacity:.94}
.film-media::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#251b15 0%,#251b15 31%,#251b15a8 46%,#251b1500 76%),linear-gradient(0deg,#1c150cb3,transparent 42%,#20160938)}
.hero-film .hero-copy{padding:0;max-width:740px;transform:translate3d(0,var(--hero-copy-y,0px),0);opacity:var(--hero-copy-opacity,1)}
.hero-film .eyebrow{color:#e8ceb0;font-size:10px;letter-spacing:2.3px;gap:14px;margin-bottom:24px}
.hero-film h1{color:var(--paper);font-size:clamp(64px,6.3vw,104px);line-height:1.02;letter-spacing:-.045em}
.hero-film h1 .italic{color:#e4bf95}
.hero-film .hero-description{color:#e6ddd1;max-width:375px;font-size:13px;line-height:1.9;margin-top:20px}
.hero-film .hero-actions{flex-direction:row;align-items:center;gap:30px;margin-top:30px}
.hero-film .hero-actions .button{background:var(--paper);border-color:var(--paper);color:var(--terra);padding:17px 21px;font-size:11px}
.hero-film .hero-actions .button:hover{background:#e7d7c0}
.hero-film .hero-actions .text-link{color:var(--paper);font-size:10px;gap:12px}
.film-footer{position:absolute;bottom:35px;left:var(--shell);right:var(--shell);display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f7f3ec40;padding-top:21px;gap:25px}
.film-footer .scroll-hint{position:static;color:#eee2d2;font-size:8px;letter-spacing:1.6px}
.film-location{color:#dfd3c2;font-size:9px;letter-spacing:1.1px;margin-left:auto}
.film-side-note{position:absolute;right:var(--shell);top:158px;writing-mode:vertical-rl;font-size:9px;letter-spacing:2px;color:#f7f3ecb3}
.chapter{position:relative;background:var(--paper)}
.chapter-anchor{height:0;pointer-events:none}
.intro-sheet{background:var(--terra)}
.values-strip{background:var(--paper);min-height:100px}
.gifts,.about,.faq{background:var(--paper)}
.process{background:#eee8dc}
.emporium{background:var(--olive)}
.quote{background:#ebe2d5}
.footer{position:relative;z-index:20}
body.at-intro .floating-whatsapp{opacity:0;pointer-events:none;visibility:hidden}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(var(--page-progress,0));transform-origin:left;z-index:60;pointer-events:none}
/* Alturas são medidas: capítulos longos podem ser lidos inteiros antes de prender. */
.layered-scroll .chapter{position:sticky;top:var(--sheet-top,0px);box-shadow:0 -20px 60px #21180e1c}
.layered-scroll .hero-film{box-shadow:none;top:0}
.layered-scroll .chapter:not(.hero-film){border-radius:24px 24px 0 0;overflow:clip}
.chapter::after{content:'';position:absolute;inset:0;background:#1c130b;opacity:var(--sheet-dim,0);pointer-events:none;z-index:10}
.corporate-visual{transition:transform .2s linear;transform:translateY(var(--photo-shift,0px))}
.corporate-visual.reveal.visible{transform:translateY(var(--photo-shift,0px))}
@media(min-width:1600px){.hero-film{min-height:850px}.hero-film h1{font-size:104px}.hero-film .hero-description{max-width:440px;font-size:14px}}
@media(max-width:1100px){.hero-film h1{font-size:clamp(64px,7vw,88px)}.hero-film .hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.film-media video{width:74%}.film-location{display:none}.film-side-note{top:130px}}
@media(max-width:900px){.header{height:90px}.header nav{color:var(--ink)}.hero-film{min-height:760px}.film-media::after{background:linear-gradient(90deg,#251b15f2,#251b159c 50%,#251b1526),linear-gradient(0deg,#1c150c99,transparent 60%)}.film-side-note{display:none}}
@media(max-width:650px){
  .header{height:82px}.header.scrolled{height:73px}
  .hero-film{height:100svh;min-height:730px;padding:130px var(--shell) 130px;align-items:flex-end;gap:0}
  .film-media video{width:100%;object-position:center 45%}
  .film-media::after{background:linear-gradient(0deg,#1b170eef 0%,#241910b8 32%,#24191050 75%,#24191066 100%)}
  .hero-film .hero-copy{max-width:100%}
  .hero-film .eyebrow{font-size:7px;letter-spacing:1.5px;margin-bottom:18px;gap:9px}
  .hero-film h1{font-size:clamp(50px,12.3vw,76px);line-height:1.02;letter-spacing:-.035em}
  .hero-film .hero-description{font-size:12px;line-height:1.8;max-width:355px;margin-top:18px}
  .hero-film .hero-actions{margin-top:25px;gap:19px}
  .hero-film .hero-actions .button{min-height:51px;padding:15px 20px;font-size:10px;gap:20px}
  .hero-film .hero-actions .text-link{font-size:10px}
  .film-footer{bottom:28px;padding-top:17px;gap:10px}
  .film-footer .scroll-hint{font-size:6px;letter-spacing:1px;gap:12px}
  .layered-scroll .chapter:not(.hero-film){border-radius:16px 16px 0 0}
  .values-strip{gap:15px;padding-top:28px;padding-bottom:28px}
  .floating-whatsapp{bottom:16px;right:16px}
  body.at-intro .floating-whatsapp{opacity:0;pointer-events:none;visibility:hidden}
}
@media(prefers-reduced-motion:reduce){
  .layered-scroll .chapter{position:relative!important;top:auto!important}
  .hero-film .hero-copy,.corporate-visual.reveal.visible{transform:none!important;opacity:1!important}
  .chapter::after{display:none}
}
.cta-mobile{display:none}section[tabindex="-1"]:focus-visible{outline:none}@media(max-width:650px){.cta-desktop{display:none}.cta-mobile{display:inline}}

/* Visita, contato e mapa: informações conferidas no perfil fornecido pelo usuário. */
.footer-visit{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:58px 0 65px;border-top:1px solid #d0c7ba}
.footer-visit h2{font-size:clamp(36px,3.4vw,50px);color:var(--terra);line-height:1.13;letter-spacing:-.035em}
.visit-intro{font-size:12px;line-height:1.9;max-width:370px;margin-top:21px}
.visit-copy{min-width:0}
.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:29px 25px;margin-top:34px}
.visit-detail h3{font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:1.1px;text-transform:uppercase;color:var(--terra);margin-bottom:12px}
.visit-detail address,.visit-detail p,.visit-detail a{font-style:normal;font-size:11px;line-height:1.9;color:var(--muted)}
.visit-detail address span{font-size:10px}
.visit-detail a{display:block;width:fit-content;margin-bottom:6px}
.visit-detail a:hover{color:var(--terra);text-decoration:underline;text-underline-offset:4px}
.visit-map{min-width:0;align-self:start;background:var(--paper);border:1px solid #d0c7ba}
.visit-map iframe{display:block;width:100%;height:350px;border:0;background:#e3dfd1}
.map-caption{padding:22px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.map-caption p{font-family:var(--serif);font-size:20px;color:var(--terra);line-height:1.35}
.map-caption strong{font-weight:400;font-style:italic}
.map-caption .button{font-size:10px;gap:15px;white-space:nowrap}
.map-profile-link{display:block;margin:0 22px 21px;font-size:9px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.footer-visit{grid-template-columns:1fr;gap:35px;padding:45px 0}.visit-details{max-width:600px}.visit-map iframe{height:330px}}
@media(max-width:650px){.footer-visit{padding:35px 0 40px;gap:30px}.footer-visit h2{font-size:38px}.visit-details{grid-template-columns:1fr;gap:22px;margin-top:27px}.visit-detail address,.visit-detail p,.visit-detail a{font-size:12px}.visit-detail h3{font-size:9px}.visit-map iframe{height:285px}.map-caption{padding:19px 17px;gap:12px}.map-caption p{font-size:18px}.map-caption .button{padding:10px 12px;font-size:9px;gap:10px}.map-profile-link{margin:0 17px 20px;font-size:10px}}
@media(max-width:370px){.map-caption{flex-wrap:wrap}.map-caption .button{width:100%}}
