.conditions-page { padding-block: 48px; }
.conditions-page h1 { font-size: clamp(2.3rem, 5vw, 4rem); line-height: 1.1; max-width: 900px; }
.conditions-page p { line-height: 1.65; max-width: 880px; }
.conditions-eyebrow { color: var(--forest); font-weight: 700; letter-spacing: .12em; }
.conditions-lead { font-size: 1.2rem; color: var(--muted); }
.conditions-page section { margin-block: 56px; }
.conditions-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 20px; }
.conditions-card { background: var(--cream); border: 1px solid var(--line); border-radius: 20px; padding: 24px; }
.conditions-card h3 { margin-top: 0; }
.conditions-card dl { margin-block: 20px; }
.conditions-card dt { color: var(--muted); margin-top: 12px; }
.conditions-card dd { margin-left: 0; font-size: 1.4rem; font-weight: 650; }
.conditions-card .conditions-time { font-size: .88rem; color: var(--muted); }
.conditions-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-block: 24px; }
.conditions-controls select, .conditions-controls button { min-height: 48px; padding: 10px 16px; border: 1px solid var(--forest); border-radius: 12px; font: inherit; background: var(--cream); color: var(--ink); max-width: 100%; }
.conditions-controls button { cursor: pointer; }
.conditions-controls button:disabled { opacity: .65; }
.conditions-controls :focus-visible { outline: 3px solid var(--amber); outline-offset: 3px; }
.conditions-download { border-top: 1px solid var(--line); padding-top: 32px; }
