/* ========================================================================== 
   phy-prints® — Redesign 2026
   New visual system based on #152D35 + #BFD8D2
   Loaded after legacy/page styles so functionality can stay untouched.
   ========================================================================== */

:root{
  --dq-ink:#152D35;
  --dq-mint:#BFD8D2;
  --dq-paper:#F7FAF8;
  --dq-white:#FFFFFF;
  --dq-soft:#EAF3ED;
  --dq-line:rgba(21,45,53,.14);
  --dq-muted:#5E716B;
  --dq-shadow:0 24px 70px rgba(21,45,53,.10);
  --dq-shadow-soft:0 12px 34px rgba(21,45,53,.07);
  --dq-radius-sm:14px;
  --dq-radius:22px;
  --dq-radius-lg:34px;
  --dq-max:1480px;
}

html{scroll-behavior:smooth;background:var(--dq-paper)}
body.page{
  margin:0;
  background:var(--dq-paper) !important;
  color:var(--dq-ink);
  font-family:"Roboto",Arial,sans-serif;
  font-weight:300;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body.dq-menu-open,body.dq-modal-open{overflow:hidden}
::selection{background:var(--dq-mint);color:var(--dq-ink)}
a{color:inherit}
img{max-width:100%}
.container-fluid{width:min(var(--dq-max),calc(100% - 72px));max-width:none;margin-inline:auto;padding-left:0;padding-right:0}

body.page h1,body.page h2,body.page h3,body.page h4{
  color:var(--dq-ink);
  letter-spacing:-.025em;
}
body.page h1{font-weight:300}
body.page h2{font-weight:300}
body.page p{color:var(--dq-muted)}

.dq-eyebrow,.home-kicker,.gallery-heading__kicker,.modules-hero__kicker,.module-rework__kicker,
.error404-hero__eyebrow,.maintenance-hero__eyebrow{
  color:var(--dq-ink) !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase;
}

/* Header ------------------------------------------------------------------ */
.page__header{
  position:fixed !important;
  top:18px !important;
  left:0;
  right:0;
  z-index:9000 !important;
  height:auto !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
.page__header>.container-fluid{width:min(var(--dq-max),calc(100% - 36px))}
.page__header_table{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  width:100% !important;
  min-height:72px !important;
  padding:10px 12px 10px 20px !important;
  border:1px solid rgba(21,45,53,.10) !important;
  border-radius:22px !important;
  background:rgba(247,250,248,.94) !important;
  box-shadow:0 10px 34px rgba(21,45,53,.08) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  transition:background .25s ease,box-shadow .25s ease,transform .25s ease;
}
.page__header.is-scrolled .page__header_table{background:rgba(191,216,210,.96) !important;box-shadow:0 14px 42px rgba(21,45,53,.12) !important}
.page__header_table__left{float:none !important;display:flex !important;align-items:center !important;flex:0 0 auto !important;width:auto !important}
.page__header__logo,.page__header__logo a{display:flex !important;align-items:center !important;height:auto !important}
.page__header__logo-image{display:block !important;width:auto !important;max-width:162px !important;height:34px !important;object-fit:contain}
.page__header__logo-image--sticky{display:none !important}
.menu-backdrop{display:none !important}

.dq-nav-shell{
  float:none !important;
  position:static !important;
  display:flex !important;
  flex:0 1 auto !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  width:auto !important;
  height:auto !important;
  margin-left:auto !important;
  white-space:nowrap;
}
.dq-nav-inline{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:2px !important;
  width:auto !important;
  margin:0 4px 0 0 !important;
  padding:0 !important;
}
.dq-nav-inline a{
  float:none !important;
  position:static !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:46px !important;
  margin:0 !important;
  padding:0 15px !important;
  border:0 !important;
  border-radius:12px !important;
  background:transparent !important;
  color:var(--dq-ink) !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1 !important;
  text-decoration:none !important;
  transition:background .2s ease,transform .2s ease;
}
.dq-nav-inline a:hover{background:rgba(21,45,53,.07) !important;transform:translateY(-1px)}
.dq-nav-contact{
  float:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:46px !important;
  margin:0 !important;
  padding:0 18px !important;
  border-radius:12px !important;
  background:var(--dq-ink) !important;
  color:var(--dq-mint) !important;
  font-size:14px !important;
  font-weight:700 !important;
  line-height:1 !important;
  text-decoration:none !important;
}
.dq-nav-toggle{
  float:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:11px !important;
  width:auto !important;
  min-height:46px !important;
  margin:0 !important;
  padding:0 15px !important;
  border:1px solid var(--dq-line) !important;
  border-radius:12px !important;
  background:transparent !important;
  color:var(--dq-ink) !important;
  font:inherit !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1 !important;
  cursor:pointer;
}
.dq-nav-toggle__icon{position:relative;display:block;width:19px;height:14px;flex:0 0 19px}
.dq-nav-toggle__icon span{position:absolute;left:0;width:19px;height:1.5px;border-radius:2px;background:currentColor;transition:.2s ease}
.dq-nav-toggle__icon span:first-child{top:3px}.dq-nav-toggle__icon span:last-child{bottom:3px;width:13px;left:6px}
.dq-nav-toggle:hover .dq-nav-toggle__icon span:last-child{width:19px;left:0}

/* Mega navigation -------------------------------------------------------- */
.dq-menu{position:fixed;inset:0;z-index:8500;visibility:hidden;pointer-events:none}
.dq-menu.is-open{visibility:visible;pointer-events:auto}
.dq-menu__backdrop{position:absolute;inset:0;background:rgba(7,19,23,.34);opacity:0;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:opacity .24s ease}
.dq-menu.is-open .dq-menu__backdrop{opacity:1}
.dq-menu__panel{
  position:absolute;
  top:108px;
  left:50%;
  width:min(var(--dq-max),calc(100% - 36px));
  max-height:calc(100vh - 128px);
  overflow:auto;
  padding:26px 30px 24px;
  border:1px solid rgba(191,216,210,.16);
  border-radius:26px;
  background:rgba(21,45,53,.985);
  color:var(--dq-mint);
  box-shadow:0 36px 90px rgba(7,19,23,.32);
  transform:translate(-50%,-16px) scale(.985);
  transform-origin:top center;
  opacity:0;
  transition:transform .28s cubic-bezier(.2,.75,.2,1),opacity .2s ease;
}
.dq-menu.is-open .dq-menu__panel{transform:translate(-50%,0) scale(1);opacity:1}
.dq-menu__top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 0 20px;border-bottom:1px solid rgba(191,216,210,.16)}
.dq-menu__brand{color:var(--dq-mint) !important;font-size:22px;font-weight:700;text-decoration:none !important;letter-spacing:-.04em}
.dq-menu__brand sup{font-size:.45em;top:-.8em}
.dq-menu__close{display:inline-flex;align-items:center;gap:9px;padding:8px 0;border:0;background:none;color:var(--dq-mint);font:inherit;font-size:13px;cursor:pointer}
.dq-menu__close i{font-size:20px}
.dq-menu__intro{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 0 18px}
.dq-menu__intro .dq-eyebrow{color:var(--dq-mint) !important;opacity:.62}
.dq-menu__intro p{max-width:520px;margin:0;color:rgba(191,216,210,.68);font-size:14px;line-height:1.5;text-align:right}
.dq-menu__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  overflow:hidden;
  border:1px solid rgba(191,216,210,.16);
  border-radius:18px;
}
.dq-menu__group{
  position:relative;
  min-height:285px;
  padding:25px 24px 28px;
  border:0;
  border-right:1px solid rgba(191,216,210,.16);
  background:transparent;
}
.dq-menu__group:last-child{border-right:0}
.dq-menu__index{position:absolute;top:25px;right:22px;color:rgba(191,216,210,.30);font-size:11px;font-weight:700;letter-spacing:.12em}
.dq-menu__group h2{margin:0 0 22px;color:var(--dq-mint) !important;font-size:26px;font-weight:300;line-height:1.15}
.dq-menu__group h3{margin:20px 0 7px;color:rgba(191,216,210,.44) !important;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.dq-menu__group a,.dq-menu__callback{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  width:100% !important;
  min-height:34px;
  margin:0 !important;
  padding:7px 0 !important;
  border:0 !important;
  border-bottom:1px solid transparent !important;
  background:none !important;
  color:rgba(255,255,255,.80) !important;
  font:inherit !important;
  font-size:14px !important;
  font-weight:300 !important;
  line-height:1.35 !important;
  text-align:left !important;
  text-decoration:none !important;
  cursor:pointer;
  transition:color .18s ease,border-color .18s ease;
}
.dq-menu__group a:hover,.dq-menu__callback:hover{color:var(--dq-mint) !important;border-bottom-color:rgba(191,216,210,.28) !important;padding-left:0 !important}
.dq-menu__group a i,.dq-menu__callback i{font-size:11px}
.dq-menu__bottom{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px 22px;padding-top:18px}
.dq-menu__bottom a{color:rgba(191,216,210,.60) !important;font-size:11px;font-weight:500;text-decoration:none !important}
.dq-menu__bottom a:hover{color:var(--dq-mint) !important}

/* Buttons ----------------------------------------------------------------- */
body.page .btn,body.page .btn-primary,.home-intro__button,.home-contact__button,.gallery-cta__button,
.error404-button,.maintenance-button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 20px;
  border:1px solid var(--dq-ink) !important;border-radius:14px !important;background:var(--dq-ink) !important;
  color:var(--dq-mint) !important;font-size:13px;font-weight:700;letter-spacing:.02em;text-decoration:none !important;
  box-shadow:none !important;transition:transform .2s ease,background .2s ease,color .2s ease !important;
}
body.page .btn:hover,.home-intro__button:hover,.gallery-cta__button:hover,.error404-button:hover,.maintenance-button:hover{transform:translateY(-2px);background:#0d2229 !important}
.home-text-link{color:var(--dq-ink) !important;font-weight:700 !important;text-decoration:none !important}
.home-text-link i{transition:transform .2s ease}.home-text-link:hover i{transform:translateX(4px)}

/* Home stage / carousel --------------------------------------------------- */
.home body,.page-backendlayout-home{background:var(--dq-paper) !important}
.page__stage{padding:108px 18px 18px !important;background:var(--dq-paper) !important}
.page__stage .frame{margin:0 !important}
.page__stage_ratio{height:min(790px,74vh) !important;min-height:560px;overflow:hidden;border-radius:var(--dq-radius-lg);background:var(--dq-ink);box-shadow:var(--dq-shadow)}
.page__stage .owl-carousel,.page__stage .owl-stage-outer,.page__stage .owl-stage,.page__stage .owl-item,.page__stage .slideshow__slide{height:100% !important}
.slideshow__slide{position:relative;overflow:hidden;background:var(--dq-ink) !important}
.slideshow__background{filter:saturate(.72) contrast(.92);transform:scale(1.015)}
.slideshow__slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,45,53,.86) 0%,rgba(21,45,53,.58) 38%,rgba(21,45,53,.08) 74%),linear-gradient(0deg,rgba(21,45,53,.38),transparent 42%);z-index:1}
.slideshow__content{z-index:2 !important;display:flex !important;align-items:flex-end !important;inset:0 !important;padding:0 0 66px !important}
.slideshow__content>.container-fluid{width:min(1320px,calc(100% - 72px))}
.slideshow__content__inner{display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;align-items:end !important;gap:30px !important;max-width:none !important;padding:0 !important}
.slideshow__content .content__date{align-self:start;margin:0 0 18px !important;color:var(--dq-mint) !important;border-color:rgba(191,216,210,.4) !important}
.slideshow__content .content__text{max-width:870px !important}
.slideshow__content .content__title{margin:0;color:#fff !important;font-size:clamp(48px,7vw,102px) !important;font-weight:300 !important;line-height:.92 !important;letter-spacing:-.055em !important;text-shadow:none !important}
.slideshow__content .content__teaser{max-width:720px !important;margin-top:24px !important}
.slideshow__content .content__teaser p{margin:0;color:rgba(255,255,255,.78) !important;font-size:clamp(17px,1.6vw,22px) !important;line-height:1.5 !important}
.slideshow__content .content__links{display:flex !important;flex-wrap:wrap;gap:10px !important;margin-top:28px !important}
.slideshow__content .btn{border-color:var(--dq-mint) !important;background:var(--dq-mint) !important;color:var(--dq-ink) !important}
.slideshow__content .links__link+ .links__link .btn{background:transparent !important;color:var(--dq-mint) !important}
.page__stage_down,.slideshow__additionalcontent_wrap{display:none !important}

/* Home sections ----------------------------------------------------------- */
.page__main{background:var(--dq-paper) !important}
.home-intro{padding:118px 0 !important;background:var(--dq-paper) !important}
.home-intro__grid{grid-template-columns:minmax(0,1.1fr) minmax(340px,.75fr) !important;gap:clamp(50px,8vw,140px) !important;align-items:start !important}
.home-intro__statement{max-width:850px !important}
.home-intro .home-kicker{display:inline-flex !important;margin:0 0 26px !important;padding:8px 12px;border:1px solid var(--dq-line);border-radius:999px;background:var(--dq-white)}
.home-intro h1{max-width:900px !important;color:var(--dq-ink) !important;font-size:clamp(48px,5.8vw,88px) !important;font-weight:300 !important;line-height:.98 !important;letter-spacing:-.055em !important}
.home-intro__rule{width:84px !important;height:2px !important;margin-top:34px !important;background:var(--dq-ink) !important}
.home-intro__copy{max-width:none !important;padding:38px !important;border:0 !important;border-radius:var(--dq-radius) !important;background:var(--dq-mint) !important;box-shadow:none !important;color:var(--dq-ink)}
.home-intro__copy:before{display:none !important}
.home-intro__claim{color:var(--dq-ink) !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.08em !important;text-transform:uppercase}
.home-intro__claim i{color:var(--dq-ink) !important}
.home-intro__copy p{color:rgba(21,45,53,.76) !important;font-size:17px;line-height:1.7}
.home-intro__links{margin-top:28px !important}

.home-products{padding:0 0 120px !important;background:var(--dq-paper) !important}
.home-products__head{margin-bottom:26px;padding:90px 0 56px !important;background:var(--dq-ink) !important}
.home-products__head-inner{max-width:980px !important}
.home-products__head .home-kicker{color:var(--dq-mint) !important;opacity:.68}
.home-products__head h2{color:var(--dq-mint) !important;font-size:clamp(44px,5vw,72px) !important;letter-spacing:-.045em}
.home-products__head p{max-width:760px !important;color:rgba(191,216,210,.67) !important;font-size:18px !important}
.home-products__rule{background:var(--dq-mint) !important}
.home-product-grid{grid-template-columns:1.18fr .82fr !important;gap:22px !important;margin-top:0 !important}
.home-product-card{min-height:310px !important;border-radius:var(--dq-radius) !important;background:var(--dq-ink) !important;box-shadow:none;isolation:isolate}
.home-product-card--main{min-height:650px !important}
.home-product-card__image{filter:saturate(.74) contrast(.94) !important;transform:scale(1.01) !important}
.home-product-card:after{display:block !important;content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(21,45,53,.90),rgba(21,45,53,.06) 70%);z-index:1}
.home-product-card__content{left:28px !important;right:28px !important;bottom:28px !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;backdrop-filter:none !important;color:#fff !important}
.home-product-card__eyebrow{color:var(--dq-mint) !important;font-size:11px !important;font-weight:700;letter-spacing:.15em !important}
.home-product-card h3{color:#fff !important;font-size:clamp(34px,4vw,58px) !important;letter-spacing:-.04em !important}
.home-product-card:not(.home-product-card--main) h3{font-size:clamp(30px,3vw,44px) !important}
.home-product-card p{max-width:660px;color:rgba(255,255,255,.74) !important;font-size:16px !important}
.home-product-card__link{color:var(--dq-mint);font-size:13px;font-weight:700}
.home-product-card:hover .home-product-card__image{filter:saturate(.9) contrast(.98) !important;transform:scale(1.045) !important}

.home-workflow{padding:110px 0 !important;background:var(--dq-mint) !important}
.home-workflow__lead{max-width:900px !important;margin-bottom:46px !important}
.home-workflow__lead .home-kicker{color:var(--dq-ink) !important}
.home-workflow__lead h2{color:var(--dq-ink) !important;font-size:clamp(40px,4vw,62px);letter-spacing:-.04em}
.home-workflow__lead p{color:rgba(21,45,53,.68) !important}
.home-workflow__grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:14px !important}
.home-workflow__step{min-height:280px !important;padding:32px !important;border:1px solid rgba(21,45,53,.11) !important;border-radius:var(--dq-radius) !important;background:rgba(255,255,255,.62) !important;box-shadow:none !important}
.home-workflow__number{top:14px !important;right:22px !important;color:rgba(21,45,53,.09) !important;font-size:96px !important}
.home-workflow__icon{width:54px !important;height:54px !important;border-radius:16px !important;background:var(--dq-ink) !important;color:var(--dq-mint) !important}
.home-workflow__step h3{color:var(--dq-ink) !important;font-size:23px !important}
.home-workflow__step p{color:rgba(21,45,53,.66) !important}

.home-news{padding:120px 0 !important;background:var(--dq-paper) !important}
.home-section-head{align-items:end !important;margin-bottom:44px !important}
.home-section-head h2{color:var(--dq-ink) !important;font-size:clamp(42px,5vw,70px);letter-spacing:-.045em}
.home-section-head p{color:var(--dq-muted) !important}
.home-news__grid{gap:20px !important}
.home-news-card{grid-template-columns:46% 54% !important;min-height:360px !important;border:1px solid var(--dq-line) !important;border-radius:var(--dq-radius) !important;background:var(--dq-white);overflow:hidden}
.home-news-card__body{padding:34px !important;background:var(--dq-white) !important}
.home-news-card__meta{color:var(--dq-muted) !important;font-size:11px !important;font-weight:700 !important}
.home-news-card h3{color:var(--dq-ink) !important;font-size:clamp(28px,2.5vw,40px) !important;letter-spacing:-.035em}
.home-news-card p{color:var(--dq-muted) !important}
.home-news-card__more{color:var(--dq-ink);font-size:13px;font-weight:700}

.home-contact{padding:0 0 120px !important;background:var(--dq-paper) !important}
.home-contact__box{padding:58px 62px !important;border-radius:var(--dq-radius-lg) !important;background:var(--dq-ink) !important;color:var(--dq-mint) !important}
.home-contact__box h2{color:var(--dq-mint) !important;font-size:clamp(38px,4vw,60px);letter-spacing:-.04em}
.home-contact__box p{color:rgba(191,216,210,.68) !important}
.home-contact__button{border-color:var(--dq-mint) !important;background:var(--dq-mint) !important;color:var(--dq-ink) !important}

/* Shared product/module content ------------------------------------------ */
.gallery-page body,.modules-page body{background:var(--dq-paper) !important}
.gallery-hero,.modules-hero{
  position:relative !important;min-height:640px !important;display:flex !important;align-items:flex-end !important;
  margin:0 !important;padding:120px 0 70px !important;overflow:hidden !important;background:var(--dq-ink) !important;
}
.gallery-hero__background{filter:saturate(.55) contrast(.9) !important;opacity:.65 !important;transform:scale(1.02)}
.gallery-hero__overlay,.modules-hero__overlay{background:linear-gradient(90deg,rgba(21,45,53,.96) 0%,rgba(21,45,53,.72) 48%,rgba(21,45,53,.22) 100%) !important}
.gallery-hero__content,.modules-hero__content{position:relative;z-index:2;width:min(var(--dq-max),calc(100% - 72px)) !important;margin-left:auto !important;margin-right:auto !important}
.gallery-hero__inner,.modules-hero__inner{display:block !important;width:100% !important;max-width:980px !important;margin:0 !important;padding:0 !important;color:var(--dq-mint) !important;text-align:left !important}
.gallery-hero__inner h1,.modules-hero h1{margin:0 0 20px !important;color:#fff !important;font-size:clamp(58px,7vw,108px) !important;font-weight:300 !important;line-height:.92 !important;letter-spacing:-.06em !important}
.gallery-hero__inner p,.modules-hero p{max-width:760px !important;margin:0 !important;color:rgba(191,216,210,.73) !important;font-size:clamp(18px,1.8vw,23px) !important;line-height:1.55 !important}
.modules-hero{min-height:520px !important;background:linear-gradient(135deg,var(--dq-ink),#20434d) !important}
.modules-hero__kicker{color:var(--dq-mint) !important;opacity:.7}

.gallery-section,.pu-section,.module-selector-section{padding:104px 0 !important;background:var(--dq-paper) !important}
.gallery-section--intro,.pu-section--alt{background:var(--dq-soft) !important}
.gallery-heading,.pu-heading,.pu-steps__heading{max-width:940px !important;margin:0 auto 48px !important;text-align:center !important}
.gallery-heading h2,.pu-heading h2,.pu-steps__heading h2{margin:0 0 16px !important;color:var(--dq-ink) !important;font-size:clamp(42px,4.7vw,68px) !important;font-weight:300 !important;line-height:1.04 !important;letter-spacing:-.045em !important}
.gallery-heading p,.pu-heading p,.pu-steps__heading p{max-width:760px;margin-inline:auto;color:var(--dq-muted) !important;font-size:18px !important;line-height:1.65 !important}
.gallery-feature-grid,.gallery-text-grid{row-gap:18px !important}
.gallery-feature,.gallery-text-card{
  height:100%;padding:30px !important;border:1px solid var(--dq-line) !important;border-radius:var(--dq-radius) !important;
  background:var(--dq-white) !important;box-shadow:none !important;transition:transform .2s ease,border-color .2s ease !important;
}
.gallery-feature:hover,.gallery-text-card:hover{transform:translateY(-4px);border-color:rgba(21,45,53,.30) !important}
.gallery-feature i,.gallery-text-card>i{display:flex !important;align-items:center;justify-content:center;width:50px;height:50px;margin:0 0 24px !important;border-radius:15px;background:var(--dq-mint) !important;color:var(--dq-ink) !important;font-size:21px !important}
.gallery-feature h3,.gallery-text-card h3{margin:0 0 10px !important;color:var(--dq-ink) !important;font-size:22px !important;font-weight:500 !important;letter-spacing:-.025em}
.gallery-feature p,.gallery-text-card p{color:var(--dq-muted) !important;line-height:1.65 !important}

.pu-steps{padding:110px 0 !important;background:var(--dq-ink) !important}
.pu-steps .gallery-heading__kicker{color:var(--dq-mint) !important;opacity:.65}
.pu-steps__heading h2{color:var(--dq-mint) !important}
.pu-steps__heading p{color:rgba(191,216,210,.68) !important}
.pu-steps__grid{gap:16px !important}
.pu-step{padding:34px !important;border:1px solid rgba(191,216,210,.18) !important;border-radius:var(--dq-radius) !important;background:rgba(255,255,255,.035) !important;box-shadow:none !important}
.pu-step__number{color:rgba(191,216,210,.10) !important}
.pu-step__icon{background:var(--dq-mint) !important;color:var(--dq-ink) !important;border-radius:15px !important}
.pu-step h3{color:#fff !important}
.pu-step p{color:rgba(191,216,210,.66) !important}
.pu-steps__promise{margin-top:18px !important;padding:18px 24px !important;border:1px solid rgba(191,216,210,.18) !important;border-radius:16px !important;background:transparent !important;color:var(--dq-mint) !important}
.pu-steps__promise i{color:var(--dq-mint) !important}

.gallery-product{gap:0 !important}
.gallery-product>[class*="col-"]{padding-top:12px;padding-bottom:12px}
.gallery-image,.module-product-image,.pu-video-trigger,.pu-video{
  overflow:hidden !important;border:1px solid var(--dq-line) !important;border-radius:var(--dq-radius-lg) !important;background:var(--dq-mint) !important;box-shadow:var(--dq-shadow-soft) !important;
}
.gallery-image img,.module-product-image img,.pu-video-trigger img{border-radius:inherit !important}
.gallery-image__zoom,.module-gallery__zoom,.pu-gallery__zoom{background:var(--dq-ink) !important;color:var(--dq-mint) !important}
.gallery-product__text{padding-left:clamp(16px,5vw,70px) !important}
.gallery-product__text h2{color:var(--dq-ink) !important;font-size:clamp(38px,4vw,62px) !important;font-weight:300 !important;letter-spacing:-.045em}
.gallery-product__text p{color:var(--dq-muted) !important;font-size:17px !important;line-height:1.7 !important}

.gallery-cta{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:34px !important;margin-top:54px !important;padding:46px 50px !important;border:0 !important;border-radius:var(--dq-radius-lg) !important;background:var(--dq-mint) !important;box-shadow:none !important}
.gallery-cta h2{max-width:880px;margin:6px 0 0 !important;color:var(--dq-ink) !important;font-size:clamp(30px,3.2vw,48px) !important;letter-spacing:-.035em}
.gallery-cta .gallery-heading__kicker{color:var(--dq-ink) !important}

/* Module selector --------------------------------------------------------- */
.module-selector-section{padding-top:64px !important;padding-bottom:40px !important;background:var(--dq-paper) !important}
.module-switcher{display:flex !important;flex-wrap:wrap !important;gap:9px !important;padding:10px !important;border:1px solid var(--dq-line) !important;border-radius:18px !important;background:var(--dq-white) !important;box-shadow:var(--dq-shadow-soft) !important}
.module-switcher__button{min-height:46px !important;padding:10px 16px !important;border:0 !important;border-radius:12px !important;background:transparent !important;color:var(--dq-muted) !important;font-size:13px !important;font-weight:500 !important;box-shadow:none !important}
.module-switcher__button:hover{background:var(--dq-soft) !important;color:var(--dq-ink) !important}
.module-switcher__button.is-active{background:var(--dq-ink) !important;color:var(--dq-mint) !important}
.module-switcher__button small{background:var(--dq-mint) !important;color:var(--dq-ink) !important}
.module-switcher__button.is-active small{background:rgba(191,216,210,.16) !important;color:var(--dq-mint) !important}
.module-panels{background:var(--dq-paper) !important}
.module-panel .gallery-section{padding-top:86px !important}
.module-license-note,.module-trademark-note{padding:18px 20px !important;border-left:3px solid var(--dq-ink) !important;border-radius:0 12px 12px 0 !important;background:var(--dq-soft) !important;color:var(--dq-muted) !important}
.module-rework{padding:70px 42px !important;border:1px solid var(--dq-line) !important;border-radius:var(--dq-radius-lg) !important;background:var(--dq-white) !important;box-shadow:var(--dq-shadow-soft) !important}
.module-rework__icon{color:var(--dq-ink) !important}
.module-rework__kicker{color:var(--dq-ink) !important}
.module-rework h2{color:var(--dq-ink) !important}
.module-rework p{color:var(--dq-muted) !important}
.module-rework__status{background:var(--dq-mint) !important;color:var(--dq-ink) !important;border-radius:12px !important}
.module-rework__status i{color:var(--dq-ink) !important}
.module-gallery__heading h3{color:var(--dq-ink) !important}
.module-gallery__grid,.pu-gallery__grid{gap:14px !important}
.module-gallery__item,.pu-gallery__item{overflow:hidden !important;border:1px solid var(--dq-line) !important;border-radius:18px !important;background:var(--dq-soft) !important}
.module-gallery__item--empty,.pu-gallery__item--empty{color:var(--dq-muted) !important}

/* Lightboxes / video modal ----------------------------------------------- */
.module-lightbox,.pu-lightbox,.pu-video-modal{background:rgba(7,19,23,.94) !important;backdrop-filter:blur(14px)}
.module-lightbox__figure,.pu-lightbox__figure,.pu-video-modal__dialog{border-radius:var(--dq-radius) !important}
.module-lightbox__close,.pu-lightbox__close,.pu-video-modal__close,.module-lightbox__nav,.pu-lightbox__nav{background:var(--dq-mint) !important;color:var(--dq-ink) !important;border:0 !important}

/* 404 / maintenance ------------------------------------------------------- */
.error404-page body,.maintenance-page body{background:var(--dq-mint) !important}
.error404-hero,.maintenance-hero{
  min-height:100vh !important;padding:150px 0 90px !important;background:var(--dq-mint) !important;color:var(--dq-ink) !important;
  display:flex !important;align-items:center !important;overflow:hidden !important;
}
.error404-hero:before,.maintenance-hero:before{
  content:"";
  position:absolute;
  width:min(48vw,640px);
  aspect-ratio:1;
  right:-8vw;
  top:23%;
  border-radius:50%;
  pointer-events:none;
  opacity:.13;
  background-image:
    radial-gradient(circle, rgba(21,45,53,.34) 0 15%, rgba(21,45,53,.08) 16% 24%, rgba(21,45,53,0) 27%),
    radial-gradient(circle, rgba(21,45,53,.26) 0 15%, rgba(21,45,53,.065) 16% 24%, rgba(21,45,53,0) 27%);
  background-size:36px 36px,36px 36px;
  background-position:0 0,18px 18px;
  -webkit-mask-image:radial-gradient(circle at center, #000 0 56%, rgba(0,0,0,.68) 72%, transparent 100%);
  mask-image:radial-gradient(circle at center, #000 0 56%, rgba(0,0,0,.68) 72%, transparent 100%);
  transform:rotate(-10deg);
}
.error404-hero:after,.maintenance-hero:after{
  content:"";
  position:absolute;
  width:min(46vw,610px);
  aspect-ratio:1;
  right:-7vw;
  top:24%;
  border-radius:50%;
  pointer-events:none;
  opacity:.22;
  background:
    radial-gradient(circle at 31% 27%, rgba(255,255,255,.55), rgba(255,255,255,0) 25%),
    radial-gradient(circle at 70% 74%, rgba(21,45,53,.12), rgba(21,45,53,0) 37%);
  -webkit-mask-image:radial-gradient(circle at center, #000 0 62%, rgba(0,0,0,.55) 77%, transparent 100%);
  mask-image:radial-gradient(circle at center, #000 0 62%, rgba(0,0,0,.55) 77%, transparent 100%);
}
.error404-hero__overlay,.maintenance-hero__overlay{background:none !important}
.error404-hero__content,.maintenance-hero__content{position:relative !important;z-index:2 !important;width:100%}
.error404-hero__inner,.maintenance-hero__inner{max-width:820px !important;padding:0 !important;text-align:left !important;color:var(--dq-ink) !important}
.error404-hero__code,.maintenance-hero__code{display:block !important;margin:0 0 24px !important;color:var(--dq-ink) !important;font-size:clamp(86px,14vw,210px) !important;font-weight:300 !important;line-height:.7 !important;letter-spacing:-.08em !important;opacity:1 !important}
.maintenance-hero__code{font-size:84px !important;line-height:1 !important}
.error404-hero__eyebrow,.maintenance-hero__eyebrow{display:block !important;margin-bottom:20px !important}
.error404-hero h1,.maintenance-hero h1{max-width:800px !important;margin:0 0 20px !important;color:var(--dq-ink) !important;font-size:clamp(48px,6vw,82px) !important;font-weight:300 !important;line-height:.98 !important;letter-spacing:-.055em !important}
.error404-hero p,.maintenance-hero p{max-width:620px !important;margin:0 !important;color:rgba(21,45,53,.70) !important;font-size:19px !important;line-height:1.65 !important}
.error404-actions,.maintenance-actions{display:flex !important;flex-direction:row !important;align-items:center !important;gap:10px !important;margin-top:34px !important}
.error404-button,.maintenance-button{width:auto !important}
.error404-button--secondary,.maintenance-button--secondary{background:transparent !important;color:var(--dq-ink) !important}

/* Callback --------------------------------------------------------------- */
.callback-modal{position:fixed;inset:0;z-index:30000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(7,19,23,.68);backdrop-filter:blur(9px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility 0s linear .25s}
.callback-modal.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .25s ease}
.callback-modal__dialog{width:min(590px,100%);max-height:92vh;overflow:auto;border-radius:var(--dq-radius);background:var(--dq-paper);box-shadow:0 30px 90px rgba(0,0,0,.28);transform:translateY(12px) scale(.985);transition:transform .3s ease}
.callback-modal.is-open .callback-modal__dialog{transform:translateY(0) scale(1)}
.callback-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px 30px 22px;border-bottom:1px solid var(--dq-line)}
.callback-modal__head h3{margin:5px 0 0;color:var(--dq-ink) !important;font-size:29px;font-weight:400}
.callback-modal__close{width:42px;height:42px;border:1px solid var(--dq-line);border-radius:12px;background:var(--dq-white);color:var(--dq-ink);font-size:19px;cursor:pointer}
.callback-modal__body{padding:28px 30px 30px}.callback-modal__intro{margin:0 0 24px;color:var(--dq-muted);line-height:1.6}
.callback-form__field{margin-bottom:17px}.callback-form__field label{display:block;margin-bottom:7px;color:var(--dq-ink);font-size:13px;font-weight:700}
.callback-form__field input,.callback-form__field textarea{box-sizing:border-box;width:100%;padding:13px 14px;border:1px solid var(--dq-line);border-radius:12px;background:var(--dq-white);color:var(--dq-ink);font:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.callback-form__field textarea{min-height:130px;resize:vertical}
.callback-form__field input:focus,.callback-form__field textarea:focus{border-color:var(--dq-ink);box-shadow:0 0 0 4px rgba(21,45,53,.08)}
.callback-form__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.callback-button{min-height:46px;padding:10px 16px;border-radius:12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.callback-button--secondary{border:1px solid var(--dq-line);background:var(--dq-white);color:var(--dq-ink)}.callback-button--primary{border:1px solid var(--dq-ink);background:var(--dq-ink);color:var(--dq-mint)}.callback-button:disabled{opacity:.5;cursor:wait}
.callback-modal__message{margin:0 0 18px;padding:12px 14px;border-radius:12px;font-size:14px;line-height:1.5}.callback-modal__message.is-success{background:var(--dq-mint);color:var(--dq-ink)}.callback-modal__message.is-error{background:#f4dfdf;color:#712f2f}.callback-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Footer ----------------------------------------------------------------- */
.page__footer{margin:0 !important;padding:0 !important;background:var(--dq-ink) !important;border:0 !important}
.dq-footer{position:relative;overflow:hidden;padding:86px 0 24px;background:var(--dq-ink);color:var(--dq-mint)}
.dq-footer:before{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-150px;
  width:470px;
  height:470px;
  border-radius:50%;
  pointer-events:none;
  opacity:.16;
  background:
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.07), rgba(255,255,255,0) 24%),
    radial-gradient(circle at 72% 74%, rgba(0,0,0,.10), rgba(0,0,0,0) 34%);
}
.dq-footer:after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-185px;
  width:420px;
  height:420px;
  border-radius:50%;
  pointer-events:none;
  opacity:.17;
  background-image:
    radial-gradient(circle, rgba(191,216,210,.18) 0 16%, rgba(191,216,210,.055) 17% 26%, rgba(191,216,210,0) 28%),
    radial-gradient(circle, rgba(191,216,210,.14) 0 16%, rgba(191,216,210,.045) 17% 26%, rgba(191,216,210,0) 28%);
  background-size:34px 34px,34px 34px;
  background-position:0 0,17px 17px;
  -webkit-mask-image:radial-gradient(circle at center, #000 0 62%, rgba(0,0,0,.72) 72%, transparent 100%);
  mask-image:radial-gradient(circle at center, #000 0 62%, rgba(0,0,0,.72) 72%, transparent 100%);
}
.dq-footer__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.6fr);gap:clamp(60px,10vw,150px);padding-bottom:70px}
.dq-footer__lead{max-width:420px}.dq-footer__brand{display:inline-block;color:var(--dq-mint) !important;font-size:38px;font-weight:700;letter-spacing:-.05em;text-decoration:none !important}.dq-footer__brand sup{font-size:.38em;top:-1.1em}.dq-footer__lead p{margin:18px 0 28px;color:rgba(191,216,210,.58) !important;font-size:17px;line-height:1.6}.dq-footer__cta{display:inline-flex;align-items:center;gap:10px;color:var(--dq-mint) !important;font-size:13px;font-weight:700;text-decoration:none !important}.dq-footer__cta i{transition:transform .2s ease}.dq-footer__cta:hover i{transform:translate(3px,-3px)}
.dq-footer__links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.dq-footer__links h3{margin:0 0 20px;color:rgba(191,216,210,.42) !important;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.dq-footer__links a{display:block;margin:0 0 10px;color:rgba(255,255,255,.78) !important;font-size:14px;font-weight:300;text-decoration:none !important}.dq-footer__links a:hover{color:var(--dq-mint) !important}
.dq-footer__bottom{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid rgba(191,216,210,.16);color:rgba(191,216,210,.46);font-size:11px}.dq-footer__bottom a{color:rgba(191,216,210,.64) !important;text-decoration:none !important}

/* Remove legacy footer/nav artifacts if any -------------------------------- */
.navigation__sitemap,.page__footer__contact,.page__footer__copyright,.page__overlay{display:none !important}

/* Responsive ------------------------------------------------------------- */
@media(max-width:1199px){
  .container-fluid{width:min(var(--dq-max),calc(100% - 44px))}
  .dq-nav-inline{display:none !important}
  .dq-menu__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dq-menu__group:nth-child(2){border-right:0}.dq-menu__group:nth-child(-n+2){border-bottom:1px solid rgba(191,216,210,.16)}
  .home-workflow__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .home-news-card{grid-template-columns:1fr !important}.home-news-card__media{min-height:260px !important}
  .dq-footer__inner{grid-template-columns:1fr;gap:50px}.dq-footer__lead{max-width:700px}
}

@media(max-width:991px){
  .page__stage_ratio{height:680px !important;min-height:0}
  .slideshow__content__inner{grid-template-columns:1fr !important}
  .home-intro__grid{grid-template-columns:1fr !important;gap:45px !important}
  .home-product-grid{grid-template-columns:1fr !important;grid-template-rows:auto !important}.home-product-card--main{grid-row:auto !important;min-height:520px !important}.home-product-card:not(.home-product-card--main){min-height:390px !important}
  .gallery-product__text{padding:30px 0 0 !important}.gallery-cta{align-items:flex-start !important;flex-direction:column !important}
  .dq-footer__links{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:767px){
  .container-fluid,.page__header>.container-fluid{width:calc(100% - 28px)}
  .page__header{top:10px !important}.page__header_table{min-height:62px !important;padding:8px 8px 8px 14px !important;border-radius:18px !important}.page__header__logo-image{max-width:126px !important;height:29px !important}.dq-nav-contact{display:none}.dq-nav-toggle{min-height:44px;padding:0 12px}.dq-nav-toggle__label{display:none}
  .dq-menu{z-index:9500}.dq-menu__panel{top:0;left:0;width:100%;height:100%;max-height:none;padding:22px 18px 28px;border:0;border-radius:0;transform:translateY(-12px) scale(1)}.dq-menu.is-open .dq-menu__panel{transform:translateY(0) scale(1)}.dq-menu__intro{align-items:flex-start;flex-direction:column;gap:8px;padding:24px 0 18px}.dq-menu__intro p{text-align:left}.dq-menu__grid{grid-template-columns:1fr;border-radius:15px}.dq-menu__group{min-height:0;padding:22px 20px;border-right:0;border-bottom:1px solid rgba(191,216,210,.16)}.dq-menu__group:last-child{border-bottom:0}.dq-menu__bottom{justify-content:flex-start;padding-bottom:20px}
  .page__stage{padding:88px 10px 10px !important}.page__stage_ratio{height:620px !important;border-radius:24px}.slideshow__content{padding-bottom:36px !important}.slideshow__content>.container-fluid{width:calc(100% - 34px)}.slideshow__content .content__title{font-size:clamp(46px,15vw,70px) !important}.slideshow__content .content__teaser{margin-top:16px !important}.slideshow__content .content__teaser p{font-size:16px !important}.content__date{display:none !important}
  .home-intro,.home-news,.gallery-section,.pu-section{padding:78px 0 !important}.home-products{padding-bottom:80px !important}.home-products__head,.home-workflow{padding:78px 0 !important}.home-intro h1{font-size:clamp(44px,13vw,68px) !important}.home-intro__copy{padding:28px !important}.home-product-card--main,.home-product-card:not(.home-product-card--main){min-height:430px !important}.home-product-card__content{left:20px !important;right:20px !important;bottom:20px !important}.home-workflow__grid{grid-template-columns:1fr !important}.home-news__grid{grid-template-columns:1fr !important}.home-section-head{align-items:flex-start !important;flex-direction:column !important}.home-contact{padding-bottom:80px !important}.home-contact__box{align-items:flex-start !important;flex-direction:column !important;padding:36px 28px !important;border-radius:24px !important}
  .gallery-hero,.modules-hero{min-height:560px !important;padding:120px 0 52px !important}.gallery-hero__content,.modules-hero__content{width:calc(100% - 28px) !important}.gallery-hero__inner h1,.modules-hero h1{font-size:clamp(52px,15vw,76px) !important}.gallery-heading h2,.pu-heading h2,.pu-steps__heading h2{font-size:clamp(38px,11vw,54px) !important}.gallery-feature,.gallery-text-card{padding:26px !important}.module-switcher{border-radius:16px !important}.module-switcher__button{flex:1 1 calc(50% - 9px);justify-content:center !important}.gallery-cta{padding:34px 28px !important;border-radius:24px !important}
  .error404-hero,.maintenance-hero{padding:130px 0 70px !important}.error404-hero__inner,.maintenance-hero__inner{text-align:left !important}.error404-actions,.maintenance-actions{flex-direction:column !important;align-items:stretch !important}.error404-button,.maintenance-button{width:100% !important}.error404-hero:before,.maintenance-hero:before,.error404-hero:after,.maintenance-hero:after{width:520px;right:-330px;top:26%}
  .dq-footer{padding-top:68px}.dq-footer__inner{padding-bottom:52px}.dq-footer__links{grid-template-columns:1fr 1fr;gap:34px 20px}.dq-footer__bottom{align-items:flex-start;flex-direction:column}.dq-footer__brand{font-size:34px}
  .callback-modal{padding:12px}.callback-modal__head,.callback-modal__body{padding-left:20px;padding-right:20px}.callback-form__actions{flex-direction:column-reverse}.callback-button{width:100%}
}

@media(max-width:480px){
  .dq-footer__links{grid-template-columns:1fr}.module-switcher__button{flex-basis:100%}.home-news-card__body{padding:26px !important}
}

@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto !important;transition-duration:.001ms !important;animation-duration:.001ms !important;animation-iteration-count:1 !important}
}

/* Final legacy-color cleanup --------------------------------------------- */
.error404-button:hover,.error404-button:focus,.maintenance-button:hover,.maintenance-button:focus{color:var(--dq-mint) !important;background:#0d2229 !important}
.error404-button--secondary:hover,.error404-button--secondary:focus,.maintenance-button--secondary:hover,.maintenance-button--secondary:focus{color:var(--dq-ink) !important;background:rgba(255,255,255,.38) !important}
.modules-nav__link:hover,.modules-nav__link i,.modules-intro__kicker,.module-section__kicker,.module-section__status i,
.module-detail__placeholder i,.module-construction i,.module-page__placeholder i,.module-image-placeholder i,
.module-gallery__item--empty i,.pu-video__placeholder i,.pu-gallery__item--empty i{color:var(--dq-ink) !important}
.module-detail--construction{background:var(--dq-soft) !important}
.module-interest{background:var(--dq-ink) !important;color:var(--dq-mint) !important}
.module-gallery__zoom,.pu-gallery__zoom{background:var(--dq-ink) !important;color:var(--dq-mint) !important;border-radius:11px !important}
.pu-heading .gallery-heading__kicker,.pu-section--whitelabel .gallery-heading__kicker{color:var(--dq-ink) !important}
.pu-top-feature-grid .gallery-feature h3,.pu-benefit-grid .gallery-text-card h3,.pu-section--alt .gallery-text-card h3{color:var(--dq-ink) !important}
.pu-video-trigger__play{background:var(--dq-mint) !important;color:var(--dq-ink) !important;box-shadow:0 12px 30px rgba(21,45,53,.20) !important}
.pu-trial{border-left-color:var(--dq-ink) !important;background:var(--dq-mint) !important;color:var(--dq-ink) !important;border-radius:0 14px 14px 0 !important}.pu-trial strong{color:var(--dq-ink) !important}
