.essentials-hero,
.essentials-section { width: min(100% - 32px, 980px); margin-inline: auto; }
.essentials-hero { padding-block: clamp(54px, 8vw, 100px); }
.essentials-hero .eyebrow { margin-bottom: 12px; }
.essentials-hero h1 { max-width: 15ch; }
.essentials-section { padding-block: clamp(42px, 7vw, 76px); }
.essentials-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr); gap: 22px; align-items: start; }
.essentials-card { padding: clamp(22px, 4vw, 38px); border: 1px solid var(--line, #d2dbe2); border-radius: var(--radius, 12px); background: var(--panel, #fff); }
.essentials-card h2, .essentials-card h3 { margin-top: 0; }
.essentials-form { display: grid; gap: 18px; }
.essentials-form label { display: grid; gap: 7px; color: var(--ink, #17212b); font-weight: 700; }
.essentials-form input,
.essentials-form select,
.essentials-form textarea { width: 100%; min-height: 46px; padding: 11px 13px; border: 1px solid var(--line, #b8c5ce); border-radius: 8px; background: var(--panel, #fff); color: var(--ink, #17212b); font: inherit; }
.essentials-form textarea { min-height: 160px; resize: vertical; }
.essentials-form input:focus,
.essentials-form select:focus,
.essentials-form textarea:focus { outline: 3px solid color-mix(in srgb, var(--brand, #285b7a) 24%, transparent); border-color: var(--brand, #285b7a); }
.essentials-form .form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.essentials-form .consent-row { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; font-weight: 500; }
.essentials-form .consent-row input { width: 18px; min-height: 18px; margin-top: 3px; }
.essentials-form button { justify-self: start; min-height: 46px; padding: 11px 18px; border: 0; border-radius: 999px; background: var(--brand, #285b7a); color: white; font: inherit; font-weight: 800; cursor: pointer; }
.essentials-form button:disabled { opacity: .6; cursor: wait; }
.form-status { min-height: 1.5em; margin: 0; font-weight: 700; }
.form-status[data-state="success"] { color: #19733f; }
.form-status[data-state="error"] { color: #a22e2e; }
.form-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.policy-stack { display: grid; gap: 18px; }
.policy-stack section { padding: 24px; border: 1px solid var(--line, #d2dbe2); border-radius: var(--radius, 12px); background: var(--panel, #fff); }
.policy-meta { padding: 16px 18px; border-left: 4px solid var(--accent, #a45b36); background: var(--soft, #eaf0f3); }
.site-shell-essentials { display: flex; gap: 12px; flex-wrap: wrap; }
.site-shell-essentials a { color: inherit; }
@media (max-width: 760px) {
  .essentials-grid, .essentials-form .form-row { grid-template-columns: 1fr; }
}
