*,::after,::before{box-sizing:border-box}.fts-wrap{max-width:1180px;margin:0 auto;padding:0 16px}.fts-hero{margin:14px auto 14px;padding:13px 18px;border-radius:12px;background:linear-gradient(135deg,rgba(177,242,232,.55)0,rgba(94,234,212,.45) 100%);border:1px solid rgba(13,148,136,.25);text-align:center}.fts-hero.tinted{background:linear-gradient(135deg,var(--fts-tint-1,#dbeafe) 0%,var(--fts-tint-2,#bfdbfe) 100%);border-color:var(--fts-tint-border,#93c5fd)}.fts-hero h1{font-size:clamp(1.35rem,3vw,1.9rem);font-weight:900;margin:0 0 4px;letter-spacing:-.02em;line-height:1.1}.fts-hero h1 .emoji{font-style:normal;margin-right:8px}.fts-hero .tagline{color:#0a1628;opacity:.78;font-size:15px;max-width:740px;margin:6px auto 0;line-height:1.5}.fts-hero .meta{margin-top:10px;display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:center}.fts-hero .meta-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.6);color:#0a1628;padding:4px 10px;border-radius:999px;border:1px solid rgba(13,148,136,.25)}.fts-disclosure{max-width:1180px;margin:0 auto 14px;padding:9px 16px;background:#fffbeb;border:1px solid #fbbf24;border-radius:10px;font-size:13px;color:#78350f;text-align:center;line-height:1.5}.fts-disclosure strong{color:#92400e}.fts-disclosure a{color:#0f766e;text-decoration:underline;font-weight:600}.fts-stats{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:10px auto 18px}.fts-stat{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:8px 14px;display:flex;flex-direction:column;align-items:center;min-width:110px}.fts-stat .n{font-family:"Barlow Condensed",sans-serif;font-size:1.6rem;font-weight:900;color:#0f766e;line-height:1}.fts-stat .l{font-size:11px;color:#475569;text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.fts-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin:0 0 22px}.fts-hub-card,.fts-toolbar{display:flex;background:#fff}.fts-hub-card{border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 14px;text-decoration:none;color:inherit;flex-direction:column;gap:6px;transition:transform .15s,box-shadow .15s,border-color .15s;position:relative;overflow:hidden}.fts-hub-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.1);border-color:var(--card-color,#0d9488)}.fts-hub-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--card-color,#0d9488)}.fts-hub-card .hub-emoji{font-size:1.5rem;line-height:1}.fts-hub-card .hub-name{font-family:"Barlow Condensed",sans-serif;font-size:1.05rem;font-weight:900;color:#0a1628;line-height:1.1;margin-top:4px}.fts-card-info .row strong,.fts-hub-card .hub-meta{font-size:12px;color:#475569;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.fts-hub-card .hub-tag{font-size:13px;color:#334155;line-height:1.45;margin-top:2px}.fts-hub-card .hub-count{margin-top:8px;display:inline-block;font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:800;color:#0f766e;text-transform:uppercase;letter-spacing:.08em}.fts-toolbar{flex-wrap:wrap;gap:10px;align-items:center;border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 14px;margin:0 0 14px}.fts-toolbar .count,.fts-toolbar label{text-transform:uppercase;letter-spacing:.06em}.fts-toolbar label{font-size:12px;color:#475569;font-weight:700;margin-right:4px}.fts-toolbar button.reset,.fts-toolbar input,.fts-toolbar select{padding:8px 10px;border-radius:8px;font-family:inherit;font-size:14px;color:#0a1628;cursor:pointer}.fts-toolbar input{cursor:text;min-width:0;flex:1 1 200px}.fts-toolbar .count{margin-left:auto;font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:800;color:#0f766e}.fts-toolbar button.reset{background:0 0;border:1.5px solid #e2e8f0;padding:8px 12px;font-size:12px;font-weight:700;color:#475569}.fts-toolbar button.reset:hover{background:#f1f5f9}.fts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:0 0 24px}.fts-card,.fts-toolbar input,.fts-toolbar select{background:#fff;border:1.5px solid #e2e8f0}.fts-card{border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .12s,box-shadow .12s,border-color .12s;position:relative}.fts-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.08);border-color:var(--card-color,#0d9488)}.fts-card-img,.fts-card-img .placeholder{display:flex;align-items:center;justify-content:center}.fts-card-img{aspect-ratio:16/9;background:#f1f5f9;overflow:hidden;position:relative}.fts-card-img img{width:100%;height:100%;object-fit:cover;display:block}.fts-card-img .placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--card-color,#0d9488) 0%,color-mix(in srgb,var(--card-color,#0d9488) 70%,#0a1628) 100%);color:#fff;flex-direction:column;gap:6px;font-family:"Barlow Condensed",sans-serif}.fts-card-img .placeholder .ph-emoji{font-size:2.2rem;line-height:1;opacity:.85}.fts-card-img .placeholder .ph-name{font-size:17px;font-weight:900;letter-spacing:-.01em;text-align:center;padding:0 14px;line-height:1.15}.fts-card-img .year-badge{position:absolute;top:8px;right:8px;background:rgba(10,22,40,.85);color:#fcd34d;font-weight:900;font-size:12px;letter-spacing:.04em;padding:3px 9px;border-radius:6px}.fts-card-body{padding:10px 12px 11px;display:flex;flex-direction:column;flex:1;gap:5px}.fts-card-cat,.fts-card-img .year-badge,.fts-card-name{font-family:"Barlow Condensed",sans-serif}.fts-card-cat{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#0f766e}.fts-card-name{font-size:1.02rem;font-weight:900;color:#0a1628;line-height:1.15;margin:0;letter-spacing:-.01em}.fts-card-tagline{font-size:13px;color:#334155;line-height:1.4;margin:0}.fts-card-info{display:flex;flex-direction:column;gap:3px;margin-top:2px;font-size:12px;color:#475569;line-height:1.4}.fts-card-info .row{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.fts-card-info .row strong{color:#0a1628;flex-shrink:0;font-size:11px;letter-spacing:.05em}.fts-card-info .row .val{color:#334155;font-size:12px}.fts-card-story{font-size:13px;color:#475569;line-height:1.5;margin-top:6px;border-top:1px dashed #e2e8f0;padding-top:8px}.fts-card-actions{display:grid;grid-template-columns:1fr;gap:6px;padding:10px 14px 14px;border-top:1px solid #f1f5f9;background:#fafcff}.fts-card-actions .compare{grid-column:1/-1}.fts-card-actions .amazon,.fts-card-actions .ebay{display:inline-flex}@media (min-width:520px){.fts-card-actions{grid-template-columns:1fr 1fr}.fts-card-actions .compare{grid-column:1/-1}}.fts-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-family:"Barlow",sans-serif;font-weight:800;font-size:13px;padding:10px 8px;border-radius:8px;text-decoration:none;transition:transform .1s,box-shadow .1s,filter .1s;line-height:1}.fts-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(0,0,0,.12);filter:brightness(1.05)}.fts-btn.compare{background:linear-gradient(135deg,#0a1628,#0d9488);color:#fff;border:1.5px solid #0a1628}.fts-btn.amazon{background:#f59e0b;color:#0a1628;border:1.5px solid #d97706}.fts-btn.ebay{background:#0891b2;color:#fff;border:1.5px solid #0e7490}.fts-alt-label{grid-column:1/-1;font-size:10px;font-weight:700;color:#475569;text-align:center;padding-top:6px;margin-top:2px;border-top:1px dashed #e2e8f0;text-transform:uppercase;letter-spacing:.06em}.fts-btn.aliexpress,.fts-btn.temu{background:#fff;color:#e62e04;border:1.5px solid #e62e04;font-size:12px}.fts-btn.aliexpress:hover{background:#fee2e2}.fts-btn.temu{color:#fb7701;border:1.5px solid #fb7701}.fts-btn.temu:hover{background:#ffedd5}.fts-btn .arr{font-size:14px;line-height:1}.fts-card-actions.story-only{grid-template-columns:1fr;gap:8px;background:#fff7ed}.fts-not-buyable{display:flex;align-items:center;justify-content:center;gap:5px;font-family:"Barlow",sans-serif;font-size:11px;font-weight:600;color:#92400e;background:#fef3c7;border:1px dashed #fbbf24;padding:8px;border-radius:6px;line-height:1.3;text-align:center}.fts-empty,.fts-related{background:#fff;border-radius:14px}.fts-empty{text-align:center;padding:40px 20px;color:#475569;border:1.5px dashed #e2e8f0}.fts-empty h3,.fts-hero h1,.fts-related h2{font-family:"Barlow Condensed",sans-serif;color:#0a1628}.fts-empty h3{font-size:18px;margin:0 0 6px}.fts-empty p{margin:0;font-size:14px}.fts-related{margin:30px 0 40px;padding:20px;border:1.5px solid #e2e8f0}.fts-related h2{font-size:1.3rem;font-weight:900;margin:0 0 12px;letter-spacing:-.01em}.fts-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.fts-related-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fafcff;border:1.5px solid #e2e8f0;border-radius:10px;text-decoration:none;color:inherit;font-size:13px;transition:all .12s}.fts-related-card:hover{border-color:var(--card-color,#0d9488);background:#fff;transform:translateY(-1px)}.fts-related-card .em{font-size:1.4rem;line-height:1;flex-shrink:0}.fts-related-card .nm{font-family:"Barlow Condensed",sans-serif;font-weight:800;color:#0a1628;line-height:1.1}.fts-related-card .sb{font-size:11px;color:#475569;line-height:1.2;margin-top:2px}/* Reserve hero h1 at 2 lines on mobile: "Barlow Condensed" is far narrower than the sans-serif fallback, so the title wraps to 2 lines pre-swap and collapses to 1 once the web font loads -> shoved the tagline + all content below it down (CLS ~0.152). min-height holds the box; align-content centers the 1-line case so there's no dead gap. */
@media (max-width:540px){.fts-hero{padding:12px 14px}.fts-hero h1{font-size:1.3rem}.fts-card-actions{grid-template-columns:1fr}.fts-toolbar .count{margin-left:0;width:100%;text-align:right}}.fts-shop{display:block}@media(min-width:860px){.fts-shop{display:grid;grid-template-columns:208px 1fr;gap:18px;align-items:start}}.fts-catrail{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px;margin:0 0 16px}@media(min-width:860px){.fts-catrail{position:sticky;top:72px;margin:0;max-height:calc(100vh - 88px);overflow:auto}}.fts-catrail-h{font-family:"Barlow Condensed",sans-serif;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#475569;padding:5px 9px 7px}.fts-catrail-item{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;text-align:left;background:0 0;border:0;border-radius:8px;padding:7px 10px;font-family:inherit;font-size:13px;font-weight:600;color:#0a1628;cursor:pointer;line-height:1.25}.fts-catrail-item:hover{background:#f1f5f9}.fts-catrail-item.active{background:#0a1628;color:#fff}.fts-catrail-item span{flex-shrink:0;font-size:10.5px;font-weight:800;color:#0f766e;background:#e6f5f3;padding:1px 7px;border-radius:99px}.fts-catrail-item.active span{color:#0a1628;background:#fcd34d}