.view-shell { max-width:1440px; padding:36px 56px 48px; }
.precision-static-record { max-width:960px; margin:60px auto; padding:24px; }
.precision-static-record a { color:var(--blue); }
.precision-static-record p { color:var(--muted); line-height:1.7; }
.precision-page-heading { display:flex; justify-content:space-between; align-items:end; gap:28px; margin:12px 0 32px; }
.precision-page-heading>div { min-width:0; }
.precision-page-heading .eyebrow,.precision-home-hero .eyebrow,.precision-latest .eyebrow,.precision-official .eyebrow { color:#c9362d; font-size:12px; letter-spacing:.055em; font-weight:800; }
.precision-page-heading h1 { margin:12px 0 14px; font-size:clamp(34px,4.1vw,60px); line-height:1.08; letter-spacing:-.055em; color:var(--navy); overflow-wrap:anywhere; }
.precision-page-heading p { margin:0; max-width:750px; color:#526176; font-size:16px; line-height:1.6; }
.precision-page-heading>.precision-link { flex-shrink:0; }
.precision-home-hero { max-width:850px; margin:14px 0 42px; }
.precision-home-hero h1 { margin:16px 0 20px; font-size:clamp(38px,4.3vw,62px); line-height:1.08; letter-spacing:-.06em; color:var(--navy); }
.precision-home-hero>div>p { font-size:17px; line-height:1.7; color:#526176; max-width:560px; }
.precision-home-hero .record-search-form { margin-top:24px; }
.precision-home-hero .precision-home-coverage { font-size:12px; color:#526176; margin-top:20px; }
.precision-directory-tools,.precision-toolbar { display:flex; align-items:end; gap:16px; }
.precision-directory-tools { padding:20px 0; border-top:1px solid var(--line); }
.precision-directory-tools>span { flex:1; font-size:17px; font-weight:750; align-self:center; }
.precision-directory-tools label,.precision-toolbar label { display:grid; gap:7px; font-size:12px; font-weight:650; color:#526176; }
.precision-directory-tools select,.precision-toolbar select,.precision-toolbar input { min-height:44px; padding:11px 12px; border:1px solid #c9d3df; border-radius:4px; background:#fff; color:var(--navy); font:inherit; font-size:14px; min-width:0; }
.precision-toolbar { padding:20px; background:white; border:1px solid var(--line); border-radius:4px; margin-bottom:22px; }
.precision-toolbar label { min-width:150px; }
.precision-toolbar .precision-grow { flex:1; }
.precision-toolbar input { width:100%; }
.precision-clear { background:transparent; border:0; color:var(--blue); font-size:13px; min-height:44px; cursor:pointer; }
.precision-directory .record-person { border-radius:4px; padding:18px 16px; }
.precision-directory .record-person .avatar { background:#eaf0f7; color:#294f86; border-radius:3px; }
.precision-directory .record-list-heading { margin:4px 0 16px; }
.precision-directory .record-list-heading h2 { font-size:18px; }
.precision-latest { border-top:1px solid var(--line); margin-top:44px; padding-top:28px; }
.precision-latest h2 { margin:10px 0; color:var(--navy); font-size:28px; letter-spacing:-.04em; }
.precision-event-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.precision-event-card { min-width:0; display:flex; flex-direction:column; padding:24px; border:1px solid #d7e0e9; background:white; color:var(--navy); border-radius:4px; text-decoration:none; transition:border-color .15s; }
.precision-event-card:hover { border-color:var(--blue); }
.precision-card-kicker { font-size:11px; text-transform:uppercase; letter-spacing:.035em; color:#526176; line-height:1.5; }
.precision-event-card h3 { font-size:22px; line-height:1.25; letter-spacing:-.04em; margin:14px 0 10px; overflow-wrap:anywhere; }
.precision-event-card p { color:#526176; font-size:13px; margin:0 0 22px; }
.precision-event-card>div { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-top:auto; padding-top:16px; border-top:1px solid var(--line); font-size:12px; color:#526176; }
.precision-event-card svg { width:18px; height:18px; flex:none; color:var(--blue); }
.precision-archive-summary { display:flex; gap:56px; margin-bottom:30px; }
.precision-archive-summary>div { display:flex; flex-direction:column; gap:7px; }
.precision-archive-summary strong { font-size:30px; font-weight:750; letter-spacing:-.04em; color:var(--navy); }
.precision-archive-summary span { font-size:12px; color:#526176; }
.precision-result-count { font-size:13px; line-height:1.6; color:#526176; margin:18px 0; }
.precision-pagination { display:flex; align-items:center; justify-content:center; gap:24px; margin:26px 0; font-size:13px; }
.precision-pagination button { min-height:44px; padding:10px 18px; border:1px solid #c9d3df; background:white; border-radius:4px; color:var(--blue); cursor:pointer; }
.precision-pagination button:disabled { opacity:.4; cursor:default; }
.precision-disciplines { display:flex; gap:8px; flex-wrap:wrap; }
.precision-disciplines button { min-height:44px; padding:10px 18px; border:1px solid var(--line); border-radius:4px; background:white; color:#526176; font-weight:600; font-size:13px; cursor:pointer; }
.precision-disciplines button[aria-pressed=true] { background:var(--navy); color:white; border-color:var(--navy); }
.precision-disciplines small { margin-left:7px; opacity:.8; }
.precision-competition .precision-toolbar { margin-top:16px; }
.precision-competition .record-profile-tabs { margin:20px 0; }
.precision-competition .precision-section-head { align-items:center; }
.precision-competition .precision-section-head p { margin:0; font-size:13px; }
.precision-competition-list { border:1px solid var(--line); background:white; border-radius:4px; }
.precision-competition-labels,.precision-competition-row>summary { display:grid; grid-template-columns:minmax(0,2fr) minmax(80px,.65fr) minmax(90px,.75fr) minmax(90px,.75fr) 60px; align-items:center; gap:24px; padding:16px 20px; }
.precision-competition-labels { position:sticky; top:0; z-index:1; color:#526176; background:#edf1f5; font-size:10px; text-transform:uppercase; font-weight:750; letter-spacing:.04em; }
.precision-competition-row { border-top:1px solid var(--line); }
.precision-competition-row>summary { cursor:pointer; list-style:none; color:var(--navy); }
.precision-competition-row>summary::-webkit-details-marker { display:none; }
.precision-competition-row>summary:hover { background:#f7f9fc; }
.precision-competition-row>summary strong { display:block; font-size:15px; line-height:1.4; }
.precision-competition-row>summary small { display:block; font-size:11px; color:#526176; margin-top:5px; line-height:1.5; }
.precision-competition-row .precision-medal { display:table; color:#4e3610; }
.precision-row-discipline { font-size:13px; }
.precision-row-rank { font-size:14px; }
.precision-row-score .score-pill { max-width:100%; }
.precision-expand-label { display:flex; align-items:center; gap:6px; font-size:12px; color:var(--blue); }
.precision-expand-label svg { width:14px; height:14px; transform:rotate(90deg); }
.precision-competition-row[open] .precision-expand-label svg { transform:rotate(-90deg); }
.precision-competition-expanded { background:#f4f7fb; padding:8px 22px 22px; border-top:1px solid var(--line); font-size:13px; line-height:1.6; }
.precision-competition-expanded>.round-chip-stack { display:block; margin:14px 0; }
.precision-original-row { padding:14px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.precision-original-row .round-chip-stack { display:block; margin:10px 0; }
.precision-learn-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.precision-learn-card { padding:28px; border:1px solid var(--line); background:white; border-radius:4px; }
.precision-learn-number { display:flex; align-items:center; justify-content:space-between; color:#536f94; font-size:12px; }
.precision-learn-number svg { width:26px; height:26px; }
.precision-learn-card h2 { margin:24px 0 12px; font-size:30px; line-height:1.15; letter-spacing:-.045em; }
.precision-learn-card p { color:#526176; font-size:15px; line-height:1.65; max-width:430px; margin-bottom:20px; }
.precision-official { display:grid; grid-template-columns:1.2fr 1fr; gap:60px; padding:30px; margin-top:28px; background:var(--navy); color:white; border-radius:4px; }
.precision-official .eyebrow { color:#ffaaa2; }
.precision-official h2 { font-size:28px; letter-spacing:-.04em; margin:14px 0; }
.precision-official p { color:#c9d3e0; line-height:1.6; font-size:14px; margin:0; }
.precision-official a { display:flex; align-items:center; justify-content:space-between; color:white; font-size:15px; text-decoration:none; border-bottom:1px solid #344355; padding:16px 0; min-height:48px; }
.precision-official svg { width:18px; height:18px; }
.precision-learn-footer { display:flex; gap:26px; margin:26px 0 20px; }
.precision-learn-footer a { color:var(--blue); font-size:14px; min-height:44px; display:flex; align-items:center; }
.precision-calendar-list { border-top:1px solid var(--line); }
.precision-calendar-entry { display:grid; grid-template-columns:80px minmax(0,1fr); gap:26px; border-bottom:1px solid var(--line); padding:24px 0; }
.precision-calendar-date { text-align:center; color:var(--navy); padding-top:14px; }
.precision-calendar-date span { text-transform:uppercase; font-size:12px; font-weight:700; color:#bf332b; }
.precision-calendar-date b { display:block; font-size:36px; line-height:1.1; margin:6px 0; letter-spacing:-.05em; }
.precision-calendar-date small { font-size:11px; color:#526176; }
.precision-calendar .range-event-card { border:1px solid var(--line); background:white; border-radius:4px; box-shadow:none; padding:22px; }
.precision-calendar .range-event-card>strong { color:var(--navy); font-size:23px; line-height:1.3; letter-spacing:-.035em; }
.precision-calendar .range-event-card>p { font-size:14px; font-weight:400; }
.precision-calendar .range-event-card>span { font-size:12px; line-height:1.6; }
.precision-calendar .range-event-actions a,.precision-calendar .range-event-actions button { min-height:44px; }
.precision-calendar-extra { display:flex; gap:16px; align-items:center; justify-content:space-between; margin-top:8px; font-size:11px; color:#526176; }
.precision-calendar-extra button { display:flex; align-items:center; gap:8px; background:transparent; border:0; color:var(--blue); min-height:44px; font-size:12px; cursor:pointer; }
.precision-calendar-extra svg { width:16px; height:16px; }
.precision-places-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; align-items:start; }
.precision-places .range-map-panel { position:sticky; top:20px; border:1px solid var(--line); border-radius:4px; }
.precision-place-list { display:grid; gap:12px; min-width:0; }
.precision-places .range-card { background:white; border:1px solid var(--line); border-radius:4px; box-shadow:none; }
.precision-places .range-card>summary { padding:18px; }
.precision-places .range-card strong { font-size:16px; line-height:1.4; }
.precision-places .range-detail { font-size:13px; line-height:1.6; }
.precision-places>.precision-coverage,.precision-calendar>.precision-coverage { margin-top:26px; }
.site-rights-footer { max-width:1440px; padding:24px 56px; }
/* Keep the selected profile's proportions at the actual 1487px reference width. */
.view-shell:has(.precision-profile) { max-width:1487px; padding-top:10px; }
.precision-profile-heading { padding-bottom:0; }
.precision-profile>.record-profile-tabs { margin-top:12px; }
.precision-year-column { height:122px; margin-top:12px; }
.precision-growth .precision-section-head { margin-bottom:10px; }
.precision-method { margin-top:10px; padding-top:6px; }
.precision-facts dl>div { padding-block:7px; }
@media(max-width:1100px) {
  .view-shell { padding:28px 24px 40px; }
  .precision-event-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .precision-places-layout { gap:18px; }
  .precision-competition-labels,.precision-competition-row>summary { gap:16px; }
  .site-rights-footer { padding-inline:24px; }
}
@media(max-width:800px) {
  .precision-places-layout { grid-template-columns:1fr; }
  .precision-places .range-map-panel { position:static; }
  .precision-toolbar { flex-wrap:wrap; gap:14px; }
  .precision-toolbar .precision-grow { flex-basis:100%; }
  .precision-toolbar label { flex:1; }
  .precision-official { gap:28px; }
}
@media(max-width:600px) {
  .view-shell { padding:24px 16px 32px; }
  .precision-page-heading { display:block; margin:0 0 24px; }
  .precision-page-heading h1 { font-size:38px; }
  .precision-page-heading p { font-size:14px; }
  .precision-page-heading>.precision-link { margin-top:12px; }
  .precision-home-hero { margin:0 0 24px; }
  .precision-home-hero h1 { font-size:43px; }
  .precision-home-hero>div>p { font-size:15px; }
  .precision-directory-tools { flex-wrap:wrap; gap:12px; }
  .precision-directory-tools>span { flex-basis:100%; margin-bottom:4px; }
  .precision-directory-tools label { flex:1; min-width:0; }
  .precision-directory-tools select,.precision-toolbar select,.precision-toolbar input { font-size:16px; width:100%; }
  .precision-directory .record-list-heading { gap:12px; }
  .precision-directory .record-list-heading h2 { font-size:16px; }
  .precision-directory .record-list-heading>span { font-size:11px; }
  .precision-latest { margin-top:32px; }
  .precision-latest h2 { font-size:24px; }
  .precision-latest>.precision-section-head { align-items:center; }
  .precision-latest>.precision-section-head .precision-link { font-size:12px; white-space:nowrap; }
  .precision-event-cards { grid-template-columns:1fr; gap:12px; }
  .precision-event-card { padding:20px; }
  .precision-event-card h3 { font-size:23px; }
  .precision-archive-summary { gap:24px; justify-content:space-between; }
  .precision-archive-summary strong { font-size:24px; }
  .precision-archive-summary>div:last-child { display:none; }
  .precision-toolbar { padding:16px; }
  .precision-toolbar label { min-width:100px; }
  .precision-disciplines { gap:6px; }
  .precision-disciplines button { font-size:12px; padding:10px 12px; }
  .precision-competition .record-profile-return { margin-top:-10px; }
  .precision-competition .precision-page-heading h1 { font-size:36px; }
  .precision-competition-labels { display:none; }
  .precision-competition-list { border:0; background:transparent; }
  .precision-competition-row { border:1px solid var(--line); background:white; margin-bottom:12px; border-radius:4px; }
  .precision-competition-row>summary { grid-template-columns:minmax(0,1fr) auto; gap:12px 16px; padding:18px; }
  .precision-competition-row>summary>span:first-child { grid-column:1; grid-row:1; }
  .precision-competition-row>summary strong { font-size:17px; }
  .precision-row-discipline { grid-column:1; grid-row:2; }
  .precision-row-score { grid-column:2; grid-row:1; text-align:right; }
  .precision-row-rank { grid-column:1; grid-row:3; display:flex; align-items:center; gap:8px; }
  .precision-row-rank .precision-medal { margin:0; }
  .precision-expand-label { grid-column:2; grid-row:3; justify-content:end; }
  .precision-competition .precision-section-head { flex-wrap:wrap; gap:5px; }
  .precision-competition-expanded { padding:12px 16px 18px; }
  .precision-competition-expanded .round-stage { white-space:normal; flex-wrap:wrap; max-width:100%; }
  .precision-competition-expanded .round-stage>span { flex-wrap:wrap; }
  .precision-competition .event-award-board { display:block; }
  .precision-competition .event-award-group { margin-bottom:18px; }
  .precision-learn-grid { grid-template-columns:1fr; gap:14px; }
  .precision-learn-card { padding:24px; }
  .precision-learn-card h2 { font-size:28px; margin-top:20px; }
  .precision-learn-card p { font-size:14px; }
  .precision-official { grid-template-columns:1fr; gap:22px; padding:24px; }
  .precision-official h2 { font-size:27px; }
  .precision-learn-footer { gap:20px; }
  .precision-learn-footer a { font-size:12px; }
  .precision-calendar-entry { grid-template-columns:46px minmax(0,1fr); gap:12px; padding:20px 0; }
  .precision-calendar-date b { font-size:29px; }
  .precision-calendar .range-event-card { padding:16px; }
  .precision-calendar .range-event-card>strong { font-size:20px; }
  .precision-calendar-extra { align-items:start; flex-direction:column; gap:3px; }
  .precision-calendar-extra button { padding-left:0; }
  .precision-calendar .range-event-actions { gap:6px; }
  .precision-calendar .range-event-actions a,.precision-calendar .range-event-actions button { font-size:11px; padding:10px; }
  .precision-places .range-card>summary { padding:15px 12px; }
  .precision-places .range-card strong { font-size:15px; }
  .site-rights-footer { padding-inline:16px; }
}
@media(prefers-reduced-motion:reduce) { .precision-event-card { transition:none; } }
