.fpp-store{--fpp-ink:#20201e;--fpp-muted:#6d6a63;--fpp-line:#d9d6cf;--fpp-surface:#f7f6f3;--fpp-accent:#9b3f2f;--fpp-button:#20201e;--fpp-button-text:#fff;--fpp-error:#b42318;--fpp-success:#26834a;width:100%;max-width:1120px;margin-inline:auto;color:var(--fpp-ink);font:inherit;line-height:1.5}.fpp-store *,.fpp-store *::before,.fpp-store *::after{box-sizing:border-box}.fpp-product-field{min-width:0;padding:0;margin:0;border:0}.fpp-product-field legend{margin-bottom:10px;padding:0;font-size:16px;font-weight:700;letter-spacing:0}.fpp-product-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px, 100%),1fr));gap:10px}.fpp-product{display:flex;min-width:0;min-height:76px;overflow:hidden;border:1px solid var(--fpp-line);cursor:pointer;background:#fff;transition:border-color .2s,box-shadow .2s}.fpp-product:hover,.fpp-product.is-selected{border-color:var(--fpp-ink);box-shadow:inset 0 -3px 0 var(--fpp-accent)}.fpp-product>input{position:absolute;opacity:0;pointer-events:none}.fpp-product img{width:76px;height:76px;object-fit:cover;flex:0 0 auto}.fpp-product-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:3px;padding:10px 12px}.fpp-product-copy strong{overflow-wrap:anywhere}.fpp-product-copy span{color:var(--fpp-muted);font-size:12px;line-height:1.35}.fpp-order-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:clamp(24px, 4vw, 44px);align-items:start}.fpp-form-main{display:grid;min-width:0;gap:34px}.fpp-item-builder{display:grid;min-width:0;gap:24px;padding:24px;border:1px solid var(--fpp-line);border-top:3px solid var(--fpp-accent);background:#fff}.fpp-paper-field[hidden],.fpp-size-field[hidden]{display:none!important}.fpp-store fieldset{min-width:0;padding:0;margin:0;border:0}.fpp-store legend{width:100%;margin-bottom:14px;padding:0;font-size:18px;font-weight:700;letter-spacing:0}.fpp-size-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px, 100%),1fr));gap:10px}.fpp-size{position:relative;display:block;cursor:pointer}.fpp-size input{position:absolute;opacity:0}.fpp-size span{display:flex;min-height:74px;height:100%;padding:12px;flex-direction:column;justify-content:center;border:1px solid var(--fpp-line);background:#fff;transition:border-color .2s,box-shadow .2s}.fpp-size:hover span{border-color:#99958c}.fpp-size input:checked+span{border-color:var(--fpp-ink);box-shadow:inset 0 -3px 0 var(--fpp-accent)}.fpp-size input:focus-visible+span{outline:2px solid var(--fpp-accent);outline-offset:2px}.fpp-size strong,.fpp-size small{display:block}.fpp-size small{margin-top:3px;color:var(--fpp-muted)}.fpp-custom-size{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:12px;margin-top:16px}.fpp-custom-size[hidden]{display:none}.fpp-custom-size label{flex:1}.fpp-paper-field select{width:100%;height:46px;min-height:46px;padding:8px 34px 8px 12px;border:1px solid var(--fpp-line);border-radius:0;background:#fff;color:var(--fpp-ink);font:inherit}.fpp-row,.fpp-customer-grid{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:18px;align-items:start}.fpp-customer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fpp-store label:not(.fpp-product):not(.fpp-size):not(.fpp-consent):not(.fpp-trap){display:grid;min-width:0;grid-auto-rows:max-content;align-self:start;gap:7px;font-weight:600}.fpp-required{color:var(--fpp-error);font-size:.85em;font-weight:700}.fpp-store input:not([type="radio"]):not([type="checkbox"]),.fpp-store textarea{display:block;width:100%;height:46px;min-height:46px;padding:10px 12px;border:1px solid var(--fpp-line);border-radius:0;background:#fff;color:var(--fpp-ink);font:inherit;line-height:1.4}.fpp-store textarea{height:auto;min-height:116px;resize:vertical}.fpp-store input:focus,.fpp-store textarea:focus{outline:2px solid var(--fpp-accent);outline-offset:1px}.fpp-file-group{min-width:0;align-self:start}.fpp-file-field{position:relative;cursor:pointer}.fpp-file-field .fpp-photos{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.fpp-upload-control{display:flex;min-width:0;min-height:48px;align-items:stretch;overflow:hidden;border:1px solid var(--fpp-line);background:#fff;transition:border-color .2s,box-shadow .2s}.fpp-upload-button{display:inline-flex;min-height:46px;padding:9px 14px;flex:0 0 auto;align-items:center;background:var(--fpp-accent);color:#fff;font-weight:700}.fpp-upload-status{overflow:hidden;min-width:0;padding:12px 14px;color:var(--fpp-muted);font-weight:400;text-overflow:ellipsis;white-space:nowrap}.fpp-file-field:hover .fpp-upload-control{border-color:var(--fpp-accent)}.fpp-photos:focus-visible+.fpp-upload-control{outline:2px solid var(--fpp-accent);outline-offset:2px}.fpp-file-summary{color:var(--fpp-muted);font-weight:400}.fpp-customer-grid input,.fpp-form-main textarea{text-transform:none!important;letter-spacing:0!important;font-variant:normal}.fpp-photo-previews{display:grid;grid-template-columns:repeat(auto-fill,96px);gap:10px;margin-top:12px}.fpp-photo-previews:empty{display:none}.fpp-photo-preview{position:relative;min-width:0;margin:0;border:1px solid var(--fpp-line);background:#fff}.fpp-photo-preview img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#eceae5}.fpp-photo-preview figcaption{overflow:hidden;padding:7px;color:var(--fpp-muted);font-size:11px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.fpp-photo-preview button{position:absolute;top:4px;right:4px;display:grid;width:24px;height:24px;padding:0;place-items:center;border:1px solid #fff;border-radius:50%;background:rgb(32 32 30 / .9);color:#fff;font:700 18px/1 sans-serif;cursor:pointer}.fpp-photo-preview button:hover,.fpp-photo-preview button:focus-visible{background:#a5271b;outline:2px solid #fff;outline-offset:1px}.fpp-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5}.fpp-consent input{margin-top:3px}.fpp-summary{position:sticky;top:0;min-width:0;padding:24px;border-top:3px solid var(--fpp-accent);background:var(--fpp-surface)}.fpp-summary h3{margin:0 0 14px;font-size:18px;letter-spacing:0}.fpp-cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:16px 0;border-bottom:1px solid var(--fpp-line)}.fpp-cart-item:first-child{border-top:1px solid var(--fpp-line)}.fpp-cart-item small{display:block;margin-top:4px;color:var(--fpp-muted);line-height:1.4}.fpp-cart-actions{grid-column:1 / -1;display:flex;gap:14px}.fpp-cart-actions button,.fpp-cancel-edit{padding:0;border:0;background:#fff0;color:var(--fpp-accent);font:inherit;text-decoration:underline;cursor:pointer}.fpp-cart-actions button:last-child{color:#a5271b}.fpp-empty-cart{margin:0 0 18px;color:var(--fpp-muted)}.fpp-cart-total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-top:18px}.fpp-builder-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px}.fpp-add-item{display:inline-flex;min-height:44px;padding:9px 18px;align-items:center;justify-content:center;gap:9px;border:1px solid var(--fpp-ink);border-radius:0;background:#fff;color:var(--fpp-ink);font:inherit;font-weight:700;cursor:pointer}.fpp-add-icon{display:grid;width:20px;height:20px;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:18px;font-weight:400;line-height:1}.fpp-add-item:hover{background:var(--fpp-ink);color:#fff}.fpp-builder-message{color:var(--fpp-muted);font-size:14px}.fpp-builder-message:empty{display:none}.fpp-summary>span,.fpp-summary>small{display:block;color:var(--fpp-muted)}.fpp-total{display:block;margin:8px 0;font-size:24px;letter-spacing:0;white-space:nowrap}.fpp-submit{width:100%;min-height:48px;margin-top:20px;border:1px solid var(--fpp-button);border-radius:0;background:var(--fpp-button);color:var(--fpp-button-text);font:inherit;font-weight:700;cursor:pointer}.fpp-submit:hover{background:var(--fpp-accent);border-color:var(--fpp-accent)}.fpp-submit:disabled{cursor:wait;opacity:.65}.fpp-message{margin-top:12px;font-size:14px;line-height:1.4}.fpp-message.is-success{padding:12px;border:1px solid var(--fpp-success);background:#edf8f1;color:var(--fpp-success);font-weight:600}.fpp-message:focus{outline:2px solid var(--fpp-accent);outline-offset:2px}.fpp-message.is-error{color:#a5271b}.fpp-store .is-invalid>input:not([type="radio"]):not([type="checkbox"]),.fpp-store .is-invalid>select{border-color:var(--fpp-error);box-shadow:0 0 0 1px var(--fpp-error)}.fpp-file-group.is-invalid .fpp-upload-control{border-color:var(--fpp-error);box-shadow:0 0 0 1px var(--fpp-error)}.fpp-size-field.is-invalid .fpp-size-options,.fpp-custom-size.is-invalid,.fpp-file-group.is-invalid{padding:10px;border:1px solid var(--fpp-error)}.fpp-custom-size.is-invalid{flex-wrap:wrap}.fpp-custom-size.is-invalid .fpp-field-error{flex-basis:100%}.fpp-consent.is-invalid{flex-wrap:wrap;padding:10px;border:1px solid var(--fpp-error)}.fpp-consent.is-invalid input{outline:2px solid var(--fpp-error);outline-offset:2px}.fpp-summary.is-invalid{box-shadow:inset 0 0 0 2px var(--fpp-error)}.fpp-field-error{display:block;width:100%;margin-top:2px;color:var(--fpp-error);font-size:13px;font-weight:600;line-height:1.4}.fpp-store .is-invalid>span:first-child,.fpp-store .is-invalid>legend{color:var(--fpp-error)}.fpp-confirmation-modal[hidden]{display:none!important}.fpp-confirmation-modal,.fpp-confirmation-modal *,.fpp-confirmation-modal *::before,.fpp-confirmation-modal *::after{box-sizing:border-box}.fpp-confirmation-modal{position:fixed;z-index:999999;inset:0;display:grid;padding:20px;place-items:center;color:var(--fpp-ink);font:inherit}.fpp-modal-backdrop{position:absolute;inset:0;background:rgb(20 20 18 / .64)}.fpp-modal-panel{position:relative;width:min(440px, 100%);padding:36px 32px 30px;border-top:4px solid var(--fpp-success);border-radius:4px;background:#fff;box-shadow:0 22px 70px rgb(0 0 0 / .28);text-align:center}.fpp-modal-panel h2{margin:12px 0 8px;color:var(--fpp-ink);font-size:26px;letter-spacing:0}.fpp-modal-message{margin:0;color:var(--fpp-muted);font-size:16px;line-height:1.6}.fpp-modal-icon{display:grid;width:52px;height:52px;margin-inline:auto;place-items:center;border:2px solid var(--fpp-success);border-radius:50%;color:var(--fpp-success);font-size:28px;font-weight:700}.fpp-modal-x{position:absolute;top:10px;right:10px;display:grid;width:34px;height:34px;padding:0;place-items:center;border:0;border-radius:50%;background:#fff0;color:var(--fpp-muted);font:400 24px/1 sans-serif;cursor:pointer}.fpp-modal-x:hover,.fpp-modal-x:focus-visible{background:var(--fpp-surface);color:var(--fpp-ink);outline:2px solid var(--fpp-accent);outline-offset:1px}.fpp-modal-close{min-width:130px;min-height:44px;margin-top:24px;padding:9px 20px;border:1px solid var(--fpp-ink);border-radius:0;background:var(--fpp-ink);color:#fff;font:inherit;font-weight:700;cursor:pointer}.fpp-modal-close:hover,.fpp-modal-close:focus-visible{border-color:var(--fpp-accent);background:var(--fpp-accent);outline:2px solid var(--fpp-accent);outline-offset:2px}body.fpp-modal-open{overflow:hidden}.fpp-trap{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}@media (max-width:980px){.fpp-order-form{grid-template-columns:1fr;gap:28px}.fpp-summary{position:static}}@media (max-width:700px){.fpp-customer-grid{grid-template-columns:1fr}.fpp-item-builder{padding:20px}}@media (max-width:520px){.fpp-product-list,.fpp-size-options,.fpp-row{grid-template-columns:1fr}.fpp-custom-size{grid-template-columns:1fr;align-items:start}.fpp-custom-size>span{display:none}.fpp-item-builder,.fpp-summary{padding:18px}.fpp-photo-previews{grid-template-columns:repeat(auto-fill,minmax(82px,1fr))}.fpp-upload-control{display:grid}.fpp-upload-button{justify-content:center}.fpp-upload-status{text-align:center}}@media (max-width:420px){.fpp-confirmation-modal{padding:14px}.fpp-modal-panel{padding:34px 20px 24px}.fpp-modal-panel h2{font-size:22px}}