:root {
  --bs-primary: #b38b2e; --bs-primary-rgb: 179,139,46;
  --bs-primary-bg-subtle: #f5ecd1; --bs-primary-border-subtle: #dfca8a; --bs-primary-text-emphasis: #654d14;
  --bs-link-color: #987522; --bs-link-hover-color: #715716;
  --brand-gradient: linear-gradient(135deg,#d5b75b,#9a741d);
}
[data-bs-theme="dark"] { --bs-primary:#d5b75b; --bs-primary-rgb:213,183,91; --bs-primary-bg-subtle:#3c3014; --bs-primary-border-subtle:#70591f; --bs-primary-text-emphasis:#ead794; }
.btn-primary { --bs-btn-bg:#b38b2e; --bs-btn-border-color:#b38b2e; --bs-btn-hover-bg:#987522; --bs-btn-hover-border-color:#987522; --bs-btn-active-bg:#80621d; --bs-btn-active-border-color:#80621d; }
.btn-outline-primary { --bs-btn-color:#987522; --bs-btn-border-color:#b38b2e; --bs-btn-hover-bg:#b38b2e; --bs-btn-hover-border-color:#b38b2e; }
body { min-height:100vh; background:var(--bs-tertiary-bg); }
.navbar { backdrop-filter:blur(12px); }
.alyer-logo-crop { position:relative; display:block; width:min(23rem,58vw); height:100px; overflow:hidden; background:transparent; }
.alyer-logo-crop img { position:absolute; display:block; width:26.25rem; height:auto; max-width:none; left:-1.25rem; top:-4.25rem; }
[data-bs-theme="light"] .alyer-logo-crop img { filter:invert(1); }
.step-icon { display:inline-grid; place-items:center; flex:0 0 auto; width:2.75rem; height:2.75rem; color:#fff; background:var(--brand-gradient); border-radius:.75rem; font-size:.8rem; font-weight:700; }
.hero { background:radial-gradient(circle at 90% 20%,rgba(179,139,46,.16),transparent 32%),var(--bs-body-bg); }
.card { border-radius:1rem; }
.summary-card { border-top:4px solid var(--bs-primary)!important; }
.letter-spacing { letter-spacing:.12em; }
.form-control,.form-select,.input-group-text,.btn { min-height:3rem; }
.form-check-input { cursor:pointer; }
.menu-option { display:flex; align-items:center; cursor:pointer; transition:border-color .15s,background-color .15s,transform .15s; }
.menu-option:hover { border-color:var(--bs-primary)!important; transform:translateY(-1px); }
.menu-option:has(.form-check-input:checked) { border-color:var(--bs-primary)!important; background:rgba(var(--bs-primary-rgb),.08); }
.menu-option .form-check-input { flex:0 0 auto; }
.table>:not(caption)>*>* { background:transparent; }
@media (min-width:992px) { .position-lg-sticky{position:sticky}.summary-column{top:9rem} }
@media (max-width:575.98px) { .alyer-logo-crop{width:min(17rem,62vw)} .alyer-logo-crop img{width:19.4rem;left:-.95rem;top:-3.1rem} .navbar .container{flex-wrap:nowrap}.form-switch label{display:none}.display-6{font-size:1.75rem} }
