/* Mobile-first refinement, shared by all portable calculator pages. */
.cc .form-group{min-width:0;margin:0;padding:24px 0 0;border:0;border-top:1px solid var(--line)}
.cc .form-group:first-child{padding-top:10px;border:0}.cc .form-group legend{font-size:17px;line-height:1.4;font-weight:700;margin-bottom:16px;padding:0 8px 0 0}.cc .form-group legend span{display:inline-grid;place-items:center;background:#edf4fe;color:var(--blue);border-radius:6px;width:29px;height:29px;font-size:12px;margin-right:10px}
.cc .extra-period{min-width:0;border:1px solid var(--line);border-radius:8px;padding:18px;margin:20px 0 0}.cc .extra-period legend{font-size:15px;padding:0 6px}.cc .extra-period input{max-width:100%}.cc .result{scroll-margin-top:20px}.cc .result-actions{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid #365164;margin:0 25px;padding:18px 0 22px}.cc .result-actions button{background:none;border:0;color:#d1e7ff;min-height:44px;padding:8px 0;font-size:14px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.cc .mobile-dock{display:none}
@media(max-width:560px){
 .cc header .header-inner{min-height:76px;padding-top:10px;padding-bottom:9px;gap:5px}.cc .brand{font-size:21px}.cc .brandmark{width:29px;height:31px;border-radius:7px;font-size:23px}.cc nav{font-size:13px}.cc .crumb{margin:16px 0 18px;font-size:12px}.cc .page-heading{margin-bottom:20px}.cc .page-heading h1{font-size:30px;letter-spacing:-.9px;margin-bottom:11px}.cc .page-heading p{font-size:15px;line-height:1.55}.cc .page-heading .eyebrow{font-size:11px;margin-bottom:8px}.cc .meta{font-size:11px;margin-top:10px}.cc .panel-heading{margin-bottom:17px}.cc .panel-heading h2{font-size:20px}.cc .panel{padding:21px 18px}.cc input,.cc select{min-height:50px;font-size:16px}.cc label{font-size:14px}.cc .help{font-size:13px;line-height:1.5}.cc .fields{gap:21px}.cc .form-group legend{font-size:17px}.cc .mobile-dock{display:block;position:fixed;bottom:0;left:0;right:0;z-index:10;background:#fff;border-top:1px solid var(--line);box-shadow:0 -5px 20px #142c3910;padding:10px 18px calc(10px + env(safe-area-inset-bottom))}.cc .mobile-dock .btn{width:100%;min-height:48px}.cc:has([data-calculator]){padding-bottom:86px}.cc .result{scroll-margin-top:18px}.cc .result-actions{gap:18px}.cc .small-ad{min-height:100px;margin-top:22px}.cc .hero{padding:22px 0 8px}.cc .hero h1{font-size:33px;margin-bottom:14px}.cc .hero .intro{font-size:15px}.cc .trust{font-size:12px;margin-top:14px}.cc .section-head{margin-top:22px}.cc .section-head h2{font-size:21px}.cc .section-head small{font-size:11px}.cc .cards{grid-template-columns:1fr 1fr;gap:12px}.cc .card{padding:17px 14px;min-height:179px}.cc .card-top{margin-bottom:13px;gap:6px}.cc .icon{width:32px;height:32px;border-radius:7px}.cc .icon svg{width:20px;height:20px}.cc .tag{font-size:9px;letter-spacing:.035em}.cc .card h3{font-size:18px;line-height:1.22;margin-bottom:15px}.cc .card p{display:none}.cc .card .card-action{font-size:14px}.cc .footer-links a{padding:6px 0;min-height:44px}.cc main{padding-bottom:40px}
}
@media(max-width:350px){.cc .cards{grid-template-columns:1fr}.cc .card{min-height:140px}.cc .tag{font-size:11px}.cc .card h3{font-size:21px}.cc .page-heading h1{font-size:28px}}
@media print{.cc .mobile-dock,.cc .result-actions{display:none!important}.cc:has([data-calculator]){padding-bottom:0}.cc .result-col .notice{display:block}.cc fieldset{break-inside:avoid}}
@media print{.cc .panel,.cc .content,.cc .crumb{display:none!important}.cc .page-heading{margin-bottom:20px}}
