/* Vintage page framing; clean reading and typing surface. */
.order-page { height:auto; min-height:100svh; --ink:#171916; --sea:#171916; --muted:#51554E; --line:#81867D; background-attachment:fixed; }
.order-header { padding:32px 48px 0; }
.order-page .order-layout { display:block; width:calc(100% - 48px); max-width:720px; margin:44px auto 64px; }
.order-page .order-intro { max-width:none; margin-bottom:28px; }
.order-page .order-intro h1 { font-size:44px; line-height:1.05; margin-bottom:12px; letter-spacing:-.025em; }
.order-page .order-intro > p { font:20px/1.4 "TRINX EB Garamond",Georgia,serif; }
/* Above the shared paper overlay: no grain across labels or entered text. */
.order-page .order-form-column { position:relative; z-index:21; background:#FAFAF7; color:#171916; padding:36px; border:1px solid #C4C7BF; border-radius:4px; margin:0; }
.order-page .form-note { border:0; padding:0; margin-bottom:28px; font-size:14px; color:#51554E; }
.order-page fieldset { margin-bottom:32px; padding-bottom:32px; border-color:#C4C7BF; }
.order-page legend { font:600 21px/1.4 "Helvetica Neue",Arial,sans-serif; letter-spacing:0; margin-bottom:24px; }
.order-page .field-grid { gap:24px; }
.order-page label,.order-page .measure-heading { font-size:16px; line-height:1.4; color:#171916; }
.order-page label { font-weight:500; margin-bottom:10px; }
.order-page label span { color:#51554E; font-size:14px; }
.order-page input,.order-page select,.order-page textarea { background:#FFFFFF; color:#171916; border-radius:3px; border:1px solid #81867D; padding:12px 14px; font:16px/1.5 "Helvetica Neue",Arial,sans-serif; min-height:52px; }
.order-page select { height:52px; padding-right:30px; }
.order-page textarea { min-height:112px; }
.order-page input::placeholder,.order-page textarea::placeholder { color:#62675E; }
.order-page input:focus,.order-page textarea:focus,.order-page select:focus { border-color:#171916; outline:2px solid #171916; outline-offset:2px; }
.order-page input[aria-invalid=true],.order-page textarea[aria-invalid=true] { border-color:#8A3228; }
.order-page .field-help,.order-page .privacy-note,.order-page .field-error { font-size:14px; line-height:1.5; }
.order-page .preferences { border-color:#C4C7BF; }
.order-page .preferences summary { font:500 17px/1.5 "Helvetica Neue",Arial,sans-serif; min-height:52px; padding-block:18px; }
.order-page .button { min-height:52px; background:#171916; border-color:#171916; color:white; font:500 17px/1.4 "Helvetica Neue",Arial,sans-serif; padding:14px 26px; }
.order-page .button:hover { background:#34382F; }
.order-page input[type=file] { font-size:14px; padding:10px; }
.order-page input::file-selector-button { min-height:44px; }
.order-footer { padding:0; margin:0 7% 46px; }
@media(max-width:700px) { .order-header { padding:26px 24px 0; } .order-page .order-layout { width:calc(100% - 28px); margin:32px auto 44px; } .order-page .order-intro { padding-inline:8px; margin-bottom:22px; } .order-page .order-intro h1 { font-size:36px; } .order-page .order-form-column { padding:24px 18px; } .order-page .field-grid { grid-template-columns:1fr; gap:22px; } .order-page #height-imperial-group { grid-template-columns:1fr 1fr; } .order-page .button { width:100%; } .order-footer { margin:0 24px 24px; } }
@media(max-width:360px) { .order-header { padding-inline:20px; } .order-page .order-layout { width:calc(100% - 16px); } .order-page .order-form-column { padding:22px 14px; } .order-footer { margin-inline:20px; } }
@media(max-height:500px) { .order-header { padding-top:20px; } }
