/* Vlastir design tokens and base styles (from charte files) */
:root{
  --bg: #FAFAF8;
  --cream: #F6F5F1;
  --primary: #1A42A1;
  --primary-dark: #0B274E;
  --muted: #5A5E6B;
  --eyebrow: #8A8D99;
  --border: #E4E2DA;
  --accent: #d97141;
  --footer-bg: #0B0D12;
  --footer-text: #9FA3B5;
}

/* Reset + layout */
*{box-sizing:border-box}
html,body{height:100%}
html{scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;background:var(--bg);color:#12141A;font-family:'IBM Plex Sans',sans-serif;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;height:auto;display:block}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}

/* Selection */
::selection{background:var(--primary);color:#fff}

a{color:var(--primary);text-decoration:none}
a:hover{color:var(--primary-dark)}

/* Header / nav */
header.site-header{position:sticky;top:0;z-index:20;background:rgba(250,250,248,0.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.logo{display:flex;align-items:center;gap:12px}
.logo-word{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:18px;color:#12141A}
.logo-word b{font-weight:800}

.nav-links{list-style:none;margin:0;padding:0;display:flex;gap:28px;align-items:center}
.nav-links a{color:inherit;font-weight:500}
.nav-cta{display:flex;gap:12px;align-items:center}
.nav-toggle{display:none}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;font-weight:600;border:1px solid transparent;cursor:pointer}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:linear-gradient(180deg,var(--primary-dark),var(--primary))}
.btn-ghost{background:transparent;color:var(--primary);border:1px solid var(--border)}
.btn-sm{padding:8px 12px;font-size:14px}

/* Hero */
.hero{padding:100px 0 90px;background:var(--cream)}
.hero-inner{display:flex;gap:48px;align-items:center}
.hero-copy{flex:1}
.hero-illus{flex:1}
.eyebrow{font-family:'Space Grotesk',sans-serif;letter-spacing:0.12em;text-transform:uppercase;color:var(--eyebrow);font-size:13px}
.eyebrow-pill{display:inline-block;background:#EEF2FC;color:var(--primary);padding:8px 18px;border-radius:100px}
.hero h1{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:48px;line-height:1.08;margin:22px 0;color:var(--primary-dark)}
.hero .hero-sub{color:var(--muted);max-width:620px;font-size:18px;line-height:1.6}
.hero-tags{display:flex;gap:8px;margin-top:18px}
.chip{background:#fff;border:1px solid var(--border);padding:8px 12px;border-radius:999px;color:var(--muted)}

/* Sections */
.section-pad{padding:100px 0}
.section-pad.light{background:var(--bg)}
.section-head{text-align:left;margin-bottom:36px}
.section-head .eyebrow{display:block;margin-bottom:12px}

.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:var(--cream);border-radius:16px;padding:32px;color:var(--muted)}
.rule{border:none;height:1px;background:var(--border);margin:40px 0}

/* Offer */
.offer-card{background:var(--bg);border:1px solid var(--border);border-radius:20px;padding:36px;max-width:420px;margin:28px auto}
.badge{display:inline-block;background:#EEF2FC;color:var(--primary);padding:6px 12px;border-radius:999px;font-weight:600}
.price{font-size:32px;font-weight:800;margin:12px 0}
.price-sub{color:var(--muted);margin-bottom:16px}
.offer-inc{list-style:disc;margin:12px 0 20px 18px;color:var(--muted)}

/* How steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.step{border:1px solid var(--border);border-radius:16px;padding:28px;background:#fff}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.member{background:#fff;border:1px solid var(--border);padding:20px;border-radius:12px}

/* Footer */
.footer{background:var(--footer-bg);color:var(--footer-text);padding:64px 0 40px}
.footer-top{display:flex;gap:40px}
.footer-bottom{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#5A5E6B;margin-top:24px}

/* Contact form / tracks */
.track-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.track{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px}
.track h2{font-family:'Space Grotesk',sans-serif;color:var(--primary);margin:6px 0 8px}
.track .track-lead{color:var(--muted);margin-bottom:8px}
.route{display:block;margin-bottom:16px;color:#6b6f78}
.field-row{display:flex;gap:16px;margin-bottom:12px}
.field{display:flex;flex-direction:column}
.field label{font-weight:600;margin-bottom:6px}
.field input,.field select,.field textarea{padding:10px;border:1px solid var(--border);border-radius:8px;font-size:15px;font-family:inherit}
.field textarea{min-height:120px;resize:vertical}
.form-note{color:var(--muted);margin-top:12px}

@media(max-width:960px){
  .track-grid{grid-template-columns:1fr}
}

/* Direct contact cards (founders) */
.direct-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.direct{background:#fff;border:1px solid #E4E2DA;border-radius:12px;padding:30px;display:flex;gap:20px;align-items:center}
.direct .avatar{flex:0 0 auto;width:64px;height:64px;border-radius:12px;background:linear-gradient(150deg,#1A42A1,#7C93D6);display:grid;place-items:center;font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:1.2rem;color:#fff}
.direct .avatar-blue{box-shadow:0 10px 24px rgba(26,66,161,0.18)}
.direct h3{font-size:1.05rem;margin:0}
.direct .role{color:var(--primary);font-size:0.78rem;font-family:'Space Grotesk',sans-serif;letter-spacing:0.12em;text-transform:uppercase;margin:6px 0}
.direct a{display:block;color:#6a5d50;margin-bottom:6px}

/* Make direct mailto links match index emphasis (primary) */
.direct a[href^="mailto:"]{color:var(--primary);font-weight:700}
.direct a[href^="https://"], .direct a[target="_blank"]{color:#6a5d50}

/* Utility: full-width form button inside track */
.track .btn{width:100%;justify-content:center;margin-top:10px}

/* Small tweaks for page-hero on contact */
.page-hero{padding:60px 0;border-bottom:1px solid var(--border);background:transparent}
.page-hero h1{font-family:'Space Grotesk',sans-serif;font-size:36px;margin:12px 0}

/* Anchor offset so in-page links land above the target */
[id]{scroll-margin-top:110px}

/* Responsiveness */
@media(max-width:960px){
  .hero-inner{flex-direction:column}
  .nav-links{display:none}
  .nav-toggle{display:inline-flex}
  .card-grid, .steps{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr}
}
