/* 2027 hiking UAT: designer's warm mountain layout. Keep the map and UAT gates intact. */
:root{
  --ink:#392414;
  --navy:#996f3e;
  --deep:#275764;
  --teal:#216d71;
  --mist:#d9d19e;
  --cream:#d9d19e;
  --paper:#fffefa;
  --orange:#c77738;
  --line:rgba(65,47,28,.18);
}
body.tl-bright-walk-uat{background:#a5b49a;color:#392414}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header{background:#e6e2c8;border-color:#998c6e;min-height:72px}
.brand-mark{border-color:#ad782f}.brand-mark span{background:#ad782f}
.brand-copy small,.primary-nav a:hover,.header-link:hover{color:#7e512e}
.brand{gap:0}
.header-link{border-color:#6b492b}
.hero{min-height:0;height:clamp(380px,54vw,760px);background:#8ebcb8}
.hero-image{background-image:url("./media/banner-mountain.jpg");background-position:center 46%;transform:none;filter:none}
.hero-shade{display:none}
.hero-logo{position:absolute;z-index:2;top:3%;left:3.2%;width:clamp(54px,8.4vw,120px);height:auto;filter:drop-shadow(0 2px 4px #49676050)}
.hero-content{position:absolute;inset:0;display:block;min-height:0;height:100%;width:100%;pointer-events:none}
.hero-copy{position:absolute;top:4%;right:3%;width:min(60%,920px);max-width:none;padding:0;text-align:right}
.hero-title-art{display:block;width:100%;height:auto;margin-left:auto;filter:drop-shadow(0 2px 2px #fff8)}
.hero-tagline,.hero-intro,.hero-actions,.hero-side,.hero-bottom{display:none!important}

.goal-section{padding:0;background:#a17c49;color:#fff9ec}
.goal-layout{display:block;width:100%}
.goal-title{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.goal-info{display:block;padding:0;border:0}
.goal-summary{position:relative;z-index:2;display:grid;grid-template-columns:minmax(230px,.7fr) minmax(300px,1.3fr);align-items:center;column-gap:clamp(20px,4vw,75px);min-height:112px;margin-top:-112px;padding:18px max(4vw,24px);background:rgba(67,47,28,.72);text-align:center}
.goal-label{grid-column:1;grid-row:1;color:#fff9ec;font-size:14px;font-weight:800}
.goal-value{grid-column:1;grid-row:2;justify-content:center;margin:0;color:#fff;font-size:clamp(42px,5.5vw,75px);line-height:1.04;letter-spacing:-.04em}
.goal-value small{font-size:clamp(17px,2vw,27px)}.goal-value span{font-size:.55em}
.goal-strap{grid-column:2;grid-row:1/3;align-self:center;margin:0;padding-left:clamp(20px,3vw,55px);border-left:1px solid #fff8;font-size:clamp(17px,2vw,30px);font-weight:800;line-height:1.5;text-align:center}
.progress-scene{grid-column:1/-1;position:relative;height:clamp(140px,20vw,250px);margin:12px 0 0;overflow:hidden;background:#ad8a54}
.progress-mountain{position:absolute;right:-4%;bottom:-23%;width:min(62%,760px);height:auto;opacity:.88}
.progress-walker{position:absolute;z-index:2;left:12%;bottom:29%;width:clamp(62px,7vw,112px);height:auto;filter:drop-shadow(2px 2px 2px #39241455)}
.progress-label{position:absolute;left:5%;bottom:19%;color:#fff;font-size:12px;font-weight:800;letter-spacing:.05em}
.progress-track{position:absolute;left:18%;right:8%;bottom:20%;height:18px;overflow:hidden;border-radius:999px;background:#e8b474;box-shadow:inset 0 2px 5px #643d2b44}
.progress-placeholder{width:0;background:none}
.goal-footnote{grid-column:1/-1;margin:10px 0 0;color:#fff6e4;font-size:12px}

.about-section{background:#a6b69c;padding:clamp(52px,6vw,88px) 0}
.about-grid{display:block;max-width:1080px}
.about-section .section-heading h2{margin:0 0 24px;font-size:clamp(26px,3vw,42px);color:#513622}
.about-section .kicker{display:none}
.about-content{padding:0}
.about-content .lead{color:#4a3221;font-size:clamp(18px,2vw,24px)}
.campaign-copy p{color:#3d392b;font-size:clamp(14px,1.15vw,17px);line-height:2}
.campaign-copy p:last-child{font-weight:700}
.facts-grid{border-color:#5c6e5588}
.fact-label{color:#4c604d;font-size:15px}.fact strong{color:#392414;font-size:clamp(19px,1.7vw,24px);line-height:1.4}.fact-icon{color:#89603d;font-size:32px;line-height:1.15}

.journey-intro{background:#d9d19e;padding:clamp(36px,4vw,62px) 0 22px}
.journey-intro-layout{display:block}
.journey-intro h2{margin:0;font-size:clamp(28px,3.4vw,50px);color:#49311e}
.journey-intro-layout>p{color:#493b2c;font-size:15px}
.routes-section{background:#d9d19e;padding-bottom:clamp(35px,4vw,65px)}
.routes-layout{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(18px,3vw,50px);align-items:stretch}
.route-column{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:14px}
.route-card{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(17px,1.9vw,27px);border:1px solid #cfbd8d;border-radius:7px;box-shadow:0 7px 15px #513b241c}
.route-card.active{border:2px solid #a66d2e;box-shadow:0 10px 20px #513b2433}
.route-card h3{font-size:clamp(24px,2.2vw,32px);margin:5px 0 4px}
.route-number{color:#b78d58}.route-card.active .route-number{color:#a66d2e}
.route-card h3 em,.route-target strong{color:#90612f}
.route-metrics{margin-top:4px;padding:8px 0}.route-view{padding-top:8px}
.map-header h2{color:#4b331f}.map-draft{color:#715b40}
.map-header{min-height:30px;margin:0 0 7px;padding:0}
.map-visual{border-radius:3px;box-shadow:0 10px 24px #47371f33}

.moment-section{background:#a6b69c;padding:clamp(60px,8vw,110px) 0}
.moment-top p:last-child{color:#394e3d}.moment-section h2 em{color:#4a734d}
.join-section{background:#d9d19e;color:#49311e;padding:clamp(18px,3vw,40px) 0 clamp(55px,6vw,85px)}
.join-heading h2{color:#49311e}.join-heading em{color:#885a32}
.join-heading>p,.join-heading>p:last-child{color:#493e2c}
.join-heading .uat-availability-note{border-color:#a26b33;background:#fff9e873}
.join-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1200px;margin:0 auto}
.join-card{min-height:clamp(260px,27vw,360px);padding:clamp(24px,3vw,40px);border-radius:18px;background-position:center bottom;background-size:cover;box-shadow:0 10px 24px #604c3030;align-items:flex-end;text-align:right}
.join-donate{background-image:url("./media/donate-card.png")}
.join-register{background-image:url("./media/hike-card.png")}
.join-index{color:#254a48}.join-card h3{margin:8px 0 6px;color:#254f4c;font-size:clamp(27px,3vw,42px)}
.join-register h3{color:#5d381c}
.join-card p{max-width:260px;margin:0 0 12px;color:#3c3c30;font-size:13px;font-weight:700}
.join-card .preview-link{width:auto;min-width:180px;margin-top:8px;padding:9px 18px;border:0;border-radius:999px;background:#047487;color:#fff;font-size:12px;align-self:flex-end}
.join-register .preview-link{background:#99601f}
.join-card .preview-status{margin-top:8px;color:#3f4438;font-size:11px;font-weight:800}
.participant-review-entry{color:#483826}.participant-review-entry a{color:#49311e;font-weight:700}
.join-section .uat-availability-note{margin:22px 0 0;border-left:3px solid #a26b33;padding:10px 15px;background:#fff9e873;font-size:12px}
.support-section{background:#d9d19e;padding:clamp(40px,5vw,70px) 0 15px;text-align:center}
.support-layout{display:block;max-width:850px}
.support-section h2{margin:0 0 16px;font-size:clamp(23px,2.6vw,36px);color:#5b3c20}
.support-section .support-layout .staff-walk-copy p{max-width:700px;color:#5a4c35;line-height:1.8;margin-right:auto;margin-left:auto;text-align:center;text-wrap:pretty}
.campaign-contact{display:inline-block;margin-top:12px;padding:6px 18px;border-radius:999px;background:#fffaf0}
.ministry-section{background:#a6b69c;color:#563a26;padding:clamp(48px,6vw,80px) 0}
.ministry-section h2{font-size:clamp(27px,3vw,40px);margin:0 0 26px}
.ministry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px)}
.ministry-grid a{display:grid;place-items:center;min-height:145px;padding:18px;border-radius:20px;background:#fff;text-align:center;color:#573c28;font-size:clamp(16px,1.6vw,22px);font-weight:800;line-height:1.5;box-shadow:0 6px 16px #5c624b1c}
.ministry-grid a:hover,.ministry-grid a:focus-visible{outline:3px solid #b7733e;outline-offset:3px;transform:translateY(-2px)}
.site-footer{background:#a17c49;color:#fff9ed}.footer-brand{color:#fff}.footer-brand small{color:#f4dfbc}
.footer-social{display:flex;flex-wrap:wrap;gap:8px}.footer-social a{display:inline-flex;padding:8px 12px;border:1px solid #fff7;border-radius:999px;color:#fff;font-size:12px;font-weight:700}.footer-social a:hover,.footer-social a:focus-visible{background:#fff;color:#694c2e}

@media(max-width:800px){
  .hero{height:clamp(320px,78vw,600px)}
  .hero-copy{top:6%;right:3%;width:67%}
  .goal-summary{grid-template-columns:1fr 1fr;column-gap:14px}
  .goal-strap{padding-left:16px;font-size:clamp(14px,2.5vw,20px)}
  .goal-value{font-size:clamp(34px,6vw,54px)}
  .routes-layout{display:flex;flex-direction:column}
  .route-column{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;gap:9px}
  .route-card{padding:16px}.route-card h3{font-size:22px}
  .route-metrics{gap:10px;flex-wrap:wrap}.route-metrics strong{font-size:21px}
  .map-header{margin-top:30px}
}
@media(max-width:650px){
  .site-header{min-height:66px}.hero{height:clamp(275px,84vw,450px)}
  .hero-logo{left:3%;top:4%;width:55px}.hero-copy{top:5%;right:2.5%;width:69%}
  .goal-summary{display:block;min-height:0;margin-top:-70px;padding:15px 16px 10px}
  .goal-value{font-size:44px;margin:4px 0 9px}
  .goal-strap{border:0;border-top:1px solid #fff8;padding:10px 0 0;font-size:16px}
  .progress-scene{margin:12px 0 0;height:155px}
  .progress-mountain{width:88%;right:-20%;bottom:-8%}
  .progress-walker{left:15%;bottom:27%;width:60px}
  .progress-label{left:4%;bottom:18%;font-size:10px}
  .progress-track{left:30%;right:5%;bottom:19%;height:12px}
  .about-section,.journey-intro,.join-section{padding:40px 0}
  .journey-intro{padding-bottom:20px}.journey-intro-layout{display:block}
  .journey-intro-layout>p{margin:15px 0 0}
  .route-column{grid-template-columns:1fr}.route-card{padding:24px}.route-card h3{font-size:28px}
  .join-grid{grid-template-columns:1fr}.join-card{min-height:330px}
  .ministry-grid{grid-template-columns:1fr}.ministry-grid a{min-height:100px}
}
