
:root{
  --primary:#B3142C; --primary-dark:#7A0F24;
  --purple:#7A2BF2; --magenta:#C42BD4; --ink:#2D3540;
}
html,body{color:var(--ink);background:#ffffff}
.text-ink{color:var(--ink)}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark)}
.grad-text{background:linear-gradient(90deg,var(--primary),var(--magenta),var(--purple));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.soft-shadow{box-shadow:0 8px 24px rgba(0,0,0,.06)}
/* Header responsiveness and larger logo without breaking layout */

@media(min-width:768px){}
/* Mobile menu */
#mobileMenu{display:none}
#mobileMenu.open{display:block}

/* --- Logo size update (navbar) --- */

@media(min-width:768px){}
/* Keep header tidy on small screens */
header .px-5.py-3{padding-top:.5rem;padding-bottom:.5rem}
@media(min-width:768px){header .px-5.py-3{padding-top:.75rem;padding-bottom:.75rem}}

/* --- Header brand unit (clearer logo + name) --- */

@media(min-width:768px){}
.brand-name{font-weight:900;letter-spacing:-0.02em}
.brand-badge{backdrop-filter:saturate(120%);}

/* --- Bigger logo + adaptive header --- */

@media(min-width:768px){}
/* Header vertical rhythm so larger logo doesn't break layout */
header .px-5.py-3{padding-top:.25rem;padding-bottom:.25rem}
@media(min-width:768px){header .px-5.py-3{padding-top:.5rem;padding-bottom:.5rem}}
/* Brand name spacing & weight */
.brand-name{font-weight:900;letter-spacing:-0.015em;font-size:1.25rem}
@media(min-width:768px){.brand-name{font-size:1.75rem}}

/* --- Top header refresh (logo-only, transparent) --- */
.navbar{background:transparent;border-color:transparent}
.nav-logo{height:80px;width:auto;object-fit:contain;border-radius:.6rem}
@media(min-width:768px){.nav-logo{height:120px}}
.logo-glow{filter: drop-shadow(0 6px 18px rgba(179,20,44,.25)) drop-shadow(0 2px 6px rgba(122,43,242,.15));}
/* Keep header compact but balanced with larger logo */
header .px-5.py-3{padding-top:.25rem;padding-bottom:.25rem}
@media(min-width:768px){header .px-5.py-3{padding-top:.5rem;padding-bottom:.5rem}}

/* --- Icon polish for contact details --- */
.icon-20{width:20px;height:20px;flex:0 0 20px}
.icon-chip{display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:9999px;
  background: linear-gradient(135deg,var(--primary),var(--purple)); color:#fff}
.icon-stroke{stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;fill:none}
.contact-row{display:flex;align-items:center;gap:.5rem}
