.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.login-card{width:100%;max-width:380px;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.login-card h1{font-size:1.4rem;margin:0 0 var(--space-2)}.admin-shell{display:flex;min-height:100vh}.admin-loading{padding:var(--space-8)}.admin-sidebar{width:240px;flex:0 0 240px;background:var(--surface);border-right:1px solid var(--outline);padding:var(--space-5);display:flex;flex-direction:column}.admin-brand{font-weight:700;font-size:1.2rem;color:var(--primary)}.admin-role{font-size:.8rem;color:var(--text-secondary);margin-bottom:var(--space-5)}.admin-nav{display:flex;flex-direction:column;gap:var(--space-1)}.admin-nav-link{padding:var(--space-3);border-radius:var(--radius-sm);color:var(--on-surface);font-weight:500}.admin-nav-link:hover{background:var(--background)}.admin-nav-link.active{background:var(--primary-light);color:var(--primary);font-weight:600}.admin-sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2);font-size:.85rem}.admin-main{flex:1;padding:var(--space-6);overflow:auto}.page{max-width:1000px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-5)}.page-head h1{font-size:1.6rem;margin:0}.back-link{font-size:.85rem;color:var(--text-secondary)}.inline-form{display:flex;gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-5);align-items:center}.inline-form .input{flex:1}.sortable-row{display:flex;align-items:stretch;gap:var(--space-2);margin-bottom:var(--space-2)}.sortable-row.dragging{opacity:.6}.drag-handle{border:none;background:transparent;color:var(--text-secondary);cursor:grab;font-size:1.1rem;padding:0 var(--space-2)}.sortable-content{flex:1}.it-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius-sm)}.it-main{display:flex;align-items:center;gap:var(--space-3)}.it-name{font-weight:600}.it-slug{font-size:.85rem}.it-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.it-actions .btn{padding:var(--space-2) var(--space-3);font-size:.85rem}.badge{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:999px}.badge-on{background:#e6f4ea;color:var(--success)}.badge-off{background:#f1f3f4;color:var(--text-secondary)}.builder{display:grid;grid-template-columns:320px 1fr;gap:var(--space-4);align-items:start}.builder-list,.builder-editor{padding:var(--space-4)}.builder-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);font-weight:600}.builder-empty{padding:var(--space-4)}.q-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:var(--space-3);border:1px solid var(--outline);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font-family:inherit}.q-item:hover{border-color:var(--primary)}.q-item.active{border-color:var(--primary);background:var(--primary-light)}.q-prompt{font-weight:500;font-size:.92rem}.q-type{font-size:.75rem;color:var(--text-secondary)}.editor h2{margin-top:0;font-size:1.2rem}.option-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-2)}.option-row .input{flex:1}.field-row{display:flex;gap:var(--space-5);align-items:flex-start}.checkbox{display:flex;align-items:center;gap:var(--space-2);font-weight:500;font-size:.9rem}.page-group-field{max-width:160px}.editor-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.token-list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.token{background:var(--background);border:1px solid var(--outline);border-radius:4px;padding:2px 6px;font-size:.8rem}.table-list{display:flex;flex-direction:column;gap:var(--space-2)}.table-row-card{padding:0;overflow:hidden}.table-row{width:100%;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:.9rem}.mono{font-family:ui-monospace,monospace}.answer-list{border-top:1px solid var(--outline);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.answer-row{display:flex;gap:var(--space-3)}.lead-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);font-size:.9rem}.lead-name{font-weight:600;min-width:160px}.wizard-bg{min-height:100vh;background:radial-gradient(100% 60% at 90% -10%,var(--orange-soft) 0%,transparent 50%),radial-gradient(90% 60% at -10% 110%,var(--navy-soft) 0%,transparent 55%),var(--surface)}.wizard{min-height:100vh;display:flex;flex-direction:column;max-width:760px;margin:0 auto;padding:var(--space-5) var(--space-5) var(--space-8)}.wizard-state{min-height:60vh;display:flex;flex-direction:column;gap:var(--space-4);align-items:center;justify-content:center}.wizard-top{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-3)}.wizard-step{font-family:var(--font-display);color:var(--text-secondary);font-variant-numeric:tabular-nums;font-weight:600;font-size:.9rem}.progress{height:8px;background:var(--navy-soft);border-radius:var(--radius-pill);margin:var(--space-5) 0 var(--space-10);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--orange) 0%,var(--gold) 100%);border-radius:var(--radius-pill);transition:width .45s cubic-bezier(.2,.7,.2,1)}.wizard-body{flex:1;display:flex;flex-direction:column;justify-content:center}.wizard-question{margin-bottom:var(--space-6)}.wizard-prompt{font-family:var(--font-display);font-size:clamp(1.7rem,3.6vw,2.3rem);font-weight:700;letter-spacing:-.025em;line-height:1.1;margin-bottom:var(--space-3);color:var(--on-surface)}.req{color:var(--orange);margin-left:4px}.wizard-input{font-size:1.1rem;margin-top:var(--space-3)}.wizard-nav{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-8)}.choice-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-5)}.choice-list.yesno{flex-direction:row}.choice-list.yesno .choice{flex:1;justify-content:center}.choice{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);font-size:1.05rem;font-weight:500;text-align:left;background:var(--surface);border:1.5px solid var(--outline-strong);border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;color:var(--on-surface);transition:border-color .14s,background .14s,transform .1s}.choice:hover{border-color:var(--navy);transform:translateY(-1px)}.choice.selected{border-color:var(--navy);background:var(--navy-soft)}.choice-dot,.choice-box{width:19px;height:19px;border:2px solid var(--outline-strong);flex:0 0 auto;transition:border-color .14s,background .14s}.choice-dot{border-radius:50%}.choice-box{border-radius:5px}.choice.selected .choice-dot,.choice.selected .choice-box{border-color:var(--navy);background:var(--navy);box-shadow:inset 0 0 0 3.5px var(--surface)}.summary-page{max-width:720px;margin:0 auto;padding:var(--space-8) var(--space-5) var(--space-10);display:flex;flex-direction:column;gap:var(--space-5)}.summary-top{display:flex;justify-content:center;margin-bottom:var(--space-2)}.summary-page h1{font-size:clamp(2rem,4vw,2.6rem);text-align:center;letter-spacing:-.03em}.summary-lead{text-align:center;font-family:var(--font-serif);font-style:italic;font-size:1.15rem;color:var(--text-secondary);margin:calc(-1 * var(--space-3)) 0 var(--space-2)}.summary-card{padding:var(--space-6)}.summary-body{white-space:pre-wrap;font-family:var(--font-body);font-size:1.04rem;line-height:1.65;margin:0;color:var(--on-surface)}.card.estimate-card{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);background:var(--navy);border:none;color:#fff}.estimate-label{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700}.estimate-range{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3rem);font-weight:800;letter-spacing:-.02em;color:#fff}.card.estimate-card .help-text{color:#ffffffb8}.cta-card{padding:var(--space-6)}.cta-card h2{font-size:1.5rem}.lead-form{margin-top:var(--space-4)}.landing{min-height:100vh;background:radial-gradient(120% 80% at 88% -10%,var(--orange-soft) 0%,transparent 45%),radial-gradient(90% 70% at -10% 110%,var(--navy-soft) 0%,transparent 55%),var(--surface)}.logo-wordmark{font-family:var(--font-display);font-weight:700;font-size:1.32rem;letter-spacing:-.02em;color:var(--navy)}.logo-wordmark-accent{color:var(--orange)}.topbar{max-width:1200px;margin:0 auto;padding:var(--space-5) var(--space-6);display:flex;align-items:center;justify-content:space-between}.topbar-nav{display:flex;align-items:center;gap:var(--space-5)}.topbar-tag{font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--text-secondary)}.topbar-cta{padding:var(--space-2) var(--space-4);font-size:.88rem}.hero{max-width:1200px;margin:0 auto;padding:var(--space-6) var(--space-6) var(--space-10);display:grid;grid-template-columns:1fr 1.08fr;gap:var(--space-8);align-items:center;min-height:calc(100vh - 96px)}.eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}.hero-copy{text-align:left}.hero-copy>*{opacity:0;animation:rise .7s cubic-bezier(.2,.7,.2,1) forwards}.hero-copy .eyebrow{animation-delay:.05s}.hero-title{margin:var(--space-4) 0 var(--space-5);font-size:clamp(2.5rem,5.2vw,3.75rem);font-weight:800;letter-spacing:-.035em;line-height:1.04;color:var(--on-surface);animation-delay:.13s}.hero-em{position:relative;color:var(--navy);white-space:nowrap}.hero-em:after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.16em;background:var(--gold);border-radius:2px;z-index:-1;transform:scaleX(0);transform-origin:left;animation:underline .6s ease .7s forwards}.hero-sub{max-width:30rem;margin:0 0 var(--space-6);font-family:var(--font-serif);font-style:italic;font-size:1.2rem;line-height:1.5;color:var(--text-secondary);animation-delay:.22s}.hero-actions{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-5);margin-bottom:var(--space-6);animation-delay:.3s}.hero-note{font-size:.9rem;color:var(--text-secondary)}.reassurance{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:var(--space-5);margin:0;padding:0;list-style:none;animation-delay:.38s}.reassurance li{display:flex;align-items:center;gap:var(--space-2);font-size:.92rem;font-weight:500;color:var(--on-surface)}.reassurance-dot{width:7px;height:7px;border-radius:50%;background:var(--orange)}.hero-visual{position:relative;width:100%;opacity:0;animation:rise .8s cubic-bezier(.2,.7,.2,1) .18s forwards}.hero-glow{position:absolute;top:-8%;right:-8%;bottom:-8%;left:4%;background:radial-gradient(50% 55% at 78% 24%,var(--orange) 0%,transparent 68%),radial-gradient(55% 55% at 26% 84%,var(--navy) 0%,transparent 70%);opacity:.14;filter:blur(44px);z-index:0}.hero-frame{position:relative;z-index:1;border-radius:26px;overflow:hidden;box-shadow:0 30px 70px #101d492e}.hero-frame img{display:block;width:100%;height:clamp(420px,62vh,560px);object-fit:cover;object-position:28% 26%}.hero-caption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:5px;padding:var(--space-10) var(--space-8) var(--space-6);background:linear-gradient(to top,#0d1840d1,#0d184000)}.hero-caption-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.hero-caption-text{font-family:var(--font-display);font-weight:600;font-size:1.3rem;letter-spacing:-.01em;color:#fff;line-height:1.2}.section-head{text-align:center;max-width:38rem;margin:0 auto var(--space-8)}.section-head h2{font-size:clamp(1.8rem,3.4vw,2.5rem);margin:var(--space-3) 0 var(--space-3)}.section-head p{font-size:1.05rem;line-height:1.6;margin:0}.eyebrow-light{color:var(--gold)}.how{max-width:1080px;margin:0 auto;padding:var(--space-12) var(--space-6) var(--space-10)}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);counter-reset:step}.step{position:relative;padding:var(--space-6) var(--space-5);background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);box-shadow:var(--shadow-1)}.step-num{font-family:var(--font-display);font-weight:800;font-size:1.05rem;letter-spacing:.04em;color:#fff;background:var(--navy);width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--space-4)}.step h3{font-size:1.2rem;margin:0 0 var(--space-2)}.step p{margin:0;line-height:1.55}.values{background:var(--navy);background-image:radial-gradient(60% 80% at 88% 0%,rgba(241,88,31,.22) 0%,transparent 60%),radial-gradient(50% 70% at 0% 100%,rgba(245,196,76,.16) 0%,transparent 55%)}.values-inner{max-width:1080px;margin:0 auto;padding:var(--space-12) var(--space-6)}.values .section-head h2,.values .section-head p{color:#fff}.values .section-head p{color:#ffffffbf}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}.value-card{padding:var(--space-6) var(--space-5);background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius)}.value-mark{display:block;width:34px;height:4px;border-radius:999px;background:var(--gold);margin-bottom:var(--space-4)}.value-card h3{color:#fff;font-size:1.15rem;margin:0 0 var(--space-2)}.value-card p{margin:0;color:#ffffffb8;line-height:1.55}.begin{max-width:1080px;margin:0 auto;padding:var(--space-12) var(--space-6) var(--space-12)}.begin-state{text-align:center}.type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,340px));justify-content:center;gap:var(--space-4)}.type-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);text-align:left;padding:var(--space-6) var(--space-5) var(--space-5);background:linear-gradient(180deg,var(--surface) 0%,var(--surface) 100%) padding-box,var(--surface);border:1px solid var(--outline);border-radius:var(--radius);box-shadow:var(--shadow-1);cursor:pointer;font-family:inherit;opacity:0;animation:rise .6s cubic-bezier(.2,.7,.2,1) forwards;transition:border-color .2s,box-shadow .2s,transform .18s,background .2s}.type-card:hover{border-color:transparent;box-shadow:0 18px 40px #101d4929;transform:translateY(-5px);background:linear-gradient(180deg,#fff 0%,var(--surface-tint) 100%)}.type-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:var(--space-3);border-radius:15px;color:#fff;background:linear-gradient(140deg,var(--navy) 0%,var(--navy-deep) 100%);box-shadow:0 6px 16px #101d4947;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.type-card:hover .type-icon{background:linear-gradient(140deg,var(--orange) 0%,#d8430f 100%);box-shadow:0 8px 20px #f1581f66;transform:scale(1.06) rotate(-3deg)}.type-name{font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--on-surface);letter-spacing:-.02em}.type-desc{color:var(--text-secondary);font-size:.96rem;line-height:1.5}.type-cta{display:inline-flex;align-items:center;gap:6px;margin-top:var(--space-4);color:var(--navy);font-weight:700;font-size:.95rem}.type-arrow{transition:transform .2s ease}.type-card:hover .type-arrow{transform:translate(5px)}.type-card:hover .type-cta{color:var(--orange)}.landing-foot{max-width:1200px;margin:0 auto;padding:var(--space-6);display:flex;align-items:center;gap:var(--space-4);border-top:1px solid var(--outline);font-size:.9rem}.landing-foot .logo-wordmark{font-size:1.05rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes underline{to{transform:scaleX(1)}}@media(max-width:860px){.hero{grid-template-columns:1fr;min-height:0;gap:var(--space-6);padding-bottom:var(--space-8)}.hero-frame img{height:clamp(280px,58vw,420px);object-position:32% 26%}.steps,.value-grid{grid-template-columns:1fr}.topbar-tag{display:none}}@media(prefers-reduced-motion:reduce){.hero-copy>*,.hero-visual,.type-card{opacity:1;animation:none}.hero-em:after{transform:scaleX(1);animation:none}}:root{--navy: #182a63;--navy-deep: #101d49;--navy-soft: #eef1f8;--orange: #f1581f;--orange-soft: #fdeee7;--gold: #f5c44c;--gold-deep: #e7af33;--gold-ink: #4a3608;--primary: var(--navy);--primary-hover: var(--navy-deep);--primary-light: var(--navy-soft);--accent: var(--orange);--cta: var(--gold);--cta-hover: var(--gold-deep);--cta-ink: #2a2008;--background: #ffffff;--surface: #ffffff;--surface-tint: #f7f8fb;--error: #d6492f;--success: #1e8e3e;--warning: var(--gold-deep);--on-surface: #131722;--text-secondary: #5a6478;--outline: #e4e7f0;--outline-strong: #cfd5e4;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--space-10: 64px;--space-12: 96px;--radius: 16px;--radius-sm: 10px;--radius-pill: 999px;--shadow-1: 0 1px 2px rgba(16, 29, 73, .06), 0 2px 8px rgba(16, 29, 73, .05);--shadow-2: 0 8px 24px rgba(16, 29, 73, .1);--shadow-cta: 0 10px 24px rgba(231, 175, 51, .4);--font-display: "Archivo", "Helvetica Neue", system-ui, sans-serif;--font-body: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--font-serif: "Fraunces", Georgia, "Times New Roman", serif;--font: var(--font-body)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);color:var(--on-surface);background:var(--background);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--primary);text-decoration:none}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.08;letter-spacing:-.02em;color:var(--on-surface)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:1px solid transparent;border-radius:var(--radius-pill);font-size:.97rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease,box-shadow .18s ease}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-cta{background:var(--cta);color:var(--cta-ink);box-shadow:var(--shadow-cta);padding:var(--space-4) var(--space-6);font-weight:700}.btn-cta:hover:not(:disabled){background:var(--cta-hover);transform:translateY(-2px)}.btn-cta:active:not(:disabled){transform:translateY(0)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){color:var(--on-surface)}.btn-outline{background:var(--surface);border-color:var(--outline-strong);color:var(--on-surface)}.btn-outline:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.btn-danger{background:transparent;color:var(--error)}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.input,.textarea,.select{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--outline-strong);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;background:var(--surface);color:var(--on-surface);transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-light)}.textarea{min-height:120px;resize:vertical}.error-text{color:var(--error);font-size:.85rem}.help-text{color:var(--text-secondary);font-size:.92rem}.card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);box-shadow:var(--shadow-1)}.muted{color:var(--text-secondary)}.logo-link{text-decoration:none;cursor:pointer;transition:opacity .15s ease}.logo-link:hover{opacity:.85}
