/* A calm reading layer over the KiddieToys identity and existing layouts. */
:root {
    --ink: #29353d;
    --muted: #53616a;
    --cream: #faf9f6;
    --line: #dfe5e2;
    --brand-blue: #315c73;
    --brand-blue-dark: #24475b;
    --brand-green: #416b59;
    --brand-green-dark: #365b4b;
    --brand-yellow: #e7cc89;
    --brand-red: #a7594d;
    --green: var(--brand-blue);
    --peach: #f4eee7;
    --mint: #edf3ee;
    --yellow: #f8f2e4;
    --lavender: #edf1f5;
    --reading-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
    --editorial-font: Georgia, 'Times New Roman', serif;
}
body { background: var(--cream); color: var(--ink); font-family: var(--reading-font); font-size: 17px; line-height: 1.75; }
h1, h2, h3, h4 { color: var(--ink); font-family: var(--reading-font); font-weight: 650; letter-spacing: -.025em; line-height: 1.3; text-wrap: pretty; }
h1 { font-size: clamp(34px, 4vw, 52px); }
h2 { font-size: clamp(27px, 2.5vw, 36px); }
h3 { font-size: 23px; }
p { color: var(--muted); }
strong, b { font-weight: 650; }
em { color: var(--brand-green-dark); }
::selection { background: #dcebe4; color: #203a30; }
:focus-visible { outline: 3px solid #507764 !important; outline-offset: 4px; }
a { text-underline-offset: .2em; text-decoration-thickness: 1px; }
.eyebrow, .meta { font-family: var(--reading-font); font-size: 12px; line-height: 1.6; letter-spacing: .075em; font-weight: 600; color: #52685e; }
.fine { font-size: 14px; line-height: 1.7; color: var(--muted); }
.header { background: var(--cream); max-width: 1280px; height: 100px; min-height: 100px; padding-inline: 32px; gap: 24px; }
.header::after { height: 1px; left: 32px; right: 32px; background: var(--line); }
.header .brand-logo { width: 190px; height: 72px; }
.header nav { background: var(--cream); gap: 22px; font-size: 14px; font-weight: 500; }
.header nav a:not(.button) { color: #3d4c54; }
.header nav a[aria-current] { color: var(--brand-blue); text-decoration-color: var(--brand-blue); text-decoration-thickness: 2px; }
.saved-link b { background: #eaf0ed; color: #365747; font-size: 11px; }
.button, .header nav .button, .button.small { min-height: 46px; padding: 11px 20px; line-height: 1.4; gap: 12px; border: 1px solid var(--brand-blue); border-radius: 8px; background: var(--brand-blue); box-shadow: none; font-family: var(--reading-font); font-size: 15px; font-weight: 600; letter-spacing: 0; align-items: center; justify-content: center; text-align: center; }
.button:hover { background: var(--brand-blue-dark); box-shadow: none; transform: none; }
.button:active { transform: none; box-shadow: none; }
.button.light { background: #fff; color: var(--brand-blue-dark); border-color: #fff; box-shadow: none; }
.button.light:hover { background: #edf3f1; }
.button.secondary { background: transparent; color: var(--brand-blue); }
.button > span { line-height: inherit; }
.text-link, .hero-actions .text-link { font-size: 15px; line-height: 1.6; font-weight: 600; color: var(--brand-blue); gap: 10px; }
.hero { max-width: 1280px; padding: 54px 48px; min-height: 490px; gap: 60px; }
.hero h1 { font-family: var(--editorial-font); font-size: clamp(42px, 4.8vw, 64px); font-weight: 400; line-height: 1.13; letter-spacing: -.045em; max-width: 650px; }
.hero h1 em, .hero-happy { color: var(--brand-green-dark); }
.hero h1 svg, .scene-label, .scene-doodle, .scene-sticker, .scene-caption { display: none; }
.hero .eyebrow { background: transparent; padding: 0; border-radius: 0; font-size: 12px; letter-spacing: .08em; margin-bottom: 20px; }
.eyebrow i { background: var(--brand-green); }
.hero-copy > p { font-size: 19px; line-height: 1.75; max-width: 530px; margin: 24px 0 28px; }
.hero-scene { padding: 0; max-width: 430px; width: 100%; justify-self: end; }
.scene-arch { border: 0; border-radius: 28px; transform: none; background: #edf1eb; }
.scene-arch img { transform: none; }
.hero-note { font-size: 14px; line-height: 1.6; margin-top: 24px; }
.little-spark { width: 24px; height: 24px; font-size: 15px; color: #526f5c; background: #e8efe8; }
.promise-strip { gap: 48px; font-size: 13px; font-weight: 500; line-height: 1.6; padding: 17px 24px; background: #eef2ef; color: #42594b; border-color: var(--line); }
.section { max-width: 1280px; padding: 56px 48px; }
.section-heading { gap: 28px; margin-bottom: 30px; }
.section-heading h2 { font-family: var(--editorial-font); font-weight: 400; font-size: clamp(30px, 3vw, 40px); line-height: 1.25; letter-spacing: -.025em; }
.section-heading > p { font-size: 16px; max-width: 310px; }
.guide-grid, .homepage-collections-grid { gap: 28px; }
.guide-visual, .toy-visual { border-color: var(--line); border-radius: 14px; }
.guide-card h3, .homepage-collection-card h3, .toy-copy h3 { font-family: var(--reading-font); font-weight: 600; font-size: 22px; line-height: 1.4; letter-spacing: -.025em; }
.guide-card p, .toy-copy p { font-size: 16px; line-height: 1.75; }
.guide-card .meta { font-size: 11px; margin-bottom: 10px; color: #5d7066; }
.round-arrow { border-color: var(--line); width: 36px; height: 36px; font-size: 19px; }
.toy-copy .meta, .card-tag { font-size: 11px; letter-spacing: .025em; }
.age-tile { border: 1px solid var(--line); border-radius: 12px; background: #eef2f4; color: var(--ink); box-shadow: none; }
.age-3, .age-4, .age-5, .age-6 { background: #eef3ee; color: var(--ink); box-shadow: none; }
.age-4 { background: #f7f2e7; }.age-5 { background: #f4ede9; }.age-6 { background: #edf0f4; }
.age-tile > span { font-family: var(--editorial-font); font-size: 56px; font-weight: 400; padding: 18px 0; }
.age-tile > span::before { display: none; }
.age-tile small { font-size: 14px; font-family: var(--reading-font); }
.age-tile > div { background: transparent; border-top: 1px solid #d9e1da; font-size: 13px; font-weight: 500; }
.finder-banner { max-width: 1184px; background: #eaf0ed; color: var(--ink); border: 1px solid #d7e1da; border-radius: 16px; padding: 34px; }
.finder-banner::after, .finder-symbol { display: none; }
.finder-banner h2 { font-size: 30px; color: var(--ink); font-weight: 600; }
.finder-banner .eyebrow { color: #4f6859; }
.finder-banner p { font-size: 17px; color: var(--muted); }
.finder-banner .button.light { border-color: var(--brand-blue); background: var(--brand-blue); color: #fff; }
.story-section { background: #f0f3ed; border-color: var(--line); }
.story-section h2 { font-family: var(--editorial-font); font-weight: 400; color: var(--ink); font-size: 38px; }
.story-section p, .toy-detail p, .guide-body aside p { font-size: 17px; line-height: 1.8; }
.page-intro { padding: 54px 24px; background: #f0f3f0; border-bottom: 1px solid var(--line); }
.page-intro::before, .page-intro::after { display: none; }
.page-intro h1 { font-family: var(--editorial-font); font-size: clamp(36px, 4.2vw, 52px); line-height: 1.2; font-weight: 400; letter-spacing: -.03em; max-width: 850px; margin-inline: auto; }
.page-intro p { font-size: 18px; line-height: 1.75; max-width: 680px; margin-inline: auto; }
.prose { max-width: 860px; margin: 38px auto 64px; padding: 16px 36px; }
.cms-article { max-width: 860px; }
.prose h1, .guide-hero h1, .toy-detail h1 { font-family: var(--editorial-font); font-size: clamp(34px, 4.1vw, 50px); font-weight: 400; line-height: 1.22; letter-spacing: -.025em; }
.prose h2, .prose h3 { color: var(--ink); }
.prose h2 { font-family: var(--editorial-font); font-weight: 400; font-size: 31px; line-height: 1.3; }
.prose h3 { font-weight: 600; font-size: 23px; line-height: 1.4; }
.prose p, .prose li, .prose dd, .markdown-body { font-size: 18px; line-height: 1.85; color: #3e4b53; }
.prose .lead { font-size: 20px !important; line-height: 1.7; }
.markdown-body h2 { margin: 44px 0 18px; }
.markdown-body h3 { margin: 30px 0 12px; }
.markdown-body p { margin: 0 0 22px; }
.markdown-body ul, .markdown-body ol { color: #3e4b53; padding-left: 26px; margin: 18px 0 26px; }
.markdown-body li { padding-left: 4px; margin-bottom: 12px; }
.markdown-body a, .prose > p a, .article-outline a { color: #285b73; text-decoration: underline; text-decoration-color: #9bb4be; text-underline-offset: .2em; }
.markdown-body a:hover, .article-outline a:hover { text-decoration-color: currentColor; }
.markdown-body img[src$=".svg"] { display: block; width: 100%; max-height: 280px; object-fit: contain; background: #f1f3ed; margin: 24px auto; }
.markdown-body table { width: 100%; border-collapse: collapse; margin: 28px 0; font-size: 16px; }
.markdown-body th, .markdown-body td { text-align: left; vertical-align: top; padding: 14px 16px; border: 1px solid var(--line); line-height: 1.65; }
.markdown-body th { background: #f0f3ef; font-weight: 600; min-width: 130px; }
.markdown-body blockquote { background: #f3f4ed; border-left: 3px solid #94aa93; border-radius: 0 8px 8px 0; }
.article-meta, .breadcrumb, .seo-breadcrumbs { font-size: 14px; line-height: 1.65; color: #596871; }
.seo-breadcrumbs { max-width: 1280px; padding-inline: 36px; margin-top: 20px; }
.article-answer { background: #f2f5ef; border-left: 3px solid #92a78c; border-radius: 0 10px 10px 0; padding: 18px 22px; margin: 28px 0; }
.article-outline { background: #f3f5f2; border-color: var(--line); border-radius: 10px; padding: 22px 26px; font-size: 16px; line-height: 1.7; }
.article-outline ul { columns: 2; column-gap: 30px; padding-left: 20px; margin-top: 12px; }
.article-outline li { break-inside: avoid; font-size: 15px; line-height: 1.6; margin-bottom: 9px; }
.article-outline .outline-sub { margin-left: 10px; }
.article-end { font-size: 15px; }
.prose dt { font-weight: 600; margin-top: 18px; }.prose dd { margin-left: 0; }
.blog-grid { gap: 28px; }
.blog-card { border-color: var(--line); border-radius: 14px; background: #fff; box-shadow: 0 3px 12px #27382d04; }
.blog-cover-link img { height: 210px; border-radius: 0; }
.blog-card .blog-card-top, .blog-card:nth-child(3n+2) .blog-card-top, .blog-card:nth-child(3n+3) .blog-card-top { min-height: auto; padding: 18px 24px 0; border: 0; background: #fff; }
.blog-card-top .eyebrow { font-size: 11px; color: #546d5e; letter-spacing: .07em; }
.blog-spark { display: none; }
.blog-card > div:last-child { padding: 16px 24px 26px; }
.blog-card h2 { font-size: 23px; font-weight: 600; line-height: 1.4; letter-spacing: -.025em; margin: 10px 0 14px; }
.blog-card h2 a { text-decoration: none; }.blog-card h2 a:hover { text-decoration: underline; }
.blog-card p { font-size: 16px; line-height: 1.75; margin-top: 0; }
.blog-card .meta { font-size: 12px; letter-spacing: .03em; }
.blog-card .text-link { padding-top: 16px; }
.blog-filters { gap: 16px; padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: 12px; }
.filters label, .blog-filters label { color: #3e4f57; font-size: 14px; font-weight: 500; }
input:not([type=radio]):not([type=checkbox]), select { font-size: 16px; min-height: 46px; padding: 11px 13px; border: 1px solid #b8c6bf; border-radius: 7px; background: #fff; }
.blog-filters input, .blog-filters select { width: 100%; }
.catalog-product-card { border-color: var(--line); border-radius: 12px; padding: 24px; }
.catalog-product-card h2, .holiday-model-grid h3 { font-family: var(--reading-font); font-size: 23px; font-weight: 600; line-height: 1.4; letter-spacing: -.02em; }
.catalog-product-card p, .holiday-model-grid p { font-size: 16px; line-height: 1.75; }
.catalog-product-card small { color: #607168; font-size: 13px; }
.catalog-comparison { font-size: 16px; line-height: 1.7; }
.catalog-comparison th, .catalog-comparison td { padding: 18px 22px; border-color: var(--line); vertical-align: top; }
.catalog-comparison thead { background: #eaf0ed; }.catalog-comparison tbody tr:nth-child(even) { background: #f7f8f5; }
.catalog-comparison tbody th { position: sticky; left: 0; background: #f0f3ef; }
.holiday-feature { background: #f0f3ed; border-color: var(--line); border-radius: 16px; padding: 36px; gap: 36px; }
.holiday-feature h2 { font-family: var(--editorial-font); font-weight: 400; font-size: 36px; }
.holiday-feature-note { background: #fafbf7; border: 1px solid var(--line); border-radius: 12px; }
.holiday-feature-note > span { display: none; }.holiday-feature-note h3 { font-size: 23px; font-weight: 600; }
.holiday-safety { border-color: #70876a; font-size: 16px; }
.holiday-guide > p, .holiday-guide > ul { max-width: 850px; font-size: 18px; line-height: 1.85; }
.holiday-guide > h2 { font-size: 32px; margin-bottom: 18px; }
.holiday-model-grid dt { font-size: 14px; }.holiday-model-grid dd { font-size: 16px; }
.guide-body aside, .buy-box, .finder-container { background: #f4f6f1; border-color: var(--line); box-shadow: none; }
.finder-step legend { font-size: 30px; font-weight: 600; color: var(--ink); }
.finder-progress > span { font-size: 14px; }.choice > span { color: var(--ink); }.choice strong { font-weight: 600; }
.results-bar, .simple-pagination { font-size: 15px; }
.newsletter { background: #f1f4ef; border-top: 1px solid var(--line); gap: 40px; }
.newsletter h2 { font-family: var(--editorial-font); font-weight: 400; font-size: 34px; color: var(--ink); }
.newsletter .eyebrow { color: #596f60; }.newsletter p { font-size: 16px; }
.newsletter .button { font-size: 15px; }.newsletter-form .fine, .consent { font-size: 14px; line-height: 1.65; }
footer { background: #eef1ed; border-top: 1px solid var(--line); border-image: none; font-size: 15px; }
.footer-top .brand-logo { width: 190px; height: 68px; }
.footer-top p, .footer-top > div:not(:first-child), .footer-top > div:not(:first-child) a { font-size: 15px; color: #46584b; }
.footer-bottom, .footer-bottom p { font-size: 13px; line-height: 1.75; color: #59665d; }
.answer-faq summary { font-size: 19px; font-weight: 600; }.answer-faq p { font-size: 17px; }
@media (max-width: 1100px) {
    .header { gap: 18px; }.header nav { gap: 15px; font-size: 14px; }.header .brand-logo { width: 170px; }
    .hero { gap: 32px; padding-inline: 32px; }.section { padding-inline: 32px; }
    .hero h1 { font-size: 50px; }.hero-copy > p { font-size: 18px; }
    .homepage-collections-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 761px) and (max-width: 1040px) {
    .menu-toggle { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 14px; font-size: 15px; }
    .header nav { display: none; position: absolute; z-index: 30; left: 0; right: 0; top: 100%; padding: 24px 32px; background: var(--cream); border-bottom: 1px solid var(--line); box-shadow: 0 12px 20px #23332b0a; align-items: stretch; }
    .header nav.open { display: flex; flex-direction: column; gap: 18px; }
}
@media (max-width: 760px) {
    body { font-size: 17px; }.header { height: 84px; min-height: 84px; padding-inline: 22px; }
    .header::after { left: 22px; right: 22px; }.header .brand-logo { width: 166px; height: 62px; }
    .menu-toggle { font-size: 14px; min-height: 42px; padding: 8px 12px; background: #f0f3ef; border-color: var(--line); color: var(--ink); }
    .header nav { top: 84px; font-size: 16px; padding: 24px; gap: 20px; }
    .hero { padding: 36px 24px; grid-template-columns: 1fr; gap: 30px; min-height: 0; }
    .hero h1 { font-size: clamp(40px, 10vw, 54px); }.hero .eyebrow { font-size: 11px; }
    .hero-copy > p { font-size: 18px; }.hero-actions { flex-wrap: wrap; gap: 16px 20px; }
    .hero-actions .button, .hero-actions .text-link { font-size: 15px; }
    .hero-scene { max-width: 340px; justify-self: center; }.hero-note { font-size: 13px; }
    .promise-strip { gap: 14px; padding: 16px 20px; font-size: 12px; }.promise-strip span { max-width: 130px; }
    .section { padding: 40px 24px; }.section-heading { flex-wrap: wrap; gap: 16px; }.section-heading h2 { font-size: 31px; letter-spacing: -.025em; }
    .section-heading .text-link { font-size: 14px; }.eyebrow { font-size: 11px; }
    .homepage-collections-grid { grid-template-columns: 1fr; gap: 32px; }
    .guide-card h3, .homepage-collection-card h3 { font-size: 23px; }.guide-card p, .toy-copy p { font-size: 16px; }
    .toy-grid, .toy-grid.three, .toy-grid.two { grid-template-columns: 1fr; gap: 30px; }
    .toy-visual .toy-art { max-height: 280px; }.toy-copy h3 { font-size: 23px; }.toy-copy .meta { font-size: 11px; }.toy-copy .text-link { font-size: 15px; }
    .age-tile { min-width: 140px; }.age-tile > span { font-size: 48px; }.age-tile > div { font-size: 13px; }
    .finder-banner { margin-inline: 24px; padding: 26px; }.finder-banner h2 { font-size: 28px; }.finder-banner p { font-size: 17px; }
    .story-section { padding: 32px 24px; }.story-section h2 { font-size: 32px; }.story-section p { font-size: 17px; }
    .page-intro { padding: 38px 24px; }.page-intro h1 { font-size: 38px; }.page-intro p { font-size: 17px; }
    .prose { margin: 24px auto 44px; padding: 12px 24px; }.prose h1, .cms-article h1, .guide-hero h1, .toy-detail h1 { font-size: 35px; line-height: 1.25; }
    .prose p, .prose li, .prose dd { font-size: 17px; line-height: 1.85; }.prose .lead { font-size: 19px !important; }
    .prose h2 { font-size: 29px; }.prose h3 { font-size: 23px; }.article-outline ul { columns: 1; }
    .article-outline { padding: 20px; }.article-outline li { font-size: 15px; }.article-answer { padding: 16px 18px; }
    .cms-article > .blog-featured-image { width: calc(100vw - 32px); }.blog-featured-image figcaption { font-size: 13px; line-height: 1.7; }
    .seo-breadcrumbs { padding-inline: 24px; font-size: 13px; }.blog-grid { grid-template-columns: 1fr; }
    .blog-card h2 { font-size: 24px; }.blog-filters { padding: 18px; gap: 14px; }.blog-filters > div { min-width: 0; }
    .markdown-body table { font-size: 15px; }.markdown-body th, .markdown-body td { padding: 12px; overflow-wrap: anywhere; }.markdown-body th { min-width: 100px; }
    .holiday-feature { margin-inline: 24px; padding: 26px; }.holiday-feature h2 { font-size: 31px; }.holiday-feature p, .holiday-safety { font-size: 16px; }
    .holiday-guide > p, .holiday-guide > ul { font-size: 17px; }.catalog-product-card p { font-size: 16px; }
    .newsletter { padding: 36px 24px; gap: 22px; }.newsletter h2 { font-size: 31px; }.newsletter .button { font-size: 14px; padding-inline: 14px; }
    .newsletter p { font-size: 16px; }footer { padding: 32px 24px 22px; }
    .footer-top > div:not(:first-child) a { padding-block: 5px; }.footer-bottom, .footer-bottom p { font-size: 13px; }
}

.catalog-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;margin:26px 0}
.catalog-search label{grid-column:1/-1;font-size:15px;font-weight:600}
.catalog-search input{width:100%;min-width:0}
.comparison-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
.comparison-picker label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:600;min-width:0}
.comparison-picker select{width:100%;min-width:0;appearance:none;-webkit-appearance:none;padding-right:44px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234b6257' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px 16px}
.comparison-picker p{grid-column:1/-1;margin:0;font-size:15px}
.comparison-picker .button{justify-self:start}
@media(max-width:600px){.comparison-picker{grid-template-columns:1fr}}
.finder-actions .button,.filters .button,.blog-filters .button{font-size:15px;min-height:46px;padding:11px 20px}

.gift-finder-page .seo-breadcrumbs{margin-bottom:32px}
.newsletter{margin-bottom:48px}
.guide-visual .guide-product-art{aspect-ratio:4/3;background:#fff;padding:22px}
.guide-product-art img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.gift-finder-page .seo-breadcrumbs{margin-bottom:24px}.newsletter{margin-bottom:32px}}

/* Product discovery */
.catalog-page{max-width:1280px;margin:0 auto;padding:28px 32px 64px}
.catalog-intro{max-width:850px;margin-bottom:38px}.catalog-intro h1{font-family:var(--editorial-font);font-weight:400;margin:14px 0 18px}.catalog-intro>p{font-size:18px;max-width:720px}
.catalog-search-row{display:flex;gap:12px;max-width:760px;margin-top:26px}.catalog-search-row input{min-width:0;flex:1;font-size:16px}.catalog-search-row .button{flex-shrink:0}
.catalog-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:32px;align-items:start}.catalog-sidebar{position:sticky;top:24px}.catalog-filter-panel{background:#f0f3ef;border:1px solid var(--line);border-radius:12px;padding:20px}.catalog-filter-panel summary{display:flex;align-items:center;justify-content:space-between;font-size:17px;font-weight:650;cursor:pointer;list-style:none}.catalog-filter-panel summary::-webkit-details-marker{display:none}.catalog-filter-panel[open] summary{margin-bottom:20px}.catalog-filter-panel[open] summary span{transform:rotate(180deg)}
.catalog-filters label{display:block;font-size:14px;font-weight:600;margin:18px 0 7px}.catalog-filters label:first-child{margin-top:0}.catalog-filters select{width:100%;min-width:0;appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234b6257' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;font-size:14px}.catalog-filter-help{font-size:12px;line-height:1.7;margin:10px 0 0}.catalog-filters .button{width:100%;margin-top:24px}.catalog-clear{display:inline-block;padding:8px 0;font:inherit;font-size:14px;border:0;background:none;color:var(--brand-blue);text-decoration:underline;cursor:pointer}.catalog-filters>.catalog-clear{display:block;text-align:center;margin-top:8px}
.catalog-sidebar-note{padding:24px 5px}.catalog-sidebar-note h2{font-size:19px;line-height:1.5}.catalog-sidebar-note p,.catalog-sidebar-note a{font-size:14px;line-height:1.8}
.catalog-results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.catalog-results-heading p{margin:0;font-size:15px}.catalog-results-heading>span{font-size:13px;color:var(--muted)}.catalog-active-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:20px;font-size:13px}.catalog-active-filters span{border-radius:25px;background:#e9efeb;padding:5px 12px}.catalog-active-filters a{padding:5px;text-decoration:underline}
.catalog-page .product-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:none;padding:0;margin:0}.catalog-page .catalog-product-card{min-width:0;border:1px solid var(--line);border-radius:12px;padding:0;overflow:hidden;background:#fff;display:flex;flex-direction:column}.catalog-product-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1;background:#fff;padding:20px}.catalog-product-image img{display:block;width:100%;height:100%;max-height:250px;object-fit:contain}.catalog-product-image>span{font-size:14px;color:var(--muted)}.catalog-card-content{padding:0 20px 20px;display:flex;flex-direction:column;flex:1}.catalog-card-content>small{font-size:12px;letter-spacing:.025em;color:var(--brand-green-dark)}.catalog-page .catalog-product-card h2{font-size:19px;line-height:1.45;margin:9px 0 12px}.catalog-card-content>p{font-size:14px;line-height:1.8;margin:0 0 14px}.catalog-card-content>.catalog-card-age{font-size:12px;color:var(--muted);margin-top:auto}.catalog-card-actions{display:flex;flex-direction:column;gap:8px;margin-top:3px}.catalog-card-actions>.button{font-size:14px;min-height:42px;padding:9px 14px}.catalog-compare-button{font:inherit;font-size:13px;min-height:38px;padding:6px;border:0;background:none;color:var(--brand-blue);cursor:pointer}.catalog-compare-button[aria-pressed=true]{color:var(--brand-green-dark);font-weight:600}.catalog-compare-button:disabled{color:#68747b;cursor:default;opacity:.6}
.catalog-empty{grid-column:1/-1;padding:48px 24px;text-align:center;border:1px dashed #becbc3;border-radius:12px}.catalog-empty h2{font-family:var(--editorial-font);font-size:30px;font-weight:400}.catalog-empty p{font-size:16px}
.catalog-browse-links{display:grid;grid-template-columns:2fr 1fr;gap:48px;border-top:1px solid var(--line);padding-top:34px;margin-top:48px}.catalog-browse-links h2{font-size:21px;margin:0 0 15px}.catalog-browse-links a{display:inline-block;font-size:14px;margin:0 12px 10px 0;text-decoration:underline;color:var(--brand-blue)}
.catalog-comparison-tray{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);width:calc(100% - 40px);max-width:1180px;background:#fff;border:1px solid #a8bdb1;border-radius:12px;box-shadow:0 5px 28px #243e3826;padding:18px 22px;z-index:70;display:flex;gap:24px;justify-content:space-between;align-items:center}.catalog-comparison-tray strong{font-size:14px}.catalog-comparison-tray ul{display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:9px 0 0;list-style:none}.catalog-comparison-tray li button{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#edf3ef;border:0;border-radius:20px;padding:7px 12px;font:inherit;font-size:12px;color:var(--ink)}.catalog-comparison-tray form{display:flex;align-items:center;gap:18px;flex-shrink:0}.catalog-comparison-tray .button:disabled{opacity:.5;cursor:default}
@media(max-width:1100px){.catalog-page .product-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-layout{gap:24px;grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){.catalog-page{padding:20px 20px 44px}.catalog-intro{margin-bottom:25px}.catalog-intro>p{font-size:16px}.catalog-search-row{gap:8px}.catalog-search-row .button{padding-inline:16px}.catalog-layout{display:block}.catalog-sidebar{position:static;margin-bottom:25px}.catalog-sidebar-note{display:none}.catalog-filters{display:grid;grid-template-columns:1fr;gap:0}.catalog-filter-panel{padding:16px}.catalog-results-heading{align-items:start;flex-direction:column;gap:5px}.catalog-page .product-catalog-grid{gap:14px}.catalog-card-content{padding:0 14px 15px}.catalog-product-image{padding:14px}.catalog-page .catalog-product-card h2{font-size:16px}.catalog-card-content>p{font-size:13px}.catalog-card-content>.catalog-card-age{font-size:11px}.catalog-browse-links{grid-template-columns:1fr;gap:22px}.catalog-comparison-tray{width:calc(100% - 20px);bottom:10px;padding:14px;flex-direction:column;align-items:stretch;gap:10px}.catalog-comparison-tray ul{display:none}.catalog-comparison-tray form{justify-content:space-between}.catalog-comparison-tray .button{flex:1}}
@media(max-width:400px){.catalog-page .product-catalog-grid{grid-template-columns:1fr}.catalog-product-image{aspect-ratio:4/3}.catalog-card-content>p{font-size:14px}}
.comparison-product-photo{display:block;width:180px;height:160px;object-fit:contain;background:#fff;border-radius:8px;margin-bottom:14px}.catalog-comparison thead th{font-size:15px;line-height:1.6;text-transform:none;letter-spacing:0}.catalog-comparison tbody th{font-size:13px;text-transform:none;letter-spacing:0}
.catalog-comparison thead th>a,.catalog-product-card h2 a{display:block}
