*{box-sizing:border-box}body{margin:0;font:17px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#1c2430;background:#fbfaf7}
a{color:#0b6b4f}.wrap{max-width:760px;margin:0 auto;padding:0 22px}
header{padding:22px 0;border-bottom:1px solid #e8e4dc}header .wrap{display:flex;justify-content:space-between;align-items:center}
.logo{font-weight:700;font-size:20px;color:#1c2430;text-decoration:none}.logo span{color:#0b6b4f}
.hero{padding:70px 0 40px}h1{font-size:40px;line-height:1.15;margin:0 0 18px;letter-spacing:-.5px}
.lead{font-size:20px;color:#47515e}.btn{display:inline-block;background:#0b6b4f;color:#fff;padding:13px 22px;border-radius:8px;text-decoration:none;font-weight:600;margin-top:12px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;padding:20px 0 50px}
.card{background:#fff;border:1px solid #e8e4dc;border-radius:10px;padding:18px}.card h3{margin:0 0 6px;font-size:17px}.card p{margin:0;color:#56606c;font-size:15px}
footer{border-top:1px solid #e8e4dc;padding:26px 0 40px;font-size:14px;color:#6a737e}
.doc{padding-top:40px;padding-bottom:60px}.doc h1{font-size:32px}.doc h2{font-size:20px;margin-top:28px}
@media(max-width:520px){h1{font-size:31px}.hero{padding:44px 0 26px}}
header nav a{text-decoration:none}
.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin:28px 0 10px}
.team figure{margin:0;background:#fff;border:1px solid #e8e4dc;border-radius:12px;padding:16px}
.team img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:10px;display:block;margin-bottom:12px}
.team figcaption{font-size:15px;color:#47515e}.doc ul{padding-left:20px}.doc li{margin:8px 0}
.family{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid #e8e4dc;border-radius:12px;padding:18px;margin-bottom:50px}
.family img{width:72px;height:72px;border-radius:50%;object-fit:cover}.family p{margin:0}
/* mobile fixes 2026-10-29 */
img{max-width:100%}
header .wrap{gap:12px;flex-wrap:wrap}
header nav{display:flex;gap:14px;font-size:15px;white-space:nowrap}
@media(max-width:600px){
 body{font-size:16px}
 header{padding:14px 0}
 header nav .nav-email{display:none}
 .lead{font-size:18px}
 .btn{display:block;text-align:center}
 .family{flex-wrap:wrap;gap:12px}
 .family p{flex-basis:100%}
 .family img{width:60px;height:60px}
 .team{grid-template-columns:1fr}
 .doc h1{font-size:28px}
 .cards{grid-template-columns:1fr}
}
.showcase{margin:0 0 30px}.showcase img{width:100%;height:auto;border-radius:14px;box-shadow:0 12px 40px rgba(20,40,30,.12);display:block}
.showcase figcaption,.gallery .note{font-size:13px;color:#6a737e;margin-top:8px;text-align:center}
.gallery{padding:10px 0 40px}.gallery h2{font-size:24px;margin:0 0 14px}.gallery .grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gallery img{width:100%;height:auto;border-radius:12px;box-shadow:0 8px 28px rgba(20,40,30,.10)}
@media(min-width:900px){.wrap{max-width:980px}}
@media(max-width:600px){.gallery .grid{grid-template-columns:1fr}.showcase{margin:0 -10px 24px}}
/* about mobile fix */
@media(max-width:600px){
 .wrap{padding:0 16px}
 .doc{padding-top:26px;padding-bottom:40px}
 .team{grid-template-columns:1fr;gap:12px;margin:20px 0 6px}
 .team figure{display:flex;align-items:center;gap:14px;padding:12px}
 .team img{width:84px;min-width:84px;height:84px;border-radius:50%;margin:0}
 .team figcaption{font-size:14px;line-height:1.45}
 .doc h2{font-size:19px;margin-top:22px}
 .doc ul{padding-left:18px}
}
.logo{display:inline-flex;align-items:center;gap:9px}.logo img{width:30px;height:30px;border-radius:8px}
.logo b{font-weight:700}
/* pricing 2026-10-31 */
.pricing{padding:20px 0 50px;scroll-margin-top:16px}.pricing h2{font-size:28px;margin:0 0 4px}.pricing .sub{margin:0 0 20px;color:#56606c}
.tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.tier{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e8e4dc;border-radius:12px;padding:22px 18px 18px;min-width:0}
.tier h3{margin:0 0 4px;font-size:18px;line-height:1.3}.tier .price{margin:0 0 12px;font-size:32px;font-weight:700;color:#1c2430}.tier .price span{font-size:15px;font-weight:500;color:#6a737e}
.tier ul{list-style:none;padding:0;margin:0 0 14px;font-size:15px;color:#47515e;flex:1}.tier li{position:relative;padding-left:20px;margin:7px 0;line-height:1.45}
.tier li:before{content:"✓";position:absolute;left:0;color:#0b6b4f;font-weight:700}.tier li.plus{padding-left:0;font-weight:600;color:#1c2430}.tier li.plus:before{content:none}
.tier .btn{display:block;text-align:center;margin-top:auto;font-size:15px;padding:12px 14px}
.tier.featured{border:2px solid #0b6b4f;box-shadow:0 10px 30px rgba(11,107,79,.12)}
.badge{position:absolute;top:-12px;left:18px;background:#0b6b4f;color:#fff;font-size:12px;font-weight:700;padding:3px 10px;border-radius:20px;letter-spacing:.2px}.badge.muted{background:#6a737e}
.tnote{font-size:13px;color:#6a737e;margin:0 0 12px}
.tier.soon{background:#f6f4ef}.tier.soon .price{color:#56606c}
.btn-ghost{background:#fff;color:#0b6b4f;border:2px solid #0b6b4f;cursor:pointer;list-style:none}.btn-ghost::-webkit-details-marker{display:none}
.waitlist{margin-top:auto}.waitlist[open] summary{margin-bottom:10px}
.waitlist form{display:flex;flex-direction:column;gap:8px}.waitlist label{font-size:13px;color:#47515e;display:flex;flex-direction:column;gap:3px}
.waitlist input{font:inherit;font-size:15px;padding:9px 10px;border:1px solid #d6d1c6;border-radius:8px;width:100%;min-width:0}
.waitlist button{border:0;cursor:pointer;font:inherit;font-weight:600}
.terms{text-align:center;color:#47515e;font-size:15px;margin:22px 0 0}
@media(max-width:899px){.tiers{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}}
@media(max-width:600px){.tiers{grid-template-columns:1fr}.pricing h2{font-size:24px}.tier .btn{display:block}}
/* lead form 2026-10-31 */
.hero-alt{font-size:14px;color:#6a737e;margin:10px 0 0}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.form-msg{margin:0;font-size:14px;color:#b3261e;min-height:0}.form-msg:empty{display:none}
.form-done{font-size:14px;color:#0b6b4f;font-weight:600;margin:6px 0 0}
.lead-modal{border:0;padding:0;border-radius:16px;width:min(560px,calc(100% - 24px));max-height:calc(100% - 24px);background:#fbfaf7;color:#1c2430;box-shadow:0 24px 70px rgba(10,30,20,.3)}
.lead-modal::backdrop{background:rgba(18,28,24,.55)}body.lm-lock{overflow:hidden}
.lm-inner{position:relative;padding:26px 24px 22px}
.lm-close{position:absolute;top:10px;right:10px;width:40px;height:40px;border:0;background:transparent;font-size:28px;line-height:1;color:#6a737e;cursor:pointer;border-radius:8px}.lm-close:hover{background:#eeebe4}
.lead-modal h2{font-size:24px;line-height:1.2;margin:0 0 6px;padding-right:36px}.lm-sub{margin:0 0 16px;color:#56606c;font-size:15px}
#lead-form{display:flex;flex-direction:column;gap:12px}
#lead-form label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:#1c2430;min-width:0}
#lead-form .opt{font-weight:400;color:#6a737e}
#lead-form input,#lead-form select,#lead-form textarea{font:inherit;font-size:16px;font-weight:400;padding:11px 12px;border:1px solid #d6d1c6;border-radius:8px;background:#fff;color:#1c2430;width:100%;min-width:0}
#lead-form input:focus,#lead-form select:focus,#lead-form textarea:focus,.waitlist input:focus{outline:2px solid #0b6b4f;outline-offset:0;border-color:#0b6b4f}
#lead-form textarea{resize:vertical;min-height:76px}
.lm-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#lead-form .btn,.lm-ok{border:0;cursor:pointer;font:inherit;font-weight:600;font-size:17px;padding:14px 22px;margin-top:4px;width:100%}
#lead-form .btn:disabled{opacity:.7;cursor:wait}
.lm-fine{font-size:13px;color:#6a737e;margin:0;text-align:center}
.lm-done{text-align:center;padding:18px 4px 4px}.lm-done h2{padding:0}.lm-done p{color:#47515e;margin:0 0 14px}
.lm-check{width:56px;height:56px;border-radius:50%;background:#0b6b4f;color:#fff;font-size:30px;line-height:56px;margin:0 auto 12px}
@media(max-width:600px){.lead-modal{width:100%;max-width:100%;max-height:100%;height:100%;margin:0;border-radius:0}.lm-inner{padding:20px 16px 28px}.lm-row{grid-template-columns:1fr}.lead-modal h2{font-size:22px}}
/* onboarding form 2026-11-01 */
.onboard{max-width:640px}
.ob{display:flex;flex-direction:column;gap:14px;margin-top:20px}
.ob fieldset{border:1px solid #e3ded3;border-radius:12px;padding:16px;margin:0;display:flex;flex-direction:column;gap:12px;background:#fff;min-width:0}
.ob legend{font-weight:700;font-size:16px;padding:0 6px}
.ob label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:#1c2430;min-width:0}
.ob .opt,.ob small{font-weight:400;color:#6a737e}.ob small{font-size:13px}
.ob input:not([type=radio]):not([type=checkbox]),.ob select,.ob textarea{font:inherit;font-size:16px;font-weight:400;padding:11px 12px;border:1px solid #d6d1c6;border-radius:8px;background:#fff;color:#1c2430;width:100%;min-width:0}
.ob input:focus,.ob select:focus,.ob textarea:focus{outline:2px solid #0b6b4f;outline-offset:0;border-color:#0b6b4f}
.ob textarea{resize:vertical;min-height:76px}
.ob-plans{display:flex;flex-direction:column;gap:8px}
.ob .ob-plan{flex-direction:row;align-items:flex-start;gap:10px;border:1px solid #d6d1c6;border-radius:10px;padding:12px;cursor:pointer;font-weight:400}
.ob .ob-plan:has(input:checked){border-color:#0b6b4f;background:#f1f8f4}
.ob-plan input,.ob-yn input,.ob-check input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:#0b6b4f}
.ob-plan span{display:flex;flex-direction:column;gap:2px}.ob-plan small{display:block}
.ob-addr{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}
.ob-yn{display:flex;gap:18px;flex-wrap:wrap}.ob .ob-yn label{flex-direction:row;align-items:center;gap:8px;font-weight:400}
.ob-dom{display:flex;flex-direction:column;gap:12px}.ob-dom[hidden],.ob-help[hidden]{display:none}
.ob-help{margin:0;font-size:14px;color:#47515e}
.ob .ob-check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;font-size:14px;color:#47515e}
.ob .btn{border:0;cursor:pointer;font:inherit;font-weight:600;font-size:17px;padding:14px 22px;margin-top:4px;width:100%}.ob .btn:disabled{opacity:.7;cursor:wait}
.ob-done{text-align:center;padding:30px 0}
@media(max-width:600px){.ob fieldset{padding:14px 12px}.ob-addr{grid-template-columns:1fr 1fr}.ob-addr label:first-child{grid-column:1/-1}}
.cx-dns{border-collapse:collapse;width:100%;margin:8px 0 14px;font-size:15px}.cx-dns th,.cx-dns td{border:1px solid #d6d1c6;padding:8px 10px;text-align:left}.cx-dns th{background:#f6f3ec}.cx-dns code{word-break:break-all}
.gallery .sub{color:#4a545e;margin:-6px 0 16px}.gallery .phones{grid-template-columns:repeat(3,1fr);gap:20px}.gallery figure{margin:0}.gallery .phones img{aspect-ratio:390/844;object-fit:cover;object-position:top;border-radius:22px;border:6px solid #1c2228}.gallery figcaption{font-size:13px;color:#4a545e;text-align:center;margin-top:8px}
@media(max-width:600px){.gallery .phones{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:8px}.gallery .phones figure{flex:0 0 72%;scroll-snap-align:start}}
