:root{--ink:#252322;--muted:#8c8580;--line:#ded8d0;--champagne:#bd9871;--paper:#fcf9f5;--light:#fffdfa;--shadow:0 6px 16px rgba(43,32,22,.055),inset 0 1px 0 rgba(255,255,255,.85)}
*{box-sizing:border-box}body{margin:0;font-family:Georgia,'Times New Roman',serif;color:var(--ink);background:#282522 url('latex-bg.webp') center/cover fixed}button,input,select,textarea{font:inherit}button{cursor:pointer}input,textarea,select{min-width:0}
.layout{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px 20px}.atelier{width:min(100%,440px);background:linear-gradient(165deg,#fffefd 0%,#fcf9f5 58%,#f9f5ef 100%);border:1px solid rgba(215,198,173,.9);border-radius:34px;box-shadow:0 24px 80px rgba(0,0,0,.42),0 2px 5px rgba(0,0,0,.15);padding:30px 27px 20px}.brand-header{text-align:center}.brand-logo{display:block;width:min(100%,288px);height:auto;margin:0 auto 0}.brand-motto{font-size:8px;letter-spacing:2.35px;margin:-2px 0 14px;color:#77716b}.ornament-line{height:15px;display:flex;align-items:center;gap:11px;color:#a49b94;justify-content:center;margin:2px 0 10px}.ornament-line::before,.ornament-line::after{content:'';height:1px;background:linear-gradient(90deg,transparent,#c8c0b8);flex:1}.ornament-line::after{background:linear-gradient(90deg,#c8c0b8,transparent)}.ornament-line span{font-size:23px;line-height:1}.brand-header h1{font-weight:400;font-size:34px;letter-spacing:-.95px;line-height:1.1;margin:4px 0 10px}.kicker{color:#6b655e;font-size:8.5px;letter-spacing:3px;margin:0 0 21px}
.steps{display:flex;align-items:flex-start;gap:0;margin:0 23px 21px}.step{width:62px;flex-shrink:0;display:flex;align-items:center;flex-direction:column;gap:8px}.step-circle{width:37px;height:37px;display:grid;place-items:center;border-radius:50%;border:1px solid #d0c8c0;background:linear-gradient(145deg,#fff,#f5f2ee);font-size:24px;box-shadow:0 2px 8px #0000000a;transition:background .2s ease,color .2s ease}.step.is-current .step-circle,.step.is-complete .step-circle{background:radial-gradient(circle at 35% 15%,#47403b,#1b1919 73%);color:#fff;border:1px solid #af855f;box-shadow:0 0 0 2px #d6bea5,0 2px 8px #0004}.step-name{font-size:11px;white-space:nowrap}.step-connector{height:1px;background:linear-gradient(to right,#afaaa5,#c8c0b8);flex:1;margin-top:19px;min-width:12px}
.form-step{display:grid;gap:11px}.form-step[hidden]{display:none}.field{display:flex;align-items:stretch;min-height:62px;background:linear-gradient(128deg,#fdfbf9,#f9f6f2);border:1px solid #ddd4cc;border-radius:14px;box-shadow:var(--shadow);overflow:hidden;transition:border-color .15s,box-shadow .15s}.field:focus-within{border-color:#ad855f;box-shadow:0 0 0 2px #d9b89a55,var(--shadow)}.field-icon{width:54px;min-width:54px;display:flex;justify-content:center;align-items:center;border-right:1px solid #e2dad3;margin:7px 0}.field-icon img{width:23px;height:23px;object-fit:contain;opacity:.92}.field-content{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:center;padding:10px 13px}.field-content label{font-size:14px;line-height:1.35;color:#282321}.required{color:#926c51}.field input,.field select,.field textarea{display:block;width:100%;border:none;outline:none;background:transparent;border-radius:0;padding:2px 0 0;color:#322e2a;font-size:14px;line-height:1.4}.field input::placeholder,.field textarea::placeholder{color:#97918b;opacity:1}.field select:invalid{color:#97918b}.name-pair{display:flex;gap:10px}.name-pair input{width:50%}.name-pair input+input{border-left:1px solid #e6dfd8;padding-left:10px}.field-multiline .field-icon{align-items:flex-start;padding-top:13px}.field textarea{resize:vertical;min-height:74px}.contact-choice,.damage-choices{border:0;margin:1px 0 0;padding:0;min-width:0}.contact-choice legend,.damage-choices legend{font-size:14px;float:none;margin:0 0 9px}.choice-row{display:flex;gap:6px}.choice-row label{flex:1}.choice-row input,.chips input{position:absolute;opacity:0;pointer-events:none}.choice-row span,.chips span{display:block;text-align:center;padding:10px 4px;border:1px solid #ded5cb;border-radius:22px;font-size:12px;background:#fffdfa;cursor:pointer;transition:background .15s}.choice-row input:checked+span,.chips input:checked+span{border-color:#b69878;background:#f2eae0;box-shadow:inset 0 0 0 1px #d5b89b}.choice-row input:focus-visible+span,.chips input:focus-visible+span{outline:2px solid #1b1919;outline-offset:2px}.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.chips span{font-size:11px}.field-help{font-size:11px;color:#8b8278;margin:2px 0 10px}.upload-field .field-icon{align-items:flex-start;padding-top:15px}.upload-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.upload-tile{min-height:83px;border:1px dashed #bfb4a9;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;font-size:10px!important;cursor:pointer;padding:6px 3px}.upload-plus{height:32px;width:32px;display:grid;place-items:center;border-radius:50%;border:1px solid #c9c0b8;background:linear-gradient(145deg,#fff,#f2efec);box-shadow:0 2px 6px #00000017;font-family:Arial,sans-serif;font-size:24px;font-weight:300;color:#332f2b}.file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.file-input:focus-visible+.upload-tiles{outline:2px solid #000}.preview-images{display:flex;gap:7px;margin-top:7px;flex-wrap:wrap}.preview-images img{width:55px;height:55px;object-fit:cover;border:1px solid #c4ada0;border-radius:7px}#photo-status{color:#887f76;font-size:11px}.zip-city{display:grid;grid-template-columns:1fr 1.5fr;gap:8px}.field.simple .field-content{padding:10px 12px}.privacy{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;color:#5d554c;margin-top:5px}.privacy input{accent-color:#302925;margin-top:3px;min-width:15px;min-height:15px}.privacy a{color:#5d412b;text-decoration:underline}.form-navigation{display:flex;flex-direction:column-reverse;gap:12px;margin-top:18px}.back{border:1px solid #dfd4c9;background:transparent;color:#40392f;border-radius:30px;padding:8px 22px;align-self:flex-end}.back[hidden]{display:none}.next{position:relative;width:100%;min-height:60px;border:1px solid #b48c64;outline:2px solid #e3ccb1;outline-offset:2px;border-radius:40px;background:radial-gradient(circle at 30% -20%,#555052 0%,#252224 50%,#0e0c0e 100%);color:#fff;font-size:26px;text-align:center;box-shadow:0 10px 18px #5b412d32,inset 0 1px #fff5;text-shadow:0 1px 2px #0009;display:flex;align-items:center;justify-content:center}.next:focus-visible,.back:focus-visible{outline:2px solid #513d2d;outline-offset:4px}.arrow-medallion{position:absolute;right:3px;width:50px;height:50px;border-radius:50%;border:1px solid #c59c73;display:grid;place-items:center;box-shadow:0 0 0 2px #cfae87,inset 0 1px #ffffff44,0 0 12px #bb8e5c88;background:radial-gradient(circle at 35% 20%,#484244,#141214)}.arrow-medallion img{width:23px;height:23px;filter:brightness(0) invert(1)}.privacy-note{font-size:11px;display:flex;align-items:center;justify-content:center;gap:7px;margin:19px 0 1px;color:#716963;text-align:center}.privacy-note img{width:14px;opacity:.7}.notice{margin:8px 0 0;font-size:13px;line-height:1.5;text-align:center;color:#8a4138}.notice:empty{display:none}.prototype-label{margin:20px 0 0;color:#ded5c8;font-family:system-ui,-apple-system,sans-serif;letter-spacing:1.2px;font-size:10px;text-align:center}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:500px){body{background:#fffefa}.layout{padding:0}.atelier{width:100%;min-height:100svh;padding:28px 19px calc(25px + env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}.brand-logo{width:min(100%,275px)}.brand-header h1{font-size:30px}.steps{margin:0 10px 23px}.prototype-label{margin:0;padding:12px 8px;background:#f7f0e9;color:#816c5d;width:100%;font-size:9px}}
@media (max-width:355px){.atelier{padding-left:14px;padding-right:14px}.step{width:55px}.step-name{font-size:10px}.field-icon{width:47px;min-width:47px}.field-content{padding:9px 10px}.brand-header h1{font-size:28px}.kicker{letter-spacing:1.8px}.next{font-size:23px}.choice-row span{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* V2: approved ivory / champagne controls. All interactive, not images. */
.contact-choice{margin-top:12px}.contact-choice legend,.damage-choices legend{font-size:18px;margin-bottom:12px;letter-spacing:-.2px}
.choice-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;border:1px solid #e0d4c7;border-radius:999px;padding:5px;background:linear-gradient(160deg,#fffdfb,#f9f4ec);box-shadow:0 7px 20px #5337200d}
.choice-row label{min-width:0}
.choice-row span{min-height:51px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px;line-height:1.1;border-radius:999px;padding:7px 2px;border:1px solid transparent;background:transparent;color:#2b2623;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s}
.choice-row span img{width:19px;height:19px;object-fit:contain;flex:none}
.choice-row input:checked+span{background:linear-gradient(150deg,#fffaf2,#ead9c6);border:1px solid #ac835b;box-shadow:inset 0 0 0 1px #fff7,0 3px 9px #65442222}
.choice-row input:focus-visible+span,.chips input:focus-visible+span{outline:2px solid #725537;outline-offset:2px}
.damage-choices{margin-top:12px}.chips{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}
.chips span{min-height:48px;display:grid;place-items:center;padding:8px 4px;font-size:13px;border:1px solid #decbb7;border-radius:999px;background:linear-gradient(155deg,#fffdfb,#fffaf4);box-shadow:0 5px 12px #55361b08;color:#2c2723}
.chips input:checked+span{border-color:#a67c50;background:linear-gradient(140deg,#fffaf1,#eadbc7);box-shadow:inset 0 0 0 1px #fff8,0 4px 14px #72513020}
/* Native value remains in DOM and is submitted, custom accessible menu is shown. */
.mrpc-native-hidden{display:none!important}
.mrpc-select{position:relative;flex:1;width:100%;z-index:10}
.field:has(.mrpc-select){overflow:visible}
.mrpc-select-trigger{border:0;background:transparent;width:100%;min-height:28px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#776c61;font-size:14px;padding:0;cursor:pointer}
.mrpc-chevron{width:10px;height:10px;border-right:1.5px solid #5d4a37;border-bottom:1.5px solid #5d4a37;transform:rotate(45deg);margin-right:6px;margin-top:-5px}
.mrpc-select.is-open .mrpc-chevron{transform:rotate(225deg);margin-top:4px}
.mrpc-select-trigger:focus-visible,.mrpc-select-option:focus-visible{outline:2px solid #947354;outline-offset:2px}
.mrpc-select-options{position:absolute;top:calc(100% + 12px);right:-14px;left:-68px;z-index:50;min-width:0;border:1px solid #d4b896;border-radius:15px;background:linear-gradient(155deg,#fffefa,#f9f4ed);box-shadow:0 15px 30px #39241528,0 3px 8px #00000014;overflow:hidden;padding:5px}
.mrpc-select-options[hidden]{display:none}
.mrpc-select-option{width:100%;display:block;text-align:left;font:inherit;font-size:14px;color:#29231f;min-height:43px;background:transparent;border:0;padding:10px 13px;border-radius:9px;cursor:pointer}
.mrpc-select-option+.mrpc-select-option{border-top:1px solid #e7ded2}
.mrpc-select-option:hover,.mrpc-select-option[aria-selected="true"]{background:linear-gradient(100deg,#f1e3d1,#fbf5ed)}
/* mobile differentiation from static mockups: controls scale with the available width */
@media(max-width:355px){.choice-row span{font-size:11px;gap:4px;min-height:47px}.choice-row span img{width:16px;height:16px}.chips{gap:6px}.chips span{font-size:11px;min-height:44px}}
.mrpc-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mrpc-result{text-align:center;padding:24px 12px 42px;display:flex;flex-direction:column;gap:15px;align-items:center}.mrpc-result img{width:48px;height:48px}.mrpc-result h2{font-size:30px;font-weight:400;margin:0}.mrpc-result p{font-size:15px;line-height:1.6;margin:0}.mrpc-result a{background:#282325;color:#fff;border-radius:999px;text-decoration:none;padding:14px 24px}

/* Premium Selects 2.0.1: garment, latex and urgency share one visual language. */
.field.has-premium-select{position:relative;overflow:visible}
.field.has-premium-select.select-is-open{z-index:120;border-color:#b99672;box-shadow:0 0 0 1px #d6b692,0 8px 22px #624c3526}
.field.has-premium-select .field-content{position:relative}
.mrpc-select{position:relative;z-index:1}
.mrpc-select.is-open{z-index:130}
.mrpc-select-trigger{font-size:14px;color:#2e2822;min-height:30px;gap:10px}
.mrpc-select-trigger.is-placeholder{color:#968c80}
.mrpc-select-label{flex:1;min-width:0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mrpc-select-options{
  z-index:160;left:calc(-54px - 26px);right:-13px;top:calc(100% + 12px);
  max-height:min(260px,45vh);overflow-y:auto;overscroll-behavior:contain;
  border:1px solid #d4b998;border-radius:13px;padding:6px;
  background:linear-gradient(150deg,#fffefa,#f9f4ed);
  box-shadow:0 16px 34px #38271735,0 3px 8px #00000012;
  scrollbar-width:thin;scrollbar-color:#c0a68b transparent;
}
.mrpc-select.open-up .mrpc-select-options{top:auto;bottom:calc(100% + 14px)}
.mrpc-select-option{min-height:45px;font-size:14px;line-height:1.35;padding:12px 13px;border-radius:8px}
.mrpc-select-option[aria-selected="true"]{background:linear-gradient(105deg,#eedfc9,#fbf7f0);color:#2e2119}
.mrpc-select-option.is-placeholder{color:#8e857a;font-style:italic;cursor:default}
.mrpc-select-option:disabled{opacity:.85}
.mrpc-select-option:hover:not(:disabled),.mrpc-select-option:focus-visible{background:linear-gradient(105deg,#f2e5d4,#fff9f1)}
.field.has-premium-select .field-icon{border-right-color:#ded3c5}
@media(max-width:355px){.mrpc-select-options{left:calc(-47px - 20px);right:-10px}}

/* 2.0.2 – iOS Safari & small screen stabilisation */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 24px; }
body { width:100%; max-width:100%; overflow-x:clip; }
.layout, .atelier, #repair, .form-step { min-width:0; max-width:100%; }
.field, .field-content, .choice-row, .chips, .form-navigation { min-width:0; }
.form-step { scroll-margin-top:24px; }
@media (max-width:500px) {
  .layout { padding:0; justify-content:flex-start; }
  .atelier { padding-top:calc(25px + env(safe-area-inset-top,0px)); padding-bottom:calc(30px + env(safe-area-inset-bottom,0px)); }
  .field input,.field textarea,.field select,.mrpc-select-trigger {font-size:16px;}
  .choice-row { grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; }
  .choice-row span { font-size:clamp(11px,3.4vw,14px); min-width:0; padding:8px 2px; }
  .choice-row span img { width:clamp(14px,4vw,18px); height:clamp(14px,4vw,18px); }
  .chips { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .form-navigation .next { width:100%; max-width:100%; }
  input,textarea,select { -webkit-appearance:none; appearance:none; }
}


/* 2.0.5: Accessible, high-contrast privacy checkbox. Do not rely on iOS native
   appearance, which was previously removed by the global mobile form reset. */
.privacy{position:relative;display:flex;gap:12px;align-items:flex-start;cursor:pointer;min-height:44px;margin-top:10px;font-size:13px;line-height:1.55}
.privacy input[type="checkbox"]{position:absolute!important;top:2px;left:0;width:24px!important;height:24px!important;min-width:24px;min-height:24px;margin:0;opacity:0;z-index:1;appearance:auto!important;-webkit-appearance:checkbox!important;cursor:pointer}
.privacy-check{position:relative;flex:0 0 24px;width:24px;height:24px;border-radius:7px;background:linear-gradient(140deg,#fffefc,#f6eee5);border:1.5px solid #a88b70;box-shadow:0 2px 6px #61412d15,inset 0 1px #ffffffcf;margin-top:1px;pointer-events:none;transition:background .15s,border-color .15s,box-shadow .15s}
.privacy-check::after{content:"";position:absolute;top:4px;left:8px;width:6px;height:11px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg) scale(.8);opacity:0;transition:opacity .15s,transform .15s}
.privacy input[type="checkbox"]:checked + .privacy-check{background:linear-gradient(135deg,#504038,#201b19);border-color:#a07b58;box-shadow:0 0 0 2px #d5ba9a77,0 3px 9px #3222192a}
.privacy input[type="checkbox"]:checked + .privacy-check::after{opacity:1;transform:rotate(45deg) scale(1)}
.privacy input[type="checkbox"]:focus-visible + .privacy-check{outline:3px solid #6b5038;outline-offset:3px}
.privacy-copy{display:block;flex:1;min-width:0}
.privacy a{position:relative;z-index:2;text-decoration:underline;text-underline-offset:2px}
.privacy a:focus-visible{outline:2px solid #6b5038;outline-offset:2px}
.privacy.has-error .privacy-check{border-color:#9e3d36;box-shadow:0 0 0 2px #9e3d3630}
@media (max-width:500px){.privacy input[type="checkbox"]{-webkit-appearance:checkbox!important;appearance:auto!important}}

/* 2.1.0 – approved success screen. Form elements otherwise unchanged. */
body.mrpc-is-success .atelier{min-height:min(92svh,770px);display:flex;flex-direction:column}
body.mrpc-is-success .steps{margin-bottom:12px}
body.mrpc-is-success .step-circle{background:radial-gradient(circle at 35% 15%,#47403b,#1b1919 73%);color:#fff;border-color:#af855f;box-shadow:0 0 0 2px #d6bea5,0 2px 8px #0003}
.success-step-tick{font:normal 20px/1 Arial,Helvetica,sans-serif}
.mrpc-result{flex:1;justify-content:center;gap:14px;padding:19px 8px 25px;max-width:100%;text-align:center}
.mrpc-success-emblem{width:76px;height:76px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#fffdfa,#f7f0e6);border:1px solid #c5a681;box-shadow:inset 0 0 0 5px #fffdfa,0 0 0 2px #e7d5bc,0 7px 18px #63462617;color:#a98153;margin:0 auto 7px}
.mrpc-success-emblem svg{width:38px;height:38px}
.mrpc-result h2{max-width:400px;font:normal clamp(26px,6.6vw,35px)/1.17 Georgia,'Times New Roman',serif;letter-spacing:-.025em;margin:0}
.mrpc-result p{font:normal 15px/1.65 Georgia,'Times New Roman',serif;color:#5d554e;max-width:360px;margin:0 auto}
.mrpc-result p.mrpc-result-lead{color:#2d2925;font-size:16px}
.mrpc-result-flourish{display:flex;align-items:center;justify-content:center;gap:12px;color:#b99a79;width:75%;margin:4px auto;font-size:24px}
.mrpc-result-flourish:before,.mrpc-result-flourish:after{content:'';height:1px;background:#dfd1be;flex:1}
.mrpc-result-actions{width:100%;max-width:340px;display:grid;gap:11px;margin:2px auto 0}
.mrpc-result-actions a{min-height:49px;display:flex;align-items:center;justify-content:center;gap:12px;padding:11px 18px;border-radius:999px;text-decoration:none;font:normal 17px/1.3 Georgia,serif;transition:box-shadow .18s,transform .18s}
.mrpc-result-actions a:hover{transform:translateY(-1px)}
.mrpc-result-actions a:focus-visible{outline:3px solid #8a6c4b;outline-offset:3px}
.mrpc-result-actions .mrpc-result-primary{color:#fff;background:linear-gradient(155deg,#3f3c3c,#1e1b1c);border:1px solid #a6896a;box-shadow:inset 0 1px #ffffff52,0 4px 12px #00000020}
.mrpc-result-actions .mrpc-result-secondary{color:#2d2823;background:linear-gradient(155deg,#fffdfa,#faf6f0);border:1px solid #c8a786;box-shadow:0 3px 9px #00000009}
@media(max-width:500px){body.mrpc-is-success .atelier{min-height:100svh;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}body.mrpc-is-success .mrpc-result{padding:25px 3px 28px;gap:17px}.mrpc-result-actions{max-width:320px}}

/* 2.1.1 – additive multi-photo selection; leave approved layout unchanged. */
.preview-images .mrpc-photo-preview{position:relative;width:55px;height:55px;flex:0 0 55px}
.preview-images .mrpc-photo-preview img{display:block;width:55px;height:55px;object-fit:cover;border:1px solid #c4ada0;border-radius:7px}
.mrpc-photo-remove{position:absolute;right:-6px;top:-7px;width:23px;height:23px;border-radius:50%;background:#282323;color:white;border:1px solid #d4b997;cursor:pointer;display:grid;place-items:center;font:normal 18px/1 Arial,sans-serif;box-shadow:0 2px 5px #0003;padding:0;z-index:1}
.mrpc-photo-remove:focus-visible{outline:2px solid #735537;outline-offset:3px}
#photo-status.has-error{color:#9b4139}
