/* Espaço Kivile — estilos sem dependências externas */
/* reset/base */
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-ivory);color:var(--color-ink);font-family:Montserrat,Arial,sans-serif;font-size:var(--step-0);line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Playfair Display",Georgia,serif;font-weight:600;line-height:1.08;color:var(--color-forest)}h1{font-size:clamp(2.6rem,7vw,5.6rem)}h2{font-size:clamp(2.1rem,4.8vw,4rem);max-width:16ch}h3{font-size:1.55rem}address{font-style:normal}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* tokens */
:root{--color-forest:#344325;--color-olive:#667A44;--color-champagne:#B59A69;--color-copper:#D7AE8B;--color-ivory:#F9F3E9;--color-mist:#E8ECE8;--color-ink:#262D1D;--color-white:#fff;--container:1200px;--header-height:5.2rem;--step-0:clamp(1rem,.97rem + .18vw,1.125rem);--space-1:.55rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:clamp(4rem,9vw,8rem);--radius:2px;--shadow:0 15px 35px rgba(38,45,29,.1);--transition:220ms ease}
/* utilities/layout */
.container{width:min(calc(100% - 2rem),var(--container));margin-inline:auto}.section{padding-block:var(--space-5)}.section--mist{background:var(--color-mist)}.eyebrow{margin-bottom:.8rem;color:var(--color-champagne);font-family:Montserrat,Arial,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.eyebrow--dark{color:var(--color-olive)}.section-intro{max-width:65ch}.button-row{display:flex;flex-wrap:wrap;gap:.8rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.25rem;border:1px solid var(--color-champagne);background:var(--color-champagne);color:var(--color-forest);font-size:.8rem;font-weight:600;letter-spacing:.07em;text-align:center;text-decoration:none;text-transform:uppercase;transition:transform var(--transition),background var(--transition)}.button--small{min-height:2.65rem;padding:.55rem .9rem;font-size:.67rem}.button--ghost{background:transparent;color:var(--color-ivory)}.button--outline{background:transparent;color:var(--color-forest)}.button--light{background:var(--color-ivory);border-color:var(--color-ivory);color:var(--color-forest);width:100%}.text-link,.event-card a{color:var(--color-olive);font-size:.8rem;font-weight:600;letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.skip-link{position:absolute;z-index:100;top:-5rem;left:1rem;padding:.7rem;background:var(--color-ivory);color:var(--color-forest)}.skip-link:focus{top:1rem}
.page-content{padding-top:10rem}
/* header/hero */
.site-header{position:fixed;z-index:20;inset:0 0 auto;color:var(--color-ivory);transition:background var(--transition),box-shadow var(--transition)}.site-header.is-scrolled{background:rgba(52,67,37,.96);box-shadow:0 1px 0 rgba(249,243,233,.25);backdrop-filter:blur(10px)}.header__inner{display:flex;min-height:var(--header-height);align-items:center;gap:1rem;justify-content:space-between}.brand{flex:0 0 9rem}.brand img{width:100%}.main-nav{display:none}.menu-toggle{display:grid;width:2.8rem;height:2.8rem;place-content:center;gap:4px;border:0;background:transparent;color:var(--color-ivory)}.menu-toggle span:not(.sr-only){display:block;width:1.4rem;height:1px;background:currentColor}.header__cta{display:none}.main-nav.is-open{position:absolute;top:100%;right:0;left:0;display:grid;padding:1rem;background:var(--color-forest);box-shadow:var(--shadow)}.main-nav a{padding:.7rem 1rem;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-decoration:none;text-transform:uppercase}.hero{position:relative;display:grid;min-height:88svh;overflow:hidden;place-items:end start;color:var(--color-ivory)}.hero__image,.hero__overlay{position:absolute;inset:0;width:100%;height:100%}.hero__image{object-fit:cover}.hero__overlay{background:linear-gradient(90deg,rgba(27,37,17,.8),rgba(27,37,17,.3))}.hero__content{position:relative;padding-block:calc(var(--header-height) + 5rem) 5rem}.hero h1{max-width:12ch;margin-bottom:1.25rem;color:var(--color-ivory)}.hero__lead{max-width:48ch;font-size:clamp(1rem,2vw,1.22rem)}.trust-bar{background:var(--color-forest);color:var(--color-ivory)}.trust-bar__inner{display:grid;padding-block:1.2rem;gap:.4rem}.trust-bar p{margin:0;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.trust-bar p::before{content:"✦";margin-right:.55rem;color:var(--color-champagne)}
/* sections */
.editorial-grid{display:grid;gap:var(--space-4);align-items:center}.about__copy p:not(.eyebrow){max-width:55ch}.photo-frame{margin:0}.photo-frame img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--color-mist)}.photo-frame figcaption{margin-top:.5rem;font-size:.72rem;color:#536049}.event-grid{display:grid;gap:1.25rem}.event-card{display:grid;background:var(--color-ivory)}.event-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.event-card div{padding:1.4rem}.event-card h3{margin-bottom:.5rem}.event-card p{font-size:.92rem}.structure-grid{display:grid;gap:1.2rem}.space-card{padding-bottom:1.1rem;border-bottom:1px solid rgba(181,154,105,.55)}.space-card__photos{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-bottom:1rem}.space-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--color-mist)}.space-card h3{margin-bottom:.35rem}.space-card p{margin-bottom:0;font-size:.9rem}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.gallery-item{padding:0;border:0;background:var(--color-mist);overflow:hidden}.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform var(--transition)}.gallery-item--tall{grid-row:span 2}.gallery-item--tall img{aspect-ratio:3/4}.gallery-item--wide{grid-column:span 2}.gallery-item--wide img{aspect-ratio:16/9}.benefit-grid{display:grid;gap:1rem}.benefit-grid article{padding:1.3rem 0;border-top:1px solid var(--color-champagne)}.benefit-grid span{font-family:"Playfair Display",Georgia,serif;color:var(--color-champagne);font-size:1.5rem}.benefit-grid h3{margin:.4rem 0}.faq__layout{display:grid;gap:2rem}.faq__list{border-top:1px solid var(--color-champagne)}details{border-bottom:1px solid rgba(102,122,68,.4)}summary{position:relative;padding:1rem 2rem 1rem 0;color:var(--color-forest);cursor:pointer;font-weight:600;list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:"+";position:absolute;right:.2rem;font-size:1.4rem;font-weight:400}details[open] summary::after{content:"−"}details p{max-width:65ch;padding-bottom:1rem;font-size:.93rem}.location address{margin:1.8rem 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.3rem,3vw,1.9rem);line-height:1.35}.map-note{margin-top:1rem;font-size:.78rem}.map-card{background:var(--color-mist)}.map-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.map-card iframe{width:100%;min-height:420px;border:0}.contact{background:var(--color-forest);color:var(--color-ivory)}.contact h2{color:var(--color-ivory)}.contact__grid{display:grid;gap:2rem}.contact-phone{display:inline-block;margin-top:1rem;font-family:"Playfair Display",Georgia,serif;font-size:1.8rem;color:var(--color-copper);text-decoration:none}.contact-form{display:grid;gap:1rem;padding:1.2rem;background:rgba(249,243,233,.08)}.field{display:grid;gap:.35rem}.field label,.date-field legend{font-size:.78rem;font-weight:600;letter-spacing:.05em}.field label span{font-weight:400}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(249,243,233,.6);border-radius:0;background:transparent;color:var(--color-ivory);padding:.7rem}.field option{color:var(--color-ink)}.date-field{display:grid;gap:.8rem;border:0;padding:0;margin:0}.check{display:flex;align-items:flex-start;gap:.6rem;font-size:.8rem}.check input{width:1rem;height:1rem;margin-top:.25rem;accent-color:var(--color-champagne)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-note{margin:0;font-size:.78rem}.form-status{font-size:.85rem}.form-status.is-error{padding:.8rem;border-left:3px solid var(--color-copper);background:rgba(215,174,139,.18)}
/* footer/lightbox/states/accessibility */
.site-footer{padding-top:3rem;background:#202a16;color:var(--color-ivory)}.footer__grid{display:grid;gap:2rem;padding-bottom:2rem}.footer__logo{width:10rem;margin-bottom:1rem}.site-footer h2{margin-bottom:.7rem;color:var(--color-champagne);font-family:Montserrat,Arial,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.site-footer nav,.site-footer div:not(.footer__grid):not(.footer__bottom){display:grid;align-content:start;gap:.4rem}.site-footer a{font-size:.9rem;text-decoration:none}.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-block:1.2rem;border-top:1px solid rgba(249,243,233,.25);font-size:.75rem}.footer__bottom p{margin:0}.whatsapp-float{position:fixed;z-index:10;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));display:none;align-items:center;gap:.45rem;padding:.7rem .9rem;background:var(--color-forest);box-shadow:var(--shadow);color:var(--color-ivory);font-size:.75rem;font-weight:600;text-decoration:none}.whatsapp-float.is-visible{display:flex}.lightbox{width:min(100% - 2rem,1000px);max-height:90svh;padding:3.5rem 2.5rem 2.5rem;border:0;background:var(--color-forest);color:var(--color-ivory)}.lightbox::backdrop{background:rgba(15,22,10,.84)}.lightbox img{width:100%;max-height:72svh;object-fit:contain}.lightbox button{border:0;background:transparent;color:var(--color-ivory);font-size:2rem}.lightbox__close{position:absolute;top:.5rem;right:.75rem}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav--prev{left:.4rem}.lightbox__nav--next{right:.4rem}.noscript{position:fixed;z-index:30;bottom:0;left:0;margin:0;padding:1rem;background:var(--color-copper);color:var(--color-forest)}.is-revealed{animation:reveal .45s ease both}@keyframes reveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}:focus-visible{outline:3px solid var(--color-copper);outline-offset:4px}@media (hover:hover){.button:hover{transform:translateY(-2px);background:var(--color-copper)}.button--ghost:hover{background:var(--color-ivory);color:var(--color-forest)}.gallery-item:hover img{transform:scale(1.03)}.event-card a:hover,.text-link:hover{color:var(--color-forest)}}
/* media queries */
@media (min-width:700px){.container{width:min(calc(100% - 4rem),var(--container))}.trust-bar__inner{grid-template-columns:repeat(4,1fr)}.trust-bar p{font-size:.68rem}.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(3rem,8vw,8rem)}.about__copy{padding-left:8.33%}.event-grid{grid-template-columns:repeat(2,1fr)}.structure-grid{grid-template-columns:repeat(2,1fr);column-gap:3rem}.benefit-grid{grid-template-columns:repeat(2,1fr);column-gap:3rem}.faq__layout{grid-template-columns:.8fr 1.2fr}.contact__grid{grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem)}.contact-form{padding:2rem}.footer__grid{grid-template-columns:2fr 1fr 1fr}.gallery-grid{grid-template-columns:repeat(4,1fr)}.gallery-item--wide{grid-column:span 2}}
@media (min-width:1050px){.menu-toggle{display:none}.main-nav{display:flex;align-items:center;gap:1.1rem}.main-nav a{padding:.4rem 0;font-size:.65rem}.header__cta{display:inline-flex}.brand{flex-basis:10.5rem}.event-grid{grid-template-columns:repeat(4,1fr)}.structure-grid{grid-template-columns:repeat(3,1fr)}.benefit-grid{grid-template-columns:repeat(4,1fr)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media print{.site-header,.whatsapp-float,.button,.lightbox{display:none}.section{padding-block:1.5rem}.contact{background:white;color:black}.contact h2{color:black}}

/* Direção visual renovada: mais calor, contraste e presença editorial. */
:root{--color-forest:#2f4a2e;--color-olive:#7c9473;--color-champagne:#b4915e;--color-copper:#c97c4b;--color-ivory:#f7f1e4;--color-mist:#fbf8f1;--color-ink:#2a2a28;--marrom-taupe:#6b5a46;--serif:"Playfair Display",Georgia,serif;--sans:Jost,Arial,sans-serif;--radius:18px;--shadow:0 20px 45px rgba(47,74,46,.13)}
body{font-family:var(--sans);background:var(--color-ivory)}h1,h2,h3{font-family:var(--serif);font-weight:400}.section{position:relative}.eyebrow{font-family:var(--sans);font-weight:600;color:var(--color-copper)}.eyebrow--dark{color:var(--color-copper)}.button{border-radius:999px;padding:.85rem 1.35rem;border-color:var(--color-champagne);background:var(--color-champagne);color:var(--color-white);font-family:var(--sans);box-shadow:0 8px 22px rgba(89,65,33,.19)}.button--ghost{border-color:rgba(255,255,255,.85);background:transparent;box-shadow:none}.button--outline{border-color:var(--color-champagne);color:var(--color-forest);box-shadow:none}.site-header.is-scrolled{background:rgba(247,241,228,.96);color:var(--color-forest);box-shadow:0 4px 22px rgba(42,42,40,.08)}.site-header.is-scrolled .brand img{filter:brightness(.36) sepia(.35) saturate(.8)}.main-nav.is-open{background:var(--color-ivory);color:var(--color-forest)}.hero{min-height:100svh;align-items:center}.hero__image{object-position:center}.hero__overlay{background:linear-gradient(90deg,rgba(19,38,25,.82),rgba(20,41,26,.42) 58%,rgba(20,41,26,.08))}.hero__content{padding-top:11rem;padding-bottom:5rem}.hero h1{max-width:11ch;font-size:clamp(3.15rem,7vw,6.5rem);letter-spacing:-.045em}.hero__lead{margin-bottom:.5rem;font-family:var(--serif);font-size:clamp(1.22rem,2.3vw,1.75rem);line-height:1.4}.hero__support{max-width:50ch;margin-bottom:2rem;font-size:1rem}.hero__cue{position:absolute;bottom:1.8rem;left:1rem;color:var(--color-ivory);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}.hero__cue span{display:block;margin-top:.3rem;font-size:1.4rem}.trust-bar{background:var(--color-forest)}.trust-bar__inner{padding-block:1.35rem}.trust-bar p::before{color:var(--color-copper)}.stats-strip{position:relative;z-index:2;margin-top:-1px;background:var(--color-mist)}.stats-strip__inner{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(180,145,94,.3);border-inline:1px solid rgba(180,145,94,.3)}.stats-strip article{padding:1.7rem 1rem;background:var(--color-mist);text-align:center}.stats-strip strong{display:block;color:var(--color-forest);font-family:var(--serif);font-size:clamp(2rem,5vw,3.8rem);line-height:1}.stats-strip span{display:block;margin-top:.45rem;color:var(--marrom-taupe);font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.about{background:radial-gradient(circle at 4% 16%,rgba(201,124,75,.11) 0 1px,transparent 1.5px) 0 0/24px 24px}.photo-frame{position:relative;margin-right:clamp(0rem,4vw,3rem)}.photo-frame::after{position:absolute;z-index:-1;right:-1.5rem;bottom:-1.5rem;width:72%;height:55%;border:1px solid var(--color-champagne);border-radius:0 0 120px 0;content:""}.photo-frame img{border-radius:170px 170px 14px 14px;box-shadow:var(--shadow);object-fit:cover;object-position:70% center}.photo-frame figcaption{color:var(--marrom-taupe);font-style:italic}.event-card,.space-card{border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 24px rgba(47,74,46,.07)}.event-card{background:var(--color-white)}.event-card div{padding:1.5rem}.event-card h3,.space-card h3{color:var(--color-forest)}.structure{background:var(--color-forest);color:#eef0e9}.structure h2,.structure h3,.structure .section-intro{color:var(--color-ivory)}.structure .eyebrow{color:#e3c992}.structure-grid{gap:1.5rem}.space-card{padding:0;background:rgba(255,255,255,.06);border-bottom:0}.space-card h3,.space-card p{margin-inline:1.15rem}.space-card p{padding-bottom:1.25rem;color:#dde3d9}.space-card__photos{margin:0 0 1.15rem;gap:2px}.space-card img{filter:saturate(.85) contrast(.98)}.gallery{background:linear-gradient(180deg,var(--color-mist) 0 86%,var(--color-forest) 86%)}.gallery .section-intro{color:var(--marrom-taupe)}.gallery-grid{padding-bottom:3rem}.gallery-item{border-radius:var(--radius);box-shadow:var(--shadow)}.gallery-item img{background:var(--color-forest)}.experience{background:var(--color-forest);color:var(--color-ivory)}.experience h2{color:var(--color-ivory)}.experience .eyebrow{color:#e3c992}.benefit-grid article{border-top-color:var(--color-champagne)}.benefit-grid h3{color:var(--color-ivory)}.benefit-grid span{color:var(--color-copper)}.section--mist{background:var(--color-mist)}.faq details{border-color:rgba(180,145,94,.65)}.location{background:linear-gradient(110deg,#f7f1e4 0 55%,#e2e8de 55%)}.map-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.contact{background:linear-gradient(135deg,#263d25,#42603f)}.contact-form{border-radius:var(--radius);box-shadow:var(--shadow);background:rgba(247,241,228,.1)}.site-footer{background:#23391f}.whatsapp-float{display:flex;width:3.7rem;height:3.7rem;justify-content:center;border-radius:50%;background:#2faf5c;color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.25)}.whatsapp-float span:last-child{display:none}.whatsapp-float span:first-child{font-size:1.7rem}.whatsapp-float.is-visible{display:flex}@media (hover:hover){.button:hover{background:#987247;color:#fff}.button--ghost:hover{background:#fff;color:var(--color-forest)}.space-card:hover{transform:translateY(-4px);transition:transform var(--transition)}.event-card:hover{transform:translateY(-4px);transition:transform var(--transition)}}
@media (min-width:700px){.stats-strip__inner{grid-template-columns:repeat(4,1fr)}.stats-strip article{padding:2rem 1.2rem}.hero__cue{left:calc((100vw - min(100% - 4rem,var(--container)))/2)}.about__copy{padding-left:0}.location{background:linear-gradient(110deg,#f7f1e4 0 47%,#e2e8de 47%)}}
.contact-details{display:grid;gap:1rem;margin:2rem 0 0;padding:0;list-style:none}.contact-details li{display:grid;grid-template-columns:2.3rem 1fr;gap:.65rem;align-items:start}.contact-details li>span{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid rgba(247,241,228,.55);border-radius:50%;color:#e3c992}.contact-details p{margin:0;font-size:.84rem;line-height:1.45}.contact-details strong{display:block;margin-bottom:.12rem;color:#e3c992;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.event-card:nth-child(1) img{object-position:77% center}.event-card:nth-child(2) img{object-position:68% center}.event-card:nth-child(3) img{object-position:24% center}.event-card:nth-child(4) img{object-position:90% center}.gallery-item:nth-child(1) img{object-position:83% center}.gallery-item:nth-child(2) img{object-position:12% center}.gallery-item:nth-child(3) img{object-position:61% center}.gallery-item:nth-child(4) img{object-position:97% center}.gallery-item:nth-child(5) img{object-position:29% center}.gallery-item:nth-child(6) img{object-position:72% center}.gallery-item:nth-child(7) img{object-position:42% center}.gallery-item:nth-child(8) img{object-position:center}
.brand{flex:0 0 auto;padding:0;background:transparent}.brand img{width:auto;height:5.1rem;filter:none}.site-header{background:var(--color-ivory);color:var(--color-forest)}.site-header.is-scrolled{background:var(--color-ivory)}.site-header:not(.is-scrolled) .main-nav{color:var(--color-forest)}.footer__logo{width:auto;height:7rem;margin-bottom:1rem;padding:0;background:transparent;border-radius:0}@media (min-width:700px){.brand img{height:5.5rem}}
.main-nav a{position:relative;padding:.5rem .68rem;font-size:.74rem;border-radius:999px;transition:background var(--transition),color var(--transition),transform var(--transition)}.main-nav a::after{display:none}@media (hover:hover){.main-nav a:hover{background:var(--color-forest);color:var(--color-ivory);transform:translateY(-1px)}}
.header__inner{padding-block:.45rem}
.whatsapp-float svg{width:1.65rem;height:1.65rem;fill:currentColor}.contact-details svg{width:1rem;height:1rem;fill:currentColor}
.contact-details{gap:1.55rem}.contact-details li{grid-template-columns:3.5rem minmax(0,1fr);gap:1rem;align-items:start;min-height:3.5rem}.contact-details li>span{width:3.1rem;height:3.1rem;border-color:rgba(234,211,155,.72);color:#ead39b}.contact-details svg{width:1.42rem;height:1.42rem}.contact-details p{padding-top:.12rem;line-height:1.5}.contact-details strong{margin-bottom:.18rem}
.contact-details li{display:block}.contact-details__link{display:grid;grid-template-columns:3.5rem minmax(0,1fr);gap:1rem;align-items:start;color:inherit;text-decoration:none}.contact-details__link>span{display:grid;width:3.1rem;height:3.1rem;place-items:center;border:1px solid rgba(234,211,155,.72);border-radius:50%;color:#ead39b;transition:background var(--transition),color var(--transition),transform var(--transition)}@media (hover:hover){.contact-details__link:hover>span{background:#ead39b;color:var(--color-forest);transform:translateY(-2px)}.contact-details__link:hover strong{color:#fff1c7}}
.cookie-banner{position:fixed;z-index:80;right:1rem;bottom:1rem;left:1rem;padding:1rem;background:rgba(35,57,31,.98);box-shadow:0 18px 45px rgba(0,0,0,.28);color:var(--color-ivory)}.cookie-banner__content{display:grid;gap:1rem;max-width:1120px;margin:auto}.cookie-banner p{max-width:78ch;margin:0;font-size:.82rem;line-height:1.55}.cookie-banner a{color:#ead39b}.cookie-banner__actions{display:flex;flex-wrap:wrap;gap:.65rem}.cookie-banner .button{min-width:9rem}.cookie-banner .button--outline{border-color:rgba(247,241,228,.7);color:var(--color-ivory)}@media (min-width:800px){.cookie-banner{right:1.5rem;bottom:1.5rem;left:1.5rem}.cookie-banner__content{grid-template-columns:1fr auto;align-items:center}.cookie-banner__actions{justify-content:flex-end}}
.policy{max-width:860px}.policy h1{max-width:18ch}.policy h2{max-width:none;margin-top:2.6rem;font-size:clamp(1.55rem,3vw,2.2rem)}.policy p{max-width:74ch;color:var(--marrom-taupe)}.policy a{color:var(--color-forest);font-weight:600}
.footer__legal{display:flex;flex-wrap:wrap;gap:.85rem}.footer__legal a,.cookie-banner p button{border:0;padding:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cookie-banner p button{color:#ead39b}.policy-page .page-content{padding-top:clamp(3rem,8vw,6rem)}.policy-modal{position:relative;width:min(94vw,860px);height:min(84svh,720px);padding:0;border:1px solid rgba(180,145,94,.55);border-radius:14px;background:var(--color-ivory);box-shadow:0 24px 65px rgba(20,30,18,.42);overflow:hidden}.policy-modal::backdrop{background:rgba(19,35,19,.72);backdrop-filter:blur(4px)}.policy-modal__close{position:absolute;z-index:1;top:.7rem;right:1.65rem;display:grid;width:2rem;height:2rem;place-items:center;border:0;border-radius:50%;background:var(--color-forest);box-shadow:0 3px 12px rgba(20,30,18,.22);color:var(--color-ivory);font-size:1.35rem;line-height:1}.policy-modal iframe{display:block;width:100%;height:100%;border:0;background:var(--color-ivory)}

/* Conversão: contato e agendamento sempre próximos do conteúdo que gera interesse. */
.visit-cta{padding-block:clamp(3.5rem,7vw,6rem);background:linear-gradient(120deg,#c97c4b,#a75f36);color:var(--color-ivory)}
.visit-cta__inner{display:grid;gap:2rem;align-items:center}.visit-cta h2{max-width:15ch;margin-bottom:.8rem;color:var(--color-ivory)}.visit-cta p:not(.eyebrow){max-width:54ch;margin-bottom:0}.visit-cta .eyebrow{color:#fff0cc}.visit-cta__actions{display:grid;gap:.85rem;align-content:center}.visit-cta .button{width:100%;border-color:var(--color-ivory);box-shadow:none}.visit-cta__phone{justify-self:center;color:var(--color-ivory);font-size:.84rem;font-weight:600;text-underline-offset:4px}.whatsapp-float{z-index:30}.whatsapp-float::after{position:absolute;right:0;bottom:calc(100% + .65rem);width:max-content;max-width:12rem;padding:.45rem .65rem;border-radius:8px;background:var(--color-forest);box-shadow:0 6px 18px rgba(0,0,0,.18);color:#fff;font-family:var(--sans);font-size:.7rem;font-weight:600;content:"Chame no WhatsApp!";opacity:1;pointer-events:none;transform:none;animation:whatsapp-nudge 3.8s ease-in-out infinite}@keyframes whatsapp-nudge{0%,68%,100%{transform:translateX(0) scale(1)}72%{transform:translateX(-5px) scale(1.04)}76%{transform:translateX(5px) scale(1.04)}80%{transform:translateX(-4px) scale(1.02)}84%{transform:translateX(3px) scale(1.02)}88%{transform:translateX(0) scale(1)}}
@media (min-width:700px){.visit-cta__inner{grid-template-columns:minmax(0,1fr) 18rem;gap:4rem}.visit-cta__actions{justify-items:stretch}.visit-cta__phone{justify-self:center}}
@media (min-width:1050px){.contact-form .check:has(input[name="consent"]){flex-wrap:nowrap;white-space:nowrap;font-size:.62rem;letter-spacing:-.02em}.contact-form .check:has(input[name="consent"]) input{flex:0 0 auto}}
@media (prefers-reduced-motion:reduce){.whatsapp-float::after{transition:none;animation:none}}

.site-footer .footer__bottom .footer__legal{display:flex!important;flex-wrap:nowrap;align-items:center;gap:0;white-space:nowrap}.footer__legal a{display:inline-flex;align-items:center}.footer__legal a+a::before{margin-inline:.55rem;color:rgba(247,241,228,.62);content:"|"}

.lightbox[open]{height:min(84svh,720px);display:grid;grid-template-rows:minmax(0,1fr) auto;gap:1rem}.lightbox>form{display:contents}.lightbox img{width:100%;height:100%;min-height:0;max-height:none;object-fit:contain}.lightbox__description{max-width:68ch;min-height:1.5em;margin:0 auto;color:#ead39b;font-family:var(--serif);font-size:clamp(.92rem,1.8vw,1.08rem);font-style:italic;line-height:1.45;text-align:center}.lightbox__nav{z-index:1}.lightbox__close{z-index:2}

.space-photo-trigger{display:block;min-width:0;padding:0;border:0;background:transparent;overflow:hidden;text-align:inherit;line-height:0;-webkit-appearance:none;appearance:none}.space-photo-trigger picture{display:block}.space-photo-trigger img{display:block;transition:transform var(--transition)}@media (hover:hover){.space-photo-trigger:hover img{transform:scale(1.035)}}

.event-photo-trigger{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden;text-align:inherit;line-height:0;-webkit-appearance:none;appearance:none}.event-photo-trigger picture{display:block}.event-photo-trigger img{display:block;transition:transform var(--transition)}@media (hover:hover){.event-photo-trigger:hover img{transform:scale(1.035)}}

/* As fotos preservam a proporção natural dos cards, sem alturas impostas ou faixas vazias. */
#eventos .event-photo-trigger{align-self:start;cursor:zoom-in}#eventos .event-photo-trigger picture{display:block}#eventos .event-photo-trigger img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
#eventos .event-card{grid-template-rows:auto 1fr}#eventos .event-card>div{display:flex;flex-direction:column;align-items:flex-start}#eventos .event-card a{margin-top:auto}

.gallery-grid{grid-auto-rows:clamp(8rem,18vw,16rem)}.gallery-item{display:grid;width:100%;height:100%;place-items:stretch;line-height:0;-webkit-appearance:none;appearance:none}.gallery-item picture{display:block;width:100%;height:100%}.gallery-item img,.gallery-item--tall img,.gallery-item--wide img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}

section[id]{scroll-margin-top:8rem}

/* Rolagem nativa, estável e sem efeitos caros de composição. */
html{scroll-behavior:auto}.site-header.is-scrolled{backdrop-filter:none}.is-revealed{animation:none}

/* Formulário: bloco de data compacto, premium e integrado ao fundo. */
.date-field{display:grid;gap:.85rem}.date-field__line{display:grid;grid-template-columns:max-content max-content minmax(13rem,16rem);align-items:center;justify-content:start;gap:.8rem;padding-bottom:.9rem;border-bottom:1px solid rgba(247,241,228,.18)}.date-field__title,.date-field__line label{white-space:nowrap;font-size:.72rem;font-weight:600;letter-spacing:.06em}.date-field__title{color:#ead39b;text-transform:uppercase}.date-field__line label{color:rgba(247,241,228,.82)}.date-field__line input{width:100%;min-width:0;padding:.62rem .75rem;border:1px solid rgba(234,211,155,.62);border-radius:2px;background:rgba(247,241,228,.06);color:var(--color-ivory);color-scheme:dark;font-size:.85rem;line-height:1.2;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}.date-field__line input:focus{border-color:#ead39b;background:rgba(247,241,228,.1);box-shadow:0 0 0 3px rgba(234,211,155,.12);outline:0}.date-field__line input::-webkit-calendar-picker-indicator{opacity:.78;cursor:pointer}.date-field>.check{align-items:center;gap:.65rem;color:rgba(247,241,228,.84);font-size:.75rem}.date-field>.check input{flex:0 0 1rem;width:1rem;height:1rem;margin:0;border:1px solid rgba(234,211,155,.72);border-radius:2px;background:transparent;box-shadow:none;accent-color:#b89459}
@media (max-width:480px){.date-field__line{grid-template-columns:max-content max-content minmax(0,1fr);gap:.38rem;font-size:.68rem;letter-spacing:-.025em}.date-field__title,.date-field__line label{font-size:.66rem;letter-spacing:-.01em}.date-field__line input{width:100%;padding:.55rem .35rem;font-size:.75rem}}

/* Formulário de contato: composição editorial, minimalista e responsiva. */
.contact-form{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"status status" "name phone" "event guests" "date date" "message message" "consent consent" "submit submit" "note note";gap:1.35rem 1.5rem;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid rgba(234,211,155,.2);border-radius:18px;background:linear-gradient(145deg,rgba(247,241,228,.085),rgba(247,241,228,.035));box-shadow:0 24px 60px rgba(12,27,13,.16)}.contact-form>.form-status{grid-area:status}.contact-form>.field:has(#name){grid-area:name}.contact-form>.field:has(#phone){grid-area:phone}.contact-form>.field:has(#event-type){grid-area:event}.contact-form>.field:has(#guests){grid-area:guests}.contact-form>.date-field{grid-area:date}.contact-form>.field:has(#message){grid-area:message}.contact-form>.check:has(input[name="consent"]){grid-area:consent}.contact-form>button[type="submit"]{grid-area:submit}.contact-form>.form-note{grid-area:note}.contact-form .field{gap:.45rem}.contact-form .field label,.contact-form .date-field legend{color:#ead39b;font-size:.67rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.contact-form .field label span{color:rgba(247,241,228,.58);font-size:.62rem;letter-spacing:.04em;text-transform:none}.contact-form .field input,.contact-form .field select{min-height:2.8rem;padding:.62rem .1rem;border:0;border-bottom:1px solid rgba(247,241,228,.38);border-radius:0;background:transparent;color:var(--color-ivory);font-size:.9rem;transition:border-color var(--transition),background var(--transition)}.contact-form .field select{padding-right:1.8rem;cursor:pointer}.contact-form .field textarea{min-height:8rem;padding:.85rem 1rem;border:1px solid rgba(247,241,228,.3);border-radius:6px;background:rgba(247,241,228,.035);color:var(--color-ivory);font-size:.9rem;line-height:1.55;resize:vertical;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}.contact-form .field input:focus,.contact-form .field select:focus{border-bottom-color:#ead39b;background:linear-gradient(180deg,transparent,rgba(234,211,155,.055));outline:0}.contact-form .field textarea:focus{border-color:#ead39b;background:rgba(247,241,228,.06);box-shadow:0 0 0 3px rgba(234,211,155,.1);outline:0}.contact-form .date-field{padding-top:.1rem}.contact-form .date-field__line{grid-template-columns:max-content max-content minmax(12rem,15rem);padding-bottom:.8rem}.contact-form>.check:has(input[name="consent"]){align-items:flex-start;gap:.7rem;margin-top:.1rem;color:rgba(247,241,228,.78);font-size:.7rem;line-height:1.55;white-space:normal;letter-spacing:0}.contact-form>.check:has(input[name="consent"]) input{flex:0 0 1rem;width:1rem;height:1rem;margin-top:.15rem}.contact-form>.check a{color:#ead39b;text-underline-offset:3px}.contact-form .button--light{width:100%;min-height:3.25rem;margin-top:.1rem;border:1px solid #c4a164;background:#c4a164;box-shadow:none;color:#fff;font-size:.74rem;letter-spacing:.11em}.contact-form .form-note{text-align:center;color:rgba(247,241,228,.6);font-size:.68rem}.contact-form .form-note a{color:#ead39b;text-underline-offset:3px}.contact-form .form-status:empty{display:none}
@media (hover:hover){.contact-form .button--light:hover{border-color:#d5b777;background:#d5b777;transform:translateY(-1px)}}
@media (max-width:699px){.contact-form{grid-template-columns:1fr;grid-template-areas:"status" "name" "phone" "event" "guests" "date" "message" "consent" "submit" "note";gap:1.15rem;padding:1.3rem;border-radius:14px}.contact-form .date-field__line{grid-template-columns:max-content max-content minmax(0,1fr);gap:.4rem}.contact-form .date-field__title,.contact-form .date-field__line label{font-size:.62rem;letter-spacing:0}.contact-form .date-field__line input{padding-inline:.35rem;font-size:.74rem}.contact-form .field textarea{min-height:7rem}}

.contact-form>.check:has(input[name="consent"]) span{display:block;min-width:0}.contact-form .check input[type="checkbox"]{appearance:none;border:1px solid rgba(234,211,155,.72);border-radius:2px;background:rgba(247,241,228,.035);cursor:pointer}.contact-form .check input[type="checkbox"]:checked{border-color:#d5b777;background:#d5b777;box-shadow:inset 0 0 0 3px #496346}.contact-form .check input[type="checkbox"]:focus-visible{outline:2px solid #ead39b;outline-offset:3px}
