.product-page{background:#f7f7f5}.product-page .site-header{position:relative}.product-page .desktop-nav{gap:20px}.product-page .brand img,.product-footer .brand img{object-fit:cover;border-radius:50%}.product-hero{min-height:510px;position:relative;background:var(--navy) var(--product-image) center/cover}.product-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.86),rgba(5,5,5,.22))}.product-hero-copy{position:relative;z-index:1;padding:125px 9%;max-width:780px;color:#fff}.product-hero-copy h1{font-size:clamp(50px,7vw,88px);margin-bottom:20px}.product-hero-copy>p:last-child{max-width:520px;color:#e1e7e2;font-size:18px}.product-body{max-width:1160px;margin:0 auto;padding:75px 7%;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);gap:80px}.back-link{color:#7b602b;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:10px}.product-facts{border-top:1px solid #d7d7d2;border-bottom:1px solid #d7d7d2;margin:35px 0 48px;padding:20px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product-facts div{display:flex;flex-direction:column;gap:6px}.product-facts span,.side-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#8b8b83}.product-facts strong{font-family:var(--serif);font-size:20px;font-weight:600;color:#111}.product-main h2{font-size:38px;margin-bottom:25px}.stops-list{list-style:none;padding:0;margin:0 0 38px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.stops-list li{background:#fff;border-left:2px solid var(--gold);padding:15px 17px;font-size:14px}.stops-list li span{color:#b88936;margin-right:9px}.product-description{font-size:18px;color:#565651;max-width:620px}.product-note{font-size:11px;color:#8c8c84;font-style:italic;margin-top:30px}.product-side{background:#111;color:#fff;padding:34px;align-self:start;position:sticky;top:24px}.product-side h2{font-size:38px;margin:13px 0 18px}.product-side h2 em{color:var(--gold)}.product-side>p{color:#c6cbc7;font-size:13px}.full-button{width:100%;margin:22px 0;color:#0a0a0a}.related{border-top:1px solid #343434;margin-top:25px;padding-top:20px;display:flex;flex-direction:column;gap:10px}.related strong{color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.13em}.related a,.map-button{color:#fff;text-decoration:none;font-size:12px}.map-button{display:block;border:1px solid #505050;padding:12px;text-align:center}.destination-tip{background:#f0e7d6;border-left:3px solid var(--gold);padding:20px;margin-top:30px}.destination-tip strong{font-family:var(--serif);font-size:20px}.destination-tip p{font-size:13px;color:#655e51;margin:8px 0 0}.product-footer{background:#050505;color:#9ea8a4;padding:45px 9%;display:flex;align-items:center;gap:35px}.product-footer .brand{flex-shrink:0}.product-footer p{margin:0;font-family:var(--serif);font-size:18px}.product-footer>a:last-child{margin-left:auto;color:var(--gold);font-size:11px;text-decoration:none;text-transform:uppercase;letter-spacing:.1em}.detail-title{color:inherit;text-decoration:none}.detail-title:hover{color:#a77b2d}.gallery-card{display:block;color:inherit;text-decoration:none}.trail-info h3 a{color:inherit;text-decoration:none}.trail-info h3 a:hover{color:#a77b2d}@media(max-width:800px){.product-page .desktop-nav{display:none}.product-hero{min-height:540px}.product-hero-copy{padding:105px 8% 75px}.product-body{display:block;padding:55px 7%}.product-facts{grid-template-columns:1fr;gap:15px;margin:28px 0 38px}.stops-list{grid-template-columns:1fr}.product-side{position:static;margin-top:45px}.product-footer{display:grid;gap:18px;padding:38px 7%}.product-footer p{margin:0}.product-footer>a:last-child{margin:0}}

/* Final typography pass for route, beach and trail detail pages. */
.product-hero-copy h1{font-size:clamp(42px,6.4vw,82px);line-height:1.02;overflow-wrap:anywhere}.product-hero-copy>p:last-child{font-size:clamp(16px,1.4vw,19px);line-height:1.55}.product-body h2{font-size:clamp(32px,3.6vw,54px);line-height:1.08}.product-description{font-size:clamp(16px,1.3vw,18px);line-height:1.6}.product-note{font-size:13px;line-height:1.5}.product-facts strong{font-size:clamp(18px,1.8vw,24px)}
@media(max-width:800px){.product-hero{min-height:500px}.product-hero-copy{padding:92px 8% 64px}.product-hero-copy h1{font-size:clamp(38px,10vw,52px);line-height:1.04}.product-hero-copy>p:last-child{font-size:16px;line-height:1.5}.product-body h2{font-size:34px}.product-facts strong{font-size:20px}}

/* Modo escuro: textos pretos das páginas de roteiro/beach/trilha ficam brancos. */
html[data-theme="dark"] .product-page { background:#101214; color:#eef3f1; }
html[data-theme="dark"] .product-facts { border-color:#354146; }
html[data-theme="dark"] .product-facts span,
html[data-theme="dark"] .side-label { color:#b6c2c0; }
html[data-theme="dark"] .product-facts strong,
html[data-theme="dark"] .product-main h2,
html[data-theme="dark"] .product-description { color:#eef3f1; }
html[data-theme="dark"] .stops-list li { background:#202529; color:#eef3f1; }
html[data-theme="dark"] .product-note { color:#b6c2c0; }
html[data-theme="dark"] .destination-tip { background:#2a2924; }
html[data-theme="dark"] .destination-tip p { color:#d4d8d0; }
