
/* BESTA BAU 2026 – approved light corporate design overlay */
:root{--besta-navy:#082e5c;--besta-blue:#0c4c7c;--besta-orange:#f36b21;--besta-soft:#f5f9fc;--besta-line:#dfe8ef;--besta-ink:#17324d}
body{background:#fff;color:var(--besta-ink)}
.site-header{background:#fff;box-shadow:0 3px 18px rgba(8,46,92,.08)}
.topbar{background:#0b4974!important;color:#fff!important}.topbar-tag{font-weight:700}.topbar-links a,.topbar-links span{color:#fff!important}
.nav-wrap{min-height:88px}.brand{gap:12px!important}.brand-logo{width:215px!important;height:68px!important;object-fit:contain!important;border-radius:0!important}.brand-word{display:none!important}
.desktop-nav{gap:17px!important}.desktop-nav>a,.desktop-nav .nav-services-link{font-size:14px!important;font-weight:800!important;color:#123657!important}.desktop-nav a.active{color:var(--besta-orange)!important}
.nav-dropdown .dropdown-menu{border-radius:13px!important;border:1px solid var(--besta-line)!important;box-shadow:0 16px 35px rgba(7,36,70,.14)!important;overflow:hidden}.nav-dropdown .dropdown-menu a:hover{background:#fff5ef!important;color:#bc4d12!important}
.hero-banner-2026{background:linear-gradient(90deg,#fff,#f4f9fc);padding:0;border-bottom:1px solid #e5edf3}.hero-banner-2026 .container{padding:18px 0}.hero-banner-2026 img{width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:18px;box-shadow:0 16px 42px rgba(7,38,74,.12)}
.page-hero{background:linear-gradient(115deg,#f5faff,#fff)!important}.page-hero h1{color:var(--besta-navy)!important}.kicker{color:var(--besta-orange)!important}.btn.primary{background:var(--besta-orange)!important;border-color:var(--besta-orange)!important}.btn.primary:hover{filter:brightness(.95)}
.service-card,.path-card,.app-promo-card,.about-facts>div{border-radius:15px!important;box-shadow:0 8px 22px rgba(8,46,92,.06)}
.section.soft{background:#f7fafc!important}.cta-band{background:linear-gradient(115deg,var(--besta-navy),#0b507d)!important;border-radius:18px!important}
.montage-showcase-2026{padding:62px 0;background:#fff}.montage-showcase-2026 .section-head{margin-bottom:24px}.montage-cards-2026{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.montage-card-2026{display:block;background:#fff;border:1px solid var(--besta-line);border-radius:15px;overflow:hidden;box-shadow:0 8px 24px rgba(8,46,92,.07);transition:.2s}.montage-card-2026:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(8,46,92,.13)}.montage-card-2026 img{width:100%;height:185px;object-fit:cover}.montage-card-2026 strong{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;color:var(--besta-navy)}.montage-card-2026 strong:after{content:'→';color:var(--besta-orange);font-size:22px}
.quickfix-strip-2026{background:linear-gradient(90deg,var(--besta-navy),#0b537f);color:#fff;padding:34px 0}.quickfix-strip-2026 .container{display:flex;justify-content:space-between;gap:24px;align-items:center}.quickfix-strip-2026 h2{margin:0 0 6px;color:#fff}.quickfix-strip-2026 b{color:#ff8a44}.quickfix-values{display:flex;gap:14px;flex-wrap:wrap}.quickfix-values span{background:#ffffff14;border:1px solid #ffffff2b;border-radius:999px;padding:8px 13px;font-weight:700}
.site-footer{background:linear-gradient(110deg,#072a50,#08456f)!important}.site-footer .brand-logo{width:230px!important;height:74px!important;filter:none!important;background:#fff;border-radius:10px;padding:4px}.footer-main{padding-top:44px!important}.footer-bottom{border-color:#ffffff24!important}
.besta-editor-marker{outline:2px dashed var(--besta-orange)}
@media(max-width:1050px){.brand-logo{width:175px!important}.desktop-nav{gap:10px!important}.montage-cards-2026{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.nav-wrap{min-height:74px}.brand-logo{width:175px!important;height:58px!important}.hero-banner-2026 .container{width:100%!important;padding:0!important}.hero-banner-2026 img{border-radius:0;max-height:none}.quickfix-strip-2026 .container{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.montage-cards-2026{grid-template-columns:1fr}.montage-card-2026 img{height:220px}}

/* ==========================================================
   FINAL SERVER POLISH — 2026-09-23
   ========================================================== */
/* Header logo: tightly cropped, readable, never stretched */
.site-header .brand-logo{width:auto!important;height:76px!important;max-width:170px!important;object-fit:contain!important;display:block!important}
.site-header .brand{min-width:180px;justify-content:flex-start}
.site-footer .brand-logo{width:220px!important;height:82px!important;object-fit:contain!important;background:#fff!important;border-radius:12px!important;padding:5px!important}

/* Top information ticker */
.topbar-tag{display:flex;align-items:center;min-height:22px;overflow:hidden}
.topbar-rotator{display:inline-block;transition:opacity .28s ease,transform .28s ease;will-change:opacity,transform}
.topbar-rotator.is-changing{opacity:.22;transform:translateY(-3px)}

/* Stronger text contrast on light page heroes */
.page-hero .breadcrumbs,.page-hero .breadcrumbs a{color:#687b8f!important;font-weight:700!important}
.page-hero p{color:#4d6176!important;line-height:1.65!important}

/* Approved homepage banner: icon artwork itself is clickable via invisible hotspots */
.hero-banner-2026 .container{position:relative}
.banner-hotspots-2026{position:absolute;inset:0;z-index:4;pointer-events:none}
.banner-hotspot{position:absolute;top:70.5%;height:27%;width:6.2%;pointer-events:auto;border-radius:18px;outline:0;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}
.banner-hotspot:hover,.banner-hotspot:focus-visible{background:rgba(243,107,33,.08);box-shadow:inset 0 0 0 2px rgba(243,107,33,.45);transform:translateY(-2px)}
.banner-hotspot.hs-1{left:1.8%}.banner-hotspot.hs-2{left:7.9%}.banner-hotspot.hs-3{left:14.0%}.banner-hotspot.hs-4{left:20.1%;width:7.3%}.banner-hotspot.hs-5{left:27.6%}.banner-hotspot.hs-6{left:33.9%}.banner-hotspot.hs-7{left:40.1%}.banner-hotspot.hs-8{left:46.4%;width:7.2%}.banner-hotspot.hs-9{left:53.5%}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Montage service pages: image is now aligned at the TOP beside the title */
.montage-hero-2026{background:linear-gradient(115deg,#f5faff 0%,#ffffff 72%);border-bottom:1px solid #e6eef5;padding:54px 0 58px;overflow:hidden}
.montage-hero-grid-2026{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr);gap:52px;align-items:center}
.montage-hero-copy-2026 .breadcrumbs{font-size:12px;color:#687b8f;margin-bottom:18px;font-weight:700}.montage-hero-copy-2026 .breadcrumbs a{color:#687b8f}
.montage-hero-copy-2026 h1{font-size:clamp(44px,5vw,68px);line-height:1.02;letter-spacing:-.045em;margin:0 0 18px;color:var(--besta-navy);max-width:800px}
.montage-hero-copy-2026 p{font-size:18px;line-height:1.66;color:#4d6176;max-width:720px;margin:0}
.montage-hero-media-2026{position:relative;border-radius:22px;overflow:hidden;min-height:360px;box-shadow:0 20px 48px rgba(8,46,92,.14);border:1px solid #dfe9f1;background:#eef4f8}
.montage-hero-media-2026 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.montage-copy-2026{max-width:980px;margin:0 auto}.montage-copy-2026 .copy{max-width:900px}.montage-copy-2026 .copy>p{color:#4d6176;line-height:1.72}

/* Keep button/nav contrast crisp */
.desktop-nav>a,.desktop-nav .nav-services-link{color:#0d3156!important}.desktop-nav a:hover,.desktop-nav .nav-services-link:hover{color:var(--besta-orange)!important}

@media(max-width:1050px){
  .site-header .brand-logo{height:66px!important;max-width:150px!important}.site-header .brand{min-width:155px}
  .montage-hero-grid-2026{grid-template-columns:1fr;gap:28px}.montage-hero-media-2026{min-height:330px}
}
@media(max-width:820px){
  .site-header .brand-logo{height:58px!important;max-width:135px!important}.site-header .brand{min-width:140px}
  .banner-hotspot{top:70%;height:29%;border-radius:10px}
}
@media(max-width:680px){
  .montage-hero-2026{padding:34px 0 38px}.montage-hero-copy-2026 h1{font-size:38px}.montage-hero-copy-2026 p{font-size:15px}.montage-hero-media-2026{min-height:240px;border-radius:16px}
}
