/*
Theme Name: BRANDOPS
Theme URI: https://brandops.in/
Author: BRANDOPS
Author URI: https://brandops.in/
Description: A premium, conversion-focused digital marketing studio theme recreated from the BRANDOPS source project.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: brandops
*/

@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Outfit:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,700&display=swap');

:root {
  --bo-bg: #f8fafc;
  --bo-surface: #ffffff;
  --bo-surface-2: #f1f5f9;
  --bo-text: #081120;
  --bo-muted: #475569;
  --bo-border: rgba(8, 17, 32, .12);
  --bo-coral: #ff6b57;
  --bo-deep-coral: #e95643;
  --bo-teal: #0f8b8d;
  --bo-deep-teal: #06666a;
  --bo-navy: #081120;
  --bo-cream: #ffe5d9;
  --bo-radius: 1.5rem;
  --bo-shadow: 0 24px 48px -28px rgba(8, 17, 32, .28);
}

html.brandops-dark {
  --bo-bg: #081120;
  --bo-surface: #111827;
  --bo-surface-2: #182235;
  --bo-text: #f8fafc;
  --bo-muted: #94a3b8;
  --bo-border: rgba(255, 255, 255, .12);
  color-scheme: dark;
}

@media (prefers-color-scheme: dark) {
  html.brandops-system {
    --bo-bg: #081120;
    --bo-surface: #111827;
    --bo-surface-2: #182235;
    --bo-text: #f8fafc;
    --bo-muted: #94a3b8;
    --bo-border: rgba(255, 255, 255, .12);
    color-scheme: dark;
  }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bo-bg);
  color: var(--bo-text);
  font-family: 'Outfit', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "ss01", "cv11";
}
body.admin-bar .site-header { top: 32px; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
h1, h2, h3, h4, h5, h6, .bo-display {
  font-family: 'Playfair Display', Georgia, serif;
  letter-spacing: -.02em;
  margin-top: 0;
}
p { margin-top: 0; }

.bo-container { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
.bo-eyebrow {
  color: var(--bo-coral);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .25em;
  line-height: 1.4;
  text-transform: uppercase;
}
.bo-muted { color: var(--bo-muted); }
.bo-coral { color: var(--bo-coral); }
.bo-teal { color: var(--bo-teal); }
.bo-gradient-text {
  background: linear-gradient(135deg, var(--bo-coral), var(--bo-deep-coral) 52%, var(--bo-teal));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.bo-button {
  align-items: center;
  background: var(--bo-coral);
  border: 0;
  border-radius: 999px;
  box-shadow: 0 8px 24px -8px rgba(255, 107, 87, .55);
  color: #fff;
  display: inline-flex;
  font-weight: 600;
  gap: .55rem;
  justify-content: center;
  padding: .9rem 1.65rem;
  transition: background .3s, box-shadow .3s, transform .3s;
}
.bo-button:hover, .bo-button:focus-visible {
  background: var(--bo-deep-coral);
  box-shadow: 0 14px 32px -10px rgba(255, 107, 87, .65);
  color: #fff;
  transform: translateY(-2px);
}
.bo-button--ghost {
  background: transparent;
  border: 1.5px solid var(--bo-teal);
  box-shadow: none;
  color: var(--bo-text);
}
.bo-button--ghost:hover, .bo-button--ghost:focus-visible {
  background: var(--bo-teal);
  border-color: var(--bo-teal);
  color: #fff;
}
.bo-button--small { font-size: .9rem; padding: .65rem 1.15rem; }
.bo-arrow { transition: transform .3s; }
a:hover .bo-arrow, button:hover .bo-arrow { transform: translateX(4px); }

.bo-card {
  background: var(--bo-surface);
  border: 1px solid var(--bo-border);
  border-radius: var(--bo-radius);
  transition: border-color .3s, box-shadow .3s, transform .3s;
}
.bo-card:hover {
  border-color: rgba(255, 107, 87, .45);
  box-shadow: var(--bo-shadow);
  transform: translateY(-4px);
}
.bo-section { padding: 6rem 0; }
.bo-section--muted { background: color-mix(in srgb, var(--bo-surface-2) 62%, transparent); }
.bo-section--navy { background: var(--bo-navy); color: #fff; }
.bo-section-heading { max-width: 720px; }
.bo-section-heading h2 { font-size: clamp(2.4rem, 5vw, 4.8rem); line-height: 1.03; margin: .6rem 0 0; }
.bo-section-heading p { color: var(--bo-muted); line-height: 1.7; }
.bo-section--navy .bo-section-heading p { color: rgba(255,255,255,.7); }

.site-header {
  left: 0;
  padding: 1rem 0;
  position: fixed;
  right: 0;
  top: 0;
  transition: padding .5s;
  z-index: 50;
}
.site-header.is-scrolled { padding: .45rem 0; }
.bo-nav-shell {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  display: flex;
  justify-content: space-between;
  padding: .65rem 1rem .65rem 1.35rem;
  transition: background .5s, border-color .5s, box-shadow .5s;
}
.is-scrolled .bo-nav-shell, .bo-nav-shell.is-open {
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  backdrop-filter: blur(20px) saturate(180%);
  background: color-mix(in srgb, var(--bo-surface) 78%, transparent);
  border-color: var(--bo-border);
  box-shadow: 0 14px 30px -24px rgba(8,17,32,.7);
}
.bo-logo { font-family: 'Playfair Display', Georgia, serif; font-size: 1.65rem; font-weight: 900; letter-spacing: -.08em; line-height: 1; }
.bo-logo b { color: var(--bo-teal); }
.bo-logo i { color: var(--bo-coral); font-style: italic; }
.bo-logo span { color: color-mix(in srgb, var(--bo-text) 90%, transparent); }
.bo-desktop-nav { align-items: center; display: flex; gap: .15rem; }
.bo-desktop-nav a { border-radius: 999px; color: color-mix(in srgb, var(--bo-text) 78%, transparent); font-size: .9rem; padding: .55rem .85rem; transition: color .2s, background .2s; }
.bo-desktop-nav a:hover, .bo-desktop-nav a.current-menu-item { color: var(--bo-coral); }
.bo-nav-actions { align-items: center; display: flex; gap: .5rem; }
.bo-theme-toggle, .bo-menu-toggle {
  align-items: center;
  background: transparent;
  border: 1px solid var(--bo-border);
  border-radius: 999px;
  color: var(--bo-text);
  display: inline-flex;
  height: 2.5rem;
  justify-content: center;
  transition: border-color .2s, color .2s, background .2s;
  width: 2.5rem;
}
.bo-theme-toggle:hover, .bo-menu-toggle:hover { border-color: var(--bo-coral); color: var(--bo-coral); }
.bo-menu-toggle { display: none; }
.bo-mobile-menu { display: none; }

.bo-hero { overflow: hidden; position: relative; }
.bo-hero:after, .bo-final-cta:after {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
  content: "";
  inset: 0;
  opacity: .035;
  pointer-events: none;
  position: absolute;
}
.bo-blob { border-radius: 50%; filter: blur(80px); opacity: .32; pointer-events: none; position: absolute; }
.bo-blob--coral { background: var(--bo-coral); height: 480px; left: -180px; top: -160px; width: 480px; }
.bo-blob--teal { background: var(--bo-teal); height: 420px; opacity: .18; right: -120px; top: 100px; width: 420px; }
.bo-hero-grid { align-items: end; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .8fr); padding: 10rem 0 8rem; position: relative; }
.bo-hero h1 { font-size: clamp(3.25rem, 7vw, 6.7rem); letter-spacing: -.06em; line-height: .94; margin: .8rem 0 0; max-width: 850px; }
.bo-hero-copy { color: var(--bo-muted); font-size: clamp(1rem, 1.8vw, 1.3rem); line-height: 1.7; margin: 2rem 0 0; max-width: 700px; }
.bo-button-row { align-items: center; display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2.3rem; }
.bo-inline-link { align-items: center; color: color-mix(in srgb, var(--bo-text) 82%, transparent); display: inline-flex; font-weight: 500; gap: .5rem; padding: .75rem 0; transition: color .2s; }
.bo-inline-link:hover { color: var(--bo-coral); }
.bo-hero-image { /*animation: bo-float 6s ease-in-out infinite;*/ aspect-ratio: 4 / 5; border-radius: 1.5rem; box-shadow: 0 28px 70px -32px rgba(8,17,32,.55); overflow: hidden; position: relative; }
.bo-hero-image img { height: 100%; object-fit: cover; width: 100%; }
.bo-image-overlay { background: linear-gradient(to top, rgba(8,17,32,.85), transparent 70%); inset: 0; position: absolute; }
.bo-hero-metric { bottom: 1.4rem; color: #fff; left: 1.4rem; position: absolute; }
.bo-hero-metric strong { display: block; font-family: 'Playfair Display', serif; font-size: 2.5rem; line-height: 1; }
.bo-hero-metric small { color: rgba(255,255,255,.72); display: block; margin-top: .35rem; }
.bo-loved { align-items: center; background: var(--bo-cream); border-radius: 1rem; bottom: -1.5rem; display: flex; gap: .75rem; left: -1.5rem; padding: .8rem 1rem; position: absolute; }
.bo-avatars { display: flex; }
.bo-avatars img { border: 2px solid #fff; border-radius: 50%; height: 2.25rem; object-fit: cover; width: 2.25rem; }
.bo-avatars img + img { margin-left: -.6rem; }
.bo-stars { color: var(--bo-coral); font-size: .8rem; letter-spacing: .1em; }
.bo-loved small { color: var(--bo-text); display: block; margin-top: .1rem; }

.bo-trust { border-bottom: 1px solid var(--bo-border); border-top: 1px solid var(--bo-border); }
.bo-trust-inner { padding: 2.3rem 0; }
.bo-trust-label { margin-bottom: 1.3rem; text-align: center; }
.bo-stats { display: grid; gap: 1.5rem; grid-template-columns: repeat(5, 1fr); text-align: center; }
.bo-stat strong { display: block; font-family: 'Playfair Display', serif; font-size: 1.6rem; }
.bo-stat span { color: var(--bo-muted); display: block; font-size: .75rem; line-height: 1.4; margin-top: .25rem; }

.bo-three-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3, 1fr); margin-top: 3.5rem; }
.bo-three-grid .bo-card:nth-child(2) { transform: translateY(2rem); }
.bo-three-grid .bo-card:nth-child(2):hover { transform: translateY(calc(2rem - 4px)); }
.bo-card-image { aspect-ratio: 5 / 4; overflow: hidden; position: relative; }
.bo-card-image img { height: 100%; object-fit: cover; transition: transform .7s; width: 100%; }
.bo-card:hover .bo-card-image img { transform: scale(1.05); }
.bo-card-image:after { background: linear-gradient(to top, rgba(8,17,32,.7), transparent 70%); content: ""; inset: 0; position: absolute; }
.bo-icon-bubble { align-items: center; background: rgba(255,255,255,.95); border-radius: 50%; color: var(--bo-navy); display: inline-flex; height: 2.75rem; justify-content: center; left: 1rem; position: absolute; top: 1rem; width: 2.75rem; z-index: 1; }
.bo-card-body { padding: 1.65rem; }
.bo-card-body h3 { font-size: 1.55rem; margin: 0; }
.bo-card-body p { line-height: 1.65; }
.bo-card-body .bo-tagline { color: var(--bo-coral); font-size: .9rem; margin: .25rem 0 0; }
.bo-chip-list { display: flex; flex-wrap: wrap; gap: .45rem; list-style: none; margin: 1.1rem 0 0; padding: 0; }
.bo-chip { background: var(--bo-surface-2); border-radius: 999px; color: var(--bo-muted); font-size: .7rem; padding: .4rem .65rem; }
.bo-chip--accent { background: color-mix(in srgb, var(--bo-coral) 15%, transparent); color: var(--bo-coral); }

.bo-navy-section { overflow: hidden; position: relative; }
.bo-navy-section .bo-container { position: relative; z-index: 1; }
.bo-why-grid { display: grid; gap: 1rem; grid-template-columns: repeat(4, 1fr); margin-top: 3.5rem; }
.bo-why-card { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 1rem; padding: 1.4rem; transition: background .3s, transform .3s; }
.bo-why-card:hover { background: rgba(255,255,255,.09); transform: translateY(-4px); }
.bo-check { align-items: center; background: rgba(255,107,87,.15); border-radius: 50%; color: var(--bo-coral); display: inline-flex; height: 2.5rem; justify-content: center; width: 2.5rem; }
.bo-why-card h3 { font-size: 1.15rem; margin: 1rem 0 .35rem; }
.bo-why-card p { color: rgba(255,255,255,.68); font-size: .9rem; line-height: 1.6; margin: 0; }

.bo-process { position: relative; }
.bo-process-line { background: linear-gradient(var(--bo-coral), rgba(255,107,87,.35), var(--bo-teal)); bottom: 0; left: 50%; position: absolute; top: 0; transform: translateX(-50%); width: 1px; }
.bo-process-row { display: grid; gap: 3rem; grid-template-columns: 1fr 1fr; margin-top: 1.5rem; position: relative; }
.bo-process-row + .bo-process-row { margin-top: 3rem; }
.bo-process-row:nth-child(even) .bo-process-card { grid-column: 2; }
.bo-process-card { padding: 1.7rem; }
.bo-process-card small { color: var(--bo-coral); font-family: 'JetBrains Mono', monospace; font-size: .75rem; letter-spacing: .12em; }
.bo-process-card h3 { font-size: 1.8rem; margin: .35rem 0 0; }
.bo-process-card p { color: var(--bo-muted); line-height: 1.6; margin: .6rem 0 0; }

.bo-industries { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 2rem; }
.bo-industry { background: var(--bo-surface); border: 1px solid var(--bo-border); border-radius: 999px; color: var(--bo-text); font-size: .85rem; padding: .7rem 1rem; transition: border-color .2s, color .2s; }
.bo-industry:hover { border-color: var(--bo-coral); color: var(--bo-coral); }
.bo-services-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3, 1fr); margin-top: 3rem; }
.bo-services-grid h3 { font-size: 1.55rem; margin: 0 0 1rem; }
.bo-services-grid ul, .bo-feature-list { list-style: none; margin: 0; padding: 0; }
.bo-services-grid li { color: var(--bo-muted); font-size: .9rem; line-height: 1.5; padding: .3rem 0 .3rem 1rem; position: relative; }
.bo-services-grid li:before { background: var(--bo-coral); border-radius: 50%; content: ""; height: .35rem; left: 0; position: absolute; top: .85rem; width: .35rem; }

.bo-testimonials-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(2, 1fr); margin-top: 3rem; }
.bo-testimonial { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 1.5rem; padding: 2rem; }
.bo-testimonial blockquote { font-family: 'Playfair Display', serif; font-size: clamp(1.25rem, 2vw, 1.65rem); line-height: 1.25; margin: 1rem 0 1.5rem; }
.bo-person { align-items: center; display: flex; gap: .75rem; }
.bo-person img { border-radius: 50%; height: 2.75rem; object-fit: cover; width: 2.75rem; }
.bo-person strong { display: block; font-size: .9rem; }
.bo-person span { color: rgba(255,255,255,.58); display: block; font-size: .8rem; margin-top: .1rem; }

.bo-faq-grid { display: grid; gap: 3rem; grid-template-columns: 1fr 1.35fr; }
.bo-accordion { border-top: 1px solid var(--bo-border); }
.bo-accordion-item { border-bottom: 1px solid var(--bo-border); }
.bo-accordion-trigger { align-items: center; background: transparent; border: 0; color: var(--bo-text); display: flex; font-family: 'Playfair Display', serif; font-size: 1.1rem; justify-content: space-between; padding: 1.25rem 0; text-align: left; width: 100%; }
.bo-accordion-trigger span { color: var(--bo-coral); font-family: 'Outfit', sans-serif; font-size: 1.4rem; font-weight: 300; transition: transform .3s; }
.bo-accordion-item.is-open .bo-accordion-trigger span { transform: rotate(45deg); }
.bo-accordion-panel { color: var(--bo-muted); display: grid; grid-template-rows: 0fr; line-height: 1.65; overflow: hidden; transition: grid-template-rows .3s; }
.bo-accordion-panel > div { min-height: 0; }
.bo-accordion-item.is-open .bo-accordion-panel { grid-template-rows: 1fr; }
.bo-accordion-panel p { margin: 0 0 1.25rem; }

.bo-final-cta { background: var(--bo-coral); border-radius: 1.5rem; color: #fff; overflow: hidden; padding: 4.5rem; position: relative; }
.bo-final-cta .bo-container { position: relative; z-index: 1; }
.bo-final-grid { align-items: center; display: grid; gap: 2rem; grid-template-columns: 1.35fr .65fr; }
.bo-final-cta h2 { font-size: clamp(2.5rem, 5vw, 4.8rem); line-height: 1.02; margin: 0; }
.bo-final-cta p { color: rgba(255,255,255,.9); line-height: 1.65; margin: 1.2rem 0 0; max-width: 600px; }
.bo-final-actions { display: flex; flex-direction: column; gap: .7rem; }
.bo-final-actions .bo-button { background: #fff; box-shadow: none; color: var(--bo-coral); }
.bo-final-actions .bo-button:hover { background: var(--bo-cream); color: var(--bo-deep-coral); }
.bo-final-actions .bo-button--outline { background: transparent; border: 1px solid rgba(255,255,255,.5); color: #fff; }

.bo-page-header { padding: 10rem 0 4.5rem; }
.bo-page-header h1 { font-size: clamp(3.2rem, 7vw, 6.6rem); line-height: .95; margin: .7rem 0 0; max-width: 1000px; }
.bo-page-header p { color: var(--bo-muted); font-size: 1.15rem; line-height: 1.7; margin: 1.5rem 0 0; max-width: 720px; }
.bo-feature-list { display: grid; gap: .5rem; grid-template-columns: 1fr 1fr; margin-top: 1.7rem; }
.bo-feature-list li { align-items: flex-start; display: flex; font-size: .9rem; gap: .5rem; line-height: 1.45; }
.bo-feature-list li:before { color: var(--bo-coral); content: "✓"; font-weight: 700; }
.bo-featured-service { align-items: center; display: grid; gap: 3.5rem; grid-template-columns: 1fr 1fr; margin-top: 5rem; }
.bo-featured-service + .bo-featured-service { margin-top: 7rem; }
.bo-featured-service.is-reversed .bo-service-media { order: 2; }
.bo-service-media { aspect-ratio: 5 / 4; border-radius: 1.5rem; overflow: hidden; }
.bo-service-media img { height: 100%; object-fit: cover; width: 100%; }
.bo-service-copy h2 { font-size: clamp(2.3rem, 4vw, 4rem); line-height: 1.04; margin: .5rem 0 0; }
.bo-service-copy .bo-tagline { color: var(--bo-coral); margin: .45rem 0 0; }
.bo-service-copy > p { color: var(--bo-muted); line-height: 1.7; margin-top: 1.2rem; }

.bo-filter-bar { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 2rem; }
.bo-filter { background: var(--bo-surface-2); border: 0; border-radius: 999px; color: var(--bo-text); font-size: .85rem; padding: .65rem 1rem; transition: background .2s, color .2s; }
.bo-filter:hover, .bo-filter.is-active { background: var(--bo-coral); color: #fff; }
.bo-portfolio-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3, 1fr); padding-bottom: 5rem; }
.bo-portfolio-card { overflow: hidden; }
.bo-portfolio-image { aspect-ratio: 4 / 3; overflow: hidden; position: relative; }
.bo-portfolio-image img { height: 100%; object-fit: cover; transition: transform .7s; width: 100%; }
.bo-portfolio-card:hover img { transform: scale(1.05); }
.bo-portfolio-category { background: rgba(255,255,255,.95); border-radius: 999px; color: var(--bo-navy); font-size: .72rem; left: 1rem; padding: .4rem .7rem; position: absolute; top: 1rem; }
.bo-portfolio-body { align-items: start; display: flex; gap: 1rem; justify-content: space-between; padding: 1.35rem; }
.bo-portfolio-body h3 { font-size: 1.3rem; margin: 0; }
.bo-portfolio-body p { color: var(--bo-coral); font-size: .85rem; margin: .25rem 0 0; }

.bo-pricing-grid { align-items: start; display: grid; gap: 1.4rem; grid-template-columns: repeat(4, 1fr); padding-bottom: 5rem; }
.bo-pricing-card { padding: 1.7rem; position: relative; }
.bo-pricing-card.is-popular { border: 2px solid var(--bo-coral); transform: translateY(-.75rem); }
.bo-popular-badge { background: var(--bo-coral); border-radius: 999px; color: #fff; font-size: .7rem; left: 50%; padding: .35rem .7rem; position: absolute; top: -.8rem; transform: translateX(-50%); white-space: nowrap; }
.bo-pricing-card h3 { font-size: 1.6rem; margin: 0; }
.bo-pricing-desc { color: var(--bo-muted); font-size: .85rem; line-height: 1.4; margin: .4rem 0 0; min-height: 2.6rem; }
.bo-price { align-items: baseline; display: flex; gap: .25rem; margin-top: 1.5rem; }
.bo-price strong { font-family: 'Playfair Display', serif; font-size: 2.45rem; line-height: 1; }
.bo-price span { color: var(--bo-muted); font-size: .8rem; }
.bo-pricing-list { list-style: none; margin: 1.5rem 0 0; padding: 0; }
.bo-pricing-list li { display: flex; font-size: .85rem; gap: .5rem; line-height: 1.4; padding: .4rem 0; }
.bo-pricing-list li:before { color: var(--bo-coral); content: "✓"; font-weight: 700; }
.bo-pricing-card .bo-button { margin-top: 1.5rem; width: 100%; }
.bo-custom-cta { background: var(--bo-navy); border-radius: 1.5rem; color: #fff; padding: 3rem; text-align: center; }
.bo-custom-cta h2 { font-size: 2.2rem; margin: 0; }
.bo-custom-cta p { color: rgba(255,255,255,.7); line-height: 1.6; margin: .75rem auto 0; max-width: 560px; }

.bo-about-grid { display: grid; gap: 3.5rem; grid-template-columns: 1fr 1fr; padding-bottom: 5rem; }
.bo-about-image { aspect-ratio: 4 / 3; border-radius: 1.5rem; overflow: hidden; }
.bo-about-image img { height: 100%; object-fit: cover; width: 100%; }
.bo-about-copy { color: var(--bo-muted); line-height: 1.7; }
.bo-values-grid { display: grid; gap: 1.4rem; grid-template-columns: repeat(3, 1fr); margin-top: 2.5rem; }
.bo-value-card { padding: 1.7rem; }
.bo-value-card h3 { font-size: 1.6rem; margin: 1rem 0 0; }
.bo-value-card p { color: var(--bo-muted); line-height: 1.6; margin: .55rem 0 0; }
.bo-centered-cta { padding: 5rem 0; text-align: center; }
.bo-centered-cta h2 { font-size: clamp(2.2rem, 4vw, 3.7rem); margin: 0 auto; max-width: 800px; }

.bo-blog-tools { align-items: center; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; margin-bottom: 2rem; }
.bo-search { position: relative; width: min(100%, 360px); }
.bo-search input { background: var(--bo-surface); border: 1px solid var(--bo-border); border-radius: 999px; color: var(--bo-text); height: 3rem; padding: 0 1rem 0 2.7rem; width: 100%; }
.bo-search svg { color: var(--bo-muted); left: 1rem; position: absolute; top: 50%; transform: translateY(-50%); }
.bo-blog-featured { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 2.5rem; overflow: hidden; }
.bo-blog-featured-image { min-height: 320px; }
.bo-blog-featured-image img { height: 100%; object-fit: cover; width: 100%; }
.bo-blog-featured-copy { display: flex; flex-direction: column; justify-content: center; padding: 3rem; }
.bo-blog-featured-copy h2 { font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.05; margin: .5rem 0 0; }
.bo-blog-featured-copy p { color: var(--bo-muted); line-height: 1.6; margin: 1rem 0 0; }
.bo-blog-grid { display: grid; gap: 1.4rem; grid-template-columns: repeat(3, 1fr); padding-bottom: 5rem; }
.bo-blog-card { overflow: hidden; }
.bo-blog-image { aspect-ratio: 16 / 10; overflow: hidden; }
.bo-blog-image img { height: 100%; object-fit: cover; transition: transform .7s; width: 100%; }
.bo-blog-card:hover img, .bo-blog-featured:hover img { transform: scale(1.05); }
.bo-blog-body { padding: 1.35rem; }
.bo-blog-body h3 { font-size: 1.3rem; line-height: 1.2; margin: .45rem 0 0; }
.bo-blog-body p { color: var(--bo-muted); font-size: .9rem; line-height: 1.5; margin: .65rem 0 0; }
.bo-post { margin: 0 auto; max-width: 800px; padding: 8rem 0 5rem; }
.bo-post h1 { font-size: clamp(2.5rem, 6vw, 5rem); line-height: 1.02; margin: .6rem 0 0; }
.bo-post-excerpt { color: var(--bo-muted); font-size: 1.15rem; line-height: 1.6; margin: 1.25rem 0 0; }
.bo-post-cover { aspect-ratio: 16 / 9; border-radius: 1.5rem; margin: 2.5rem 0; overflow: hidden; }
.bo-post-cover img { height: 100%; object-fit: cover; width: 100%; }
.bo-post-content { color: color-mix(in srgb, var(--bo-text) 88%, transparent); font-size: 1.08rem; line-height: 1.8; }
.bo-post-content h2 { font-size: 2rem; line-height: 1.1; margin: 2.8rem 0 .75rem; }
.bo-post-content p { margin: 0 0 1.2rem; }
.bo-post-cta { background: var(--bo-navy); border-radius: 1.5rem; color: #fff; margin-top: 3.5rem; padding: 2.5rem; text-align: center; }
.bo-post-cta h2 { font-size: 2rem; margin: 0; }
.bo-post-cta p { color: rgba(255,255,255,.7); margin: .7rem 0 0; }

.bo-form-layout { display: grid; gap: 2.5rem; grid-template-columns: 1.35fr .8fr; padding-bottom: 5rem; }
.bo-form-card { padding: 2.2rem; }
.bo-form-grid { display: grid; gap: 1rem; grid-template-columns: 1fr 1fr; }
.bo-field { display: flex; flex-direction: column; gap: .4rem; }
.bo-field--full { grid-column: 1 / -1; }
.bo-field label { font-size: .85rem; font-weight: 600; }
.bo-field input, .bo-field select, .bo-field textarea {
  background: var(--bo-bg);
  border: 1px solid var(--bo-border);
  border-radius: .75rem;
  color: var(--bo-text);
  min-height: 3rem;
  outline: 0;
  padding: .8rem .95rem;
  transition: border-color .2s, box-shadow .2s;
  width: 100%;
}
.bo-field textarea { min-height: 9rem; resize: vertical; }
.bo-field input:focus, .bo-field select:focus, .bo-field textarea:focus { border-color: var(--bo-coral); box-shadow: 0 0 0 3px rgba(255,107,87,.12); }
.bo-service-pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.bo-service-pill { background: var(--bo-surface); border: 1px solid var(--bo-border); border-radius: 999px; color: var(--bo-text); font-size: .8rem; padding: .55rem .8rem; transition: background .2s, border-color .2s, color .2s; }
.bo-service-pill.is-selected { background: var(--bo-coral); border-color: var(--bo-coral); color: #fff; }
.bo-form-status { border-radius: .75rem; display: none; font-size: .9rem; margin-bottom: 1rem; padding: .8rem 1rem; }
.bo-form-status.is-visible { display: block; }
.bo-form-status.is-success { background: rgba(15,139,141,.12); color: var(--bo-deep-teal); }
.bo-form-status.is-error { background: rgba(255,107,87,.12); color: var(--bo-deep-coral); }
.bo-contact-stack { display: grid; gap: .8rem; }
.bo-contact-card { align-items: center; display: flex; gap: 1rem; padding: 1.25rem; }
.bo-contact-icon { align-items: center; background: rgba(255,107,87,.1); border-radius: 50%; color: var(--bo-coral); display: inline-flex; flex: 0 0 3rem; height: 3rem; justify-content: center; width: 3rem; }
.bo-contact-card small { color: var(--bo-muted); display: block; font-size: .75rem; }
.bo-contact-card strong { display: block; font-size: .92rem; margin-top: .18rem; }
.bo-audit-options { display: grid; gap: 1rem; grid-template-columns: repeat(4, 1fr); margin-bottom: 2rem; }
.bo-audit-option { padding: 1.35rem; text-align: left; }
.bo-audit-option.is-active { border: 2px solid var(--bo-coral); }
.bo-audit-option h3 { font-size: 1.35rem; margin: .8rem 0 0; }
.bo-audit-option p { color: var(--bo-muted); font-size: .85rem; line-height: 1.5; margin: .45rem 0 0; }
.bo-tools-grid { display: grid; gap: 1.4rem; grid-template-columns: repeat(3, 1fr); margin-top: 2rem; }
.bo-tool-card { opacity: .9; padding: 1.7rem; }
.bo-tool-card h3 { font-size: 1.4rem; margin: .9rem 0 0; }
.bo-tool-card p { color: var(--bo-muted); font-size: .9rem; line-height: 1.5; margin: .45rem 0 0; }

.site-footer { background: var(--bo-navy); color: #fff; margin-top: 7rem; overflow: hidden; position: relative; }
.site-footer .bo-container { position: relative; z-index: 1; }
.bo-footer-grid { display: grid; gap: 2.5rem; grid-template-columns: 1.55fr .7fr .9fr; padding: 5rem 0; }
.bo-footer h2 { font-size: clamp(3.2rem, 7vw, 6.7rem); line-height: .9; margin: .6rem 0 0; }
.bo-footer-copy { color: rgba(255,255,255,.7); line-height: 1.65; margin: 1.5rem 0 0; max-width: 440px; }
.bo-footer h3 { color: var(--bo-coral); font-family: 'Outfit', sans-serif; font-size: .72rem; letter-spacing: .25em; text-transform: uppercase; }
.bo-footer ul { list-style: none; margin: 1rem 0 0; padding: 0; }
.bo-footer li { color: rgba(255,255,255,.78); margin: .6rem 0; }
.bo-footer li a:hover { color: var(--bo-coral); }
.bo-footer-contact li { align-items: flex-start; display: flex; gap: .55rem; }
.bo-footer-contact svg { color: var(--bo-coral); flex: 0 0 auto; margin-top: .2rem; }
.bo-footer-bottom { align-items: center; border-top: 1px solid rgba(255,255,255,.1); display: flex; gap: 1rem; justify-content: space-between; padding: 2rem 0; }
.bo-footer-newsletter { display: flex; gap: .5rem; max-width: 430px; }
.bo-footer-newsletter input { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: #fff; min-height: 3rem; padding: .75rem 1rem; width: 100%; }
.bo-footer-newsletter input::placeholder { color: rgba(255,255,255,.42); }
.bo-footer-bottom p { color: rgba(255,255,255,.5); font-size: .8rem; margin: 0; }
.bo-footer-glow { background: var(--bo-coral); border-radius: 50%; bottom: -180px; filter: blur(70px); height: 320px; opacity: .2; pointer-events: none; position: absolute; right: -80px; width: 320px; }

.bo-floating-ctas { bottom: 1.5rem; display: flex; flex-direction: column; gap: .7rem; position: fixed; right: 1.5rem; z-index: 40; }
.bo-floating-cta { align-items: center; border-radius: 50%; color: #fff; display: inline-flex; height: 3.5rem; justify-content: center; position: relative; transition: transform .2s; width: 3.5rem; }
.bo-floating-cta:hover { color: #fff; transform: scale(1.1); }
.bo-floating-cta--whatsapp { background: #25d366; }
.bo-floating-cta--call { background: var(--bo-coral); }
.bo-floating-cta span { background: var(--bo-text); border-radius: 999px; color: var(--bo-bg); font-size: .72rem; opacity: 0; padding: .4rem .7rem; pointer-events: none; position: absolute; right: 4.1rem; transition: opacity .2s; white-space: nowrap; }
.bo-floating-cta:hover span { opacity: 1; }
.bo-back-top { align-items: center; background: var(--bo-surface); border: 1px solid var(--bo-border); border-radius: 50%; bottom: 1.5rem; color: var(--bo-text); display: inline-flex; height: 3rem; justify-content: center; left: 1.5rem; opacity: 0; pointer-events: none; position: fixed; transition: opacity .2s, transform .2s; width: 3rem; z-index: 40; }
.bo-back-top.is-visible { opacity: 1; pointer-events: auto; }
.bo-back-top:hover { border-color: var(--bo-coral); color: var(--bo-coral); transform: translateY(-3px); }
.bo-scroll-progress { background: linear-gradient(90deg, var(--bo-coral), var(--bo-deep-coral), var(--bo-teal)); height: 4px; left: 0; position: fixed; top: 0; transform-origin: left; width: 0; z-index: 60; }

.bo-reveal { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
.bo-reveal.is-visible { opacity: 1; transform: translateY(0); }
.bo-sr-only { clip: rect(0,0,0,0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.bo-icon { display: inline-block; height: 1.1em; vertical-align: -.2em; width: 1.1em; }
.bo-not-found { padding: 10rem 0 7rem; text-align: center; }
.bo-not-found h1 { font-size: clamp(4rem, 10vw, 9rem); margin: 0; }
.bo-not-found p { color: var(--bo-muted); font-size: 1.1rem; }

@keyframes bo-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { animation-duration: .01ms !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
  .bo-reveal { opacity: 1; transform: none; }
}
@media (max-width: 1100px) {
  .bo-desktop-nav { display: none; }
  .bo-menu-toggle { display: inline-flex; }
  .bo-mobile-menu { border: 1px solid var(--bo-border); border-radius: 1.5rem; display: block; margin-top: .5rem; padding: .55rem; background:#fff;}
  .bo-mobile-menu a { border-radius: 1rem; display: block; padding: .8rem 1rem; color:#000; }
  .bo-mobile-menu a:hover, .bo-mobile-menu a.current-menu-item { background: color-mix(in srgb, var(--bo-coral) 12%, transparent); color: var(--bo-coral); }
  .bo-mobile-menu .bo-button { margin-top: .4rem; text-align: center; }
  .bo-nav-actions .bo-button { display: none; }
}
@media (max-width: 900px) {
  .bo-hero-grid, .bo-final-grid, .bo-form-layout, .bo-about-grid, .bo-faq-grid, .bo-blog-featured { grid-template-columns: 1fr; }
  .bo-hero-grid { padding-top: 8.5rem; }
  .bo-hero-image { margin: 1rem auto 0; max-width: 480px; width: 100%; }
  .bo-stats { grid-template-columns: repeat(3, 1fr); }
  .bo-stats .bo-stat:nth-child(4), .bo-stats .bo-stat:nth-child(5) { margin-top: 1rem; }
  .bo-why-grid { grid-template-columns: repeat(2, 1fr); }
  .bo-process-line { display: none; }
  .bo-process-row, .bo-process-row:nth-child(even) { display: block; margin-top: 1rem; }
  .bo-process-row:nth-child(even) .bo-process-card { grid-column: auto; }
  .bo-services-grid, .bo-portfolio-grid, .bo-pricing-grid { grid-template-columns: repeat(2, 1fr); }
  .bo-pricing-card.is-popular { transform: none; }
  .bo-blog-grid { grid-template-columns: repeat(2, 1fr); }
  .bo-footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
}
@media (max-width: 640px) {
  body.admin-bar .site-header { top: 46px; }
  .bo-container { width: min(100% - 32px, 1200px); }
  .bo-section { padding: 4.5rem 0; }
  .bo-hero-grid { padding: 8rem 0 5rem; }
  .bo-hero h1 { font-size: clamp(3rem, 16vw, 5rem); }
  .bo-loved { display: none; }
  .bo-stats { gap: 1rem; grid-template-columns: repeat(2, 1fr); }
  .bo-stats .bo-stat:nth-child(4), .bo-stats .bo-stat:nth-child(5) { margin-top: 0; }
  .bo-three-grid, .bo-why-grid, .bo-services-grid, .bo-portfolio-grid, .bo-pricing-grid, .bo-values-grid, .bo-blog-grid, .bo-tools-grid, .bo-audit-options { grid-template-columns: 1fr; }
  .bo-three-grid .bo-card:nth-child(2) { transform: none; }
  .bo-three-grid .bo-card:nth-child(2):hover { transform: translateY(-4px); }
  .bo-testimonials-grid { grid-template-columns: 1fr; }
  .bo-final-cta { padding: 2.3rem 1.5rem; }
  .bo-featured-service, .bo-featured-service.is-reversed { grid-template-columns: 1fr; margin-top: 4rem; }
  .bo-featured-service.is-reversed .bo-service-media { order: initial; }
  .bo-feature-list, .bo-form-grid { grid-template-columns: 1fr; }
  .bo-field--full { grid-column: auto; }
  .bo-blog-featured-copy { padding: 1.5rem; }
  .bo-footer-grid { grid-template-columns: 1fr; padding: 4rem 0; }
  .bo-footer-bottom { align-items: flex-start; flex-direction: column; }
  .bo-footer-newsletter { width: 100%; }
  .bo-floating-ctas { bottom: 1rem; right: 1rem; }
  .bo-back-top { bottom: 1rem; left: 1rem; }
}
/* Ensures hidden containers actually disappear, bypassing layout overrides */
.bo-mobile-menu[hidden] {
  display: none !important;
}