:root{--brand: #2f9e44;--brand-dark: #268139;--ink: #1a1c1e;--muted: #5c636a;--line: #e6e8eb;--bg: #ffffff;--bg-soft: #f6f8f7;--radius: 12px;--container: 1080px;--font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.2;letter-spacing:-.02em;margin:0 0 .5em}h1{font-size:clamp(2rem,5vw,3.25rem)}h2{font-size:clamp(1.5rem,3vw,2.25rem)}h3{font-size:1.25rem}p{margin:0 0 1em}a{color:var(--brand-dark);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:20px}.section{padding-block:clamp(48px,8vw,88px)}.section-soft{background:var(--bg-soft)}.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-weight:600;cursor:pointer;border:2px solid transparent;transition:background .15s ease,color .15s ease,transform .05s ease}.btn:hover{text-decoration:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark);color:#fff}.btn-ghost{border-color:var(--line);color:var(--ink);background:#fff}.btn-ghost:hover{border-color:var(--brand);color:var(--brand-dark)}.site-header{position:sticky;top:0;z-index:20;background:#ffffffe6;backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:66px}.brand-mark{font-weight:800;font-size:1.2rem;color:var(--ink)}.brand-mark:hover{text-decoration:none}.nav{display:flex;align-items:center;gap:22px}.nav a{color:var(--muted);font-weight:500}.nav a:hover{color:var(--ink);text-decoration:none}.hero{padding-block:clamp(56px,9vw,104px);background:var(--bg-soft)}.hero .container{max-width:760px;text-align:center}.hero .eyebrow{color:var(--brand-dark);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem}.hero p.lead{font-size:1.2rem;color:var(--muted)}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:8px}.grid{display:grid;gap:20px}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.card h3{color:var(--ink)}.card p{color:var(--muted);margin-bottom:0}.section-head{max-width:640px;margin-bottom:36px}.section-head.center{margin-inline:auto;text-align:center}.section-head p{color:var(--muted);font-size:1.1rem;margin-bottom:0}.band{background:var(--brand);color:#fff}.band h2{color:#fff}.band p{color:#ffffffe6}.band .btn-primary{background:#fff;color:var(--brand-dark)}.band .btn-primary:hover{background:#f0f0f0;color:var(--brand-dark)}.embed-slot{background:#fff;border-radius:var(--radius);padding:22px;color:var(--muted);border:2px dashed var(--line);text-align:center}.site-footer{border-top:1px solid var(--line);background:var(--bg-soft);padding-block:40px;font-size:.95rem}.site-footer .container{display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;align-items:center}.site-footer .muted{color:var(--muted)}.footer-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.footer-login{color:var(--muted);font-size:.9rem}.post-list{list-style:none;padding:0;margin:0;display:grid;gap:20px}.post-list a{display:block;color:inherit}.post-list a:hover{text-decoration:none}.post-list li{border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:border-color .15s ease}.post-list li:hover{border-color:var(--brand)}.post-list h2{font-size:1.4rem;margin-bottom:6px}.post-list p{color:var(--muted);margin-bottom:0}.post-meta{color:var(--muted);font-size:.9rem}.back-link{display:inline-block;margin-bottom:16px;font-weight:500}.prose{max-width:720px}.prose h2{margin-top:1.4em}.prose img{border-radius:var(--radius);margin-block:1.2em}.portal-wrap{max-width:460px;margin-inline:auto;text-align:center}.portal-form{display:grid;gap:14px;margin-top:20px;text-align:left}.portal-form label{font-weight:600;font-size:.95rem}.portal-form input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-size:1rem}.portal-form input:focus{outline:2px solid var(--brand);border-color:var(--brand)}.portal-error{color:#c92a2a;font-size:.9rem;min-height:1.2em;margin:0}.portal-open-btn{display:inline-block;margin-top:20px;font-size:1.05rem;padding:15px 30px}.is-hidden{display:none!important}.quote-card{max-width:520px;margin:0 auto;background:#fff;color:var(--ink);border-radius:var(--radius);padding:28px;text-align:left}.quote-label{display:block;font-weight:600;margin:14px 0 8px}.quote-label:first-child{margin-top:0}.quote-row{display:flex;gap:10px}.quote-input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-size:1rem}.quote-input:focus{outline:2px solid var(--brand);border-color:var(--brand)}.quote-row .quote-input{flex:1}.quote-msg{color:var(--muted);font-size:.92rem;min-height:1.2em;margin:10px 0 0}.quote-good{color:var(--brand-dark);font-weight:600;margin:0 0 6px}.quote-plans{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px}.quote-plan{flex:1;min-width:110px;padding:12px;border:2px solid var(--line);background:#fff;border-radius:10px;font-weight:600;cursor:pointer}.quote-plan.is-selected{border-color:var(--brand);background:var(--bg-soft);color:var(--brand-dark)}.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 4px}.quote-fields .quote-input:nth-child(n+3){grid-column:1 / -1}.quote-card .btn-primary{margin-top:14px;width:100%}.quote-row .btn-primary{width:auto;margin-top:0}.quote-price{text-align:center;margin-bottom:16px}.quote-price-num{display:block;font-size:2.5rem;font-weight:800;color:var(--brand-dark);line-height:1}.quote-price-sub{color:var(--muted);font-size:.95rem}.quote-done{text-align:center}.quote-done h3{color:var(--brand-dark)}.quote-demo{text-align:center;color:var(--muted);font-size:.82rem;margin-top:16px;font-style:italic}
