@font-face{font-family:system-ui;src:local('Segoe UI')}*{box-sizing:border-box}body{margin:0;background:#f6f5ef;color:#1b392e;font-family:system-ui,-apple-system,sans-serif;font-size:16px}button,input,select{font:inherit}button,a,label{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #88a651;outline-offset:3px}[hidden]{display:none!important}.top{height:92px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce0d6;background:#fafaf6}.brand{display:flex;align-items:center;gap:13px;font-size:31px;font-weight:750;letter-spacing:-1.5px}.logo{height:28px;width:28px;border:4px solid #244d36;transform:rotate(-5deg);position:relative}.logo:after{content:'';position:absolute;height:8px;width:8px;right:-6px;top:-6px;background:#acc777}.brand-note{font-size:10px;letter-spacing:1.5px;font-weight:600;color:#6c796f;margin-left:20px}.top-right{display:flex;gap:16px;align-items:center}.pill{font-size:12px;background:#e9edde;border-radius:30px;padding:8px 14px}.text-button{border:0;background:none;color:#28513a;padding:10px 4px;font-weight:600;font-size:14px}.text-button:hover{text-decoration:underline}main{max-width:1240px;margin:auto;padding:0 44px;min-height:calc(100vh - 169px)}.steps{display:flex;align-items:center;gap:14px;max-width:540px;margin:34px 0 62px;font-size:13px;color:#899289}.steps span{display:flex;align-items:center;gap:8px;white-space:nowrap}.steps b{border:1px solid #cbd1c3;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-size:11px}.steps .active{color:#25482f;font-weight:650}.steps .active b{background:#21462f;color:#fff;border-color:#21462f}.steps i{height:1px;background:#d8ddcf;width:45px}.capture{display:grid;grid-template-columns:1.15fr 1fr;gap:76px;align-items:center;padding-bottom:75px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.8px;color:#687963}.intro h1,h1{font-size:62px;font-weight:550;letter-spacing:-3px;line-height:1.05;margin:20px 0 24px}.intro h1 span,h1 span{color:#83a14f}.intro>p{font-size:18px;line-height:1.7;max-width:425px;color:#667365}.mini-rule{margin-top:50px;border-top:1px solid #dadfd2;padding-top:25px;display:flex;gap:19px;align-items:center}.mini-rule strong{font-size:13px;font-weight:650}.mini-rule small{display:block;margin-top:6px;color:#7c877b;font-size:12px}.frame-symbol{display:block;width:40px;height:48px;border:3px solid #91a57a;position:relative;flex-shrink:0}.frame-symbol:before,.frame-symbol:after{content:'';position:absolute;height:2px;background:#91a57a;left:0;right:0;top:15px}.frame-symbol:after{top:29px}.upload-panel{padding:34px;background:#fff;border:1px solid #dfe4d5;border-radius:18px;box-shadow:0 20px 50px #2b462008;text-align:center}.camera{font-size:54px;line-height:1;background:#edf2e3;color:#5d793c;border-radius:18px;width:80px;height:80px;margin:0 auto 24px;display:grid;place-items:center}.upload-panel h2{font-size:21px;margin:0 0 12px;font-weight:650;letter-spacing:-.6px}.upload-panel>p{font-size:13px;color:#788271;line-height:1.6}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;border-radius:9px;padding:14px 20px;font-size:14px;font-weight:650;min-height:48px;border:1px solid transparent;gap:12px}.primary{background:#244c35;color:#fff;box-shadow:0 2px 2px #00000008}.primary:hover{background:#173b27}.secondary{background:#f9faf6;border-color:#d6ddcc;color:#2e4d34}.secondary:hover{background:#edf2e6}.file-button{display:flex;width:100%;cursor:pointer;margin-top:12px}.file-button input{position:absolute;width:1px;height:1px;opacity:0}.file-button:focus-within{outline:3px solid #88a651}.file-note{font-size:11px!important}.divider{height:1px;background:#e9ece3;margin:20px 0 10px}.upload-panel .text-button{display:block;margin:0 auto}.connection-note{font-size:11px!important;min-height:16px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:28px}.section-heading h1{font-size:44px;margin:12px 0 16px;letter-spacing:-1.8px}.section-heading p{font-size:14px;color:#74816e;line-height:1.6}.section-heading>button{flex-shrink:0}.review-layout{display:grid;grid-template-columns:275px 1fr;gap:36px;margin-bottom:70px}.photo-box{background:white;padding:12px;border-radius:12px;border:1px solid #dfe4d5}.photo-box img{width:100%;max-height:400px;object-fit:contain;cursor:zoom-in}.photo-box small{display:block;font-size:11px;color:#7b8575;margin-top:10px}.aside-note{padding:25px 4px;font-size:14px;line-height:1.6}.aside-note small{color:#7b8575;font-size:12px}.title-label{display:block;font-size:12px;font-weight:650;margin-bottom:20px}.title-label input{display:block;width:100%;margin-top:8px}.title-label input,input[type=number],select{border:1px solid #cfd8c5;background:#fff;border-radius:7px;padding:11px;color:#243e2d;min-height:44px}.row-card{background:white;border:1px solid #dce2d3;border-radius:11px;padding:16px;margin-bottom:12px}.row-card.needs{border-left:4px solid #d0a34f}.row-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:11px;color:#7b8774}.row-top button{padding:0;border:0;background:none;font-size:12px;color:#95644c}.fields{display:grid;grid-template-columns:1fr 1fr .8fr;gap:12px}.fields label{font-size:11px;color:#687963}.fields input{width:100%;margin-top:5px}.row-question{padding:10px 12px;background:#fbf5e8;border-radius:6px;font-size:12px;line-height:1.5;margin:12px 0}.construction{display:block;font-size:12px;margin-top:13px;color:#6e7c66}.construction select{display:block;margin-top:8px;width:100%;font-size:12px}.row-check{display:flex;align-items:flex-start;gap:8px;font-size:12px;margin-top:15px;color:#36583e}input[type=checkbox]{width:18px;height:18px;accent-color:#315b3a;flex-shrink:0;margin:0}.warning{background:#fbefda;border:1px solid #eed8ac;border-radius:8px;font-size:13px;padding:13px;margin-bottom:12px;line-height:1.5}.final-check{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6;margin:24px 0}.wide{width:100%}.result-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;margin-bottom:60px}.cut-card{border:1px solid #dce2d3;border-radius:12px;overflow:hidden;background:#fff}.table-heading{padding:23px;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e4e8db;font-size:14px}.table-heading span{color:#85907e;font-size:11px}table{width:100%;border-collapse:collapse;font-size:15px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#6f7e66;padding:14px 24px}td{padding:10px 24px;border-top:1px solid #edf0e7}td:last-child,th:last-child{text-align:right}tbody tr:nth-child(odd){background:#f6f8f2}tbody tr.transverse{color:#2b683a}tfoot{background:#dfeacd;font-weight:700}tfoot td{padding:17px 24px}.table-note{font-size:12px;line-height:1.6;color:#7b8773;padding:8px 24px}.result-actions{padding:24px 0}.result-actions h2{font-size:31px;line-height:1.15;letter-spacing:-1px;font-weight:550}.result-actions p{color:#6e7f64;font-size:14px;line-height:1.7}.result-actions .secondary{margin-top:10px}.ready-symbol{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#dfebce;color:#3d683c;font-size:26px}details{border-top:1px solid #d9dfcf;margin-top:25px;padding-top:20px;font-size:13px}summary{cursor:pointer;font-weight:650}#breakdown p{font-size:12px;border-bottom:1px solid #e0e5d8;padding:7px 0}.busy{position:fixed;inset:0;background:#f6f5eff5;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px}.busy h2{font-weight:550}.busy p{font-size:14px;color:#7d8973}.spinner{width:40px;height:40px;border:3px solid #dde5ce;border-top-color:#386037;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.message{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:25;padding:18px 24px;border-radius:10px;background:#763f2b;color:#fff;box-shadow:0 10px 40px #0002;max-width:650px;width:calc(100% - 40px);font-size:14px;line-height:1.6;cursor:pointer}.welcome{padding:95px 0;max-width:650px}.welcome p{font-size:18px;line-height:1.7;color:#748069}.welcome button{margin-top:20px}footer{border-top:1px solid #dce0d6;padding:25px 5%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#88917f}
@media(max-width:850px){main{padding:0 24px}.brand-note{display:none}.capture{gap:30px}.intro h1{font-size:49px}.review-layout{grid-template-columns:200px 1fr;gap:24px}.result-layout{gap:30px}.intro>p{font-size:16px}.upload-panel{padding:25px}}
@media(max-width:620px){.top{height:74px;padding:0 22px}.brand{font-size:28px}.pill{font-size:10px}.top-right{gap:8px}main{padding:0 20px}.steps{gap:9px;margin:25px 0 35px;font-size:11px}.steps i{width:22px}.steps b{width:22px;height:22px}.capture{grid-template-columns:1fr;gap:24px;padding-bottom:40px}.intro h1{font-size:46px;margin-top:15px;margin-bottom:15px}.intro>p{font-size:15px;line-height:1.6}.eyebrow{font-size:9px}.mini-rule{display:none}.upload-panel{padding:25px}.camera{height:56px;width:56px;font-size:40px;margin-bottom:16px}.section-heading{display:block}.section-heading h1{font-size:35px}.section-heading>button{margin-bottom:8px}.review-layout,.result-layout{grid-template-columns:1fr;gap:18px}.review-layout aside{display:flex;gap:15px}.photo-box{width:125px;flex-shrink:0;align-self:flex-start}.photo-box img{max-height:170px}.aside-note{padding:0;font-size:12px}.aside-note small{font-size:11px}.fields{gap:8px}.fields input{padding:10px 8px}.row-card{padding:13px}.result-actions{padding-top:8px}.result-actions h2{font-size:28px}footer{font-size:8px;padding:20px;gap:12px}.welcome{padding:50px 0}.welcome h1{font-size:43px}.welcome p{font-size:15px}}
