/* Hide any theme-generated featured image so only the custom hero appears. */
body.dcs104-active .wp-block-post-featured-image,
body.dcs104-active .post-thumbnail,
body.dcs104-active .featured-image,
body.dcs104-active .entry-featured-image,
body.dcs104-active .page-header-image,
body.dcs104-active figure.wp-block-post-featured-image{display:none!important}
body.dcs104-active .entry-title,body.dcs104-active .wp-block-post-title{display:none!important}
body.dcs104-active .wp-site-blocks>main,body.dcs104-active main,body.dcs104-active article,body.dcs104-active .entry-content,body.dcs104-active .wp-block-post-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.dcs104-page{--blue:#0f5fbf;--deep:#0a2f5b;--ink:#0d2340;--soft:#f3f7fb;--line:#d8e2ee;position:relative;width:100%;max-width:none;margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.65;overflow:hidden}
.dcs104-page *{box-sizing:border-box}.dcs104-wrap{width:min(1320px,calc(100% - 48px));margin:auto}.dcs104-section{padding:88px 0}.dcs104-soft{background:var(--soft)}.dcs104-eyebrow{margin:0 0 10px;color:#2f9cff;font-size:13px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.dcs104-page h1,.dcs104-page h2,.dcs104-page h3{margin-top:0;color:var(--ink);line-height:1.08;letter-spacing:-.035em}.dcs104-page h1{font-size:clamp(46px,5vw,72px);color:#fff;margin-bottom:22px}.dcs104-page h2{font-size:clamp(34px,3.5vw,52px)}.dcs104-page h3{font-size:22px}.dcs104-page p{font-size:17px;color:#586779}.dcs104-hero{min-height:560px;background-size:cover;background-position:center;display:flex;align-items:center}.dcs104-hero-inner{width:100%}.dcs104-hero-copy{max-width:700px;padding:90px 0}.dcs104-hero-copy p{color:#fff;font-size:19px;max-width:690px}.dcs104-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px}.dcs104-btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:15px 28px;border-radius:6px;text-decoration:none!important;font-weight:900}.dcs104-btn-primary{background:#1684dc;color:#fff!important}.dcs104-btn-outline{border:2px solid rgba(255,255,255,.8);color:#fff!important;background:rgba(8,37,72,.35)}.dcs104-btn-light{background:#fff;color:var(--deep)!important}.dcs104-strip{background:linear-gradient(90deg,#0a3264,#0c477f);color:#fff}.dcs104-strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}.dcs104-strip-grid div{padding:28px 25px;border-right:1px solid rgba(255,255,255,.2)}.dcs104-strip-grid div:last-child{border-right:0}.dcs104-strip strong,.dcs104-strip span{display:block}.dcs104-strip strong{font-size:19px}.dcs104-strip span{font-size:14px;opacity:.85}.dcs104-heading{text-align:center;max-width:900px;margin:0 auto 42px}.dcs104-heading p{max-width:780px;margin:0 auto}.dcs104-card-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.dcs104-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 12px 28px rgba(9,40,76,.08)}.dcs104-card img{width:100%;height:190px;object-fit:cover;display:block}.dcs104-card div{padding:22px}.dcs104-card h3{font-size:20px;margin-bottom:8px}.dcs104-card p{font-size:15px;margin:0}.dcs104-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.dcs104-gallery figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.dcs104-gallery img{width:100%;height:230px;object-fit:cover;display:block}.dcs104-gallery figcaption{padding:16px 18px;font-weight:900}.dcs104-dark{background:linear-gradient(135deg,#082d59,#061d39);color:#fff}.dcs104-dark h2,.dcs104-dark p{color:#fff}.dcs104-two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start}.dcs104-checks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.dcs104-checks li{padding:16px 18px 16px 44px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:8px;position:relative;font-weight:800}.dcs104-checks li:before{content:'✓';position:absolute;left:17px;color:#66b8ff}.dcs104-links{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.dcs104-links a{padding:15px 20px;background:#fff;border:1px solid var(--line);border-radius:7px;color:#0c4e93;text-decoration:none!important;font-weight:900}.dcs104-cta{padding:66px 0;background:linear-gradient(90deg,#0b386a,#0b4f91);color:#fff}.dcs104-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.dcs104-cta h2,.dcs104-cta p{color:#fff}.dcs104-cta h2{margin-bottom:12px}.dcs104-cta p{margin:0;max-width:760px}.dcs104-cta .dcs104-actions{margin:0;flex-shrink:0}
@media(max-width:1100px){.dcs104-card-grid{grid-template-columns:repeat(2,1fr)}.dcs104-strip-grid{grid-template-columns:repeat(2,1fr)}.dcs104-two-col{grid-template-columns:1fr}.dcs104-cta-inner{align-items:flex-start;flex-direction:column}.dcs104-cta .dcs104-actions{margin-top:0}}
@media(max-width:700px){.dcs104-wrap{width:calc(100% - 24px)}.dcs104-section{padding:68px 0}.dcs104-hero{min-height:590px;background-position:62% center}.dcs104-hero-copy{padding:70px 0}.dcs104-page h1{font-size:43px}.dcs104-card-grid,.dcs104-gallery,.dcs104-strip-grid,.dcs104-checks{grid-template-columns:1fr}.dcs104-strip-grid div{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.dcs104-actions{flex-direction:column}.dcs104-btn{width:100%;text-align:center}.dcs104-card img,.dcs104-gallery img{height:220px}}


/* Built-in estimate form */
.dcs104-estimate{background:#fff}
.dcs104-estimate-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:56px;align-items:start}
.dcs104-prefer{margin-top:30px}.dcs104-prefer a{font-size:27px;font-weight:900;color:#0a55a5;text-decoration:none}
.dcs104-form-card{padding:38px;border-radius:14px;background:#f3f7fc;border:1px solid #d8e2ee;box-shadow:0 16px 38px rgba(7,31,61,.08)}
.dcs104-form-card form{display:grid;gap:18px}.dcs104-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dcs104-form-card label{display:grid;gap:7px;font-weight:800;color:#082d59}.dcs104-form-card em{color:#b42318}
.dcs104-form-card input,.dcs104-form-card select,.dcs104-form-card textarea{width:100%;padding:14px;border:1px solid #c7d3e0;border-radius:7px;background:#fff;font:inherit;color:#12263f}
.dcs104-form-card input:focus,.dcs104-form-card select:focus,.dcs104-form-card textarea:focus{outline:2px solid #9bc1ff;border-color:#1478c9}
.dcs104-btn-dark{background:#082d59;color:#fff!important}.dcs104-alert{padding:14px 16px;border-radius:8px;margin-bottom:18px;font-weight:800}.dcs104-alert.success{background:#eaf8ee;color:#176b35}.dcs104-alert.error{background:#fff0f0;color:#9f1d1d}
@media(max-width:900px){.dcs104-estimate-grid{grid-template-columns:1fr}}
@media(max-width:650px){.dcs104-form-row{grid-template-columns:1fr}.dcs104-form-card{padding:24px}.dcs104-prefer a{font-size:23px}}

/* v1.0.10 polished estimate form — intentionally repeated as a cache-busting override */
.dcs104-estimate{background:linear-gradient(180deg,#f6f9fd 0%,#eef4fa 100%)!important}
.dcs104-estimate-grid{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr)!important;gap:64px!important;align-items:center!important}
.dcs104-form-card{display:block!important;padding:0!important;border-radius:18px!important;background:#fff!important;border:1px solid #d8e3ef!important;box-shadow:0 24px 60px rgba(7,34,67,.14)!important;overflow:hidden!important}
.dcs104-form-head{padding:28px 32px 22px!important;background:linear-gradient(135deg,#0a2f5b,#0f5fbf)!important}
.dcs104-form-head h3{margin:0 0 6px!important;color:#fff!important;font-size:28px!important;letter-spacing:-.02em!important}
.dcs104-form-head p{margin:0!important;color:rgba(255,255,255,.86)!important;font-size:15px!important}
.dcs104-form-card form{display:grid!important;grid-template-columns:1fr!important;gap:20px!important;padding:30px 32px 32px!important;margin:0!important}
.dcs104-form-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;width:100%!important}
.dcs104-form-card label{display:flex!important;flex-direction:column!important;gap:8px!important;margin:0!important;font-size:15px!important;font-weight:800!important;color:#0a2f5b!important;line-height:1.3!important}
.dcs104-form-card label span{display:block!important}
.dcs104-form-card em{color:#d92d20!important;font-style:normal!important}
.dcs104-form-card input,.dcs104-form-card select,.dcs104-form-card textarea{display:block!important;width:100%!important;max-width:none!important;min-height:52px!important;margin:0!important;padding:13px 15px!important;border:1px solid #b9c9da!important;border-radius:9px!important;background:#fff!important;box-shadow:0 1px 2px rgba(16,24,40,.04)!important;font-family:inherit!important;font-size:16px!important;line-height:1.4!important;color:#102a46!important;appearance:auto!important}
.dcs104-form-card textarea{min-height:140px!important;resize:vertical!important}
.dcs104-form-card input::placeholder,.dcs104-form-card textarea::placeholder{color:#8493a5!important;opacity:1!important}
.dcs104-form-card input:focus,.dcs104-form-card select:focus,.dcs104-form-card textarea:focus{outline:none!important;border-color:#1883dc!important;box-shadow:0 0 0 4px rgba(24,131,220,.14)!important}
.dcs104-submit{width:100%!important;min-height:58px!important;border:0!important;border-radius:9px!important;background:linear-gradient(135deg,#0f5fbf,#0a3f7c)!important;color:#fff!important;font-size:17px!important;font-weight:900!important;cursor:pointer!important;box-shadow:0 10px 22px rgba(15,95,191,.22)!important}
.dcs104-submit:hover{transform:translateY(-1px)!important;box-shadow:0 14px 28px rgba(15,95,191,.28)!important}
.dcs104-form-note{display:block!important;margin-top:-6px!important;text-align:center!important;color:#69798c!important;font-size:13px!important}
.dcs104-alert{margin:24px 32px 0!important}
@media(max-width:1000px){.dcs104-estimate-grid{grid-template-columns:1fr!important;gap:38px!important}.dcs104-form-card{max-width:760px!important;width:100%!important;margin:auto!important}}
@media(max-width:650px){.dcs104-form-head{padding:24px 22px 20px!important}.dcs104-form-card form{padding:24px 22px 26px!important}.dcs104-form-row{grid-template-columns:1fr!important}.dcs104-form-head h3{font-size:24px!important}}
