/* Palette candidates: neutral roles stay fixed; choose one data-theme. */
:root {
  --page:#FFFFFF;
  --surface:#F4F5F7;
  --text:#171A1F;
  --muted:#505862;
  --border:#CDD1D6;
  --control-border:#737B86;
  --on-primary:#FFFFFF;
  --success:#21633D;
  --warning:#8A4B08;
  --danger:#B42318;
}
[data-theme="industrial-blue"] { --primary:#1649DF; --primary-hover:#1036A8; --tint:#EEF3FF; --link:#1649DF; --focus:#1649DF; }
[data-theme="charcoal"] { --primary:#252B33; --primary-hover:#111827; --tint:#F0F1F3; --link:#252B33; --focus:#252B33; }
[data-theme="ember"] { --primary:#B83B16; --primary-hover:#8F2C10; --tint:#FFF1EC; --link:#B83B16; --focus:#B83B16; }
[data-theme="deep-teal"] { --primary:#08776F; --primary-hover:#065B55; --tint:#EAF7F5; --link:#08776F; --focus:#08776F; }
[data-theme="forest"] { --primary:#28633F; --primary-hover:#19482C; --tint:#EDF5EF; --link:#28633F; --focus:#28633F; }
[data-theme="berry"] { --primary:#8C365E; --primary-hover:#692746; --tint:#F9EEF3; --link:#8C365E; --focus:#8C365E; }

/* Candidate type presets. Layout and palette remain independent. */
[data-type="clear"] {
 --font-display:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", sans-serif;
 --display-weight:750;
 --display-size:48px;
 --display-mobile:34px;
 --display-leading:1.12;
 --display-tracking:-.035em;
 --body-size:17px;
 --body-leading:1.65;
 --section-size:26px;
 --product-size:23px;
}
[data-type="bold"] {
 --font-display:Impact, "Arial Narrow", "PingFang SC", sans-serif;
 --display-weight:700;
 --display-size:56px;
 --display-mobile:40px;
 --display-leading:1.03;
 --display-tracking:-.015em;
 --body-size:17px;
 --body-leading:1.65;
 --section-size:30px;
 --product-size:27px;
}
[data-type="refined"] {
 --font-display:Georgia, "Times New Roman", "Songti SC", "Noto Serif CJK SC", serif;
 --display-weight:500;
 --display-size:49px;
 --display-mobile:35px;
 --display-leading:1.18;
 --display-tracking:-.025em;
 --body-size:17px;
 --body-leading:1.8;
 --section-size:28px;
 --product-size:25px;
}

/* Density candidates: font size and image proportions stay unchanged. */
[data-density="compact"] { --layout-max:1160px; --layout-pad:20px; --section-space:24px; --layout-gap:24px; --reading-width:70ch; --mobile-pad:16px; }
[data-density="balanced"] { --layout-max:1240px; --layout-pad:28px; --section-space:40px; --layout-gap:36px; --reading-width:64ch; --mobile-pad:20px; }
[data-density="spacious"] { --layout-max:1400px; --layout-pad:44px; --section-space:64px; --layout-gap:52px; --reading-width:56ch; --mobile-pad:24px; }

/* Button shape only; semantic roles and target size remain fixed. */
[data-buttons="square"] { --button-radius:0px; }
[data-buttons="subtle"] { --button-radius:4px; }
[data-buttons="soft"] { --button-radius:12px; }

/* Card layout candidates; all variants preserve the same decision content. */
.decision-card{border:1px solid var(--border);padding:var(--layout-pad);display:grid;gap:var(--layout-gap);background:var(--page);color:var(--text)}
.decision-card img{width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;display:block;background:#fff}
.decision-card h3{font-family:var(--font-display);font-size:var(--product-size);font-weight:var(--display-weight);line-height:1.25;margin:8px 0 14px}
.decision-card .card-fit{color:var(--primary);font-size:13px;font-weight:700;margin:0}
.decision-card .card-description{font-size:var(--body-size);line-height:var(--body-leading);margin:0 0 16px}
.decision-card .card-specs{font-size:14px;margin:0;display:grid;gap:8px}
.decision-card .card-specs div{display:grid;grid-template-columns:90px 1fr;gap:12px}
.decision-card dt{color:var(--muted)}.decision-card dd{margin:0}
.decision-card .card-limit{font-size:14px;border-top:1px solid var(--border);padding-top:14px;margin:16px 0 0;line-height:1.65}
.decision-card .card-actions{display:flex;flex-direction:column;gap:14px;align-items:stretch;justify-content:center}
.decision-card .card-actions small{font-size:13px;color:var(--muted);line-height:1.6}
.decision-card .card-actions label{display:flex;gap:10px;align-items:center;min-height:44px;font-size:14px}
.decision-card input{width:20px;height:20px;accent-color:var(--primary)}
[data-card="comparison"] .decision-card{grid-template-columns:minmax(180px,.9fr) minmax(0,1.4fr) minmax(160px,.65fr);align-items:center}
[data-card="feature"] .decision-card{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}
[data-card="feature"] .card-media{grid-column:1;grid-row:1/3}
[data-card="feature"] .card-actions{grid-column:2;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:start}
[data-card="feature"] .card-actions small{flex-basis:100%}
[data-card="compact"] .decision-card{grid-template-columns:140px minmax(0,1fr) minmax(160px,.5fr);gap:20px;align-items:start}
[data-card="compact"] .decision-card h3{margin:6px 0 10px}
@media(max-width:900px){[data-card="comparison"] .decision-card,[data-card="compact"] .decision-card{grid-template-columns:160px minmax(0,1fr)}[data-card="comparison"] .card-actions,[data-card="compact"] .card-actions{grid-column:2}}
@media(max-width:600px){[data-card] .decision-card{grid-template-columns:minmax(0,1fr);padding:var(--mobile-pad);gap:20px}[data-card] .card-media,[data-card] .card-actions{grid-column:1;grid-row:auto}[data-card="compact"] .card-media{max-width:180px}[data-card] .card-actions{flex-direction:column;align-items:stretch}.decision-card .card-specs div{grid-template-columns:80px minmax(0,1fr)}}

.dc-card,.dc-card *{box-sizing:border-box}.dc-card{--dc-pad:clamp(16px,2.2vw,26px);background:#fff;color:var(--text,#171a1f);border:1px solid var(--border,#cdd1d6);border-radius:var(--card-radius,4px);overflow:hidden;display:flex;flex-direction:column;min-width:0;font:var(--body-size,17px)/var(--body-leading,1.65) -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif}.dc-card[data-surface=soft]{background:var(--surface,#f4f5f7);border-color:transparent}.dc-card[data-surface=raised]{border-color:#e1e4e8;box-shadow:0 10px 26px #171a1f12,0 2px 4px #171a1f09}.dc-card[data-surface=dark]{--text:#fff;--muted:#d0d4dc;--border:#4e5561;--link:#fff;background:#20252c;color:#fff}.dc-media{overflow:hidden;background:#e9ebed}.dc-media img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .25s}.dc-copy{padding:var(--dc-pad);flex:1;min-width:0}.dc-title{font-family:var(--font-display,inherit);font-weight:var(--display-weight,700);font-size:var(--product-size,23px);line-height:1.2;letter-spacing:-.025em;margin:8px 0 12px;overflow-wrap:anywhere}.dc-title a{color:inherit;text-decoration:none}.dc-title a:hover{text-decoration:underline;text-underline-offset:4px}.dc-eyebrow{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted,#505862);margin:0 0 8px}.dc-badge{display:inline-block;background:var(--tint,#eef3ff);color:var(--primary,#1649df);padding:3px 8px;font-size:11px;font-weight:700;margin-bottom:8px}.dc-summary{margin:10px 0;font-size:14px;line-height:1.65}.dc-limit{font-size:13px;line-height:1.6;color:var(--muted,#505862);border-top:1px solid var(--border,#cdd1d6);padding-top:12px;margin:14px 0 0}.dc-rating{font-size:12px;font-weight:650;color:var(--muted,#505862);margin:8px 0}.dc-commerce{padding:0 var(--dc-pad) var(--dc-pad);margin-top:auto}.dc-commerce:empty{display:none}.dc-price{font-size:23px;line-height:1.3;font-weight:750;margin:0 0 14px;overflow-wrap:anywhere}.dc-price del{font-size:13px;color:var(--muted,#505862);font-weight:400}.dc-actions{display:flex;gap:12px;align-items:center}.dc-button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;border-radius:var(--button-radius,4px);color:var(--on-primary,#fff);background:var(--primary,#1649df);text-decoration:none;font-size:13px;font-weight:650;line-height:1.4}.dc-button:hover{background:var(--primary-hover,#1036a8)}.dc-card a:focus-visible,.dc-collection:focus-visible{outline:3px solid var(--focus,#1649df);outline-offset:3px}.dc-card[data-family=overlay]{position:relative;min-height:360px;justify-content:flex-end;isolation:isolate;color:#fff;background:#222}.dc-card[data-family=overlay] .dc-media{position:absolute;inset:0;z-index:-2}.dc-card[data-family=overlay] .dc-media img{height:100%;aspect-ratio:auto}.dc-card[data-family=overlay]:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 10%,#0009 50%,#000e);z-index:-1;pointer-events:none}.dc-card[data-family=overlay] .dc-copy{flex:0}.dc-card[data-family=overlay] .dc-eyebrow{color:#fff}.dc-card[data-family=overlay] .dc-title{font-size:calc(var(--product-size,23px) * 1.25);margin-bottom:0}.dc-card[data-family=overlay] :is(.dc-summary,.dc-limit,.dc-rating,.dc-commerce){display:none}.dc-card[data-variant=poster]{min-height:470px}.dc-card[data-variant=digital] .dc-media img{aspect-ratio:2/1}.dc-card[data-variant=digital] :is(.dc-summary,.dc-limit){display:none}.dc-card[data-family=horizontal]{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);align-items:stretch}.dc-card[data-family=horizontal] .dc-media{grid-row:1 / span 2}.dc-card[data-family=horizontal] .dc-media img{height:100%;min-height:220px;aspect-ratio:auto}.dc-card[data-variant=decision]{grid-template-columns:minmax(0,27%) minmax(0,1fr) minmax(150px,22%)}.dc-card[data-variant=decision] .dc-commerce{grid-column:3;grid-row:1 / span 2;align-self:center;padding:var(--dc-pad);margin:0;border-left:1px solid var(--border)}.dc-card[data-family=thumbnail]{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:center;padding:16px;gap:16px}.dc-card[data-family=thumbnail] .dc-media img{aspect-ratio:1}.dc-card[data-family=thumbnail] .dc-copy{padding:0}.dc-card[data-family=thumbnail] .dc-title{font-size:17px;margin:0}.dc-card[data-family=thumbnail] :is(.dc-summary,.dc-limit,.dc-commerce,.dc-rating,.dc-badge){display:none}.dc-card[data-variant=round] .dc-media{border-radius:50%}.dc-card[data-family=product] .dc-media{padding:16px;background:#fff}.dc-card[data-family=product] .dc-media img{aspect-ratio:4/3;object-fit:contain}.dc-card[data-family=product] .dc-button{width:100%}.dc-card[data-variant=directory] .dc-rating{font-size:15px;padding:9px 0;border-bottom:1px solid var(--border)}.dc-card[data-variant=compact]{--dc-pad:16px}.dc-card[data-variant=compact] .dc-media img{aspect-ratio:2/1}.dc-card[data-variant=compact] .dc-title{font-size:19px}.dc-card[data-variant=compact] :is(.dc-summary,.dc-limit){display:none}.dc-card[data-family=offer]{padding:var(--dc-pad)}.dc-offer-body{display:grid;grid-template-columns:minmax(0,35%) minmax(0,1fr);gap:20px;align-items:center;margin-top:18px}.dc-offer-body .dc-media{background:white;padding:10px}.dc-offer-body img{aspect-ratio:1;object-fit:contain}.dc-offer-body .dc-summary{font-size:12px}.dc-card[data-family=offer] .dc-title{margin-bottom:0}.dc-collection{display:grid;gap:var(--layout-gap,24px);min-width:0}.dc-collection[data-layout=grid]{grid-template-columns:repeat(3,minmax(0,1fr))}.dc-collection[data-layout=featured]{grid-template-columns:2fr 1fr}.dc-collection[data-layout=featured]>.dc-card:first-child{grid-row:span 2}.dc-collection[data-layout=featured]>.dc-card:not(:first-child){min-height:220px}.dc-collection[data-layout=featured]>.dc-card:first-child .dc-title{font-size:38px}.dc-collection[data-layout=scroll]{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 3px 22px}.dc-collection[data-layout=scroll]>.dc-card{flex:0 0 300px;scroll-snap-align:start}.dc-collection[data-layout=list]{grid-template-columns:1fr}[data-density=compact] .dc-card{--dc-pad:16px}[data-density=spacious] .dc-card{--dc-pad:30px}@media(max-width:650px){.dc-collection[data-layout=grid],.dc-collection[data-layout=featured]{grid-template-columns:1fr}.dc-collection[data-layout=featured]>.dc-card:first-child{grid-row:auto}.dc-collection[data-layout=featured]>.dc-card:first-child .dc-title{font-size:29px}.dc-card[data-family=horizontal]{grid-template-columns:1fr}.dc-card[data-family=horizontal] .dc-media{grid-row:auto}.dc-card[data-family=horizontal] .dc-media img{aspect-ratio:16/10;height:auto;min-height:0}.dc-card[data-variant=decision] .dc-commerce{grid-column:auto;grid-row:auto;border-left:0;padding-top:0}.dc-card[data-family=overlay]{min-height:330px}.dc-card[data-variant=poster]{min-height:440px}.dc-card[data-family=thumbnail]{grid-template-columns:72px minmax(0,1fr)}.dc-card[data-family=thumbnail] .dc-title{font-size:16px}}@media(prefers-reduced-motion:reduce){.dc-media img{transition:none}}

/* Interaction is independent from the resting surface and card structure. */
.dc-card{transition:box-shadow 180ms ease,transform 180ms ease}
.dc-card:is([data-effect="shadow"],[data-effect="lift"]):focus-within{box-shadow:0 12px 30px #171a1f26,0 3px 8px #171a1f12}
.dc-card[data-effect="lift"]:focus-within{transform:translateY(-3px)}
.dc-card[data-media-effect="zoom"]:focus-within .dc-media img{transform:scale(1.035)}
@media(hover:hover) and (pointer:fine){
 .dc-card:is([data-effect="shadow"],[data-effect="lift"]):hover{box-shadow:0 12px 30px #171a1f26,0 3px 8px #171a1f12}
 .dc-card[data-effect="lift"]:hover{transform:translateY(-3px)}
 .dc-card[data-media-effect="zoom"]:hover .dc-media img{transform:scale(1.035)}
}
@media(prefers-reduced-motion:reduce){
 .dc-card,.dc-card .dc-media img{transition:none!important}
 .dc-card[data-effect],.dc-card[data-media-effect] .dc-media img{transform:none!important}
}

/* Typography roles follow the selected site presets. */
.dc-card{--dc-body-font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;--dc-title-leading:1.2;--dc-title-tracking:-.025em;--dc-summary-size:15px;--dc-meta-size:12px;font-family:var(--dc-body-font)}
[data-type=refined] .dc-card{--dc-body-font:Georgia,"Songti SC",serif;--dc-title-leading:1.3;--dc-title-tracking:-.01em;--dc-summary-size:16px;--dc-meta-size:13px}
[data-type=bold] .dc-card{--dc-title-leading:1.1;--dc-title-tracking:-.015em}
.dc-card .dc-title{line-height:var(--dc-title-leading);letter-spacing:var(--dc-title-tracking)}
.dc-card .dc-summary{font-size:var(--dc-summary-size);line-height:var(--body-leading,1.65)}
.dc-meta{font-size:var(--dc-meta-size);line-height:1.6;color:var(--muted,#505862);margin:8px 0;overflow-wrap:anywhere}
.dc-specs{font-size:13px;margin:16px 0;line-height:1.5}.dc-specs>div{display:grid;grid-template-columns:minmax(70px,1fr) minmax(0,1.5fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--border,#cdd1d6)}.dc-specs dt{color:var(--muted,#505862)}.dc-specs dd{margin:0;overflow-wrap:anywhere}
.dc-actions{flex-wrap:wrap}.dc-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;font-size:13px;font-weight:600;text-decoration:none;border:1px solid currentColor;border-radius:var(--button-radius,4px);color:inherit;line-height:1.4}.dc-secondary:hover{background:var(--tint,#eef3ff);color:var(--primary,#1649df)}.dc-actions a:active{transform:translateY(1px)}
.dc-card[data-family=product] .dc-secondary{width:100%}.dc-media{display:block;min-width:0}.dc-media:focus-visible{outline-offset:-4px!important}
.dc-card:is([data-family=overlay],[data-family=thumbnail]) .dc-specs{display:none}.dc-card[data-family=overlay] .dc-meta{color:#eee}
.dc-card[data-image-fit=cover] .dc-media img{object-fit:cover}.dc-card[data-image-fit=contain] .dc-media img{object-fit:contain}
.dc-card[data-image-position=top] .dc-media img{object-position:top}.dc-card[data-image-position=bottom] .dc-media img{object-position:bottom}.dc-card[data-image-position=left] .dc-media img{object-position:left}.dc-card[data-image-position=right] .dc-media img{object-position:right}
.dc-card[data-image-ratio="16/9"] .dc-media img{aspect-ratio:16/9;height:auto;min-height:0}.dc-card[data-image-ratio="4/3"] .dc-media img{aspect-ratio:4/3;height:auto;min-height:0}.dc-card[data-image-ratio="1/1"] .dc-media img{aspect-ratio:1;height:auto;min-height:0}.dc-card[data-image-ratio="3/4"] .dc-media img{aspect-ratio:3/4;height:auto;min-height:0}
.dc-card[data-family=overlay]:not([data-image-ratio=auto]){min-height:0;aspect-ratio:var(--dc-ratio)}.dc-card[data-image-ratio="16/9"]{--dc-ratio:16/9}.dc-card[data-image-ratio="4/3"]{--dc-ratio:4/3}.dc-card[data-image-ratio="1/1"]{--dc-ratio:1}.dc-card[data-image-ratio="3/4"]{--dc-ratio:3/4}.dc-card[data-family=overlay]:not([data-image-ratio=auto]) .dc-media img{height:100%}
.dc-card[data-has-image=false][data-family=horizontal],.dc-card[data-has-image=false][data-family=thumbnail]{display:flex;flex-direction:column;align-items:stretch}.dc-card[data-has-image=false][data-variant=decision] .dc-commerce{border:0;padding-top:0}.dc-card[data-has-image=false] .dc-offer-body{grid-template-columns:1fr}.dc-card[data-has-image=false][data-family=overlay]{min-height:220px}
.dc-collection[data-layout=grid][data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-collection[data-layout=grid][data-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.dc-collection[data-layout=featured][data-featured-side=right]{grid-template-columns:1fr 2fr}.dc-collection[data-layout=featured][data-featured-side=right]>.dc-card:first-child{grid-column:2;grid-row:1 / span 2}
@media(min-width:651px) and (max-width:1050px){.dc-collection[data-layout=grid][data-columns]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.dc-collection[data-layout=grid][data-columns],.dc-collection[data-layout=featured][data-featured-side]{grid-template-columns:1fr}.dc-collection[data-layout=featured][data-featured-side]>.dc-card:first-child{grid-column:auto;grid-row:auto}}

.dc-card{overflow-wrap:anywhere}.dc-offer-body>div{min-width:0}.dc-actions a{max-width:100%;white-space:normal}.dc-card[data-variant=decision][data-has-commerce=false]{grid-template-columns:minmax(0,38%) minmax(0,1fr)}@media(max-width:650px){.dc-card[data-variant=decision][data-has-commerce=false]{grid-template-columns:1fr}}

.dc-collection:not([data-layout=list]) .dc-card[data-family=horizontal]{display:flex;flex-direction:column}.dc-collection:not([data-layout=list]) .dc-card[data-family=horizontal] .dc-media img{height:auto;min-height:0;aspect-ratio:var(--dc-ratio,16/10)}.dc-collection:not([data-layout=list]) .dc-card[data-variant=decision] .dc-commerce{border:0;align-self:stretch;padding-top:0}

/* A round thumbnail remains circular regardless of the shared image ratio. */
.dc-card[data-variant=round] .dc-media{aspect-ratio:1}.dc-card[data-variant=round] .dc-media img{width:100%;height:100%;aspect-ratio:1}

/* Shared content primitives. No rules depend on the review shell. */
.cl-component{--cl-bg:var(--page,#fff);--cl-text:var(--text,#171a1f);--cl-muted:var(--muted,#505862);--cl-border:var(--border,#cdd1d6);box-sizing:border-box;color:var(--cl-text);background:var(--cl-bg);font:var(--body-size,17px)/var(--body-leading,1.65) -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;overflow-wrap:anywhere;padding:var(--section-space,40px) var(--layout-pad,28px);container-type:inline-size}
.cl-component *{box-sizing:border-box;min-width:0}.cl-component h1,.cl-component h2,.cl-component h3{font-family:var(--font-display,inherit);font-weight:var(--display-weight,700);letter-spacing:var(--display-tracking,-.025em);line-height:1.25;text-wrap:balance}.cl-section-head{max-width:var(--layout-max,1240px);margin:0 auto 28px}.cl-section-head h2,.cl-section-head h3{font-size:var(--section-size,26px);margin:0 0 10px}.cl-section-head p{color:var(--cl-muted);margin:0;max-width:64ch}:where(.cl-component) a{color:var(--link,#1649df);text-underline-offset:4px}.cl-component :focus-visible{outline:3px solid var(--focus,#1649df);outline-offset:4px}.cl-button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;border:1px solid transparent;background:var(--primary,#252b33);color:var(--on-primary,#fff)!important;border-radius:var(--button-radius,4px);font:inherit;font-size:14px;line-height:1.4;font-weight:650;text-decoration:none;padding:12px 18px;cursor:pointer;max-width:100%;white-space:normal;overflow-wrap:anywhere}.cl-button:hover{background:var(--primary-hover,#111827)}.cl-text-link{display:block;font-size:13px;margin:14px 0 0}.cl-footnote{font-size:12px;color:var(--cl-muted);margin:18px 0 0}.cl-empty{padding:40px 24px;background:var(--surface,#f4f5f7);border:1px dashed var(--cl-border);text-align:center}.cl-empty p{margin:10px 0 0;color:var(--cl-muted)}
/* Comparison remains a real table, including on a phone. */
.cl-scroll-hint{font-size:12px;color:var(--cl-muted);margin:0 0 12px}.cl-table-wrap{overflow:auto;max-width:100%;border:1px solid var(--cl-border);scrollbar-gutter:stable}.cl-comparison table{border-collapse:separate;border-spacing:0;width:100%;text-align:left;font-size:15px;line-height:1.55}.cl-comparison th,.cl-comparison td{padding:20px;vertical-align:top;border-bottom:1px solid var(--cl-border);border-right:1px solid var(--cl-border);min-width:210px}.cl-comparison tr>*:last-child{border-right:0}.cl-comparison tbody tr:last-child>*{border-bottom:0}.cl-comparison tr>:first-child{position:sticky;left:0;z-index:1;background:var(--cl-bg);min-width:170px;width:190px;max-width:230px;box-shadow:1px 0 0 var(--cl-border)}.cl-comparison thead th{background:var(--surface,#f4f5f7)}.cl-comparison thead tr>:first-child{background:var(--surface,#f4f5f7)}.cl-comparison th small{display:block;margin-top:8px;font-size:12px;font-weight:400;color:var(--cl-muted);line-height:1.6}.cl-product-name{font:var(--display-weight,700) 21px/1.3 var(--font-display,inherit);display:block}.cl-compare-image{display:block;width:100%;height:120px;object-fit:contain;background:white;margin-bottom:16px}.cl-key-row>*{background:var(--tint,#eef3ff)!important}.cl-key-row>th{border-left:3px solid var(--primary,#252b33)}.cl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Listing controls own only selection; cards come from renderItems. */
.cl-filter-form{display:flex;gap:16px;flex-wrap:wrap;align-items:end;border-block:1px solid var(--cl-border);padding:24px 0}.cl-filter-form label{flex:1 1 150px;font-size:12px;font-weight:650}.cl-filter-form .cl-search-field{flex:2 1 230px}.cl-filter-form input,.cl-filter-form select{display:block;width:100%;height:46px;border:1px solid var(--control-border,#737b86);border-radius:var(--button-radius,4px);background:var(--cl-bg);color:var(--cl-text);font:inherit;font-size:15px;padding:10px 12px;margin-top:8px}.cl-filter-form select{padding-right:24px}.cl-clear{font:inherit;font-size:13px;border:0;background:none;color:var(--cl-muted);text-decoration:underline;text-underline-offset:4px;min-height:46px;padding:10px;cursor:pointer}.cl-result-count{font-size:13px;margin:20px 0;color:var(--cl-muted)}.cl-pagination{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:32px;font-size:14px}.cl-pagination a{padding:10px 16px;border:1px solid var(--cl-border);min-height:44px;text-decoration:none}.cl-pagination span[aria-disabled]{color:var(--cl-muted)}
/* Reading layout and plain prose also work for hand-authored HTML. */
.cl-breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:8px;margin:0 0 30px;font-size:12px}.cl-breadcrumbs li+li:before{content:'/';color:var(--cl-muted);margin-right:8px}.cl-breadcrumbs [aria-current]{color:var(--cl-muted)}.cl-reading-head{max-width:900px;margin:0 0 44px}.cl-meta{font-size:12px;color:var(--cl-muted);margin:0 0 16px}.cl-meta:empty{display:none}.cl-reading h1{font-size:clamp(34px,4.5cqw,var(--display-size,48px));margin:0 0 22px}.cl-lead{font-size:20px;line-height:1.65;color:var(--cl-muted);max-width:55ch;margin:0}.cl-reading-layout{display:grid;grid-template-columns:minmax(160px,210px) minmax(0,1fr);gap:var(--layout-gap,36px);align-items:start}.cl-toc{position:sticky;top:24px;border-top:3px solid var(--primary,#252b33);padding-top:16px;font-size:13px}.cl-toc summary{font-weight:700;cursor:pointer;min-height:32px}.cl-toc ol{padding-left:20px;margin:12px 0 0}.cl-toc li{margin:8px 0}.cl-toc a{color:inherit;text-decoration:none}.cl-toc a:hover{text-decoration:underline}.cl-prose{max-width:var(--reading-width,64ch)}.cl-prose h2{font-size:var(--section-size,26px);margin:0 0 20px}.cl-prose p{margin:0 0 20px}.cl-prose li{margin:8px 0}.cl-prose ul{padding-left:23px;margin:20px 0}.cl-reading-section{scroll-margin-top:32px;margin:0 0 44px}.cl-prose figure{margin:28px 0}.cl-prose figure img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.cl-prose figcaption{color:var(--cl-muted);font-size:12px;margin-top:10px}.cl-notice{background:var(--tint,#eef3ff);border-left:3px solid var(--primary,#252b33);padding:20px 22px;margin:28px 0}.cl-notice[data-kind=caution]{background:#fff5e7;border-color:var(--warning,#8a4b08)}.cl-notice strong{display:block;font-size:15px;margin-bottom:8px}.cl-notice p{font-size:14px;line-height:1.7;margin:0}.cl-faq{margin:44px 0}.cl-faq details{border-top:1px solid var(--cl-border)}.cl-faq details:last-child{border-bottom:1px solid var(--cl-border)}.cl-faq summary{cursor:pointer;padding:20px 4px;font-size:16px;font-weight:650}.cl-faq details>div{padding:0 4px 20px;color:var(--cl-muted);font-size:15px}.cl-faq details p:last-child{margin-bottom:0}.cl-sources{border-top:1px solid var(--cl-border);padding-top:30px}.cl-sources ol{padding-left:22px;font-size:14px}.cl-sources li{margin:12px 0}.cl-sources span{display:block;font-size:12px;color:var(--cl-muted);margin-top:4px}
@container(max-width:760px){.cl-reading-layout{grid-template-columns:1fr;gap:28px}.cl-toc{position:static;background:var(--surface,#f4f5f7);padding:16px 20px}.cl-toc ol{columns:2;column-gap:24px}.cl-lead{font-size:18px}.cl-reading-head{margin-bottom:28px}.cl-comparison th,.cl-comparison td{padding:16px;min-width:190px}.cl-comparison tr>:first-child{min-width:124px;width:124px;max-width:124px}.cl-comparison th small{font-size:11px}}
@media(max-width:600px){.cl-component{padding:28px var(--mobile-pad,20px)}.cl-filter-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.cl-filter-form .cl-search-field{grid-column:1/-1}.cl-filter-form label{flex-basis:130px}.cl-filter-form .cl-button{flex:1}.cl-toc ol{columns:1}.cl-pagination{gap:14px}.cl-reading-section{margin-bottom:34px}}

.cl-reading-layout:not(:has(.cl-toc)){grid-template-columns:1fr}.cl-clear{display:inline-flex;align-items:center}

.db-block{box-sizing:border-box;container-type:inline-size;background:var(--page,#fff);color:var(--text,#171a1f);font:var(--body-size,17px)/var(--body-leading,1.65) -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;overflow-wrap:anywhere;padding:var(--section-space,64px) var(--layout-pad,28px)}
.db-block *{box-sizing:border-box;min-width:0}.db-block[data-tone=soft]{background:var(--surface,#f4f5f7)}.db-inner{max-width:var(--layout-max,1240px);margin:auto}.db-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.db-intro{max-width:640px}.db-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:750;color:var(--primary);margin:0 0 12px}.db-block h2{font:var(--display-weight,750) clamp(26px,3.5cqw,38px)/1.2 var(--font-display,inherit);letter-spacing:var(--display-tracking,-.03em);margin:0;text-wrap:balance}.db-description{color:var(--muted);font-size:15px;margin:16px 0 0;max-width:52ch}.db-link{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--text);font-size:13px;font-weight:650;text-decoration:none;min-height:44px;text-underline-offset:5px}.db-link:hover{text-decoration:underline}.db-head>.db-link{flex-shrink:0;max-width:40%;border-bottom:1px solid var(--primary)}.db-block :focus-visible{outline:3px solid var(--focus);outline-offset:4px}.db-featured{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:24px}.db-lead>.dc-card{height:100%;min-height:420px}.db-lead .dc-title{font-size:clamp(26px,3cqw,38px)}.db-stack{display:grid;gap:20px;align-content:start}.db-stack .dc-card[data-variant=horizontal]{grid-template-columns:42% minmax(0,1fr);min-height:200px}.db-stack .dc-card[data-variant=horizontal] .dc-title{font-size:20px}.db-stack .dc-summary{font-size:13px}.db-block .dc-card{--card-radius:0px}.db-block .dc-copy{overflow:visible}.db-block .dc-title{-webkit-line-clamp:unset}.db-block .dc-summary{-webkit-line-clamp:unset}.db-block[data-kind=scenarios] .db-inner,.db-block[data-kind=channel] .db-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.65fr);gap:36px}.db-block[data-kind=scenarios] .db-head,.db-block[data-kind=channel] .db-head{display:block;margin:0}.db-block[data-kind=scenarios] .db-head>.db-link,.db-block[data-kind=channel] .db-head>.db-link{max-width:none;margin-top:26px;display:inline-flex}.db-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--border);border-left:1px solid var(--border)}.db-scenario{padding:26px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--page)}.db-number{font-size:11px;color:var(--muted)}.db-scenario h3{font-family:var(--font-display);font-size:21px;line-height:1.35;margin:20px 0 12px}.db-scenario p{font-size:14px;color:var(--muted);margin:0 0 16px}.db-shortlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.db-pick{display:flex;flex-direction:column}.db-pick-label{margin:0;padding:12px 16px;border-top:3px solid var(--border);font-size:13px;font-weight:650}.db-pick:first-child .db-pick-label{border-color:var(--primary);background:var(--tint)}.db-pick>.dc-card{flex:1}.db-note{margin:22px 0 0;font-size:12px;color:var(--muted);max-width:88ch}.db-channel{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px}.db-channel .dc-title{font-size:21px}.db-channel .dc-card[data-variant=thumbnail] .dc-title{font-size:16px}.db-channel .dc-card[data-variant=thumbnail]{border-width:0 0 1px;box-shadow:none}.db-channel .dc-card[data-variant=thumbnail] .dc-summary{display:none}.db-block .cl-comparison{padding:0;background:transparent}.db-block .cl-section-head h3{font-size:18px}.db-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.db-rules article{padding:22px;border-left:3px solid var(--primary);background:var(--tint)}.db-rules h3,.db-method h3{font-size:18px;line-height:1.4;margin:0 0 10px}.db-rules p,.db-method li p{font-size:14px;color:var(--muted);margin:0}.db-method{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:start}.db-method figure{margin:0}.db-method img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.db-method figcaption{font-size:11px;color:var(--muted);margin-top:10px}.db-method ol{margin:0;padding:0;list-style:none;counter-reset:method}.db-method li{counter-increment:method;position:relative;padding:0 0 24px 46px;margin-bottom:24px;border-bottom:1px solid var(--border)}.db-method li:before{content:'0' counter(method);position:absolute;left:0;top:1px;font-size:12px;color:var(--primary);font-weight:700}.db-method:not(:has(figure)){grid-template-columns:1fr}.db-explore{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:44px;align-items:start}.db-explore nav .db-link{padding:18px 0;border-bottom:1px solid var(--border)}.db-explore nav .db-link:first-child{border-top:1px solid var(--border)}
@container(max-width:900px){.db-block[data-kind=scenarios] .db-inner,.db-block[data-kind=channel] .db-inner{grid-template-columns:1fr;gap:26px}.db-featured{grid-template-columns:1fr}.db-stack .dc-card[data-variant=horizontal]{min-height:180px}.db-lead>.dc-card{min-height:380px}.db-shortlist{gap:14px}.db-pick .dc-title{font-size:21px}.db-pick .dc-copy,.db-pick .dc-commerce{padding:18px}}
@container(max-width:600px){.db-head{display:block;margin-bottom:24px}.db-head>.db-link{display:inline-flex;max-width:100%;margin-top:18px}.db-featured,.db-channel,.db-shortlist,.db-rules,.db-method,.db-explore{grid-template-columns:1fr;gap:24px}.db-scenarios{grid-template-columns:1fr}.db-scenario{padding:22px}.db-lead>.dc-card{min-height:380px}.db-stack .dc-card[data-variant=horizontal]{grid-template-columns:35% minmax(0,1fr);min-height:0}.db-stack .dc-card[data-variant=horizontal] .dc-title{font-size:18px}.db-stack .dc-card[data-variant=horizontal] .dc-copy{padding:18px}.db-channel .dc-card[data-variant=thumbnail]{grid-template-columns:92px minmax(0,1fr)}.db-method li:last-child{margin-bottom:0}.db-explore .dc-card[data-variant=horizontal]{grid-template-columns:1fr}}
@media(max-width:600px){.db-block{padding:36px var(--mobile-pad,20px)}}
/* Side stories keep full-height images even when the card's viewport rule stacks other cards. */
.db-stack .dc-card[data-variant=horizontal] .dc-media{position:relative;grid-row:1 / span 2;min-height:140px}.db-stack .dc-card[data-variant=horizontal] .dc-media img{position:absolute;inset:0;height:100%;min-height:0;aspect-ratio:auto;object-fit:cover}.db-lead>.dc-card[data-has-image=false]{min-height:220px}.db-featured:not(:has(.db-stack>.dc-card)),.db-channel:not(:has(.db-stack>.dc-card)){grid-template-columns:1fr}.db-stack:empty{display:none}.db-shortlist:has(.db-pick:only-child){grid-template-columns:minmax(0,600px)}
.db-stack .dc-card[data-variant=horizontal] .dc-commerce{grid-column:2}.db-explore:not(:has(>div)){grid-template-columns:1fr}.db-explore:not(:has(nav)){grid-template-columns:1fr}.db-featured:empty,.db-channel:empty,.db-shortlist:empty,.db-rules:empty,.db-scenarios:empty{display:none}

.decision-header,.decision-header *{box-sizing:border-box}.decision-header{--dh-ink:var(--text,#171a1f);--dh-muted:var(--muted,#505862);--dh-bg:var(--page,#fff);--dh-line:var(--border,#cdd1d6);position:relative;background:var(--dh-bg);color:var(--dh-ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;border-block:1px solid var(--dh-line);overflow-wrap:anywhere;z-index:1}.decision-header[data-header-surface=dark]{--dh-bg:#20252c;--dh-ink:#fff;--dh-muted:#d4d8df;--dh-line:#4c535d}.decision-header a{color:inherit;text-decoration:none}.decision-header a:hover{text-decoration:underline;text-underline-offset:5px}.dh-shell,.dh-utility>nav{max-width:var(--layout-max,1240px);margin:auto;padding-inline:var(--layout-pad,28px)}.dh-utility{border-bottom:1px solid var(--dh-line)}.dh-utility>nav{display:flex;gap:10px 24px;justify-content:flex-end;flex-wrap:wrap;font-size:12px;min-height:36px;align-items:center}.dh-main{display:flex;gap:24px;align-items:center;min-height:96px;padding-block:20px}.dh-brand{display:flex;gap:12px;align-items:center;font-family:var(--font-display,inherit);font-weight:var(--display-weight,750);font-size:26px;letter-spacing:-.035em;line-height:1.12;min-width:0;max-width:300px;flex-shrink:0}.dh-brand img{width:auto;max-width:130px;height:40px;object-fit:contain;flex-shrink:1;min-width:0}.dh-brand small{display:block;font:11px/1.5 -apple-system,"PingFang SC",sans-serif;color:var(--dh-muted);letter-spacing:.04em;margin-top:6px}.dh-body{display:flex;gap:24px;align-items:center;flex:1;min-width:0;justify-content:space-between}.dh-body[hidden]{display:none!important}.dh-nav{display:flex;gap:4px 18px;align-items:center;flex-wrap:wrap;min-width:0}.dh-nav>a,.dh-nav>details>summary{min-height:44px;padding:11px 0;display:flex;align-items:center}.dh-nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px;color:var(--primary,#1649df)}[data-header-surface=dark] .dh-nav a[aria-current=page]{color:#fff}.dh-tools{display:flex;gap:16px;align-items:center;flex-shrink:0;max-width:46%;min-width:0}.dh-action{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;min-height:44px;background:var(--primary,#1649df);color:var(--on-primary,#fff)!important;border-radius:var(--button-radius,4px);font-weight:650;max-width:220px;text-align:center;line-height:1.4}.dh-action:hover{background:var(--primary-hover,#1036a8);text-decoration:none!important}.dh-dropdown{position:relative}.dh-dropdown>summary{cursor:pointer;list-style:none;display:flex;gap:9px;align-items:center;min-height:44px;padding-block:10px;font-weight:550}.dh-dropdown>summary::-webkit-details-marker{display:none}.dh-dropdown[open]>summary span{transform:rotate(180deg)}.dh-subnav,.dh-search-panel{position:absolute;top:100%;left:0;background:var(--dh-bg);border:1px solid var(--dh-line);box-shadow:0 12px 28px #0002;border-radius:4px;padding:10px;min-width:210px;z-index:5}.dh-subnav a{display:block;padding:11px 12px;min-height:44px}.dh-subnav a:hover{background:var(--surface,#f4f5f7);color:#171a1f}.dh-search-panel{left:auto;right:0;width:min(380px,80vw)}.dh-search-form{display:flex;gap:0;min-width:0;border:1px solid var(--dh-line);border-radius:var(--button-radius,4px);overflow:hidden;background:var(--dh-bg)}.dh-search-form input{width:100%;min-width:0;min-height:44px;background:transparent;border:0;padding:10px 12px;color:var(--dh-ink);font:inherit}.dh-search-form input::placeholder{color:var(--dh-muted)}.dh-search-form button{flex-shrink:0;min-height:44px;padding:10px 15px;font:inherit;font-weight:600;border:0;border-left:1px solid var(--dh-line);background:var(--surface,#f4f5f7);color:#171a1f;cursor:pointer}.dh-toggle{display:none;align-items:center;gap:10px;min-height:44px;padding:10px 13px;background:transparent;color:var(--dh-ink);border:1px solid var(--dh-line);border-radius:var(--button-radius,4px);font:inherit;cursor:pointer}.dh-visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.decision-header :is(a,button,summary,input):focus-visible{outline:3px solid var(--focus,#1649df);outline-offset:3px}.dh-search-form:focus-within{outline:3px solid var(--focus,#1649df);outline-offset:3px}.dh-search-form input:focus-visible{outline:none}.decision-header[data-header-variant=masthead] .dh-main{display:block;padding-top:28px}.decision-header[data-header-variant=masthead] .dh-brand{max-width:100%;justify-content:center;font-size:38px;text-align:center;margin:0 auto 24px}.decision-header[data-header-variant=masthead] .dh-body{border-top:1px solid var(--dh-line);padding-top:14px;justify-content:center}.decision-header[data-header-variant=masthead] .dh-nav{justify-content:center}.decision-header[data-header-variant=search] .dh-main{flex-wrap:wrap}.decision-header[data-header-variant=search] :is(.dh-body,.dh-tools){display:contents}.decision-header[data-header-variant=search] .dh-brand{order:0}.decision-header[data-header-variant=search] .dh-search{order:1;flex:1;min-width:220px}.decision-header[data-header-variant=search] .dh-action{order:2}.decision-header[data-header-variant=search] .dh-nav{order:3;flex-basis:100%;border-top:1px solid var(--dh-line);padding-top:10px}
@media(max-width:960px){.dh-shell,.dh-utility>nav{padding-inline:var(--mobile-pad,20px)}.dh-utility>nav{justify-content:flex-start;gap:4px 20px}.decision-header .dh-main{display:flex!important;flex-wrap:wrap;padding-block:16px;gap:16px}.decision-header .dh-brand{font-size:24px!important;max-width:calc(100% - 105px);margin:0!important;justify-content:flex-start!important;text-align:left!important;flex:1}.dh-brand img{max-width:80px}.decision-header[data-enhanced=true] .dh-toggle{display:flex;flex-shrink:0;margin-left:auto}.decision-header .dh-body{display:block!important;flex-basis:100%;padding-top:14px;border-top:1px solid var(--dh-line)}.decision-header .dh-body[hidden]{display:none!important}.decision-header .dh-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;border:0!important;padding:0!important}.dh-nav>a,.dh-nav>details>summary{padding:12px 0;justify-content:space-between;border-bottom:1px solid var(--dh-line)}.decision-header .dh-tools{display:flex!important;flex-direction:column;align-items:stretch;max-width:none;gap:14px;margin-top:16px}.decision-header .dh-search{min-width:0!important;flex:auto!important}.dh-subnav,.dh-search-panel{position:static;box-shadow:none;width:100%;min-width:0;margin-top:6px}.dh-subnav{padding:0 12px}.dh-action{max-width:none}.dh-search-visible{width:100%}.dh-brand small{font-size:10px}.decision-header[data-header-variant=search] .dh-nav{order:initial}}
@media(prefers-reduced-motion:reduce){.decision-header *{scroll-behavior:auto}}

.decision-header[data-header-surface=dark]{--focus:#fff}.decision-header[data-header-surface=dark] .dh-action{border:1px solid #87919e}

/* Mobile structure is independent of the desktop header and theme presets. */
.dh-mobile-top,.dh-mobile-utility{display:none}
.dh-modal{padding:0;border:0;max-width:none;max-height:none;width:100%;height:100vh;height:100dvh;inset:0;margin:0;background:transparent;color:var(--dh-ink);overflow:hidden}
.dh-modal::backdrop{background:rgb(16 20 24 / .48)}
.dh-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--dh-line);border-radius:var(--button-radius,4px);background:transparent;color:var(--dh-ink);font:28px/1 sans-serif;cursor:pointer}
@media(max-width:960px){
 .decision-header{--dh-mobile-space:clamp(16px,var(--layout-pad,24px),28px)}
 .decision-header[data-enhanced=true]>.dh-utility{display:none}
 .decision-header[data-enhanced=true] .dh-mobile-utility{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:20px;padding-top:12px;border-top:1px solid var(--dh-line);font-size:13px;color:var(--dh-muted)}
 .dh-mobile-utility a{display:inline-flex;align-items:center;min-height:44px}
 .decision-header[data-menu-open=true][data-mobile-effective=dropdown] .dh-toggle-icon{font-size:0}
 .decision-header[data-menu-open=true][data-mobile-effective=dropdown] .dh-toggle-icon:after{content:'×';font-size:22px;line-height:1}
 .decision-header .dh-nav a[aria-current=page]{text-decoration:none;background:var(--tint,#f0f1f3);color:var(--primary,#252b33);box-shadow:inset 3px 0 var(--primary,#252b33);padding-inline:12px}
 .decision-header[data-header-surface=dark] .dh-nav a[aria-current=page]{background:#ffffff14;color:#fff;box-shadow:inset 3px 0 #fff}
 .decision-header .dh-action{min-height:48px}
 .decision-header .dh-nav>a,.decision-header .dh-nav>details>summary{min-height:52px}
 .decision-header .dh-subnav{border:0;border-left:1px solid var(--dh-line);border-radius:0;margin:6px 0 12px 4px;padding:0 0 0 12px}
 .dh-modal[open]{display:flex;justify-content:flex-end}
 .decision-header .dh-modal>.dh-body{display:flex!important;flex:0 1 340px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;min-width:0;max-width:100%;height:100%;padding:0 var(--dh-mobile-space) max(20px,env(safe-area-inset-bottom));border:0;background:var(--dh-bg);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)}
 .dh-modal .dh-mobile-top{position:sticky;top:0;z-index:2;background:var(--dh-bg);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 18px;border-bottom:1px solid var(--dh-line);margin-bottom:12px;flex-shrink:0}
 .dh-mobile-brand{font-family:var(--font-display,inherit);font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.03em;max-width:230px}
 .decision-header .dh-modal .dh-nav{flex:0 0 auto;font-size:16px}
 .decision-header .dh-modal .dh-tools{flex:0 0 auto;padding-top:24px;margin-top:auto}
 .decision-header .dh-modal .dh-search-visible{order:initial}
 .decision-header .dh-modal .dh-mobile-utility{flex-shrink:0;margin-top:18px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal>.dh-body{flex-basis:100%;padding-inline:clamp(20px,6vw,40px)}
 [data-mobile-effective=fullscreen] .dh-mobile-brand{max-width:260px;font-size:21px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-nav{gap:6px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-nav>a{font-family:var(--font-display,inherit);font-size:clamp(22px,6vw,28px);font-weight:650;letter-spacing:-.03em;border-bottom:0;padding-block:12px;line-height:1.2}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-nav>details{margin:12px 0 6px;border-block:1px solid var(--dh-line);padding:6px 0 10px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-nav>details>summary{font-size:13px;letter-spacing:.04em;font-weight:600;color:var(--dh-muted);border:0;min-height:44px;padding-block:10px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-subnav{margin:0;padding:0;border:0}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-subnav a{font-size:17px;padding:10px 0;line-height:1.4;min-height:44px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-subnav a[aria-current=page]{padding-inline:12px}
 .decision-header[data-mobile-effective=fullscreen] .dh-modal .dh-tools{padding-top:30px}
}

.decision-footer {
  --df-ink: var(--text, #171a1f);
  background: var(--page, #fff);
  color: var(--df-ink);
  font: 15px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  container-type: inline-size;
  overflow-wrap: anywhere;
  border-top: 1px solid var(--border, #cdd1d6);
}
.decision-footer * { box-sizing: border-box; min-width: 0; }
.decision-footer a { color: inherit; text-decoration: none; }
.decision-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
.decision-footer a:focus-visible { outline: 3px solid var(--focus, #1649df); outline-offset: 4px; border-radius: 2px; }
.df-container { max-width: var(--layout-max, 1240px); margin: auto; padding: clamp(28px, var(--section-space, 40px), 48px) var(--layout-pad, 28px) 16px; }
.df-brand { display: inline-block; max-width: 100%; font: 650 clamp(24px, 2.3cqw, 28px)/1.2 var(--font-display, sans-serif); letter-spacing: -.02em; text-wrap: balance; }
.df-identity p { color: var(--muted, #505862); font-size: 14px; line-height: 1.65; margin: 12px 0 0; max-width: 42ch; text-wrap: pretty; }
.df-base { border-top: 1px solid var(--border, #cdd1d6); padding-top: 12px; margin-top: 28px; display: flex; justify-content: space-between; align-items: center; gap: 12px 24px; color: var(--muted, #505862); }
.df-base small, .df-base nav { font-size: 12px; }
.df-base nav, .df-inline { display: flex; flex-wrap: wrap; gap: 4px 24px; }
.df-base a, .df-inline a, .df-column a, .df-about-line a, .df-disclosure nav a { display: inline-flex; align-items: center; min-height: 40px; }
.df-simple { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px 48px; }
.df-simple .df-identity { flex: 0 1 460px; }
.df-simple .df-inline { flex: 0 1 auto; justify-content: flex-end; max-width: 48%; font-size: 14px; padding-top: 2px; }
.df-column h3 { font-size: 13px; margin: 0 0 10px; font-weight: 650; }
.df-column > div { display: flex; flex-direction: column; align-items: flex-start; }
.df-column a { font-size: 14px; color: var(--muted, #505862); }
.df-magazine { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr); gap: 48px; }
.df-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.df-magazine .df-brand { font-size: clamp(28px, 3cqw, 40px); max-width: 19ch; }
.df-note { font-size: 14px; line-height: 1.65; color: var(--muted, #505862); margin: 20px 0 0; }
.df-variant-buying { background: var(--tint, #eef3ff); }
.df-buying-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px 48px; }
.df-buying-head .df-identity { flex: 0 1 460px; }
.df-buying-head > p { color: var(--muted, #505862); font-size: 16px; line-height: 1.5; margin: 0; }
.df-decisions { margin: 24px 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--border, #cdd1d6); border-bottom: 1px solid var(--border, #cdd1d6); }
.df-decision { padding: 22px 24px; display: flex; flex-direction: column; align-items: flex-start; transition: background .18s ease; }
.df-decision:first-child { padding-left: 0; }
.df-decision + .df-decision { border-left: 1px solid var(--border, #cdd1d6); }
.df-decision:hover { background: var(--page, #fff); text-decoration: none !important; }
.df-decision h3 { font: 650 19px/1.3 var(--font-display, sans-serif); margin: 0 0 8px; letter-spacing: -.01em; }
.df-decision p { font-size: 14px; color: var(--muted, #505862); margin: 0 0 16px; max-width: 34ch; }
.df-action { font-size: 13px; font-weight: 650; color: var(--link, #1649df); margin-top: auto; }
.df-action > span { padding-left: 6px; }
.df-disclosure { display: flex; align-items: start; justify-content: space-between; gap: 24px; }
.df-disclosure p { font-size: 12px; line-height: 1.7; max-width: 76ch; color: var(--muted, #505862); margin: 0; }
.df-disclosure p a { text-decoration: underline; }
.df-disclosure nav { display: flex; flex-wrap: wrap; gap: 4px 20px; font-size: 12px; }
.df-variant-buying .df-base { margin-top: 20px; }
.df-directory { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, .8fr); gap: 36px; }
.df-place-index .df-column > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.df-directory .df-note { margin: 16px 0; }
.df-button { display: inline-flex; gap: 20px; padding: 0; font-size: 14px; font-weight: 650; min-height: 44px; align-items: center; text-decoration: underline !important; text-underline-offset: 4px; }
.df-about-line { border-top: 1px solid var(--border, #cdd1d6); margin-top: 16px; padding-top: 10px; display: flex; flex-wrap: wrap; gap: 0 16px; font-size: 12px; }
.decision-footer[data-footer-surface="dark"] { --page: #20252c; --surface: #292f37; --text: #f7f8fa; --muted: #c0c7d0; --border: #454d57; --tint: #20252c; --link: #f7f8fa; --focus: #fff; --df-ink: #f7f8fa; }
@container (max-width: 900px) {
  .df-magazine { grid-template-columns: 1fr; gap: 28px; }
  .df-directory { grid-template-columns: 1fr 1fr; gap: 28px; }
  .df-place-brand { grid-column: 1 / -1; }
  .df-disclosure { flex-direction: column; gap: 12px; }
}
@container (max-width: 600px) {
  .df-container { padding: 28px var(--mobile-pad, 20px) 16px; }
  .df-simple, .df-buying-head { flex-direction: column; gap: 20px; }
  .df-simple .df-identity, .df-buying-head .df-identity { flex: auto; }
  .df-simple .df-inline { justify-content: flex-start; max-width: 100%; gap: 4px 20px; }
  .df-brand { font-size: 24px; }
  .df-magazine .df-brand { font-size: 30px; }
  .df-base { align-items: flex-start; flex-direction: column; gap: 4px; margin-top: 24px; }
  .df-base nav { gap: 0 20px; }
  .df-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
  .df-decisions { grid-template-columns: 1fr; margin: 20px 0; }
  .df-decision { padding: 20px 0; }
  .df-decision + .df-decision { border-left: 0; border-top: 1px solid var(--border, #cdd1d6); }
  .df-decision p { max-width: 42ch; margin-bottom: 12px; }
  .df-directory { grid-template-columns: 1fr; }
  .df-place-brand { grid-column: auto; }
  .df-column a, .df-inline a, .df-base a, .df-about-line a, .df-disclosure nav a { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) { .df-decision { transition: none; } }

/* Reference: WoodMart Marketplace 2 — separate brand row, compact link groups. */
.df-variant-magazine .df-container { padding-top: 28px; }
.df-magazine { display: block; }
.df-masthead { padding: 0 0 24px; border-bottom: 1px solid var(--border, #cdd1d6); }
.df-magazine .df-identity { display: flex; justify-content: space-between; align-items: center; gap: 28px; }
.df-magazine .df-brand { font-size: 25px; line-height: 1.2; letter-spacing: -.025em; font-weight: 650; max-width: none; }
.df-magazine .df-identity p { margin: 0; max-width: 37ch; font-size: 13px; }
.df-magazine .df-columns { display: flex; flex-direction: column; gap: 10px; padding: 20px 0; }
.df-magazine .df-column { display: grid; grid-template-columns: 190px minmax(0, 1fr); align-items: baseline; gap: 24px; }
.df-magazine .df-column > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.df-magazine .df-column h3 { font-size: 13px; font-weight: 650; margin-bottom: 8px; }
.df-magazine .df-column a { min-height: 32px; font-size: 13px; }
.df-magazine .df-column a:hover { color: var(--df-ink); }
.df-primary { display: inline-flex; align-items: center; gap: 16px; font-size: 13px; margin-top: 16px; min-height: 44px; text-decoration: underline !important; text-underline-offset: 4px; }
.df-variant-magazine .df-base { margin-top: 0; padding-top: 8px; }
@container (max-width: 700px) {
 .df-magazine .df-identity { display: block; }
 .df-magazine .df-brand { font-size: 24px; max-width: 23ch; text-wrap: initial; }
 .df-magazine .df-identity p { margin-top: 12px; max-width: 40ch; }
 .df-magazine .df-columns { gap: 20px 28px; }
 .df-magazine .df-column { display: block; flex: 1 1 125px; }
 .df-magazine .df-columns { flex-direction: row; flex-wrap: wrap; }
 .df-magazine .df-column > div { display: flex; gap: 0; }
 .df-magazine .df-column a { min-height: 44px; }
}

.ct{--ct-ink:var(--text,#191d22);--ct-muted:var(--muted,#606874);--ct-line:var(--border,#d4d8dd);--ct-accent:var(--primary,#c44120);--ct-bg:#fff;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--ct-bg);color:var(--ct-ink);padding:38px 40px;border:1px solid var(--ct-line);border-radius:5px}.ct *{box-sizing:border-box}.ct-eyebrow{font-size:11px;font-weight:650;letter-spacing:.09em;margin:0 0 13px;color:var(--ct-accent)}.ct h2{font-size:clamp(25px,3vw,36px);line-height:1.35;letter-spacing:-.035em;margin:0;max-width:24ch}.ct-description{font-size:15px;line-height:1.85;color:var(--ct-muted);max-width:60ch;margin:16px 0 0}.ct-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.ct-action{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:48px;padding:13px 20px;border-radius:var(--button-radius,4px);font-size:14px;font-weight:600;line-height:1.5;text-decoration:none}.ct-primary{background:var(--ct-accent);color:#fff;border:1px solid transparent}.ct-primary:hover{filter:brightness(.92)}.ct-secondary{color:var(--ct-ink);border:1px solid var(--ct-line);background:transparent}.ct-secondary:hover{border-color:var(--ct-ink)}.ct :focus-visible{outline:3px solid var(--ct-accent);outline-offset:4px}.ct-note{font-size:12px;line-height:1.7;color:var(--ct-muted);margin:12px 0 0;max-width:58ch}.ct[data-variant=bar]{display:flex;align-items:center;justify-content:space-between;gap:36px;border-left:0;border-right:0;border-radius:0;padding:28px 0}.ct[data-variant=bar] h2{font-size:25px}.ct[data-variant=bar] .ct-description{font-size:14px;max-width:50ch;margin-top:9px}.ct[data-variant=bar] .ct-next{flex-shrink:0;max-width:45%}.ct[data-variant=bar] .ct-actions{justify-content:flex-end}.ct[data-variant=center]{text-align:center;padding:56px 32px}.ct[data-variant=center] :is(h2,.ct-description,.ct-note){margin-left:auto;margin-right:auto}.ct[data-variant=center] .ct-next{margin-top:26px}.ct[data-variant=center] .ct-actions{justify-content:center}.ct[data-variant=split]{display:grid;grid-template-columns:1.3fr 1fr;gap:44px;align-items:center}.ct[data-variant=split] .ct-next{border-left:1px solid var(--ct-line);padding-left:36px}.ct[data-variant=split] .ct-actions{flex-direction:column;align-items:stretch}.ct[data-variant=product]{display:grid;grid-template-columns:190px minmax(0,1fr);gap:12px 32px;align-items:center}.ct-image{grid-row:span 2;margin:0;min-width:0}.ct-image img{display:block;width:100%;height:230px;object-fit:contain;background:#fff;padding:15px;border-radius:3px}.ct-image figcaption{font-size:10px;line-height:1.6;color:var(--ct-muted);margin-top:10px}.ct[data-variant=product] .ct-next{grid-column:2;margin-top:10px}.ct[data-variant=choice] .ct-copy{margin-bottom:28px}.ct-choices{display:grid;grid-template-columns:1fr 1fr;gap:32px}.ct-choices article{border-top:1px solid var(--ct-line);padding-top:24px;display:flex;flex-direction:column;align-items:start}.ct-condition{font-size:12px;font-weight:650;color:var(--ct-accent);margin:0 0 12px}.ct h3{font-size:22px;line-height:1.4;margin:0}.ct-choices article>p:not(.ct-condition){font-size:14px;line-height:1.8;color:var(--ct-muted);margin:12px 0 22px}.ct-choices .ct-action{margin-top:auto}.ct[data-tone=tint]{--ct-bg:#fcf3ef;--ct-line:#e9cec3}.ct[data-tone=dark]{--ct-bg:#20252b;--ct-ink:#f5f6f7;--ct-muted:#c0c6ce;--ct-line:#515b66;--ct-accent:#ffac8a}.ct[data-tone=dark] .ct-primary{color:#20252b}.ct[data-variant=bar]:not([data-tone=plain]){padding-left:28px;padding-right:28px}
@media(max-width:760px){.ct{padding:26px 22px}.ct[data-variant=bar]{display:block;padding:26px 0}.ct[data-variant=bar] .ct-next{max-width:none;margin-top:22px}.ct[data-variant=bar] .ct-actions{justify-content:flex-start}.ct[data-variant=center]{padding:34px 22px}.ct[data-variant=split]{grid-template-columns:1fr;gap:24px}.ct[data-variant=split] .ct-next{border-left:0;border-top:1px solid var(--ct-line);padding:24px 0 0}.ct[data-variant=product]{grid-template-columns:100px minmax(0,1fr);gap:20px 18px;align-items:start}.ct[data-variant=product] .ct-image{grid-row:auto}.ct-image img{height:155px;padding:9px}.ct[data-variant=product] h2{font-size:23px}.ct[data-variant=product] .ct-description{font-size:13px;line-height:1.7}.ct[data-variant=product] .ct-next{grid-column:1/-1;margin-top:0}.ct-actions{align-items:stretch;flex-direction:column}.ct-action{width:100%;gap:14px}.ct-choices{grid-template-columns:1fr;gap:28px}.ct-choices article{align-items:stretch}.ct h2{font-size:26px}.ct-description{font-size:14px}}
.ct h2{text-wrap:balance}

/* Static hero: no runtime JS, auto-height content, inherited brand tokens. */
.decision-hero{--hero-bg:var(--page,#fff);--hero-text:var(--text,#171a1f);--hero-muted:var(--muted,#505862);--hero-line:var(--border,#cdd1d6);box-sizing:border-box;background:var(--hero-bg);color:var(--hero-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;padding:clamp(28px,5vw,76px) var(--layout-pad,28px);overflow-wrap:anywhere;container-type:inline-size}
.decision-hero *{box-sizing:border-box;min-width:0}.decision-hero[data-hero-surface=dark]{--hero-bg:#171c22;--hero-text:#fff;--hero-muted:#ccd0d5;--hero-line:#65707d}
.dhero-body,.dhero-heading{max-width:var(--layout-max,1240px);margin:0 auto}.dhero-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--layout-gap,36px);align-items:center}.dhero-copy{padding:24px 0}.dhero-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:750;margin:0 0 24px;color:var(--hero-muted)}
.dhero-title{font-family:var(--font-display,inherit);font-size:clamp(36px,4.8cqw,calc(var(--display-size,48px) * 1.23));line-height:var(--display-leading,1.12);font-weight:var(--display-weight,750);letter-spacing:var(--display-tracking,-.035em);text-wrap:balance;white-space:pre-line;margin:0;max-width:100%}.dhero-description{font-size:var(--body-size,17px);line-height:var(--body-leading,1.65);color:var(--hero-muted);max-width:48ch;margin:24px 0 0}.dhero-actions{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;margin-top:30px}.dhero-action,.dhero-search button{border:1px solid transparent;background:var(--primary,#252b33);color:var(--on-primary,#fff);border-radius:var(--button-radius,4px);font:inherit;font-weight:650;padding:14px 22px;text-decoration:none;min-height:48px;cursor:pointer}.dhero-action:hover,.dhero-search button:hover{background:var(--primary-hover,#111827)}.dhero-secondary{color:inherit;text-underline-offset:6px;font-weight:650;padding:14px 0;min-height:48px;line-height:1.5}.decision-hero :focus-visible{outline:3px solid var(--focus,#1649df);outline-offset:5px}.decision-hero[data-hero-surface=dark] :focus-visible{outline-color:white}.decision-hero[data-hero-surface=dark] .dhero-action{border-color:#9da6b1}
.dhero-media{position:relative;margin:0;background:var(--surface,#f4f5f7);align-self:stretch;min-height:390px;overflow:hidden}.dhero-media img{display:block;width:100%;height:100%;min-height:390px;object-fit:cover;position:absolute;inset:0}.dhero-media figcaption{position:absolute;bottom:0;left:0;right:0;background:#111b;color:#fff;padding:12px 18px;font-size:12px;line-height:1.5}.decision-hero[data-image-position=top] img{object-position:top}.decision-hero[data-image-position=bottom] img{object-position:bottom}.decision-hero[data-image-position=left] img{object-position:left}.decision-hero[data-image-position=right] img{object-position:right}.decision-hero[data-image-fit=contain]:not([data-hero-variant=cover]) img{object-fit:contain;padding:20px}
.dhero-points{list-style:none;padding:20px 0 0;margin:28px 0 0;border-top:1px solid var(--hero-line);display:flex;flex-wrap:wrap;gap:12px 24px;font-size:13px;color:var(--hero-muted);line-height:1.6}.dhero-note{font-size:12px;line-height:1.6;color:var(--hero-muted);margin:18px 0 0}.decision-hero[data-image-side=left]:is([data-hero-variant=split],[data-hero-variant=finder]) .dhero-media{grid-column:1;grid-row:1}.decision-hero[data-image-side=left]:is([data-hero-variant=split],[data-hero-variant=finder]) .dhero-copy{grid-column:2;grid-row:1}
.decision-hero[data-has-image=false] .dhero-body{grid-template-columns:1fr}.decision-hero[data-has-image=false] .dhero-copy{grid-column:1!important;max-width:800px}.decision-hero[data-has-image=false] .dhero-title{max-width:24ch}
/* Full-bleed cover: uninterrupted image with a continuous directional scrim. */
.decision-hero[data-hero-variant=cover]{padding:0;background:#15191e;color:#fff;--hero-muted:#d7dbe0;--hero-line:#77808a}.decision-hero[data-hero-variant=cover] .dhero-body{position:relative;isolation:isolate;display:block;max-width:none;padding:clamp(36px,6vw,92px) max(var(--layout-pad,28px),calc((100% - var(--layout-max,1240px)) / 2));min-height:640px;display:flex;align-items:flex-end}.decision-hero[data-hero-variant=cover] .dhero-media{position:absolute;inset:0;z-index:-2}.decision-hero[data-hero-variant=cover] .dhero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,15,19,.88) 0%,rgba(10,15,19,.72) 33%,rgba(10,15,19,.25) 64%,rgba(10,15,19,.08) 100%),linear-gradient(0deg,rgba(10,15,19,.35),transparent 60%)}.decision-hero[data-hero-variant=cover] .dhero-copy{max-width:620px;background:transparent;padding:0}.decision-hero[data-hero-variant=cover] figcaption{display:none}.decision-hero[data-hero-variant=cover] :focus-visible{outline-color:#fff}.decision-hero[data-hero-variant=cover] .dhero-action{border-color:#9da6b1}
.decision-hero[data-hero-variant=editorial] .dhero-heading{padding-bottom:36px;border-bottom:1px solid var(--hero-line);margin-bottom:32px}.decision-hero[data-hero-variant=editorial] .dhero-title{font-size:clamp(38px,6.2cqw,86px);max-width:23ch}.decision-hero[data-hero-variant=editorial] .dhero-body{grid-template-columns:1.8fr 1fr;align-items:start}.decision-hero[data-hero-variant=editorial] .dhero-media{grid-row:1;grid-column:1;min-height:350px}.decision-hero[data-hero-variant=editorial] .dhero-copy{grid-row:1;grid-column:2;padding:0}.decision-hero[data-hero-variant=editorial] .dhero-description{margin-top:0}.decision-hero[data-hero-variant=editorial][data-has-image=false] .dhero-body{grid-template-columns:1fr}
.decision-hero[data-hero-variant=finder] .dhero-body{grid-template-columns:1.35fr 1fr}.decision-hero[data-hero-variant=finder] .dhero-media{min-height:340px;border-radius:0;align-self:center;aspect-ratio:4/3}.dhero-search{display:flex;gap:8px;margin-top:30px;padding:8px;background:#fff;border:1px solid var(--control-border,#737b86);border-radius:var(--button-radius,4px)}.dhero-search input{flex:1;width:100%;border:0;border-radius:0;padding:12px;font:inherit;background:#fff;color:#171a1f;min-height:48px}.dhero-search button{flex-shrink:0}.dhero-topics{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.dhero-topics a{font-size:13px;border:1px solid var(--hero-line);border-radius:30px;padding:11px 15px;color:inherit;text-decoration:none;min-height:42px}.dhero-topics a:hover{text-decoration:underline}.dhero-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:760px){.decision-hero{padding:32px var(--mobile-pad,20px)}.dhero-body,.decision-hero[data-hero-variant=finder] .dhero-body,.decision-hero[data-hero-variant=editorial] .dhero-body{grid-template-columns:1fr;gap:24px}.dhero-copy,.decision-hero[data-image-side=left] .dhero-copy,.decision-hero[data-image-side=left] .dhero-media,.decision-hero[data-hero-variant=editorial] .dhero-copy,.decision-hero[data-hero-variant=editorial] .dhero-media{grid-column:1!important;grid-row:auto!important}.dhero-copy{padding:8px 0}.dhero-title{font-size:var(--display-mobile,34px);max-width:22ch}.dhero-eyebrow{margin-bottom:18px}.dhero-media,.dhero-media img,.decision-hero[data-hero-variant=finder] .dhero-media,.decision-hero[data-hero-variant=editorial] .dhero-media{min-height:0}.dhero-media{aspect-ratio:4/3}.decision-hero[data-hero-variant=finder] .dhero-media{aspect-ratio:16/9;border-radius:0}.decision-hero[data-hero-variant=editorial] .dhero-title{font-size:var(--display-mobile,34px)}.decision-hero[data-hero-variant=editorial] .dhero-heading{padding-bottom:24px;margin-bottom:24px}.decision-hero[data-hero-variant=cover] .dhero-body{padding:32px var(--mobile-pad,20px);min-height:530px}.decision-hero[data-hero-variant=cover] .dhero-copy{padding:0}.decision-hero[data-hero-variant=cover] .dhero-media{aspect-ratio:auto}.decision-hero[data-hero-variant=cover] .dhero-media:after{background:linear-gradient(0deg,rgba(10,15,19,.93) 0%,rgba(10,15,19,.78) 45%,rgba(10,15,19,.22) 100%)}.dhero-search{flex-wrap:wrap}.dhero-search input{flex-basis:160px}.dhero-search button{flex-grow:1}.dhero-points{gap:8px 18px}}
.decision-hero[data-has-image=false] .dhero-body{grid-template-columns:1fr}.dhero-search button{max-width:100%;white-space:normal;overflow-wrap:anywhere}.dhero-action,.dhero-secondary{max-width:100%}

.decision-hero[data-hero-variant=cover] .dhero-title{max-width:12em;font-size:clamp(40px,5.8cqw,76px);line-height:1.15}.decision-hero[data-hero-variant=cover] .dhero-description{max-width:30em;color:#f0f1f2}.decision-hero[data-hero-variant=cover] .dhero-eyebrow{color:#edf0f2}.decision-hero[data-hero-variant=cover] .dhero-action{background:#fff;color:#171a1f;border-color:#fff}.decision-hero[data-hero-variant=cover] .dhero-action:hover{background:#e5e7eb}.decision-hero[data-hero-variant=cover] .dhero-actions{margin-top:32px}@media(max-width:760px){.decision-hero[data-hero-variant=cover] .dhero-body{min-height:600px;padding-top:160px;padding-bottom:44px}.decision-hero[data-hero-variant=cover] .dhero-title{font-size:40px}.decision-hero[data-hero-variant=cover] .dhero-description{font-size:16px}}

/* Project adaptation layer on top of the vendored decision-design-kit CSS.
   Only layout for the pages this build generates; no component reimplementation. */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--page, #fff);
  color: var(--text, #171a1f);
  font: var(--body-size, 17px) / var(--body-leading, 1.65) -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", sans-serif;
  overflow-wrap: anywhere;
}

img, svg, table { max-width: 100%; }

a { color: var(--link, #08776f); }

.zg-skip {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--primary);
  color: #fff;
  padding: 10px 16px;
  z-index: 50;
}
.zg-skip:focus { left: 8px; top: 8px; }

.zg-topbar {
  background: var(--tint, #eaf7f5);
  border-bottom: 1px solid var(--border, #cdd1d6);
  padding: 8px var(--layout-pad, 28px);
  font-size: 13px;
}
.zg-topbar p { margin: 0; color: var(--text); }

.zg-main { display: block; }

.zg-main > * { max-width: var(--layout-max, 1240px); margin-inline: auto; padding-inline: var(--layout-pad, 28px); }

.decision-hero { padding-block: 12px; }
.dhero-body { max-width: var(--layout-max, 1240px); margin-inline: auto; padding-inline: var(--layout-pad, 28px); }
.dhero-copy { max-width: 62ch; }
.dhero-title { font-family: var(--font-display); font-size: clamp(var(--display-mobile, 34px), 5vw, var(--display-size, 48px)); line-height: var(--display-leading, 1.12); letter-spacing: var(--display-tracking, -.035em); margin: 8px 0 16px; }
.dhero-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--primary); margin: 0; }
.dhero-description { font-size: 18px; line-height: 1.65; color: var(--muted); margin: 0 0 20px; max-width: 64ch; }
.dhero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.dhero-action, .zg-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 46px; padding: 12px 18px; border-radius: var(--button-radius, 4px);
  background: var(--primary); color: #fff; font-size: 14px; font-weight: 650; text-decoration: none;
  border: 1px solid transparent;
}
.dhero-action:hover, .zg-button:hover { background: var(--primary-hover, #065b55); }
.dhero-secondary, .zg-button-secondary { background: transparent; color: var(--text); border-color: var(--control-border, #737b86); }
.dhero-secondary:hover, .zg-button-secondary:hover { background: var(--tint); color: var(--text); }

.zg-hero-meta { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 22px; padding: 0; margin: 18px 0 0; font-size: 13px; color: var(--muted); }
.zg-hero-meta li { display: inline; }

.zg-breadcrumbs { padding-top: 18px; font-size: 13px; }
.zg-breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0; color: var(--muted); }
.zg-breadcrumbs li + li::before { content: "/"; margin-right: 6px; color: var(--border); }

.zg-note, .zg-section-intro { color: var(--muted); font-size: 14px; line-height: 1.7; }
.zg-disclosure-inline { font-size: 13px; color: var(--muted); border-left: 3px solid var(--primary); padding-left: 12px; margin: 18px 0; }

.zg-disclosure { border-top: 1px solid var(--border); background: var(--surface); padding: 26px var(--layout-pad); }
.zg-disclosure h2 { font-size: 16px; margin: 0 0 8px; }
.zg-disclosure p { margin: 0; max-width: 80ch; color: var(--muted); font-size: 14px; }

.zg-brand, .zg-terms, .zg-specs, .zg-ask, .zg-buy, .zg-index, .zg-tool, .zg-tool-method, .zg-boundaries { padding-block: var(--section-space, 40px); }

.zg-brand-grid, .zg-boundary-grid, .zg-term-grid, .zg-index-grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.zg-brand article, .zg-boundary-grid article, .zg-term { border: 1px solid var(--border); border-radius: var(--card-radius, 4px); padding: 18px; background: var(--page); }
.zg-brand h3, .zg-boundary-grid h3, .zg-term h3 { font-size: 17px; margin: 0 0 10px; }
.zg-brand ul, .zg-boundary-grid ul { margin: 0; padding-left: 18px; }
.zg-brand li, .zg-boundary-grid li { margin-bottom: 8px; font-size: 14px; line-height: 1.65; }
.zg-term p { margin: 0 0 10px; font-size: 15px; line-height: 1.7; }
.zg-term-boundary { color: var(--muted); }
.zg-term-source { font-size: 12px; color: var(--muted); }

.zg-spec-group { margin-bottom: 26px; }
.zg-spec-group h3 { font-size: 18px; margin: 0 0 10px; }
.zg-table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--card-radius, 4px); }
.zg-spec-table { width: 100%; border-collapse: collapse; min-width: 640px; font-size: 14px; }
.zg-spec-table th, .zg-spec-table td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--border); }
.zg-spec-table thead th { background: var(--surface); font-size: 12px; letter-spacing: .05em; text-transform: uppercase; }
.zg-spec-table tbody th { width: 22%; font-weight: 600; }
.zg-spec-table tbody td { line-height: 1.6; }
.zg-flag { display: inline-block; margin-left: 6px; padding: 1px 7px; border-radius: 999px; background: var(--tint); color: var(--primary); font-size: 11px; font-weight: 700; white-space: nowrap; }

.zg-questions { margin: 12px 0 0; padding-left: 20px; }
.zg-questions li { margin-bottom: 8px; }

.zg-buy { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between; border: 1px solid var(--border); border-left: 4px solid var(--primary); border-radius: var(--card-radius, 4px); padding: 22px; }
.zg-buy-copy { max-width: 62ch; }
.zg-buy h2 { font-size: 20px; margin: 0 0 8px; }

.zg-index-group h3 { font-size: 16px; margin: 0 0 8px; }
.zg-index-group ul { list-style: none; margin: 0; padding: 0; }
.zg-index-group li { padding: 5px 0; border-bottom: 1px solid var(--border); font-size: 14px; display: flex; flex-wrap: wrap; gap: 8px; justify-content: space-between; }
.zg-index-kw { color: var(--muted); font-size: 12px; }

.zg-fold { padding-block: var(--section-space, 40px); }
.zg-fold > summary { cursor: pointer; font-size: 20px; font-weight: 700; padding: 14px 0; }
.zg-fold > summary:focus-visible { outline: 3px solid var(--focus, #08776f); outline-offset: 3px; }
.zg-fold-body { padding-top: 10px; }
.zg-source-list h3 { font-size: 17px; }
.zg-source-models { list-style: none; margin: 0; padding: 0; }
.zg-source-model { border-top: 1px solid var(--border); padding: 12px 0; }
.zg-source-name { margin: 0 0 6px; font-weight: 600; }
.zg-source-model ul { margin: 0; padding-left: 18px; }
.zg-source-model li { font-size: 13px; line-height: 1.6; }
.zg-source-model a { overflow-wrap: anywhere; }

.zg-fit-form { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); align-items: end; margin: 18px 0; }
.zg-field label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 6px; }
.zg-field input { width: 100%; min-height: 44px; padding: 10px 12px; font-size: 16px; border: 1px solid var(--control-border); border-radius: var(--button-radius, 4px); background: var(--page); color: var(--text); }
.zg-field-help { font-size: 12px; color: var(--muted); margin: 6px 0 0; }
.zg-form-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.zg-guarantee { border-left: 3px solid var(--warning); padding-left: 12px; }
.zg-fit-results:empty { display: none; }
.zg-fit-summary { font-weight: 600; margin: 18px 0 10px; }
.zg-fit-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.zg-fit-item { border: 1px solid var(--border); border-radius: var(--card-radius, 4px); padding: 16px; }
.zg-fit-item h3 { font-size: 16px; margin: 0 0 8px; }
.zg-fit-status { display: inline-block; font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 999px; margin-bottom: 8px; }
.zg-fit-status--narrower { background: #fdecea; color: #b42318; }
.zg-fit-status--borderline { background: #fdf3e7; color: #8a4b08; }
.zg-fit-status--unknown { background: var(--surface); color: var(--muted); }
.zg-fit-status--clears { background: var(--tint); color: var(--primary); }
.zg-fit-item ul { margin: 8px 0 0; padding-left: 18px; font-size: 13px; }
.zg-fit-item li { margin-bottom: 5px; }
.zg-fit-src { font-size: 12px; color: var(--muted); margin: 8px 0 0; }
.zg-fit-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; font-size: 13px; }

.zg-tool-method ul { padding-left: 20px; }
.zg-tool-method li { margin-bottom: 8px; }

.db-block, .cl-component, .ct { max-width: var(--layout-max, 1240px); margin-inline: auto; padding-inline: var(--layout-pad, 28px); }
.db-block { padding-block: var(--section-space, 40px); }
#branches.db-block { padding-top: 0; }

@media (max-width: 760px) {
  .zg-main > * { padding-inline: var(--mobile-pad, 20px); }
  .dhero-body { padding-inline: var(--mobile-pad, 20px); }
  .db-block, .cl-component, .ct { padding-inline: var(--mobile-pad, 20px); }
  .zg-buy { flex-direction: column; align-items: stretch; }
  .zg-buy .zg-button { width: 100%; }
}

.zg-page-intro { padding-block: 0 10px; margin: 0; }

@media (max-width: 760px) {
  .decision-hero { padding-block: 20px; }
  .dhero-title { margin: 6px 0 10px; }
  .dhero-description { font-size: 16px; line-height: 1.55; margin-bottom: 12px; }
  .dhero-actions { gap: 8px; margin-top: 12px; }
  .dhero-action { min-height: 42px; padding: 10px 14px; }
  .zg-hero-meta { margin-top: 12px; gap: 4px 14px; }
  .zg-breadcrumbs { padding-top: 12px; }
}

/* Mobile first-screen compression for the A/B branch (M1, rework round 1).
   Desktop rules above are untouched; this only applies at phone widths. */
@media (max-width: 760px) {
  .zg-topbar { padding: 4px var(--mobile-pad, 20px); font-size: 11px; }
  .decision-header .dh-main { padding-block: 8px; gap: 10px; min-height: 0; }
  .decision-header .dh-brand { font-size: 20px !important; }
  .decision-header .dh-brand small { display: none; }
  .zg-breadcrumbs { padding-top: 6px; font-size: 11px; }

  .decision-hero { padding-block: 12px; }
  .dhero-eyebrow { font-size: 10px; margin: 0 0 6px; }
  .dhero-title { font-size: 26px; line-height: 1.12; margin: 0; }
  .dhero-description { font-size: 15px; line-height: 1.5; margin-top: 8px; }
  .dhero-actions { gap: 8px 10px; margin-top: 10px; }
  .dhero-action { min-height: 40px; padding: 9px 13px; font-size: 13px; }
  .zg-hero-meta { margin-top: 8px; gap: 2px 12px; font-size: 12px; }

  .db-block { padding-block: 14px; }
  .db-block[data-kind="scenarios"] .db-inner { gap: 10px; }
  .db-head { margin-bottom: 10px; }
  .db-eyebrow { font-size: 10px; margin: 0 0 4px; }
  .db-block h2 { font-size: 21px; line-height: 1.18; }
  .db-block .db-description { display: none; }
  .db-scenarios { gap: 0; }
  .db-scenario { padding: 13px 14px; }
  .db-number { font-size: 10px; }
  .db-scenario h3 { font-size: 16px; line-height: 1.3; margin: 4px 0 6px; }
  .db-scenario p { font-size: 13px; line-height: 1.5; margin: 0 0 6px; }
  .db-scenario .db-link { min-height: 34px; padding: 8px 0; font-size: 12px; }
}

@media (max-width: 760px) {
  .decision-header .dh-main { padding-block: 6px; }
  .decision-header .dh-brand { font-size: 19px !important; }
  .decision-hero { padding-block: 10px; }
  .dhero-description { display: none; }
  .dhero-actions { margin-top: 6px; }
  .db-head { margin-bottom: 6px; }
  .db-block h2 { font-size: 20px; line-height: 1.15; }
  .db-scenario { padding: 11px 12px; }
  .db-scenario h3 { font-size: 15.5px; margin: 2px 0 4px; }
  .db-scenario p { margin: 0 0 4px; }
  .db-scenario .db-link { min-height: 32px; padding: 6px 0; }
}
