:root {
  --bh-navy: #071b3a;
  --bh-navy-2: #0b2a55;
  --bh-blue: #1e76d0;
  --bh-pink: #ef6b87;
  --bh-orange: #ff7900;
  --bh-soft: #f6f8fc;
  --bh-text: #14213d;
  --bh-muted: #637083;
  --bh-white: #fff;
  --bh-radius: 1.1rem;
  --bh-shadow: 0 1.2rem 3rem rgba(7, 27, 58, .12);
}

html { scroll-behavior: smooth; }
body {
  font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--bh-text);
  background: #fff;
}
a { text-decoration: none; }
img { max-width: 100%; }

.topbar { background: #03152f; color: rgba(255,255,255,.88); font-size: .86rem; }
.topbar a { color: inherit; }
.navbar { background: rgba(5, 27, 58, .96); backdrop-filter: blur(12px); }
.navbar-brand { color: #fff !important; letter-spacing: .18rem; font-weight: 700; }
.brand-mark {
  width: 42px; height: 42px; display: inline-grid; place-items: center;
  border: 1px solid rgba(255,255,255,.42); border-radius: 50%;
  font-family: Georgia, serif; font-size: 1.5rem;
}
.nav-link { color: rgba(255,255,255,.78) !important; font-weight: 600; font-size: .92rem; }
.nav-link:hover, .nav-link.active { color: #fff !important; }
.nav-link.active::after { content: ""; display: block; width: 28px; height: 2px; background: var(--bh-pink); margin-top: .35rem; }
.btn-brand { background: linear-gradient(135deg, var(--bh-pink), #f08aa0); color: #fff; border: 0; border-radius: .65rem; font-weight: 700; padding: .8rem 1.15rem; box-shadow: 0 .65rem 1.5rem rgba(239,107,135,.24); }
.btn-brand:hover { color: #fff; transform: translateY(-1px); }

.hero-slide {
  min-height: 640px; color: #fff; position: relative; overflow: hidden;
  background: radial-gradient(circle at 70% 46%, rgba(46,124,213,.28), transparent 26%), linear-gradient(110deg, #061a38 0%, #092a57 62%, #071b3a 100%);
}
.hero-slide::before {
  content: ""; position: absolute; width: 520px; height: 520px; border: 4px solid rgba(153,211,255,.78); border-radius: 50%;
  left: 58%; top: 48%; transform: translate(-50%, -50%); filter: drop-shadow(0 0 14px rgba(121,190,255,.65));
}
.hero-slide::after {
  content: ""; position: absolute; inset: 0; opacity: .25;
  background-image: radial-gradient(circle at 1px 1px, #fff 1px, transparent 0); background-size: 44px 44px;
  mask-image: linear-gradient(90deg, transparent 0%, #000 48%, transparent 100%);
}
.hero-content { position: relative; z-index: 3; }
.hero-title { font-size: clamp(2.2rem, 4vw, 4.4rem); font-weight: 800; line-height: 1.05; letter-spacing: -.04em; }
.hero-copy { max-width: 620px; font-size: 1.06rem; color: rgba(255,255,255,.78); }
.hero-products { position: relative; z-index: 3; display: flex; align-items: end; justify-content: center; gap: .35rem; }
.hero-products img { width: min(22vw, 235px); aspect-ratio: 1 / 1.08; object-fit: cover; border-radius: 1.25rem; box-shadow: 0 1.5rem 2.8rem rgba(0,0,0,.35); transform: rotate(var(--r,0deg)); }
.carousel-control-prev, .carousel-control-next { width: 7%; }
.carousel-control-prev-icon, .carousel-control-next-icon { background-color: rgba(255,255,255,.95); border-radius: 50%; width: 3rem; height: 3rem; background-size: 42%; filter: invert(1); }
.carousel-indicators [data-bs-target] { width: .55rem; height: .55rem; border-radius: 50%; border: 0; }

.section-pad { padding: 5.5rem 0; }
.section-kicker { color: var(--bh-pink); font-weight: 800; text-transform: uppercase; letter-spacing: .16em; font-size: .78rem; }
.section-title { font-weight: 800; letter-spacing: -.03em; }
.section-title::after { content: ""; width: 60px; height: 3px; background: var(--bh-pink); display: block; margin: .8rem auto 0; border-radius: 3px; }
.text-left-title::after { margin-left: 0; }

.feature-card { height: 100%; text-align: center; padding: 2rem 1.3rem; border-right: 1px solid #e7ebf2; }
.feature-card:last-child { border-right: 0; }
.feature-icon { width: 70px; height: 70px; display: grid; place-items: center; margin: 0 auto 1rem; border-radius: 1rem; background: #f2f6fb; color: var(--bh-navy); font-size: 2rem; }
.feature-card h3 { font-size: 1rem; font-weight: 800; }
.feature-card p { color: var(--bh-muted); font-size: .9rem; margin-bottom: 0; }

.product-card { border: 0; border-radius: var(--bh-radius); overflow: hidden; box-shadow: var(--bh-shadow); transition: .25s ease; height: 100%; }
.product-card:hover { transform: translateY(-7px); }
.product-card img { aspect-ratio: 4/3; object-fit: cover; }
.product-card .card-body { padding: 1.45rem; }
.product-tag { font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 800; }
.product-card .btn { width: 100%; font-weight: 700; border-radius: .6rem; }

.dark-section { background: linear-gradient(135deg, #061a38, #0b315f); color: #fff; }
.review-card { background: #fff; color: var(--bh-text); border-radius: 1rem; padding: 1.35rem; height: 100%; box-shadow: 0 .9rem 2rem rgba(0,0,0,.18); }
.avatar { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; background: #e9edf4; }
.stars { color: #ffb400; letter-spacing: .08rem; }
.review-card p { color: var(--bh-muted); }

.faq-wrap .accordion-item { border: 1px solid #e7ebf2; border-radius: .7rem !important; overflow: hidden; margin-bottom: .75rem; }
.accordion-button { font-weight: 700; }
.accordion-button:not(.collapsed) { color: var(--bh-navy); background: #f6f9fd; box-shadow: none; }
.form-control, .form-select { border-radius: .65rem; min-height: 48px; border-color: #dfe5ee; }
.form-control:focus, .form-select:focus { border-color: rgba(239,107,135,.65); box-shadow: 0 0 0 .2rem rgba(239,107,135,.15); }

.contact-strip { background: #051b3b; color: #fff; }
.contact-item { display: flex; align-items: center; gap: .8rem; color: #fff; }
.contact-icon { width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; font-size: 1.3rem; }
footer { background: #03152f; color: rgba(255,255,255,.76); }
footer h6 { color: #fff; font-weight: 800; }
footer a { color: rgba(255,255,255,.72); }
footer a:hover { color: #fff; }

.page-hero { background: linear-gradient(135deg, #061a38, #0c376a); color: #fff; padding: 6.5rem 0 4.5rem; }
.content-card { border: 0; border-radius: 1rem; box-shadow: var(--bh-shadow); }
.blog-card img { aspect-ratio: 16/10; object-fit: cover; }
.social-float { position: fixed; right: 18px; bottom: 18px; z-index: 1030; display: grid; gap: .7rem; }
.social-float a { width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; color: #fff; box-shadow: 0 .8rem 1.8rem rgba(0,0,0,.2); }
.whatsapp { background: #25d366; }
.phone { background: var(--bh-blue); }

@media (max-width: 991.98px) {
  .navbar-collapse { padding-top: 1rem; }
  .nav-link.active::after { display: none; }
  .hero-slide { min-height: 760px; text-align: center; }
  .hero-slide::before { width: 430px; height: 430px; left: 50%; top: 67%; }
  .hero-copy { margin-inline: auto; }
  .hero-products { margin-top: 2.5rem; }
  .hero-products img { width: 23%; }
  .feature-card { border-right: 0; border-bottom: 1px solid #e7ebf2; }
}
@media (max-width: 575.98px) {
  .topbar .languages { display: none; }
  .hero-slide { min-height: 700px; }
  .hero-slide::before { width: 320px; height: 320px; top: 70%; }
  .hero-products { gap: .2rem; }
  .hero-products img { width: 24%; border-radius: .7rem; }
  .section-pad { padding: 4rem 0; }
  .carousel-control-prev, .carousel-control-next { width: 12%; }
}
