:root {
	--bs-navy: #061E4E;
	--bs-royal: #0039A2;
	--bs-accent: #0A6CF0;
	--bs-cyan: #04BCFA;
	--bs-ink: #0B1A33;
	--bs-muted: #4A5B78;
	--bs-line: #DCE4F2;
	--bs-bg: #F4F7FC;
	--bs-radius: 12px;
	--bs-wrap: 1200px;
	--bs-gutter: clamp(16px, 4vw, 40px);
	--bs-shadow: 0 14px 34px -14px rgba(6, 30, 78, 0.28);
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Header */
.bs-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--bs-line); }
.admin-bar .bs-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .bs-header { top: 0; } }
.bs-header .bs-logo img { height: auto; max-height: 52px; width: auto; }
.bs-nav .wp-block-navigation-item__content { color: var(--bs-navy); padding: 6px 0; }
.bs-nav .wp-block-navigation-item__content:hover { color: var(--bs-accent); }
.bs-nav .wp-block-navigation__submenu-container { border: 1px solid var(--bs-line) !important; border-radius: var(--bs-radius); box-shadow: var(--bs-shadow); padding: 8px 0; min-width: 270px !important; }
.bs-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 9px 18px; }
@media (max-width: 900px) { .bs-header-cta { display: none; } .bs-header .bs-logo img { max-height: 40px; } }

/* Buttons */
.bs-btn { display: inline-flex; align-items: center; gap: 8px; padding: 0.85rem 1.6rem; border-radius: 999px; font-family: var(--wp--preset--font-family--heading); font-weight: 700; font-size: 0.95rem; text-decoration: none; transition: background-color .2s, color .2s, border-color .2s, transform .2s; }
.bs-btn:active { transform: translateY(1px); }
.bs-btn--primary { background: var(--bs-accent); color: #fff; }
.bs-btn--primary:hover { background: #fff; color: var(--bs-navy); }
.bs-btn--ghost { color: #fff; border: 1.5px solid rgba(255, 255, 255, 0.55); }
.bs-btn--ghost:hover { border-color: #fff; background: rgba(255, 255, 255, 0.08); color: #fff; }

/* Slider */
.bs-main > .wp-block-post-content > .alignfull:first-child, .bs-main .bs-slider { margin-top: 0; }
.bs-slider { position: relative; overflow: hidden; background: var(--bs-navy); color: #fff; min-height: clamp(460px, 72vh, 640px); }
.bs-slide { position: absolute; inset: 0; display: flex; align-items: center; opacity: 0; visibility: hidden; transition: opacity .7s ease, visibility .7s; background:
	radial-gradient(900px 520px at 85% 30%, rgba(4, 188, 250, 0.22), transparent 60%),
	radial-gradient(700px 600px at 70% 110%, rgba(10, 108, 240, 0.35), transparent 60%),
	linear-gradient(120deg, #061E4E 0%, #0A2A6B 55%, #0039A2 100%); }
.bs-slide.has-img { background: linear-gradient(90deg, rgba(6, 30, 78, 0.94) 0%, rgba(6, 30, 78, 0.78) 45%, rgba(6, 30, 78, 0.25) 100%), var(--bs-slide-img) center / cover no-repeat; }
.bs-slide.is-active { opacity: 1; visibility: visible; }
.bs-slide::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px); background-size: 46px 46px; mask-image: linear-gradient(90deg, transparent 30%, #000 75%); -webkit-mask-image: linear-gradient(90deg, transparent 30%, #000 75%); pointer-events: none; }
.bs-slide.has-img::before { display: none; }
.bs-slide__inner { position: relative; width: 100%; max-width: var(--bs-wrap); margin: 0 auto; padding: 72px var(--bs-gutter) 96px; display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 40px; align-items: center; }
.bs-slide__title { color: #fff !important; font-family: var(--wp--preset--font-family--heading); font-weight: 800; font-size: clamp(2rem, 4.4vw, 3.4rem); line-height: 1.08; letter-spacing: -0.015em; margin: 0 0 20px; max-width: 16ch; }
.bs-slide__lead { font-size: clamp(1rem, 1.4vw, 1.2rem); color: rgba(255, 255, 255, 0.82); max-width: 46ch; margin: 0 0 32px; }
.bs-slide__cta { display: flex; flex-wrap: wrap; gap: 14px; }
.bs-slide__art { display: flex; justify-content: center; }
.bs-slide__badge { width: clamp(180px, 22vw, 280px); aspect-ratio: 1; border-radius: 36px; display: grid; place-items: center; background: linear-gradient(145deg, rgba(4, 188, 250, 0.9), rgba(10, 108, 240, 0.95) 55%, rgba(0, 57, 162, 1)); box-shadow: 0 30px 80px -20px rgba(4, 188, 250, 0.45); transform: rotate(-6deg); }
.bs-slide__badge .bs-ico { width: 46%; height: 46%; color: #fff; stroke-width: 1.4; transform: rotate(6deg); }
.bs-slide.is-active .bs-slide__badge { animation: bs-float 6s ease-in-out infinite; }
@keyframes bs-float { 50% { transform: rotate(-6deg) translateY(-10px); } }
.bs-slider__nav { position: absolute; top: 50%; transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, 0.35); background: rgba(6, 30, 78, 0.35); color: #fff; cursor: pointer; display: grid; place-items: center; z-index: 3; transition: background .2s, border-color .2s; }
.bs-slider__nav:hover { background: var(--bs-accent); border-color: var(--bs-accent); }
.bs-slider__nav svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; }
.bs-slider__prev { left: 18px; }
.bs-slider__next { right: 18px; }
.bs-slider__dots { position: absolute; left: 0; right: 0; bottom: 28px; display: flex; justify-content: center; gap: 10px; z-index: 3; }
.bs-slider__dots button { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 999px; background: rgba(255, 255, 255, 0.4); cursor: pointer; transition: width .3s, background .3s; }
.bs-slider__dots button.is-active { width: 34px; background: var(--bs-cyan); }
@media (max-width: 860px) {
	.bs-slide__inner { grid-template-columns: 1fr; padding-top: 56px; }
	.bs-slide__art { display: none; }
	.bs-slider__nav { display: none; }
}
@media (prefers-reduced-motion: reduce) { .bs-slide { transition: none; } .bs-slide.is-active .bs-slide__badge { animation: none; } }

/* Sections */
.bs-section { padding-top: clamp(64px, 8vw, 104px); padding-bottom: clamp(64px, 8vw, 104px); }
.bs-section-head { max-width: 640px; margin-bottom: 40px; }
.bs-section-head p { color: var(--bs-muted); font-size: 1.1rem; }
.bs-kicker { color: var(--bs-accent); font-family: var(--wp--preset--font-family--heading); font-weight: 700; font-size: 0.85rem; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 10px !important; }

/* Services bento */
.bs-services { display: grid !important; grid-template-columns: 1.15fr 1fr 1fr; gap: 20px; }
.bs-services > * { margin: 0 !important; }
.bs-card { position: relative; background: #fff; border: 1px solid var(--bs-line); border-radius: var(--bs-radius); padding: 28px; display: flex; flex-direction: column; gap: 10px; transition: transform .25s, box-shadow .25s, border-color .25s; }
.bs-card:hover { transform: translateY(-4px); box-shadow: var(--bs-shadow); border-color: transparent; }
.bs-card h3 { margin: 6px 0 0; font-size: 1.2rem; }
.bs-card h3 a { color: inherit; text-decoration: none; }
.bs-card h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.bs-card p { margin: 0; color: var(--bs-muted); }
.bs-card .bs-more { margin-top: auto; padding-top: 8px; color: var(--bs-accent); font-family: var(--wp--preset--font-family--heading); font-weight: 700; font-size: 0.9rem; }
.bs-card--feature { grid-row: span 2; background: linear-gradient(160deg, #0A2A6B, var(--bs-navy)); border: 0; color: #fff; padding: 36px; justify-content: flex-end; overflow: hidden; }
.bs-card--feature::before { content: ""; position: absolute; right: -60px; top: -60px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(4, 188, 250, 0.45), transparent 70%); }
.bs-card--feature h3 { color: #fff; font-size: 1.6rem; }
.bs-card--feature p { color: rgba(255, 255, 255, 0.8); }
.bs-card--feature .bs-more { color: var(--bs-cyan); }
.bs-card--wide { grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 24px; background: var(--bs-bg); }
.bs-card--wide h3 { margin: 0; }
.bs-card--wide .bs-more { margin: 0 0 0 auto; padding: 0; white-space: nowrap; }
.bs-ico-tile { display: inline-grid; place-items: center; width: 54px; height: 54px; border-radius: 12px; background: #E8F0FE; color: var(--bs-accent); flex: none; }
.bs-ico-tile .bs-ico { width: 28px; height: 28px; }
.bs-card--feature .bs-ico-tile { width: 72px; height: 72px; background: rgba(255, 255, 255, 0.12); color: #fff; }
.bs-card--feature .bs-ico-tile .bs-ico { width: 38px; height: 38px; }
.bs-card p:has(> .bs-ico-tile) { line-height: 0; }
@media (max-width: 960px) { .bs-services { grid-template-columns: 1fr 1fr; } .bs-card--feature { grid-column: 1 / -1; grid-row: auto; min-height: 280px; } }
@media (max-width: 600px) { .bs-services { grid-template-columns: 1fr; } .bs-card--wide { flex-direction: column; align-items: flex-start; } .bs-card--wide .bs-more { margin: 0; } }

/* Brand marquee */
.bs-brands { border-top: 1px solid var(--bs-line); border-bottom: 1px solid var(--bs-line); }
.bs-marquee { display: flex; overflow: hidden; gap: 0; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.bs-marquee__track { display: flex; align-items: center; gap: 64px; padding: 0 32px; margin: 0; list-style: none; flex: none; min-width: 100%; justify-content: space-around; animation: bs-scroll 40s linear infinite; }
.bs-marquee:hover .bs-marquee__track { animation-play-state: paused; }
@keyframes bs-scroll { to { transform: translateX(-100%); } }
.bs-brand { height: 56px; display: flex; align-items: center; }
.bs-brand img { max-height: 40px; max-width: 150px; width: auto; height: auto; filter: grayscale(1); opacity: 0.6; transition: filter .25s, opacity .25s; }
.bs-brand img[alt="Dell"] { max-height: 48px; }
.bs-brand:hover img { filter: none; opacity: 1; }
.bs-brand--text span { font-family: var(--wp--preset--font-family--heading); font-weight: 800; font-size: 1.5rem; letter-spacing: -0.02em; color: #8B97AD; white-space: nowrap; transition: color .25s; }
.bs-brand--text:hover span { color: var(--bs-navy); }
@media (prefers-reduced-motion: reduce) { .bs-marquee { flex-wrap: wrap; mask-image: none; -webkit-mask-image: none; } .bs-marquee__track { animation: none; flex-wrap: wrap; justify-content: center; row-gap: 24px; } .bs-marquee__track[aria-hidden] { display: none; } }

/* About */
.bs-about { align-items: center !important; }
.bs-year { font-family: var(--wp--preset--font-family--heading); font-weight: 800; font-size: clamp(5rem, 13vw, 10.5rem); line-height: 0.9; letter-spacing: -0.04em; margin: 0 !important; background: linear-gradient(135deg, var(--bs-cyan), var(--bs-accent) 45%, var(--bs-royal)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bs-year-caption { font-family: var(--wp--preset--font-family--heading); font-weight: 700; color: var(--bs-navy); font-size: 1.15rem; margin-top: 10px !important; }

/* Why */
.bs-why h3 { color: #fff; font-size: 1.15rem; padding-top: 18px; border-top: 2px solid var(--bs-cyan); margin-bottom: 8px; }
.bs-why p { color: rgba(255, 255, 255, 0.78); margin: 0; }
.bs-why .wp-block-heading.bs-why-title { color: #fff; border: 0; padding: 0; font-size: var(--wp--preset--font-size--x-large); }

/* CTA */
.bs-cta { border-radius: 20px; background: linear-gradient(120deg, #E8F0FE, #F4F7FC); border: 1px solid var(--bs-line); padding: clamp(32px, 5vw, 56px) !important; }
.bs-cta h2 { margin: 0 0 8px; }
.bs-cta p { margin: 0; color: var(--bs-muted); }
.bs-phone a { font-family: var(--wp--preset--font-family--heading); font-weight: 800; font-size: 1.35rem; color: var(--bs-navy); text-decoration: none; }

/* Inner pages */
.bs-page-hero { position: relative; overflow: hidden; background: radial-gradient(700px 400px at 90% 0%, rgba(4, 188, 250, 0.25), transparent 60%), linear-gradient(120deg, #061E4E, #0A2A6B) !important; }
.bs-page-hero .wp-block-post-title { font-size: clamp(2rem, 4vw, 3rem); max-width: 22ch; }
.bs-page-content h2 { margin-top: 2.2em; }
.bs-page-content ul { padding-left: 1.2em; }
.bs-page-content li { margin-bottom: 6px; }
.bs-page-content li::marker { color: var(--bs-accent); }
.bs-faq { border: 1px solid var(--bs-line); border-radius: var(--bs-radius); padding: 14px 20px; margin-bottom: 12px; }
.bs-faq summary { font-family: var(--wp--preset--font-family--heading); font-weight: 700; color: var(--bs-navy); cursor: pointer; }
.bs-sub-grid { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.bs-sub-grid > * { margin: 0 !important; }

/* Contact */
.bs-contact-card { background: var(--bs-bg); border-radius: var(--bs-radius); padding: 28px !important; }
.bs-contact-card p { margin: 0 0 10px; }
.bs-map iframe { width: 100%; height: 360px; border: 0; border-radius: var(--bs-radius); }

/* Footer */
.bs-footer a { color: rgba(255, 255, 255, 0.82); text-decoration: none; }
.bs-footer a:hover { color: var(--bs-cyan); }
.bs-footer-logo img { filter: brightness(0) invert(1); }
.bs-footer-text { color: rgba(255, 255, 255, 0.72); max-width: 38ch; }
.bs-footer-links { list-style: none; padding: 0; margin: 0; }
.bs-footer-links li { margin-bottom: 10px; color: rgba(255, 255, 255, 0.72); }
.bs-footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.14); color: rgba(255, 255, 255, 0.6); }
.bs-footer-bottom p { margin: 0; }

/* Lead + forms */
.bs-lead { font-size: 1.2rem; color: var(--bs-ink); line-height: 1.6; }
.bs-page-content .bs-marquee { margin-top: 40px; }
.wpcf7 label { display: block; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 0.9rem; color: var(--bs-navy); margin-bottom: 16px; }
.bs-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
@media (max-width: 600px) { .bs-form-grid { grid-template-columns: 1fr; } }
.wpcf7 input[type=text], .wpcf7 input[type=tel], .wpcf7 input[type=email], .wpcf7 select, .wpcf7 textarea { display: block; width: 100%; margin-top: 6px; padding: 12px 14px; border: 1px solid var(--bs-line); border-radius: 8px; background: #fff; font: 400 1rem var(--wp--preset--font-family--body); color: var(--bs-ink); box-sizing: border-box; }
.wpcf7 input:focus, .wpcf7 select:focus, .wpcf7 textarea:focus { outline: 2px solid var(--bs-accent); outline-offset: 1px; border-color: transparent; }
.wpcf7 .wpcf7-acceptance { display: block; font-size: 0.9rem; color: var(--bs-muted); margin-bottom: 20px; }
.wpcf7 .wpcf7-acceptance label { display: inline; font: inherit; color: inherit; }
.wpcf7 input[type=submit] { background: var(--bs-accent); color: #fff; border: 0; border-radius: 999px; padding: 0.9rem 2rem; font: 700 0.95rem var(--wp--preset--font-family--heading); cursor: pointer; }
.wpcf7 input[type=submit]:hover { background: var(--bs-royal); }

/* Full-width slider */
.bs-slider.alignfull { max-width: none !important; }
.bs-main .wp-block-post-content > .bs-slider.alignfull:first-child { margin-top: 0; }

/* Quick quote modal */
.bs-modal[hidden] { display: none; }
.bs-modal { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 16px; }
.bs-modal__backdrop { position: absolute; inset: 0; background: rgba(6, 30, 78, 0.6); backdrop-filter: blur(3px); }
.bs-modal__box { position: relative; width: 100%; max-width: 480px; max-height: calc(100vh - 32px); overflow: auto; background: #fff; border-radius: 16px; padding: 32px; box-shadow: 0 30px 80px -20px rgba(6, 30, 78, 0.5); }
.bs-modal__box h2 { margin: 0 0 6px; font-size: 1.6rem; }
.bs-modal__lead { color: var(--bs-muted); margin: 0 0 20px; font-size: 0.95rem; }
.bs-modal__close { position: absolute; top: 12px; right: 14px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--bs-bg); color: var(--bs-navy); font-size: 1.4rem; line-height: 1; cursor: pointer; }
.bs-modal__close:hover { background: var(--bs-line); }
.bs-modal-open { overflow: hidden; }
.bs-modal .wpcf7 input[type=submit] { width: 100%; }

/* Floating quick contact */
.bs-fab { position: fixed; right: 18px; bottom: 18px; z-index: 900; display: flex; flex-direction: column; gap: 10px; align-items: flex-end; }
.bs-fab__btn { display: inline-flex; align-items: center; gap: 10px; height: 54px; padding: 0 18px 0 15px; border-radius: 999px; color: #fff; text-decoration: none; font: 700 0.95rem var(--wp--preset--font-family--heading); box-shadow: 0 12px 28px -10px rgba(6, 30, 78, 0.55); transition: transform .2s; }
.bs-fab__btn:hover { transform: translateY(-2px); color: #fff; }
.bs-fab__btn svg { width: 24px; height: 24px; flex: none; }
.bs-fab__btn--wa { background: #1FA855; }
.bs-fab__btn--call { background: var(--bs-accent); }
@media (max-width: 700px) {
	.bs-fab { left: 0; right: 0; bottom: 0; flex-direction: row; gap: 0; }
	.bs-fab__btn { flex: 1; justify-content: center; height: 56px; border-radius: 0; box-shadow: none; }
	body { padding-bottom: 56px; }
}

/* Projects */
.bs-projects { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; }
.bs-project a { display: block; text-decoration: none; color: inherit; }
.bs-project__img { aspect-ratio: 4 / 3; border-radius: var(--bs-radius); overflow: hidden; background: linear-gradient(135deg, #0A2A6B, #061E4E); }
.bs-project__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.bs-project a:hover .bs-project__img img { transform: scale(1.04); }
.bs-project h3 { margin: 16px 0 6px; font-size: 1.2rem; }
.bs-project p { margin: 0; color: var(--bs-muted); }

/* Slider badge + phone */
.bs-slide__badge-text { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; padding: 6px 14px 6px 6px; border-radius: 999px; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.18); font: 600 0.9rem var(--wp--preset--font-family--heading); color: rgba(255, 255, 255, 0.9); }
.bs-slide__badge-text span { background: var(--bs-cyan); color: var(--bs-navy); border-radius: 999px; padding: 3px 10px; font-weight: 800; }
.bs-slide__phone { display: inline-flex; align-items: center; gap: 10px; margin-top: 26px; color: #fff; text-decoration: none; font: 800 1.35rem var(--wp--preset--font-family--heading); }
.bs-slide__phone .bs-ico { width: 26px; height: 26px; color: var(--bs-cyan); }
.bs-slide__phone:hover { color: var(--bs-cyan); }

.bs-faq { background: #fff; }
.bs-faq summary { list-style-position: outside; }
.bs-faq[open] summary { margin-bottom: 8px; }

/* Services overview page */
.bs-svc-list { display: flex; flex-direction: column; gap: clamp(48px, 7vw, 96px); }
.bs-svc { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(28px, 5vw, 72px); align-items: center; }
.bs-svc--rev .bs-svc__media { order: 2; }
.bs-svc__media { position: relative; aspect-ratio: 5 / 4; border-radius: 20px; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(6, 30, 78, 0.45); }
.bs-svc__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bs-svc__media.is-placeholder { display: grid; place-items: center; background: radial-gradient(420px 300px at 80% 10%, rgba(4, 188, 250, 0.35), transparent 60%), linear-gradient(135deg, #0A2A6B, #061E4E); color: rgba(255, 255, 255, 0.9); }
.bs-svc__media.is-placeholder .bs-ico { width: 34%; height: 34%; stroke-width: 1.2; }
.bs-svc__media::after { content: ""; position: absolute; inset: auto -40px -40px auto; width: 160px; height: 160px; border-radius: 50%; background: radial-gradient(circle, rgba(4, 188, 250, 0.35), transparent 70%); pointer-events: none; }
.bs-svc__body h2 { margin: 18px 0 12px; font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
.bs-svc__body h2 a { color: inherit; text-decoration: none; }
.bs-svc__body > p { color: var(--bs-muted); margin: 0 0 18px; }
.bs-checks { list-style: none; padding: 0 !important; margin: 0 0 26px; display: grid; gap: 10px; }
.bs-checks li { position: relative; padding-left: 32px; font-weight: 500; }
.bs-checks li::before { content: ""; position: absolute; left: 0; top: 2px; width: 22px; height: 22px; border-radius: 50%; background: #E8F0FE url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A6CF0' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center / 13px no-repeat; }
.bs-svc__cta { display: flex; flex-wrap: wrap; gap: 12px; }
.bs-btn--primary:hover { background: var(--bs-royal); color: #fff; }
.bs-slider .bs-btn--primary:hover { background: #fff; color: var(--bs-navy); }
.bs-btn--line { color: var(--bs-navy); border: 1.5px solid var(--bs-line); }
.bs-btn--line:hover { border-color: var(--bs-accent); color: var(--bs-accent); }
@media (max-width: 860px) { .bs-svc { grid-template-columns: 1fr; } .bs-svc--rev .bs-svc__media { order: 0; } }

.bs-mini-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--bs-line); border: 1px solid var(--bs-line); border-radius: var(--bs-radius); overflow: hidden; }
.bs-mini { background: #fff; padding: 28px; transition: background .25s; }
.bs-mini:hover { background: var(--bs-bg); }
.bs-mini h3 { margin: 16px 0 6px; font-size: 1.1rem; }
.bs-mini p { margin: 0; color: var(--bs-muted); font-size: 0.95rem; }
@media (max-width: 900px) { .bs-mini-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .bs-mini-grid { grid-template-columns: 1fr; } }

.bs-contact-band { border-radius: 20px; padding: clamp(32px, 5vw, 56px) !important; background: radial-gradient(600px 300px at 90% 0%, rgba(4, 188, 250, 0.3), transparent 60%), linear-gradient(120deg, #061E4E, #0A2A6B); color: #fff; }
.bs-contact-band h2 { color: #fff; margin: 0 0 8px; }
.bs-contact-band p { color: rgba(255, 255, 255, 0.8); margin: 0; }
.bs-contact-band .bs-phone a { color: #fff; font-size: clamp(1.4rem, 3vw, 2rem); }
