:root{--ink:#241b1d;--cream:#fff8f2;--paper:#fff;--coral:#e96554;--coral-dark:#ca4c3c;--peach:#ffe7da;--plum:#6f405c;--plum-soft:#f5eaf1;--muted:#746a68;--line:#eaded8;--green:#426b5b;--shadow:0 24px 70px rgba(73,43,35,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;line-height:1.5}a{color:inherit}button,input,textarea,select{font:inherit}.site-header{max-width:1180px;height:78px;margin:auto;padding:0 24px;display:flex;align-items:center;gap:34px}.brand{text-decoration:none;font-family:'Manrope',sans-serif;font-size:28px;font-weight:800;letter-spacing:-1.3px}.brand strong{color:var(--coral)}.nav-links{display:flex;gap:28px;margin-left:auto}.nav-links a{text-decoration:none;color:var(--muted);font-weight:600;font-size:14px}.nav-links a:hover{color:var(--ink)}.nav-cta{text-decoration:none;border:1px solid var(--line);background:#fff;padding:10px 15px;border-radius:999px;font-weight:800;font-size:13px}.nav-cta:hover{border-color:var(--coral);color:var(--coral)}main{max-width:1180px;margin:auto;padding:0 24px 90px}.hero{min-height:680px;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;padding:60px 0 75px}.pill{display:inline-flex;background:var(--peach);color:#9d473b;border:1px solid #f3c8b7;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800}.hero h1{font-family:'Manrope',sans-serif;font-size:clamp(52px,6vw,79px);line-height:.98;letter-spacing:-4px;margin:18px 0 26px;max-width:720px}.hero h1 em{font-style:normal;color:var(--plum)}.lead{font-size:20px;line-height:1.65;color:var(--muted);max-width:650px}.hero-points{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}.hero-points span{position:relative;padding-left:19px;font-size:13px;font-weight:700}.hero-points span:before{content:'✓';position:absolute;left:0;color:var(--green)}.hero-preview{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;padding:22px;transform:rotate(1deg)}.preview-header{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:800}.status-dot{color:var(--green);font-size:11px}.status-dot:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#70a58f;margin-right:6px}.person-card{display:flex;align-items:center;gap:14px;background:var(--cream);border:1px solid var(--line);border-radius:18px;padding:15px;margin:18px 0}.avatar{width:48px;height:48px;border-radius:15px;background:var(--peach);display:grid;place-items:center;font-size:24px}.person-card strong{display:block;font-size:14px}.person-card small{display:block;color:var(--muted);margin-top:4px}.preview-gifts{display:grid;gap:10px}.preview-gifts>div{display:grid;grid-template-columns:43px 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:10px}.preview-gifts>div>span{width:43px;height:43px;border-radius:12px;background:var(--plum-soft);display:grid;place-items:center;font-size:22px}.preview-gifts p{margin:0}.preview-gifts b{display:block;font-size:13px}.preview-gifts small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.preview-gifts strong{font-size:13px}.preview-more{text-align:center;color:var(--coral);font-weight:800;font-size:12px;margin-top:15px}.finder-section{padding:82px 0}.section-heading{max-width:690px;margin-bottom:34px}.section-heading.compact{text-align:center;margin:0 auto 30px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:900;color:var(--coral)}.section-heading h2,.results-head h2,.closing-cta h2{font-family:'Manrope',sans-serif;font-size:clamp(36px,4.5vw,55px);line-height:1.05;letter-spacing:-2.5px;margin:9px 0 13px}.section-heading p,.results-head p{color:var(--muted);font-size:17px;margin:0}.finder-card{max-width:880px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.field label{display:block;font-size:14px;font-weight:800;margin-bottom:8px}.field label span{color:var(--muted);font-weight:500}.field small{display:block;color:var(--muted);font-size:12px;margin-top:7px}.field textarea,.field input,.field select{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px 15px;color:var(--ink);outline:none}.field textarea{min-height:145px;resize:vertical;line-height:1.55}.field textarea:focus,.field input:focus,.field select:focus{border-color:var(--coral);box-shadow:0 0 0 4px rgba(233,101,84,.1)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.primary-button{width:100%;margin-top:24px;border:0;border-radius:14px;background:var(--ink);color:#fff;padding:16px 20px;font-weight:900;display:flex;justify-content:center;gap:12px;cursor:pointer}.primary-button:hover{background:var(--coral)}.form-note{text-align:center;color:var(--muted);font-size:12px;margin:12px 0 0}.hidden{display:none}.results{padding:75px 0}.results-head{display:flex;justify-content:space-between;align-items:end;gap:24px}.results-head>div{max-width:770px}.secondary-button{border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px 15px;font-weight:800;cursor:pointer}.secondary-button:hover{border-color:var(--coral);color:var(--coral)}.result-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:30px}.gift{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.visual{height:152px;background:linear-gradient(135deg,var(--peach),var(--plum-soft));display:grid;place-items:center;font-size:66px}.body{padding:18px;display:flex;flex-direction:column;gap:9px;height:100%}.gift small{color:var(--coral);font-weight:900;font-size:11px;text-transform:capitalize}.gift h3{font-family:'Manrope',sans-serif;font-size:17px;line-height:1.2;margin:0}.gift p{font-size:13px;line-height:1.5;color:var(--muted);margin:0}.price{font-size:19px;font-weight:900;margin-top:auto}.gift a{display:block;text-align:center;text-decoration:none;background:var(--coral);color:#fff;border-radius:11px;padding:11px;margin-top:7px;font-weight:900}.gift a[aria-disabled=true]{opacity:.5;pointer-events:none}.email-panel{margin-top:24px;background:var(--plum);color:#fff;border-radius:20px;padding:22px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.email-panel p{margin:4px 0 0;opacity:.72}.email-panel button{border:0;background:#fff;color:var(--plum);border-radius:12px;padding:12px 15px;font-weight:800;opacity:.45}.how-section,.examples-section,.faq-section{padding:95px 0}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.steps-grid article{position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:27px;overflow:hidden}.step-number{position:absolute;right:20px;top:16px;font-family:'Manrope',sans-serif;font-size:38px;font-weight:800;color:#f1e5df}.step-icon{font-size:28px;margin-bottom:25px}.steps-grid h3{font-family:'Manrope',sans-serif;margin:0 0 9px;font-size:20px}.steps-grid p{color:var(--muted);margin:0}.example-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.example-grid article{background:linear-gradient(150deg,#fff,var(--cream));border:1px solid var(--line);border-radius:20px;padding:24px}.example-grid span{font-size:32px}.example-grid h3{font-family:'Manrope',sans-serif;font-size:18px;line-height:1.25;margin:18px 0 8px}.example-grid p{color:var(--muted);font-size:14px;margin:0}.trust-section{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:var(--ink);color:#fff;border-radius:25px;padding:24px}.trust-section>div{display:flex;align-items:center;gap:13px;padding:8px 12px}.trust-section>div>span{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#9bd1b8;font-weight:900}.trust-section p{margin:0}.trust-section b{display:block;font-size:14px}.trust-section small{display:block;color:#c9bfbd;margin-top:3px}.faq-list{display:grid;gap:12px;max-width:850px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px 19px}.faq-list summary{font-weight:800;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';float:right;color:var(--coral);font-size:20px}.faq-list details[open] summary:after{content:'−'}.faq-list p{color:var(--muted);margin:12px 0 2px}.closing-cta{background:linear-gradient(135deg,var(--peach),#f5eaf1);border:1px solid #efd7cb;border-radius:28px;padding:42px;display:flex;justify-content:space-between;align-items:center;gap:30px}.closing-cta h2{margin-bottom:0}.closing-cta a{text-decoration:none;background:var(--ink);color:#fff;padding:15px 19px;border-radius:14px;font-weight:900;white-space:nowrap}.site-footer{max-width:1180px;margin:auto;padding:40px 24px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:22px;color:var(--muted)}.footer-brand{color:var(--ink)}.site-footer p{margin:5px 0 0}.footer-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{text-decoration:none;font-size:13px;font-weight:700}.site-footer small{grid-column:1/-1}
@media(max-width:980px){.nav-links{display:none}.hero{grid-template-columns:1fr;gap:38px;padding-top:55px}.hero-preview{max-width:650px;transform:none}.result-grid{grid-template-columns:repeat(2,1fr)}.example-grid{grid-template-columns:repeat(2,1fr)}.trust-section{grid-template-columns:1fr}.closing-cta{align-items:flex-start;flex-direction:column}.steps-grid{grid-template-columns:1fr}.hero h1{letter-spacing:-3px}}
@media(max-width:640px){.site-header{padding:0 16px}.nav-cta{display:none}main{padding:0 16px 65px}.hero{padding:35px 0 55px}.hero h1{font-size:47px;letter-spacing:-2.5px}.lead{font-size:17px}.hero-points{gap:10px 16px}.hero-preview{padding:16px}.finder-card{padding:20px;border-radius:21px}.form-grid{grid-template-columns:1fr}.results-head{align-items:flex-start;flex-direction:column}.result-grid{grid-template-columns:1fr}.email-panel{align-items:flex-start;flex-direction:column}.example-grid{grid-template-columns:1fr}.closing-cta{padding:28px}.site-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.site-footer small{grid-column:auto}.section-heading h2,.results-head h2,.closing-cta h2{letter-spacing:-1.8px}}
.beta-bar{background:var(--ink);color:#fff;text-align:center;padding:.65rem 1rem;font-size:.82rem;font-weight:700;letter-spacing:.01em}.site-header{top:0}.email-actions{display:flex;gap:.6rem;align-items:center}.email-actions input{min-width:230px;border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem;font:inherit;background:#fff}.email-actions button{border:0;border-radius:12px;padding:.9rem 1.2rem;background:var(--ink);color:#fff;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}.legal-page{max-width:860px;margin:0 auto;padding:4rem 1.25rem 6rem}.legal-page h1{font-family:Manrope,sans-serif;font-size:clamp(2.2rem,6vw,4rem);line-height:1.05;margin:.4rem 0 1rem}.legal-page h2{font-family:Manrope,sans-serif;margin-top:2rem}.legal-page p,.legal-page li{color:var(--muted);line-height:1.75}.legal-nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--line);background:#fff}.legal-nav a{color:inherit;text-decoration:none}.back-link{font-weight:800}.product-example{display:inline-flex!important;justify-content:center;opacity:.72;cursor:default!important}.form-success{margin-top:.8rem;font-weight:700;color:var(--plum)}
@media(max-width:700px){.email-panel{align-items:stretch}.email-actions{width:100%;flex-direction:column}.email-actions input,.email-actions button{width:100%;min-width:0}.beta-bar{font-size:.75rem}.legal-nav .brand{font-size:1.25rem}}

.visual img{width:100%;height:100%;object-fit:contain;background:#fff;padding:12px}.product-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;color:var(--muted);font-size:11px;line-height:1.3}.product-meta .rating{color:#9d6c13;font-weight:900}.product-meta .dot{opacity:.55}.price-note{color:var(--muted);font-size:10px;line-height:1.35;margin-top:-5px}.price{line-height:1.15}

/* V8 · Tarjetas de producto más visuales */
.result-grid{grid-template-columns:repeat(auto-fit,minmax(250px,320px));justify-content:center;gap:24px}
.gift{border-radius:24px;box-shadow:0 16px 42px rgba(36,27,29,.08);transition:transform .2s ease,box-shadow .2s ease}
.gift:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(36,27,29,.12)}
.visual{height:245px;background:#fff;border-bottom:1px solid var(--line);position:relative;overflow:hidden;padding:18px}
.visual img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;background:#fff;padding:0}
.visual-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:72px;background:linear-gradient(135deg,var(--peach),var(--plum-soft));z-index:1}
.visual img+.visual-fallback{opacity:0}
.visual.image-fallback .visual-fallback,.visual-fallback.always{opacity:1}
.body{padding:22px;gap:13px}
.card-topline{display:flex;justify-content:space-between;gap:12px;align-items:center}
.card-topline span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--coral)}
.card-topline span:last-child{color:var(--muted);background:var(--cream);padding:5px 8px;border-radius:999px}
.gift h3{font-size:23px;letter-spacing:-.5px;line-height:1.12}
.product-meta{font-size:12px;gap:7px;padding-bottom:2px}
.product-meta .rating{background:#fff5d9;border:1px solid #f2dfa8;padding:4px 7px;border-radius:999px;color:#8d6410}
.match-box{background:var(--cream);border:1px solid var(--line);border-radius:15px;padding:14px}
.match-label,.price-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:var(--coral);margin-bottom:5px}
.match-box p{font-size:14px;line-height:1.55;color:var(--ink)}
.purchase-row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:auto}
.price{font-size:27px;letter-spacing:-.7px}
.score-badge{width:50px;height:50px;border-radius:15px;background:var(--ink);color:#fff;display:grid;grid-template-columns:auto auto;place-content:center;gap:3px;line-height:1}
.score-badge strong{font-size:16px}.score-badge span{font-size:12px;color:#ffd36d}
.price-note{font-size:11px;margin-top:-6px}
.gift a{padding:14px;border-radius:13px;font-size:15px;box-shadow:0 8px 20px rgba(233,101,84,.22)}
@media(max-width:640px){.result-grid{grid-template-columns:1fr}.gift{max-width:420px;width:100%;margin:auto}.visual{height:270px}.gift h3{font-size:24px}}

.affinity{display:flex;align-items:center;gap:8px;background:#f8f8f8;border-radius:999px;padding:8px 12px;margin-bottom:10px;font-size:14px;flex-wrap:wrap}
.affinity .dot{width:10px;height:10px;border-radius:50%}
.affinity.green .dot{background:#22c55e}.affinity.yellow .dot{background:#eab308}.affinity.red .dot{background:#ef4444}
.affinity small{color:#666;margin-left:auto}

/* V10 · Afinidad explicable y tarjetas premium */
.affinity-block{border-radius:16px;padding:12px 13px;border:1px solid transparent;background:#f7f7f7}
.affinity-head{display:flex;align-items:center;gap:10px}
.affinity-head>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.affinity-head strong{font-size:14px;line-height:1.15;color:var(--ink)}
.affinity-head small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}
.traffic-light{width:13px;height:13px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 0 5px rgba(0,0,0,.04)}
.affinity-block.green{background:#f0faf4;border-color:#ccebd8}.affinity-block.green .traffic-light,.affinity-block.green .affinity-track span{background:#22a45a}
.affinity-block.yellow{background:#fff9e9;border-color:#f1dfaa}.affinity-block.yellow .traffic-light,.affinity-block.yellow .affinity-track span{background:#e1a900}
.affinity-block.red{background:#fff3f1;border-color:#f2d0ca}.affinity-block.red .traffic-light,.affinity-block.red .affinity-track span{background:#dc5548}
.affinity-track{height:6px;background:rgba(36,27,29,.09);border-radius:999px;overflow:hidden;margin-top:10px}
.affinity-track span{display:block;height:100%;border-radius:inherit;transition:width .65s ease}
.recommendation-badge{position:absolute;top:14px;left:14px;z-index:4;background:var(--ink);color:#fff;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:900;letter-spacing:.04em;box-shadow:0 8px 22px rgba(36,27,29,.22)}
.gift-featured{border-color:#e9b9ae;box-shadow:0 22px 62px rgba(233,101,84,.13)}
.product-heading{display:flex;flex-direction:column;gap:6px}
.product-category{width:max-content;max-width:100%;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--coral);background:#fff2ed;border:1px solid #f3d2c8;border-radius:999px;padding:5px 8px}
.match-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:-2px}
.match-chips span{font-size:10px;font-weight:800;color:#5f5053;background:#f3eef0;border-radius:999px;padding:5px 8px}
.gift a{display:flex;align-items:center;justify-content:center;gap:7px}
.gift a span{transition:transform .2s ease}.gift a:hover span{transform:translateX(3px)}
.price-note{padding:8px 10px;background:#faf7f5;border-radius:10px;color:#76696b}
@media(max-width:640px){.affinity-block{padding:12px}.recommendation-badge{top:12px;left:12px}.visual{height:250px}}

/* V11: resultados estrictos e imágenes siempre visibles */
.result-summary{margin:18px 0 0;color:var(--muted);font-size:14px;font-weight:700;max-width:760px}
.visual{position:relative;background:#f7f2ed;overflow:hidden}
.visual img{width:100%;height:100%;object-fit:contain;padding:18px;display:block}
.visual-fallback{display:none;font-size:72px;line-height:1}
.visual.image-fallback .visual-fallback,.visual-fallback.always{display:grid;place-items:center;width:100%;height:100%}
.result-grid:has(.gift:only-child){grid-template-columns:minmax(320px,520px);justify-content:center}
@media(max-width:640px){.result-grid:has(.gift:only-child){grid-template-columns:1fr}.visual img{padding:14px}}

/* V12 · Afinidad explicable */
.affinity-reasons{list-style:none;margin:12px 0 0;padding:10px 0 0;border-top:1px solid var(--line);display:grid;gap:7px}
.affinity-reasons li{position:relative;padding-left:22px;font-size:13px;line-height:1.4;color:var(--ink)}
.affinity-reasons li::before{content:'✓';position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#e8f7ee;color:#16864a;font-size:10px;font-weight:900}


/* V13 · Tono más cálido y menos técnico */
.affinity-block,.affinity-reasons,.score-badge{display:none!important}
.warm-match{display:flex;align-items:center;gap:12px;padding:14px 15px;border-radius:16px;border:1px solid #f1d8cf;background:linear-gradient(135deg,#fff5ef,#fffaf7)}
.warm-match .warm-icon{font-size:26px;line-height:1;flex:0 0 auto}
.warm-match>div{display:flex;flex-direction:column;gap:2px}
.warm-match strong{font-size:15px;line-height:1.25;color:var(--ink)}
.warm-match small{font-size:12px;color:var(--muted);line-height:1.35}
.warm-match.green{border-color:#cfe8da;background:linear-gradient(135deg,#effaf4,#fbfffd)}
.warm-match.yellow{border-color:#f0dfae;background:linear-gradient(135deg,#fff8e7,#fffdf7)}
.warm-match.red{border-color:#f1d3cc;background:linear-gradient(135deg,#fff2ef,#fffaf8)}
.recommendation-badge{background:linear-gradient(135deg,#6f405c,#3f2635);font-size:11px;padding:9px 13px}
.match-box.warm-copy{background:#fffaf6;border-color:#f0ded6;padding:16px}
.match-box.warm-copy .match-label{text-transform:none;letter-spacing:0;font-size:13px;color:var(--plum);margin-bottom:7px}
.match-box.warm-copy p{margin:0;font-size:15px;line-height:1.6}
.purchase-row.price-centered{display:block;text-align:center;margin-top:4px;padding:16px 10px 4px}
.price-centered .price-label{text-transform:none;letter-spacing:0;color:var(--muted);font-size:12px;margin-bottom:4px}
.price-centered .price{font-size:34px;font-weight:900;letter-spacing:-1px}
.centered-note{text-align:center;margin:0;background:transparent;padding:0 8px}
@media(max-width:640px){.warm-match{padding:13px}.warm-match strong{font-size:14px}.price-centered .price{font-size:32px}}

.empty-results{grid-column:1/-1;max-width:680px;margin:12px auto 0;padding:34px 28px;text-align:center;background:#fff;border:1px solid #efd8cf;border-radius:24px}.empty-results-icon{font-size:38px;margin-bottom:8px}.empty-results h3{margin:0 0 10px;color:#54283f}.empty-results p{margin:0;line-height:1.65;color:#665b60}

/* V18 · intereses rápidos y precio compacto */
.interest-picker{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.interest-picker-label{display:block;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:10px}
.interest-chips{display:flex;gap:8px;flex-wrap:wrap}
.interest-chip{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;cursor:pointer;transition:.18s ease}
.interest-chip:hover{border-color:#e9a89c;background:#fff7f4}
.interest-chip.is-selected{border-color:var(--coral);background:#fff0eb;color:var(--coral-dark);box-shadow:0 0 0 3px rgba(233,101,84,.09)}
.price-centered .price{max-width:190px;margin:0 auto;font-size:34px}
.price-centered .price:has(+ *){max-width:none}
.gift .price-note.centered-note{text-align:center;background:transparent;padding:0 4px;font-size:10px}
@media(max-width:640px){.interest-chip{padding:9px 12px}.interest-chips{gap:7px}.price-centered .price{font-size:31px}}


/* V19 · cuatro tarjetas y pie de compra alineado */
.result-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.gift{height:100%;box-shadow:0 12px 36px rgba(73,43,35,.055);transition:transform .18s ease,box-shadow .18s ease}
.gift:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(73,43,35,.10)}
.gift .body{height:100%;padding:18px;display:flex;flex-direction:column}
.gift .match-box.warm-copy{min-height:132px}
.gift-footer{margin-top:auto;padding-top:14px;display:flex;flex-direction:column;gap:9px}
.purchase-row.price-centered{margin-top:0;padding:15px 12px 12px;border:1px solid #f0ded6;border-radius:16px;background:linear-gradient(145deg,#fffaf7,#fff4ee)}
.price-centered .price-label{display:block;color:var(--plum);font-weight:800;font-size:11px}
.price-centered .price{font-size:31px;line-height:1.08;max-width:none}
.price-centered .price.price-on-amazon{font-size:22px;letter-spacing:-.4px;color:var(--ink)}
.gift .price-note.centered-note{min-height:28px;display:grid;place-items:center;font-size:9px;line-height:1.35;color:var(--muted)}
.gift a.amazon-button{margin-top:0;min-height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 24px rgba(233,101,84,.20);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.gift a.amazon-button:hover{background:var(--coral-dark);transform:translateY(-1px);box-shadow:0 13px 27px rgba(202,76,60,.25)}
.gift a.amazon-button strong{font-size:18px;line-height:1}
@media(max-width:980px){.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift .match-box.warm-copy{min-height:0}}
@media(max-width:640px){.result-grid{grid-template-columns:1fr}.price-centered .price{font-size:30px}.price-centered .price.price-on-amazon{font-size:21px}}

.result-summary.has-missing-interests{max-width:none;padding:14px 18px;border:1px solid #efd293;border-radius:14px;background:#fff8e8;color:#604821;line-height:1.5;font-weight:500}.result-summary.has-missing-interests strong{color:#5a3044}

/* Ideas de regalos — V21 */
.nav-links a.active{color:var(--ink);font-weight:800}
.ideas-hero{max-width:1100px;margin:0 auto;padding:96px 24px 70px;text-align:center}
.ideas-hero h1{font-family:Manrope,sans-serif;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.04;letter-spacing:-.055em;margin:22px 0 20px;color:var(--ink)}
.ideas-hero h1 em{font-style:normal;color:var(--coral)}
.ideas-hero>p{max-width:730px;margin:0 auto;color:var(--muted);font-size:1.12rem;line-height:1.75}
.ideas-hero-actions{display:flex;justify-content:center;gap:14px;margin-top:32px;flex-wrap:wrap}
.compact-button{display:inline-flex;width:auto;min-width:220px;text-decoration:none;padding:16px 22px}
.category-section,.catalog-section{max-width:1280px;margin:0 auto;padding:52px 24px}
.category-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:30px}
.category-card{appearance:none;border:1px solid #ecdcd3;background:rgba(255,255,255,.78);border-radius:24px;padding:22px;text-align:left;display:flex;align-items:center;gap:15px;cursor:pointer;transition:.22s ease;color:var(--ink);box-shadow:0 10px 30px rgba(74,39,50,.04)}
.category-card:hover{transform:translateY(-4px);border-color:#efb9aa;box-shadow:0 18px 38px rgba(74,39,50,.09)}
.category-icon{width:52px;height:52px;border-radius:17px;background:#fff4ed;display:grid;place-items:center;font-size:1.6rem;flex:0 0 auto}
.category-card>span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.category-card strong{font:800 1rem Manrope,sans-serif}.category-card small{color:var(--muted);line-height:1.35;margin-top:4px}.category-card b{font-size:.76rem;color:var(--coral);margin-top:9px;text-transform:uppercase;letter-spacing:.05em}.category-card i{font-style:normal;margin-left:auto;font-size:1.2rem;color:var(--coral)}
.catalog-section{padding-top:72px}.catalog-top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.catalog-top h2{font:800 clamp(1.9rem,3vw,2.8rem) Manrope,sans-serif;margin:7px 0}.catalog-top p{color:var(--muted)}
.catalog-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.catalog-search input,.catalog-controls select{min-height:48px;border:1px solid #e6d8d1;background:#fff;border-radius:14px;padding:0 15px;font:600 .92rem 'DM Sans',sans-serif;color:var(--ink)}.catalog-search input{min-width:270px}.catalog-controls select{min-width:220px}
.catalog-filter-chips{display:flex;gap:9px;flex-wrap:wrap;margin:28px 0}.catalog-filter{border:1px solid #e8d9d1;background:#fff;border-radius:999px;padding:10px 14px;font:700 .84rem 'DM Sans',sans-serif;color:#634b55;cursor:pointer}.catalog-filter.active{background:#5c2c45;border-color:#5c2c45;color:#fff}.catalog-filter:hover{border-color:#d59e91}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}.catalog-product-card{background:#fff;border:1px solid #eadbd3;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 10px 28px rgba(74,39,50,.045);transition:.2s ease}.catalog-product-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(74,39,50,.09)}
.catalog-image{height:235px;background:#faf8f6;display:grid;place-items:center;position:relative;overflow:hidden;border-bottom:1px solid #eee1da}.catalog-image img{width:100%;height:100%;object-fit:contain;padding:18px}.catalog-fallback{font-size:4rem}.catalog-badge{position:absolute;z-index:2;left:14px;top:14px;background:#5c2c45;color:#fff;border-radius:999px;padding:7px 10px;font-size:.68rem;font-weight:800;letter-spacing:.03em}
.catalog-product-body{padding:19px;display:flex;flex-direction:column;flex:1}.product-kicker{align-self:flex-start;border:1px solid #ffd0c4;background:#fff4ef;color:#ef6554;border-radius:999px;padding:6px 9px;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.catalog-product-body h3{font:800 1.16rem/1.22 Manrope,sans-serif;margin:11px 0 7px}.catalog-rating{font-size:.78rem;color:#8d6500;font-weight:700}.catalog-product-body>p{font-size:.9rem;line-height:1.55;color:#5f4c54;margin:13px 0 18px}.catalog-product-footer{margin-top:auto}.catalog-price{background:#fff8f4;border:1px solid #efd9ce;border-radius:16px;padding:12px 14px;text-align:center;margin-bottom:10px;display:flex;flex-direction:column;gap:3px}.catalog-price span{font-size:.7rem;color:#84546a;font-weight:700}.catalog-price strong{font:800 1.13rem Manrope,sans-serif}.catalog-product-footer a{min-height:48px;border-radius:14px;background:#f26152;color:#fff;text-decoration:none;font-weight:800;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 20px rgba(242,97,82,.2)}
.catalog-empty{text-align:center;padding:70px 20px;background:#fff;border:1px dashed #e7d5cc;border-radius:24px}.catalog-empty span{font-size:2.6rem}.catalog-empty h3{font:800 1.3rem Manrope,sans-serif;margin:12px 0 6px}.catalog-empty p{color:var(--muted)}
.ideas-cta{max-width:1232px;margin:54px auto 90px;padding:34px 38px;border-radius:28px;background:#5c2c45;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:28px}.ideas-cta .eyebrow{color:#ffd6ca}.ideas-cta h2{font:800 2rem Manrope,sans-serif;margin:6px 0}.ideas-cta p{max-width:710px;color:#f3dfe7;line-height:1.6}.ideas-cta .primary-button{background:#fff;color:#5c2c45;box-shadow:none;flex:0 0 auto}
@media(max-width:1050px){.category-cards,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-top{align-items:flex-start;flex-direction:column}.catalog-controls{justify-content:flex-start}}
@media(max-width:680px){.ideas-hero{padding-top:66px}.category-section,.catalog-section{padding-left:16px;padding-right:16px}.category-cards,.catalog-grid{grid-template-columns:1fr}.category-card{padding:18px}.catalog-controls,.catalog-search,.catalog-search input,.catalog-controls select{width:100%;min-width:0}.ideas-cta{margin:38px 16px 65px;padding:28px 22px;align-items:flex-start;flex-direction:column}.ideas-cta .compact-button{width:100%}.catalog-image{height:260px}}
