/* DwellingCost interim design system. Standalone: no legacy CSS dependency. */
:root{--navy:#0d3043;--ink:#17384b;--blue:#0789c4;--orange:#f18b27;--muted:#526a77;--border:#d7e7ef;--wash:#f2f8fb;--max:1150px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font:16px/1.68 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:#087eaf;text-underline-offset:3px}a:hover{color:#075e86}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}img,svg,video,iframe{max-width:100%}img{height:auto}h1,h2,h3,h4{font-family:Arial,Helvetica,sans-serif;font-weight:600;letter-spacing:-.035em;line-height:1.17;color:var(--ink);margin:0 0 20px}h1{font-size:clamp(38px,4.2vw,60px)}h2{font-size:clamp(30px,3.4vw,45px)}h3{font-size:clamp(24px,2.4vw,32px)}h4{font-size:21px}p{margin:0 0 1.3em}ul,ol{padding-left:1.35em}button{font:inherit;cursor:pointer}hr{border:0;border-top:1px solid var(--border);margin:25px 0}strong,b{font-weight:700}small{font-size:.75em}table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}th,td{padding:9px 12px;border-bottom:1px solid var(--border)}
#dc-header{height:auto;background:var(--navy);border-bottom:3px solid var(--blue);position:relative;z-index:100}#dc-header .dc-nav-inner{max-width:1320px;min-height:77px;padding:13px 28px;margin:0 auto;display:flex;align-items:center;gap:25px}#dc-header .dc-brand{flex:none;display:flex;align-items:center}#dc-header .dc-brand img{width:225px;max-height:48px;display:block;object-fit:contain}#dc-header .dc-nav-links{display:flex;align-items:center;gap:23px;margin-left:auto}#dc-header .dc-nav-links a,#dc-header .dc-nav-actions a{font-size:12px;letter-spacing:.085em;font-weight:700;color:#c9dce5;text-decoration:none;text-transform:uppercase;white-space:nowrap}#dc-header .dc-nav-links a:hover,#dc-header .dc-nav-links a[aria-current=page]{color:white}#dc-header .dc-nav-actions{display:flex;gap:9px}#dc-header .dc-nav-actions a{padding:9px 13px;border:1px solid #47697b;color:white}#dc-header .dc-nav-actions a:last-child{background:var(--orange);border-color:var(--orange);color:#0e3042}#dc-header .dc-menu-toggle{display:none;color:white;background:transparent;border:1px solid #53778b;padding:7px 12px;margin-left:auto}
body>section{display:block;width:100%;margin:0;float:none;position:relative;padding:72px 26px;background:white;overflow-wrap:break-word}body>section:nth-of-type(even){background:var(--wash)}body>section>.inner{max-width:var(--max);margin:0 auto;width:100%}body>section>.inner>.inner{max-width:100%}body>section hgroup{display:block;max-width:900px;margin:0 0 36px}body>section hgroup p{color:var(--muted);font-size:17px;max-width:800px}body>section .primary,body>section a.primary{display:inline-block;vertical-align:middle;padding:14px 20px;background:var(--orange);color:#103044!important;border:0;text-decoration:none;font-weight:700;font-size:13px;line-height:1.45;letter-spacing:.03em;box-shadow:none;border-radius:0;text-align:center}body>section .primary:hover{background:#ffac56;color:#103044!important}body>section .numbers,body>section ul.features{width:100%}
/* Main homepage: intentionally controlled hero instead of reusing old presentation CSS. */
#feature{background:#fff}#feature .inner{position:relative;z-index:2}#feature hgroup{max-width:690px;margin:0}#feature hgroup h1{max-width:620px;color:var(--navy);margin:0 0 24px}#feature hgroup>p{font-size:19px;line-height:1.6;color:var(--muted);max-width:560px}#feature hgroup h2{font-size:26px;margin:42px 0 12px;color:var(--navy)}#feature hgroup>p a:not(.primary){color:var(--blue)!important;font-weight:700}#feature .dc-plan{display:none}body.dc-home #feature{min-height:600px;padding:105px 26px 100px}body.dc-home #feature .inner{max-width:var(--max)}body.dc-home #feature:before{content:'';position:absolute;left:64%;right:0;top:0;bottom:0;background:linear-gradient(#1687bc17 1px,transparent 1px),linear-gradient(90deg,#1687bc17 1px,transparent 1px),#eaf6fc;background-size:38px 38px}body.dc-home #feature .dc-plan{display:block;position:absolute;z-index:1;right:2%;top:80px;width:33%;height:430px;opacity:.7;pointer-events:none}body.dc-home #feature hgroup{max-width:57%}body.dc-home #feature hgroup h1{max-width:620px}
#campaigns hgroup{max-width:820px}#campaigns .builder{border:1px solid var(--border);background:#f0f6f9;width:min(100%,710px);padding:18px;margin:25px auto 60px}#campaigns .builder-monitor{height:440px;background:white url('../images/report.jpg') center top / contain no-repeat}#campaigns .builder-screen{display:none}#campaigns ul.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;margin:45px 0 0;padding:0}#campaigns ul.features li{border-top:2px solid var(--blue);padding-top:25px}#campaigns ul.features li p{color:var(--muted);font-size:15px}#campaigns ul.features li h4{margin-bottom:12px}#campaigns .inner>.inner{margin-top:12px}
#showcase{background:#eef7fb}#showcase #map{height:330px;width:min(100%,750px);margin:10px auto 0;background:url('../images/mapem.png') center/contain no-repeat}
#support .numbers,#support2 .numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);max-width:1000px;margin:34px 0 0}#support .numbers .column,#support2 .numbers .column{min-width:0;padding:32px 22px 20px 0}#support .numbers .column + .column,#support2 .numbers .column + .column{padding-left:32px;border-left:1px solid var(--border)}#support .numbers .digits,#support2 .numbers .digits{font-size:clamp(29px,3vw,42px);font-weight:600;line-height:1.2;color:var(--blue)}#support .numbers h4,#support2 .numbers h4{margin:16px 0 9px}#support .numbers p,#support2 .numbers p{color:var(--muted)}
#faq .inner{max-width:1030px}#faq ul.faq{list-style:none;padding:0;margin:0}#faq ul.faq>li{padding:23px 0;border-bottom:1px solid var(--border);margin:0}#faq ul.faq>li:first-child{padding-top:0}#faq ul.faq p{max-width:950px}#faq ul.faq h4{font-size:20px;margin:0 0 12px}#faq ul.faq li ul{list-style:disc;padding-left:25px}#faq ul.faq li ol{list-style:decimal;padding-left:25px}#faq img{max-width:100%;height:auto}#faq iframe{max-width:100%}
#textonly{max-width:var(--max);margin:auto;padding:45px 26px}#textonly h2{margin-top:30px}#textonly h3{margin-top:24px}#support2{background:#f4f9fc}
#signup{background:var(--navy)!important;color:#eaf3f8;padding:65px 26px}#signup h3{color:white;max-width:900px;margin-bottom:27px}#signup .inner{max-width:var(--max)}
#dc-footer{background:#082939;color:#d1e0e8;padding:47px 26px 22px}#dc-footer .dc-foot-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}#dc-footer h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin:0 0 16px}#dc-footer a{display:block;color:#d0e1e9;font-size:13px;line-height:1.6;margin:0 0 9px;text-decoration:none}#dc-footer a:hover{text-decoration:underline;color:white}#dc-footer .dc-foot-bottom{border-top:1px solid #315367;margin:35px auto 0;padding-top:19px;max-width:var(--max);font-size:12px;color:#a5c0ce}
body.dc-utility #feature{min-height:400px;padding:55px 26px}body.dc-utility #feature>.inner{max-width:var(--max)}body.dc-utility #feature script{display:block}body.dc-dcx #campaigns .builder-monitor{background-image:url('../images/report.jpg')}
@media(max-width:1100px){#dc-header .dc-nav-inner{flex-wrap:wrap}#dc-header .dc-menu-toggle{display:block}#dc-header .dc-nav-links,#dc-header .dc-nav-actions{display:none;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:0}#dc-header .dc-nav-links.is-open,#dc-header .dc-nav-actions.is-open{display:flex}#dc-header .dc-nav-links a,#dc-header .dc-nav-actions a{display:block;padding:12px 8px;border-bottom:1px solid #3a6074}body.dc-home #feature hgroup{max-width:62%}}
@media(max-width:740px){body>section{padding:52px 20px}body.dc-home #feature{padding:65px 20px;min-height:0}body.dc-home #feature:before,body.dc-home #feature .dc-plan{display:none}body.dc-home #feature hgroup{max-width:100%}#feature hgroup>p{font-size:17px}#feature hgroup h2{margin-top:30px}#campaigns ul.features{grid-template-columns:1fr;gap:8px}#campaigns .builder{margin-bottom:38px}#campaigns .builder-monitor{height:310px}#showcase #map{height:240px}#support .numbers,#support2 .numbers{grid-template-columns:1fr}#support .numbers .column + .column,#support2 .numbers .column + .column{padding-left:0;border-left:0;border-top:1px solid var(--border)}#dc-footer .dc-foot-inner{grid-template-columns:1fr 1fr}h1{font-size:clamp(36px,9vw,54px)}h2{font-size:clamp(29px,7vw,42px)}#textonly{padding:40px 20px}}
@media(max-width:470px){#dc-header .dc-nav-inner{padding:12px 16px}#dc-header .dc-brand img{width:193px}#dc-footer .dc-foot-inner{grid-template-columns:1fr;gap:16px}#campaigns .builder-monitor{height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Baseline 01 refinement: architectural restraint, precise rhythm, editorial scale. */
:root{--navy:#0b2f43;--ink:#102f42;--blue:#078bc8;--orange:#f28b25;--muted:#4c6472;--border:#d9e3e8;--wash:#f7fafb;--max:1160px}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.6;color:var(--ink)}
h1,h2,h3,h4{letter-spacing:-.045em;font-weight:600}
h1{font-size:clamp(42px,5.4vw,76px);line-height:1.055}
h2{font-size:clamp(31px,3.55vw,49px);line-height:1.13}
h3{line-height:1.2}
p{line-height:1.67}
#dc-header{border-bottom:1px solid #1379a7;position:sticky;top:0}
#dc-header .dc-nav-inner{max-width:1330px;min-height:75px;gap:26px;padding:12px 30px;flex-wrap:nowrap}
#dc-header .dc-nav-links{gap:23px;justify-content:flex-end;flex-shrink:0}
#dc-header .dc-nav-links a,#dc-header .dc-nav-actions a{font-size:11px;font-weight:700;letter-spacing:.1em}
#dc-header .dc-nav-actions{flex-shrink:0}
#dc-header .dc-nav-actions a{padding:10px 15px}
body>section{padding:95px 30px}
body>section:nth-of-type(even){background:#fff}
body>section hgroup{margin-bottom:42px}
body>section hgroup p{font-size:17px;line-height:1.7}
body>section .primary,body>section a.primary{padding:14px 23px;min-height:46px;letter-spacing:.075em;font-size:12px;text-transform:uppercase;transition:background .18s ease}
/* A deliberate asymmetric hero; the drawing is secondary to the proposition. */
body.dc-home #feature{min-height:660px;display:flex;align-items:center;padding:100px 30px 104px;background:#fff;border-bottom:1px solid var(--border)}
body.dc-home #feature:before{left:auto;right:0;width:34%;background:linear-gradient(#1687bc10 1px,transparent 1px),linear-gradient(90deg,#1687bc10 1px,transparent 1px),#eff8fc;background-size:32px 32px;border-left:1px solid #d2e9f4}
body.dc-home #feature .dc-plan{right:1.7%;top:50%;transform:translateY(-50%);height:auto;width:34%;opacity:.67}
body.dc-home #feature hgroup{max-width:67%}
#feature hgroup h1{max-width:760px;margin-bottom:29px}
#feature hgroup>p{font-size:18px;line-height:1.7;max-width:585px}
#feature hgroup h2{border-top:1px solid var(--border);padding-top:27px;margin:42px 0 13px;font-size:25px;letter-spacing:-.035em}
#feature hgroup>p:has(a.primary){margin:30px 0 0}
#campaigns{border-bottom:1px solid var(--border)}
#campaigns>.inner>hgroup{max-width:700px;margin-bottom:45px}
#campaigns .builder{background:white;border:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:24px 0;width:min(100%,820px);margin:0 0 18px}
#campaigns .builder-monitor{height:520px;max-width:100%;background-size:contain}
#campaigns ul.features{margin-top:75px;gap:43px}
#campaigns ul.features li{border-top:1px solid #9bbbc9;padding-top:23px}
#campaigns ul.features li h4{font-size:23px;color:var(--navy)}
#campaigns ul.features li p{line-height:1.8}
#showcase{background:#f4f9fc!important;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
#showcase .inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}
#showcase hgroup{margin:0}
#showcase #map{height:360px;width:100%;margin:0}
#support{background:#fff!important}
#support .numbers,#support2 .numbers{margin-top:50px;max-width:100%;border-top:1px solid #a9c5d0}
#support .numbers .column,#support2 .numbers .column{padding:37px 28px 22px 0}
#support .numbers .digits,#support2 .numbers .digits{font-size:clamp(37px,4vw,59px);color:var(--navy);letter-spacing:-.055em}
#support .numbers .column + .column,#support2 .numbers .column + .column{padding-left:48px}
#signup{padding-top:72px;padding-bottom:74px}
#signup .inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
#signup h3{margin:0;max-width:800px;font-size:clamp(22px,2.5vw,32px)}
#signup a.primary{flex-shrink:0}
/* Internal pages: fewer legacy card/container cues, clearer reading width. */
body.dc-internal>section:first-of-type:not(#feature){padding-top:100px}
body.dc-internal #faq{background:#fff}
body.dc-internal #faq .inner{max-width:1050px}
body.dc-internal #faq ul.faq>li{padding:28px 0}
body.dc-internal #faq ul.faq h4{letter-spacing:-.025em}
body.dc-internal #support{min-height:480px}
body.dc-internal #support>.inner>hgroup{max-width:800px}
body.dc-internal #textonly{padding-top:65px;padding-bottom:65px}
#dc-footer{padding:60px 30px 24px}
#dc-footer .dc-foot-inner{gap:75px}
#dc-footer h3{letter-spacing:.12em}
@media(max-width:1150px){#dc-header .dc-nav-inner{flex-wrap:wrap}#dc-header .dc-menu-toggle{display:block}#dc-header .dc-nav-links,#dc-header .dc-nav-actions{display:none;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:0}#dc-header .dc-nav-links.is-open,#dc-header .dc-nav-actions.is-open{display:flex}#dc-header .dc-nav-links a,#dc-header .dc-nav-actions a{display:block;padding:12px 8px;border-bottom:1px solid #3a6074}}
@media(max-width:850px){#showcase .inner{grid-template-columns:1fr;gap:20px}#showcase #map{height:300px}#signup .inner{display:block}#signup h3{margin-bottom:28px}body.dc-home #feature hgroup{max-width:68%}}
@media(max-width:740px){body>section{padding:59px 20px}body.dc-home #feature{padding:67px 20px 70px;min-height:0}body.dc-home #feature hgroup{max-width:100%}body.dc-home #feature:before,body.dc-home #feature .dc-plan{display:none}h1{font-size:clamp(40px,9vw,60px)}#feature hgroup>p{font-size:17px}#campaigns .builder-monitor{height:330px}#campaigns ul.features{margin-top:45px;gap:15px}#showcase #map{height:250px}#support .numbers .column + .column,#support2 .numbers .column + .column{padding-left:0}#dc-footer .dc-foot-inner{gap:30px}}

/* Product evidence section — current estimator + current report. No legacy floating monitor framing. */
#campaigns .builder{width:100%;max-width:1160px;border:0;padding:0;margin:12px 0 24px;background:transparent}
#campaigns .dc-product-visuals{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,.85fr);align-items:start;gap:30px}
#campaigns .dc-product-panel{margin:0;min-width:0}
#campaigns .dc-product-panel figcaption{font-size:11px;letter-spacing:.12em;font-weight:700;color:var(--muted);padding:0 0 13px;border-bottom:1px solid var(--border);margin-bottom:16px}
#campaigns .dc-product-panel img{display:block;width:100%;height:auto;object-fit:contain;object-position:top;border:1px solid var(--border);background:#fff}
#campaigns .dc-product-ui img{box-shadow:0 14px 38px rgba(9,47,68,.07)}
#campaigns .dc-product-report img{max-height:510px;object-fit:cover;object-position:top;box-shadow:0 14px 38px rgba(9,47,68,.07)}
@media(max-width:850px){#campaigns .dc-product-visuals{grid-template-columns:1fr;gap:32px}#campaigns .dc-product-report img{max-width:480px;max-height:none;object-fit:contain}}


/* OCT 2026 POLISH PASS — intentionally restrained, square and architectural. */
:root{--dc-hairline:#d5e1e7;--dc-sky:#eaf5fb;--dc-ink:#102d3e;--dc-dark:#092c40}
body{color:var(--dc-ink)}
#dc-header{box-shadow:0 1px 0 rgba(7,89,125,.1)}
#dc-header .dc-nav-links a{transition:color .16s ease}
#dc-header .dc-nav-links a:hover{color:#72c7f2}
#dc-header .dc-nav-links [aria-current="page"]{color:#fff;position:relative}
#dc-header .dc-nav-links [aria-current="page"]::after{content:"";height:2px;background:#f28b25;position:absolute;left:0;right:0;bottom:-22px}
body.dc-home #feature{min-height:660px;padding-top:104px;padding-bottom:104px;overflow:hidden;background:linear-gradient(110deg,#fff 0%,#fff 64%,#f6fbfe 100%)}
body.dc-home #feature:before{background:linear-gradient(#138bc010 1px,transparent 1px),linear-gradient(90deg,#138bc010 1px,transparent 1px),#eef8fd;background-size:27px 27px;width:34%;opacity:.92}
body.dc-home #feature .dc-plan{opacity:.78;filter:drop-shadow(0 10px 18px rgba(7,73,106,.06));right:1%;width:36%}
body.dc-home #feature hgroup{max-width:68%;position:relative;z-index:1}
body.dc-home #feature hgroup h1{font-size:clamp(50px,5.6vw,80px);font-weight:600;letter-spacing:-.055em;line-height:1.035;max-width:790px;margin-bottom:28px;text-wrap:balance}
body.dc-home #feature hgroup h1 em{font-style:normal;color:#087fb5}
body.dc-home #feature hgroup .dc-hero-lead{font-size:clamp(19px,1.8vw,24px);line-height:1.48;color:#25485b;max-width:660px;margin-bottom:16px;letter-spacing:-.012em}
body.dc-home #feature hgroup .dc-hero-detail{font-size:15px;line-height:1.72;color:#59707c;max-width:600px;margin-bottom:20px}
body.dc-home #feature hgroup h2{font-size:19px;letter-spacing:-.02em;margin-top:40px;padding-top:22px;font-weight:600;border-color:#d4e5ed}
body.dc-home #feature hgroup h2+p{font-size:15px;color:#536d7b;max-width:600px}
body.dc-home #feature hgroup .primary{box-shadow:3px 3px 0 #12465c;transition:transform .15s ease,box-shadow .15s ease}
body.dc-home #feature hgroup .primary:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 #12465c}
#campaigns{position:relative}
#campaigns>.inner>hgroup{position:relative;max-width:770px}
#campaigns>.inner>hgroup:before{content:"PRODUCT / 01";display:block;font-size:11px;letter-spacing:.18em;color:#107fae;font-weight:700;margin-bottom:19px}
#campaigns>.inner>hgroup h2{font-size:clamp(35px,3.8vw,54px);text-wrap:balance}
#campaigns .dc-product-visuals{grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr);gap:26px;align-items:stretch}
#campaigns .dc-product-panel{padding:17px 17px 21px;background:#f8fbfd;border:1px solid #d6e7ee;position:relative}
#campaigns .dc-product-panel figcaption{border:0;padding-bottom:0;margin-bottom:14px;font-size:10px;letter-spacing:.17em;color:#32677f}
#campaigns .dc-product-panel img{border:1px solid #d1dde4;box-shadow:0 12px 24px rgba(12,48,65,.08);object-fit:contain}
#campaigns .dc-product-report img{max-height:520px;object-fit:cover;object-position:top}
#campaigns ul.features{margin-top:77px}
#campaigns ul.features li{border-top:2px solid #167fae;padding-top:27px}
#campaigns ul.features li:nth-child(2){border-color:#f28b25}
#campaigns ul.features li:nth-child(3){border-color:#93b7c8}
#campaigns ul.features li h4{font-size:24px}
#showcase{background:linear-gradient(110deg,#f5fafc,#edf6fa)!important}
#showcase hgroup:before{content:"COVERAGE / 02";display:block;font-size:11px;font-weight:700;color:#147fac;letter-spacing:.18em;margin-bottom:18px}
#support hgroup:before,#support2 hgroup:before{content:"PRICING / 03";display:block;font-size:11px;font-weight:700;color:#147fac;letter-spacing:.18em;margin-bottom:18px}
#support .numbers .column,#support2 .numbers .column{position:relative}
#support .numbers .digits,#support2 .numbers .digits{font-weight:600;letter-spacing:-.06em}
#dc-footer{border-top:3px solid #1186bd}
/* Internal page heading rhythm: maintain content and structure, uplift presentation. */
body.dc-internal>section:first-of-type{border-top:1px solid #e5edf1}
body.dc-internal>section:first-of-type hgroup>h2:first-child{max-width:850px;text-wrap:balance}
body.dc-internal #faq ul.faq>li{border-bottom-color:#d3e0e7}
body.dc-internal #faq ul.faq>li h4{color:#143e53}
@media(max-width:1150px){#dc-header .dc-nav-links [aria-current="page"]::after{display:none}}
@media(max-width:850px){body.dc-home #feature hgroup{max-width:74%}#campaigns .dc-product-visuals{grid-template-columns:1fr 1fr;gap:15px}#campaigns .dc-product-panel{padding:12px}}
@media(max-width:740px){body.dc-home #feature{padding:74px 20px 76px;background:#fff}body.dc-home #feature hgroup{max-width:100%}body.dc-home #feature hgroup h1{font-size:clamp(43px,10.8vw,65px)}body.dc-home #feature hgroup .dc-hero-lead{font-size:20px}body.dc-home #feature hgroup .dc-hero-detail{font-size:15px}#campaigns .dc-product-visuals{grid-template-columns:1fr;gap:18px}#campaigns .dc-product-panel{padding:12px}#campaigns .dc-product-report img{max-height:490px}#campaigns>.inner>hgroup:before,#showcase hgroup:before,#support hgroup:before{margin-bottom:13px}}


/* OCT 2026 — shared CTA and account-action refinements.
   Applies to all modernized DwellingCost and DCx pages. */
body > section a.primary,
body > section .primary,
body > section button.primary,
body > section input.primary {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:47px;
  padding:13px 22px;
  border:1px solid #ec821c;
  border-radius:2px;
  background:#f28b25;
  color:#0b2f43 !important;
  box-shadow:none;
  font-size:12px;
  line-height:1.35;
  font-weight:700;
  letter-spacing:.075em;
  text-align:center;
  text-transform:uppercase;
  text-decoration:none;
  transform:none;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
body > section a.primary:hover,
body > section .primary:hover,
body > section button.primary:hover,
body > section input.primary:hover {
  background:#ffad56;
  border-color:#ffad56;
  color:#092d42 !important;
  box-shadow:0 3px 0 rgba(11,47,67,.18);
  transform:translateY(-2px);
}
body > section a.primary:active,
body > section .primary:active,
body > section button.primary:active,
body > section input.primary:active {transform:translateY(0);box-shadow:none}
/* Override old homepage-only 3px offset treatment. */
body.dc-home #feature hgroup .primary,
body.dc-home #feature hgroup .primary:hover {box-shadow:none}
body.dc-home #feature hgroup .primary:hover {transform:translateY(-2px);box-shadow:0 3px 0 rgba(11,47,67,.18)}
#dc-header .dc-nav-actions a {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:39px;
  border-radius:2px;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
#dc-header .dc-nav-actions a:first-child:hover {
  color:#fff;
  background:#20546e;
  border-color:#73bddc;
  box-shadow:inset 0 -2px 0 #73bddc;
}
#dc-header .dc-nav-actions a:last-child:hover {
  color:#0b2f43;
  background:#ffad56;
  border-color:#ffad56;
  box-shadow:inset 0 -2px 0 rgba(11,47,67,.2);
}
#dc-header .dc-nav-actions a:active {transform:translateY(1px)}
#dc-header .dc-nav-actions a:focus-visible,
body > section .primary:focus-visible {outline:3px solid #f28b25;outline-offset:3px}
@media(max-width:1150px){
 #dc-header .dc-nav-actions a{justify-content:flex-start;min-height:44px;padding:12px 14px}
}
@media(prefers-reduced-motion:reduce){
 #dc-header .dc-nav-actions a,body > section .primary{transition:none}
}

/* Architectural cost modeling hero, homepage only — approved visual direction */
body.dc-home #feature{display:grid;grid-template-columns:minmax(310px,37%) minmax(0,63%);align-items:center;gap:0;min-height:650px;padding:0 0 0 max(32px,calc((100vw - 1400px)/2));background:linear-gradient(100deg,#fff 0%,#fff 33%,#f3faff 100%);border-bottom:1px solid #dce7ed;overflow:hidden}
body.dc-home #feature:before{display:none!important}
body.dc-home #feature>.inner{width:auto;max-width:none;margin:0;padding:72px 18px 74px 0;z-index:3;min-width:0}
body.dc-home #feature hgroup{max-width:none!important;margin:0}
body.dc-home #feature hgroup .dc-hero-eyebrow{font-size:11px;line-height:1.5;font-weight:800;letter-spacing:.15em;color:#66839a;margin:0 0 18px}
body.dc-home #feature hgroup h1{font-size:clamp(42px,4.05vw,69px);letter-spacing:-.056em;line-height:1.04;font-weight:700;max-width:590px;margin:0 0 22px;color:#092f48}
body.dc-home #feature hgroup h1 em{color:inherit}
body.dc-home #feature hgroup .dc-hero-lead{font-size:clamp(17px,1.48vw,22px);line-height:1.4;letter-spacing:-.018em;max-width:510px;color:#405d73;margin-bottom:23px}
body.dc-home #feature hgroup .dc-hero-detail{font-size:14px;line-height:1.58;color:#677d8c;max-width:490px;margin:0 0 22px}
body.dc-home #feature hgroup .primary{margin:0;padding:15px 22px;box-shadow:none!important;transition:background-color .2s ease,transform .2s ease}
body.dc-home #feature hgroup h2{border:0;padding:0;margin:30px 0 4px;font-size:16px;color:#143c54;letter-spacing:-.015em}
body.dc-home #feature hgroup h2+p{font-size:13px;line-height:1.55;color:#647d8b;max-width:440px;margin:0}
body.dc-home #feature .dc-hero-visual{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(184px,24%);align-items:stretch;min-height:600px;min-width:0;z-index:2;background:#f3faff}
body.dc-home #feature .dc-floorplan{position:relative;min-width:0;min-height:600px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 55%,#f8fcff 0%,#edf8ff 88%)}
body.dc-home #feature .dc-floorplan:after{content:'';position:absolute;inset:0;border-left:1px solid #e1eef6;pointer-events:none}
body.dc-home #feature .dc-floorplan>img{display:block;width:100%;height:100%;min-height:600px;max-height:660px;object-fit:contain;object-position:center;opacity:.96}
body.dc-home #feature .dc-callout{position:absolute;background:rgba(255,255,255,.97);border:1px solid #81bce0;padding:9px 12px 8px;min-width:108px;box-shadow:0 2px 10px rgba(23,98,146,.05);font-family:Arial,sans-serif;font-variant-numeric:tabular-nums;line-height:1.2;pointer-events:none}
body.dc-home #feature .dc-callout:after{content:'';position:absolute;height:1px;background:#fa861f;transform-origin:left center;width:44px;left:100%;top:52%;transform:rotate(30deg)}
body.dc-home #feature .dc-callout:before{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:#f88419;left:calc(100% + 35px);top:calc(52% + 20px);z-index:2}
body.dc-home #feature .dc-callout span{display:block;font-size:10px;letter-spacing:.06em;font-weight:800;color:#133d58}
body.dc-home #feature .dc-callout strong{display:block;font-weight:600;font-size:12px;color:#266386;margin:4px 0 2px}
body.dc-home #feature .dc-callout b{font-size:12px;font-weight:700;color:#087fb5}
body.dc-home #feature .dc-callout-dwelling{top:13%;left:12%}
body.dc-home #feature .dc-callout-garage{top:16%;right:3%}
body.dc-home #feature .dc-callout-garage:after{left:auto;right:100%;transform:rotate(140deg);transform-origin:right center;width:36px}
body.dc-home #feature .dc-callout-garage:before{left:auto;right:calc(100% + 24px);top:calc(52% + 17px)}
body.dc-home #feature .dc-callout-basement{bottom:11%;left:11%}
body.dc-home #feature .dc-callout-basement:after{transform:rotate(-35deg);width:45px;top:0}
body.dc-home #feature .dc-callout-basement:before{top:-29px;left:calc(100% + 37px)}
body.dc-home #feature .dc-callout-shed{bottom:12%;right:5%}
body.dc-home #feature .dc-callout-shed:after{left:100%;width:25px;transform:rotate(-24deg);top:8%}
body.dc-home #feature .dc-callout-shed:before{left:calc(100% + 21px);top:calc(8% - 16px)}
body.dc-home #feature .dc-cost-ledger{position:relative;min-width:0;display:flex;flex-direction:column;padding:42px 18px 25px 19px;background:rgba(255,255,255,.83);border-left:1px solid #d2e3ed;font-family:Arial,sans-serif;color:#133952}
body.dc-home #feature .dc-ledger-kicker{font-size:10px;letter-spacing:.085em;font-weight:800;color:#245673;line-height:1.4;margin:0 0 9px}
body.dc-home #feature .dc-ledger-total{font-size:clamp(21px,2vw,34px);line-height:1.12;color:#0a4b76;letter-spacing:-.045em;white-space:nowrap;font-variant-numeric:tabular-nums}
body.dc-home #feature .dc-ledger-rule{width:100%;height:1px;background:#77a9c6;margin:23px 0 15px}
body.dc-home #feature .dc-cost-ledger dl{margin:0}
body.dc-home #feature .dc-cost-ledger dl>div{display:flex;justify-content:space-between;align-items:center;gap:3px;border-bottom:1px solid #d9e6ef;padding:12px 0}
body.dc-home #feature .dc-cost-ledger dt{font-size:11px;line-height:1.45;color:#446077;min-width:0}
body.dc-home #feature .dc-cost-ledger dt small{display:block;color:#8194a5;font-size:10px;margin-top:2px}
body.dc-home #feature .dc-cost-ledger dd{font-size:11px;font-weight:700;color:#173c56;margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}
body.dc-home #feature .dc-ledger-note{font-size:10px;line-height:1.5;color:#788da0;margin:auto 0 10px;padding-top:20px}
body.dc-home #feature .dc-ledger-link{font-size:11px;font-weight:700;text-decoration:none;color:#087fb5;border-bottom:1px solid #80bbdc;align-self:flex-start;padding:0 0 3px}
body.dc-home #feature .dc-ledger-link:hover{color:#f17f18;border-bottom-color:#f17f18}
@media(min-width:1600px){body.dc-home #feature{grid-template-columns:minmax(330px,34%) minmax(0,66%)}body.dc-home #feature .dc-hero-visual{min-height:650px}}
@media(max-width:1250px){body.dc-home #feature{grid-template-columns:minmax(300px,39%) minmax(0,61%);padding-left:35px}body.dc-home #feature .dc-hero-visual{grid-template-columns:minmax(0,1fr) minmax(155px,25%)}body.dc-home #feature .dc-cost-ledger{padding-left:12px;padding-right:12px}body.dc-home #feature .dc-callout{padding:7px 9px;min-width:90px}body.dc-home #feature .dc-callout strong,body.dc-home #feature .dc-callout b{font-size:10px}}
@media(max-width:1000px){body.dc-home #feature{display:flex;flex-direction:column;align-items:stretch;padding:0}body.dc-home #feature>.inner{padding:65px 32px 32px;max-width:850px;margin:0;width:100%}body.dc-home #feature hgroup h1{max-width:720px}body.dc-home #feature .dc-hero-visual{width:100%;min-height:470px;grid-template-columns:minmax(0,1fr) 230px}body.dc-home #feature .dc-floorplan{min-height:470px}body.dc-home #feature .dc-floorplan>img{min-height:470px;max-height:570px}}
@media(max-width:650px){body.dc-home #feature>.inner{padding:54px 22px 34px}body.dc-home #feature hgroup h1{font-size:clamp(40px,10vw,60px)}body.dc-home #feature .dc-hero-visual{display:flex;flex-direction:column;min-height:0}body.dc-home #feature .dc-floorplan{min-height:340px;height:clamp(340px,96vw,520px)}body.dc-home #feature .dc-floorplan>img{height:100%;min-height:0;max-height:none}body.dc-home #feature .dc-callout{min-width:0;padding:6px 7px}body.dc-home #feature .dc-callout span{font-size:9px}body.dc-home #feature .dc-callout strong,body.dc-home #feature .dc-callout b{font-size:10px}body.dc-home #feature .dc-callout-dwelling{left:8%;top:8%}body.dc-home #feature .dc-callout-garage{right:5%;top:11%}body.dc-home #feature .dc-callout-basement{left:7%;bottom:7%}body.dc-home #feature .dc-callout-shed{right:5%;bottom:7%}body.dc-home #feature .dc-callout:before,body.dc-home #feature .dc-callout:after{display:none}body.dc-home #feature .dc-cost-ledger{border-top:1px solid #d2e3ed;border-left:0;padding:22px 22px 26px;display:grid;grid-template-columns:1fr auto;gap:4px 12px}body.dc-home #feature .dc-cost-ledger .dc-ledger-rule{grid-column:1/-1;margin:7px 0}body.dc-home #feature .dc-cost-ledger dl{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:16px}body.dc-home #feature .dc-ledger-note{margin:13px 0 0;padding:0}body.dc-home #feature .dc-ledger-link{align-self:end}body.dc-home #feature .dc-ledger-total{font-size:29px}}
@media(max-width:380px){body.dc-home #feature .dc-callout-shed{display:none}body.dc-home #feature .dc-cost-ledger dl{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body.dc-home #feature hgroup .primary{transition:none}}
