/* A dedicated maintenance-only guide. Links work without JavaScript. */
.maintenance-page{background:#fff}
.reservation-header{border-bottom:1px solid #e3e8ed;background:#fff}
.reservation-header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.reservation-header .brand-type small{font-size:9px;letter-spacing:-.02em;color:#697e92}
.reservation-home{display:flex;align-items:center;gap:9px;font-size:13px;color:#516477;padding:10px 0}
.reservation-home .icon{width:17px;height:17px}
.reservation-home:hover{color:var(--navy)}
.reservation-wrap{width:min(790px,calc(100% - 48px));margin-inline:auto}
.reservation-main{padding:59px 0 46px}
.reservation-main .eyebrow{font-size:10px;letter-spacing:.18em;color:#687e92;margin-bottom:13px}
.reservation-main h1{font-size:41px;font-weight:750;line-height:1.35;color:#002c5f}
.reservation-intro{font-size:16px;line-height:1.85;color:#607181;margin-top:16px}
.reservation-intro strong{color:#173b5d;font-weight:650}
.callcenter-section{margin-top:33px;padding-top:25px;border-top:2px solid #002c5f}
.callcenter-intro{margin-top:10px;color:#607181;font-size:13px;line-height:1.85}
.callcenter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:21px}
.callcenter-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;border:1px solid #dce3e9;border-top:3px solid #002c5f;padding:25px 25px 23px;background:#fff}
.callcenter-genesis{border-top-color:#333b43}
.callcenter-brand{color:#55728d;font-size:10px;font-weight:650;letter-spacing:.16em;line-height:1.4;margin-bottom:12px}
.callcenter-genesis .callcenter-brand{color:#71777c}
.callcenter-card h3{font-size:21px;line-height:1.4;font-weight:700;color:#173b5d}
.callcenter-genesis h3{color:#323d46}
.callcenter-purpose{font-size:12px;line-height:1.75;color:#6b7c8b;margin-top:8px}
.callcenter-phone{font-size:30px;font-weight:700;letter-spacing:-.035em;line-height:1.4;color:#002c5f;white-space:nowrap;margin-top:20px;font-variant-numeric:tabular-nums}
.callcenter-genesis .callcenter-phone{color:#323d46}
.callcenter-hours{font-size:11px;line-height:1.9;color:#748493;margin-top:8px}
.callcenter-button{align-self:stretch;justify-content:center;gap:10px;min-height:47px;margin-top:20px;padding:11px 12px;font-size:13px;background:#002c5f;border-color:#002c5f;color:#fff;border-radius:0}
.callcenter-button:hover{background:#084a7d;border-color:#084a7d}
.callcenter-button .icon{width:18px;height:18px}
.callcenter-genesis .callcenter-button{background:#333b43;border-color:#333b43}
.callcenter-genesis .callcenter-button:hover{background:#4c565f;border-color:#4c565f}
.callcenter-request{font-size:12px;line-height:1.9;margin-top:16px;color:#6b7c8b}
.callcenter-request strong{color:#38566f;font-weight:650}
@media(max-width:650px){.callcenter-section{margin-top:26px;padding-top:20px}.callcenter-intro{font-size:12px;margin-top:9px}.callcenter-grid{grid-template-columns:1fr;gap:15px;margin-top:18px}.callcenter-card{padding:22px}.callcenter-card h3{font-size:21px}.callcenter-brand{font-size:9px;margin-bottom:10px}.callcenter-phone{font-size:30px;margin-top:15px}.callcenter-purpose{font-size:12px}.callcenter-hours{font-size:11px}.callcenter-button{font-size:13px;margin-top:17px}.callcenter-request{font-size:11px;line-height:1.85}}
.reservation-guide{margin-top:33px;border-top:2px solid #002c5f;padding-top:25px}
.guide-heading{display:flex;align-items:center;gap:14px}
.guide-label{font-size:11px;color:#5e7487;white-space:nowrap;border-right:1px solid #ccd7df;padding-right:14px}
.guide-heading h2{font-size:21px;font-weight:700;line-height:1.5;letter-spacing:-.04em}
.guide-intro{font-size:13px;color:#64778a;margin-top:9px}
.mobile-break{display:none}
.reservation-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:22px}
.reservation-steps li{position:relative;padding:18px 23px 21px;background:#f5f7f9;border:1px solid #e1e7ec}
.reservation-steps li:not(:last-child):after{content:"›";position:absolute;right:-17px;top:44%;font-size:24px;line-height:1;color:#a4b4c2}
.step-number{display:block;font-size:10px;color:#8095a7;margin-bottom:10px;font-variant-numeric:tabular-nums}
.step-label{display:block;font-size:11px;color:#6a7e90;margin-bottom:6px}
.reservation-steps strong{display:block;color:#002c5f;font-size:25px;line-height:1.3;font-weight:750;letter-spacing:-.04em}
.reservation-result{display:flex;align-items:flex-start;gap:13px;margin-top:23px}
.result-label{margin-top:2px;white-space:nowrap;background:#eef2f6;color:#60798e;font-size:10px;padding:3px 8px}
.reservation-result p{font-size:14px;line-height:1.9;color:#4a647a}
.result-shop{color:#002c5f;font-size:16px}
.result-address{display:block;font-size:11px;color:#7a8b9b;margin-top:3px}
.reservation-primary{display:flex;width:100%;justify-content:center;gap:22px;background:#002c5f;color:#fff;padding:17px 24px;font-size:16px;min-height:60px;margin-top:26px;border-radius:0}
.reservation-primary:hover{background:#084a7d}
.reservation-note{font-size:11px;line-height:1.8;color:#7c8b98;text-align:center;margin-top:11px}
.visit-notice{margin-top:38px;padding-top:25px;border-top:2px solid #002c5f;scroll-margin-top:24px}
.visit-notice-intro{font-size:13px;line-height:1.9;color:#64778a;margin-top:10px}
.visit-notice-list{margin-top:22px;border-top:1px solid #e1e7ec}
.visit-notice-list li{display:flex;align-items:flex-start;gap:18px;padding:23px 0;border-bottom:1px solid #e1e7ec}
.visit-notice-number{flex:0 0 31px;padding-top:3px;color:#8598a9;font-size:11px;font-weight:650;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.visit-notice-list h3{font-size:17px;line-height:1.6;font-weight:700;color:#284762;letter-spacing:-.035em}
.visit-notice-list p{font-size:13px;line-height:1.9;color:#64778a;margin-top:7px}
.visit-notice-list .visit-notice-arrival{background:#f5f8fb;margin-inline:-16px;padding-inline:16px;border-left:3px solid #002c5f}
.visit-notice-arrival h3{color:#002c5f}
@media(max-width:650px){.visit-notice{margin-top:30px;padding-top:20px}.visit-notice-intro{font-size:12px}.visit-notice-list{margin-top:18px}.visit-notice-list li{gap:11px;padding-block:19px}.visit-notice-number{flex-basis:23px;font-size:10px}.visit-notice-list h3{font-size:15px;line-height:1.65}.visit-notice-list p{font-size:12px;line-height:1.9}.visit-notice-list .visit-notice-arrival{margin-inline:-9px;padding-inline:9px}}
.reservation-help{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e2e8ed;margin-top:31px;padding-top:22px}
.reservation-help p{font-size:14px;font-weight:650;color:#3b5368}
.reservation-help span{font-size:11px;color:#7a8b9b}
.reservation-help>a{display:flex;align-items:center;gap:10px;color:#002c5f;font-size:20px;font-weight:650;white-space:nowrap}
.reservation-help .icon{width:21px;height:21px}
.reservation-footer{background:#f6f7f9;padding:28px 0 32px;color:#718496}
.reservation-footer .reservation-wrap{position:relative}
.reservation-footer strong{font-size:13px;color:#4c6478}
.reservation-footer p{font-size:10px;margin-top:6px}
.reservation-footer p span{margin-inline:6px}
.reservation-footer-home{position:absolute;right:0;top:8px;display:flex;align-items:center;gap:10px;font-size:12px;color:#405d76}
.reservation-footer-home .icon{width:15px;height:15px}
@media(max-width:650px){.reservation-header-inner{height:74px;gap:15px}.reservation-header .brand-type{font-size:18px}.reservation-header .brand-type small{font-size:7px}.reservation-home{font-size:11px;gap:5px}.reservation-home .icon{width:15px;height:15px}.reservation-wrap{width:calc(100% - 44px)}.reservation-main{padding:32px 0 31px}.reservation-main .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:10px}.reservation-main h1{font-size:30px}.reservation-intro{font-size:13px;margin-top:13px;line-height:1.85}.reservation-guide{margin-top:26px;padding-top:20px}.guide-heading{display:block}.guide-label{display:block;padding:0;border:0;font-size:10px;margin-bottom:6px}.guide-heading h2{font-size:18px;line-height:1.5}.guide-intro{font-size:11px;line-height:1.85;margin-top:9px}.mobile-break{display:block}.reservation-steps{gap:12px;margin-top:18px}.reservation-steps li{padding:13px 12px 15px}.step-number{font-size:9px;margin-bottom:8px}.step-label{font-size:10px;margin-bottom:5px}.reservation-steps strong{font-size:20px}.reservation-steps li:not(:last-child):after{right:-10px;font-size:18px}.reservation-result{margin-top:18px;gap:10px}.result-label{font-size:9px;padding:3px 6px}.reservation-result p{font-size:12px;line-height:1.85}.result-shop{font-size:13px}.result-address{font-size:10px}.reservation-primary{font-size:13px;min-height:53px;padding:14px 15px;gap:16px;margin-top:22px}.reservation-primary .icon{width:16px;height:16px}.reservation-note{font-size:10px;margin-top:10px}.reservation-help{margin-top:24px;padding-top:19px;gap:12px;align-items:center}.reservation-help p{font-size:12px}.reservation-help span{font-size:10px}.reservation-help>a{font-size:16px;gap:6px}.reservation-help .icon{width:17px;height:17px}.reservation-footer{padding-block:25px}.reservation-footer strong{font-size:12px}.reservation-footer p{font-size:9px}.reservation-footer-home{position:static;font-size:11px;margin-top:17px}}
@media(max-width:360px){.reservation-header .brand-type{font-size:16px}.reservation-wrap{width:calc(100% - 36px)}.reservation-main h1{font-size:28px}.guide-heading h2{font-size:17px}.reservation-steps li{padding-inline:10px}.reservation-steps strong{font-size:18px}.reservation-help{display:block}.reservation-help>a{margin-top:10px}.reservation-intro{font-size:12px}.reservation-footer p span{margin-inline:3px}}
