/* Cambios visuales exclusivos del Home. */
html[data-theme="light"] .hero-bg-photo-light {
    filter: none;
    opacity: 1;
}
.quick-nav-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.quick-nav-item { position:relative; isolation:isolate; min-height:0; aspect-ratio:8 / 7; box-sizing:border-box; padding:clamp(20px,2.2vw,30px); overflow:hidden; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; text-align:left; color:#fff; background:#0a1628; border-radius:24px; }
.mn-category-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.quick-nav-item::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,14,25,.08),rgba(5,14,25,.4) 35%,rgba(5,14,25,.96)); z-index:-1; }
.quick-nav-item .quick-nav-icon { width:44px; height:44px; object-fit:contain; margin:0 0 18px; }
.quick-nav-item .quick-nav-label { color:#fff; font-size:30px; font-weight:800; line-height:1.15; letter-spacing:-.035em; padding-right:35px; }
.mn-category-subtitle { color:#e2e8f0; font-size:15px; line-height:1.6; margin-top:12px; max-width:85%; }
.mn-category-arrow { position:absolute; right:24px; bottom:27px; display:grid; place-items:center; width:40px; height:40px; border:1px solid #1ea7e4; border-radius:50%; color:#4ccaf4; font-size:23px; }
.quick-nav-item:hover .mn-category-photo { transform:none; }
.business-scroll { gap:24px; padding:8px 4px 24px; scroll-snap-type:x proximity; }
.business-card { position:relative; isolation:isolate; min-width:min(340px,85vw); max-width:min(340px,85vw); min-height:450px; border-radius:24px; background:#0a1628; scroll-snap-align:start; }
.mn-business-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform .45s ease; }
.mn-business-logo { object-fit:contain; padding:30px 30px 190px; background:#10243b; }
.business-card::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(5,14,25,.06),rgba(5,14,25,.25) 30%,#071321 95%); }
.business-card .business-card-image { background:transparent !important; height:200px; }
.business-card .business-card-body { margin-top:auto; padding:28px; background:transparent; }
.business-card .business-card-premium { flex:1; min-height:450px; padding:28px; justify-content:flex-end; background:transparent !important; }
.business-card .business-card-name,.business-card .business-card-premium-name { color:#fff; font-size:27px; line-height:1.2; letter-spacing:-.025em; overflow-wrap:anywhere; }
.business-card .business-card-category { color:#a8e4f9 !important; font-size:14px; line-height:1.5; }
.business-card .business-card-location { color:#d5dfe9; font-size:14px; }
.business-card .business-card-link { color:#a8e4f9; border-color:#1ea7e4; font-size:14px; margin-top:18px; }

.business-card:hover .mn-business-photo { transform:scale(1.035); }
.business-card-premium-dots { display:none; }
.signature-final-box { padding:clamp(30px,6vw,80px); background:linear-gradient(90deg,rgba(5,18,33,.94) 0%,rgba(5,18,33,.78) 43%,rgba(5,18,33,.12) 76%),url("../img/home-premium/feria-uruguay.36636162e5ec.png") center/cover; }
.signature-final-box h2 { font-size:clamp(32px,4.5vw,60px); font-weight:800; letter-spacing:-.045em; line-height:1.12; max-width:820px; }
.signature-final-box p { font-size:17px; line-height:1.7; max-width:650px; }
.signature-final-actions { flex-wrap:wrap; }
.signature-final-actions a { font-size:15px; padding:16px 24px; }
.quick-nav-item:focus-visible,.business-card:focus-visible,.signature-final-actions a:focus-visible { outline:3px solid #1ea7e4; outline-offset:4px; }
@media(max-width:900px) { .quick-nav-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .quick-nav-item { min-height:0; } }
@media(max-width:600px) { .quick-nav-grid { grid-template-columns:1fr; } .quick-nav-item { min-height:0; } }
@media(prefers-reduced-motion:reduce) { .mn-category-photo,.mn-business-photo,.quick-nav-item,.business-card { transition:none; transform:none !important; } }

/* Fondos fotográficos aprobados: la tipografía permanece en HTML. */
.quick-nav-item::before { background:linear-gradient(180deg,transparent 15%,rgba(5,14,25,.12) 42%,rgba(5,14,25,.92) 100%); }
@media(max-width:600px) { .signature-final-box { background-image:linear-gradient(90deg,rgba(5,18,33,.93),rgba(5,18,33,.76)),url("../img/home-premium/feria-uruguay.36636162e5ec.png"); background-position:65% center; } }

/* Interacción de los CTAs del banner: solo presentación. */
.signature-final-actions a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease;
}
@media (hover:hover) and (pointer:fine) {
    .signature-final-actions a:hover {
        transform:translateY(-4px);
        background-color:#38c4f2;
        box-shadow:0 10px 28px rgba(30,167,228,.28);
    }
    .signature-final-actions a.ghost:hover {
        background-color:rgba(30,167,228,.14);
        border-color:#1ea7e4;
        box-shadow:0 10px 28px rgba(0,0,0,.22);
    }
}
.signature-final-actions a:active { transform:translateY(-1px); }
.signature-final-actions a:focus-visible {
    outline:3px solid #38c4f2;
    outline-offset:4px;
}
@media (prefers-reduced-motion:reduce) {
    .signature-final-actions a { transition:none; }
    .signature-final-actions a:hover,
    .signature-final-actions a:active { transform:none; }
}

/* Same composition as the generated 8:7 card backgrounds. */
@media(max-width:1100px) {
    .quick-nav-item .quick-nav-label { font-size:25px; }
    .quick-nav-item .quick-nav-icon { width:36px; height:36px; margin-bottom:12px; }
    .mn-category-subtitle { font-size:14px; line-height:1.4; margin-top:10px; }
}
@media(max-width:380px) {
    .quick-nav-item .quick-nav-label { font-size:22px; }
    .quick-nav-item .quick-nav-icon { width:30px; height:30px; margin-bottom:8px; }
    .mn-category-subtitle { font-size:13px; }
    .mn-category-arrow { right:16px; bottom:20px; width:32px; height:32px; }
}
