/* BlazerX v4 Design System — generated into index.css (loads first). style.css loads second for palette overrides. */
/* Font loading is handled by <link> tags in the generated HTML head */
:root{
  /* ── Core brand ── */
  --primary-color:#2F8F45;
  --secondary-color:#FFFFFF;
  --accent-color:#16762C;
  --section-color:#F5F0EB;
  --text-color:#111111;
  --footer-color:#1a1a1a;

  /* ── Typography ── */
  --heading-font:"Archivo Black",serif;
  --body-font:"Manrope",sans-serif;
  --button-font:"Manrope",sans-serif;
  --promo-font:"Oswald",serif;

  /* ── Legacy aliases (kept so existing CSS rules using --primary etc still resolve) ── */
  --primary:#2F8F45;
  --primary-rgb:47,143,69;
  --primary-d:#117127;
  --primary-l:#57B76D;
  --accent:#16762C;
  --tc:#111111;
  --mc:rgba(28,25,23,0.55);
  --sc:#F5F0EB;
  --fc:#1a1a1a;

  /* ── UI tokens ── */
  --popular-color:#f4b400;
  --rating-color:#6C5B4D;
  --test-color:#383831;
  --testi-color:#65655B;
  --whatsapp-color:#25D366;
  --phone-color:#756453;
  --email-color:#f3f3f3;
  --line-color:#00000033;
  --border-color:#C2C8C366;
  --icon-color:rgba(255,255,255,0.2);
  --button-color:#2F8F45;
  --overlay-light:255,255,255;
  --nav-bg:rgba(255,255,255,.94);
  --nav-scrolled-bg:rgba(255,255,255,.97);
  --nav-link-color:rgba(28,25,23,.65);
  --footer-text-color:#111111;

  /* ── Spacing & shape ── */
  --r-sm:8px;--r-md:16px;--r-lg:24px;--r-xl:40px;

  /* ── Shadows & transitions ── */
  --sh:0 24px 60px rgba(0,0,0,0.08);
  --sh-p:0 16px 48px rgba(47,143,69,0.3);
  --tr:0.22s cubic-bezier(0.4,0,0.2,1);
}
/* Font family shorthand on body for Builder font picker */
body{font-family:var(--body-font);color:var(--text-color);}
h1,h2,h3,h4,h5,h6,.nav-logo,.footer-logo,.stat-num,.bx-svc-num,.bx-footer-cta-h2{font-family:var(--heading-font);}
body[data-theme="1"]{--primary-color:#2F8F45;--secondary-color:#FFFFFF;--accent-color:#16762C;--section-color:#E8F8FC;--text-color:#111111;--footer-color:#1a1a1a;--button-color:#2F8F45;--footer-text-color:#111111;--heading-font:"Archivo Black",serif;--body-font:"Manrope",sans-serif;--button-font:"Manrope",sans-serif;--promo-font:"Oswald",serif;--primary:#2F8F45;--primary-rgb:47,143,69;--primary-d:#117127;--primary-l:#57B76D;--accent:#16762C;--tc:#111111;--mc:rgba(28,25,23,0.55);--sc:#E8F8FC;--fc:#1a1a1a;--sh-p:0 16px 48px rgba(47,143,69,0.3);}
body[data-theme="1"] .stat-chip{background:rgba(255,255,255,.9);border-color:rgba(47,143,69,.2);}
body[data-theme="1"] .svc-card{background:#fff;border-color:rgba(47,143,69,.1);}
body[data-theme="1"] .svc-icon{background:linear-gradient(135deg,rgba(47,143,69,.18),rgba(47,143,69,.06));}
body[data-theme="1"] .hex-cell{background:rgba(47,143,69,.08);}
body[data-theme="1"] .hex-cell:hover{background:rgba(47,143,69,.18);}
body[data-theme="1"] .test-card{background:rgba(255,255,255,.9);border-color:rgba(47,143,69,.14);}
body[data-theme="1"] .glow-nav{--nav-bg:rgba(255,255,255,.94);--nav-scrolled-bg:rgba(255,255,255,.97);--nav-link-color:rgba(28,25,23,.65);}
body[data-theme="1"] .nav-link{color:rgba(28,25,23,.65);}
body[data-theme="1"] .btn-p.primary-fill{color:#fff;}
body[data-theme="1"] .btn-p.outline{background:linear-gradient(135deg,#2F8F45,var(--accent-color));color:#fff;border-color:#2F8F45;}
body[data-theme="1"] .btn-p.outline:hover{opacity:.9;transform:translateY(-2px);}
body[data-theme="1"] @keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(47,143,69,.4)}70%{box-shadow:0 0 0 12px rgba(47,143,69,0)}}
body[data-theme="1"] .bg-blob-1{background:rgba(47,143,69,.08);}
body[data-theme="1"] .bg-blob-2{background:rgba(47,143,69,.05);}
body[data-theme="1"] .eyebrow{background:rgba(47,143,69,.1);color:var(--primary-color);}
body[data-theme="1"] .eyebrow::before{background:var(--primary-color);}
body[data-theme="1"] .floating-badge{border-color:rgba(47,143,69,.2);}
body[data-theme="1"] .contact-box{background:rgba(47,143,69,.06);border-color:rgba(47,143,69,.15);}
body[data-theme="1"] .form-input{border-color:rgba(47,143,69,.22);}
body[data-theme="1"] .faq-trigger{border-color:rgba(47,143,69,.18);}
body[data-theme="1"] .bx-svc-numbered-row{border-color:rgba(47,143,69,.12);}
body[data-theme="1"] .bx-test-cards-meta{border-color:rgba(47,143,69,.1);}
body[data-theme="1"] .bx-footer-social-btn{background:rgba(47,143,69,.1);border-color:rgba(47,143,69,.2);}
body[data-theme="1"] .bx-partial-numbered-row{border-color:rgba(47,143,69,.12);}
body[data-theme="1"] .bx-partial-mag-card{border-color:rgba(47,143,69,.1);}
body[data-theme="1"] .bx-overlay-rgb-tint{background:linear-gradient(135deg,rgba(47,143,69,.35),transparent 60%);}
body[data-theme="1"] .bx-video-hero-overlay{background:linear-gradient(135deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 50%,rgba(47,143,69,.15) 100%);}
body[data-theme="1"] .bx-pricing-card-featured{border-color:var(--primary-color);box-shadow:0 28px 60px rgba(47,143,69,.35);background:linear-gradient(135deg,var(--primary-color),var(--primary-d));}
body[data-theme="1"] body{font-family:var(--body-font,"DM Sans",sans-serif);}
body[data-theme="1"] h1,body[data-theme="1"] .h1,body[data-theme="1"] h2,body[data-theme="1"] .h2,body[data-theme="1"] h3,body[data-theme="1"] .h3,body[data-theme="1"] .nav-logo,body[data-theme="1"] .footer-logo,body[data-theme="1"] .stat-num,body[data-theme="1"] .bx-svc-num,body[data-theme="1"] .bx-mag-quote-mark,body[data-theme="1"] .bx-footer-cta-h2{font-family:var(--heading-font,"DM Serif Display",serif);}
body[data-theme="2"]{--primary-color:#E91E63;--secondary-color:#FFFFFF;--accent-color:#D0054A;--section-color:#FFF0F5;--text-color:#111111;--footer-color:#1a1a1a;--button-color:#E91E63;--footer-text-color:#111111;--heading-font:"Bebas Neue",serif;--body-font:"Barlow",sans-serif;--button-font:"Barlow",sans-serif;--promo-font:"Oswald",serif;--primary:#E91E63;--primary-rgb:233,30,99;--primary-d:#CB0045;--primary-l:#FF468B;--accent:#D0054A;--tc:#111111;--mc:rgba(28,25,23,0.55);--sc:#FFF0F5;--fc:#1a1a1a;--sh-p:0 16px 48px rgba(233,30,99,0.3);}
body[data-theme="2"] .stat-chip{background:rgba(255,255,255,.9);border-color:rgba(233,30,99,.2);}
body[data-theme="2"] .svc-card{background:#fff;border-color:rgba(233,30,99,.1);}
body[data-theme="2"] .svc-icon{background:linear-gradient(135deg,rgba(233,30,99,.18),rgba(233,30,99,.06));}
body[data-theme="2"] .hex-cell{background:rgba(233,30,99,.08);}
body[data-theme="2"] .hex-cell:hover{background:rgba(233,30,99,.18);}
body[data-theme="2"] .test-card{background:rgba(255,255,255,.9);border-color:rgba(233,30,99,.14);}
body[data-theme="2"] .glow-nav{--nav-bg:rgba(255,255,255,.94);--nav-scrolled-bg:rgba(255,255,255,.97);--nav-link-color:rgba(28,25,23,.65);}
body[data-theme="2"] .nav-link{color:rgba(28,25,23,.65);}
body[data-theme="2"] .btn-p.primary-fill{color:#fff;}
body[data-theme="2"] .btn-p.outline{background:linear-gradient(135deg,#E91E63,var(--accent-color));color:#fff;border-color:#E91E63;}
body[data-theme="2"] .btn-p.outline:hover{opacity:.9;transform:translateY(-2px);}
body[data-theme="2"] @keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(233,30,99,.4)}70%{box-shadow:0 0 0 12px rgba(233,30,99,0)}}
body[data-theme="2"] .bg-blob-1{background:rgba(233,30,99,.08);}
body[data-theme="2"] .bg-blob-2{background:rgba(233,30,99,.05);}
body[data-theme="2"] .eyebrow{background:rgba(233,30,99,.1);color:var(--primary-color);}
body[data-theme="2"] .eyebrow::before{background:var(--primary-color);}
body[data-theme="2"] .floating-badge{border-color:rgba(233,30,99,.2);}
body[data-theme="2"] .contact-box{background:rgba(233,30,99,.06);border-color:rgba(233,30,99,.15);}
body[data-theme="2"] .form-input{border-color:rgba(233,30,99,.22);}
body[data-theme="2"] .faq-trigger{border-color:rgba(233,30,99,.18);}
body[data-theme="2"] .bx-svc-numbered-row{border-color:rgba(233,30,99,.12);}
body[data-theme="2"] .bx-test-cards-meta{border-color:rgba(233,30,99,.1);}
body[data-theme="2"] .bx-footer-social-btn{background:rgba(233,30,99,.1);border-color:rgba(233,30,99,.2);}
body[data-theme="2"] .bx-partial-numbered-row{border-color:rgba(233,30,99,.12);}
body[data-theme="2"] .bx-partial-mag-card{border-color:rgba(233,30,99,.1);}
body[data-theme="2"] .bx-overlay-rgb-tint{background:linear-gradient(135deg,rgba(233,30,99,.35),transparent 60%);}
body[data-theme="2"] .bx-video-hero-overlay{background:linear-gradient(135deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 50%,rgba(233,30,99,.15) 100%);}
body[data-theme="2"] .bx-pricing-card-featured{border-color:var(--primary-color);box-shadow:0 28px 60px rgba(233,30,99,.35);background:linear-gradient(135deg,var(--primary-color),var(--primary-d));}
body[data-theme="2"] body{font-family:var(--body-font,"DM Sans",sans-serif);}
body[data-theme="2"] h1,body[data-theme="2"] .h1,body[data-theme="2"] h2,body[data-theme="2"] .h2,body[data-theme="2"] h3,body[data-theme="2"] .h3,body[data-theme="2"] .nav-logo,body[data-theme="2"] .footer-logo,body[data-theme="2"] .stat-num,body[data-theme="2"] .bx-svc-num,body[data-theme="2"] .bx-mag-quote-mark,body[data-theme="2"] .bx-footer-cta-h2{font-family:var(--heading-font,"DM Serif Display",serif);}
body[data-theme="3"]{--primary-color:#9C27B0;--secondary-color:#FFFFFF;--accent-color:#830E97;--section-color:#F9F0FF;--text-color:#111111;--footer-color:#1a1a1a;--button-color:#9C27B0;--footer-text-color:#111111;--heading-font:"Montserrat",serif;--body-font:"Open Sans",sans-serif;--button-font:"Open Sans",sans-serif;--promo-font:"Sora",serif;--primary:#9C27B0;--primary-rgb:156,39,176;--primary-d:#7E0992;--primary-l:#C44FD8;--accent:#830E97;--tc:#111111;--mc:rgba(28,25,23,0.55);--sc:#F9F0FF;--fc:#1a1a1a;--sh-p:0 16px 48px rgba(156,39,176,0.3);}
body[data-theme="3"] .stat-chip{background:rgba(255,255,255,.9);border-color:rgba(156,39,176,.2);}
body[data-theme="3"] .svc-card{background:#fff;border-color:rgba(156,39,176,.1);}
body[data-theme="3"] .svc-icon{background:linear-gradient(135deg,rgba(156,39,176,.18),rgba(156,39,176,.06));}
body[data-theme="3"] .hex-cell{background:rgba(156,39,176,.08);}
body[data-theme="3"] .hex-cell:hover{background:rgba(156,39,176,.18);}
body[data-theme="3"] .test-card{background:rgba(255,255,255,.9);border-color:rgba(156,39,176,.14);}
body[data-theme="3"] .glow-nav{--nav-bg:rgba(255,255,255,.94);--nav-scrolled-bg:rgba(255,255,255,.97);--nav-link-color:rgba(28,25,23,.65);}
body[data-theme="3"] .nav-link{color:rgba(28,25,23,.65);}
body[data-theme="3"] .btn-p.primary-fill{color:#fff;}
body[data-theme="3"] .btn-p.outline{background:linear-gradient(135deg,#9C27B0,var(--accent-color));color:#fff;border-color:#9C27B0;}
body[data-theme="3"] .btn-p.outline:hover{opacity:.9;transform:translateY(-2px);}
body[data-theme="3"] @keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(156,39,176,.4)}70%{box-shadow:0 0 0 12px rgba(156,39,176,0)}}
body[data-theme="3"] .bg-blob-1{background:rgba(156,39,176,.08);}
body[data-theme="3"] .bg-blob-2{background:rgba(156,39,176,.05);}
body[data-theme="3"] .eyebrow{background:rgba(156,39,176,.1);color:var(--primary-color);}
body[data-theme="3"] .eyebrow::before{background:var(--primary-color);}
body[data-theme="3"] .floating-badge{border-color:rgba(156,39,176,.2);}
body[data-theme="3"] .contact-box{background:rgba(156,39,176,.06);border-color:rgba(156,39,176,.15);}
body[data-theme="3"] .form-input{border-color:rgba(156,39,176,.22);}
body[data-theme="3"] .faq-trigger{border-color:rgba(156,39,176,.18);}
body[data-theme="3"] .bx-svc-numbered-row{border-color:rgba(156,39,176,.12);}
body[data-theme="3"] .bx-test-cards-meta{border-color:rgba(156,39,176,.1);}
body[data-theme="3"] .bx-footer-social-btn{background:rgba(156,39,176,.1);border-color:rgba(156,39,176,.2);}
body[data-theme="3"] .bx-partial-numbered-row{border-color:rgba(156,39,176,.12);}
body[data-theme="3"] .bx-partial-mag-card{border-color:rgba(156,39,176,.1);}
body[data-theme="3"] .bx-overlay-rgb-tint{background:linear-gradient(135deg,rgba(156,39,176,.35),transparent 60%);}
body[data-theme="3"] .bx-video-hero-overlay{background:linear-gradient(135deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 50%,rgba(156,39,176,.15) 100%);}
body[data-theme="3"] .bx-pricing-card-featured{border-color:var(--primary-color);box-shadow:0 28px 60px rgba(156,39,176,.35);background:linear-gradient(135deg,var(--primary-color),var(--primary-d));}
body[data-theme="3"] body{font-family:var(--body-font,"DM Sans",sans-serif);}
body[data-theme="3"] h1,body[data-theme="3"] .h1,body[data-theme="3"] h2,body[data-theme="3"] .h2,body[data-theme="3"] h3,body[data-theme="3"] .h3,body[data-theme="3"] .nav-logo,body[data-theme="3"] .footer-logo,body[data-theme="3"] .stat-num,body[data-theme="3"] .bx-svc-num,body[data-theme="3"] .bx-mag-quote-mark,body[data-theme="3"] .bx-footer-cta-h2{font-family:var(--heading-font,"DM Serif Display",serif);}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
body{font-family:var(--body-font,"DM Sans",sans-serif);font-size:clamp(14px,1.4vw,16px);line-height:1.7;color:var(--text-color);background:var(--section-color);overflow-x:hidden;}
body *:not(h1):not(.h1):not(h2):not(.h2):not(h3):not(.h3):not(h4):not(h5):not(h6):not(.nav-logo):not(.footer-logo):not(.stat-num):not(.bx-svc-num):not(.bx-footer-cta-h2):not(.eyebrow):not(.bx-mag-quote-mark):not(.bx-mag-quote-text):not(.btn-p){font-family:var(--body-font,"DM Sans",sans-serif);}
img{display:block;max-width:100%;object-fit:cover;}a{color:inherit;text-decoration:none;}ul{list-style:none;}
h1,.h1{font-family:var(--heading-font,"DM Serif Display",serif);font-size:clamp(40px,5.5vw,80px);line-height:1.06;letter-spacing:-.03em;}
h2,.h2{font-family:var(--heading-font,"DM Serif Display",serif);font-size:clamp(28px,3.2vw,52px);line-height:1.15;letter-spacing:-.025em;}
h3,.h3{font-family:var(--heading-font,"DM Serif Display",serif);font-size:clamp(20px,2vw,32px);line-height:1.22;letter-spacing:-.02em;}
h4,.h4{font-size:clamp(16px,1.6vw,18px);font-weight:600;line-height:1.4;}
.gradient-text{background:linear-gradient(135deg,var(--primary-color),var(--accent-color),var(--primary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% auto;animation:shimmerBg 4s linear infinite;}
.shimmer-text{background:linear-gradient(90deg,var(--primary-color) 0%,#D4B896 35%,var(--primary-color) 65%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmerBg 3s linear infinite;}
@keyframes shimmerBg{0%{background-position:-200% center}100%{background-position:200% center}}
@keyframes fadeUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}
@keyframes scaleIn{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(var(--primary-rgb),.4)}70%{box-shadow:0 0 0 12px rgba(var(--primary-rgb),0)}}
@keyframes blobMorph{0%,100%{border-radius:60% 40% 70% 30% / 50% 60% 40% 50%}33%{border-radius:40% 60% 30% 70% / 60% 40% 60% 40%}66%{border-radius:70% 30% 50% 50% / 30% 70% 50% 50%}}
.anim-fade-up,.anim-scale-in,.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;}
.anim-scale-in{transform:scale(0.94);}
.revealed{opacity:1 !important;transform:none !important;}
.d1{transition-delay:.08s;}.d2{transition-delay:.18s;}.d3{transition-delay:.28s;}.d4{transition-delay:.38s;}.d5{transition-delay:.48s;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border-radius:999px;background:rgba(var(--primary-rgb),.1);color:var(--primary-color);font-family:var(--promo-font,var(--heading-font));font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;}
.eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--primary-color);}
.btn-p{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;font-family:var(--button-font,var(--body-font));font-weight:600;font-size:15px;cursor:pointer;border:none;transition:all var(--tr);}
.btn-p.pill{border-radius:999px;}.btn-p.rect{border-radius:4px;}.btn-p.rounded{border-radius:14px;}.btn-p.sharp{border-radius:0;}
.btn-p.primary-fill{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:var(--secondary-color);}
.btn-p.primary-fill:hover{transform:translateY(-2px);box-shadow:var(--sh-p);}.bx-nav-cta.primary-fill:hover{transform:none;box-shadow:none;opacity:0.88;}
.btn-p.outline{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:var(--secondary-color);border:1.5px solid var(--primary-color);}
.btn-p.outline:hover{transform:translateY(-2px);box-shadow:var(--sh-p);opacity:.9;}
/* Keep CTA row buttons aligned on same baseline */
.bx-cta-row,.bx-cta-row-center{align-items:center;}
.btn-p.anim-pulse{animation:pulse 2s infinite;}
.btn-p.anim-shimmer{background-size:200% auto;animation:shimmerBg 2s linear infinite;}
.btn-p.anim-bounce:hover{transform:translateY(-4px) scale(1.02);}
.stat-chip{padding:20px 24px;border-radius:var(--r-md);background:var(--secondary-color);backdrop-filter:blur(12px);border:1px solid rgba(var(--primary-rgb),.2);text-align:center;min-width:90px;}
.stat-num{font-family:var(--heading-font,"DM Serif Display",serif);font-size:clamp(28px,3vw,44px);color:var(--primary-color);line-height:1;white-space:nowrap;}
.stat-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--mc);margin-top:4px;word-break:break-word;white-space:normal;line-height:1.3;max-width:120px;margin-left:auto;margin-right:auto;}
.img-rect{border-radius:0;}.img-rounded{border-radius:var(--r-xl);}
.img-blob{border-radius:60% 40% 70% 30% / 50% 60% 40% 50%;animation:blobMorph 8s ease-in-out infinite;}
.img-diagonal-clip{clip-path:polygon(0 0,85% 0,100% 100%,0 100%);}
.img-diagonal-clip.right{clip-path:polygon(15% 0,100% 0,100% 100%,0 100%);}
.svc-card{background:var(--secondary-color);border:1px solid rgba(var(--primary-rgb),.1);border-radius:var(--r-lg);padding:28px;transition:all var(--tr);overflow:hidden;}
.svc-card:hover{transform:translateY(-6px);box-shadow:var(--sh);}
.svc-card.featured{border:2px solid var(--primary-color);box-shadow:var(--sh-p);transform:translateY(-8px);}
.svc-card-img{height:180px;margin:-28px -28px 20px;overflow:hidden;}
.svc-card-img img{width:100%;height:100%;transition:transform .4s ease;}
.svc-card:hover .svc-card-img img{transform:scale(1.05);}
.svc-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(var(--primary-rgb),.18),rgba(var(--primary-rgb),.06));display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:22px;margin-bottom:16px;}
.hex-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;}
.hex-cell{aspect-ratio:1;clip-path:polygon(50% 0%,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);background:rgba(var(--primary-rgb),.08);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:background var(--tr);}
.hex-cell:hover{background:rgba(var(--primary-rgb),.18);}
.test-card{border-radius:var(--r-lg);padding:24px;background:var(--secondary-color);backdrop-filter:blur(16px);border:1px solid rgba(var(--primary-rgb),.14);border-left:4px solid var(--primary-color);}
.glow-nav{position:relative;z-index:999;padding:20px 0;background:var(--nav-bg,rgba(var(--overlay-light),.94));backdrop-filter:blur(20px);box-shadow:0 2px 24px rgba(0,0,0,.06);transition:background var(--tr),box-shadow var(--tr),padding var(--tr);font-family:var(--body-font,"DM Sans",sans-serif);}
.glow-nav.scrolled{padding:12px 0;background:var(--nav-scrolled-bg,var(--nav-bg,rgba(var(--overlay-light),.97)));}
.nav-logo{font-family:var(--heading-font,"DM Serif Display",serif);font-size:26px;color:var(--primary-color);}
.nav-links{display:flex;align-items:center;gap:36px;white-space:nowrap;flex-wrap:nowrap;}
.nav-link{white-space:nowrap;}
.nav-close-btn{display:none;}
.nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:998;}
.nav-overlay.open{display:block;}
/* Desktop-only elements (hidden on mobile via the 1024px media query above) */
.bx-desktop-only{display:flex;align-items:center;}
/* Desktop nav CTA — sits to the right of the nav-links on large screens */
.bx-nav-desktop-cta{margin-left:16px;}
/* Drawer CTA hidden on desktop — the external CTA is used instead */
.bx-nav-drawer-cta{display:none;}
/* Center-logo nav: keep CTA group aligned */
.bx-nav-center-cta{display:flex;align-items:center;gap:12px;}
.nav-link{font-family:var(--body-font,"DM Sans",sans-serif);font-size:15px;color:var(--nav-link-color,var(--mc));transition:color var(--tr);}
.nav-link:hover{color:var(--primary-color);}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;}
.hamburger span{display:block;width:24px;height:2px;background:var(--text-color);border-radius:2px;transition:transform var(--tr),opacity var(--tr);}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
/* When drawer is open, hide the hamburger (which becomes an X) — the drawer has its own close btn */
@media(max-width:1024px){.hamburger.open{display:none;}}
/* ── Nav style variants ── */
.glow-nav.nav-style-solid{background:var(--nav-bg-solid,var(--footer-color));backdrop-filter:none;box-shadow:0 1px 0 rgba(0,0,0,.08);}
.glow-nav.nav-style-solid.scrolled{background:var(--nav-bg-solid,var(--footer-color));box-shadow:0 4px 20px rgba(0,0,0,.12);}
.glow-nav.nav-style-solid .nav-link{color:rgba(255,255,255,.85);}
.glow-nav.nav-style-solid .nav-logo{color:#fff;}
.glow-nav.nav-style-solid .hamburger span{background:#fff;}
.glow-nav.nav-style-solid .bx-nav-topbar{color:rgba(255,255,255,.6);border-bottom-color:rgba(255,255,255,.1);}
.glow-nav.nav-style-solid .bx-nav-dual-top{color:rgba(255,255,255,.6);border-bottom-color:rgba(255,255,255,.1);}
.glow-nav.nav-style-gradient{background:linear-gradient(135deg,var(--footer-color),var(--primary-color));backdrop-filter:none;}
.glow-nav.nav-style-gradient .nav-link{color:rgba(255,255,255,.85);}
.glow-nav.nav-style-gradient .nav-logo{color:#fff;}
.glow-nav.nav-style-gradient .hamburger span{background:#fff;}
.glow-nav.nav-style-bordered{background:transparent;backdrop-filter:none;box-shadow:none;border-bottom:2px solid rgba(var(--primary-rgb),.25);}
.glow-nav.nav-style-bordered.scrolled{background:var(--nav-bg,rgba(var(--overlay-light),.94));backdrop-filter:blur(20px);border-bottom-color:rgba(var(--primary-rgb),.15);}
.glow-nav.nav-style-floating{background:var(--nav-bg,rgba(var(--overlay-light),.94));backdrop-filter:blur(20px);margin:12px 24px 0;border-radius:60px;padding:14px 28px;box-shadow:0 8px 32px rgba(0,0,0,.1);}
.glow-nav.nav-style-floating.scrolled{margin-top:8px;padding:10px 28px;}
@media(max-width:768px){.glow-nav.nav-style-floating{margin:8px 12px 0;border-radius:20px;padding:12px 16px;}}
/* ── Nav logo style variants ── */
.nav-logo.logo-bold-large{font-size:30px;font-weight:800;}
.nav-logo.logo-light-caps{font-size:22px;font-weight:300;text-transform:uppercase;letter-spacing:3px;}
.nav-logo.logo-script-accent{font-family:var(--body-font,"DM Sans",sans-serif);font-weight:500;font-size:24px;}
/* ── Top-bar-split nav layout ── */
.bx-nav-topbar{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:13px;color:var(--mc);border-bottom:1px solid rgba(var(--primary-rgb),.1);}
.bx-nav-topbar-item{display:flex;align-items:center;gap:6px;}
.bx-nav-topbar-right{display:flex;align-items:center;gap:16px;}
@media(max-width:768px){.bx-nav-topbar{display:none;}}
/* ── Stacked-center nav layout ── */
.bx-nav-stacked{display:flex;flex-direction:column;align-items:center;gap:8px;}
.bx-nav-stacked .nav-links{justify-content:center;}
.bx-nav-stacked .bx-nav-links-bar{display:flex;align-items:center;gap:28px;justify-content:center;flex-wrap:wrap;}
@media(max-width:1024px){.bx-nav-stacked{flex-direction:row;justify-content:space-between;}.bx-nav-stacked .bx-nav-links-bar{display:none;}}
/* ── Minimal-hamburger nav layout ── */
.bx-nav-minimal{display:flex;align-items:center;justify-content:space-between;}
.bx-nav-minimal .hamburger{display:flex;}
.bx-nav-minimal .nav-links{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:var(--section-color);flex-direction:column;padding:80px 28px 40px;gap:8px;transition:right .32s cubic-bezier(.4,0,.2,1);box-shadow:-8px 0 40px rgba(0,0,0,.12);z-index:1000;}
.bx-nav-minimal .nav-links.open{right:0;}
.bx-nav-minimal .nav-links .nav-link{font-size:17px;padding:8px 0;border-bottom:1px solid rgba(var(--primary-rgb),.08);}
.bx-nav-minimal .nav-close-btn{display:flex;position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(var(--primary-rgb),.2);background:rgba(var(--primary-rgb),.06);align-items:center;justify-content:center;cursor:pointer;color:var(--text-color);font-size:18px;line-height:1;font-family:sans-serif;transition:all .18s;}
.bx-nav-minimal .nav-close-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);}
@media(max-width:1024px){.bx-nav-minimal .bx-desktop-only{display:none !important;}}
/* ── Logo-above-links nav layout ── */
.bx-nav-logo-above{display:flex;flex-direction:column;align-items:center;gap:4px;}
.bx-nav-logo-above .nav-logo,.bx-nav-logo-above .navbar-brand{font-size:32px;}
.bx-nav-logo-above .bx-nav-links-bar{display:flex;align-items:center;gap:28px;}
@media(max-width:1024px){.bx-nav-logo-above{flex-direction:row;justify-content:space-between;}.bx-nav-logo-above .bx-nav-links-bar{display:none;}}
/* ── Dual-row nav layout ── */
.bx-nav-dual-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:6px;border-bottom:1px solid rgba(var(--primary-rgb),.08);margin-bottom:6px;font-size:13px;color:var(--mc);}
.bx-nav-dual-top-links{display:flex;gap:16px;}
.bx-nav-dual-bottom{display:flex;align-items:center;justify-content:space-between;}
@media(max-width:1024px){.bx-nav-dual-top{display:none;}.bx-nav-dual-bottom{justify-content:space-between;}}
/* ── Footer style variants ── */
.glow-footer.footer-style-wave-top{position:relative;overflow:visible;}
.glow-footer.footer-style-wave-top .bx-footer-wave-svg{position:absolute;top:-48px;left:0;right:0;width:100%;height:48px;display:block;}
.glow-footer.footer-style-gradient{background:linear-gradient(180deg,var(--footer-color),#000);}
.glow-footer.footer-style-bordered-top{border-top:3px solid var(--primary-color);}
.glow-footer.footer-style-split-tone .bx-footer-upper{padding:60px 0 40px;}
.glow-footer.footer-style-split-tone .bx-footer-lower{background:rgba(0,0,0,.2);padding:20px 0;}
/* ── Footer alignment helpers ── */
.bx-footer-align-left{text-align:left;}
.bx-footer-align-left .footer-logo,.bx-footer-align-left .bx-footer-tagline-p{text-align:left;}
.bx-footer-align-left .bx-footer-socials-row{justify-content:flex-start;}
.bx-footer-align-right{text-align:right;}
.bx-footer-align-right .footer-logo,.bx-footer-align-right .bx-footer-tagline-p{text-align:right;}
.bx-footer-align-right .bx-footer-socials-row{justify-content:flex-end;}
.bx-footer-align-center{text-align:center;}
.bx-footer-align-center .footer-logo,.bx-footer-align-center .bx-footer-tagline-p{text-align:center;}
.bx-footer-align-center .bx-footer-socials-row{justify-content:center;}
/* ── Mid footer 2-column layout ── */
.bx-footer-mid-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
@media(max-width:768px){.bx-footer-mid-grid{grid-template-columns:1fr;gap:24px;text-align:center;}}
/* ── Small footer single-row layout ── */
.bx-footer-small-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:30px 0;}
@media(max-width:768px){.bx-footer-small-row{flex-direction:column;text-align:center;}}
.floating-badge{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 18px;background:rgba(var(--overlay-light),.97);border:1px solid rgba(var(--primary-rgb),.2);border-radius:var(--r-md);box-shadow:0 8px 32px rgba(0,0,0,.12);animation:float 4s ease-in-out infinite;}
.contact-box{border-radius:var(--r-md);padding:16px;display:flex;align-items:center;gap:14px;background:rgba(var(--primary-rgb),.06);border:1px solid rgba(var(--primary-rgb),.15);}
.contact-box .contact-icon{flex-shrink:0;}
.bx-contact-info{flex:1;min-width:0;}
.bx-contact-val{font-size:14px;color:var(--tc);word-break:break-word;overflow-wrap:anywhere;line-height:1.5;margin-top:2px;}
.bx-contact-label{font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mc);margin-bottom:2px;}
.contact-icon{width:44px;height:44px;border-radius:12px;background:var(--primary-color);display:flex;align-items:center;justify-content:center;color:var(--secondary-color);font-size:20px;flex-shrink:0;}
.bx-faq-item{border-bottom:1px solid rgba(var(--primary-rgb),.15);}
.bx-faq-item:first-child{border-top:1px solid rgba(var(--primary-rgb),.15);}
.faq-trigger{width:100%;display:flex;justify-content:space-between;align-items:flex-start;padding:20px 0 16px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:16px;font-weight:500;color:var(--text-color);text-align:left;gap:16px;line-height:1.4;}
.faq-icon{width:28px;height:28px;flex-shrink:0;border-radius:50%;border:1.5px solid rgba(var(--primary-rgb),.35);display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:18px;line-height:1;transition:transform var(--tr),background var(--tr);margin-top:2px;}
.faq-trigger[aria-expanded="true"] .faq-icon{transform:rotate(45deg);background:var(--primary-color);color:var(--secondary-color);}
.faq-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1);}
.faq-body.open{max-height:800px;}
.bx-faq-answer{font-size:15px;color:var(--mc);line-height:1.75;padding:4px 0 24px;}
/* FAQ Layout 3 — sidebar heading + minimal Q&A list */
.bx-faq-minimal{display:flex;flex-direction:column;gap:0;}
.bx-faq-minimal-item{padding:20px 0;border-bottom:1px solid rgba(var(--primary-rgb),.12);}
.bx-faq-minimal-item:first-child{border-top:1px solid rgba(var(--primary-rgb),.12);}
.bx-faq-minimal-q{font-size:16px;font-weight:600;color:var(--text-color);margin-bottom:10px;line-height:1.45;}
.bx-faq-minimal-a{font-size:15px;color:var(--mc);line-height:1.75;}
/* FAQ Layout 2 — card grid */
.bx-faq-card{padding:28px;border-radius:var(--r-lg);background:rgba(var(--primary-rgb),.04);border:1px solid rgba(var(--primary-rgb),.1);height:100%;}
.bx-faq-card-featured{background:linear-gradient(135deg,rgba(var(--primary-rgb),.1),rgba(var(--primary-rgb),.04));border-color:rgba(var(--primary-rgb),.25);}
.bx-faq-cta-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:var(--primary-color);}
.bx-faq-cta-card h4{color:#fff;}
.bx-faq-card-q{font-size:16px;font-weight:600;margin-bottom:12px;line-height:1.45;}
.bx-faq-card-a{font-size:14px;color:var(--mc);line-height:1.7;margin:0;}
@media(max-width:768px){.bx-faq-minimal-item{padding:16px 0;}.bx-faq-minimal-q{font-size:15px;}.bx-faq-minimal-a{font-size:14px;}}
.form-input{width:100%;padding:14px 18px;border:1.5px solid rgba(var(--primary-rgb),.22);border-radius:var(--r-sm);background:rgba(var(--overlay-light),.8);font-family:inherit;font-size:15px;color:var(--text-color);outline:none;}
.form-input:focus{border-color:var(--primary-color);}
/* Custom editable service selector */
.bx-svc-select{position:relative;cursor:pointer;user-select:none;}
.bx-svc-select-val{display:flex;align-items:center;justify-content:space-between;}
.bx-svc-select-val::after{content:'BE';font-size:12px;color:var(--mc);margin-left:8px;flex-shrink:0;}
.bx-svc-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:rgba(var(--overlay-light),.97);border:1.5px solid rgba(var(--primary-rgb),.22);border-radius:var(--r-sm);z-index:100;overflow:hidden;display:none;box-shadow:0 8px 24px rgba(0,0,0,.1);}
.bx-svc-dropdown.open{display:block;}
.bx-svc-opt{padding:11px 18px;font-size:15px;color:var(--text-color);transition:background var(--tr);}
.bx-svc-opt:hover{background:rgba(var(--primary-rgb),.08);color:var(--primary-color);}
.bg-blob{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0;}
.bg-blob-1{width:600px;height:600px;background:rgba(var(--primary-rgb),.08);top:-200px;right:-200px;}
.bg-blob-2{width:400px;height:400px;background:rgba(var(--primary-rgb),.05);bottom:-100px;left:-100px;}
.glow-footer{background:var(--footer-color);color:rgba(var(--overlay-light),.85);padding:60px 0 0;}
.footer-logo{font-family:var(--heading-font,"DM Serif Display",serif);font-size:28px;color:var(--primary-color);}
.sp{padding:72px 0;}.section-warm{background:var(--section-color);}
/* Promo 1 primary-background section — replaces inline style="background:var(--primary-color)"
   so GrapesJS editor.addComponents() does not strip the background color */
.bx-promo-primary{background:var(--primary-color);color:var(--secondary-color);text-align:center;padding:80px 0;min-height:280px;display:flex;align-items:center;width:100%;}
.bx-promo-primary h2,.bx-promo-primary p{color:var(--secondary-color);}
.bx-promo-primary-btn{background:var(--secondary-color);color:var(--primary-color);font-weight:700;}
/* Teams 2 card background — replaces inline rgba(var(--primary-rgb),.05) */
.bx-team-card-bg{background:rgba(var(--primary-rgb),.05);}
/* Teams 2 inner card: horizontal flex row with avatar and text */
.bx-team-card-row{display:flex;gap:16px;align-items:center;padding:20px;border-radius:12px;}
.bx-team-card-row img{width:80px;height:80px;border-radius:50%;object-fit:cover;flex-shrink:0;}
/* Teams 3 list row: horizontal flex row with separator line, no CSS vars */
.bx-team-list-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08);}
.bx-team-list-row img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.bx-team-list-text{flex:1;min-width:0;}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 32px;}
@media(max-width:1024px){
/* Hamburger visible, nav-links hidden off-screen right */
.hamburger{display:flex;}
.nav-links{position:fixed;top:0;right:-100%;width:80%;max-width:320px;height:100vh;background:var(--section-color);flex-direction:column;padding:80px 28px 40px;gap:8px;transition:right .32s cubic-bezier(.4,0,.2,1);box-shadow:-8px 0 40px rgba(0,0,0,.12);}
.nav-links.open{right:0;}
.nav-links .nav-link{font-size:17px;padding:8px 0;border-bottom:1px solid rgba(var(--primary-rgb),.08);}
.nav-close-btn{display:flex;position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(var(--primary-rgb),.2);background:rgba(var(--primary-rgb),.06);align-items:center;justify-content:center;cursor:pointer;color:var(--text-color);font-size:18px;line-height:1;font-family:sans-serif;transition:all .18s;}
.nav-close-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color);}
.nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:998;}
.nav-overlay.open{display:block;}
/* Nav bar: logo left, hamburger right — applies to all nav variants */
.bx-nav-flex.nav-inner{display:flex;flex-direction:row;align-items:center;width:100%;}
.bx-hamburger-right{margin-left:auto;}
/* Center-logo nav: override 3-col grid → flex on mobile so hamburger goes right */
.bx-nav-center.nav-inner{display:flex;flex-direction:row;align-items:center;width:100%;gap:0;}
.bx-nav-center.nav-inner .bx-nav-center-cta{margin-left:auto;}
/* CTA inside the drawer on mobile */
.bx-nav-drawer-cta{display:block;margin-top:16px;padding-top:16px;border-top:1px solid rgba(var(--primary-rgb),.1);}
.bx-nav-drawer-cta .btn-p{display:flex;width:100%;justify-content:center;padding:14px 24px;font-size:15px;}
/* Desktop nav CTA and divider hidden on mobile */
.bx-desktop-only{display:none !important;}
.bx-nav-desktop-cta{display:none !important;}
/* Video play icon smaller on mobile */
.bx-play-circle{width:44px;height:44px;border-radius:10px;}
.bx-play-circle svg{width:16px;height:16px;}
.bx-video-box-wrap{border-radius:var(--r-lg);}
.sp{padding:60px 0;}
.container{padding:0 20px;}
}
@media(max-width:768px){
.sp{padding:48px 0;}.container{padding:0 16px;}
.btn-p{padding:12px 22px;font-size:14px;}
h1,.h1{font-size:clamp(26px,7.5vw,44px);}
h2,.h2{font-size:clamp(22px,5.5vw,36px);}
.eyebrow{white-space:normal;word-break:break-word;text-align:center;max-width:100%;}
/* Hero stats — scrollable single row, left-aligned */
.bx-stats-row{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:10px;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.bx-stats-row::-webkit-scrollbar{display:none;}
.bx-stats-row-center{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;}
.stat-chip{min-width:80px;flex:0 0 auto;padding:12px 14px;}
.stat-num{font-size:clamp(20px,5.5vw,28px);white-space:nowrap;}
/* Hero text */
.bx-hero-sub,.bx-hero-sub-white{font-size:15px;margin-bottom:20px;}
.bx-hero-headline{margin-bottom:10px;}
.bx-cta-row,.bx-cta-row-center{gap:10px;margin-bottom:24px;flex-wrap:wrap;align-items:center;}
.bx-page-hero{min-height:28svh;padding-bottom:32px;}
/* Services */
.bx-svc-magazine{grid-template-columns:1fr;}
.bx-svc-magazine>div:first-child{order:1;}
.bx-svc-magazine .bx-svc-magazine-cards{order:2;}
.bx-svc-numbered-row{grid-template-columns:36px 1fr;gap:10px;padding:14px 0;}
.bx-svc-num{font-size:32px;}.bx-svc-thumb{display:none;}.bx-svc-price{display:none;}
.bx-grid3{grid-template-columns:1fr;overflow-x:hidden;width:100%;}
.bx-grid4{grid-template-columns:1fr 1fr;overflow-x:hidden;width:100%;}
.svc-card{padding:20px;}
.svc-card-img{height:160px;margin:-20px -20px 16px;}
/* About */
.bx-about-img-wrap{margin-bottom:20px;}
.bx-about-stat-row-wrap{justify-content:center;gap:6px;}
.stat-chip.bx-about-stat-compact{padding:12px 14px;}
/* Contact */
.bx-contact-col-flex{gap:10px;}
.contact-box{padding:12px;align-items:center;gap:10px;}
.contact-icon{width:38px;height:38px;font-size:16px;flex-shrink:0;}
.bx-contact-info{min-width:0;flex:1;}
.bx-contact-val{font-size:13px;word-break:break-word;overflow-wrap:anywhere;}
.bx-contact-label{font-size:11px;}
.bx-form{gap:12px;}.form-input{padding:12px 14px;font-size:14px;}
/* Footer */
.glow-footer{padding-top:40px;}
.bx-footer-bottom-bar{flex-direction:column;gap:6px;text-align:center;font-size:12px;}
.bx-footer-tagline-p{font-size:13px;text-align:center;}
.bx-footer-col-sm-title{text-align:center;}
.bx-footer-socials-row{gap:8px;margin-bottom:16px;justify-content:center;}
/* FAQ */
.bx-faq-item .faq-trigger{padding:14px 0 10px;}
.bx-faq-item .bx-faq-answer{padding-bottom:16px;}
/* Business contact CTA stack */
.bx-biz-contact-cta-stack{margin-top:4px;}
}
/* ── Business contact section (index.html CTA strip) ── */
.bx-biz-contact-info-row{display:flex;flex-direction:column;gap:10px;margin-top:16px;}
.bx-biz-contact-item{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--mc);}
.bx-biz-contact-item i{color:var(--primary-color);font-size:16px;margin-top:2px;flex-shrink:0;}
.bx-biz-contact-item span{word-break:break-word;line-height:1.5;}
.bx-biz-contact-cta-stack{display:flex;flex-direction:column;gap:12px;}
.bx-biz-cta-btn{width:100%;justify-content:center;gap:8px;}
@media(max-width:767px){.bx-biz-contact-cta-stack{margin-top:8px;}}
/* ── Business multi-page layout utilities ── */
.bx-page-hero{min-height:40svh;position:relative;display:flex;align-items:flex-end;padding-bottom:60px;overflow:hidden;}
.bx-page-hero-content{position:relative;z-index:2;}
.bx-page-hero .bx-cover-img{object-position:center 40%;}
.bx-duration-chip{font-size:11px;letter-spacing:1px;padding:5px 10px;background:rgba(var(--primary-rgb),.1);color:var(--primary-color);border-radius:4px;font-weight:600;}
/* ── Layout utilities ── */
.bx-hero-fullbleed{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding-top:96px;padding-bottom:72px;overflow:visible;}
.bx-hero-fullbleed-center{min-height:100svh;position:relative;display:flex;align-items:center;padding-top:96px;padding-bottom:0;overflow:visible;}
.bx-hero-fullbleed-right{min-height:100svh;position:relative;display:flex;align-items:center;padding-top:96px;overflow:visible;}
.bx-hero-half{min-height:100svh;display:flex;align-items:stretch;overflow:visible;position:relative;}
.bx-hero-video{min-height:100svh;position:relative;display:flex;align-items:center;padding-top:96px;overflow:visible;}
.bx-hero-vnav{min-height:100svh;display:grid;grid-template-columns:80px 1fr;overflow:hidden;}
.bx-hero-default{min-height:100svh;display:flex;align-items:center;padding:120px 0 72px;position:relative;overflow:visible;}
/* Clip only the background image layer, not the content */
.bx-hero-fullbleed .bx-cover-img,.bx-hero-fullbleed-center .bx-cover-img,.bx-hero-fullbleed-right .bx-cover-img,.bx-hero-video .bx-video-hero-bg{clip-path:inset(0);}
.bx-cover-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.bx-overlay-grad-top{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.25) 50%,transparent 100%);z-index:1;}
.bx-overlay-grad-left{position:absolute;inset:0;background:linear-gradient(to left,rgba(0,0,0,.85) 0%,rgba(0,0,0,.4) 55%,transparent 100%);z-index:1;}
.bx-overlay-grad-dark{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 50%,transparent 100%);}
.bx-z2{position:relative;z-index:2;}
.bx-z1{position:relative;z-index:1;}
.bx-text-center-wrap{max-width:720px;margin:0 auto;text-align:center;padding:72px 0;}
.bx-text-right-wrap{max-width:560px;}
.bx-text-left-wrap{max-width:700px;}
.bx-hero-text-white{color:#fff;}
.bx-hero-sub-white{font-size:clamp(16px,1.6vw,19px);color:rgba(255,255,255,.82);margin-bottom:32px;}
.bx-hero-sub{font-size:clamp(15px,1.4vw,17px);color:var(--mc);margin-bottom:32px;max-width:520px;}
.bx-hero-headline{margin-bottom:16px;}
.bx-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;}
.bx-cta-row-center{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;justify-content:center;}
.bx-btn-ghost{background:rgba(255,255,255,.15);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.3);}
.bx-btn-wa{background:rgba(37,211,102,.15);color:#25D366;border:1px solid rgba(37,211,102,.35);display:inline-flex;align-items:center;justify-content:center;gap:8px;}
.bx-btn-wa:hover{background:rgba(37,211,102,.25);color:#1aad52;border-color:rgba(37,211,102,.55);transform:translateY(-2px);}
.bx-stats-row{display:flex;flex-wrap:wrap;gap:12px;}
.bx-stats-row-center{display:flex;justify-content:center;}
.bx-eyebrow-mb{margin-bottom:20px;display:inline-flex;}
.bx-eyebrow-mb-sm{margin-bottom:16px;display:inline-flex;}
/* Half-img hero */
.bx-half-grid{display:grid;grid-template-columns:55fr 45fr;width:100%;min-height:100svh;}
.bx-half-content{display:flex;flex-direction:column;justify-content:center;padding:120px 40px 72px;padding-left:max(40px,calc((100vw - 1200px)/2 + 40px));position:relative;z-index:1;}
.bx-half-img{position:relative;overflow:hidden;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);}
.bx-half-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
/* Floating badge */
.bx-badge-inner{width:38px;height:38px;border-radius:10px;background:var(--primary-color);display:flex;align-items:center;justify-content:center;color:var(--secondary-color);font-size:18px;}
.bx-badge-rating{font-size:13px;font-weight:700;color:var(--text-color);}
.bx-badge-reviews{font-size:11px;color:var(--mc);}
/* Video hero */
.bx-video-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.bx-video-box{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:16/9;cursor:pointer;}
.bx-video-box img{width:100%;height:100%;object-fit:cover;}
.bx-video-overlay{position:absolute;inset:0;background:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;}
.bx-play-btn{width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;transition:transform .2s;}
.bx-play-btn:hover{transform:scale(1.1);}
.bx-video-label{position:absolute;bottom:16px;left:16px;font-size:13px;color:rgba(255,255,255,.8);font-weight:500;}
/* Vertical-nav hero */
.bx-vnav-sidebar{background:var(--primary-color);display:flex;flex-direction:column;align-items:center;padding:32px 0;gap:0;position:relative;z-index:10;}
.bx-vnav-brand{font-family:var(--heading-font);font-size:11px;font-weight:600;color:rgba(var(--overlay-light),.9);writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.12em;text-transform:uppercase;margin-bottom:auto;}
.bx-vnav-split{position:relative;display:grid;grid-template-columns:1fr 1fr;}
.bx-vnav-content{display:flex;flex-direction:column;justify-content:center;padding:80px 48px;background:var(--section-color);position:relative;z-index:2;}
.bx-vnav-img{position:relative;overflow:hidden;}
.bx-vnav-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.bx-vnav-h1{margin-bottom:16px;font-size:clamp(36px,4.5vw,64px);}
.bx-vnav-p{font-size:16px;color:var(--mc);margin-bottom:28px;max-width:380px;}
.bx-vnav-blob{width:200px;height:200px;}
/* Nav layouts */
.bx-nav-center{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;}
.bx-nav-center .nav-links{justify-self:start;}
.bx-nav-center-cta{justify-self:end;}
.bx-nav-flex{display:flex;justify-content:space-between;align-items:center;}
.bx-nav-right-group{display:flex;align-items:center;gap:20px;}
.bx-nav-divider{width:1px;height:20px;background:rgba(var(--primary-rgb),.2);}
.bx-nav-btn{padding:11px 24px;font-size:14px;}
/* Services */
/* Section header spacing — override Bootstrap mb-5 (3rem) to a tighter value */
.sp .row.mb-5,.sp .mb-5.reveal,.sp .mb-5.reveal.revealed,.sp div.mb-5{margin-bottom:2rem !important;}
.bx-svc-intro-p{color:var(--mc);margin-top:10px;max-width:560px;margin-left:auto;margin-right:auto;}
.bx-svc-numbered{max-width:860px;margin:0 auto;}
.bx-svc-numbered-row{display:grid;grid-template-columns:64px 80px 1fr auto;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid rgba(var(--primary-rgb),.12);}
.bx-svc-num{font-family:var(--heading-font);font-size:52px;color:rgba(var(--primary-rgb),.2);line-height:1;font-style:italic;}
.bx-svc-thumb{width:72px;height:72px;border-radius:12px;overflow:hidden;}
.bx-svc-thumb img{width:100%;height:100%;}
.bx-svc-name-mb{margin-bottom:4px;}
.bx-svc-desc{font-size:14px;color:var(--mc);}
.bx-svc-price{text-align:right;}
.bx-svc-price-val{font-family:var(--heading-font);font-size:24px;color:var(--primary-color);}
.bx-svc-magazine{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;}
.bx-svc-magazine-img{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/5;}
.bx-svc-magazine-img img{width:100%;height:100%;object-fit:cover;}
.bx-svc-magazine-cards{display:flex;flex-direction:column;gap:24px;}
.bx-svc-mag-card{padding:20px;border-radius:var(--r-md);border:1px solid rgba(var(--primary-rgb),.1);background:rgba(var(--primary-rgb),.03);}
.bx-svc-mag-card h4{margin-bottom:8px;}
.bx-svc-masonry{columns:3;gap:20px;overflow-x:hidden;}
.bx-svc-masonry-card{break-inside:avoid;margin-bottom:20px;border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(var(--primary-rgb),.1);}
.bx-svc-masonry-img{overflow:hidden;}
.bx-svc-masonry-body{padding:20px;}
.bx-svc-masonry-name{margin-bottom:6px;}
.bx-svc-masonry-desc{font-size:13px;color:var(--mc);margin-bottom:12px;}
.bx-svc-masonry-price{font-size:13px;font-weight:600;color:var(--primary-color);}
.bx-hex-wrapper{max-width:640px;margin:0 auto;gap:8px;}
.bx-hex-img{width:48px;height:48px;border-radius:50%;object-fit:cover;margin:0 auto 10px;}
.bx-hex-name{font-weight:600;font-size:14px;margin-bottom:4px;}
.bx-hex-desc{font-size:12px;color:var(--mc);}
.bx-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.bx-4col-card{text-align:center;padding:24px 16px;border-radius:var(--r-lg);border:1px solid rgba(var(--primary-rgb),.1);}
/* Why Choose Us — values grid */
.bx-values-grid{gap:20px;margin-top:32px;}
.bx-value-card{display:flex;flex-direction:column;align-items:center;padding:32px 20px;background:var(--secondary-color);border-radius:var(--r-lg);border:1px solid rgba(var(--primary-rgb),.1);transition:transform var(--tr),box-shadow var(--tr);}
.bx-value-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(var(--primary-rgb),.12);}
.bx-value-icon{width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,rgba(var(--primary-rgb),.16),rgba(var(--primary-rgb),.06));display:flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:24px;margin-bottom:16px;flex-shrink:0;}
.bx-value-name{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--text-color);}
.bx-value-desc{font-size:13px;color:var(--mc);line-height:1.6;margin:0;}
@media(max-width:768px){.bx-values-grid{grid-template-columns:1fr 1fr;gap:12px;}.bx-value-card{padding:20px 14px;}.bx-value-icon{width:48px;height:48px;font-size:20px;}}
.bx-4col-img{width:100%;height:120px;object-fit:cover;border-radius:var(--r-md);margin-bottom:14px;}
.bx-4col-name{font-size:15px;margin-bottom:6px;}
.bx-4col-desc{font-size:12px;color:var(--mc);margin-bottom:10px;}
.bx-4col-price{font-size:14px;font-weight:600;color:var(--primary-color);}
.bx-overlay-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.bx-overlay-card{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/3;}
.bx-overlay-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.bx-overlay-grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8),rgba(0,0,0,.2));}
.bx-overlay-body{position:absolute;bottom:0;left:0;right:0;padding:24px;}
.bx-overlay-h4{color:#fff;margin-bottom:6px;}
.bx-overlay-desc{font-size:13px;color:rgba(255,255,255,.75);margin-bottom:12px;}
.bx-overlay-price{font-size:13px;font-weight:600;color:var(--primary-color);}
.bx-accordion-wrap{max-width:860px;margin:0 auto;}
.bx-acc-item{border-bottom:1px solid rgba(var(--primary-rgb),.15);}
.bx-acc-btn{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 0;background:none;border:none;cursor:pointer;font-size:16px;font-weight:600;color:var(--text-color);text-align:left;}
.bx-acc-icon{width:28px;height:28px;border-radius:50%;border:1.5px solid rgba(var(--primary-rgb),.35);display:flex;align-items:center;justify-content:center;color:var(--primary-color);transition:transform .3s;font-size:18px;}
.bx-acc-body{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.bx-acc-inner{padding:0 0 20px;}
.bx-acc-grid{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:start;}
.bx-acc-img{width:120px;height:80px;border-radius:var(--r-md);object-fit:cover;}
.bx-acc-desc{font-size:15px;color:var(--mc);margin-bottom:12px;}
.bx-acc-price{font-size:16px;font-weight:600;color:var(--primary-color);}
.bx-carousel{display:flex;gap:20px;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin;scroll-snap-type:x mandatory;}
.bx-carousel-card{min-width:280px;border-radius:var(--r-xl);overflow:hidden;border:1px solid rgba(var(--primary-rgb),.12);flex-shrink:0;scroll-snap-align:start;}
@media(max-width:768px){
.bx-carousel{flex-direction:column;overflow-x:visible;overflow-y:visible;padding-bottom:0;scroll-snap-type:none;gap:16px;}
.bx-carousel-card{min-width:0;width:100%;flex-shrink:1;flex-basis:auto;}
}
.bx-carousel-img{height:180px;overflow:hidden;}
.bx-carousel-img img{width:100%;height:100%;object-fit:cover;}
.bx-carousel-body{padding:20px;}
.bx-carousel-name{margin-bottom:6px;}
.bx-carousel-desc{font-size:13px;color:var(--mc);margin-bottom:12px;}
.bx-carousel-price{font-size:15px;font-weight:600;color:var(--primary-color);}
/* 3-col default */
.bx-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;overflow-x:hidden;width:100%;align-items:start;}
.bx-popular-badge{font-size:11px;padding:2px 10px;border-radius:999px;background:rgba(var(--primary-rgb),.12);color:var(--primary-color);font-weight:600;}
.bx-svc-name-row{display:flex;align-items:center;gap:8px;}
.bx-svc-price-lg{font-family:var(--heading-font);font-size:22px;color:var(--primary-color);}
/* Testimonials */
.bx-test-spotlight-main{padding:48px;}
.bx-test-spotlight-quote{font-size:22px;line-height:1.75;margin-bottom:28px;font-style:italic;}
.bx-test-av-lg{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid rgba(var(--primary-rgb),.3);margin:0 auto 12px;}
.bx-test-av{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.bx-test-av-md{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid rgba(var(--primary-rgb),.3);}
.bx-test-name{font-weight:600;}
.bx-test-role{font-size:13px;color:var(--mc);}
.bx-test-meta{display:flex;align-items:center;gap:12px;margin-top:16px;}
.bx-test-meta-border{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid rgba(var(--primary-rgb),.1);}
.bx-test-stars{display:flex;gap:4px;margin-bottom:16px;color:var(--primary-color);}
.bx-test-text{font-size:15px;line-height:1.75;font-style:italic;margin-bottom:20px;}
.bx-test-text-sm{font-size:14px;font-style:italic;margin-bottom:12px;}
.bx-test-name-sm{font-size:14px;font-weight:600;}
.bx-test-role-sm{font-size:12px;color:var(--mc);}
.bx-test-author-inline{font-size:13px;font-weight:600;}
.bx-mag-quote-mark{font-size:clamp(48px,6vw,80px);color:var(--primary-color);font-family:var(--promo-font,var(--heading-font));line-height:.8;margin-bottom:16px;}
.bx-mag-quote-text{font-family:var(--promo-font,var(--heading-font));font-size:clamp(18px,2vw,26px);font-style:italic;line-height:1.6;margin-bottom:28px;}
.bx-mag-quote-author{display:flex;align-items:center;gap:12px;}
.bx-mag-quote-name{font-weight:700;}
.bx-mag-aside{display:flex;flex-direction:column;gap:20px;}
.bx-mag-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
/* About */
.bx-about-img-wrap{aspect-ratio:1/1;overflow:hidden;position:relative;z-index:1;}
.bx-about-img-wrap img{width:100%;height:100%;object-fit:cover;}
/* Ensure about text col sits above image in all layout variants */
.bx-about-img-wrap~.reveal,.bx-about-img-wrap~div{position:relative;z-index:2;}
/* Prevent image and content from overlapping in grid layouts */
.row.align-items-center.g-5>[class*="col-lg-6"]{overflow:visible;position:relative;}
/* Center-align the stat row and founder info in about section */
.text-center .bx-about-stat-row-wrap{justify-content:center;}
.text-center .bx-about-eyebrow-mb,.text-center .bx-about-eyebrow-mb+h2{display:inline-flex;}
.bx-about-eyebrow-mb{margin-bottom:16px;display:inline-flex;}
.bx-about-stat-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px;}
.bx-about-stat{padding:14px 20px;}
.bx-about-stat-num{font-size:28px;}
.bx-about-founder-title{font-size:13px;color:var(--mc);font-weight:600;text-transform:uppercase;letter-spacing:.07em;}
/* Special sections */
.bx-stats-band{background:var(--primary-color);padding:52px 0;}
.bx-stats-band-num{font-family:var(--heading-font);font-size:clamp(36px,4vw,60px);color:#fff;line-height:1;}
.bx-stats-band-label{font-size:12px;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:.08em;margin-top:6px;}
.bx-gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:12px;}
.bx-gallery-cell{border-radius:var(--r-lg);overflow:hidden;}
.bx-gallery-cell img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.bx-gallery-cell img:hover{transform:scale(1.06);}
.bx-gallery-span2{grid-row:span 2;}
/* Gallery 2 (3-col grid) image cell — fixed height, no inline styles needed in builder */
.bx-gallery-img-cell{border-radius:12px;overflow:hidden;height:240px;}
.bx-gallery-img-cell img{width:100%;height:100%;object-fit:cover;}
/* Gallery 3 (2-col masonry) variable-height cells */
.bx-gallery-col-cell{border-radius:12px;overflow:hidden;margin-bottom:12px;}
.bx-gallery-col-cell img{width:100%;height:100%;object-fit:cover;display:block;}
.bx-gallery-col-cell.h-tall{height:320px;}
.bx-gallery-col-cell.h-mid{height:260px;}
.bx-gallery-col-cell.h-short{height:220px;}
.bx-process-num{width:68px;height:68px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;font-family:var(--heading-font);font-size:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.bx-process-title{margin-bottom:8px;}
.bx-process-desc{font-size:14px;color:var(--mc);}
.bx-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.bx-pricing-card{padding:40px;border-radius:var(--r-xl);text-align:center;}
.bx-pricing-card-base{background:rgba(255,255,255,.95);border:1px solid rgba(var(--primary-rgb),.14);}
.bx-pricing-card-dark{background:rgba(255,255,255,.04);border:1px solid rgba(var(--primary-rgb),.14);}
.bx-pricing-card-featured{border:2px solid var(--primary-color);box-shadow:0 28px 60px rgba(var(--primary-rgb),.35);transform:scale(1.05);}
.bx-pricing-tier{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--mc);margin-bottom:14px;}
.bx-pricing-tier-light{color:rgba(255,255,255,.7);}
.bx-pricing-price{font-family:var(--heading-font);font-size:clamp(42px,4.5vw,56px);color:var(--primary-color);line-height:1;margin-bottom:8px;}
.bx-pricing-price-white{color:#fff;}
.bx-pricing-name{margin-bottom:28px;}
.bx-pricing-name-white{color:#fff;margin-bottom:28px;}
.bx-pricing-btn-ghost{background:rgba(255,255,255,.2);color:#fff;display:block;justify-content:center;}
.bx-pricing-btn{background:var(--primary-color);color:#fff;display:block;justify-content:center;}
.bx-team-card{text-align:center;padding:36px;background:rgba(255,255,255,.04);border-radius:var(--r-xl);border:1px solid rgba(var(--primary-rgb),.12);transition:all var(--tr);}
.bx-team-card-light{background:rgba(255,255,255,.9);}
.bx-team-card:hover{transform:translateY(-6px);box-shadow:0 20px 48px rgba(0,0,0,.1);}
.bx-team-av{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid rgba(var(--primary-rgb),.3);margin-bottom:16px;}
.bx-team-role{font-size:14px;color:var(--mc);}
/* Contact */
.bx-contact-grid{display:flex;flex-direction:column;gap:12px;}
.bx-contact-label{font-weight:600;color:var(--mc);}
.bx-contact-val{font-size:14px;}
.bx-form{display:flex;flex-direction:column;gap:14px;}
.bx-form-submit{justify-content:center;font-size:16px;padding:16px;}
.bx-send-icon{margin-right:6px;}
.bx-label{font-size:12px;color:var(--mc);display:block;margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em;}
/* Footer */
.bx-footer-large-grid{display:grid;}
.bx-footer-tagline{font-size:14px;line-height:1.8;max-width:280px;color:rgba(255,255,255,.5);margin-bottom:20px;}
.bx-footer-socials{display:flex;gap:10px;}
.bx-footer-socials-center{display:flex;justify-content:center;gap:10px;margin-bottom:28px;}
.bx-footer-col-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--primary-color);margin-bottom:14px;}
.bx-footer-link{font-size:14px;margin-bottom:8px;}
.bx-footer-link a{color:rgba(255,255,255,.5);}
.bx-footer-link a:hover{color:var(--primary-color);}
.bx-footer-social-icon{width:38px;height:38px;border-radius:50%;background:rgba(var(--primary-rgb),.1);border:1px solid rgba(var(--primary-rgb),.2);display:inline-flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:16px;}
.bx-footer-social-icon:hover{background:var(--primary-color);color:#fff;}
.bx-footer-addr{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:6px;}
.bx-footer-phone{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:16px;}
.bx-footer-cta-band{padding:60px 0;text-align:center;}
.bx-footer-ready{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--primary-color);margin-bottom:12px;}
.bx-footer-cta-h2{font-family:var(--heading-font);font-size:clamp(32px,4vw,52px);color:#fff;margin-bottom:24px;}
.bx-footer-cta-btn{font-size:16px;padding:18px 40px;}
.bx-footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding:20px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.bx-footer-copy{font-size:13px;}
.bx-footer-copy a{color:var(--primary-color);font-weight:600;}
.bx-footer-cta-top{margin-top:48px;padding-top:32px;border-top:1px solid rgba(255,255,255,.06);}
.bx-footer-small{text-align:center;}
.bx-footer-small-center .bx-footer-col-sm-title,.bx-footer-small-center .bx-footer-tagline-p{text-align:center;}
.bx-footer-copy-wrap p,.bx-footer-copy-wrap{text-align:center;}
.bx-footer-small-pad{padding:60px 24px 40px;}
/* Section headers */
.bx-section-header{margin-bottom:16px;display:inline-flex;}
.bx-contact-find-val{font-size:14px;}
/* Hours */
.bx-hours-item{font-size:13px;margin-bottom:3px;}
/* BigText background */
.bx-bg-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--heading-font);font-size:clamp(180px,25vw,320px);font-weight:400;color:rgba(var(--primary-rgb),.04);white-space:nowrap;pointer-events:none;line-height:1;}
/* Animation delay helpers (0-indexed, for service/team card stagger) */
.bx-delay-0{animation-delay:0s;}
.bx-delay-1{animation-delay:.08s;}
.bx-delay-2{animation-delay:.16s;}
.bx-delay-3{animation-delay:.24s;}
/* Pricing card delay helpers */
.bx-p-delay-0{animation-delay:0s;}
.bx-p-delay-1{animation-delay:.1s;}
.bx-p-delay-2{animation-delay:.2s;}
/* ── Responsive: mobile layout tweaks ── */
@media(max-width:768px){.bx-half-grid{grid-template-columns:1fr;}.bx-video-grid{grid-template-columns:1fr;}.bx-mag-grid{grid-template-columns:1fr;}.bx-overlay-grid{grid-template-columns:1fr;}.bx-grid3{grid-template-columns:1fr;}.bx-grid4{grid-template-columns:repeat(2,1fr);}.bx-svc-numbered-row{grid-template-columns:40px 1fr;}.bx-svc-masonry{columns:1;}.bx-pricing-grid{grid-template-columns:1fr;}.bx-pricing-card-featured{transform:none;}}
@media(max-width:640px){
.bx-vnav-sidebar{display:none;}.bx-hero-vnav{grid-template-columns:1fr;}.bx-vnav-split{grid-template-columns:1fr;}
.bx-4col-card .bx-4col-img{height:140px;}
.bx-text-center-wrap{padding:0;}
.bx-text-left-wrap,.bx-text-right-wrap{padding:0;}
.bx-half-content{padding:90px 16px 48px;}
.bx-half-img{min-height:240px;clip-path:none;}
.bx-hero-default{padding:90px 0 48px;}
.bx-hero-fullbleed{padding-top:80px;padding-bottom:48px;}
.bx-hero-fullbleed-center .bx-text-center-wrap{padding:48px 0;}
.glow-nav{padding:12px 0;}
.bx-nav-cta{padding:8px 16px;font-size:13px;}
.bx-about-circle-wrap{width:160px;height:160px;}
.bx-gallery-grid{grid-template-columns:1fr;}.bx-gallery-span2{grid-row:auto;}
/* Ensure grid cols don't overflow on very small screens */
.row.g-5,[class*="col-lg-"],[class*="col-md-"]{word-break:break-word;}
/* Svc card full width on small phones */
.bx-grid4{grid-template-columns:1fr;}
}
/* ── Additional utility classes (replaces all inline styles) ── */
/* Nav CTA button compact */
.bx-nav-cta{padding:11px 24px;font-size:14px;}
/* Hero overlays */
.bx-overlay-rgb-tint{position:absolute;inset:0;background:linear-gradient(135deg,rgba(var(--primary-rgb),.35),transparent 60%);}
.bx-hero-img-left{object-position:left center;}
/* Hero: video variant */
.bx-video-hero{min-height:100svh;position:relative;display:flex;align-items:center;overflow:hidden;padding-top:96px;padding-bottom:72px;}
.bx-video-hero-bg{position:absolute;inset:0;overflow:hidden;}
.bx-video-hero-z2{position:relative;z-index:2;width:100%;}
.bx-video-hero-img{width:100%;height:100%;object-fit:cover;}
.bx-video-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 50%,rgba(var(--primary-rgb),.15) 100%);}
.bx-video-hero-z2{position:relative;z-index:2;}
.bx-video-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
@media(max-width:768px){
.bx-video-hero-grid{grid-template-columns:1fr;gap:32px;}
.bx-video-box-wrap{display:none;}
.bx-video-hero{padding-top:80px;padding-bottom:48px;}
}
.bx-video-eyebrow{margin-bottom:20px;display:inline-flex;background:rgba(255,255,255,.15);color:#fff;}
.bx-video-h1{color:#fff;margin-bottom:16px;}
.bx-video-sub{font-size:clamp(16px,1.8vw,20px);color:rgba(255,255,255,.82);margin-bottom:32px;}
.bx-video-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px;}
.bx-video-box-wrap{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:16/9;cursor:pointer;}
.bx-video-box-wrap img{width:100%;height:100%;object-fit:cover;}
.bx-video-darken{position:absolute;inset:0;background:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;}
.bx-play-circle{width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;transition:transform .2s;}
.bx-play-circle:hover{transform:scale(1.1);}
.bx-video-watch-label{position:absolute;bottom:16px;left:16px;font-size:13px;color:rgba(255,255,255,.8);font-weight:500;}
/* Hero: vertical-nav variant */
.bx-vnav-img-pane{position:relative;overflow:hidden;}
.bx-vnav-img-pane img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.bx-vnav-badge-inner{width:38px;height:38px;border-radius:10px;background:var(--primary-color);display:flex;align-items:center;justify-content:center;color:var(--secondary-color);font-size:18px;}
.bx-vnav-badge-rating{font-size:13px;font-weight:700;color:var(--text-color);}
.bx-vnav-badge-reviews{font-size:11px;color:var(--mc);}
/* Hero: floating badge positioning */
.bx-badge-pos-bottom-left{bottom:60px;left:-10px;}
.bx-badge-pos-vnav{bottom:40px;left:20px;}
/* Default hero */
.bx-hero-container-narrow{max-width:980px;}
/* Masonry image height helpers */
.bx-masonry-h200{height:200px;}
.bx-masonry-h260{height:260px;}
.bx-masonry-h180{height:180px;}
.bx-masonry-h240{height:240px;}
/* Animation delay as data-attribute fallback (used via inline for dynamic values) */
/* Testimonials */
.bx-test-spotlight-card{padding:48px;}
.bx-test-spotlight-quote-text{font-size:22px;line-height:1.75;margin-bottom:28px;font-style:italic;}
.bx-test-spotlight-mini{padding:20px;}
.bx-test-stars-row{display:flex;gap:4px;margin-bottom:16px;color:var(--primary-color);}
.bx-test-cards-meta{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid rgba(var(--primary-rgb),.1);}
.bx-test-inline-author{font-size:13px;font-weight:600;}
.bx-test-mc-span{color:var(--mc);font-weight:400;}
/* About section */
/* Section row gap overrides — Bootstrap g-5 (3rem) is too wide */
.sp .row.g-5{--bs-gutter-x:2.5rem;--bs-gutter-y:2.5rem;}
.bx-about-body-text{font-size:16px;line-height:1.8;}
.bx-about-stat-row-wrap{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px;}
.bx-about-stat-compact{padding:14px 20px;}
.bx-about-stat-num-sm{font-size:28px;}
.bx-about-founder-mb{margin-bottom:4px;}
.bx-about-founder-role{font-size:13px;color:var(--mc);font-weight:600;text-transform:uppercase;letter-spacing:.07em;}
/* Stats strip */
.bx-stats-num-lg{font-family:var(--heading-font);font-size:clamp(36px,4vw,60px);color:#fff;line-height:1;}
.bx-stats-label-sm{font-size:12px;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:.08em;margin-top:6px;}
/* About section — additional layout/shape classes */
.img-circle{border-radius:50%;}
.img-hexagon{clip-path:polygon(50% 0%,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);}
.img-diamond{clip-path:polygon(50% 0%,100% 50%,50% 100%,0 50%);}
.bx-about-fullbleed{min-height:60svh;position:relative;display:flex;align-items:center;padding:80px 0;overflow:hidden;}
.bx-about-fullbleed .bx-about-h2{color:#fff;}
.bx-about-fullbleed .bx-about-p{color:rgba(255,255,255,.8);}
.bx-about-tinted{position:relative;min-height:60svh;display:flex;align-items:center;padding:80px 0;overflow:hidden;}
.bx-about-tinted-bg{position:absolute;inset:0;}
.bx-about-tinted-overlay{position:absolute;inset:0;}
.bx-about-tinted .bx-about-h2{color:#fff;}
.bx-about-tinted .bx-about-p{color:rgba(255,255,255,.88);}
.bx-about-tinted .eyebrow{color:#fff;background:rgba(255,255,255,.2);}
.bx-about-stacked-img{max-height:420px;}
.bx-about-fullstretch{height:100%;min-height:400px;}
.bx-about-circle-wrap{width:220px;height:220px;border-radius:50%;overflow:hidden;margin-left:auto;margin-right:auto;}
.bx-about-circle-wrap img{width:100%;height:100%;object-fit:cover;}
.bx-about-arch{border-radius:200px 200px 40px 40px;}
/* Section eyebrow with margin */
.bx-eyebrow-section{margin-bottom:16px;display:inline-flex;}
/* Special: process steps delays */
.bx-d-1{animation-delay:.1s;}
.bx-d-2{animation-delay:.2s;}
.bx-d-3{animation-delay:.3s;}
/* Team cards */
.bx-team-card-wrap{text-align:center;padding:36px;border-radius:var(--r-xl);border:1px solid rgba(var(--primary-rgb),.12);transition:all var(--tr);}
.bx-team-card-wrap:hover{transform:translateY(-6px);box-shadow:0 20px 48px rgba(0,0,0,.1);}
@media(max-width:600px){.bx-team-card-wrap{padding:24px 16px;}.bx-team-av-lg{width:72px;height:72px;margin-bottom:10px;}}
.bx-team-av-lg{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid rgba(var(--primary-rgb),.3);margin-bottom:16px;}
.bx-team-name-mb{margin-bottom:4px;}
.bx-team-role-sm{font-size:14px;color:var(--mc);}
.bx-team-delay-1{animation-delay:.1s;}
.bx-team-delay-2{animation-delay:.2s;}
/* FAQ */
/* faq-answer styling is set in the core block above */
/* Hours */
.bx-hours-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:2px 0;font-size:13px;}
.bx-hours-day{color:var(--text-color);font-weight:500;}
.bx-hours-time{color:var(--mc);white-space:nowrap;}
.bx-hours-label{font-weight:600;color:var(--mc);margin-bottom:6px;}
/* Contact */
.bx-contact-col-flex{display:flex;flex-direction:column;gap:12px;}
.bx-wa-link{color:inherit;}
.bx-wa-icon{background:var(--whatsapp-color);}
.bx-form-submit-btn{justify-content:center;font-size:16px;padding:16px;}
.bx-send-icon-mr{margin-right:6px;}
/* Footer */
.bx-footer-link-item{font-size:14px;margin-bottom:8px;}
.bx-footer-link-item a{color:rgba(255,255,255,.5);}
.bx-footer-link-item a:hover{color:var(--primary-color);}
.bx-footer-social-btn{width:38px;height:38px;border-radius:50%;background:rgba(var(--primary-rgb),.1);border:1px solid rgba(var(--primary-rgb),.2);display:inline-flex;align-items:center;justify-content:center;color:var(--primary-color);font-size:16px;}
.bx-footer-social-btn:hover{background:var(--primary-color);color:#fff;}
.bx-footer-copy-wrap{font-size:13px;}
.bx-footer-copy-link{color:var(--primary-color);font-weight:600;}
.bx-footer-tagline-p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.5);margin:0 auto 20px;text-align:center;}
.bx-footer-socials-row{display:flex;gap:10px;}
.bx-footer-bottom-bar{border-top:1px solid rgba(255,255,255,.06);padding:20px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
.bx-footer-col-sm-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--primary-color);margin-bottom:14px;}
.bx-footer-addr-sm{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:6px;}
.bx-footer-phone-sm{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:16px;}
.bx-footer-cta-band-container{padding:60px 0;text-align:center;}
.bx-footer-cta-ready{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--primary-color);margin-bottom:12px;}
.bx-footer-cta-h2{font-family:var(--heading-font);font-size:clamp(32px,4vw,52px);color:#fff;margin-bottom:24px;}
.bx-footer-cta-btn-lg{font-size:16px;padding:18px 40px;}
.bx-footer-cta-bottom{margin-top:48px;padding-top:32px;border-top:1px solid rgba(255,255,255,.06);}
.bx-footer-small-center{text-align:center;}
.bx-footer-small-pad{padding:60px 24px 40px;}
.bx-footer-socials-center-row{display:flex;justify-content:center;gap:10px;margin-bottom:28px;}
.bx-footer-inline-link{display:inline-flex;padding:10px 20px;font-size:13px;}
/* Pricing card dynamic backgrounds are set via CSS vars per-card; wrapper uses fixed classes */
.bx-pricing-card-inner{padding:40px;border-radius:var(--r-xl);text-align:center;}
.bx-pricing-tier-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;}
.bx-pricing-price-display{font-family:var(--heading-font);font-size:clamp(42px,4.5vw,56px);line-height:1;margin-bottom:8px;}
.bx-pricing-name-mb{margin-bottom:28px;}
.bx-pricing-btn-block{display:block;justify-content:center;}
/* Layout partials */
.bx-partial-hero-diag{min-height:100svh;display:grid;grid-template-columns:55fr 45fr;overflow:hidden;}
.bx-partial-hero-diag-content{display:flex;flex-direction:column;justify-content:center;padding:140px 40px 80px;position:relative;z-index:1;}
.bx-partial-hero-eyebrow{margin-bottom:20px;display:inline-flex;}
.bx-partial-h1-mb{margin-bottom:16px;}
.bx-partial-sub{color:var(--mc);margin-bottom:32px;max-width:440px;}
.bx-partial-cta-row{display:flex;gap:12px;}
.bx-partial-img-pane{position:relative;overflow:hidden;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);}
.bx-partial-img-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.bx-partial-badge-icon{width:38px;height:38px;border-radius:10px;background:var(--primary-color);display:flex;align-items:center;justify-content:center;color:#fff;}
.bx-partial-badge-rating{font-size:13px;font-weight:700;}
.bx-partial-badge-reviews{font-size:11px;color:#888;}
.bx-partial-fullbleed{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding-bottom:80px;overflow:hidden;}
.bx-partial-fb-overlay1{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.2) 50%,transparent 100%);z-index:1;}
.bx-partial-fb-container{position:relative;z-index:2;}
.bx-partial-fb-wrap{max-width:700px;}
.bx-partial-fb-eyebrow{margin-bottom:20px;display:inline-flex;}
.bx-partial-fb-h1{color:#fff;margin-bottom:16px;}
.bx-partial-fb-sub{font-size:clamp(16px,1.8vw,20px);color:rgba(255,255,255,.82);margin-bottom:32px;max-width:520px;}
.bx-partial-fb-cta-row{display:flex;flex-wrap:wrap;gap:12px;}
.bx-partial-ghost-btn{background:rgba(255,255,255,.15);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.3);}
.bx-partial-mag{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:140px 0 80px;position:relative;overflow:hidden;}
.bx-partial-mag-bg-wrap{position:absolute;inset:0;}
.bx-partial-mag-bg-img{width:100%;height:100%;object-fit:cover;opacity:.18;}
.bx-partial-mag-overlay{position:absolute;inset:0;background:rgba(255,255,255,.75);backdrop-filter:blur(2px);}
.bx-partial-mag-z{position:relative;z-index:1;max-width:860px;}
.bx-partial-mag-eyebrow{margin-bottom:24px;display:inline-flex;}
.bx-partial-mag-h1{margin-bottom:20px;font-size:clamp(52px,7vw,100px);}
.bx-partial-mag-sub{font-size:clamp(17px,1.8vw,22px);color:var(--mc);margin-bottom:36px;max-width:540px;margin-left:auto;margin-right:auto;}
.bx-partial-mag-cta-row{display:flex;gap:12px;justify-content:center;}
.bx-partial-svc-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.bx-partial-svc-desc{color:var(--mc);font-size:14px;}
.bx-partial-numbered-wrap{max-width:860px;margin:0 auto;}
.bx-partial-numbered-row{display:grid;grid-template-columns:64px 80px 1fr auto;align-items:center;gap:20px;padding:20px 0;}
.bx-partial-num-label{font-family:var(--heading-font);font-size:52px;color:rgba(var(--primary-rgb),.2);font-style:italic;}
.bx-partial-thumb{width:72px;height:72px;border-radius:12px;overflow:hidden;}
.bx-partial-price-right{text-align:right;font-family:var(--heading-font);font-size:24px;color:var(--primary-color);}
.bx-partial-mag-svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;}
.bx-partial-mag-feat-img{border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/5;}
.bx-partial-mag-feat-img img{width:100%;height:100%;object-fit:cover;}
.bx-partial-mag-cards{display:flex;flex-direction:column;gap:20px;}
.bx-partial-mag-card{padding:20px;border-radius:var(--r-md);}
.bx-partial-about-wrap{aspect-ratio:1/1;overflow:hidden;}
.bx-partial-about-img{width:100%;height:100%;object-fit:cover;}
.bx-partial-about-eyebrow{margin-bottom:16px;display:inline-flex;}
.bx-partial-about-body{color:var(--mc);line-height:1.85;}
.bx-partial-contact-flex{display:flex;flex-direction:column;gap:12px;}
.bx-partial-contact-eyebrow{margin-bottom:16px;display:inline-flex;}
.bx-partial-contact-addr{font-size:14px;}
.bx-partial-form-flex{display:flex;flex-direction:column;gap:14px;}
.bx-partial-form-submit{justify-content:center;}
.bx-partial-footer-tagline{font-size:14px;color:rgba(255,255,255,.5);max-width:280px;}
.bx-partial-footer-col-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--primary-color);margin-bottom:14px;}
.bx-partial-footer-addr{font-size:14px;color:rgba(255,255,255,.5);margin-bottom:6px;}
.bx-partial-footer-phone{font-size:14px;color:rgba(255,255,255,.5);}
.bx-partial-footer-copy{border-top:1px solid rgba(255,255,255,.06);padding:20px 0;font-size:13px;color:rgba(255,255,255,.4);}
.bx-partial-fallback-p{text-align:center;color:var(--mc);}
/* Spotlight testimonials */
.bx-test-spotlight-name{font-weight:600;}
.bx-test-spotlight-role{font-size:13px;color:var(--mc);}
.bx-test-spotlight-av{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid rgba(var(--primary-rgb),.3);margin:0 auto 12px;}
/* Cards-3col testimonials */
.bx-test3-text{font-size:15px;line-height:1.75;font-style:italic;margin-bottom:20px;}
.bx-test3-name{font-weight:600;font-size:14px;}
.bx-test3-role{font-size:12px;color:var(--mc);}
.bx-test3-av{width:44px;height:44px;border-radius:50%;object-fit:cover;}
/* Magazine quote test */
.bx-magq-aside-card{padding:20px;}
.bx-magq-text{font-size:14px;font-style:italic;margin-bottom:12px;}
.bx-magq-author{font-size:13px;font-weight:600;}
.bx-magq-role-span{color:var(--mc);font-weight:400;}
/* Theme switcher removed — no UI widget in generated sites */
/* ── Builder inline-style replacements ── */
.bx-btn-ghost-ml{margin-left:8px;}
.bx-resume-cta{display:inline-flex;margin-bottom:24px;}
.bx-resume-icon{margin-right:8px;}
.bx-skill-pill{display:inline-block;padding:4px 14px;border-radius:999px;border:1.5px solid var(--primary-color);color:var(--primary-color);font-size:12px;font-weight:600;margin:4px 4px 4px 0;}
.bx-skill-pill-wrap{margin-bottom:24px;}
.text-center .bx-skill-pill-wrap,.bx-about-stacked-img ~ div .bx-skill-pill-wrap{text-align:center;}
.text-center .bx-resume-cta,.bx-about-stacked-img ~ div .bx-resume-cta{display:inline-flex;margin:0 auto 24px;}
.bx-tinted-overlay-dynamic{position:absolute;inset:0;background:rgba(var(--primary-rgb),.55);}
.bx-view-project-link{font-size:13px;font-weight:600;color:var(--primary-color);}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes scaleUp{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.anim-fade-in{animation:fadeIn .55s ease both;}.anim-scale-up{animation:scaleUp .55s cubic-bezier(.22,1,.36,1) both;}.d1{animation-delay:.1s;}.d2{animation-delay:.22s;}.d3{animation-delay:.34s;}.d4{animation-delay:.46s;}.d5{animation-delay:.58s;}