[hidden]{display:none!important}
.requirement-page{overflow-x:clip}
.requirement-wizard{grid-template-columns:280px minmax(0,1fr);align-items:stretch;max-width:1180px}
.requirement-wizard .wizard-steps{min-width:0;padding:34px 28px}
.requirement-wizard .wizard-step{width:100%;cursor:pointer;border-radius:10px;padding:9px 6px}
.requirement-wizard .wizard-step:not(:disabled):hover{background:rgba(255,255,255,.05)}
.requirement-wizard .wizard-step:disabled{cursor:default}
.requirement-wizard .wizard-help strong{display:block;margin:7px 0 4px;color:#fff;font-size:11px;line-height:1.5}
.requirement-wizard .wizard-help p{margin:0}
.requirement-form{min-width:0;padding:42px clamp(25px,4vw,58px);min-height:710px}
.requirement-form .panel-heading p{max-width:720px;margin:10px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.requirement-mobile-progress{display:none}
.requirement-location-card{min-width:0;margin:0 0 18px;padding:20px;border:1px solid var(--line);border-radius:15px;background:#fcfcfb}
.requirement-location-card legend{display:flex;width:100%;align-items:center;justify-content:space-between;padding:0 4px;color:var(--navy);font-size:12px;font-weight:700}
.requirement-location-card label>span,.requirement-taxonomy label>span{font-size:9px;color:var(--muted);font-weight:500}
.text-action{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--gold);padding:4px;font:700 10px var(--font-body);cursor:pointer}
.text-action.danger{color:#a34c4c}
.location-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:4px}
.location-actions small{color:var(--muted);font-size:10px}
.location-actions .button:disabled{opacity:.45;cursor:not-allowed}
.property-type-field{min-width:0}
.requirement-type-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.requirement-type-card span{height:100%;padding:12px 8px;text-align:center}
.requirement-type-card em{font-style:normal;line-height:1.35}
.type-toggle{margin:14px 0 22px}
.requirement-taxonomy{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.requirement-taxonomy label small{font-weight:500;line-height:1.45;color:var(--muted)}
.requirement-condition-grid>label{animation:conditionFieldIn .2s ease both}
.condition-not-applicable{margin:0;padding:18px;border:1px dashed rgba(189,153,96,.5);border-radius:12px;background:#fcfaf6;color:var(--muted);font-size:10px;line-height:1.6}
@keyframes conditionFieldIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.dynamic-preferences{margin-top:30px}
.dynamic-preferences>h3{margin:0 0 15px;color:var(--navy);font-size:14px}
.dynamic-attribute-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dynamic-attribute{min-width:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}
.attribute-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--navy);font-size:11px}
.attribute-title small{color:var(--gold);font-weight:700}
.dynamic-attribute input,.dynamic-attribute select,.dynamic-attribute textarea,.conditional-finance input{width:100%;min-height:45px;border:1px solid #dfe3e5;border-radius:9px;background:#fff;padding:10px 12px;color:var(--ink)}
.attribute-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.attribute-importance{display:grid;grid-template-columns:auto minmax(100px,1fr);align-items:center;gap:10px;margin-top:10px;color:var(--muted);font-size:9px}
.attribute-importance select{min-height:36px;padding:6px 9px}
.boolean-choice{display:flex;align-items:center;gap:9px;color:var(--ink);font-size:11px}
.boolean-choice input{width:18px;min-height:18px;accent-color:var(--gold)}
.dynamic-attribute select[multiple]{min-height:100px}
.conditional-finance{margin-top:18px;padding:18px;border:1px solid rgba(189,153,96,.32);border-radius:13px;background:#fcfaf6}
fieldset.conditional-finance legend{padding:0 7px;color:var(--navy);font-size:11px;font-weight:700}
.conditional-finance>label{display:grid;gap:8px;color:var(--navy);font-size:11px;font-weight:700}
.inline-options{display:flex;gap:24px;align-items:center}
.inline-options label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink)}
.inline-options input{width:18px;min-height:18px;accent-color:var(--gold)}
.requirement-review{display:grid;gap:14px}
.review-title{display:flex;align-items:center;gap:13px;padding:18px 20px;border-radius:13px;background:var(--navy);color:#fff}
.review-title>span{display:grid;place-items:center;width:39px;height:39px;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:var(--gold)}
.review-title small{color:var(--gold);letter-spacing:.15em;font-size:8px}.review-title h3{margin:3px 0 0;font-size:16px}
.review-section{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.review-section header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#faf9f6}
.review-section h4{margin:0;color:var(--navy);font-size:11px}
.review-section button{border:0;background:transparent;color:var(--gold);font:700 9px var(--font-body);cursor:pointer}
.review-section dl{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);margin:0;padding:7px 16px 12px}
.review-section dt,.review-section dd{margin:0;padding:7px 0;border-bottom:1px solid #f0f1f1;font-size:10px;line-height:1.45}
.review-section dt{color:var(--muted)}.review-section dd{color:var(--ink);font-weight:600;overflow-wrap:anywhere}
.review-section dt:last-of-type,.review-section dd:last-of-type{border-bottom:0}
.requirement-wizard .wizard-nav{gap:12px;align-items:center}
.requirement-wizard .wizard-nav>span{flex:1}
@media(max-width:960px){.requirement-wizard{grid-template-columns:220px minmax(0,1fr)}.requirement-wizard .wizard-steps{padding:28px 20px}.requirement-form{padding:35px 28px}.requirement-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.requirement-page{padding-top:45px}.requirement-wizard{display:block}.requirement-wizard .wizard-steps{display:flex;position:relative;overflow:visible;flex-direction:row;justify-content:center;gap:7px;padding:16px}.requirement-wizard .wizard-step{width:auto;padding:0}.requirement-wizard .wizard-step b,.requirement-wizard .wizard-help{display:none}.requirement-wizard .wizard-step span{width:30px;height:30px}.requirement-form{min-height:0;padding:26px 20px 30px}.requirement-mobile-progress{display:flex;align-items:center;gap:12px;margin-bottom:20px;color:var(--gold);font-size:9px;font-weight:800}.requirement-mobile-progress>div{height:3px;flex:1;background:#ece8df;border-radius:99px;overflow:hidden}.requirement-mobile-progress i{display:block;height:100%;background:var(--gold);transition:width .2s}.requirement-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dynamic-attribute-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.requirement-page .request-head h1{font-size:32px}.requirement-wizard{border-radius:18px}.requirement-location-card{padding:15px}.requirement-location-card legend{gap:10px}.requirement-type-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.requirement-type-card span{min-height:78px}.attribute-range{grid-template-columns:1fr}.review-section dl{grid-template-columns:1fr}.review-section dt{padding-bottom:2px;border-bottom:0}.review-section dd{padding-top:2px}.requirement-wizard .wizard-nav{position:sticky;bottom:0;z-index:3;margin-inline:-20px;padding:15px 20px;background:rgba(255,255,255,.96);border-top:1px solid var(--line)}.requirement-wizard .wizard-nav .button{min-width:0;padding-inline:13px;font-size:10px}}
.requirement-admin-section{margin-bottom:20px}
.admin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.admin-section-head h2{margin:0 0 5px}.admin-section-head p{margin:0;color:var(--muted);font-size:10px}.admin-section-head>b{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:var(--cream);color:var(--gold);font-size:10px}
.requirement-type-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.requirement-admin-type{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;border:1px solid var(--line);border-radius:11px}.requirement-admin-type>span{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--cream);color:var(--gold)}.requirement-admin-type>div{display:grid;min-width:0}.requirement-admin-type small,.requirement-admin-type em{color:var(--muted);font-size:8px;font-style:normal}.requirement-admin-type strong{overflow:hidden;text-overflow:ellipsis;color:var(--navy);font-size:11px}.is-inactive{opacity:.56}
.requirement-create{margin-top:17px;border-top:1px solid var(--line);padding-top:14px}.requirement-create summary{display:inline-flex;align-items:center;gap:7px;color:var(--gold);font-size:10px;font-weight:700;cursor:pointer}.admin-inline-create{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-top:14px}.admin-inline-create label,.requirement-catalog-form label,.attribute-admin-list label{display:grid;gap:5px;color:var(--muted);font-size:8px;font-weight:700}.admin-inline-create input,.admin-inline-create select,.requirement-catalog-form input,.requirement-catalog-form select,.attribute-admin-list input,.attribute-admin-list select{width:100%;min-height:39px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.admin-inline-create .admin-check,.attribute-admin-list .admin-check{display:flex;align-items:center;gap:7px}.admin-inline-create .admin-check input,.attribute-admin-list .admin-check input{width:16px;min-height:16px}
.requirement-catalog-list{display:grid;gap:8px}.requirement-catalog-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:9px}.requirement-catalog-form{display:grid;grid-template-columns:100px repeat(3,minmax(120px,1fr)) repeat(4,minmax(80px,.6fr));gap:7px;align-items:end}.catalog-code{align-self:center;overflow:hidden;text-overflow:ellipsis;color:var(--gold);font-size:9px;font-weight:700}.requirement-catalog-form button{min-height:39px;border:1px solid var(--navy);border-radius:8px;background:var(--navy);color:#fff;font:700 9px var(--font-body);cursor:pointer}
.attribute-options-admin{margin:-3px 8px 7px;padding:10px 13px;border-left:2px solid var(--gold);background:#faf9f6}.attribute-options-admin summary{color:var(--navy);font-size:9px;font-weight:700;cursor:pointer}.attribute-option-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:8px}.attribute-option-row>form:first-child{display:grid;grid-template-columns:90px repeat(3,minmax(100px,1fr)) 70px auto;gap:6px}.attribute-option-row input{min-width:0;min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:7px}.attribute-option-row span{align-self:center;color:var(--gold);font-size:8px}.attribute-option-row button{min-height:36px}.attribute-option-row.new{grid-template-columns:90px repeat(3,minmax(100px,1fr)) 70px auto}
.requirement-type-config{display:grid;gap:18px}.requirement-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mapping-checks{display:grid;gap:7px;max-height:380px;overflow:auto}.mapping-checks label{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;font-size:9px}.mapping-checks input{accent-color:var(--gold)}.mapping-checks small{color:var(--muted)}
.attribute-admin-list{display:grid;gap:8px}.attribute-admin-list article{display:grid;grid-template-columns:minmax(220px,1fr) 150px 95px 100px;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:9px}.mapping-main{display:flex!important;align-items:center;gap:8px}.mapping-main input{width:17px;min-height:17px;accent-color:var(--gold)}.mapping-main span{display:grid}.mapping-main strong{color:var(--navy);font-size:10px}.mapping-main small{color:var(--muted);font-size:8px}.admin-config-actions{display:flex;justify-content:flex-end}.safe-delete-form{display:flex;align-items:center;gap:12px;margin-top:18px}.safe-delete-form small{color:var(--muted);font-size:9px}
@media(max-width:1100px){.requirement-catalog-form{grid-template-columns:100px repeat(3,minmax(110px,1fr));}.requirement-catalog-form label:nth-last-of-type(-n+4),.requirement-catalog-form button{grid-row:2}.attribute-admin-list article{grid-template-columns:minmax(180px,1fr) 140px 90px}}
@media(max-width:800px){.requirement-type-admin-grid,.requirement-config-grid{grid-template-columns:1fr}.admin-inline-create{grid-template-columns:1fr 1fr}.requirement-catalog-row{grid-template-columns:1fr}.requirement-catalog-form{grid-template-columns:1fr 1fr}.requirement-catalog-form>*{grid-row:auto!important}.attribute-admin-list article{grid-template-columns:1fr 1fr}.mapping-main{grid-column:1/-1}}
@media(max-width:800px){.attribute-option-row,.attribute-option-row>form:first-child,.attribute-option-row.new{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.admin-inline-create,.requirement-catalog-form,.attribute-admin-list article,.attribute-option-row,.attribute-option-row>form:first-child,.attribute-option-row.new{grid-template-columns:1fr}.mapping-main{grid-column:auto}.requirement-admin-type{grid-template-columns:36px 1fr}.requirement-admin-type .city-area-link{grid-column:1/-1}.safe-delete-form{align-items:flex-start;flex-direction:column}}
.structured-request{overflow:hidden}.structured-title{display:flex;align-items:center;gap:12px;margin:-1px -1px 18px;padding:17px;background:var(--navy);color:#fff;border-radius:11px}.structured-title>.icon{color:var(--gold)}.structured-title small{color:var(--gold);font-size:8px;letter-spacing:.12em}.structured-title h2{margin:3px 0 0;color:#fff;font-size:17px}.structured-request>section{padding:15px 0;border-bottom:1px solid var(--line)}.structured-request>section:last-child{border-bottom:0}.structured-request h3{margin:0 0 10px;color:var(--gold);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.structured-request dl{display:grid;gap:0;margin:0}.structured-request dl>div{display:grid;grid-template-columns:minmax(130px,.42fr) minmax(0,1fr);gap:12px;padding:7px 0}.structured-request dt{color:var(--muted);font-size:9px}.structured-request dd{margin:0;color:var(--ink);font-size:10px;font-weight:600;overflow-wrap:anywhere}.structured-location{display:grid;grid-template-columns:minmax(130px,.42fr) minmax(0,1fr);gap:12px;padding:6px 0}.structured-location span{color:var(--muted);font-size:9px}.structured-location strong{font-size:10px}.structured-criteria{display:grid;gap:7px;margin:0;padding:0;list-style:none}.structured-criteria li{display:grid;grid-template-columns:18px minmax(120px,.45fr) minmax(0,1fr);gap:7px;align-items:center}.structured-criteria li>span{color:var(--gold)}.structured-criteria strong{font-size:10px}.structured-criteria em{font-size:9px;font-style:normal;color:var(--muted)}
.customer-structured-request{margin-bottom:18px;padding:14px;border:1px solid rgba(189,153,96,.35);border-radius:12px;background:#fcfaf6}.customer-structured-request dl{margin:0}.customer-structured-request dl>div{display:grid;grid-template-columns:minmax(130px,.4fr) minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:1px solid rgba(12,32,48,.07)}.customer-structured-request dl>div:last-child{border-bottom:0}.customer-structured-request dt,.customer-structured-request dd{margin:0;font-size:9px}.customer-structured-request dt{color:var(--muted)}.customer-structured-request dd{color:var(--navy);font-weight:700}
@media(max-width:520px){.structured-request dl>div,.structured-location{grid-template-columns:1fr;gap:3px}.structured-criteria li{grid-template-columns:18px 1fr}.structured-criteria em{grid-column:2}}

/* City-first location and search-service experience */
.smart-location-picker{display:grid;gap:20px}.location-command{position:relative;display:flex;align-items:center;gap:10px;min-height:58px;border:1px solid rgba(189,153,96,.48);border-radius:14px;background:#fff;padding:0 16px;box-shadow:0 12px 34px rgba(12,32,48,.06)}.location-command>.icon{width:21px;height:21px;color:var(--gold)}.location-command input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:13px;color:var(--navy)}.location-command kbd{border:1px solid var(--line);border-radius:6px;background:var(--cream);padding:4px 7px;color:var(--muted);font:700 8px var(--font-body)}
.location-search-results{position:relative;z-index:2;display:grid;max-height:330px;overflow:auto;margin-top:-14px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:6px;box-shadow:0 18px 45px rgba(12,32,48,.12)}.location-result-row{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;border:0;border-bottom:1px solid #f0f0ed;background:#fff;padding:12px;text-align:left;cursor:pointer}.location-result-row:last-child{border-bottom:0}.location-result-row:hover,.location-result-row:focus-visible{background:var(--cream)}.location-result-row span{display:grid;gap:3px}.location-result-row strong{color:var(--navy);font-size:11px}.location-result-row small{color:var(--muted);font-size:9px}.location-result-row em{color:var(--gold);font-size:8px;font-style:normal;text-transform:uppercase;letter-spacing:.08em}.location-empty,.location-loading{display:block;margin:0;padding:14px;color:var(--muted);font-size:10px}
.location-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;border-radius:12px;background:#f1f0ec}.location-mode-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:700 10px var(--font-body);cursor:pointer}.location-mode-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(12,32,48,.08)}.location-mode-tabs .icon{width:17px;height:17px;color:var(--gold)}
.location-mode-panel{display:grid;gap:16px}.location-subheading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.location-subheading h3,.location-subheading h4{margin:0;color:var(--navy);font-size:13px}.location-subheading p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.city-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.city-choice-card{display:flex;align-items:center;gap:10px;min-height:67px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px;text-align:left;cursor:pointer;transition:border-color .2s,transform .2s,box-shadow .2s}.city-choice-card:hover,.city-choice-card:focus-visible{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 10px 24px rgba(12,32,48,.07)}.city-choice-card>span:first-child{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:50%;background:var(--cream);color:var(--gold);font-size:15px}.city-choice-card>span:last-child{display:grid;min-width:0}.city-choice-card strong{overflow:hidden;text-overflow:ellipsis;color:var(--navy);font-size:11px}.city-choice-card small{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:8px}
.city-refinement{display:grid;gap:15px;border:1px solid rgba(189,153,96,.34);border-radius:14px;background:#fcfaf6;padding:18px}.city-refinement>header{display:flex;align-items:center;justify-content:space-between}.city-refinement>header small{color:var(--gold);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.city-refinement>header h3{margin:3px 0 0;color:var(--navy);font-size:18px}.whole-area-choice{display:flex;align-items:center;gap:12px;width:100%;min-height:61px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:12px 14px;text-align:left;cursor:pointer}.whole-area-choice:disabled{opacity:.5;cursor:not-allowed}.whole-area-choice>.icon{width:22px;color:var(--gold)}.whole-area-choice span{display:grid;gap:2px}.whole-area-choice strong{color:var(--navy);font-size:10px}.whole-area-choice small{color:var(--muted);font-size:8px;line-height:1.4}.city-refinement [data-area-groups]{display:grid;gap:11px}.city-refinement [data-area-groups]>h4{margin:0;color:var(--navy);font-size:10px}.area-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.area-choice{display:grid;gap:3px;min-height:54px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:10px;text-align:left;cursor:pointer}.area-choice:hover{border-color:var(--gold)}.area-choice strong{color:var(--navy);font-size:9px}.area-choice small{color:var(--muted);font-size:7px}.neighborhood-choice{display:grid;gap:10px}
.rural-location-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:end}.rural-location-grid label,.settlement-search-label{display:grid;gap:7px;color:var(--navy);font-size:10px;font-weight:700}.rural-location-grid select,.rural-location-grid input,.settlement-search-label input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 12px;color:var(--ink)}.rural-location-grid select[size]{min-height:170px;padding:5px}.rural-location-grid select[size] option{padding:8px;border-radius:6px}.settlement-results{display:grid;max-height:300px;overflow:auto;border-radius:11px;background:#fff}
.selected-location-tray{display:grid;gap:11px;border-top:1px solid var(--line);padding-top:18px}.selected-location-tray [data-location-count]{border-radius:99px;background:var(--navy);padding:5px 9px;color:#fff;font-size:8px;font-weight:700}.selected-location-chips{display:flex;flex-wrap:wrap;gap:8px}.selected-location-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 9px;align-items:center;max-width:100%;border:1px solid rgba(189,153,96,.38);border-radius:10px;background:#fff;padding:8px 10px;text-align:left;cursor:pointer}.selected-location-chip small{grid-column:1;color:var(--gold);font-size:7px;text-transform:uppercase}.selected-location-chip strong{grid-column:1;overflow:hidden;text-overflow:ellipsis;color:var(--navy);font-size:9px}.selected-location-chip>span{grid-column:2;grid-row:1/3;color:#a34c4c;font-size:17px}.field-error{margin:0;color:#a34c4c;font-size:9px}
.search-service-choice{margin:0 0 18px;padding:0;border:0}.search-service-choice>legend{margin-bottom:5px;color:var(--navy);font-family:var(--font-display);font-size:21px;font-weight:700}.search-service-choice>p{margin:0 0 13px;color:var(--muted);font-size:10px}.service-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.service-choice-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:15px;cursor:pointer}.service-choice-card:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 2px rgba(189,153,96,.13)}.service-choice-card input{position:absolute;width:1px;height:1px;opacity:0}.service-choice-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--cream);color:var(--gold)}.service-choice-card>span:last-child{display:grid;gap:4px}.service-choice-card small{color:var(--gold);font-size:7px;text-transform:uppercase;letter-spacing:.1em}.service-choice-card strong{color:var(--navy);font-size:11px}.service-choice-card em{color:var(--muted);font-size:8px;font-style:normal;line-height:1.55}.service-choice-card b{color:#8a692e;font-size:8px;line-height:1.45}
@media(max-width:780px){.city-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.area-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-choice-grid,.rural-location-grid{grid-template-columns:1fr}}
@media(max-width:520px){.location-command kbd{display:none}.location-command{min-height:54px}.city-choice-grid{grid-template-columns:1fr 1fr}.city-choice-card{min-height:61px;padding:9px}.area-choice-grid{grid-template-columns:1fr}.location-subheading{align-items:flex-start}.selected-location-chip{width:100%}}

/* Buyer wizard readability and visual polish */
.requirement-page{background:linear-gradient(180deg,#f7f3eb 0,#fbfaf7 44%,#f4f0e8 100%);padding-block:78px 120px}
.requirement-page .request-head{max-width:860px}
.requirement-page .request-head .eyebrow{font-size:12px;letter-spacing:.16em}
.requirement-page .request-head h1{margin-block:20px 14px;font-size:clamp(39px,4vw,54px);line-height:1.16}
.requirement-page .request-head>p{max-width:720px;margin-inline:auto;color:#52616d;font-size:16px;line-height:1.75}
.requirement-wizard{grid-template-columns:300px minmax(0,1fr);max-width:1240px;margin-top:52px;border:1px solid rgba(12,32,48,.07);border-radius:28px;box-shadow:0 28px 75px rgba(12,32,48,.13)}
.requirement-wizard .wizard-steps{padding:40px 30px;background:linear-gradient(165deg,#0c2030 0%,#142f43 100%)}
.requirement-wizard .wizard-step{gap:15px;min-height:54px;padding:8px 10px;color:#aebbc5;font-size:14px;line-height:1.35;transition:background-color .2s,color .2s,transform .2s}
.requirement-wizard .wizard-step:not(:disabled):hover{background:rgba(255,255,255,.075);transform:translateX(2px)}
.requirement-wizard .wizard-step span{width:38px;height:38px;flex:0 0 auto;font-size:12px}
.requirement-wizard .wizard-step b{font-weight:650}
.requirement-wizard .wizard-help{padding-top:28px}
.requirement-wizard .wizard-help>span{font-size:32px}
.requirement-wizard .wizard-help strong{margin:10px 0 7px;font-size:14px;line-height:1.5}
.requirement-wizard .wizard-help p{color:#b5c0c8;font-size:12px;line-height:1.7}
.requirement-form{padding:50px clamp(34px,4.4vw,66px);min-height:760px}
.requirement-form .panel-heading{margin-bottom:34px;padding-bottom:24px}
.requirement-form .panel-heading small{font-size:11px;font-weight:800;letter-spacing:.2em}
.requirement-form .panel-heading h2{margin-top:10px;font-size:clamp(31px,3vw,39px);line-height:1.25}
.requirement-form .panel-heading p{max-width:760px;margin-top:12px;color:#596875;font-size:15px;line-height:1.75}
.requirement-form .choice-field legend{margin-bottom:14px;color:var(--navy);font-size:15px;line-height:1.5}
.requirement-page .form-grid{gap:24px 20px}
.requirement-page .form-grid label{gap:9px;color:#263d4e;font-size:14px;line-height:1.45}
.requirement-page .form-grid input,.requirement-page .form-grid select,.requirement-page .form-grid textarea{min-height:54px;border-color:#d7dde0;border-radius:12px;padding:13px 15px;font-size:15px;line-height:1.45}
.requirement-page .form-grid textarea{min-height:120px}
.requirement-page .form-grid input:hover,.requirement-page .form-grid select:hover,.requirement-page .form-grid textarea:hover{border-color:#bdc5ca}
.requirement-page .form-grid input:focus,.requirement-page .form-grid select:focus,.requirement-page .form-grid textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(189,153,96,.14)}
.requirement-type-grid{gap:13px}
.requirement-type-card span{min-height:104px;border-radius:14px;padding:16px 10px;background:#fff;font-size:14px;line-height:1.45;box-shadow:0 5px 18px rgba(12,32,48,.025)}
.requirement-type-card em{font-size:14px;font-weight:650;line-height:1.45}
.requirement-type-card .icon{width:29px;height:29px}
.requirement-type-card:hover span{border-color:rgba(189,153,96,.72);transform:translateY(-2px);box-shadow:0 12px 28px rgba(12,32,48,.08)}
.requirement-type-card input:focus-visible+span{outline:3px solid rgba(189,153,96,.32);outline-offset:3px}
.requirement-type-card input:checked+span{background:linear-gradient(180deg,#fffdf8,#f8f1e5);box-shadow:0 0 0 3px rgba(189,153,96,.16),0 12px 28px rgba(12,32,48,.07)}
.text-action{gap:7px;padding:7px 5px;font-size:13px;line-height:1.4}
.requirement-taxonomy{margin-top:28px;padding-top:28px}
.requirement-taxonomy label small{font-size:12px}
.condition-not-applicable{padding:21px;border-radius:14px;font-size:14px;line-height:1.7}
.dynamic-preferences{margin-top:34px}
.dynamic-preferences>h3{margin-bottom:18px;font-size:18px}
.dynamic-attribute-grid{gap:16px}
.dynamic-attribute{padding:19px;border-radius:14px;box-shadow:0 5px 18px rgba(12,32,48,.025)}
.attribute-title{margin-bottom:13px;font-size:14px;line-height:1.45}
.attribute-title small{font-size:12px}
.dynamic-attribute input,.dynamic-attribute select,.dynamic-attribute textarea,.conditional-finance input{min-height:50px;border-radius:11px;padding:12px 14px;font-size:15px}
.attribute-importance{font-size:12px}
.attribute-importance select{font-size:13px}
.boolean-choice{font-size:14px}
.conditional-finance{margin-top:22px;padding:21px;border-radius:15px}
fieldset.conditional-finance legend,.conditional-finance>label{font-size:14px}
.inline-options{gap:28px;flex-wrap:wrap}
.inline-options label{font-size:14px;line-height:1.45}
.inline-options input{width:20px;min-height:20px}
.location-command{min-height:64px;border-radius:16px;padding-inline:19px}
.location-command input{font-size:16px}
.location-command kbd{font-size:10px}
.location-result-row{padding:15px 14px}
.location-result-row strong{font-size:14px}
.location-result-row small{font-size:12px;line-height:1.5}
.location-result-row em{font-size:10px}
.location-empty,.location-loading{font-size:13px}
.location-mode-tabs{padding:6px;border-radius:14px}
.location-mode-tabs button{min-height:50px;border-radius:10px;font-size:13px}
.location-subheading h3,.location-subheading h4{font-size:16px;line-height:1.4}
.location-subheading p{font-size:12px;line-height:1.65}
.city-choice-grid{gap:12px}
.city-choice-card{min-height:78px;border-radius:14px;padding:13px}
.city-choice-card>span:first-child{width:38px;height:38px;font-size:17px}
.city-choice-card strong{font-size:14px;line-height:1.4}
.city-choice-card small{font-size:11px;line-height:1.4}
.city-refinement{gap:18px;padding:22px;border-radius:16px}
.city-refinement>header small{font-size:10px}
.city-refinement>header h3{font-size:22px}
.whole-area-choice{min-height:72px;border-radius:13px;padding:15px 16px}
.whole-area-choice strong{font-size:14px;line-height:1.4}
.whole-area-choice small{font-size:11px;line-height:1.55}
.city-refinement [data-area-groups]>h4{font-size:14px}
.area-choice-grid{gap:10px}
.area-choice{min-height:66px;border-radius:11px;padding:13px}
.area-choice strong{font-size:13px;line-height:1.4}
.area-choice small{font-size:10px;line-height:1.4}
.rural-location-grid label,.settlement-search-label{font-size:14px}
.rural-location-grid select,.rural-location-grid input,.settlement-search-label input{min-height:54px;border-radius:12px;padding:12px 14px;font-size:15px}
.selected-location-tray{gap:14px;padding-top:23px}
.selected-location-tray [data-location-count]{padding:7px 11px;font-size:11px}
.selected-location-chip{padding:11px 13px;border-radius:12px}
.selected-location-chip small{font-size:10px}
.selected-location-chip strong{font-size:13px;line-height:1.45}
.field-error{font-size:12px;line-height:1.5}
.search-service-choice>legend{font-size:27px;line-height:1.35}
.search-service-choice>p{margin-bottom:17px;font-size:14px;line-height:1.65}
.service-choice-grid{gap:15px}
.service-choice-card{grid-template-columns:50px minmax(0,1fr);gap:14px;padding:19px;border-radius:15px;transition:border-color .2s,transform .2s,box-shadow .2s}
.service-choice-card:hover{border-color:rgba(189,153,96,.7);transform:translateY(-2px);box-shadow:0 12px 28px rgba(12,32,48,.07)}
.service-choice-icon{width:48px;height:48px}
.service-choice-card small{font-size:10px}
.service-choice-card strong{font-size:15px;line-height:1.4}
.service-choice-card em,.service-choice-card b{font-size:12px;line-height:1.6}
.review-title{padding:22px 24px;border-radius:15px}
.review-title>span{width:46px;height:46px}
.review-title small{font-size:10px}
.review-title h3{font-size:20px}
.review-section{border-radius:14px}
.review-section header{padding:15px 19px}
.review-section h4{font-size:14px}
.review-section button{font-size:12px}
.review-section dl{grid-template-columns:minmax(150px,.42fr) minmax(0,1fr);padding:9px 19px 15px}
.review-section dt,.review-section dd{padding:9px 0;font-size:13px;line-height:1.55}
.requirement-page .button{min-height:50px;padding-inline:24px;font-size:14px}

@media(max-width:960px){
  .requirement-wizard{grid-template-columns:245px minmax(0,1fr)}
  .requirement-wizard .wizard-steps{padding:32px 20px}
  .requirement-form{padding:40px 32px}
  .requirement-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .city-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:780px){
  .requirement-page{padding-block:48px 80px}
  .requirement-page .request-head>p{font-size:15px}
  .requirement-wizard{margin-top:34px}
  .requirement-wizard .wizard-steps{padding:18px 14px}
  .requirement-wizard .wizard-step span{width:36px;height:36px}
  .requirement-form{padding:30px 22px 34px}
  .requirement-mobile-progress{margin-bottom:24px;font-size:12px}
  .requirement-form .panel-heading{margin-bottom:28px}
  .requirement-form .panel-heading h2{font-size:31px}
  .requirement-form .panel-heading p{font-size:14px}
  .requirement-type-grid,.city-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dynamic-attribute-grid,.service-choice-grid,.rural-location-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:520px){
  .requirement-page .request-head h1{font-size:34px}
  .requirement-page .request-head>p{font-size:14px;line-height:1.7}
  .requirement-wizard{border-radius:20px}
  .requirement-wizard .wizard-steps{gap:5px;padding-inline:10px}
  .requirement-wizard .wizard-step span{width:33px;height:33px}
  .requirement-form{padding:27px 18px 32px}
  .requirement-form .panel-heading h2{font-size:28px}
  .requirement-page .form-grid input,.requirement-page .form-grid select,.requirement-page .form-grid textarea,.location-command input,.rural-location-grid select,.rural-location-grid input,.settlement-search-label input,.dynamic-attribute input,.dynamic-attribute select,.dynamic-attribute textarea,.conditional-finance input{font-size:16px}
  .requirement-type-card span{min-height:96px;padding:14px 8px}
  .requirement-type-card em{font-size:13px}
  .city-choice-card{min-height:74px;padding:11px}
  .city-choice-card strong{font-size:13px}
  .city-refinement{padding:17px}
  .inline-options{display:grid;gap:14px}
  .review-section dl{grid-template-columns:1fr}
  .review-section dt{padding-bottom:2px;border-bottom:0;font-size:12px}
  .review-section dd{padding-top:2px;font-size:14px}
  .requirement-wizard .wizard-nav{margin-inline:-18px;padding:16px 18px}
  .requirement-wizard .wizard-nav .button{min-height:48px;padding-inline:15px;font-size:13px}
}
.my-search-services{margin:28px 0}.customer-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.customer-service-card,.field-upgrade-card{border:1px solid var(--line);border-radius:15px;background:#fff;padding:20px;box-shadow:0 10px 30px rgba(12,32,48,.04)}.customer-service-card.field_search,.field-upgrade-card{border-color:rgba(189,153,96,.45);background:#fffcf6}.customer-service-card>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center}.customer-service-card>header>span,.field-upgrade-card>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--cream);color:var(--gold)}.customer-service-card header small,.field-upgrade-card small{color:var(--gold);font-size:7px;text-transform:uppercase;letter-spacing:.1em}.customer-service-card h3,.field-upgrade-card h3{margin:3px 0 0;color:var(--navy);font-size:15px}.customer-service-card header>b{border-radius:99px;background:#edf4ef;padding:6px 9px;color:#2e6b42;font-size:8px}.customer-service-card>p,.field-upgrade-card p{color:var(--muted);font-size:9px;line-height:1.65}.customer-service-card dl{display:grid;gap:0;margin:14px 0 0;border-top:1px solid var(--line)}.customer-service-card dl>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #f1f1ee}.customer-service-card dt,.customer-service-card dd{margin:0;font-size:8px}.customer-service-card dt{color:var(--muted)}.customer-service-card dd{color:var(--navy);font-weight:700;text-align:right}.service-public-history p{display:grid;gap:3px;margin:10px 0 0;border-left:2px solid var(--gold);padding-left:10px;font-size:8px}.service-public-history strong{color:var(--navy)}.service-public-history small{color:var(--muted)}.field-upgrade-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:13px}.field-upgrade-card form{display:grid;gap:10px}.field-upgrade-card label{display:grid;gap:6px;color:var(--navy);font-size:9px;font-weight:700}.field-upgrade-card textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px;resize:vertical}.field-guarantee-note{border-left:2px solid var(--gold);padding-left:9px}.field-upgrade-card .button{justify-self:start}
@media(max-width:760px){.customer-service-grid{grid-template-columns:1fr}}@media(max-width:520px){.customer-service-card>header{grid-template-columns:38px minmax(0,1fr)}.customer-service-card header>b{grid-column:1/-1;justify-self:start}.field-upgrade-card{grid-template-columns:1fr}.field-upgrade-card>span{display:none}}
.service-admin-list{display:grid;gap:16px;margin-bottom:20px}.service-admin-card>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin-bottom:16px}.service-admin-card>header>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--cream);color:var(--gold)}.service-admin-card header small{color:var(--gold);font-size:8px}.service-admin-card header h2{margin:3px 0 0;color:var(--navy);font-size:16px}.service-admin-card header>b{border-radius:99px;background:var(--cream);padding:6px 9px;color:var(--gold);font-size:8px}.service-admin-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-admin-form label{display:grid;gap:5px;color:var(--muted);font-size:8px;font-weight:700}.service-admin-form input,.service-admin-form textarea,.service-admin-form select{width:100%;min-height:39px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 10px;color:var(--ink)}.service-admin-form .span-2{grid-column:span 2}.service-admin-form .admin-check{display:flex;align-items:center;gap:7px;color:var(--navy)}.service-admin-form .admin-check input{width:17px;min-height:17px;accent-color:var(--gold)}.service-admin-form .button{align-self:end}.service-toggle-form{display:flex;justify-content:flex-end;margin-top:10px}.sync-run-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sync-run-grid article{border:1px solid var(--line);border-radius:10px;padding:12px}.sync-run-grid article>small{color:var(--gold);font-size:8px}.sync-run-grid dl{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0 0}.sync-run-grid dl>div{display:flex;justify-content:space-between;border-bottom:1px solid #f0f0ed;padding:5px}.sync-run-grid dt,.sync-run-grid dd{margin:0;font-size:8px}.sync-run-grid dt{color:var(--muted)}.sync-run-grid dd{color:var(--navy);font-weight:800}
.field-case-list{display:grid}.field-case-row{display:grid;grid-template-columns:36px minmax(170px,1fr) auto auto minmax(100px,.5fr) auto 18px;align-items:center;gap:11px;border-bottom:1px solid var(--line);padding:12px;color:inherit;text-decoration:none}.field-case-row:hover{background:#faf9f6}.field-case-row>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--cream);color:var(--gold)}.field-case-row>div{display:grid}.field-case-row strong{color:var(--navy);font-size:10px}.field-case-row p{margin:3px 0 0;color:var(--muted);font-size:8px}.field-case-row>b{border-radius:99px;background:#eef3ef;padding:6px 8px;color:#356c45;font-size:8px}.field-case-row em,.field-case-row small,.field-case-row time{color:var(--muted);font-size:8px;font-style:normal}.field-case-row>.icon:last-child{width:16px;color:var(--gold)}.internal-history-note{border-left:2px solid #b66;padding-left:8px;color:#704040!important}
@media(max-width:900px){.service-admin-form{grid-template-columns:1fr 1fr}.field-case-row{grid-template-columns:34px minmax(0,1fr) auto}.field-case-row>em,.field-case-row>small,.field-case-row>time{grid-column:2}.field-case-row>.icon:last-child{grid-column:3;grid-row:1/5}.sync-run-grid{grid-template-columns:1fr}}
@media(max-width:560px){.service-admin-form{grid-template-columns:1fr}.service-admin-form .span-2{grid-column:auto}.service-admin-card>header{grid-template-columns:40px 1fr}.service-admin-card header>b{grid-column:1/-1;justify-self:start}.field-case-row{grid-template-columns:32px minmax(0,1fr)}.field-case-row>b,.field-case-row>em,.field-case-row>small,.field-case-row>time{grid-column:2;justify-self:start}.field-case-row>.icon:last-child{display:none}}
.admin-request-services{margin-bottom:18px}.request-service-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.request-service-pills>div{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:10px}.request-service-pills>div>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--cream);color:var(--gold)}.request-service-pills strong{color:var(--navy);font-size:9px}.request-service-pills b{color:#356c45;font-size:8px}.request-service-pills a{grid-column:2/-1;display:inline-flex;align-items:center;gap:5px;color:var(--gold);font-size:8px;font-weight:700;text-decoration:none}.request-service-pills a .icon{width:13px}@media(max-width:620px){.request-service-pills{grid-template-columns:1fr}}
.root-area-panel{display:grid;gap:11px}.root-area-panel>h4,.neighborhood-choice>h4{margin:0;color:var(--navy);font-size:10px}

/* Database-driven property category and subtype hierarchy */
.requirement-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.requirement-category-card{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:13px;min-height:88px;border:1px solid #d8dddf;border-radius:15px;background:#fff;padding:16px;text-align:left;color:var(--navy);cursor:pointer;box-shadow:0 6px 20px rgba(12,32,48,.035);transition:.2s}.requirement-category-card>span{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:var(--cream);color:var(--gold)}.requirement-category-card .icon{width:25px;height:25px}.requirement-category-card strong{font-size:15px;line-height:1.45}.requirement-category-card:hover,.requirement-category-card:focus-visible{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 13px 30px rgba(12,32,48,.09);outline:0}.requirement-category-card.selected{border-color:var(--gold);background:linear-gradient(145deg,#fffdf8,#f8f0e2);box-shadow:0 0 0 3px rgba(189,153,96,.16),0 13px 30px rgba(12,32,48,.08)}
.property-level{margin-top:28px;padding-top:25px;border-top:1px solid var(--line);animation:conditionFieldIn .22s ease both}.property-level>header{margin-bottom:15px}.property-level>header small{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.property-level>header h3{margin:5px 0 0;color:var(--navy);font-size:20px;line-height:1.4}.property-level .requirement-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.property-level .requirement-type-card{display:flex;align-items:center;gap:11px;min-height:68px;border:1px solid #dce1e3;border-radius:12px;background:#fff;padding:12px 13px;color:var(--navy);text-align:left;cursor:pointer;transition:.2s}.property-level .requirement-type-card>span{display:grid;place-items:center;width:36px;height:36px;min-height:36px;flex:0 0 36px;border:0;border-radius:10px;background:var(--cream);padding:0;color:var(--gold);box-shadow:none;transform:none}.property-level .requirement-type-card .icon{width:20px;height:20px}.property-level .requirement-type-card strong{font-size:13px;line-height:1.45}.property-level .requirement-type-card:hover,.property-level .requirement-type-card:focus-visible,.property-level .requirement-type-card.selected{border-color:var(--gold);background:#fcf8f0;box-shadow:0 7px 20px rgba(12,32,48,.07);outline:0;transform:none}.requirement-subtype-grid{display:flex;flex-wrap:wrap;gap:10px}.requirement-subtype-card{min-height:44px;border:1px solid #d8dddf;border-radius:999px;background:#fff;padding:10px 17px;color:#334958;font:650 13px/1.4 var(--font-body);cursor:pointer;transition:.2s}.requirement-subtype-card:hover,.requirement-subtype-card:focus-visible,.requirement-subtype-card.selected{border-color:var(--gold);background:var(--navy);color:#fff;outline:0;box-shadow:0 7px 18px rgba(12,32,48,.12)}.property-type-field>[data-property-type-error]{margin-top:13px}
.requirement-category-admin-list{display:grid;gap:9px}.requirement-category-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:11px;border:1px solid var(--line);border-radius:11px}.requirement-category-admin-form{display:grid;grid-template-columns:38px 100px repeat(3,minmax(120px,1fr)) 100px 75px auto;align-items:end;gap:8px}.requirement-category-admin-form>span{display:grid;place-items:center;width:36px;height:39px;border-radius:8px;background:var(--cream);color:var(--gold)}.requirement-category-admin-form label{display:grid;gap:5px;color:var(--muted);font-size:8px;font-weight:700}.requirement-category-admin-form input{width:100%;min-height:39px;border:1px solid var(--line);border-radius:8px;padding:8px 9px}.requirement-category-admin-form button{min-height:39px;border:0;border-radius:8px;background:var(--navy);padding:0 12px;color:#fff;font:700 9px var(--font-body);cursor:pointer}.requirement-structure-tree{display:grid;gap:14px}.requirement-structure-group{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fbfaf7}.requirement-structure-group>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;background:var(--navy);color:#fff}.requirement-structure-group>header>span{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.08);color:var(--gold)}.requirement-structure-group>header small{color:var(--gold);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.requirement-structure-group>header h3{margin:3px 0 0;color:#fff;font-size:15px}.requirement-structure-group>header>b{display:grid;place-items:center;min-width:31px;height:31px;border-radius:50%;background:rgba(255,255,255,.1);font-size:10px}.requirement-structure-group>div{display:grid;gap:7px;padding:10px}.requirement-structure-group .requirement-admin-type{margin-left:calc(var(--tree-depth,0) * 28px);background:#fff}.requirement-structure-group .requirement-admin-type[style*="--tree-depth:1"]{border-left:3px solid rgba(189,153,96,.5)}
@media(max-width:1100px){.requirement-category-admin-form{grid-template-columns:38px repeat(3,minmax(110px,1fr))}.requirement-category-admin-form label:nth-of-type(n+4),.requirement-category-admin-form button{grid-row:2}.requirement-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.requirement-category-grid,.property-level .requirement-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.requirement-category-admin-row{grid-template-columns:1fr}.requirement-category-admin-form{grid-template-columns:1fr 1fr}.requirement-category-admin-form>*{grid-row:auto!important}.requirement-category-admin-form>span{display:none}}@media(max-width:520px){.requirement-category-grid{grid-template-columns:1fr}.requirement-category-card{min-height:74px}.property-level .requirement-type-grid{grid-template-columns:1fr}.requirement-subtype-card{width:100%;border-radius:12px;text-align:left}.requirement-category-admin-form{grid-template-columns:1fr}.requirement-structure-group .requirement-admin-type{margin-left:calc(var(--tree-depth,0) * 12px)}}

.buyer-consent{display:flex;align-items:flex-start;gap:12px;margin:24px 0;line-height:1.7}.buyer-consent input{width:20px;height:20px;flex:0 0 20px;margin-top:4px}.buyer-draft-feedback{font-size:13px;min-height:1.5em;color:#536859}.requirement-form input[type=email]{max-width:100%;min-width:0}.requirement-mobile-progress{overflow:hidden}
@media(max-width:780px){.requirement-wizard .wizard-steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:12px 8px}.requirement-wizard .wizard-step{width:100%;min-width:0;min-height:44px;padding:0;justify-content:center;gap:0}.requirement-wizard .wizard-step span{width:30px;height:30px}.requirement-wizard .wizard-step:not(:disabled):hover{transform:none}}

.requirement-form .panel-heading h2{scroll-margin-top:110px}@media(max-width:780px){.requirement-form .panel-heading h2{scroll-margin-top:85px}}

/* Property criteria: native controls keep visual and submitted selection identical. */
.step1-activation{font-size:14px;line-height:1.8;max-width:1050px;color:#42544e}
.property-type-field fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}
.property-type-field legend{font-weight:700;margin-bottom:14px}
.requirement-category-card,.requirement-type-card,.requirement-subtype-card{cursor:pointer;position:relative}
.property-type-field input[type=radio]{appearance:auto!important;width:19px!important;height:19px!important;min-height:0!important;opacity:1!important;position:static!important;accent-color:#264d43;flex-shrink:0}
.property-type-field label:has(input:checked){border-color:#264d43!important;background:#edf3ee!important;box-shadow:0 0 0 1px #264d43}
.property-type-field label:focus-within{outline:3px solid #a27f49;outline-offset:3px}
.step1-choice-note{font-size:14px;line-height:1.8;margin-bottom:20px}.step1-error{padding:14px;border-left:3px solid #9b2929;background:#fff2ef;scroll-margin-top:120px}
.step1-land-group{border:1px solid #d4ded5;border-radius:12px;padding:18px;margin:18px 0;min-width:0}.step1-land-group legend{font-weight:700;padding:0 5px;max-width:100%;overflow-wrap:anywhere}
.step1-check{display:flex!important;align-items:center;gap:12px;min-height:44px;padding:8px 0;line-height:1.6;cursor:pointer}.step1-check input{appearance:auto;width:19px!important;height:19px!important;min-height:0!important;flex-shrink:0;accent-color:#264d43}.step1-check span{min-width:0}
[data-land-section]>p{font-size:14px;line-height:1.8;color:#42544e}
.requirement-page input,.requirement-page select,.requirement-page button,.requirement-page h2{scroll-margin-top:125px}

.property-type-field label:has(input:checked),.property-type-field label:has(input:checked) strong{color:#264d43!important}
.requirement-subtype-card{display:flex;align-items:center;gap:10px}
