:root{--forest:#123d2b;--forest2:#1d5a3e;--green:#2b8055;--mint:#e9f4eb;--ink:#15241b;--muted:#69776e;--line:#e4ebe4}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:'DM Sans',sans-serif;color:var(--ink);line-height:1.65}
h1,h2,h3,.navbar-brand{font-family:Manrope,sans-serif;letter-spacing:-.035em}
h1{font-size:clamp(2.8rem,5.5vw,4.5rem);line-height:1.08;font-weight:800}
h1 span,h2 span{color:var(--green)}
h2{font-size:clamp(2rem,4vw,3rem);line-height:1.16;font-weight:800}
h3{font-size:1.2rem;font-weight:800}
.navbar{background:#ffffffed;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);padding:14px 0}
.navbar-brand{font-size:1.12rem;font-weight:800;color:var(--forest)}
.navbar-brand small{font-size:.68em;color:var(--green)}
.nav-link{font-weight:600;color:#43554a!important}
.btn{border-radius:13px;padding:12px 20px;font-weight:700}
.btn-primary-green{background:var(--forest);border:1px solid var(--forest);color:white}
.btn-primary-green:hover{background:var(--forest2);color:white}
.btn-outline-green{border:1px solid #bfd2c3;color:var(--forest)}
.btn-outline-green:hover{background:var(--mint);color:var(--forest)}
.hero-section{padding:150px 0 85px;background:radial-gradient(ellipse at 82% 24%,#e7f3e7,transparent 36%),linear-gradient(#fbfdf9,#fff);overflow:hidden}
.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #dbe9dd;background:#f4faf3;border-radius:999px;padding:9px 14px;color:var(--forest);font-size:.75rem;font-weight:800;margin-bottom:22px}
.pulse-dot{width:8px;height:8px;border-radius:50%;background:#40a66b;box-shadow:0 0 0 4px #40a66b1c}
.hero-copy{font-size:1.12rem;color:var(--muted);max-width:540px;margin-top:22px}
.microcopy{font-size:.85rem;color:#65766a}
.visual-wrap{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}
.orb{position:absolute;border-radius:50%}
.orb-one{width:410px;height:410px;background:#e7f2e5;right:3%;top:8%}
.orb-two{width:240px;height:240px;background:#d8e9d9;left:4%;bottom:2%;opacity:.6}
.phone-card{position:relative;z-index:1;width:min(360px,90%);background:white;border:1px solid #e1eae0;border-radius:30px;padding:20px;box-shadow:0 30px 90px #123d2b20;transform:rotate(1deg)}
.phone-top{display:flex;align-items:center;justify-content:space-between;font-size:.62rem;font-weight:800;letter-spacing:.12em;color:#7a887d;border-bottom:1px solid #edf1ec;padding-bottom:13px}
.phone-camera{width:35px;height:5px;background:#e6ece6;border-radius:9px}
.online-dot{height:8px;width:8px;border-radius:50%;background:#40a66b}
.hello-row{display:flex;gap:12px;align-items:center;padding:20px 0}
.mini-logo{height:42px;width:42px;border-radius:14px;display:grid;place-items:center;background:var(--forest);color:white;font-size:22px;font-weight:800}
.hello-row p{font-size:.76rem;color:var(--muted);margin:3px 0 0}
.balance-card{background:#f4f8f2;border:1px solid #e5eee3;border-radius:18px;padding:17px}
.balance-card>div:first-child{font-size:.75rem;color:#6b796d}
.tag{font-size:.65rem;background:#e3f1e3;padding:4px 7px;border-radius:8px;color:var(--forest)}
.budget-number{font-weight:800;font-size:1.85rem;margin-top:4px;color:var(--forest)}
.progress{height:7px;background:#dce8dc;border-radius:8px}
.progress-bar{background:#3a9861;border-radius:8px}
.balance-card .small{font-size:.68rem!important;color:#758176}
.chat-label{font-size:.64rem;font-weight:800;letter-spacing:.13em;color:#8a968b;margin:21px 0 9px}
.chat-bubble{font-size:.78rem;padding:12px 14px;border-radius:15px;margin-bottom:9px;line-height:1.5}
.user-bubble{background:var(--forest);color:white;margin-left:24px;border-bottom-right-radius:5px}
.ai-bubble{background:#f2f6f0;color:#35483a;margin-right:10px;border-bottom-left-radius:5px}
.ai-spark{color:#398b58;margin-right:4px}
.prompt-row{margin-top:16px;border:1px solid #e2e9e1;border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;color:#98a198;font-size:.74rem}
.send-icon{display:grid;place-items:center;width:27px;height:27px;background:var(--forest);color:white;border-radius:8px}
.floating-note{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;background:white;padding:12px 16px;border:1px solid #e5ece3;border-radius:15px;box-shadow:0 12px 35px #123d2b12}
.note-top{top:12%;right:-1%}
.note-bottom{bottom:10%;left:-2%}
.note-icon{height:34px;width:34px;display:grid;place-items:center;background:#e7f5e8;color:#227246;border-radius:11px;font-size:1.2rem}
.note-leaf{background:#fff0e7;color:#b66a37}
.floating-note strong,.floating-note small{display:block}
.floating-note strong{font-size:.77rem}
.floating-note small{font-size:.68rem;color:var(--muted)}
.trust-strip{padding:23px 0;border-top:1px solid #edf1ec;border-bottom:1px solid #edf1ec;font-size:.84rem;font-weight:700;color:#536357}
.section-pad{padding:95px 0}
.section-heading{max-width:680px}
.section-kicker{display:inline-block;color:#3c875b;font-weight:800;letter-spacing:.14em;font-size:.7rem;margin-bottom:14px}
.section-heading p,.muted-copy{color:var(--muted);font-size:1.03rem;margin-top:16px}
.feature-card{border:1px solid var(--line);border-radius:22px;padding:29px;background:white;transition:transform .2s,box-shadow .2s}
.feature-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px #123d2b0c}
.feature-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-size:1.4rem;font-weight:800;margin-bottom:25px}
.icon-mint{background:#e5f3e5;color:#267448}
.icon-peach{background:#fff0e6;color:#bd733d}
.icon-lilac{background:#eeeafd;color:#7563b5}
.feature-card p{color:var(--muted);font-size:.94rem;min-height:78px}
.feature-card a{color:var(--forest);font-weight:800;text-decoration:none;font-size:.88rem}
.disclaimer-inline{font-size:.84rem;color:#657368;background:#f6f8f4;padding:15px 18px;border-radius:13px;border-left:3px solid #b8d7bb}
.how-section{background:#f8faf6}
.steps-panel{padding:20px 30px;background:white;border:1px solid var(--line);border-radius:24px}
.step-item{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid #edf1eb}
.step-item:last-child{border-bottom:0}
.step-number{font-size:1.15rem;font-weight:800;color:#4d9767;background:#edf6ec;min-width:48px;height:48px;border-radius:15px;display:grid;place-items:center}
.step-item h3{margin:3px 0 6px}
.step-item p{margin:0;color:var(--muted);font-size:.92rem}
.download-section{padding:20px 0 95px}
.download-banner{background:var(--forest);border-radius:28px;padding:48px 52px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:white}
.download-banner .section-kicker{color:#a9dfb5}
.download-banner h2{max-width:580px;font-size:clamp(1.8rem,3vw,2.6rem)}
.download-banner p{color:#d0e1d3;margin:12px 0 0}
.btn-light-green{background:#f2faf0;color:var(--forest);border:1px solid #f2faf0;white-space:nowrap}
.site-footer{background:#0e3022;color:white;padding:58px 0 22px}
.site-footer .navbar-brand{color:white}
.footer-copy{color:#b6cbb9;max-width:390px;font-size:.89rem}
.site-footer .col-lg-2 a,.site-footer .col-lg-3 a{display:block;text-decoration:none;color:#b6cbb9;font-size:.86rem;margin:10px 0}
.site-footer a:hover{color:white}
.footer-bottom{margin-top:42px;padding-top:19px;border-top:1px solid #ffffff1c;display:flex;justify-content:space-between;gap:12px;color:#9bb4a0;font-size:.77rem}
.legal-page{padding:145px 0 90px;min-height:65vh;background:linear-gradient(#f6faf5,#fff 340px)}
.legal-content{max-width:850px}
.legal-content h1{font-size:clamp(2.4rem,5vw,3.6rem)}
.legal-content h2{font-size:1.35rem;margin-top:34px}
.legal-content p,.legal-content li{color:#526157}
.legal-content a{color:var(--green)}
.notice-box{background:#fff5e7;border:1px solid #f2dfc4;border-radius:12px;padding:15px 17px;color:#6e5129}
@media(max-width:991px){.hero-section{padding-top:130px}
.visual-wrap{min-height:500px}
.section-pad{padding:75px 0}
.download-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:575px){.hero-section{padding:125px 0 60px}
h1{font-size:2.7rem}
.visual-wrap{min-height:450px}
.phone-card{width:88%;padding:16px}
.orb-one{width:320px;height:320px}
.orb-two{width:200px;height:200px}
.floating-note{padding:9px 11px}
.note-top{top:5%;right:-2%}
.note-bottom{bottom:2%;left:-1%}
.section-pad{padding:65px 0}
.steps-panel{padding:10px 20px}
.step-item{gap:13px}
.download-banner{padding:30px 24px}
.footer-bottom{flex-direction:column}}


.site-logo{width:42px;height:42px;object-fit:contain;border-radius:10px;display:block;flex-shrink:0}
.site-logo-footer{background:#fff;padding:2px}


/* ===== Additions ===== */
body{background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--forest);color:#fff;padding:8px 14px;border-radius:8px;z-index:2000}
.skip-link:focus{left:12px;color:#fff}
:focus-visible{outline:3px solid #7cc39a;outline-offset:2px}
.navbar.scrolled{box-shadow:0 6px 24px #123d2b14}
.nav-link.active{color:var(--forest)!important}
.btn.disabled,.btn[aria-disabled=true]{opacity:.75;cursor:default;pointer-events:none}
.btn-light-green.disabled{background:#d7eadb;color:var(--forest)}
.footer-title{font-family:Manrope,sans-serif;font-size:.9rem!important;font-weight:800;letter-spacing:0;margin:7px 0 17px;color:#fff}
.site-footer a{color:#b6cbb9;text-decoration:none}
.site-footer .navbar-brand{color:#fff}
.site-footer .col-lg-2 a,.site-footer .col-lg-3 a{display:block}
main{display:block}
.visual-wrap .phone-card{max-width:360px}
/* Page hero (about, legal, support) */
.page-hero{padding:140px 0 46px;background:radial-gradient(ellipse at 85% 0,#e7f3e7,transparent 45%),linear-gradient(#f6faf5,#fff)}
.page-hero h1{font-size:clamp(2.2rem,5vw,3.4rem)}
.page-hero p.lead{color:var(--muted);max-width:680px;margin-top:14px}
.legal-page{padding:0 0 90px;min-height:auto;background:#fff}
.legal-page .legal-content{padding-top:34px}
.legal-content .meta{font-size:.85rem;color:var(--muted)}
.legal-content h2{font-size:1.3rem;margin-top:34px}
.legal-content ul,.legal-content ol{padding-left:1.2rem}
.toc{background:#f6f8f4;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin:22px 0}
.toc a{color:var(--forest);text-decoration:none}
.toc ol{margin:0;columns:2;column-gap:30px;font-size:.92rem}
@media(max-width:575px){.toc ol{columns:1}}
.notice-box{background:#fff5e7;border:1px solid #f2dfc4;border-radius:12px;padding:15px 17px;color:#6e5129;margin-top:26px}
.info-box{background:var(--mint);border:1px solid #cfe5d3;border-radius:12px;padding:15px 17px;color:#24412f;margin-top:22px}
/* Cards */
.info-card{border:1px solid var(--line);border-radius:20px;padding:26px;background:#fff;height:100%}
.info-card h3{margin-bottom:8px}
.info-card p{color:var(--muted);font-size:.94rem;margin:0}
.value-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#e5f3e5;color:#267448;font-weight:800;font-size:1.2rem;margin-bottom:16px}
/* Feature card links removed -> plain */
.feature-card p{min-height:0}
/* FAQ */
.faq-wrap{max-width:820px;margin:0 auto}
.accordion-item{border:1px solid var(--line)!important;border-radius:14px!important;margin-bottom:12px;overflow:hidden}
.accordion-button{font-weight:700;font-family:Manrope,sans-serif;color:var(--forest);background:#fff}
.accordion-button:not(.collapsed){background:#f4faf3;color:var(--forest);box-shadow:none}
.accordion-body{color:#526157;font-size:.95rem}
/* Responsible-use strip */
.safety-grid .info-card{background:#fbfdfa}
/* 404 */
.error-page{min-height:70vh;display:grid;place-items:center;text-align:center;padding:150px 0 80px}
.error-code{font-family:Manrope,sans-serif;font-size:clamp(5rem,16vw,9rem);font-weight:800;color:var(--green);line-height:1}
.hero-section .btn.disabled{pointer-events:none}
@media(max-width:991px){.page-hero{padding-top:120px}}
.mini-logo-img{border-radius:12px;flex-shrink:0}
