/*
Theme Name: Santuario Granizados
Description: Sitio oficial y menú digital de Santuario Granizados.
Version: 1.0.0
Text Domain: santuario-granizados
*/

:root{color-scheme:dark;--bg:#101014;--panel:#1c1c23;--ink:#f9f7f1;--muted:#c1bdc8;--accent:#ff43e7}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 90% 0%,#342066 0,transparent 45%),radial-gradient(ellipse at 0% 50%,#251432 0,transparent 45%),var(--bg);color:var(--ink);font:16px/1.6 system-ui,sans-serif}header,main,footer{max-width:1140px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #34333c}.brand{font-weight:900;line-height:1.1;letter-spacing:-1px}.brand small{display:block;font-size:12px;letter-spacing:3px;margin-top:5px;color:var(--accent)}nav a{color:var(--ink);text-decoration:none}.hero{padding:60px 0 35px;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:var(--accent);font-size:12px;font-weight:800}h1{font-size:clamp(40px,8vw,78px);letter-spacing:-3px;line-height:1.03;margin:16px 0 24px}h1 span{color:var(--accent)}p{color:var(--muted)}h2{font-size:30px;letter-spacing:-1px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--panel);border:1px solid #34333c;border-radius:20px;padding:24px;display:flex;flex-direction:column}.card h3{margin:4px 0 8px;font-size:22px;line-height:1.2}.address{min-height:64px}.hours{padding:14px 0;border-top:1px solid #34333c;font-size:14px;color:var(--muted);flex:1}.hours div{margin-bottom:8px}.button{display:block;text-align:center;text-decoration:none;color:#0c2118;background:#9ce9b4;border-radius:12px;padding:12px;font-weight:750}.select-wrap{padding:24px;background:var(--panel);border:1px solid #34333c;border-radius:20px;margin:32px 0}label{display:block;margin-bottom:10px;font-weight:700}select{width:100%;padding:14px;background:#101014;color:var(--ink);border:1px solid #78727f;border-radius:10px;font:inherit}.prices-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px;border-bottom:1px solid #34333c}th{color:var(--accent)}footer{font-size:13px;color:var(--muted);margin-top:32px;border-top:1px solid #34333c}a:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.grid{grid-template-columns:1fr}header,main,footer{padding:20px}.hero{padding-top:40px}.address{min-height:0}}

html{scroll-behavior:smooth;scroll-padding-top:30px}main{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;max-width:1200px}.hero{align-self:center}.hero h1{font-size:clamp(42px,6vw,76px)}.hero-art{padding-top:40px;align-self:center}.hero-art img{width:100%;height:auto;border-radius:24px;aspect-ratio:1;object-fit:cover;box-shadow:0 0 70px #ee245330}.hero-button{display:inline-block;background:var(--accent);color:#1b0923;padding:13px 22px;border-radius:12px;font-weight:800;text-decoration:none}.select-wrap,#sabores,#precios,#sedes,.closing{grid-column:1/-1}.select-wrap{margin-top:36px}#sabores,#precios,#sedes{padding-top:35px}#sabores>p{font-size:14px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.filters button{border:1px solid #63506f;border-radius:25px;background:#23172f;color:#eddfef;padding:11px 16px;font:700 12px system-ui;cursor:pointer}.filters button[aria-pressed=true]{background:var(--accent);color:#220d28;border-color:var(--accent)}#buscar{display:block;width:100%;background:#191321;color:var(--ink);border:1px solid #675774;border-radius:10px;padding:13px;font:inherit;margin-top:8px}#sabores>label{font-size:12px;color:var(--muted)}#estado{min-height:24px;font-size:13px;color:#9aeeff}.flavor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.flavor{padding:0;overflow:hidden;background:#1c1628;border:1px solid #47344e;border-radius:16px;text-align:left;color:var(--ink);cursor:pointer;transition:transform .15s,border-color .15s}.flavor:hover{transform:translateY(-3px);border-color:#d991dd}.flavor[aria-pressed=true]{border:2px solid var(--accent)}.flavor img{width:100%;height:auto;display:block;aspect-ratio:1;object-fit:cover}.flavor-info{padding:15px}.flavor-type{font-size:8px;letter-spacing:.8px;color:#a1ebff;font-weight:800}.flavor h3{font:800 18px/1.2 system-ui;margin:8px 0}.flavor p{font:12px/1.5 system-ui;min-height:38px;margin:0 0 10px}.flavor-action{font:700 11px system-ui;color:var(--accent)}.prices-scroll{overflow-x:auto;border:1px solid #5b3c63;border-radius:15px;background:#21152c}table{min-width:620px}caption{text-align:left;padding:15px;font-size:12px;color:var(--muted)}td:last-child{color:var(--accent);font-weight:800}.price-note{font-size:12px}.choose{background:transparent;color:var(--ink);border:1px solid #76637f;border-radius:12px;padding:11px;font:700 13px system-ui;margin-top:9px;cursor:pointer}.maps-link{text-align:center;color:#a1ebff;font-size:11px;margin-top:13px;text-decoration:none}.closing{padding:70px 0 35px;text-align:center}footer{padding-bottom:115px}.order-bar{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;gap:15px;align-items:center;justify-content:space-between;background:#170d22ed;backdrop-filter:blur(16px);border-top:1px solid #735080;padding:14px max(20px,calc((100vw - 1140px)/2))}.order-bar>div{font-size:13px;font-weight:750}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a1ebff;outline-offset:4px}.hours div{margin-bottom:8px}nav{font-size:13px}.grid{gap:18px}.card{background:#1c1628;border-color:#594261}@media(max-width:950px){.flavor-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){main{grid-template-columns:1fr}.hero{padding-bottom:12px}.hero-art{padding-top:0}header,main,footer{padding-left:20px;padding-right:20px}nav{font-size:11px}.brand img{width:60px;height:60px}.hero h1{font-size:55px}.flavor-grid{grid-template-columns:repeat(2,1fr);gap:12px}.flavor-info{padding:12px}.flavor h3{font-size:15px}.flavor-type{font-size:7px;letter-spacing:.4px}.flavor p{font-size:10px;min-height:38px}.filters{gap:6px}.filters button{padding:9px 11px;font-size:10px}.grid{grid-template-columns:1fr}.order-bar>div{font-size:11px;max-width:45%}.order-bar .button{font-size:12px;padding:12px}.closing h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.flavor{transition:none}.flavor:hover{transform:none}}

.skip{position:fixed;top:-100px;left:12px;z-index:100;background:white;color:black;padding:12px}.skip:focus{top:12px}

.site-logo{display:block;width:110px;height:auto;border-radius:0!important}.footer-brand{display:inline-block}.footer-logo{display:block;width:130px;height:auto;border-radius:0}footer p{margin-top:12px}@media(max-width:600px){.brand .site-logo{width:84px;height:auto}.footer-logo{width:112px;height:auto}}

.hero .hero-emotion{color:var(--ink);font-size:21px;font-weight:750;line-height:1.3;margin:20px 0 14px}.hero .hero-products{font-size:13px;color:#dbade6;margin-top:18px}.hero>p{line-height:1.65}@media(max-width:600px){.hero .hero-emotion{font-size:20px}}

.hero-art img{aspect-ratio:16/9;object-fit:contain;height:auto;box-shadow:0 0 60px #bb23c930}

main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}main>*{min-width:0}.flavor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.flavor{min-width:0}@media(max-width:950px){.flavor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){main{grid-template-columns:minmax(0,1fr)}.flavor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
