/*
  AdditionPilot — Editorial Modern 2026 design layer.
  Added after base site.css; leaves every calculator formula and page URL untouched.
*/
:root {
  --ap-ink:#102832;
  --ap-forest:#08695e;
  --ap-forest-deep:#075347;
  --ap-sage:#eaf4ee;
  --ap-paper:#f7f9f7;
  --ap-line:#dce8e1;
  --ap-muted:#48636b;
  --ap-glow:0 24px 80px rgba(9,46,39,.095);
  --ap-font-display:"Avenir Next","Segoe UI Variable Display",ui-sans-serif,system-ui,sans-serif;
  --ap-font-body:"Avenir Next","Segoe UI Variable Text",ui-sans-serif,system-ui,sans-serif;
}
html{scroll-behavior:smooth}
body{background:var(--ap-paper);color:var(--ap-ink);font-family:var(--ap-font-body);font-size:16px;line-height:1.65;letter-spacing:-.008em}
h1,h2,h3,h4,.brand,.stat strong,.result-number{font-family:var(--ap-font-display);letter-spacing:-.045em}
h1,h2,h3{color:var(--ap-ink)}
h1{font-weight:800}
h2{font-weight:790}
h3{font-weight:760}
a{transition:color .18s ease}
.container{width:min(1232px,calc(100% - 64px))}
.microbar{background:#102d32;color:#cde3da;letter-spacing:.085em;font-weight:700;padding:8px 10px}
.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid #e3ece5;box-shadow:0 10px 34px rgba(8,39,38,.045);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.nav-shell{min-height:83px}
.brand{font-size:1.52rem;font-weight:850;letter-spacing:-.072em}
.brand-mark{background:linear-gradient(145deg,#0e514f,#163740);border-radius:13px;transform:rotate(-3deg);box-shadow:0 9px 22px rgba(8,59,54,.15)}
.nav-menu{gap:24px;letter-spacing:-.005em}
.nav-menu>a:not(.btn){font-weight:740;font-size:.88rem;color:#254149}
.nav-menu>a:not(.btn):hover{color:var(--ap-forest)}
.btn{border-radius:13px;padding:14px 23px;font-weight:790;letter-spacing:-.015em;min-height:46px}
.btn-primary{background:#096a5d;color:white;box-shadow:0 12px 26px rgba(8,106,93,.19)}
.btn-primary:hover{background:#085449;color:white;box-shadow:0 16px 34px rgba(8,106,93,.23)}
.btn-dark{background:#143e41;color:#fff}
.btn-outline{border:1px solid #bed3c7;color:#173c3f;background:rgba(255,255,255,.85)}
.btn-outline:hover{border-color:#72ac95;background:#f3faf5;color:#073d37}
a:focus-visible,button:focus-visible,.tool-card:focus-within,.field input:focus-visible,.field select:focus-visible{outline:3px solid #67bba6;outline-offset:4px}
.hero{padding:clamp(64px,7vw,106px) 0 92px;background:radial-gradient(ellipse at 72% 16%,rgba(208,236,220,.86),transparent 43%),radial-gradient(circle at 2% 100%,#eef5ee,transparent 47%),linear-gradient(120deg,#f9fbf8,#edf5ee 100%);border-bottom:1px solid #e0ece1}
.hero-grid{grid-template-columns:1.04fr .96fr;gap:clamp(36px,5.2vw,88px)}
.hero h1{font-size:clamp(3.15rem,5.5vw,5.8rem);line-height:1.045;letter-spacing:-.078em;margin:21px 0 28px;text-wrap:balance}
.hero .highlight{color:#0a796a;position:relative}
.hero p{font-size:clamp(1.05rem,1.45vw,1.22rem);color:#48636b;line-height:1.78;max-width:55ch}
.hero .tag{font-size:.73rem;letter-spacing:.092em}
.hero-actions{margin-top:32px;gap:13px}
.trustbar{margin-top:33px;gap:10px 15px;font-size:.77rem;font-weight:680}
.trustbar span{background:#fff;border:1px solid #dcebe1;padding:8px 12px;border-radius:999px;box-shadow:0 6px 22px rgba(11,48,39,.035)}
.trustbar span:before{color:#08775e}
.hero-art{isolation:isolate;position:relative}
.hero-art:before{content:"";position:absolute;inset:5% -5% -5% 6%;background:#c9e6d5;border-radius:36px;transform:rotate(4deg);z-index:-1}
.hero-art img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:31px;box-shadow:0 32px 72px rgba(13,43,43,.17);filter:none}
.float-label{right:-12px;bottom:30px;padding:17px 22px;border:1px solid rgba(207,225,217,.9);border-radius:17px;box-shadow:0 19px 50px rgba(9,45,42,.13);color:#506c71;background:rgba(255,255,255,.97)}
.float-label strong{color:#096b5c;font-family:var(--ap-font-display);font-size:1.43rem;letter-spacing:-.04em}
.section{padding:clamp(65px,6.5vw,105px) 0}
.section-header{max-width:780px;margin-bottom:37px}
.section-header h2{font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.12;text-wrap:balance}
.section-header p{font-size:1.04rem;line-height:1.7;color:#50676b}
.eyebrow{letter-spacing:.135em;color:#07695d;font-size:.73rem;font-weight:850}
.home-calculator{background:linear-gradient(145deg,#edf7f0 0%,#f6f9f5 67%,#edf6ed 100%);border-bottom:1px solid #dae8dc}
.home-calculator .section-header{max-width:860px}
.page-layout{gap:28px;align-items:start}
.panel{border:1px solid #dceae1;border-radius:24px;box-shadow:0 19px 54px rgba(22,66,53,.07);padding:clamp(24px,3vw,38px)}
.panel h2,.panel h3{letter-spacing:-.035em}
.field label{font-weight:760;color:#25434a}
.field .hint{color:#5e7779}
.field input,.field select{min-height:52px;border:1.5px solid #cbdcd3;border-radius:12px;background:#fdfefd;padding:13px 15px;box-shadow:0 1px 2px rgba(8,45,37,.025);transition:border-color .18s,box-shadow .18s,background .18s}
.field input:focus,.field select:focus{border-color:#0f9582;background:#fff;box-shadow:0 0 0 4px rgba(12,124,109,.12);outline:0}
.check-field{background:#f1f8f3;border:1px solid #e1eee6;border-radius:12px}
.form-section-title{font-family:var(--ap-font-display);color:#0b6358;font-size:.78rem}
.result-panel{background:linear-gradient(160deg,#173f43 0%,#102d39 100%);border:1px solid #17494b;border-radius:24px;color:white;box-shadow:0 27px 60px rgba(7,34,44,.20)}
.result-panel .result-number{font-weight:840;letter-spacing:-.06em}
.result-panel .eyebrow{color:#a9e8d2}
.result-panel .btn{border-radius:11px}
.home-calculator .result-panel{background:linear-gradient(155deg,#16544b,#102d38 82%)}
.stats-strip{background:#fff;border-block:1px solid #e0ebe3}
.stats-grid{padding:32px 0}
.stat strong{font-size:clamp(1.23rem,2vw,1.65rem);color:#163c41;font-weight:840}
.stat span{font-size:.83rem;color:#53696c}
.cards{gap:24px;align-items:stretch}
.tool-card{display:flex;flex-direction:column;min-width:0;min-height:398px;padding:28px;background:#fff;border:1px solid #dce8df;border-radius:24px;overflow:hidden;box-shadow:0 10px 32px rgba(9,50,44,.055);transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease,border-color .25s ease}
.tool-card:hover{transform:translateY(-5px);border-color:#b9d4c7;box-shadow:0 25px 64px rgba(8,56,48,.15)}
.tool-card>a.cover{z-index:2;border-radius:24px;outline-offset:-4px}
.ap-tool-card-photo{position:relative;flex-shrink:0;height:205px!important;overflow:hidden;border-radius:23px 23px 0 0!important;margin:-28px -28px 24px!important;background:#e5efe8!important}
.ap-tool-card-photo img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;transition:transform .48s cubic-bezier(.2,.7,.2,1),filter .48s ease}
.tool-card:hover .ap-tool-card-photo img{transform:scale(1.045)}
.ap-tool-card-photo:after{content:"";position:absolute;inset:58% 0 0;pointer-events:none;background:linear-gradient(transparent,rgba(13,36,31,.09))}
.tool-card h3{font-size:clamp(1.15rem,1.5vw,1.37rem);line-height:1.27;font-weight:830;margin:0 0 12px;color:#122f38}
.tool-card p{font-size:.92rem;line-height:1.65;flex:1;color:#516b72;margin-bottom:19px}
.tool-card .card-link{display:inline-flex;align-items:center;align-self:flex-start;font-family:var(--ap-font-display);font-size:.85rem;color:#066b5c;font-weight:820;line-height:1.4;white-space:normal;letter-spacing:-.018em;margin-top:auto}
.tool-card:hover .card-link{color:#005e51}
.cards>.tool-card:nth-child(7):last-child{grid-column:1/-1;display:grid;grid-template-columns:43% minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:clamp(24px,4vw,58px);align-items:center;min-height:292px}
.cards>.tool-card:nth-child(7):last-child .ap-tool-card-photo{grid-column:1;grid-row:1/4;align-self:stretch;height:calc(100% + 56px)!important;min-height:292px;margin:-28px 0 -28px -28px!important;border-radius:23px 0 0 23px!important}
.cards>.tool-card:nth-child(7):last-child h3{grid-column:2;grid-row:1;align-self:end;font-size:clamp(1.48rem,2vw,2.08rem);max-width:21ch;margin:0 18px 15px 0}
.cards>.tool-card:nth-child(7):last-child p{grid-column:2;grid-row:2;align-self:start;font-size:1rem;max-width:48ch;margin:0 18px 26px 0}
.cards>.tool-card:nth-child(7):last-child .card-link{grid-column:2;grid-row:3;align-self:start;margin:0 0 0 0}
.ap-editorial-photo{border-radius:25px;background:#fff;overflow:hidden;box-shadow:0 20px 55px rgba(12,47,43,.085)}
.ap-editorial-photo img{border-radius:20px!important;display:block}
.ap-editorial-photo figcaption{font-size:.75rem!important;color:#51656a!important;line-height:1.4;padding:7px 12px 12px}
.state-highlight{background:#f5f9f6}
.state-card,.toc{border-radius:20px;box-shadow:0 12px 33px rgba(9,43,33,.045)}
.location-chip{font-family:var(--ap-font-display);border-radius:13px;font-weight:730}
.location-chip:hover{border-color:#a0c9b8;box-shadow:0 7px 24px rgba(8,60,50,.07)}
.section-dark{background:linear-gradient(125deg,#0d2b35,#154343 85%);color:white}
.section-dark h2,.section-dark h3{color:#f5faf7}
.section-dark .eyebrow{color:#8fdac3}
.section-dark p{color:#d0e3e2}
.how-num{background:rgba(115,204,168,.12);border:1px solid #75ab9e}
.cta-panel{background:linear-gradient(120deg,#e3f1e7,#f2f9ee);border:1px solid #b9d7c8;border-radius:25px;box-shadow:0 16px 48px rgba(11,64,49,.07);padding:clamp(28px,4vw,52px)}
.cta-panel h2{letter-spacing:-.055em}
.faq-list details{background:#fff;border:1px solid #ddeae2;border-radius:15px;padding:20px 25px;margin-bottom:11px}
.faq-list details summary{color:#223d43;font-weight:750}
.faq-list details[open]{box-shadow:0 11px 36px rgba(11,52,44,.055)}
.page-hero{padding:clamp(55px,5.5vw,80px) 0 54px;background:linear-gradient(125deg,#f3f9f4,#ecf4ef)}
.page-hero h1{font-size:clamp(2.35rem,4vw,4.05rem);letter-spacing:-.063em}
.page-hero .lead{color:#4d686c}
.breadcrumbs{font-weight:670}
.content-area p,.content-area li{color:#3e5a62}
.content-area a:not(.btn),.legal a:not(.btn),.section-header p a:not(.btn){text-decoration:underline;text-decoration-color:#84b9aa;text-underline-offset:4px;text-decoration-thickness:1.5px}
.content-area a:hover{text-decoration-color:#076b5c}
.footer{background:#102d36;color:#c8dcdb}
.footer h3{font-family:var(--ap-font-display);font-size:.94rem;line-height:1.4;color:#fff;letter-spacing:-.022em;font-weight:790;margin:0 0 15px}
.field .hint,.hint,.source-note{color:#425d64}
main .faq-list p a:not(.btn),main .section p a:not(.btn),main .page-hero p a:not(.btn){text-decoration:underline;text-decoration-color:#68a799;text-underline-offset:3px}
main .faq-list p a:hover,main .section p a:hover{text-decoration-color:#046656}

.footer-grid{gap:48px}
.footer a{color:#e4f1ec;text-underline-offset:4px}
.footer-bottom{border-color:#38555b}
@media(max-width:1090px){
  .container{width:min(1180px,calc(100% - 48px))}
  .hero-grid{gap:35px}
  .cards{gap:20px}
  .tool-card{min-height:390px}
}
@media(max-width:990px){
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cards>.tool-card:nth-child(7):last-child{grid-column:1/-1}
  .hero{padding:70px 0}
  .hero h1{font-size:clamp(2.85rem,5.8vw,4.2rem)}
  .page-layout{gap:24px}
}
@media(max-width:760px){
  .container{width:calc(100% - 36px)}
  .nav-shell{min-height:70px}
  .nav-menu{background:rgba(255,255,255,.99);box-shadow:0 24px 45px rgba(7,49,43,.13);padding:23px}
  .nav-menu a{min-height:41px}
  .hero{padding:48px 0 68px}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:33px}
  .hero h1{font-size:clamp(2.8rem,9vw,4.4rem)}
  .hero-art{max-width:610px}
  .section{padding:66px 0}
  .float-label{right:6px;bottom:12px;padding:11px 15px}
  .float-label strong{font-size:1.17rem}
  .panel{padding:24px}
  .stats-grid{gap:10px}
  .cards>.tool-card:nth-child(7):last-child h3{font-size:1.45rem}
}
@media(max-width:700px){
  .cards{grid-template-columns:minmax(0,1fr)}
  .tool-card{min-height:0;padding:25px}
  .ap-tool-card-photo{height:205px!important;margin:-25px -25px 24px!important;border-radius:22px 22px 0 0!important}
  .cards>.tool-card:nth-child(7):last-child{display:flex;flex-direction:column;grid-column:auto;min-height:0}
  .cards>.tool-card:nth-child(7):last-child .ap-tool-card-photo{width:calc(100% + 50px);height:205px!important;min-height:0;margin:-25px -25px 24px!important;border-radius:22px 22px 0 0!important;align-self:center}
  .cards>.tool-card:nth-child(7):last-child h3{font-size:1.27rem;max-width:none;margin:0 0 11px}
  .cards>.tool-card:nth-child(7):last-child p{font-size:.92rem;max-width:none;margin:0 0 20px;flex:1}
  .cards>.tool-card:nth-child(7):last-child .card-link{margin-top:auto}
  .section-header h2{font-size:clamp(1.9rem,7vw,2.65rem)}
}
@media(max-width:520px){
  .container{width:calc(100% - 30px)}
  .microbar{font-size:.65rem;line-height:1.4}
  .hero{padding:42px 0 57px}
  .hero h1{font-size:clamp(2.65rem,10.1vw,3.35rem)}
  .hero p{font-size:1.02rem}
  .hero-actions .btn{width:100%}
  .hero-art img{border-radius:24px}
  .hero-art:before{border-radius:25px}
  .float-label{bottom:10px;font-size:.7rem}
  .trustbar{gap:8px}
  .trustbar span{font-size:.72rem;padding:7px 10px}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .panel{padding:21px}
  .section{padding:55px 0}
  .stat strong{font-size:1.05rem}
  .stat span{font-size:.71rem}
  .stats-grid{gap:0}
  .ap-editorial-photo{margin-inline:10px!important;padding:0!important}
  .ap-editorial-photo img{border-radius:14px!important}
  .footer-grid{gap:27px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
