/* PressDesign.pro — November 2026 presentation and usability refinements.
   All mission-critical components function without external CDNs. */
:root{--pd-aqua:#13c7dc;--pd-magenta:#ef438b;--pd-gold:#ffcb4b;--pd-deep:#0c1120}
.pd-icon{display:inline-block;vertical-align:middle;width:26px;height:26px;stroke-width:1.9;flex-shrink:0}
/* Header, accessible menu and dropdown indicator */
.topline-phone{display:inline-flex;gap:6px;align-items:center;color:#dbe6f5;white-space:nowrap}
.topline-phone .pd-icon{width:13px;height:13px;color:#80e2ed}
.desktop-nav .has-submenu>a{gap:9px}
.desktop-nav .has-submenu>a .nav-chevron{width:15px;height:15px;stroke-width:2.7;transition:transform .24s ease;color:#d63882}
.desktop-nav .has-submenu:hover>a .nav-chevron,.desktop-nav .has-submenu:focus-within>a .nav-chevron{transform:rotate(180deg)}
.desktop-nav .has-submenu:focus-within>.submenu{opacity:1;visibility:visible;transform:translateY(0)}
.mobile-trigger{width:46px;height:46px;display:grid!important;place-items:center!important;cursor:pointer;transition:background .2s,transform .2s}
.mobile-trigger:hover{background:#cc2e7b;transform:translateY(-1px)}
.mobile-trigger .menu-icon{height:25px;width:25px}
.mobile-menu{width:100%;padding:12px max(16px,calc((100vw - 1230px)/2));border-top:1px solid #ebedf4;box-shadow:0 24px 45px rgba(9,13,30,.13);max-height:min(74vh,640px);overflow-y:auto;overscroll-behavior:contain}
.mobile-menu a{font-size:.92rem!important;padding:13px 18px!important;border-radius:9px}
.mobile-menu .mobile-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mobile-menu .mobile-nav-item>a{flex:1}
.mobile-expand{width:44px;height:42px;border:1px solid #e5e9f1;border-radius:10px;background:#f5f7fb;color:#d12c79;display:grid;place-items:center;margin-right:12px;cursor:pointer}
.mobile-expand .pd-icon{width:19px;height:19px;transition:transform .2s}
.mobile-expand[aria-expanded="true"] .pd-icon{transform:rotate(180deg)}
.mobile-menu .subnav{padding:8px 8px 12px;margin:5px 15px 10px!important;border-radius:12px;border-left:3px solid #e74b94;background:#f8f9fc}
.mobile-menu .subnav[hidden]{display:none!important}
.mobile-menu .subnav a{font-size:.79rem!important;padding:10px 15px!important}
.mobile-menu .btn{width:calc(100% - 24px);margin:10px 12px 3px!important}
/* MeanMenu is optional: when it is loaded its generated navigation must not be display:none */
body.mean-ready .mobile-nav-wrap nav.mean-nav{display:block!important}
body.mean-ready .mean-container .mean-nav{display:block!important}
body.mean-ready .mean-container .mean-nav ul{display:block!important}
body.mean-ready .mean-container .mean-bar{z-index:1110}
body.mean-ready .mean-container a.meanmenu-reveal{display:flex!important;justify-content:center;align-items:center;box-sizing:border-box}
body.mean-ready .mean-container .mean-nav ul li a{height:auto!important;line-height:1.65!important;padding-top:12px!important;padding-bottom:12px!important}
/* Fixed hero: self-contained carousel supports buttons, swipes, keyboard and autoplay. */
.hero.pd-slider-ready .pd-carousel .carousel-item{display:none;opacity:0}
.hero.pd-slider-ready .pd-carousel .carousel-item.active{display:block;opacity:1;animation:pd-hero-in .68s ease-out both}
@keyframes pd-hero-in{from{opacity:.18;transform:translateY(13px)}to{opacity:1;transform:none}}
.hero-navigation{position:absolute;right:max(3vw,calc((100vw - 1180px)/2));bottom:32px;z-index:12;display:flex;gap:10px}
.hero-navigation button{display:grid;place-items:center;width:46px;height:46px;color:#fff;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.32);border-radius:50%;backdrop-filter:blur(8px);transition:.22s;cursor:pointer}
.hero-navigation button:hover,.hero-navigation button:focus-visible{background:#ef438b;border-color:#ef438b;transform:translateY(-2px)}
.hero-navigation .pd-icon{width:20px;height:20px}
.hero .carousel-indicators{bottom:49px}
.hero .carousel-indicators button{cursor:pointer;height:6px;border-radius:10px;transition:width .26s,opacity .26s}
.hero .carousel-indicators button.active{width:60px}
/* Full-height photo columns match the content beside them. */
@media(min-width:992px){
 .photo-equal-row{align-items:stretch!important}
 .photo-equal-row>.photo-column{display:flex;flex-direction:column;align-self:stretch}
 .photo-equal-row>.photo-column>.photo-frame,.photo-equal-row>.photo-column>.position-relative{height:100%;flex:1;min-height:410px}
 .photo-equal-row>.photo-column>.position-relative{display:flex;flex-direction:column}
 .photo-equal-row>.photo-column>.position-relative>.photo-frame{height:100%;flex:1}
 .photo-equal-row>.photo-column .photo-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
 .photo-equal-row>.col-lg-6:not(.photo-column){align-self:center}
}
/* Uniform vector icons and more premium cards */
.feature-card,.mission-card,.industry,.service-intro{transition:transform .28s,box-shadow .28s,border-color .28s}
.feature-card{padding:36px!important;border-radius:23px!important;box-shadow:0 12px 38px rgba(20,32,58,.026);border-color:#e4eaf1!important}
.feature-card:hover,.industry:hover,.service-intro:hover{border-color:#a9e6ea!important;box-shadow:0 19px 42px rgba(16,26,49,.09);transform:translateY(-5px)}
.feature-card .mini-icon{width:70px!important;height:70px!important;border-radius:20px!important;margin-bottom:25px!important;background:linear-gradient(140deg,#d9fafe,#e9f8ff)!important;color:#049ab6!important;box-shadow:inset 0 0 0 1px rgba(17,176,209,.08)}
.feature-card:nth-child(3n+2) .mini-icon{background:linear-gradient(130deg,#ffe8f3,#f8e9fc)!important;color:#cf277e!important}
.feature-card:nth-child(3n+3) .mini-icon{background:linear-gradient(130deg,#fff4da,#ffe9d6)!important;color:#b17a13!important}
.feature-card .mini-icon .pd-icon{width:35px;height:35px;stroke-width:1.75}
.feature-card h3{font-size:1.11rem!important;line-height:1.45}
.feature-card p{font-size:.96rem;line-height:1.82}
.mission-card{padding:45px!important;border:1px solid rgba(255,255,255,.06);background:linear-gradient(147deg,#12182a,#292039)!important;box-shadow:0 17px 45px rgba(17,17,38,.09)}
.mission-card:hover{transform:translateY(-5px);box-shadow:0 22px 60px rgba(19,19,40,.19)}
.mission-card .icon-circle{width:70px!important;height:70px!important;border-radius:19px!important;background:linear-gradient(135deg,rgba(10,204,224,.25),rgba(16,117,164,.18))!important;color:#72eff5!important;margin-bottom:27px!important;border:1px solid rgba(87,239,245,.12)}
.mission-card:nth-child(3n+2) .icon-circle{color:#ff9fd0!important;background:rgba(240,62,144,.15)!important}
.mission-card:nth-child(3n+3) .icon-circle{color:#ffd685!important;background:rgba(251,199,72,.14)!important}
.mission-card .pd-icon{width:36px;height:36px}
.industries-grid{gap:15px!important}
.industry{gap:16px!important;padding:21px 19px!important;border-radius:17px!important;min-height:110px;background:#fff;line-height:1.5;font-size:.86rem!important}
.industry-icon{width:58px;height:58px;border-radius:17px;background:linear-gradient(140deg,#dcf9fc,#eaf8ff);display:grid;place-items:center;flex-shrink:0;color:#058eae}
.industry-icon .pd-icon{width:29px;height:29px}
.industry-icon.icon-tone-1{background:#fff0f8;color:#d63b8b}.industry-icon.icon-tone-2{background:#fff4e1;color:#b28420}.industry-icon.icon-tone-3{background:#e9f9f1;color:#0b9876}
.service-intro .icon-circle{width:75px!important;height:75px!important;border-radius:22px!important}
.service-intro .icon-circle .pd-icon{width:37px;height:37px}
.info-symbol .pd-icon{width:23px;height:23px}
/* Elegant designed notice in place of default warning box */
.notice.notice-v2{position:relative;display:flex;align-items:flex-start;gap:17px;overflow:hidden;background:linear-gradient(125deg,#eefbfc,#fcf7ff 67%,#fff8ed)!important;color:#273648!important;border:1px solid #cdeaf0!important;border-radius:18px!important;padding:24px!important;box-shadow:0 10px 30px rgba(34,49,78,.05);font-size:.91rem}
.notice.notice-v2:before{position:absolute;top:0;left:0;bottom:0;content:'';width:5px;background:linear-gradient(180deg,#0ec6d8,#e63b92,#ffd24f)}
.notice.notice-v2>.notice-icon{width:49px;height:49px;flex:0 0 49px;border:1px solid #b7eaf1;border-radius:14px;background:#e1f8fb;padding:12px;stroke:#079eaf}
.notice.notice-v2 .notice-copy strong{display:block;font-family:Manrope,sans-serif;font-size:.96rem;letter-spacing:-.02em;color:#18243a;margin-bottom:6px}
.notice.notice-v2 .notice-copy p{font-size:.86rem;color:#5d6a7b;line-height:1.7;margin:0}
/* New footer: layered dark foundation, richer hierarchy and location cards. */
.footer-v2{position:relative;background:#0d1222!important;color:#c2cbda;overflow:hidden;padding-top:0!important}
.footer-v2:before{content:'';position:absolute;right:-250px;top:-180px;width:610px;height:610px;border:90px solid rgba(24,195,211,.035);border-radius:50%;pointer-events:none}
.footer-v2 .footer-intro{position:relative;display:flex;align-items:center;justify-content:space-between;gap:45px;padding:76px 0 70px;border-bottom:1px solid #293248}
.footer-v2 .footer-overline{font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:.75rem;color:#a5e5ec;display:flex;align-items:center;gap:10px;margin-bottom:17px}
.footer-v2 .footer-overline i{display:block;width:24px;height:4px;border-radius:4px;background:linear-gradient(90deg,#13c7dc,#ed438d,#f9cf50)}
.footer-v2 .footer-intro h2{font-size:clamp(2.25rem,4vw,3.9rem);letter-spacing:-.055em;color:#fff;margin-bottom:15px}
.footer-v2 .footer-intro h2 span{background:linear-gradient(105deg,#5ee4e9,#ff6eae,#ffd27b);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer-v2 .footer-intro p{max-width:580px;color:#b3c1d3;font-size:1.07rem;line-height:1.75;margin-bottom:0}
.footer-v2 .footer-intro-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px;flex-shrink:0}
.footer-v2 .footer-intro-actions .btn{box-shadow:0 13px 30px rgba(232,58,141,.25);padding:19px 27px}
.footer-v2 .footer-intro-actions .pd-icon{width:20px;height:20px}
.footer-v2 .footer-intro-link{color:#e6f4fb;font-size:.83rem;font-weight:800;display:flex;align-items:center;gap:8px}
.footer-v2 .footer-intro-link:hover{color:#81e9f0}
.footer-v2 .footer-intro-link .pd-icon{width:16px;height:16px}
.footer-v2 .footer-main{padding:66px 0 48px}
.footer-v2 .footer-about{max-width:365px;font-size:.93rem;line-height:1.87;color:#a4b1c6}
.footer-v2 h3{font-size:.91rem!important;color:#fff;letter-spacing:.01em;margin-bottom:22px}
.footer-v2 ul{display:grid;gap:8px;margin:0}
.footer-v2 ul a{font-size:.87rem;color:#b2bdd0}
.footer-v2 ul a:hover{color:#7de9f0;transform:translateX(3px)}
.footer-v2 .logo-word{font-size:1.4rem}
.footer-v2 .footer-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:22px}
.footer-v2 .footer-tags span{padding:6px 10px;background:#1e283c;border:1px solid #303b50;border-radius:30px;font-size:.65rem;font-weight:800;color:#b9dce7}
.footer-v2 .footer-contact-link{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #293449;color:#f2f8ff;font-family:Manrope,sans-serif;font-size:.9rem;font-weight:800;overflow-wrap:anywhere}
.footer-v2 .footer-contact-link:hover{color:#8ae2ea}
.footer-v2 .footer-contact-link>.pd-icon{width:38px;height:38px;padding:10px;box-sizing:border-box;border-radius:11px;background:#20314a;color:#77d8e9}
.footer-v2 .footer-contact-link small{display:block;font-size:.7rem;font-weight:600;color:#a4b3c7;margin-bottom:2px}
.footer-v2 .footer-hours-inline{display:flex;align-items:center;gap:14px;padding-top:21px;font-size:.85rem;line-height:1.55;color:#abb9cc}
.footer-v2 .footer-hours-inline strong{color:#f3f6ff}
.footer-v2 .footer-hours-inline .pd-icon{color:#ffcb66}
.footer-v2 .footer-addresses{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;padding:27px 0 33px;border-top:1px solid #2b3346;border-bottom:1px solid #2b3346}
.footer-v2 .footer-address-card{display:flex;align-items:flex-start;gap:14px;border:1px solid #26334c;background:linear-gradient(135deg,#151f34,#182239);border-radius:17px;padding:22px 20px;min-width:0}
.footer-v2 .footer-address-card>.pd-icon{width:35px;height:35px;padding:7px;border-radius:10px;background:rgba(29,198,218,.12);stroke:#71deee;box-sizing:border-box;flex:0 0 35px}
.footer-v2 .footer-address-card:nth-child(2)>.pd-icon{background:rgba(238,66,142,.12);stroke:#ff8fbc}
.footer-v2 .footer-address-card:nth-child(3)>.pd-icon{background:rgba(255,208,86,.11);stroke:#fbd071}
.footer-v2 .footer-address-card h4{font-size:.89rem;color:#fff;letter-spacing:-.02em;margin:2px 0 10px}
.footer-v2 .footer-address-card address,.footer-v2 .footer-address-card p{font-style:normal;font-size:.82rem;line-height:1.8;color:#aebbcf;margin:0;overflow-wrap:break-word}
.footer-v2 .footer-address-card p strong{font-weight:800;color:#fff}
.footer-v2 .footer-bottom{display:flex!important;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border:0;margin:0;padding:23px 0 28px;color:#94a3ba;font-size:.76rem}
.footer-v2 .footer-bottom a{display:inline-flex;align-items:center;gap:7px;color:#b9cadb}
.footer-v2 .footer-bottom a .pd-icon{width:15px;height:15px}
.footer-v2 .footer-cmyk{display:grid;grid-template-columns:repeat(4,1fr);height:6px}
.footer-v2 .footer-cmyk span:nth-child(1){background:#0ac9dd}.footer-v2 .footer-cmyk span:nth-child(2){background:#f13f91}.footer-v2 .footer-cmyk span:nth-child(3){background:#ffca4e}.footer-v2 .footer-cmyk span:nth-child(4){background:#252c41}
/* AOS disabled fallback: do not make content invisible because a CDN isn't available. */
html:not(.pd-aos-loaded) [data-aos]{opacity:1!important;transform:none!important;visibility:visible!important}
.pd-reveal:not(.pd-reveal-visible){opacity:0;transform:translateY(22px)}
.pd-reveal{transition:opacity .55s ease,transform .55s ease}
.pd-reveal.pd-reveal-visible{opacity:1;transform:none}
@media(max-width:1199px){.footer-v2 .footer-intro{gap:25px}.footer-v2 .footer-address-card{padding:20px 14px}.topline-phone{display:none}}
@media(max-width:991px){
 .mobile-trigger{display:grid!important}
 body.mean-ready .mobile-trigger{display:none!important}
 .footer-v2 .footer-intro{padding:56px 0;align-items:flex-start}
 .footer-v2 .footer-main{padding:50px 0 38px}
 .footer-v2 .footer-addresses{grid-template-columns:repeat(2,1fr)}
 .footer-v2 .footer-address-card:last-child{grid-column:span 2}
 .hero-navigation{right:25px;bottom:18px}
 .hero .carousel-indicators{left:23px;bottom:36px}
}
@media(max-width:767px){
 .topline .top-right{display:none}
 .mobile-menu{padding:9px 9px 16px}
 .footer-v2 .footer-intro{display:block;padding:53px 0 47px}
 .footer-v2 .footer-intro h2{font-size:2.4rem}
 .footer-v2 .footer-intro-actions{margin-top:26px;gap:14px}
 .footer-v2 .footer-main{padding:38px 0}
 .footer-v2 .footer-addresses{grid-template-columns:1fr;gap:12px;padding:21px 0}
 .footer-v2 .footer-address-card:last-child{grid-column:auto}
 .footer-v2 .footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}
 .industry{min-height:93px;padding:17px!important}
 .industry-icon{width:54px;height:54px}
 .feature-card{padding:27px!important}
 .feature-card .mini-icon{width:63px!important;height:63px!important}
 .mission-card{padding:32px!important}
 .hero-navigation{bottom:12px;right:17px;gap:7px}
 .hero-navigation button{width:39px;height:39px}
 .hero .carousel-indicators{bottom:29px;left:19px}
 .hero .carousel-indicators button{width:19px}
 .hero .carousel-indicators button.active{width:40px}
}
@media(prefers-reduced-motion:reduce){.hero.pd-slider-ready .carousel-item.active{animation:none}.pd-reveal,.feature-card,.industry,.mission-card{transition:none!important}}
