/* BRIVANTA v1.3.0 — official logo + premium brand refinement */
:root {
  --ink: #20292b;
  --ink-2: #33423b;
  --muted: #617067;
  --muted-2: #78847d;
  --forest: #17643b;
  --forest-2: #2b7d49;
  --forest-3: #0f4f2e;
  --sage: #dcecdf;
  --sage-2: #edf6ee;
  --sage-3: #f5faf5;
  --sage-4: #fbfdfb;
  --line: rgba(33, 79, 49, 0.13);
  --line-strong: rgba(31, 77, 47, 0.2);
  --glass: rgba(241, 248, 242, 0.94);
  --glass-strong: rgba(250, 253, 250, 0.98);
  --shadow: 0 34px 90px rgba(31, 66, 43, 0.12);
  --shadow-soft: 0 16px 44px rgba(31, 66, 43, 0.08);
  --shadow-hover: 0 24px 58px rgba(28, 70, 43, 0.13);
}

body {
  color: var(--ink);
  background:
    radial-gradient(circle at 8% 4%, rgba(178, 219, 186, 0.30), transparent 31rem),
    radial-gradient(circle at 92% 18%, rgba(220, 239, 222, 0.64), transparent 32rem),
    linear-gradient(180deg, #fcfefc 0%, #f7fbf7 48%, #fbfdfb 100%);
}

::selection { background: #d4ead8; color: #1e2829; }

.soft-glass {
  background: linear-gradient(145deg, rgba(252, 254, 252, 0.97), rgba(232, 243, 234, 0.94));
  border-color: rgba(35, 81, 50, 0.13);
  box-shadow: 0 16px 46px rgba(30, 70, 43, 0.075), inset 0 1px 0 rgba(255,255,255,.82);
  backdrop-filter: blur(16px) saturate(112%);
  -webkit-backdrop-filter: blur(16px) saturate(112%);
}

.eyebrow { color: #2d7049; }
.section-heading h2,
.content-card h2,
.contact-info h2,
.note-panel h2,
.footer-cta h2,
.results-card h2 { color: #20292b; }

.site-header {
  background: rgba(252, 254, 252, 0.90);
  border-bottom-color: rgba(33, 72, 46, 0.08);
  backdrop-filter: blur(22px) saturate(125%);
  -webkit-backdrop-filter: blur(22px) saturate(125%);
}

.site-header.scrolled {
  background: rgba(252, 254, 252, 0.975);
  border-bottom-color: rgba(33, 72, 46, 0.13);
  box-shadow: 0 12px 36px rgba(29, 59, 39, 0.07);
}

.brand-official {
  gap: 12px;
  min-height: 54px;
}

.brand-symbol-crop {
  position: relative;
  width: 50px;
  height: 52px;
  flex: 0 0 auto;
  overflow: hidden;
  border: 1px solid rgba(31, 71, 44, 0.11);
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(27, 68, 41, 0.09), inset 0 1px 0 rgba(255,255,255,.95);
}

.brand-symbol-crop img {
  position: absolute;
  width: 120px;
  max-width: none;
  height: 120px;
  left: -35px;
  top: -20px;
  object-fit: contain;
}

.brand-copy strong {
  color: #242c2e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.brand-copy small {
  color: #23633e;
  margin-top: 5px;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: 0.23em;
}

.nav-link { color: #5c6861; }
.nav-link:hover,
.nav-link.active { color: #17643b; }
.nav-link.active::after { background: #1d6c40; }

.button {
  border-radius: 16px;
}

.button-primary {
  background: linear-gradient(145deg, #2b7d49 0%, #17643b 58%, #0f512e 100%);
  box-shadow: 0 13px 30px rgba(21, 87, 50, 0.20), inset 0 1px 0 rgba(255,255,255,.18);
}

.button-primary:hover {
  background: linear-gradient(145deg, #318653 0%, #17643b 58%, #0e4b2b 100%);
  box-shadow: 0 16px 36px rgba(21, 87, 50, 0.24), inset 0 1px 0 rgba(255,255,255,.18);
}

.button-secondary {
  color: #2d4637;
  background: rgba(253, 254, 253, 0.92);
  border-color: rgba(34, 76, 47, 0.14);
  box-shadow: 0 9px 24px rgba(31, 68, 43, 0.055);
}

.hero {
  padding-top: 168px;
}

.hero h1,
.inner-hero h1 {
  color: #20292b;
  text-wrap: balance;
}

.hero h1 em,
.inner-hero h1 em { color: #1d6b40; }

.hero-lead {
  color: #5d6b63;
  font-size: 18px;
}

.status-pill {
  border-color: rgba(29, 97, 56, 0.14);
  background: rgba(237, 247, 239, 0.95);
  color: #315f43;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
}

.hero-trust div { border-right-color: rgba(34, 76, 47, 0.12); }
.hero-trust strong { color: #2b3731; }

.strategy-card {
  border: 1px solid rgba(31, 79, 47, 0.13);
  background:
    radial-gradient(circle at 100% 0%, rgba(184, 222, 191, 0.26), transparent 16rem),
    linear-gradient(145deg, rgba(253, 254, 253, 0.99), rgba(230, 242, 232, 0.97));
  box-shadow: 0 38px 96px rgba(29, 71, 43, 0.14), inset 0 1px 0 rgba(255,255,255,.92);
}

.strategy-card h2,
.metric-row strong { color: #25312b; }

.active-tag,
.checkmark { background: rgba(211, 235, 216, 0.82); }

.principles-bar {
  border-top-color: rgba(31, 77, 46, 0.08);
  border-bottom-color: rgba(31, 77, 46, 0.08);
  background: rgba(247, 251, 247, 0.80);
}

.service-card,
.value-stack article,
.steps-panel,
.content-card,
.note-panel,
.contact-method,
.contact-form-card {
  border-color: rgba(33, 80, 49, 0.13);
}

.service-card:hover {
  border-color: rgba(29, 101, 58, 0.23);
  box-shadow: var(--shadow-hover);
}

.service-symbol,
.card-link,
.text-link { color: #1d6b40; }

.soft-section {
  background: linear-gradient(180deg, rgba(238, 247, 239, 0.78), rgba(248, 251, 248, 0.78));
  border-top: 1px solid rgba(33, 78, 48, 0.06);
  border-bottom: 1px solid rgba(33, 78, 48, 0.06);
}

.process-grid article {
  background: rgba(253, 254, 253, 0.74);
  border-color: rgba(35, 79, 49, 0.10);
}

.results-card {
  background:
    radial-gradient(circle at 85% 15%, rgba(62, 133, 81, 0.35), transparent 28rem),
    linear-gradient(135deg, #1e2925 0%, #153c29 52%, #0f4c2d 100%);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 32px 80px rgba(24, 54, 35, 0.17);
}

.results-card h2,
.results-card .result-list strong { color: #fff; }
.results-card .result-list span { color: rgba(235, 245, 238, 0.72); }

.site-footer {
  background: linear-gradient(180deg, rgba(249, 252, 249, 0.94), #f5f9f5);
}

.footer-cta {
  border-color: rgba(29, 91, 52, 0.15);
  background:
    radial-gradient(circle at 100% 0%, rgba(193, 226, 199, 0.33), transparent 22rem),
    linear-gradient(145deg, rgba(253, 254, 253, 0.99), rgba(232, 243, 234, 0.96));
}

.footer-official-brand {
  display: inline-flex;
  align-items: center;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(28, 67, 41, 0.075);
}

.footer-official-logo {
  display: block;
  width: 222px;
  max-width: 100%;
  height: auto;
  border: 1px solid rgba(31, 74, 45, 0.10);
  border-radius: 20px;
}

.footer-brand-col > p {
  max-width: 370px;
  margin-top: 20px;
}

.footer-phone { color: #1a6540; }
.footer-links h3 { color: #28342e; }
.footer-links a { color: #647168; }
.footer-links a:hover { color: #17643b; }

input,
select,
textarea {
  border-color: rgba(33, 78, 48, 0.14) !important;
  background: rgba(255,255,255,.88) !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: rgba(28, 104, 59, 0.34) !important;
  box-shadow: 0 0 0 4px rgba(33, 121, 68, 0.07) !important;
}

@media (max-width: 1100px) {
  .brand-copy strong { font-size: 14px; letter-spacing: .14em; }
  .brand-copy small { font-size: 8.5px; letter-spacing: .19em; }
}

@media (max-width: 760px) {
  .brand-official { gap: 9px; }
  .brand-symbol-crop {
    width: 44px;
    height: 46px;
    border-radius: 13px;
  }
  .brand-symbol-crop img {
    width: 106px;
    height: 106px;
    left: -31px;
    top: -18px;
  }
  .brand-copy strong { font-size: 12px; letter-spacing: .13em; }
  .brand-copy small { margin-top: 4px; font-size: 7.5px; letter-spacing: .17em; }
  .hero { padding-top: 138px; }
  .footer-official-logo { width: 190px; border-radius: 17px; }
}

@media (max-width: 390px) {
  .brand-copy small { display: none; }
  .brand-copy strong { font-size: 12px; letter-spacing: .11em; }
  .brand-symbol-crop { width: 42px; height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
  .button,
  .text-link span { transition: none !important; }
}
