/* ===== Verdanta Legal — Premium Theme (Primary: #91037b | Secondary/Button: #ffde00) ===== */
:root{
  --navy:#91037b; --navy-2:#6d015c; --navy-dark:#2b0024; --ink:#1c0218; --gold:#ffde00; --gold-2:#ffe633;
  --paper:#fdf8fc; --line:#ebd1e7; --muted:#6e646d; --white:#fff;
  --shadow:0 18px 48px -22px rgba(145,3,123,.4);
  --radius:14px; --font-display:'Cormorant Garamond',Georgia,serif; --font-body:'Inter',system-ui,sans-serif;
}
html, body{max-width:100%;overflow-x:hidden}
*{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--ink);background:var(--white);font-size:16px;line-height:1.7}
body, h1, h2, h3, h4, h5, h6, p, a, span, div, li, td, th {overflow-wrap:break-word;word-break:break-word}
h1,h2,h3,h4,.display-title{font-family:var(--font-display);font-weight:600;letter-spacing:.2px;color:var(--navy)}
h1{font-size:clamp(2.1rem,4.4vw,3.6rem);line-height:1.12}
h2{font-size:clamp(1.7rem,3vw,2.6rem)}
a{color:var(--navy);text-decoration:none;transition:.25s}
a:hover{color:var(--navy-2)}
.skip-link{position:absolute;left:-999px;top:0;background:var(--gold);color:#1c0218;padding:.6rem 1rem;z-index:2000;font-weight:700}
.skip-link:focus{left:0}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.section{padding:84px 0}
.section-tint{background:var(--paper)}
.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:var(--navy);font-weight:700;margin-bottom:.6rem}
.lead-muted{color:var(--muted)}
.rule{width:64px;height:3px;background:var(--gold);border-radius:3px;margin:1rem 0 1.6rem}
.text-gold{color:var(--gold)!important}
.text-navy{color:var(--navy)!important}
.bg-navy{background-color:var(--navy)!important}
.bg-gold{background-color:var(--gold)!important;color:#1c0218!important;font-weight:700!important}

/* buttons */
.btn{border-radius:6px;font-weight:700;letter-spacing:.02em;padding:.72rem 1.5rem;transition:.25s}
.btn-gold{background:var(--gold);border:1px solid var(--gold);color:#1c0218}
.btn-gold:hover{background:var(--gold-2);border-color:var(--gold-2);color:#1c0218;transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,222,0,.45)}
.btn-navy{background:var(--navy);color:#fff;border:1px solid var(--navy)}
.btn-navy:hover{background:var(--navy-2);color:#fff;transform:translateY(-2px)}
.btn-ghost{border:1px solid rgba(255,255,255,.5);color:#fff}
.btn-ghost:hover{background:var(--gold);color:#1c0218;border-color:var(--gold)}
.btn-ghost-navy{border:1px solid var(--line);color:var(--navy);background:#fff;padding:.4rem 1.1rem;border-radius:50px;font-weight:600;font-size:.88rem;transition:.25s}
.btn-ghost-navy:hover, .btn-ghost-navy.active{background:var(--navy);color:var(--gold);border-color:var(--navy)}

/* topbar + header */
.topbar{background:var(--navy-dark);color:#ebd1e7;padding:.5rem 0;font-size:.86rem}
.topbar a{color:#ebd1e7}.topbar a:hover{color:var(--gold)}
.topbar .soc{width:28px;height:28px;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%}
.topbar .topbar-info span{white-space:nowrap}
.site-header{position:sticky;top:0;z-index:1030;background:#fff;border-bottom:1px solid var(--line);transition:.3s}
.site-header.scrolled{box-shadow:0 8px 26px -18px rgba(0,0,0,.5)}
.navbar{padding:.85rem 0}
.navbar-brand{display:flex;align-items:center;gap:.7rem;max-width:100%}
.site-logo-img {
  max-height: 56px;
  width: auto;
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform 0.3s ease, filter 0.3s ease;
  filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.05));
}
.site-logo-img:hover {
  transform: scale(1.03);
  filter: drop-shadow(0 4px 14px rgba(145, 3, 123, 0.25));
}
.brand-mark{width:44px;height:44px;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-family:var(--font-display);font-size:1.5rem;border-radius:8px;flex-shrink:0}
.brand-text{font-family:var(--font-display);font-size:1.3rem;font-weight:700;line-height:1.05;color:var(--navy);display:flex;flex-direction:column}
.brand-text small{font-family:var(--font-body);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500}
.navbar .nav-link{font-weight:500;font-size:.9rem;color:var(--ink);padding:.5rem .65rem;position:relative;white-space:nowrap}
.navbar .nav-link::after{content:"";position:absolute;left:.65rem;right:.65rem;bottom:.25rem;height:2px;background:var(--gold);transform:scaleX(0);transition:.25s;transform-origin:left}
.navbar .nav-link:hover::after,.navbar .nav-link.active::after{transform:scaleX(1)}
.navbar .nav-link.active{color:var(--navy)}

/* dropdown menu */
.navbar .dropdown{position:relative}
.navbar .dropdown-menu{border:1px solid var(--line);border-radius:12px;padding:.5rem;box-shadow:var(--shadow);margin-top:0!important}
.navbar .dropdown-menu::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.navbar .dropdown-item{padding:.6rem .95rem;font-size:.9rem;border-radius:8px;color:var(--ink);font-weight:500;transition:.2s}
.navbar .dropdown-item:hover, .navbar .dropdown-item:focus{background:rgba(201,162,39,.12);color:var(--navy)}
.navbar .dropdown-item.active, .navbar .dropdown-item:active{background:var(--navy);color:var(--gold)}
.navbar .dropdown-item.active i, .navbar .dropdown-item:active i{color:var(--gold)!important}
.navbar .dropdown-item i{width:20px;text-align:center}
@media (min-width:1200px){
  .navbar .nav-item.dropdown:hover > .dropdown-menu,
  .navbar .nav-item.dropdown .dropdown-menu.show{display:block;animation:fadeInDown .22s ease}
  .navbar .nav-item.dropdown:hover > .nav-link::after{transform:scaleX(1)}
}
@keyframes fadeInDown{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.btn-search{background:none;border:0;color:var(--navy);font-size:1rem;padding:.4rem .6rem}
.search-drawer{display:none;border-top:1px solid var(--line);background:var(--paper)}
.search-drawer.open{display:block}
.live-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:var(--shadow);max-height:340px;overflow:auto;z-index:40}
.live-results a{display:block;padding:.65rem 1rem;border-bottom:1px solid var(--line)}
.live-results a:last-child{border-bottom:0}
.live-results .g{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--gold)}

/* ==================== Exact Match Geometric Split Banner / Slider ==================== */
.hero-geometric-slider {
  position: relative;
  background: #120013;
  overflow: hidden;
}

.hero-slide-split {
  min-height: min(88vh, 640px);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
}

/* Slide Gradient Color Schemes matching screenshot */
.hero-slide-split.slide-variant-purple {
  background: radial-gradient(ellipse at left top, #8e0a96 0%, #520158 55%, #200023 100%);
}

.hero-slide-split.slide-variant-violet {
  background: radial-gradient(ellipse at right top, #76057d 0%, #440049 55%, #1b001e 100%);
}

.hero-slide-split.slide-variant-darknavy {
  background: radial-gradient(ellipse at left center, #54005b 0%, #2c0030 60%, #100011 100%);
}

/* Background Glow Effect & Watermark Dots */
.hero-bg-shapes {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.hero-bg-shapes::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: 
    radial-gradient(circle at 75% 25%, rgba(255, 222, 0, 0.15) 0%, transparent 45%),
    url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.09'%3E%3Ccircle cx='6' cy='6' r='2'/%3E%3Ccircle cx='20' cy='6' r='2'/%3E%3Ccircle cx='34' cy='6' r='2'/%3E%3Ccircle cx='6' cy='20' r='2'/%3E%3Ccircle cx='20' cy='20' r='2'/%3E%3Ccircle cx='34' cy='20' r='2'/%3E%3Ccircle cx='6' cy='34' r='2'/%3E%3Ccircle cx='20' cy='34' r='2'/%3E%3Ccircle cx='34' cy='34' r='2'/%3E%3C/g%3E%3C/svg%3E");
  opacity: 0.95;
}

.bg-shape-glow {
  position: absolute;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(235, 26, 245, 0.3) 0%, rgba(145, 3, 123, 0) 70%);
  top: -120px;
  left: -120px;
  border-radius: 50%;
  filter: blur(45px);
}

.bg-shape-glow.glow-alt {
  left: auto;
  right: -120px;
  background: radial-gradient(circle, rgba(175, 20, 195, 0.35) 0%, rgba(80, 0, 90, 0) 70%);
}

.bg-shape-glow.glow-navy {
  left: 20%;
  top: 10%;
  background: radial-gradient(circle, rgba(255, 222, 0, 0.2) 0%, rgba(145, 3, 123, 0) 70%);
}

/* Typography & Content Elements matching screenshot */
.hero-badge-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(0, 0, 0, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #ffffff;
  font-size: .8rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .35rem 1.1rem;
  border-radius: 50px;
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.35);
}

.play-circle-ico {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #ffffff;
  color: #000000;
  display: grid;
  place-items: center;
  font-size: .65rem;
  padding-left: 2px;
}

.hero-title-bold {
  font-family: var(--font-body);
  font-size: clamp(2.8rem, 5.2vw, 4.4rem);
  font-weight: 900;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: #ffffff;
  line-height: 0.98;
  text-shadow: 0 4px 20px rgba(0, 0, 0, 0.45);
}

.hero-subtitle-italic {
  font-family: var(--font-body);
  font-style: italic;
  font-size: clamp(1.3rem, 2.3vw, 2.1rem);
  font-weight: 700;
  letter-spacing: .06em;
  color: #e5b3ee;
  text-transform: uppercase;
  margin-top: 4px;
}

.text-pink-light {
  color: #e5b3ee !important;
}

.hero-desc-text {
  font-size: 1rem;
  color: #d8c2d5;
  max-width: 540px;
  line-height: 1.65;
}

/* Social Strip Footer */
.hero-social-strip {
  border-top-color: rgba(255, 255, 255, 0.18) !important;
}

.hero-social-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
  display: inline-grid;
  place-items: center;
  font-size: .85rem;
  transition: all 0.25s ease;
}

.hero-social-icon:hover {
  background: var(--gold);
  color: #100010;
  transform: translateY(-2px);
}

.hero-handle-text, .hero-url-text, .hero-url-subtext {
  font-weight: 700;
  letter-spacing: .12em;
  font-size: .82rem;
  color: #e5bde8;
}

.dot-separator {
  color: var(--gold);
  font-weight: 900;
}

/* Decorative Horizontal Dots Array (Exact Match to Screenshot!) */
.hero-dots-array, .hero-dots-array-mini {
  display: flex;
  align-items: center;
  gap: 8px;
}

.hero-dots-array span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  display: inline-block;
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.7);
  transition: transform 0.3s ease;
}

.hero-dots-array span:first-child, .hero-dots-array-mini span:first-child {
  background: var(--gold);
  box-shadow: 0 0 10px var(--gold);
}

.hero-dots-array-mini span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  display: inline-block;
}

/* Custom Purple Pill Button matching Screenshot 2 */
.btn-purple-pill {
  background: #2b002c;
  border: 1px solid #7d0985;
  color: #ffffff;
  letter-spacing: .05em;
  transition: all 0.3s ease;
}

.btn-purple-pill:hover {
  background: #4a004c;
  border-color: var(--gold);
  color: var(--gold);
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

/* Event Date & Time Block */
.hero-event-time-block {
  font-family: var(--font-body);
}

.event-title-lbl {
  font-size: 1.5rem;
  font-weight: 900;
  color: #ffffff;
  letter-spacing: .04em;
}

.event-time-lbl {
  font-size: 1.15rem;
  font-weight: 800;
  color: #e5bde8;
}

/* ==================== RIGHT ANGLED CUTOUT WRAPPER (Slide 1 & 3) ==================== */
.hero-angled-wrapper-right {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 480px;
}

/* Overlapping 3D Purple Wedge Flap on Right Cutout */
.hero-purple-wedge-right {
  position: absolute;
  inset: 0;
  clip-path: polygon(15% 0, 40% 0, 20% 100%, 0% 100%);
  background: linear-gradient(135deg, #780280 0%, #320035 100%);
  z-index: 2;
  box-shadow: 10px 0 25px rgba(0, 0, 0, 0.6);
}

/* Light Angled Polygon Cutout Holding Speaker Photo */
.hero-angled-cutout-right {
  position: absolute;
  inset: 0;
  clip-path: polygon(25% 0, 100% 0, 100% 100%, 5% 100%);
  background: #eef1f6;
  z-index: 3;
  box-shadow: -15px 0 35px rgba(0, 0, 0, 0.5);
  overflow: hidden;
}

/* ==================== LEFT ANGLED CUTOUT WRAPPER (Slide 2) ==================== */
.hero-angled-wrapper-left {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 480px;
}

/* Overlapping 3D Purple Wedge Flap on Left Cutout */
.hero-purple-wedge-left {
  position: absolute;
  inset: 0;
  clip-path: polygon(72% 0, 95% 0, 100% 100%, 78% 100%);
  background: linear-gradient(135deg, #780280 0%, #320035 100%);
  z-index: 2;
  box-shadow: -10px 0 25px rgba(0, 0, 0, 0.6);
}

/* Light Angled Polygon Cutout Container Left */
.hero-angled-cutout-left {
  position: absolute;
  inset: 0;
  clip-path: polygon(0 0, 78% 0, 95% 100%, 0% 100%);
  background: #eef1f6;
  z-index: 3;
  box-shadow: 15px 0 35px rgba(0, 0, 0, 0.5);
  overflow: hidden;
}

.hero-speaker-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%; /* Shifted down so head and face are 100% visible */
  filter: brightness(1.02) contrast(1.02);
  transition: transform 0.5s ease;
}

/* Speaker Badges (Top-Right / Bottom-Right) */
.hero-speaker-badge {
  position: absolute;
  z-index: 10;
  background: rgba(18, 0, 20, 0.92);
  backdrop-filter: blur(10px);
  border: 1px solid var(--gold);
  color: #ffffff;
  padding: .55rem 1.1rem;
  border-radius: 10px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45);
}

.hero-speaker-badge.top-right {
  top: 18px;
  right: 18px;
  max-width: 250px;
  text-align: right;
}

.hero-event-badge {
  position: absolute;
  z-index: 10;
  background: rgba(18, 0, 20, 0.92);
  backdrop-filter: blur(10px);
  border-left: 3px solid var(--gold);
  color: #ffffff;
  padding: .75rem 1.2rem;
  border-radius: 0 10px 10px 0;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45);
}

.hero-event-badge.bottom-right {
  bottom: 20px;
  right: 20px;
}

.speaker-name {
  font-size: 1.15rem;
  font-weight: 900;
  color: var(--gold);
  letter-spacing: .02em;
  line-height: 1.1;
}

.speaker-role {
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .1em;
  color: #ffffff;
  text-transform: uppercase;
  margin-top: 2px;
}

.event-meta-line {
  font-size: .82rem;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: .04em;
}

.event-meta-line .meta-lbl {
  color: var(--gold);
  margin-right: 4px;
}

/* Speaker Ribbon Badge for Slide 2 (Left Ribbon matching Screenshot 2) */
.hero-speaker-badge-ribbon {
  position: absolute;
  z-index: 10;
  background: linear-gradient(135deg, rgba(50, 0, 55, 0.96) 0%, rgba(20, 0, 22, 0.96) 100%);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255, 222, 0, 0.4);
  border-right: 1px solid rgba(255, 222, 0, 0.4);
  border-bottom: 1px solid rgba(255, 222, 0, 0.4);
  border-left: 4px solid var(--gold);
  padding: 1rem 1.6rem;
  border-radius: 0 16px 16px 0;
  color: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.5);
}

.hero-speaker-badge-ribbon.bottom-left {
  bottom: 40px;
  left: 20px;
}

.speaker-badge-label {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .14em;
  color: #e5bde8;
  text-transform: uppercase;
}

.speaker-name-lg {
  font-size: 1.35rem;
  font-weight: 900;
  color: #ffffff;
  letter-spacing: .02em;
  line-height: 1.1;
}

/* Swiper Navigation Arrows & Pagination Dots */
.hero-swiper-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #ffffff;
  display: grid;
  place-items: center;
  font-size: 1.1rem;
  cursor: pointer;
  transition: all 0.3s ease;
}

.hero-swiper-btn:hover {
  background: var(--gold);
  color: #100010;
  border-color: var(--gold);
  box-shadow: 0 0 20px rgba(255, 222, 0, 0.6);
}

.hero-swiper-prev { left: 24px; }
.hero-swiper-next { right: 24px; }

.hero-swiper-pagination {
  position: absolute;
  bottom: 20px !important;
  left: 0;
  right: 0;
  z-index: 20;
  display: flex;
  justify-content: center;
  gap: 10px;
}

.hero-swiper-pagination .swiper-pagination-bullet {
  width: 32px;
  height: 6px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.35);
  opacity: 1;
  transition: all 0.35s ease;
  margin: 0 !important;
}

.hero-swiper-pagination .swiper-pagination-bullet-active {
  width: 50px;
  background: var(--gold);
  box-shadow: 0 0 12px var(--gold);
}

/* Responsive Rules to ensure speaker image & geometric cutout display smoothly on all viewports */
@media (max-width: 991.98px) {
  .hero-slide-split {
    min-height: auto;
    padding: 2.5rem 0;
  }
  .hero-frame-col {
    min-height: 320px;
    margin-top: 1.5rem;
  }
  .hero-angled-wrapper-right, .hero-angled-wrapper-left {
    min-height: 320px;
  }
  .hero-title-bold {
    font-size: clamp(2.2rem, 5.5vw, 3.6rem);
  }
  .hero-subtitle-italic {
    font-size: clamp(1.1rem, 3vw, 1.8rem);
  }
  .hero-swiper-btn {
    display: none;
  }
}

@media (max-width: 575.98px) {
  .site-logo-img {
    max-height: 46px;
  }
  .hero-frame-col {
    min-height: 280px;
  }
  .hero-angled-wrapper-right, .hero-angled-wrapper-left {
    min-height: 280px;
  }
  .hero-desc-text {
    font-size: .92rem;
  }
}

/* ==================== Modern Counter Section ==================== */
.stats-modern-section {
  background: radial-gradient(ellipse at 15% 20%, rgba(145, 3, 123, 0.75) 0%, transparent 55%),
              radial-gradient(ellipse at 85% 80%, rgba(109, 1, 92, 0.75) 0%, transparent 55%),
              linear-gradient(135deg, #120014 0%, #290029 50%, #0a000c 100%);
  padding: 5.5rem 0;
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(255, 222, 0, 0.3);
  border-bottom: 1px solid rgba(255, 222, 0, 0.3);
  box-shadow: inset 0 0 60px rgba(0, 0, 0, 0.5);
}

.stats-bg-shapes {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.stats-mesh-overlay {
  position: absolute;
  inset: 0;
  background-image: 
    radial-gradient(circle at 50% 50%, rgba(255, 222, 0, 0.15) 0%, transparent 65%),
    url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23ffde00' stroke-width='0.45' stroke-opacity='0.14'%3E%3Cpath d='M0 0l80 80M80 0L0 80'/%3E%3Ccircle cx='40' cy='40' r='24' stroke='%23ffffff' stroke-opacity='0.08' stroke-width='0.5'/%3E%3C/g%3E%3C/svg%3E");
  background-size: cover, 80px 80px;
  opacity: 0.9;
}

.stats-glow-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  pointer-events: none;
}

.orb-gold-topleft {
  width: 420px;
  height: 420px;
  background: radial-gradient(circle, rgba(255, 222, 0, 0.28) 0%, transparent 70%);
  top: -120px;
  left: -100px;
}

.orb-purple-bottomright {
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(215, 20, 235, 0.35) 0%, transparent 70%);
  bottom: -150px;
  right: -120px;
}

.stat-card-modern {
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-top: 2px solid rgba(255, 222, 0, 0.7);
  border-radius: 20px;
  padding: 2.2rem 1.4rem;
  text-align: center;
  transition: all 0.35s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35);
}

.stat-card-modern:hover {
  transform: translateY(-8px);
  background: rgba(255, 255, 255, 0.12);
  border-color: var(--gold);
  box-shadow: 0 20px 45px rgba(145, 3, 123, 0.45), 0 0 25px rgba(255, 222, 0, 0.25);
}

.stat-icon-wrap {
  width: 54px;
  height: 54px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(255, 222, 0, 0.22) 0%, rgba(145, 3, 123, 0.35) 100%);
  border: 1px solid rgba(255, 222, 0, 0.4);
  color: var(--gold);
  display: grid;
  place-items: center;
  font-size: 1.4rem;
  transition: all 0.3s ease;
}

.stat-card-modern:hover .stat-icon-wrap {
  background: var(--gold);
  color: #1c0218;
  transform: scale(1.1) rotate(5deg);
  box-shadow: 0 0 20px rgba(255, 222, 0, 0.6);
}

.stat-number-wrap {
  font-family: var(--font-display);
  font-size: clamp(2.6rem, 3.8vw, 3.4rem);
  font-weight: 800;
  line-height: 1.05;
  color: var(--gold);
  text-shadow: 0 4px 18px rgba(255, 222, 0, 0.35);
  margin-bottom: .4rem;
}

.stat-unit {
  color: #ffffff;
  font-size: 0.85em;
  margin-left: 2px;
}

.stat-label-text {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #f1dcf4;
  line-height: 1.3;
}


.page-hero{background:linear-gradient(120deg,var(--navy),#1b3b5c);color:#fff;padding:78px 0 62px;position:relative;overflow:hidden}
.page-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border:1px solid rgba(201,162,39,.35);border-radius:50%}
.page-hero h1{color:#fff;margin-bottom:.4rem}
.page-hero .breadcrumb{--bs-breadcrumb-divider-color:#9fb0c2}
.page-hero .breadcrumb a{color:#cfd8e3}.page-hero .breadcrumb-item.active{color:var(--gold)}

/* cards */
.card-premium{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:2rem 1.6rem;height:auto;display:flex;flex-direction:column;justify-content:space-between;transition:.32s;position:relative;overflow:hidden}
.row > [class*="col-"] > .card-premium:only-child, .card-premium.h-100{height:100%}
.card-premium:before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--gold);transition:.35s}
.card-premium:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}
.card-premium:hover:before{width:100%}
.card-premium .ico{width:56px;height:56px;display:grid;place-items:center;border-radius:12px;background:rgba(201,162,39,.12);color:var(--gold);font-size:1.35rem;margin-bottom:1.1rem;flex-shrink:0}
.card-premium h3{font-size:1.25rem;margin-bottom:.55rem}
.card-premium p{color:var(--muted);font-size:.95rem}
.link-more{font-weight:600;font-size:.9rem;color:var(--navy);display:inline-flex;align-items:center;margin-top:auto}
.link-more i{transition:.25s}.link-more:hover i{transform:translateX(4px)}

.media-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;height:100%;display:flex;flex-direction:column;transition:.3s}
.media-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.media-card .thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#e9eef4,#dbe3ec);overflow:hidden;flex-shrink:0}
.media-card .thumb img{width:100%;height:100%;object-fit:cover;transition:.6s}
.media-card:hover .thumb img{transform:scale(1.07)}
.media-card .body{padding:1.3rem;display:flex;flex-direction:column;flex:1 1 auto;justify-content:space-between}
.chip{display:inline-block;background:rgba(13,27,42,.06);color:var(--navy);border-radius:100px;padding:.2rem .75rem;font-size:.74rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;align-self:flex-start}

/* ==================== Exact Stitch UI Pricing Section ==================== */
.stitch-exact-section {
  background: #f8fafc;
  padding: 5rem 0 6rem;
}
.stitch-exact-title {
  font-family: var(--font-display);
  font-size: 2.8rem;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: .6rem;
  letter-spacing: -0.01em;
}
.stitch-exact-sub {
  color: #64748b;
  font-size: 1rem;
  max-width: 580px;
  margin: 0 auto 2rem;
  line-height: 1.5;
}

/* Toggle */
.stitch-toggle-wrap {
  display: inline-flex;
  align-items: center;
  gap: .8rem;
  margin-bottom: 3.5rem;
}
.stitch-toggle-label {
  font-size: .95rem;
  font-weight: 700;
  color: #64748b;
  cursor: pointer;
  user-select: none;
}
.stitch-toggle-label.active {
  color: var(--navy);
}
.stitch-pill-switch {
  position: relative;
  width: 48px;
  height: 26px;
  background: #cbd5e1;
  border-radius: 100px;
  cursor: pointer;
  transition: background .3s;
}
.stitch-pill-switch .dot {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  background: #ffffff;
  border-radius: 50%;
  transition: transform .3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}
.stitch-pill-switch.annual {
  background: var(--navy);
}
.stitch-pill-switch.annual .dot {
  transform: translateX(22px);
}
.stitch-badge-save {
  background: #dbeafe;
  color: #1e40af;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .05em;
  padding: .25rem .55rem;
  border-radius: 6px;
  text-transform: uppercase;
  margin-left: .2rem;
}

/* Card exact layout */
.stitch-exact-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 2.2rem 1.6rem 1.8rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
  transition: transform .3s ease, box-shadow .3s ease;
}
.stitch-exact-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.08);
}

/* Featured Dark Card */
.stitch-exact-card.featured {
  background: #0d1b2a;
  color: #ffffff;
  border: 2px solid #c9a227;
  box-shadow: 0 12px 35px rgba(13,27,42,0.3);
}
.stitch-exact-card.featured:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 45px rgba(13,27,42,0.45);
}

/* Card Header */
.stitch-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: .2rem;
}
.stitch-card-head .title-main {
  font-family: var(--font-display);
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--navy);
  margin: 0;
  line-height: 1.15;
}
.stitch-exact-card.featured .stitch-card-head .title-main {
  color: #ffffff;
}
.stitch-card-head .sub-tag {
  font-size: .8rem;
  color: #94a3b8;
  margin-top: .25rem;
  display: block;
}
.stitch-exact-card.featured .stitch-card-head .sub-tag {
  color: #cbd5e1;
}
.stitch-card-icon {
  font-size: 2.2rem;
  color: #e2e8f0;
  flex-shrink: 0;
  line-height: 1;
}
.stitch-exact-card.featured .stitch-card-icon {
  color: rgba(255,255,255,0.12);
}

/* Most Popular Badge on Dark Card */
.stitch-popular-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  background: #c9a227;
  color: #0d1b2a;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .25rem .65rem;
  border-radius: 4px;
}

/* Card Body & Description */
.stitch-card-body-desc {
  font-size: .9rem;
  color: #64748b;
  margin-top: .9rem;
  margin-bottom: 1.3rem;
  line-height: 1.45;
  min-height: 48px;
}
.stitch-exact-card.featured .stitch-card-body-desc {
  color: #94a3b8;
}

/* Price Box */
.stitch-exact-price {
  margin-bottom: 1.5rem;
  display: flex;
  align-items: baseline;
}
.stitch-exact-price .amount {
  font-family: var(--font-display);
  font-size: 2.4rem;
  font-weight: 700;
  color: var(--navy);
  line-height: 1;
}
.stitch-exact-card.featured .stitch-exact-price .amount {
  color: #ffffff;
}
.stitch-exact-price .period {
  font-size: .82rem;
  color: #94a3b8;
  margin-left: .35rem;
}

/* Checkbox Feature Items */
.stitch-check-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.8rem;
  flex: 1 1 auto;
}
.stitch-check-list li {
  font-size: .9rem;
  margin-bottom: .8rem;
  display: flex;
  align-items: center;
  gap: .65rem;
  color: #334155;
  font-weight: 500;
}
.stitch-exact-card.featured .stitch-check-list li {
  color: #ffffff;
}
.stitch-check-list li i {
  color: #64748b;
  font-size: .85rem;
}
.stitch-exact-card.featured .stitch-check-list li i {
  color: #c9a227;
}

/* Card Buttons */
.btn-stitch-outline {
  border: 1px solid #0d1b2a;
  background: transparent;
  color: #0d1b2a;
  font-weight: 700;
  font-size: .9rem;
  padding: .7rem 1rem;
  border-radius: 4px;
  width: 100%;
  transition: all .25s ease;
  text-align: center;
  text-decoration: none;
  display: block;
}
.btn-stitch-outline:hover {
  background: #0d1b2a;
  color: #ffffff;
}

.btn-stitch-gold {
  border: 0;
  background: #c9a227;
  color: #0d1b2a;
  font-weight: 700;
  font-size: .9rem;
  padding: .75rem 1rem;
  border-radius: 4px;
  width: 100%;
  transition: all .25s ease;
  text-align: center;
  text-decoration: none;
  display: block;
}
.btn-stitch-gold:hover {
  background: #d8b02c;
  color: #0d1b2a;
}

/* lawyers */
.lawyer-card{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--navy);height:100%;display:flex;flex-direction:column}
.lawyer-card img{width:100%;aspect-ratio:3/3.6;object-fit:cover;transition:.6s;opacity:.95}
.lawyer-card .ph{width:100%;aspect-ratio:3/3.6;display:grid;place-items:center;background:linear-gradient(135deg,#16324e,#0d1b2a);color:var(--gold);font-size:3rem}
.lawyer-card:hover img{transform:scale(1.06)}
.lawyer-card .info{position:absolute;left:0;right:0;bottom:0;padding:1.4rem 1.2rem;background:linear-gradient(180deg,transparent 0%,rgba(6,13,21,.88) 35%,rgba(6,13,21,.98) 100%);color:#fff;max-height:85%;overflow:hidden}
.lawyer-card .info h3{color:#fff;font-size:1.15rem;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lawyer-card .info span{color:var(--gold);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lawyer-card .socials{margin-top:.6rem;display:flex;gap:.5rem;opacity:0;transform:translateY(8px);transition:.3s}
.lawyer-card:hover .socials{opacity:1;transform:none}
.lawyer-card .socials a{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.14);color:#fff}
.lawyer-card .socials a:hover{background:var(--gold);color:#111}

/* gallery */
.gallery-tile{position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--navy);aspect-ratio:4/3}
.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:.5s;opacity:.95}
.gallery-tile:hover img{transform:scale(1.06);opacity:.85}
.gallery-tile span{position:absolute;inset:auto 0 0 0;padding:1rem .85rem;background:linear-gradient(transparent,rgba(6,13,21,.9));color:#fff;font-size:.88rem;font-weight:500;opacity:0;transform:translateY(6px);transition:.3s}
.gallery-tile:hover span{opacity:1;transform:none}

/* stats / counters */
.stats{background:var(--navy);color:#fff;padding:64px 0}
.stats .num{font-family:var(--font-display);font-size:3rem;color:var(--gold);line-height:1}
.stats .lbl{letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;color:#b9c4d1}

/* testimonials */
.quote-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:2rem;height:100%;display:flex;flex-direction:column;justify-content:space-between}
.quote-card .fa-quote-left{color:var(--gold);font-size:1.6rem;margin-bottom:.8rem}
.stars{color:var(--gold);font-size:.85rem}
.avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--paper);flex-shrink:0}
.avatar-ph{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-weight:600;flex-shrink:0}

/* accordions, forms */
.accordion-button{font-weight:600;font-family:var(--font-display);font-size:1.1rem}
.accordion-button:not(.collapsed){background:rgba(201,162,39,.09);color:var(--navy);box-shadow:none}
.accordion-button:focus{box-shadow:none;border-color:var(--gold)}
.form-control,.form-select{border-radius:8px;border:1px solid var(--line);padding:.72rem .9rem;font-size:.95rem;max-width:100%}
.form-control:focus,.form-select:focus{border-color:var(--gold);box-shadow:0 0 0 .18rem rgba(201,162,39,.18)}
.form-label{font-weight:600;font-size:.86rem;color:var(--navy)}
.consult-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}

/* prose */
.prose{font-size:1.03rem;color:#2b3641}
.prose h2,.prose h3{margin:1.8rem 0 .8rem}
.prose ul{padding-left:1.1rem}
.prose img{max-width:100%;height:auto;border-radius:10px}
blockquote{border-left:3px solid var(--gold);padding-left:1.2rem;font-family:var(--font-display);font-size:1.25rem;color:var(--navy)}

/* Abstract Geometric SVG & Mesh Background Design */
.cta-strip{
  background: linear-gradient(135deg, var(--navy) 0%, #4a013f 100%);
  color: #fff;
  padding: 60px 0;
  position: relative;
  overflow: hidden;
}
.cta-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 90% 10%, rgba(255, 222, 0, 0.22) 0%, transparent 45%),
                    url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg stroke='%23ffffff' stroke-width='0.5' stroke-opacity='0.14'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.cta-strip .container {
  position: relative;
  z-index: 2;
}

/* Luxury Unique Site Footer with Abstract SVG Design */
.site-footer {
  background: radial-gradient(circle at 20% 0%, #5e0150 0%, #1c0218 55%, #10000d 100%);
  color: #ebd6e8;
  padding: 72px 0 32px;
  font-size: .92rem;
  border-top: 3px solid var(--gold);
  box-shadow: 0 -12px 35px rgba(255, 222, 0, 0.25);
  position: relative;
  overflow: hidden;
}

.site-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: 
    radial-gradient(circle at 85% 20%, rgba(255, 222, 0, 0.14) 0%, transparent 45%),
    radial-gradient(circle at 10% 80%, rgba(145, 3, 123, 0.4) 0%, transparent 50%),
    url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23ffde00' stroke-width='0.55' stroke-opacity='0.16'%3E%3Cpath d='M11 18l17 20-17 20 17 20-17 20'/%3E%3Cpath d='M35 18l17 20-17 20 17 20-17 20'/%3E%3Cpath d='M59 18l17 20-17 20 17 20-17 20'/%3E%3Cpath d='M83 18l17 20-17 20 17 20-17 20'/%3E%3Ccircle cx='50' cy='50' r='38' stroke='%2391037b' stroke-opacity='0.28' stroke-width='0.8'/%3E%3C/g%3E%3C/svg%3E");
  background-size: cover, cover, 100px 100px;
  opacity: 0.95;
  pointer-events: none;
  z-index: 1;
}

.site-footer > .container {
  position: relative;
  z-index: 2;
}

.footer-trust-strip {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 222, 0, 0.25);
  border-radius: 16px;
  padding: 1.25rem 1.6rem;
  backdrop-filter: blur(8px);
}

.trust-ico {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(255, 222, 0, 0.12);
  border: 1px solid rgba(255, 222, 0, 0.3);
  display: grid;
  place-items: center;
  font-size: 1.2rem;
  flex-shrink: 0;
}

.footer-heading {
  color: #ffffff;
  font-size: .95rem;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 1.2rem;
  display: flex;
  align-items: center;
  gap: .5rem;
}

.footer-heading::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 14px;
  background: var(--gold);
  border-radius: 2px;
}

.footer-links li {
  margin-bottom: .6rem;
}

.footer-links a {
  color: #ebd6e8;
  font-size: .88rem;
  text-decoration: none;
  transition: all .22s ease;
  display: inline-block;
}

.footer-links a:hover {
  color: var(--gold);
  transform: translateX(4px);
}

.footer-divider {
  border-color: rgba(255, 255, 255, 0.12);
  margin: 2.5rem 0 1.2rem;
}

.hover-gold:hover {
  color: var(--gold) !important;
}

.soc-btn {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 50%;
  color: #ffffff;
  transition: all .25s ease;
  flex-shrink: 0;
}

.soc-btn:hover {
  background: var(--gold);
  color: #1c0218;
  border-color: var(--gold);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(255, 222, 0, 0.4);
}
.disclaimer{color:#67757f;font-size:.78rem}

.wa-float{position:fixed;right:18px;bottom:86px;width:54px;height:54px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:1.5rem;box-shadow:var(--shadow);z-index:1040}
.wa-float:hover{color:#fff;transform:scale(1.07)}
.to-top{position:fixed;right:18px;bottom:22px;width:46px;height:46px;border-radius:50%;border:0;background:var(--navy);color:#fff;display:none;place-items:center;z-index:1040}
.to-top.show{display:grid}

.timeline{position:relative;padding-left:1.6rem;border-left:2px solid var(--line)}
.timeline .t-item{position:relative;padding-bottom:1.6rem}
.timeline .t-item:before{content:"";position:absolute;left:-1.98rem;top:.35rem;width:12px;height:12px;border-radius:50%;background:var(--gold)}
.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;transition:.4s}
.gallery-item:hover img{transform:scale(1.03)}
.table-clean th{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* Responsive adjustments */
@media (min-width:1200px) and (max-width:1399.98px){
  .brand-text small{font-size:.56rem;letter-spacing:.06em}
  .navbar .nav-link{font-size:.85rem;padding:.45rem .45rem}
  .navbar .nav-link::after{left:.45rem;right:.45rem}
}
/* ==================== Midnight Sapphire & Platinum Gold Distinctive Mega Menu ==================== */
.site-header .nav-item.mega-dropdown-wrapper {
  position: relative !important;
}

.site-header .mega-menu-box,
.site-header .mega-menu-box[data-bs-popper] {
  position: absolute !important;
  top: 100% !important;
  left: -130px !important;
  width: 920px !important;
  max-width: 94vw !important;
  background: #2b0024 !important; /* Deep Royal Plum */
  border: 1px solid rgba(255, 222, 0, 0.4) !important; /* Electric Gold Border */
  border-radius: 18px !important;
  box-shadow: 0 35px 80px -10px rgba(43, 0, 36, 0.8), 0 0 35px rgba(255, 222, 0, 0.2) !important;
  padding: 0 !important;
  overflow: hidden !important;
  z-index: 1050 !important;
  transform: none !important;
  margin-top: .4rem !important;
}

/* Hover bridge */
.mega-dropdown-wrapper .dropdown-menu::before {
  content: "";
  position: absolute;
  top: -16px;
  left: 0;
  right: 0;
  height: 16px;
  background: transparent;
}

@media (min-width: 1200px) {
  .navbar .nav-item.mega-dropdown-wrapper:hover > .mega-menu-box,
  .navbar .nav-item.mega-dropdown-wrapper .mega-menu-box.show {
    display: block !important;
    animation: sapphireFadeIn .22s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
  }
}

@keyframes sapphireFadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.mega-menu-inner {
  display: flex;
  min-height: 470px;
  position: relative;
}

/* Left Sidebar Categories with Smooth Scroll */
.mega-sidebar {
  width: 275px;
  flex-shrink: 0;
  background: #1c0218; /* Deep Onyx Plum */
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  padding: 1.2rem .75rem;
  position: relative;
  display: flex;
  flex-direction: column;
}

.mega-cat-header {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .18em;
  color: #d1b4cd;
  padding: 0 .75rem .75rem;
  text-transform: uppercase;
  flex-shrink: 0;
}

.mega-cat-scroll-wrap {
  max-height: 395px;
  overflow-y: auto;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: #ffde00 transparent;
}

.mega-cat-scroll-wrap::-webkit-scrollbar {
  width: 4px;
}
.mega-cat-scroll-wrap::-webkit-scrollbar-track {
  background: transparent;
}
.mega-cat-scroll-wrap::-webkit-scrollbar-thumb {
  background: #ffde00;
  border-radius: 4px;
}

.mega-cat-pills {
  position: relative;
}

.mega-cat-pills .nav-link {
  color: #ebd6e8;
  font-size: .84rem;
  font-weight: 600;
  padding: .58rem .85rem;
  border-radius: 10px;
  text-align: left;
  transition: all .2s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: .3rem;
  display: flex;
  align-items: center;
  position: relative;
}

.mega-cat-pills .nav-link:hover {
  color: #ffffff;
  background: rgba(255, 222, 0, 0.12);
}

/* Active Category Pill - Electric Gold Accent */
.mega-cat-pills .nav-link.active {
  background: linear-gradient(135deg, #ffde00 0%, #ffe633 100%) !important;
  color: #1c0218 !important;
  font-weight: 700;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(255, 222, 0, 0.45);
}

.mega-cat-pills .nav-link.active i {
  color: #1c0218 !important;
}

/* Glowing Electric Gold Vertical Line */
.mega-sidebar::after {
  content: "";
  position: absolute;
  top: 0;
  right: -2px;
  width: 3px;
  height: 100%;
  background: linear-gradient(180deg, transparent 0%, #ffde00 20%, #ffde00 80%, transparent 100%);
  z-index: 5;
  box-shadow: 0 0 10px rgba(255, 222, 0, 0.6);
}

/* Right Main Content Area */
.mega-main-content {
  flex: 1 1 auto;
  padding: 1.8rem 2.4rem;
  background: #2b0024; /* Deep Royal Plum */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.mega-pane-header-bar {
  margin-bottom: 1.3rem;
  padding-bottom: .6rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mega-badge-tag {
  display: inline-block;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: .2rem .6rem;
  border-radius: 6px;
  background: rgba(255, 222, 0, 0.18);
  color: #ffde00;
  border: 1px solid rgba(255, 222, 0, 0.4);
}

.mega-pane-heading {
  font-family: var(--font-body);
  font-size: .9rem;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 0;
  display: flex;
  align-items: center;
  gap: .5rem;
}

.mega-pane-heading::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 15px;
  background: #ffde00;
  border-radius: 2px;
}

/* Link Lists */
.mega-link-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mega-link-list li {
  margin-bottom: .85rem;
}

.mega-link-list a {
  color: #fcebf9;
  font-size: .85rem;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s ease;
  display: inline-block;
  line-height: 1.38;
  padding-left: 0;
  border-left: 0 solid transparent;
}

.mega-link-list a:hover {
  color: #ffde00; /* Electric Gold Highlight */
  border-left: 3px solid #ffde00;
  padding-left: .6rem;
  transform: translateX(2px);
}

/* Mini CTA Footer Bar */
.mega-cta-footer {
  margin-top: 1.6rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: .82rem;
  color: #ebd6e8;
}

.btn-mega-cta {
  background: linear-gradient(135deg, #ffde00 0%, #ffe633 100%);
  color: #1c0218;
  font-weight: 700;
  font-size: .78rem;
  padding: .4rem 1rem;
  border-radius: 8px;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(255, 222, 0, 0.35);
  transition: all .2s ease;
}

.btn-mega-cta:hover {
  color: #1c0218;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(255, 222, 0, 0.5);
}

@media (max-width: 1199.98px) {
  .site-header .navbar-brand {
    max-width: calc(100% - 60px) !important;
  }
  
  .brand-text small {
    display: none !important; /* Hide long tagline on mobile so logo & hamburger toggle sit on 1 single row! */
  }

  .navbar-toggler {
    padding: .35rem .55rem !important;
    font-size: 1rem !important;
  }

  .mega-dropdown-wrapper { 
    position: relative !important; 
  }
  
  .site-header .mega-menu-box,
  .site-header .mega-menu-box[data-bs-popper] {
    position: static !important;
    top: auto !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
    margin-top: .5rem !important;
    box-shadow: none !important;
    border: 1px solid rgba(212, 175, 55, 0.3) !important;
    max-height: none !important;
    overflow: hidden !important;
  }
  
  .mega-menu-inner {
    display: block !important;
    flex-direction: column !important;
    min-height: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
  
  .mega-sidebar {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: .75rem .6rem !important;
    overflow-x: hidden !important;
  }
  
  .mega-sidebar::after {
    display: none !important;
  }
  
  /* Clean 2-column Wrapped Category Pills Grid on mobile & tablet */
  .mega-cat-scroll-wrap {
    max-height: 260px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 4px !important;
    scrollbar-width: thin !important;
    scrollbar-color: #d4af37 transparent !important;
  }
  
  .mega-cat-pills {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important; /* All categories wrap into clean 2-column pills! */
    gap: .4rem !important;
    width: 100% !important;
  }
  
  .mega-cat-pills .nav-link {
    flex: 1 1 calc(50% - .4rem) !important;
    min-width: 125px !important;
    margin-bottom: 0 !important;
    font-size: .78rem !important;
    padding: .45rem .65rem !important;
    white-space: normal !important;
    word-break: break-word !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    line-height: 1.25 !important;
  }
  
  .mega-main-content {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 1rem .85rem !important;
    overflow-x: hidden !important;
  }

  .mega-link-list {
    width: 100% !important;
  }
  
  .mega-link-list li {
    margin-bottom: .6rem !important;
  }

  .mega-link-list a {
    padding: .3rem 0 !important;
    font-size: .84rem !important;
    white-space: normal !important;
    word-break: break-word !important;
  }
  
  .mega-cta-footer {
    flex-direction: column !important;
    gap: .6rem !important;
    text-align: center !important;
    margin-top: 1rem !important;
    padding-top: .75rem !important;
  }
  
  .btn-mega-cta {
    width: 100% !important;
    text-align: center !important;
  }
}

@media (max-width: 767.98px) {
  .mega-main-content .row.g-3 > [class*="col-"] {
    width: 100% !important;
  }
  
  .mega-pane-heading {
    font-size: .82rem !important;
  }
}
@media (max-width:1199.98px){
  .navbar-collapse{padding:1rem 0;border-top:1px solid var(--line);margin-top:.75rem}
  .navbar-nav .nav-item{margin-bottom:.25rem}
  .navbar-nav .btn-gold{display:inline-block;width:100%;text-align:center;margin-top:.75rem}
  .navbar .nav-link::after{display:none}
}
@media (max-width:991.98px){
  .section{padding:58px 0}
  .hero .content{padding:64px 0}
}
@media (max-width:575.98px){
  .section{padding:46px 0}
  .hero .content{padding:48px 0 68px}
  .wa-float{width:46px;height:46px;font-size:1.3rem;right:14px;bottom:76px}
  .to-top{width:40px;height:40px;right:14px;bottom:18px}
  .consult-box{padding:1.4rem}
  .card-premium{padding:1.5rem 1.2rem}
  .ratio-21x9{--bs-aspect-ratio:56.25%}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ==================== Stitch Style 3D Flip Services Cards ==================== */
.stitch-flip-card-wrapper {
  perspective: 1200px;
  min-height: 480px;
  height: 100%;
  margin-bottom: 1.5rem;
}

.stitch-flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 480px;
  transition: transform 0.7s cubic-bezier(0.4, 0.2, 0.2, 1);
  transform-style: preserve-3d;
  border-radius: 16px;
}

.stitch-flip-card-wrapper:hover .stitch-flip-card-inner,
.stitch-flip-card-wrapper.is-flipped .stitch-flip-card-inner {
  transform: rotateY(180deg);
}

.stitch-flip-card-front,
.stitch-flip-card-back {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-radius: 16px;
  padding: 1.8rem 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
}

/* Card Front: Clean Stitch Light / Featured Navy Style */
.stitch-flip-card-front {
  background: #ffffff;
  border: 1px solid rgba(13, 27, 42, 0.1);
  box-shadow: 0 10px 30px rgba(13, 27, 42, 0.05);
  color: var(--navy);
  z-index: 2;
  transform: rotateY(0deg);
}

.stitch-flip-card-front.featured {
  background: #081226;
  color: #ffffff;
  border: 1px solid rgba(212, 175, 55, 0.4);
  box-shadow: 0 15px 40px rgba(8, 18, 38, 0.4);
}

.stitch-card-top-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: .8rem;
}

.stitch-card-top-head .icon-badge {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(201, 162, 39, 0.12);
  color: var(--gold);
  display: grid;
  place-items: center;
  font-size: 1.3rem;
  flex-shrink: 0;
}

.stitch-flip-card-front.featured .stitch-card-top-head .icon-badge {
  background: rgba(212, 175, 55, 0.2);
  color: #d4af37;
}

.stitch-card-sublabel {
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: .2rem;
  display: block;
}

.stitch-card-h3 {
  font-family: var(--font-display);
  font-size: 1.65rem;
  font-weight: 700;
  margin-bottom: .6rem;
  line-height: 1.25;
}

.stitch-flip-card-front.featured .stitch-card-h3 {
  color: #ffffff;
}

.stitch-card-desc-text {
  font-size: .88rem;
  color: #64748b;
  line-height: 1.5;
  margin-bottom: 1.2rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.stitch-flip-card-front.featured .stitch-card-desc-text {
  color: #94a3b8;
}

/* Price Display matching screenshot! */
.stitch-exact-price-tag {
  font-size: 1.7rem;
  font-weight: 800;
  color: var(--navy);
  font-family: var(--font-display);
  margin-bottom: 1.2rem;
  display: flex;
  align-items: baseline;
  gap: .2rem;
}

.stitch-flip-card-front.featured .stitch-exact-price-tag {
  color: #ffde00;
}

.stitch-exact-price-tag .price-sub {
  font-size: .78rem;
  font-weight: 600;
  color: #94a3b8;
  font-family: var(--font-body);
}

/* Bullet Checklist */
.stitch-card-checklist {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
}

.stitch-card-checklist li {
  font-size: .84rem;
  font-weight: 600;
  color: #334155;
  margin-bottom: .55rem;
  display: flex;
  align-items: center;
  gap: .6rem;
}

.stitch-flip-card-front.featured .stitch-card-checklist li {
  color: #e2e8f0;
}

.stitch-card-checklist li i {
  color: var(--navy);
  font-size: .9rem;
}

.stitch-flip-card-front.featured .stitch-card-checklist li i {
  color: var(--gold);
}

/* Card Action Flip Button */
.btn-flip-hint {
  border: 1px solid var(--line);
  background: transparent;
  color: var(--navy);
  font-weight: 700;
  font-size: .84rem;
  padding: .6rem 1rem;
  border-radius: 8px;
  width: 100%;
  text-align: center;
  transition: all .25s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
}

.stitch-flip-card-front.featured .btn-flip-hint {
  background: linear-gradient(135deg, var(--gold) 0%, #ffe633 100%);
  color: #1c0218;
  border: 0;
}

.btn-flip-hint:hover {
  background: var(--navy);
  color: #ffffff;
}

/* Card Back: Tremendous Abstract Background Design */
.stitch-flip-card-back {
  background: radial-gradient(circle at 100% 0%, #6e005d 0%, #2b0024 55%, #140011 100%);
  color: #ffffff;
  border: 1.5px solid rgba(255, 222, 0, 0.55);
  box-shadow: 0 20px 50px rgba(28, 2, 24, 0.65), inset 0 0 30px rgba(255, 222, 0, 0.08);
  transform: rotateY(180deg);
  z-index: 3;
  position: relative;
  overflow: hidden;
}

.stitch-flip-card-back::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: 
    radial-gradient(circle at 85% 15%, rgba(255, 222, 0, 0.22) 0%, transparent 45%),
    radial-gradient(circle at 10% 85%, rgba(145, 3, 123, 0.45) 0%, transparent 50%),
    url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23ffde00' stroke-width='0.55' stroke-opacity='0.18'%3E%3Cpath d='M0 0l80 80M80 0L0 80'/%3E%3Ccircle cx='40' cy='40' r='24' stroke='%23ffffff' stroke-opacity='0.12' stroke-width='0.6'/%3E%3Ccircle cx='40' cy='40' r='36' stroke='%23ffde00' stroke-opacity='0.15' stroke-width='0.5'/%3E%3C/g%3E%3C/svg%3E");
  background-size: cover, cover, 80px 80px;
  opacity: 0.95;
  pointer-events: none;
  z-index: 0;
}

.stitch-flip-card-back > * {
  position: relative;
  z-index: 2;
}

.stitch-flip-card-front::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%2391037b' stroke-width='0.4' stroke-opacity='0.06'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
  opacity: 0.8;
  border-radius: 16px;
}

.back-header-title {
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: .2rem;
}

.back-badge {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #ffde00;
  display: block;
  margin-bottom: .8rem;
}

.back-deliverables-title {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #ebd6e8;
  margin-bottom: .6rem;
}

.back-features-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.2rem;
}

.back-features-list li {
  font-size: .83rem;
  color: #f1f5f9;
  margin-bottom: .5rem;
  display: flex;
  align-items: center;
  gap: .5rem;
}

.back-features-list li i {
  color: #ffde00;
}

.back-action-btns {
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

.btn-card-apply {
  background: linear-gradient(135deg, var(--gold) 0%, #ffe633 100%);
  color: #1c0218;
  font-weight: 700;
  font-size: .84rem;
  padding: .6rem 1rem;
  border-radius: 8px;
  text-decoration: none;
  text-align: center;
  transition: all .2s ease;
  box-shadow: 0 4px 12px rgba(255, 222, 0, 0.35);
}

.btn-card-apply:hover {
  color: #1c0218;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(255, 222, 0, 0.5);
}

.btn-card-details {
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #ffffff;
  font-weight: 600;
  font-size: .84rem;
  padding: .55rem 1rem;
  border-radius: 8px;
  text-decoration: none;
  text-align: center;
  transition: all .2s ease;
}

.btn-card-details:hover {
  background: rgba(255, 255, 255, 0.22);
  color: #ffffff;
}

/* ==================== Modern Corporate Contact Page ==================== */
.contact-tile-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-top: 3px solid var(--navy);
  border-radius: 16px;
  padding: 1.6rem 1.2rem;
  text-align: center;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}

.contact-tile-card:hover {
  transform: translateY(-6px);
  border-top-color: var(--gold);
  box-shadow: 0 15px 35px rgba(145, 3, 123, 0.15);
}

.contact-tile-ico {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: rgba(145, 3, 123, 0.08);
  color: var(--navy);
  display: grid;
  place-items: center;
  font-size: 1.3rem;
  margin: 0 auto 1rem;
  transition: all 0.3s ease;
}

.contact-tile-card:hover .contact-tile-ico {
  background: var(--navy);
  color: var(--gold);
  transform: scale(1.08) rotate(4deg);
}

.contact-tile-ico.ico-email { background: rgba(37, 99, 235, 0.08); color: #2563eb; }
.contact-tile-card:hover .ico-email { background: #2563eb; color: #ffffff; }

.contact-tile-ico.ico-wa { background: rgba(34, 197, 94, 0.08); color: #22c55e; }
.contact-tile-card:hover .ico-wa { background: #22c55e; color: #ffffff; }

.contact-tile-ico.ico-location { background: rgba(234, 179, 8, 0.12); color: #ca8a04; }
.contact-tile-card:hover .ico-location { background: #ca8a04; color: #ffffff; }

.contact-tile-title {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #64748b;
  margin-bottom: .4rem;
}

.contact-tile-link {
  font-size: .95rem;
  font-weight: 700;
  color: var(--navy);
  text-decoration: none;
  word-break: break-all;
}

.contact-tile-link:hover {
  color: var(--navy-2);
}

.contact-tile-sublink {
  font-size: .85rem;
  font-weight: 600;
  color: #64748b;
  display: block;
  margin-top: .15rem;
}

.contact-tile-subtext {
  font-size: .78rem;
  color: #64748b;
  display: block;
  margin-top: .2rem;
}

/* Contact Form Panels */
.contact-form-panel {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 2.2rem 2rem;
  position: relative;
  overflow: hidden;
}

.border-gold-top {
  border-top: 4px solid var(--gold) !important;
}

.contact-badge-pill {
  display: inline-block;
  background: rgba(145, 3, 123, 0.08);
  color: var(--navy);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  padding: .3rem .8rem;
  border-radius: 100px;
  text-transform: uppercase;
}

.form-label-corp {
  font-size: .82rem;
  font-weight: 700;
  color: #334155;
  margin-bottom: .35rem;
}

.input-icon-group {
  position: relative;
}

.input-ico-prefix {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #94a3b8;
  font-size: .9rem;
  pointer-events: none;
}

.corp-input {
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  padding: .65rem .85rem;
  font-size: .9rem;
  color: #0f172a;
  transition: all 0.25s ease;
  background-color: #f8fafc;
}

.input-icon-group .corp-input {
  padding-left: 2.4rem;
}

.corp-input:focus {
  background-color: #ffffff;
  border-color: var(--navy);
  box-shadow: 0 0 0 3px rgba(145, 3, 123, 0.15);
}

.contact-office-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-left: 4px solid var(--navy);
  border-radius: 14px;
  padding: 1.6rem 1.4rem;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
}

.contact-office-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
  border-left-color: var(--gold);
}
