/* GAO-0016: self-contained article styling; no external resources */
.estimate-review-banner{padding:10px 16px;background:#ffedb7;color:#47360c;text-align:center;font-size:13px;font-weight:700}
.estimate-breadcrumbs{padding:24px 0 12px;font-size:13px;color:#52645c}
.estimate-breadcrumbs a{color:inherit}
.estimate-hero{background:linear-gradient(135deg,#eaf3e8 0%,#f8f8ed 100%);padding:58px 0 54px;color:#173d32}
.estimate-eyebrow{font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#577866;font-size:12px;margin:0 0 14px}
.estimate-kicker{font-size:16px;font-weight:700;margin:0 0 18px}
.estimate-hero h1{max-width:880px;font-size:clamp(29px,4.2vw,47px);line-height:1.35;letter-spacing:.012em;margin:0 0 24px}
.estimate-hero h1 span{display:block}
.estimate-lead{max-width:760px;font-size:17px;line-height:1.95;margin:0 0 22px}
.estimate-facts{display:flex;gap:8px;flex-wrap:wrap}
.estimate-facts span{background:white;border:1px solid #c7d9c8;padding:7px 12px;border-radius:100px;font-size:12px;font-weight:700}
.estimate-layout{padding:54px 0 84px}
.estimate-body{max-width:820px;margin:0 auto;font-size:16px;line-height:2.05;color:#243a30}
.estimate-body p{margin:0 0 20px}
.estimate-body a{color:#0a6651;text-underline-offset:3px}
.estimate-opening{font-size:17px;padding:0 0 10px}
.estimate-toc{background:#f3f7f2;border:1px solid #dce8dc;border-radius:16px;padding:24px 28px;margin:26px 0 56px}
.estimate-toc strong{display:block;color:#214b3a;margin-bottom:10px}
.estimate-toc ol{margin:0;padding-left:23px}.estimate-toc li{margin:4px 0}
.estimate-section{margin:0 0 62px;scroll-margin-top:24px}
.estimate-section h2{font-size:clamp(22px,3vw,29px);line-height:1.5;color:#173d32;margin:0 0 25px;padding-bottom:12px;border-bottom:2px solid #dbe7d9}
.estimate-num{display:inline-block;background:#173d32;color:white;font-size:13px;vertical-align:middle;border-radius:7px;padding:3px 9px;margin-right:12px}
.estimate-related{background:#f4f7f1;border-left:4px solid #719779;border-radius:8px;padding:22px 24px;margin:25px 0}
.estimate-related p:last-child{margin-bottom:0}
.estimate-related ul{margin:8px 0 0;padding-left:20px}
.estimate-figure{margin:30px 0;padding:24px;border:1px solid #d8e5da;border-radius:17px;background:#f7faf5}
.estimate-figure figcaption{display:flex;align-items:center;flex-wrap:wrap;gap:11px;line-height:1.5;color:#244936;margin-bottom:18px}
.estimate-figure figcaption strong{font-size:18px}
.estimate-figure-tag{font-size:12px;background:#173d32;color:white;border-radius:20px;padding:2px 11px}
.estimate-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.estimate-step-grid>div{background:white;border:1px solid #dce6dc;border-radius:12px;padding:17px}
.estimate-step-grid span{display:block;color:#52775a;font-size:13px;font-weight:700}
.estimate-step-grid strong{display:block;line-height:1.7;font-size:14px;margin:10px 0}
.estimate-step-grid p{font-size:13px;line-height:1.7;margin:0}
.estimate-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:28px 0}
.estimate-table{border-collapse:collapse;width:100%;min-width:550px;line-height:1.6;font-size:14px}
.estimate-table caption{text-align:left;font-size:13px;color:#577064;padding:0 0 10px}
.estimate-table th,.estimate-table td{border:1px solid #d8e3db;padding:12px 13px;text-align:left;vertical-align:top}
.estimate-table thead{background:#eaf2e8}
.estimate-table tbody th{background:#f7f9f5;white-space:nowrap}
.estimate-result{background:#173d32;color:#fff;padding:28px;text-align:center;border-radius:14px;margin:25px 0}
.estimate-result span{display:block;font-size:14px}
.estimate-result strong{font-size:clamp(40px,8vw,57px);line-height:1.5;display:block;font-variant-numeric:tabular-nums}
.estimate-result strong small{font-size:18px;margin-left:4px}
.estimate-result p{margin:0;font-size:13px;color:#deebe1}
.estimate-cta{border:2px solid #a2c7b2;border-radius:16px;background:#f0f8f0;padding:26px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:25px;margin:30px 0}
.estimate-cta span,.estimate-product>span{display:block;font-size:12px;letter-spacing:.06em;color:#466e54;font-weight:800}
.estimate-cta h3,.estimate-product h3{font-size:21px;color:#173d32;margin:8px 0 10px}
.estimate-cta p{margin:0;font-size:14px}
.estimate-body a.estimate-button{display:inline-block;padding:13px 18px;border-radius:10px;background:#173d32;color:#fff;text-decoration:none;font-size:14px;font-weight:700;text-align:center}
.estimate-body a:focus-visible{outline:3px solid #e6a432;outline-offset:4px}
.estimate-mail{border:1px solid #d3ded6;border-radius:15px;background:#fff;padding:27px 30px;margin:25px 0;overflow-wrap:anywhere}
.estimate-mail-subject{border-bottom:1px solid #dfebe2;padding-bottom:16px}
.estimate-mail ul{margin:0 0 20px;padding-left:22px}
.estimate-mail li{margin:4px 0}
.estimate-note{font-size:13px;color:#54675d;background:#f5f7f5;border-radius:8px;padding:12px 15px}
.estimate-flow{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:0}
.estimate-flow li{background:#fff;border:1px solid #dce6dc;border-radius:12px;padding:20px 14px}
.estimate-flow li>span{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#173d32;color:#fff;font-weight:700;margin-bottom:12px}
.estimate-flow strong{display:block}.estimate-flow p{font-size:13px;line-height:1.7;margin:5px 0 0}
.estimate-product{background:#edf5eb;border-radius:16px;padding:30px;margin:22px 0}
.estimate-product p{font-size:15px}
.estimate-endnote{border-top:1px solid #dbe5df;padding-top:18px;color:#607067;font-size:12px}
@media(max-width:640px){
  .estimate-hero{padding:37px 0 40px}
  .estimate-hero h1{font-size:clamp(26px,6.5vw,34px)}
  .estimate-lead,.estimate-opening{font-size:15px}
  .estimate-layout{padding:35px 0 60px}
  .estimate-body{font-size:15px;line-height:1.95}
  .estimate-toc{padding:18px 20px;margin:20px 0 42px}
  .estimate-section{margin-bottom:48px}
  .estimate-section h2{font-size:22px}
  .estimate-step-grid,.estimate-flow,.estimate-cta{grid-template-columns:1fr}
  .estimate-figure{padding:18px 14px}
  .estimate-cta{padding:20px}
  .estimate-mail{padding:20px 17px}
  .estimate-product{padding:23px 20px}
}
@media(max-width:360px){.estimate-facts span{font-size:11px}.estimate-num{margin-right:7px}.estimate-hero h1{font-size:25px}.estimate-table{font-size:12px}}
