.page-header h1,.page-header p,.page-header-inner{z-index:1;position:relative}*,.input-field,::after,::before{box-sizing:border-box}.blog-content h2 .serif-accent,.page-header h1 .accent{font-family:var(--font-serif);font-style:italic;text-transform:none;-webkit-text-fill-color:transparent}@view-transition{navigation:auto}html{scroll-behavior:smooth}body{margin:0;padding:0;background:var(--clr-slate-100);color:var(--clr-slate-800);font-family:var(--font-body)}.page-header{background:var(--clr-slate-900);background-image:radial-gradient(ellipse 65% 70% at 20% 50%,rgba(13,207,180,.18) 0,transparent 58%),radial-gradient(ellipse 40% 55% at 80% 30%,rgba(34,211,238,.12) 0,transparent 52%);color:var(--clr-white);padding:5rem 1.5rem 6.5rem;text-align:center;position:relative;overflow:hidden}.blog-content a:hover,.page-header-badge{color:var(--clr-teal)}.page-header::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(13,207,180,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(13,207,180,.05) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}.page-header-inner{max-width:720px;margin:0 auto}.page-header-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.3rem 1rem;border-radius:var(--radius-pill);background:rgba(13,207,180,.12);border:1px solid rgba(13,207,180,.3);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.2rem}.budget-card,.input-field{background:var(--clr-white)}.card-title,.page-header h1{font-family:var(--font-display);font-weight:800;text-transform:uppercase}.float-animation,.hero-emoji{font-size:4rem;display:block;margin-bottom:1rem;position:relative;z-index:1;animation:3s ease-in-out infinite floatEmoji}@keyframes floatEmoji{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-18px) rotate(4deg)}}.page-header h1{font-size:clamp(1.8rem, 4.5vw, 3.1rem);letter-spacing:.01em;line-height:1.1;margin-bottom:.9rem}.page-header h1 .accent{background:linear-gradient(135deg,var(--clr-teal) 0,var(--clr-cyan) 100%);-webkit-background-clip:text;background-clip:text}.page-header p{font-size:1rem;color:rgba(255,255,255,.65);line-height:1.7;max-width:680px;margin:0 auto;font-weight:300}.budget-container{max-width:1100px;margin:-3.5rem auto 4rem;padding:0 1.5rem;position:relative;z-index:5}.budget-card{border-radius:var(--radius-lg);padding:2.25rem 2rem;box-shadow:var(--shadow-lift);border:1px solid var(--clr-slate-200);margin-bottom:1.5rem;animation:.55s both slideUp}.blog-content,.faq-item{box-shadow:var(--shadow-card)}@keyframes slideUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.card-title{font-size:1.45rem;letter-spacing:.02em;color:var(--clr-teal-deep);margin:0 0 1.5rem;display:flex;align-items:center;gap:.55rem}.input-label,.section-title{font-family:var(--font-display);font-weight:700}.section-title{font-size:1rem;letter-spacing:.05em;text-transform:uppercase;color:var(--clr-slate-700);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.6rem;border-bottom:2px solid rgba(13,207,180,.35)}.input-label,.summary-label{letter-spacing:.07em;text-transform:uppercase}.input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:1.75rem}.input-group{display:flex;flex-direction:column}.input-label{font-size:.72rem;color:var(--clr-slate-500);margin-bottom:.4rem;display:flex;align-items:center;gap:.4rem}.input-field{padding:.7rem .9rem;border:2px solid var(--clr-slate-200);border-radius:var(--radius-sm);font-size:1rem;font-family:var(--font-body);font-weight:600;color:var(--clr-slate-800);transition:all var(--transition)}.input-field:focus{outline:0;border-color:var(--clr-teal);box-shadow:0 0 0 3px var(--clr-teal-glow)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-box{background:rgba(13,207,180,.07);border:1px solid rgba(13,207,180,.2);border-left:4px solid var(--clr-teal);border-radius:var(--radius-md);padding:1.1rem 1.25rem;transition:transform var(--transition),box-shadow var(--transition)}.summary-box:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(13,207,180,.18)}.summary-box.negative{background:rgba(239,68,68,.07);border-color:rgba(239,68,68,.2);border-left-color:#ef4444}.summary-box.negative .summary-value{color:#ef4444}.summary-box.warning{background:rgba(245,158,11,.07);border-color:rgba(245,158,11,.2);border-left-color:#f59e0b}.summary-box.warning .summary-value{color:#d97706}.summary-label{font-family:var(--font-display);font-size:.68rem;font-weight:700;color:var(--clr-slate-500);margin-bottom:.35rem}.health-score-value,.summary-value{font-family:'Courier New',monospace;font-weight:900}.summary-value{font-size:1.75rem;color:var(--clr-teal-deep);line-height:1.1}.summary-subtitle{font-size:.75rem;color:var(--clr-slate-400);margin-top:.2rem}.health-score{text-align:center;padding:2.5rem 2rem;background:var(--clr-teal-deep);border-radius:var(--radius-lg);color:var(--clr-white);margin-bottom:1.5rem}.health-score-value{font-size:4.5rem;margin:.75rem 0;line-height:1}.category-name,.health-score-label,.recommendations h3{font-family:var(--font-display);text-transform:uppercase}.health-score-label{font-size:1.1rem;font-weight:700;letter-spacing:.1em;opacity:.9}.category-item{background:rgba(13,207,180,.04);border:1px solid var(--clr-slate-200);border-radius:var(--radius-sm);padding:1rem 1.1rem;margin-bottom:.85rem;transition:border-color var(--transition),box-shadow var(--transition)}.category-item:hover{border-color:var(--clr-teal);box-shadow:0 4px 12px rgba(13,207,180,.12)}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.category-name{font-size:.88rem;font-weight:700;letter-spacing:.03em;color:var(--clr-slate-700)}.category-amount{font-family:'Courier New',monospace;font-weight:700;font-size:1rem;color:var(--clr-teal-deep)}.category-percentage{font-size:.75rem;color:var(--clr-slate-400);margin-bottom:.5rem}.progress-bar-container{background:var(--clr-slate-200);border-radius:var(--radius-pill);height:10px;overflow:hidden;margin-top:.4rem}.progress-bar{height:100%;background:linear-gradient(90deg,var(--clr-teal) 0,var(--clr-teal-deep) 100%);border-radius:var(--radius-pill);transition:width .5s}.progress-bar.warning{background:linear-gradient(90deg,#f59e0b 0,#d97706 100%)}.progress-bar.danger{background:linear-gradient(90deg,#ef4444 0,#dc2626 100%)}.recommendations{background:#fffbeb;border:1px solid rgba(245,158,11,.25);border-left:4px solid #f59e0b;border-radius:var(--radius-md);padding:1.25rem 1.4rem;margin-top:1.25rem}.recommendations h3{font-size:1rem;font-weight:700;letter-spacing:.04em;color:#92400e;margin:0 0 .9rem}.recommendations ul{list-style:none;padding:0;margin:0}.recommendations li{padding:.55rem 0;color:#78350f;font-size:.9rem;font-weight:500;line-height:1.65;display:flex;align-items:flex-start;gap:.5rem}.blog-content h2,.blog-content h3,.blog-content h4,.download-btn{font-family:var(--font-display);font-weight:700;text-transform:uppercase}.recommendations li+li{border-top:1px solid rgba(245,158,11,.15)}.download-buttons{display:flex;gap:.75rem;margin-top:1.25rem}.download-btn{flex:1;padding:.7rem 1rem;border-radius:var(--radius-sm);border:1.5px solid rgba(13,207,180,.45);background:0 0;color:var(--clr-teal-deep);font-size:.8rem;letter-spacing:.05em;display:flex;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all var(--transition)}.download-btn:hover{background:var(--clr-teal-deep);color:var(--clr-white);transform:translateY(-1px);box-shadow:var(--shadow-teal)}.blog-section{max-width:960px;margin:2.5rem auto 0;padding:0 1.5rem}.blog-content{background:var(--clr-white);border-radius:var(--radius-lg);padding:3rem 3.5rem;border:1px solid var(--clr-slate-200);line-height:1.9}.blog-content h2{font-size:clamp(1.4rem, 3.5vw, 2.1rem);letter-spacing:.01em;color:var(--clr-slate-800);margin-top:0;margin-bottom:.5rem}.blog-content h2 .serif-accent{background:linear-gradient(135deg,var(--clr-teal-deep),var(--clr-cyan));-webkit-background-clip:text;background-clip:text}.meta-line{font-size:.82rem;color:var(--clr-slate-400);margin-bottom:1.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--clr-slate-200)}.example-box,.highlight-box{border-left:3px solid var(--clr-teal);border-radius:var(--radius-sm);font-size:.95rem}.blog-content a,.faq-item p a,.meta-line a{color:var(--clr-teal-deep);text-decoration:underline;text-underline-offset:2px}.blog-content h3{font-size:1.2rem;letter-spacing:.03em;color:var(--clr-slate-800);margin-top:2rem;margin-bottom:.75rem}.blog-content h4{font-size:1rem;letter-spacing:.04em;color:var(--clr-teal-deep);margin-top:1.5rem;margin-bottom:.6rem}.blog-content p,.example-box,.highlight-box{color:var(--clr-slate-600)}.blog-content p{font-size:.975rem;margin-bottom:1rem;line-height:1.85}.blog-content ol,.blog-content ul{color:var(--clr-slate-600);margin-left:1.5rem;margin-bottom:1.25rem}.blog-content li{margin-bottom:.5rem;font-size:.975rem;line-height:1.75}.blog-content strong{color:var(--clr-slate-800);font-weight:600}.example-box strong,.faq-item summary::after,.faq-item[open] summary,.highlight-box strong{color:var(--clr-teal-deep)}.highlight-box{background:rgba(13,207,180,.07);padding:1.1rem 1.25rem;margin:1.5rem 0;line-height:1.85}.example-box{background:rgba(13,207,180,.05);padding:1rem 1.25rem;margin:1.25rem 0;line-height:1.8}.faq-heading,.faq-item summary{font-family:var(--font-display);text-transform:uppercase;color:var(--clr-slate-800);font-weight:700}.faq-section{margin:2rem auto 4rem;padding:0 1.5rem}.faq-heading{max-width:900px;margin:0 auto 1.25rem;font-size:clamp(1.3rem, 3vw, 1.9rem);letter-spacing:.01em;text-align:center}.faq-items{max-width:900px;margin:0 auto}.faq-item{background:var(--clr-white);border:1px solid var(--clr-slate-200);border-left:3px solid var(--clr-teal);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-bottom:.75rem}.faq-item summary{cursor:pointer;font-size:.88rem;letter-spacing:.03em;outline:0;list-style:none;display:flex;justify-content:space-between;align-items:center}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';font-size:1.2rem;font-weight:700;flex-shrink:0;margin-left:1rem}.faq-item[open] summary::after{content:'–'}.faq-item p{margin:.75rem 0 0;font-size:.9rem;color:var(--clr-slate-500);line-height:1.75}@media (max-width:768px){.page-header{padding:3.5rem 1.25rem 5rem}.page-header h1{font-size:2rem}.budget-card{padding:1.5rem 1.15rem}.summary-grid{grid-template-columns:1fr 1fr}.download-buttons{flex-direction:column}.blog-section,.faq-section{padding:0 1rem}.blog-content{padding:1.75rem 1.25rem}.blog-content h2{font-size:1.4rem}}@media (max-width:480px){.summary-grid{grid-template-columns:1fr}}@keyframes slideInDown{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}