/* TrekCerrado — Design System compartilhado */
:root{
  --paper:#F7F6F2;--paper-deep:#F4EDE4;--ink:#2B2B2B;--green:#2F5D50;--green-dark:#1E3D34;
  --moss:#728066;--clay:#C46A3B;--line:rgba(43,43,43,.18);
  --serif:'Montserrat',system-ui,Arial,sans-serif;--sans:'Montserrat',system-ui,Arial,sans-serif;
  --max:1280px;--header-h:82px;--radius:4px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.55}
a{color:inherit;text-decoration:none}button{font:inherit}img,svg{max-width:100%}
.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;font-weight:700}
:focus-visible{outline:3px solid var(--green-dark);outline-offset:2px;box-shadow:0 0 0 5px var(--paper);border-radius:4px}
.skip-link{position:absolute;left:12px;top:-60px;z-index:1000;padding:10px 16px;background:var(--green-dark);color:var(--paper);border-radius:6px;font-weight:600}
.skip-link:focus{top:12px}
.button,.nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--green);border-radius:var(--radius);padding:12px 17px;background:var(--green);color:#fffdf6;font-size:.82rem;font-weight:700;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.button:hover,.nav-cta:hover{transform:translateY(-2px);background:var(--green-dark);border-color:var(--green-dark)}
.button.outline{color:var(--green-dark);background:transparent}.button.outline:hover{color:#fff;background:var(--green)}
.topbar{height:var(--header-h);display:flex;align-items:center;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;background:rgba(247,246,242,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(43,43,43,.06)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:36px}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.04em;font-size:1.15rem;white-space:nowrap;color:var(--ink)}
.brand-mark{width:42px;height:34px;color:var(--green);flex:0 0 auto}
.brand small{display:block;font-size:.45rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;margin-top:2px}
.navlinks{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,27px);font-size:.79rem}
.navlinks a{position:relative;padding:8px 0;color:#3f4b42;transition:color .2s ease}
.navlinks a:after{content:'';position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--clay);transition:right .22s ease}
.navlinks a:hover,.navlinks a.pass-link,.navlinks a[aria-current="page"]{color:var(--clay)}
.navlinks a:hover:after,.navlinks a[aria-current="page"]:after{right:0}
.menu-toggle{display:none;border:0;background:none;color:var(--ink);font-size:1.4rem;cursor:pointer;min-width:44px;min-height:44px}
footer,.footer{background:var(--green-dark);color:#f5f1e6;padding:38px 0 25px}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:30px}
.footer-links{display:flex;flex-wrap:wrap;gap:20px;color:rgba(245,241,230,.78);font-size:.8rem}
.footer-links a{transition:color .2s ease}.footer-links a:hover{color:#fff}
.footer-bottom{padding-top:16px;border-top:1px solid rgba(245,241,230,.19);display:flex;justify-content:space-between;gap:20px;color:rgba(245,241,230,.56);font-size:.68rem}
.footer .brand,footer .brand{color:#f5f1e6}.footer .brand-mark,footer .brand-mark{color:#e1cda7}.footer .brand small,footer .brand small{color:rgba(255,255,255,.65)}
.wa-float{position:fixed;right:16px;bottom:16px;z-index:60;width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--green);color:var(--paper);box-shadow:0 4px 14px rgba(0,0,0,.25);transition:transform .2s ease,background .2s ease}
.wa-float:hover{background:var(--green-dark);transform:translateY(-2px)}.wa-float svg{width:24px;height:24px}
@media(max-width:900px){:root{--header-h:76px}.wrap{width:min(100% - 38px,var(--max))}.nav{gap:20px}.navlinks{display:none;position:absolute;top:calc(var(--header-h) - 1px);left:0;right:0;padding:20px;background:var(--paper);flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(43,43,43,.08)}.navlinks.open{display:flex}.navlinks a{padding:10px 0}.menu-toggle{display:inline-flex;align-items:center;justify-content:center}.nav-cta{display:none}}
@media(max-width:560px){:root{--header-h:66px}.wrap{width:calc(100% - 32px)}.brand{font-size:1rem}.brand-mark{width:36px}.footer-main,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-links{gap:12px 17px}.wa-float{right:12px;bottom:12px;width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Acabamento solicitado: legendas discretas e sem selos decorativos. */
.hero-stamp,.hero .seal,.passport-seal{display:none!important}
.trail-badges,.water-badges{display:none!important}
.hero .hero-caption,.photo-caption,.portrait-art .portrait-caption{position:absolute;left:auto!important;right:16px;bottom:12px;margin:0;padding:0!important;border:0;background:none!important;color:#fffdf6;font-family:var(--sans);font-size:.62rem;font-weight:400;line-height:1.4;letter-spacing:0;text-transform:none;text-align:right;text-shadow:0 1px 4px rgba(0,0,0,.9);z-index:3;max-width:85%}
@media(max-width:660px){.hero .hero-caption,.photo-caption,.portrait-art .portrait-caption{right:12px;bottom:10px;font-size:.58rem}}
