:root{--bg:#f7f4ee;--paper:#fffdf9;--ink:#211d18;--muted:#746b61;--line:#ddd5ca;--accent:#b66120;--accent-dark:#7d3f12;--shadow:0 14px 34px rgba(44,35,26,.09);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(1160px,calc(100% - 32px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,244,238,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(221,213,202,.75)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:72px}.brandmark{font-weight:850;font-size:1.15rem;display:flex;gap:9px;align-items:center}.main-nav{display:flex;gap:8px;align-items:center}.main-nav a{padding:9px 12px;border-radius:10px;color:#453e36}.main-nav a:hover{background:#ede6db}.menu-button{display:none;border:1px solid var(--line);background:var(--paper);font-size:1.3rem;border-radius:10px;padding:5px 10px}.hero{padding:78px 0 58px;background:radial-gradient(circle at 80% 20%,#f2d7b9 0,transparent 34%),linear-gradient(180deg,#fbf8f2,var(--bg))}.hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:52px;align-items:center}.kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:850;color:var(--accent);margin:0 0 8px}.hero h1,.page-head h1,.detail-copy h1{font-family:Georgia,serif;font-weight:700;line-height:1.05;letter-spacing:-.03em}.hero h1{font-size:clamp(2.9rem,7vw,5.6rem);max-width:830px;margin:.1em 0 .25em}.hero-copy{font-size:1.14rem;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--paper);border-radius:11px;padding:10px 16px;font-weight:750;cursor:pointer;font:inherit}.button.primary{background:var(--accent);border-color:var(--accent);color:white}.button.primary:hover{background:var(--accent-dark)}.hero-stat-panel{background:rgba(255,253,249,.78);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:24px}.hero-stat-panel div{display:flex;align-items:baseline;justify-content:space-between;padding:17px 5px;border-bottom:1px solid var(--line)}.hero-stat-panel div:last-child{border-bottom:0}.hero-stat-panel strong{font-size:2rem;font-family:Georgia,serif}.hero-stat-panel span{color:var(--muted)}.section{padding:56px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{font:700 2.1rem/1.1 Georgia,serif;margin:0}.section-heading>a{font-weight:800;color:var(--accent)}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.coaster-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 14px rgba(50,40,30,.04);transition:.2s transform,.2s box-shadow}.coaster-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-image{aspect-ratio:1/1;display:grid;place-items:center;padding:18px;background:linear-gradient(135deg,#f0ece5,#faf8f4)}.card-image img{width:100%;height:100%;object-fit:contain}.image-placeholder{min-height:180px;display:grid;place-items:center;color:#9b9288}.card-body{padding:15px 16px 17px}.eyebrow{font-size:.78rem;font-weight:850;color:var(--accent);text-transform:uppercase;letter-spacing:.09em}.card-body h3{font-size:1rem;margin:5px 0 9px}.card-body h3 a:hover{text-decoration:underline}.meta-row{display:flex;gap:8px;color:var(--muted);font-size:.85rem}.meta-row span+span:before{content:"·";margin-right:8px}.page-head{padding:56px 0 34px;border-bottom:1px solid var(--line);background:#fbf8f2}.page-head h1{font-size:clamp(2.6rem,6vw,4.5rem);margin:.05em 0 .15em}.page-head p:last-child{color:var(--muted)}.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.brand-tile{display:flex;justify-content:space-between;gap:16px;padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:14px;font-weight:800}.brand-tile strong{color:var(--accent)}.brand-tile:hover{border-color:#c9ad92}.filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:12px;align-items:end;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px}.filters label{display:grid;gap:6px;font-size:.82rem;font-weight:800;color:var(--muted)}.filters input,.filters select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:10px;background:white;padding:9px 11px;font:inherit;color:var(--ink)}.filter-actions{grid-column:1/-1;display:flex;gap:10px}.results-line{padding:24px 2px 14px;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:34px}.pagination a{font-weight:800;color:var(--accent)}.detail-section{padding:54px 0}.detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:56px;align-items:start}.flip-scene{perspective:1400px}.flip-card{display:block;width:100%;aspect-ratio:1/1;background:transparent;border:0;padding:0;cursor:pointer}.flip-card-inner{position:relative;display:block;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-face{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;background:linear-gradient(145deg,#ebe5dc,#fffdf9);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow);overflow:hidden}.flip-face.back{transform:rotateY(180deg)}.flip-face img{width:100%;height:100%;object-fit:contain}.side-badge{position:absolute;left:18px;bottom:18px;background:rgba(33,29,24,.8);color:white;border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:800}.flip-button{width:100%;margin-top:12px}.detail-copy{padding-top:14px;position:sticky;top:100px}.detail-copy h1{font-size:clamp(2.4rem,5vw,4.2rem);margin:.12em 0 .5em}.detail-list{margin:0;border-top:1px solid var(--line)}.detail-list div{display:grid;grid-template-columns:120px 1fr;padding:12px 0;border-bottom:1px solid var(--line)}.detail-list dt{font-weight:800;color:var(--muted)}.detail-list dd{margin:0;font-weight:700}.notes h2{font:700 1.4rem Georgia,serif}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px}.stat-card strong{display:block;font:700 2.8rem Georgia,serif}.stat-card span{color:var(--muted)}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px}.panel h2{font:700 1.55rem Georgia,serif;margin:0 0 12px}.rank-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eee8df}.rank-row:last-child{border-bottom:0}.rank-row strong{color:var(--accent)}.site-footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:.9rem;margin-top:40px}
@media(max-width:900px){.card-grid,.brand-grid{grid-template-columns:repeat(3,1fr)}.hero-grid,.detail-grid{grid-template-columns:1fr}.detail-copy{position:static}.filters{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.two-columns{grid-template-columns:1fr}}
@media(max-width:680px){.container{width:min(100% - 22px,1160px)}.menu-button{display:block}.main-nav{display:none;position:absolute;left:11px;right:11px;top:66px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.main-nav a{padding:11px}.hero{padding-top:50px}.hero h1{font-size:3.15rem}.card-grid,.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card-image{padding:10px}.card-body{padding:12px}.filters{grid-template-columns:1fr}.search-field{grid-column:auto}.filter-actions{grid-column:auto}.stats-grid{grid-template-columns:1fr}.detail-grid{gap:30px}.detail-section{padding-top:24px}.flip-face{padding:12px}.section{padding:38px 0}.section-heading{align-items:start}.section-heading h2{font-size:1.8rem}}
@media(max-width:420px){.card-grid{grid-template-columns:1fr 1fr}.card-body h3{font-size:.92rem}.eyebrow{font-size:.7rem}}
/* Metadatos ampliados de la colección */
.favorite-badge{position:absolute;z-index:2;display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;font-size:.82rem;font-weight:900;box-shadow:0 3px 12px rgba(0,0,0,.12)}
.card-image{position:relative}.favorite-badge{top:12px;left:12px;background:#fff7dc;color:#9b6500}.favorite-title{color:#b87900;font-size:.62em;vertical-align:middle}.stats-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.stats-columns{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.stats-grid{grid-template-columns:1fr}.favorite-badge{top:8px}.favorite-badge{left:8px}}

.repeated-filters{grid-template-columns:minmax(0,2fr) auto}.repeated-filters .filter-actions{grid-column:auto;align-self:end}.repeated-filters .search-field{grid-column:auto}
@media(max-width:680px){.repeated-filters{grid-template-columns:1fr}.repeated-filters .filter-actions{grid-column:auto}}
/* Selector de idioma */
.language-switcher{display:flex;align-items:center;gap:6px;margin-left:2px;padding:5px 7px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.language-switcher select{border:0;background:transparent;color:var(--ink);font:inherit;font-weight:800;cursor:pointer;outline:none;padding:2px 1px}
.language-submit{border:0;background:transparent;font-weight:800;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:680px){.language-switcher{margin:4px 0 2px;width:max-content}.main-nav .language-switcher{align-self:flex-start}}

/* Portada editorial */
.home-hero{position:relative;overflow:hidden;padding:78px 0 70px;background:radial-gradient(circle at 78% 24%,#efd3b1 0,transparent 31%),linear-gradient(180deg,#fbf8f2 0%,#f7f4ee 100%)}
.home-hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(182,97,32,.12);border-radius:50%;right:-145px;bottom:-175px;pointer-events:none}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(380px,.96fr);gap:64px;align-items:center;min-height:470px}
.home-hero-copy h1{font:700 clamp(3.2rem,7vw,6rem)/.98 Georgia,serif;letter-spacing:-.045em;margin:.08em 0 .24em;max-width:720px}
.home-hero-copy .hero-copy{font-size:1.18rem;max-width:610px}
.coaster-collage{position:relative;height:430px;isolation:isolate}
.collage-coaster{position:absolute;width:230px;height:230px;display:grid;place-items:center;padding:10px;border-radius:28px;background:rgba(255,253,249,.82);border:1px solid rgba(221,213,202,.9);box-shadow:0 22px 48px rgba(48,37,25,.14);transition:transform .25s ease,box-shadow .25s ease;backdrop-filter:blur(4px)}
.collage-coaster:hover{z-index:10!important;box-shadow:0 28px 54px rgba(48,37,25,.2)}
.collage-coaster img{width:100%;height:100%;object-fit:contain}
.collage-coaster-1{left:22%;top:3%;transform:rotate(-8deg);z-index:4}.collage-coaster-1:hover{transform:rotate(-5deg) translateY(-6px)}
.collage-coaster-2{right:1%;top:16%;transform:rotate(9deg);z-index:3}.collage-coaster-2:hover{transform:rotate(6deg) translateY(-6px)}
.collage-coaster-3{left:2%;top:34%;transform:rotate(-13deg);z-index:2}.collage-coaster-3:hover{transform:rotate(-9deg) translateY(-6px)}
.collage-coaster-4{right:17%;bottom:0;transform:rotate(5deg);z-index:5}.collage-coaster-4:hover{transform:rotate(2deg) translateY(-6px)}
.collage-coaster-5{left:39%;top:33%;transform:rotate(-2deg);z-index:6}.collage-coaster-5:hover{transform:rotate(1deg) translateY(-6px)}
.collage-placeholder{width:280px;height:280px;margin:50px auto;display:grid;place-items:center;font-size:6rem;background:var(--paper);border:1px solid var(--line);border-radius:50%;box-shadow:var(--shadow)}
.home-stats-wrap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,253,249,.62)}
.home-stats{display:grid;grid-template-columns:repeat(4,1fr)}
.home-stat{padding:30px 24px;text-align:center;border-right:1px solid var(--line);transition:background .2s ease}.home-stat:last-child{border-right:0}.home-stat:hover{background:var(--paper)}
.home-stat strong{display:block;font:700 2.85rem/1 Georgia,serif}.home-stat span{display:block;margin-top:7px;color:var(--muted);font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.latest-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(195px,1fr);gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;padding:3px 3px 18px;scroll-snap-type:x proximity;scrollbar-width:thin}
.latest-strip .coaster-card{scroll-snap-align:start;min-width:0}.latest-strip .card-body{padding:12px 13px 14px}.latest-strip .card-image{padding:12px}.latest-strip .meta-row{font-size:.78rem}
.home-brands-section{background:#efe9df;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.home-brand-card{display:flex;align-items:center;gap:14px;padding:13px;background:rgba(255,253,249,.85);border:1px solid var(--line);border-radius:16px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.home-brand-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#c7a98e}
.home-brand-image{width:78px;height:78px;flex:0 0 78px;display:grid;place-items:center;padding:5px;border-radius:13px;background:#f5f1ea;overflow:hidden}.home-brand-image img{width:100%;height:100%;object-fit:contain}.home-brand-image span{font-size:2rem}
.home-brand-copy{min-width:0;display:grid;gap:4px}.home-brand-copy strong{font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-brand-copy span{font-size:.82rem;color:var(--muted)}
.exchange-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:42px 46px;border:1px solid #d4c4b2;border-radius:26px;background:linear-gradient(135deg,#fffaf3,#ead6bf);box-shadow:0 16px 36px rgba(62,47,31,.08)}
.exchange-cta h2{font:700 clamp(2rem,4vw,3.2rem)/1.05 Georgia,serif;margin:.12em 0 .22em}.exchange-cta p:last-child{margin:0;color:var(--muted);font-size:1.04rem}

/* Banderas de idioma: dibujadas con CSS para no depender de SVG/emoji */
.language-flags{display:flex;align-items:center;gap:5px;margin-left:3px;padding:4px 6px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}
.flag-button{width:31px;height:25px;padding:3px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;opacity:.68;transition:opacity .15s ease,transform .15s ease,border-color .15s ease,background .15s ease}
.flag-button:hover{opacity:1;transform:translateY(-1px)}
.flag-button.active{opacity:1;border-color:#b99877;background:#f2e9de;box-shadow:0 1px 5px rgba(40,32,24,.08)}
.flag{display:block;width:23px;height:15px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.18);overflow:hidden}
.flag-es{background:linear-gradient(to bottom,#AA151B 0 25%,#F1BF00 25% 75%,#AA151B 75% 100%)}
.flag-de{background:linear-gradient(to bottom,#000 0 33.333%,#DD0000 33.333% 66.666%,#FFCE00 66.666% 100%)}
.flag-fr{background:linear-gradient(to right,#0055A4 0 33.333%,#fff 33.333% 66.666%,#EF4135 66.666% 100%)}
.flag-gb{background-color:#012169;background-image:linear-gradient(33.69deg,transparent 43%,#fff 43% 49%,#C8102E 49% 52%,#fff 52% 58%,transparent 58%),linear-gradient(-33.69deg,transparent 43%,#fff 43% 49%,#C8102E 49% 52%,#fff 52% 58%,transparent 58%),linear-gradient(to right,transparent 40%,#fff 40% 60%,transparent 60%),linear-gradient(to bottom,transparent 35%,#fff 35% 65%,transparent 65%),linear-gradient(to right,transparent 45%,#C8102E 45% 55%,transparent 55%),linear-gradient(to bottom,transparent 42%,#C8102E 42% 58%,transparent 58%)}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr auto;gap:28px;align-items:center}.footer-grid>div:first-child{display:grid;gap:3px}.footer-grid strong{color:var(--ink);font-size:1rem}.footer-links{display:flex;gap:15px;flex-wrap:wrap}.footer-links a:hover{color:var(--accent)}.footer-flags{justify-self:end}

@media(max-width:1050px){.home-hero-grid{grid-template-columns:1fr 440px;gap:28px}.collage-coaster{width:195px;height:195px}.home-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{gap:3px}.main-nav a{padding:9px 8px}.flag-button{width:27px}}
@media(max-width:900px){.home-hero-grid{grid-template-columns:1fr}.coaster-collage{height:390px;max-width:620px;width:100%;margin:0 auto}.home-stats{grid-template-columns:repeat(2,1fr)}.home-stat:nth-child(2){border-right:0}.home-stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1fr}.footer-flags{justify-self:start}}
@media(max-width:680px){.home-hero{padding:50px 0 42px}.home-hero-grid{min-height:auto}.home-hero-copy h1{font-size:3.15rem}.coaster-collage{height:315px;margin-top:10px}.collage-coaster{width:150px;height:150px;border-radius:20px;padding:7px}.home-stat{padding:23px 12px}.home-stat strong{font-size:2.25rem}.latest-strip{grid-auto-columns:minmax(175px,73vw)}.home-brand-grid{grid-template-columns:1fr}.exchange-cta{padding:30px 24px;align-items:flex-start;flex-direction:column}.language-flags{margin:4px 0 2px;width:max-content}.main-nav .language-flags{align-self:flex-start}.footer-grid{gap:18px}}
@media(max-width:430px){.coaster-collage{height:270px}.collage-coaster{width:128px;height:128px}.home-stat span{font-size:.68rem}.home-brand-image{width:68px;height:68px;flex-basis:68px}}

/* Países normalizados */
.country-with-flag{display:inline-flex;align-items:center;gap:8px}.country-with-flag img,.country-flag-only img{display:inline-block;object-fit:cover;border:1px solid rgba(0,0,0,.12);border-radius:2px;vertical-align:middle}.country-flag-only{display:inline-flex;align-items:center}
