:root{--forest:#2D4B32;--forest-dark:#1F3423;--gold:#A88448;--gold-hover:#8E6F39;--surface:#F8FAF7;--ink:#162419}
html{-webkit-text-size-adjust:100%}
body{background:#fff}
h1,h2,h3{text-wrap:balance}
:focus-visible{outline:3px solid #D9BE86;outline-offset:2px;border-radius:4px}
.eyebrow,.eyebrow-dark{font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.eyebrow{color:#7A5F2E}.eyebrow-dark{color:#D9BE86}
.badge{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(217,190,134,.4);border-radius:9999px;padding:.4rem .9rem;font-size:.8rem;font-weight:500;color:#EBD9B0;background:rgba(31,52,35,.55)}
.hero-glow{position:absolute;inset:0;background:radial-gradient(60rem 30rem at 85% -10%,rgba(168,132,72,.22),transparent 60%),radial-gradient(40rem 25rem at -10% 110%,rgba(0,0,0,.28),transparent 60%);pointer-events:none}
.btn-gold,.btn-ghost,.btn-outline{display:inline-flex;align-items:center;gap:.5rem;border-radius:.5rem;padding:.8rem 1.5rem;font-weight:600;font-size:.95rem;transition:all .3s}
.btn-gold{background:#A88448;color:#162419}
.btn-gold:hover{background:#8E6F39;color:#fff;transform:scale(1.02);box-shadow:0 10px 15px -3px rgba(168,132,72,.2)}
.btn-gold:active{transform:scale(.95)}
.btn-ghost{border:1px solid rgba(255,255,255,.4);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1);transform:scale(1.02)}
.btn-outline{border:1px solid #2D4B32;color:#2D4B32}
.btn-outline:hover{background:#2D4B32;color:#fff}
.nav-link{color:#E6EEE5;font-size:.9rem;font-weight:500;transition:color .2s}
.nav-link:hover,.nav-link[aria-current=page]{color:#D9BE86}
.card{background:#fff;border:1px solid rgba(45,75,50,.14);border-radius:1rem;padding:1.75rem;box-shadow:0 1px 2px rgba(22,36,25,.05)}
.icon-chip{display:inline-flex;height:3rem;width:3rem;align-items:center;justify-content:center;border-radius:.75rem;background:#2D4B32;color:#D9BE86}
.check-row{display:flex;gap:1rem}
.check-row>svg,.check-row>i{flex:none;margin-top:.25rem;color:#A88448}
.li-dot{position:relative;padding-left:1.1rem}
.li-dot::before{content:"";position:absolute;left:0;top:.6em;height:.4rem;width:.4rem;border-radius:9999px;background:#A88448}
.step{position:relative;border-top:3px solid #A88448;background:#F8FAF7;border-radius:0 0 1rem 1rem;padding:1.75rem}
.step-n{display:block;font-family:"Cormorant Garamond",serif;font-size:2.5rem;font-weight:600;color:#7A5F2E;line-height:1;margin-bottom:.5rem}
.avatar{display:inline-flex;height:3.5rem;width:3.5rem;flex:none;align-items:center;justify-content:center;border-radius:9999px;background:#2D4B32;color:#D9BE86;font-family:"Cormorant Garamond",serif;font-weight:700;font-size:1.25rem}
.disc{border-left:4px solid #A88448;background:#F8FAF7;padding:1rem 1.25rem;border-radius:0 .5rem .5rem 0;line-height:1.7;color:#162419}
.lbl{display:block;margin-bottom:.35rem;font-size:.85rem;font-weight:600;color:#2D4B32}
.fld{width:100%;border:1px solid rgba(45,75,50,.35);border-radius:.5rem;padding:.7rem .9rem;font-size:1rem;background:#fff;color:#162419}
.fld:focus{outline:2px solid #A88448;border-color:#A88448}
.fld[aria-invalid=true]{border-color:#9B2C2C}
.doc-link[aria-disabled=true]{opacity:.55;pointer-events:none}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}[data-aos]{opacity:1!important;transform:none!important}}
.hero-photo{background-color:#2D4B32;background-image:linear-gradient(100deg,rgba(31,52,35,.92) 0%,rgba(31,52,35,.74) 50%,rgba(45,75,50,.30) 100%),url(img/hero-mountains.jpg);background-size:cover;background-position:center 58%}
