@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;700&display=swap');

*{box-sizing:border-box;margin:0;padding:0}
:root{
  --lb:#3d2b1f;--la:#b8732a;--lal:#e8a84a;--lg:#2d4a2a;--lbl:#1a3a5c;
  --ls:#f5f2ed;--lbk:#6b4226;--lt:#2a1f14;--lm:#7a6a5a;
  --cb:#faf7f2;--cd:#d4c4b0;
}
body{font-family:'Georgia',serif;background:var(--ls);color:var(--lt)}
.site{width:100%;max-width:900px;margin:0 auto}

/* ---- HEADER ---- */
.header{background:linear-gradient(160deg,#1a2e1a 0%,#2d4a2a 40%,#1a3a5c 100%)}
.hw{background:repeating-linear-gradient(90deg,rgba(0,0,0,0.03) 0,transparent 2px,transparent 40px);padding:1.8rem 2rem 1.4rem;border-bottom:3px solid var(--la)}
.st{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:700;color:#f5ead8;letter-spacing:1px}
.ss{color:#c8b89a;font-size:0.88rem;margin-top:0.25rem;font-style:italic}
.hb{display:inline-flex;align-items:center;gap:6px;background:rgba(184,115,42,0.3);border:1px solid var(--lal);border-radius:20px;padding:4px 12px;font-size:0.72rem;color:var(--lal);margin-top:0.7rem}

/* ---- NAV ---- */
.nav{background:#1a2410;border-bottom:2px solid var(--la);overflow-x:auto;white-space:nowrap}
.nav-i{display:flex;padding:0 1rem}
.nav a{display:inline-block;padding:0.65rem 0.9rem;color:#c8b89a;text-decoration:none;font-size:0.78rem;border-bottom:2px solid transparent;font-family:'Georgia',serif;cursor:pointer}
.nav a.active,.nav a:hover{color:var(--lal);border-bottom-color:var(--lal)}

/* ---- SECTIONS ---- */
.sec{padding:1.4rem 1.5rem 1rem;border-bottom:1px solid var(--cd)}
.st2{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;color:var(--lb);display:flex;align-items:center;gap:8px;margin-bottom:0.9rem;padding-bottom:0.45rem;border-bottom:2px solid var(--la)}
.st2 i{color:var(--la)}
.ads{background:var(--cb);border:1px dashed var(--cd);border-radius:6px;padding:0.45rem 1rem;text-align:center;font-size:0.7rem;color:var(--lm);margin:0.7rem 0;font-style:italic}

/* ---- EVENTS ---- */
.cg{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.ec{background:var(--cb);border:1px solid var(--cd);border-radius:8px;padding:0.75rem;display:flex;gap:10px;align-items:flex-start}
.ed{background:var(--lbl);color:#fff;border-radius:6px;padding:4px 8px;text-align:center;min-width:42px;flex-shrink:0}
.em{font-size:0.58rem;letter-spacing:1px;text-transform:uppercase}
.edy{font-size:1.1rem;font-weight:700;line-height:1.1}
.en{font-size:0.78rem;font-weight:500;color:var(--lb);margin-bottom:2px}
.el{font-size:0.66rem;color:var(--lm)}
.cl{display:inline-flex;align-items:center;gap:5px;margin-top:0.85rem;font-size:0.76rem;color:var(--lbl);text-decoration:none;border:1px solid var(--lbl);border-radius:6px;padding:5px 14px}

/* ---- ACTIVITIES ---- */
.ag{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:9px}
.ac{background:var(--cb);border:1px solid var(--cd);border-radius:8px;padding:0.85rem;text-align:center}
.ac.al{cursor:pointer;border-color:var(--la);background:#fdf8f0}
.ai{font-size:1.4rem;color:var(--la);margin-bottom:5px}
.an{font-size:0.78rem;font-weight:500;color:var(--lb);margin-bottom:2px}
.ad2{font-size:0.66rem;color:var(--lm);line-height:1.4}
.alk{font-size:0.64rem;color:var(--lbl);margin-top:5px;display:block;cursor:pointer}

/* ---- ROADS ---- */
.rg{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.rc{background:var(--cb);border:1px solid var(--cd);border-radius:8px;padding:0.85rem;border-left:4px solid #2d7a2d}
.rc.w{border-left-color:#c8821a}
.rn{font-size:0.78rem;font-weight:500;color:var(--lb);margin-bottom:3px}
.rs{font-size:0.72rem;color:var(--lm);margin-bottom:5px}
.rb{display:inline-flex;align-items:center;gap:4px;font-size:0.68rem;font-weight:500;padding:2px 8px;border-radius:12px}
.bo{background:#e6f4e6;color:#1a5c1a}
.bc{background:#fdf3e1;color:#7a4d0a}
.rd{font-size:0.68rem;color:var(--lm);margin-top:4px}

/* ---- WEBCAMS ---- */
.wg{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.wc{background:#1a2a1a;border-radius:8px;overflow:hidden;border:1px solid #3a5a3a}
.ws{background:linear-gradient(135deg,#0d1a0d,#1a2e1a);height:85px;display:flex;align-items:center;justify-content:center;position:relative}
.wl{position:absolute;top:5px;left:5px;background:#a32d2d;color:#fff;font-size:0.58rem;padding:2px 5px;border-radius:4px;font-weight:500}
.wi{padding:0.45rem 0.6rem;background:#243324}
.wn{font-size:0.7rem;color:#c8d8c0;font-weight:500}
.wp{font-size:0.62rem;color:#7a9a7a}

/* ---- RESTAURANTS ---- */
.rl{font-size:0.72rem;font-weight:500;color:var(--la);letter-spacing:1px;text-transform:uppercase;margin:0.9rem 0 0.5rem;padding-bottom:4px;border-bottom:1px solid var(--cd)}
.rsg{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:0.5rem}
.rsc{background:var(--cb);border:1px solid var(--cd);border-radius:8px;padding:0.85rem}
.rsc.sp{border-color:var(--la);background:#fdf8f0}
.rnm{font-size:0.82rem;font-weight:500;color:var(--lb);margin-bottom:2px}
.rcu{font-size:0.68rem;color:var(--lm);margin-bottom:5px}
.rt{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:5px}
.tg{font-size:0.62rem;padding:2px 6px;border-radius:10px;background:#e8e0d5;color:var(--lbk)}
.tg.s{background:#f5e8cf;color:#7a4d0a}
.rlk{font-size:0.68rem;color:var(--lbl);text-decoration:none}

/* ---- RESORTS (ski page) ---- */
.resg{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:0.5rem}
.resc{background:var(--cb);border:1px solid var(--cd);border-radius:8px;padding:0.85rem}
.resn{font-size:0.82rem;font-weight:500;color:var(--lb);margin-bottom:2px}
.resd{font-size:0.7rem;color:var(--lm);margin-bottom:6px;line-height:1.45}
.resb{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:5px}
.rb2{font-size:0.6rem;padding:2px 7px;border-radius:10px}
.f{background:#e6f4e6;color:#1a5c1a}
.cp{background:#f0e6f4;color:#5c1a7a}
.lo{background:#e6eef4;color:#1a3a5c}
.ex{background:#f4e6e6;color:#5c1a1a}
.tb{background:#fdf3e1;color:#7a4d0a}
.pk{background:#e6f4f0;color:#1a5c4a}
.nd{background:#ede6f4;color:#4a1a7a}
.resl{font-size:0.68rem;color:var(--lbl);text-decoration:none}

/* ---- SPONSORS ---- */
.spb{background:var(--lb);padding:1.1rem 1.5rem}
.spt{font-size:0.7rem;color:#c8b89a;letter-spacing:1.5px;text-transform:uppercase;text-align:center;margin-bottom:0.9rem}
.spg{display:flex;flex-wrap:wrap;gap:9px;justify-content:center}
.spp{background:rgba(255,255,255,0.1);border:1px solid rgba(184,115,42,0.4);border-radius:20px;padding:5px 14px;font-size:0.72rem;color:#e8d5b8}

/* ---- SOCIAL ---- */
.sotabs{display:flex;gap:5px;margin-bottom:0.9rem;flex-wrap:wrap}
.sotab{padding:4px 12px;border-radius:16px;font-size:0.72rem;border:1px solid var(--cd);background:var(--cb);color:var(--lm);cursor:pointer}
.sotab.active{background:var(--lb);color:#f5ead8;border-color:var(--lb)}
.sog{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}
.soc{background:var(--cb);border:1px solid var(--cd);border-radius:8px;padding:0.8rem}
.sopl{font-size:0.62rem;color:var(--lm);margin-bottom:3px;display:flex;align-items:center;gap:4px}
.soh{font-size:0.7rem;color:var(--lbl);font-weight:500;margin-bottom:3px}
.sotx{font-size:0.7rem;color:var(--lt);line-height:1.4;margin-bottom:5px}
.som{font-size:0.62rem;color:var(--lm)}
.soim{width:100%;height:65px;background:linear-gradient(135deg,#1a3a2a,#2d5a3a);border-radius:5px;margin-bottom:5px;display:flex;align-items:center;justify-content:center}

/* ---- SKI PAGE HEADER ---- */
.skh{background:linear-gradient(160deg,#1a2e1a,#2d4a2a);padding:1.4rem 1.5rem;border-bottom:3px solid var(--la)}
.skt{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:700;color:#f5ead8;display:flex;align-items:center;gap:10px}
.sks{color:#c8b89a;font-size:0.8rem;margin-top:0.25rem;font-style:italic}

/* ---- FOOTER ---- */
.footer{background:#1a2410;padding:0.9rem 1.5rem;text-align:center;font-size:0.68rem;color:#7a9a6a;border-top:2px solid var(--la)}
.footer a{color:#9ab88a}
