.account-page { padding-top:52px; padding-bottom:72px; color:#0d1c24; }
.account-intro { margin-bottom:30px; }
.account-intro h1 { font-family:Georgia,serif; font-size:clamp(36px,4vw,56px); line-height:1.08; margin:10px 0 14px; letter-spacing:-1.5px; }
.account-intro p:not(.eyebrow) { color:#53616a; font-size:17px; line-height:1.65; overflow-wrap:anywhere; }
.shipping-access { display:grid; grid-template-columns:1.25fr 1fr; gap:28px; align-items:stretch; }
.account-card,.order-result { border:1px solid #e0e5e8; border-radius:8px; padding:32px; }
.account-page h2 { font-family:Georgia,serif; font-size:28px; line-height:1.2; margin:0 0 14px; }
.account-page h3 { font-size:17px; margin:0 0 12px; }
.account-page p { line-height:1.65; margin:0 0 18px; }
.account-page a:not(.button) { color:#285372; text-decoration:underline; text-underline-offset:3px; }
.account-page .button { min-height:48px; display:inline-flex; justify-content:center; align-items:center; gap:12px; font-size:14px; padding:13px 22px; text-decoration:none; }
.account-page .button-outline { border:1px solid #285372; background:transparent; color:#285372; }
.account-page .button:hover { opacity:.85; }
.account-page :is(a,button,input):focus-visible { outline:3px solid #285372; outline-offset:3px; }
.account-form { display:grid; gap:10px; margin-top:24px; }
.account-form label { font-size:14px; font-weight:700; }
.account-form input { width:100%; min-width:0; height:50px; padding:12px 14px; border:1px solid #c8d1d7; border-radius:4px; font:inherit; color:#0d1c24; background:#fff; margin-bottom:12px; }
.account-form .button { width:100%; margin-top:4px; }
.account-error { background:#fff4f3; color:#9b2925; border-left:3px solid #d7232b; padding:14px 16px; }
.account-page .account-muted { font-size:14px; color:#53616a; }
.shipping-login { background:#f5f5f2; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.shipping-login .account-muted { margin:18px 0 0; }
.account-symbol { width:52px; height:52px; border:1px solid #ced7dc; border-radius:50%; display:grid; place-items:center; color:#285372; margin-bottom:22px; }
.account-symbol .icon { width:25px; height:25px; }
.shipping-information { display:grid; grid-template-columns:1.15fr 1fr 1fr 1fr; gap:28px; border-top:1px solid #e0e5e8; padding-top:36px; margin-top:48px; }
.shipping-information h2 { font-size:25px; }
.shipping-information p { font-size:14px; color:#53616a; margin:0; }
.shipping-information .eyebrow { margin-bottom:10px; font-size:11px; }
.order-result { margin-top:28px; scroll-margin-top:190px; }
#lookup { scroll-margin-top:190px; }
.order-result-heading,.account-orders-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; }
.order-result-heading .eyebrow { margin-bottom:10px; overflow-wrap:anywhere; }
.order-status-label { background:#edf2f5; color:#285372; border-radius:20px; font-size:13px; font-weight:700; padding:8px 14px; white-space:nowrap; }
.order-progress { display:flex; list-style:none; padding:0; margin:30px 0; }
.order-progress li { flex:1; position:relative; text-align:center; color:#69777f; font-size:13px; padding:0 6px; }
.order-progress li::before { content:''; position:absolute; height:2px; background:#e0e5e8; top:17px; left:0; right:0; }
.order-progress li:first-child::before { left:50%; }
.order-progress li:last-child::before { right:50%; }
.order-progress li span { position:relative; display:grid; place-items:center; width:36px; height:36px; margin:0 auto 10px; background:#fff; border:2px solid #e0e5e8; border-radius:50%; }
.order-progress .is-done span,.order-progress .is-current span { background:#142d39; border-color:#142d39; color:#fff; }
.order-progress .is-current { font-weight:700; color:#142d39; }
.order-tracking { border-top:1px solid #e0e5e8; padding-top:24px; margin-bottom:24px; }
.order-shipment { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:12px 0; }
.order-shipment strong,.order-shipment span { display:block; overflow-wrap:anywhere; }
.customer-login-card { max-width:540px; margin:0 auto; }
.customer-login-card .account-muted { margin-top:20px; }
.account-divider { border-top:1px solid #e0e5e8; padding-top:24px; margin-top:24px; }
.customer-order-list { display:grid; gap:16px; }
.customer-order { display:flex; gap:24px; align-items:center; }
.customer-order h2 { font-family:Arial,sans-serif; font-size:18px; overflow-wrap:anywhere; }
.customer-order p { margin:0; }
.customer-order .button { margin-left:auto; }
.account-back { display:inline-block; margin-bottom:4px; }
.account-pagination { display:flex; gap:20px; justify-content:center; margin:26px 0; font-size:14px; }
@media(max-width:900px) { .shipping-information { grid-template-columns:1fr 1fr; } .shipping-access { grid-template-columns:1fr 1fr; gap:20px; } .account-card,.order-result { padding:24px; } .customer-order { flex-wrap:wrap; } }
@media(max-width:600px) { .account-page { padding-top:32px; padding-bottom:44px; } .shipping-access,.shipping-information { grid-template-columns:1fr; } .shipping-information { margin-top:32px; gap:24px; } .account-card,.order-result { padding:22px; } .shipping-login { padding:26px 22px; } .order-result-heading { flex-direction:column; gap:4px; margin-bottom:18px; } .order-progress { flex-direction:column; gap:12px; } .order-progress li { display:flex; align-items:center; gap:12px; text-align:left; padding:0; } .order-progress li span { margin:0; flex-shrink:0; } .order-progress li::before { display:none; } .order-shipment { align-items:flex-start; flex-direction:column; } .account-orders-heading { flex-direction:column; margin-bottom:24px; } .account-orders-heading .account-intro { margin:0; } .customer-order { flex-direction:column; align-items:flex-start; gap:14px; } .customer-order .button { margin:0; width:100%; } }
