/* traildelameije.fr — Alpine trail-running event. Tokens from design/specs.md */
:root{
  --pine:#244A3B;
  --pine-deep:#173124;
  --orange:#E8662A;
  --orange-deep:#C24E18;
  --ink:#272A28;
  --muted:#6F756E;
  --page-bg:#F4F6F1;
  --surface:#FFFFFF;
  --border:#DEE4D9;
}
html,body{background:var(--page-bg);}
body{color:var(--ink);font-family:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:17px;line-height:1.7;}
h1,h2,h3,h4,.site-heading,.site-brand,.site-hero__title,.site-footer__brand{font-family:'Oswald','Source Sans 3',sans-serif;text-transform:uppercase;letter-spacing:.02em;font-weight:600;}

#cmNavCb{display:none;}#cmNavMenu{display:none;}
#cmNavCb:checked ~ #cmNavMenu{display:block;}
@media(min-width:1024px){#cmNavMenu{display:flex !important;}#cmBurger{display:none;}}

/* ---------- Nav ---------- */
.site-nav.navbar{background:var(--pine);min-height:64px;position:sticky;top:0;z-index:50;}
.site-nav .container{max-width:1160px;}
.site-brand{color:#fff !important;font-weight:700;font-size:1.25rem;background:transparent;}
.site-brand span{color:#CDE0C8;font-weight:500;}
.site-nav .navbar-item{color:#D6E2D0;font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;background:transparent;}
.site-nav a.navbar-item:hover{color:var(--orange);background:rgba(232,102,42,.14);}
.site-nav a.site-cta{background:var(--orange);color:#fff !important;border-radius:3px;margin:.6rem 0;font-weight:700;}
.site-nav a.site-cta:hover{background:var(--orange-deep);}
.navbar-burger{color:#fff;margin-left:auto;}.navbar-burger span{background:#fff;}
@media(max-width:1023px){.site-nav .navbar-menu{background:var(--pine);}.site-nav .navbar-menu a.navbar-item{color:#D6E2D0;}}

/* ---------- Hero ---------- */
.site-hero{background:linear-gradient(120deg,#173124,#244A3B 60%,#2d5c48);color:#fff;padding:3rem 0;border-bottom:5px solid var(--orange);}
.site-hero .container{max-width:1160px;}
.site-hero__title{font-size:2.6rem;font-weight:700;color:#fff;line-height:1.08;}
.site-hero__tag{color:#CDE0C8;font-size:1.05rem;margin-top:.45rem;text-transform:none;font-family:'Source Sans 3',sans-serif;}

/* ---------- Layout ---------- */
.site-main{padding:0 0 3rem;}
.site-container{max-width:1160px;margin-top:1.7rem;}
.site-breadcrumb{margin:.4rem 0 1rem;font-size:.85rem;color:var(--muted);}
.site-breadcrumb a{color:var(--orange-deep);}

/* ---------- Prose ---------- */
.site-prose{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:2rem;}
.site-heading--1{font-size:2.1rem;color:var(--pine);margin:.1em 0 .5em;}
.site-heading--2{font-size:1.45rem;color:var(--pine);margin:1.2em 0 .6em;padding-left:.7rem;border-left:4px solid var(--orange);}
.site-heading--3{font-size:1.2rem;color:var(--orange-deep);margin:1.1em 0 .4em;}
.site-block--paragraph{margin:.8em 0;}
.site-block--image{margin:1.2rem 0;}
.site-block--image img{border-radius:6px;border:1px solid var(--border);max-width:100%;}
.site-block--quote{border-left:4px solid var(--orange);background:var(--page-bg);padding:.9em 1.2em;margin:1.3em 0;}
.site-block--separator{border:0;border-top:1px solid var(--border);margin:1.3em 0;}
.site-prose a,.site-article a,.site-block--paragraph a,.site-category__desc a{color:var(--orange-deep);text-decoration:underline;text-decoration-color:rgba(232,102,42,.4);}
.site-prose a:hover{color:var(--pine);text-decoration-color:var(--pine);}

/* ---------- Homepage section cards ---------- */
.site-sections{margin-top:1rem;}
.site-section-card{display:flex;flex-direction:column;gap:.35rem;background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--pine);border-radius:6px;padding:1.3rem;height:100%;text-decoration:none !important;transition:transform .2s,box-shadow .2s;}
.site-section-card:hover{box-shadow:0 12px 26px rgba(36,74,59,.16);transform:translateY(-3px);border-top-color:var(--orange);}
.site-section-card__title{font-family:'Oswald',sans-serif;font-weight:600;color:var(--pine);font-size:1.2rem;text-transform:uppercase;}
.site-section-card:hover .site-section-card__title{color:var(--orange-deep);}
.site-section-card__sub{color:var(--muted);font-size:.86rem;}

/* ---------- Listing cards ---------- */
.site-listing .site-card,.site-home .site-card{display:block;width:auto;margin:0 0 .6rem;}
.site-card__link{display:flex;align-items:center;gap:.9rem;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--orange);border-radius:6px;padding:.8rem 1rem;text-decoration:none !important;transition:box-shadow .2s;}
.site-card__link:hover{box-shadow:0 6px 18px rgba(36,74,59,.12);}
.site-card__link:hover .site-card__title{color:var(--orange-deep) !important;}
.site-card__media img{width:120px;height:78px;object-fit:cover;border-radius:4px;}
.site-card__title{font-family:'Oswald',sans-serif;font-weight:600;color:var(--pine) !important;font-size:1.05rem;text-transform:uppercase;}
.site-gallery img{border-radius:6px;object-fit:cover;width:100%;}

/* ---------- Article/category/sidebar ---------- */
.site-article__summary{font-size:1.05rem;border-left:3px solid var(--orange);padding-left:1rem;color:var(--muted);margin:1rem 0;}
.site-article__dates{color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;}
.site-toc{background:var(--page-bg);border-radius:6px;padding:1rem;margin-bottom:1rem;}
.site-toc__title{font-weight:600;font-family:'Oswald',sans-serif;color:var(--pine);}
.site-card2{background:var(--surface);border:1px solid var(--border);border-radius:6px;overflow:hidden;height:100%;}
.site-card2:hover{box-shadow:0 12px 24px rgba(36,74,59,.14);}
.site-card2__media img{width:100%;height:180px;object-fit:cover;}
.site-card2__body{padding:.9rem;}
.site-card2__title a{color:var(--pine);font-family:'Oswald',sans-serif;text-transform:uppercase;font-size:.98rem;}
.site-card2__title a:hover{color:var(--orange-deep);}
.site-card2__more.button{background:var(--orange);color:#fff;border:none;font-weight:600;margin-top:.5rem;border-radius:3px;}
.site-sidebar{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--orange);border-radius:6px;padding:1.1rem;}
.site-sidebar__title{color:var(--pine);font-family:'Oswald',sans-serif;font-size:1.05rem;text-transform:uppercase;}
.site-sidebar .menu-list a{color:var(--ink);}
.site-sidebar .menu-list a:hover{background:var(--page-bg);color:var(--orange-deep);}
.site-sidebar .menu-list ul{border-left:1px solid var(--border);}

/* ---------- Footer ---------- */
.site-footer{background:var(--pine-deep);color:#A9BBA3;padding:2.5rem 0;margin-top:2rem;}
.site-footer .container{max-width:1160px;text-align:center;}
.site-footer__brand{font-family:'Oswald',sans-serif;font-weight:600;font-size:1.3rem;color:#fff;margin-bottom:1rem;text-transform:uppercase;}
.site-footer__map{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;justify-content:center;margin-bottom:1rem;}
.site-footer__map a{color:#A9BBA3;font-size:.82rem;text-decoration:none;}
.site-footer__map a:hover{color:var(--orange);}
.site-footer__copy{color:#73846D;font-size:.82rem;}
