.quotation-page{width:100%;max-width:100vw;min-height:100svh;padding:clamp(8.5rem,14vw,12rem) clamp(1.25rem,5vw,5rem) clamp(5rem,9vw,8rem);overflow:hidden}.quotation-intro,.quotation-workspace{width:min(100%,1280px);max-width:100%;margin-inline:auto}.quotation-intro{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.45fr) minmax(18rem,.55fr);align-items:end;gap:clamp(2rem,7vw,7rem);padding-bottom:clamp(2.5rem,5vw,4.5rem);display:grid}.quotation-intro>*{min-width:0}.quotation-kicker,.quotation-summary>p{color:var(--green-soft);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;font-size:.74rem;font-weight:750}.quotation-intro h1{letter-spacing:-.065em;max-width:14ch;margin-bottom:0;font-size:clamp(2.8rem,6.4vw,6.4rem);font-weight:550;line-height:.98}.quotation-intro>p{color:var(--muted);margin-bottom:0;font-size:clamp(1rem,1.35vw,1.15rem)}.quotation-workspace{grid-template-columns:minmax(0,1fr) minmax(19rem,.38fr);gap:clamp(2.5rem,6vw,6rem);padding-top:clamp(3rem,6vw,5.5rem);display:grid}.quotation-form{gap:3.5rem;min-width:0;display:grid}.quotation-workspace>*,.quotation-rooms,.quotation-room{min-width:0}.quotation-form fieldset{border:0;min-width:0;margin:0;padding:0}.quotation-form legend{border-bottom:1px solid var(--line);width:100%;margin-bottom:1.5rem;padding-bottom:.8rem;font-size:1.25rem;font-weight:700}.quotation-lines{gap:1.25rem;display:grid}.quotation-line{border:1px solid var(--line);background:#f8f7f261;padding:clamp(1.1rem,2.5vw,1.75rem);transition:opacity .18s}.quotation-line-disabled{opacity:.48}.quotation-line-heading,.quotation-line-heading label{align-items:center;display:flex}.quotation-line-heading{justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.quotation-line-heading label{gap:.65rem}.quotation-line-heading input{accent-color:var(--green)}.quotation-line-heading output{color:var(--green);white-space:nowrap;font-size:1.05rem;font-weight:750}.quotation-line-fields{grid-template-columns:minmax(7rem,.45fr) 1fr 1fr;gap:.75rem;display:grid}.quotation-line-fields label{color:var(--muted);gap:.45rem;font-size:.75rem;font-weight:650;display:grid}.quotation-line-fields input,.quotation-line-fields select{border:1px solid var(--line);width:100%;min-height:3rem;color:var(--ink);background:var(--paper);font:inherit;border-radius:0;padding:.65rem .8rem}.quotation-line details{color:var(--muted);margin-top:1rem;font-size:.8rem}.quotation-line summary{cursor:pointer;width:fit-content;font-weight:700}.quotation-scope{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;display:grid}.quotation-scope ul{margin:.4rem 0 0;padding-left:1.1rem}.quotation-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.quotation-fields label{color:var(--muted);gap:.55rem;font-size:.8rem;font-weight:650;display:grid}.quotation-fields select,.quotation-fields input{border:1px solid var(--line);width:100%;min-height:3.25rem;color:var(--ink);font:inherit;background:0 0;border-radius:0;outline:0;padding:.75rem .9rem}.quotation-fields select:focus,.quotation-fields input:focus{border-color:var(--green);box-shadow:0 0 0 2px #0d2a201f}.input-with-unit{position:relative}.input-with-unit>span{color:var(--muted);position:absolute;top:50%;right:.9rem;transform:translateY(-50%)}.room-options{flex-wrap:wrap;gap:.65rem;display:flex}.room-options label{border:1px solid var(--line);cursor:pointer;align-items:center;gap:.65rem;padding:.7rem .9rem;display:flex}.room-options input{accent-color:var(--green)}.quotation-summary{color:var(--white);background:var(--green);align-self:start;padding:clamp(1.5rem,3vw,2.25rem);position:sticky;top:1.5rem}.quotation-summary>p{color:var(--lime)}.quotation-summary strong,.quotation-summary>span{display:block}.quotation-summary strong{margin-bottom:1rem;font-size:clamp(1.6rem,3vw,2.6rem);font-weight:550;line-height:1.15}.quotation-summary>span{color:#f8f7f2b8;font-size:.88rem}.quotation-summary a{border-top:1px solid #f8f7f23d;justify-content:space-between;gap:1rem;margin-top:2.5rem;padding-top:1rem;font-size:.84rem;font-weight:700;display:flex}.quotation-summary>button,.quotation-dialog-submit{border:1px solid var(--lime);width:100%;color:var(--green);background:var(--lime);font:inherit;cursor:pointer;border-radius:0;margin-top:2rem;padding:.9rem 1rem;font-size:.84rem;font-weight:750}.quotation-dialog{width:min(100% - 2rem,34rem);max-height:calc(100svh - 2rem);color:var(--ink);background:var(--paper);border:0;padding:0}.quotation-dialog::backdrop{background:#0d2a20b8}.quotation-dialog form{gap:1rem;padding:clamp(1.4rem,4vw,2.5rem);display:grid}.quotation-dialog-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.quotation-dialog-heading p{color:var(--green-soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.4rem;font-size:.72rem;font-weight:750}.quotation-dialog h2{margin-bottom:0;font-size:clamp(1.6rem,5vw,2.25rem);line-height:1.12}.quotation-dialog-heading button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:1.75rem}.quotation-dialog form>p{color:var(--muted);margin-bottom:.5rem;font-size:.86rem}.quotation-dialog form>label{color:var(--muted);gap:.4rem;font-size:.76rem;font-weight:700;display:grid}.quotation-dialog input{border:1px solid var(--line);min-height:3.1rem;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:.7rem .85rem}.quotation-dialog-submit{color:var(--white);background:var(--green);margin-top:.5rem}.quotation-dialog-submit:disabled{cursor:wait;opacity:.6}.quotation-save-status[data-success=true]{color:var(--green-soft);font-weight:750}@media (width<=900px){.quotation-intro,.quotation-workspace{grid-template-columns:1fr}.quotation-intro{gap:1.5rem}.quotation-fields{grid-template-columns:1fr}.quotation-line-fields{grid-template-columns:1fr 1fr}.quotation-line-fields label:first-child{grid-column:1/-1}.quotation-summary{position:static}}@media (width<=560px){.quotation-page{padding-inline:1rem}.quotation-intro h1{overflow-wrap:anywhere;max-width:100%;font-size:clamp(2.55rem,11.5vw,3.5rem)}.quotation-intro,.quotation-workspace{width:100%;display:block}.quotation-intro>p{margin-top:1.5rem}.quotation-summary{margin-top:2.5rem}.room-options{grid-template-columns:1fr 1fr;display:grid}.quotation-line-heading{flex-direction:column;align-items:flex-start}.quotation-line-fields,.quotation-scope{grid-template-columns:1fr}.quotation-line-fields label:first-child{grid-column:auto}}
