/* the hill — folded run map inside a resort card (pairs with assets/js/hill.js). 2026-08-18.
   Ski-map colours in the brand palette: green easy · blue intermediate · amber advanced/expert
   (the futbol + snowboarding world colours + the accent). Closed by default. */
.hill{margin-top:14px;}
.hill__sum{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;
  padding-top:12px;border-top:1px solid var(--hairline,rgba(241,239,232,.12));font-size:14.5px;color:var(--cream,#F1EFE8);letter-spacing:.03em;}
.hill__sum::-webkit-details-marker{display:none;}
.hill__sum:hover{color:var(--amber,#E0A45E);}
.hill__n{color:var(--muted,#9e9b94);margin-left:6px;font-size:13.5px;}
/* one + on the LEFT of "the hill" that becomes − when open (Andrew 2026-08-18) */
.hill__tog{width:24px;height:24px;border:1px solid var(--amber,#E0A45E);border-radius:6px;color:var(--amber,#E0A45E);
  display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.hill__tog::before{content:"+";}
.hill[open] .hill__tog{color:var(--muted,#9e9b94);border-color:var(--hairline,rgba(241,239,232,.12));}
.hill[open] .hill__tog::before{content:"\2212";}
.hill__in{margin-top:12px;}
.hill__chips{display:flex;gap:8px;flex-wrap:wrap;}
.hill__chip{display:inline-flex;align-items:center;gap:7px;font-size:13px;letter-spacing:.06em;color:var(--muted,#9e9b94);
  border:1px solid var(--hairline,rgba(241,239,232,.12));border-radius:999px;padding:4px 11px;background:none;font-family:inherit;cursor:pointer;line-height:1.3;}
.hill__chip i{width:16px;height:0;border-top:3px solid #F1EFE8;display:inline-block;border-radius:2px;}
.hill__chip--all i{display:none;}
.hill__chip--easy i{border-color:#7BB07E;} .hill__chip--inter i{border-color:#9DB9CE;}
.hill__chip--adv i{border-color:#E0A45E;} .hill__chip--exp i{border-color:#E0A45E;border-top-width:4px;}
.hill__chip--lift i{border-top:2px dashed #838179;}
.hill__chip b{color:var(--cream,#F1EFE8);font-weight:400;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.hill__chip.on{border-color:var(--amber,#E0A45E);color:var(--cream,#F1EFE8);}
.hill__vp{margin-top:12px;overflow:hidden;border-radius:10px;touch-action:none;position:relative;}
.hill__vp.zoomed{cursor:grab;}
.hill__zoom{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:4px;z-index:3;}
.hill__zoom button{width:30px;height:30px;border:1px solid var(--hairline,rgba(241,239,232,.25));border-radius:8px;background:rgba(13,17,23,.75);color:var(--cream,#F1EFE8);
  font-size:18px;line-height:1;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.hill__zoom button:hover{border-color:var(--amber,#E0A45E);color:var(--amber,#E0A45E);}
.hill__zoom .hill__zreset{width:auto;padding:0 8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-family:inherit;display:none;}
.hill__vp.zoomed .hill__zreset{display:block;}
.hill__vp.zoomed:active{cursor:grabbing;}
.hill__svg{transform-origin:0 0;will-change:transform;min-height:60px;}
.hill__svg svg{display:block;width:100%;height:auto;max-height:380px;}
.hill__svg .lv{transition:opacity .2s;}
.hill__in[data-lv="easy"] .lv:not(.lv-easy),.hill__in[data-lv="inter"] .lv:not(.lv-inter),.hill__in[data-lv="adv"] .lv:not(.lv-adv),
.hill__in[data-lv="exp"] .lv:not(.lv-exp),.hill__in[data-lv="lift"] .lv:not(.lv-lift){opacity:.12;}
.hill__svg path[data-n]{cursor:pointer;}
.hill__svg path[data-n]:hover{stroke:#F1EFE8!important;stroke-opacity:1!important;}
.hill__lvl--lift{color:var(--muted,#9e9b94);}
.hill__read{margin-top:8px;font-size:14px;min-height:1.6em;color:var(--muted,#9e9b94);}
.hill__read b{color:var(--cream,#F1EFE8);font-weight:400;}
.hill__lvl{font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-left:8px;}
.hill__lvl--easy{color:#7BB07E;} .hill__lvl--inter{color:#9DB9CE;} .hill__lvl--adv,.hill__lvl--exp{color:#E0A45E;}
.hill__foot{display:flex;gap:6px 18px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--hairline,rgba(241,239,232,.12));
  font-size:13.5px;color:var(--muted,#9e9b94);letter-spacing:.03em;}
.hill__foot a{color:var(--cream,#F1EFE8);text-decoration:none;border-bottom:1px solid rgba(241,239,232,.25);}
.hill__foot a:hover{color:var(--amber,#E0A45E);border-color:var(--amber,#E0A45E);}
.hill__osm{margin-left:auto;font-size:12.5px;}
.hill__osm a{color:var(--muted,#9e9b94);border:0;}
.hill__err{color:var(--muted,#9e9b94);font-size:14px;padding:12px 0;}


/* "first time here?" — the per-hill guide, a sibling fold to .hill (assets/js/guide.js). 2026-08-18.
   Same furniture as the hill fold on purpose: one closed line added to the card, nothing above it moves. */
.ft{margin-top:14px;}
.ft__sum{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding-top:12px;
  border-top:1px solid var(--hairline,rgba(241,239,232,.12));font-size:14.5px;color:var(--cream,#F1EFE8);letter-spacing:.03em;}
.ft__sum::-webkit-details-marker{display:none;}
.ft__sum:hover{color:var(--amber,#E0A45E);}
.ft__tog{width:24px;height:24px;border:1px solid var(--amber,#E0A45E);border-radius:6px;color:var(--amber,#E0A45E);
  display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;flex:none;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.ft__tog::before{content:"+";}
.ft[open] .ft__tog{color:var(--muted,#9e9b94);border-color:var(--hairline,rgba(241,239,232,.12));}
.ft[open] .ft__tog::before{content:"\2212";}
.ft__n{color:var(--muted,#9e9b94);font-size:13.5px;margin-left:6px;}
.ft__in{margin-top:14px;}
.ft__load{color:var(--muted,#9e9b94);font-size:14px;padding:4px 0;}
.ft__load a{color:var(--cream,#F1EFE8);}
.ft__pick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.ft__lv{display:inline-flex;align-items:center;gap:7px;font-size:13px;letter-spacing:.06em;color:var(--muted,#9e9b94);
  border:1px solid var(--hairline,rgba(241,239,232,.12));border-radius:999px;padding:4px 12px;background:none;
  font-family:inherit;cursor:pointer;line-height:1.3;}
.ft__lv i{width:16px;height:0;border-top:3px solid #7BB07E;display:inline-block;border-radius:2px;}
.ft__lv--1 i{border-color:#9DB9CE;} .ft__lv--2 i{border-color:#E0A45E;}
.ft__lv.on{border-color:var(--amber,#E0A45E);color:var(--cream,#F1EFE8);}
.ft__pane{display:none;} .ft__pane.on{display:block;}
.ft__facts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.ft__facts span{font-size:13px;color:var(--muted,#9e9b94);border:1px solid var(--hairline,rgba(241,239,232,.12));
  border-radius:999px;padding:4px 12px;letter-spacing:.03em;}
.ft__facts span b{color:var(--cream,#F1EFE8);font-weight:400;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.ft__say{font-size:16px;line-height:1.65;max-width:58ch;margin-bottom:16px;}
.ft__say b{color:var(--cream,#F1EFE8);font-weight:400;}
.ft__steps{list-style:none;counter-reset:s;margin:0 0 16px;padding:0;}
.ft__steps li{counter-increment:s;position:relative;padding-left:34px;margin-bottom:12px;font-size:15px;
  color:var(--muted,#9e9b94);line-height:1.55;max-width:58ch;}
.ft__steps li::before{content:counter(s);position:absolute;left:0;top:0;width:23px;height:23px;
  border:1px solid var(--hairline,rgba(241,239,232,.12));border-radius:50%;color:var(--amber,#E0A45E);font-size:12px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:flex;align-items:center;justify-content:center;}
.ft__steps b{color:var(--cream,#F1EFE8);font-weight:400;}
.ft__steps em{font-style:normal;color:var(--muted,#9e9b94);font-size:13.5px;}
.ft__up{font-size:14.5px;color:var(--muted,#9e9b94);padding-top:12px;border-top:1px solid var(--hairline,rgba(241,239,232,.12));
  max-width:58ch;line-height:1.6;}
.ft__up b{color:var(--cream,#F1EFE8);font-weight:400;}
.ft__foot{display:flex;gap:6px 18px;flex-wrap:wrap;margin-top:14px;padding-top:10px;
  border-top:1px solid var(--hairline,rgba(241,239,232,.12));font-size:13.5px;color:var(--muted,#9e9b94);letter-spacing:.03em;}
.ft__foot a{color:var(--cream,#F1EFE8);text-decoration:none;border-bottom:1px solid rgba(241,239,232,.25);}
.ft__foot a:hover{color:var(--amber,#E0A45E);border-color:var(--amber,#E0A45E);}
@media(max-width:560px){
  .hill__osm{margin-left:0;} .hill__read{font-size:13.5px;}
  .ft__say{font-size:15px;} .ft__steps li{font-size:14.5px;}
}
