/* Additions preserve the original visual language and image proportions. */
[hidden] { display: none !important; }
.section-intro { max-width: 790px; color: #4d5557; font-size: 20px; }
.brand-jump { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; margin: 38px 0 70px; }
.brand-jump a { display:flex; justify-content:space-between; align-items:center; padding:20px; border:1px solid #b7c6cd; background:#fff; border-radius:12px; font-weight:800; }
.brand-jump a:hover { background:#e0f4fc; border-color:#087da8; }
.brand-jump span { color:#087da8; }
.brand-block { padding:54px 0 70px; border-top:1px solid #c9d4d9; scroll-margin-top:90px; }
.brand-heading { max-width:850px; margin-bottom:30px; }
.brand-index { color:#086a8e; font-size:15px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.brand-heading h3 { font-size:clamp(32px,4vw,52px); letter-spacing:-.04em; margin-bottom:20px; }
.brand-heading>p:last-child { color:#4d5557; }
.offer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.offer-card { display:grid; grid-template-columns:minmax(140px,.8fr) minmax(0,1.2fr); background:#fff; border:1px solid #d4dfe4; border-radius:20px; overflow:hidden; }
.offer-image { display:flex; align-items:center; background:#fff; padding:15px; }
.offer-image img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; mix-blend-mode:multiply; }
.offer-copy { padding:26px 24px 24px 8px; display:flex; flex-direction:column; align-items:flex-start; }
.offer-copy h4 { font-size:25px; letter-spacing:-.035em; line-height:1.15; margin:0 0 16px; }
.offer-copy>p:not(.product-eyebrow) { font-size:16px; line-height:1.55; color:#4d5557; margin-bottom:22px; }
.offer-copy .product-eyebrow { font-size:11px; letter-spacing:.06em; color:#53656e; line-height:1.4; }
.offer-price { margin-top:auto; padding-top:10px; padding-bottom:18px; min-height:105px; width:100%; }
.offer-price strong { display:block; font-size:25px; letter-spacing:-.035em; line-height:1.25; }
.offer-price small { display:block; font-size:12px; line-height:1.5; color:#505d63; overflow-wrap:anywhere; margin-top:7px; }
.shop-button { background:var(--ice); border-color:var(--ice); color:var(--ink); font-weight:850; }
.shop-button:hover { background:#82d8f6; }
.offer-copy .button { width:100%; padding:13px 12px; font-size:14px; min-height:49px; }
.guide-grid,.related-guides { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.guide-card { display:flex; flex-direction:column; padding:28px; background:#fff; border:1px solid #c7d5dc; border-radius:16px; }
.guide-card h3 { font-size:28px; margin-bottom:16px; line-height:1.1; }
.guide-card p { font-size:17px; color:#4d5557; }
.guide-card span { margin-top:auto; color:#076c91; font-weight:800; font-size:16px; }
.guide-card:hover { background:#ebf8ff; }
.decision-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:32px 0; }
.decision-grid article { padding:28px; border:1px solid #c6d5dd; border-radius:16px; background:#fff; }
.decision-grid h3 { font-size:27px; }
.decision-grid p { font-size:17px; }
.decision-grid a,.text-link { color:#086a8e; font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.finder-back { background:transparent; border:1px solid #89989e; padding:8px 16px; border-radius:8px; margin-top:20px; cursor:pointer; font-size:15px; }
.guide-article { padding:125px 0 80px; background:var(--paper); }
.article-container { max-width:960px; }
.breadcrumb { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:32px; font-size:15px; color:#52636c; }
.guide-article h1 { font-size:clamp(38px,5vw,66px); letter-spacing:-.05em; line-height:1.07; margin:0 0 25px; }
.article-meta { color:#5b666b; font-size:14px; margin-bottom:34px; }
.guide-article h2 { font-size:clamp(28px,3vw,38px); letter-spacing:-.035em; line-height:1.15; margin:55px 0 22px; }
.guide-article h3 { line-height:1.2; }
.guide-article p,.guide-article li { max-width:850px; }
.guide-article li { margin-bottom:12px; padding-left:5px; }
.guide-article p a,.guide-article li a,.guide-article td a { color:#096c90; text-decoration:underline; text-underline-offset:3px; }
.direct-answer { border-left:5px solid #087da8; padding:22px 26px; background:#e5f4fc; font-size:21px; line-height:1.65; }
.article-toc { display:flex; flex-wrap:wrap; gap:10px; margin:28px 0 45px; }
.article-toc a { padding:9px 14px; border:1px solid #a6bbc6; border-radius:8px; font-size:15px; font-weight:700; }
.table-scroll { overflow-x:auto; }
.guide-article table { border-collapse:collapse; width:100%; min-width:580px; font-size:16px; }
.guide-article td,.guide-article th { text-align:left; padding:16px; border:1px solid #c1d0d8; vertical-align:top; }
.guide-article thead { background:#dceef6; }
.guide-article tbody th { width:20%; }
.term-list dt { font-size:22px; font-weight:800; margin:25px 0 10px; }
.term-list dd { margin:0; }
.check-panel { padding:25px 30px; background:#fff; border:1px solid #c7d5dc; border-radius:16px; margin:28px 0; }
.check-panel ul { padding-left:20px; margin-bottom:0; }
.article-outro { padding:30px; background:var(--ink); color:#fff; border-radius:20px; margin:60px 0 35px; }
.article-outro h2 { margin-top:0; }
.article-outro .button-secondary { color:#fff; border-color:#a8bfcb; }
.guide-article .duty-section { padding:20px 0; }
.guide-article .duty-section>.container { width:100%; }
.guide-article .duty-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.guide-article .section-head h2 { display:none; }
.guide-article .related-guides { margin-top:50px; }
.guide-article .related-guides h3 { font-size:24px; }
.site-header { background:rgba(244,244,240,.96); }
@media(min-width:1450px) { .offer-copy { padding:30px 26px 26px 8px; } }
@media(max-width:1100px) { .offer-card { grid-template-columns:1fr; } .offer-image { max-height:255px; justify-content:center; } .offer-image img { max-width:225px; } .offer-copy { padding:24px; } .brand-jump a { padding:16px 12px; } }
@media(max-width:720px) {
 .brand-jump { display:flex; flex-wrap:wrap; gap:8px; margin:30px 0 35px; }
 .brand-jump a { flex:1 1 130px; font-size:15px; padding:13px 15px; }
 .offer-grid,.guide-grid,.related-guides,.decision-grid,.guide-article .duty-grid { grid-template-columns:1fr; }
 .offer-card { grid-template-columns: minmax(100px,.65fr) minmax(0,1.35fr); }
 .offer-image { padding:9px; max-height:none; }
 .offer-copy { padding:20px 16px 20px 4px; }
 .offer-copy h4 { font-size:23px; }
 .offer-copy>p:not(.product-eyebrow) { font-size:15px; }
 .brand-block { padding:35px 0 42px; }
 .brand-heading h3 { font-size:34px; }
 .section-intro { font-size:18px; }
 .guide-article { padding-top:110px; }
 .guide-article .decision-grid article { padding:24px; }
 .direct-answer { padding:18px; font-size:18px; }
 .check-panel,.article-outro { padding:22px; }
 .guide-card { padding:24px; }
}
@media(max-width:390px) { .offer-card { grid-template-columns:1fr; } .offer-image { max-height:230px; } .offer-copy { padding:20px; } .offer-copy>p:not(.product-eyebrow) { font-size:16px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; } }

.shipping-link {display:block;font-size:12px;line-height:1.5;color:#086a8e;text-decoration:underline;margin-top:7px;}

/* Product finder: same ice / ink / paper palette as the live site. */
.listing-finder { margin:42px 0 32px; padding:38px; background:var(--white); border:1px solid var(--line); border-radius:var(--radius); scroll-margin-top:104px; }
.listing-finder-heading { display:flex; align-items:flex-start; gap:35px; justify-content:space-between; }
.listing-finder-heading>div { max-width:800px; }
.listing-finder-heading h2 { font-size:clamp(28px,3.4vw,44px); line-height:1.12; letter-spacing:-.045em; margin:0 0 18px; }
.listing-finder-heading p:not(.kicker) { font-size:18px; color:var(--muted); margin-bottom:28px; }
.listing-finder-number { color:var(--ice-dark); font-size:70px; font-weight:850; line-height:1; letter-spacing:-.06em; }
.listing-finder-number span { display:block; text-align:right; color:var(--muted); font-size:12px; letter-spacing:.08em; text-transform:uppercase; margin-top:8px; }
.filter-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; border-bottom:1px solid var(--line); padding-bottom:20px; margin-bottom:28px; }
.filter-steps button { cursor:pointer; display:flex; justify-content:flex-start; align-items:center; gap:10px; border:0; border-radius:10px; background:var(--paper); padding:12px 15px; font-size:15px; font-weight:800; }
.filter-steps button span { display:grid; place-items:center; width:28px; height:28px; flex-shrink:0; border-radius:50%; border:1px solid var(--line); background:var(--white); }
.filter-steps button[aria-current="step"] { background:var(--ink); color:var(--white); }
.filter-steps button[aria-current="step"] span { background:var(--ice); border-color:var(--ice); color:var(--ink); }
.filter-form { margin:0; }
.filter-form fieldset { border:0; padding:0; margin:0; min-width:0; }
.filter-form legend { float:left; width:100%; padding:0; font-size:clamp(22px,2.3vw,28px); font-weight:800; line-height:1.25; letter-spacing:-.025em; margin:0 0 20px; }
.filter-form legend+* { clear:both; }
.filter-help { color:var(--muted); font-size:15px; max-width:850px; margin:0 0 20px; }
.filter-options { display:grid; gap:12px; }
.filter-options-type,.filter-options-budget { grid-template-columns:repeat(4,minmax(0,1fr)); }
.filter-options-brand { grid-template-columns:repeat(3,minmax(0,1fr)); }
.filter-options label { position:relative; min-width:0; cursor:pointer; }
.filter-options input { position:absolute; opacity:0; width:1px; height:1px; }
.filter-options label>span { display:flex; flex-direction:column; justify-content:center; height:100%; min-height:98px; padding:20px 16px 20px 40px; border:1px solid var(--line); border-radius:12px; background:var(--paper); position:relative; }
.filter-options label>span:before { content:""; box-sizing:border-box; position:absolute; top:24px; left:14px; width:15px; height:15px; border:1px solid var(--muted); border-radius:50%; background:var(--white); }
.filter-options input:checked+span { background:var(--ice); border-color:var(--ice-dark); }
.filter-options input:checked+span:before { border:5px solid var(--ink); background:var(--ice); }
.filter-options b { font-size:17px; line-height:1.3; }
.filter-options small { display:block; margin-top:7px; font-size:13px; line-height:1.4; color:var(--muted); }
.filter-options input:checked+span small { color:var(--ink-soft); }
.filter-options label:hover>span { border-color:var(--ice-dark); }
.listing-finder button:focus-visible,.listing-results button:focus-visible,.filter-options input:focus-visible+span { outline:3px solid var(--ice-dark); outline-offset:4px; }
.filter-controls { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:28px; }
.filter-controls .button { margin-left:auto; min-height:50px; font-size:15px; cursor:pointer; }
.filter-back,.filter-reset,.filter-unknown { border:0; background:transparent; padding:10px 0; cursor:pointer; font-size:15px; font-weight:750; text-decoration:underline; text-underline-offset:4px; }
.filter-back { text-decoration:none; }
.filter-guidance { border-top:1px solid var(--line); padding-top:24px; margin:28px 0 0; font-size:14px; line-height:1.7; color:var(--muted); max-width:950px; }
.filter-guidance a,.faq-section p a { color:var(--ice-dark); text-decoration:underline; text-underline-offset:3px; }
.listing-results { margin-top:36px; scroll-margin-top:104px; }
.filter-result-header { display:flex; justify-content:space-between; gap:20px; align-items:center; }
.filter-result-header .kicker { margin-bottom:8px; }
.filter-result-header h3 { font-size:30px; line-height:1.15; letter-spacing:-.03em; margin:0 0 12px; }
.filter-result-header p:last-child { color:var(--muted); font-size:15px; margin:0; }
.filter-result-header button { white-space:nowrap; }
.filter-empty { padding:28px; border:1px solid var(--line); background:var(--white); border-radius:var(--radius); margin:24px 0 45px; }
.filter-empty h4 { font-size:24px; line-height:1.25; margin:0 0 14px; }
.filter-empty p { max-width:720px; font-size:16px; }
.filter-empty .button { cursor:pointer; font-size:15px; }
.filter-price-note { border-left:4px solid var(--ice-dark); padding:12px 18px; margin:22px 0 0; font-size:15px; background:var(--white); }
.filter-unknown { color:var(--ice-dark); margin-top:8px; text-align:left; }
.offer-copy .filter-unverified { background:var(--paper); border-left:3px solid var(--ice-dark); padding:8px 10px; font-size:13px!important; font-weight:700; margin-bottom:14px!important; }
@media(max-width:1000px) {
 .filter-options-type,.filter-options-budget { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .listing-finder { padding:28px; }
}
@media(max-width:600px) {
 .listing-finder { padding:22px 16px; margin:30px 0; }
 .listing-finder-number { display:none; }
 .listing-finder-heading p:not(.kicker) { font-size:16px; }
 .filter-steps { gap:5px; margin-bottom:22px; }
 .filter-steps button { padding:10px 4px; flex-direction:column; gap:7px; font-size:12px; }
 .filter-options { gap:8px; }
 .filter-options-brand { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .filter-options label>span { padding:16px 10px 16px 32px; min-height:98px; }
 .filter-options label>span:before { left:9px; top:20px; width:14px; height:14px; }
 .filter-options b { font-size:15px; }
 .filter-options small { font-size:12px; }
 .filter-controls { gap:14px; }
 .filter-controls .button { width:100%; margin-left:0; }
 .filter-reset { margin-left:auto; }
 .filter-result-header { align-items:flex-start; flex-direction:column; gap:8px; }
 .filter-result-header h3 { font-size:28px; }
 .filter-result-header .filter-reset { margin-left:0; }
 .filter-empty { padding:22px; }
}
@media(max-width:360px) { .filter-options-type { grid-template-columns:1fr; } .filter-options-type label>span { min-height:82px; } }
