:root{--g:#1f5f4a;--g-d:#163f32;--g2:#e8f1ed;--gold:#c08a2b;--gold2:#f6ecd8;--fg:#1d1d1b;--mu:#5f5e58;--ln:#dddbd3;--bg:#f6f5f1;--warn:#8a5a00;--warn2:#f7ecd4}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:15.5px/1.6 "Segoe UI",system-ui,-apple-system,sans-serif}
a{color:var(--g)}img{max-width:100%}
header.site{position:sticky;top:0;z-index:20;background:rgba(246,245,241,.95);backdrop-filter:blur(6px);border-bottom:1px solid var(--ln)}
header.site .in{max-width:1080px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:14px;justify-content:space-between}
.logo{font:600 21px Georgia,serif;color:var(--g);text-decoration:none;display:flex;align-items:center;gap:8px}.logo span{color:var(--fg)}
.logo i{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--g);color:#fff;font:600 16px Georgia,serif;font-style:normal}
nav.links{display:flex;gap:16px;font-size:14.5px;align-items:center}nav.links a{color:var(--fg);text-decoration:none;white-space:nowrap}nav.links a:hover,nav.links a.on{color:var(--g)}
nav.links a.btn{background:var(--g);color:#fff;padding:8px 14px;border-radius:8px;font-weight:600}
.menu{display:none;width:auto;color:var(--fg);background:none;border:1px solid var(--ln);border-radius:8px;padding:7px 10px;font:inherit;cursor:pointer}
@media(max-width:1100px){nav.links{display:none;position:absolute;top:56px;left:0;right:0;background:var(--bg);flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--ln);padding:6px 16px 14px}
 nav.links.open{display:flex}nav.links a{padding:10px 2px;border-bottom:1px solid var(--ln)}nav.links a.btn{text-align:center;margin-top:10px;border:0}.menu{display:block}}
.hero2{background:linear-gradient(135deg,var(--g-d) 0%,var(--g) 60%,#2b7a5f 100%);color:#fff}
.hero2 .in{max-width:1080px;margin:0 auto;padding:46px 16px 40px}
.hero2 .kicker{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);padding:4px 12px;border-radius:99px;font-size:13px;margin-bottom:12px}
.hero2 h1{font:600 36px/1.15 Georgia,serif;margin:0 0 12px;max-width:24ch;text-wrap:balance}@media(max-width:520px){.hero2 h1{font-size:28px}}
.hero2 p{font-size:17px;max-width:60ch;margin:0 0 20px;color:#e6efe9}
.ctas{display:flex;gap:10px;flex-wrap:wrap}.ctas a{display:inline-block;padding:12px 18px;border-radius:9px;text-decoration:none;font-weight:600}
.ctas .p{background:var(--gold);color:#fff}.ctas .s{background:#25d366;color:#fff}.ctas .o{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.6)}
.crumb{font-size:13px;color:#cfe0d7;margin-bottom:10px}.crumb a{color:#fff}
main.page{max-width:1080px;margin:0 auto;padding:28px 16px 30px}
.cols{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}@media(max-width:900px){.cols{grid-template-columns:1fr}}
.prose h2{font:600 24px/1.25 Georgia,serif;margin:30px 0 10px}.prose h2:first-child{margin-top:0}.prose h3{font:600 18px/1.3 Georgia,serif;margin:22px 0 8px}
.prose p,.prose li{color:#2f2e2a}.prose ul,.prose ol{padding-left:1.25em}.prose li{margin:4px 0}
table.t{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--ln);border-radius:10px;overflow:hidden;font-size:14.5px;margin:10px 0 16px}
table.t th,table.t td{padding:10px 12px;border-bottom:1px solid var(--ln);text-align:left;vertical-align:top}table.t th{background:var(--g2);color:var(--g-d);font-weight:600}
.tw{overflow-x:auto}
.side{position:sticky;top:76px;display:flex;flex-direction:column;gap:12px}
.box{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:16px}.box h4{margin:0 0 6px;font:600 16px Georgia,serif}.box p{margin:0 0 10px;font-size:14px;color:var(--mu)}
.box a.b{display:block;text-align:center;text-decoration:none;font-weight:600;padding:11px;border-radius:9px;margin-top:6px}
.b.g{background:var(--g);color:#fff}.b.w{background:#25d366;color:#fff}
.note{font-size:13px;color:var(--mu);background:#fff;border:1px dashed var(--ln);border-radius:10px;padding:10px 12px;margin:14px 0}
.callout{margin:16px 0;padding:14px 16px;border-left:4px solid var(--g);background:var(--g2);border-radius:8px}
.warnbox{margin:16px 0;padding:12px 14px;border-radius:8px;background:var(--warn2);color:var(--warn);font-size:14px}
section.band{max-width:1080px;margin:0 auto;padding:30px 16px}section.band h2{font:600 25px Georgia,serif;margin:0 0 6px}
.lead{color:var(--mu);margin:0 0 18px;max-width:70ch}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:860px){.cards{grid-template-columns:1fr 1fr}}@media(max-width:520px){.cards{grid-template-columns:1fr}}
.card2{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:18px;text-decoration:none;color:var(--fg);display:flex;flex-direction:column;gap:6px;transition:border-color .15s,transform .15s}
a.card2:hover{border-color:var(--g);transform:translateY(-2px)}
.card2 .tag{align-self:flex-start;font-size:12px;font-weight:600;color:var(--g);background:var(--g2);border-radius:99px;padding:3px 10px}
.card2 h3{font:600 18px/1.3 Georgia,serif;margin:2px 0}.card2 p{margin:0;color:var(--mu);font-size:14.5px}.card2 .more{margin-top:auto;color:var(--g);font-weight:600;font-size:14px}
.strip{background:#fff;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln)}
.strip .in{max-width:1080px;margin:0 auto;padding:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:760px){.strip .in{grid-template-columns:1fr 1fr}}
.strip b{display:block;font:600 22px Georgia,serif;color:var(--g)}.strip span{font-size:13.5px;color:var(--mu)}
.form{display:grid;gap:10px}.form label{font-size:13px;color:var(--mu)}.form input,.form select,.form textarea{width:100%;font:inherit;padding:10px;border:1px solid var(--ln);border-radius:8px;background:#fff}
.form button,.calc button{padding:12px;border:0;border-radius:9px;background:var(--g);color:#fff;font:600 15.5px inherit;font-family:inherit;cursor:pointer}
.calc{background:#fff;border:1px solid var(--ln);border-radius:14px;padding:18px;margin:12px 0 22px}
.calc .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media(max-width:700px){.calc .grid{grid-template-columns:1fr 1fr}}@media(max-width:440px){.calc .grid{grid-template-columns:1fr}}
.calc label{display:block;font-size:13px;color:var(--mu);margin-bottom:3px}.calc input,.calc select{width:100%;font:inherit;padding:9px;border:1px solid var(--ln);border-radius:8px}
.out{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media(max-width:600px){.out{grid-template-columns:1fr}}
.out div{background:var(--g2);border-radius:10px;padding:12px}.out b{display:block;font:600 21px Georgia,serif;color:var(--g-d)}.out span{font-size:13px;color:var(--mu)}
.pk{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:860px){.pk{grid-template-columns:1fr}}
.pk .card2.hl{border:2px solid var(--gold)}.pk ul{margin:6px 0 0;padding-left:1.1em;font-size:14px}.pk .price{font:600 17px Georgia,serif;color:var(--g-d)}
.post-meta{font-size:13px;color:#cfe0d7}
footer.site{background:#13261f;color:#cbd8d1;margin-top:30px}footer.site .in{max-width:1080px;margin:0 auto;padding:26px 16px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px;font-size:14px}
@media(max-width:760px){footer.site .in{grid-template-columns:1fr}}footer.site a{color:#fff;text-decoration:none}footer.site h5{margin:0 0 8px;color:#fff;font:600 15px Georgia,serif}
footer.site ul{list-style:none;margin:0;padding:0}footer.site li{margin:5px 0}footer.site .legal{grid-column:1/-1;border-top:1px solid #2b4238;padding-top:12px;font-size:12.5px;color:#9fb3a9}
.wa-float{position:fixed;right:16px;bottom:16px;background:#25d366;color:#fff;text-decoration:none;font-weight:600;padding:12px 16px;border-radius:99px;box-shadow:0 4px 14px rgba(0,0,0,.18);z-index:30}
/* chat assistant */
.fm-chat-btn{position:fixed;left:16px;bottom:16px;z-index:31;background:var(--g);color:#fff;border:0;border-radius:99px;padding:12px 16px;font:600 14.5px inherit;font-family:inherit;box-shadow:0 4px 14px rgba(0,0,0,.2);cursor:pointer}
.fm-chat{position:fixed;left:16px;bottom:74px;z-index:32;width:min(370px,calc(100vw - 32px));height:min(540px,calc(100vh - 110px));background:#fff;border:1px solid var(--ln);border-radius:16px;box-shadow:0 10px 32px rgba(0,0,0,.2);display:none;flex-direction:column;overflow:hidden}
.fm-chat.open{display:flex}.fm-chat header{background:var(--g);color:#fff;padding:12px 14px;display:flex;justify-content:space-between;align-items:center}
.fm-chat header b{font:600 16px Georgia,serif}.fm-chat header small{display:block;font-size:12px;color:#d6e6dd}.fm-chat header button{background:none;border:0;color:#fff;font-size:22px;cursor:pointer;line-height:1}
.fm-log{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--bg)}
.fm-m{max-width:88%;padding:9px 12px;border-radius:12px;font-size:14px;line-height:1.45;white-space:pre-line}.fm-m.bot{background:#fff;border:1px solid var(--ln);align-self:flex-start}.fm-m.me{background:var(--g);color:#fff;align-self:flex-end}
.fm-q{display:flex;flex-wrap:wrap;gap:6px}.fm-q button{background:#fff;border:1px solid var(--g);color:var(--g);border-radius:99px;padding:6px 11px;font:500 13px inherit;font-family:inherit;cursor:pointer}
.fm-in{display:flex;border-top:1px solid var(--ln)}.fm-in input{flex:1;border:0;padding:12px;font:inherit;outline:none}.fm-in button{border:0;background:var(--g);color:#fff;padding:0 16px;font-weight:600;cursor:pointer}
.fm-m a{color:inherit;font-weight:600}

.fm-chat-btn,.fm-chat button,.fm-q button,.fm-in button{width:auto}.fm-in button{border-radius:0;padding:0 16px;font-size:14.5px}.fm-chat header button{padding:0;font-size:22px}
.herowrap .card{color:var(--fg)}
.cols>*,.calc .grid>div{min-width:0}.calc select,.calc input{min-width:0;max-width:100%}
