/* Revisão pontual fora da abertura cinematográfica. */
.language-picker{display:flex;align-items:center;margin-left:auto}.language-picker select{font:inherit;font-size:.78rem;color:#174c3c;background:transparent;border:1px solid #c9cbbf;border-radius:3px;padding:.45rem .35rem;cursor:pointer}.header-inner{gap:clamp(.5rem,1.3vw,1.5rem)}.header nav{gap:clamp(.6rem,1.15vw,1.5rem)}
.serenata-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center;background:#f2f0e7}.serenata-feature-photo{overflow:hidden;aspect-ratio:1.12}.serenata-feature-photo img{display:block;width:100%;height:100%;object-fit:cover}.serenata-feature-copy{max-width:36rem}.serenata-feature h2{font-size:clamp(2.2rem,4.4vw,4.8rem);line-height:1.08;margin:.8rem 0 1.4rem}.serenata-feature-copy>p{line-height:1.7}.serenata-feature-note{font-size:.9rem;color:#56675c}.serenata-feature .button{margin-top:1.1rem}.institutional-footer{display:grid;grid-template-columns:150px 1fr 1fr;gap:2rem;padding:2.5rem 0;border-top:1px solid #ffffff25;align-items:start}.institutional-footer>img{width:130px;height:auto;background:#fff;padding:.55rem}.institutional-footer p{font-size:.88rem;line-height:1.6;max-width:35rem}.institutional-footer a{line-height:1.7}.institutional-footer .text-button{color:inherit}.package-reference{border-left:3px solid #b29c63;padding:1rem 1.4rem;background:#f5f2e8}
@media(max-width:1100px){.header-cta{display:none}.language-picker{margin-left:auto}.header nav{gap:.8rem}}
@media(max-width:760px){.serenata-feature{grid-template-columns:1fr;gap:1.5rem}.serenata-feature-photo{aspect-ratio:1.25}.institutional-footer{grid-template-columns:1fr;gap:1.3rem}.language-picker{margin-left:auto;margin-right:.5rem}.serenata-feature h2{font-size:2.5rem}.header-inner{gap:.5rem}}

/* Country flags accompany language names, including on narrow screens. */
.language-picker{position:relative;flex-shrink:0}.language-picker summary{display:flex;align-items:center;gap:.4rem;list-style:none;font:inherit;font-size:.78rem;color:#174c3c;border:1px solid #c9cbbf;border-radius:3px;padding:.45rem .5rem;cursor:pointer}.language-picker summary::-webkit-details-marker{display:none}.language-picker svg{display:block;flex-shrink:0;border-radius:2px;box-shadow:0 0 0 1px #00000018}.language-picker .language-options{position:absolute;right:0;top:calc(100% + .5rem);z-index:200;min-width:11rem;padding:.35rem;background:#fff;border:1px solid #d5d7cf;border-radius:5px;box-shadow:0 8px 24px #173e3226}.language-options a{display:flex;align-items:center;gap:.7rem;padding:.65rem .75rem;color:#173e32;text-decoration:none;font-size:.88rem;white-space:nowrap}.language-options a:hover,.language-options a:focus-visible,.language-options a[aria-current=true]{background:#eef2ec}.language-picker summary:focus-visible,.language-options a:focus-visible{outline:2px solid #a98236;outline-offset:3px}

.language-picker svg{stroke:none;stroke-width:0}.language-picker svg [stroke]{stroke-width:.8}

/* Compact language control, retaining its current header position and touch target. */
.language-picker summary{gap:.3rem;font-size:.69rem;min-height:40px;padding:.2rem .3rem;border-color:transparent;border-radius:3px}
.language-picker summary>svg{width:18px;height:12px;border-radius:1px}
.language-picker summary:hover,.language-picker[open] summary{background:#173e3208;border-color:#173e3220}
.language-picker .language-options{min-width:9rem;padding:.25rem}
.language-options a{gap:.55rem;min-height:42px;padding:.45rem .6rem;font-size:.8rem}
.language-options a>svg{width:20px;height:13.33px}

/* Novembro: oferta, leitura, mapa e acervo. A abertura permanece independente. */
.offer-line{margin:0;text-align:center;padding:1rem 5%;background:#e9ede3;color:#214d3f;font-size:clamp(.95rem,1.8vw,1.13rem)}
.team-compact,.how.section,.faq-compact,.dmc-compact{padding-block:clamp(1.6rem,4vw,3.2rem)}
.team-compact h2,.how.section h2,.faq-compact h2,.dmc-compact h2{font-size:clamp(1.9rem,3.3vw,3.1rem)}
.team-compact .team-heading{margin-bottom:.6rem}
.team-compact .team-card{padding:.7rem 0}
.team-compact .team-number{display:none}
.team-compact .team-card h3{font-size:1.35rem}
.faq-compact details{padding-block:.65rem}
.how.section .steps{margin-block:.65rem}
.dmc-compact{min-height:0}
footer .footer-top{padding-block:1.4rem;gap:1rem}
footer .institutional-footer{padding-block:.8rem;gap:1rem}
footer .institutional-footer img{width:84px;height:auto}
footer .footer-bottom{padding-block:.7rem}
.archive-film{border-radius:.8rem;overflow:hidden}
.archive-film video{aspect-ratio:4/5;object-fit:contain;background:#171e18;width:100%;display:block}
.archive-film figcaption{padding:.75rem 1rem}
.package-reference td small{display:block;line-height:1.3;font-size:.72rem;color:#415e51}
.package-reference .price-table{min-width:0}
.heritage{background:#f4f0e4;padding-block:clamp(2.2rem,6vw,5rem)}
.heritage-heading{max-width:46rem;margin-bottom:1.2rem}
.heritage-heading h2{font-size:clamp(2rem,4vw,3.4rem);margin:.3rem 0}
.heritage-map{height:clamp(205px,28vw,285px);position:relative;isolation:isolate;border:1px solid #d9cfb7;border-radius:.85rem;overflow:hidden;background:#f3ecda}
.heritage-map svg{width:100%;height:100%;position:absolute;inset:0;z-index:-1}
.heritage-pin{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:grid;place-items:center;background:#174638;color:white;border:2px solid white;width:44px;height:44px;border-radius:50%;text-decoration:none;font-weight:700}
.heritage-pin:hover{background:#285d48}
.heritage-pin:focus-visible,.heritage-actions :focus-visible{outline:3px solid #83431d;outline-offset:3px}
.heritage-legend,.heritage-river{position:absolute;padding:.2rem .55rem;border-radius:.3rem;background:#fff8e8;color:#36584a;font-size:.78rem}
.heritage-legend{bottom:.65rem;right:.65rem}.heritage-river{bottom:.65rem;left:.65rem}
.heritage-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}
.heritage-card{background:#fffdf5;border:1px solid #e3dac5;border-radius:.7rem;overflow:hidden;scroll-margin-top:5.6rem}
.heritage-card:target{outline:2px solid #44634b;outline-offset:2px}
.heritage-card img{display:block;width:100%;height:auto;aspect-ratio:1.55;object-fit:cover}
.heritage-card>div{padding:1rem}
.heritage-card h3{font:1.45rem/1.1 var(--serif);margin:.25rem 0 .6rem}
.heritage-card p{font-size:.9rem;margin:.3rem 0}
.heritage-actions{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin-top:.6rem}
.heritage-actions>*{min-height:44px;display:inline-flex;align-items:center;font-size:.84rem;color:#174638}
@media(max-width:920px){.heritage-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.heritage-cards{grid-template-columns:1fr}.heritage-card{display:grid;grid-template-columns:30% minmax(0,1fr)}.heritage-card img{height:100%}.heritage-card>div{padding:.75rem}.package-reference td,.package-reference th{padding-inline:.4rem}}

/* Cartografia do Centro Histórico. O mapa não executa scripts nem carrega tiles. */
.heritage-layout{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);gap:clamp(1.1rem,3vw,2.6rem);align-items:start}
.heritage-cartography{margin:0;min-width:0}
.heritage-cartography .heritage-map{height:auto;aspect-ratio:800/750;background:#f4f0e5}
.heritage-base{display:block;width:100%;height:100%;object-fit:contain}
.heritage-cartography figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1.1rem;padding:.55rem .1rem;color:#465849;font-size:.74rem}
.heritage-cartography figcaption a{color:#254d3c}
.heritage-layout .heritage-cards{margin:0;grid-template-columns:repeat(2,minmax(0,1fr))}
.heritage-layout .heritage-card{min-width:0;display:block}
.heritage-layout .heritage-card img{height:auto;aspect-ratio:1.65;object-position:center}
.heritage-layout #patrimonio-2 img{object-position:center 57%}
.heritage-layout #patrimonio-4 img{object-position:center 38%}
.heritage-layout .heritage-card .eyebrow{color:#5a5f48}
.heritage-layout .heritage-card>div{padding:.7rem .85rem}
.heritage-layout .heritage-actions{gap:.1rem .65rem}
@media(max-width:900px){.heritage-layout{grid-template-columns:1fr}.heritage-cartography{width:min(100%,680px);margin-inline:auto}}
@media(max-width:480px){.heritage-layout .heritage-cards{grid-template-columns:1fr}.heritage-layout .heritage-card{display:grid;grid-template-columns:34% minmax(0,1fr)}.heritage-layout .heritage-card img{height:100%;aspect-ratio:auto}.heritage-cartography .heritage-pin{width:38px;height:38px;font-size:.83rem}}

/* Homepage: one path from discovery to booking. */
[data-home-revision] #experiencias {padding-block:clamp(2rem,5vw,4.5rem)}
.experiences .catalog-feature{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(1.2rem,3vw,2.8rem);padding:clamp(.85rem,2vw,1.6rem);margin:0 0 1.7rem;border:1px solid #ddd7c6;border-radius:.75rem}
.experiences .catalog-feature[hidden]{display:none}
.catalog-feature .serenata-feature-photo{aspect-ratio:1.6;border-radius:.45rem}
.catalog-feature h2{font-size:clamp(1.7rem,3vw,2.6rem);margin:.25rem 0 .5rem}
.catalog-feature .serenata-feature-copy>p{margin-block:.35rem;line-height:1.45}
.catalog-feature .button{margin-top:.6rem}
.how-cutoff a{color:inherit;text-underline-offset:.2em}
.section-footnote a{color:inherit;text-underline-offset:.2em}
[data-home-revision] .stays.section,[data-home-revision] .business-note.section{padding-block:clamp(1.5rem,4vw,3rem)}
.portal-disclosure{border-block:1px solid #d7d4c5;margin:1rem 0;padding:.2rem 0}
.portal-disclosure>summary{display:flex;justify-content:space-between;align-items:center;gap:.75rem;min-height:44px;cursor:pointer;font-weight:600;color:#184638;list-style:none}
.portal-disclosure>summary::-webkit-details-marker{display:none}
.portal-disclosure[open]>summary span{transform:rotate(45deg)}
.portal-disclosure .stay-grid,.portal-disclosure .map-preview{margin-block:1rem}
.route-reference.section{padding-block:0 1.5rem}
.route-reference .map-preview{display:block;max-width:min(100%,52rem)}
.route-reference .map-preview img{max-width:100%;height:auto}
.route-reference details>a{display:inline-block;margin-bottom:1rem;color:#184638;text-underline-offset:.2em}
.business-note{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#eeede4;border-top:1px solid #dedaca}
.business-note h2{font-size:clamp(1.4rem,2.4vw,2rem);margin:0 0 .2rem}
.business-note p{margin:0}
.archive-video-link{margin-top:.55rem;min-height:44px}
[data-home-revision] #como-reservar,[data-home-revision] #mapa-centro-historico,[data-home-revision] #caminho-de-cora{scroll-margin-top:6rem}
@media(max-width:600px){
 .experiences .catalog-feature{grid-template-columns:1fr;gap:.7rem;padding:.75rem;margin-bottom:1rem}
 .catalog-feature .serenata-feature-photo{aspect-ratio:2.05}
 .catalog-feature .button{margin-top:.35rem}
 .business-note{align-items:flex-start;flex-direction:column}
}

/* Compact language control; keep a 44px touch target. */
.header .language-picker summary{gap:.24rem;padding:.14rem .24rem;font-size:.66rem;min-height:44px;justify-content:center}
.header .language-picker summary>svg{width:15px;height:10px}
@media(max-width:760px){
 .header .language-picker{margin-right:0}
 .header .language-picker summary{min-width:44px}
 .header .language-picker .language-options{right:0;margin:0;max-width:calc(100vw - 2rem)}
}

/* Serra: marfim e serifa romana em continuidade com os títulos do vídeo. */
.goyazes-immersive .stage .mountain-copy h2 em{color:inherit;font-style:normal}
@media(max-width:760px){.goyazes-immersive .stage .mountain-copy h2{font-size:clamp(1.85rem,7.6vw,2.65rem)}}

/* Action labels leave room for focus and touch. */
.experience-card .card-bottom [data-detail]{min-height:44px;text-underline-offset:.23em}
.online-price-list .online-price strong{white-space:nowrap}
.entrance-note{line-height:1.45}
@media(max-width:600px){
 .detail-bottom{flex-wrap:wrap;gap:.55rem}
 .detail-bottom .button,.mobile-plan .button{min-height:44px;max-width:100%;white-space:normal}
 .online-price-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .online-price-list .online-price{min-width:0;padding:.55rem .6rem}
 .online-price-list .online-price strong{font-size:clamp(.87rem,4vw,1.04rem)}
}

.action-arrow{width:.95em;height:.95em;margin-inline-start:.38em;vertical-align:-.13em;flex:none;display:inline-block;pointer-events:none}
