@import url('https://fonts.googleapis.com/css2?family=Arimo:wght@400;500;600;700&family=Poppins:wght@400;500;600;700&display=swap');
.dpe-portfolio {isolation:isolate; width:100%; max-width:none; font-size:16px; line-height:1.5; text-align:left;}
.dpe-portfolio *, .dpe-portfolio *::before, .dpe-portfolio *::after {box-sizing:border-box;}
.dpe-portfolio :where(h1,h2,h3,p,figure,fieldset,dialog) {margin:0; padding:0;}
.dpe-portfolio :where(h1,h2,h3) {font-weight:inherit;}
.dpe-portfolio button {appearance:none; font:inherit; letter-spacing:inherit; line-height:inherit; border-radius:0; box-shadow:none; text-transform:none; margin:0;}
.dpe-portfolio button::before,.dpe-portfolio button::after {box-shadow:none;}
.dpe-portfolio svg {display:block;flex-shrink:0;vertical-align:middle;}
.dpe-portfolio a {text-decoration:none;}
.dpe-portfolio [hidden] {display:none !important;}
.dpe-portfolio .sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.dpe-portfolio{ --navy:#102b46; --deep:#112537; --orange:#f7941d; --ink:#18334b; --muted-text:#697988; --paper:#fff; --mist:#f4f7f9; }
.dpe-portfolio{ scroll-behavior:smooth; }
.dpe-portfolio{ margin:0; font-family:'Arimo',Arial,sans-serif; background:var(--paper); color:var(--ink); -webkit-font-smoothing:antialiased; }
.dpe-portfolio button,.dpe-portfolio a{ -webkit-tap-highlight-color:transparent; }
.dpe-portfolio button{ cursor:pointer; }
.dpe-portfolio button:focus-visible,.dpe-portfolio a:focus-visible{ outline:3px solid var(--orange); outline-offset:4px; }
.dpe-portfolio img{ display:block; max-width:100%; }
.dpe-portfolio .site-shell{ overflow:hidden; }
.dpe-portfolio .container{ width:min(100% - 80px,1240px); margin-inline:auto; }
.dpe-portfolio h1,.dpe-portfolio h2,.dpe-portfolio h3,.dpe-portfolio p{ margin-top:0; }
.dpe-portfolio h1,.dpe-portfolio h2,.dpe-portfolio h3{ font-family:'Poppins',Arial,sans-serif; }
.dpe-portfolio .top-strip{ background:var(--navy); color:#dce9f2; height:35px; font-family:'Poppins',sans-serif; font-size:10px; font-weight:600; letter-spacing:.1em; }
.dpe-portfolio .top-strip-inner{ display:flex; justify-content:space-between; align-items:center; height:100%; }
.dpe-portfolio .top-strip a{ display:flex; align-items:center; gap:8px; color:#fff; text-decoration:none; letter-spacing:.02em; }
.dpe-portfolio .site-header{ height:98px; background:#fff; position:relative; z-index:30; border-bottom:1px solid #edf1f3; }
.dpe-portfolio .nav-inner{ display:flex; align-items:center; height:100%; gap:28px; }
.dpe-portfolio .brand{ flex-shrink:0; display:flex; align-items:center; width:132px; height:88px; }
.dpe-portfolio .brand img{ width:112px; max-height:82px; object-fit:contain; }
.dpe-portfolio .nav-links{ display:flex; align-items:center; gap:31px; margin-left:auto; }
.dpe-portfolio .nav-links a{ color:var(--navy); font-family:'Poppins',sans-serif; font-size:12px; font-weight:600; text-decoration:none; transition:color .2s; }
.dpe-portfolio .nav-links a:hover,.dpe-portfolio .nav-links .current{ color:#d5770c; }
.dpe-portfolio .nav-links .current{ position:relative; }
.dpe-portfolio .nav-links .current:after{ content:''; position:absolute; height:2px; width:100%; left:0; bottom:-10px; background:var(--orange); }
.dpe-portfolio .nav-cta,.dpe-portfolio .button-orange,.dpe-portfolio .button-navy{ display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:15px 21px; min-height:49px; background:var(--orange); color:#132d45; font-family:'Poppins',sans-serif; font-size:12px; font-weight:700; text-decoration:none; transition:transform .2s,background .2s; white-space:nowrap; }
.dpe-portfolio .nav-cta:hover,.dpe-portfolio .button-orange:hover,.dpe-portfolio .button-navy:hover{ transform:translateY(-3px); background:#ffad42; }
.dpe-portfolio .nav-cta{ margin-left:16px; }
.dpe-portfolio .menu-button,.dpe-portfolio .mobile-book{ display:none !important; }
.dpe-portfolio .eyebrow{ display:flex; align-items:center; gap:12px; color:#ca7114; font:700 11px/1.2 'Poppins',sans-serif; letter-spacing:.16em; }
.dpe-portfolio .eyebrow-line{ width:26px; height:2px; background:var(--orange); }
.dpe-portfolio .eyebrow.light{ color:var(--orange); }
.dpe-portfolio .hero{ min-height:730px; display:grid; grid-template-columns:48% 52%; align-items:center; padding-top:50px; padding-bottom:87px; }
.dpe-portfolio .hero-copy{ position:relative; z-index:2; padding-bottom:16px; }
.dpe-portfolio .hero h1{ font-size:clamp(55px,5.9vw,91px); line-height:1.06; letter-spacing:-.065em; color:var(--navy); font-weight:600; margin:27px 0 26px; white-space:nowrap; }
.dpe-portfolio h1 em,.dpe-portfolio h2 em{ font-style:normal; color:var(--orange); }
.dpe-portfolio .period{ color:var(--orange); }
.dpe-portfolio .hero-copy>p{ max-width:400px; color:#66798a; font-size:17px; line-height:1.7; margin-bottom:37px; }
.dpe-portfolio .text-link{ border:0; background:transparent; color:var(--navy); padding:0; font:700 13px 'Poppins',sans-serif; display:inline-flex; align-items:center; gap:19px; }
.dpe-portfolio .text-link span{ width:38px; height:38px; border:1px solid #ced6dc; display:grid; place-items:center; border-radius:50%; transition:background .2s,color .2s; }
.dpe-portfolio .text-link:hover span{ background:var(--orange); border-color:var(--orange); }
.dpe-portfolio .hero-visual{ height:585px; position:relative; margin-left:42px; }
.dpe-portfolio .hero-main-image{ width:75%; height:510px; position:absolute; right:0; top:10px; overflow:hidden; }
.dpe-portfolio .hero-main-image > img,.dpe-portfolio .hero-small-image > img{ width:100%; height:100%; object-fit:cover; }
.dpe-portfolio .hero-main-image > img{ object-position:50% 100%; }
.dpe-portfolio .hero-main-image:after{ content:''; position:absolute; inset:50% 0 0; background:linear-gradient(transparent,rgba(3,20,32,.24)); pointer-events:none; }
.dpe-portfolio .hero-main-image>span:not(.brand-watermark){ position:absolute; z-index:2; bottom:17px; left:18px; background:#fff; color:var(--navy); font:700 10px 'Poppins',sans-serif; letter-spacing:.09em; padding:10px 12px; }
.dpe-portfolio .hero-small-image{ position:absolute; left:0; bottom:0; width:37%; height:255px; overflow:hidden; border:9px solid #fff; box-shadow:0 17px 32px #1125371a; }
.dpe-portfolio .hero-stamp{ position:absolute; right:-20px; top:-30px; border-radius:50%; background:var(--orange); width:123px; height:123px; display:flex; flex-direction:column; align-items:center; justify-content:center; transform:rotate(10deg); color:var(--navy); box-shadow:0 9px 22px #e28c2433; }
.dpe-portfolio .hero-stamp>span{ font:600 47px/1 'Poppins'; letter-spacing:-.08em; }
.dpe-portfolio .hero-stamp small{ text-align:center; font:700 8px/1.35 'Poppins'; letter-spacing:.12em; }
.dpe-portfolio .intro-band{ background:var(--deep); color:#fff; padding:91px 0 94px; position:relative; }
.dpe-portfolio .intro-band:after{ content:''; position:absolute; right:-85px; top:-70px; width:440px; height:440px; border:1px solid #ffffff0d; border-radius:50%; box-shadow:0 0 0 95px #ffffff05,0 0 0 190px #ffffff03; pointer-events:none; }
.dpe-portfolio .intro-grid{ display:grid; grid-template-columns:1.05fr .9fr; gap:80px; position:relative; z-index:1; }
.dpe-portfolio .intro-grid h2{ font-size:clamp(40px,4.3vw,65px); line-height:1.13; letter-spacing:-.055em; font-weight:500; margin:25px 0 0; }
.dpe-portfolio .intro-right{ padding-top:30px; }
.dpe-portfolio .intro-right p{ color:#c2ced8; font-size:16px; line-height:1.85; max-width:530px; margin-bottom:32px; }
.dpe-portfolio .intro-points{ display:flex; flex-wrap:wrap; gap:15px 25px; }
.dpe-portfolio .intro-points span{ display:flex; gap:8px; align-items:center; color:#f0f4f7; font-size:12px; }
.dpe-portfolio .intro-points svg{ color:var(--orange); }
.dpe-portfolio .work-section{ padding-top:120px; padding-bottom:140px; scroll-margin-top:25px; }
.dpe-portfolio .section-heading{ display:flex; align-items:flex-end; justify-content:space-between; gap:60px; margin-bottom:55px; }
.dpe-portfolio .section-heading h2{ color:var(--navy); font-size:clamp(48px,6vw,78px); line-height:1.04; letter-spacing:-.06em; font-weight:600; margin:23px 0 0; }
.dpe-portfolio .section-heading>p{ width:340px; color:#6a7a87; font-size:15px; line-height:1.75; margin-bottom:6px; }
.dpe-portfolio .section-heading strong{ color:var(--navy); font-weight:700; }
.dpe-portfolio .filter-area{ display:grid; grid-template-columns:146px 1fr; gap:30px; padding:27px 0 23px; border-block:1px solid #d9e1e5; }
.dpe-portfolio .filter-label{ padding-top:10px; color:#6e7d88; font:700 10px/1.6 'Poppins',sans-serif; letter-spacing:.1em; }
.dpe-portfolio .filter-label span{ font-size:17px; color:var(--orange); margin-left:4px; }
.dpe-portfolio .filters{ display:flex; gap:8px; flex-wrap:wrap; }
.dpe-portfolio .filters{ border:0; margin:0; padding:0; min-width:0; }
.dpe-portfolio .filter{ background:#fff; color:#526577; border:1px solid #d9e1e5; padding:10px 15px; border-radius:40px; font:600 11px 'Poppins',sans-serif; transition:all .18s; }
.dpe-portfolio .filter:hover{ color:var(--navy); border-color:var(--navy); }
.dpe-portfolio .filter.active{ color:#fff; background:var(--navy); border-color:var(--navy); }
.dpe-portfolio .results-line{ display:flex; justify-content:space-between; margin:20px 0 24px; color:#71808b; font:700 10px 'Poppins',sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.dpe-portfolio .result-arrow{ color:var(--orange); font-size:14px; margin:0 7px; }
.dpe-portfolio .project-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px; }
.dpe-portfolio .project-card{ border:1px solid #e2e9ec; background:#fff; min-width:0; transition:box-shadow .25s,transform .25s; }
.dpe-portfolio .project-card:hover{ box-shadow:0 17px 48px #102b4614; transform:translateY(-2px); }
.dpe-portfolio .project-card.featured{ grid-column:1/-1; display:grid; grid-template-columns:1.08fr .92fr; }
.dpe-portfolio .project-media{ background:#e9edf0; min-width:0; }
.dpe-portfolio .project-images{ display:grid; grid-template-columns:1fr 1fr; gap:4px; height:335px; }
.dpe-portfolio .featured .project-images{ height:100%; min-height:555px; }
.dpe-portfolio .project-image{ position:relative; padding:0; border:0; overflow:hidden; background:#e4e9ed; text-align:left; }
.dpe-portfolio .project-image > img{ width:100%; height:100%; object-fit:cover; object-position:50% 48%; transition:transform .45s; }
.dpe-portfolio .project-image:hover > img{ transform:scale(1.04); }
.dpe-portfolio .brand-watermark{ position:absolute; z-index:4; right:12px; bottom:12px; width:82px; height:66px; display:flex; align-items:center; justify-content:center; padding:0; pointer-events:none; background:transparent; box-shadow:none; }
.dpe-portfolio .brand-watermark img{ width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 1px 2px #ffffffdd) drop-shadow(0 0 3px #ffffffaa); }
.dpe-portfolio .hero-main-image .brand-watermark{ width:96px; height:76px; }
.dpe-portfolio .hero-small-image .brand-watermark{ width:54px; height:43px; right:7px; bottom:7px; padding:3px; }
.dpe-portfolio .image-label{ position:absolute; top:16px; left:16px; background:#fff; color:var(--navy); padding:8px 12px; text-transform:uppercase; letter-spacing:.11em; font:700 10px 'Poppins',sans-serif; box-shadow:0 2px 10px #00000010; }
.dpe-portfolio .image-label.after{ background:var(--orange); }
.dpe-portfolio .expand-icon{ position:absolute; left:16px; bottom:16px; width:32px; height:32px; color:var(--navy); background:#ffffffec; display:grid; place-items:center; border-radius:50%; opacity:0; transition:opacity .2s; }
.dpe-portfolio .project-image:hover .expand-icon,.dpe-portfolio .project-image:focus-visible .expand-icon{ opacity:1; }
.dpe-portfolio .project-details{ padding:30px 33px 29px; }
.dpe-portfolio .featured .project-details{ display:flex; flex-direction:column; justify-content:center; padding:50px 54px; }
.dpe-portfolio .project-topline{ display:flex; align-items:center; justify-content:space-between; gap:10px; color:#7c8c96; font:700 10px 'Poppins',sans-serif; text-transform:uppercase; letter-spacing:.09em; }
.dpe-portfolio .project-details h3{ font-size:clamp(25px,2.4vw,36px); font-weight:600; letter-spacing:-.04em; line-height:1.18; color:var(--navy); margin:22px 0 6px; }
.dpe-portfolio .featured .project-details h3{ font-size:clamp(34px,3.3vw,49px); }
.dpe-portfolio .project-location{ color:#a16a2c; font:600 11px 'Poppins',sans-serif; margin-bottom:25px; }
.dpe-portfolio .story-list{ display:grid; gap:12px; padding-top:17px; border-top:1px solid #e6ecef; }
.dpe-portfolio .story-list>div{ display:grid; grid-template-columns:86px 1fr; gap:10px; align-items:baseline; }
.dpe-portfolio .story-list strong{ color:var(--navy); font:700 9px 'Poppins',sans-serif; letter-spacing:.12em; white-space:nowrap; }
.dpe-portfolio .story-list p{ color:#70808c; line-height:1.55; font-size:13px; margin:0; }
.dpe-portfolio .project-cta{ display:inline-flex; align-items:center; gap:9px; width:max-content; margin-top:27px; font:700 11px 'Poppins',sans-serif; text-decoration:none; color:var(--navy); border-bottom:1px solid var(--orange); padding-bottom:6px; }
.dpe-portfolio .project-cta:hover{ color:#d77710; }
.dpe-portfolio .website-images{ margin-top:25px; padding-top:22px; border-top:1px solid #e6ecef; }
.dpe-portfolio .website-images-heading{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:5px 10px; margin-bottom:13px; }
.dpe-portfolio .website-images-heading strong{ color:var(--navy); font:700 10px 'Poppins',sans-serif; letter-spacing:.1em; }
.dpe-portfolio .website-images-heading span{ color:#87949d; font-size:10px; }
.dpe-portfolio .website-gallery{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.dpe-portfolio .website-gallery.count-1{ grid-template-columns:1fr; }
.dpe-portfolio .website-gallery.count-2,.dpe-portfolio .website-gallery.count-4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.dpe-portfolio .website-gallery figure{ margin:0; min-width:0; }
.dpe-portfolio .website-thumb{ position:relative; overflow:hidden; }
.dpe-portfolio .website-thumb > img{ width:100%; height:115px; object-fit:cover; }
.dpe-portfolio .website-gallery.count-1 .website-thumb > img{ height:160px; }
.dpe-portfolio .website-thumb .brand-watermark{ width:58px; height:43px; right:6px; bottom:6px; padding:0; }
.dpe-portfolio .website-gallery figcaption{ color:#596e7d; font:600 10px 'Poppins',sans-serif; padding-top:6px; }
.dpe-portfolio .promise-section{ background:var(--deep); color:#fff; padding:112px 0; position:relative; }
.dpe-portfolio .promise-section:before{ content:''; position:absolute; right:-125px; top:-175px; width:540px; height:540px; border:1px solid #ffffff0b; border-radius:50%; box-shadow:0 0 0 105px #ffffff04,0 0 0 210px #ffffff03; pointer-events:none; }
.dpe-portfolio .promise-grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:10%; position:relative; z-index:1; align-items:center; }
.dpe-portfolio .promise-grid h2{ font-size:clamp(45px,5.2vw,75px); line-height:1.08; letter-spacing:-.06em; font-weight:500; margin:26px 0 0; }
.dpe-portfolio .promise-right p{ color:#c2ced8; font-size:17px; line-height:1.8; max-width:480px; margin-bottom:32px; }
.dpe-portfolio .promise-services{ display:grid; grid-template-columns:1fr 1fr; gap:0 25px; margin-bottom:33px; border-top:1px solid #ffffff29; }
.dpe-portfolio .promise-services span{ padding:16px 0; border-bottom:1px solid #ffffff29; font:700 10px 'Poppins',sans-serif; letter-spacing:.12em; color:#ebf1f5; }
.dpe-portfolio .human-section{ background:var(--deep); color:#fff; padding:96px 0; }
.dpe-portfolio .human-grid{ display:grid; grid-template-columns:.85fr 1fr; gap:11%; align-items:center; }
.dpe-portfolio .human-image{ max-width:460px; height:495px; position:relative; overflow:hidden; }
.dpe-portfolio .human-image img{ height:100%; width:100%; object-fit:cover; object-position:center 23%; }
.dpe-portfolio .human-image span{ position:absolute; bottom:0; left:0; background:var(--orange); color:var(--navy); padding:14px 18px; font:700 11px 'Poppins',sans-serif; letter-spacing:.1em; }
.dpe-portfolio .human-copy h2{ font-size:clamp(45px,5.2vw,75px); line-height:1.08; letter-spacing:-.06em; font-weight:500; margin:26px 0; }
.dpe-portfolio .human-copy p{ color:#c2ced8; font-size:17px; line-height:1.8; max-width:480px; margin-bottom:35px; }
.dpe-portfolio .button-orange{ padding:17px 23px; }
.dpe-portfolio .closing-section{ padding-block:118px 127px; }
.dpe-portfolio .closing-row{ display:grid; grid-template-columns:1.25fr .75fr; gap:80px; align-items:end; margin-top:23px; }
.dpe-portfolio .closing-row h2{ color:var(--navy); font-size:clamp(45px,5.7vw,78px); line-height:1.1; font-weight:600; letter-spacing:-.065em; margin:0; }
.dpe-portfolio .closing-row p{ color:#6b7c8a; font-size:16px; line-height:1.75; max-width:340px; margin-bottom:26px; }
.dpe-portfolio .button-navy{ color:#fff; background:var(--navy); }
.dpe-portfolio .button-navy:hover{ color:var(--navy); }
.dpe-portfolio .footer{ background:#edf2f5; padding-top:64px; }
.dpe-portfolio .footer-main{ display:grid; grid-template-columns:1.4fr .8fr 1fr; gap:50px; padding-bottom:55px; }
.dpe-portfolio .footer-brand img{ width:125px; height:108px; object-fit:contain; object-position:left center; }
.dpe-portfolio .footer-main p{ color:#6b7b88; font-size:14px; line-height:1.6; margin:11px 0 0; }
.dpe-portfolio .footer-links{ display:grid; grid-template-columns:1fr 1fr; align-content:center; gap:18px 26px; }
.dpe-portfolio .footer-links a{ color:var(--navy); text-decoration:none; font:600 12px 'Poppins',sans-serif; }
.dpe-portfolio .footer-contact{ display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:12px; }
.dpe-portfolio .footer-contact span{ font:700 10px 'Poppins',sans-serif; letter-spacing:.14em; color:#af711e; }
.dpe-portfolio .footer-contact>a{ font:600 24px 'Poppins',sans-serif; color:var(--navy); text-decoration:none; }
.dpe-portfolio .footer-contact small{ font-size:12px; color:#71818d; }
.dpe-portfolio .footer-bottom{ border-top:1px solid #d6e0e5; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:19px 0 23px; color:#7c8b95; font:600 10px 'Poppins',sans-serif; letter-spacing:.03em; }
.dpe-portfolio .footer-bottom a{ color:var(--navy); text-decoration:none; }
.dpe-portfolio .lightbox{ position:fixed; z-index:100; inset:0; background:#081622ec; display:flex; align-items:center; justify-content:center; padding:28px; }
.dpe-portfolio .lightbox-backdrop{ position:absolute; inset:0; background:transparent; border:0; cursor:zoom-out; }
.dpe-portfolio .lightbox-content{ position:relative; z-index:1; margin:auto; padding:0; border:0; width:max-content; max-width:min(88vw,680px); max-height:95vh; display:flex; flex-direction:column; background:#fff; box-shadow:0 20px 80px #0008; }
.dpe-portfolio .lightbox-image{ min-height:0; overflow:hidden; position:relative; }
.dpe-portfolio .lightbox-image > img{ max-height:calc(95vh - 91px); object-fit:contain; margin:auto; }
.dpe-portfolio .lightbox-image .brand-watermark{ width:105px; height:82px; }
.dpe-portfolio .lightbox-close{ position:absolute; right:-13px; top:-13px; background:var(--orange); color:var(--navy); border:0; height:38px; width:38px; display:grid; place-items:center; z-index:2; }
.dpe-portfolio .lightbox-bar{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 17px; color:var(--navy); }
.dpe-portfolio .lightbox-bar button{ width:34px; height:34px; border:1px solid #d8e0e5; background:white; color:var(--navy); display:grid; place-items:center; }
.dpe-portfolio .lightbox-bar>div{ display:flex; flex-direction:column; align-items:center; gap:3px; text-align:center; }
.dpe-portfolio .lightbox-bar strong{ font:700 12px 'Poppins',sans-serif; }
.dpe-portfolio .lightbox-bar span{ font-size:11px; color:#71818d; }
@media (max-width:1100px){.dpe-portfolio .container{ width:min(100% - 52px,1240px); }
.dpe-portfolio .nav-links{ gap:18px; }
.dpe-portfolio .nav-cta{ margin-left:0; gap:10px; }
.dpe-portfolio .hero{ min-height:640px; }
.dpe-portfolio .hero h1{ font-size:clamp(54px,6vw,75px); }
.dpe-portfolio .hero-visual{ margin-left:15px; height:520px; }
.dpe-portfolio .hero-main-image{ height:460px; }
.dpe-portfolio .featured .project-details{ padding:36px; }
.dpe-portfolio .story-list>div{ grid-template-columns:76px 1fr; }}
@media (max-width:850px){.dpe-portfolio .nav-links{ display:none; position:absolute; top:98px; left:0; right:0; background:#fff; padding:28px 6%; box-shadow:0 18px 25px #102b461b; flex-direction:column; align-items:flex-start; gap:20px; }
.dpe-portfolio .nav-links.open{ display:flex; }
.dpe-portfolio .nav-links a{ font-size:14px; }
.dpe-portfolio .nav-links .current:after{ bottom:-5px; }
.dpe-portfolio .nav-links .mobile-book{ display:flex !important; align-items:center; gap:8px; color:#c36e11; }
.dpe-portfolio .menu-button{ display:grid !important; place-items:center; border:0; background:transparent; color:var(--navy); margin-left:auto; }
.dpe-portfolio .nav-cta{ margin-left:auto; }
.dpe-portfolio .hero{ grid-template-columns:1fr 1fr; min-height:0; padding-block:75px; }
.dpe-portfolio .hero h1{ font-size:clamp(46px,6.2vw,65px); }
.dpe-portfolio .hero-visual{ height:430px; }
.dpe-portfolio .hero-main-image{ height:390px; }
.dpe-portfolio .hero-small-image{ height:185px; }
.dpe-portfolio .hero-stamp{ width:93px; height:93px; right:-10px; }
.dpe-portfolio .hero-stamp>span{ font-size:35px; }
.dpe-portfolio .intro-grid{ gap:35px; }
.dpe-portfolio .project-grid{ gap:20px; }
.dpe-portfolio .project-images{ height:280px; }
.dpe-portfolio .project-details{ padding:24px; }
.dpe-portfolio .story-list>div{ display:block; }
.dpe-portfolio .story-list strong{ display:block; margin-bottom:3px; }
.dpe-portfolio .featured .story-list>div{ display:grid; }
.dpe-portfolio .featured .project-images{ min-height:500px; }
.dpe-portfolio .human-grid{ gap:7%; }}
@media (max-width:650px){.dpe-portfolio .container{ width:min(100% - 36px,1240px); }
.dpe-portfolio .top-strip{ height:30px; font-size:9px; }
.dpe-portfolio .top-strip-inner>span{ letter-spacing:.02em; }
.dpe-portfolio .site-header{ height:76px; }
.dpe-portfolio .brand{ height:70px; width:110px; }
.dpe-portfolio .brand img{ width:91px; max-height:67px; }
.dpe-portfolio .nav-links{ top:76px; }
.dpe-portfolio .nav-cta{ padding:11px 12px; font-size:10px; gap:5px; min-height:40px; }
.dpe-portfolio .nav-cta svg{ width:15px; }
.dpe-portfolio .nav-inner{ gap:8px; }
.dpe-portfolio .menu-button{ margin-left:3px; }
.dpe-portfolio .hero{ display:block; padding-top:66px; padding-bottom:75px; }
.dpe-portfolio .hero h1{ font-size:clamp(50px,10.8vw,72px); margin:21px 0 22px; }
.dpe-portfolio .hero-copy>p{ font-size:15px; max-width:370px; margin-bottom:25px; }
.dpe-portfolio .hero-visual{ height:425px; margin:48px 8px 0 0; }
.dpe-portfolio .hero-main-image{ width:77%; height:365px; }
.dpe-portfolio .hero-small-image{ width:38%; height:180px; border-width:6px; }
.dpe-portfolio .hero-stamp{ top:-23px; right:-5px; }
.dpe-portfolio .intro-band{ padding:67px 0 73px; }
.dpe-portfolio .intro-grid{ display:block; }
.dpe-portfolio .intro-grid h2{ font-size:clamp(39px,9vw,57px); margin-top:21px; }
.dpe-portfolio .intro-right{ padding-top:16px; }
.dpe-portfolio .intro-right p{ font-size:15px; }
.dpe-portfolio .work-section{ padding-top:84px; padding-bottom:85px; }
.dpe-portfolio .section-heading{ display:block; margin-bottom:33px; }
.dpe-portfolio .section-heading h2{ font-size:clamp(52px,11vw,69px); }
.dpe-portfolio .section-heading>p{ width:auto; margin:22px 0 0; font-size:14px; }
.dpe-portfolio .filter-area{ display:block; padding:20px 0; }
.dpe-portfolio .filter-label{ padding:0 0 15px; }
.dpe-portfolio .filters{ gap:7px; }
.dpe-portfolio .filter{ font-size:10px; padding:9px 12px; }
.dpe-portfolio .project-grid{ display:block; }
.dpe-portfolio .project-card{ margin-bottom:23px; }
.dpe-portfolio .project-card.featured{ display:block; }
.dpe-portfolio .project-images,.dpe-portfolio .featured .project-images{ height:clamp(255px,77vw,370px); min-height:0; }
.dpe-portfolio .project-details,.dpe-portfolio .featured .project-details{ padding:25px 22px 28px; }
.dpe-portfolio .featured .project-details h3{ font-size:31px; }
.dpe-portfolio .project-details h3{ font-size:29px; }
.dpe-portfolio .story-list>div,.dpe-portfolio .featured .story-list>div{ display:grid; grid-template-columns:70px 1fr; gap:9px; }
.dpe-portfolio .story-list p{ font-size:12px; }
.dpe-portfolio .image-label{ top:10px; left:9px; font-size:9px; padding:7px 9px; }
.dpe-portfolio .expand-icon{ display:none; }
.dpe-portfolio .human-section{ padding:70px 0; }
.dpe-portfolio .human-grid{ display:block; }
.dpe-portfolio .human-image{ width:78%; height:330px; margin-bottom:42px; }
.dpe-portfolio .human-copy h2{ font-size:clamp(45px,10vw,61px); }
.dpe-portfolio .human-copy p{ font-size:15px; }
.dpe-portfolio .closing-section{ padding:83px 0 95px; }
.dpe-portfolio .closing-row{ display:block; }
.dpe-portfolio .closing-row h2{ font-size:clamp(43px,9vw,59px); margin-bottom:25px; }
.dpe-portfolio .closing-row p{ font-size:15px; }
.dpe-portfolio .footer-main{ grid-template-columns:1fr 1fr; gap:30px; }
.dpe-portfolio .footer-contact{ grid-column:1/-1; }
.dpe-portfolio .footer-bottom{ flex-wrap:wrap; line-height:1.5; }}
@media (max-width:390px){.dpe-portfolio .top-strip-inner>span{ font-size:8px; }
.dpe-portfolio .top-strip a{ font-size:9px; }
.dpe-portfolio .nav-cta{ font-size:9px; }
.dpe-portfolio .hero h1{ font-size:47px; }
.dpe-portfolio .story-list>div,.dpe-portfolio .featured .story-list>div{ display:block; }
.dpe-portfolio .story-list strong{ margin-bottom:3px; }}
@media (max-width:850px){.dpe-portfolio .website-thumb > img{ height:92px; }
.dpe-portfolio .website-gallery.count-1 .website-thumb > img{ height:145px; }
.dpe-portfolio .promise-grid{ gap:5%; }}
@media (max-width:650px){.dpe-portfolio .website-gallery,.dpe-portfolio .website-gallery.count-4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.dpe-portfolio .website-gallery.count-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.dpe-portfolio .website-gallery.count-1{ grid-template-columns:1fr; }
.dpe-portfolio .website-thumb > img{ height:115px; }
.dpe-portfolio .website-gallery.count-3 .website-thumb > img{ height:95px; }
.dpe-portfolio .website-gallery.count-1 .website-thumb > img{ height:175px; }
.dpe-portfolio .website-images-heading span{ font-size:9px; }
.dpe-portfolio .project-image .brand-watermark{ width:58px; height:46px; right:7px; bottom:7px; padding:0; }
.dpe-portfolio .promise-section{ padding:79px 0; }
.dpe-portfolio .promise-grid{ display:block; }
.dpe-portfolio .promise-grid h2{ font-size:clamp(45px,10vw,61px); margin-bottom:28px; }
.dpe-portfolio .promise-right p{ font-size:15px; }}
@media (prefers-reduced-motion:reduce){.dpe-portfolio *,.dpe-portfolio *::before,.dpe-portfolio *::after{ scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; }}


/* Full service directory */
.dpe-portfolio .directory-section{ background:#f3f6f8; padding:104px 0 116px; scroll-margin-top:26px; }
.dpe-portfolio .directory-head{ display:grid; grid-template-columns:1.25fr .75fr; align-items:end; gap:70px; margin-bottom:43px; }
.dpe-portfolio .directory-head h2{ color:var(--navy); font-size:clamp(43px,5.1vw,70px); line-height:1.08; letter-spacing:-.06em; margin:19px 0 0; }
.dpe-portfolio .directory-head p{ color:#677a89; line-height:1.75; font-size:15px; margin:0 0 5px; }
.dpe-portfolio .directory-tools{ display:flex; align-items:center; justify-content:space-between; gap:22px; border-top:1px solid #dce4e9; padding-top:24px; }
.dpe-portfolio .directory-search{ display:flex; align-items:center; gap:12px; width:min(100%,510px); border:1px solid #cbd8e0; background:white; color:#667989; padding:0 17px; height:53px; }
.dpe-portfolio .directory-search:focus-within{ outline:2px solid var(--orange); }
.dpe-portfolio .directory-search input{ flex:1; min-width:0; border:0; outline:0; color:var(--navy); font:500 14px 'Arimo',sans-serif; background:transparent; }
.dpe-portfolio .directory-count{ flex-shrink:0; color:#64798a; font:700 11px 'Poppins',sans-serif; letter-spacing:.04em; }
.dpe-portfolio .directory-chips{ display:flex; gap:8px; overflow-x:auto; padding:19px 0 25px; scrollbar-width:thin; }
.dpe-portfolio .directory-chips button{ display:inline-flex; align-items:center; gap:9px; flex:none; border:1px solid #cbd9e1; padding:11px 14px; background:transparent; color:#415b6d; font:600 10px 'Poppins',sans-serif; white-space:nowrap; }
.dpe-portfolio .directory-chips button span{ color:#8495a1; font-size:10px; }
.dpe-portfolio .directory-chips button.selected{ background:var(--navy); border-color:var(--navy); color:#fff; }
.dpe-portfolio .directory-chips button.selected span{ color:#f7aa51; }
.dpe-portfolio .directory-progress{ margin-bottom:22px; color:#765221; border-left:3px solid var(--orange); background:#fff8ec; padding:12px 16px; font-size:13px; line-height:1.5; }
.dpe-portfolio .directory-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px; }
.dpe-portfolio .service-tile{ min-width:0; background:#fff; display:flex; flex-direction:column; border:1px solid #dce5ea; }
.dpe-portfolio .service-tile-heading{ padding:22px 23px 18px; min-height:113px; }
.dpe-portfolio .service-tile-heading>span{ color:#a7671f; font:700 9px 'Poppins',sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.dpe-portfolio .service-tile h3{ color:var(--navy); font:600 18px/1.25 'Poppins',sans-serif; letter-spacing:-.03em; margin:10px 0 0; }
.dpe-portfolio .service-pair{ display:grid; grid-template-columns:1fr 1fr; gap:3px; background:#e3eaf0; height:155px; }
.dpe-portfolio .service-pair button{ min-width:0; position:relative; padding:0; border:0; overflow:hidden; background:#e0e8eb; }
.dpe-portfolio .service-pair img{ width:100%; height:100%; object-fit:cover; transition:transform .25s; }
.dpe-portfolio .service-pair button:hover img{ transform:scale(1.05); }
.dpe-portfolio .service-pair .service-side-label{ position:absolute; top:8px; left:8px; color:var(--navy); background:#fff; padding:5px 7px; text-transform:uppercase; font:700 8px 'Poppins',sans-serif; letter-spacing:.08em; }
.dpe-portfolio .service-pair button:last-child .service-side-label{ background:var(--orange); }
.dpe-portfolio .service-pair .brand-watermark{ width:62px; height:48px; right:6px; bottom:5px; }
.dpe-portfolio .service-image-pending{ display:grid; place-items:center; height:170px; background:repeating-linear-gradient(135deg,#e8eef2 0,#e8eef2 18px,#e3eaee 18px,#e3eaee 36px); color:#788b99; font:600 11px 'Poppins',sans-serif; }
.dpe-portfolio .service-image-pending span{ background:#f7fafb; padding:8px 11px; }
.dpe-portfolio .service-tile-foot{ display:flex; justify-content:flex-end; align-items:center; gap:10px; padding:16px 22px; margin-top:auto; }
.dpe-portfolio .service-tile-foot a{ color:var(--navy); text-decoration:none; display:inline-flex; gap:6px; align-items:center; font:700 10px 'Poppins',sans-serif; white-space:nowrap; }
.dpe-portfolio .service-tile-foot a:hover{ color:#c27110; }
.dpe-portfolio .directory-more{ display:flex; align-items:center; justify-content:space-between; gap:36px; margin:34px auto 0; padding:15px 22px; background:var(--navy); border:0; color:white; font:600 12px 'Poppins',sans-serif; }
.dpe-portfolio .directory-more span{ color:#eda349; font-size:10px; }
.dpe-portfolio .directory-empty{ padding:65px 10px; color:#6b7d8a; text-align:center; }
@media (max-width:650px){.dpe-portfolio .directory-section{ padding:75px 0 88px; }
.dpe-portfolio .directory-head{ display:block; margin-bottom:28px; }
.dpe-portfolio .directory-head p{ margin-top:17px; font-size:14px; }
.dpe-portfolio .directory-tools{ display:block; }
.dpe-portfolio .directory-search{ width:100%; }
.dpe-portfolio .directory-count{ display:block; margin-top:13px; }
.dpe-portfolio .directory-grid{ grid-template-columns:1fr; gap:15px; }
.dpe-portfolio .service-tile-heading{ min-height:0; }
.dpe-portfolio .service-pair,.dpe-portfolio .service-image-pending{ height:115px; }
.dpe-portfolio .service-pair .brand-watermark{ width:50px; height:39px; right:5px; bottom:4px; }}
.dpe-portfolio .hero-link {width:max-content;}
.dpe-portfolio .lightbox {width:100vw;max-width:none;height:100dvh;max-height:none;border:0;margin:0; color:var(--navy);}
.dpe-portfolio .lightbox:not([open]) {display:none!important;}
.dpe-portfolio .lightbox::backdrop {background:transparent;}
.dpe-portfolio .lightbox-content {overflow:visible;}
.dpe-portfolio .lightbox-image>img {width:auto;max-width:100%;height:auto;}
.dpe-portfolio .directory-search input {height:100%;margin:0;padding:0;box-shadow:none;}
.dpe-portfolio .service-pair button:hover .brand-watermark img {transform:none;}
.dpe-portfolio .menu-button svg {width:24px;height:24px;}
.dpe-portfolio.dpe-embed .site-header,.dpe-portfolio.dpe-embed .top-strip,.dpe-portfolio.dpe-embed .footer {display:none;}
@media(max-width:650px){.dpe-portfolio .lightbox{padding:18px;}.dpe-portfolio .lightbox-content{max-width:100%;}.dpe-portfolio .lightbox-bar{gap:8px;padding:12px 10px;}.dpe-portfolio .lightbox-bar strong{font-size:11px;}.dpe-portfolio .lightbox-bar button{flex-shrink:0;}.dpe-portfolio .hero h1{white-space:normal;}}

/* Keep theme clearfixes and heading alignment out of the portfolio layout. */
.dpe-portfolio .container::before,
.dpe-portfolio .container::after {content:none;display:none;}
.dpe-portfolio h1,
.dpe-portfolio h2,
.dpe-portfolio h3 {text-align:inherit;}
