
/* APG Premium Experience v107.1 */
:root{--apg-premium-blue:#2563eb;--apg-premium-blue-strong:#1d4ed8;--apg-premium-navy:#102f4a;--apg-premium-soft:#f7faff;--apg-premium-line:#dbe5ef;--apg-premium-gutter:24px}
body[data-apg-premium-v107="true"]{overflow-x:clip}
body[data-apg-premium-v107="true"] main :where(h1,h2,h3,p,li,a,button,span,strong,small,dt,dd){overflow-wrap:anywhere}
body[data-apg-premium-v107="true"] main :where(.grid,.card-grid,.feature-grid,.comparison-grid,.product-grid,.category-grid,.actions,.card-actions,.section-head,.ci47-panel,.ci47-handoff){min-width:0}
body[data-apg-premium-v107="true"] :where(button,a,input,select,textarea,summary){-webkit-tap-highlight-color:rgba(37,99,235,.12)}
body[data-apg-premium-v107="true"] :where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid rgba(37,99,235,.28)!important;outline-offset:3px}
body[data-apg-premium-v107="true"] :where(.button,.compare-button,.save-button,.header-action,.mobile-toggle,.mobile-section a,.retailer-row){min-height:44px}
body[data-apg-premium-v107="true"] .section-head p{max-width:760px}
body[data-apg-premium-v107="true"] .feature-card,
body[data-apg-premium-v107="true"] .comparison-card,
body[data-apg-premium-v107="true"] .brand-card,
body[data-apg-premium-v107="true"] .winner-card,
body[data-apg-premium-v107="true"] .decision-result{box-shadow:0 4px 18px rgba(15,47,74,.045)}
body[data-apg-premium-v107="true"] .step-number{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}

/* Global Scout shell — available on every rendered page. */
body[data-apg-premium-v107="true"] .apg-assistant-launcher{position:fixed;left:20px;right:auto;bottom:max(20px,env(safe-area-inset-bottom));z-index:900;display:flex;align-items:center;gap:10px;min-height:58px;max-width:min(260px,calc(100vw - 40px));border:1px solid rgba(37,99,235,.22);border-radius:18px;background:#fff;color:var(--apg-premium-navy);padding:8px 13px 8px 9px;box-shadow:0 16px 45px rgba(15,47,74,.18);font:inherit;cursor:pointer;text-align:left}
body[data-apg-premium-v107="true"] .apg-assistant-launcher:hover{border-color:rgba(37,99,235,.5);box-shadow:0 18px 50px rgba(15,47,74,.24);transform:translateY(-1px)}
body[data-apg-premium-v107="true"] .apg-assistant-launcher-copy{display:flex;flex-direction:column;min-width:0;line-height:1.2}
body[data-apg-premium-v107="true"] .apg-assistant-launcher-copy strong{font-size:13px;color:var(--apg-premium-navy)}
body[data-apg-premium-v107="true"] .apg-assistant-launcher-copy small{margin-top:3px;color:#64748b;font-size:10.5px;font-weight:650}
body[data-apg-premium-v107="true"] .apg-assistant-avatar{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:13px;background:linear-gradient(145deg,#eff6ff,#fff7df);overflow:hidden}
body[data-apg-premium-v107="true"] .apg-assistant-avatar img{display:block;width:32px;height:32px}
body[data-apg-premium-v107="true"] .apg-assistant-panel{position:fixed;left:20px;right:auto;bottom:max(90px,calc(86px + env(safe-area-inset-bottom)));z-index:950;display:flex;flex-direction:column;width:min(470px,calc(100vw - 40px));max-height:min(760px,calc(100dvh - 120px));overflow:hidden;border:1px solid #d8e3ee;border-radius:24px;background:#fff;box-shadow:0 28px 90px rgba(15,47,74,.26)}
body[data-apg-premium-v107="true"] .apg-assistant-panel[hidden]{display:none!important}
body[data-apg-premium-v107="true"] .apg-assistant-head{display:flex;align-items:center;gap:11px;min-height:72px;padding:13px 14px;background:linear-gradient(135deg,#102f4a,#164f7b);color:#fff}
body[data-apg-premium-v107="true"] .apg-assistant-brand{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
body[data-apg-premium-v107="true"] .apg-assistant-brand>span:last-child{display:flex;flex-direction:column;min-width:0;line-height:1.2}
body[data-apg-premium-v107="true"] .apg-assistant-brand strong{color:#fff;font-size:14px}
body[data-apg-premium-v107="true"] .apg-assistant-brand small{margin-top:3px;color:#dbeafe;font-size:10.5px}
body[data-apg-premium-v107="true"] .apg-assistant-close{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font:inherit;font-size:22px;cursor:pointer}
body[data-apg-premium-v107="true"] .apg-assistant-body{min-height:280px;flex:1 1 auto;overflow:auto;background:#f8fafc}
body[data-apg-premium-v107="true"] .apg-assistant-foot{border-top:1px solid #e2e8f0;padding:9px 13px;background:#fff;color:#64748b;font-size:10px;line-height:1.4}
body[data-apg-premium-v107="true"] .scout-v5-bubble{font-size:14px;line-height:1.55}
body[data-apg-premium-v107="true"] .scout-v5-chip,
body[data-apg-premium-v107="true"] .scout-v5-action,
body[data-apg-premium-v107="true"] .scout-v5-card-actions a,
body[data-apg-premium-v107="true"] .scout-v5-card-actions button{min-height:40px;white-space:normal;text-align:center;line-height:1.3}
body[data-apg-premium-v107="true"] .scout-v107-context-suggestions{display:flex;flex-wrap:wrap;gap:7px;margin:5px 0 4px 33px;padding-top:4px;border-top:1px dashed #d9e4ef}
body[data-apg-premium-v107="true"] .scout-v107-context-label{flex:0 0 100%;color:#64748b;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-top:3px}
body[data-apg-premium-v107="true"].apg-compare-tray-active .apg-assistant-launcher{bottom:calc(92px + env(safe-area-inset-bottom))}

/* Comparison tables become labelled decision cards on narrow screens rather than a squeezed desktop table. */
@media(max-width:760px){
  :root{--apg-premium-gutter:18px}
  body[data-apg-premium-v107="true"] .wrap{width:calc(100% - (var(--apg-premium-gutter) * 2))!important;max-width:var(--max);margin-inline:auto}
  body[data-apg-premium-v107="true"] .policy-shell{width:calc(100% - (var(--apg-premium-gutter) * 2))!important;margin-inline:auto}
  body[data-apg-premium-v107="true"] .section{padding-block:44px}
  body[data-apg-premium-v107="true"] .hero{padding-block:40px 36px}
  body[data-apg-premium-v107="true"] .home-hero-grid{padding-block:48px 44px}
  body[data-apg-premium-v107="true"] h1{font-size:clamp(35px,10.8vw,48px);line-height:1.04;letter-spacing:-.025em}
  body[data-apg-premium-v107="true"] h2{font-size:clamp(27px,7.5vw,35px);line-height:1.1;letter-spacing:-.015em}
  body[data-apg-premium-v107="true"] .lede{font-size:18px;line-height:1.55}
  body[data-apg-premium-v107="true"] main :where(p,li,dd){line-height:1.55}
  body[data-apg-premium-v107="true"] main :where(.fine,.fine-inline,.meta,.card-meta,.product-meta,.image-provenance,.ci47-note){font-size:12.5px!important;line-height:1.45!important}
  body[data-apg-premium-v107="true"] main :where(.kicker,.eyebrow){font-size:12px!important;line-height:1.3!important;letter-spacing:.075em}
  body[data-apg-premium-v107="true"] :where(input[type=search],input[type=text],input[type=email],input[type=password],input[type=number],select,textarea,.scout-v5-input){font-size:16px!important;min-height:44px}
  body[data-apg-premium-v107="true"] :where(.button,.compare-button,.save-button,.text-button,.scout-v5-chip,.scout-v5-action,.scout-v5-card-actions a,.scout-v5-card-actions button){white-space:normal;text-align:center;line-height:1.3;max-width:100%}
  body[data-apg-premium-v107="true"] .global-search{grid-template-columns:auto minmax(0,1fr) auto;min-width:0}
  body[data-apg-premium-v107="true"] .global-search input{padding-block:12px!important;min-width:0}
  body[data-apg-premium-v107="true"] .global-search button{min-width:70px;padding-inline:14px}
  body[data-apg-premium-v107="true"] .section-head{margin-bottom:22px}
  body[data-apg-premium-v107="true"] :where(.feature-card,.comparison-card,.brand-card,.soft-panel,.decision-card,.winner-card,.retailer-panel,.evidence-box,.ci47-panel,.ci47-handoff){padding:20px}
  body[data-apg-premium-v107="true"] .category-card{padding:20px;gap:16px}
  body[data-apg-premium-v107="true"] .product-card-body{padding:20px}
  body[data-apg-premium-v107="true"] .actions,body[data-apg-premium-v107="true"] .card-actions{gap:10px;margin-top:17px}
  body[data-apg-premium-v107="true"] .actions>:where(a,button),body[data-apg-premium-v107="true"] .card-actions>:where(a,button){min-height:44px}
  body[data-apg-premium-v107="true"] .compare-wrap{margin-top:18px;max-width:100%;overflow-x:hidden}
  body[data-apg-premium-v107="true"] .compare{max-width:100%}
  body[data-apg-premium-v107="true"] .compare tr{margin-bottom:16px;border:1px solid #dbe5ef;border-radius:16px;box-shadow:0 4px 14px rgba(15,47,74,.04);overflow:hidden}
  body[data-apg-premium-v107="true"] .compare td{padding:15px 16px!important;line-height:1.5;min-width:0}
  body[data-apg-premium-v107="true"] .compare td:first-child{padding-block:13px!important;background:#f4f8ff!important;color:#102f4a!important;font-size:13px}
  body[data-apg-premium-v107="true"] .compare td[data-apg-compare-label]:not(:first-child)::before{content:attr(data-apg-compare-label);display:block;margin-bottom:5px;color:#1d4ed8;font-size:11px;font-weight:900;letter-spacing:.065em;text-transform:uppercase}
  body[data-apg-premium-v107="true"] .compare-tray{left:var(--apg-premium-gutter);right:var(--apg-premium-gutter);transform:none;width:auto;bottom:max(10px,env(safe-area-inset-bottom));border-radius:16px;padding:11px 12px;gap:10px}
  body[data-apg-premium-v107="true"] .apg-assistant-launcher{left:var(--apg-premium-gutter)!important;right:auto!important;bottom:max(14px,env(safe-area-inset-bottom))!important;max-width:calc(100vw - (var(--apg-premium-gutter) * 2));min-height:56px}
  body[data-apg-premium-v107="true"].apg-compare-tray-active .apg-assistant-launcher{bottom:calc(88px + env(safe-area-inset-bottom))!important}
  body[data-apg-premium-v107="true"] .apg-assistant-panel{inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  body[data-apg-premium-v107="true"] .apg-assistant-head{padding:max(12px,env(safe-area-inset-top)) var(--apg-premium-gutter) 12px!important}
  body[data-apg-premium-v107="true"] .scout-v5-thread{padding:18px var(--apg-premium-gutter) 20px!important}
  body[data-apg-premium-v107="true"] .scout-v5-bubble{max-width:92%;font-size:15px;line-height:1.55}
  body[data-apg-premium-v107="true"] .scout-v5-chip{min-height:44px;font-size:13px;padding:9px 11px}
  body[data-apg-premium-v107="true"] .scout-v5-action{min-height:44px;font-size:12.5px;padding:9px 11px}
  body[data-apg-premium-v107="true"] .scout-v5-suggestions,
  body[data-apg-premium-v107="true"] .scout-v5-products,
  body[data-apg-premium-v107="true"] .scout-v5-actions,
  body[data-apg-premium-v107="true"] .scout-v5-feedback,
  body[data-apg-premium-v107="true"] .scout-v5-status,
  body[data-apg-premium-v107="true"] .scout-v107-context-suggestions{margin-left:0!important}
  body[data-apg-premium-v107="true"] .scout-v107-context-suggestions{gap:8px;padding-top:8px}
  body[data-apg-premium-v107="true"] .scout-v107-context-label{font-size:11px}
  body[data-apg-premium-v107="true"] .scout-v5-composer{padding:11px var(--apg-premium-gutter) max(12px,env(safe-area-inset-bottom))!important}
  body[data-apg-premium-v107="true"] .scout-v5-send{width:44px;height:44px;flex-basis:44px}
  body[data-apg-premium-v107="true"] footer :where(a,p,span,small){overflow-wrap:anywhere}
}
@media(max-width:380px){
  :root{--apg-premium-gutter:16px}
  body[data-apg-premium-v107="true"] .section{padding-block:39px}
  body[data-apg-premium-v107="true"] .hero{padding-block:34px 30px}
  body[data-apg-premium-v107="true"] .home-hero-grid{padding-block:40px 36px}
  body[data-apg-premium-v107="true"] h1{font-size:34px;line-height:1.06}
  body[data-apg-premium-v107="true"] h2{font-size:26px;line-height:1.12}
  body[data-apg-premium-v107="true"] .lede{font-size:17px;line-height:1.55}
  body[data-apg-premium-v107="true"] :where(.feature-card,.comparison-card,.brand-card,.soft-panel,.decision-card,.winner-card,.retailer-panel,.evidence-box,.ci47-panel,.ci47-handoff){padding:18px}
  body[data-apg-premium-v107="true"] .category-card{grid-template-columns:54px minmax(0,1fr);padding:18px 16px;gap:14px}
  body[data-apg-premium-v107="true"] .product-card-body{padding:18px}
  body[data-apg-premium-v107="true"] .product-visual{grid-template-columns:90px minmax(0,1fr);padding:16px}
  body[data-apg-premium-v107="true"] .global-search button{min-width:62px;padding-inline:10px;font-size:13px}
  body[data-apg-premium-v107="true"] .apg-assistant-launcher-copy small{display:none}
  body[data-apg-premium-v107="true"] .apg-assistant-launcher{padding-right:12px}
  body[data-apg-premium-v107="true"] .scout-v5-bubble{max-width:94%;font-size:14.5px}
}
@media(max-width:340px){
  body[data-apg-premium-v107="true"] h1{font-size:32px}
  body[data-apg-premium-v107="true"] h2{font-size:24px}
  body[data-apg-premium-v107="true"] .section{padding-block:36px}
  body[data-apg-premium-v107="true"] .global-search button{min-width:58px;padding-inline:8px;font-size:12.5px}
  body[data-apg-premium-v107="true"] .category-card{grid-template-columns:48px minmax(0,1fr);padding:17px 15px}
  body[data-apg-premium-v107="true"] .product-visual{grid-template-columns:78px minmax(0,1fr);padding:15px}
}
@media(prefers-reduced-motion:reduce){body[data-apg-premium-v107="true"] .apg-assistant-launcher{transition:none!important;transform:none!important}}


/* APG Scout Global Surface v110.0 compatibility fallback. */
body[data-apg-premium-v107="true"] .apg-assistant-launcher{
  left:auto!important;
  right:max(20px,env(safe-area-inset-right))!important;
  display:flex!important;
}
body[data-apg-premium-v107="true"] .apg-assistant-panel{
  left:auto!important;
  right:max(20px,env(safe-area-inset-right))!important;
}
@media(max-width:760px){
  body[data-apg-premium-v107="true"] .apg-assistant-launcher{
    left:auto!important;
    right:max(var(--apg-premium-gutter),env(safe-area-inset-right))!important;
    display:flex!important;
  }
  body[data-apg-premium-v107="true"] .apg-assistant-panel{
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
  }
}
@media(max-width:380px){
  body[data-apg-premium-v107="true"] .apg-assistant-launcher{
    left:auto!important;
    right:max(var(--apg-premium-gutter),env(safe-area-inset-right))!important;
  }
}

/* APG Scout Global Surface v111.1 — visible/clickable globally, footer-safe. */
html body:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher{
  position:fixed!important;
  left:auto!important;
  right:max(20px,env(safe-area-inset-right))!important;
  bottom:max(20px,env(safe-area-inset-bottom))!important;
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:980!important;
}
/* The existing footer observer owns this class. Optional Scout must yield while the
   footer interaction zone is active, then automatically return when the guard clears. */
html body:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher.apg-footer-overlap-guard{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
html body #apgAssistantPanel.apg-assistant-panel{
  position:fixed!important;
  left:auto!important;
  right:max(20px,env(safe-area-inset-right))!important;
  z-index:1050!important;
}
html body #apgAssistantPanel.apg-assistant-panel:not([hidden]){
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
html body #apgAssistantPanel.apg-assistant-panel[hidden]{display:none!important}
html body.apg-compare-tray-active:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher{
  bottom:calc(92px + env(safe-area-inset-bottom))!important;
}
@media(max-width:760px){
  html body:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher{
    left:auto!important;
    right:max(18px,env(safe-area-inset-right))!important;
    bottom:max(14px,env(safe-area-inset-bottom))!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  html body:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher.apg-footer-overlap-guard{
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body.apg-compare-tray-active:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher{
    bottom:calc(88px + env(safe-area-inset-bottom))!important;
  }
  html body #apgAssistantPanel.apg-assistant-panel:not([hidden]){
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
  }
}
@media(max-width:380px){
  html body:not(.scout-v5-open) #apgAssistantLauncher.apg-assistant-launcher{
    right:max(16px,env(safe-area-inset-right))!important;
  }
}
