/* Project requests extend the existing forest, ivory and yellow identity. */
#quote-fields{padding:0;border:0;margin-bottom:34px}
#quote-fields legend{padding:0;margin-bottom:18px;font:400 27px/1.2 var(--serif)}
#quote-fields>.quote-hint{margin:14px 0;font-size:13px;line-height:1.65}
#quote-items{list-style:none;padding:0;margin:24px 0}
.quote-item{padding:22px 0;border-top:1px solid #17271e55;margin:0}
.quote-item:last-child{border-bottom:1px solid #17271e55}
.quote-row-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.quote-row-heading h3{font:400 22px/1.3 var(--serif);margin:0}
.quote-row-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.quote-row-grid label{display:block;font:400 13px/1.5 var(--sans);min-width:0}
.quote-collection-field{grid-column:1/-1}
.quote-row-grid select,.quote-row-grid input{display:block;width:100%;min-width:0;min-height:48px;margin-top:8px;padding:10px;border:1px solid #17271e77;border-radius:0;background:var(--cream);color:var(--forest);font:400 16px/1.5 var(--sans)}
.quote-remove{background:none;border:0;color:inherit;font:400 13px/1.5 var(--sans);min-height:44px;text-decoration:underline;text-underline-offset:4px;padding:8px}
.quote-unit-note{font-size:12px;line-height:1.6;margin:14px 0 0;grid-column:1/-1}
.quote-delivery{display:block;margin:26px 0 16px}
.selection-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:20px 0}
.selection-actions>a{font:400 13px/1.5 var(--sans);text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.selection-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:11px 15px;background:transparent;color:var(--forest);border:1px solid #17271e88;font:500 13px/1.45 var(--sans);text-align:center;border-radius:0}
.selection-button:hover{background:var(--forest);color:var(--cream)}
.selection-button:disabled{opacity:.5}
.selection-button:focus-visible,.quote-row-grid :focus-visible{outline:2px solid var(--forest);outline-offset:3px}
.sample-selection-actions{align-items:stretch;flex-direction:column;margin:24px 0 12px}
.sample-selection-actions .selection-button{width:100%}
.sample-cart-summary .quote-hint{font-size:12px;line-height:1.7}
.request-items{list-style:none;padding:0;margin:30px 0;max-width:900px}
.request-items>li{padding:20px 0;border-top:1px solid #17271e55;line-height:1.7;overflow-wrap:anywhere}
.request-items>li:last-child{border-bottom:1px solid #17271e55}
.request-items h3{font:400 25px/1.3 var(--serif);margin:0 0 8px}
.request-items p{font:400 15px/1.65 var(--sans);margin:4px 0}
#request-confirmed,#request-not-confirmed{max-width:1000px}
#request-confirmed>p,#request-not-confirmed>p{font:400 16px/1.75 var(--sans);max-width:720px;margin:22px 0}
#request-confirmation-title,#request-not-confirmed h2{font:400 clamp(42px,5vw,68px)/1.1 var(--serif);margin:22px 0}
.request-reference-line strong{font-weight:500;overflow-wrap:anywhere}
.receipt-subheading{font:400 28px/1.3 var(--serif);margin:32px 0 10px}
#sample-order-items{text-align:left;max-width:800px;margin:0 auto 24px}
.receipt-brand{display:none}
.receipt-help{font-size:14px!important}
.selection-dialog{width:min(850px,calc(100vw - 32px));max-width:850px;max-height:calc(100svh - 48px);overflow:auto;padding:clamp(20px,4vw,42px);border:1px solid var(--forest);background:var(--cream);color:var(--forest);font:400 15px/1.7 var(--sans)}
.selection-dialog::backdrop{background:#071c16b8}
.selection-dialog h2{font:400 clamp(30px,4vw,44px)/1.15 var(--serif);margin:12px 0 20px}
.selection-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.selection-close{background:transparent;border:0;color:inherit;min-width:44px;font-size:28px}
.selection-dialog .selection-actions button{background:var(--forest);color:var(--cream);border:1px solid var(--forest);padding:11px 16px;font:400 14px/1.5 var(--sans)}
.selection-dialog .selection-actions button:disabled{opacity:.5}
.selection-dialog .selection-actions button:focus-visible,.selection-close:focus-visible{outline:2px solid var(--forest);outline-offset:3px}
.selection-dialog h3{font:400 22px/1.3 var(--serif);margin:0 0 8px}
.selection-dialog .selection-note{font-size:13px;margin:12px 0;line-height:1.7}
.selection-link-label{display:block;font-size:13px;margin:20px 0 8px}
.selection-dialog button{font-family:var(--sans);min-height:44px}
.selection-dialog input{width:100%;font:400 16px/1.5 var(--sans);padding:12px;border:1px solid #17271e77;background:transparent;color:inherit;min-width:0}
.selection-dialog a{color:inherit;text-underline-offset:4px}
.selection-status{font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.selection-list{list-style:none;padding:0;margin:24px 0}
.selection-list li{display:flex;gap:18px;padding:16px 0;border-top:1px solid #17271e44;align-items:flex-start}
.selection-list img{width:72px;height:72px;object-fit:cover;flex:0 0 72px}
.selection-list li>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:480px){.quote-row-grid{grid-template-columns:1fr}.quote-collection-field{grid-column:auto}.quote-selection-actions{display:grid;grid-template-columns:1fr}.selection-button{width:100%}.selection-actions{gap:10px}.selection-list img{width:56px;height:56px;flex-basis:56px}.selection-dialog{width:calc(100vw - 20px);padding:20px}.request-items>li{font-size:14px}}
@media print{
 body.printing-receipt{height:auto!important;overflow:visible!important;padding:0!important;background:white!important;color:#10271e!important}
 body.printing-receipt>:not(main){display:none!important}
 body.printing-receipt main>section:not([data-print-current]){display:none!important}
 body.printing-receipt main,body.printing-receipt [data-print-current]{display:block!important;margin:0!important;padding:0!important;width:100%!important;min-height:0!important;background:white!important;color:#10271e!important}
 body.printing-receipt [hidden],body.printing-receipt .receipt-actions,body.printing-receipt .cart-continue{display:none!important}
 body.printing-receipt .receipt-brand{display:block;border-bottom:5px solid #10271e;padding-bottom:16px;margin-bottom:28px;font:26px/1.4 var(--sans)}
 body.printing-receipt .receipt-brand span{display:block;font:12px/1.6 var(--sans)}
 body.printing-receipt h2{font-size:32px!important}
 body.printing-receipt li{break-inside:avoid}
 body.printing-receipt img{max-width:88px!important;height:88px!important;object-fit:cover}
 @page{margin:18mm}
}
