@import "https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,700&display=swap";:root{--bg:#e8e2d6;--bg-deep:#d9d0c0;--ink:#1c2420;--muted:#5c675f;--panel:#fcf9f2eb;--line:#1c24201f;--accent:#b45309;--accent-ink:#fff8ef;--ok:#2f5d50;--shadow:0 18px 50px #1c24201a;--radius:14px;--font:"Barlow", system-ui, sans-serif;--display:"Fraunces", Georgia, serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--ink);font-family:var(--font);background:radial-gradient(1200px 600px at 10% -10%, #b453092e, transparent 55%), radial-gradient(900px 500px at 100% 0%, #2f5d5029, transparent 50%), linear-gradient(160deg, var(--bg), var(--bg-deep));background-attachment:fixed;margin:0}a{color:inherit}button,input,select{font:inherit}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:20;background:#fcf9f2b3;align-items:center;gap:1.5rem;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.brand-block{color:inherit;text-decoration:none}.brand{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.brand-block-link:hover .brand{color:var(--accent)}.brand-sub{color:var(--muted);margin:.15rem 0 0;font-size:.85rem}.nav{gap:.35rem;margin-left:auto;display:flex}.nav-link{color:var(--muted);border-radius:999px;padding:.45rem .8rem;text-decoration:none}.nav-link.active,.nav-link:hover{color:var(--ink);background:#1c242014}.mode-pill{border:1px solid var(--line);color:var(--muted);border-radius:999px;margin:0;padding:.35rem .65rem;font-size:.75rem}.main{max-width:1200px;margin:0 auto;padding:1.5rem}.page{animation:.45s both rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.proposal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem 1rem;display:flex}.proposal-actions-secondary{flex-wrap:wrap;gap:.5rem;display:flex}.proposal-actions-primary{border:1px solid var(--line);background:#fcf9f2d9;border-radius:16px;flex-wrap:wrap;gap:.55rem;padding:.35rem;display:flex}.action-btn{border-radius:12px;flex-direction:column;align-items:flex-start;gap:.1rem;min-width:9.5rem;padding:.55rem .95rem;line-height:1.15}.action-btn-label{font-weight:700}.action-btn-hint{opacity:.72;font-size:.72rem;font-weight:500}.btn.action-btn:not(.primary){border-color:var(--line);color:var(--ink);background:#fff}.btn.action-btn:not(.primary):hover:not(:disabled){background:#fffdf8;border-color:#1c242047}.btn.action-btn:disabled{opacity:.65;cursor:wait}.sticky-head{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#e8e2d6f2,#e8e2d6bf);padding:.75rem 0;position:sticky;top:4.5rem}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;margin:0 0 .4rem}h1{font-size:clamp(1.8rem,3vw,2.4rem)}h2{font-size:1.25rem}.lede{color:var(--muted);max-width:42rem;margin:0;line-height:1.45}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 .2rem;font-size:.72rem;font-weight:600}.hero-panel{isolation:isolate;border-radius:calc(var(--radius) + 4px);color:#f6f1e7;box-shadow:var(--shadow);background:linear-gradient(135deg,#1c2420eb,#2f5d50e0),url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");grid-template-columns:1.4fr .8fr;gap:1.25rem;margin-bottom:1.25rem;padding:1.5rem;display:grid;position:relative;overflow:hidden}.hero-watermark{z-index:0;pointer-events:none;opacity:.07;justify-content:flex-end;align-items:center;padding:.75rem 1rem .75rem 35%;display:flex;position:absolute;inset:0}.hero-watermark-img{object-fit:contain;object-position:right center;width:100%;max-width:520px;height:100%;max-height:100%;display:block}.hero-copy,.hero-stats{z-index:1;position:relative}.hero-panel h1{color:#fff}.hero-panel .lede{color:#f6f1e7c7}.hero-stats{align-content:center;gap:.85rem;display:grid}.hero-stats strong{font-family:var(--display);font-size:1.6rem;display:block}.stat-label{text-transform:uppercase;letter-spacing:.06em;opacity:.75;margin-bottom:.2rem;font-size:.75rem;display:block}.cta-row{flex-wrap:wrap;gap:.6rem;margin-top:1.1rem;display:flex}.btn{appearance:none;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.55rem 1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.ghost{color:inherit;background:0 0;border-color:currentColor}.btn.danger{color:#fff;background:#9a3412}.btn.danger:hover{background:#7c2d12}.hero-panel .btn.ghost{border-color:#ffffff59}.grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:1rem;padding:1.1rem 1.2rem;box-shadow:0 8px 24px #1c24200a}.muted{color:var(--muted)}.tiny{font-size:.8rem}.list{margin:0;padding:0;list-style:none}.list li a{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.7rem 0;text-decoration:none;display:flex}.kv{gap:.55rem;margin:.85rem 0 0;display:grid}.kv>div{justify-content:space-between;gap:1rem;display:flex}.kv dt{color:var(--muted);margin:0}.kv dd{margin:0;font-weight:600}.kv.computed{background:#2f5d500f;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));padding:.85rem}.kv.computed>div{flex-direction:column;gap:.2rem}.kv.compact{font-size:.92rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;display:grid}.field,.form-grid label,.inline-field{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}.inline-field{max-width:240px;margin-top:1rem}input,select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:.5rem .65rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.55rem .4rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}td input[type=number],td input[type=text],td input:not([type]){width:100%;min-width:70px}.tag{color:var(--accent);text-transform:uppercase;background:#b453091f;border-radius:999px;padding:.15rem .5rem;font-size:.78rem;display:inline-block}.row-actions{gap:.75rem;display:flex}.follow-ups-panel{margin-bottom:1.25rem}.follow-ups-table .follow-up-days{color:var(--accent);font-weight:700}.follow-up-email-btn{white-space:nowrap;padding:.35rem .7rem;font-size:.85rem}.dashboard-tabs{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 88%, transparent);border-radius:999px;gap:.35rem;width:fit-content;max-width:100%;margin:0 0 1.1rem;padding:.25rem;display:flex}.dashboard-tab{appearance:none;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.45rem 1rem;font-size:.92rem}.dashboard-tab--active{color:var(--ink);background:#fff;font-weight:600;box-shadow:0 1px 2px #00000014}.metrics-panel-head{align-items:flex-start;gap:1rem}.metrics-panel-wrap,.subscription-panel-wrap{margin-bottom:1rem}.subscription-plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.75rem;display:grid}.subscription-card{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--bg) 55%, var(--panel));flex-direction:column;justify-content:space-between;gap:1rem;padding:1.15rem 1.2rem;display:flex}.subscription-card--team{border-color:color-mix(in srgb, var(--ok) 40%, var(--line));background:linear-gradient(165deg, #2f5d5012, transparent 45%), color-mix(in srgb, var(--bg) 55%, var(--panel))}.subscription-card--seat{border-color:color-mix(in srgb, var(--ok) 22%, var(--line))}.subscription-card--addon{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));background:linear-gradient(165deg, #b453090f, transparent 45%), color-mix(in srgb, var(--bg) 55%, var(--panel))}.subscription-card-title{font-family:var(--display);margin:.2rem 0 .45rem;font-size:1.45rem;font-weight:700;display:block}.subscription-url{word-break:break-all;margin:.65rem 0 0}.subscription-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.subscription-actions .btn{text-decoration:none}@media (width<=1100px){.subscription-plans{grid-template-columns:1fr}}.metrics-timeframe{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 70%, transparent);border-radius:999px;flex-wrap:wrap;gap:.35rem;padding:.2rem;display:flex}.metrics-timeframe-btn{appearance:none;color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;padding:.4rem .85rem;font-size:.85rem}.metrics-timeframe-btn--active{background:var(--accent);color:#fff;font-weight:600}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-top:1rem;display:grid}.metric-card{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--bg) 55%, var(--panel));flex-direction:column;gap:.25rem;padding:1rem 1.05rem;display:flex}.metric-card-primary{font-family:var(--display);font-size:1.55rem;font-weight:700;line-height:1.15}.metric-card-secondary{color:var(--ink);font-size:.98rem;font-weight:600}.metric-card-hint{margin-top:.15rem;font-size:.78rem}@media (width<=1100px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.metrics-grid{grid-template-columns:1fr}.metrics-panel-head{flex-direction:column}.dashboard-tabs{width:100%}.dashboard-tab{text-align:center;flex:1}}.linkish{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.estimate-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:1rem;display:grid}.totals-rail{position:sticky;top:8.5rem}.totals-card .bid-figure{font-family:var(--display);color:var(--ok);margin:.2rem 0 .45rem;font-size:1.85rem;font-weight:700}.estimate-ref{font-family:var(--mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);letter-spacing:.04em;color:var(--ink);margin:0 0 .55rem;font-size:.95rem;font-weight:700}.totals-card .estimate-ref{color:var(--ok);background:#2f5d501a;border-radius:6px;padding:.2rem .55rem;display:inline-block}.proposal-estimate-ref{color:var(--accent);margin:0 0 .35rem;font-size:1.05rem}.estimate-ref-link{font-family:var(--mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);letter-spacing:.03em;font-weight:700}.estimate-ref-inline{font-family:var(--mono,ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);letter-spacing:.03em;color:var(--accent);margin-right:.5rem;font-size:.78rem;font-weight:700;display:inline-block}.totals-card hr{border:none;border-top:1px solid var(--line);margin:.9rem 0}.margin-chip{color:var(--ok);background:#2f5d501a;border-radius:999px;margin-bottom:.85rem;padding:.25rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.title-input{width:100%;max-width:28rem;font-family:var(--display);font-size:inherit;letter-spacing:-.02em;color:inherit;background:0 0;border:none;padding:0;font-weight:700}.title-input:focus{border-bottom:2px solid var(--accent);border-radius:0;outline:none}.save-status{color:var(--muted);margin:.35rem 0 0;font-size:.85rem}.save-status .dot{margin:0 .35rem}.view-tabs{background:#1c24200d;border-radius:999px;gap:.35rem;width:fit-content;margin-bottom:1rem;padding:.25rem;display:flex}.view-tab{appearance:none;cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:999px;padding:.45rem .95rem;font-weight:600}.view-tab.active{color:var(--ink);background:#fffdf8;box-shadow:0 2px 8px #1c242014}.openings-table th{white-space:normal;max-width:5.5rem;font-size:.72rem;line-height:1.25}.openings-table td input[type=number]{min-width:3.75rem}.openings-table select{max-width:11rem}.labor-burden-table th{white-space:normal;max-width:6.5rem;font-size:.72rem;line-height:1.25}.labor-burden-table td input{min-width:4.5rem}.section-pills{flex-wrap:wrap;gap:.4rem;margin-bottom:.85rem;display:flex}.section-pills.trade-tier{gap:.5rem;margin-bottom:.55rem}.section-pills.trade-tier .pill{letter-spacing:.01em;color:var(--ink);background:#fcf9f2f2;border:1.5px solid #1c242038;min-height:2.5rem;padding:.55rem 1.1rem;font-size:.95rem;font-weight:600}.section-pills.trade-tier .pill:hover{color:var(--ink);background:#fff;border-color:#1c242073}.section-pills.trade-tier .pill.active{background:var(--ink);border-color:var(--ink);color:#f6f1e7;font-weight:700;box-shadow:0 2px 8px #1c24202e}.section-pills.trade-subtier{gap:.45rem;margin-bottom:.85rem;padding-left:.15rem}.section-pills.trade-subtier .pill{color:var(--ink);background:#fffcf6fa;border:1.5px solid #1c242047;min-height:2.25rem;padding:.45rem .95rem;font-size:.88rem;font-weight:600}.section-pills.trade-subtier .pill:hover{color:var(--ink);background:#fff;border-color:#1c242073}.section-pills.trade-subtier .pill.active{background:var(--ink);border-color:var(--ink);color:#f6f1e7;font-weight:650;box-shadow:0 1px #1c242026}.pill{appearance:none;border:1px solid var(--line);cursor:pointer;color:var(--muted);background:#fcf9f2b3;border-radius:999px;padding:.35rem .75rem;font-size:.85rem;font-weight:600}.pill.active{background:var(--ink);border-color:var(--ink);color:#f6f1e7}.section-note{margin:0 0 .9rem;font-size:.9rem}.field-hint{color:var(--muted);opacity:.85;font-size:.75rem;font-style:normal}.formula-line{margin:.4rem 0;line-height:1.45}.formula-tiny{color:var(--muted);margin-top:.2rem;font-size:.74rem;font-weight:400;line-height:1.35}.role-cards{gap:.65rem;margin-top:.85rem;display:grid}.role-card{border:1px solid var(--line);background:#fffdf8cc;border-radius:10px;padding:.75rem .85rem}.role-card-head{justify-content:space-between;gap:.75rem;margin-bottom:.25rem;display:flex}.role-meta{color:var(--muted);flex-wrap:wrap;gap:.65rem;margin-top:.45rem;font-size:.78rem;display:flex}.linked-qty{background:#2f5d5014;border-radius:8px;padding:.35rem .5rem;font-weight:600;display:inline-block}.cost-stack{margin:.5rem 0 .25rem}.cost-stack-bar{background:#1c242014;border-radius:999px;height:12px;display:flex;overflow:hidden}.cost-stack-seg{min-width:2px;height:100%;transition:width .25s}.cost-stack-legend{gap:.3rem;margin:.65rem 0 0;padding:0;list-style:none;display:grid}.cost-stack-legend li{grid-template-columns:10px 1fr auto auto;align-items:center;gap:.45rem;font-size:.8rem;display:grid}.cost-stack-legend .swatch{border-radius:2px;width:10px;height:10px}.cost-stack-legend em{color:var(--muted);text-align:right;min-width:2.2rem;font-style:normal}.btn.full{width:100%;margin-top:.85rem}.panel-head-row{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.panel-head-row h2{margin-bottom:.25rem}.stack-gap{flex-direction:column;gap:1rem;display:flex}.nested-panel{background:#00000005;border:1px solid #0000001a;border-radius:8px;padding:1rem}.empty-lines{justify-items:start;gap:.75rem;padding:1rem 0 .25rem;display:grid}.area-list{gap:.85rem;display:grid}.area-card{border:1px solid var(--line);background:#fffdf8d9;border-radius:12px;padding:.9rem 1rem}.area-card-head{grid-template-columns:1fr auto;align-items:end;gap:.75rem;margin-bottom:.75rem;display:grid}.area-takeoff{margin-top:.75rem}.proposal-areas{margin-bottom:1.5rem}.proposal-areas h3{margin-bottom:.65rem}.proposal-areas-table{border-collapse:collapse;width:100%;font-size:.9rem}.proposal-areas-table th,.proposal-areas-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.55rem .4rem}.proposal-areas-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.72rem}.area-name-cell{font-weight:700}.editable-lines td:first-child{min-width:14rem}.grow-input{width:100%;min-width:12rem}.linkish.danger{color:#9a3412}.profit{color:var(--ok)}.calc-steps{gap:.55rem;margin:.85rem 0 0;padding-left:1.1rem;display:grid}.calc-steps li{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.calc-steps span{white-space:nowrap;font-weight:700}tfoot td{background:#1c242008;font-weight:600}.proposal-standalone{max-width:960px;margin:0 auto;padding:1.25rem 1rem 2.5rem}.proposal-standalone .page-head{margin-bottom:1rem}.proposal-client{background:radial-gradient(80% 50% at 50% -10%,#2f5d5014,#0000),#f7f5f0;min-height:100vh}.proposal-actions-client{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.proposal-totals-card{border:1px solid var(--line);background:#2f5d500f;border-radius:12px;gap:.65rem;padding:1.1rem 1.25rem;display:grid}.proposal-totals-card .bid-figure{margin:.15rem 0 0}.accepted-banner{color:var(--ok);font-weight:600}.sign-success{color:var(--ok);margin:.65rem 0 0;font-size:.92rem;font-weight:600}.accept-proposal-btn{min-width:11rem}.proposal-sheet{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffdf8;padding:2rem}.proposal-sheet.pdf-export{box-shadow:none;background:#fff;border:none;border-radius:0;max-width:8.5in}.proposal-sheet.pdf-export .no-print,.proposal-sheet.pdf-export .signature-actions,.proposal-sheet.pdf-export .signature-placeholder{display:none!important}.proposal-sheet.pdf-export .signature-frame{border-style:solid;border-color:#ccc}.proposal-sheet.pdf-export .signature-canvas{cursor:default}.proposal-header{border-bottom:2px solid var(--ink);flex-direction:column;gap:.85rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.proposal-header--has-banner{gap:.5rem;margin-bottom:1.15rem;padding-bottom:.85rem}.proposal-banner-wrap{background-color:#fff;background-image:none;border-radius:0;justify-content:center;align-items:center;width:calc(100% + 4rem);min-height:96px;max-height:180px;margin:-2rem -2rem 0;display:flex;overflow:hidden}.proposal-banner{object-fit:contain;object-position:center;background-color:#fff;background-image:none;width:100%;max-width:100%;height:auto;max-height:160px;display:block}.proposal-banner-accepted{text-align:right;margin:0}.proposal-header-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.proposal-brand-block{align-items:center;gap:.85rem;min-width:0;max-width:62%;display:flex}.proposal-logo-wrap{background:#fff;border:1px solid #1c242014;border-radius:8px;flex:none;justify-content:center;align-items:center;width:72px;height:72px;padding:.25rem;display:flex;overflow:hidden}.proposal-logo{object-fit:contain;object-position:center;background:#fff;width:100%;max-width:64px;height:100%;max-height:64px;display:block}.proposal-brand-text{min-width:0}.proposal-brand-text p{margin:.15rem 0 0}.proposal-brand-text .brand{margin:0}.proposal-brand-line{color:var(--muted,#5b655f);margin:.2rem 0 0;font-size:.92rem;line-height:1.35}.proposal-brand-contact{margin-top:.15rem}.proposal-title{text-align:right;flex:0 auto}.proposal-title h2{margin:0;font-size:1.45rem;line-height:1.2}.proposal-title .accepted-banner{margin-top:.35rem}.logo-upload-panel{margin-bottom:1rem}.branding-upload,.logo-upload{flex-direction:column;gap:1.1rem;display:flex}.branding-upload-slot{border-top:1px solid #1c242014;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem 1.25rem;padding-top:.35rem;display:flex}.branding-upload-slot:first-child{border-top:0;padding-top:0}.branding-preview{background-color:#fff;background-image:none;border:1px solid #1c242014;border-radius:8px;flex:160px;max-width:280px;overflow:hidden}.branding-preview-surface{width:100%;height:100%;min-height:inherit;background-color:#fff;background-image:none;justify-content:center;align-items:center;display:flex}.branding-preview--logo{flex:0 0 88px;width:88px;max-width:88px;height:88px}.branding-preview--logo .branding-preview-surface{width:88px;height:88px}.branding-preview img{object-fit:contain;object-position:center;background-color:#fff;background-image:none;width:100%;height:auto;max-height:72px;display:block}.branding-preview--logo img{object-fit:contain;width:100%;height:100%;max-height:none}.branding-preview--banner{flex:240px;max-width:360px;height:72px;min-height:72px}.branding-preview--banner .branding-preview-surface{height:72px;min-height:72px}.branding-preview--banner img{object-fit:contain;object-position:center;background-color:#fff;background-image:none;width:100%;height:72px;max-height:72px}.company-profile-branding{border-top:1px solid #1c24201a;margin-top:1.25rem;padding-top:1rem}.company-profile-branding-title{margin:0 0 .35rem;font-size:1rem}.logo-upload-copy{flex:16rem;min-width:12rem}.logo-upload-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.logo-upload-btn{cursor:pointer}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.proposal-sheet.pdf-export .proposal-logo-wrap{background:#fff;width:64px;height:64px}.proposal-sheet.pdf-export .proposal-logo{background:#fff;max-width:56px;max-height:56px}.proposal-sheet.pdf-export .proposal-banner-wrap{background:#fff;width:calc(100% + 4rem);max-height:160px;margin:-2rem -2rem .75rem}.proposal-sheet.pdf-export .proposal-banner{object-fit:contain;background:#fff;height:auto;max-height:140px}.proposal-meta{grid-template-columns:1.2fr .8fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.strong{margin:.2rem 0;font-size:1.1rem;font-weight:700}.scope{white-space:pre-wrap;background:#1c242008;border-radius:10px;padding:1rem;font-family:inherit;line-height:1.5}.sign-row{grid-template-columns:2fr 1fr;gap:1.5rem;margin-top:1.5rem;display:grid}.sign-line{border-bottom:1px solid var(--ink);height:1px;margin-top:2rem}.signature-pad{border:1px solid var(--line);background:#fffdf8e6;border-radius:12px;margin-top:1.25rem;padding:1rem}.signature-pad-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.signature-frame{touch-action:none;background:linear-gradient(0deg,#0000 28px,#1c242014 28px 29px,#0000 29px),#fffdf8;border:1.5px dashed #1c242047;border-radius:12px;margin-top:.75rem;position:relative;overflow:hidden}.signature-frame.locked{border-style:solid;border-color:#2f5d5059}.signature-canvas{cursor:crosshair;touch-action:none;width:100%;height:160px;display:block}.signature-placeholder{pointer-events:none;color:#1c242047;font-family:var(--display);place-items:center;margin:0;font-size:1.4rem;display:grid;position:absolute;inset:0}.signature-actions{margin-top:.85rem}.signed-tag{color:var(--ok);background:#2f5d5024}.sign-meta-row{margin-top:1rem}.form-error{color:#9a3412;margin:.5rem 0 0;font-size:.88rem;font-weight:600}.modal-backdrop{z-index:50;background:#1c242073;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-card{background:var(--panel);border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);width:min(640px,100%);max-height:min(90vh,860px);box-shadow:var(--shadow);padding:1.2rem 1.3rem 1.35rem;overflow:auto}.email-form{margin-top:.5rem}.email-form .full-span{grid-column:1/-1}.email-form textarea{border:1px solid var(--line);color:var(--ink);resize:vertical;font:inherit;background:#fff;border-radius:10px;padding:.55rem .65rem;line-height:1.4}.email-proposal-modal{width:min(720px,100%)}.confirm-delete-modal{width:min(420px,100%)}.confirm-delete-modal h2{margin:0 0 .5rem;font-size:1.25rem}.confirm-delete-actions{justify-content:flex-end;margin-top:1.15rem}.dashboard-pipeline>.panel+.panel,.dashboard-pipeline .grid-2{margin-top:1.1rem}.lost-history-count{min-width:1.75rem;height:1.75rem;color:var(--muted);background:#1c242014;border-radius:999px;justify-content:center;align-items:center;padding:0 .45rem;font-size:.85rem;font-weight:700;display:inline-flex}.tag-lost{color:var(--muted);background:#1c24201a}.restore-active-btn{white-space:nowrap;padding:.35rem .7rem;font-size:.85rem}.pipeline-card-actions button.linkish{font:inherit;padding:0}.email-html-preview-wrap{margin-top:1rem}.email-html-preview{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;height:320px}.inline-code-link{word-break:break-all;color:var(--ink);font-size:.78rem}.inline-code{word-break:break-all;font-size:.78rem}@media (width<=900px){.hero-panel,.grid-2,.estimate-layout,.proposal-meta,.topbar{flex-wrap:wrap;grid-template-columns:1fr}.hero-watermark{opacity:.06;justify-content:center;padding:.5rem .75rem}.hero-watermark-img{object-position:center;max-width:420px}.nav{width:100%;margin-left:0}.totals-rail{position:static}.page-head{flex-direction:column}.proposal-actions,.proposal-actions-primary,.proposal-actions-secondary{justify-content:stretch;width:100%}.proposal-header-row{flex-direction:column}.proposal-brand-block{max-width:100%}.action-btn{flex:10rem}}@media print{.topbar,.no-print{display:none!important}body{background:#fff}.proposal-sheet{box-shadow:none;border:none;padding:0}.proposal-areas-table{page-break-inside:avoid}.proposal-areas-table th,.proposal-areas-table td{border-color:#ccc}.proposal-logo-wrap{background:#fff;width:64px;height:64px}.proposal-logo{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;max-width:56px;max-height:56px}.proposal-banner-wrap{background:#fff;max-height:160px}.proposal-banner{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;height:auto;max-height:140px}.signature-pad{break-inside:avoid}.signature-frame{border-style:solid}}.pipeline-summary{flex-wrap:wrap;gap:1.5rem 2.5rem;margin-bottom:1.25rem;display:flex}.pipeline-summary-value{font-family:var(--display);letter-spacing:-.02em;margin-top:.2rem;font-size:1.55rem;font-weight:700;display:block}.pipeline-board{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:.85rem;display:grid}.pipeline-column{border:1px solid var(--line);border-radius:var(--radius);min-height:18rem;box-shadow:var(--shadow);background:#fcf9f2b8;flex-direction:column;display:flex}.pipeline-column-head{border-bottom:1px solid var(--line);border-top:3px solid #1c24202e;padding:.9rem .95rem .75rem}.pipeline-column--draft .pipeline-column-head{border-top-color:#7a847c}.pipeline-column--sent .pipeline-column-head{border-top-color:#b45309}.pipeline-column--viewed .pipeline-column-head{border-top-color:#3d6e8c}.pipeline-column--signed .pipeline-column-head{border-top-color:var(--ok)}.pipeline-column-title-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pipeline-column-head h2{font-size:1.05rem;font-family:var(--display);margin:0}.pipeline-count{background:#1c242014;border-radius:999px;justify-content:center;align-items:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;font-size:.8rem;font-weight:600;display:inline-flex}.pipeline-column-total{letter-spacing:-.01em;margin:.35rem 0 .15rem;font-size:1.15rem;font-weight:700}.pipeline-column-body{flex-direction:column;flex:1;gap:.65rem;padding:.75rem;display:flex}.pipeline-empty{text-align:center;margin:.5rem 0}.pipeline-card{border:1px solid var(--line);background:#ffffffc7;border-radius:10px;padding:.75rem .8rem}.pipeline-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pipeline-card-ref{font-weight:600;text-decoration:none}.pipeline-card-ref:hover{text-decoration:underline}.pipeline-card-client{margin:.35rem 0 .15rem;font-weight:500}.pipeline-card-bid{font-family:var(--display);margin:0;font-size:1.05rem;font-weight:700}.pipeline-card-actions{gap:.75rem;margin-top:.55rem;font-size:.85rem;display:flex}.pipeline-card-actions a{color:var(--muted);text-underline-offset:2px;text-decoration:underline}@media (width<=1100px){.pipeline-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.pipeline-board{grid-template-columns:1fr}}.clients-empty{flex-direction:column;align-items:flex-start;gap:.85rem;display:flex}.client-editor-modal{max-width:34rem}.clients-quick-link{flex-direction:column;justify-content:flex-end;display:flex}.clients-quick-link .btn{width:fit-content}.form-grid select{border:1px solid var(--line);width:100%;color:var(--ink);background:#ffffffd9;border-radius:10px;padding:.55rem .7rem}.landing{min-height:100vh;color:var(--ink)}.landing-topbar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fcf9f2c7;position:sticky;top:0}.landing-topbar-inner{align-items:center;gap:1rem;max-width:1120px;margin:0 auto;padding:.85rem 1.5rem;display:flex}.landing-brand-mark{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.landing-top-nav{align-items:center;gap:1rem;margin-left:auto;display:flex}.landing-top-nav a{color:var(--muted);font-size:.95rem;text-decoration:none}.landing-top-nav a:hover{color:var(--ink)}.landing-top-cta{text-decoration:none}.landing-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;min-height:calc(100vh - 4.25rem);display:grid}.landing-hero-copy{flex-direction:column;justify-content:center;max-width:36rem;padding:clamp(2rem,6vw,4.5rem) clamp(1.5rem,5vw,4rem);animation:.7s both landing-rise;display:flex}.landing-hero-brand{font-family:var(--display);letter-spacing:-.035em;color:var(--ink);margin:0 0 .85rem;font-size:clamp(2.75rem,7vw,4.5rem);font-weight:700;line-height:.95}.landing-hero-headline{font-family:var(--display);letter-spacing:-.02em;max-width:28ch;margin:0;font-size:clamp(1.35rem,2.6vw,1.85rem);font-weight:500;line-height:1.25}.landing-hero-lede{color:var(--muted);max-width:42ch;margin:1rem 0 0;font-size:1.05rem;line-height:1.55}.landing-hero-cta{flex-wrap:wrap;gap:.65rem;margin-top:1.75rem;display:flex}.landing-cta-primary,.landing-cta-secondary{text-decoration:none;animation:.8s .15s both landing-cta-in}.landing-cta-secondary{animation-delay:.28s}.landing-hero-visual{background:linear-gradient(145deg,#2f5d5038,#0000 55%),linear-gradient(320deg,#b4530947,#0000 50%),linear-gradient(#cfc5b4,#b7ad9a);min-height:22rem;animation:.9s .1s both landing-visual-in;position:relative;overflow:hidden}.landing-proposal-plane{justify-content:flex-end;align-items:flex-end;padding:0;display:flex;position:absolute;inset:0}.landing-proposal-sheet{background:#fcf9f2;border-top:1px solid #1c242024;border-left:1px solid #1c242024;flex-direction:column;width:min(92%,28rem);height:min(88%,34rem);margin:0;display:flex;overflow:hidden;box-shadow:-24px 0 60px #1c24202e}.landing-proposal-banner{background:linear-gradient(90deg,#2f5d50 0%,#3d7262 45%,#b45309 100%);flex-shrink:0;height:4.5rem}.landing-proposal-body{flex-direction:column;flex:1;padding:1.35rem 1.5rem 1.75rem;display:flex}.landing-proposal-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.75rem}.landing-proposal-client{font-family:var(--display);margin:.45rem 0 0;font-size:1.35rem;font-weight:700}.landing-proposal-meta{color:var(--muted);justify-content:space-between;align-items:baseline;gap:1rem;margin-top:1.1rem;font-size:.95rem;display:flex}.landing-proposal-bid{font-family:var(--display);color:var(--ink);font-size:1.65rem;font-weight:700}.landing-proposal-lines{flex-direction:column;gap:.65rem;margin-top:1.5rem;display:flex}.landing-proposal-lines span{background:#1c242014;border-radius:999px;height:.55rem;display:block}.landing-proposal-lines span:first-child{width:92%}.landing-proposal-lines span:nth-child(2){width:78%}.landing-proposal-lines span:nth-child(3){width:64%}.landing-proposal-sign{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:1.5rem;display:flex}.landing-proposal-sign-label{color:var(--ok);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;font-weight:600}.landing-proposal-sign-mark{background:radial-gradient(circle at 20% 70%,#0000 0 35%,#2f5d5059 36% 38%,#0000 39%),radial-gradient(circle at 45% 40%,#0000 0 30%,#2f5d5047 31% 33%,#0000 34%),radial-gradient(circle at 70% 65%,#0000 0 28%,#2f5d504d 29% 31%,#0000 32%);border-bottom:2px solid #2f5d508c;width:7rem;height:2.2rem}.landing-features{max-width:1120px;margin:0 auto;padding:clamp(3rem,8vw,5.5rem) 1.5rem}.landing-origin{max-width:1120px;margin:0 auto;padding:clamp(2.75rem,7vw,4.5rem) 1.5rem 0}.landing-origin-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.8rem;font-weight:600}.landing-origin h2{font-family:var(--display);letter-spacing:-.02em;max-width:22ch;margin:.65rem 0 0;font-size:clamp(1.55rem,3vw,2.1rem);line-height:1.2}.landing-origin-body{max-width:48rem;color:var(--muted);margin:1rem 0 0;font-size:1.05rem;line-height:1.6}.landing-showcase{max-width:1120px;margin:0 auto;padding:clamp(2.75rem,7vw,4.5rem) 1.5rem 0}.landing-showcase-intro{max-width:34rem;margin-bottom:1.35rem}.landing-showcase-intro h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(1.55rem,3vw,2.1rem)}.landing-showcase-intro p{color:var(--muted);margin:.65rem 0 0;line-height:1.55}.landing-showcase-shell{gap:1rem;display:grid}.landing-showcase-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;display:grid}.landing-showcase-tab{text-align:left;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fcf9f2b8;border-radius:12px;flex-direction:column;align-items:flex-start;gap:.35rem;padding:.85rem .95rem;transition:border-color .2s,background .2s,transform .2s;display:flex}.landing-showcase-tab:hover{border-color:#b4530959;transform:translateY(-1px)}.landing-showcase-tab--active{background:var(--panel);box-shadow:var(--shadow);border-color:#b453098c}.landing-showcase-tab-step{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:700}.landing-showcase-tab-label{font-family:var(--display);letter-spacing:-.015em;font-size:1rem;font-weight:600;line-height:1.2}.landing-showcase-stage{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:1rem;min-height:22rem;display:grid;overflow:hidden}.landing-showcase-copy{border-right:1px solid var(--line);flex-direction:column;justify-content:center;padding:1.5rem 1.4rem;display:flex}.landing-showcase-step-label{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.78rem;font-weight:650}.landing-showcase-summary{font-family:var(--display);letter-spacing:-.015em;margin:.75rem 0 0;font-size:1.25rem;line-height:1.35}.landing-showcase-preview{background:linear-gradient(160deg,#b4530914,#0000 45%),linear-gradient(340deg,#2f5d501a,#0000 50%),#e6dfd2;padding:1.15rem;animation:.35s both landing-preview-in}.mock{border:1px solid var(--line);background:#fcf9f2f5;border-radius:12px;height:100%;min-height:18rem;padding:1rem 1.05rem;box-shadow:0 12px 28px #1c242014}.mock-chrome{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.9rem;font-size:.85rem;font-weight:600;display:flex}.mock-chrome-pill,.mock-tag{color:var(--ok);background:#2f5d501f;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.72rem;font-weight:650;display:inline-flex}.mock-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 .45rem;font-size:.72rem}.mock-strong{margin:0;font-weight:650}.mock-bid{font-family:var(--display);margin:0;font-size:1.35rem;font-weight:700}.mock-takeoff-grid{grid-template-columns:1.1fr .9fr;gap:.85rem;display:grid}.mock-row{border:1px solid var(--line);background:#ffffff8c;border-radius:8px;justify-content:space-between;gap:.5rem;margin-bottom:.4rem;padding:.45rem .55rem;font-size:.85rem;display:flex}.mock-row--muted{opacity:.7}.mock-stack-bar{background:#1c242014;border-radius:999px;height:.55rem;margin-bottom:.75rem;display:flex;overflow:hidden}.mock-stack-bar i{height:100%;display:block}.mock-stack-bar i:first-child{background:#2f5d50}.mock-stack-bar i:nth-child(2){background:#b45309}.mock-stack-bar i:nth-child(3){background:#7a847c}.mock-stack-bar i:nth-child(4){background:#3d6e8c}.mock-kv{margin:0}.mock-kv>div{border-bottom:1px solid #1c242014;justify-content:space-between;gap:.5rem;padding:.28rem 0;font-size:.88rem;display:flex}.mock-kv dt{color:var(--muted);margin:0}.mock-kv dd{margin:0;font-weight:600}.mock-proposal{padding:0;overflow:hidden}.mock-proposal-banner{background:linear-gradient(90deg,#2f5d50 0%,#3d7262 45%,#b45309 100%);height:3.25rem}.mock-proposal-inner{padding:1rem 1.05rem 1.15rem}.mock-proposal-title{font-family:var(--display);margin:.15rem 0 0;font-size:1.35rem;font-weight:700}.mock-proposal-meta{justify-content:space-between;gap:1rem;margin-top:1rem;display:flex}.mock-proposal-actions{flex-wrap:wrap;gap:.5rem;margin-top:1.15rem;display:flex}.mock-btn-ghost,.mock-btn-primary{border-radius:10px;align-items:center;padding:.45rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.mock-btn-ghost{border:1px solid var(--line);background:#ffffffb3}.mock-btn-primary{background:var(--accent);color:var(--accent-ink)}.mock-btn-sm{padding:.28rem .6rem;font-size:.75rem}.mock-crm-table{border:1px solid var(--line);background:#ffffff8c;border-radius:10px;overflow:hidden}.mock-crm-head,.mock-crm-row{grid-template-columns:1.2fr 1fr 1.2fr;gap:.5rem;padding:.55rem .7rem;font-size:.8rem;display:grid}.mock-crm-head{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;background:#1c24200d;font-size:.68rem;font-weight:650}.mock-crm-row{border-top:1px solid var(--line)}.mock-crm-row--active{background:#b453091a}.mock-crm-hint{color:var(--muted);margin:.75rem 0 0;font-size:.8rem}.mock-sign-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mock-sign-copy{color:var(--muted);margin:.75rem 0 0;font-size:.9rem;line-height:1.45}.mock-sign-pad{background:#ffffffb3;border:1px dashed #1c242040;border-radius:10px;flex-direction:column;justify-content:flex-end;gap:.35rem;min-height:5.5rem;margin-top:1rem;padding:.85rem 1rem;display:flex}.mock-sign-scribble{background:radial-gradient(circle at 18% 70%,#0000 0 34%,#2f5d5059 35% 37%,#0000 38%),radial-gradient(circle at 48% 42%,#0000 0 30%,#2f5d5047 31% 33%,#0000 34%),radial-gradient(circle at 74% 62%,#0000 0 28%,#2f5d504d 29% 31%,#0000 32%);border-bottom:2px solid #2f5d508c;width:8.5rem;height:1.8rem;display:block}.mock-sign-name{color:var(--muted);font-size:.8rem}@keyframes landing-preview-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (width<=900px){.landing-showcase-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-showcase-stage{grid-template-columns:1fr;min-height:0}.landing-showcase-copy{border-right:none;border-bottom:1px solid var(--line)}.mock-takeoff-grid{grid-template-columns:1fr}}@media (width<=640px){.landing-showcase-tabs,.mock-crm-head,.mock-crm-row{grid-template-columns:1fr}.mock-crm-head span:nth-child(n+2),.mock-crm-row span:nth-child(n+2){display:none}}.landing-features-intro{max-width:34rem;margin-bottom:2rem;animation:.6s both landing-rise}.landing-features-intro h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:clamp(1.6rem,3vw,2.15rem)}.landing-features-intro p{color:var(--muted);margin:.75rem 0 0;line-height:1.55}.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.landing-feature-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.35rem 1.4rem 1.45rem;animation:.65s both landing-rise}.landing-feature-panel:first-child{animation-delay:50ms}.landing-feature-panel:nth-child(2){animation-delay:.12s}.landing-feature-panel:nth-child(3){animation-delay:.19s}.landing-feature-panel:nth-child(4){animation-delay:.26s}.landing-feature-panel h3{font-family:var(--display);letter-spacing:-.015em;margin:0;font-size:1.2rem}.landing-feature-panel p{color:var(--muted);margin:.55rem 0 0;line-height:1.5}.landing-pricing{max-width:1120px;margin:0 auto 3rem;padding:clamp(2rem,5vw,3rem) 1.5rem}.landing-pricing-intro{max-width:38rem;margin-bottom:2rem;animation:.6s both landing-rise}.landing-pricing-intro h2{font-family:var(--display);letter-spacing:-.02em;margin:.35rem 0 0;font-size:clamp(1.6rem,3vw,2.15rem)}.landing-pricing-intro p:last-child{color:var(--muted);margin:.75rem 0 0;line-height:1.55}.landing-pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1rem;display:grid}.landing-pricing-tier{border-radius:calc(var(--radius) + 2px);color:#f6f1e7;box-shadow:var(--shadow);background:linear-gradient(155deg,#1c2420f5,#2f5d50d1),#1c2420;border:1px solid #f6f1e71f;flex-direction:column;gap:.55rem;padding:1.4rem 1.35rem 1.5rem;animation:.65s both landing-rise;display:flex}.landing-pricing-tier:first-child{animation-delay:50ms}.landing-pricing-tier:nth-child(2){animation-delay:.12s}.landing-pricing-tier:nth-child(3){animation-delay:.19s}.landing-pricing-tier--featured{box-shadow:var(--shadow), 0 0 0 1px #b453092e;background:linear-gradient(155deg,#2f5d50f2,#1c2420fa),#1c2420;border-color:#b453098c}.landing-pricing-badge{letter-spacing:.06em;text-transform:uppercase;color:#d9a574;margin:0;font-size:.72rem;font-weight:700}.landing-pricing-badge--quiet{color:#f6f1e794;font-weight:600}.landing-pricing-tier h3{font-family:var(--display);letter-spacing:-.015em;color:#fff;margin:0;font-size:1.35rem}.landing-pricing-price{flex-wrap:wrap;align-items:baseline;gap:.25rem .4rem;margin:.15rem 0 0;display:flex}.landing-pricing-amount{font-family:var(--display);letter-spacing:-.02em;color:#fff;font-size:clamp(1.85rem,3vw,2.25rem);font-weight:700;line-height:1}.landing-pricing-cadence{color:#f6f1e7ad;font-size:.95rem;font-weight:600}.landing-pricing-detail{color:#f6f1e7;margin:0;font-size:.95rem;font-weight:600;line-height:1.35}.landing-pricing-body{color:#f6f1e7b8;margin:.15rem 0 0;font-size:.95rem;line-height:1.5}.landing-pricing-points{flex-direction:column;flex:1;gap:.45rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.landing-pricing-points li{color:#f6f1e7e6;padding-left:1.05rem;font-size:.92rem;line-height:1.4;position:relative}.landing-pricing-points li:before{content:"";background:var(--accent);border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:.45rem;left:0}.landing-pricing-cta{justify-content:center;width:100%;margin-top:1rem;text-decoration:none}.landing-pricing-cta-stack{flex-direction:column;gap:.5rem;margin-top:auto;padding-top:.35rem;display:flex}.landing-pricing-cta-stack .landing-pricing-cta{margin-top:0}.landing-pricing-cta-stack .btn.primary{background:var(--accent);color:var(--accent-ink);border:none}.landing-pricing-cta-stack .btn.ghost{color:#f6f1e7;background:0 0;border-color:#f6f1e747}.landing-pricing-cta-stack .btn.ghost:hover{background:#f6f1e714}@media (width<=900px){.landing-pricing-grid{grid-template-columns:1fr}}.landing-compare{max-width:1120px;margin:0 auto 3rem;padding:clamp(2rem,5vw,3.5rem) 1.5rem 0}.landing-compare-intro{max-width:38rem;margin-bottom:1.75rem;animation:.6s both landing-rise}.landing-compare-intro h2{font-family:var(--display);letter-spacing:-.02em;margin:.35rem 0 0;font-size:clamp(1.6rem,3vw,2.15rem)}.landing-compare-intro p:last-child{color:var(--muted);margin:.75rem 0 0;line-height:1.55}.landing-compare-table{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);animation:.65s 80ms both landing-rise;overflow:hidden}.landing-compare-head,.landing-compare-row{grid-template-columns:minmax(7rem,.7fr) minmax(0,1.2fr) minmax(0,1.2fr);gap:.75rem 1rem;padding:1rem 1.2rem;display:grid}.landing-compare-head{background:color-mix(in srgb, var(--ok) 10%, var(--panel));border-bottom:1px solid var(--line);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:700}.landing-compare-row+.landing-compare-row{border-top:1px solid var(--line)}.landing-compare-label{color:var(--ink);font-size:.92rem;font-weight:700}.landing-compare-col{font-size:.95rem;line-height:1.45}.landing-compare-col--quotifi{color:var(--ink);font-weight:600}.landing-compare-col--legacy{color:var(--muted)}.landing-compare-head .landing-compare-col--quotifi{color:var(--ok)}.landing-faq{max-width:1120px;margin:0 auto 3rem;padding:clamp(2rem,5vw,3.5rem) 1.5rem 0}.landing-faq-intro{max-width:38rem;margin-bottom:1.75rem;animation:.6s both landing-rise}.landing-faq-intro h2{font-family:var(--display);letter-spacing:-.02em;margin:.35rem 0 0;font-size:clamp(1.6rem,3vw,2.15rem)}.landing-faq-intro p:last-child{color:var(--muted);margin:.75rem 0 0;line-height:1.55}.landing-faq-list{flex-direction:column;gap:.65rem;display:flex}.landing-faq-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:0 1.15rem;animation:.55s both landing-rise;box-shadow:0 8px 24px #1c24200a}.landing-faq-item:first-child{animation-delay:40ms}.landing-faq-item:nth-child(2){animation-delay:80ms}.landing-faq-item:nth-child(3){animation-delay:.12s}.landing-faq-item:nth-child(4){animation-delay:.16s}.landing-faq-item:nth-child(5){animation-delay:.2s}.landing-faq-item:nth-child(6){animation-delay:.24s}.landing-faq-item summary{cursor:pointer;font-family:var(--display);letter-spacing:-.01em;padding:1.05rem 1.6rem 1.05rem 0;font-size:1.05rem;font-weight:600;list-style:none;position:relative}.landing-faq-item summary::-webkit-details-marker{display:none}.landing-faq-item summary:after{content:"+";color:var(--ok);font-size:1.25rem;font-weight:500;font-family:var(--font);position:absolute;top:50%;right:0;transform:translateY(-50%)}.landing-faq-item[open] summary:after{content:"–"}.landing-faq-item p{color:var(--muted);max-width:46rem;margin:0;padding:0 0 1.1rem;line-height:1.55}@media (width<=800px){.landing-compare-head,.landing-compare-row{grid-template-columns:1fr;gap:.35rem}.landing-compare-head .landing-compare-label{display:none}.landing-compare-col--quotifi:before,.landing-compare-col--legacy:before{letter-spacing:.05em;text-transform:uppercase;margin-bottom:.2rem;font-size:.72rem;font-weight:700;display:block}.landing-compare-col--quotifi:before{content:"Quotifi";color:var(--ok)}.landing-compare-col--legacy:before{content:"Legacy field software";color:var(--muted)}.landing-compare-head .landing-compare-col--quotifi:before,.landing-compare-head .landing-compare-col--legacy:before{display:none}}.landing-close{text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);max-width:1120px;box-shadow:var(--shadow);margin:0 auto 3rem;padding:clamp(2rem,5vw,3rem) 1.5rem}.landing-close h2{font-family:var(--display);margin:0;font-size:clamp(1.5rem,3vw,2rem)}.landing-close p{max-width:36rem;color:var(--muted);margin:.65rem auto 0}.landing-close .landing-hero-cta{justify-content:center}.landing-contact{max-width:1120px;margin:0 auto 2.5rem;padding:clamp(2rem,5vw,3rem) 1.5rem 0}.landing-contact-panel{border-radius:calc(var(--radius) + 2px);color:#f6f1e7;box-shadow:var(--shadow);background:linear-gradient(145deg,#1c2420f5,#2f5d50e0),#1c2420;border:1px solid #f6f1e71f;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:1.75rem 2.25rem;padding:clamp(1.6rem,4vw,2.4rem);animation:.6s both landing-rise;display:grid}.landing-contact-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#f6f1e79e;margin:0;font-size:.78rem;font-weight:700}.landing-contact-copy h2{font-family:var(--display);letter-spacing:-.02em;color:#fff;margin:.45rem 0 0;font-size:clamp(1.5rem,3vw,2rem)}.landing-contact-copy>p{color:#f6f1e7c7;max-width:34rem;margin:.75rem 0 0;line-height:1.55}.landing-contact-inbox{font-size:.92rem;margin-top:1.1rem!important}.landing-contact-inbox strong{color:#fff;font-weight:600}.landing-contact-form-wrap{min-width:0}.landing-contact-form{flex-direction:column;gap:.85rem;display:flex}.landing-contact-field{flex-direction:column;gap:.35rem;display:flex}.landing-contact-field label{letter-spacing:.04em;text-transform:uppercase;color:#f6f1e7b3;font-size:.8rem;font-weight:600}.landing-contact-field input,.landing-contact-field textarea{color:#f6f1e7;width:100%;font:inherit;background:#0c100e73;border:1px solid #f6f1e729;border-radius:12px;outline:none;padding:.7rem .85rem;font-size:.98rem;transition:border-color .15s,box-shadow .15s}.landing-contact-field textarea{resize:vertical;min-height:8rem}.landing-contact-field input::placeholder,.landing-contact-field textarea::placeholder{color:#f6f1e766}.landing-contact-field input:focus,.landing-contact-field textarea:focus{border-color:#b45309b3;box-shadow:0 0 0 3px #b4530933}.landing-contact-submit{background:var(--accent);width:100%;color:var(--accent-ink);border:none;justify-content:center;margin-top:.25rem}.landing-contact-submit:hover:not(:disabled){filter:brightness(1.06)}.landing-contact-submit:disabled{opacity:.7;cursor:wait}.landing-contact-note{color:#f6f1e78c;margin:0;font-size:.82rem;line-height:1.4}.landing-contact-error{color:#ffd7ce;background:#b43c2838;border:1px solid #ffa08c59;border-radius:10px;margin:0;padding:.65rem .8rem;font-size:.9rem}.landing-contact-success{flex-direction:column;gap:.55rem;padding:.35rem 0;display:flex}.landing-contact-success-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#9dcfb8;margin:0;font-size:.75rem;font-weight:700}.landing-contact-success h3{font-family:var(--display);color:#fff;margin:0;font-size:1.45rem}.landing-contact-success p{color:#f6f1e7c7;margin:0;line-height:1.5}.landing-contact-success-reset{color:#f6f1e7;background:0 0;border-color:#f6f1e747;align-self:flex-start;margin-top:.55rem}.landing-contact-success-reset:hover{background:#f6f1e714}@media (width<=800px){.landing-contact-panel{grid-template-columns:1fr}}.landing-footer{border-top:1px solid var(--line);background:#fcf9f2a6}.landing-footer-inner{grid-template-columns:1.2fr 1.4fr auto;align-items:start;gap:1.25rem;max-width:1120px;margin:0 auto;padding:1.75rem 1.5rem 2rem;display:grid}.landing-footer-brand{font-family:var(--display);margin:0;font-size:1.25rem;font-weight:700}.landing-footer-tag{color:var(--muted);margin:.25rem 0 0;font-size:.9rem}.landing-footer-nav{flex-wrap:wrap;gap:.75rem 1.15rem;display:flex}.landing-footer-nav a{color:var(--muted);font-size:.92rem;text-decoration:none}.landing-footer-nav a:hover{color:var(--ink)}.landing-footer-copy{color:var(--muted);justify-self:end;margin:0;font-size:.85rem}@keyframes landing-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes landing-cta-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes landing-visual-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:none}}@media (width<=900px){.landing-hero{grid-template-columns:1fr;min-height:auto}.landing-hero-copy{max-width:none;padding-bottom:1.5rem}.landing-hero-visual{min-height:20rem}.landing-proposal-sheet{width:min(94%,26rem);height:18.5rem}.landing-feature-grid,.landing-footer-inner{grid-template-columns:1fr}.landing-footer-copy{justify-self:start}}@media (width<=640px){.landing-top-nav{display:none}.landing-hero-headline{max-width:none}.landing-close{margin-left:1rem;margin-right:1rem}}
