/* Adnan Sohail - final client-requested logo, hero, FAQ, mobile and white V2 treatment. */
/* The exact supplied marks are never cropped or stretched. */
.site-header,.site-header .shell,.header-inner,.brand,.footer-brand{overflow:visible}
.brand{min-width:0;align-items:center;position:relative}
.brand .brand-full{width:100%;height:auto;max-height:none;max-width:100%;object-fit:contain;object-position:center;clip-path:none;filter:none;display:block}
.footer-brand>img.exact-company-logo{display:block;position:relative;max-width:100%;width:min(100%,355px);height:auto;max-height:none;object-fit:contain;object-position:left center;clip-path:none;box-sizing:border-box;padding:10px 12px;background:#fff;border-radius:10px;margin:0 0 18px}
.theme-v2 .brand .brand-full{filter:none}
.theme-v2 .footer-brand>img.exact-company-logo{background:#fff;filter:none}
@media(min-width:1100px){
 .header-inner{min-height:100px;gap:17px}
 .brand,.theme-v2 .brand,.theme-v3 .brand{flex:0 0 clamp(250px,24vw,330px);max-width:330px;min-height:70px;display:flex}
 .brand .brand-full,.theme-v2 .brand .brand-full,.theme-v3 .brand .brand-full{display:block;width:100%;max-width:100%;height:auto;max-height:none;object-fit:contain}
 .desktop-nav{gap:clamp(10px,1.15vw,19px)}
 .desktop-nav>a,.nav-dropdown-trigger{font-size:clamp(11px,.87vw,13px)}
}
@media(min-width:1100px) and (max-width:1250px){
 .brand,.theme-v2 .brand,.theme-v3 .brand{flex-basis:250px}
 .header-inner{gap:8px}
 .header-cta{padding:10px 11px;font-size:11px}
}
/* White V2 header, utility bar, mobile menu and complete footer. Distinct black/gold brand stays intact. */
.theme-v2 .topline{background:#fff;color:#222629;border-bottom:1px solid #e3e1d9}
.theme-v2 .topline *{color:#2d3338}
.theme-v2 .topline svg{color:#a7761f}
.theme-v2 .site-header{background:#fff;border-bottom:1px solid #e8e4d8;box-shadow:0 8px 28px #131c2618}
.theme-v2 .desktop-nav>a,.theme-v2 .nav-dropdown-trigger{color:#1e272c}
.theme-v2 .desktop-nav>a:hover,.theme-v2 .desktop-nav>a[aria-current=page],.theme-v2 .nav-dropdown-trigger:hover{color:#97660d}
.theme-v2 .service-dropdown{background:#fff;color:#222629;border:1px solid #e4d7b6;box-shadow:0 25px 40px #19212522}
.theme-v2 .service-dropdown:before{border-color:#e4d7b6;background:#fff}
.theme-v2 .dropdown-heading{border-color:#dedacf;color:#272727}
.theme-v2 .dropdown-heading a,.theme-v2 .dropdown-grid a:hover{color:#986a1c}
.theme-v2 .dropdown-grid a{color:#30383c}
.theme-v2 .dropdown-grid a:hover{background:#fbf7ed}
.theme-v2 .mobile-nav{background:#fff;color:#1c272d;box-shadow:0 18px 35px #10192330}
.theme-v2 .mobile-nav>a,.theme-v2 .mobile-service-toggle{color:#222c31;border-color:#e9e3d7}
.theme-v2 .mobile-submenu{background:#fbf9f3}
.theme-v2 .mobile-submenu a{color:#202b31;border-color:#ede4cd}
.theme-v2 .menu-button{color:#1c262c}
.theme-v2 .brand-copy strong{color:#1e282d}
.theme-v2 .brand-copy small{color:#875e13}
.theme-v2 .header-cta{background:#dfb86d;color:#171e21}
.theme-v2 .site-footer{background:#fff;color:#22282c;border-top:1px solid #e9e4d7}
.theme-v2 .site-footer .footer-main h4,.theme-v2 .site-footer h4{color:#795414}
.theme-v2 .footer-brand>p,.theme-v2 .footer-contact>p,.theme-v2 .footer-links a,.theme-v2 .footer-contact>a,.theme-v2 .footer-contact>span{color:#4b5158}
.theme-v2 .footer-links a:hover,.theme-v2 .footer-contact a:hover{color:#9c6e20}
.theme-v2 .footer-bottom{border-color:#e8e1d2;color:#51565b}
.theme-v2 .footer-bottom a{color:#81590f}
.theme-v2 .social-block{border-color:#e0d8c9}
.theme-v2 .social-kicker{color:#70665b}
.theme-v2 .social-symbol{background:#f8f6ef;border-color:#ded6c5;color:#5f4a2a}
.theme-v2 .social-symbol:hover{background:#eadfca}
.theme-v2 .footer-contact svg{color:#af8029}
.theme-v2 .site-footer:before{display:none}
/* Keep the source photograph fully inside the scene: the 1920x760 image has an uncropped
   original photo on the right and transparent left, with version-specific real CSS backgrounds. */
.inner-hero.full-photo-hero{min-height:clamp(480px,39vw,610px);background:#0a2b46;color:#fff;overflow:hidden;isolation:isolate}
.theme-v2 .inner-hero.full-photo-hero{background:#151a1d}
.theme-v3 .inner-hero.full-photo-hero{background:#07573d}
.full-photo-hero .inner-bg-photo,.hero-v2 .hero-bg{position:absolute;inset:0;overflow:hidden;z-index:-2}
.full-photo-hero .inner-bg-photo picture,.hero-v1 .hero-visual picture,.hero-v2 .hero-bg picture{position:absolute;inset:0;display:block;width:100%;height:100%}
.full-photo-hero .inner-bg-photo img,.hero-v1 .hero-visual img,.hero-v2 .hero-bg img{display:block;width:100%;height:100%;object-fit:contain;object-position:right center;animation:none!important;transform:none!important;filter:saturate(1.08) contrast(1.025)}
.full-photo-hero:after{background:linear-gradient(90deg,#0a2b46 0%,#0a2b46ed 29%,#0a2b4680 49%,transparent 76%)}
.theme-v2 .full-photo-hero:after{background:linear-gradient(90deg,#151a1d 0%,#151a1df0 29%,#151a1d8a 50%,transparent 77%)}
.theme-v3 .full-photo-hero:after{background:linear-gradient(90deg,#07573d 0%,#07573de8 28%,#07573d7c 50%,transparent 78%)}
.full-photo-hero .inner-hero-copy{max-width:min(620px,55vw)}
.full-photo-hero h1{font-size:clamp(2.85rem,4.35vw,5rem);line-height:1.08;text-wrap:balance}
.full-photo-hero .inner-hero-copy>p:not(.eyebrow){max-width:540px}
.hero-v1,.hero-v2{isolation:isolate}
.hero-v1{background:#092c50}
.hero-v1 .hero-visual{inset:0;width:100%;height:100%}
.hero-v1 .hero-shade{background:linear-gradient(90deg,#092b50 3%,#092b50ee 27%,#092b507a 51%,transparent 80%)}
.hero-v1 .hero-copy{max-width:555px}
.theme-v1 .hero-v1 .hero-visual img{object-position:right center}
.theme-v2 .hero-v2{background:#151a1d}
.hero-v2 .hero-v2-wash{background:linear-gradient(90deg,#151a1d 2%,#151a1de8 28%,#151a1d80 50%,transparent 83%)}
.hero-v2 .hero-v2-copy{max-width:650px}
.hero-v2 .hero-v2-copy h1{font-size:clamp(3.5rem,5.5vw,6rem);max-width:620px}
/* V3 retains its intentionally different editorial split composition; uncropped source within its photo slots. */
.theme-v3 .v3-main-shot,.theme-v3 .v3-floating-shot{background:#e5efe9}
.theme-v3 .v3-main-shot img,.theme-v3 .v3-floating-shot img{object-fit:contain;object-position:center;animation:none!important;transform:none!important}
.theme-v3 .v3-floating-shot{background:#edf3ed}
/* Photo-led and legible FAQ blocks across all 36 pages. */
.faq-section{padding-block:clamp(52px,6.3vw,88px)}
.faq-section h2{text-wrap:balance}
.faq-items details:focus-within{outline:2px solid var(--accent);outline-offset:3px}
.faq-items summary{min-height:58px;display:flex;align-items:center;padding-right:42px}
.faq-items details[open]{padding-bottom:3px}
/* Workers have coordinated navy garments in every version; safety PPE is kept visible. */
.team-photo .uniform-logo{max-width:12%;object-fit:contain;z-index:2}
.theme-v2 .team-photo .uniform-logo{mix-blend-mode:normal;opacity:.82}
/* Original uploaded client projects are not fabricated; remove display-only technical note chips. */
.photo-status,.team-note,.project-disclaimer{display:none!important}
@media(max-width:1099px){
 .brand{overflow:visible;min-height:52px}
 .brand .brand-full{display:none}
 .brand .brand-mark{display:block;object-fit:contain;max-width:58px;max-height:58px;flex:none}
 .brand-copy{overflow:visible}
 .theme-v2 .header-inner{min-height:79px}
 .theme-v2 .site-header .menu-button{color:#1d252b}
}
@media(max-width:690px){
 .brand{flex:1 1 auto;max-width:217px;min-width:0}
 .brand .brand-mark{max-width:45px;width:45px;height:45px}
 .brand-copy strong{font-size:12.5px;white-space:normal;line-height:1.05}
 .brand-copy small{font-size:8px;white-space:normal;line-height:1.25}
 .theme-v2 .brand-copy strong{color:#1c252b}
 .theme-v2 .brand-copy small{color:#895d11}
 .header-inner{min-height:72px;gap:4px;overflow:visible}
 .menu-button{order:2;min-width:38px;min-height:44px}
 .header-cta{order:3;min-width:43px;min-height:43px;padding:9px}
 .inner-hero.full-photo-hero{min-height:720px;display:flex;align-items:flex-start;padding:35px 0 0}
 .full-photo-hero .inner-bg-photo img,.hero-v1 .hero-visual img,.hero-v2 .hero-bg img{object-fit:cover;object-position:center bottom}
 .full-photo-hero:after{background:linear-gradient(180deg,#0a2b46 0%,#0a2b46 20%,#0a2b46e7 38%,#0a2b4666 56%,transparent 78%)}
 .theme-v2 .full-photo-hero:after{background:linear-gradient(180deg,#151a1d 0%,#151a1d 21%,#151a1ddc 40%,#151a1d50 57%,transparent 81%)}
 .theme-v3 .full-photo-hero:after{background:linear-gradient(180deg,#07573d 0%,#07573d 20%,#07573ddc 39%,#07573d56 57%,transparent 81%)}
 .full-photo-hero .inner-hero-copy{max-width:100%}
 .full-photo-hero .inner-hero-grid{width:calc(100% - 38px)}
 .full-photo-hero h1{font-size:clamp(2.3rem,9vw,3.25rem);line-height:1.12;max-width:95%;margin-bottom:14px}
 .full-photo-hero .inner-hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.5;max-width:95%}
 .full-photo-hero .crumbs{margin-top:17px;font-size:11px}
 .hero-v1 .hero-shade{background:linear-gradient(180deg,#092b50 1%,#092b50fa 25%,#092b50dc 41%,#092b5066 60%,transparent 82%)}
 .hero-v2 .hero-v2-wash{background:linear-gradient(180deg,#151a1d 0%,#151a1deb 28%,#151a1da8 45%,#151a1d33 67%,transparent 85%)}
 .theme-v2 .hero-v2,.hero-v2 .hero-v2-inner,.hero-v1,.hero-v1 .hero-content{min-height:760px}
 .hero-v1 .hero-content{align-items:flex-start;padding-top:20px}
 .hero-v1 .hero-copy{padding:20px 0 0}
 .hero-v1 .hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.55}
 .hero-v1 h1{font-size:clamp(2.8rem,10vw,4.2rem);line-height:1.05}
 .hero-v2 .hero-v2-inner{padding:32px 0 20px}
 .hero-v2 .hero-v2-copy{padding:32px 0 20px}
 .hero-v2 .hero-v2-copy h1{font-size:clamp(3.25rem,11vw,4.75rem)}
 .hero-v2 .hero-v2-copy>p{font-size:14px;line-height:1.5}
 .theme-v3 .hero-v3-images{height:auto;min-height:365px}
 .theme-v3 .v3-main-shot{inset:0 0 15px 15px}
 .theme-v3 .v3-floating-shot{height:150px;width:43%}
 .footer-brand>img.exact-company-logo{width:min(100%,285px);max-height:none}
 .theme-v2 .site-footer .footer-main{gap:25px}
 .faq-layout{grid-template-columns:1fr;gap:14px}
 .faq-items summary{font-size:14px;min-height:58px}
}
@media(max-width:390px){.brand{max-width:201px}.brand-copy strong{font-size:11.6px}.brand .brand-mark{width:41px;height:41px}.header-inner{gap:2px}}
@media(prefers-reduced-motion:reduce){.hero-v1 img,.hero-v2 img,.full-photo-hero img,.theme-v3 .hero-v3 img{animation:none!important}}
/* Final brightness and mobile rhythm corrections from real rendered QA. */
@media(min-width:691px){
 .theme-v1 .hero-v1 .hero-shade{background:linear-gradient(90deg,#092b50 0%,#092b50e6 25%,#092b506c 47%,transparent 73%)}
 .theme-v2 .hero-v2 .hero-v2-wash{background:linear-gradient(90deg,#151a1d 0%,#151a1de7 26%,#151a1d5e 49%,transparent 77%)}
}
@media(max-width:690px){
 .theme-v1 .hero-v1 .hero-shade{background:linear-gradient(180deg,#092b50 0%,#092b50fa 25%,#092b50b0 40%,#092b503a 55%,transparent 69%)}
 .theme-v2 .hero-v2 .hero-v2-wash{background:linear-gradient(180deg,#151a1d 0%,#151a1df7 27%,#151a1d9e 43%,#151a1d25 58%,transparent 69%)}
 .theme-v2 .hero-v2 .hero-v2-inner{justify-content:flex-start;gap:28px}
 .theme-v2 .hero-v2-copy{padding:0;margin:0;max-width:100%}
 .theme-v2 .hero-v2-side{margin-top:auto}
 .theme-v2 .hero-v2 .v2-ribbon{max-width:100%;line-height:1.5}
}


/* === latest mobile-logo + uncropped-services + hero-overlay refinement === */
/* Use the same clean exact logo treatment across all versions and let it breathe. */
.brand{flex:0 1 clamp(280px,26vw,365px)}
.brand .brand-full{max-height:82px;width:100%;object-fit:contain;object-position:left center}
.footer-brand>img.exact-company-logo{width:min(100%,370px)}
@media(min-width:1100px){
  .brand,.theme-v2 .brand,.theme-v3 .brand{flex-basis:clamp(285px,26vw,360px);max-width:360px;min-height:78px}
  .header-inner{min-height:98px;gap:14px}
}

/* Service cards and inner framed images should show the full photo rather than crop it. */
.service-visual,.service-card-compact .service-visual,.full-services .service-visual,.v2-service-pic,.inner-image,.about-photo,.rich-about-image,.detail-image,.story-photo{background:linear-gradient(180deg,#f2f5f7,#e7edf1)}
.service-visual>img,.v2-service-pic img,.inner-image img,.about-photo img,.rich-about-image img,.detail-image img,.story-photo img{object-fit:contain;object-position:center center;background:transparent}
.service-visual{padding:0}
.service-card:hover .service-visual>img{transform:scale(1.03)}
.v2-service-pic{display:flex;align-items:center;justify-content:center}
.v2-service-pic img{width:100%;height:100%}
@media(max-width:650px){
  .service-visual,.service-card-compact .service-visual,.full-services .service-visual{height:150px}
  .inner-image{height:240px}
}

/* Tablet/mobile header: show the full refined horizontal logo instead of a cropped icon + tiny text. */
@media(max-width:1099px){
  .brand{display:flex;align-items:center;flex:1 1 auto;max-width:min(72vw,300px);min-height:58px}
  .brand .brand-full{display:block !important;max-height:60px;width:100%}
  .brand .brand-mark,.brand .brand-copy{display:none !important}
  .header-inner{overflow:visible;gap:8px}
}
@media(max-width:690px){
  .header-inner{min-height:74px;gap:6px;align-items:center}
  .brand{max-width:min(71vw,272px);min-width:0}
  .brand .brand-full{max-height:62px}
  .menu-button{order:2;min-width:40px;min-height:44px;margin-left:0}
  .header-cta{order:3;margin-left:auto}
  .footer-brand>img.exact-company-logo{width:min(100%,300px)}
}
@media(max-width:375px){
  .brand{max-width:min(69vw,238px)}
  .brand .brand-full{max-height:56px}
}

/* Keep home hero photography visible on mobile while preserving readable text overlays. */
.theme-v1 .hero-v1 .hero-visual img{object-position:72% center}
.theme-v2 .hero-v2 .hero-bg img{object-position:70% center}
@media(max-width:690px){
  .hero-v1,.hero-v1 .hero-content,.theme-v2 .hero-v2,.hero-v2 .hero-v2-inner{min-height:690px}
  .hero-v1 .hero-visual img{object-fit:cover;object-position:68% center}
  .hero-v2 .hero-bg img{object-fit:cover;object-position:66% center}
  .hero-v1 .hero-copy,.hero-v2 .hero-v2-copy{position:relative;z-index:2;padding-top:28px}
  .hero-v1 .hero-shade{background:linear-gradient(180deg,#07254be8 0%,#07254bd6 28%,#07254b88 52%,#07254b25 70%,#051a3be8 100%)}
  .hero-v2 .hero-v2-wash{background:linear-gradient(180deg,#151a1de6 0%,#151a1dda 29%,#151a1d8e 53%,#151a1d33 72%,#101416ed 100%)}
  .full-photo-hero .inner-bg-photo img{object-fit:cover;object-position:68% center}
  .full-photo-hero:after{background:linear-gradient(180deg,#0a2b46eb 0%,#0a2b46dd 24%,#0a2b4690 47%,#0a2b4633 69%,#0a2b46e6 100%)}
  .theme-v2 .full-photo-hero:after{background:linear-gradient(180deg,#151a1deb 0%,#151a1ddd 24%,#151a1d93 48%,#151a1d32 69%,#151a1de8 100%)}
  .theme-v3 .full-photo-hero:after{background:linear-gradient(180deg,#07573de8 0%,#07573dd9 24%,#07573d90 48%,#07573d32 69%,#07573de8 100%)}
}

/* V3 mobile hero should also overlay copy on the image rather than stacking separately. */
@media(max-width:690px){
  .theme-v3 .hero-v3{position:relative;overflow:hidden;background:#0b5f43;color:#fff;padding:0}
  .theme-v3 .hero-v3:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b5f43e8 0%,#0b5f43dc 28%,#0b5f4391 52%,#0b5f4330 73%,#0b5f43ea 100%);z-index:0}
  .theme-v3 .hero-v3-layout{position:relative;display:block;min-height:690px}
  .theme-v3 .hero-v3-images{position:absolute;inset:0;height:100%;z-index:0}
  .theme-v3 .v3-main-shot{inset:0;border-radius:0;background:#0b5f43}
  .theme-v3 .v3-main-shot img{width:100%;height:100%;object-fit:cover;object-position:67% center}
  .theme-v3 .v3-floating-shot,.theme-v3 .v3-corner-label{display:none}
  .theme-v3 .hero-v3-copy{position:relative;z-index:1;padding:42px 0 0;color:#fff;max-width:100%}
  .theme-v3 .hero-v3-copy>p,.theme-v3 .hero-ministats{color:#eef8f3}
  .theme-v3 .green-dot{color:#d5f8e7}
  .theme-v3 .green-dot span{box-shadow:0 0 0 6px #d5f8e733}
  .theme-v3 .hero-actions .btn-outline{border-color:#ffffffbc;color:#fff}
}


/* === request 2026-11-11 exact logos + mobile hero overlay + fitted card images === */
/* Exact uploaded logos per version */
.brand{display:flex;align-items:center;min-width:0;flex:1 1 auto;max-width:clamp(245px,30vw,370px)}
.brand .brand-full{display:block!important;width:100%;height:auto;max-height:88px;object-fit:contain;object-position:left center}
.brand .brand-mark,.brand .brand-copy{display:none!important}
.footer-brand>img.exact-company-logo{display:block;width:min(100%,370px);height:auto;object-fit:contain}
@media (max-width:1099px){
  .header-inner{gap:8px;min-height:76px}
  .brand{max-width:min(68vw,265px)}
  .brand .brand-full{max-height:62px}
}
@media (max-width:430px){
  .brand{max-width:min(64vw,232px)}
  .brand .brand-full{max-height:56px}
  .menu-button{min-width:44px;min-height:44px}
}
@media (max-width:375px){
  .brand{max-width:min(61vw,212px)}
  .brand .brand-full{max-height:52px}
}

/* V1 + V2 mobile hero copy must sit over the hero image. */
@media (max-width:690px){
  .theme-v1 .hero-v1,
  .theme-v2 .hero-v2{position:relative;overflow:hidden;isolation:isolate;padding:0}
  .theme-v1 .hero-v1 .hero-visual,
  .theme-v2 .hero-v2 .hero-bg{position:absolute;inset:0;z-index:-2}
  .theme-v1 .hero-v1 .hero-visual picture,
  .theme-v2 .hero-v2 .hero-bg picture{position:absolute;inset:0;width:100%;height:100%}
  .theme-v1 .hero-v1 .hero-visual img,
  .theme-v2 .hero-v2 .hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center center}
  .theme-v1 .hero-v1 .hero-shade,
  .theme-v2 .hero-v2 .hero-v2-wash{position:absolute;inset:0;z-index:-1}
  .theme-v1 .hero-v1 .hero-shade{background:linear-gradient(180deg,rgba(7,37,75,.92) 0%,rgba(7,37,75,.88) 22%,rgba(7,37,75,.58) 46%,rgba(7,37,75,.24) 67%,rgba(4,24,53,.85) 100%)}
  .theme-v2 .hero-v2 .hero-v2-wash{background:linear-gradient(180deg,rgba(21,26,29,.94) 0%,rgba(21,26,29,.89) 22%,rgba(21,26,29,.61) 48%,rgba(21,26,29,.22) 68%,rgba(16,20,22,.9) 100%)}
  .theme-v1 .hero-v1 .hero-content,
  .theme-v2 .hero-v2 .hero-v2-inner{position:relative;z-index:1;min-height:700px;display:flex;flex-direction:column;justify-content:flex-start;padding:36px 0 18px}
  .theme-v1 .hero-v1 .hero-copy,
  .theme-v2 .hero-v2 .hero-v2-copy{padding:52px 0 20px;max-width:100%;position:relative;z-index:2}
  .theme-v1 .hero-v1 .hero-small,
  .theme-v2 .hero-v2 .hero-v2-side{margin-top:auto;position:relative;z-index:2}
  .theme-v1 .hero-v1 .hero-visual img{object-position:63% center}
  .theme-v2 .hero-v2 .hero-bg img{object-position:64% center}
}

/* Service-card and related-grid images should sit cleanly inside their frames across all versions. */
.service-card .service-visual,
.service-card-compact .service-visual,
.full-services .service-visual,
.v2-service-pic,
.related-grid .service-visual,
.mini-service-list .service-visual{display:block;overflow:hidden;background:#eef2f5}
.service-card .service-visual img,
.service-card-compact .service-visual img,
.full-services .service-visual img,
.v2-service-pic img,
.related-grid .service-visual img,
.mini-service-list .service-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.service-card:hover .service-visual img,
.service-card-compact:hover .service-visual img{transform:scale(1.03)}
@media (max-width:650px){
  .service-card .service-visual,
  .service-card-compact .service-visual,
  .full-services .service-visual,
  .related-grid .service-visual{height:170px}
  .v2-service-pic{height:104px}
}

/* Client follow-up 2026-11-11: unframed footer logos and no image corner labels. */
/* Remove artificial rounded white rectangles, padding and backing effects from the exact logo. */
.footer-brand>img.exact-company-logo,
.theme-v1 .footer-brand>img.exact-company-logo,
.theme-v2 .footer-brand>img.exact-company-logo,
.theme-v3 .footer-brand>img.exact-company-logo{
  padding:0!important;
  margin:0 0 18px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  clip-path:none;
  object-fit:contain;
}
.footer-brand:before,.theme-v2 .footer-brand:before{display:none!important}
/* Keep all normal hero headings and CTAs; remove only decorative labels over pictures. */
.v3-corner-label{display:none!important}


/* Final follow-up 2026-11-11: exact logos, mobile overlay heroes, fitted service images, no white logo backings. */
.brand .brand-full.exact-company-logo{display:block!important;width:100%;height:auto;object-fit:contain;object-position:left center;filter:none}
.theme-v1 .brand .brand-full.exact-company-logo,.theme-v2 .brand .brand-full.exact-company-logo,.theme-v3 .brand .brand-full.exact-company-logo{background:transparent!important}
@media (max-width:650px){
  .brand{max-width:min(68vw,250px)!important;gap:0!important}
  .brand .brand-full.exact-company-logo{display:block!important;max-height:54px!important}
  .brand .brand-mark,.brand .brand-copy{display:none!important}
}
@media (max-width:390px){
  .brand{max-width:min(64vw,225px)!important}
  .brand .brand-full.exact-company-logo{max-height:50px!important}
}
.footer-brand>img.exact-company-logo,.theme-v1 .footer-brand>img.exact-company-logo,.theme-v2 .footer-brand>img.exact-company-logo,.theme-v3 .footer-brand>img.exact-company-logo{background:transparent!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.theme-v1 .footer-brand,.theme-v2 .footer-brand,.theme-v3 .footer-brand{background:transparent!important}
/* decorative sticker text over images must stay hidden everywhere */
.v3-corner-label,.corner-label,.image-corner-label{display:none!important;visibility:hidden!important}
/* service cards: show full image inside frame instead of cropping */
.service-card .service-visual,.service-card-compact .service-visual,.full-services .service-visual,.v2-service-pic,.related-grid .service-visual{display:flex!important;align-items:center;justify-content:center;overflow:hidden;background:#eef2f5}
.service-card .service-visual img,.service-card-compact .service-visual img,.full-services .service-visual img,.v2-service-pic img,.related-grid .service-visual img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;background:#eef2f5}
.theme-v2 .service-card .service-visual,.theme-v2 .service-card-compact .service-visual,.theme-v2 .full-services .service-visual,.theme-v2 .v2-service-pic,.theme-v2 .related-grid .service-visual{background:#1d2529!important}
.theme-v2 .service-card .service-visual img,.theme-v2 .service-card-compact .service-visual img,.theme-v2 .full-services .service-visual img,.theme-v2 .v2-service-pic img,.theme-v2 .related-grid .service-visual img{background:#1d2529!important}
.theme-v3 .service-card .service-visual,.theme-v3 .service-card-compact .service-visual,.theme-v3 .full-services .service-visual,.theme-v3 .related-grid .service-visual{background:#edf6ef!important}
.theme-v3 .service-card .service-visual img,.theme-v3 .service-card-compact .service-visual img,.theme-v3 .full-services .service-visual img,.theme-v3 .related-grid .service-visual img{background:#edf6ef!important}
/* V1 and V2 home hero text should remain over the image on mobile */
@media (max-width:690px){
  .theme-v1 .hero-v1,.theme-v2 .hero-v2{position:relative!important;overflow:hidden!important;isolation:isolate}
  .theme-v1 .hero-v1 .hero-visual,.theme-v2 .hero-v2 .hero-bg{position:absolute!important;inset:0!important;z-index:0!important}
  .theme-v1 .hero-v1 .hero-shade,.theme-v2 .hero-v2 .hero-v2-wash{position:absolute!important;inset:0!important;z-index:1!important}
  .theme-v1 .hero-v1 .hero-content,.theme-v2 .hero-v2 .hero-v2-inner{position:relative!important;z-index:2!important;min-height:700px!important;padding-top:34px!important;padding-bottom:24px!important}
  .theme-v1 .hero-v1 .hero-copy,.theme-v2 .hero-v2 .hero-v2-copy{padding-top:42px!important;padding-bottom:20px!important;max-width:100%!important}
  .theme-v1 .hero-v1 .hero-small,.theme-v2 .hero-v2 .hero-v2-side{margin-top:auto!important}
}


/* 2026-11-12 mobile hero image-and-copy overlay fix only */
/* The mobile hero photographs now fill the full height; keep editable HTML headings above the photographic layers. */
@media(max-width:690px){
  .theme-v1 .hero-v1,.theme-v2 .hero-v2,
  .theme-v1 .inner-hero.full-photo-hero,.theme-v2 .inner-hero.full-photo-hero,.theme-v3 .inner-hero.full-photo-hero{
    position:relative!important;isolation:isolate!important;overflow:hidden!important;
  }
  .theme-v1 .hero-v1 .hero-visual,.theme-v2 .hero-v2 .hero-bg,
  .theme-v1 .full-photo-hero .inner-bg-photo,.theme-v2 .full-photo-hero .inner-bg-photo,.theme-v3 .full-photo-hero .inner-bg-photo{
    position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none;
  }
  .theme-v1 .hero-v1 .hero-visual picture,.theme-v2 .hero-v2 .hero-bg picture,
  .full-photo-hero .inner-bg-photo picture{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  }
  .theme-v1 .hero-v1 .hero-visual img,.theme-v2 .hero-v2 .hero-bg img,
  .full-photo-hero .inner-bg-photo img{
    display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
    object-position:center center!important;transform:none!important;animation:none!important;
  }
  .theme-v1 .hero-v1 .hero-shade,.theme-v2 .hero-v2 .hero-v2-wash,
  .theme-v1 .inner-hero.full-photo-hero:after,.theme-v2 .inner-hero.full-photo-hero:after,.theme-v3 .inner-hero.full-photo-hero:after{
    position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none;
  }
  .theme-v1 .hero-v1 .hero-shade{
    background:linear-gradient(180deg,rgba(5,24,48,.78) 0%,rgba(7,31,56,.74) 37%,rgba(5,24,47,.41) 68%,rgba(5,24,47,.24) 100%)!important;
  }
  .theme-v2 .hero-v2 .hero-v2-wash{
    background:linear-gradient(180deg,rgba(15,18,21,.79) 0%,rgba(15,18,21,.73) 39%,rgba(15,18,21,.44) 69%,rgba(15,18,21,.24) 100%)!important;
  }
  .theme-v1 .inner-hero.full-photo-hero:after{
    background:linear-gradient(180deg,rgba(5,27,50,.79) 0%,rgba(5,27,50,.7) 37%,rgba(5,27,50,.36) 68%,rgba(5,27,50,.20) 100%)!important;
  }
  .theme-v2 .inner-hero.full-photo-hero:after{
    background:linear-gradient(180deg,rgba(15,18,21,.79) 0%,rgba(15,18,21,.7) 37%,rgba(15,18,21,.36) 68%,rgba(15,18,21,.20) 100%)!important;
  }
  .theme-v3 .inner-hero.full-photo-hero:after{
    background:linear-gradient(180deg,rgba(6,55,40,.79) 0%,rgba(6,55,40,.70) 37%,rgba(6,55,40,.36) 68%,rgba(6,55,40,.20) 100%)!important;
  }
  .theme-v1 .hero-v1 .hero-content,.theme-v2 .hero-v2 .hero-v2-inner,
  .theme-v1 .inner-hero.full-photo-hero .inner-hero-grid,.theme-v2 .inner-hero.full-photo-hero .inner-hero-grid,.theme-v3 .inner-hero.full-photo-hero .inner-hero-grid{
    position:relative!important;z-index:2!important;
  }
  .theme-v1 .hero-v1 .hero-copy,.theme-v2 .hero-v2 .hero-v2-copy,
  .full-photo-hero .inner-hero-copy{
    position:relative!important;z-index:2!important;
    text-shadow:0 2px 11px rgba(0,0,0,.33);
  }
}
