
.csj-exterior{font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;color:#153653;background:#f3f7fb;border-radius:16px;overflow:hidden;color-scheme:light}.csj-exterior *{box-sizing:border-box}.csj-exterior header{background:#123d65;color:#fff;padding:24px 28px}.csj-exterior header p{color:#e2efff;margin:6px 0}.csj-exterior h1{font-size:28px;margin:6px 0}.csj-exterior h2{font-size:23px;margin:0 0 16px}.csj-exterior h3{font-size:20px;margin:0 0 12px}.csj-exterior p{margin:8px 0 16px}.csj-exterior .badge{display:inline-block;background:#e8f2ff;color:#123d65;border-radius:20px;padding:5px 12px;font-size:14px;font-weight:bold}.csj-exterior nav{display:flex;gap:8px;padding:20px 24px 0;flex-wrap:wrap}.csj-exterior button{font:inherit;font-weight:600;min-height:46px;border:1px solid #aac1d6;border-radius:8px;background:white;color:#164c7c;padding:10px 15px;cursor:pointer}.csj-exterior button:disabled{opacity:.55;cursor:default}.csj-exterior button.primary{background:#f58a20;color:#172e43;border-color:#d97512}.csj-exterior button.active{background:#174e80;color:white;border-color:#174e80}.csj-exterior button:focus-visible,.csj-exterior input:focus-visible,.csj-exterior select:focus-visible,.csj-exterior textarea:focus-visible{outline:3px solid #f58a20;outline-offset:2px}.csj-exterior .layout{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:24px}.csj-exterior main,.csj-exterior aside{min-width:0}.csj-exterior .panel{background:#fff;border:1px solid #d3e0eb;border-radius:12px;padding:22px;margin-bottom:18px}.csj-exterior aside .panel{position:static}.csj-exterior .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.csj-exterior label.field{display:flex;flex-direction:column;gap:7px;font-weight:600;margin-bottom:15px}.csj-exterior input:not([type=checkbox]),.csj-exterior select,.csj-exterior textarea{font:inherit;color:#153653;background:#fff;border:1px solid #9db3c7;border-radius:7px;padding:12px;min-height:48px;width:100%;min-width:0}.csj-exterior select option{color:#153653;background:#fff}.csj-exterior textarea{resize:vertical}.csj-exterior label.check{display:flex;align-items:flex-start;gap:12px;min-height:48px;padding:10px 0;cursor:pointer}.csj-exterior input[type=checkbox]{width:21px;height:21px;flex-shrink:0;margin:3px 0;accent-color:#175b95}.csj-exterior .services{display:grid;grid-template-columns:1fr 1fr;gap:12px}.csj-exterior .service{border:1px solid #c3d5e4;background:#fff;border-radius:10px;padding:14px;display:flex;gap:12px;align-items:flex-start;cursor:pointer}.csj-exterior .service.selected{border:2px solid #25689e;background:#eef6ff;padding:13px}.csj-exterior .service strong{display:block;font-size:18px}.csj-exterior small{display:block;font-size:15px;color:#3a5670;font-weight:400}.csj-exterior .notice{background:#edf5ff;border-left:4px solid #3579b3;border-radius:5px;padding:13px 15px;margin:12px 0;font-size:15px}.csj-exterior .warn{background:#fff4e4;border-color:#d87c14}.csj-exterior .error{background:#fff0ea;border:1px solid #cf7150;padding:15px;border-radius:8px;color:#253c51;margin-bottom:16px}.csj-exterior .row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.csj-exterior .actions{display:flex;justify-content:space-between;gap:14px;margin-top:20px}.csj-exterior .line{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #e2eaf2;font-size:15px}.csj-exterior .line span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.csj-exterior .total{font-size:24px;font-weight:bold;margin:16px 0 4px}.csj-exterior .subgroup{border-top:1px solid #d3e0eb;padding-top:18px;margin-top:18px}.csj-exterior details{margin:12px 0}.csj-exterior summary{cursor:pointer;font-weight:bold;padding:8px 0}.csj-exterior .examples{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:12px 0}.csj-exterior .window{border:5px solid #205380;background:#e3f3ff;height:115px;display:grid;grid-template-rows:1fr 1fr;gap:4px;padding:4px}.csj-exterior .window.double{grid-template-columns:1fr 1fr}.csj-exterior .window span{border:2px solid #6389a8;background:#f1faff}.csj-exterior .info{padding:3px 12px;min-height:44px;border-radius:50%;margin-left:8px}.csj-exterior .infoarea{margin-bottom:14px}.csj-exterior ul{padding-left:22px}.csj-exterior li{margin-bottom:9px}.csj-exterior .success{text-align:center;padding:35px 12px}.csj-exterior .success h2{color:#155979}.csj-exterior .muted{color:#3a5670}.csj-exterior .complete{color:#1c647a}.csj-exterior .required{font-size:15px;color:#425c73}.csj-exterior .reviewitem{padding:12px 0;border-bottom:1px solid #d8e4ef}.csj-exterior .reviewitem strong{display:block}.csj-exterior fieldset{margin:0;padding:0;border:0;min-width:0}.csj-exterior legend{font-weight:600;margin-bottom:6px}
@media(max-width:760px){.csj-exterior .layout{grid-template-columns:1fr;padding:16px;gap:0}.csj-exterior aside .panel{position:static}.csj-exterior header{padding:22px 18px}.csj-exterior nav{padding:16px 16px 0;gap:7px}.csj-exterior nav button{font-size:15px;flex:1;padding:10px 6px}.csj-exterior .panel{padding:18px}.csj-exterior h1{font-size:25px}}
@media(max-width:430px){.csj-exterior .grid,.csj-exterior .services{grid-template-columns:1fr}.csj-exterior .total{font-size:22px}}
.csj-exterior{background:#f5f8fc;border:1px solid #d9e5f0;border-radius:18px;letter-spacing:.005em}
.csj-exterior header{background:#fff;color:#123f69;padding:28px 32px 30px;border-top:5px solid #1d66a0;border-bottom:1px solid #d9e5f0}
.csj-exterior .brand-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:30px}
.csj-exterior .brand-row>strong{font-size:21px;letter-spacing:-.5px}
.csj-exterior .brand-row>strong span{font-weight:400}
.csj-exterior .brand-row .badge{font-size:12px;letter-spacing:1px;border:1px solid #c8dceb;background:#f1f7fd}
.csj-exterior .eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:1.5px;color:#286698;margin-bottom:10px}
.csj-exterior header h1{font-size:34px;line-height:1.18;letter-spacing:-1px;margin:0 0 12px;max-width:650px}
.csj-exterior header p{color:#425f77;font-size:17px;max-width:620px;margin:0}
.csj-exterior nav{padding:22px 28px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.csj-exterior nav button{display:flex;align-items:center;gap:10px;text-align:left;background:transparent;border-color:transparent;color:#47647d;font-size:16px;min-width:0}
.csj-exterior nav button.active{background:#e6f0fa;color:#124b7d;border-color:#bed5e9}
.csj-exterior .step-number{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:29px;height:29px;border-radius:50%;background:#dfe9f2;color:#315773;font-size:14px}
.csj-exterior nav button.active .step-number{background:#17568b;color:#fff}
.csj-exterior .layout{padding:26px 28px 28px}
.csj-exterior .panel{border-color:#d7e3ee;padding:26px;border-radius:12px;box-shadow:0 3px 10px #143d6010}
.csj-exterior .section-intro{margin:0 0 20px;padding:0 2px}
.csj-exterior h2{font-size:25px;letter-spacing:-.5px;margin-bottom:8px;color:#163e60}
.csj-exterior h3{font-size:22px;letter-spacing:-.3px;color:#163e60}
.csj-exterior .services{margin:24px 0;gap:14px}
.csj-exterior .service{min-height:100px;border-color:#d2dfeb;padding:18px;align-items:center;position:relative;background:#fff;transition:background .15s,border-color .15s}
.csj-exterior .service.selected{background:#eef6ff;border-color:#20639a;padding:17px}
.csj-exterior .service:hover{background:#f3f8fd;border-color:#6d99bd}
.csj-exterior .service.selected:hover{background:#e8f2fe}
.csj-exterior .service strong{font-size:18px;margin-bottom:5px}
.csj-exterior .service small{font-size:14px;line-height:1.45;color:#4a6276}
.csj-exterior .service input[type=checkbox]{width:24px;height:24px;margin:0}
.csj-exterior .notice{background:#f1f6fc;border-left-width:3px;color:#34536c;line-height:1.55}
.csj-exterior .warn{background:#fff5e8;color:#765019}
.csj-exterior .service-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:20px;flex-wrap:wrap}
.csj-exterior .service-heading h3{margin:0}
.csj-exterior button.quiet{font-size:14px;min-height:44px;border-color:#d4e0eb;background:#fff;color:#4c6479;padding:8px 12px}
.csj-exterior .grid{gap:18px;align-items:start}
.csj-exterior label.field{font-size:16px;margin-bottom:18px}
.csj-exterior input:not([type=checkbox]),.csj-exterior select,.csj-exterior textarea{border-color:#b4c8d9;min-height:51px;box-shadow:inset 0 1px 2px #12345606}
.csj-exterior label.check{padding:13px 0;border-bottom:1px solid #edf2f7}
.csj-exterior .service-picker{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.csj-exterior .service-picker button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px;padding:12px 15px;background:#fff;border:1px solid #ccdce9;font-size:15px}
.csj-exterior .service-picker button.current{background:#e7f1fc;border-color:#22659a;box-shadow:inset 0 -3px #22659a}
.csj-exterior .service-picker small{font-size:13px;color:#4d657b;font-weight:400}
.csj-exterior .estimate-panel{background:#fff;border-top:4px solid #25699e;box-shadow:none;margin-top:22px}
.csj-exterior .estimate-panel h3{margin:0}
.csj-exterior .empty-estimate{margin:18px 0 0;color:#47647a}
.csj-exterior .pending-services .line{color:#5a7084}
.csj-exterior .pending-services .line span:last-child{font-size:13px;white-space:normal;text-align:right}
.csj-exterior .line{padding:12px 0;font-size:16px}
.csj-exterior .total{font-size:32px;color:#123f69;letter-spacing:-.6px}
.csj-exterior .actions{align-items:center;gap:18px;margin-top:24px}
.csj-exterior .actions .primary{min-height:52px;padding:13px 24px;box-shadow:0 3px 0 #c96b0a;background:#fa942f;color:#152c40;border-color:#dd7c1c;font-size:17px}
.csj-exterior button.info{min-height:44px;border-radius:7px;font-size:14px;color:#1e5c8e;background:#edf5fe;border-color:#d0e2f1;margin:0 0 10px;padding:8px 12px}
.csj-exterior .error{border-color:#d29177;background:#fff4ee}
.csj-exterior .error>strong{color:#172e43}
@media(max-width:600px){.csj-exterior header{padding:22px 20px}.csj-exterior header h1{font-size:29px}.csj-exterior .brand-row{margin-bottom:24px;gap:10px}.csj-exterior .brand-row>strong{font-size:19px}.csj-exterior nav{padding:16px 10px 0;gap:4px}.csj-exterior nav button{flex-direction:column;align-items:center;text-align:center;padding:10px 4px;gap:7px;font-size:13px}.csj-exterior .layout{padding:20px 14px}.csj-exterior .panel{padding:20px}.csj-exterior .services{grid-template-columns:1fr;gap:10px;margin:20px 0}.csj-exterior .service{min-height:92px}.csj-exterior .grid{grid-template-columns:1fr;gap:0}.csj-exterior .actions{flex-wrap:wrap}.csj-exterior .actions .primary{width:100%;font-size:16px}.csj-exterior .service-picker{display:grid;grid-template-columns:1fr 1fr}.csj-exterior .service-picker button{padding:11px;font-size:14px;min-width:0}.csj-exterior .service-picker small{font-size:12px}.csj-exterior .line{font-size:15px;gap:12px}.csj-exterior .estimate-panel .badge{font-size:13px}.csj-exterior .examples{gap:10px}.csj-exterior .examples small{font-size:13px}}
@media(prefers-reduced-motion:reduce){.csj-exterior *{transition:none}}
.csj-exterior .selection-count{color:#164d7b;background:#e8f2fd;padding:6px 12px;border-radius:20px;font-weight:600;font-size:14px}
.csj-exterior .empty-customize{background:#f5f9fe;border-style:dashed;box-shadow:none}
.csj-exterior .empty-customize p{color:#3c5b76;margin-bottom:0}
.csj-exterior .contact-review{display:grid;grid-template-columns:160px minmax(0,1fr);gap:0;margin:20px 0 0}
.csj-exterior .contact-review dt,.csj-exterior .contact-review dd{padding:12px 0;border-bottom:1px solid #e1eaf2;margin:0;overflow-wrap:anywhere;color:#173b5b}
.csj-exterior .contact-review dt{font-weight:bold;padding-right:16px}
.csj-exterior .contact-review dd{white-space:pre-wrap}
.csj-exterior label,.csj-exterior legend,.csj-exterior .reviewitem,.csj-exterior .line,.csj-exterior .notice.warn{color:#193e5f}
.csj-exterior select,.csj-exterior select option,.csj-exterior input,.csj-exterior textarea{color:#173b5b;background-color:#fff}
.csj-exterior input::placeholder,.csj-exterior textarea::placeholder{color:#526a7e;opacity:1}
.csj-exterior nav button.active .step-number{background:#cfe3f6;color:#164e7d;font-weight:bold}
.csj-exterior .error,.csj-exterior .error strong{color:#182f44}
.csj-exterior .error strong{font-weight:700}
.csj-exterior small,.csj-exterior .required,.csj-exterior .muted{color:#3c5972}
.csj-exterior button.primary{color:#172d40}
@media(max-width:480px){.csj-exterior .contact-review{grid-template-columns:1fr}.csj-exterior .contact-review dt{border-bottom:0;padding:12px 0 0}.csj-exterior .contact-review dd{padding-top:4px}}
.csj-exterior{background:#f0f6fc;border-color:#d1dce7;border-radius:16px;color:#12345b}
.csj-exterior header{background:#fff;border-top:0;border-bottom:1px solid #d1dce7;padding:26px 28px}
.csj-exterior .brand-row{margin-bottom:22px}
.csj-exterior .brand-row>strong{font-size:20px;letter-spacing:0;color:#12345b}
.csj-exterior .brand-row>strong span{font-weight:700}
.csj-exterior header h1{font-size:28px;font-weight:700;letter-spacing:-.3px;color:#12345b}
.csj-exterior header p{font-size:16px;color:#475b6e;max-width:800px}
.csj-exterior nav{gap:6px;padding:26px 28px 0}
.csj-exterior nav button{justify-content:flex-start;border:0;border-top:4px solid #cfdeeb;border-radius:0;padding:10px 3px;background:transparent;color:#415c73;min-height:48px;font-weight:400}
.csj-exterior nav button.active{background:transparent;border-color:#205e9b;color:#164f86;font-weight:700}
.csj-exterior .step-number,.csj-exterior nav button.active .step-number{background:transparent;border-radius:0;color:inherit;width:auto;height:auto;font-size:16px;font-weight:inherit}
.csj-exterior .step-number:after{content:"."}
.csj-exterior .layout{padding-top:22px}
.csj-exterior h2{color:#12345b;font-size:23px;letter-spacing:0}
.csj-exterior h3{color:#12345b;font-size:21px;letter-spacing:0}
.csj-exterior .panel{border:1px solid #cddbe7;border-radius:15px;box-shadow:0 6px 18px #12345b08;background:#fff;padding:26px}
.csj-exterior .service-panel .service-heading{padding-bottom:16px;border-bottom:1px solid #e2e9f0}
.csj-exterior .service-panel .eyebrow{display:none}
.csj-exterior .services{gap:12px;margin:22px 0}
.csj-exterior .service{min-height:93px;border:1px solid #cfdbe6;border-radius:9px;padding:16px;align-items:flex-start}
.csj-exterior .service.selected{border:2px solid #205e9b;padding:15px;background:#eff6ff}
.csj-exterior .service input[type=checkbox]{margin-top:3px;width:21px;height:21px}
.csj-exterior .service strong{font-size:16px;color:#12345b}
.csj-exterior .service small{font-size:14px;color:#485f73}
.csj-exterior .section-intro{padding:12px 4px 4px}
.csj-exterior .estimate-panel{background:#f7f9fc;border:1px solid #cddbe7;border-top:1px solid #cddbe7;box-shadow:none}
.csj-exterior .estimate-panel .line{font-size:16px;border-color:#dde5ed;padding:11px 0;color:#263f55}
.csj-exterior .estimate-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;border-top:1px solid #bfcfdf;padding:18px 0 8px;margin-top:14px;color:#12345b;font-size:22px}
.csj-exterior .estimate-total-row .total{font-size:25px;letter-spacing:0;margin:0;white-space:nowrap}
.csj-exterior .actions{border-top:1px solid #d3dfe9;padding-top:20px}
.csj-exterior .actions button.primary{box-shadow:none;border-radius:7px;background:#ff941f;border-color:#da7610;color:#172f45;font-size:16px}
.csj-exterior select,.csj-exterior input:not([type=checkbox]),.csj-exterior textarea{border-radius:7px;border-color:#b7c8d7;min-height:48px;box-shadow:none}
.csj-exterior .notice{background:#f0f5fb;color:#294961}
.csj-exterior .badge{background:#edf4fd;color:#12345b}
@media(max-width:600px){.csj-exterior header{padding:22px 18px}.csj-exterior header h1{font-size:25px}.csj-exterior nav{padding:20px 14px 0;gap:5px}.csj-exterior nav button{font-size:13px;gap:4px;justify-content:flex-start;flex-direction:row;align-items:flex-start;text-align:left;padding:10px 0}.csj-exterior .step-number{font-size:13px}.csj-exterior .layout{padding:18px 14px}.csj-exterior .panel{padding:20px}.csj-exterior .estimate-total-row{font-size:19px}.csj-exterior .estimate-total-row .total{font-size:23px}}
.csj-exterior [hidden]{display:none!important}
.csj-exterior .zip-gate,.csj-exterior .gate-bar{margin:24px 28px}
.csj-exterior .zip-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.csj-exterior .zip-controls input{flex:1;min-width:130px;width:auto}
.csj-exterior .gate-bar p{margin:5px 0 0}
.csj-exterior button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:600px){.csj-exterior .zip-gate,.csj-exterior .gate-bar{margin:18px 14px}.csj-exterior .zip-controls button{width:100%}}
.csj-exterior .examples{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.csj-exterior .photo-crop{position:relative;overflow:hidden;max-width:100%;margin:0 auto 14px;background:#fff}
.csj-exterior .photo-crop img{position:absolute;max-width:none;height:auto;display:block}
.csj-exterior .window-example>strong{display:block;color:#12345b;margin-bottom:6px}
.csj-exterior .infoarea,.csj-exterior .service-panel strong,.csj-exterior .infoarea small{color:#193e5f}
@media(max-width:650px){.csj-exterior .examples{grid-template-columns:1fr}.csj-exterior .window-example{padding-bottom:14px}}

/* Explicit product text colors prevent inherited preview styles from washing out labels. */
.csj-exterior,
.csj-exterior :is(h1,h2,h3,h4,p,span,strong,b,small,label,legend,li,dt,dd,summary,button,input,select,option,textarea),
.csj-exterior :is(.section-intro,.eyebrow,.muted,.required,.notice,.error,.line,.estimate-total-row,.total,.selection-count,.badge,.reviewitem,.infoarea,.service-heading,.pending-services){color:#12345b!important;-webkit-text-fill-color:#12345b!important}
.csj-exterior input::placeholder,.csj-exterior textarea::placeholder{color:#12345b!important;-webkit-text-fill-color:#12345b!important;opacity:1}
.csj-exterior nav button.active{background:#e7f1fc;border-color:#25699e}

.csj-exterior .honeypot{display:none!important}
.csj-exterior .submit-status{padding:12px 0;color:#12345b}
