.cdm-home{--brand:#487675;--brand-dark:#244544;--brand-deep:#173130;--brand-soft:#eaf2f1;--brand-soft-2:#f5f8f7;--ink:#172120;--muted:#5f6e6c;--line:#dce5e3;--white:#fff;--paper:#f7f9f8;--max:1380px;background:var(--paper);color:var(--ink);font-family:'Montserrat',Arial,sans-serif;font-size:18px;font-weight:400;line-height:1.72;-webkit-font-smoothing:antialiased}
.cdm-home *{box-sizing:border-box}.cdm-home img{display:block;width:100%;height:auto}.cdm-home a{color:inherit;text-decoration:none}.cdm-home .container{width:min(calc(100% - 72px),var(--max));margin:0 auto}.cdm-home .kicker{display:flex;align-items:center;gap:14px;color:var(--brand);font-size:13px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.cdm-home .kicker:before{content:"";width:42px;height:2px;background:var(--brand);flex:0 0 42px}
.cdm-home .hero{background:var(--white);overflow:hidden}.cdm-home .heroGrid{min-height:730px;display:grid;grid-template-columns:1.02fr .98fr}.cdm-home .heroCopy{padding:92px max(50px,calc((100vw - var(--max))/2 + 36px)) 80px max(36px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#fff 0%,#f3f7f6 100%)}.cdm-home .hero h1{font-size:clamp(48px,4.8vw,72px);line-height:1.02;letter-spacing:-.045em;font-weight:500;margin:28px 0;max-width:820px}.cdm-home .hero h1 em{font-style:normal;color:var(--brand)}.cdm-home .hero p{font-size:20px;line-height:1.75;color:var(--muted);max-width:760px;margin:0 0 36px}.cdm-home .heroActions{display:flex;gap:14px;flex-wrap:wrap}.cdm-home .btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 25px;border:1px solid var(--brand);font-size:14px;font-weight:600;letter-spacing:.02em;transition:.25s}.cdm-home .btn.primary{background:var(--brand);color:#fff}.cdm-home .btn.primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.cdm-home .btn.secondary{background:#fff;color:var(--brand-dark)}.cdm-home .btn.secondary:hover{background:var(--brand-soft)}.cdm-home .heroVisual{position:relative;min-height:730px}.cdm-home .heroVisual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cdm-home .heroVisual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,49,48,.05),rgba(23,49,48,.36))}.cdm-home .heroBadge{position:absolute;left:0;bottom:0;z-index:2;width:min(440px,82%);background:var(--brand);color:#fff;padding:28px 34px;display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center}.cdm-home .heroBadge b{font-size:43px;line-height:1;font-weight:500;letter-spacing:-.05em}.cdm-home .heroBadge span{font-size:13px;line-height:1.55;text-transform:uppercase;letter-spacing:.08em}.cdm-home .heroStats{background:var(--brand-deep);color:#fff}.cdm-home .heroStats .container{display:grid;grid-template-columns:repeat(4,1fr)}.cdm-home .stat{padding:28px 34px;border-right:1px solid rgba(255,255,255,.15)}.cdm-home .stat:last-child{border-right:0}.cdm-home .stat b{display:block;font-size:27px;font-weight:500;color:#fff;margin-bottom:4px}.cdm-home .stat span{display:block;font-size:12px;line-height:1.5;color:#c4d4d1;text-transform:uppercase;letter-spacing:.08em}
.cdm-home .section{padding:118px 0}.cdm-home .section.white{background:#fff}.cdm-home .section.soft{background:var(--brand-soft-2)}.cdm-home .sectionHead{display:grid;grid-template-columns:.9fr 1.1fr;gap:86px;align-items:end;margin-bottom:62px}.cdm-home .sectionHead.single{grid-template-columns:1fr}.cdm-home .sectionHead.single>div{max-width:900px}.cdm-home .sectionHead h2{font-size:clamp(36px,3.5vw,54px);line-height:1.08;letter-spacing:-.035em;font-weight:500;margin:14px 0 0}.cdm-home .sectionHead p{font-size:18px;color:var(--muted);margin:0;max-width:720px;text-align:left}
.cdm-home .servicesGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cdm-home .serviceCard{background:#fff;border:1px solid var(--line);min-height:590px;display:flex;flex-direction:column;transition:.3s;overflow:hidden}.cdm-home .serviceCard:hover{transform:translateY(-6px);box-shadow:0 26px 60px rgba(35,69,68,.12)}.cdm-home .serviceImage{height:265px;overflow:hidden;position:relative}.cdm-home .serviceImage img{height:100%;object-fit:cover;transition:.55s}.cdm-home .serviceCard:hover .serviceImage img{transform:scale(1.04)}.cdm-home .serviceNo{position:absolute;left:18px;top:18px;background:#fff;color:var(--brand);font-size:12px;font-weight:600;padding:8px 10px;letter-spacing:.08em}.cdm-home .serviceBody{padding:30px 30px 32px;display:flex;flex-direction:column;flex:1}.cdm-home .serviceBody h3{font-size:30px;line-height:1.15;letter-spacing:-.025em;font-weight:500;margin:0 0 16px}.cdm-home .serviceBody p{font-size:16px;color:var(--muted);margin:0 0 22px;text-align:left}.cdm-home .miniList{list-style:none;padding:0;margin:0 0 26px;border-top:1px solid var(--line)}.cdm-home .miniList li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;color:#455452}.cdm-home .cardLink{margin-top:auto;font-size:14px;font-weight:600;color:var(--brand);display:flex;align-items:center;gap:8px}.cdm-home .cardLink:after{content:'→';font-size:20px}
.cdm-home .whyGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cdm-home .whyCard{background:#fff;border:1px solid var(--line);padding:32px 30px 34px;min-height:260px}.cdm-home .whyCard .n{display:inline-block;color:var(--brand);font-size:13px;font-weight:600;letter-spacing:.1em;margin-bottom:42px}.cdm-home .whyCard h3{font-size:23px;line-height:1.25;font-weight:500;letter-spacing:-.02em;margin:0 0 14px}.cdm-home .whyCard p{font-size:15px;color:var(--muted);margin:0;text-align:left}
.cdm-home .sectorGrid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:300px;gap:18px}.cdm-home .sectorCard{position:relative;overflow:hidden;color:#fff;background:var(--brand-dark)}.cdm-home .sectorCard:first-child{grid-row:span 2}.cdm-home .sectorCard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.5s}.cdm-home .sectorCard:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,42,41,.82),rgba(16,42,41,.05) 68%)}.cdm-home .sectorCard:hover img{transform:scale(1.035)}.cdm-home .sectorLabel{position:absolute;z-index:2;left:28px;right:28px;bottom:25px}.cdm-home .sectorLabel small{display:block;font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#d8e7e5;margin-bottom:8px}.cdm-home .sectorLabel h3{font-size:27px;line-height:1.15;font-weight:500;letter-spacing:-.025em;margin:0}.cdm-home .sectorCard:first-child .sectorLabel h3{font-size:38px}
.cdm-home .standardBar{padding:34px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cdm-home .standardBar .container{display:flex;align-items:center;gap:34px;justify-content:space-between;flex-wrap:wrap}.cdm-home .standardBar b{font-size:14px;color:var(--brand-dark);text-transform:uppercase;letter-spacing:.08em}.cdm-home .standardBar span{font-size:17px;font-weight:600;color:#667674}
.cdm-home .teamPreview{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:center}.cdm-home .teamPortrait{display:grid;grid-template-columns:.72fr .28fr;gap:16px;align-items:end}.cdm-home .teamPortrait img{height:560px;object-fit:cover;object-position:center top}.cdm-home .teamMark{background:var(--brand);color:#fff;padding:28px 24px;min-height:250px;display:flex;flex-direction:column;justify-content:flex-end}.cdm-home .teamMark strong{font-size:36px;line-height:1;font-weight:500;margin-bottom:10px}.cdm-home .teamMark span{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.08em}.cdm-home .teamCopy h2{font-size:clamp(38px,3.5vw,54px);line-height:1.07;font-weight:500;letter-spacing:-.035em;margin:22px 0 24px}.cdm-home .teamCopy p{color:var(--muted);text-align:left}
.cdm-home .cta{background:var(--brand-soft);padding:105px 0}.cdm-home .ctaGrid{display:grid;grid-template-columns:.92fr 1.08fr;gap:90px;align-items:start}.cdm-home .cta h2{font-size:clamp(38px,3.5vw,54px);line-height:1.07;font-weight:500;letter-spacing:-.035em;margin:20px 0 24px}.cdm-home .cta p{color:var(--muted);font-size:17px}.cdm-home .contactMini{display:grid;gap:11px;margin-top:30px;font-size:16px}.cdm-home .contactMini a{color:var(--brand-dark);font-weight:500}.cdm-home .form{background:#fff;padding:34px;border:1px solid var(--line)}.cdm-home .form .wpcf7{margin:0}.cdm-home .form .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.cdm-home .form .wpcf7-form>p{display:contents}.cdm-home .form .wpcf7-form-control-wrap{display:block}.cdm-home .form input:not([type=submit]),.cdm-home .form textarea{width:100%;border:1px solid var(--line);background:#fff;padding:0 15px;outline:none;border-radius:0;color:var(--ink);font:inherit;font-size:15px}.cdm-home .form input:not([type=submit]){height:58px}.cdm-home .form textarea{height:125px;padding-top:16px;resize:vertical}.cdm-home .form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 25px;border:1px solid var(--brand);background:var(--brand);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.cdm-home .form .wpcf7-form-control-wrap:has(textarea),.cdm-home .form .wpcf7-textarea,.cdm-home .form .wpcf7-submit,.cdm-home .form .wpcf7-response-output{grid-column:1/-1}.cdm-home .cdm-form-missing{color:#7f8c89;font-size:14px}
.cdm-home .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.cdm-home .reveal.visible{opacity:1;transform:none}
@media(max-width:1120px){.cdm-home{font-size:17px}.cdm-home .heroGrid{grid-template-columns:1fr}.cdm-home .heroCopy{padding:84px max(36px,calc((100vw - var(--max))/2)) 70px}.cdm-home .heroVisual{min-height:520px}.cdm-home .heroStats .container{grid-template-columns:repeat(2,1fr)}.cdm-home .stat:nth-child(2){border-right:0}.cdm-home .stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.15)}.cdm-home .sectionHead{grid-template-columns:1fr;gap:24px}.cdm-home .servicesGrid{grid-template-columns:1fr 1fr}.cdm-home .serviceCard:last-child{grid-column:1/-1;min-height:0;display:grid;grid-template-columns:1fr 1fr}.cdm-home .serviceCard:last-child .serviceImage{height:100%}.cdm-home .whyGrid{grid-template-columns:1fr 1fr}.cdm-home .sectorGrid{grid-template-columns:1fr 1fr}.cdm-home .sectorCard:first-child{grid-row:auto;grid-column:1/-1;min-height:500px}.cdm-home .teamPreview,.cdm-home .ctaGrid{grid-template-columns:1fr}.cdm-home .teamCopy{order:-1}}
@media(max-width:720px){.cdm-home{font-size:16px;line-height:1.68}.cdm-home .container{width:min(calc(100% - 34px),var(--max))}.cdm-home .heroCopy{padding:64px 17px}.cdm-home .hero h1{font-size:42px}.cdm-home .hero p{font-size:17px}.cdm-home .heroActions .btn{width:100%}.cdm-home .heroVisual{min-height:390px}.cdm-home .heroBadge{padding:22px 24px;width:88%}.cdm-home .heroBadge b{font-size:34px}.cdm-home .heroStats .container{width:100%;grid-template-columns:1fr 1fr}.cdm-home .stat{padding:22px 18px}.cdm-home .stat b{font-size:22px}.cdm-home .section{padding:78px 0}.cdm-home .sectionHead{margin-bottom:40px}.cdm-home .sectionHead h2{font-size:39px}.cdm-home .sectionHead p{font-size:16px}.cdm-home .servicesGrid{grid-template-columns:1fr}.cdm-home .serviceCard,.cdm-home .serviceCard:last-child{display:flex;min-height:0;grid-column:auto}.cdm-home .serviceCard:last-child .serviceImage,.cdm-home .serviceImage{height:230px}.cdm-home .serviceBody{padding:24px}.cdm-home .serviceBody h3{font-size:26px}.cdm-home .whyGrid{grid-template-columns:1fr}.cdm-home .whyCard{min-height:0}.cdm-home .whyCard .n{margin-bottom:24px}.cdm-home .sectorGrid{grid-template-columns:1fr;grid-auto-rows:auto;gap:24px}.cdm-home .sectorCard{min-height:330px}.cdm-home .sectorCard:first-child{grid-column:auto;min-height:430px}.cdm-home .sectorCard:first-child .sectorLabel h3,.cdm-home .sectorLabel h3{font-size:28px}.cdm-home .standardBar .container{justify-content:flex-start}.cdm-home .teamPreview{gap:38px}.cdm-home .teamPortrait{grid-template-columns:1fr}.cdm-home .teamPortrait img{height:480px}.cdm-home .teamMark{min-height:0}.cdm-home .teamCopy h2{font-size:39px}.cdm-home .cta{padding:76px 0}.cdm-home .cta h2{font-size:40px}.cdm-home .form{padding:14px}.cdm-home .form .wpcf7-form{grid-template-columns:1fr;padding:0}}
