:root{
    /* Brand */
    --brand-yellow:#ffe500;          /* accento primario dal logo */
    --brand-yellow-600:#e6d000;      /* hover/darken */
    --brand-yellow-300:#fff27a;      /* focus/soft */

    /* Ink & Surfaces (dark) */
    --ink-100:#f5f7fa;
    --ink-300:#cdd3da;
    --ink-500:#aab0b7;
    --ink-700:#8a9097;
    --ink-900:#e9edf2;               /* titoli chiari */

    --bg:#0a0a0a;                    /* body */
    --surface:#111214;               /* header/footer/superfici */
    --card:#15171a;                  /* card */
    --border:#26282d;                /* bordi/outline */
    --shadow: 0 10px 30px rgba(0,0,0,.35);

    /* Links & states */
    --link:#ffe500;
    --link-hover:#fff27a;

    /* Misc */
    --radius:14px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
    margin:0;
    font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
    color:var(--ink-100);
    background:radial-gradient(800px 500px at 80% -10%,rgba(255,229,0,.08),transparent 60%),
    radial-gradient(900px 600px at -10% 10%,rgba(255,229,0,.06),transparent 60%),
    var(--bg);
}

/* Layout base */
.container{width:min(1100px,92%);margin:0 auto}
.flex{display:flex;align-items:center;justify-content:space-between}

/* Header */
.site-header{
    position:sticky; top:0; z-index:10;
    background:rgba(17,18,20,.75);
    backdrop-filter: blur(10px);
    border-bottom:1px solid var(--border);
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink-100);font-weight:800}
.logo{height:56px;}
.nav a{margin:0 10px;color:var(--ink-300);text-decoration:none}
.nav a:hover{color:var(--ink-100)}

/* Hero */
.hero{padding:32px 0 18px}
.accent{color:var(--brand-yellow)}
h1,h2,h3{color:var(--ink-900);margin:0 0 8px}

/* Search */
.search{display:flex;gap:10px;align-items:center;position:relative}
.search input{
    flex:1; padding:12px 14px; border-radius:12px;
    background:#0f1113; color:var(--ink-100);
    border:1px solid var(--border); outline:none;
}
.search input::placeholder{color:var(--ink-500)}
.search input:focus{
    border-color:var(--brand-yellow);
    box-shadow:0 0 0 3px rgba(255,229,0,.25);
}
.search button{
    padding:12px 16px; border:0; border-radius:12px;
    background:var(--brand-yellow); color:#000; font-weight:800; cursor:pointer;
    box-shadow:var(--shadow);
}
.search button:hover{background:var(--brand-yellow-600)}
.search button:active{transform:translateY(1px)}

.autocomplete{
    position:absolute; top:48px; left:0; right:0;
    background:#0f1113; border:1px solid var(--border);
    border-radius:12px; display:none; max-height:280px; overflow:auto;
}
.autocomplete a{
    display:block; padding:10px 12px; color:var(--ink-100); text-decoration:none;
}
.autocomplete a:hover{background:#16181b}

/* Grid cards */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0 32px}
.card{
    background:var(--card); border:1px solid var(--border);
    border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow);
}
.card img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;background:#0f1113}
.card .p{padding:14px}
.card h3{margin:0 0 6px;font-size:18px;color:var(--ink-900)}
.muted{color:var(--ink-500);font-size:14px;margin:0}

/* Detail page */
.detail{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0 40px}
.detail .media img{width:100%;border-radius:var(--radius); background:#0f1113; border:1px solid var(--border)}
.detail .dates{padding:0;list-style:none}
.detail .date{
    display:flex;align-items:center;justify-content:space-between;
    background:var(--surface); border:1px solid var(--border);
    border-radius:12px; padding:10px 12px; margin:8px 0;
}

/* Buttons */
.btn{
    display:inline-block; padding:10px 14px; border-radius:12px;
    background:var(--brand-yellow); color:#000; text-decoration:none; font-weight:800;
    box-shadow:var(--shadow)
}
.btn:hover{background:var(--brand-yellow-600)}
.btn.ghost{
    background:transparent; color:var(--ink-100);
    border:1px solid var(--border);
}
.btn.ghost:hover{border-color:var(--brand-yellow); color:var(--ink-100)}

/* Lists, footer */
.list{padding:0;list-style:none}
.site-footer{
    padding:40px 0; color:var(--ink-500); text-align:center;
    border-top:1px solid var(--border); margin-top:40px; background:transparent;
}
.small{font-size:14px}

/* Links & selection */
a{color:var(--link); text-decoration: none;}
a:hover{color:var(--link-hover)}
::selection{background:var(--brand-yellow-300);color:#000}

/* Responsive */
@media(max-width:900px){
    .grid{grid-template-columns:1fr 1fr}
    .detail{grid-template-columns:1fr}
}

/* Optional: “brand burst” underline for headings */
h1 .accent, h2 .accent, h3 .accent{
    background:linear-gradient(transparent 70%, rgba(255,229,0,.35) 0);
}


/* Layout rhythm */
:root{
    --space-1: 6px; --space-2: 10px; --space-3: 14px; --space-4: 18px;
    --space-5: 24px; --space-6: 32px; --radius: 14px; --shadow-2: 0 10px 30px rgba(0,0,0,.35);
}

/* Header */
.site-header{box-shadow:0 1px 0 rgba(255,255,255,.04)}
.nav a{padding:8px 12px;border-radius:8px}
.nav a[aria-current="page"], .nav a.active{background:#16181b;color:#fff}

/* Hero */
.hero{grid-template-columns:1.1fr .9fr;gap:var(--space-5);padding:var(--space-6) 0 var(--space-4)}
.hero .muted{max-width:65ch}
.search{gap:var(--space-2)}
.search input{padding:12px 16px}
.search button{padding:12px 16px;border-radius:12px;font-weight:800}

/* Chips */
.chips{gap:10px;flex-wrap:wrap}
.chip{padding:8px 12px;border-radius:999px}
.chip.ghost{opacity:.9} .chip.ghost:hover{opacity:1}

/* Cards */
.grid{gap:var(--space-4)}
.card{border-radius:var(--radius);box-shadow:0 6px 16px rgba(0,0,0,.25)}
.card__media{display:block;overflow:hidden}
.card__media img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .25s}
.card--hover:hover .card__media img{transform:scale(1.02)}
.card .p{padding:12px 14px}
.card .meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--ink-500);margin-top:6px}

/* Rail (carosello) */
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);
    gap:14px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
.tile{scroll-snap-align:start;border-radius:14px}

/* Sections */
.section{padding:var(--space-5) 0}
.section__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}

/* Newsletter */
.newsletter{gap:10px;flex-wrap:wrap}
.input-pill{padding:12px 14px;border-radius:999px}
#feedback{min-height:20px}

/* Responsive */
@media(max-width:1024px){.hero{grid-template-columns:1fr}}
@media(max-width:900px){
    .grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
    .grid{grid-template-columns:1fr}
    .search button{min-width:110px}
}
:root{
    --bs-body-bg:#0a0a0a; --bs-body-color:#f5f7fa;
    --bs-border-color:#26282d; --bs-primary:#ffe500; --bs-link-color:#ffe500;
}
.btn-primary{color:#000;background:var(--bs-primary);border:0}
.btn-primary:hover{background:#e6d000}
.form-control, .form-select{background:#0f1113;border-color:#26282d;color:#f5f7fa}
.form-control:focus, .form-select:focus{border-color:#ffe500;box-shadow:0 0 0 .25rem rgba(255,229,0,.25)}
.card{background:#15171a;border-color:#26282d}

.card-hover .ratio img{transition:transform .25s}
.card-hover:hover .ratio img{transform:scale(1.02)}
/* Material icon size senza rompere line-height */
.material-symbols-rounded{font-variation-settings:"FILL" 1,"wght" 600,"GRAD" 0,"opsz" 24}


/* Testo muted un filo più chiaro */
:root {
    --bs-secondary-color: #9aa3af;               /* light */
    --bs-secondary-color-rgb: 154,163,175;
}
[data-bs-theme="dark"] {
    --bs-secondary-color: #a1a1aa;               /* dark */
    --bs-secondary-color-rgb: 161,161,170;
}
/* Placeholder più chiari */
.form-control::placeholder,
.form-select::placeholder {
    color: var(--bs-secondary-color) !important;
    opacity: .85;
}
.text-muted { color: var(--bs-secondary-color) !important; }

.text-warning{
    color:#ffe500 !important;
}