:root{--ink:#142b3a;--blue:#517589;--muted:#526b7b;--line:#bdcbd3;--mist:#eaf0f3;--white:#fff;--serif:Georgia,'Noto Serif TC','Songti TC','Songti SC','Hiragino Mincho ProN',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang TC','PingFang SC','Hiragino Kaku Gothic ProN','Malgun Gothic',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.23}h1{font-size:clamp(42px,4.7vw,80px);letter-spacing:-.035em}h2{font-size:clamp(32px,3.65vw,60px);letter-spacing:-.03em}h3{font-size:clamp(24px,2.15vw,36px)}:lang(zh-Hant) h1,:lang(zh-Hans) h1,:lang(ja) h1,:lang(ko) h1{font-size:clamp(42px,4.4vw,74px);line-height:1.38;letter-spacing:.015em}:lang(ko) h1{font-size:clamp(38px,3.7vw,63px)}:lang(zh-Hant) h2,:lang(zh-Hans) h2,:lang(ja) h2,:lang(ko) h2{line-height:1.4;letter-spacing:0}h1 span,h2 span{display:block}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #5298ba;outline-offset:5px}.container{width:min(1380px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;left:16px;top:-120px;background:var(--white);padding:12px 20px;z-index:99}.skip:focus{top:12px}.site-header{border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;gap:40px;min-height:92px}.wordmark{font:600 27px/1.2 var(--serif);letter-spacing:.2em}.main-nav{display:flex;gap:36px;margin-left:auto;font-size:16px;white-space:nowrap}.main-nav a:hover,.languages a:hover{color:var(--blue)}.header-phone{margin-left:32px;display:grid;line-height:1.35;white-space:nowrap;text-align:right}.header-phone small{font-size:11px;color:var(--muted)}.header-phone strong{font-size:22px;letter-spacing:.025em}.language-bar{display:flex;justify-content:flex-end;padding-bottom:13px}.languages{display:flex;gap:20px;font-size:12px;align-items:center}.languages a{padding:2px 0}.languages a[aria-current=page]{border-bottom:1px solid var(--ink)}.hero{display:grid;grid-template-columns:48% 52%;min-height:620px}.hero-copy{padding:clamp(56px,6vw,100px) clamp(32px,4vw,72px);align-self:center}.hero-copy>p{max-width:560px;color:var(--muted);margin-top:24px}.hero-photo{height:100%;min-height:620px;width:100%;object-position:57% 50%}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{border:1px solid var(--ink);background:var(--ink);color:var(--white);display:inline-flex;justify-content:center;align-items:center;min-height:53px;padding:12px 22px;font-size:15px;line-height:1.5;gap:10px;text-align:center;transition:background .2s,color .2s}.button strong{font-weight:600}.button.outline{background:transparent;color:var(--ink)}.button:hover{background:#26495e}.button.outline:hover{background:var(--mist);color:var(--ink)}.hero-copy p.hero-note{font-size:12px;line-height:1.7;margin-top:20px}.care{padding:90px 0 76px}.care-intro{color:var(--muted);margin-top:20px;max-width:790px}.service-list{margin-top:42px;border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:80px minmax(230px,1.05fr) minmax(250px,1fr) 24px;gap:32px;align-items:center;border-bottom:1px solid var(--line);padding:30px 0}.service-number{font:400 28px var(--serif);color:var(--blue);border-right:1px solid var(--line);padding-right:25px}.service-row p{font-size:15px;color:var(--muted);line-height:1.9}.arrow{width:24px;height:20px;stroke:currentColor;fill:none;stroke-width:1.4;flex-shrink:0;transition:transform .2s}.service-row:hover .arrow,.text-link:hover .arrow{transform:translateX(4px)}.experience{display:grid;grid-template-columns:52% 48%;align-items:stretch}.experience-photo{width:100%;height:100%;min-height:650px}.experience-copy{padding:72px clamp(32px,4vw,72px);align-self:center}.experience-copy p{color:var(--muted);font-size:16px;margin-top:24px;line-height:1.95}.text-link{display:inline-flex;gap:14px;align-items:center;font:400 21px/1.6 var(--serif);border-bottom:1px solid var(--ink);margin-top:30px;padding-bottom:4px}.image-band{width:100%;height:300px;margin-top:0;object-position:50% 60%}.booking{background:var(--ink);color:var(--white);padding:64px 0 70px}.booking-grid{display:grid;grid-template-columns:.88fr 1.1fr 1.3fr;gap:48px;align-items:start}.booking h2{font-size:clamp(31px,3vw,51px)}.booking-intro{font-size:14px;line-height:1.8;margin-top:20px;color:#d1dce3}.booking-contact{border-left:1px solid #638092;padding-left:42px;min-width:0}.contact-label{font-size:12px;color:#d1dce3;letter-spacing:.03em}.contact-number{font:400 clamp(32px,3vw,51px)/1.5 var(--serif);letter-spacing:.02em;display:block;margin-top:9px;white-space:nowrap}.booking .actions{margin-top:22px;gap:10px}.booking .button{border-color:var(--white);background:var(--white);color:var(--ink);padding:11px 16px}.booking .button.outline{background:transparent;color:var(--white)}.booking .button:hover{background:#dce7ed}.booking .button.outline:hover{color:var(--ink)}.steps{display:flex;list-style:none;padding:0;margin:0;gap:26px}.steps li{flex:1;min-width:0}.step-number{font:25px/1.6 var(--serif);display:block;border-bottom:1px solid #8b9fac;padding-bottom:4px;margin-bottom:16px}.steps h3{font-size:21px}.steps p{font-size:13px;line-height:1.85;margin-top:12px;color:#dbe5eb}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:88px;padding-top:85px;padding-bottom:86px}.faq h2{font-size:clamp(32px,3vw,52px)}.faq-intro{font-size:15px;color:var(--muted);margin-top:22px;max-width:380px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;gap:24px;font-size:16px;align-items:flex-start}summary::-webkit-details-marker{display:none}summary::after{content:'+';font:300 25px/1 var(--sans);flex-shrink:0}details[open] summary::after{content:'−'}details p{font-size:15px;color:var(--muted);line-height:1.95;padding:0 34px 24px 0}.footer{padding-bottom:30px}.footer-top{border-top:1px solid var(--line);display:flex;gap:45px;align-items:center;padding:26px 0}.footer-brand .wordmark{font-size:23px}.footer-brand p{font-size:12px;color:var(--muted);letter-spacing:.15em}.footer-top .text-link{margin:0;font-family:var(--sans);font-size:14px;border:0}.footer-top .languages{margin-left:auto}.legal{font-size:11px;color:var(--muted);line-height:1.7}.legal p{margin:5px 0}.contact-dock{display:none}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,25px);background:var(--ink);color:var(--white);box-shadow:0 4px 28px #0002;padding:14px 24px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:100;max-width:calc(100% - 32px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{padding:30px;border:1px solid var(--line);width:min(440px,calc(100% - 30px));color:var(--ink);box-shadow:0 15px 70px #142b3a30}dialog::backdrop{background:#142b3a66}dialog p{font-size:15px;margin-bottom:20px}dialog input{width:100%;padding:12px;border:1px solid var(--line);margin-bottom:20px}.copy-close{display:block;margin-left:auto}
@media(min-width:1700px){.hero{min-height:720px}.hero-photo{min-height:720px}.hero-copy{padding-left:max(70px,calc((100vw - 1500px)/2))}.hero-copy h1{font-size:82px}:lang(zh-Hant) .hero-copy h1,:lang(zh-Hans) .hero-copy h1,:lang(ja) .hero-copy h1{font-size:75px}}
@media(max-width:1200px){.container{width:calc(100% - 64px)}.header-main{gap:20px}.main-nav{gap:24px}.header-phone{margin-left:10px}.hero-copy{padding:52px 32px}.hero,.hero-photo{min-height:590px}.hero h1{font-size:52px}:lang(ko) .hero h1{font-size:43px}.hero .actions{flex-direction:column;align-items:stretch;max-width:330px}.hero .button{min-height:49px}.hero-copy>p{font-size:16px}.booking-grid{grid-template-columns:1fr 1fr;gap:40px}.steps{grid-column:1/-1;margin-top:8px;gap:45px}.booking-contact{padding-left:35px}.contact-number{font-size:43px}.service-row{grid-template-columns:55px 1fr 1.1fr 20px;gap:24px}.service-number{padding-right:18px}.service-row h3{font-size:28px}.experience-copy{padding:55px 32px}.experience-photo{min-height:660px}.faq{gap:50px}.footer-top{gap:25px}}
@media(max-width:760px){body{font-size:16px}.container{width:calc(100% - 40px)}.header-main{min-height:72px;gap:12px;justify-content:space-between}.wordmark{font-size:21px;letter-spacing:.13em}.main-nav{display:none}.header-phone{margin-left:0}.header-phone small{font-size:10px}.header-phone strong{font-size:17px}.language-bar{padding-bottom:11px}.languages{gap:19px;font-size:11px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:48px 24px 38px;order:0}.hero h1{font-size:46px;letter-spacing:-.03em}:lang(zh-Hant) .hero h1,:lang(zh-Hans) .hero h1,:lang(ja) .hero h1{font-size:43px;letter-spacing:0}:lang(ko) .hero h1{font-size:38px}.hero-copy>p{font-size:15px;line-height:1.9;margin-top:22px;max-width:450px}.hero .actions{margin-top:28px;gap:11px;max-width:none;flex-direction:row}.hero .button{flex:1;min-width:0;padding:11px 10px;font-size:12px;flex-direction:column;gap:1px}.hero-copy p.hero-note{font-size:11px;margin-top:19px}.hero-photo{height:auto;min-height:0;aspect-ratio:1.45;width:100%;object-position:50% 55%}.care{padding:54px 0}.care h2{font-size:31px}.care-intro{font-size:14px;margin-top:18px}.service-list{margin-top:28px}.service-row{grid-template-columns:36px 1fr 20px;gap:15px;padding:25px 0;align-items:start}.service-number{grid-column:1;grid-row:1/3;font-size:21px;padding-right:8px;line-height:1.6}.service-row h3{font-size:24px;line-height:1.5}.service-row p{grid-column:2;grid-row:2;font-size:13px;line-height:1.9}.service-row .arrow{grid-column:3;grid-row:1;width:19px;margin-top:8px}.experience{display:flex;flex-direction:column}.experience-photo{height:auto;min-height:0;aspect-ratio:1.25}.experience-copy{padding:45px 24px 52px}.experience-copy h2{font-size:37px}.experience-copy p{font-size:14px;margin-top:21px}.text-link{font-size:19px;margin-top:25px}.image-band{height:190px;object-position:50% 57%}.booking{padding:46px 0 48px}.booking-grid{display:flex;flex-direction:column;gap:30px}.booking h2{font-size:38px}.booking-intro{font-size:13px;margin-top:17px}.booking-contact{border-left:0;border-top:1px solid #638092;width:100%;padding:23px 0 0}.contact-number{font-size:43px;margin-top:5px}.booking .actions{margin-top:17px}.booking .button{min-width:125px;font-size:14px}.steps{width:100%;gap:18px;margin-top:5px}.steps h3{font-size:20px}.steps p{font-size:12px;margin-top:11px}.step-number{font-size:23px;margin-bottom:14px}.faq{display:flex;flex-direction:column;gap:28px;padding-top:48px;padding-bottom:50px}.faq h2{font-size:33px}.faq-intro{font-size:14px;margin-top:17px}.faq-list{width:100%}summary{font-size:14px;padding:19px 0;gap:15px}details p{font-size:13px;padding-right:12px}.footer{padding-bottom:108px}.footer-top{flex-wrap:wrap;gap:22px;align-items:center;padding:24px 0}.footer-brand .wordmark{font-size:22px}.footer-top .text-link{font-size:12px}.footer-top .languages{margin-left:0;flex-basis:100%;gap:25px}.legal{font-size:10px;margin-top:7px}.contact-dock{position:fixed;bottom:0;left:0;width:100%;display:flex;z-index:50;box-shadow:0 -2px 18px #142b3a15;padding-bottom:env(safe-area-inset-bottom);background:var(--white);border-top:1px solid var(--line)}.contact-dock>a,.contact-dock>button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font:12px/1.5 var(--sans);padding:11px 6px;border:0;min-height:62px;background:var(--ink);color:var(--white)}.contact-dock>button{background:var(--white);color:var(--ink)}.contact-dock strong{font-size:16px;letter-spacing:.02em}.toast{bottom:85px;font-size:12px;padding:12px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
