
:root{
  --mint:#4BE5AE;      /* from logo */
  --slate:#595C62;     /* from logo */
  --ink:#1f2328;       /* text */
  --muted:#6f747b;
  --card-radius:16px;
}
*{ font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, 'Apple Color Emoji','Segoe UI Emoji'; }
body{ color:#000; }
.nav-link{ color:#333; font-weight:500; }
.nav-link:hover{ color:var(--mint); }

/* Hero */
.hero{ padding: 86px 0 46px; }
.display-xl{    font-size: clamp(2.2rem, 4vw + 1rem, 3rem);
    line-height: 1.05;
    font-weight: 600; }
.hl-brand{ color:var(--mint); }
.lead{ color:#fff; }

.accordion-button:focus
 {
    z-index: 3;
    outline: 0;
    box-shadow: none !important;
}
/* Buttons */
.btn-brand{ background:var(--mint) !important; color:#0b0f14; border:none; }
.btn-brand:hover{ background:#39d09b; color:#0b0f14; }
.btn-brand-dark{ background:var(--slate); color:#fff; border:none; }
.btn-brand-dark:hover{ background:#4b4e53; color:#fff; }

/* Eyebrow */
.section-title{ font-size:.78rem; letter-spacing:.14em; color:var(--muted); text-transform:uppercase; font-weight:700; }

/* Stat cards */
.stat-card{ border:1px solid #ececec; border-radius:var(--card-radius); padding:22px; background:#fff; position:relative; overflow:hidden; height:100%; }
.stat-kpi{ font-size:2rem; font-weight:800; }
.stat-caption{ color:var(--muted); font-size:.88rem; }

/* Chevron corner motif on cards */
.chevron-corner::before, .chevron-corner::after{
  content:""; position:absolute; width:120px; height:56px; right:-40px; bottom:-10px; transform:skewX(-25deg);
  border-radius:8px;
}
.chevron-corner::before{ background:rgba(75,229,174,.35); filter:blur(.3px); }
.chevron-corner::after{ background:rgba(89,92,98,.2); right:-10px; bottom:22px; }

/* Brand badges */
.brand-badge{ display:inline-flex; align-items:center; gap:.4rem; padding:.7rem 1rem; border-radius:10px; border:1px solid #eee; background:#fff; font-weight:700; }
.brand-dot{ width:.65rem; height:.65rem; border-radius:50%; background: var(--mint); display:inline-block; }

/* Offices */
.office-card img{ border-radius:14px; aspect-ratio:16/9; object-fit:cover; width:100%; }
.office-name{ font-size:.85rem; color:#7a7a7a; margin-top:.35rem; }

/* Newsletter */
.newsletter{ border-radius:16px; background:#fff; border:1px solid #eee; padding: 32px 22px; position:relative; overflow:hidden; }

/* Footer */
.footer-links a{ color:#5b5b5b; text-decoration:none; }
.footer-links a:hover{ color:var(--mint); }

/* Hero bleed with chevrons overlay */
.hero-bleed{ background-size:cover; background-position:center; color:#fff; position:relative; }
.hero-bleed::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(0,0,0,.55), rgba(0,0,0,.15)); }
.hero-bleed > .container{ position:relative; z-index:2; }

/* Global chevron background accents (replaces circle rings) */
.chevrons-bg{ position:relative; overflow:hidden; }
.chevrons-bg::before, .chevrons-bg::after{
  content:""; position:absolute; right:-120px; top:-80px; width:820px; height:220px; transform:skewX(-25deg);
  border-radius:14px; z-index:0;
}
.chevrons-bg::before{ background:rgba(89,92,98,.10); }
.chevrons-bg::after{ background:rgba(75,229,174,.12);     top: 21px;
    right: -13px;
    height: 197px;
    left: 41px; }
.chevrons-bg.subtle::before{ right:-160px; top:auto; bottom:-100px; height:180px; }
.chevrons-bg.subtle::after{ right:-40px; bottom:-60px; top:auto; height:140px; }

.dark-overlay::after{ background:linear-gradient(90deg, rgba(0,0,0,.6), rgba(0,0,0,.2)); }
.nav-link:active {
    color: var(--mint);
}

.navbar-nav .nav-link.active, .navbar-nav .nav-link.show
 {
    color:  var(--mint) !important;
}
@media (min-width: 992px){ .hero{ padding: 110px 0 56px; } }
@media (max-width: 991.98px){ .hero-bleed{ padding: 32px 0; } }
:root{
    --sb-brand:#19c79d;
    --sb-bg:#061b18;
    --sb-text:#fff;
    --sb-muted:rgba(255,255,255,.9);
  }
  .sb-wrap{max-width:1700px;margin:auto;}
  .sb-hero{position:relative;height:700px;overflow:hidden;
           box-shadow:0 28px 80px rgba(0,0,0,.45); background:#0a2d26}
  @media (max-width:1200px){.sb-hero{}}

  /* Rail & slides */
  .sb-rail{display:flex;height:100%;transition:transform .7s cubic-bezier(.22,.8,.32,1);will-change:transform}
  .sb-slide{position:relative;min-width:100%;height:100%;isolation:isolate}
  .sb-bg{position:absolute;inset:0;background-size:cover;background-position:center right;
        transition:transform 1.2s ease}
  .sb-slide.active .sb-bg{transform:scale(1)}
  .sb-tint{position:absolute;inset:0;}

  /* Content (left) */
  .sb-inner{position:relative;z-index:2;height:100%;display:grid;align-content:center;padding:48px}
  .sb-left{max-width:780px;color:var(--sb-text);font-family:Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial}
  .sb-eyebrow{font-weight:700;opacity:.95;display:inline-flex;padding:8px 14px;border-radius:999px;
              background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.18)}
  .sb-left h1{margin:18px 0 14px;font-weight:500;line-height:1.04;font-size:clamp(36px,5.2vw,45px)}
  .sb-left p{color:var(--sb-muted);font-size:clamp(16px,1.3vw,20px);line-height:1.55;margin:0 0 22px}
  .sb-badges{display:flex;gap:28px;margin:16px 0 24px;flex-wrap:wrap;color:var(--sb-muted);font-weight:600}
  .sb-badge svg{width:22px;height:22px;opacity:.9;margin-right:10px;vertical-align:-3px}
  .sb-btn{display:inline-flex;gap:10px;align-items:center;padding:14px 20px;border-radius:16px;font-weight:700;
          text-decoration:none;background:var(--sb-brand);color:#08362b;border:1px solid rgba(255,255,255,.16);
          box-shadow:0 8px 28px rgba(0,0,0,.35)}
  .sb-btn.secondary{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.35)}

  /* Controls */
  .sb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:999px;
            display:grid;place-items:center;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.4);
            color:#fff;cursor:pointer;z-index:6;opacity:0; display: none;}
  .sb-arrow.left{left:18px} .sb-arrow.right{right:18px}
  .sb-hero:hover .sb-arrow{opacity:1}
  .sb-dots{position:absolute;left:50%;transform:translateX(-50%);bottom:18px;display:flex;gap:10px;z-index:6}
  .sb-dot{width:10px;height:10px;border-radius:999px;background:#ffffff60;border:1px solid #ffffff90;cursor:pointer}
  .sb-dot.active{background:#fff}

  /* Background images */
  .bg--affiliate{background-image:url('../img/21.jpg')}


  /* Text entrance */
  .sb-reveal>*{opacity:0;transform:translateY(10px);animation:sb-rise .7s ease forwards}
  .sb-reveal>*:nth-child(1){animation-delay:.05s}
  .sb-reveal>*:nth-child(2){animation-delay:.15s}
  .sb-reveal>*:nth-child(3){animation-delay:.28s}
  .sb-reveal>*:nth-child(4){animation-delay:.40s}
  .sb-reveal>*:nth-child(5){animation-delay:.52s}
  @keyframes sb-rise{to{opacity:1;transform:none}}
    .services { --sb: #19c79d; }
  .services .eyebrow{
    letter-spacing:.12em; text-transform:uppercase; font-weight:600;
  }
  .services .feature{
    background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:1rem;
    box-shadow:0 8px 28px rgba(0,0,0,.05); transition:transform .25s ease, box-shadow .25s ease, border-color .25s;
  }
  .services .feature:hover{
    transform:translateY(-6px); box-shadow:0 18px 48px rgba(0,0,0,.08); border-color:rgba(25,199,157,.35);
  }
  .services .icon{
    width:52px;height:52px;border-radius:14px;display:grid;place-items:center;
    background:linear-gradient(135deg, var(--sb)/.14, var(--sb)/.06);
    border:1px solid color-mix(in oklab, var(--sb) 38%, transparent);
    color:color-mix(in oklab, var(--sb) 90%, #0b3a2f);
  }
  .services .link-arrow{font-weight:600}
  .services .link-arrow .bi{transition:transform .2s ease}
  .services .feature:hover .link-arrow .bi{transform:translateX(4px)}
  /* Optional subtle stripe on hover */
  .services .feature:hover .stripe{opacity:1;transform:translateY(0)}
  .services .stripe{
    content:""; position:absolute; inset:auto 0 0 0; height:4px; border-bottom-left-radius:1rem; border-bottom-right-radius:1rem;
    background:linear-gradient(90deg, var(--sb), #34d399, var(--sb)); opacity:.0; transform:translateY(6px);
    transition:all .25s ease;
  }
    :root{
    --brand:#19c79d; --brand-2:#34d399; --ink:#08362b; --muted:#6b7280;
  }
  body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}

  /* ===== Scoped to About page ===== */
  .about-page .eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#64748b;font-weight:700}

  /* Hero */
  .about-page .hero{
    position:relative; isolation:isolate; color:#fff; min-height:420px;
    background: center/cover no-repeat;
    border-bottom:1px solid rgba(255,255,255,.1);
  }
  .about-page .hero::before{
    content:""; position:absolute; inset:0;
    background:
      radial-gradient(1200px 700px at 80% 0%, rgba(25,199,157,.22), transparent 60%),
      linear-gradient(180deg, rgba(0,0,0,.60), rgba(0,0,0,.35) 30%, rgba(0,0,0,.55));
    z-index:0;
  }
  .about-page .hero .wrap{position:relative; z-index:1; padding:64px 0}
  .about-page .hero h1{font-weight:800; letter-spacing:-.02em}
  .about-page .btn-ghost{
    background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.55);
    border-radius:999px; padding:.6rem 1rem; font-weight:700;
  }
  .about-page .btn-ghost:hover{background:rgba(255,255,255,.06)}

  /* Section spacing */
  .about-page section{scroll-margin-top:80px}
  .about-page .section{padding:26px 0}
  .about-page .section.alt{background:#f7f8f9}
  .about-page .lead{color:#0f172a}

  /* KPI mini-cards */
  .about-page .kpi{min-width:120px}
  .about-page .kpi .num{font-weight:800;font-size:2rem;line-height:1}
  .about-page .kpi .lab{color:var(--muted);font-size:.9rem}

  /* Cards */
  .about-page .card-clean{
    border:1px solid rgba(2,6,12,.08); border-radius:16px; box-shadow:0 8px 28px rgba(2,6,12,.05);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  }
  .about-page .card-clean:hover{
    transform:translateY(-6px); box-shadow:0 18px 48px rgba(2,6,12,.08); border-color:rgba(25,199,157,.35);
  }
  .about-page .chip{
    width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-right:.5rem;
    background:linear-gradient(135deg, #19c79d22, #19c79d10);
    border:1px solid #19c79d55;color:#0b3a2f;
  }

  /* Pillars */
  .about-page .pillar{border:1px solid rgba(0,0,0,.08); border-radius:14px; padding:18px}
  .about-page .pillar h6{font-weight:700}

  /* CTA band */
  .about-page .cta{
    border:1px solid rgba(0,0,0,.08); border-radius:18px; padding:28px;
    background:linear-gradient(180deg,#fff, #f8fffd);
  }
  .about-page .btn-brand{
    background:linear-gradient(180deg, var(--brand), var(--brand-2));
    color:#052e25; border:none; font-weight:800; border-radius:999px;
  }
  .about-page .btn-brand:hover{filter:brightness(.97)}
  .about-page .btn-outline-dark{border-radius:999px}

  /* Stats */
  .about-page .stat{border:1px solid rgba(0,0,0,.08); border-radius:16px; padding:18px; position:relative; overflow:hidden}
  .about-page .stat .kpi{font-weight:800;font-size:1.8rem}
  .about-page .stat::after{
    content:""; position:absolute; right:-24px; bottom:-24px; width:120px; height:120px; rotate:-12deg;
    background:conic-gradient(from 0deg at 50% 50%, #19c79d33, #34d39922, transparent 60%);
    border-radius:22px; filter:blur(.3px);
  }

  /* Links */
  .about-page .link-arrow{font-weight:600}
  .about-page .link-arrow .bi{transition:transform .2s ease}
  .about-page .card-clean:hover .link-arrow .bi{transform:translateX(4px)}
    /* ---- About section polish (scoped) ---- */
  #about{ --sb:#19c79d; --ink:#08362b; --muted:#6b7280; }
  #about .eyebrow{letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#64748b}

  /* Left panel */
  #about .about-panel{
    background:linear-gradient(180deg,#fff,#f7fffb);
    border:1px solid rgba(2,6,12,.08);
    border-radius:18px;
    padding:28px;
    box-shadow:0 8px 28px rgba(2,6,12,.05);
  }
  #about .about-panel .lead{margin-bottom:16px}

  /* Brand trust strip */
  #about .trust-strip{
    display:flex;align-items:center;gap:.6rem;margin-top:10px;
    padding:12px 14px;border-radius:12px;
    background:linear-gradient(90deg,var(--sb),#34d399);
    color:#052e25;font-weight:700;
  }
  #about .trust-strip .bi{font-size:1.1rem}

  /* KPI mini-cards (right column) */
  #about .kpi-card{
    background:#fff;border:1px solid rgba(2,6,12,.08);border-radius:14px;padding:16px 18px;
    box-shadow:0 6px 18px rgba(2,6,12,.04);
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  }
  #about .kpi-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 36px rgba(2,6,12,.08);
    border-color:rgba(25,199,157,.35);
  }
  #about .kpi-card .num{font-weight:800;font-size:2rem;line-height:1;color:var(--ink)}
  #about .kpi-card .lab{color:var(--muted);font-size:.9rem}
  /* ===== Travel Partners (scoped) ===== */
.sb-travel{ --sb:#19c79d; --ink:#08362b; --muted:#6b7280; }
.sb-travel .icon-bubble{
  width:52px;height:52px;border-radius:14px;display:grid;place-items:center;flex:0 0 52px;
  background:linear-gradient(135deg,#19c79d22,#19c79d10); border:1px solid #19c79d55; color:var(--ink);
}
.sb-travel .sb-tile{
  background:#fff;border:1px solid rgba(2,6,12,.08);border-radius:16px;padding:18px;
  box-shadow:0 8px 28px rgba(2,6,12,.05);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.sb-travel .sb-tile:hover{transform:translateY(-6px);border-color:rgba(25,199,157,.38);box-shadow:0 18px 48px rgba(2,6,12,.08)}
/* Steps */
.sb-travel .sb-step{
  background:#fff;border:1px solid rgba(2,6,12,.08);border-radius:16px;padding:16px;
  box-shadow:0 8px 28px rgba(2,6,12,.05);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.sb-travel .sb-step:hover{transform:translateY(-6px);border-color:rgba(25,199,157,.38);box-shadow:0 18px 48px rgba(2,6,12,.08)}
.sb-travel .sb-step-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.35rem}
.sb-travel .sb-step-num{
  width:44px;height:44px;border-radius:999px;display:grid;place-items:center;flex:0 0 44px;
  background:linear-gradient(180deg,#19c79d,#34d399);color:#052e25;font-weight:800;border:1px solid #19c79d77;
}
.sb-travel h6{font-weight:700;margin:0}
.sb-travel p{color:var(--muted)}
/* ===== Affiliate Partners (scoped) ===== */
.sb-affiliate{ --sb:#19c79d; --ink:#08362b; --muted:#6b7280; }
.sb-affiliate .icon-bubble{
  width:52px;height:52px;border-radius:14px;display:grid;place-items:center;flex:0 0 52px;
  background:linear-gradient(135deg,#19c79d22,#19c79d10); border:1px solid #19c79d55; color:var(--ink);
}
.sb-affiliate .sb-tile{
  background:#fff;border:1px solid rgba(2,6,12,.08);border-radius:16px;padding:18px;
  box-shadow:0 8px 28px rgba(2,6,12,.05);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.sb-affiliate .sb-tile:hover{transform:translateY(-6px);border-color:rgba(25,199,157,.38);box-shadow:0 18px 48px rgba(2,6,12,.08)}

.sb-affiliate .sb-step{
  background:#fff;border:1px solid rgba(2,6,12,.08);border-radius:16px;padding:16px;
  box-shadow:0 8px 28px rgba(2,6,12,.05);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.sb-affiliate .sb-step:hover{transform:translateY(-6px);border-color:rgba(25,199,157,.38);box-shadow:0 18px 48px rgba(2,6,12,.08)}
.sb-affiliate .sb-step-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.35rem}
.sb-affiliate .sb-step-num{
  width:44px;height:44px;border-radius:999px;display:grid;place-items:center;flex:0 0 44px;
  background:linear-gradient(180deg,#19c79d,#34d399);color:#052e25;font-weight:800;border:1px solid #19c79d77;
}
.sb-affiliate h6{font-weight:700;margin:0}
.sb-affiliate p{color:var(--muted)}
/* ===== FAQ (scoped) ===== */
.sb-faq{ --sb:#19c79d; --ink:#08362b; --muted:#6b7280; }
.sb-faq .accordion-item{
  border:1px solid rgba(2,6,12,.08) !important;
  border-radius:16px; overflow:hidden; box-shadow:0 8px 28px rgba(2,6,12,.05);
  margin-bottom:.75rem;
}
.sb-faq .accordion-button{
  padding:1rem 1.25rem; font-weight:600;
}
.sb-faq .accordion-button:not(.collapsed){
  background:linear-gradient(180deg,#19c79d1a,#19c79d0d);
}
.sb-faq .accordion-body{ color:var(--muted) }
.sb-faq .input-group .form-control{ border-left:0 }
.sb-faq .input-group .input-group-text{ border-right:0 }
  :root{ --sb:#19c79d; --ink:#08362b; }
  body{ font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif; }

  /* ===== Contact (scoped) ===== */
  .sb-contact .hero-card{
    background: radial-gradient(1200px 600px at 80% -10%, #19c79d22, transparent),
                linear-gradient(180deg,#ffffff,#f8faf9);
    border:1px solid rgba(2,6,12,.08);
    border-radius:20px;
    box-shadow:0 18px 48px rgba(2,6,12,.08);
  }
  .sb-contact .badge-soft{
    background:#e8f7f2; color:#0a3c31; border:1px solid #bde9dc;
  }
  .sb-contact .card-lite{
    border:1px solid rgba(2,6,12,.08);
    border-radius:16px;
    box-shadow:0 10px 28px rgba(2,6,12,.06);
  }
  .sb-contact .icon-bubble{
    width:48px; height:48px; border-radius:14px;
    display:grid; place-items:center; color:#0a3c31;
    background:linear-gradient(135deg,#19c79d22,#19c79d10);
    border:1px solid #19c79d55;
  }
  .sb-contact .form-control:focus,
  .sb-contact .form-select:focus{ border-color:#19c79d; box-shadow:0 0 0 .2rem rgba(25,199,157,.2) }
  .sb-contact .btn-brand{ background:var(--sb); color:#08362b; border-color:#15b488 }
  .sb-contact .btn-brand:hover{ filter:saturate(1.05) brightness(.98) }
  .sb-contact .btn-outline-brand{ border-color:#19c79d; color:#0a3c31 }
  .sb-contact .btn-outline-brand:hover{ background:#19c79d; color:#08362b }
  .sb-contact .map-box{ background:#0e2d27 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="400"><rect width="100%" height="100%" fill="%230e2d27"/><text x="50%" y="50%" dominant-baseline="middle" text-anchor="middle" fill="%2319c79d" font-family="Inter" font-size="20">Map placeholder — link opens Maps</text></svg>') center/cover no-repeat; border-radius:14px; min-height:160px }
  .sb-contact .list-slim li{ margin-bottom:.35rem }
  @media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 29px;
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }
}
/* Put the chevrons overlay behind and let clicks pass through */
.chevrons-bg,
.newsletter { position: relative; z-index: 0; }

.chevrons-bg::before,
.chevrons-bg::after {
  pointer-events: none !important;  /* don't block inputs */
  z-index: -1;                      /* sit behind the content */
}

/* Ensure the form is on top of any background layers */
.newsletter form { position: relative; z-index: 1; }
:root{
  --brand:#19c79d; --brand2:#46e0c7; --ink:#0f172a; --muted:#516273;
  --bg:#f6fbfa; --card:#fff; --ring:#8fe8d2;
}
@media (prefers-color-scheme: dark){
  :root{ --ink:#e6edf3; --muted:#98a3b3; --card:#0f172a; --bg:#0b1311; }
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:
  radial-gradient(1200px 700px at 110% -10%, #dbfff4 0%, transparent 50%),
  radial-gradient(900px 600px at -10% 120%, #dbfff4 0%, transparent 55%),
  var(--bg);
  color:#000;
}
.wrap{max-width:1100px;margin:auto;padding:44px 18px}

/* Header */
.header .badge{
  display:inline-flex;gap:8px;align-items:center;
  padding:6px 12px;border-radius:999px;font-weight:700;
  background:#eefaf7;color:#0b5242;border:1px solid rgba(25,199,157,.28)
}
.header h1{margin:10px 0 6px;font-weight:800;letter-spacing:-.02em}
.header p{margin:0;color:var(--muted)}

/* Stage with decorative SVG lines behind cards */
.stage{position:relative;margin-top:20px}
.web{
  position:absolute; inset:0; z-index:0; pointer-events:none;
}
.nodes{
  position:relative; z-index:1;
  display:grid; gap:18px; grid-template-columns:repeat(3,minmax(0,1fr));
}
@media (max-width: 991.98px){ .nodes{ grid-template-columns:1fr } }

/* Node card (label wraps radio) */
.node{
  position:relative; border-radius:20px; padding:20px; overflow:hidden; cursor:pointer;
  background:linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.58));
  border:1px solid rgba(2,6,12,.08); box-shadow:0 10px 36px rgba(0,0,0,.08);
  transition:transform .18s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
  isolation:isolate;
  text-decoration: auto;
}
@media (prefers-color-scheme: dark){
  .node{ background:linear-gradient(180deg, rgba(15,23,42,.65), rgba(15,23,42,.45)); }
}
.node:hover{ transform:translateY(-4px); box-shadow:0 20px 60px rgba(25,199,157,.18) }
.node.is-selected{ border-color:transparent; box-shadow:0 24px 80px rgba(25,199,157,.28) }

/* Radial ring graphic */
.ring-wrap{
  position:relative; width:92px; height:92px; margin-bottom:12px;
}
.ring{
  width:100%; height:100%;
  filter: drop-shadow(0 6px 18px rgba(25,199,157,.25));
}
circle.bg{
  stroke:rgba(25,199,157,.22); stroke-width:10; fill:none;
}
circle.fg{
  stroke:url(#grad); stroke-width:10; fill:none; stroke-linecap:round;
  stroke-dasharray: 290; stroke-dashoffset: 230; transition: stroke-dashoffset .5s ease;
}
.node:hover circle.fg{ stroke-dashoffset: 200 }
.node.is-selected circle.fg{ stroke-dashoffset: 120 }

/* Center glyph over ring */
.glyph{
  position:absolute; inset:0; display:grid; place-items:center;
  color:#0b523f; font-size:1.4rem;
}
@media (prefers-color-scheme: dark){ .glyph{ color:#9befdb } }

/* Text */
.node h3{margin:4px 0 6px; font-weight:800; color: #000;}
.node p{margin:0; color:var(--muted)}
.features{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.chip{
  font-size:.85rem; padding:6px 10px; border-radius:999px;
  background:#eef7f5; color:#0b523f; border:1px solid rgba(11,82,63,.18); font-weight:600
}
@media (prefers-color-scheme: dark){ .chip{ background:#0f2924; color:#9ef1dd; border-color:#1b3f39 }}

/* Footer inside card */
.foot{ display:flex; justify-content:space-between; align-items:center; margin-top:14px }
.pill{
  display:inline-flex; align-items:center; gap:8px; padding:.5rem .9rem; border-radius:999px; font-weight:700;
  background:#f0fbf7; color:#0b523f; border:1px solid rgba(11,82,63,.18);
}
.node.is-selected .pill{ background:var(--brand); color:#08362b; border-color:transparent }

/* Check badge */
.check{
  width:28px; height:28px; border-radius:999px; display:grid; place-items:center;
  border:2px solid #d7ece6; color:transparent; transition:.2s ease
}
.node.is-selected .check{ border-color:var(--brand); background:var(--brand); color:#08362b }

/* Hidden radio */
.node input[type=radio]{ position:absolute; inset:0; opacity:0; pointer-events:none }

/* Continue */
.actions{ display:flex; justify-content:center; margin-top:22px }
.btn{
  border:0; background:#0b1f1b; color:#fff; border-radius:999px; padding:12px 22px; font-weight:800; cursor:pointer
}
.btn:disabled{ opacity:.6; cursor:not-allowed }
  .contact-aside{
    border-radius:18px;
    border:1px solid #e8efec;
    background:
      radial-gradient(900px 500px at 95% -10%, rgba(25,199,157,.20), rgba(25,199,157,.06) 60%),
      linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,.88));
    box-shadow:0 24px 60px rgba(0,0,0,.08);
    padding:24px;
    position:sticky; top:24px;
  }
  .contact-chip{
    display:inline-flex; align-items:center; gap:.5rem;
    background:rgba(25,199,157,.14); color:#0b523f;
    border:1px solid rgba(25,199,157,.25);
    padding:.4rem .8rem; border-radius:999px; font-weight:600; font-size:.9rem;
  }
  .contact-mini{
    background:#fff; border:1px solid #e8efec; border-radius:16px; padding:16px;
    box-shadow:0 12px 36px rgba(0,0,0,.06);
  }
  .contact-mini .icon-bubble{
    width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
    background:rgba(25,199,157,.12); color:#0b523f; font-size:1.1rem
  }
  .contact-banner{
    background:rgba(25,199,157,.18); color:#0b523f;
    border-radius:10px; padding:8px 12px; font-size:.92rem;
  }
  @media (max-width: 991.98px){ .contact-aside{ position:static; } }

  .navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
    padding: 18px;
}



@media (max-width: 575.98px) {
  .dark-overlay::after {
    display: none !important;
  }
}
/* put in assets/css/custom.css */
.iti { width: 100%; }
.iti__flag-container { z-index: 5; } /* avoid overlap with other elements */
