* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height: 1.6;
  color: #1f2937;
  background: #ffffff;
  font-size: var(--fs-500);
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
:focus-visible { outline: 3px solid rgba(202,162,77,.55); outline-offset: 3px; }

:root{
  --fs-900: clamp(2.4rem, 4vw, 3.3rem);
  --fs-800: clamp(1.9rem, 3vw, 2.6rem);
  --fs-700: clamp(1.4rem, 2vw, 2.1rem);
  --fs-600: 1.08rem;
  --fs-500: 1rem;
  --fs-400: 0.92rem;
  --fs-300: 0.78rem;

  --space-1: 6px;
  --space-2: 10px;
  --space-3: 14px;
  --space-4: 18px;
  --space-5: 26px;
  --space-6: 36px;
  --space-7: 72px;

  --green-950:#14271c;
  --green-900:#1f3a2a;
  --green-700:#2e5339;
  --green-600:#3b6e4f;

  --gold-500:#caa24d;
  --gold-300:#edd9a4;

  --soft-100:#eef5f0;
  --muted:#6b7280;
  --card:#ffffff;

  --shadow: 0 8px 24px rgba(0,0,0,.08);
  --shadow2: 0 16px 36px rgba(0,0,0,.14);

  --radius: 16px;
  --radius-sm: 12px;
}

.skip-link{
  position:absolute;
  left: 16px;
  top: -60px;
  background: #fff;
  color: #111827;
  padding: 10px 14px;
  border-radius: 10px;
  border: 2px solid rgba(0,0,0,.18);
  z-index: 200;
  transition: top .2s ease;
}
.skip-link:focus{
  top: 12px;
}

.container { max-width: 1240px; margin: 0 auto; padding: 0 20px; }
.section { padding: var(--space-7) 0; }
.bg-soft { background: var(--soft-100); }
.bg-white { background: #fff; }
.eyebrow{
  text-transform: uppercase;
  letter-spacing: .2em;
  font-size: var(--fs-300);
  font-weight: 900;
  color: var(--green-700);
}

.section-head { margin-bottom: var(--space-4); }
.section-head h2 { font-size: var(--fs-700); margin-bottom: var(--space-2); }
.section-head p { color: var(--muted); max-width: 70ch; }
.muted { color: var(--muted); }
.lead{ font-size: var(--fs-600); color: #111827; }
.card{
  background: var(--card);
  border-radius: var(--radius);
  padding: var(--space-4);
  box-shadow: var(--shadow);
  border: 1px solid rgba(0,0,0,.06);
}
.card h3{ margin-bottom: 6px; }
.card p{ color: var(--muted); }

/* TOP BAR */
.topbar{
  background: linear-gradient(135deg, rgba(31,58,42,.96), rgba(46,83,57,.92));
  color: rgba(255,255,255,.92);
  font-weight: 700;
  font-size: .92rem;
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.topbar-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 10px 0;
}
.topbar-left{ display:flex; align-items:center; gap: 10px; }
.dot{
  width: 10px; height: 10px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, var(--gold-300), var(--gold-500));
  box-shadow: 0 0 0 3px rgba(202,162,77,.22);
}
.topbar-right{ display:flex; align-items:center; gap: 10px; }
.topbar-link{ opacity: .92; text-decoration: underline; text-underline-offset: 3px; }
.topbar-link:hover{ opacity: 1; }
.sep{ opacity: .55; }

/* NAV */
.nav{
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.90);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: var(--space-3) 0;
  flex-wrap: nowrap;
}

/* Brand lockup */
.brand{
  display:flex;
  align-items:center;
  gap: 0;
  font-weight: 900;
  letter-spacing: .2px;
}
.brand-logo-wrap{
  width: 96px;
  height: 96px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(202,162,77,.35);
  box-shadow: 0 14px 26px rgba(16,24,32,.18), inset 0 0 0 1px rgba(255,255,255,.8);
  display: grid;
  place-items: center;
  overflow: hidden;
}
.brand-logo{
  width: 88px;
  height: 88px;
  object-fit: contain;
  transform: scale(2);
  transform-origin: center;
}

.brand-text{
  display:flex;
  align-items:baseline;
  gap: 8px;
  line-height: 1;
  white-space: nowrap;
}
.brand-the{
  font-weight: 900;
  color: var(--green-900);
  font-size: 1.05rem;
}
.brand-name{
  font-weight: 1000;
  color: var(--green-950);
  font-size: 1.32rem;
  letter-spacing: .2px;
}
.brand-pros{
  font-weight: 1000;
  font-size: 1.02rem;
  color: #11311f;
  padding: 7px 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--gold-300), var(--gold-500));
  box-shadow: 0 10px 18px rgba(202,162,77,.22);
  border: 1px solid rgba(0,0,0,.08);
}

.nav-links{
  display:flex;
  gap: 14px;
  color: #374151;
  font-weight: 700;
  font-size: .93rem;
  white-space: nowrap;
}
.nav-links a{ opacity: .85; }
.nav-links a:hover{ opacity: 1; text-decoration: underline; text-underline-offset: 4px; }
.nav-links a.is-active{ opacity: 1; text-decoration: underline; text-underline-offset: 4px; }

.nav-cta{ display:flex; gap: 10px; }

/* BUTTONS */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 900;
  border: 1px solid transparent;
  transition: transform .15s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
  white-space: nowrap;
}
.btn:hover{ transform: translateY(-1px); }
.btn:active{ transform: translateY(0); }
.btn-primary{
  background: linear-gradient(135deg, var(--green-700), var(--green-600));
  color: #fff;
  box-shadow: var(--shadow2);
}
.btn-primary:hover{ opacity: .96; }
.btn-ghost{
  background: rgba(255,255,255,.65);
  border-color: rgba(0,0,0,.12);
  color: #111827;
}
.btn-ghost:hover{ background: rgba(255,255,255,.92); }
.btn-lg{ padding: 12px 18px; font-size: 1.02rem; }
.btn:focus-visible{ outline: 3px solid rgba(237,217,164,.7); }

.cta-row{
  margin-top: var(--space-5);
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
}
.cta-row .btn-ghost{
  opacity: .85;
}
.cta-row .btn-ghost:hover{
  opacity: 1;
}

.cta-section{ padding-top: 36px; }
.cta-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 20px;
  background: linear-gradient(135deg, rgba(46,83,57,.10), rgba(59,110,79,.08));
  border-radius: var(--radius);
  border: 1px solid rgba(0,0,0,.06);
  padding: var(--space-5);
}
.cta-card h2{ margin-bottom: 6px; }
.cta-card p{ color: var(--muted); }
.cta-actions{
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
}

/* HERO */
.hero{
  position: relative;
  min-height: 82vh;
  display:flex;
  align-items:center;
  color: #fff;
  overflow:hidden;
  isolation: isolate;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px);
  background-size: 48px 48px;
  opacity:.16;
  z-index:2;
  pointer-events:none;
  mask-image: radial-gradient(circle at 52% 42%, #000 16%, transparent 78%);
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(980px 560px at 14% 8%, rgba(54, 133, 255, .32), transparent 62%),
    radial-gradient(760px 520px at 86% 14%, rgba(86, 215, 173, .26), transparent 64%),
    radial-gradient(500px 280px at 54% 0%, rgba(237,217,164,.30), transparent 72%);
  opacity:.72;
  z-index:1;
  pointer-events:none;
  mix-blend-mode: screen;
}
.hero-media{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:0;
}
.hero-media img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
  filter: saturate(1.08) contrast(1.06);
}
.hero-media video{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
  filter: brightness(.62) saturate(1.05) contrast(1.05);
}
.hero-media svg{
  width:100%;
  height:100%;
  display:block;
}
.hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(165deg, rgba(7, 18, 13, .86), rgba(9, 26, 18, .62) 40%, rgba(8, 20, 15, .86)),
    radial-gradient(940px 520px at 18% 30%, rgba(46,83,57,.34), transparent 62%);
  z-index:1;
}
.hero-watermark{
  position:absolute;
  inset:-8% -8% auto auto;
  width: 560px;
  height: 560px;
  opacity: .34;
  border-radius: 50%;
  background:
    radial-gradient(circle at 32% 30%, rgba(237,217,164,.30), transparent 48%),
    radial-gradient(circle at 65% 60%, rgba(130,176,255,.18), transparent 58%),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.04), transparent 62%);
  border: 1px solid rgba(237,217,164,.26);
  transform: rotate(8deg);
  mix-blend-mode: screen;
  pointer-events:none;
  z-index:2;
}
.hero-watermark{
  display: block;
  animation: heroSpin 20s linear infinite;
}
.hero-content{
  position: relative;
  padding: 78px 0;
  z-index:3;
  text-shadow: 0 8px 24px rgba(0,0,0,.55);
}

.hero-brand{
  display:flex;
  align-items:center;
  gap: 16px;
  margin-bottom: 14px;
}
.hero-brand-mark{
  width: 96px;
  height: 96px;
  border-radius: 26px;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(232,244,236,.92));
  border: 1px solid rgba(255,255,255,.32);
  box-shadow: 0 18px 36px rgba(0,0,0,.28);
  display:grid;
  place-items:center;
  overflow:hidden;
}
.hero-brand-mark img{
  width: 110px;
  height: 110px;
  object-fit: contain;
}
.hero-kicker{
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .78rem;
  opacity: .92;
}
.hero-wordmark{
  display:flex;
  align-items:baseline;
  gap: 10px;
  line-height: 1;
}
.wm-the{
  font-weight: 900;
  font-size: 1.05rem;
  opacity: .92;
}
.wm-name{
  font-weight: 1000;
  font-size: 1.7rem;
}
.wm-pros{
  font-weight: 1000;
  font-size: 1.05rem;
  padding: 7px 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(237,217,164,.92), rgba(202,162,77,.92));
  color: #15311f;
  border: 1px solid rgba(255,255,255,.18);
}

.hero-badge{
  display:inline-flex;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(3,10,8,.46);
  border: 1px solid rgba(255,255,255,.34);
  margin-bottom: 14px;
  font-weight: 800;
  backdrop-filter: blur(8px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.26);
}
.hero-video-callout{
  margin: 6px auto 18px;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.28);
  background: linear-gradient(130deg, rgba(20,39,28,.56), rgba(14,35,25,.42));
  font-weight: 600;
  max-width: 62ch;
  text-align: center;
  box-shadow: 0 20px 36px rgba(0,0,0,.24);
}
.hero-video-callout span{
  display:inline-block;
  font-weight: 900;
  color: #f7e7b9;
  margin-right: 6px;
}
.hero h1{
  font-size: var(--fs-900);
  line-height: 1.1;
  margin-bottom: 14px;
  max-width: 26ch;
  margin-left: auto;
  margin-right: auto;
  text-shadow: 0 8px 20px rgba(0,0,0,.55);
}
.hero p{
  font-size: var(--fs-600);
  max-width: 60ch;
  opacity: .95;
  margin-left: auto;
  margin-right: auto;
  text-shadow: 0 6px 18px rgba(0,0,0,.5);
}
.hero-subtext{
  margin-top: 10px;
  font-weight: 700;
  max-width: 60ch;
  color: rgba(255,255,255,.9);
  margin-left: auto;
  margin-right: auto;
}
.hero-actions{
  margin-top: 18px;
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content:center;
}
.hero-actions .btn{
  min-width: 210px;
  box-shadow: 0 14px 28px rgba(0,0,0,.28);
}
.hero-actions .btn-primary{
  box-shadow: 0 20px 42px rgba(0,0,0,.34);
}
.hero-list{
  margin-top: 16px;
  display:grid;
  gap: 10px;
  max-width: 60ch;
  margin-left: auto;
  margin-right: auto;
}
.hero-list li{
  list-style: none;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  font-weight: 600;
}
.hero-list span{
  display:inline-flex;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.2);
  font-size: .9rem;
}
.hero-trust{
  margin-top: 26px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  min-height: 120px;
}
.trust-item{
  background: linear-gradient(140deg, rgba(255,255,255,.18), rgba(255,255,255,.1));
  border: 1px solid rgba(255,255,255,.22);
  border-radius: var(--radius-sm);
  padding: 14px 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
}
.trust-title{ font-weight: 900; margin-bottom: 2px; }
.trust-sub{ font-size: .92rem; opacity: .92; }

@keyframes heroSpin{
  from { transform: rotate(8deg); }
  to { transform: rotate(368deg); }
}

/* PAGE HERO */
.page-hero{
  padding: var(--space-6) 0;
  background: linear-gradient(135deg, rgba(46,83,57,.10), rgba(59,110,79,.06));
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.page-hero-inner{ max-width: 75ch; }
.page-hero h1{
  font-size: var(--fs-800);
  margin-bottom: 8px;
}

/* STEPS */
.steps{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
}
.step{
  background: var(--card);
  border-radius: var(--radius);
  padding: 18px 18px;
  box-shadow: var(--shadow);
  border: 1px solid rgba(0,0,0,.06);
}
.step-num{
  width: 38px; height: 38px;
  border-radius: 12px;
  display:grid; place-items:center;
  font-weight: 1000;
  color: #fff;
  background: linear-gradient(135deg, var(--green-700), var(--green-600));
  margin-bottom: 10px;
}
.step p{ color: var(--muted); }

/* AUDIENCE */
.audience-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
}
.list{
  margin-top: 12px;
  display:grid;
  gap: 8px;
}
.list li{
  list-style: none;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  color: var(--muted);
}
.list span{
  width: 20px;
  height: 20px;
  border-radius: 6px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(46,83,57,.12);
  color: var(--green-700);
  font-size: .85rem;
  margin-top: 2px;
}

/* TRUST */
.trust-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
}
.trust-card{
  background: #fff;
  border-radius: var(--radius);
  border: 1px solid rgba(0,0,0,.08);
  padding: 16px;
  box-shadow: var(--shadow);
}
.trust-card h3{ margin-bottom: 4px; }
.trust-card p{ color: var(--muted); }

/* FAQ */
.faq{
  display:grid;
  gap: 14px;
}
.faq-item{
  background: #fff;
  border-radius: var(--radius);
  padding: 16px;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow);
}
.faq-item h3{ margin-bottom: 6px; }
.faq-item p{ color: var(--muted); }

/* TESTIMONIALS */
.testimonial-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}
.testimonial{
  background: #fff;
  border-radius: var(--radius);
  padding: 18px;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow);
}
.testimonial p{ color: var(--muted); margin-bottom: 10px; }
.testimonial span{ font-weight: 900; }

/* SERVICES */
.services-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
  align-items: stretch;
}
.service-card{
  background: var(--card);
  border-radius: var(--radius);
  padding: 18px 18px;
  box-shadow: var(--shadow);
  border: 1px solid rgba(0,0,0,.06);
  transition: transform .15s ease, box-shadow .2s ease;
}
.service-card:hover{ transform: translateY(-2px); box-shadow: var(--shadow2); }
.service-card .icon{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  margin-bottom: 10px;
  width: 56px;
  height: 56px;
}
.service-card p{ color: var(--muted); }
.service-icon{
  width: 56px;
  height: 56px;
  object-fit: contain;
  display:block;
}

/* STORY GRID */
.story-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 16px;
}
.story-card{
  background: var(--card);
  border-radius: var(--radius);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: var(--shadow);
  overflow: hidden;
  display:flex;
  flex-direction: column;
}
.story-card picture{ display:block; }
.story-card img{
  width: 100%;
  height: 220px;
  object-fit: cover;
  display:block;
}
.story-card figcaption{
  padding: 12px 14px 16px;
  font-weight: 800;
  color: #1f2937;
  line-height: 1.4;
}
.story-icon-card{
  align-items: center;
  text-align: center;
  padding-top: 18px;
}
.story-icon-card .story-icon{
  width: 72px;
  height: 72px;
  object-fit: contain;
  display:block;
  margin: 4px auto 8px;
}
.story-icon-card figcaption{
  padding: 8px 18px 18px;
}

.pill-row{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.pill{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  border-radius: 999px;
  padding: 6px 12px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.7);
  font-weight: 800;
  color: #1f2937;
}
.price-card{
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(241,248,245,.96));
  border-radius: var(--radius);
  border: 1px solid rgba(26,63,42,.12);
  box-shadow: var(--shadow2);
  padding: 18px 20px;
  margin-top: 18px;
}
.price-header{
  display:flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 10px;
}
.price-label{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .72rem;
  color: var(--muted);
}
.price-amount{
  font-size: 1.7rem;
  font-weight: 1000;
  color: var(--forest);
}
.price-row{
  display:flex;
  justify-content: space-between;
  gap: 12px;
  font-weight: 700;
  padding: 8px 0;
  border-top: 1px solid rgba(0,0,0,.06);
}
.price-row span:last-child{ color: #1f2937; }
.price-note{
  margin-top: 10px;
  color: var(--muted);
}

/* EMBEDS */
.embed-card{
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: var(--shadow2);
  border: 1px solid rgba(0,0,0,.06);
  overflow: hidden;
}

/* FORM */
.form-card{
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: var(--shadow2);
  border: 1px solid rgba(0,0,0,.06);
  padding: var(--space-4);
}
.form-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 14px;
}
label{ display:flex; flex-direction:column; gap: 6px; font-weight: 900; }
input, select, textarea{
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.14);
  outline: none;
  font: inherit;
  background: #fff;
}
input:focus, select:focus, textarea:focus{
  border-color: rgba(59,110,79,.6);
  box-shadow: 0 0 0 4px rgba(59,110,79,.15);
}
.fieldset{
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  padding: 12px;
  grid-column: 1 / -1;
  text-align: left;
}
.fieldset legend{ font-weight: 1000; padding: 0 6px; text-align:left; width:100%; }
.check{
  display:flex;
  flex-direction: row;
  align-items:center;
  gap: 10px;
  font-weight: 800;
  margin: 8px 0;
  justify-content:flex-start;
  text-align: left;
}
.check input{ width: auto; }
.certs-left{ text-align: left; }
.certs-left legend{ text-align: left; }
.certs-left .check{
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
  text-align: left;
}
.fieldset.align-right{ text-align: right; }
.fieldset.align-right legend{ text-align: right; }
.fieldset.align-right .check{ justify-content: flex-end; }
.full{ grid-column: 1 / -1; }
.form-note{ margin-top: 10px; }
.trust-row{
  display:flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 10px;
  font-size: .9rem;
  color: var(--muted);
}
.trust-row span{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.9);
  font-weight: 700;
}
.availability-grid{
  display:flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-top: 6px;
}
.faq-grid{
  display:grid;
  gap: 12px;
}
.faq-grid details{
  background: #fff;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
  padding: 12px 14px;
  box-shadow: var(--shadow);
}
.faq-grid summary{
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}
.faq-grid summary::-webkit-details-marker{
  display:none;
}
.faq-grid details p{
  margin-top: 8px;
  color: var(--muted);
}

/* FOOTER */
.footer{
  background: linear-gradient(135deg, #1f3a2a, #2e5339);
  color: #fff;
  padding: 48px 0 16px;
}
.footer-inner{
  display:grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap: 18px;
}
.footer a{ display:block; opacity: .9; margin: 6px 0; }
.footer a:hover{ opacity: 1; text-decoration: underline; text-underline-offset: 4px; }
.footer-bottom{ margin-top: 18px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.18); }

/* RESPONSIVE */
@media (max-width: 980px){
  .nav-links{ display:none; }
  .hero::before{ opacity: .1; background-size: 34px 34px; }
  .hero-watermark{ width: 420px; height: 420px; opacity: .24; }
  .hero-trust{ grid-template-columns: 1fr; }
  .steps{ grid-template-columns: 1fr 1fr; }
  .services-grid{ grid-template-columns: 1fr 1fr; }
  .story-grid{ grid-template-columns: 1fr 1fr; }
  .audience-grid{ grid-template-columns: 1fr; }
  .trust-grid{ grid-template-columns: 1fr 1fr; }
  .testimonial-grid{ grid-template-columns: 1fr; }
  .footer-inner{ grid-template-columns: 1fr; }
  .form-grid{ grid-template-columns: 1fr; }
  .cta-card{ flex-direction: column; align-items: flex-start; }
}
@media (max-width: 560px){
  .nav-cta{ display:none; }
  .brand-logo-wrap{ width: 80px; height: 80px; border-radius: 999px; }
  .brand-logo{ width: 72px; height: 72px; }
  .brand-logo{ transform: scale(1.6); }
  .brand-name{ font-size: 1.18rem; }
  .brand-the{ display:none; } /* keep it clean on small screens */
  .hero-brand-mark{ width: 76px; height: 76px; border-radius: 20px; }
  .hero-brand-mark img{ width: 92px; height: 92px; }
  .hero{ min-height: auto; }
  .hero::before{ opacity: .07; }
  .hero-watermark{ display:none; }
  .hero-actions{ flex-direction: column; align-items: stretch; }
  .hero-actions .btn{ width: 100%; }
  .cta-actions{ flex-direction: column; align-items: stretch; width: 100%; }
  .cta-actions .btn{ width: 100%; }
  .cta-card{ padding: 22px; }
  .steps{ grid-template-columns: 1fr; }
  .services-grid{ grid-template-columns: 1fr; }
  .story-grid{ grid-template-columns: 1fr; }
  .trust-grid{ grid-template-columns: 1fr; }
}
