/* I Love Típico 1.28: editorial refinement, no external fonts or libraries. */
:root { --ilt-soft: #ffffff08; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible { outline: 2px solid var(--red); outline-offset: 4px; }
body.home .intro { padding-top: clamp(32px,4vw,60px); padding-bottom: 30px; align-items: center; }
body.home .intro h1 { font-size: clamp(34px,4.4vw,64px); letter-spacing: -.055em; max-width: 850px; text-wrap: balance; }
body.home .intro p:last-child { max-width: 650px; line-height: 1.7; }
body.home .intro .outline-button { white-space: nowrap; min-height: 46px; }
body.home .featured-layout { gap: 22px; }
body.home .hero-card { border: 1px solid var(--line); box-shadow: 0 16px 48px #0003; }
body.home .hero-card .card-image:after { background: linear-gradient(0deg,#09090bfa 0%,#09090ba8 40%,#09090b12 100%); }
body.home .hero-card h2 { text-wrap: balance; line-height: 1.13; }
body.home .hero-cta { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; }
body.home .card-compact { border: 1px solid var(--line); background: var(--ilt-soft); }
body.home .card-compact h3 { line-height: 1.35; }
body.home .radio-panel { border-color: #ffffff20; background-image: radial-gradient(ellipse at top right,#fa334b17,transparent 70%); }
body.home .section-heading h2 { letter-spacing: -.04em; text-wrap: balance; }
body.home .section-heading { border-bottom: 1px solid var(--line); padding-bottom: 18px; }
body.home .section-heading .text-link { white-space: nowrap; min-height: 44px; display: inline-flex; align-items: center; }
body.home .discovery-nav { border: 1px solid var(--line); border-radius: var(--ilt-radius,12px); overflow: hidden; }
body.home .discovery-nav>a { transition: background .18s ease; }
body.home .discovery-nav>a:hover { background: #ffffff08; }
body.home .card-grid .card-copy h3 { line-height: 1.35; }
.card-copy h2,.card-copy h3,.collection-name { overflow-wrap: anywhere; }
.card-image:focus-visible { outline-offset: -4px; }
.radio-dock { padding-bottom: env(safe-area-inset-bottom,0px); }
body { padding-bottom: calc(100px + env(safe-area-inset-bottom,0px)); }
#ilt-search-dialog { width: min(760px,calc(100% - 32px)); max-height: calc(100dvh - 48px); overflow: auto; padding: clamp(22px,4vw,40px); border: 1px solid #ffffff25; border-radius: 18px; background: var(--panel); color: var(--text); box-shadow: 0 30px 100px #0009; }
#ilt-search-dialog::backdrop { background: #06060bd9; backdrop-filter: blur(6px); }
#ilt-search-dialog .dialog-heading { gap: 16px; align-items: flex-start; }
#ilt-search-dialog h2 { font-size: clamp(24px,4vw,34px); }
#ilt-search-dialog .search-form { display: flex; flex-wrap: wrap; max-width: none; }
#ilt-search-dialog .search-form>label:first-of-type { flex: 1 1 100%; }
#ilt-search-dialog .category-select { flex: 1 1 200px; }
#ilt-search-dialog select { width: 100%; max-width: 100%; min-height: 48px; }
.ilt-search-close { flex-shrink: 0; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: #ffffff08; color: var(--text); }
.ilt-submenu-toggle { display: none; }
@media (max-width:800px) {
 #primary-nav { max-height: 65dvh; overflow-y: auto; overscroll-behavior: contain; }
 #primary-nav .menu { display: block; }
 #primary-nav .menu>li { border-bottom: 1px solid var(--line); }
 #primary-nav .menu a { display: inline-flex; align-items: center; min-height: 48px; padding: 10px 8px; }
 #primary-nav .menu-item-has-children>a { max-width: calc(100% - 52px); }
 #primary-nav .ilt-submenu-toggle { display: inline-flex; align-items: center; justify-content: center; float: right; width: 44px; min-height: 44px; margin-top: 2px; border: 1px solid var(--line); background: var(--ilt-soft); color: var(--text); border-radius: 8px; }
 #primary-nav .menu .sub-menu { position: static; display: none; padding: 0 12px 12px; clear: both; }
 #primary-nav .menu .ilt-submenu-open>.sub-menu { display: block; }
 body.home .intro { padding-top: 30px; }
 body.home .intro h1 { font-size: clamp(32px,7vw,48px); }
 body.home .section-heading { gap: 12px; }
 body.home .section-heading h2 { font-size: clamp(24px,5vw,30px); }
 body.home .hero-card .card-copy { padding-left: 22px; padding-right: 22px; }
 .admin-bar .site-header { top: 46px; }
}
@media (max-width:600px) { .admin-bar .site-header { top: 0; } }
@media (max-width:480px) {
 body.home .section-heading { align-items: flex-start; flex-wrap: wrap; }
 body.home .section-heading>div { flex: 1 1 190px; }
 body.home .intro .eyebrow { letter-spacing: 1.2px; font-size: 9px; }
 #ilt-search-dialog .search-form>.button { width: 100%; }
}
@media (prefers-reduced-motion:reduce) {
 *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
@media (max-width:480px) {
 .header-actions .header-search { display: inline-flex; min-width: 40px; min-height: 40px; padding: 8px; font-size: 0; }
 .header-actions .header-search span { font-size: 22px; }
}
