/* Preview additions layered on the original style.css */
.demo-banner{background:#FFF4E2;color:#6B4310;border-bottom:2px solid var(--amber);font-size:.78rem;text-align:center;padding:6px 12px;font-weight:600}
.mast .navwrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:1040px}
.mast a.brand{display:flex;align-items:center;gap:12px}
.nav{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap;font-size:.9rem}
.nav a{color:#DCE7DD;font-weight:600}
.nav a.authlink{background:#fff;color:var(--forest);padding:5px 12px;border-radius:999px}
@media (max-width:600px){.nav{margin-left:0;width:100%;gap:12px;font-size:.85rem}}
.btn{display:inline-block;background:var(--forest);color:#fff;text-decoration:none;font-family:Archivo,sans-serif;font-weight:700;
  padding:12px 20px;border-radius:10px;border:2px solid var(--forest);font-size:1rem;cursor:pointer;margin:4px 6px 4px 0}
.btn:hover{background:var(--green);border-color:var(--green)}
.btn-ghost{background:transparent;color:var(--forest)}
.btn-ghost:hover{background:var(--green-tint);color:var(--forest)}
.btn-lg{padding:15px 24px;font-size:1.08rem}
.btn-sm{padding:7px 12px;font-size:.85rem}
.hero{background:linear-gradient(160deg,var(--forest),#2C5F2E 70%,#3d7a40);color:#fff;padding:44px 0 40px}
.hero .wrap{max-width:860px}
.hero h1{color:#fff;font-size:clamp(2.1rem,7vw,3.4rem);margin-top:6px}
.hero .lede{color:#E2ECE3;font-size:1.15rem}
.hero .btn{background:#fff;color:var(--forest);border-color:#fff}
.hero .btn-ghost{background:transparent;color:#fff;border-color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:#B6C9B8;margin:0}
.small{font-size:.85rem}.muted{color:#B6C9B8}
.sec{margin:40px 0}
.grid2{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:720px){.grid2{grid-template-columns:1fr 1fr}main .wrap,body:not([data-gated]) main.wrap{max-width:860px}}
.card2{background:#fff;border:1.5px solid var(--ti-light);border-radius:12px;padding:16px 18px}
.card2 h3{font-size:1.05rem;color:var(--forest)}
.card2 p{margin:0;color:#3A423B}
.price{font-family:Archivo,sans-serif;font-weight:800;font-size:1.3rem;color:var(--forest)}
ol.howto{padding-left:20px}ol.howto li{margin:8px 0}
ul.checks{list-style:none;padding:0;margin:10px 0}
ul.checks li{padding:7px 0 7px 28px;position:relative;border-bottom:1px solid var(--ti-light)}
ul.checks li::before{content:"\2713";position:absolute;left:4px;color:var(--green);font-weight:800}
.textlink{color:var(--green);font-weight:700;text-decoration:none}
details{border-bottom:1px solid var(--ti-light);padding:10px 0}summary{font-weight:700;cursor:pointer}
.scanbox,.member-teaser{background:var(--green-tint);border-radius:14px;padding:6px 18px 14px}
.teaser{margin:18px 0}
.gate{border:2px solid var(--forest);border-radius:14px;padding:18px;margin:26px 0;background:#fff;box-shadow:0 6px 24px rgba(20,26,21,.08)}
.gate h2{margin:4px 0 8px;font-size:1.3rem}
.gate-tag{display:inline-block;background:var(--forest);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;border-radius:999px}
.loginform input{margin-bottom:12px}
.loginform input[type=email],.loginform input[type=password]{width:100%;font:inherit;font-size:1.05rem;padding:12px;border:1.5px solid var(--ti-light);border-radius:8px}
.loginform.standalone{max-width:420px;margin-top:20px}
.formerr{color:#8C2222;font-weight:600;margin:6px 0 0}.formerr:empty{display:none}
.demo-note{font-size:.8rem;color:#6B4310;background:#FFF4E2;border-radius:6px;padding:6px 10px}
.gate-join{font-size:.92rem}
.cta-card{background:var(--forest);color:#fff;border-radius:14px;padding:6px 18px 16px;margin:34px 0}
.cta-card h2{color:#fff}.cta-card p{color:#E2ECE3}
.cta-card .btn{background:#fff;color:var(--forest);border-color:#fff}
.cta-card .btn-ghost{background:transparent;color:#fff}
.member-bar{background:var(--green-tint);padding:8px 12px;border-radius:8px;font-size:.9rem}
.member-content{border-top:3px solid var(--forest);margin-top:20px;padding-top:4px}
.foot-cta{margin-bottom:14px}
body.is-member .gate{display:none}
body.is-member .members-get{display:none}
/* ---- v2: tiers, lead form, planner ---- */
.nav a.navcta{background:var(--amber);color:#fff;padding:5px 12px;border-radius:999px}
.tier{display:flex;flex-direction:column}.tier .btn{margin-top:auto;text-align:center}
.tier-name{font-family:Archivo,sans-serif;font-weight:800;font-size:1.1rem;color:var(--forest);margin:0}
.tier .price{margin:4px 0 0}.tier-sub{color:var(--ti);margin:0 0 6px}
.tier-featured{border-color:var(--forest);box-shadow:0 6px 24px rgba(20,26,21,.10)}
.cmp table{font-size:.9rem}.cmp td:nth-child(n+2),.cmp th:nth-child(n+2){text-align:center}
.cmp td:first-child{font-weight:400}
.leadform textarea,.plform textarea{width:100%;font:inherit;padding:12px;border:1.5px solid var(--ti-light);border-radius:8px;margin-bottom:12px}
.leadform input[type=text],.leadform input[type=email],.leadform input[type=tel],
.plform input[type=text],.plform input:not([type]),.plform input[type=time],.plform input[type=date],.plform input[type=number]{
  width:100%;font:inherit;font-size:1.05rem;padding:12px;border:1.5px solid var(--ti-light);border-radius:8px;margin-bottom:12px;background:#fff}
.plform select{margin-bottom:12px}
fieldset{border:0;padding:0;margin:0 0 12px}legend{padding:0}
.chk{display:flex;gap:10px;align-items:flex-start;padding:8px 0;font-size:.97rem}
.chk input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--forest)}
.chk-grid{display:grid;grid-template-columns:1fr;gap:0 16px;margin-bottom:8px}
@media (min-width:600px){.chk-grid{grid-template-columns:1fr 1fr}}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg label{flex:1 1 90px;border:1.5px solid var(--ti-light);border-radius:8px;padding:10px;text-align:center;background:#fff;cursor:pointer}
.seg label:has(input:checked){border-color:var(--forest);background:var(--green-tint);font-weight:700}
.seg input{accent-color:var(--forest)}
.consent{background:var(--steel);border-radius:8px;padding:12px;margin:8px 0 14px;font-size:.88rem}
.req{color:#8C2222}.opt{color:var(--ti);font-weight:400}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.thanks h1{font-size:clamp(1.9rem,8vw,2.6rem)}
.upsell h2{font-size:1.2rem;line-height:1.3}
.upsell .small a{color:#DCE7DD}
body.is-member .public-cta{display:none}
.plform{background:#fff;border:1.5px solid var(--ti-light);border-radius:14px;padding:4px 16px 16px;margin:18px 0}
.step-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end;margin-bottom:4px}
.step-row label{font-size:.78rem}.step-row button{margin-bottom:12px}
.wdpick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.wdpick label{border:1.5px solid var(--ti-light);border-radius:8px;padding:8px 10px;background:#fff;font-size:.9rem}
.wdpick label:has(input:checked){border-color:var(--forest);background:var(--green-tint);font-weight:700}
.muted2{color:var(--ti)}
.plcard{border:2px solid var(--forest);border-radius:14px;padding:6px 16px 14px;margin:18px 0;background:#fff}
.plcard h3{font-size:1.15rem;margin:10px 0 2px}
.kv{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.kv div{background:var(--steel);border-radius:8px;padding:8px 10px}
.kv b{display:block;font-family:Archivo,sans-serif;font-size:1.15rem;color:var(--forest)}
.kv span{font-size:.78rem;color:var(--ti)}
.kv .hi{background:#FFF4E2}.kv .hi b{color:#6B4310}
.plcard table{font-size:.88rem}
.plcard .acts{display:flex;gap:8px;flex-wrap:wrap}
.plwarn{background:#FFF4E2;border-left:4px solid var(--amber);padding:8px 10px;font-size:.88rem;margin:8px 0}
.cal-actions{background:var(--green-tint);border-radius:14px;padding:4px 16px 14px}
#pl-glinks a{display:block;padding:8px 0;color:var(--green);font-weight:600}
.draft-tag{display:inline-block;vertical-align:middle;background:#FFF4E2;color:#6B4310;border:1px solid var(--amber);font-family:"Public Sans",sans-serif;
  font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:999px}
.draft-banner{background:#FFF4E2;border-left:4px solid var(--amber);padding:10px 12px;border-radius:0 8px 8px 0;font-size:.92rem}
.tiers4{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:720px){.tiers4{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){body:not([data-gated]) main.wrap{max-width:1080px}.tiers4{grid-template-columns:repeat(4,1fr)}}
.tier-note{font-size:.82rem;background:var(--steel);border-radius:6px;padding:6px 8px;color:#3A423B}
.prepay{background:var(--green-tint);border-radius:10px;padding:10px 14px}
.tbl-wide{overflow-x:auto}.tbl-wide table{min-width:520px}.tbl-wide td:first-child{min-width:150px}
.member-content.plain{border-top:0}
@media (max-width:600px){.cmp table{min-width:0;font-size:.74rem}.cmp th,.cmp td{padding:7px 3px}.cmp td:first-child{min-width:0;width:38%}}
[hidden]{display:none!important}
.prepay-mini{list-style:none;padding:8px 10px;margin:4px 0 8px;background:var(--green-tint);border-radius:8px;font-size:.82rem}
.prepay-mini li{padding:2px 0}.prepay-mini span{color:var(--ti)}
.prepay h2{margin-top:10px}.prepay-tbl table{background:#fff;border-radius:8px}
.prepay-tbl td:first-child{font-weight:700}

.prepay-tbl .pct{display:inline-block;font-size:.78em;font-weight:700;color:#7a4a12;background:#fbecd6;border-radius:999px;padding:1px 8px;margin-bottom:2px}

/* Memberstack forms + gate */
.loginform input[type=text]{width:100%;font:inherit;font-size:1.05rem;padding:12px;border:1.5px solid var(--ti-light);border-radius:8px}
.standalone{max-width:420px;margin-top:20px}
.gate .loginform{margin-top:14px}
.gate-signup{margin-top:14px}
.gate-signup>summary{list-style:none;cursor:pointer;display:inline-block}
.gate-signup>summary::-webkit-details-marker{display:none}
.gate-signup[open]>summary{margin-bottom:10px}
.ms-failed{font-size:.88rem;color:#7a1f12;background:#fdecea;border-radius:8px;padding:8px 12px}
body.ms-failed-load [data-ms-form]{display:none}

.gate a:not(.btn),.standalone a:not(.btn){color:var(--forest)}
