/* Every product rule is scoped to the atlas body or mount. No global resets. */
.ara { --ink:#18262b; --muted:#4c5e62; --paper:#f5f2e9; --line:#b6c0ba; --rust:#9b371b; --green:#143e34; margin:0; color:var(--ink); background:var(--paper); font-family:Arial,Helvetica,sans-serif; font-size:17px; line-height:1.6; }
.ara *, [data-relief-atlas] * { box-sizing:border-box; }
.ara [hidden], [data-relief-atlas] [hidden] { display:none !important; }
.ara a { color:inherit; text-underline-offset:4px; text-decoration-thickness:1px; }
.ara a:hover { text-decoration-thickness:2px; }
.ara a:focus-visible,.ara button:focus-visible,.ara input:focus-visible,.ara select:focus-visible { outline:3px solid #a03d1d; outline-offset:5px; box-shadow:0 0 0 2px white; }
.ara button,.ara select { font:inherit; color:inherit; background:#fff; border:1px solid #7b8a86; border-radius:3px; min-height:46px; padding:10px 13px; }
.ara button { cursor:pointer; }
.ara button:disabled,.ara select:disabled { opacity:.5; cursor:wait; }
.ara input { accent-color:var(--green); }
.ara input[type="checkbox"],.ara input[type="radio"] { width:19px; height:19px; flex:none; margin:0; }
.ara p { margin:0 0 1em; }
.ara h1,.ara h2,.ara h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; line-height:1.1; letter-spacing:-.035em; }
.ara h1 { font-size:clamp(2.6rem,5.2vw,5rem); margin:.2em 0 .35em; }
.ara h2 { font-size:clamp(2rem,3.3vw,3rem); margin:0; }
.ara h3 { font-size:2rem; margin:0 0 .35em; }
.ara h4 { font-size:1.1rem; margin:0 0 .6em; }
.ara-skip { position:absolute; left:16px; top:-100px; padding:12px; background:white; z-index:10; }
.ara-skip:focus { top:10px; }
.ara-mast,.ara-footer { max-width:1440px; margin:auto; padding:25px 5%; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.ara-mast { border-bottom:1px solid var(--line); }
.ara-brand { font:700 24px Georgia,serif; text-decoration:none; display:flex; align-items:center; gap:18px; letter-spacing:-.04em; }
.ara-brand span { font:12px Arial,sans-serif; max-width:110px; text-transform:uppercase; line-height:1.4; letter-spacing:.09em; }
.ara-mast nav { display:flex; gap:25px; font-size:14px; }
.ara-mast nav a { text-decoration:none; padding-block:6px; }
.ara main { max-width:1440px; margin:auto; }
.ara-intro { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:70px; padding:72px 5% 70px; }
.ara-eyebrow { color:var(--muted); font-size:12px; font-weight:700; letter-spacing:.15em; line-height:1.5; }
.ara-lede { font-size:20px; line-height:1.65; max-width:600px; margin-bottom:22px !important; }
.ara-text-link { font-size:15px; font-weight:700; }
.ara-text-link span { padding-left:14px; }
.ara-intro-note { border-left:1px solid var(--line); padding:15px 0 0 32px; align-self:center; font-size:14px; }
.ara-number { font:85px Georgia,serif; line-height:1; letter-spacing:-.06em; }
.ara-intro-note p { margin:.7em 0; }
.ara-rule { width:48px; border-top:2px solid var(--ink); margin:25px 0; }
.ara-fine { font-size:13px; color:var(--muted); line-height:1.65; }
.ara-workbench { margin:0 3%; border:1px solid var(--line); background:#fffefa; border-radius:6px; padding:34px 30px 24px; scroll-margin-top:16px; container-type:inline-size; }
.ara-section-heading { display:flex; justify-content:space-between; align-items:end; gap:36px; margin-bottom:28px; }
.ara-section-heading p:last-child { font-size:14px; line-height:1.65; margin-bottom:0; color:var(--muted); }
.ara-section-heading .ara-eyebrow { margin-bottom:10px; }
.ara-status { background:#e6ede6; color:#204638; padding:10px 15px; font-size:13px; border-left:3px solid #2d5847; margin-bottom:22px !important; }
.ara-status button { margin-left:10px; font-size:14px; }
.ara-controls { display:grid; grid-template-columns:minmax(200px,1fr) 1.4fr 1fr auto; gap:22px; padding-bottom:24px; align-items:center; border-bottom:1px solid var(--line); margin-bottom:24px; }
.ara-control label,.ara-controls legend { display:block; font-size:13px; font-weight:700; margin-bottom:7px; }
.ara-control select { width:100%; }
.ara-controls fieldset { margin:0; padding:0; border:0; min-width:0; }
.ara-controls fieldset label,.ara-compare { display:flex; gap:9px; align-items:center; font-size:14px; min-height:32px; }
.ara-controls button { font-size:13px; }
.ara-workspace { display:grid; grid-template-columns:1fr 1.04fr; gap:28px; align-items:start; }
.ara figure { margin:0; }
.ara-plan { background:#fff; border:1px solid var(--line); }
.ara-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:10px; font-weight:700; letter-spacing:.1em; padding:13px 16px; border-bottom:1px solid var(--line); }
.ara-plan-frame { position:relative; width:100%; }
.ara-plan img { display:block; width:100%; height:auto; }
.ara-plan-frame>svg { position:absolute; width:100%; height:100%; inset:0; pointer-events:none; }
.ara-plan figcaption { padding:12px 16px; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:8px 15px; font-size:12px; justify-content:space-between; }
.ara-section-panel { min-width:0; }
.ara-section-panel .ara-panel-heading { padding:0 0 13px; margin-bottom:18px; }
.ara-section-panel h3 { font-size:28px; }
.ara-section-panel>p:first-of-type { font-size:14px; color:var(--muted); margin-bottom:10px; }
.ara-chart svg,.ara-chart img { display:block; width:100%; height:auto; }
.ara-chart svg { font-family:Arial,sans-serif; }
.ara-chart-key { font-size:12px; line-height:1.75; margin-top:6px !important; }
.ara-section-panel [data-ara-scrubber]>label { display:block; font-weight:700; font-size:14px; margin-top:18px; }
.ara-section-panel input[type="range"] { width:100%; min-height:34px; margin:4px 0; cursor:pointer; }
.ara-readout { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:15px; padding:12px 0; border-block:1px solid var(--line); }
.ara-readout span { font-variant-numeric:tabular-nums; }
.ara-step-actions { display:flex; gap:8px; margin:12px 0 20px; }
.ara-step-actions button { font-size:12px; flex:1; padding:8px 10px; }
.ara-reading { font-size:14px; line-height:1.7; padding-left:15px; border-left:2px solid var(--rust); }
.ara-actions { display:flex; gap:20px; flex-wrap:wrap; font-size:13px; font-weight:700; }
.ara-note { border-top:1px solid var(--line); margin:28px 0 0 !important; padding-top:18px; font-size:13px; color:var(--muted); }
.ara-library { padding:80px 5% 20px; }
.ara-library-tools { display:flex; flex-wrap:wrap; gap:18px 30px; font-size:14px; margin-bottom:34px; }
.ara-card { border-top:1px solid var(--line); padding:35px 0 45px; scroll-margin-top:20px; }
.ara-card>header { max-width:760px; }
.ara-card>header>p:last-child { font-size:16px; color:var(--muted); }
.ara-plate-pair { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:25px 0 32px; }
.ara-plate-pair figure { min-width:0; }
.ara-plate-pair img { width:100%; height:auto; display:block; border:1px solid var(--line); background:#fff; }
.ara-plate-pair figcaption { font-size:14px; margin-top:10px; }
.ara-description-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:45px; }
.ara-description-grid p { font-size:14px; }
.ara-description-grid table { width:100%; border-collapse:collapse; font-size:13px; font-variant-numeric:tabular-nums; }
.ara-description-grid caption { text-align:left; font-weight:700; margin-bottom:13px; }
.ara-description-grid th,.ara-description-grid td { border-bottom:1px solid var(--line); text-align:left; padding:10px 8px; }
.ara-description-grid tbody th { font-weight:400; }
.ara-description-grid>div>p.ara-fine { margin-top:15px; font-size:12px; }
.ara-method { background:var(--green); color:#f4f5e9; padding:50px 5%; }
.ara-method .ara-eyebrow,.ara-method .ara-fine { color:#cddccd; }
.ara-method-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:38px; margin:32px 0 24px; }
.ara-method-grid h3 { font:700 17px Arial,sans-serif; letter-spacing:0; }
.ara-method-grid p { font-size:14px; }
.ara-footer { font-size:12px; }
.ara-high-contrast { --ink:#000; --muted:#000; --paper:#fff; --line:#222; background:#fff; color:#000; }
.ara-high-contrast .ara-status { background:#fff; color:#000; border:2px solid #000; }
.ara-high-contrast .ara-chart svg { filter:grayscale(1) contrast(1.5); }
.ara-high-contrast button,.ara-high-contrast select { border:2px solid #000; }
.ara-notice { padding:16px; border:2px solid var(--ink); }
.ara-print-help { max-width:760px; margin:30px auto; padding:0 20px; }
.ara-print-help h1 { font-size:2.2rem; }
.ara-print-plate { max-width:760px; margin:30px auto !important; break-after:page; }
.ara-print-plate img { display:block; width:100%; height:auto; }
.ara-print-plate figcaption { text-align:center; font-size:14px; }
@container(max-width:760px) { .ara-workspace { grid-template-columns:1fr; gap:28px; } .ara-controls { grid-template-columns:1fr 1fr; gap:18px 12px; } .ara-control,.ara-controls fieldset { grid-column:1 / -1; } .ara-control { min-width:0; } .ara-controls fieldset { display:flex; flex-wrap:wrap; gap:4px 18px; } .ara-controls legend { float:left; width:100%; } .ara-controls fieldset label { min-height:40px; } .ara-section-heading { display:block; } .ara-section-heading>p { margin-top:16px; } }
@container(max-width:440px) { .ara-controls { grid-template-columns:1fr; } .ara-control,.ara-controls fieldset { grid-column:auto; } .ara-panel-heading { font-size:9px; padding:10px; } }
@media(max-width:1050px) { .ara-controls { grid-template-columns:1fr 1fr; } .ara-workspace { gap:20px; } .ara-intro { gap:35px; } }
@media(max-width:760px) { .ara-mast { align-items:flex-start; padding:20px 6%; } .ara-mast nav { flex-direction:column; gap:3px; font-size:12px; } .ara-brand { gap:10px; font-size:22px; } .ara-brand span { font-size:10px; max-width:90px; } .ara-intro { display:block; padding:42px 6%; } .ara-intro-note { display:none; } .ara-lede { font-size:17px; } .ara-workbench { margin:0 3%; padding:25px 18px; } .ara-section-heading { display:block; } .ara-section-heading>p { margin-top:16px; } .ara-workspace { grid-template-columns:1fr; gap:28px; } .ara-controls { grid-template-columns:1fr 1fr; gap:18px 12px; } .ara-control { grid-column:1 / -1; } .ara-controls fieldset { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:4px 18px; } .ara-controls legend { float:left; width:100%; } .ara-controls fieldset label { min-height:40px; } .ara-library { padding:50px 6% 10px; } .ara-plate-pair { gap:18px; } .ara-description-grid { grid-template-columns:1fr; gap:18px; } .ara-method { padding:40px 6%; } .ara-method-grid { grid-template-columns:1fr; gap:15px; } .ara-footer { flex-wrap:wrap; } }
@media(max-width:440px) { .ara-controls { grid-template-columns:1fr; } .ara-control,.ara-controls fieldset { grid-column:auto; } .ara-workbench { margin:0 2%; padding:20px 13px; } .ara-plate-pair { grid-template-columns:1fr; } .ara-mast { gap:14px; } .ara-section-panel h3 { font-size:26px; } .ara-panel-heading { font-size:9px; padding:10px; } .ara-card h3 { font-size:1.8rem; } }
@media(prefers-reduced-motion:reduce) { .ara *, .ara *::before, .ara *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
@media(forced-colors:active) { .ara a,.ara button,.ara select { forced-color-adjust:auto; } .ara-plan-frame,.ara-chart { forced-color-adjust:none; background:white; color:black; } .ara a:focus-visible,.ara button:focus-visible,.ara input:focus-visible,.ara select:focus-visible { outline:3px solid Highlight; } }
@media print { @page { size:auto; margin:12mm; } .ara { color:#000; background:#fff; font-size:11pt; } .ara-mast,.ara-intro,.ara-workbench,.ara-footer,.ara-library-tools,.ara-print-help,.ara-skip { display:none !important; } .ara main { max-width:none; } .ara-library { padding:0; } .ara-card { break-before:page; padding:10px 0; } .ara-plate-pair { gap:12px; } .ara-description-grid { display:block; } .ara-method { background:#fff; color:#000; break-before:page; } .ara-method .ara-eyebrow,.ara-method .ara-fine { color:#333; } .ara-print-plate { margin:0 !important; width:100%; height:244mm; display:flex; flex-direction:column; align-items:center; justify-content:center; break-inside:avoid; break-after:page; } .ara-print-plate img { width:auto; max-width:100%; height:auto; max-height:237mm; } .ara-print-plate figcaption { font-size:9pt; } .ara-print-plate:last-child { break-after:auto; } }
