/*
 * OCMB Digital 2027 PRO 2.13
 * Final high-contrast palette, genuine Google map and logo-led footer.
 * The page remains predominantly light for easy product browsing; deep navy
 * is reserved for the hero, proof bands and footer, while red marks actions.
 */
:root{
  --ink:#10263f;
  --deep:#062b50;
  --blue:#0b5b96;
  --red:#d91f3d;
  --paper:#f4f7fa;
  --line:#d8e3ec;
  --muted:#52667c;
  --shadow:0 14px 36px rgba(7,43,80,.10);
}

body{background:#fbfcfd;color:var(--ink)}
.site-header{background:rgba(255,255,255,.985);border-bottom-color:#dfe8ef;box-shadow:0 8px 26px rgba(7,43,80,.055)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 10px 24px rgba(175,17,45,.20)}
.btn-red:hover,.btn-red:focus{background:#bd1732;color:#fff}
.btn-outline{border-color:#aebfce;color:#07568f}
.btn-outline:hover,.btn-outline:focus{border-color:#0b5b96;background:#eef6fb;color:#063f6d}
.eyebrow{color:#0a63a2}

/* Clear rhythm: bright content surfaces, gentle neutral separators and only
   short dark modules. This keeps a large catalogue pleasant to scan. */
.quick-actions-section,.materials-section,.local-section{background:#fff}
.quote-section,.trust-section,.faq-section,.content-page{background:#f4f7fa}
.ready-section{background:linear-gradient(135deg,#fff5f7 0%,#fff 58%,#f4f8fb 100%)}
.social-section{background:linear-gradient(135deg,#f1f7fb 0%,#fff 72%)}
.path-card,.material-card,.offer-card,.trust-grid article,.social-card,.faq-grid details,.entry-card{border-color:#d7e3ec;box-shadow:0 6px 18px rgba(7,43,80,.045)}
.path-card:hover,.material-card:hover,.offer-card:hover,.social-card:hover{border-color:#8eb3cf;box-shadow:0 16px 32px rgba(7,43,80,.11)}
.path-primary,.quick-action--primary{background:linear-gradient(135deg,#062b50 0%,#0b4f83 100%)}

/* Real offer menu. Demo template columns are rejected in PHP; this layer
   presents the preserved OCMB hierarchy as calm, readable category cards. */
.main-nav{border-color:#cfdce6;background:#fbfdff;box-shadow:0 25px 70px rgba(4,30,59,.23)}
.main-nav-head span{color:#0b659f}.main-nav-head strong{color:#0b2948}
.main-nav .ocmb-menu-tree>li{border-color:#d5e2eb;background:#fff;box-shadow:0 5px 14px rgba(7,43,80,.035)}
.main-nav .ocmb-menu-tree>li:hover{border-color:#a7bfd1}
.main-nav .ocmb-menu-tree>li>a{color:#0b2948}
.main-nav .ocmb-menu-tree .sub-menu a,.main-nav .ocmb-menu-tree .children a{color:#455f77}
.main-nav .ocmb-menu-tree>li.menu-item-home{background:#eef6fb}

/* Homepage Google map. The old decorative pin drawing is deliberately gone. */
.local-map--google{position:relative;isolation:isolate;height:340px;overflow:hidden;background:#e8eef3;border:1px solid #cedce7;box-shadow:0 16px 38px rgba(7,43,80,.12)}
.local-map--google:before,.local-map--google:after{display:none}
.local-map--google iframe{display:block;width:100%;height:100%;border:0;background:#e8eef3}
.local-map__placeholder{width:100%;height:100%;min-height:100%;padding:26px;border:0;border-radius:0;background:linear-gradient(135deg,#eef4f8,#f9fbfc)}
.local-map__placeholder .btn{min-height:44px;margin:3px}
.local-map__route{position:absolute;z-index:3;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border:1px solid rgba(255,255,255,.88);border-radius:10px;background:#fff;color:#083f6d;font-size:12px;font-weight:900;box-shadow:0 8px 24px rgba(4,30,59,.23)}
.local-map__route:hover,.local-map__route:focus{background:#062b50;color:#fff}
.local-map__placeholder:not([hidden])~.local-map__route{display:none}

/* Footer: the logo gets a clean white field and every text colour is fixed
   explicitly, preventing inherited dark headings on a navy background. */
.site-footer{position:relative;padding:58px 0 20px;border-top:5px solid var(--red);background:linear-gradient(135deg,#062b50 0%,#073963 66%,#05243f 100%);color:#fff}
.site-footer:before{position:absolute;inset:0;background:radial-gradient(circle at 88% 12%,rgba(52,125,181,.18),transparent 34%);content:"";pointer-events:none}
.site-footer .ocmb-shell{position:relative}
.footer-grid{grid-template-columns:1.12fr .78fr 1.15fr .82fr;gap:34px;align-items:start}
.footer-logo-link{display:inline-flex;max-width:235px;min-height:76px;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;background:#fff;box-shadow:0 10px 25px rgba(0,15,33,.18)}
.footer-logo{display:block;width:auto;height:auto;max-width:205px;max-height:58px;object-fit:contain}
.footer-brand{display:block;color:#0b4a84;font-size:36px;font-weight:950;line-height:1}
.footer-grid strong{display:block;margin:4px 0 14px;color:#fff;font-size:14px;font-weight:900;letter-spacing:.01em}
.footer-grid p{margin:14px 0;color:#d5e4ef;font-size:13px;line-height:1.65}
.footer-identity>p:first-of-type{max-width:300px}
.footer-small{color:#adc7da!important;font-size:11px!important}
.footer-offer ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.footer-offer a,.footer-contact a,.footer-contact-link{color:#e5f0f7;font-size:12px;line-height:1.45;text-decoration:none}
.footer-offer a:hover,.footer-offer a:focus,.footer-contact a:hover,.footer-contact a:focus,.footer-contact-link:hover,.footer-contact-link:focus{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-quote{padding:21px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.07)}
.footer-quote strong{margin-top:0}.footer-quote p{margin-top:0}
.footer-quote .btn{color:#fff;text-decoration:none}
.footer-contact p{margin-top:0;font-size:14px;overflow-wrap:anywhere}
.footer-contact-link{display:inline-block;margin-top:4px;font-weight:850}
.footer-bottom{border-top-color:rgba(255,255,255,.19);color:#b5cad9}
.footer-privacy a,.footer-privacy button{color:#dce8f1}

@media(max-width:1080px){
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:720px){
  .main-nav .ocmb-menu-tree>li.menu-item-home{background:transparent}
  .local-map--google{height:330px}
  .local-map__placeholder{padding:20px 15px}
  .local-map__placeholder strong{font-size:18px}
  .local-map__placeholder .btn{width:100%;margin:3px 0}
  .local-map__route{right:12px;left:12px;bottom:12px;justify-content:center}
}

@media(max-width:680px){
  .site-footer{padding-top:46px}
  .footer-grid{grid-template-columns:1fr;gap:29px}
  .footer-logo-link{max-width:218px;min-height:70px}
  .footer-logo{max-width:190px;max-height:53px}
  .footer-quote{padding:19px}
}

@media(prefers-reduced-motion:reduce){
  .path-card,.material-card,.offer-card,.social-card,.local-map__route{transition:none}
}
