*{box-sizing:border-box;margin:0;padding:0}:root{--navy-deep:#0b1d36;--navy:#1b3a6b;--gold:#d4a017;--gold-light:#e6bb3d;--cream:#f3efe6;--green:#4b7a5a;--radius:16px;--shadow:0 10px 30px #0b1d3640}html{font-size:18px}body{background:var(--navy-deep);color:var(--cream);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6}h1,h2,h3{font-family:Playfair Display,Georgia,serif;line-height:1.25}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;font-family:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1}.site-header{background:var(--navy-deep);z-index:10;border-bottom:1px solid #f3efe61f;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;padding:1rem 1.25rem;display:flex}.brand{color:var(--gold);align-items:center;gap:.5rem;font-family:Playfair Display,serif;font-size:1.4rem;font-weight:700;display:flex}.brand-mark{font-size:1.5rem}.header-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;display:flex}.header-nav-link{color:#f3efe6d9;padding:.4rem .2rem;font-size:.95rem;font-weight:600}.header-nav-link:hover{color:var(--gold)}.btn{text-align:center;border-radius:999px;justify-content:center;align-items:center;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-flex}.btn-primary{background:var(--gold);color:var(--navy-deep)}.btn-primary:hover{background:var(--gold-light);transform:translateY(-1px)}.btn-secondary{color:var(--cream);border:2px solid var(--gold);background:0 0;padding:.75rem 1.5rem}.btn-small{padding:.55rem 1.1rem;font-size:.95rem}.btn-large{padding:1rem 2rem;font-size:1.15rem}.btn-full{width:100%}.btn:disabled{opacity:.7;cursor:default}.home-page{max-width:1100px;margin:0 auto}.hero{text-align:center;background:radial-gradient(circle at top, var(--navy) 0%, var(--navy-deep) 70%);padding:3.5rem 1.5rem 3rem}.hero-eyebrow{color:var(--gold);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.75rem;font-size:.9rem;font-weight:600}.hero-title{color:var(--cream);margin-bottom:1rem;font-size:clamp(2rem,6vw,3rem)}.hero-subtitle{color:#f3efe6d9;max-width:560px;margin:0 auto 1.75rem;font-size:1.1rem}.hero-actions{margin-bottom:.9rem}.hero-footnote{color:#f3efe699;font-size:.9rem}.section{padding:3rem 1.5rem}.section-alt{border-radius:var(--radius);background:#1b3a6b59;margin:0 1.25rem}.section-title{text-align:center;color:var(--gold);margin-bottom:2rem;font-size:1.8rem}.steps-grid,.reassurance-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (width>=640px){.steps-grid{grid-template-columns:1fr 1fr}.reassurance-grid{grid-template-columns:repeat(3,1fr)}}.step-card,.reassurance-card{background:var(--navy);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #d4a01726;padding:1.75rem}.step-number{background:var(--gold);width:2.5rem;height:2.5rem;color:var(--navy-deep);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1rem;font-size:1.1rem;font-weight:700;display:flex}.step-title,.reassurance-title{color:var(--cream);margin-bottom:.5rem;font-size:1.15rem}.step-body,.reassurance-body{color:#f3efe6cc;font-size:1rem}.reassurance-icon{margin-bottom:.75rem;font-size:1.8rem}.cta-banner{text-align:center;background:linear-gradient(135deg, var(--green) 0%, var(--navy) 100%);border-radius:var(--radius);margin:2rem 1.25rem 3rem;padding:3.5rem 1.5rem}.cta-title{color:var(--cream);margin-bottom:.75rem;font-size:1.8rem}.cta-body{color:#f3efe6e6;max-width:480px;margin:0 auto 1.5rem}.signin-page{justify-content:center;align-items:center;min-height:70vh;padding:2rem 1.25rem;display:flex}.signin-card{background:var(--navy);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #d4a01733;width:100%;max-width:440px;padding:2.5rem 2rem}.signin-title{color:var(--gold);margin-bottom:.6rem;font-size:1.7rem}.signin-subtitle{color:#f3efe6cc;margin-bottom:1.75rem;font-size:1rem}.signin-form{flex-direction:column;gap:.9rem;display:flex}.signin-label{font-size:1rem;font-weight:600}.signin-input{background:var(--navy-deep);color:var(--cream);border:2px solid #f3efe640;border-radius:10px;padding:.9rem 1rem;font-size:1.05rem}.signin-input:focus{border-color:var(--gold);outline:none}.status-box{border-radius:12px;margin-bottom:.5rem;padding:1.25rem}.status-success{border:1px solid var(--green);background:#4b7a5a40}.status-warning{border:1px solid var(--gold);background:#d4a01726}.status-heading{margin-bottom:.4rem;font-size:1.1rem;font-weight:700}.status-error-text{color:#e78a8a;font-size:.95rem}.back-link{color:#f3efe6b3;margin-top:1.25rem;font-size:.95rem;display:inline-block}.assessment-page{max-width:640px;margin:0 auto;padding:2rem 1.25rem 3rem}.assessment-header{margin-bottom:1.75rem}.assessment-eyebrow{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem;font-size:.85rem;font-weight:700}.assessment-title{color:var(--cream);margin-bottom:.5rem;font-size:clamp(1.6rem,5vw,2.1rem)}.assessment-helper{color:#f3efe6cc;margin-bottom:1.25rem;font-size:1.05rem}.inline-link{color:var(--gold);font-weight:600;text-decoration:underline}.progress-track{background:#f3efe626;border-radius:999px;height:10px;overflow:hidden}.progress-fill{background:var(--gold);border-radius:999px;height:100%;transition:width .25s}.appliance-list{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.appliance-card{background:var(--navy);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #d4a01726;align-items:center;gap:1rem;padding:1.1rem 1.25rem;display:flex}.appliance-icon{flex-shrink:0;font-size:1.8rem}.appliance-info{flex:1;min-width:0}.appliance-name{color:var(--cream);font-size:1.05rem;font-weight:600}.appliance-watts{color:#f3efe6a6;margin-top:.15rem;font-size:.9rem}.qty-stepper{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.qty-btn{background:var(--navy-deep);border:2px solid var(--gold);width:2.5rem;height:2.5rem;color:var(--gold);border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;font-weight:700;display:flex}.qty-value{text-align:center;min-width:1.5rem;color:var(--cream);font-size:1.15rem;font-weight:700}.assessment-actions{gap:.9rem;display:flex}.assessment-actions .btn-secondary{flex-shrink:0}.review-section{margin-bottom:1.5rem}.review-list{background:var(--navy);border-radius:var(--radius);border:1px solid #d4a01726;margin-bottom:1.5rem;padding:.5rem 1.25rem}.review-row{color:#f3efe6e6;border-bottom:1px solid #f3efe614;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;font-size:1rem;display:flex}.review-row:last-child{border-bottom:none}.link-remove{color:#e78a8a;background:0 0;margin-left:.75rem;font-size:.85rem;text-decoration:underline}.custom-add{border-radius:var(--radius);background:#1b3a6b59;margin-bottom:1.5rem;padding:1.25rem}.custom-add-title{margin-bottom:.75rem;font-weight:600}.custom-add-row{flex-wrap:wrap;gap:.6rem;display:flex}.custom-add-row .signin-input{flex:1;min-width:140px}.custom-watts-input{max-width:110px}.total-card{background:linear-gradient(135deg, var(--green) 0%, var(--navy) 100%);border-radius:var(--radius);text-align:center;padding:1.5rem}.total-label{color:#f3efe6d9;font-size:.95rem}.total-value{color:var(--gold-light);margin:.25rem 0;font-family:Playfair Display,serif;font-size:2.2rem}.total-footnote{color:#f3efe6b3;font-size:.85rem}.recommendation-page{max-width:1100px;margin:0 auto;padding:2rem 1.25rem 3rem}.recommendation-header{text-align:center;margin-bottom:1.75rem}.recommendation-title{color:var(--gold);margin-bottom:.6rem;font-size:clamp(1.7rem,5vw,2.3rem)}.generator-grid{grid-template-columns:1fr;gap:1.25rem;margin-bottom:2.5rem;display:grid}@media (width>=760px){.generator-grid{grid-template-columns:repeat(3,1fr)}}.generator-card{background:var(--navy);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #d4a01733;flex-direction:column;gap:.6rem;padding:1.5rem;display:flex}.generator-badge{background:var(--gold);color:var(--navy-deep);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-self:flex-start;margin-bottom:.3rem;padding:.3rem .7rem;font-size:.75rem;font-weight:700}.generator-name{color:var(--cream);font-size:1.25rem}.generator-capacity{color:#f3efe6b3;font-size:.95rem}.generator-price-row{flex-direction:column;gap:.1rem;margin:.25rem 0;display:flex}.generator-price{color:var(--gold-light);font-size:1.6rem;font-weight:700}.generator-monthly{color:#f3efe6bf;font-size:.9rem}.generator-description{color:#f3efe6d9;flex:1;font-size:.95rem}.generator-features{color:#f3efe6cc;flex-direction:column;gap:.35rem;margin-bottom:.5rem;font-size:.9rem;list-style:none;display:flex}.generator-features li:before{content:"✓ ";color:var(--green);font-weight:700}.catalog-section{margin-top:1rem}.catalog-grid{margin-top:1.5rem}.search-bar{background:var(--navy);border:2px solid #f3efe633;border-radius:999px;align-items:center;gap:.6rem;padding:.7rem 1.1rem;display:flex}.search-bar:focus-within{border-color:var(--gold)}.search-icon{font-size:1.1rem}.search-input{color:var(--cream);background:0 0;border:none;flex:1;font-family:inherit;font-size:1rem}.search-input:focus{outline:none}.search-input::placeholder{color:#f3efe680}.purchase-page,.booking-page{max-width:640px;margin:0 auto;padding:2rem 1.25rem 3rem}.purchase-header{margin-bottom:1.5rem}.not-found-card{background:var(--navy);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow);padding:2rem 1.5rem}.not-found-card .assessment-helper{margin-bottom:1.25rem}.purchase-summary-card{background:var(--navy);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #d4a01733;margin-bottom:1.5rem;padding:1.5rem}.purchase-summary-card .generator-price{margin-top:.4rem}.plan-choice-card{background:var(--navy);border-radius:var(--radius);flex-direction:column;gap:.9rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.plan-option{background:var(--navy-deep);border:2px solid #0000;border-radius:12px;align-items:center;gap:.75rem;padding:.9rem 1rem;font-size:1.05rem;display:flex}.plan-option input{width:1.2rem;height:1.2rem;accent-color:var(--gold);flex-shrink:0}.plan-months-row{background:#1b3a6b59;border-radius:12px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.plan-estimate{color:#f3efe6d9;font-size:.95rem}.purchase-next{text-align:center;margin-top:2rem}.purchase-next .assessment-helper{margin-bottom:.9rem}.calendly-card{border-radius:var(--radius);background:#d4a0171a;border:1px solid #d4a0174d;margin-bottom:1.5rem;padding:1.5rem}.booking-form{background:var(--navy);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:.9rem;padding:1.5rem;display:flex}.booking-textarea{resize:vertical;font-family:inherit}.coming-soon{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:60vh;padding:2rem;display:flex}.coming-soon-title{color:var(--gold);font-size:1.8rem}.coming-soon-body{color:#f3efe6cc;max-width:400px}.site-footer{text-align:center;background:var(--navy-deep);color:#f3efe699;border-top:1px solid #f3efe61a;padding:2rem 1.25rem;font-size:.9rem}.footer-fine{margin-top:.4rem;font-size:.85rem}
