.booking{background:#f5f3e9}
.booking-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}
.booking-heading h2{font:700 clamp(34px,4.3vw,52px)/1.1 var(--display);letter-spacing:-.055em;color:var(--forest);margin:16px 0 0}
.booking-heading h2 em{font-style:normal;color:#5c9566}
.booking-heading>p{max-width:350px;color:var(--muted);font-size:12px;line-height:1.8;margin:0 0 4px}
.booking-form{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:17px;align-items:start}
.booking-main{display:grid;gap:10px}
.required-legend{margin:0;padding:11px 14px;background:#edf3e7;border-left:3px solid #679265;color:#596d5d;font-size:10px;line-height:1.5}
.required-legend b,.field-label b,.consent-row b{color:#b24732;font-weight:700}
.booking-panel{background:#fffef9;padding:28px 30px;border:1px solid #e5e9df;border-radius:3px}
.form-section-title{display:flex;gap:13px;align-items:flex-start;margin-bottom:24px}
.form-section-title>span{width:29px;height:29px;border:1px solid #b4c9a9;border-radius:50%;display:grid;place-items:center;font-size:9px;color:#54835d;flex:none}
.form-section-title h3{font:700 17px var(--display);color:var(--forest);margin:1px 0 5px}
.form-section-title small{font-size:10px;color:#748278}
.booking-panel>label,.form-row>label{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:700;color:#496056;margin-bottom:16px}
.field-label{display:block;color:#496056!important}
.booking-panel input:not([type=checkbox]),.booking-panel select,.booking-panel textarea{width:100%;border:1px solid #dfe5dc;border-radius:2px;background:#fff;padding:12px 13px;font:11px var(--sans);color:#18382e;outline:none}
.booking-panel input:focus,.booking-panel select:focus,.booking-panel textarea:focus{border-color:#72a175;box-shadow:0 0 0 2px #72a17520}
.booking-panel input::placeholder,.booking-panel textarea::placeholder{color:#a5b0a7}
.form-row{display:grid;gap:16px}
.two-col{grid-template-columns:1fr 1fr}
.booking-panel label>small{font-size:9px;font-weight:400;color:#89958b;line-height:1.5}
.booking-panel textarea{resize:vertical;min-height:66px}
.material-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:17px}
.material-options label{display:flex;align-items:center;gap:8px;border:1px solid #e1e7dd;border-radius:2px;padding:11px;font-size:10px;color:#53675b;cursor:pointer}
.material-options input,.consent-row input{accent-color:#267650}
.material-options label:has(input:checked){background:#edf5e5;border-color:#a9c891;color:#244f39}
.other-material{max-width:400px}
.estimate-row{margin-top:8px}
.consent-row{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px!important;font-weight:400!important;line-height:1.6}
.consent-row input{margin:2px 0 0;flex:none}
.consent-row span{color:#69796f!important}
.consent-row a{color:#276548;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.optional-consent{margin-top:10px;color:#69796f}
.booking-aside{position:sticky;top:18px;background:var(--forest);color:white;padding:27px 24px;border-radius:3px}
.aside-icon{color:var(--lime);font-size:22px}
.booking-aside h3{font:700 17px var(--display);margin:12px 0 16px}
.booking-aside ol{margin:0;padding-left:17px;color:#d2dfd6;font-size:10px;line-height:1.7}
.booking-aside li{padding:0 0 11px 3px}
.schedule-note{border-top:1px solid #557366;margin-top:9px;padding-top:17px}
.schedule-note b{font-size:10px;color:var(--lime)}
.schedule-note p{font-size:10px;line-height:1.7;color:#d1ddd5;margin:7px 0 0}
.booking-submit{width:100%;justify-content:space-between;border:0;margin-top:20px;cursor:pointer}
.mobile-submit-bar{display:none}
.verify-guidance{display:flex;align-items:center;gap:13px;max-width:430px;margin-top:25px;padding:16px;background:#ffffff0d;border:1px solid #ffffff24;border-radius:3px}
.verify-guidance>span{width:39px;height:39px;display:grid;place-items:center;background:#c8e69a;color:#123f31;font-size:24px;flex:none}
.verify-guidance div{display:grid;gap:5px}
.verify-guidance strong{font:700 11px var(--display);color:#f4f8ef}
.verify-guidance small{font:400 9px/1.6 var(--sans);color:#b6cabe}
.website-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:900px){.booking-form{grid-template-columns:minmax(0,1fr) 250px}.booking-panel{padding:24px 20px}}
@media(max-width:650px){.booking-heading{display:block}.booking-heading h2{font-size:38px}.booking-heading>p{margin-top:20px}.booking-form{grid-template-columns:1fr;padding-bottom:76px}.booking-aside{position:static;grid-row:1}.booking-aside .booking-submit{display:none}.mobile-submit-bar{display:block;position:fixed;z-index:20;left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fffef9f2;border-top:1px solid #dfe5dc;box-shadow:0 -8px 25px #193c2914;backdrop-filter:blur(12px)}.mobile-submit-bar .booking-submit{margin:0;min-height:48px;box-shadow:0 4px 12px #0b302633}.booking-panel{padding:23px 17px}.two-col{grid-template-columns:1fr;gap:0}.material-options{grid-template-columns:1fr 1fr}.booking-heading{margin-bottom:27px}}
.verification-body,.result-body{min-height:100vh;background:var(--cream);display:grid;place-items:center;padding:24px}
.verification-card,.result-card{width:min(100%,650px);background:#fffef9;padding:38px 42px;border:1px solid #e4e9df;box-shadow:0 20px 70px #173a2b0e}
.verification-brand{margin-bottom:36px}
.verification-status{display:inline-flex;align-items:center;gap:9px;padding:9px 12px;border-radius:2px;font-size:10px;font-weight:700;letter-spacing:.04em}
.verification-status>span,.result-mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px}
.status-draft{background:#fff3d9;color:#75510f}.status-draft>span{background:#f2d998}
.status-active{background:#e2f1df;color:#2c7047}.status-active>span{background:#c4e2be}
.status-cancelled,.status-replaced,.status-invalid,.status-unavailable{background:#f8e4df;color:#844434}.status-cancelled>span,.status-replaced>span,.status-invalid>span,.status-unavailable>span{background:#eecac0}
.verification-card h1,.result-card h1{font:700 clamp(27px,4vw,38px)/1.2 var(--display);letter-spacing:-.045em;color:var(--forest);margin:20px 0 12px}
.verification-card>p,.result-card>p{font-size:12px;line-height:1.8;color:#64756a;max-width:500px}
.verification-number{margin:25px 0;padding:17px 18px;background:#f1f5ec;font-size:10px;color:#758579;display:flex;flex-direction:column;gap:6px}
.verification-number strong{font:700 16px var(--display);color:var(--forest)}
.verification-details{margin:25px 0 30px;border-top:1px solid #e1e7dd}
.verification-details>div{display:grid;grid-template-columns:1fr 1.5fr;gap:18px;padding:13px 0;border-bottom:1px solid #e1e7dd}
.verification-details dt{font-size:10px;color:#76857b}.verification-details dd{font-size:11px;font-weight:700;color:#254b39;margin:0}
.verification-card h2{font:700 16px var(--display);color:var(--forest);margin:27px 0 12px}
.verified-items{border:1px solid #e0e6dc}.verified-item{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;padding:12px;font-size:10px;border-top:1px solid #e0e6dc;color:#53675b}.verified-item:first-child{border-top:0}.verified-item-head{background:var(--forest);color:white;font-weight:700}
.verification-home{display:inline-flex;gap:15px;margin-top:28px;padding-bottom:7px;border-bottom:1px solid #a9bba8;color:var(--forest);font-size:10px;font-weight:700}.verification-home span{color:#5c9566}
.result-card{width:min(100%,540px);text-align:center}.result-card .eyebrow{justify-content:center;color:#4f8b65}.result-card h1{margin-top:14px}.result-card>p{margin:0 auto 20px}.result-mark{width:42px;height:42px;margin:0 auto 20px;background:#d9edc7;color:var(--forest);font-size:22px}
.request-code{margin:22px auto;background:#f1f5ec;padding:15px;display:flex;flex-direction:column;gap:6px;max-width:260px}.request-code small{font-size:8px;color:#748278;letter-spacing:.1em}.request-code strong{font:700 15px var(--display);color:var(--forest)}
.policy-body{min-height:100vh;background:var(--cream)}
.policy-card{width:min(100% - 40px,850px);margin:54px auto 72px;padding:clamp(26px,5vw,58px);background:#fffef9;border:1px solid #e4e9df;box-shadow:0 20px 70px #173a2b0e}
.policy-card h1{font:700 clamp(32px,5vw,52px)/1.12 var(--display);letter-spacing:-.05em;color:var(--forest);margin:20px 0}
.policy-card h2{font:700 19px var(--display);color:var(--forest);margin:34px 0 10px}
.policy-card p{font-size:13px;line-height:1.85;color:#5d7065;max-width:700px}
.policy-card a:not(.verification-home){color:#276548;text-decoration:underline;text-underline-offset:3px}
.policy-card .policy-status{padding:15px 17px;background:#fff3dc;border-left:3px solid #c2943e;color:#6e5a33;font-size:11px}
.privacy-request-form{display:grid;gap:14px;margin-top:24px}
.privacy-request-form>label,.privacy-request-form .form-row>label{display:flex;flex-direction:column;gap:7px;color:#496056;font-size:11px;font-weight:700}
.privacy-request-form label>b{color:#b24732}
.privacy-request-form input,.privacy-request-form select,.privacy-request-form textarea{width:100%;border:1px solid #dfe5dc;border-radius:2px;background:#fff;padding:12px 13px;font:12px var(--sans);color:#18382e;outline:none}
.privacy-request-form input:focus,.privacy-request-form select:focus,.privacy-request-form textarea:focus{border-color:#72a175;box-shadow:0 0 0 2px #72a17520}
.privacy-request-form textarea{resize:vertical}
.privacy-request-form button{justify-self:start;border:0;cursor:pointer}
.privacy-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.policy-date{margin-top:34px;font-size:10px!important;color:#8a978d!important}
@media(max-width:650px){.policy-card{margin:25px auto 40px}.site-footer{gap:15px;flex-wrap:wrap}}
@media(max-width:650px){.verification-card,.result-card{padding:28px 21px}.verification-details>div{grid-template-columns:1fr;gap:5px}.verified-item{grid-template-columns:1.2fr 1fr 1fr;padding:10px 8px;font-size:9px}}
