/* Atkinson AI Search + Accessibility hardening — 2026-07-23 */
:root{
  --answer-bg:#fffdf8;
  --answer-border:color-mix(in srgb,var(--accent,#b8842c) 45%,#d8cdbb);
  --answer-ink:#13242b;
  --focus-ring:#0a66c2;
}
.ai-answer-brief{background:var(--answer-bg);border-block:1px solid var(--answer-border);padding:clamp(1.1rem,2.2vw,2rem) 0}
.ai-answer-brief .container{display:grid;gap:1rem}
.ai-answer-intro{display:flex;align-items:end;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}
.ai-answer-intro h2{font-size:clamp(1.5rem,2.6vw,2.5rem);line-height:1.08;color:var(--accent-dark,#073e31);max-width:24ch;margin:0}
.ai-answer-intro .kicker{margin:0 0 .35rem}
.ai-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--answer-border);background:#fff}
.ai-answer-item{padding:clamp(1rem,2vw,1.45rem);min-width:0}
.ai-answer-item+ .ai-answer-item{border-inline-start:1px solid var(--answer-border)}
.ai-answer-item h3{font:800 .78rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--accent-dark,#073e31);margin:0 0 .55rem}
.ai-answer-item p{margin:0;color:var(--answer-ink);line-height:1.62}
.ai-answer-item a{font-weight:780;text-underline-offset:.2em}
.page-reviewed{font:650 .78rem/1.4 var(--sans);color:#5b666c;margin:0}
.page-reviewed time{font-variant-numeric:tabular-nums}

/* Stronger semantic focus and agent-visible state */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--focus-ring)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 2px #fff!important;
}
form:tool-form-active{outline:3px dashed #0a66c2;outline-offset:6px}
:where(button,input[type="submit"]):tool-submit-active{outline:4px solid #b46a00;outline-offset:4px}
[aria-current="page"]{text-decoration-thickness:.14em;text-underline-offset:.28em}
.search-result:focus-visible,.entry-card:focus-visible,.search-demand-links a:focus-visible{position:relative;z-index:2}

/* Prevent content from being visually clipped while retaining compact heroes. */
.page-hero,.home-hero{overflow:visible!important;height:auto!important;min-height:min(64svh,620px)}
.page-hero-copy{align-self:center;min-width:0}
.hero-actions,.actions{align-items:stretch}
.hero-actions .button,.actions .button{white-space:normal;text-wrap:balance;min-inline-size:min(100%,13rem)}

/* Better readable targets and labels across touch devices. */
:where(button,.button,.site-nav a,.footer-legal a,.footer-legal button){min-height:44px}
:where(input,select,textarea){font-size:max(1rem,16px)}
.video-dialog{max-width:min(94vw,1120px);padding:0;border:1px solid #c59a4d;background:#080b13;color:#fff}
.video-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid #735b2e}
.video-dialog-head h2{font:700 1rem/1.3 var(--sans);margin:0;color:#fff}
.video-dialog iframe{display:block;width:min(90vw,1080px);aspect-ratio:16/9;border:0}
.video-dialog-close{background:#fff;color:#111;border:0;padding:.65rem .9rem;font-weight:800;cursor:pointer}

/* Accessibility preference remains useful at larger text sizes. */
html[data-a11y-text="large"] .ai-answer-grid,
html[data-a11y-text="xlarge"] .ai-answer-grid{grid-template-columns:1fr}
html[data-a11y-text="large"] .ai-answer-item+ .ai-answer-item,
html[data-a11y-text="xlarge"] .ai-answer-item+ .ai-answer-item{border-inline-start:0;border-top:1px solid var(--answer-border)}

@media (max-width:800px){
  .ai-answer-grid{grid-template-columns:1fr}
  .ai-answer-item+ .ai-answer-item{border-inline-start:0;border-top:1px solid var(--answer-border)}
  .page-hero,.home-hero{min-height:0}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Utility ribbon containment correction — 2026-07-24 */
.top-ribbon nav{align-items:center}
.top-ribbon nav a{min-height:0;height:auto}
