/* Rampart Title — additions on top of the shared layout stylesheet */
.statebar{background:#232427;color:rgba(255,255,255,.75);font-size:13px;padding:0 2.5rem;height:38px;display:flex;justify-content:space-between;align-items:center;gap:1rem;position:fixed;top:0;left:0;right:0;z-index:1001}
.statebar .sb-states{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap}
.statebar .sb-states span{opacity:.7;margin-right:.25rem;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}
.statebar a{color:#fff;text-decoration:none;font-weight:600;padding:.2rem .75rem;border:1px solid rgba(255,255,255,.2);border-radius:99px;transition:.2s}
.statebar a:hover,.statebar a.on{background:var(--orange);border-color:var(--orange);color:#fff}
.statebar .sb-right a{border:0;padding:0;font-weight:600}
@media(max-width:640px){.statebar{justify-content:center;padding:0 .5rem}.statebar .sb-right{display:none}.statebar .sb-states span{display:none}.statebar a{padding:.15rem .6rem;font-size:12px}}
nav{top:38px!important}.mobile-nav{top:116px!important}.hero-content{padding-top:116px!important}.inner-hero{padding-top:10.5rem!important}
.nav-logo img{height:44px;width:auto}
/* calculators */
.calc-card{background:#fff;border:2px solid var(--navy);border-radius:14px;padding:2rem;box-shadow:var(--shadow);max-width:640px;margin:0 auto}
.calc-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.calc-row.one{grid-template-columns:1fr}
.calc-field{display:flex;flex-direction:column}
.calc-field label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gray);margin-bottom:6px}
.calc-field input,.calc-field select{color-scheme:light;border:1.5px solid var(--orange);border-radius:8px;padding:.8rem .95rem;font-family:var(--sans);font-size:1.05rem;color:var(--navy);background:#fff;outline:none;font-weight:600;width:100%;box-sizing:border-box}
.calc-field select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' fill='none' stroke='%232E2F33' stroke-width='2'%3E%3Cpath d='M1 1l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2rem;font-size:1rem}
.calc-field input:focus,.calc-field select:focus{border-color:var(--orange-ink);box-shadow:0 0 0 3px rgba(0,174,239,.18)}
.calc-result{background:var(--navy);color:#fff;border-radius:10px;padding:1.75rem;margin-top:1.5rem;box-shadow:0 16px 40px rgba(46,47,51,.18)}
.calc-result h3{color:#fff;font-size:1rem;margin:0 0 1rem;font-family:var(--sans);font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.8}
.calc-line{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;font-size:15px}
.calc-line span:first-child{color:rgba(255,255,255,.72)}
.calc-line span:last-child{font-weight:700;white-space:nowrap}
.calc-subtotal{border-top:1px dashed rgba(255,255,255,.18);margin-bottom:.4rem}
.calc-subtotal span:first-child{color:#fff;font-weight:700}
.calc-sect{margin-top:.6rem;padding-top:.6rem;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}
.calc-total{border-top:1px solid rgba(255,255,255,.18);margin-top:.6rem;padding-top:1rem;font-size:1.05rem}
.calc-total span:first-child{color:#fff;font-weight:700}
.calc-total span:last-child{color:var(--orange);font-size:1.9rem;font-family:var(--serif);font-weight:700;font-variant-numeric:lining-nums tabular-nums}
.calc-formula{font-size:12.5px;color:rgba(255,255,255,.62);margin-top:1rem;font-style:italic;line-height:1.6}
.calc-cta{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.15);text-align:center}
.calc-cta a{display:inline-block;background:var(--orange);color:#fff;font-weight:700;padding:.85rem 1.7rem;border-radius:8px;text-decoration:none;font-size:15px}
.calc-cta .rz{font-size:12.5px;color:rgba(255,255,255,.6);margin-top:.75rem;line-height:1.55}
@media(max-width:600px){.calc-row{grid-template-columns:1fr}.calc-card{padding:1.4rem 1.1rem}}
.calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media(max-width:900px){.calc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.calc-grid{grid-template-columns:1fr}}
.calc-tile{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.35rem 1.25rem;text-decoration:none;color:inherit;transition:.2s}
.calc-tile:hover{border-color:var(--orange);box-shadow:0 10px 26px rgba(0,0,0,.08);transform:translateY(-2px)}
.calc-tile .ic{font-size:1.6rem;margin-bottom:.5rem}
.calc-tile .nm{font-family:var(--serif);font-size:1.3rem;color:var(--navy);font-weight:700;margin-bottom:.35rem}
.calc-tile .ds{font-size:14px;color:var(--gray);line-height:1.55;flex:1}
.calc-tile .go{margin-top:.85rem;font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--orange-ink)}
.state-tabs{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin:0 0 2rem}
.state-tabs a{padding:.6rem 1.3rem;border-radius:99px;border:1.5px solid var(--navy);color:var(--navy);text-decoration:none;font-weight:700;font-size:14px}
.state-tabs a.on,.state-tabs a:hover{background:var(--navy);color:#fff}
.prose{max-width:820px;margin:0 auto;color:#374151;line-height:1.85;font-size:16.5px}
.prose h2{font-family:var(--serif);color:var(--navy);font-size:2rem;margin:2.2rem 0 .8rem}
.prose h3{font-family:var(--serif);color:var(--navy);font-size:1.45rem;margin:1.6rem 0 .5rem}
.prose ul{padding-left:1.2rem;list-style:disc}.prose ul li::marker{color:var(--orange)}.prose li{margin:.35rem 0}
.prose table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:15px}
.prose th,.prose td{border-bottom:1px solid var(--border);padding:.6rem .5rem;text-align:left}
.prose th{background:var(--cream);color:var(--navy)}
.note-box{background:var(--orange3);border-left:4px solid var(--orange);padding:1rem 1.2rem;border-radius:8px;color:var(--navy);font-size:15px;margin:1.2rem 0}
/* team */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.team-grid{grid-template-columns:1fr}}
.team-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;text-align:center;padding-bottom:1.25rem}
.team-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.team-card h3{font-family:var(--serif);color:var(--navy);font-size:1.4rem;margin:1rem .75rem .2rem}
.team-card .role{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--orange-ink)}
.team-card p{font-size:14px;color:var(--gray);line-height:1.6;padding:.6rem 1.1rem 0;text-align:left}
/* forms */
.rt-form-wrap{max-width:640px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:14px;padding:2.1rem 1.9rem;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.rt-form .calc-field input,.rt-form .calc-field select,.rt-form .calc-field textarea{border:1px solid var(--border);border-radius:8px;padding:.8rem .9rem;font-size:15px;font-family:var(--sans);color:var(--navy);width:100%;box-sizing:border-box;font-weight:500;background:#fff}
.rt-form textarea{min-height:110px;resize:vertical}
.rt-form button{width:100%;background:var(--orange);color:#fff;border:0;padding:1rem;border-radius:8px;font-weight:700;font-size:16px;cursor:pointer;font-family:var(--sans);margin-top:.5rem}
.rt-form .hp{position:absolute;left:-9999px}
.rt-form .msg{display:none;text-align:center;margin:.85rem 0 0;font-size:14.5px}
.office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media(max-width:900px){.office-grid{grid-template-columns:1fr}}
.office{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.6rem}
.office h3{font-family:var(--serif);color:var(--navy);font-size:1.5rem;margin:0 0 .5rem}
.office p{margin:.25rem 0;color:#374151;font-size:15px}
.office a{color:var(--orange-ink);font-weight:600;text-decoration:none}
.wire-alert{background:#232427;color:#fff;text-align:center;font-size:13.5px;padding:.6rem 5%}
.wire-alert a{color:var(--orange);font-weight:700}
.fbot-links a,.fcol a{color:rgba(255,255,255,.7)}

/* team bio pages */
.bio-hero{display:flex;align-items:center;gap:2.2rem;max-width:900px}
.bio-photo{width:170px;height:170px;border-radius:50%;object-fit:cover;border:4px solid var(--orange);flex-shrink:0}
.bio-grid{display:grid;grid-template-columns:1fr 330px;gap:3rem;align-items:start}
.bio-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1.8rem;position:sticky;top:140px}
.bio-card .bl{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--orange-ink);margin-bottom:.3rem}
.bio-card .bv{font-size:15px;color:var(--navy);font-weight:600;margin-bottom:1.1rem;line-height:1.5}
.bio-card .bv a{color:var(--navy);text-decoration:none}
@media(max-width:860px){.bio-grid{grid-template-columns:1fr}.bio-card{position:static}.bio-hero{flex-direction:column;text-align:center;gap:1.2rem}.bio-hero .breadcrumb{justify-content:center}}

/* stats band framed in brand cyan */
.statsbar{border-top:3px solid var(--orange);border-bottom:3px solid var(--orange)}
@media(max-width:600px){.calc-total{flex-wrap:wrap}.calc-total span:last-child{font-size:1.55rem;margin-left:auto}.calc-line{font-size:14px}}

/* 10-item menu: tighten on laptops, hamburger below 1200px */
@media(max-width:1380px){nav{padding:0 1.25rem 0 1.5rem}.nav-links{gap:.75rem;margin:0 .4rem}.nav-links a{font-size:11.5px;letter-spacing:.02em}.nav-logo img{height:38px}}
@media(max-width:1199px){.nav-links{display:none}.nav-ham{display:flex}.nav-cta{margin-left:auto;margin-right:1rem}}

/* co-marketing tools: let the builder column shrink on phones */
@media(max-width:900px){.cm-grid{grid-template-columns:minmax(0,1fr)!important}.cm-grid>*{min-width:0}}

/* Title Engine credit */
.te-power{display:inline-block;margin-left:.6rem;opacity:.75}.te-power a,.te-calc a{color:var(--orange);font-weight:700;text-decoration:none}
.te-calc{text-align:center;font-size:12px;color:rgba(255,255,255,.55);margin-top:1rem;letter-spacing:.02em}
@media(max-width:600px){.te-power{display:block;margin:.4rem 0 0}}
