@font-face{font-family:'Quicksand';src:url('fonts/Quicksand-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Quicksand';src:url('fonts/Quicksand-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Quicksand';src:url('fonts/Quicksand-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Quicksand';src:url('fonts/Quicksand-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Quicksand';src:url('fonts/Quicksand-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}

:root{
  --bg:#f4f4f4;
  --text:#231f20;
  --muted:#363636;
  --panel:#cacaca;
  --border:#ababab;
  --accent:#CFB07B ;
  --accent-contrast:#ffffff;
  --focus:#cacaca;/*#e7d2a1;*/
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Quicksand', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;line-height:1.6}

.page-header{width:100%;margin-top:0;padding-top:0;/*background:#231f20;*/display:flex;justify-content:center;align-items:center}
.page-header img{display:block;width:100%;max-width:900px;height:auto;padding: 0 24px; margin:0 auto}

.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;padding:8px 12px;background:var(--accent);color:var(--accent-contrast);z-index:1000;border-radius:6px;outline:2px solid var(--focus)}

.container{width:100%;max-width:900px;margin:0 auto;padding:24px}
.header-title{font-size:1.625rem;font-weight:700;margin:0 0 4px}
.subtitle{color:var(--muted);margin:0 0 16px}
section[aria-labelledby="consumo-title"]{padding-top:0;margin-top:-24px}

.newbox-box{background:var(--panel);color:var(--text);border-radius:12px;border:1px solid var(--border);margin:14px 0;overflow:hidden;transition:box-shadow .4s ease, background-color .4s ease, transform .4s ease}
.newbox-box.expanded{box-shadow:0 8px 20px rgba(0,0,0,.18);/*background:#d3d3d3;*/transform:translateY(-1px)}
.newbox-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border)}
.section-title{font-size:1rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;margin:0;color:var(--text)}
.arrow-button{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;padding:0;border-radius:8px;background:transparent;border:0;cursor:pointer;text-align:left;font-family:'Quicksand', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;color:var(--text);-webkit-text-fill-color:var(--text)}
.arrow-button:hover{background:var(--panel)}
.arrow-button:focus{outline:2px solid var(--focus);outline-offset:2px}
.arrow{font-size:.9rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.newbox-content{padding:0 16px 16px 16px}

.table{width:100%;border-collapse:collapse;margin-top:10px}
.table caption{caption-side:top;text-align:left;font-weight:600;margin:8px 0}
.table th,.table td{padding:10px;border-bottom:1px solid var(--border);text-align:left}
.table th{background:var(--panel);font-weight:600}
.table tr:last-child td{border-bottom:none}

.note{font-size:.9rem;margin:8px 0 0 0;color:var(--muted)}

/* Consumo Responsabile */
.responsible-icons{display:flex;justify-content:space-evenly;align-items:center;gap:20px;flex-wrap:wrap;margin:12px 0}
.responsible-icons img{display:block;width:72px;height:72px}
.newbox-box .newbox-content .note{text-align:center}

@media (max-width:640px){
  .responsible-icons{justify-content:space-around}
}

@media (max-width:640px){
  .container{padding:20px}
  .header-title{font-size:1.375rem}
  .section-title{font-size:.95rem}
}

/* Responsive tables (stacked) */
@media (max-width:640px){
  .table--responsive thead{display:none}
  .table--responsive tr{display:block;padding:10px 8px;border:1px solid var(--border);border-radius:10px;margin-bottom:10px;background:var(--bg)}
  .table--responsive td{display:grid;grid-template-columns:42% 1fr;gap:8px;border:0;padding:6px 0}
  .table--responsive td::before{content:attr(data-label);font-weight:600;color:var(--muted)}
  .table--responsive tr:last-child td{border-bottom:0}
}

/* Accessibility: reduce motion if requested by user */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important}
}

/* Links, focus, high contrast */
a{color:var(--accent)}
a:focus{outline:2px solid var(--focus);outline-offset:2px}

/* Utility */
.mt-0{margin-top:0}
.mb-0{margin-bottom:0}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:1rem}

/* Footer brand logo */
.footer{display:flex;justify-content:center;align-items:center;padding:24px 0}
.footer img{width:100%;max-width:900px;height:auto;display:block;margin:0 auto;padding: 0 24px}
