@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{--ink:#181611;--cream:#f1e7d8;--paper:#fff8ee;--forest:#20362c;--clay:#a65d38;--gold:#d2a95f;--muted:#69645d;--line:rgba(24,22,17,.16);--display:'Cormorant Garamond',Georgia,serif;--body:'Manrope',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);overflow-x:hidden}a,button,input,textarea{font:inherit}a{text-decoration:none;color:inherit}button{border:0;background:none;cursor:pointer}.topbar{position:fixed;z-index:50;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:18px clamp(18px,4vw,54px);background:rgba(255,248,238,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(24,22,17,.08)}.brand{display:flex;align-items:center;gap:13px;color:var(--ink);font-weight:800}.brand img{width:54px;height:54px;object-fit:contain}.brand span{font-size:14px;letter-spacing:.08em;text-transform:uppercase}nav{display:flex;gap:22px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800}nav a{opacity:.62}nav a.active,nav a:hover{opacity:1}.hero{min-height:100svh;position:relative;display:grid;align-items:center;background:#0d120f;overflow:hidden;padding-top:78px}.hero-image{position:absolute;inset:0;background:url('./dmi-hero.png') center/cover no-repeat;filter:saturate(.92) contrast(1.03);animation:heroDrift 22s ease-in-out infinite alternate}.hero-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,12,10,.86),rgba(9,12,10,.58) 43%,rgba(9,12,10,.08)),linear-gradient(0deg,rgba(9,12,10,.42),transparent 40%)}.hero-copy{position:relative;z-index:2;width:min(980px,calc(100% - 44px));margin:0 auto;color:#fff;padding:8svh 0}.hero-logo{width:min(190px,36vw);margin-bottom:26px;filter:drop-shadow(0 10px 24px rgba(0,0,0,.28))}.brand-line{font-size:13px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:800;margin:0 0 18px}.hero h1{font:700 clamp(46px,7vw,92px)/.94 var(--display);letter-spacing:-.045em;max-width:840px;margin:0;text-wrap:balance}.hero-sub{font-size:clamp(17px,1.8vw,22px);line-height:1.55;color:rgba(255,255,255,.84);max-width:620px;margin:24px 0 0}.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;min-height:52px;padding:0 24px;font-weight:900}.primary{background:var(--gold);color:#1b1409}.secondary{color:#fff;border:1px solid rgba(255,255,255,.46)}.dark{background:var(--forest);color:#fff}.intro{padding:110px clamp(24px,7vw,120px);max-width:1180px;margin:auto}.intro span,.eyebrow{display:block;color:var(--clay);font-size:12px;font-weight:900;letter-spacing:.24em;text-transform:uppercase;margin-bottom:18px}.intro h2,.split-copy h2,.trust-section h2,.final h2,.page h1{font:700 clamp(42px,5.8vw,82px)/.96 var(--display);letter-spacing:-.04em;margin:0;text-wrap:balance}.intro p,.split-copy p,.trust-section>p,.page p,.line p,.industry p,.audit p{font-size:18px;line-height:1.75;color:var(--muted);max-width:760px}.split{display:grid;grid-template-columns:1fr 1fr;min-height:72svh;background:var(--paper)}.split.reverse{background:var(--cream)}.split-image{min-height:560px;background-size:cover;background-position:center}.briefing{background-image:url('./dmi-briefing.png')}.field{background-image:url('./dmi-field.png')}.split-copy{align-self:center;padding:clamp(42px,7vw,96px)}.text-link{display:inline-block;margin-top:20px;font-weight:900;color:var(--clay);border-bottom:2px solid currentColor}.service-summary{padding:76px clamp(22px,6vw,88px);display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.service-summary article{border-top:1px solid var(--line);padding-top:24px}.service-summary h3,.trust-list strong,.line h2,.industry h2,.audit h2{font:700 31px/1 var(--display);letter-spacing:-.02em;margin:0}.service-summary p,.trust-list p{font-size:16px;line-height:1.65;color:var(--muted)}.operations{min-height:70svh;background:linear-gradient(rgba(19,28,23,.08),rgba(19,28,23,.72)),url('./dmi-ops.png') center/cover no-repeat;display:grid;align-items:end;padding:clamp(32px,7vw,96px);color:#fff}.operations-copy{max-width:820px}.operations h2{font:700 clamp(48px,7vw,96px)/.92 var(--display);letter-spacing:-.04em;margin:0;text-wrap:balance}.operations p{font-size:20px;line-height:1.6;color:rgba(255,255,255,.82);max-width:680px}.trust-section{padding:104px clamp(24px,7vw,110px)}.trust-list{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin:50px 0 4px}.trust-list div{border-top:1px solid var(--line);padding-top:22px}.final{padding:105px 24px;text-align:center;background:var(--gold)}.final img{width:130px;margin-bottom:28px}.final>h2,.final h2{max-width:880px;margin:0 auto 30px}.page{padding:150px clamp(24px,7vw,110px) 100px;min-height:88svh;background:linear-gradient(135deg,var(--paper),#e7d7be)}.page-head{max-width:1060px;margin-bottom:64px}.page-lines,.industry-grid,.audit,.contact-form{max-width:1060px}.line,.audit section{border-top:1px solid var(--line);padding:34px 0}.industry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.industry{background:var(--paper);padding:40px}.contact-form{display:grid;gap:18px}.contact-form label{font-weight:900}.contact-form input,.contact-form textarea{width:100%;margin-top:8px;padding:16px;border:1px solid var(--line);background:#fff8ed;border-radius:0}.check{display:flex;gap:12px;font-weight:600}.check input{width:auto}.contact-form button{min-height:54px;background:var(--forest);color:#fff;font-weight:900;border-radius:999px;padding:0 24px;justify-self:start}footer{display:flex;justify-content:space-between;gap:30px;padding:34px clamp(22px,5vw,70px);background:var(--forest);color:#fff}footer span{color:rgba(255,255,255,.65)}.reveal{opacity:0;transform:translateY(20px);transition:opacity .75s ease,transform .75s ease}.reveal.show{opacity:1;transform:none}.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}@keyframes heroDrift{from{transform:scale(1.03) translateX(-.8%)}to{transform:scale(1.08) translateX(1%)}}
.feature-band{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,84px);align-items:center;margin:34px 0 72px}.feature-band.reverse{grid-template-columns:1fr 1fr}.feature-image{min-height:430px;background-size:cover;background-position:center}.ops-img{background-image:url('./dmi-ops.png')}.rich-page .page-head p{max-width:850px}.rich-page .page-lines{margin-top:22px}.audit{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.audit section{background:var(--paper);padding:34px;border:0}.audit p{max-width:520px}@media(max-width:860px){.feature-band,.feature-band.reverse{grid-template-columns:1fr}.feature-band.reverse .feature-image{order:-1}.feature-image{min-height:320px}.audit{grid-template-columns:1fr}}
@media(max-width:860px){.topbar{position:absolute;align-items:flex-start;padding:14px 16px}.brand img{width:38px;height:38px}.brand span{display:none}nav{gap:9px;flex-wrap:wrap;justify-content:flex-end;font-size:10px}.hero{padding-top:70px}.hero-logo{width:132px}.hero h1{font-size:47px}.btn{width:100%}.split,.split.reverse{grid-template-columns:1fr}.split.reverse .split-image{order:-1}.split-image{min-height:360px}.service-summary,.trust-list,.industry-grid{grid-template-columns:1fr}.intro,.trust-section,.final{padding-block:78px}footer{display:block}.operations{min-height:58svh}}

.hidden-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}


/* Mobile launch fix — 2026-04-29 */
@media(max-width:860px){
  html,body{width:100%;max-width:100%;overflow-x:hidden;}
  .topbar{position:absolute;inset:0 0 auto 0;display:grid;grid-template-columns:1fr;gap:8px;padding:12px 14px 10px;background:rgba(255,248,238,.93);backdrop-filter:blur(14px);}
  .brand{justify-content:center;gap:8px;}
  .brand img{width:42px;height:42px;}
  .brand span{display:inline;font-size:11px;letter-spacing:.12em;}
  nav{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;font-size:9px;letter-spacing:.055em;text-align:center;line-height:1.15;}
  nav a{display:flex;align-items:center;justify-content:center;min-height:30px;padding:6px 3px;border-radius:999px;background:rgba(32,54,44,.08);opacity:.9;white-space:normal;}
  nav a.active{background:var(--forest);color:#fff;}
  .hero{min-height:auto;padding-top:104px;display:block;}
  .hero-image{background-position:58% center;filter:saturate(.92) contrast(1.02);}
  .hero-veil{background:linear-gradient(90deg,rgba(7,10,8,.93),rgba(7,10,8,.76) 58%,rgba(7,10,8,.34)),linear-gradient(0deg,rgba(7,10,8,.70),rgba(7,10,8,.10) 48%);}
  .hero-copy{width:100%;max-width:none;margin:0;padding:44px 20px 56px;color:#fff;}
  .hero-logo{width:118px;margin-bottom:18px;}
  .brand-line{font-size:11px;letter-spacing:.22em;margin-bottom:14px;}
  .hero h1{font-size:clamp(38px,11vw,48px);line-height:.98;letter-spacing:-.035em;max-width:350px;overflow-wrap:normal;}
  .hero-sub{font-size:16px;line-height:1.55;max-width:340px;margin-top:18px;color:rgba(255,255,255,.88);}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px;max-width:320px;}
  .btn{width:100%;min-height:48px;padding:0 18px;}
  .intro{padding:54px 20px 62px;}
  .intro h2,.split-copy h2,.final h2,.page h1{font-size:clamp(34px,10vw,46px);line-height:1;}
  .intro p,.split-copy p,.page p,.line p,.industry p,.audit p{font-size:16px;line-height:1.65;}
  .split,.split.reverse{grid-template-columns:1fr;min-height:0;}
  .split-image{min-height:300px;}
  .split-copy{padding:46px 20px;}
  .service-summary{padding:48px 20px;gap:26px;}
  .operations{min-height:520px;padding:42px 20px;background-position:center;}
  .operations h2{font-size:clamp(40px,12vw,56px);line-height:.96;}
  .operations p{font-size:16px;}
  .final{padding:62px 20px;}
  .page{padding:138px 20px 70px;}
  .page-head{margin-bottom:42px;}
  .feature-band{gap:28px;margin:24px 0 48px;}
  .feature-image{min-height:280px;}
  .industry{padding:28px 20px;}
  .audit section{padding:28px 20px;}
  .contact-form input,.contact-form textarea{font-size:16px;}
  footer{padding:28px 20px;line-height:1.5;}
}
@media(max-width:380px){
  nav{font-size:8px;letter-spacing:.03em;}
  .hero h1{font-size:36px;}
  .hero-copy{padding-left:16px;padding-right:16px;}
}


/* Mobile nav anti-clip patch */
@media(max-width:860px){
  .topbar{width:100%;max-width:100vw;overflow:hidden;}
  nav{box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:3px;max-width:100%;overflow:visible;}
  nav a{min-width:0;max-width:100%;padding:6px 2px;overflow:hidden;text-overflow:clip;}
}
@media(max-width:420px){nav{font-size:8.5px;letter-spacing:.025em}.brand span{font-size:10px}}
