.bn-contact-page{--contact-line:#d4e6fa}
.bn-contact-section{padding:68px 0}
.bn-contact-page .bn-optima-actions{display:flex;flex-wrap:wrap;gap:11px}
.bn-contact-page .bn-contact-heading{max-width:720px;margin-bottom:29px}
.bn-contact-page .bn-contact-heading>p:not(.overline){margin-top:15px;color:#49668a;line-height:1.8}
.bn-contact-page .bn-contact-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.86fr);gap:55px;align-items:center}
.bn-contact-methods{display:grid;gap:15px}
.bn-contact-page .bn-contact-method{display:grid;grid-template-columns:48px minmax(0,1fr);gap:19px;padding:26px;border:1px solid var(--contact-line);border-radius:18px;background:linear-gradient(120deg,#fff,#f6fbff);box-shadow:0 8px 24px #194d7e06;min-width:0}
.bn-contact-page .bn-contact-icon{width:30px;height:30px;margin:0}
.bn-contact-page .bn-contact-icon img{width:100%;height:100%;object-fit:contain;display:block}
.bn-contact-page .bn-contact-method .bn-contact-icon{width:42px;height:42px;padding:9px;background:#eaf5ff;border:1px solid #cde5ff;border-radius:12px}
.bn-contact-page .bn-contact-method .overline{margin:0 0 6px;font-size:10px}
.bn-contact-page .bn-contact-method h3{font-size:clamp(20px,2.2vw,29px);letter-spacing:-.035em;overflow-wrap:anywhere}
.bn-contact-page .bn-contact-method h3 a{color:#0874e8;display:inline-block}
.bn-contact-page .bn-contact-method p:last-child{margin-top:9px;font-size:13px;color:#527092}
.bn-contact-network{position:relative;min-height:370px;border:1px solid #d9eafa;border-radius:26px;overflow:hidden;background:radial-gradient(ellipse at 50% 47%,#ddf1ff,#f5faff 60%,#fff);isolation:isolate}
.bn-contact-page .bn-contact-network-lines{position:absolute;inset:0;width:100%;height:100%;opacity:.82;margin:0}
.bn-contact-network-lines img{width:100%;height:100%;object-fit:cover}
.bn-contact-page .bn-contact-network-logo{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:230px;max-width:68%;margin:0;padding:24px 20px;background:#ffffffed;border:1px solid #c9e4ff;border-radius:17px;box-shadow:0 15px 45px #277bd326;z-index:2}
.bn-contact-network-logo img{width:100%;height:auto;display:block}
.bn-contact-page .bn-contact-node{position:absolute;display:flex;align-items:center;gap:9px;padding:11px 14px;background:#fff;border:1px solid #d4e7fb;border-radius:13px;box-shadow:0 5px 20px #245d9d0b;z-index:3}
.bn-contact-node .bn-contact-icon{width:22px;height:22px}
.bn-contact-node p{font-size:11px;font-weight:650;color:#315986}
.bn-contact-node-one{left:8%;top:12%}.bn-contact-node-two{right:7%;top:69%}.bn-contact-node-three{left:8%;top:76%}
.bn-contact-network::after{content:'';position:absolute;left:0;top:0;width:8px;height:8px;border-radius:50%;background:#37b5ff;box-shadow:0 0 18px 5px #37b5ff60;offset-path:ellipse(38% 36% at 50% 50%);offset-distance:0%;opacity:0}
.bn-contact-network.bn-contact-in-view::after{animation:bn-contact-connect 3.8s ease-in-out both}
@keyframes bn-contact-connect{0%{offset-distance:0%;opacity:0}12%{opacity:1}88%{opacity:1}100%{offset-distance:100%;opacity:0}}
.bn-contact-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bn-contact-page .bn-contact-topic{display:flex;flex-direction:column;min-width:0;padding:27px;border:1px solid var(--contact-line);border-radius:19px;background:#fff}
.bn-contact-topic .bn-contact-icon{margin-bottom:21px}
.bn-contact-page .bn-contact-topic h3{font-size:21px;margin-bottom:13px}
.bn-contact-page .bn-contact-topic p{font-size:14px;color:#4c698d;line-height:1.8;margin-bottom:20px}
.bn-contact-page .bn-contact-topic .bn-optima-actions{margin-top:auto}
.bn-contact-page .bn-contact-topic .wp-block-button__link{min-height:44px}
.bn-contact-location-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:30px;align-items:stretch}
.bn-contact-page .bn-contact-address{padding:32px;border:1px solid var(--contact-line);border-radius:21px;background:#fff}
.bn-contact-address .bn-contact-icon{margin-bottom:20px}
.bn-contact-page .bn-contact-address h3{font-size:22px;margin:0 0 14px}
.bn-contact-page .bn-contact-address .bn-contact-street{font-size:19px;color:#183e70;line-height:1.7;margin-bottom:14px}
.bn-contact-page .bn-contact-company{display:grid;gap:8px;padding-top:20px;margin-top:26px;border-top:1px solid #dfebf8}
.bn-contact-page .bn-contact-company p{font-size:13px;color:#527092}
.bn-contact-page .bn-contact-region{position:relative;padding:33px;border:1px solid #cfe4fa;border-radius:21px;background:radial-gradient(ellipse at 85% 10%,#d9efff,transparent 65%),#f4faff;overflow:hidden}
.bn-contact-page .bn-contact-region h3{font-size:27px;margin-bottom:17px}
.bn-contact-page .bn-contact-region>p:not(.overline){color:#48688f;line-height:1.8;font-size:14px}
.bn-contact-cities{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.bn-contact-page .bn-contact-cities p{display:flex;align-items:center;gap:7px;padding:9px 12px;font-size:12px;color:#315782;background:#ffffffd9;border:1px solid #cfe4f8;border-radius:30px}
.bn-contact-cities p::before{content:'';width:6px;height:6px;border-radius:50%;background:#2b9df9;flex:none}
.bn-contact-page .bn-contact-cities p:first-child{background:#087cf5;color:white;border-color:#087cf5}
.bn-contact-cities p:first-child::before{background:#a6dcff}
.bn-contact-page .bn-contact-support{background:radial-gradient(ellipse at 90% 25%,#1a5796,transparent 70%),#102b60;color:#fff}
.bn-contact-support-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:70px;align-items:center}
.bn-contact-page .bn-contact-support h2{color:#fff}
.bn-contact-page .bn-contact-support h2 span{color:#6fcaff}
.bn-contact-page .bn-contact-support .overline{color:#9ed6ff}
.bn-contact-page .bn-contact-support p:not(.overline){color:#c9ddf5;line-height:1.8;margin-top:18px}
.bn-contact-page .bn-contact-support .btn-outline .wp-block-button__link{background:transparent;border-color:#77baff;color:#fff}
.bn-contact-page .bn-contact-support-box{padding:31px;border:1px solid #8dbdf74d;border-radius:21px;background:#ffffff08}
.bn-contact-support-box .bn-contact-icon{width:44px;height:44px;padding:8px;background:#dcefff;border-radius:12px;margin-bottom:20px}
.bn-contact-page .bn-contact-support-box h3{color:#fff;font-size:21px}
.bn-contact-page .bn-contact-support-box p{font-size:14px}
.bn-contact-page .bn-contact-trust{padding:26px 0;background:#f3f9ff;border-top:1px solid #e2edf8}
.bn-contact-trust .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}
.bn-contact-page .bn-contact-trust p{font-size:14px;line-height:1.75;max-width:670px;color:#48678b}
.bn-contact-page .bn-contact-trust .bn-optima-actions{margin:0;flex:none}
.bn-contact-page a:focus-visible{outline:3px solid #6ab9ff;outline-offset:4px;border-radius:4px}
@media(max-width:1000px){.bn-contact-page .bn-contact-top{gap:26px}.bn-contact-network{min-height:340px}.bn-contact-node-one{left:5%}.bn-contact-page .bn-contact-node{padding:9px}.bn-contact-node p{font-size:10px}.bn-contact-support-grid{gap:30px}}
@media(max-width:760px){.bn-contact-section{padding:46px 0}.bn-contact-page .bn-contact-top,.bn-contact-location-grid,.bn-contact-support-grid{grid-template-columns:1fr}.bn-contact-topics{grid-template-columns:1fr}.bn-contact-page .bn-contact-method{padding:22px;gap:13px;grid-template-columns:40px minmax(0,1fr)}.bn-contact-page .bn-contact-method .bn-contact-icon{width:36px;height:36px;padding:7px}.bn-contact-page .bn-contact-method h3{font-size:clamp(17px,5.4vw,26px)}.bn-contact-network{min-height:320px}.bn-contact-page .bn-contact-node{padding:10px}.bn-contact-node p{font-size:11px}.bn-contact-page .bn-contact-address,.bn-contact-page .bn-contact-region,.bn-contact-page .bn-contact-support-box{padding:26px}.bn-contact-trust .wrap{align-items:flex-start;flex-direction:column}.bn-contact-page .bn-contact-trust .bn-optima-actions{flex:none}}
@media(max-width:360px){.bn-contact-page .bn-contact-method{padding:17px;gap:9px}.bn-contact-page .bn-contact-node{padding:8px;gap:6px}.bn-contact-node p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.bn-contact-network::after{animation:none!important;opacity:0!important}}

/* Compact contact: details first, no illustration, topics or service-area panel. */
.bn-contact-compact .bn-contact-section{padding:38px 0}
.bn-contact-compact .bn-contact-top{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:30px;align-items:start}
.bn-contact-compact .bn-contact-heading{margin-bottom:20px}
.bn-contact-compact .bn-contact-heading h2{font-size:clamp(25px,2.5vw,33px)}
.bn-contact-compact .bn-contact-method{padding:21px;gap:16px;align-items:center}
.bn-contact-compact .bn-contact-method h3{font-size:clamp(20px,2vw,27px)}
.bn-contact-compact .bn-contact-method .overline{margin:0 0 5px}
.bn-contact-compact .bn-contact-address{padding:25px}
.bn-contact-compact .bn-contact-address .bn-contact-icon{display:none}
.bn-contact-compact .bn-contact-address h3{font-size:21px;margin-bottom:10px}
.bn-contact-compact .bn-contact-address .bn-contact-street{font-size:17px;line-height:1.6;margin-bottom:9px}
.bn-contact-compact .bn-contact-address>p:not(.overline):not(.bn-contact-street){font-size:12px;line-height:1.65;color:#527092}
.bn-contact-compact .bn-contact-address .bn-optima-actions{margin-top:17px}
.bn-contact-compact .bn-contact-company{gap:5px;margin-top:19px;padding-top:16px}
.bn-contact-compact .bn-contact-company p{font-size:12px}
.bn-contact-compact .bn-contact-support{padding:28px 0}
.bn-contact-compact .bn-contact-support-grid{grid-template-columns:minmax(0,1fr) auto;gap:30px}
.bn-contact-compact .bn-contact-support h2{font-size:27px}
.bn-contact-compact .bn-contact-support p:not(.overline){margin-top:9px;font-size:14px}
.bn-contact-compact .bn-contact-support .bn-optima-actions{margin-top:0}
@media(max-width:760px){.bn-contact-compact .bn-contact-section{padding:28px 0}.bn-contact-compact .bn-contact-top,.bn-contact-compact .bn-contact-support-grid{grid-template-columns:1fr;gap:24px}.bn-contact-compact .bn-contact-method{padding:18px;gap:11px;grid-template-columns:36px minmax(0,1fr)}.bn-contact-compact .bn-contact-method h3{font-size:clamp(17px,5.4vw,25px)}.bn-contact-compact .bn-contact-support{padding:25px 0}.bn-contact-compact .bn-contact-address{padding:22px}}

/* v44: company/address first, then phone and e-mail. */
.bn-contact-compact .bn-contact-top{grid-template-columns:minmax(0,.85fr) minmax(0,1fr)}
@media(max-width:760px){.bn-contact-compact .bn-contact-top{grid-template-columns:1fr}}
