/*
Theme Name: NutriClean
Author: D come Dieta
Description: Tema ultraleggero mobile-first SEO-ready per dcomedieta.com
Version: 2.0.0
Text Domain: nutriclean
*/
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --green-dark:#2d6a4f;--green-mid:#40916c;--green-light:#d8f3dc;
  --text:#1a1a1a;--muted:#5a5a5a;--border:#e5e5e3;--bg:#fafaf8;--white:#fff;
  --font:system-ui,-apple-system,sans-serif;--max:1080px;--radius:8px
}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:var(--green-dark);text-decoration:none}
a:hover{color:var(--green-mid);text-decoration:underline}

/* LAYOUT */
.site-container{max-width:var(--max);margin:0 auto;padding:0 1rem}
.content-area{display:grid;grid-template-columns:1fr 300px;gap:2.5rem;padding:2rem 0}
@media(max-width:768px){.content-area{grid-template-columns:1fr}.sidebar-area{display:none}}

/* HEADER */
.site-header{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:200}
.header-inner{max-width:var(--max);margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;height:64px;gap:1rem}
.site-branding{flex-shrink:0}
.site-title{margin:0;padding:0;font-size:1rem}
.site-title a{display:block;line-height:1}
.site-logo{height:44px;width:auto;display:block}

/* NAV DESKTOP */
.main-nav{flex:1;display:flex;justify-content:flex-end}
.main-nav ul{list-style:none;display:flex;flex-wrap:nowrap;align-items:center;gap:0;margin:0;padding:0}
.main-nav > ul > li{position:relative}
.main-nav > ul > li > a{display:block;padding:0 .85rem;line-height:64px;font-size:.82rem;font-weight:500;color:var(--text);white-space:nowrap;transition:color .2s;text-decoration:none}
.main-nav > ul > li > a:hover,.main-nav > ul > li:hover > a{color:var(--green-dark)}

/* DROPDOWN */
.main-nav ul ul{display:none;position:absolute;top:100%;left:0;min-width:200px;background:var(--white);border:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);box-shadow:0 8px 24px rgba(0,0,0,.08);z-index:300;list-style:none;padding:.4rem 0}
.main-nav ul li:hover > ul{display:block}
.main-nav ul ul li a{display:block;padding:.5rem 1rem;font-size:.82rem;color:var(--text);white-space:nowrap;text-decoration:none}
.main-nav ul ul li a:hover{background:var(--green-light);color:var(--green-dark)}

/* HAMBURGER */
.nav-toggle{display:none;flex-shrink:0;background:none;border:none;cursor:pointer;padding:6px;line-height:1}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--text);margin:5px 0;border-radius:2px;transition:.3s}

/* NAV MOBILE */
@media(max-width:900px){
  .nav-toggle{display:block}
  .main-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--white);border-bottom:2px solid var(--green-light);padding:.75rem 0;flex-direction:column;align-items:stretch;box-shadow:0 8px 24px rgba(0,0,0,.08);z-index:200}
  .main-nav.open{display:flex}
  .main-nav ul{flex-direction:column;gap:0;width:100%}
  .main-nav > ul > li > a{line-height:1;padding:.75rem 1.25rem}
  .main-nav ul ul{display:block;position:static;box-shadow:none;border:none;border-radius:0;background:var(--green-light);padding:0}
  .main-nav ul ul li a{padding:.55rem 2rem;font-size:.8rem;color:var(--green-dark)}
}

/* CARDS */
.posts-grid{display:grid;gap:1.5rem}
.post-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s;display:flex}
.post-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.08)}
.post-card-img{width:160px;flex-shrink:0;background:var(--green-light);overflow:hidden}
.post-card-img img{width:100%;height:100%;object-fit:cover}
.post-card-body{padding:1.1rem 1.25rem;flex:1}
.post-category{font-size:.7rem;font-weight:700;color:var(--green-mid);text-transform:uppercase;letter-spacing:.5px}
.post-card-title{font-size:1rem;font-weight:600;line-height:1.4;margin:.35rem 0 .5rem}
.post-card-title a{color:var(--text)}
.post-meta{font-size:.775rem;color:var(--muted);display:flex;gap:.6rem;flex-wrap:wrap}
.post-excerpt{font-size:.85rem;color:var(--muted);margin-top:.5rem;line-height:1.6}
.read-more{display:inline-block;margin-top:.65rem;font-size:.825rem;font-weight:600;color:var(--green-dark)}
@media(max-width:600px){.post-card{flex-direction:column}.post-card-img{width:100%;height:160px}}

/* SINGLE */
.single-header{margin-bottom:1.5rem}
.single-header h1{font-size:1.75rem;line-height:1.3;font-weight:700;margin:.5rem 0}
@media(max-width:768px){.single-header h1{font-size:1.4rem}}
.featured-image{border-radius:var(--radius);overflow:hidden;margin-bottom:1.5rem}
.entry-content{max-width:700px}
.entry-content h2{font-size:1.35rem;font-weight:600;margin:1.75rem 0 .75rem;color:var(--green-dark)}
.entry-content h3{font-size:1.1rem;font-weight:600;margin:1.25rem 0 .5rem}
.entry-content p{margin-bottom:1rem}
.entry-content ul,.entry-content ol{margin:.75rem 0 1rem 1.5rem}
.entry-content li{margin-bottom:.35rem}
.entry-content hr{border:none;border-top:1px solid var(--border);margin:2rem 0}
.entry-content blockquote{border-left:3px solid var(--green-mid);padding:.75rem 1.25rem;background:var(--green-light);border-radius:0 var(--radius) var(--radius) 0;margin:1.25rem 0;font-style:italic;color:var(--muted)}

/* SIDEBAR */
.widget{margin-bottom:1.5rem}
.widget-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);border-bottom:2px solid var(--green-light);padding-bottom:.5rem;margin-bottom:.75rem}
.widget ul{list-style:none}
.widget li{padding:.35rem 0;border-bottom:1px solid var(--border);font-size:.875rem}
.widget li:last-child{border:none}

/* FOOTER */
.site-footer{background:var(--green-dark);color:rgba(255,255,255,.85);margin-top:3rem}
.footer-inner{max-width:var(--max);margin:0 auto;padding:2rem 1rem 1rem}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;margin-bottom:1.5rem}
.footer-widget h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;color:rgba(255,255,255,.5);margin-bottom:.75rem}
.footer-widget ul{list-style:none}
.footer-widget li{margin-bottom:.4rem}
.footer-widget a{color:rgba(255,255,255,.8);font-size:.875rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:1rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}
.footer-bottom p{font-size:.78rem;color:rgba(255,255,255,.45)}

/* VARIE */
.breadcrumb{font-size:.78rem;color:var(--muted);margin-bottom:1rem}
.breadcrumb a{color:var(--green-mid)}
.pagination{display:flex;gap:.5rem;justify-content:center;margin:2rem 0;flex-wrap:wrap}
.pagination a,.pagination span{padding:.5rem .85rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem;background:var(--white)}
.pagination .current{background:var(--green-dark);color:var(--white);border-color:var(--green-dark)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
