/* farmaciasvincolo.ch — Farmacia allo Svincolo pharmacy. Tokens from design/specs.md */
:root{
  --green:#2E9B3F;
  --green-deep:#207A2C;
  --coral:#E8638A;
  --coral-deep:#C84A70;
  --ink:#2A2F31;
  --muted:#6E767A;
  --page-bg:#F4F8F3;
  --surface:#FFFFFF;
  --border:#DCE7DA;
}
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:'Archivo','Source Sans 3',sans-serif;font-weight:700;letter-spacing:.005em;}

#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(--surface);min-height:64px;position:sticky;top:0;z-index:50;box-shadow:0 2px 0 var(--green);}
.site-nav .container{max-width:1100px;}
.site-brand{color:var(--green-deep) !important;font-weight:800;font-size:1.4rem;background:transparent;}
.site-brand span{color:var(--green);}
.site-nav .navbar-item{color:var(--ink);font-weight:600;font-size:.9rem;background:transparent;}
.site-nav a.navbar-item:hover{color:var(--green-deep);background:rgba(46,155,63,.08);}
.site-nav a.site-cta{background:var(--green);color:#fff !important;border-radius:4px;margin:.55rem 0;font-weight:700;}
.site-nav a.site-cta:hover{background:var(--green-deep);}
.navbar-burger{color:var(--green-deep);margin-left:auto;}.navbar-burger span{background:var(--green-deep);}
@media(max-width:1023px){.site-nav .navbar-menu{background:var(--surface);}.site-nav .navbar-menu a.navbar-item{color:var(--ink);}}

/* ---------- Hero ---------- */
.site-hero{background:linear-gradient(120deg,#207A2C,#2E9B3F 65%,#46b257);color:#fff;padding:2.8rem 0;border-bottom:5px solid var(--coral);}
.site-hero .container{max-width:1100px;}
.site-hero__title{font-size:2.2rem;font-weight:800;color:#fff;line-height:1.14;}
.site-hero__tag{color:#E4F3E5;font-size:1.05rem;margin-top:.45rem;}

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

/* ---------- Prose ---------- */
.site-prose{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.9rem;}
.site-heading--1{font-size:2rem;color:var(--green-deep);margin:.1em 0 .5em;}
.site-heading--2{font-size:1.4rem;color:var(--green-deep);margin:1.2em 0 .6em;padding-left:.7rem;border-left:4px solid var(--coral);}
.site-heading--3{font-size:1.18rem;color:var(--coral-deep);margin:1.1em 0 .4em;}
.site-block--paragraph{margin:.8em 0;}
.site-block--image{margin:1.1rem 0;}
.site-block--image img{border-radius:8px;border:1px solid var(--border);max-width:100%;}
.site-block--quote{border-left:4px solid var(--green);background:var(--page-bg);padding:.9em 1.2em;margin:1.3em 0;border-radius:6px;}
.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(--green-deep);text-decoration:underline;text-decoration-color:rgba(32,122,44,.4);}
.site-prose a:hover{color:var(--coral-deep);text-decoration-color:var(--coral-deep);}

/* ---------- 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(--green);border-radius:8px;padding:1.2rem;height:100%;text-decoration:none !important;transition:transform .2s,box-shadow .2s;}
.site-section-card:hover{box-shadow:0 12px 26px rgba(46,155,63,.14);transform:translateY(-3px);border-top-color:var(--coral);}
.site-section-card__title{font-family:'Archivo',sans-serif;font-weight:700;color:var(--green-deep);font-size:1.15rem;}
.site-section-card:hover .site-section-card__title{color:var(--coral-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(--green);border-radius:8px;padding:.8rem 1rem;text-decoration:none !important;transition:box-shadow .2s;}
.site-card__link:hover{box-shadow:0 6px 18px rgba(46,155,63,.12);}
.site-card__link:hover .site-card__title{color:var(--green-deep) !important;}
.site-card__media img{width:104px;height:72px;object-fit:cover;border-radius:6px;background:var(--page-bg);}
.site-card__title{font-family:'Archivo',sans-serif;font-weight:600;color:var(--green-deep) !important;font-size:1.02rem;}
.site-gallery img{border-radius:8px;object-fit:cover;width:100%;background:var(--page-bg);}

/* ---------- Article/category/sidebar ---------- */
.site-article__summary{font-size:1.05rem;border-left:3px solid var(--coral);padding-left:1rem;color:var(--muted);margin:1rem 0;}
.site-article__dates{color:var(--muted);font-size:.85rem;}
.site-toc{background:var(--page-bg);border-radius:8px;padding:1rem;margin-bottom:1rem;}
.site-toc__title{font-weight:700;font-family:'Archivo',sans-serif;color:var(--green-deep);}
.site-card2{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;height:100%;}
.site-card2:hover{box-shadow:0 12px 24px rgba(46,155,63,.13);}
.site-card2__media img{width:100%;height:170px;object-fit:cover;background:var(--page-bg);}
.site-card2__body{padding:.9rem;}
.site-card2__title a{color:var(--green-deep);font-family:'Archivo',sans-serif;}
.site-card2__title a:hover{color:var(--coral-deep);}
.site-card2__more.button{background:var(--green);color:#fff;border:none;font-weight:600;margin-top:.5rem;border-radius:4px;}
.site-sidebar{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--coral);border-radius:8px;padding:1.1rem;}
.site-sidebar__title{color:var(--coral-deep);font-family:'Archivo',sans-serif;font-size:1.05rem;}
.site-sidebar .menu-list a{color:var(--ink);}
.site-sidebar .menu-list a:hover{background:var(--page-bg);color:var(--green-deep);}
.site-sidebar .menu-list ul{border-left:1px solid var(--border);}

/* ---------- Footer ---------- */
.site-footer{background:var(--green-deep);color:#CFE6D2;padding:2.5rem 0;margin-top:2rem;}
.site-footer .container{max-width:1100px;text-align:center;}
.site-footer__brand{font-family:'Archivo',sans-serif;font-weight:700;font-size:1.4rem;color:#fff;margin-bottom:1rem;}
.site-footer__map{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;justify-content:center;margin-bottom:1rem;}
.site-footer__map a{color:#CFE6D2;font-size:.82rem;text-decoration:none;}
.site-footer__map a:hover{color:#fff;}
.site-footer__copy{color:#9CC6A2;font-size:.82rem;}
