:root{--paper:#f4f6f1;--pine:#193a30;--muted:#576c61;--border:#d8e1d7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--pine);font:15px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:#29614a;text-underline-offset:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:5px;background:white;padding:10px;z-index:99}.mast{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px max(20px,calc((100vw - 1170px)/2));border-bottom:1px solid var(--border);background:white;flex-wrap:wrap}.mast a{text-decoration:none}.mast>a{font-weight:750}.mast nav{display:flex;gap:18px;font-size:.87rem}.wrap{max-width:1170px;margin:auto;padding:0 20px 35px}.intro{padding:27px 0 20px;border-bottom:1px solid var(--border)}.kicker{font-size:.69rem;letter-spacing:.13em;text-transform:uppercase;color:#397253;font-weight:750;margin:0 0 9px}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.03em;line-height:1.2}h1{font-size:clamp(2.4rem,5vw,4.25rem);max-width:740px;margin:0 0 14px}h2{font-size:clamp(1.55rem,2.7vw,2rem);margin:0 0 17px}h3{font-size:1.18rem;margin:0 0 10px}.lead{font-size:1.08rem;max-width:850px;margin:0 0 17px}.caution,.handoff{background:#f8f6eb;border-left:3px solid #b7975f;padding:12px 16px;font-size:.85rem;max-width:940px}.layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:19px;margin:22px 0}.panel{min-width:0;border:1px solid var(--border);background:white;border-radius:11px;padding:25px}.fields,.reserve{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}label{display:block;min-width:0;font-size:.79rem;font-weight:650;color:#4d6657}input,select{display:block;width:100%;min-width:0;min-height:41px;margin:5px 0 0;padding:8px;font:inherit;color:#163e2e;border:1px solid #c8d6c9;border-radius:6px;background:white}input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #91b4a0;outline-offset:2px}fieldset{padding:14px;border:1px solid #dae3da;border-radius:7px;margin:17px 0}legend{font-size:.9rem;font-weight:750;padding:0 4px}.small,.source{color:var(--muted);font-size:.78rem}form button{border:0;border-radius:7px;background:var(--pine);color:white;min-height:47px;width:100%;padding:12px;font:inherit;font-weight:750;cursor:pointer}.canyons,.cards,.place-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.canyons>div{min-width:0;border:1px solid var(--border);border-radius:7px;padding:13px;background:#f6f8f4}.canyons strong{display:block;font-size:.86rem}.canyons p{margin:7px 0 4px;color:#815528;font-size:.82rem;font-weight:750}.canyons small{color:var(--muted)}.source{margin:13px 0 16px}.cards{gap:12px}.resort{min-width:0;border:1px solid var(--border);border-radius:8px;overflow:hidden}.resort-head{padding:12px 13px;background:#f8f9f5;border-bottom:1px solid var(--border)}.resort h3{margin:0 0 5px}.status{font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;color:#89572b}.status.blocked{color:#94463f}.resort-content{padding:12px 13px}.resort h4{font-size:.78rem;margin:12px 0 4px}.resort ul{font-size:.78rem;color:#4f6256;padding-left:18px;margin:5px 0}.resort li+li{margin-top:6px}.resort p{font-size:.78rem;margin:5px 0}.resort .links{border-top:1px solid var(--border);padding-top:9px;margin-top:11px;display:flex;gap:12px;flex-wrap:wrap}.resort a{font-size:.77rem}.place-grid{gap:27px}.place-grid>div{border-top:1px solid var(--border);padding-top:16px}.place-grid p{font-size:.85rem;color:#4d6155;line-height:1.66}.place-grid a{font-size:.82rem}.handoff{margin-top:22px}footer{display:flex;gap:18px;justify-content:space-between;padding:22px max(20px,calc((100vw - 1170px)/2));font-size:.75rem;color:var(--muted);border-top:1px solid var(--border)}@media(max-width:950px){.layout{grid-template-columns:1fr}}@media(max-width:700px){.wrap{padding:0 14px 26px}.intro{padding:18px 0}.layout{margin:13px 0}.panel{padding:16px}.cards,.place-grid,.canyons{grid-template-columns:1fr}h1{font-size:2.45rem}.lead{font-size:.96rem}}@media(max-width:390px){.fields,.reserve{grid-template-columns:1fr}.mast{padding:10px 14px}}
/* V2 route schematic, live evidence and responsive editorial content */
.corridor{margin:20px 0 0;max-width:920px}.corridor svg{width:100%;height:auto;display:block;border-radius:14px}.corridor figcaption{font-size:.76rem;color:var(--muted);margin:8px 0}.surface-detail{font-size:.75rem;color:#506456;line-height:1.35;margin-top:6px}.surface-detail p{margin:5px 0;font:inherit;color:inherit}.decision-summary{background:#f3f7f0;border-left:3px solid #719682;padding:10px 12px;font-size:.79rem;font-weight:700;margin:16px 0}.faq{margin-top:17px}.faq details{border-top:1px solid var(--border);padding:13px 0}.faq summary{cursor:pointer;font-size:.95rem;font-weight:730}.faq details p{font-size:.87rem;max-width:840px;color:var(--muted)}.corridor svg text{pointer-events:none}@media(max-width:700px){.corridor{margin-top:17px}.corridor figcaption{font-size:.7rem}.decision-summary{margin:11px 0}}

/* Utah illustrated canyon map — image asset replaces diagram, never cropped. */
.corridor{max-width:1100px;margin:20px 0 0}
.corridor .canyon-art-map{display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:16/9;border-radius:12px;border:1px solid var(--border);background:#f5f2e8}
.corridor .canyon-route-key{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.corridor .route-key{display:flex;align-items:baseline;justify-content:space-between;gap:9px;flex:1 1 275px;min-width:0;padding:9px 12px;border-radius:7px;background:#f4f6f1;font-size:.82rem}
.corridor .route-key strong{white-space:normal}.corridor .route-key span{white-space:nowrap;color:var(--muted)}
.corridor .route-key-blue{border-left:4px solid #1f6090}.corridor .route-key-orange{border-left:4px solid #be5d22}
@media(max-width:700px){.corridor .canyon-route-key{flex-direction:column;gap:7px}.corridor .route-key{flex:1 1 auto;width:100%}.corridor .canyon-art-map{border-radius:9px}}
@media(max-width:400px){.corridor .route-key{flex-wrap:wrap}.corridor .route-key span{white-space:normal}}

/* Utah ski V2.1: fit the illustration within the tool's opening viewport.
   Keep native 16:9 content intact: no cropping and no horizontal scroll. */
.intro{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start}
.intro-copy,.corridor,.canyon-map-zoom{min-width:0}
.intro .corridor{width:min(100%,720px);max-width:720px;margin:16px auto 0}
.corridor .canyon-map-zoom{display:block;line-height:0;border-radius:10px;overflow:hidden}
.corridor .canyon-map-zoom:focus-visible{outline:3px solid #276c8b;outline-offset:3px}
.corridor .canyon-art-map{width:100%;height:auto;max-height:none;aspect-ratio:16/9;object-fit:contain;object-position:center;display:block}
.corridor figcaption{font-size:.75rem;line-height:1.45;margin:7px 0 8px}
.corridor .canyon-route-key{gap:7px;margin-top:6px}
.corridor .route-key{font-size:.76rem;padding:7px 10px;gap:7px;flex:1 1 240px}
@media(min-width:960px){
  .intro{grid-template-columns:minmax(0,1fr) minmax(0,1.07fr);column-gap:26px;align-items:start;padding:24px 0 20px}
  .intro h1{font-size:clamp(2.25rem,3.6vw,3.15rem);max-width:560px}
  .intro .lead{font-size:1rem}
  .intro .corridor{width:100%;max-width:none;margin:0}
  .intro .caution{font-size:.82rem}
}
@media(max-width:959px){
  .intro .corridor{margin:15px auto 0}
}
@media(max-width:700px){
  .intro{gap:0}
  .intro .corridor{max-width:100%;margin:12px auto 0}
  .corridor .route-key{font-size:.76rem;flex:1 1 auto;padding:7px 9px}
  .corridor figcaption{font-size:.73rem}
}
