.contact-page .contact-hero{background:radial-gradient(ellipse at 2% 0, color-mix(in srgb, var(--brand-cyan) 8%, transparent), transparent 50%), var(--cream);padding:68px 0 62px}.contact-page .contact-hero-grid{grid-template-columns:1.12fr 1fr;align-items:center;gap:74px;display:grid}.contact-page .contact-kicker{align-items:center;gap:11px;display:flex}.contact-page .contact-kicker>span{background:var(--brand-red);border-radius:50%;width:8px;height:8px}.contact-page .contact-hero h1{font-family:var(--display);letter-spacing:-.058em;margin:0 0 27px;font-size:clamp(46px,5.6vw,81px);line-height:1.09}.contact-page .contact-hero h1 .serif{color:var(--link,#087ca6);font-size:1.13em}.contact-page .contact-hero-intro{max-width:480px;color:var(--muted);font-size:18px;line-height:1.8}.contact-page .contact-response{align-items:center;gap:16px;margin-top:32px;display:flex}.contact-page .contact-response>span{border:1px solid var(--line);width:46px;height:46px;color:var(--link,#087ca6);border-radius:50%;place-items:center;font-size:24px;display:grid}.contact-page .contact-response strong,.contact-page .contact-response div>span{font-size:14px;line-height:1.6;display:block}.contact-page .contact-response div>span{color:var(--muted);margin-top:2px}.contact-page .contact-getting-link{border-bottom:1px solid var(--line);align-items:center;gap:20px;margin-top:32px;padding-bottom:7px;font-size:14px;line-height:1.8;display:inline-flex}.contact-page .contact-getting-link>span{color:var(--link,#087ca6);font-size:19px}.contact-page .contact-hello-card{color:#f0f9ff;background:#0d2b43;border-radius:9px;padding:35px 37px;position:relative;overflow:hidden}.contact-page .contact-hello-top{border-bottom:1px solid #ffffff2a;justify-content:space-between;align-items:center;gap:20px;margin-bottom:29px;padding-bottom:26px;display:flex}.contact-page .contact-hello-top>span{font-size:17px}.contact-page .contact-hello-top>svg{color:#a7eafa;width:62px;height:62px}.contact-page .contact-hello-card .eyebrow{color:#b7d6e4;margin-bottom:12px}.contact-page .contact-hello-card h2{font-family:var(--display);letter-spacing:-.04em;margin-bottom:27px;font-size:clamp(27px,2.7vw,38px);line-height:1.2}.contact-page .contact-hello-card h2 .serif{color:#c5f2fd;font-size:1.12em}.contact-page .contact-phone-number{font-family:var(--display);letter-spacing:-.03em;margin-bottom:22px;font-size:clamp(24px,2.5vw,34px);font-weight:500;display:inline-block}.contact-page .contact-primary-actions{grid-template-columns:1fr;gap:11px;display:grid}.contact-page .contact-primary-actions .button{min-height:52px;font-size:15px}.contact-page .contact-call-button{border:1px solid #ffffff45;border-radius:4px;justify-content:space-between;align-items:center;gap:15px;padding:14px 23px;font-size:14px;display:flex}.contact-page .contact-call-button:hover{background:#ffffff0d}.contact-page .contact-message-hint{color:#b7cfdd;max-width:370px;margin:19px 0 0;font-size:13px;line-height:1.75}.contact-page .contact-channels{grid-template-columns:1fr 1fr;gap:0 52px;padding-bottom:75px;display:grid}.contact-page .contact-channel{border-top:1px solid var(--line);align-items:start;gap:20px;min-width:0;padding:33px 0;display:flex}.contact-page .contact-channel>div{min-width:0}.contact-page .contact-channel-icon{background:var(--surface-soft,#edf5fa);width:45px;height:45px;color:var(--link,#087ca6);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.contact-page .contact-channel-icon>svg{width:24px;height:24px}.contact-page .contact-channel .eyebrow{margin-bottom:8px;font-size:12px}.contact-page .contact-channel h2{font-family:var(--display);letter-spacing:-.03em;margin-bottom:15px;font-size:27px;line-height:1.25}.contact-page .contact-channel p:not(.eyebrow){color:var(--muted);max-width:390px;margin:13px 0 0;font-size:15px;line-height:1.8}.contact-page .contact-email-address{overflow-wrap:anywhere;border-bottom:1px solid var(--line);color:var(--link,#087ca6);flex-wrap:wrap;align-items:center;gap:13px;padding-bottom:6px;font-size:16px;line-height:1.7;display:inline-flex}.contact-page .contact-wechat-details{max-width:330px}.contact-page .contact-wechat-details>summary{cursor:pointer;border-bottom:1px solid var(--line);color:var(--link,#087ca6);justify-content:space-between;align-items:center;gap:25px;padding-bottom:8px;font-size:16px;list-style:none;display:flex}.contact-page .contact-wechat-details summary::-webkit-details-marker{display:none}.contact-page .contact-driving summary::-webkit-details-marker{display:none}.contact-page .contact-wechat-details summary>span{font-size:22px;line-height:1}.contact-page .contact-wechat-details[open] summary>span{transform:rotate(45deg)}.contact-page .contact-wechat-details>div{border:1px solid var(--line);background:var(--surface,#fff);border-radius:4px;margin-top:18px;padding:16px}.contact-page .contact-wechat-details img{width:200px;max-width:100%;height:auto;margin-inline:auto}.contact-page .contact-wechat-details>div>p{text-align:center;font-size:13px}.contact-page .contact-social-row{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:18px 40px;padding-top:25px;display:flex}.contact-page .contact-social-row>span{color:var(--muted);font-size:14px}.contact-page .contact-social-row>div{flex-wrap:wrap;align-items:center;gap:12px 27px;display:flex}.contact-page .contact-social-row a{align-items:center;gap:9px;padding-block:7px;font-size:14px;display:inline-flex}.contact-page .contact-social-row a:hover,.contact-page .contact-ferry-links a:hover,.contact-page .contact-social-row a>span{color:var(--link,#087ca6)}.contact-page .contact-location{background:var(--surface-soft,#edf5fa);padding-block:70px}.contact-page .contact-location-grid{grid-template-columns:1.12fr 1fr;align-items:center;gap:70px;display:grid}.contact-page .contact-location-photo{background:#0d2b43;border-radius:7px;align-self:stretch;min-height:460px;position:relative;overflow:hidden}.contact-page .contact-location-photo>img{object-fit:cover;width:100%;height:110%;position:absolute;inset:-5% 0 0}.contact-page .contact-location-photo>span{color:#fff;font-family:var(--serif);background:linear-gradient(#0000,#061724c9);padding:54px 29px 25px;font-size:37px;font-style:italic;position:absolute;bottom:0;left:0;right:0}.contact-page .contact-location-copy{padding-block:23px}.contact-page .contact-location h2{font-family:var(--display);letter-spacing:-.04em;margin-bottom:26px;font-size:clamp(30px,3.3vw,47px);line-height:1.2}.contact-page .contact-location h2 .serif{font-size:1.13em}.contact-page .contact-location address{color:var(--muted);font-size:17px;font-style:normal;line-height:1.8}.contact-page .contact-arrival-point{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:15px;margin-block:23px;padding-block:22px;display:flex}.contact-page .contact-arrival-point>span{color:var(--link,#087ca6);font-size:36px}.contact-page .contact-arrival-point div>span{color:var(--muted);margin-bottom:5px;font-size:13px;display:block}.contact-page .contact-arrival-point strong{font-size:17px;font-weight:500}.contact-page .contact-location .button{font-size:14px}.contact-page .contact-coordinates{letter-spacing:.025em;color:var(--muted);margin:18px 0 0;font-size:13px}.contact-page .contact-map-section{padding-top:65px}.contact-page .contact-map-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:26px;display:flex}.contact-page .contact-map-heading h2{font:500 clamp(29px, 3vw, 40px)/1.3 var(--display);letter-spacing:-.04em;margin:0 0 13px}.contact-page .contact-map-heading p{max-width:590px;color:var(--muted);margin:0;font-size:16px;line-height:1.85}.contact-page .contact-map-link{color:var(--link);flex-shrink:0;font-size:15px;line-height:1.7}.contact-page .contact-map-frame{border:1px solid var(--line);background:var(--surface-soft);box-shadow:0 8px 28px var(--shadow-color);border-radius:8px;overflow:hidden}.contact-page .contact-map-frame iframe{width:100%;height:420px;display:block}.contact-page .contact-map-frame:focus-within{outline:3px solid var(--link);outline-offset:4px}.contact-page .contact-travel{padding-block:85px 75px}.contact-page .contact-section-heading{grid-template-columns:1fr 1fr;align-items:end;gap:70px;margin-bottom:35px;display:grid}.contact-page .contact-section-heading h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(35px,4vw,55px);line-height:1.15}.contact-page .contact-section-heading h2 .serif{font-size:1.15em}.contact-page .contact-section-heading>p{color:var(--muted);max-width:470px;margin:0;font-size:16px;line-height:1.85}.contact-page .contact-travel-route{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:23px;display:flex}.contact-page .contact-travel-route>span{align-items:center;gap:15px;font-size:16px;line-height:1.5;display:flex}.contact-page .contact-travel-route b{color:var(--link,#087ca6);font-size:13px;font-weight:500}.contact-page .contact-travel-route>i{color:var(--muted);font-size:23px;font-style:normal}.contact-page .contact-travel-options{grid-template-columns:1fr 1fr;gap:65px;padding-block:40px;display:grid}.contact-page .contact-travel-option h3{font-family:var(--display);letter-spacing:-.04em;margin:15px 0;font-size:27px;line-height:1.3}.contact-page .contact-option-number{color:var(--muted);font-size:13px}.contact-page .contact-travel-option p{color:var(--muted);margin-bottom:23px;font-size:16px;line-height:1.85}.contact-page .contact-travel-option .text-link{font-size:14px}.contact-page .contact-ferry-links{flex-wrap:wrap;gap:25px;display:flex}.contact-page .contact-ferry-links a{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:8px;font-size:14px;font-weight:600;display:inline-flex}.contact-page .contact-easybook{border:1px solid var(--line);background:var(--surface-soft,#edf5fa);border-radius:7px;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:34px;display:grid}.contact-page .contact-easybook-brand{border-right:1px dashed var(--line);align-items:center;gap:13px;padding-right:28px;display:flex}.contact-page .contact-easybook-brand>span:last-child{font-family:var(--display);letter-spacing:-.035em;font-size:26px;font-weight:600}.contact-page .contact-easybook-brand small{font-family:var(--sans);letter-spacing:0;color:var(--muted);margin-top:5px;font-size:12px;font-weight:400;display:block}.contact-page .contact-ticket-icon{width:48px;height:48px;color:var(--link,#087ca6);flex-shrink:0}.contact-page .contact-ticket-icon svg{width:100%;height:100%}.contact-page .contact-easybook h3{margin-bottom:10px;font-size:21px;font-weight:500;line-height:1.35}.contact-page .contact-easybook p{color:var(--muted);max-width:460px;margin:0;font-size:14px;line-height:1.8}.contact-page .contact-easybook .button{white-space:nowrap;font-size:14px}.contact-page .contact-driving{border-bottom:1px solid var(--line);margin-top:35px}.contact-page .contact-driving>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:18px;list-style:none;display:flex}.contact-page .contact-driving>summary>span:last-child{color:var(--link,#087ca6);font-size:28px}.contact-page .contact-driving[open]>summary>span:last-child{transform:rotate(45deg)}.contact-page .contact-driving-grid{grid-template-columns:1fr 1fr;gap:60px;padding-block:17px 30px;display:grid}.contact-page .contact-driving-grid .eyebrow{margin-bottom:12px;font-size:12px}.contact-page .contact-driving-grid h3{margin-bottom:15px;font-size:23px}.contact-page .contact-driving-grid p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.9}.contact-page .contact-driving-grid article>span{color:var(--link,#087ca6);font-size:14px}.contact-page .contact-travel-bottom{justify-content:space-between;align-items:center;gap:22px;margin-top:28px;display:flex}.contact-page .contact-travel-bottom>p{color:var(--muted);margin:0;font-size:15px}.contact-page .contact-travel-bottom .text-link{font-size:14px}.contact-page .contact-final{background:var(--surface-soft,#edf5fa);padding-block:65px}.contact-page .contact-final-inner{grid-template-columns:1fr 1fr;align-items:center;gap:70px;display:grid}.contact-page .contact-final h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-size:clamp(38px,4.3vw,62px);line-height:1.1}.contact-page .contact-final h2 .serif{font-size:1.15em}.contact-page .contact-final p:not(.eyebrow){color:var(--muted);max-width:450px;margin-bottom:24px;font-size:17px;line-height:1.9}.contact-page.locale-zh .contact-hero h1{font-size:clamp(43px,5vw,72px);line-height:1.25}.contact-page.locale-zh .contact-hero h1 .serif,.contact-page.locale-zh .contact-final h2 .serif{font-size:1em}@media (width<=1100px){.contact-page .contact-hero-grid{gap:40px}.contact-page .contact-hello-card{padding:28px}.contact-page .contact-location-grid{gap:40px}.contact-page .contact-location-photo{min-height:430px}.contact-page .contact-channels{gap:0 32px}.contact-page .contact-easybook{grid-template-columns:1fr auto;gap:24px;padding:29px}.contact-page .contact-easybook-brand{border:0;border-bottom:1px dashed var(--line);grid-column:1/-1;padding:0 0 22px}.contact-page .contact-social-row{flex-wrap:wrap}}@media (width<=800px){.contact-page .contact-map-heading{flex-direction:column;align-items:start;gap:20px}.contact-page .contact-hero{padding-top:45px}.contact-page .contact-hero-grid{grid-template-columns:1fr;gap:35px}.contact-page .contact-hero h1{font-size:69px}.contact-page .contact-hero-intro{max-width:600px}.contact-page .contact-hello-card{padding:32px}.contact-page .contact-hello-card h2{font-size:36px}.contact-page .contact-phone-number{font-size:34px}.contact-page .contact-primary-actions{grid-template-columns:1.3fr 1fr}.contact-page .contact-message-hint{max-width:500px}.contact-page .contact-channels{grid-template-columns:1fr;padding-bottom:50px}.contact-page .contact-location{padding-block:45px}.contact-page .contact-location-grid{grid-template-columns:1fr;gap:30px}.contact-page .contact-location-photo{min-height:350px}.contact-page .contact-location-copy{padding-block:0 10px}.contact-page .contact-location h2{font-size:44px}.contact-page .contact-section-heading{grid-template-columns:1fr;gap:23px}.contact-page .contact-section-heading>p{max-width:600px}.contact-page .contact-travel-options{gap:30px}.contact-page .contact-travel-route{gap:15px}.contact-page .contact-travel-route>span{gap:9px;font-size:14px}.contact-page .contact-final-inner{gap:40px}}@media (width<=600px){.contact-page .contact-map-section{padding-top:45px}.contact-page .contact-map-heading{margin-bottom:23px}.contact-page .contact-map-frame iframe{height:320px}.contact-page .contact-hero{padding:34px 0 38px}.contact-page .contact-hero h1{font-size:clamp(43px,11.6vw,64px)}.contact-page .contact-hero-intro{font-size:16px}.contact-page .contact-response{gap:12px;margin-top:24px}.contact-page .contact-response strong{font-size:14px}.contact-page .contact-response div>span{font-size:13px}.contact-page .contact-getting-link{gap:12px;margin-top:24px;font-size:13px}.contact-page .contact-hello-card{padding:24px}.contact-page .contact-hello-top{margin-bottom:24px;padding-bottom:19px}.contact-page .contact-hello-top>svg{width:48px;height:48px}.contact-page .contact-hello-card h2{font-size:30px}.contact-page .contact-hello-card .eyebrow{letter-spacing:.06em;font-size:11px}.contact-page .contact-phone-number{font-size:29px}.contact-page .contact-primary-actions{grid-template-columns:1fr}.contact-page .contact-channel{gap:13px;padding-block:26px}.contact-page .contact-channel-icon{width:36px;height:36px}.contact-page .contact-channel-icon>svg{width:20px;height:20px}.contact-page .contact-channel h2{font-size:25px}.contact-page .contact-email-address{gap:6px;font-size:14px}.contact-page .contact-channel p:not(.eyebrow){font-size:14px}.contact-page .contact-social-row{gap:15px;padding-top:22px}.contact-page .contact-social-row>div{gap:9px 20px}.contact-page .contact-social-row a{font-size:14px}.contact-page .contact-location-photo{min-height:290px}.contact-page .contact-location-photo>span{padding:45px 22px 20px;font-size:30px}.contact-page .contact-location h2{font-size:36px}.contact-page .contact-location address{font-size:16px}.contact-page .contact-travel{padding-block:55px}.contact-page .contact-section-heading h2{font-size:42px}.contact-page .contact-travel-route{flex-direction:column;align-items:stretch;gap:12px;padding-block:22px}.contact-page .contact-travel-route>span{gap:19px;font-size:16px}.contact-page .contact-travel-route>i{transform-origin:50%;width:18px;font-size:17px;line-height:1;transform:rotate(90deg)}.contact-page .contact-travel-options{grid-template-columns:1fr;gap:30px;padding-block:30px}.contact-page .contact-travel-option h3{font-size:26px}.contact-page .contact-travel-option p{margin-bottom:19px}.contact-page .contact-easybook{grid-template-columns:1fr;gap:21px;padding:25px}.contact-page .contact-easybook-brand{gap:13px;padding-bottom:19px}.contact-page .contact-easybook-brand>span:last-child{font-size:27px}.contact-page .contact-easybook h3{font-size:23px}.contact-page .contact-easybook .button{white-space:normal}.contact-page .contact-driving>summary{font-size:17px}.contact-page .contact-driving-grid{grid-template-columns:1fr;gap:28px}.contact-page .contact-travel-bottom{flex-direction:column;align-items:start;gap:18px}.contact-page .contact-final{padding-block:50px}.contact-page .contact-final-inner{grid-template-columns:1fr;gap:25px}.contact-page .contact-final h2{font-size:46px}.contact-page .contact-final p:not(.eyebrow){font-size:16px}.contact-page.locale-zh .contact-hero h1{font-size:clamp(37px,10.2vw,55px)}}@media (prefers-reduced-motion:reduce){.contact-page .contact-location-photo>img{transform:none!important}}
