/* BMSC visual system: editorial typography, restrained color and real office imagery. */
:root { --bmsc-ink: #132f3d; --bmsc-muted: #5a6970; --bmsc-accent: #1b665f; --bmsc-paper: #f7f7f2; --bmsc-line: #dce3e2; }
body.bmsc-site { font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px; line-height: 1.7; color: var(--bmsc-ink); background: #fff; }
.bmsc-site h1,.bmsc-site h2,.bmsc-site h3,.bmsc-site h4,.bmsc-site h5,.bmsc-site h6 { font-family: 'Segoe UI', Arial, sans-serif; color: var(--bmsc-ink); letter-spacing: -.035em; font-weight: 600; }
.bmsc-site p { color: var(--bmsc-muted); line-height: 1.8; }
.bmsc-site a { transition: color .18s, background .18s !important; }
.bmsc-site a:focus-visible,.bmsc-site button:focus-visible,.bmsc-site summary:focus-visible { outline: 2px solid var(--bmsc-accent) !important; outline-offset: 5px; }
.bmsc-site .preloader { display: none !important; }
.bmsc-site .section-padding { padding: 80px 0; }
.bmsc-site .pt-100 { padding-top: 80px; }
.bmsc-site .pb-100 { padding-bottom: 80px; }
.bmsc-site .bg-grey,.bmsc-site .office-gallery,.bmsc-site .office-location { background: var(--bmsc-paper); }
.bmsc-site .color-text { color: var(--bmsc-accent); }
.bmsc-header { position: relative; z-index: 100; background: #fff; border-bottom: 1px solid var(--bmsc-line); }
.bmsc-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 94px; }
.bmsc-brand { display: flex; flex-direction: column; color: var(--bmsc-ink); line-height: 1.15; flex-shrink: 0; }
.bmsc-brand strong { font-size: 31px; letter-spacing: -.06em; font-weight: 750; }
.bmsc-brand strong span,.bmsc-footer-brand span { color: #58a799; }
.bmsc-brand-name { margin-top: 6px; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.bmsc-desktop-nav { display: flex; gap: 26px; }
.bmsc-desktop-nav a { color: #4a5a63; font-size: 14px; font-weight: 500; padding: 8px 0; }
.bmsc-desktop-nav a:hover,.bmsc-desktop-nav a[aria-current] { color: var(--bmsc-accent); box-shadow: 0 2px var(--bmsc-accent); }
.bmsc-header-tools { display: flex; align-items: center; gap: 16px; }
.bmsc-language { display: flex; padding: 3px; background: #f1f4f2; border-radius: 4px; }
.bmsc-language button { border: 0; background: transparent; color: #53646b; padding: 5px 8px; font-size: 12px; border-radius: 2px; }
.bmsc-language button.active { background: #fff; color: var(--bmsc-ink); box-shadow: 0 1px 3px #142e3518; }
.bmsc-mobile-menu { display: none; }
.bmsc-hero { padding: 76px 0 70px; background: var(--bmsc-paper); border-bottom: 1px solid var(--bmsc-line); }
.bmsc-hero-grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 64px; align-items: center; }
.bmsc-eyebrow { font-size: 11px; font-weight: 650; letter-spacing: .16em; color: var(--bmsc-accent) !important; margin-bottom: 22px; }
.bmsc-hero h1 { font-size: clamp(38px,4.1vw,62px); line-height: 1.09; margin: 0 0 26px; letter-spacing: -.055em; }
.bmsc-hero-description { font-size: 17px; max-width: 490px; margin: 0; }
.bmsc-actions { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 30px; }
.bmsc-button,.bmsc-site .default-btn,.bmsc-site .default-btn-one,.bmsc-site .gpu-price-button { display: inline-block; background: var(--bmsc-ink); color: #fff; border: 1px solid var(--bmsc-ink); border-radius: 4px; padding: 13px 22px; font-size: 14px; font-weight: 600; box-shadow: none; letter-spacing: 0; }
.bmsc-button:hover,.bmsc-site .default-btn:hover,.bmsc-site .default-btn-one:hover,.bmsc-site .gpu-price-button:hover { background: var(--bmsc-accent); color: #fff; border-color: var(--bmsc-accent); }
.bmsc-site .default-btn > span:empty,.bmsc-site .default-btn-one > span:empty { display: none; }
.bmsc-text-link { font-size: 14px; color: var(--bmsc-ink); text-decoration: underline; text-underline-offset: 5px; }
.bmsc-hero-note { display: flex; align-items: center; gap: 18px; border-top: 1px solid #d4ded9; padding-top: 22px; margin-top: 40px; }
.bmsc-hero-note span { font-size: 28px; font-weight: 500; letter-spacing: -.04em; }
.bmsc-hero-note p { margin: 0; font-size: 12px; line-height: 1.7; max-width: 280px; }
.bmsc-hero-image { margin: 0; min-width: 0; }
.bmsc-hero-image img { width: 100%; height: 390px; object-fit: cover; border-radius: 2px; }
.bmsc-hero-image figcaption { display: flex; justify-content: space-between; gap: 16px; padding-top: 14px; border-bottom: 1px solid var(--bmsc-line); padding-bottom: 14px; font-size: 11px; color: var(--bmsc-muted); }
.bmsc-hero-image figcaption a { color: var(--bmsc-accent); }
.bmsc-site .page-title-area { background: var(--bmsc-paper) !important; height: auto; padding: 64px 0 54px; border-bottom: 1px solid var(--bmsc-line); }
.bmsc-site .page-title-area:before { display: none; }
.bmsc-site .page-title-content { text-align: left; margin: 0; }
.bmsc-site .page-title-content h1 { font-size: clamp(36px,4vw,54px); line-height: 1.15; margin: 0; }
.bmsc-site .page-title-content ul { margin-top: 20px; }
.bmsc-site .page-title-content ul li { color: var(--bmsc-muted); margin-left: 0; margin-right: 26px; font-size: 12px; text-transform: none; font-weight: 400; }
.bmsc-site .page-title-content ul li a { color: var(--bmsc-accent); }
.bmsc-site .page-title-content ul li:before { background: #8a999e; width: 3px; height: 3px; top: 9px; right: -16px; }
.bmsc-site .section-title { text-align: left; margin-bottom: 36px; }
.bmsc-site .section-title h2 { font-size: clamp(28px,3vw,40px); font-weight: 600; }
.bmsc-site .section-title p { margin: 12px 0 0; max-width: 640px; }
.bmsc-site .about-content h2 { font-size: 32px; line-height: 1.25; }
.bmsc-site .about-content h2:not(:first-child) { margin-top: 30px; font-size: 23px; }
.bmsc-site .about-content p { font-size: 16px; }
.bmsc-site .about-image { padding-left: 48px; }
.bmsc-site .about-image img { width: 100%; height: 430px; object-fit: cover; object-position: 50% 45%; border-radius: 2px; }
.bmsc-site .services-section { counter-reset: service; }
.bmsc-site .single-services-item { counter-increment: service; background: transparent; border: 0; border-top: 1px solid #bacbc8; border-radius: 0; box-shadow: none; padding: 32px 20px 24px 0; text-align: left; transform: none !important; }
.bmsc-site .single-services-item:before { content: '0' counter(service); display: block; position: static; background: none; color: var(--bmsc-accent); font-size: 13px; font-weight: 600; margin-bottom: 24px; }
.bmsc-site .single-services-item:after,.bmsc-site .services-icon { display: none; }
.bmsc-site .single-services-item h3,.bmsc-site .single-services-item:hover h3 { color: var(--bmsc-ink); font-size: 24px; line-height: 1.35; }
.bmsc-site .single-services-item p,.bmsc-site .single-services-item:hover p { color: var(--bmsc-muted); font-size: 15px; }
.bmsc-site .office-gallery-card,.bmsc-site .office-location-card,.bmsc-site .gpu-price-card,.bmsc-site .blog-item { box-shadow: none; border: 1px solid var(--bmsc-line); border-radius: 3px; }
.bmsc-site .office-gallery-photo,.bmsc-site .office-location-photo { background: #e9eeeb; }
.bmsc-site .office-gallery-card figcaption,.bmsc-site .office-location-card figcaption { text-align: left; font-size: 14px; font-weight: 500; }
.bmsc-site .office-gallery-hint,.bmsc-site .office-location-hint { text-align: left; font-size: 12px; }
.bmsc-site .hire-section { background: var(--bmsc-ink) !important; background-attachment: initial; padding: 64px 0; }
.bmsc-site .hire-section:before { display: none; }
.bmsc-site .hire-content { text-align: left; }
.bmsc-site .hire-content h2 { color: #fff; font-size: 36px; font-weight: 500; }
.bmsc-site .hire-content p { color: #bdced0; }
.bmsc-site .hire-content .default-btn-one { border-color: #dbe5df; background: #e9efeb; color: var(--bmsc-ink); }
.bmsc-site .blog-item .single-blog-item .blog-content h3 { font-size: 21px; font-weight: 600; line-height: 1.4; }
.bmsc-site .blog-image img { aspect-ratio: 16/10; object-fit: cover; }
.bmsc-site .blog-btn .default-btn { padding: 0; background: transparent; border: 0; color: var(--bmsc-accent); text-decoration: underline; text-underline-offset: 5px; }
.bmsc-site .gpu-price-card { text-align: left; padding: 36px 28px; border-top: 3px solid var(--bmsc-accent); }
.bmsc-site .gpu-price-card h2 { font-size: 28px; }
.bmsc-site .gpu-price-quote { font-size: 28px; color: var(--bmsc-accent); }
.bmsc-site .gpu-price-label { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.bmsc-site .gpu-price-description { font-size: 15px; }
.bmsc-site .gpu-price-button { text-align: center; margin-top: auto; }
.bmsc-site .single-contact-info-box { border: 1px solid var(--bmsc-line); border-radius: 3px; box-shadow: none; background: #fff; padding: 24px; text-align: left; }
.bmsc-site .contact-info-bg-icon { display: none; }
.bmsc-site .form-control { background: #f8faf8; border: 1px solid var(--bmsc-line); border-radius: 3px; box-shadow: none; }
.bmsc-site .footer-area { background: #132f3d !important; padding: 64px 0 44px; }
.bmsc-site .footer-area:before { display: none; }
.bmsc-footer-brand { display: block; font-size: 34px; font-weight: 700; letter-spacing: -.06em; color: #fff; margin-bottom: 22px; }
.bmsc-site .single-footer-widget .footer-heading h3 { font-size: 13px; font-weight: 600; letter-spacing: .02em; padding-bottom: 14px; border-bottom: 1px solid #39505b; }
.bmsc-site .single-footer-widget p,.bmsc-site .single-footer-widget a,.bmsc-site .footer-info-contact span { font-size: 13px; line-height: 1.9; color: #c5d2d6; overflow-wrap: anywhere; }
.bmsc-site .single-footer-widget .bmsc-footer-brand { font-size: 34px; color: #fff; }
.bmsc-site .footer-info-contact { margin-bottom: 14px; }
.bmsc-site .copyright-area { background: #132f3d; border-top: 1px solid #304954; padding: 20px 0; }
.bmsc-site .copyright-area p { color: #a7bac1; font-size: 12px; }
.bmsc-site .go-top { background: var(--bmsc-ink); border-radius: 3px; }
@media (max-width: 991px) {
 .bmsc-header-inner { min-height: 80px; }
 .bmsc-desktop-nav { display: none; }
 .bmsc-mobile-menu { display: block; }
 .bmsc-mobile-menu summary { cursor: pointer; font-size: 14px; padding: 8px; }
 .bmsc-mobile-menu nav { position: absolute; left: 0; top: 100%; width: 100%; display: flex; flex-direction: column; gap: 0; padding: 12px 24px 20px; border-bottom: 1px solid var(--bmsc-line); background: #fff; box-shadow: 0 12px 16px #132f3d0a; }
 .bmsc-mobile-menu nav a { padding: 10px 0; font-size: 15px; color: var(--bmsc-ink); }
 .bmsc-mobile-menu nav a[aria-current] { color: var(--bmsc-accent); font-weight: 600; }
 .bmsc-hero-grid { gap: 32px; }
 .bmsc-hero h1 { font-size: 40px; }
 .bmsc-hero-image img { height: 350px; }
 .bmsc-site .about-image { padding: 30px 0 0; }
 .bmsc-site .about-image img { height: 380px; }
}
@media (max-width: 767px) {
 .bmsc-header-inner { gap: 12px; }
 .bmsc-brand-name { font-size: 8px; letter-spacing: .04em; }
 .bmsc-brand strong { font-size: 27px; }
 .bmsc-header-tools { gap: 6px; }
 .bmsc-language button { padding: 5px 6px; }
 .bmsc-hero { padding: 48px 0; }
 .bmsc-hero-grid { grid-template-columns: minmax(0,1fr); gap: 36px; }
 .bmsc-hero h1 { font-size: 42px; max-width: 520px; }
 .bmsc-hero-image img { height: auto; }
 .bmsc-hero-description { font-size: 16px; }
 .bmsc-actions { gap: 18px; }
 .bmsc-site .section-padding { padding: 56px 0; }
 .bmsc-site .page-title-area { padding: 40px 0; }
 .bmsc-site .hire-content h2 { font-size: 30px; }
 .bmsc-site .about-content h2 { font-size: 30px; }
 .bmsc-site .footer-area { padding-bottom: 20px; }
 .bmsc-site .single-footer-widget { margin-bottom: 28px; }
}
@media (prefers-reduced-motion: reduce) { .bmsc-site * { animation: none !important; transition: none !important; } }

.bmsc-site .single-services-item:before { opacity: 1; visibility: visible; z-index: auto; width: auto; height: auto; transform: none; }
.bmsc-site .blog-item .single-blog-item .blog-content .blog-btn .blog-btn-one { color: var(--bmsc-accent); }
