:root {
    --inspire-green: #198754;
    --inspire-green-dark: #0f5f3b;
    --inspire-green-deep: #0b4930;
    --inspire-green-light: #eaf6ef;
    --inspire-green-soft: #f4faf6;
    --inspire-gold: #c7a85a;
    --inspire-text: #183028;
    --inspire-muted: #64736d;
    --inspire-border: #dce8e1;
    --inspire-white: #ffffff;
    --inspire-shadow: 0 18px 50px rgba(20, 75, 51, .09);
    --inspire-radius: 18px;
}

html { scroll-behavior: smooth; }
body.inspire-public-page { margin:0; background:#fff; color:var(--inspire-text); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
body.inspire-public-page * { box-sizing:border-box; }
body.inspire-public-page a { text-decoration:none; }
.inspire-landing { width:100%; overflow:hidden; }
.inspire-container { width:min(1180px,calc(100% - 48px)); margin:0 auto; }

.inspire-header { position:relative; z-index:100; background:rgba(255,255,255,.96); border-bottom:1px solid rgba(15,95,59,.08); }
.inspire-header-inner { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.inspire-brand { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.inspire-brand-mark { width:48px; height:48px; border-radius:13px; display:flex; align-items:center; justify-content:center; background:linear-gradient(145deg,var(--inspire-green),var(--inspire-green-dark)); color:#fff; font-size:25px; font-weight:800; box-shadow:0 8px 20px rgba(25,135,84,.18); }
.inspire-brand-text { display:flex; flex-direction:column; }
.inspire-brand-text strong { color:var(--inspire-green-dark); font-size:24px; line-height:1; letter-spacing:.04em; }
.inspire-brand-text small { margin-top:5px; color:var(--inspire-muted); font-size:12px; }
.inspire-navigation { display:flex; align-items:center; justify-content:center; gap:28px; }
.inspire-navigation a { position:relative; padding:33px 0; color:#44534d; font-size:15px; font-weight:600; }
.inspire-navigation a:hover { color:var(--inspire-green); }
.inspire-login-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 22px; border-radius:9px; background:var(--inspire-green); color:#fff; font-size:14px; font-weight:700; box-shadow:0 8px 22px rgba(25,135,84,.17); }

.inspire-hero { position:relative; min-height:670px; display:flex; align-items:center; background:radial-gradient(circle at 82% 35%,rgba(25,135,84,.12),transparent 27%),linear-gradient(110deg,#fff 0%,#fbfdfb 50%,#edf8f1 100%); }
.inspire-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr); align-items:center; gap:65px; min-height:670px; }
.inspire-hero-content { position:relative; z-index:5; padding:70px 0; }
.inspire-eyebrow { display:inline-flex; align-items:center; gap:9px; margin-bottom:22px; color:var(--inspire-green); font-size:12px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.inspire-eyebrow::before { content:""; width:32px; height:2px; background:var(--inspire-gold); }
.inspire-hero h1 { max-width:680px; margin:0; color:var(--inspire-text); font-size:clamp(48px,5.4vw,74px); line-height:.99; font-weight:750; letter-spacing:-.045em; }
.inspire-hero h1 span { display:block; color:var(--inspire-green); }
.inspire-hero-description { max-width:610px; margin:27px 0 0; color:var(--inspire-muted); font-size:17px; line-height:1.75; }
.inspire-hero-actions { display:flex; align-items:center; gap:13px; margin-top:34px; }
.inspire-button-primary,.inspire-button-secondary { min-height:50px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; gap:15px; border-radius:10px; font-size:13px; font-weight:700; }
.inspire-button-primary { background:var(--inspire-green); color:#fff; box-shadow:0 10px 25px rgba(25,135,84,.18); }
.inspire-button-secondary { border:1px solid var(--inspire-border); background:rgba(255,255,255,.72); color:var(--inspire-text); }
.inspire-hero-features { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:650px; margin-top:47px; padding-top:24px; border-top:1px solid var(--inspire-border); }
.inspire-hero-features strong { display:block; margin-bottom:5px; color:var(--inspire-green-dark); font-size:13px; }
.inspire-hero-features span { display:block; color:var(--inspire-muted); font-size:11px; line-height:1.45; }

.inspire-hero-visual { position:relative; height:670px; display:flex; align-items:flex-end; justify-content:center; }
.inspire-hero-shape { position:absolute; width:470px; height:470px; right:-10px; top:95px; border-radius:48% 52% 44% 56% / 54% 42% 58% 46%; background:linear-gradient(145deg,#daf1e3,#bde5cc); }
.inspire-hero-photo { position:relative; z-index:4; width:auto; max-width:510px; max-height:640px; object-fit:contain; object-position:bottom center; filter:drop-shadow(0 24px 24px rgba(16,64,43,.12)); }
.inspire-hero-quote { position:absolute; z-index:7; left:-34px; top:165px; width:190px; padding:12px 0 12px 20px; border-left:3px solid var(--inspire-gold); color:var(--inspire-green-dark); }
.inspire-hero-quote-mark { display:block; margin-bottom:-8px; color:var(--inspire-gold); font-family:Georgia,serif; font-size:48px; line-height:1; font-weight:700; }
.inspire-hero-quote p { margin:0; font-size:17px; line-height:1.4; font-style:italic; }
.inspire-hero-quote strong { display:block; font-weight:800; }
.inspire-photo-decoration { position:absolute; z-index:2; border-radius:50%; }
.inspire-decoration-one { width:18px; height:18px; right:38px; top:150px; background:var(--inspire-gold); }
.inspire-decoration-two { display:none; }
.inspire-floating-card { position:absolute; z-index:8; right:-20px; bottom:82px; display:flex; align-items:center; gap:11px; padding:13px 16px; border:1px solid rgba(255,255,255,.8); border-radius:12px; background:rgba(255,255,255,.91); box-shadow:var(--inspire-shadow); }
.inspire-floating-icon { width:35px; height:35px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--inspire-green-light); color:var(--inspire-green); font-weight:800; }
.inspire-floating-card strong,.inspire-floating-card small { display:block; }
.inspire-floating-card strong { color:var(--inspire-text); font-size:12px; }
.inspire-floating-card small { margin-top:3px; color:var(--inspire-muted); font-size:10px; }

.inspire-section-heading { max-width:720px; margin:0 auto 55px; text-align:center; }
.inspire-section-heading>span,.inspire-section-label { display:inline-block; margin-bottom:12px; color:var(--inspire-green); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.inspire-section-heading h2 { margin:0; color:var(--inspire-text); font-size:clamp(31px,3.2vw,45px); line-height:1.12; }
.inspire-section-heading p { max-width:620px; margin:18px auto 0; color:var(--inspire-muted); font-size:15px; line-height:1.75; }
.inspire-about { padding:105px 0; }
.inspire-about-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:17px; }
.inspire-about-card { min-height:250px; padding:28px 25px; border:1px solid var(--inspire-border); border-radius:var(--inspire-radius); background:#fff; }
.inspire-card-number { width:43px; height:43px; display:flex; align-items:center; justify-content:center; margin-bottom:30px; border-radius:12px; background:var(--inspire-green-light); color:var(--inspire-green); font-size:12px; font-weight:800; }
.inspire-about-card p { color:var(--inspire-muted); font-size:13px; line-height:1.7; }
.inspire-system { padding:105px 0; background:linear-gradient(135deg,var(--inspire-green-deep),var(--inspire-green-dark)); }
.inspire-system-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:center; }
.inspire-system-intro h2 { margin:0; color:#fff; font-size:clamp(34px,4vw,52px); }
.inspire-system-intro p { color:rgba(255,255,255,.70); line-height:1.8; }
.inspire-system-list { display:grid; gap:13px; }
.inspire-system-item { display:grid; grid-template-columns:55px 1fr; gap:20px; padding:23px 24px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.07); color:#fff; }
.inspire-system-item>span { width:45px; height:45px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,255,255,.11); color:#d6b96d; font-size:12px; font-weight:800; }
.inspire-flow { padding:105px 0; background:var(--inspire-green-soft); }
.inspire-flow-grid { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:center; gap:16px; }
.inspire-flow-item { min-height:165px; padding:25px 20px; display:flex; flex-direction:column; justify-content:center; align-items:center; border:1px solid var(--inspire-border); border-radius:16px; background:#fff; text-align:center; }
.inspire-flow-item span { width:35px; height:35px; display:flex; align-items:center; justify-content:center; margin-bottom:17px; border-radius:50%; background:var(--inspire-green-light); color:var(--inspire-green); font-size:11px; font-weight:800; }
.inspire-flow-arrow { color:var(--inspire-gold); font-size:24px; }
.inspire-cta { padding:85px 0; }
.inspire-cta-inner { min-height:270px; display:flex; align-items:center; justify-content:space-between; gap:40px; padding:50px 60px; border-radius:24px; background:linear-gradient(135deg,var(--inspire-green),var(--inspire-green-dark)); }
.inspire-cta h2 { color:#fff; font-size:clamp(30px,3.4vw,45px); }
.inspire-cta p { color:rgba(255,255,255,.72); }
.inspire-cta-button { min-height:50px; padding:0 23px; display:inline-flex; align-items:center; gap:17px; border-radius:10px; background:#fff; color:var(--inspire-green-dark); font-size:12px; font-weight:800; }
.inspire-footer { padding:40px 0; background:#0b3324; }
.inspire-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.inspire-footer strong { color:#fff; font-size:20px; }
.inspire-footer p,.inspire-footer-copy { color:rgba(255,255,255,.58); font-size:11px; }

@media screen and (max-width:1050px) {
    .inspire-navigation { display:none; }
    .inspire-hero-grid { grid-template-columns:1fr 400px; gap:30px; }
    .inspire-about-grid { grid-template-columns:repeat(2,1fr); }
}

@media screen and (max-width:800px) {
    .inspire-container { width:min(100% - 32px,1180px); }
    .inspire-hero-grid { display:flex; flex-direction:column; }
    .inspire-hero-content { width:100%; padding:70px 0 20px; text-align:center; }
    .inspire-eyebrow { justify-content:center; }
    .inspire-hero-description { margin-left:auto; margin-right:auto; }
    .inspire-hero-actions { justify-content:center; flex-wrap:wrap; }
    .inspire-hero-features { margin-left:auto; margin-right:auto; }
    .inspire-hero-visual { width:100%; height:520px; }
    .inspire-hero-quote { left:8px; top:80px; width:170px; text-align:left; }
    .inspire-hero-photo { max-width:400px; max-height:500px; }
    .inspire-system-grid { grid-template-columns:1fr; gap:45px; }
    .inspire-flow-grid { grid-template-columns:1fr; }
    .inspire-flow-arrow { transform:rotate(90deg); text-align:center; }
    .inspire-cta-inner { padding:42px 30px; flex-direction:column; align-items:flex-start; }
}

@media screen and (max-width:520px) {
    .inspire-hero h1 { font-size:44px; }
    .inspire-hero-actions { flex-direction:column; }
    .inspire-button-primary,.inspire-button-secondary { width:100%; }
    .inspire-hero-features { grid-template-columns:1fr; text-align:left; }
    .inspire-hero-visual { height:440px; }
    .inspire-hero-quote { top:35px; left:0; width:150px; }
    .inspire-hero-quote p { font-size:14px; }
    .inspire-hero-photo { max-width:340px; max-height:420px; }
    .inspire-about-grid { grid-template-columns:1fr; }
    .inspire-footer-inner { flex-direction:column; align-items:flex-start; }
}