.website-hero { padding: 4rem 0 2rem; max-width: 850px; }
.website-hero h1 { font-size: clamp(2.5rem, 6vw, 4.6rem); line-height: 1.05; letter-spacing: -.04em; margin: .65rem 0 1rem; }
.website-service p { line-height: 1.65; }
.website-packages { margin-top: 1.5rem; align-items: stretch; }
.website-package { padding: 1.5rem; display: flex; flex-direction: column; gap: .8rem; }
.website-package h3 { margin: 0; }
.website-package p { margin: 0; }
.website-package ul, .website-care ul { list-style: disc; padding-left: 1.2rem; line-height: 1.9; }
.website-package button { margin-top: auto; }
.website-package:has([aria-pressed="true"]) { outline: 2px solid #806079; }
.website-price { font-size: 2.2rem; font-weight: 650; }
.website-price span { font-size: .9rem; font-weight: 400; }
.website-note { margin-top: 1.4rem; max-width: 85ch; }
.website-care { padding: 1.75rem; background: #eaddee; border: 1px solid #d5bedc; border-radius: 18px; }
.website-checkout { max-width: 740px; }
.website-service form { display: grid; gap: 1rem; }
.website-service form input:not([type="checkbox"]), .website-service form select, .website-service form textarea { width: 100%; padding: .8rem; background: #fff; color: #161616; border: 1px solid #9a8790; border-radius: 6px; font: inherit; box-sizing: border-box; }
.website-service form textarea { min-height: 110px; resize: vertical; }
.website-service .website-check { display: flex; gap: .7rem; align-items: flex-start; line-height: 1.5; }
.website-check input { margin-top: .3rem; width: 18px; height: 18px; flex-shrink: 0; }
.website-service :focus-visible { outline: 3px solid #806079; outline-offset: 3px; }
.website-steps { list-style: decimal; padding-left: 1.5rem; display: grid; gap: 1rem; }
.website-steps h3 { font-weight: 600; }
.website-steps p { margin-top: .25rem; }
.website-brief { max-width: 740px; padding: 2.5rem 0 4rem; }
.website-brief fieldset { border: 0; padding: 0; margin: 1rem 0; display: grid; gap: 1rem; min-width: 0; }
.website-brief legend { font-weight: 600; font-size: 1.3rem; margin-bottom: 1rem; }
.website-brief label { display: grid; gap: .35rem; }
.website-brief small { line-height: 1.5; color: #65555b; }
.website-service [hidden] { display: none !important; }
.website-service [role="status"] { overflow-wrap: anywhere; }
@media (min-width: 760px) { .website-steps { grid-template-columns: 1fr 1fr; gap: 1.5rem 3rem; } }
