@font-face{font-family:Vazirmatn;src:url('./assets/vazirmatn-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Vazirmatn;src:url('./assets/vazirmatn-extra-bold.ttf') format('truetype');font-weight:800;font-display:swap}
:root{--paper:#f4f6f2;--white:#fff;--ink:#152a23;--muted:#50675c;--line:#dce5db;--deep:#142f28;--lime:#d9ef9d;--soft:#eff5eb}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.8 Vazirmatn,Tahoma,sans-serif}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #80a982;outline-offset:3px}
[hidden]{display:none!important}
p,h1,h2,h3{margin:0}
h1,h2,h3,strong{font-weight:800}
.shell{width:min(1130px,calc(100% - 48px));margin-inline:auto}
.skip-link{position:absolute;top:-80px;background:var(--white);padding:10px;z-index:9}
.skip-link:focus{top:12px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px}
.wordmark{display:inline-flex;align-items:center;gap:12px;font-size:18px;font-weight:800;line-height:1.32}
.wordmark small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:4px}
.brand-mark{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;background:var(--deep);color:var(--lime)}
.brand-mark svg{width:26px;height:26px}
.topbar nav{display:flex;gap:27px;color:var(--muted);font-size:13px}
.topbar nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:4px}
.version{display:inline-flex;align-items:center;gap:7px;border:1px solid #d6dfd3;border-radius:50px;padding:5px 12px;font-size:11px;color:#435b4e;white-space:nowrap}
.version>span,.category-dot,.overline>span{width:7px;height:7px;border-radius:50%;display:inline-block;background:#83a568}
.hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;min-height:356px;padding:39px 50px 41px 25px;border-radius:30px;color:#f6fbf4;background:linear-gradient(118deg,#224940 1%,#132e2a 63%,#102b24 100%)}
.hero-copy{z-index:1}
.overline{display:flex;align-items:center;gap:9px;color:#cde49b;font-size:12px;margin-bottom:13px}
.overline>span{background:#d9ef9d;box-shadow:0 0 0 4px #d9ef9d22}
.hero h1{font-size:clamp(34px,4.2vw,53px);line-height:1.33;letter-spacing:-1.6px}
.hero h1 em{font-style:normal;color:var(--lime)}
.hero-copy>p:not(.overline){max-width:345px;color:#c9dbd2;font-size:14px;margin:19px 0 22px}
.hero-art{width:100%;max-height:360px;direction:ltr}
.button{border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:800;padding:11px 15px;font-size:13px;transition:background .15s,transform .15s}
.button:hover{transform:translateY(-1px)}
.button svg{width:17px;height:17px}
.hero-action{color:#193525;background:var(--lime)}
.hero-action:hover{background:#e6f7bc}
.services-section,.request-section{margin-top:38px;scroll-margin-top:16px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:15px}
.eyebrow{font-size:11px;font-weight:800;color:#57734b}
.section-head h2{font-size:26px;line-height:1.25;margin-top:4px}
.section-head>p{color:var(--muted);font-size:13px}
.services-grid{display:grid;grid-template-columns:3fr 1fr;gap:13px}
.service-group{background:#eaf0e6;border:1px solid var(--line);border-radius:20px;padding:12px}
.service-group h3{font-size:12px;display:flex;align-items:center;gap:7px;margin:0 5px 8px}
.vehicle-group{background:#e6efed}
.vehicle-group .category-dot{background:#5e988f}
.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.service-card{width:100%;border:1px solid transparent;border-radius:13px;min-height:81px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px;color:var(--ink);background:var(--white);text-align:right;font-size:14px}
.service-card:hover{border-color:#9eb794}
.service-card[aria-pressed=true]{border-color:#557a45;background:#f8fce9}
.service-icon{width:37px;height:37px;border-radius:10px;background:#e9f3df;display:grid;place-items:center;color:#47693e}
.vehicle-group .service-icon{background:#e2efeb;color:#37685c}
.service-icon svg{width:20px;height:20px}
.card-arrow{color:#50675c;font-size:16px}
.request-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:14px;align-items:start}
.form-panel{border:1px solid var(--line);border-radius:19px;background:var(--white);padding:21px}
.panel-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:15px}
.panel-head h3{font-size:16px}
.panel-head p{font-size:12px;color:var(--muted)}
.panel-number{display:grid;place-items:center;flex:none;width:35px;height:35px;border-radius:10px;background:var(--soft);color:#43603d;font-weight:800;font-size:13px}
.form-panel label{display:block;font-size:13px;margin-top:10px}
.required{color:#607b3e}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}
input,select,textarea{display:block;margin-top:5px;width:100%;padding:8px 10px;border:1px solid #ccd9cf;border-radius:9px;background:#fbfcfa;color:var(--ink)}
textarea{resize:vertical}
.dropzone{padding:13px;text-align:center;border:1px dashed #92b19b;border-radius:14px;background:#f7faf5}
.dropzone.dragging{border-color:#507b45;background:#eef6e3}
.dropzone>svg{width:30px;height:30px;color:#66856b;display:block;margin:0 auto 5px}
.file-button{background:#e8f1e5;color:#25482f}
.file-button:hover{background:#dfead9}
.dropzone p,.message{font-size:11px;color:var(--muted);margin:7px 0 0}
.message.error{color:#943d3c}
.file-list{list-style:none;padding:0;margin:5px 0}
.file-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:4px 0;font-size:12px}
.file-list span{overflow-wrap:anywhere}
.file-list button,.close-button{border:0;border-radius:7px;background:#eff3ee;color:var(--ink);padding:1px 8px}
.draft-note{margin:11px 0;padding:8px 11px;border-radius:9px;background:#f2f5ee;color:#4a6352;font-size:11px;line-height:1.75}
.draft-note strong{display:block;color:#264638}
.submit{width:100%;background:#234838;color:#fff}
.submit:hover{background:#315b46}
.footer{display:flex;align-items:center;gap:15px;padding-block:25px;color:var(--muted);font-size:12px}
.footer a{margin-inline-start:auto}
dialog{width:min(480px,calc(100% - 28px));max-height:85vh;padding:21px;border:1px solid var(--line);border-radius:20px;color:var(--ink);box-shadow:0 24px 60px #142f2840}
dialog::backdrop{background:#10241d9c}
.review-head{display:flex;justify-content:space-between;align-items:start}
.review-head h2{font-size:21px}
.close-button{font-size:24px;line-height:1.4}
dl{margin:12px 0}
dl>div{display:grid;grid-template-columns:104px 1fr;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}
dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
dt{font-weight:800}
@media(max-width:900px){.hero{padding-right:32px}.services-grid{grid-template-columns:2.3fr 1fr}.service-card{min-height:75px;padding:7px;font-size:12px}.service-icon{width:29px;height:29px}.service-icon svg{width:17px;height:17px}}
@media(max-width:650px){.shell{width:calc(100% - 24px)}.topbar{min-height:69px;gap:10px}.topbar nav{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:25px 20px 10px;border-radius:21px}.hero h1{font-size:35px;letter-spacing:-1px}.hero-art{max-height:205px;margin-top:4px}.hero-copy>p:not(.overline){margin:11px 0 15px}.services-section,.request-section{margin-top:25px}.section-head{align-items:start;flex-direction:column;gap:4px}.section-head h2{font-size:22px}.services-grid,.request-grid{grid-template-columns:1fr}.service-card{grid-template-columns:auto 1fr auto;min-height:59px;font-size:12px}.service-icon{width:28px;height:28px}.form-panel{padding:15px}}
@media(max-width:385px){.service-card{gap:5px}.property-grid .card-arrow{display:none}.fields{grid-template-columns:1fr}.hero h1{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}


.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.services-grid{grid-template-columns:2fr 1fr}
.request-grid{grid-template-columns:minmax(0,2fr) minmax(270px,1fr)}
.field-group{min-width:0;margin:18px 0 0;padding:4px 12px 12px;border:1px solid var(--line);border-radius:12px;background:#f8faf6}
.field-group legend{display:flex;align-items:center;gap:7px;padding:0 6px;color:#315343;font-size:13px;font-weight:800}
.field-group-number{display:grid;place-items:center;min-width:24px;height:24px;padding-inline:3px;border-radius:7px;background:#e8f0df;color:#46643e;font-size:10px}
.field-group .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 11px}
.plate-group .fields{direction:ltr}
.plate-group .request-field{direction:rtl}
.field-group label{min-width:0;margin-top:5px}
.field-label{display:block;line-height:1.55;overflow-wrap:anywhere}
.field-group input,.field-group select{margin-top:3px}
.field-hint{display:block;font-size:10px;color:#536b5e;margin-top:3px;line-height:1.55}
.wide-field{grid-column:1/-1}
.field-group .check-field{display:flex;align-items:center;gap:8px;grid-column:1/-1;min-height:38px}
.check-field input{width:16px;height:16px;padding:0;margin:0;accent-color:#305e46}
[aria-invalid=true]{border-color:#a2423e;background:#fff7f6}
.notes-panel,.special-files{margin:18px 0 12px}
.notes-panel>label{font-weight:700}
.optional{margin-inline-start:5px;font-size:10px;font-weight:400;color:var(--muted)}
.notes-actions,.action-row{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
.notes-actions .button{padding:8px 11px}
#dictate[aria-pressed=true]{background:#d8ebd6;color:#18472d}
.special-files{border:1px solid var(--line);border-radius:12px;background:#f7faf5;padding:7px 11px 11px}
.special-files label{margin-top:6px;font-weight:700}
.special-files small{display:block;color:var(--muted);font-size:10px;margin-top:4px}
.special-files input[type=file]{font-size:12px;padding:6px;width:100%}
#power-of-attorney-row{margin-top:10px;border-top:1px solid var(--line);padding-top:6px}
.remove-attorney{margin-top:5px;padding:5px 8px;font-size:11px}
#form-status:not(:empty){margin-bottom:8px}
#review[open]{display:flex;flex-direction:column;width:min(580px,calc(100% - 28px));max-height:min(790px,calc(100dvh - 28px))}
#review-details{overflow:auto;margin:8px -4px 0;padding:4px;scrollbar-gutter:stable}
#review-details section{background:#f7faf6;border:1px solid var(--line);border-radius:11px;padding:9px 12px;margin:0 0 8px}
#review-details h3{font-size:13px}
#review-details dl{margin:4px 0}
#review-details dl>div{grid-template-columns:minmax(105px,35%) 1fr;padding:3px 0}
#review-details dl>div:last-child{border:0}
.review-actions{border-top:1px solid var(--line);margin-top:8px;flex-shrink:0}
.action-row .submit{width:auto;flex:1}
.receipt-caption{font-size:13px;color:var(--muted);margin:12px 0 6px}
.receipt-code{display:block;padding:13px;border-radius:10px;background:#eaf4e6;color:#27563d;text-align:center;font-size:22px;letter-spacing:1px;overflow-wrap:anywhere}
.footer nav{display:flex;gap:14px;margin-inline-start:auto;flex-wrap:wrap}
.footer nav a{margin:0}
@media(min-width:980px) and (min-height:840px){.attachment-panel{position:sticky;top:16px}}
@media(max-width:750px){
  .request-grid{grid-template-columns:1fr}
  .attachment-panel{position:static}
}
@media(max-width:650px){
  .services-grid{grid-template-columns:1fr}
  .field-group{margin-top:15px;padding-inline:10px}
  .form-panel input:not([type=checkbox]),.form-panel select,.form-panel textarea{font-size:16px}
  .footer{align-items:flex-start;gap:7px;flex-wrap:wrap}
  .footer nav{margin-inline-start:0}
}
@media(max-width:465px){
  .field-group .fields{grid-template-columns:1fr}
  .review-head h2{font-size:18px}
  .action-row .button{padding:9px 10px;font-size:12px}
}
.install-services{display:none;position:relative}
.install-services .button{padding:7px 10px;font-size:11px;white-space:nowrap}
.install-services p{position:absolute;z-index:5;inset-inline-end:0;top:calc(100% + 8px);width:min(250px,76vw);padding:10px 13px;border:1px solid var(--line);border-radius:12px;background:var(--white);box-shadow:0 12px 28px #142f2826;font-size:12px}
@media(max-width:760px),(pointer:coarse){.install-services:not([hidden]){display:block}.topbar:has(.install-services:not([hidden])) .version{display:none}}
.plate-group .fields.car-plate{grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr) minmax(0,1fr) minmax(0,.8fr);gap:5px;align-items:end}
.car-plate .request-field{min-width:0;text-align:center}
.car-plate .field-label{white-space:nowrap;font-size:clamp(10px,2.8vw,13px)}
.car-plate input,.plate-trigger{width:100%;min-width:0;text-align:center;padding-inline:2px}
.plate-trigger{font:inherit;font-size:clamp(11px,3vw,14px);font-weight:700;height:43px;border:1px solid #95ab9d;border-radius:10px;color:#154638;background:#e9f4ee;cursor:pointer}
.plate-picker{width:min(420px,calc(100% - 28px));padding:18px;border:1px solid #a3b6aa;border-radius:18px;color:var(--ink);background:#f9fcf9}
.plate-picker::backdrop{background:#0d261fb0}
.plate-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.plate-picker-heading h2{font-size:19px;margin:0}
.plate-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.plate-choices button{min-height:44px;border:1px solid #bbcec1;border-radius:8px;background:white;color:#154638;font:inherit;font-weight:700;cursor:pointer}
.plate-choices button:hover,.plate-choices button[aria-pressed="true"]{background:#d6ecdf;border-color:#418164}
.plate-group .fields:not(.car-plate){grid-template-columns:1fr;max-width:280px;margin-inline:auto}
