/* Approved homepage finder; discovery state never represents commerce state. */
.genacol-finder { background:var(--g-surface); }
.genacol-finder__inner { padding-block:clamp(56px,7vw,112px); display:flex; flex-direction:column; gap:clamp(36px,5vw,64px); }
.genacol-finder__layout { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr)); gap:clamp(32px,5vw,80px); align-items:start; }
.genacol-finder__intro { display:flex; flex-direction:column; gap:28px; }
.genacol-finder__eyebrow { font-size:12px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--g-primary); }
.genacol-finder h2 { font-weight:500; font-size:clamp(42px,5vw,72px); line-height:.96; letter-spacing:-.02em; color:var(--g-dark); }
.genacol-finder__description { font-size:16px; line-height:1.6; color:var(--g-link-text); max-width:480px; }
.genacol-finder__fieldset { margin:0; border:0; padding:0; min-inline-size:0; }
.genacol-finder__fieldset legend { padding:0; margin-bottom:10px; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--g-description-text); }
.genacol-finder__choices { display:flex; flex-direction:column; gap:8px; }
.genacol-finder__choice { display:flex; align-items:center; justify-content:space-between; gap:16px; text-align:left; min-height:56px; padding:0 20px; border:1px solid rgba(0,75,72,.3); background:transparent; color:var(--g-text); font-size:15px; font-weight:600; border-radius:var(--g-radius); transition:background .25s,color .25s,border-color .25s; }
.genacol-finder__choice:hover { border-color:var(--g-dark); }
.genacol-finder__choice.is-selected { border-color:var(--g-dark); background:var(--g-dark); color:var(--g-surface); }
.genacol-finder__choice input { appearance:none; order:2; position:relative; margin:0; width:18px; height:18px; border-radius:50%; border:1.5px solid rgba(0,75,72,.4); background:transparent; flex:none; }
.genacol-finder__choice input:checked { border-color:var(--g-lime); background:var(--g-lime); }
.genacol-finder__choice input:checked::after { content:""; position:absolute; inset:4px; border-radius:50%; background:var(--g-dark); }
.genacol-finder__choice input:focus-visible { outline:2px solid var(--g-primary); outline-offset:5px; }
.genacol-finder__choice.is-selected input:focus-visible { outline-color:var(--g-surface); }
.genacol-finder__guide { font-size:13px; line-height:1.55; color:var(--g-description-text); }
.genacol-finder__recommendations { min-width:0; }
.genacol-finder__panel { position:relative; background:var(--g-dark); color:var(--g-surface); border-radius:4px; overflow:hidden; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); min-height:460px; }
.genacol-finder__media { box-sizing:content-box; position:relative; background:var(--g-surface-2); min-height:320px; display:grid; place-items:center; padding:24px; }
.genacol-finder__shadow { position:absolute; left:20%; right:20%; bottom:12%; height:8%; border-radius:50%; background:radial-gradient(50% 50% at 50% 50%,rgba(0,75,72,.3),rgba(0,75,72,0) 70%); }
.genacol-finder__media img { position:relative; width:min(84%,340px); height:auto; aspect-ratio:1; object-fit:contain; mix-blend-mode:multiply; }
.genacol-finder__details { padding:clamp(24px,3vw,40px); display:flex; flex-direction:column; gap:18px; justify-content:center; min-width:0; }
.genacol-finder__suggestion { font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--g-accent); }
.genacol-finder__details h3 { font-size:clamp(30px,3vw,42px); font-weight:600; line-height:1; letter-spacing:-.01em; }
.genacol-finder__why { font-size:15px; line-height:1.55; color:rgba(255,255,255,.84); }
.genacol-finder__facts { display:grid; grid-template-columns:auto 1fr; gap:6px 16px; margin:0; font-size:13px; line-height:1.5; }
.genacol-finder__facts dt { color:rgba(255,255,255,.6); }
.genacol-finder__facts dd { margin:0; }
.genacol-finder__facts dd[data-genacol-finder-field="price_label"] { font-weight:700; }
.genacol-finder__actions { display:flex; flex-wrap:wrap; gap:10px; padding-top:6px; }
.genacol-finder__purchase { box-sizing:border-box; display:inline-flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:4px 10px; background:var(--g-primary); color:#FFFFFF; padding:12px 24px; min-height:50px; max-width:100%; font-size:13.5px; font-weight:700; letter-spacing:.04em; border-radius:var(--g-radius); overflow-wrap:anywhere; }
.genacol-finder__view { box-sizing:content-box; display:inline-flex; align-items:center; gap:10px; border:1px solid rgba(255,255,255,.4); color:var(--g-surface); padding:0 22px; height:48px; font-size:13px; font-weight:700; letter-spacing:.04em; border-radius:var(--g-radius); }
a.genacol-finder__purchase:hover, a.genacol-finder__table-purchase:hover, a.genacol-finder__mobile-purchase:hover { background:var(--g-primary-hover); color:#FFFFFF; }
.genacol-finder__purchase:focus-visible { outline-color:var(--g-surface); }
.genacol-finder__comparison-desktop { display:flex; flex-direction:column; gap:12px; }
.genacol-finder__table-scroll { overflow-x:auto; margin-inline:calc(-1 * var(--g-gutter)); padding-inline:var(--g-gutter); scroll-snap-type:x proximity; }
.genacol-finder__table { width:100%; min-width:720px; border-collapse:collapse; table-layout:fixed; border-top:1px solid rgba(0,75,72,.18); scroll-snap-align:start; }
.genacol-finder__row-column { width:clamp(96px,calc(100% - 600px),130px); }
.genacol-finder__table th, .genacol-finder__table td { text-align:left; vertical-align:top; font-weight:400; }
.genacol-finder__table thead th { padding:0; border-bottom:1px solid rgba(0,75,72,.12); height:1px; }
.genacol-finder__table thead .genacol-finder__compare-label { padding:22px 0 14px; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--g-legal-text); }
.genacol-finder__table-select { position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:22px 18px 18px; width:100%; height:100%; border:0; background:transparent; text-align:left; transition:background .25s; }
.genacol-finder__table-select:hover { background:var(--g-surface-2); }
.genacol-finder__table-select img { width:92px; height:92px; object-fit:contain; mix-blend-mode:multiply; }
.genacol-finder__table-select > span:not(.genacol-finder__selected-mark) { font-family:var(--g-font-heading); font-size:20px; font-weight:600; line-height:1.05; color:var(--g-dark); }
.genacol-finder__table tbody th { padding:20px 0; font-size:12.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--g-text-muted); border-bottom:1px solid rgba(0,75,72,.1); }
.genacol-finder__table tbody td { padding:20px 18px; font-size:15px; line-height:1.5; color:var(--g-text); border-bottom:1px solid rgba(0,75,72,.1); }
.genacol-finder__table .genacol-finder__price-row > * { border-bottom:1px solid rgba(0,75,72,.18); }
.genacol-finder__price-row td > div { display:flex; flex-direction:column; gap:12px; }
.genacol-finder__table-price { font-size:20px; font-weight:700; color:var(--g-dark); }
.genacol-finder__table-purchase { display:inline-flex; justify-content:center; align-items:center; height:44px; background:var(--g-primary); color:#FFFFFF; font-size:12.5px; font-weight:700; letter-spacing:.06em; border-radius:var(--g-radius); text-align:center; }
.genacol-finder [data-genacol-finder-highlight].is-selected { background:var(--g-surface-2); }
.genacol-finder__selected-mark { position:absolute; top:8px; right:8px; display:none; color:var(--g-primary); font-size:16px; font-weight:700; }
.genacol-finder button[aria-pressed="true"] .genacol-finder__selected-mark { display:block; }
.genacol-finder__comparison-mobile { display:none; }
.genacol-finder__mobile-label { font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--g-text-muted); }
.genacol-finder__comparison-card { display:grid; grid-template-columns:88px minmax(0,1fr); gap:14px; padding:16px; border:1px solid rgba(0,75,72,.16); border-radius:3px; background:transparent; }
.genacol-finder__thumb-select { position:relative; width:88px; height:88px; border:0; padding:6px; background:radial-gradient(70% 60% at 50% 35%,#FFFFFF,var(--g-surface-2)); border-radius:var(--g-radius); }
.genacol-finder__thumb-select img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.genacol-finder__comparison-copy { display:flex; flex-direction:column; gap:6px; min-width:0; }
.genacol-finder__comparison-copy h3 { font-size:22px; font-weight:600; line-height:1.05; color:var(--g-dark); }
.genacol-finder__comparison-copy p { font-size:13.5px; line-height:1.5; color:var(--g-text-muted); }
.genacol-finder__comparison-copy strong { color:var(--g-text); }
.genacol-finder__mobile-price { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:4px; }
.genacol-finder__mobile-price > span:first-child { font-size:18px; font-weight:700; color:var(--g-dark); }
.genacol-finder__mobile-purchase { display:inline-flex; align-items:center; height:42px; padding:0 16px; background:var(--g-primary); color:#FFFFFF; font-size:12.5px; font-weight:700; letter-spacing:.06em; border-radius:var(--g-radius); }
.genacol-finder[data-genacol-finder-enhanced="true"] .genacol-finder__choice, .genacol-finder[data-genacol-finder-enhanced="true"] input, .genacol-finder[data-genacol-finder-enhanced="true"] button { cursor:pointer; }
@media (forced-colors:active) {
 .genacol-finder__choice input { appearance:auto; }
 .genacol-finder__choice.is-selected { outline:2px solid Highlight; outline-offset:-2px; }
}
@media (max-width:759px) {
 .genacol-finder__comparison-desktop { display:none; }
 .genacol-finder__comparison-mobile { display:flex; flex-direction:column; gap:12px; }
 /* Preserve every field on 320px screens without forcing the price/action off-card. */
 .genacol-finder__mobile-price { flex-wrap:wrap; }
 .genacol-finder__comparison-copy { overflow-wrap:anywhere; }
}
