/* Maldito Café — estilos del catálogo (base v12 + v2) */
:root{
  --bg:#150F0B; --surface:#1E1712; --surface2:#291F17; --surface3:#332619;
  --text:#F6E7D8; --muted:#AC9C8C; --muted2:#7E7061;
  --line:rgba(246,231,216,.10); --line2:rgba(246,231,216,.18);
  --ember:#E2A24C; --ember-dim:#8a6a34; --on-ember:#1a1209;
  --ok:#5BAE83; --warn:#E2A24C; --no:#6B6258;
  --shadow:0 30px 80px rgba(0,0,0,.45);
  --radius:20px;
}
html[data-theme="light"]{
  --bg:#F6F0E6; --surface:#FFFCF6; --surface2:#F0E6D6; --surface3:#E7D9C3;
  --text:#231A12; --muted:#6E5E4C; --muted2:#8E7D6A;
  --line:rgba(35,26,18,.12); --line2:rgba(35,26,18,.2);
  --ember:#B5732A; --ember-dim:#B5732A; --on-ember:#1a1209;
  --shadow:0 30px 80px rgba(60,40,20,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;transition:.25s background,.25s color;overflow-x:hidden;font-size:16px;line-height:1.5}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.5;
  background:
    radial-gradient(ellipse 900px 500px at 12% -5%, rgba(226,162,76,.10), transparent 60%),
    radial-gradient(ellipse 700px 500px at 100% 20%, rgba(140,60,40,.10), transparent 60%);
}
a{color:inherit}
.wrap{width:min(1320px,92vw);margin:auto}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:var(--ember);font-weight:700}
.display{font-family:'Baloo 2',sans-serif;font-weight:800;letter-spacing:-.01em}
.serif-quote{font-family:'Fraunces',serif;font-style:italic;font-weight:500}
.muted{color:var(--muted)}
h1,h2,h3,h4{margin:0}
button{font-family:inherit}

.topbar{position:fixed;z-index:90;top:0;left:0;right:0;background:color-mix(in srgb, var(--bg) 86%, transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.topbar-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-mark{width:29px;height:42px;color:var(--ember);display:inline-flex}
.brand-mark svg{width:100%;height:100%;display:block}
.brand-text{font-family:'Baloo 2';font-weight:800;font-size:1.05rem;letter-spacing:.02em;line-height:1}
.brand-text small{display:block;font-family:'Inter';color:var(--muted);font-weight:500;font-size:.62rem;letter-spacing:.06em;margin-top:3px;text-transform:uppercase}
.nav{display:flex;gap:2px;align-items:center}
.nav a,.icon-btn{border:1px solid transparent;background:transparent;padding:9px 13px;border-radius:999px;text-decoration:none;font-size:.82rem;color:var(--muted);cursor:pointer;font-weight:600}
.nav a:hover,.icon-btn:hover{border-color:var(--line);color:var(--text);background:var(--surface)}
.nav-cart{position:relative;border:1px solid var(--line2)!important}
.nav-cart .dot{position:absolute;top:-4px;right:-4px;background:var(--ember);color:var(--on-ember);font-size:.62rem;font-weight:800;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center}

.hero{min-height:88vh;padding:132px 0 40px;display:flex;flex-direction:column;justify-content:center;gap:34px}
.hero-top{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:center}
.hero-mark{width:155px;height:223px;color:var(--ember);margin-bottom:18px;display:inline-flex}
.hero-mark svg{width:100%;height:100%;display:block}
.hero h1{font-size:clamp(3.2rem,7vw,6rem);line-height:.86;margin:0 0 22px}
.hero h1 em{font-style:normal;color:var(--ember)}
.hero-subtitle{font-family:'Baloo 2';font-weight:700;font-size:clamp(1.05rem,2vw,1.4rem);color:var(--ember);letter-spacing:.01em;margin:10px 0 22px;text-transform:uppercase;letter-spacing:.04em}
.hero-copy{font-size:clamp(1.02rem,1.4vw,1.2rem);line-height:1.6;color:var(--muted);max-width:600px}
.hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.btn{border:1px solid var(--line2);background:var(--surface);color:var(--text);padding:14px 20px;border-radius:14px;font-weight:700;cursor:pointer;text-decoration:none;font-size:.92rem;display:inline-flex;align-items:center;gap:8px}
.btn:hover{border-color:var(--ember)}
.btn.primary{background:var(--ember);border-color:var(--ember);color:var(--on-ember)}
.btn.whatsapp{background:#2FAE60;border-color:#2FAE60;color:#fff}
.btn.block{width:100%;justify-content:center}
.btn:disabled{opacity:.4;cursor:not-allowed}
.hero-stats{display:grid;gap:16px}
.stat-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:22px 24px}
.stat-num{font-family:'Baloo 2';font-weight:800;font-size:2.6rem;line-height:1;color:var(--ember)}

.marquee-wrap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);overflow:hidden;padding:20px 0}
.marquee{display:flex;gap:0;width:max-content;animation:scroll 60s linear infinite}
@media (prefers-reduced-motion:reduce){.marquee{animation:none}}
.marquee:hover{animation-play-state:paused}
.marquee span{font-family:'Fraunces';font-style:italic;font-size:1.15rem;padding:0 34px;white-space:nowrap;color:var(--text)}
.marquee span::after{content:"—";margin-left:34px;color:var(--ember-dim)}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

section{padding:84px 0}
.section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:36px;flex-wrap:wrap}
.section-head h2{font-family:'Baloo 2';font-weight:700;font-size:clamp(1.7rem,3vw,2.5rem);margin-top:10px;max-width:640px}
.section-head p{max-width:420px;color:var(--muted);font-size:.95rem;line-height:1.6}

.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
.pillar{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:26px}
.pillar h3{font-family:'Baloo 2';font-size:1.15rem;margin-bottom:10px}
.pillar p{color:var(--muted);font-size:.9rem;line-height:1.6;margin:0}
.compromiso{margin-top:26px;border:1px dashed var(--line2);border-radius:18px;padding:24px 28px;background:var(--surface2)}
.compromiso h4{font-family:'Baloo 2';margin-bottom:12px}
.compromiso ul{margin:0;padding-left:20px;color:var(--muted);line-height:1.7}

.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:8px}
.cat-card{border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--surface);cursor:pointer;transition:.2s border-color,.2s transform}
.cat-card:hover{border-color:var(--ember);transform:translateY(-3px)}
.cat-card h3{font-family:'Baloo 2';font-size:1.05rem;margin-bottom:8px}
.cat-card p{color:var(--muted);font-size:.83rem;line-height:1.55;margin:0 0 12px}
.cat-count{font-family:'Baloo 2';color:var(--ember);font-weight:700}

.toolbar{position:sticky;top:72px;z-index:60;background:color-mix(in srgb, var(--bg) 92%, transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:16px 0}
.toolbar-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.search{flex:1;min-width:200px;background:var(--surface);border:1px solid var(--line2);border-radius:12px;padding:11px 16px;color:var(--text);font-size:.88rem}
.search::placeholder{color:var(--muted2)}
.filter{border:1px solid var(--line2);background:var(--surface);color:var(--muted);padding:9px 15px;border-radius:999px;font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap}
.filter.active{background:var(--ember);border-color:var(--ember);color:var(--on-ember)}
.result-count{font-size:.76rem;color:var(--muted2);padding-left:4px}

/* roast beans */
.beans{display:inline-flex;gap:3px;align-items:center;vertical-align:middle}
.bean-icon{width:14px;height:18px}
.beans.lg .bean-icon{width:18px;height:23px}

.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:34px}
.product{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface);display:flex;flex-direction:column;transition:.2s transform,.2s border-color;position:relative}
.product:hover{transform:translateY(-4px);border-color:var(--c1)}
.product.estimated{border-style:dashed}
.product-art{height:8px;background:linear-gradient(90deg,var(--c1),var(--c2))}
.product-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.tag{font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;padding:4px 9px;border-radius:999px;border:1px solid var(--line2);color:var(--muted2)}
.tag.verified{color:var(--ok);border-color:var(--ok)}
.tag.estimated{color:var(--warn);border-color:var(--warn);border-style:dashed}
.tag.mundo-tag{color:#8FB4D6;border-color:#8FB4D6}
.tag.collection-tag{color:var(--muted);font-style:italic}
.product.mundo{border-color:rgba(143,179,214,.35)}
.origin-ribbon{position:absolute;top:20px;right:16px;background:rgba(10,8,6,.72);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:.68rem;font-weight:700;padding:5px 11px;border-radius:999px;display:flex;align-items:center;gap:5px;z-index:2;white-space:nowrap}
.product h3{font-family:'Baloo 2';font-size:1.28rem;line-height:1.1;margin:2px 0 0}
.product .variety{color:var(--muted);font-size:.8rem}
.product .notes{font-size:.78rem;color:var(--muted2)}
.card-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--line)}
.score-badge{font-family:'Baloo 2';font-weight:800;font-size:1.7rem;color:var(--c1);line-height:1}
.score-badge small{display:block;font-family:'Inter';font-weight:600;font-size:.6rem;color:var(--muted2);text-transform:uppercase;letter-spacing:.06em}
.card-actions{display:flex;gap:6px;align-items:center}
.open-detail{background:var(--surface3);border:1px solid var(--line2);color:var(--text);padding:9px 12px;border-radius:10px;font-weight:700;font-size:.76rem;cursor:pointer}
.open-detail:hover{border-color:var(--c1)}
.quick-add{background:var(--ember);border:1px solid var(--ember);color:var(--on-ember);width:34px;height:34px;border-radius:10px;font-weight:800;font-size:1rem;cursor:pointer;flex-shrink:0}
.price-hint{font-size:.68rem;color:var(--muted2);margin-top:2px}
.compare-label{display:flex;align-items:center;gap:6px;font-size:.66rem;color:var(--muted2);margin-top:8px}

.floating-docks{position:fixed;left:0;right:0;bottom:18px;z-index:85;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}
.compare-dock,.cart-fab{pointer-events:auto}
.compare-dock{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line2);border-radius:18px;padding:14px 18px;box-shadow:var(--shadow);transform:translateY(140%);transition:.25s transform}
.compare-dock.show{transform:translateY(0)}
.compare-items{display:flex;gap:8px;flex-wrap:wrap;max-width:300px}
.compare-chip{font-size:.72rem;border:1px solid var(--line2);padding:5px 10px;border-radius:999px;color:var(--muted)}
.cart-fab{display:flex;align-items:center;gap:10px;background:var(--ember);color:var(--on-ember);border:none;border-radius:999px;padding:14px 22px;font-weight:800;box-shadow:var(--shadow);cursor:pointer;font-size:.9rem;transform:translateY(140%);transition:.25s transform}
.cart-fab.show{transform:translateY(0)}
.cart-fab .count{background:var(--on-ember);color:var(--ember);width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem}

.modal{position:fixed;inset:0;z-index:120;display:none}
.modal.open{display:block}
.modal-backdrop{position:absolute;inset:0;background:rgba(8,5,3,.72);backdrop-filter:blur(3px)}
.drawer{position:absolute;top:0;right:0;bottom:0;width:min(980px,100vw);background:var(--bg);overflow-y:auto}
.drawer.narrow{width:min(560px,100vw)}
.close-row{position:sticky;top:0;z-index:5;display:flex;justify-content:flex-end;padding:16px 22px 0;background:linear-gradient(var(--bg),transparent)}
.close{background:var(--surface);border:1px solid var(--line2);color:var(--text);padding:9px 14px;border-radius:999px;cursor:pointer;font-weight:700;font-size:.8rem}

.spec-sheet{display:grid;grid-template-columns:230px 1fr 320px;min-height:100%}
@media(max-width:960px){.spec-sheet{grid-template-columns:1fr}}
.ss-portrait{position:relative;background:linear-gradient(160deg,var(--c1),var(--c2));padding:30px 24px;display:flex;flex-direction:column;color:#fff;overflow:hidden}
.ss-portrait::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(8,6,5,.58) 0%,rgba(8,6,5,.30) 45%,rgba(8,6,5,.12) 100%);pointer-events:none}
.ss-portrait > *{position:relative;z-index:1}
.ss-portrait .stamp{align-self:flex-start;font-family:'Baloo 2';font-weight:800;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);padding:8px 12px;border-radius:999px;margin-bottom:26px}
.ss-portrait h2{font-family:'Baloo 2';font-size:1.8rem;line-height:1.05;margin-bottom:6px}
.ss-portrait .variety{opacity:.88;font-size:.85rem;margin-bottom:22px}
.ss-meta{margin-top:auto;display:flex;flex-direction:column;gap:14px}
.ss-meta .row{border-top:1px solid rgba(255,255,255,.25);padding-top:10px}
.ss-meta b{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;opacity:.75;margin-bottom:3px}
.ss-score{font-family:'Baloo 2';font-weight:800;font-size:2.4rem;line-height:1}
.ss-portrait .beans .bean-icon{filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}
.tueste-row{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:4px}

.ss-content{padding:30px 26px;border-right:1px solid var(--line)}
@media(max-width:960px){.ss-content{border-right:none;border-bottom:1px solid var(--line)}}
.ss-content .status-line{font-size:.76rem;color:var(--muted2);margin-bottom:14px;font-weight:600}
.block h4{font-family:'Baloo 2';font-size:.98rem;color:var(--ember);margin-bottom:10px}
.block{margin-bottom:24px}
.sensory-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sensory-grid .cell{background:var(--surface2);border-radius:12px;padding:13px 15px}
.sensory-grid .cell b{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted2);margin-bottom:4px}
.sensory-grid .cell span{font-size:.86rem}
.ratio-list{display:flex;flex-direction:column;gap:8px}
.ratio-list div{font-size:.85rem;border-left:2px solid var(--ember);padding-left:10px;color:var(--muted)}
.radar-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px}
.radar-svg{width:100%;max-width:280px;overflow:visible;display:block;margin:auto}
.radar-vertex{cursor:pointer;transition:.15s r}
.radar-vertex:hover{r:7}
.radar-tooltip{position:absolute;transform:translate(-50%,-135%);background:var(--surface3);border:1px solid var(--line2);color:var(--text);font-size:.72rem;font-weight:700;padding:5px 10px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:.12s opacity;box-shadow:var(--shadow);z-index:5}
.radar-table{width:100%;font-size:.78rem}
.radar-table div{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--line)}
.radar-table b{color:var(--text)}

/* custom roast */
.custom-roast-box{max-width:640px;border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:32px}
.cr-field{margin-bottom:24px}
.cr-field label{display:block;font-family:'Baloo 2';font-weight:700;font-size:.92rem;margin-bottom:10px}
.cr-select{width:100%;background:var(--surface2);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;color:var(--text);font-size:.88rem;font-family:inherit}
.cr-roast-picker{display:flex;gap:10px;flex-wrap:wrap}
.cr-roast-opt{border:1px solid var(--line2);background:var(--surface2);border-radius:12px;padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;min-width:90px}
.cr-roast-opt.active{border-color:var(--ember);background:rgba(226,162,76,.12)}
.cr-roast-opt span{font-size:.68rem;font-weight:700;text-align:center}
.cr-roast-desc{margin-top:12px;font-size:.8rem;color:var(--muted);line-height:1.6;min-height:20px}
.cr-grams-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.cr-grams-input{width:120px;background:var(--surface2);border:1px solid var(--line2);border-radius:10px;padding:11px 14px;color:var(--text);font-size:.95rem;font-family:'Baloo 2';font-weight:700}
.cr-grams-chips{display:flex;gap:8px}
.cr-chip{border:1px solid var(--line2);background:var(--surface2);color:var(--muted);padding:9px 14px;border-radius:10px;font-size:.78rem;font-weight:700;cursor:pointer}
.cr-chip:hover{border-color:var(--ember)}
.cr-warning{color:var(--warn);font-size:.78rem;margin-top:8px;font-weight:600}
.cr-fineprint{font-size:.74rem;color:var(--muted2);margin-top:14px;text-align:center;line-height:1.5}

/* roaster bio */
.roaster-box{display:grid;grid-template-columns:260px 1fr;gap:44px;align-items:center}
@media(max-width:800px){.roaster-box{grid-template-columns:1fr}}
.roaster-photo-slot{position:relative;aspect-ratio:4/5;border-radius:22px;background:linear-gradient(160deg,#3a2a1c,#171310);border:1px solid var(--line);overflow:hidden}
.roaster-photo-slot img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block}
.roaster-box p{color:var(--muted);font-size:.94rem;line-height:1.7;margin:0 0 16px}

/* guided quiz */
.quiz-box{max-width:720px;border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:32px}
.quiz-q{margin-bottom:26px}
.quiz-q label{display:block;font-family:'Baloo 2';font-weight:700;font-size:.95rem;margin-bottom:12px}
.quiz-opts{display:flex;gap:10px;flex-wrap:wrap}
.quiz-opt{border:1px solid var(--line2);background:var(--surface2);color:var(--muted);padding:10px 16px;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer}
.quiz-opt.active{background:var(--ember);border-color:var(--ember);color:var(--on-ember);font-weight:800}
.quiz-results{margin-top:26px}
.quiz-result-card{border:1px solid var(--line2);border-radius:16px;padding:18px 20px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.quiz-result-card .qr-rank{font-family:'Baloo 2';font-weight:800;font-size:1.5rem;color:var(--ember);width:34px}
.quiz-result-card .qr-info{flex:1;min-width:180px}
.quiz-result-card .qr-info h4{font-family:'Baloo 2';font-size:1.1rem;margin:0 0 4px}
.quiz-result-card .qr-info p{margin:0;font-size:.82rem;color:var(--muted)}

.ss-side{padding:30px 24px;background:var(--surface)}
.ss-side .frase{font-family:'Fraunces';font-style:italic;font-size:1.2rem;line-height:1.4;color:var(--text);border-left:3px solid var(--ember);padding-left:16px;margin-bottom:22px}
.ss-side h4{font-family:'Baloo 2';font-size:.85rem;color:var(--ember);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}
.ss-side .personalidad{font-size:.85rem;color:var(--muted);line-height:1.65;margin-bottom:22px}
.method-grid{display:flex;flex-direction:column;gap:6px;margin-bottom:22px}
.method-row{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;padding:7px 0;border-bottom:1px solid var(--line)}
.method-name{display:flex;align-items:center;gap:9px}
.method-icon{width:19px;height:19px;flex-shrink:0;display:inline-flex;color:var(--muted2)}
.method-icon svg{width:100%;height:100%}
.mstat{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800}
.mstat.yes{background:rgba(91,174,131,.18);color:var(--ok)}
.mstat.warn{background:rgba(226,162,76,.18);color:var(--warn)}
.mstat.no{color:var(--muted2)}
.internal-note{border:1px dashed var(--warn);background:rgba(226,162,76,.08);border-radius:14px;padding:16px;font-size:.78rem;line-height:1.6;color:var(--text);margin-bottom:22px}
.internal-note .tag-note{display:block;font-family:'Baloo 2';font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;color:var(--warn);font-weight:800;margin-bottom:8px}

/* order box (in detail + cart) */
.order-box{border:1px solid var(--line2);border-radius:16px;padding:18px;background:var(--surface2)}
.size-picker{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.size-chip{flex:1;min-width:80px;border:1px solid var(--line2);background:var(--surface);border-radius:10px;padding:10px 8px;text-align:center;cursor:pointer}
.size-chip.active{border-color:var(--ember);background:rgba(226,162,76,.12)}
.size-chip b{display:block;font-family:'Baloo 2';font-size:.95rem}
.size-chip span{font-size:.66rem;color:var(--muted2)}
.qty-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.qty-stepper{display:flex;align-items:center;gap:0;border:1px solid var(--line2);border-radius:10px;overflow:hidden}
.qty-stepper button{width:34px;height:34px;background:var(--surface);border:none;color:var(--text);font-size:1.1rem;cursor:pointer}
.qty-stepper span{width:36px;text-align:center;font-weight:700}

/* cart panel */
.cart-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.cart-line .info b{display:block;font-family:'Baloo 2'}
.cart-line .info span{font-size:.76rem;color:var(--muted2)}
.cart-line .price{font-family:'Baloo 2';font-weight:800;white-space:nowrap}
.cart-remove{background:none;border:none;color:var(--muted2);cursor:pointer;font-size:.9rem;margin-left:8px}
.cart-total-row{display:flex;justify-content:space-between;align-items:center;padding:18px 0;font-family:'Baloo 2';font-size:1.3rem;font-weight:800}
.wa-fields{display:flex;flex-direction:column;gap:10px;margin:16px 0}
.wa-fields input{background:var(--surface);border:1px solid var(--line2);border-radius:10px;padding:11px 14px;color:var(--text);font-size:.88rem;font-family:inherit}
.empty-cart{text-align:center;padding:50px 20px;color:var(--muted)}

/* perceptual map */
.map-shell{display:grid;grid-template-columns:1fr 280px;gap:30px;align-items:start}
@media(max-width:900px){.map-shell{grid-template-columns:1fr}}
.map-wrap{position:relative;aspect-ratio:1;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.map-wrap .axis-h,.map-wrap .axis-v{position:absolute;background:var(--line2)}
.map-wrap .axis-h{left:0;right:0;top:50%;height:1px}
.map-wrap .axis-v{top:0;bottom:0;left:50%;width:1px}
.map-label{position:absolute;font-size:.72rem;font-weight:700;color:var(--muted2);text-transform:uppercase;letter-spacing:.05em}
.map-label.top{top:12px;left:50%;transform:translateX(-50%)}
.map-label.bottom{bottom:12px;left:50%;transform:translateX(-50%)}
.map-label.left{left:12px;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl}
.map-label.right{right:12px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl}
.map-point{position:absolute;width:11px;height:11px;border-radius:50%;transform:translate(-50%,-50%);cursor:pointer;border:2px solid var(--bg);transition:.15s transform;z-index:2}
.map-point:hover{transform:translate(-50%,-50%) scale(1.6);z-index:6}
.map-point .lbl{position:absolute;font-size:.64rem;white-space:nowrap;color:var(--text);background:var(--surface);border:1px solid var(--line);padding:2px 7px;border-radius:6px;pointer-events:none;font-weight:600}
.map-point .lbl b{color:var(--ember);font-weight:800;margin-left:3px}
.map-point:hover .lbl{border-color:var(--ember);z-index:7}
.map-point .lbl.lbl-down{top:14px}
.map-point .lbl.lbl-up{bottom:14px}
.map-point .lbl.lbl-center{left:50%;transform:translateX(-50%)}
.map-point .lbl.lbl-left{right:0}
.map-point .lbl.lbl-right{left:0}
.map-legend{display:flex;flex-direction:column;gap:10px}
.map-legend-item{display:flex;align-items:center;gap:10px;font-size:.82rem;border:1px solid var(--line);border-radius:12px;padding:10px 12px;cursor:pointer}
.map-legend-item:hover{border-color:var(--ember)}
.map-legend-item .swatch{width:11px;height:11px;border-radius:50%;flex-shrink:0}

.compare-table{width:100%;border-collapse:collapse;min-width:640px}
.compare-table th,.compare-table td{padding:13px;border-bottom:1px solid var(--line);text-align:left;font-size:.85rem}
.compare-table th{color:var(--muted2);text-transform:uppercase;font-size:.68rem;letter-spacing:.05em}

footer{border-top:1px solid var(--line);padding:60px 0 140px}
.footer-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}
.footer-contacts{display:flex;gap:40px;flex-wrap:wrap}
.footer-contacts div b{display:block;font-size:.68rem;text-transform:uppercase;color:var(--muted2);letter-spacing:.06em;margin-bottom:6px}

@media(max-width:1080px){.hero-top{grid-template-columns:1fr}.pillars{grid-template-columns:1fr}.nav a{display:none}}
@media(max-width:640px){.products-grid{grid-template-columns:1fr}.section-head{display:block}.hero{padding-top:110px}.map-shell{grid-template-columns:1fr}}
@media print{.topbar,.toolbar,.floating-docks,.hero-actions,.marquee-wrap{display:none!important}body{background:#fff;color:#111}.products-grid{grid-template-columns:repeat(2,1fr)}}
:focus-visible{outline:2px solid var(--ember);outline-offset:2px}

/* PDF catalog export */
.print-only{display:none}
body.print-mode > *{display:none!important}
body.print-mode #printCatalog{display:block!important}
#printCatalog{background:#fff;color:#18120e;font-family:'Inter',sans-serif}
.pc-cover{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 40px;page-break-after:always;box-sizing:border-box}
.pc-cover .pc-mark{width:90px;margin-bottom:26px}
.pc-cover .pc-mark svg{width:100%;height:auto;color:#18120e}
.pc-cover h1{font-family:'Baloo 2';font-weight:800;font-size:2.8rem;margin:0 0 8px;letter-spacing:.01em}
.pc-tagline{font-family:'Baloo 2';font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9a6a24;margin-bottom:34px;font-size:1rem}
.pc-meta{font-size:.85rem;color:#777}
.pc-product{padding:50px 34px 34px;page-break-after:always;box-sizing:border-box}
.pc-product:last-child{page-break-after:auto}
.pc-product-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:2px solid #18120e;padding-bottom:16px;margin-bottom:20px}
.pc-cat{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:#9a6a24;font-weight:700;margin-bottom:4px}
.pc-product-head h2{font-family:'Baloo 2';font-weight:800;font-size:1.9rem;margin:0 0 3px}
.pc-sub{color:#555;font-size:.86rem}
.pc-score{font-family:'Baloo 2';font-weight:800;font-size:2.3rem;text-align:right;white-space:nowrap;color:#18120e}
.pc-score span{display:block;font-family:'Inter';font-size:.6rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em}
.pc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 22px;margin-bottom:22px;font-size:.84rem}
.pc-grid b{display:block;font-size:.62rem;text-transform:uppercase;color:#8a8a8a;letter-spacing:.05em;margin-bottom:3px;font-weight:700}
.pc-cata{margin-bottom:20px;font-size:.86rem;line-height:1.7}
.pc-cata b{color:#9a6a24}
.pc-quote{font-family:'Fraunces';font-style:italic;font-size:1.15rem;border-left:3px solid #9a6a24;padding-left:16px;margin-bottom:18px;color:#18120e}
.pc-story{font-size:.84rem;color:#444;line-height:1.7;margin-bottom:20px}
.pc-price{font-family:'Baloo 2';font-weight:700;font-size:.92rem;border-top:1px solid #ddd;padding-top:14px;color:#18120e}

/* ---------- compartir ficha ---------- */
.ss-share-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.ss-share-row .btn{font-size:.78rem;padding:10px 16px}
.ss-share-hint{color:var(--muted2);font-size:.68rem;line-height:1.5;margin-bottom:22px}
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(16px);background:var(--surface3);color:var(--text);border:1px solid var(--line2);padding:12px 22px;border-radius:999px;font-size:.8rem;font-weight:700;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.25s all;z-index:300;white-space:nowrap}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- PDF de una sola ficha (mantiene la línea gráfica de marca) ---------- */
body.print-mode-ficha > *{display:none!important}
body.print-mode-ficha #printFicha{display:block!important}
#printFicha{background:#fff;color:#18120e;font-family:'Inter',sans-serif}
#printFicha.capturing{display:block!important;position:fixed;left:-10000px;top:0;width:860px;z-index:-1}
.pf-page{padding:48px 42px 60px;box-sizing:border-box;min-height:100vh;background:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.pf-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:26px}
.pf-mark{width:42px;color:#18120e}
.pf-mark svg{width:100%;height:auto;display:block}
.pf-meta-top{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;color:#9a8a70;text-align:right}
.pf-hero{background:linear-gradient(160deg,rgba(8,6,5,.58) 0%,rgba(8,6,5,.30) 45%,rgba(8,6,5,.12) 100%),linear-gradient(160deg,var(--c1),var(--c2));color:#fff;border-radius:20px;padding:32px 28px;margin-bottom:26px;-webkit-print-color-adjust:exact;print-color-adjust:exact;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.pf-stamp{display:inline-block;font-family:'Baloo 2';font-weight:800;font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.5);padding:7px 12px;border-radius:999px;margin-bottom:16px}
.pf-hero h1{font-family:'Baloo 2';font-weight:800;font-size:1.95rem;margin:0 0 6px;line-height:1.05}
.pf-variety{opacity:.9;font-size:.9rem;margin-bottom:18px}
.pf-score{font-family:'Baloo 2';font-weight:800;font-size:2.1rem;line-height:1}
.pf-score span{display:block;font-family:'Inter';font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.85;margin-top:2px}
.pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 24px;border-bottom:1px solid #e4dbc9;padding-bottom:22px;margin-bottom:22px}
.pf-grid div b{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;color:#9a8a70;margin-bottom:3px;font-weight:700}
.pf-cata{display:flex;flex-direction:column;gap:7px;margin-bottom:22px;font-size:.86rem;line-height:1.5}
.pf-cata b{color:#9a6a24}
.pf-quote{font-family:'Fraunces';font-style:italic;font-size:1.08rem;border-left:3px solid #9a6a24;padding-left:16px;margin-bottom:20px}
.pf-story{font-size:.86rem;line-height:1.7;color:#4a4038;margin-bottom:24px}
.pf-ratios{font-size:.84rem;margin-bottom:24px}
.pf-ratios>b{display:block;margin-bottom:8px;color:#9a6a24;font-family:'Baloo 2';font-size:.9rem}
.pf-ratios div{border-left:2px solid #9a6a24;padding-left:10px;margin-bottom:6px;color:#4a4038}
.pf-block{margin-bottom:24px}
.pf-block h4{font-family:'Baloo 2';font-size:.9rem;color:#9a6a24;margin-bottom:10px}
.pf-methods{display:flex;flex-direction:column;gap:2px}
.pf-method-row{display:flex;justify-content:space-between;font-size:.8rem;padding:6px 0;border-bottom:1px solid #efe8da}
.pf-radar{display:flex;justify-content:center;margin-bottom:6px}
.pf-radar svg{width:230px;height:230px}
.pf-price{border-top:2px solid #18120e;padding-top:16px;font-family:'Baloo 2';font-weight:700;font-size:.92rem;margin-bottom:20px}
.pf-footer{text-align:center;font-size:.64rem;color:#9a8a70;letter-spacing:.03em;text-transform:uppercase;padding-top:16px;border-top:1px solid #e4dbc9}

/* =====================================================================
   v2 — sitio tipo web + pedido completo por WhatsApp
   ===================================================================== */
.toolbar{top:var(--topbar-h,72px)}
.hero{padding-top:calc(var(--topbar-h,72px) + 60px)}
.aviso{background:var(--ember);color:var(--on-ember);font-size:.78rem;font-weight:700;text-align:center;padding:8px 16px;letter-spacing:.01em}
.aviso:empty{display:none}
.brand-mark svg,.hero-mark svg{fill:currentColor}
.roast-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line2);background:var(--surface);border-radius:999px;padding:8px 14px;font-size:.8rem;font-weight:600;color:var(--text);margin-top:18px}
.roast-chip .pulse{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(91,174,131,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(91,174,131,0)}100%{box-shadow:0 0 0 0 rgba(91,174,131,0)}}
@media (prefers-reduced-motion:reduce){.roast-chip .pulse{animation:none}}

/* cómo pedir */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:step}
.step{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:24px;position:relative}
.step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:'Baloo 2';font-weight:800;font-size:2rem;color:var(--ember);line-height:1;display:block;margin-bottom:14px}
.step h3{font-family:'Baloo 2';font-size:1.05rem;margin-bottom:6px}
.step p{color:var(--muted);font-size:.86rem;line-height:1.55;margin:0}
@media(max-width:960px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}

/* toolbar: orden */
.sort{background:var(--surface);border:1px solid var(--line2);border-radius:12px;padding:10px 12px;color:var(--text);font-size:.8rem;font-family:inherit}
.chip-scroll{display:flex;gap:8px;flex-wrap:wrap}

/* tarjetas */
.product.soldout{opacity:.72}
.product.soldout .product-art{filter:grayscale(.8)}
.status-pill{position:absolute;top:20px;left:16px;z-index:2;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:5px 10px;border-radius:999px;background:var(--surface3);border:1px solid var(--line2);color:var(--text)}
.status-pill.agotado{background:#3a2420;color:#F2B8A8;border-color:#6b3a30}
html[data-theme="light"] .status-pill.agotado{background:#F7DED6;color:#7a2d1c;border-color:#e2b4a6}
.status-pill.nuevo{background:var(--ember);color:var(--on-ember);border-color:var(--ember)}
.product .tags{padding-right:0}
.add-btn{background:var(--ember);border:1px solid var(--ember);color:var(--on-ember);padding:9px 14px;border-radius:10px;font-weight:800;font-size:.76rem;cursor:pointer;white-space:nowrap}
.add-btn:disabled{background:var(--surface3);border-color:var(--line2);color:var(--muted2);cursor:not-allowed}
.card-sizes{display:flex;gap:6px;flex-wrap:wrap}
.card-sizes span{font-size:.68rem;border:1px solid var(--line);border-radius:8px;padding:4px 8px;color:var(--muted)}
.card-sizes b{color:var(--text);font-weight:700}
.empty-results{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--muted);border:1px dashed var(--line2);border-radius:20px}

/* selector de molienda y cantidad */
.field-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted2);font-weight:700;margin:4px 0 8px}
.grind-select,.f-input,.f-select,.f-textarea{width:100%;background:var(--surface);border:1px solid var(--line2);border-radius:10px;padding:11px 12px;color:var(--text);font-size:.88rem;font-family:inherit}
.f-textarea{min-height:70px;resize:vertical}
.grind-select:focus,.f-input:focus,.f-select:focus,.f-textarea:focus{border-color:var(--ember);outline:none}
.grind-hint{font-size:.72rem;color:var(--muted2);margin:6px 0 14px;min-height:1em}
.qa-head{display:flex;gap:14px;align-items:center;margin-bottom:22px}
.qa-swatch{width:48px;height:48px;border-radius:14px;background:linear-gradient(160deg,var(--c1),var(--c2));flex-shrink:0}
.qa-head h3{font-family:'Baloo 2';font-size:1.3rem;line-height:1.1}
.link-btn{background:none;border:none;color:var(--ember);font-weight:700;cursor:pointer;font-size:.82rem;padding:0;text-decoration:underline;text-underline-offset:3px}

/* carrito / checkout */
.co-wrap{padding:30px 24px 60px}
.co-section{border-top:1px solid var(--line);padding:22px 0}
.co-section h3{font-family:'Baloo 2';font-size:1.05rem;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.co-section h3 .n{width:24px;height:24px;border-radius:50%;background:var(--ember);color:var(--on-ember);font-size:.74rem;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
.cart-line{align-items:flex-start}
.cart-line .info{flex:1;min-width:0}
.cart-line .info .grind-mini{margin-top:8px;width:100%;max-width:280px;padding:7px 9px;font-size:.76rem}
.cart-line .right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.opt-list{display:flex;flex-direction:column;gap:8px}
.opt{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line2);border-radius:12px;padding:12px 14px;cursor:pointer;background:var(--surface)}
.opt:hover{border-color:var(--ember-dim)}
.opt input{margin-top:3px;accent-color:var(--ember)}
.opt.active{border-color:var(--ember);background:color-mix(in srgb, var(--ember) 9%, var(--surface))}
.opt .o-main{flex:1}
.opt .o-name{font-weight:700;font-size:.88rem}
.opt .o-sub{font-size:.74rem;color:var(--muted);margin-top:2px}
.opt .o-cost{font-family:'Baloo 2';font-weight:800;font-size:.95rem;white-space:nowrap}
.f-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.f-grid .full{grid-column:1/-1}
@media(max-width:520px){.f-grid{grid-template-columns:1fr}}
.f-check{display:flex;align-items:center;gap:10px;font-size:.86rem;cursor:pointer;margin:6px 0}
.f-check input{accent-color:var(--ember);width:16px;height:16px}
.f-error{color:#F2B8A8;font-size:.78rem;font-weight:600;margin-top:6px;display:none}
html[data-theme="light"] .f-error{color:#9b2c16}
.f-input.invalid,.opt-list.invalid .opt{border-color:#d0654c}
.totals{background:var(--surface2);border-radius:16px;padding:18px;margin-top:6px}
.totals .row{display:flex;justify-content:space-between;font-size:.88rem;padding:4px 0;color:var(--muted)}
.totals .row.total{color:var(--text);font-family:'Baloo 2';font-weight:800;font-size:1.3rem;border-top:1px solid var(--line2);margin-top:8px;padding-top:12px}
.ship-progress{margin:0 0 14px;font-size:.78rem;color:var(--muted)}
.ship-progress .bar{height:6px;border-radius:99px;background:var(--surface3);overflow:hidden;margin-top:6px}
.ship-progress .bar i{display:block;height:100%;background:var(--ember);border-radius:99px}
.co-msg{border:1px dashed var(--line2);border-radius:12px;padding:12px 14px;font-size:.8rem;color:var(--muted);margin:12px 0}
.confirm-box{text-align:center;padding:50px 26px}
.confirm-box .ok-mark{width:64px;height:64px;border-radius:50%;background:rgba(91,174,131,.16);color:var(--ok);display:inline-flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:800;margin-bottom:16px}
.order-code{font-family:'Baloo 2';font-weight:800;font-size:1.6rem;color:var(--ember);letter-spacing:.04em}
.msg-preview{white-space:pre-wrap;text-align:left;background:var(--surface2);border-radius:12px;padding:14px;font-size:.78rem;color:var(--muted);max-height:240px;overflow:auto;margin:18px 0}

/* preguntas frecuentes */
.faq{max-width:820px;display:flex;flex-direction:column;gap:10px}
.faq details{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:4px 18px}
.faq summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--ember);font-family:'Baloo 2';font-size:1.3rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--muted);font-size:.9rem;line-height:1.65;margin:0 0 16px}

/* footer v2 */
.footer-grid{align-items:flex-start}
.footer-brand p{color:var(--muted);font-size:.82rem;max-width:300px;margin:12px 0 0}
.footer-contacts a{text-decoration:none;color:var(--text)}
.footer-contacts a:hover{color:var(--ember)}
.footer-note{margin-top:34px;font-size:.72rem;color:var(--muted2)}

/* toast con acción */
.toast{display:flex;align-items:center;gap:14px}
.toast button{background:var(--ember);color:var(--on-ember);border:none;border-radius:8px;padding:6px 10px;font-weight:800;font-size:.74rem;cursor:pointer}
.toast:not(.show){pointer-events:none}

.loading-screen{min-height:60vh;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.nav a.active{color:var(--text)}
@media(max-width:1080px){.nav .nav-text{display:none}}
.toast.show{pointer-events:auto}
.menu-btn{display:none}
.mobile-menu{display:none}
@media(max-width:1080px){
  .menu-btn{display:inline-flex}
  .mobile-menu.open{display:flex;flex-direction:column;border-top:1px solid var(--line);padding:8px 4vw 16px}
  .mobile-menu a{padding:12px 4px;text-decoration:none;font-weight:600;color:var(--text);border-bottom:1px solid var(--line)}
}
.map-point{padding:0}
.block > .cell{background:var(--surface2);border-radius:12px;padding:13px 15px}
.block > .cell b{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted2);margin-bottom:4px}
.block > .cell span{font-size:.86rem}
.compare-dock:not(.show),.cart-fab:not(.show){visibility:hidden}
.order-box .btn.primary{white-space:nowrap}
@media(max-width:640px){
  .toolbar{padding:10px 0}
  .toolbar-row{gap:8px}
  .search{min-width:0;flex:1 1 55%;padding:10px 12px}
  .sort{flex:0 1 auto;max-width:42%;padding:10px 8px}
  .chip-scroll{flex-wrap:nowrap;overflow-x:auto;width:100%;scrollbar-width:none;padding-bottom:2px}
  .chip-scroll::-webkit-scrollbar{display:none}
}
#catalogo{padding-top:0}

/* ---- v3 · tienda integrada al Centro de Gestión ---- */
.hp-field{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}
#crError{color:#d0654c;font-size:.8rem;font-weight:600}
.f-input.invalid{border-color:#d0654c}
.footer-note a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}
.empty-results a{color:var(--ember);font-weight:700}
button[disabled].btn.whatsapp{opacity:.7;cursor:progress}

/* ---- v4 · Mi cuenta ---- */
.nav-account{display:inline-flex!important;align-items:center;gap:6px;border:1px solid var(--line2)!important;color:var(--text)!important}
.nav-account:hover{border-color:var(--ember)!important}
.acct-note{font-size:.8rem;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;margin:0 0 12px}
.acct-note a{color:var(--ember);font-weight:700}
@media(max-width:980px){.nav-account span{display:none}}

/* 6.15 · anuncio del Club Maldito */
.club-anuncio{display:flex;align-items:center;gap:14px;border:1px solid color-mix(in srgb,var(--ember) 45%,transparent);background:color-mix(in srgb,var(--ember) 9%,transparent);border-radius:18px;padding:14px 18px}
.club-anuncio .ca-ico{font-size:1.6rem;flex:none}
.club-anuncio div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.club-anuncio b{font-size:.98rem}
.club-anuncio span{font-size:.86rem;color:var(--muted)}
.club-anuncio .btn{flex:none;white-space:nowrap}
@media(max-width:640px){.club-anuncio{flex-wrap:wrap}.club-anuncio .btn{width:100%;justify-content:center}}
