/* Scoped main-site collection; product hubs, brochures and pricelists are untouched. */
body.denya-references-published #main-content > .container { width:100%; max-width:none; padding:0; }
body.denya-references-published #left-area { width:100%; padding:0!important; float:none; }
body.denya-references-published #main-content .container::before { display:none; }
body.denya-references-published .et_post_meta_wrapper { display:none; }
body.denya-references-published article.page { padding-bottom:0; margin-bottom:0; }
.dr-collection { --dr-blue:#244c9f; --dr-ink:#182d4a; --dr-muted:#52647c; color:var(--dr-ink); background:#fff; font:16px/1.7 'IBM Plex Sans',system-ui,sans-serif; }
.dr-collection * { box-sizing:border-box; }
.dr-collection :is(h1,h2,h3,h4,h5,p,figure,dl,dd) { margin:0; padding:0; }
.dr-collection :is(h1,h2,h3,h4,h5) { color:var(--dr-ink)!important; font-family:'IBM Plex Sans',system-ui,sans-serif; font-weight:650; letter-spacing:-.045em; text-wrap:balance; }
.dr-collection a { color:var(--dr-blue); text-decoration:none; }
.dr-collection a:focus-visible,.dr-collection button:focus-visible { outline:3px solid #1a65d6; outline-offset:5px; }
.dr-container { width:min(90%,1200px); margin-inline:auto; }
.dr-intro { padding-block:34px 70px; }
.dr-breadcrumb { display:flex; gap:12px; align-items:center; font-size:13px; color:var(--dr-muted); margin-bottom:48px; }
.dr-breadcrumb a { text-decoration:underline; text-underline-offset:4px; }
.dr-intro-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:70px; align-items:end; }
.dr-collection .dr-eyebrow { color:var(--dr-blue); font-size:11px; font-weight:750; letter-spacing:.14em; margin-bottom:16px; }
.dr-collection h1 { font-size:clamp(48px,6.8vw,84px); line-height:1.04; }
.dr-collection h1 span { color:var(--dr-blue); }
.dr-intro-copy p { color:var(--dr-muted); font-size:18px; line-height:1.75; max-width:520px; }
.dr-collection .dr-button { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:14px 23px; min-height:52px; border-radius:100px; background:var(--dr-blue); color:white!important; font-size:14px; font-weight:650; line-height:1.4; transition:background .2s; }
.dr-collection .dr-button:hover { background:#183976; }
.dr-intro-copy .dr-button { margin-top:25px; }
.dr-projects { background:#f3f6fb; padding:64px 0; }
.dr-section-head { display:flex; justify-content:space-between; gap:40px; align-items:end; margin-bottom:30px; }
.dr-collection h2 { font-size:clamp(29px,3.4vw,43px); line-height:1.16; }
.dr-section-head > p { max-width:340px; color:var(--dr-muted); font-size:14px; }
.dr-project { background:white; border:1px solid #e0e6ee; border-radius:24px; overflow:hidden; box-shadow:0 20px 60px #21365808; scroll-margin-top:120px; }
.dr-project-grid { display:grid; grid-template-columns:1.15fr 1fr; }
.dr-photo { min-width:0; }
.dr-photo a { position:relative; display:block; overflow:hidden; background:#e2e9e4; }
.dr-photo img { display:block; width:100%; height:auto; }
.dr-photo-cover { display:flex; flex-direction:column; background:#f9fafc; }
.dr-photo-cover a { flex:1; min-height:440px; }
.dr-photo-cover img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.dr-zoom { position:absolute; right:18px; bottom:18px; padding:8px 13px; border-radius:99px; color:white; background:#142b42e8; font-size:12px; font-weight:600; }
.dr-photo figcaption { padding:16px 20px; color:var(--dr-muted); font-size:13px; line-height:1.6; }
.dr-case-copy { padding:38px; }
.dr-tags { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:22px; }
.dr-tags span { color:var(--dr-blue); background:#edf2fc; padding:5px 10px; border-radius:99px; font-size:11px; font-weight:650; }
.dr-collection h3 { font-size:clamp(27px,3vw,36px); line-height:1.17; }
.dr-case-copy > p { color:var(--dr-muted); font-size:15px; margin-top:19px; }
.dr-facts { margin-top:25px!important; border-top:1px solid #e2e8f0; }
.dr-facts > div { padding:12px 0; border-bottom:1px solid #e2e8f0; }
.dr-facts dt { font-size:11px; color:var(--dr-muted); margin-bottom:3px; }
.dr-facts dd { font-size:14px; line-height:1.5; font-weight:550; }
.dr-text-link { display:inline-flex; gap:16px; margin-top:23px; font-weight:650; font-size:14px; }
.dr-text-link:hover,.dr-related-card:hover .dr-card-link { text-decoration:underline; text-underline-offset:4px; }
.dr-gallery { padding:42px; border-top:1px solid #e2e8f0; scroll-margin-top:115px; }
.dr-gallery-head { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:26px; }
.dr-collection h4 { font-size:29px; line-height:1.2; }
.dr-gallery-head > p { font-size:13px; color:var(--dr-muted); }
.dr-gallery-grid { display:grid; grid-template-columns:minmax(0,560px); justify-content:center; gap:25px; }
.dr-gallery-grid .dr-photo { border:1px solid #e3e9f0; border-radius:16px; overflow:hidden; }
.dr-gallery-grid img { aspect-ratio:3/4; object-fit:contain; }
.dr-collection .dr-context { max-width:810px; margin-top:25px; color:var(--dr-muted); font-size:12px; line-height:1.7; }
.dr-related { padding-block:72px; }
.dr-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.dr-related-card { display:flex; flex-direction:column; padding:28px; border:1px solid #dce4f0; border-radius:18px; transition:border-color .2s,box-shadow .2s; }
.dr-related-card:hover { border-color:#244c9f; box-shadow:0 12px 30px #244c9f0b; }
.dr-card-code { font-size:11px; font-weight:650; letter-spacing:.08em; margin-bottom:28px; }
.dr-related-card h3 { font-size:24px; line-height:1.2; min-height:58px; }
.dr-related-card p { font-size:14px; line-height:1.7; color:var(--dr-muted); padding-block:14px 28px; }
.dr-card-link { margin-top:auto; font-size:13px; font-weight:650; display:flex; justify-content:space-between; gap:12px; }
.dr-contact { padding:64px 0; background:#edf2fc; }
.dr-contact-grid { display:grid; grid-template-columns:1fr auto; align-items:center; gap:40px; }
.dr-contact p:not(.dr-eyebrow) { max-width:610px; margin-top:20px; color:var(--dr-muted); }
.dr-viewer { padding:0; width:min(1200px,96vw); max-width:96vw; max-height:96dvh; border:0; border-radius:16px; background:#0b1524; color:white; }
.dr-viewer::backdrop { background:#030a15e8; }
.dr-viewer-tools { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 20px; color:#dce7fb; font-size:13px; }
.dr-viewer button { font:inherit; cursor:pointer; color:white; background:#ffffff17; border:1px solid #ffffff45; padding:10px 14px; border-radius:99px; min-height:44px; min-width:44px; }
.dr-viewer-content { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; padding:0 15px 18px; }
.dr-viewer figure { min-width:0; text-align:center; }
.dr-viewer img { max-width:100%; max-height:75dvh; width:auto; height:auto; object-fit:contain; }
.dr-viewer figcaption { font-size:13px; color:#e0e8f6; padding:14px 5px 0; line-height:1.5; }
html.dr-viewer-open { overflow:hidden; }
@media(max-width:1000px) { .dr-intro-grid { gap:35px; } .dr-case-copy { padding:28px; } .dr-project-grid { grid-template-columns:1fr 1fr; } .dr-photo-cover a { min-height:500px; } }
@media(max-width:760px) { .dr-intro { padding-block:24px 45px; } .dr-breadcrumb { margin-bottom:32px; } .dr-intro-grid,.dr-project-grid,.dr-contact-grid { grid-template-columns:1fr; gap:26px; } .dr-intro-copy p { font-size:16px; } .dr-projects { padding-block:40px; } .dr-section-head,.dr-gallery-head { display:block; } .dr-section-head>p,.dr-gallery-head>p { margin-top:14px; } .dr-photo-cover a { min-height:0; flex:initial; } .dr-photo-cover img { position:static; height:auto; } .dr-case-copy { padding:28px; } .dr-gallery { padding:28px; } .dr-related-grid { grid-template-columns:1fr; } .dr-related-card h3 { min-height:0; } .dr-related { padding-block:48px; } .dr-contact { padding-block:45px; } .dr-contact .dr-button { justify-self:start; } }
@media(max-width:600px) { .dr-gallery-grid { grid-template-columns:1fr; gap:20px; } .dr-gallery,.dr-case-copy { padding:23px; } .dr-project { border-radius:18px; } .dr-viewer-content { gap:6px; padding-inline:7px; } .dr-viewer button { padding:8px; } .dr-collection h4 { font-size:25px; } }
@media(prefers-reduced-motion:reduce) { .dr-collection * { transition:none!important; scroll-behavior:auto!important; } }
.dr-project + .dr-project { margin-top:38px; }
.dr-project-index { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 28px; }
.dr-project-index a { border:1px solid #d7e1f2; border-radius:99px; padding:9px 16px; font-size:13px; background:white; font-weight:600; }
.dr-project-index a:hover { background:#e8eefb; }
.dr-location-brand { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:24px; }
.dr-location-brand img { width:110px; height:28px; object-fit:contain; }
.dr-location-brand span { color:var(--dr-muted); font-size:11px; }
.dr-case-copy .dr-branding-note,.dr-branding-note { color:var(--dr-muted); font-size:12px; line-height:1.7; margin-top:18px; }
.dr-gallery-grid--inalum { grid-template-columns:repeat(3,minmax(0,1fr)); }
.dr-gallery-grid--inalum img { aspect-ratio:3/4; object-fit:cover; }
.dr-project-video { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,360px); align-items:center; gap:55px; padding:42px; background:#f8faff; border-top:1px solid #e2e8f0; }
.dr-project-video h4 { font-size:32px; margin-bottom:18px; }
.dr-project-video p { color:var(--dr-muted); font-size:15px; }
.dr-project-video p.dr-branding-note { font-size:12px; }
.dr-project-video figure { max-width:324px; justify-self:center; width:100%; }
.dr-project-video video { display:block; width:100%; height:auto; background:#112037; border-radius:16px; }
.dr-project-video figcaption { color:var(--dr-muted); font-size:12px; line-height:1.6; padding-top:10px; }
@media(max-width:900px) { .dr-gallery-grid--inalum { grid-template-columns:repeat(2,minmax(0,1fr)); } .dr-project-video { gap:28px; grid-template-columns:minmax(0,1fr) minmax(0,290px); } }
@media(max-width:600px) { .dr-gallery-grid--inalum { grid-template-columns:1fr; } .dr-project-video { grid-template-columns:1fr; padding:23px; } .dr-project-video h4 { font-size:27px; } }
.dr-flow-nav { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:36px; }
.dr-flow-nav a { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:8px 15px; border:1px solid #d7e1f2; border-radius:99px; background:#f8faff; font-size:13px; font-weight:600; }
.dr-flow-nav a:hover { background:#edf2fc; }
.dr-flow-nav span { font-size:11px; color:var(--dr-muted); }
.dr-project-flow { list-style:none!important; padding:0!important; margin:0!important; }
.dr-flow-stage { min-width:0; padding:32px 0; border-top:1px solid #e2e8f0; scroll-margin-top:115px; }
.dr-flow-stage:last-child { padding-bottom:0; }
.dr-flow-heading { display:flex; align-items:flex-start; gap:18px; margin-bottom:24px; }
.dr-flow-number { display:grid; place-items:center; flex:0 0 42px; height:42px; color:var(--dr-blue); background:#edf2fc; border-radius:50%; font-size:13px; font-weight:700; }
.dr-collection .dr-flow-heading h5 { font-size:25px; line-height:1.25; margin:3px 0 12px; }
.dr-flow-heading p { max-width:700px; color:var(--dr-muted); font-size:14px; line-height:1.75; }
.dr-flow-stage--shipping { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,480px); align-items:start; gap:32px; }
.dr-gallery-grid--single { grid-template-columns:minmax(0,1fr); }
.dr-flow-stage--shipping .dr-flow-heading { position:sticky; top:125px; }
@media(max-width:900px) { .dr-flow-stage--shipping { grid-template-columns:1fr 1fr; gap:24px; } .dr-collection .dr-flow-heading h5 { font-size:23px; } }
@media(max-width:600px) { .dr-flow-nav { gap:7px; margin-bottom:25px; } .dr-flow-nav a { padding:8px 12px; font-size:12px; } .dr-flow-stage--shipping { grid-template-columns:1fr; gap:0; } .dr-flow-stage--shipping .dr-flow-heading { position:static; } .dr-flow-heading { gap:12px; } .dr-flow-number { flex-basis:34px; height:34px; font-size:11px; } .dr-collection .dr-flow-heading h5 { font-size:21px; } }
