.dx-page main { overflow: clip; }
.dx-page .eyebrow { font-size: .8125rem; }
.dx-page h1,.dx-page h2,.dx-page h3 { color: var(--deep-green); }
.dx-hero { padding: 100px 0 0; }
.dx-hero-heading { display:grid; grid-template-columns: 1.5fr 1fr; align-items:end; gap:64px; margin-bottom:60px; }
.dx-hero h1 { font-size:clamp(2.6rem,4.6vw,4.4rem); line-height:1.2; margin:0; letter-spacing:-.055em; }
.dx-hero h1 em { font-style:normal; color:var(--green); }
.dx-hero-summary p { color:var(--body); font-size:1.125rem; margin:0 0 26px; }
.dx-hero-photo { margin:0; height:520px; overflow:hidden; border-radius:18px; }
.dx-hero-photo img { width:100%; height:100%; object-fit:cover; object-position:center 46%; }
.dx-problem { background:var(--warm-white); margin-top:100px; }
.dx-page h2 { font-size:clamp(2.2rem,3.6vw,3.25rem); line-height:1.25; }
.dx-problems { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin:64px 0 54px; }
.dx-problems article { border-top:1px solid var(--line); padding-top:28px; }
.dx-number { color:var(--green); font-family:"Instrument Sans",Arial,sans-serif; font-size:.875rem; }
.dx-problems h3 { font-size:1.65rem; margin:22px 0 18px; }
.dx-problems p,.dx-service-grid article>p:not(.eyebrow),.dx-before-after div>p:last-child { color:var(--body); font-size:1.0625rem; margin-bottom:0; }
.dx-bridge { font-size:clamp(1.15rem,2vw,1.5rem); border-top:1px solid var(--line); padding-top:36px; margin:0; color:var(--body); }
.dx-bridge strong { color:var(--green); }
.dx-service-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:64px; }
.dx-service-grid article { padding:40px; border:1px solid var(--line); border-radius:18px; }
.dx-service-grid article:first-child { background:var(--mist-green); }
.dx-service-grid article:last-child { background:var(--pale-pink); }
.dx-service-grid h3 { font-size:1.7rem; margin:32px 0 18px; }
.dx-service-grid article>span { display:block; margin-top:32px; padding-top:20px; border-top:1px solid var(--line); color:var(--body); font-size:.875rem; }
.dx-process { background:var(--deep-green); color:white; }
.dx-process .eyebrow { color:#afd7c8; }
.dx-process h2,.dx-process h3 { color:white; }
.dx-steps { list-style:none; display:grid; grid-template-columns:repeat(4,1fr); gap:30px; margin:76px 0; padding:0; }
.dx-steps li { border-top:1px solid #55766b; padding-top:24px; }
.dx-steps span { display:block; color:#f3b8c7; font-size:2.2rem; margin-bottom:26px; }
.dx-steps b { font-family:"Instrument Sans",Arial,sans-serif; font-size:.875rem; letter-spacing:.1em; }
.dx-steps h3 { font-size:1.25rem; margin:14px 0; line-height:1.5; }
.dx-steps p { color:#cbded6; font-size:1rem; margin:0; }
.dx-process-promise { border-top:1px solid #55766b; padding-top:42px; margin:0; font-size:clamp(1.1rem,2.15vw,1.65rem); line-height:1.65; color:#cbded6; }
.dx-process-promise strong { color:white; font-weight:600; }
.dx-case-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:56px; }
.dx-case-heading>p { color:var(--green); margin:0; font-size:1rem; }
.dx-case-heading>p span { color:var(--body); }
.dx-case-photo { margin:0; }
.dx-case-photo img { width:100%; height:510px; object-fit:cover; border-radius:18px; }
.dx-case-photo figcaption { font-size:.8125rem; color:var(--body); padding-top:12px; }
.dx-before-after { display:grid; grid-template-columns:1fr 1fr; margin-top:44px; gap:56px; }
.dx-before-after>div { border-top:1px solid var(--line); padding-top:28px; }
.dx-before-after>div:last-child { border-color:var(--green); }
.dx-before-after h3 { font-size:1.75rem; line-height:1.4; margin:0 0 18px; }
.dx-tags { display:flex; flex-wrap:wrap; list-style:none; padding:0; gap:10px; margin:42px 0 20px; }
.dx-tags li { background:var(--mist-green); border:1px solid var(--soft-green); border-radius:999px; padding:8px 17px; color:var(--green); font-size:.875rem; }
.dx-case-note { font-size:.875rem; color:var(--body); margin:0; }
.dx-final { background:var(--pale-pink); }
.dx-final-lead { color:var(--body); font-size:1.125rem; margin:30px 0 24px; }
.dx-text-link { display:inline-flex; align-items:center; gap:24px; color:var(--green); min-height:48px; border-bottom:1px solid var(--green); font-weight:650; }
.dx-final-action { border-top:1px solid #e2cdd4; margin-top:62px; padding-top:48px; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.dx-final-action p { color:var(--deep-green); margin:0; font-size:1.5rem; font-weight:600; line-height:1.45; }
@media(max-width:1000px){.dx-hero-heading{gap:32px;grid-template-columns:1.4fr 1fr}.dx-hero h1{font-size:3.1rem}.dx-steps{grid-template-columns:1fr 1fr;row-gap:40px}.dx-problems{gap:24px}.dx-problems h3{font-size:1.35rem}}
@media(max-width:800px){.dx-hero{padding-top:72px}.dx-hero-heading{grid-template-columns:1fr;gap:30px;margin-bottom:40px}.dx-hero h1{font-size:clamp(2.5rem,6.6vw,3.5rem)}.dx-hero-photo{height:410px}.dx-problem{margin-top:76px}.dx-problems{grid-template-columns:1fr;margin:48px 0;gap:32px}.dx-problems h3{font-size:1.5rem;margin-top:16px}.dx-problems p br{display:none}.dx-service-grid{gap:20px;margin-top:48px}.dx-service-grid article{padding:28px}.dx-service-grid h3{font-size:1.5rem}.dx-case-heading{display:block}.dx-case-heading>p{margin-top:30px}.dx-case-photo img{height:380px}.dx-before-after{gap:30px}.dx-final-action{align-items:start}.dx-page .section{padding-block:88px}}
@media(max-width:560px){.dx-page .section{padding-block:80px}.dx-hero h1{font-size:clamp(2rem,8.7vw,2.8rem)}.dx-hero-photo{height:320px}.dx-hero-photo img{object-position:55% center}.dx-service-grid{grid-template-columns:1fr}.dx-steps{grid-template-columns:1fr;margin:48px 0}.dx-steps li{display:grid;grid-template-columns:48px 1fr;column-gap:20px}.dx-steps span{grid-row:1/4;margin:0}.dx-steps h3,.dx-steps p{grid-column:2}.dx-steps p br{display:none}.dx-before-after{grid-template-columns:1fr;gap:36px}.dx-case-photo img{height:300px;object-position:52% center}.dx-before-after h3{font-size:1.5rem}.dx-final-action{display:block}.dx-final-action .button{margin-top:28px}.dx-page h2{font-size:clamp(1.9rem,8.1vw,2.25rem)}.dx-page .eyebrow{letter-spacing:.14em}.dx-process-promise br{display:none}}

.dx-case-photo img { object-position: center 28%; }
