:root {
  --cs-bg: #f7f4eb;
  --cs-surface: #fffdf7;
  --cs-surface-2: #edf7f1;
  --cs-ink: #10141f;
  --cs-muted: #5f6b7a;
  --cs-line: rgba(16, 20, 31, 0.12);
  --cs-green: #176b4d;
  --cs-green-dark: #0f4d38;
  --cs-cyan: #bdeee2;
  --cs-radius: 22px;
  --cs-shadow: 0 24px 80px rgba(16, 20, 31, 0.10);
  color-scheme: light;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--cs-bg); color: var(--cs-ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.55; }
a { color: inherit; }
.cs-skip { position: absolute; left: -999px; top: 1rem; background: var(--cs-green); color: #fff; padding: .7rem 1rem; border-radius: 999px; z-index: 99; }
.cs-skip:focus { left: 1rem; }
.cs-header { position: sticky; top: 0; z-index: 50; background: rgba(247,244,235,.88); backdrop-filter: blur(18px); border-bottom: 1px solid var(--cs-line); }
.cs-header-inner { max-width: 1180px; margin: 0 auto; min-height: 74px; display: flex; align-items: center; justify-content: space-between; padding: 0 22px; gap: 24px; }
.cs-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.cs-brand-mark { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: #10141f; color: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; letter-spacing: .08em; }
.cs-brand strong, .cs-brand em { display: block; font-style: normal; }
.cs-brand strong { font-size: 15px; }
.cs-brand em { color: var(--cs-muted); font-size: 12px; }
.cs-nav { display: flex; align-items: center; gap: 20px; color: #26303e; font-size: 14px; }
.cs-nav a { text-decoration: none; }
.cs-nav-cta { background: var(--cs-green); color: #fff !important; padding: 10px 16px; border-radius: 999px; font-weight: 650; }
.cs-menu-button { display: none; border: 1px solid var(--cs-line); border-radius: 999px; background: var(--cs-surface); padding: 9px 13px; color: var(--cs-ink); }
.cs-main { overflow: hidden; }
.cs-hero, .cs-page-hero, .cs-section, .cs-article { max-width: 1180px; margin: 0 auto; padding: 74px 22px; }
.cs-hero { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(280px, .8fr); gap: 48px; align-items: center; min-height: 690px; }
.cs-kicker { margin: 0 0 18px; color: var(--cs-green-dark); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; letter-spacing: .11em; text-transform: uppercase; }
h1, h2, h3 { margin: 0; letter-spacing: 0; line-height: 1.04; }
h1 { font-size: clamp(3rem, 7vw, 6.7rem); max-width: 930px; }
h2 { font-size: clamp(1.7rem, 3vw, 3rem); }
h3 { font-size: 1.18rem; }
p { color: var(--cs-muted); }
.cs-lead { font-size: clamp(1.08rem, 2vw, 1.35rem); max-width: 760px; color: #334155; }
.cs-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 30px; }
.cs-button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; border-radius: 999px; padding: 12px 19px; font-weight: 700; text-decoration: none; border: 1px solid transparent; }
.cs-button-primary { background: var(--cs-green); color: #fff !important; box-shadow: 0 14px 34px rgba(23,107,77,.22); }
.cs-button-primary:hover { background: var(--cs-green-dark); color: #fff !important; }
.cs-button-secondary { background: rgba(255,255,255,.68); color: var(--cs-ink); border-color: var(--cs-line); }
.cs-text-link { display: inline-flex; margin-top: 18px; color: var(--cs-green-dark); font-weight: 750; text-decoration: none; }
.cs-proof-row { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-top: 38px; }
.cs-proof-row div, .cs-card, .cs-band, .cs-hero-visual { background: rgba(255,253,247,.84); border: 1px solid var(--cs-line); border-radius: var(--cs-radius); box-shadow: var(--cs-shadow); }
.cs-proof-row div { padding: 16px; box-shadow: none; }
.cs-proof-row strong, .cs-proof-row span { display: block; }
.cs-proof-row span { color: var(--cs-muted); font-size: 13px; margin-top: 4px; }
.cs-hero-visual { min-height: 500px; padding: 24px; display: grid; place-items: center; background: linear-gradient(160deg, #fffdf7, #e7f5ee); }
.cs-orbit { position: relative; width: min(100%, 340px); aspect-ratio: .72; border: 1px solid rgba(23,107,77,.22); border-radius: 34px; background: radial-gradient(circle at center, #fff 0 24%, transparent 25%), linear-gradient(180deg, rgba(189,238,226,.42), rgba(255,255,255,.75)); display: grid; place-items: center; }
.cs-orbit strong { padding: 18px 20px; border-radius: 18px; background: #10141f; color: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.cs-orbit span { position: absolute; padding: 9px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--cs-line); font-size: 13px; color: #26303e; }
.cs-orbit span:nth-child(1) { top: 26px; left: 36px; }
.cs-orbit span:nth-child(2) { top: 92px; right: 22px; }
.cs-orbit span:nth-child(3) { bottom: 96px; left: 18px; }
.cs-orbit span:nth-child(4) { bottom: 32px; right: 44px; }
.cs-orbit span:nth-child(5) { top: 48%; left: 50%; transform: translate(-50%, -118px); }
.cs-grid { display: grid; gap: 18px; }
.cs-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cs-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cs-card { padding: 26px; }
.cs-card h2, .cs-card h3 { margin-bottom: 14px; }
.cs-section-head { max-width: 820px; margin-bottom: 26px; }
.cs-band { padding: clamp(28px, 5vw, 56px); background: linear-gradient(135deg, #102019, #176b4d); color: #fff; }
.cs-band p, .cs-band .cs-kicker { color: rgba(255,255,255,.76); }
.cs-band .cs-button-secondary { color: #fff; background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.24); }
.cs-page-hero { padding-top: 96px; padding-bottom: 42px; }
.cs-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.cs-list { margin: 16px 0 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.cs-list li { padding-left: 20px; position: relative; color: #334155; }
.cs-list li::before { content: ""; position: absolute; left: 0; top: .7em; width: 7px; height: 7px; border-radius: 999px; background: var(--cs-green); }
.cs-contact-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 20px; align-items: start; }
.cs-form { display: grid; gap: 16px; }
.cs-form label { display: grid; gap: 8px; color: #26303e; font-weight: 650; }
.cs-form input, .cs-form select, .cs-form textarea { width: 100%; border: 1px solid var(--cs-line); border-radius: 16px; background: #fff; padding: 13px 14px; color: var(--cs-ink); font: inherit; }
.cs-form button { border: 0; cursor: pointer; width: fit-content; }
.cs-hp { position: absolute; left: -9999px; }
.cs-form-status { color: var(--cs-green-dark); font-weight: 700; }
.cs-form-error { color: #9f1239; }
.cs-article { max-width: 860px; }
.cs-article h1 { font-size: clamp(2.5rem, 5vw, 4.6rem); }
.cs-article p { font-size: 1.08rem; }
.cs-footer { max-width: 1180px; margin: 40px auto 0; padding: 46px 22px 28px; border-top: 1px solid var(--cs-line); }
.cs-footer-top { display: grid; grid-template-columns: minmax(0, .9fr); margin-bottom: 30px; }
.cs-footer-top h2 { max-width: 760px; font-size: clamp(1.8rem, 3vw, 3.2rem); }
.cs-footer-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; padding-top: 28px; border-top: 1px solid var(--cs-line); }
.cs-footer-grid h3 { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 14px; }
.cs-footer-grid a { display: block; color: var(--cs-muted); text-decoration: none; font-size: 13px; margin: 9px 0; }
.cs-footer-bottom { display: flex; justify-content: space-between; gap: 16px; color: var(--cs-muted); font-size: 13px; border-top: 1px solid var(--cs-line); padding-top: 22px; margin-top: 30px; }
:focus-visible { outline: 3px solid rgba(23,107,77,.34); outline-offset: 3px; }
@media (max-width: 920px) {
  .cs-hero, .cs-contact-layout, .cs-detail-grid { grid-template-columns: 1fr; }
  .cs-grid-4, .cs-grid-3, .cs-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cs-hero { min-height: auto; }
  .cs-hero-visual { min-height: 380px; }
  .cs-proof-row { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .cs-menu-button { display: inline-flex; }
  .cs-nav { display: none; position: absolute; left: 22px; right: 22px; top: 74px; padding: 18px; border: 1px solid var(--cs-line); border-radius: 20px; background: var(--cs-surface); box-shadow: var(--cs-shadow); flex-direction: column; align-items: stretch; }
  .cs-nav.is-open { display: flex; }
}
@media (max-width: 620px) {
  h1 { font-size: 3rem; }
  .cs-hero, .cs-page-hero, .cs-section, .cs-article { padding-left: 16px; padding-right: 16px; }
  .cs-grid-4, .cs-grid-3, .cs-footer-grid, .cs-proof-row { grid-template-columns: 1fr; }
  .cs-actions { align-items: stretch; }
  .cs-button { width: 100%; }
  .cs-footer-bottom { flex-direction: column; }
}
