
:root{
  --green:#07985e;
  --green-dark:#047548;
  --teal:#0797a7;
  --navy:#071833;
  --text:#0a1833;
  --muted:#59667d;
  --line:#dfeaf0;
  --soft:#f5fbf8;
  --white:#ffffff;
  --shadow:0 18px 45px rgba(8,28,58,.08);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:white;line-height:1.5}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.navbar{height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:14px;font-weight:850;font-size:30px;letter-spacing:-.045em;color:var(--navy);white-space:nowrap}
.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover;box-shadow:0 10px 24px rgba(7,151,167,.16)}
.nav-links{display:flex;align-items:center;gap:27px;font-weight:750;color:var(--navy);font-size:15px}
.nav-links a{padding:28px 0;line-height:1.15;white-space:nowrap}
.nav-links a.active,.nav-links a:hover{color:var(--green)}
.nav-actions{display:flex;align-items:center;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 26px;border-radius:12px;border:0;font-weight:850;font-size:16px;cursor:pointer;transition:.2s ease;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--teal),var(--green));color:white;box-shadow:0 12px 26px rgba(7,151,99,.18)}
.btn-outline{background:white;color:var(--green-dark);border:1.5px solid var(--teal)}
.mobile-menu-btn{display:none;background:white;border:0;color:var(--navy);font-size:34px;font-weight:900;line-height:1}
.mobile-panel{display:none;border-top:1px solid var(--line);background:white;padding:14px 20px 22px}
.mobile-panel.open{display:block}
.mobile-panel a{display:block;padding:15px 8px;border-bottom:1px solid #eef4f7;font-size:18px;font-weight:800;color:var(--navy)}
.mobile-panel .mobile-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-top:16px}
.hero{padding:78px 0;background:radial-gradient(circle at 16% 12%,rgba(7,151,167,.13),transparent 30%),radial-gradient(circle at 82% 13%,rgba(118,200,77,.18),transparent 32%),linear-gradient(180deg,#fff,#f8fcfa)}
.hero-grid{display:grid;grid-template-columns:1.02fr .78fr;gap:64px;align-items:center}
.eyebrow{display:inline-flex;background:#edf7f2;color:var(--green-dark);border:1px solid #dcefe5;border-radius:999px;padding:9px 15px;font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;margin-bottom:24px}
h1{margin:0 0 24px;font-size:clamp(46px,6vw,78px);line-height:.98;letter-spacing:-.065em;color:var(--navy)}
h1 span,.green{color:var(--green)}
.hero p,.lead{font-size:20px;color:#2f3d57;max-width:710px;margin:0 0 30px}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.logo-orbit{min-height:360px;display:grid;place-items:center;position:relative}
.logo-orbit:before,.logo-orbit:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(7,151,167,.12)}
.logo-orbit:before{width:360px;height:360px}
.logo-orbit:after{width:260px;height:260px}
.logo-card{width:205px;height:205px;border-radius:50%;display:grid;place-items:center;background:white;box-shadow:var(--shadow);position:relative;z-index:1}
.logo-card img{width:150px;height:150px;border-radius:50%;object-fit:cover}
.section{padding:72px 0}
.section-header{max-width:820px;margin-bottom:34px}
.kicker{color:var(--green);font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:13px;margin-bottom:10px}
h2{margin:0 0 14px;font-size:clamp(32px,4vw,54px);line-height:1.04;letter-spacing:-.05em;color:var(--navy)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 14px 34px rgba(7,24,51,.05)}
.card h3{font-size:23px;margin:0 0 12px;color:var(--navy);letter-spacing:-.02em}
.card p,.card li{color:var(--muted);font-size:16px}
.card ul{padding-left:20px;margin:14px 0 0}
.icon{width:58px;height:58px;border-radius:18px;background:#e8f7ed;color:var(--green);display:grid;place-items:center;font-size:28px;margin-bottom:22px}
.band{background:linear-gradient(135deg,var(--teal),var(--green));color:white;border-radius:32px;padding:46px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px}
.band h2,.band p{color:white;margin:0}
.band p{opacity:.88;max-width:660px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{border:1px solid var(--line);border-radius:22px;background:#f7fbf9;padding:36px;text-align:center}
.stat strong{font-size:44px;color:var(--green);display:block;line-height:1}
.stat span{display:block;margin-top:12px;color:var(--navy);font-weight:700}
.form-card{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
label{display:block;font-weight:850;color:var(--navy);margin:0 0 9px}
input,select,textarea{width:100%;border:1.5px solid var(--line);border-radius:16px;padding:17px 18px;font:inherit;font-size:16px;color:var(--navy);outline:none;background:white}
textarea{min-height:260px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(7,151,167,.08)}
.full{grid-column:1/-1}
.helper-note{margin-top:20px;background:#f3fbf7;border:1px solid #dcefe5;border-radius:18px;padding:20px;color:var(--muted);font-size:17px}
.account-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.tab-card{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px}
.faq{padding:70px 0}
.faq-wrap{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:white;box-shadow:0 14px 34px rgba(7,24,51,.04)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:last-child{border-bottom:0}
.faq-question{width:100%;background:white;border:0;text-align:left;padding:26px 32px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:22px;font-weight:900;color:var(--navy);cursor:pointer}
.faq-question span:last-child{color:var(--green);font-size:30px;line-height:1}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-answer p{padding:0 32px 28px;margin:0;color:var(--muted);font-size:18px;max-width:1000px}
.faq-item.active .faq-answer{max-height:240px}
.footer{border-top:1px solid var(--line);padding:48px 0;background:white}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:36px}
.footer p,.footer a{color:var(--muted);font-size:17px}
.footer h3{margin:0 0 14px;color:var(--navy)}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.social-link{display:flex!important;align-items:center;gap:10px}
.insta-icon{width:24px;height:24px;border-radius:7px;background:radial-gradient(circle at 30% 105%,#fdf497 0 20%,#fd5949 45%,#d6249f 60%,#285AEB 90%);display:inline-block;position:relative}
.insta-icon:before{content:"";position:absolute;inset:6px;border:2px solid white;border-radius:5px}
.insta-icon:after{content:"";position:absolute;width:4px;height:4px;background:white;border-radius:50%;right:6px;top:6px}
.copyright{margin-top:36px;color:var(--muted);font-size:15px}
@media (max-width:1050px){
 .nav-links,.nav-actions{display:none}.mobile-menu-btn{display:block}
 .hero-grid,.account-layout{grid-template-columns:1fr}
 .grid-3,.grid-4,.stats{grid-template-columns:repeat(2,1fr)}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
 .container{width:min(100% - 28px,560px)}
 .navbar{height:76px}.brand{font-size:25px}.brand img{width:46px;height:46px}
 .hero{padding:48px 0}.hero p,.lead{font-size:17px}
 .hero-actions,.hero-actions .btn{width:100%}
 .logo-orbit{min-height:240px}.logo-orbit:before{width:240px;height:240px}.logo-orbit:after{width:170px;height:170px}.logo-card{width:150px;height:150px}.logo-card img{width:110px;height:110px}
 .grid-3,.grid-4,.stats,.form-grid,.footer-grid{grid-template-columns:1fr}
 .section{padding:52px 0}.card,.form-card,.tab-card{padding:24px}
 .band{flex-direction:column;align-items:flex-start;padding:28px}
 .faq-question{font-size:18px;padding:22px}.faq-answer p{font-size:16px;padding:0 22px 24px}
 textarea{min-height:220px}
}


/* ================================
   FINAL NAVIGATION FIX
   Keeps logo, brand, nav links, and buttons aligned on desktop.
   Prevents Home from overlapping Philantrail.
   ================================ */

.site-header {
  width: 100%;
}

.navbar {
  width: min(1680px, calc(100% - 72px));
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(300px, 360px) 1fr auto;
  align-items: center;
  column-gap: 34px;
}

.brand {
  min-width: 300px;
  flex-shrink: 0;
  font-size: 29px;
}

.brand img {
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
}

.nav-links {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(18px, 1.65vw, 34px);
  font-size: clamp(14px, 0.95vw, 16px);
}

.nav-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 30px 0;
  white-space: nowrap;
  line-height: 1;
}

.nav-actions {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 14px;
}

.nav-actions .btn {
  min-width: 132px;
  min-height: 58px;
  padding: 0 28px;
}

@media (max-width: 1280px) {
  .navbar {
    width: min(1180px, calc(100% - 48px));
    grid-template-columns: auto auto auto;
    column-gap: 22px;
  }

  .brand {
    min-width: 250px;
    font-size: 27px;
  }

  .brand img {
    width: 50px;
    height: 50px;
    flex-basis: 50px;
  }

  .nav-links {
    gap: 18px;
    font-size: 14px;
  }

  .nav-actions .btn {
    min-width: 112px;
    min-height: 54px;
    padding: 0 20px;
  }
}

@media (max-width: 1050px) {
  .navbar {
    width: min(100% - 32px, 720px);
    display: flex;
    justify-content: space-between;
  }

  .brand {
    min-width: 0;
    font-size: 25px;
  }

  .nav-links,
  .nav-actions {
    display: none;
  }

  .mobile-menu-btn {
    display: block;
  }
}

.mobile-panel.open {
  display: block;
  width: 100%;
}

.mobile-panel a {
  text-decoration: none;
}

