/* Core Theme Colors (mirroring app palette) */
:root {
  --color-primary:#1C6A47;
  --color-primary-accent:#4CAF50;
  --color-primary-soft:#81C784;
  --color-bg:#E5E5E5;
  --color-surface:#F8F9FA;
  --color-text:#1C1B1F;
  --color-text-soft:#49454F;
  --color-border:#E3E3E3;
  --color-error:#D32F2F;
  --radius-sm:6px;
  --radius:14px;
  --radius-lg:28px;
  --shadow-sm:0 1px 2px rgba(0,0,0,.06),0 1px 3px rgba(0,0,0,.1);
  --shadow:0 4px 16px -2px rgba(0,0,0,.08),0 2px 6px rgba(0,0,0,.06);
  --gradient:linear-gradient(95deg,#1C6A47 0%,#4CAF50 50%,#81C784 100%);
}
@media (prefers-color-scheme:dark){
  :root {
    --color-bg:#010F21;
    --color-surface:#1C1B1F;
    --color-text:#F5F5F5;
    --color-text-soft:#CAC4D0;
    --color-border:#2B2930;
  }
  body {background:radial-gradient(circle at 30% 20%,#052033 0%,#010F21 70%) fixed;}
}
* {box-sizing:border-box;}
html {scroll-behavior:smooth;}
body {margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Ubuntu,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased;}
img {max-width:100%;display:block;}
.container {width:100%;max-width:1180px;margin:0 auto;padding:0 1.6rem;}
/* Header */
.site-header {position:sticky;top:0;z-index:40;background:rgba(255,255,255,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border);}
@media (prefers-color-scheme:dark){.site-header{background:rgba(16,23,33,.72);}}
.header-inner {display:flex;align-items:center;gap:2rem;min-height:70px;}
.brand {display:flex;align-items:center;font-weight:600;font-size:1.05rem;letter-spacing:.5px;gap:.65rem;}
.logo-circle {display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--gradient);color:#fff;font-weight:600;font-size:.9rem;}
.logo-circle.sm{width:34px;height:34px;font-size:.75rem;}
.app-name {background:linear-gradient(90deg,#1C6A47,#4CAF50);-webkit-background-clip:text;color:transparent;font-weight:700;}
.main-nav {display:flex;gap:1.4rem;font-size:.9rem;font-weight:500;}
.main-nav a {text-decoration:none;color:var(--color-text-soft);padding:.4rem .2rem;border-radius:6px;transition:.25s;color:var(--color-text-soft);}
.main-nav a:hover,.main-nav a:focus {color:var(--color-primary);}
.cta-button {margin-left:auto;background:var(--gradient);color:#fff;text-decoration:none;padding:.8rem 1.2rem;border-radius:var(--radius-lg);font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;box-shadow:var(--shadow-sm);transition:.3s;}
.cta-button:hover {transform:translateY(-2px);box-shadow:0 6px 20px -4px rgba(0,0,0,.25);}
@media (max-width:880px){.main-nav{display:none;} .cta-button{margin-left:0;} }
/* Add logo image sizing */
.logo-img {height:64px;width:auto;display:inline-block;vertical-align:middle;object-fit:contain;}
.footer-brand .logo-img {height:64px;}
/* Hero */
.hero {position:relative;padding:clamp(3rem,9vw,6rem) 0 4rem;background:linear-gradient(145deg,#F8F9FA 0%,#E5E5E5 40%,#ffffff 100%);}
@media (prefers-color-scheme:dark){.hero{background:linear-gradient(160deg,#052033 0%,#010F21 60%,#010F21 100%);} }
.hero-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:center;gap:4rem;}
.hero-copy h1 {font-size:clamp(2.1rem,4.3vw,3.25rem);line-height:1.1;margin:0 0 1rem;font-weight:700;letter-spacing:-1px;}
.gradient {background:var(--gradient);-webkit-background-clip:text;color:transparent;}
.subtitle {font-size:1.1rem;max-width:44ch;color:var(--color-text-soft);margin:0 0 2rem;}
.store-buttons {display:flex;gap:1rem;flex-wrap:wrap;}
.store-btn {flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;min-width:150px;padding:.9rem 1.2rem;border-radius:16px;text-decoration:none;background:#111;color:#fff;font-weight:600;font-size:.8rem;letter-spacing:.5px;position:relative;overflow:hidden;isolation:isolate;}
.store-btn:before{content:"";position:absolute;inset:0;opacity:.12;background:var(--gradient);mix-blend-mode:overlay;}
.store-btn.gp {background:#121212;}
.store-btn.as {background:#121212;}
.store-line2 {font-size:1.05rem;margin-top:.15rem;letter-spacing:.3px;}
.hero-visual {position:relative;}
.screenshot-stack {display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.4rem;}
.screenshot {aspect-ratio:9/19;border-radius:26px;border:1px solid var(--color-border);background:linear-gradient(135deg,#fafafa,#f0f0f0);position:relative;box-shadow:0 4px 18px -2px rgba(0,0,0,.15);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--color-text-soft);font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
@media (prefers-color-scheme:dark){.screenshot{background:linear-gradient(135deg,#172b2f,#13202b);border-color:#26343d;color:#8aa6b3;} }
.screenshot.placeholder:after {content:attr(data-label);}
.tall {aspect-ratio:9/16;}
/* Sections */
section {scroll-margin-top:80px;}
.section-title {font-size:clamp(1.9rem,3.2vw,2.4rem);margin:0 0 1rem;font-weight:700;letter-spacing:-.5px;}
.section-intro {color:var(--color-text-soft);max-width:60ch;margin:0 auto 2.4rem;text-align:center;}
.features {padding:4.5rem 0 3.5rem;}
.feature-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.7rem;margin-top:2.2rem;}
.feature-card {background:var(--color-surface);border:1px solid var(--color-border);padding:1.4rem 1.2rem 1.45rem;border-radius:20px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:.35s;}
.feature-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(28,106,71,.18),transparent 60%);opacity:.55;pointer-events:none;}
.feature-card:hover {transform:translateY(-4px);box-shadow:var(--shadow);}
.feature-card h3 {margin:.2rem 0 .55rem;font-size:1.02rem;letter-spacing:.3px;}
.feature-card p {margin:0;color:var(--color-text-soft);font-size:.9rem;line-height:1.45;}
/* Screens Section */
.screens {padding:4.2rem 0 4rem;background:linear-gradient(180deg,rgba(28,106,71,.06),rgba(28,106,71,0) 70%);}
@media (prefers-color-scheme:dark){.screens{background:linear-gradient(180deg,rgba(28,106,71,.2),rgba(28,106,71,0) 65%);} }
.screens-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1.7rem;margin-top:2.5rem;}
.screen-item {text-align:center;}
.screen-item figcaption {margin-top:.75rem;font-size:.8rem;font-weight:500;color:var(--color-text-soft);letter-spacing:.5px;text-transform:uppercase;}
/* Benefits */
.benefits {padding:4.5rem 0;}
.alt-bg {background:linear-gradient(145deg,#ffffff 0%,#F8F9FA 70%,#E5E5E5 100%);}
@media (prefers-color-scheme:dark){.alt-bg{background:linear-gradient(150deg,#062231 0%,#041724 60%,#03121d 100%);} }
.benefits-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:3.5rem;align-items:center;}
.benefit-copy p {color:var(--color-text-soft);max-width:60ch;}
.checklist {list-style:none;padding:0;margin:1.4rem 0 0;display:grid;gap:.65rem;}
.checklist li {position:relative;padding-left:1.6rem;font-size:.95rem;}
.checklist li:before {content:"";position:absolute;left:.1rem;top:.45rem;width:.85rem;height:.85rem;border-radius:4px;background:var(--gradient);box-shadow:0 2px 4px -1px rgba(0,0,0,.25);}
/* FAQ */
.faq {padding:4.5rem 0 5rem;}
.faq-items {display:grid;gap:1rem;max-width:820px;margin:2rem auto 0;}
.faq-items details {background:var(--color-surface);border:1px solid var(--color-border);padding:.9rem 1.1rem;border-radius:14px;box-shadow:var(--shadow-sm);}
.faq-items summary {cursor:pointer;list-style:none;font-weight:600;}
.faq-items summary::-webkit-details-marker{display:none;}
.faq-items p {margin:.75rem 0 .25rem;color:var(--color-text-soft);}
/* Footer */
.site-footer {background:#0f1814;color:#dbe5df;margin-top:2rem;font-size:.85rem;}
@media (prefers-color-scheme:dark){.site-footer{background:#071510;color:#c3d2cc;}}
.footer-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2.5rem;padding:3.4rem 0 2.2rem;}
.footer-nav {display:flex;flex-direction:column;gap:.55rem;font-size:.8rem;}
.footer-nav strong {font-size:.82rem;text-transform:uppercase;letter-spacing:.8px;margin-bottom:.2rem;color:#fff;}
.footer-nav a {text-decoration:none;color:inherit;opacity:.75;transition:.3s;}
.footer-nav a:hover {opacity:1;color:#fff;}
.footer-text {max-width:280px;font-size:.8rem;opacity:.8;}
.footer-bottom {border-top:1px solid rgba(255,255,255,.08);padding:1rem 0;text-align:center;opacity:.7;}
/* Utility */
.alt {color:var(--color-primary);}
.center {text-align:center;}
.max-text {max-width:70ch;}
/* Legal Pages */
.legal-wrapper {min-height:60vh;padding:4.5rem 0 5rem;}
.legal-wrapper h1 {font-size:2.2rem;margin:0 0 1.2rem;}
.legal-wrapper h2 {margin:2.2rem 0 .6rem;font-size:1.3rem;}
.legal-wrapper p, .legal-wrapper li {color:var(--color-text-soft);font-size:.95rem;}
.legal-wrapper a {color:var(--color-primary);}
/* Animations */
@media (prefers-reduced-motion:no-preference){
  .feature-card, .screenshot, .faq-items details {animation:fadeIn .8s ease both;}
  .feature-card:nth-child(odd){animation-delay:.05s;} .feature-card:nth-child(even){animation-delay:.12s;}
}
@keyframes fadeIn {from {opacity:0;transform:translateY(12px);} to {opacity:1;transform:translateY(0);} }