/* Utah Dunes Guide statewide layer. Builds on styles.css, the network's
   high-desert theme, and adds the statewide header, destination navigation,
   typographic heroes, source notes and the planning map. */

:root{--utah-label:#9c3f1c;--utah-muted:rgba(47,36,24,.72)}

.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--white);padding:10px 16px;z-index:100}
.skip-link:focus{left:12px;top:12px}
.utah-page a:focus-visible,.utah-page button:focus-visible,.utah-page summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

/* header */
.utah-wordmark{display:inline-flex;flex-direction:column;line-height:.92;width:auto;flex:none;color:var(--ink)}
.utah-wordmark span{font-size:10px;font-weight:800;letter-spacing:.34em;text-transform:uppercase;color:var(--utah-label)}
.utah-wordmark b{font-family:"Cormorant Garamond",serif;font-size:27px;font-weight:700;letter-spacing:-.02em}
.utah-header nav{gap:20px}
.utah-header nav a[aria-current]{color:var(--utah-label);border-bottom-color:var(--orange)}

/* destination navigation */
.dest-nav{background:var(--ink);color:var(--white);position:sticky;top:76px;z-index:35;border-bottom:1px solid rgba(255,253,247,.12)}
.dest-nav .shell{display:flex;align-items:center;gap:26px;min-height:52px;overflow-x:auto;scrollbar-width:thin}
.dest-nav-name{font-family:"Cormorant Garamond",serif;font-size:21px;font-weight:600;white-space:nowrap}
.dest-nav-links{display:flex;gap:20px;font-size:12.5px;font-weight:700}
.dest-nav-links a{white-space:nowrap;padding:15px 0 13px;border-bottom:2px solid transparent;color:rgba(255,253,247,.86)}
.dest-nav-links a:hover,.dest-nav-links a[aria-current=page]{color:var(--white);border-bottom-color:var(--ember)}

/* heroes without photographs */
.utah-hero{background-color:var(--ink);background-repeat:no-repeat;background-size:100% 46%,100% 38%,100% 30%,cover;background-position:bottom,bottom,bottom,center;padding:96px 0 110px}
.utah-hero h1 em{font-style:italic;color:var(--sand)}
.utah-hero-state{background-image:var(--dune-near),var(--dune-mid),var(--dune-far),linear-gradient(160deg,#3a2716 0%,#7a4424 55%,#b5652f 100%)}
.utah-hero-coral{background-image:var(--dune-near),var(--dune-mid),var(--dune-far),linear-gradient(160deg,#3b1f1c 0%,#8f4436 52%,#d9876a 100%)}
.utah-hero-sandhollow{background-image:var(--dune-near),var(--dune-mid),var(--dune-far),linear-gradient(160deg,#2f1810 0%,#8a3a1f 50%,#c8643a 100%)}
.utah-hero-knolls{background-image:var(--dune-near),var(--dune-mid),var(--dune-far),linear-gradient(160deg,#26282a 0%,#5b5d58 50%,#a99d84 100%)}
.utah-hero-whitewash{background-image:var(--dune-near),var(--dune-mid),var(--dune-far),linear-gradient(160deg,#23291d 0%,#56603e 50%,#b29a6a 100%)}

/* content */
.utah-content{padding-top:60px}
.utah-lead{max-width:70ch;margin:0 0 34px}
.utah-block{margin:0 0 58px;scroll-margin-top:150px}
.utah-block>h2{margin-bottom:16px}
.utah-block .zone-stats{margin:18px 0 10px}
.utah-block .card-grid{margin-top:18px}
.utah-block .card h3 a{border-bottom:1px solid transparent}
.utah-block .card h3 a:hover{border-bottom-color:currentColor;color:var(--orange)}
.utah-block .card>span{color:var(--utah-label)}
.utah-block .card.accent>span{color:var(--sand)}
.utah-block table.data{width:100%;border-collapse:collapse;background:var(--white);font-size:14px}
.utah-block table.data th,.utah-block table.data td{padding:12px 14px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
.utah-block table.data thead th{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--utah-label);background:var(--cream)}
.utah-block table.data tbody th{font-weight:700}
.utah-block table.data a{border-bottom:1px solid currentColor}
.source-note{font-size:12.5px;line-height:1.5;color:var(--utah-muted);margin:12px 0 0!important;max-width:78ch}
.source-note a,.utah-block p a,.utah-block li a{border-bottom:1px solid currentColor}

/* documentary photographs */
.utah-photo{margin:22px 0 8px;max-width:860px}
.utah-photo img{display:block;width:100%;height:auto;border-radius:4px;background:var(--cream)}
.utah-photo figcaption{margin-top:9px;font-size:12.5px;line-height:1.5;color:var(--utah-muted);max-width:78ch}
.utah-photo figcaption a{border-bottom:1px solid currentColor}
.guide-toc-wrap{margin:0 0 42px}
.guide-toc-wrap .guide-toc{display:flex;flex-wrap:wrap;gap:8px 10px;list-style:none;padding:0;margin:0}
.guide-toc-wrap .guide-toc a{display:inline-block;background:var(--white);border:1px solid var(--rule);padding:8px 13px;font-size:12.5px;font-weight:700}
.guide-toc-wrap .guide-toc a:hover{background:var(--ink);color:var(--white)}
.utah-faq details{background:var(--white);border:1px solid var(--rule);padding:16px 20px;margin:0 0 10px;max-width:80ch}
.utah-faq summary{cursor:pointer;font-weight:700}
.utah-faq details p{margin:10px 0 0}
.utah-verify{margin-top:10px}

/* planning map */
.utah-map{margin-top:18px}
.utah-map-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;align-items:stretch}
.planning-map{min-height:470px;background:linear-gradient(170deg,#efe4cc,#e0cfa9);border:1px solid var(--rule)}
.map-load-note{margin:0;padding:28px;max-width:46ch;color:var(--utah-muted)}
.map-detail{background:var(--white);border:1px solid var(--rule);padding:24px}
.map-detail h3{font-family:"Cormorant Garamond",serif;font-size:28px;font-weight:600;margin:6px 0 8px;letter-spacing:-.02em}
.map-detail p{font-size:14px}
.map-type{font-size:9.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--utah-label)}
.map-meta{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;font-size:13px;margin:12px 0}
.map-meta dt{font-weight:700;color:var(--utah-muted)}
.map-meta dd{margin:0}
.map-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.map-actions a,.map-actions button{background:var(--ink);color:var(--white);border:0;padding:9px 13px;font-size:11.5px;font-weight:800;cursor:pointer}
.map-actions a:hover,.map-actions button:hover{background:var(--orange)}
.map-place-list{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.map-place-item{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--rule)}
.map-place{background:none;border:0;text-align:left;padding:14px 16px 8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;color:var(--ink);font:inherit}
.map-place b{font-size:15px}
.map-place small{font-size:13px;color:var(--utah-muted)}
.map-place.is-active{box-shadow:inset 4px 0 0 var(--orange)}
.map-coords{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}
.map-place-source{font-size:12px;color:var(--utah-muted);margin:0;padding:0 16px 12px}
.map-place-source a,.map-official a{border-bottom:1px solid currentColor}
.map-official{margin-top:16px;font-weight:700}
.map-marker{display:block;width:18px;height:18px;border-radius:50%;border:2.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.45);background:#6b6b6b}
.map-marker-ride{background:#c2562c}.map-marker-camp{background:#4d6152}.map-marker-access{background:#2f5d8a}
.map-marker-view{background:#8a6a2a}.map-marker-services{background:#6b4f8a}.map-marker-safety{background:#b3341f}

/* footer */
.utah-footer .footer-wordmark{border-bottom:0}
.utah-footer .footer-wordmark span{color:var(--ember)}
.utah-footer .footer-wordmark b{color:var(--white)}

@media(max-width:860px){
  .site-header.open nav{display:flex}
  .utah-map-grid{grid-template-columns:1fr}
  .planning-map{min-height:360px}
  .utah-hero{padding:72px 0 92px}
}
@media(max-width:520px){
  .dest-nav .shell{gap:18px}
  .utah-block table.data{font-size:13px}
}
