.eqfg,.eqfg-setup{
  --eqfg-navy:#0B1D3A;--eqfg-blue:#1E73BE;--eqfg-light-blue:#6DB6E8;--eqfg-grey:#6B7280;--eqfg-bg:#F3F4F6;
  --eqfg-line:#DCE3EA;--eqfg-good:#137A3D;--eqfg-good-bg:#EAF7EF;--eqfg-warn:#8A5B00;--eqfg-warn-bg:#FFF6D8;
  font-family:Poppins,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--eqfg-navy);line-height:1.5;box-sizing:border-box
}
.eqfg *,.eqfg *::before,.eqfg *::after,.eqfg-setup *,.eqfg-setup *::before,.eqfg-setup *::after{box-sizing:border-box}
.eqfg-shell{max-width:940px;margin:22px auto 36px;border:1px solid var(--eqfg-line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(11,29,58,.06)}
.eqfg-top{padding:30px 34px 24px;background:linear-gradient(180deg,#F8FBFE,#F3F8FC);border-bottom:1px solid var(--eqfg-line)}
.eqfg-kicker{color:var(--eqfg-blue);font-size:13px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;margin-bottom:7px}
.eqfg-top h1,.eqfg-setup h1{font-size:clamp(27px,4vw,40px);line-height:1.15;margin:0 0 10px;color:var(--eqfg-navy)}
.eqfg-top p,.eqfg-setup p{font-size:15px;color:var(--eqfg-grey);margin:0;max-width:780px}
.eqfg-progress{margin-top:24px}.eqfg-progress__meta{display:flex;justify-content:space-between;gap:16px;font-size:12px;font-weight:700;color:var(--eqfg-grey);margin-bottom:8px}.eqfg-progress__track{height:7px;background:#E8EDF2;border-radius:99px;overflow:hidden}.eqfg-progress__track span{display:block;height:100%;width:12.5%;background:var(--eqfg-blue);border-radius:inherit;transition:width .2s ease}
.eqfg-main{padding:0 34px}.eqfg-stage{display:none;padding:30px 0 34px}.eqfg-stage.is-active{display:block}.eqfg-stage[hidden],.eqfg [hidden],.eqfg-setup [hidden]{display:none!important}.eqfg-stage h2{font-size:clamp(22px,3vw,30px);line-height:1.25;margin:0 0 8px;color:var(--eqfg-navy)}.eqfg-subheading{font-size:17px;margin:28px 0 10px;color:var(--eqfg-navy)}.eqfg-help{font-size:14px;color:var(--eqfg-grey);margin:0 0 18px}
.eqfg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.eqfg-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.eqfg-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.eqfg-grid--images{grid-template-columns:repeat(2,minmax(0,1fr))}
.eqfg-option{appearance:none;-webkit-appearance:none;width:100%;min-width:0;min-height:112px;display:flex;align-items:flex-start;gap:13px;text-align:left;border:2px solid var(--eqfg-line);border-radius:16px;background:#fff;padding:16px;color:var(--eqfg-navy);cursor:pointer;font:inherit;transition:border-color .15s,box-shadow .15s,background .15s}.eqfg-option:hover{border-color:#B6CADB}.eqfg-option:focus-visible,.eqfg-primary:focus-visible,.eqfg-secondary:focus-visible,.eqfg-tabs button:focus-visible,.eqfg-check-card:focus-within{outline:3px solid rgba(30,115,190,.28);outline-offset:2px}.eqfg-option.is-selected{border-color:var(--eqfg-blue);background:#F3F9FE;box-shadow:0 0 0 1px var(--eqfg-blue)}.eqfg-option__icon{flex:0 0 39px;min-height:39px;border-radius:10px;background:var(--eqfg-bg);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;color:var(--eqfg-blue)}.eqfg-option.is-selected .eqfg-option__icon{background:#DCEFFC}.eqfg-option__body{display:block;min-width:0}.eqfg-option__body strong{display:block;font-size:15px;line-height:1.35;color:var(--eqfg-navy);margin:0 0 5px}.eqfg-option__body small{display:block;font-size:12.5px;line-height:1.5;color:var(--eqfg-grey);font-weight:400}
.eqfg-option--image{display:block;padding:0;overflow:hidden;min-height:0}.eqfg-option__media{display:block;width:100%;aspect-ratio:16/9;background:#EAF0F5;overflow:hidden;border-bottom:1px solid var(--eqfg-line)}.eqfg-option__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .18s ease}.eqfg-option--image:hover .eqfg-option__media img{transform:scale(1.025)}.eqfg-option--image .eqfg-option__body{padding:14px 16px 16px}.eqfg-option--image .eqfg-option__body strong{font-size:16px}
.eqfg-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.eqfg-tabs button{appearance:none;border:1px solid #BFCBD6;border-radius:999px;background:#fff;color:var(--eqfg-navy);font:inherit;font-weight:700;font-size:13px;min-height:44px;padding:10px 14px;cursor:pointer}.eqfg-tabs button.is-selected{background:var(--eqfg-navy);color:#fff;border-color:var(--eqfg-navy)}
.eqfg-field{display:flex;flex-direction:column;gap:6px;min-width:0}.eqfg-field label{font-size:13px;font-weight:700;color:var(--eqfg-navy)}.eqfg-field input,.eqfg-field select{width:100%;min-height:48px;border:1px solid #BFCBD6;border-radius:10px;background:#fff;color:var(--eqfg-navy);font:inherit;font-size:16px;padding:10px 12px}.eqfg-field input:focus,.eqfg-field select:focus{border-color:var(--eqfg-blue);outline:3px solid rgba(30,115,190,.13)}.eqfg-field--short{max-width:360px}.eqfg-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.eqfg-area-total{margin-top:14px;font-size:15px;font-weight:800;color:var(--eqfg-blue)}
.eqfg-info{margin-top:16px;padding:12px 14px;border:1px solid #CFE1EF;border-radius:11px;background:#F5FAFE;color:#44586E;font-size:13px}.eqfg-extra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.eqfg-check-card{display:flex;align-items:flex-start;gap:10px;min-height:110px;padding:15px;border:1px solid var(--eqfg-line);border-radius:14px;background:#fff;color:var(--eqfg-navy);cursor:pointer}.eqfg-check-card:has(input:checked){border-color:var(--eqfg-blue);background:#F3F9FE;box-shadow:0 0 0 1px var(--eqfg-blue)}.eqfg-check-card input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--eqfg-blue);flex:0 0 auto}.eqfg-check-card strong{display:block;font-size:14px;line-height:1.35}.eqfg-check-card small{display:block;margin-top:5px;color:var(--eqfg-grey);font-size:12px;line-height:1.45}.eqfg-edge-length{margin-top:15px}
.eqfg-review{border:1px solid var(--eqfg-line);border-radius:16px;background:#fff;overflow:hidden}.eqfg-review__row{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);gap:18px;padding:13px 15px;border-bottom:1px solid #E8EDF2}.eqfg-review__row:last-child{border-bottom:0}.eqfg-review__row span{font-size:13px;color:var(--eqfg-grey)}.eqfg-review__row strong{text-align:right;color:var(--eqfg-navy);font-size:14px;overflow-wrap:anywhere}
.eqfg-result{min-height:100px}.eqfg-price-card{padding:22px;border:1px solid #CDE3F5;background:linear-gradient(180deg,#F7FBFF,#EDF6FD);border-radius:17px}.eqfg-price-card h3{font-size:21px;line-height:1.3;margin:0 0 8px;color:var(--eqfg-navy)}.eqfg-price{font-size:clamp(34px,7vw,52px);line-height:1.05;font-weight:900;color:var(--eqfg-blue);margin:6px 0 10px}.eqfg-price-card p{font-size:13px;line-height:1.55;color:#44586E;margin:8px 0}.eqfg-manual{padding:18px;border:1px solid #EAD78E;border-radius:15px;background:var(--eqfg-warn-bg);color:#5C4300}.eqfg-manual strong{display:block;font-size:18px}.eqfg-manual p{margin:7px 0 0}.eqfg-continue{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:10px;padding:10px 16px;border-radius:10px;background:var(--eqfg-blue);color:#fff!important;text-decoration:none;font-weight:800}
.eqfg-validation{margin:-8px 34px 12px;padding:11px 14px;border-radius:10px;background:#FFF1F1;border:1px solid #E9B8B8;color:#8B2424;font-size:13px;font-weight:700}.eqfg-actions{display:flex;justify-content:space-between;gap:12px;padding:18px 34px 24px;border-top:1px solid var(--eqfg-line);background:#FBFCFD;position:relative}.eqfg-primary,.eqfg-secondary{appearance:none;-webkit-appearance:none;min-height:48px;border-radius:11px;padding:11px 19px;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.eqfg-primary{border:1px solid var(--eqfg-blue);background:var(--eqfg-blue);color:#fff}.eqfg-primary:hover{background:#155F9F}.eqfg-secondary{border:1px solid #B8C6D3;background:#fff;color:var(--eqfg-navy)}.eqfg-secondary:hover{background:#F5F8FA}.eqfg-secondary:disabled,.eqfg-primary:disabled{opacity:.48;cursor:not-allowed}.eqfg-notice{max-width:940px;margin:20px auto;padding:14px 16px;border-radius:12px}.eqfg-notice--warn{background:var(--eqfg-warn-bg);border:1px solid #EAD78E;color:#5C4300}

/* Shared Exterior Quote service-setup shell. */
.eqfg-setup{max-width:1120px;margin:25px auto 50px;padding:0 14px}.eqfg-setup__brand{margin-bottom:18px;padding:14px 18px;border:1px solid var(--eqfg-line);border-radius:16px;background:#fff}.eqfg-setup__head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.eqfg-setup__head h1{font-size:42px;margin:5px 0 8px}.eqfg-setup__head p{max-width:760px;margin:0;color:var(--eqfg-grey)}.eqfg-ready-box{padding:16px;border:1px solid var(--eqfg-line);border-radius:15px;background:#fff;min-width:180px}.eqfg-ready-box span,.eqfg-ready-box strong{display:block}.eqfg-ready-box span{color:var(--eqfg-grey);font-size:13px}.eqfg-ready-box strong{font-size:21px;margin-top:4px}.eqfg-save-notice{display:flex;flex-direction:column;gap:3px;margin:0 0 16px;padding:14px 16px;border:1px solid #BFE4CC;border-radius:13px;background:var(--eqfg-good-bg);color:#0F5E30}.eqfg-panel{border:1px solid var(--eqfg-line);border-radius:18px;background:#fff;padding:20px;margin:15px 0}.eqfg-panel h2{font-size:22px;margin:0 0 8px;color:var(--eqfg-navy)}.eqfg-panel h3{font-size:16px;margin:22px 0 10px;color:var(--eqfg-navy)}.eqfg-panel__help{margin:0 0 15px!important;font-size:13px!important}.eqfg-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.eqfg-choice-label{display:flex;align-items:flex-start;gap:9px;min-height:76px;padding:16px;border:1px solid var(--eqfg-line);border-radius:13px;background:#fff;cursor:pointer}.eqfg-choice-label:has(input:checked){border-color:var(--eqfg-blue);background:#F3F9FE;box-shadow:0 0 0 1px var(--eqfg-blue)}.eqfg-choice-label input{width:18px;height:18px;margin-top:2px;accent-color:var(--eqfg-blue)}.eqfg-choice-label strong,.eqfg-choice-label small{display:block}.eqfg-choice-label strong{font-size:14px}.eqfg-choice-label small{margin-top:4px;color:var(--eqfg-grey);font-size:12px}.eqfg-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.eqfg-setup .eqfg-field input,.eqfg-setup .eqfg-field select{max-width:100%}.eqfg-reasons{margin:10px 0 0;padding:10px 14px 10px 32px;border-radius:10px;background:var(--eqfg-warn-bg);color:#5C4300;font-size:13px}.eqfg-setup__actions{position:sticky;bottom:10px;z-index:6;display:flex;gap:10px;padding:13px;margin-top:18px;background:rgba(255,255,255,.96);border:1px solid var(--eqfg-line);border-radius:14px}.eqfg-setup__actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}

@media(max-width:760px){.eqfg-shell{margin:10px 0 28px;border-radius:16px}.eqfg-top{padding:22px 18px 18px}.eqfg-main{padding:0 18px}.eqfg-stage{padding:23px 0 28px}.eqfg-grid,.eqfg-grid--three,.eqfg-grid--four{grid-template-columns:1fr}.eqfg-grid--images{grid-template-columns:repeat(2,minmax(0,1fr))}.eqfg-field-grid,.eqfg-extra-grid,.eqfg-setup-grid{grid-template-columns:1fr}.eqfg-actions{padding:14px 18px 18px;position:sticky;bottom:0;z-index:5}.eqfg-actions .eqfg-primary{flex:1}.eqfg-review__row{grid-template-columns:1fr;gap:3px}.eqfg-review__row strong{text-align:left}.eqfg-tabs{display:grid;grid-template-columns:1fr}.eqfg-tabs button{border-radius:10px}.eqfg-validation{margin:0 18px 12px}.eqfg-setup{margin:16px 0 32px;padding:0 10px}.eqfg-setup__head{flex-direction:column}.eqfg-setup__head h1{font-size:36px}.eqfg-ready-box{width:100%}.eqfg-choice-grid{grid-template-columns:1fr}.eqfg-setup__actions{flex-direction:column;bottom:6px}.eqfg-setup__actions .eqfg-primary,.eqfg-setup__actions .eqfg-secondary{width:100%;text-align:center}}
@media(max-width:480px){.eqfg-grid--images{grid-template-columns:1fr}.eqfg-option__media{aspect-ratio:16/8.5}}
@media(max-width:390px){.eqfg-top h1{font-size:27px}.eqfg-stage h2{font-size:23px}.eqfg-option{padding:14px}.eqfg-option__icon{flex-basis:34px;min-height:34px;font-size:17px}.eqfg-actions{gap:8px}.eqfg-actions .eqfg-secondary,.eqfg-actions .eqfg-primary{padding-left:12px;padding-right:12px}}

html[data-eq-theme="dark"] :where(.eqfg,.eqfg-setup){--eqfg-navy:#F5F7FB;--eqfg-grey:#B7C5D6;--eqfg-bg:#081525;--eqfg-line:#29445F;color:#F5F7FB!important;color-scheme:dark}
html[data-eq-theme="dark"] :where(.eqfg-shell,.eqfg-option,.eqfg-review,.eqfg-panel,.eqfg-setup__brand,.eqfg-ready-box,.eqfg-choice-label,.eqfg-check-card){background:#102238!important;border-color:#29445F!important;color:#F5F7FB!important;box-shadow:none}
html[data-eq-theme="dark"] .eqfg-top{background:linear-gradient(180deg,#0D1E35,#102A47)!important}
html[data-eq-theme="dark"] :where(.eqfg-top h1,.eqfg-stage h2,.eqfg-option__body strong,.eqfg-panel h2,.eqfg-panel h3,.eqfg-setup h1,.eqfg-choice-label strong,.eqfg-check-card strong,.eqfg-review__row strong){color:#F5F7FB!important;-webkit-text-fill-color:#F5F7FB!important}
html[data-eq-theme="dark"] :where(.eqfg-top p,.eqfg-help,.eqfg-setup p,.eqfg-option__body small,.eqfg-check-card small){color:#B7C5D6!important}
html[data-eq-theme="dark"] :where(.eqfg-field input,.eqfg-field select,.eqfg-setup input,.eqfg-setup select){background:#0B1B2D!important;color:#F5F7FB!important;border-color:#36536F!important;-webkit-text-fill-color:#F5F7FB!important;color-scheme:dark}
html[data-eq-theme="dark"] :where(.eqfg-tabs button,.eqfg-secondary){background:#142B43!important;color:#F5F7FB!important;border-color:#36536F!important}
html[data-eq-theme="dark"] .eqfg-option.is-selected,html[data-eq-theme="dark"] .eqfg-choice-label:has(input:checked),html[data-eq-theme="dark"] .eqfg-check-card:has(input:checked){background:#153454!important;border-color:#6DB6E8!important}
html[data-eq-theme="dark"] .eqfg-validation{background:#3A1C1C!important;border-color:#7B3F3B!important;color:#FFCBC6!important}
html[data-eq-theme="dark"] :where(.eqfg-info,.eqfg-price-card){background:#112A43!important;border-color:#355D7F!important;color:#D9E8F5!important}
html[data-eq-theme="dark"] :where(.eqfg-field select,.eqfg-setup select) option{background:#0B1B2D!important;color:#F5F7FB!important}

html[data-eq-theme="dark"] .eqfg-actions{background:#0D1E35!important;border-color:#29445F!important}
html[data-eq-theme="dark"] .eqfg-setup__actions{background:rgba(13,30,53,.97)!important;border-color:#29445F!important}


/* Fencing & Gates uses native labelled radio / checkbox cards. */
.eqfg-option{position:relative;align-items:flex-start}
.eqfg-option>input[type="radio"],.eqfg-option>input[type="checkbox"]{appearance:auto;-webkit-appearance:auto;width:19px;height:19px;min-width:19px;margin:2px 0 0;accent-color:var(--eqfg-blue);flex:0 0 auto}
.eqfg-option:has(input:checked),.eqfg-option.is-selected{border-color:var(--eqfg-blue);background:#F3F9FE;box-shadow:0 0 0 1px var(--eqfg-blue)}
.eqfg-option:focus-within{outline:3px solid rgba(30,115,190,.28);outline-offset:2px}
.eqfg-stage h3{font-size:16px;line-height:1.35;margin:24px 0 10px;color:var(--eqfg-navy)}
.eqfg-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.eqfg-grid--jobs{grid-template-columns:repeat(3,minmax(0,1fr))}
.eqfg-choice-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.eqfg-followup{margin-top:18px;padding:16px;border:1px solid var(--eqfg-line);border-radius:14px;background:#FAFCFE}
.eqfg-check-row{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:16px;padding:14px 16px;border:1px solid var(--eqfg-line);border-radius:13px;background:#fff}
.eqfg-check-row label{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--eqfg-navy);font-size:14px;font-weight:700;cursor:pointer}
.eqfg-check-row input{width:19px;height:19px;accent-color:var(--eqfg-blue)}
.eqfg-advisory{margin-top:12px;padding:12px 14px;border:1px solid #CFE1EF;border-radius:11px;background:#F5FAFE;color:#44586E;font-size:13px;line-height:1.55}
.eqfg-advisory--warn{border-color:#EAD78E;background:var(--eqfg-warn-bg);color:#5C4300}
.eqfg-result ul{margin:10px 0 0;padding-left:21px}.eqfg-result li{margin:5px 0}
.eqfg-price-card .eqfg-advisory{margin-top:12px}
.eqfg-option[hidden]{display:none!important}

@media(max-width:760px){.eqfg-grid--jobs,.eqfg-grid--two,.eqfg-choice-grid--three{grid-template-columns:1fr}.eqfg-check-row{flex-direction:column;gap:4px}.eqfg-followup{padding:14px}}

html[data-eq-theme="dark"] :where(.eqfg-followup,.eqfg-check-row){background:#102238!important;border-color:#29445F!important;color:#F5F7FB!important}
html[data-eq-theme="dark"] :where(.eqfg-stage h3,.eqfg-check-row label){color:#F5F7FB!important;-webkit-text-fill-color:#F5F7FB!important}
html[data-eq-theme="dark"] .eqfg-option:has(input:checked){background:#153454!important;border-color:#6DB6E8!important}
html[data-eq-theme="dark"] .eqfg-advisory{background:#112A43!important;border-color:#355D7F!important;color:#D9E8F5!important}
html[data-eq-theme="dark"] .eqfg-advisory--warn{background:#3A3016!important;border-color:#7D6928!important;color:#FFE9A8!important}
/* Calculator option inputs remain native and keyboard accessible while the full card is the visible control. */
.eqfg-option{position:relative}
.eqfg-option>input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}
.eqfg-option:focus-within{outline:3px solid rgba(30,115,190,.28);outline-offset:2px}
