/* V5: the original alpha product sits directly on the shared rock background. */
.dn-hero{grid-template-columns:1.08fr 1fr;min-height:650px;background-image:linear-gradient(90deg,rgba(12,21,27,.85) 0%,rgba(12,21,27,.53) 43%,rgba(12,21,27,.12) 76%),url('v4-decorative-basalt.webp');background-position:center}
.dn-hero-copy{padding-top:72px;padding-bottom:76px;padding-right:10px}
.dn-hero h1{font-size:clamp(46px,5.1vw,77px);line-height:1.035;letter-spacing:-.05em}
.dn-hero .dn-lead{max-width:500px;color:#cbd6db;font-size:17px;line-height:1.7}
.dn-hero .eyebrow{color:#d0a47e;font-size:10px;margin-bottom:25px}
.dn-hero .wp-block-buttons{gap:13px;margin-top:30px}
.dn-hero .is-style-outline .wp-block-button__link{background:#17212830;border-color:#7a8c96}
.dn-hero-photo{position:relative;isolation:isolate;align-self:center;display:block;height:560px;min-height:0;max-width:none;padding:0;margin:12px var(--gutter) 12px 0!important;background:none;border:0;box-shadow:none;overflow:visible}
.dn-hero-photo::before{content:"";position:absolute;inset:8% -9% 10%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 56% 36%,rgba(195,153,107,.15),rgba(142,111,81,.045) 37%,transparent 65%)}
.dn-hero-photo::after{content:"";position:absolute;left:50%;bottom:56px;z-index:-1;width:230px;height:25px;border-radius:50%;background:rgba(2,9,13,.38);filter:blur(15px);transform:translateX(-50%);pointer-events:none}
.dn-hero-photo img,.dn-hero-photo img[src*="v3-"]{position:absolute;left:50%;top:46%;width:clamp(640px,58vw,790px);height:clamp(640px,58vw,790px);max-width:none;object-fit:contain;transform:translate(-50%,-50%);mix-blend-mode:normal;filter:drop-shadow(-1px -1px 2px rgba(222,183,144,.2)) drop-shadow(14px 21px 15px rgba(1,7,11,.35));pointer-events:none}
.dn-hero-photo figcaption{position:absolute;bottom:11px;left:0;width:100%;margin:0;padding:0;text-align:center;color:#afbec5;font-size:9px;line-height:1.6;letter-spacing:.12em}
@keyframes dn-product-float{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 4px))}}
@media(min-width:1024px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.dn-hero-photo.is-motion-ready img{animation:dn-product-float 9s ease-in-out infinite;animation-play-state:paused}.dn-hero-photo.is-in-view img{animation-play-state:running}}
@media(min-width:1500px){.dn-hero{min-height:710px;grid-template-columns:1fr 1fr}.dn-hero-photo{height:620px;margin-right:max(var(--gutter),calc((100vw - 1280px)/2))!important}.dn-hero-photo img,.dn-hero-photo img[src*="v3-"]{width:840px;height:840px}}
@media(min-width:641px) and (max-width:1023px){.dn-hero{min-height:585px;grid-template-columns:1.1fr .9fr}.dn-hero-copy{padding-top:57px;padding-bottom:60px;padding-right:0}.dn-hero h1{font-size:clamp(41px,5.5vw,57px)}.dn-hero .dn-lead{font-size:16px;line-height:1.65}.dn-hero-photo{height:465px;margin-right:15px!important}.dn-hero-photo img,.dn-hero-photo img[src*="v3-"]{width:620px;height:620px;top:45%}.dn-hero-photo figcaption{font-size:8px;letter-spacing:.09em}.dn-hero-photo::after{bottom:49px;width:185px}}
@media(max-width:640px){.dn-hero{grid-template-columns:1fr;min-height:0;background-position:64% center;background-image:linear-gradient(180deg,rgba(12,21,27,.87),rgba(12,21,27,.64) 48%,rgba(12,21,27,.2)),url('v4-decorative-basalt.webp')}.dn-hero-copy{padding:43px var(--gutter) 13px}.dn-hero h1{font-size:clamp(39px,11.9vw,52px);line-height:1.04;letter-spacing:-.049em;margin-bottom:22px}.dn-hero .eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:22px}.dn-hero .dn-lead{font-size:15px;line-height:1.7;margin-bottom:0}.dn-hero .wp-block-buttons{margin-top:25px;gap:10px;flex-direction:row}.dn-hero .wp-block-button__link{padding:13px 14px;font-size:11px}.dn-hero-photo{height:342px;margin:0 var(--gutter) 24px!important}.dn-hero-photo img,.dn-hero-photo img[src*="v3-"]{width:475px;height:475px;top:44%;transform:translate(-50%,-50%);animation:none!important;filter:drop-shadow(-1px -1px 1px rgba(222,183,144,.16)) drop-shadow(9px 14px 11px rgba(1,7,11,.3))}.dn-hero-photo::before{inset:-10% -18% 0}.dn-hero-photo::after{bottom:25px;width:150px;height:19px;filter:blur(11px)}.dn-hero-photo figcaption{bottom:0;font-size:8px;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){.dn-hero-photo img{animation:none!important;transition:none!important}.dn-hero-photo{animation:none!important;transition:none!important}}

/* Photographed field and process records use the same restrained card system. */
.dn-story-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #dbe2df;transition:border-color .2s,box-shadow .2s;overflow:hidden}
.dn-story-card:hover{border-color:#a8b9ba;box-shadow:0 8px 30px rgba(17,41,50,.05)}
.dn-story-card .dn-story-card-photo{padding:0;margin:0;background:#e9edeb;border-bottom:1px solid #e1e6e2}
.dn-story-card .dn-story-card-photo img{display:block;width:100%;height:310px;object-fit:contain;background:#e9edeb;filter:none;mix-blend-mode:normal;transform:none}
.dn-story-card .dn-card-copy{padding:30px 31px 32px;flex:1;display:flex;flex-direction:column}
.dn-story-card .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:16px}
.dn-story-card h3{font-size:29px;line-height:1.2;letter-spacing:-.037em;margin-bottom:17px}
.dn-story-card .dn-card-copy>p:not(.eyebrow):not(.dn-text-link){font-size:14px;line-height:1.7;color:#5a6b73;margin-bottom:20px}
.dn-story-card .dn-text-link{font-size:12px;margin-top:auto;padding-top:5px}
.dn-story-card .dn-text-link a{border-color:#a9b9bb;padding-bottom:5px}
.dn-home-field-reports>.dn-lead{max-width:760px;margin-bottom:35px}
.dn-home-field-reports>.dn-text-link{margin-top:30px}
.dn-field-directory{padding-top:50px}.dn-field-grid{gap:30px}
.dn-image-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px!important;margin-bottom:40px!important}
.dn-image-resource-grid .dn-story-card-photo img{height:285px}
.dn-image-resource-grid .dn-story-card h3{font-size:28px}
.dn-resource-group .dn-resource-grid{gap:28px;margin-top:30px}
.dn-resource-group .dn-article-card h3{font-size:24px;line-height:1.23}
.dn-resource-group .dn-article-card{padding:25px 0 18px}
.dn-resource-group .dn-article-card p{font-size:14px;line-height:1.7}
.dn-resource-group .dn-article-card .eyebrow{font-size:9px}
.dn-resource-group>.dn-lead{max-width:760px}
@media(max-width:1023px){.dn-story-card .dn-card-copy{padding:25px}.dn-story-card h3{font-size:26px}.dn-story-card .dn-story-card-photo img{height:260px}.dn-field-grid,.dn-image-resource-grid{gap:23px}.dn-image-resource-grid .dn-story-card h3{font-size:25px}}
@media(max-width:640px){.dn-story-card .dn-card-copy{padding:24px 23px 27px}.dn-story-card h3{font-size:27px;line-height:1.2}.dn-story-card .dn-story-card-photo img,.dn-image-resource-grid .dn-story-card-photo img{height:224px}.dn-story-card .eyebrow{font-size:8px;letter-spacing:.12em}.dn-story-card .dn-card-copy>p:not(.eyebrow):not(.dn-text-link){font-size:14px;line-height:1.65}.dn-story-card .dn-text-link{font-size:12px}.dn-field-grid,.dn-image-resource-grid{grid-template-columns:1fr;gap:25px}.dn-image-resource-grid{margin-top:28px!important;margin-bottom:32px!important}.dn-field-directory{padding-top:32px}.dn-home-field-reports>.dn-lead{font-size:17px;margin-bottom:28px}.dn-resource-group .dn-resource-grid{gap:10px}.dn-resource-group .dn-article-card h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.dn-story-card{transition:none}}

/* V5 long-form reading rhythm. */
.dn-prose h1{font-size:clamp(40px,4.1vw,62px);line-height:1.09;letter-spacing:-.045em;margin-bottom:32px}
.dn-prose .wp-block-post-content>p:first-child:has(>strong:only-child){font-size:13px;line-height:1.6;letter-spacing:.012em;color:#6d6b60;margin-bottom:17px}
.dn-prose .wp-block-post-content>[id]{scroll-margin-top:145px}
.dn-prose .wp-block-table{overflow-x:auto;border:1px solid #d7dfdc}
.dn-prose .wp-block-table table{margin:0}
.dn-prose .wp-block-table th{background:#e9efec}
@media(max-width:640px){.dn-prose h1{font-size:35px;line-height:1.13;letter-spacing:-.04em;margin-bottom:25px}.dn-prose .dn-breadcrumbs{margin-bottom:24px;row-gap:5px}.dn-prose .dn-breadcrumbs [aria-current="page"]{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-basis:100%}.dn-prose .wp-block-post-content>p:first-child:has(>strong:only-child){font-size:12px;line-height:1.65}.dn-prose .wp-block-post-content>[id]{scroll-margin-top:125px}.dn-prose .wp-block-image{margin:28px 0}.dn-prose .wp-element-caption{font-size:11px;line-height:1.6}}

/* Native paired photographs retain complete engineering frames. */
.dn-prose .dn-photo-pair{align-items:flex-start;gap:24px;margin:32px 0!important}
.dn-prose .dn-photo-pair .wp-block-image{margin:0!important}
.dn-prose .dn-photo-pair img{width:100%;height:520px;object-fit:contain;background:#edf1ef}
@media(min-width:1024px){.dn-image-resource-grid.dn-resource-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.dn-resource-three .dn-story-card-photo img{height:235px}.dn-resource-three .dn-card-copy{padding:26px}.dn-resource-three .dn-story-card h3{font-size:25px}.dn-resource-three .dn-story-card .eyebrow{font-size:8px}}
@media(max-width:640px){.dn-prose .dn-photo-pair{flex-direction:column;gap:25px;margin:28px 0!important}.dn-prose .dn-photo-pair img{height:auto;max-height:560px}}

/* Exact MH-3 cutout: photographic pixels stay separate from decorative CSS. */
.dn-hero:has(.dn-hero-real-photo){background-image:linear-gradient(90deg,rgba(12,21,27,.85) 0%,rgba(12,21,27,.56) 43%,rgba(12,21,27,.24) 76%,rgba(12,21,27,.28) 100%),url('v4-decorative-basalt.webp')}
.dn-hero-photo.dn-hero-real-photo{height:600px}
.dn-hero-photo.dn-hero-real-photo img{width:calc(100% - 48px);height:auto;max-width:540px;max-height:none;left:50%;top:48%;object-fit:contain;transform:translate(-50%,-50%);filter:brightness(var(--dn-photo-brightness,1)) saturate(var(--dn-photo-saturation,1)) drop-shadow(10px 19px 15px rgba(0,5,9,.26))}
.dn-hero-photo.dn-hero-real-photo::before{inset:15% -3% 12%;background:radial-gradient(ellipse at 52% 42%,rgba(204,162,113,.08),rgba(142,111,81,.025) 40%,transparent 69%)}
.dn-hero-photo.dn-hero-real-photo::after{left:50%;top:auto;bottom:64px;width:58%;max-width:290px;height:21px;border:0;border-radius:50%;background:rgba(0,5,9,.18);filter:blur(18px);transform:translateX(-50%)}
@media(min-width:1500px){.dn-hero-photo.dn-hero-real-photo{height:620px}.dn-hero-photo.dn-hero-real-photo img{max-width:560px;top:48%}}
@media(min-width:641px) and (max-width:1023px){.dn-hero-photo.dn-hero-real-photo{height:465px}.dn-hero-photo.dn-hero-real-photo img{width:calc(100% - 26px);max-width:405px;top:47%}.dn-hero-photo.dn-hero-real-photo::after{width:58%;bottom:72px;opacity:.7}}
@media(max-width:640px){.dn-hero:has(.dn-hero-real-photo){background-image:linear-gradient(180deg,rgba(12,21,27,.87),rgba(12,21,27,.64) 48%,rgba(12,21,27,.38)),url('v4-decorative-basalt.webp')}.dn-hero-photo.dn-hero-real-photo{height:360px;margin-top:8px!important}.dn-hero-photo.dn-hero-real-photo img{width:calc(100% - 16px);max-width:330px;max-height:none;top:48%;animation:none!important;transform:translate(-50%,-50%);filter:drop-shadow(5px 11px 10px rgba(0,5,9,.25))}.dn-hero-photo.dn-hero-real-photo::after{display:none}}
@media(prefers-reduced-motion:reduce){.dn-hero-photo.dn-hero-real-photo img{animation:none!important;transition:none!important}}

/* 0.5.2: the original photograph moves as one restrained 2.5D plane. */
.dn-hero-photo.dn-hero-real-photo img{animation:none!important;transition:none;transform-origin:50% 50%}
.dn-hero-photo.dn-hero-real-photo.is-depth-ready img{transform:translate(-50%,-50%) perspective(1100px) translate3d(var(--dn-depth-x,0px),var(--dn-depth-y,0px),0) rotateX(var(--dn-depth-rx,0deg)) rotateY(var(--dn-depth-ry,0deg)) rotateZ(var(--dn-depth-rz,0deg));filter:drop-shadow(calc(10px + var(--dn-depth-shadow-x,0px)) calc(19px + var(--dn-depth-shadow-y,0px)) 15px rgba(0,5,9,.26))}
.dn-hero-photo.dn-hero-real-photo.is-depth-visible img{will-change:transform}
.dn-hero-photo.dn-hero-real-photo.is-depth-ready::before{transform:translate3d(var(--dn-depth-glow-x,0px),var(--dn-depth-glow-y,0px),0)}
.dn-hero-photo.dn-hero-real-photo.is-depth-ready::after{transform:translateX(calc(-50% + var(--dn-depth-shadow-x,0px))) scaleX(.99)}
@media(max-width:640px){.dn-hero-photo.dn-hero-real-photo.is-depth-ready img{filter:drop-shadow(5px calc(11px + var(--dn-depth-shadow-y,0px)) 10px rgba(0,5,9,.25))}}
@media(prefers-reduced-motion:reduce){
 .dn-hero-photo.dn-hero-real-photo img,.dn-hero-photo.dn-hero-real-photo.is-depth-ready img{animation:none!important;transition:none!important;transform:translate(-50%,-50%)!important;will-change:auto;filter:drop-shadow(10px 19px 15px rgba(0,5,9,.26))}
 .dn-hero-photo.dn-hero-real-photo::before{transform:none!important;transition:none!important;animation:none!important}
 .dn-hero-photo.dn-hero-real-photo::after{transform:translateX(-50%)!important;transition:none!important;animation:none!important}
}
@media(max-width:640px) and (prefers-reduced-motion:reduce){.dn-hero-photo.dn-hero-real-photo img,.dn-hero-photo.dn-hero-real-photo.is-depth-ready img{filter:drop-shadow(5px 11px 10px rgba(0,5,9,.25))}}

/* Recognizable WhatsApp contact entry; activation keeps the existing local panel. */
.dn-contact-launcher{min-height:48px;padding:10px 17px;gap:9px;border:1px solid #20bc5c;border-radius:999px;background:#25d366;color:#102d24;box-shadow:0 5px 20px rgba(9,58,37,.2);font-size:13px;font-weight:600}
.dn-contact-launcher .dn-whatsapp-icon{display:block;flex:none;width:26px;height:26px;object-fit:contain}
.dn-contact-launcher:hover{background:#20c662;border-color:#1caf55}
.dn-contact-launcher:focus-visible{outline:3px solid #176c45;outline-offset:3px}
@media(max-width:640px){.dn-contact-launcher{width:54px;height:54px;min-width:54px;min-height:54px;padding:12px;gap:0;border-radius:50%}.dn-contact-launcher .dn-whatsapp-icon{width:28px;height:28px}}
.home .dn-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link{background:#9c643d;border-color:#9c643d}
.home .dn-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover{background:#865330;border-color:#865330}

/* Mobile first screen: one primary action and a quieter model link. */
@media(max-width:640px){
 .dn-hero:has(.dn-hero-real-photo){background-image:linear-gradient(180deg,rgba(12,21,27,.92),rgba(12,21,27,.76) 46%,rgba(12,21,27,.38) 78%),url('v4-decorative-basalt.webp')}
 .dn-hero-copy{padding-top:35px;padding-bottom:9px}
 .dn-hero .dn-lead{line-height:1.6}
 .dn-hero .wp-block-buttons{margin-top:20px;gap:12px 22px;align-items:center}
 .dn-hero .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;font-size:12px;padding:12px 16px}
 .dn-hero .wp-block-button.is-style-outline .wp-block-button__link{padding:12px 0;border:0;background:transparent;color:#dbe3e6;font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
 .dn-hero .wp-block-button.is-style-outline .wp-block-button__link:hover{color:#fff;filter:none}
 .dn-hero .wp-block-button__link:focus-visible{outline-color:var(--dn-accent)}
}
