@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700&family=Francois+One&family=Roboto+Condensed:wght@400;500;600;700&display=swap');
:root{--green:#479c41;--deep:#1c351a;--paper:#f4f5f1;--line:#e1e5de;--muted:#687165;--ink:#20291f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'Roboto Condensed',Arial,sans-serif}button,input,select,a{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:3px solid #78ba59;outline-offset:3px}header{height:84px;background:#fff;display:flex;align-items:center;gap:30px;padding:0 36px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font:bold 29px 'Francois One',Arial,sans-serif;letter-spacing:-1px;line-height:1}.brand span{color:var(--green)}.brand i{display:block;font:9px Arial,sans-serif;font-style:normal;letter-spacing:2px;margin-top:8px}.header-title{border-left:1px solid var(--line);padding-left:26px;font-size:11px;letter-spacing:2px}.header-title span{display:block;margin-top:6px;font-size:13px;letter-spacing:0;color:var(--muted)}header>.outline{margin-left:auto}.intro{display:flex;align-items:center;justify-content:space-between;padding:30px 36px 27px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#55714b}h1,h2{font-family:'Francois One','Arial Narrow',Arial,sans-serif;font-weight:400}h1{font-size:34px;margin:7px 0}p{color:var(--muted);line-height:1.5;margin:0}.private-badge{border:1px solid #dae1d5;padding:9px 13px;border-radius:20px;color:#62705d;font-size:12px}.private-badge span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:6px}main{display:grid;grid-template-columns:292px minmax(400px,1fr) 266px;margin:0 24px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;min-height:690px}.config{border-right:1px solid var(--line);height:760px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c5cfbf transparent}.config-top{padding:21px 19px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:1.4px;font-weight:700}.text-btn{background:none;border:0;color:#42683b;font-size:12px;padding:5px}.config details{border-bottom:1px solid var(--line)}.config summary{padding:20px;cursor:pointer;display:flex;gap:10px;align-items:center;list-style:none;font-weight:600}.config summary::-webkit-details-marker{display:none}.config summary:after{content:'+';margin-left:auto;color:#788773}.config details[open] summary:after{content:'−'}.step{font-size:11px;color:#749169;border:1px solid #d6e0d0;padding:4px 5px;border-radius:4px}.section-content{padding:0 20px 22px}.section-content>p{font-size:12px;margin:0 0 14px}.field{display:block;margin:14px 0}.field-title{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px;color:#4a5746}.field-title output{font-weight:600;color:#213b1d}select,input[type=number]{border:1px solid #dbe1d6;background:#f9faf7;border-radius:6px;padding:10px;color:#253521;width:100%;font-size:13px}input[type=range]{width:100%;height:4px;accent-color:var(--green);cursor:pointer;margin:10px 0}input[type=checkbox]{accent-color:var(--green)}.dim-input{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dim-input>label{position:relative}.dim-input input{padding-right:28px}.dim-input span{position:absolute;right:10px;top:11px;color:#87907f;font-size:12px}.presets{display:flex;gap:5px;margin:8px 0 18px}.presets button{flex:1;background:white;border:1px solid var(--line);border-radius:5px;font-size:11px;padding:8px 4px;color:#53614c}.presets button:hover{background:#ebf6eb;border-color:#90b984}.check-row{display:flex;gap:7px;align-items:center;font-size:12px;margin-top:13px}.help{font-size:11px;color:#7a8276;line-height:1.45}.studio{background:#e7eae2;position:relative;min-width:0;display:flex;flex-direction:column;height:760px;overflow:hidden;background:radial-gradient(ellipse at 55% 30%,#f0f2ec,#dfe4da)}.toolbar{display:flex;justify-content:space-between;padding:18px;z-index:2}.segmented{display:flex;background:#fff9;padding:4px;border:1px solid #d5ddcd;border-radius:7px;gap:2px}.segmented button{background:none;border:0;border-radius:4px;padding:7px 12px;font-size:12px;color:#63705b}.segmented button.active{background:#1c351a;color:white}.icon-button{width:30px;height:30px;background:#ffffff90;border:1px solid #ccd6c5;border-radius:5px;color:#4e6545;font-size:19px}.scene-title{position:absolute;top:84px;left:25px;pointer-events:none}.scene-title>span{font-size:9px;letter-spacing:2px;color:#6f7d64}.scene-title h2{font-size:23px;margin:6px 0;color:#425839}canvas{width:100%;flex:1;min-height:0;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.scene-footer{display:flex;align-items:center;justify-content:space-between;padding:0 20px 18px;color:#6e7b65;font-size:11px}.scene-footer>div{display:flex;gap:6px}.overlays{display:flex;gap:12px;flex-wrap:wrap;background:#f4f6f0b0;border-top:1px solid #cfd8c7;padding:15px 18px;justify-content:center}.overlays label{font-size:11px;display:flex;align-items:center;gap:4px;cursor:pointer}.preview-note{text-align:center;font-size:10px;color:#7c8774;padding:9px;background:#edf0e8}.summary{padding:25px 20px;display:flex;flex-direction:column;height:760px;overflow:auto}.summary h2{font-size:25px;margin:8px 0 20px}.summary-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #edf0e8;font-size:12px}.summary-row span{color:#798272}.summary-row strong{text-align:right;font-weight:500;max-width:150px}.layout-result{padding:14px;background:#f0f5eb;border:1px solid #dce8d2;border-radius:6px;margin-top:18px}.layout-result b{font-size:12px;color:#3d6331}.layout-result p{font-size:11px;margin-top:6px}.layout-result.warning{background:#fff8e8;border-color:#eee0b7}.layout-result.warning b{color:#94651c}.warn-list{padding-left:15px;font-size:11px;color:#80601d;line-height:1.5;margin:6px 0 0}.summary-actions{display:grid;gap:9px;margin-top:23px}.primary,.outline{display:flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;border-radius:6px;padding:12px 13px;font-size:12px;font-weight:600}.primary{background:var(--deep);border:1px solid var(--deep);color:#fff}.primary:hover{background:#315b2b}.outline{background:#fff;border:1px solid #d6dfd0;color:#3e5335}.outline:hover{background:#f1f6ec}.small{font-size:11px;line-height:1.5;margin-top:16px}.saved{font-size:10px;color:#95a08c;margin-top:15px}footer{padding:23px 30px;display:flex;justify-content:space-between;font-size:11px;color:#8a9582}footer>span:first-child{font-size:9px;letter-spacing:1.5px}footer b{color:#44683a;margin-left:8px}footer a{text-decoration:none;color:#506e44}dialog{border:1px solid var(--line);border-radius:12px;padding:32px;width:620px;max-width:94vw;color:var(--ink);box-shadow:0 25px 100px #17230f55}dialog::backdrop{background:#14201088;backdrop-filter:blur(4px)}dialog h2{font-size:31px;margin:7px 0 15px}dialog>p{font-size:13px}.close{position:absolute;right:16px;top:12px;font-size:26px;border:0;background:none;color:#63705a}pre{font:12px/1.6 'Roboto Condensed',Arial,sans-serif;background:#f3f6ef;white-space:pre-wrap;max-height:40vh;overflow:auto;border:1px solid #e1e8da;border-radius:6px;padding:18px}.modal-actions{display:flex;gap:8px;flex-wrap:wrap}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:#1c351a;color:white;padding:14px 24px;border-radius:8px;box-shadow:0 5px 20px #0003;z-index:20;font-size:13px;transition:transform .2s}#toast.show{transform:translateX(-50%) translateY(0)}body.present main{display:block}body.present .config,body.present .summary,body.present .intro,body.present header,body.present footer{display:none}body.present main{margin:12px}body.present .studio{height:calc(100dvh - 26px)}@media(min-width:1600px){main{grid-template-columns:320px minmax(600px,1fr) 310px}.studio,.config,.summary{height:800px}}@media(max-width:1150px){main{grid-template-columns:280px minmax(350px,1fr)}.summary{grid-column:1/-1;height:auto;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.summary>.eyebrow,.summary>h2{grid-column:1/-1}.summary-actions{align-self:start}.summary>.small,.summary>.saved{display:none}.studio,.config{height:690px}}@media(max-width:720px){header{height:70px;padding:0 18px}.brand{font-size:24px}.header-title,.private-badge{display:none}.intro{padding:25px 20px}h1{font-size:29px}.intro p{font-size:13px}main{margin:0 12px;display:flex;flex-direction:column}.studio{order:-1;height:480px}.scene-title{top:71px}.scene-title h2{font-size:18px}.config{height:auto;max-height:none;border:0}.summary{display:block;height:auto;border-top:1px solid var(--line)}.config-top{padding:15px 20px}.overlays{gap:8px;padding:12px 6px}.overlays label{font-size:10px}.preview-note{font-size:9px}.summary-actions{margin-top:20px}footer>span:nth-child(2){display:none}footer{padding:22px 18px}.scene-footer{padding-bottom:10px}.toolbar{padding:12px}.segmented button{padding:6px 12px}dialog{padding:25px}.summary>.small{display:block}}@media print{body>*{display:none!important}dialog[open]{display:block!important;position:static;width:100%;max-width:100%;box-shadow:none;border:0}dialog form,.modal-actions{display:none}pre{max-height:none;overflow:visible}dialog::backdrop{display:none}}

/* Display the supplied logo at full clarity; hide only its surrounding white margin. */
.brand{position:relative;display:block;flex:0 0 170px;width:170px;height:82px;overflow:hidden;line-height:normal}
.brand img{position:absolute;display:block;width:200px;height:auto;max-width:none;left:-17px;top:-65px}
@media(max-width:720px){.brand{flex-basis:146px;width:146px;height:70px}.brand img{width:174px;left:-15px;top:-58px}}

.foam-product{margin:18px 0 12px;padding:12px;background:#f0f5eb;border:1px solid #dce8d2;border-radius:6px}.foam-product a{font-size:12px;font-weight:600;text-decoration:none;color:#315b2b}.foam-product p{font-size:11px;margin-top:5px}

.equipment-note{margin:12px 0;padding:12px;background:#ebf6eb;border:1px solid #c6dbbf;border-radius:6px}.equipment-note strong,.foam-product strong{font-size:12px;color:#315b2b}.equipment-note p{font-size:11px;margin:6px 0}.equipment-note a,.display-details a{color:#315b2b;font-size:12px}select:disabled{opacity:1;background:#edf1e8;color:#526349;cursor:not-allowed}.presets button:disabled{opacity:.45;cursor:not-allowed}

.throw-distance{font-size:19px;font-weight:600;color:#1c351a;margin:8px 0}.throw-comparison{margin:12px 0;border:1px solid #dce8d2;border-radius:6px;background:#fafcf7}.throw-comparison summary{font-size:12px;padding:12px;display:list-item;list-style-position:inside;cursor:pointer}.throw-comparison table{width:100%;border-collapse:collapse;font-size:11px}.throw-comparison th,.throw-comparison td{text-align:left;padding:9px 8px;border-top:1px solid #e1e8da;vertical-align:top}.throw-comparison th{color:#66735d;font-weight:500}.throw-comparison a{color:#315b2b}.throw-comparison td span{color:#94651c}

/* Component estimate and design-review handoff. */
.component-list{list-style:none;padding:0;margin:0}.component-item{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}.component-item strong{display:block;line-height:1.4}.component-item a{color:#315b2b;text-underline-offset:3px}.component-category{display:block;color:#687165;font-size:10px;text-transform:uppercase;letter-spacing:.7px;margin-bottom:5px}.component-item p,.component-variant{font-size:11px;line-height:1.5;margin-top:6px;display:block}.component-price{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.component-stock{color:#94651c}.estimate-total{background:#eef5e9;border:1px solid #dbe6d3;border-radius:8px;padding:15px}.estimate-total>span{font-size:11px}.estimate-total>strong{display:block;font-size:27px;margin:5px 0;color:#1c351a}.estimate-total p{font-size:11px}.estimate-note{font-size:11px;margin:13px 0;line-height:1.55}.pending-components{margin-top:12px}.pending-components>summary,.layout-details>summary{cursor:pointer;font-size:12px;line-height:1.5;padding:10px 0}.layout-details{margin-top:20px}.compare-launch{width:100%;margin-top:14px}.review-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.review-fields label{display:flex;flex-direction:column;gap:7px;font-size:12px}.review-fields input,.review-fields textarea{font:inherit;padding:10px;border:1px solid var(--line);border-radius:6px;width:100%}.review-wide{grid-column:1/-1}dialog{max-height:90dvh;overflow:auto}#review-components{margin-top:18px}.comparison-scroll{overflow-x:auto;margin-top:20px}.monitor-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5}.monitor-table th,.monitor-table td{padding:12px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.monitor-table thead{background:#eef5e9}.monitor-table small{display:block;font-size:11px;color:var(--muted);margin-top:5px}#compare-dialog{width:780px}#compare-dialog a{color:#315b2b}@media(max-width:1150px) and (min-width:721px){.summary{display:block}.component-list{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.summary-actions{max-width:360px}}@media(max-width:480px){.review-fields{grid-template-columns:1fr}.monitor-table th,.monitor-table td{padding:9px 6px;font-size:11px}dialog{padding:24px 16px}}@media print{.review-fields{display:none}.component-list{display:block}.pending-components{display:none}}

.supply-choice{display:block;margin-top:10px;font-size:11px;color:var(--muted)}.supply-choice select{display:block;margin-top:5px;font-size:12px;padding:8px}.component-price{line-height:1.5}
