:root { font-family: Inter, ui-sans-serif, system-ui, sans-serif; color: #10251f; background: #eef3f0; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.card { width: min(440px, 100%); background: white; border: 1px solid #d8e2dd; border-radius: 20px; padding: 34px; box-shadow: 0 18px 55px rgba(10,45,35,.12); }
.brand { display: flex; align-items: center; min-height: 48px; }
.brand img { display: block; width: min(260px, 78%); height: auto; }
.brand-credit-public { margin: -3px 0 16px; color: #657d73; font-size: .76rem; font-weight: 700; letter-spacing: .025em; text-align: center; }
h1 { margin: 8px 0 8px; font-size: 2rem; }
p { color: #5a6e67; line-height: 1.5; }
label { display: grid; gap: 7px; margin-top: 18px; font-weight: 700; }
input { width: 100%; padding: 13px 14px; border: 1px solid #bdccc6; border-radius: 10px; font: inherit; }
button { width: 100%; margin-top: 20px; padding: 13px; border: 0; border-radius: 10px; color: white; background: #147b5c; font: inherit; font-weight: 750; cursor: pointer; }
a { color: #087856; }
.links { margin-top: 20px; text-align: center; }
.message { padding: 12px; border-radius: 9px; background: #e4f4ed; color: #155c45; }
.error { background: #fdebea; color: #9b2c27; }
[hidden] { display: none !important; }
.request-card { width: min(760px, 100%); }
.request-lead { margin-bottom: 20px; font-size: 1.08rem; }
.personalized-intro { padding: 14px 16px; border-radius: 10px; background: #e4f4ed; color: #155c45; font-weight: 700; }
.benefit-section, .start-section, .request-form-section { margin-top: 28px; }
.benefit-section h2, .start-section h2, .request-form-section h2 { margin: 0 0 14px; font-size: 1.35rem; }
.benefit-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.benefit-grid article { padding: 17px; border: 1px solid #d8e2dd; border-radius: 12px; background: #fbfdfc; }
.benefit-grid article strong { color: #123f31; }
.benefit-grid article p { margin: 7px 0 0; font-size: .94rem; }
.pricing-section { margin: 28px 0 16px; }
.pricing-section h2 { margin: 8px 0 2px; }
.package-badge { color: #096c50; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.package-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 18px; }
.package-choice { position: relative; display: block; margin: 0; cursor: pointer; }
.package-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.package-choice-body { display: grid; gap: 9px; height: 100%; padding: 20px; border: 2px solid #d8e2dd; border-radius: 16px; background: #fbfdfc; transition: border-color .15s,box-shadow .15s,transform .15s; }
.package-choice-body > strong { font-size: 1.25rem; }
.package-choice-body > em { min-height: 15px; color: #096c50; font-size: 10px; font-style: normal; font-weight: 800; letter-spacing: .06em; }
.package-choice input:checked + .package-choice-body { border-color: #147b5c; background: #f0f8f4; box-shadow: 0 7px 20px rgba(20,123,92,.13); transform: translateY(-2px); }
.package-choice input:focus-visible + .package-choice-body { outline: 3px solid rgba(20,123,92,.28); outline-offset: 2px; }
.package-price { margin: 4px 0; color: #096c50; font-size: 30px; font-weight: 800; }
.package-price small { font-size: 15px; font-weight: 600; }
.pricing-note { margin: 16px 0 0; font-size: .92rem; }
.request-notice { padding: 14px 16px; border-radius: 10px; background: #fff7df; color: #665019; }
.start-steps { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.start-steps li { display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: start; padding: 14px; border: 1px solid #d8e2dd; border-radius: 12px; }
.start-steps li > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: #147b5c; color: white; font-weight: 800; }
.start-steps p { margin: 4px 0 0; }
.requirements-box { margin-top: 18px; padding: 16px 18px; border-left: 4px solid #147b5c; border-radius: 8px; background: #f4f7f5; }
.requirements-box p { margin: 5px 0 0; }
.request-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0 18px; }
select, textarea { width: 100%; padding: 13px 14px; border: 1px solid #bdccc6; border-radius: 10px; font: inherit; }
.privacy-check { display: flex; align-items: flex-start; gap: 10px; font-weight: 500; }
.privacy-check input { width: 18px; margin-top: 3px; }
.website-field { position: absolute; left: -10000px; }
@media(max-width:760px){.package-grid{grid-template-columns:1fr}}
@media(max-width:620px){.request-grid,.benefit-grid{grid-template-columns:1fr}.card{padding:24px}h1{font-size:1.7rem}}
