/* A compact, centered order workspace with the existing animated water mascot. */
#request{padding-block:var(--section-space)}
#request .request-layout{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;max-width:1040px}
#request .request-copy{display:flex;align-items:center;justify-content:space-between;gap:32px;max-width:none;padding-right:200px;margin:0 0 32px}
#request .request-copy h2{flex:1 1 300px;font-size:34px;line-height:1.3;letter-spacing:-.025em;margin:0;text-wrap:balance}
#request .request-assurance{flex:0 1 310px;display:flex;align-items:start;gap:12px;border:0;margin:0;padding:0}
#request .request-assurance>span{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:8px;font-size:23px;line-height:1}
#request .request-assurance strong{display:block;font-size:13px;font-weight:600;line-height:1.6;margin:0}
#request .request-assurance p{font-size:12px;line-height:1.8;margin:5px 0 0}
#request .request-workspace{grid-template-columns:64px minmax(0,1fr);gap:16px}
#request .request-platforms{top:96px;max-height:min(560px,calc(100dvh - 124px));padding:8px;gap:6px;border-radius:18px}
#request .request-platforms .control-platform{flex:0 0 44px;width:44px;height:44px;padding:10px;border-radius:12px}
#request .request-form{padding:28px;border-radius:var(--radius-panel);box-shadow:2px 3px 0 #17112f0b}
#request .form-title{margin:0 0 16px}
#request .form-title h3{font-size:20px;line-height:1.4;letter-spacing:0;margin:0}
#request .checkout-status{margin:0 0 22px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--soft);font-size:12px;line-height:1.8}
#request .checkout-status:empty{display:none}
#request .checkout-status[role=alert]{color:var(--error);border-color:var(--error)}
#request .request-form label{font-size:12px;line-height:1.7;margin:0}
#request .request-selector-meta{font-size:11px;line-height:1.7}
#request .request-service-row{grid-template-columns:minmax(0,1fr) 140px;gap:16px}
#request .control-trigger,#request .request-form input:not(.control-native){min-height:48px;margin:8px 0 18px;padding:11px 14px;border-radius:12px;font-size:14px;line-height:1.6;letter-spacing:0}
#request .control-value{line-height:1.6}
#request .estimate-line{gap:20px;margin:0 0 18px;padding:18px 0;border-color:var(--line)}
#request .estimate-line>div{gap:12px}
#request .estimate-line>div>span{font-size:12px}
#request .estimate-line strong{font-size:28px;line-height:1.3}
#request #estimate-note{font-size:11px;line-height:1.8;max-width:260px}
#request .checkout-service-note{font-size:12px;line-height:1.8;margin:10px 0}
#request .form-submit{min-height:48px;padding:12px 18px;font-size:14px;line-height:1.6;letter-spacing:0}
#request .form-disclaimer{font-size:11px;line-height:1.8;margin:12px 0 0}
#request .request-mascot-peek{right:24px;top:-98px;width:160px;height:98px}
#request .request-mascot-peek img{width:160px;height:160px}
#request .request-phone-mascot{display:block;position:absolute;left:calc(-1 * (min(216px,calc((100vw - 1040px)/2 - 16px)) + 16px));bottom:14px;width:min(216px,calc((100vw - 1040px)/2 - 16px));aspect-ratio:1;pointer-events:none}
#request .request-phone-mascot img{display:block;width:100%;height:auto;transform-origin:60% 80%;animation:phone-water-bob 7.6s ease-in-out infinite}
@keyframes phone-water-bob{0%,100%{transform:translateY(0) rotate(-1deg)}45%{transform:translateY(-5px) rotate(1deg)}75%{transform:translateY(-2px) rotate(0)}}
@media(max-width:1279px){#request .request-phone-mascot{position:relative;left:auto;bottom:auto;justify-self:start;width:140px;margin-top:18px}}
@media(max-width:1100px){#request .request-copy{gap:24px;padding-right:184px}#request .request-copy h2{font-size:30px;flex-basis:260px}#request .request-assurance{flex-basis:280px}}
@media(max-width:800px){#request .request-copy{display:block;padding-right:0;margin-bottom:24px}#request .request-copy h2{font-size:30px;max-width:600px}#request .request-assurance{max-width:520px;margin-top:18px}#request .request-workspace{grid-template-columns:minmax(0,1fr);row-gap:84px}#request .request-platforms{top:auto;max-height:none;padding:8px;gap:6px;border-radius:16px}#request .request-mascot-peek{width:120px;height:72px;top:-72px;right:20px}#request .request-mascot-peek img{width:120px;height:120px}}
@media(max-width:600px){#request .request-form{padding:22px 18px;border-radius:18px}#request .request-copy h2{font-size:28px}#request .request-assurance strong{font-size:12px}#request .request-assurance p{font-size:11px}#request .form-title h3{font-size:18px}#request .request-service-row{grid-template-columns:minmax(0,1fr);gap:0}#request .checkout-status{font-size:11px;margin-bottom:18px}#request .control-trigger,#request .request-form input:not(.control-native){font-size:13px;margin-bottom:16px}#request .estimate-line{gap:12px}#request #estimate-note{max-width:150px;font-size:10px}#request .form-disclaimer{font-size:10px}}
@media(prefers-reduced-motion:reduce){#request .request-phone-mascot img{animation:none;transform:none}}

/* A quiet specification layer between service category and the final project. */
#request .request-refinement{margin:0 0 22px;padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:12px;min-width:0}
#request .request-refinement-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
#request .request-refinement-heading strong{font-size:12px;font-weight:600;color:var(--ink)}
#request .request-filter-reset{padding:3px 0;border:0;background:transparent;color:var(--ink);font-size:11px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
#request .request-filter-reset:disabled{opacity:.4;cursor:default;text-decoration:none}
#request .request-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#request .request-filter-grid label{display:grid;gap:6px;min-width:0;font-size:11px}
#request select.request-facet:not(.control-native){display:block;width:100%;min-width:0;min-height:40px;padding:8px 24px 8px 10px;margin:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-family:inherit;font-size:12px;line-height:1.5;text-overflow:ellipsis;cursor:pointer}
#request select.request-facet:disabled{opacity:.55;cursor:default}
#request .request-filter-grid .control-trigger{min-height:40px;margin:0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;line-height:1.5;gap:8px}
#request .request-filter-grid .control-trigger:disabled{opacity:.55;cursor:default}
#request .request-filter-note{margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.7}
#request .request-selection-summary{margin:0 0 20px;padding:16px 18px;border-left:3px solid var(--ink);background:var(--soft);border-radius:0 10px 10px 0;min-width:0}
#request .request-selection-summary[hidden]{display:none}
#request .request-selection-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:11px;color:var(--muted)}
#request .request-selection-heading strong{color:var(--ink);font-size:15px;font-weight:650;white-space:nowrap}
#request .request-selection-summary h4{margin:8px 0 10px;color:var(--ink);font-size:14px;font-weight:600;line-height:1.7;overflow-wrap:anywhere}
#request .request-selection-specs{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:11px;line-height:1.6;color:var(--muted)}
.control-service-popup .control-service-option{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:18px;row-gap:7px;padding:14px 30px 14px 14px;align-items:start}
.control-service-popup .control-service-option .control-option-label{font-size:13px;line-height:1.75;letter-spacing:0;font-family:inherit,'Segoe UI Emoji','Apple Color Emoji','Noto Color Emoji'}
.control-service-popup .control-service-price{padding-top:2px;font-size:12px;line-height:1.8;font-weight:600;white-space:nowrap}
.control-service-popup .control-service-specs{display:flex;flex-wrap:wrap;gap:5px 16px;grid-column:1/-1;color:var(--muted);font-size:11px;line-height:1.6;letter-spacing:0}
#request .request-facet:focus-visible,#request .request-filter-reset:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media(max-width:1050px){#request .request-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#request .request-refinement{padding:12px;margin-bottom:18px}#request .request-filter-grid{gap:10px}#request .request-selection-summary{padding:12px}#request .request-selection-heading{flex-wrap:wrap;gap:6px}.control-service-popup .control-service-option{grid-template-columns:minmax(0,1fr);gap:5px;padding:12px 28px 12px 10px}.control-service-popup .control-service-price{grid-row:3}.control-service-popup .control-service-specs{gap:4px 10px;font-size:10px}.control-service-popup .control-service-option .control-option-label{font-size:12px}}
