@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;800;900&family=Noto+Serif+TC:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:34px}body{margin:0;background:var(--cream);color:var(--green);font-family:'Noto Sans TC',sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}figure,p{margin:0}p{line-height:1.95}h1,h2,h3{margin:0;line-height:1.35}button{border:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}section[id]{scroll-margin-top:25px}.skip{position:fixed;top:-90px;left:20px;background:#fff;z-index:20;padding:15px}.skip:focus{top:10px}.review{min-height:30px;display:flex;gap:24px;align-items:center;padding:7px 4%;font-size:10px;letter-spacing:1px;background:var(--green);color:var(--cream)}.review span{margin-right:auto}.review a{border-bottom:1px solid #ffffff55}.site-header{display:flex;align-items:center;gap:32px;padding:24px 4%;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px}.brand img{width:53px;height:53px;object-fit:contain}.brand>span{font-weight:700;font-size:22px;letter-spacing:3px}.brand small{display:block;font-size:8px;letter-spacing:3px;margin-top:3px}.site-header nav{display:flex;gap:30px;margin:auto;font-size:13px}.nav-book{border-bottom:1px solid;padding:10px 0;font-size:13px}.nav-book span{margin-left:24px}.menu-toggle{display:none}.eyebrow{display:block;font-size:10px;letter-spacing:2.2px;font-weight:600;margin-bottom:26px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;padding:18px 25px;background:var(--green);color:var(--cream);font-size:13px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:var(--orange)}.text-link{display:inline-block;border-bottom:1px solid;padding:12px 0;font-size:13px}.text-link span{margin-left:25px}.section{padding:110px 7%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:55px}.section-heading p{font-size:13px}.fine{font-size:11px!important;line-height:1.8;margin-top:22px;opacity:.73}.tabs{display:flex;gap:25px;border-bottom:1px solid #17362933;margin-bottom:30px}.tabs button{background:none;padding:12px 0;font-size:14px;border-bottom:3px solid transparent;margin-bottom:-1px}.tabs button[aria-selected=true]{border-color:var(--orange);color:var(--orange)}[hidden]{display:none!important}[role=tabpanel]{min-height:200px}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px}.gallery-item{padding:0;text-align:left;background:none;overflow:hidden}.gallery-item img{height:380px;transition:transform .5s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{display:block;font-size:13px;padding:20px 0}.visit{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;padding:95px 8%;background:var(--green);color:var(--cream)}.visit h2{font-size:50px;margin-bottom:30px}.visit .phone{font-size:30px;letter-spacing:1px;display:inline-block;border-bottom:1px solid #ffffff60;padding-bottom:10px;margin-bottom:22px}.visit p{font-size:13px}.visit-card{border:1px solid #ffffff44;padding:38px}.visit-card .eyebrow{font-size:11px}dt{font-size:11px;opacity:.65;margin-bottom:9px}dd{margin:0 0 23px;font-size:15px;line-height:1.8}.visit-card .button{background:var(--cream);color:var(--green);width:100%;font-size:12px}.line-link{display:block;background:none;border-bottom:1px solid #ffffff66;font-size:11px;margin:18px auto 0;padding:8px}footer{padding:55px 7% 25px}.footer-main{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:35px}.footer-brand{font-size:30px;font-weight:700;letter-spacing:4px}.footer-brand small{font-size:10px;font-weight:400;letter-spacing:1px;display:block;margin-top:12px}.social{display:flex;gap:24px;font-size:11px}details{border-top:1px solid #17362933;padding:20px 0;font-size:10px;line-height:2}summary{cursor:pointer}details p{max-width:850px;margin-top:12px}details a{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;opacity:.7}.mobile-cta{display:none}dialog{border:0;background:var(--cream);color:var(--green);padding:50px;max-width:calc(100vw - 32px);width:480px;box-shadow:0 20px 90px #0004}dialog::backdrop{background:#06180fd6}dialog h2{font-size:25px}dialog p{font-size:13px;margin:20px 0}dialog .button{margin-top:12px}.dialog-close{position:absolute;right:12px;top:8px;background:var(--cream);color:var(--green);font-size:28px;width:40px;height:40px;z-index:2}#photo-dialog{padding:10px;width:min(1000px,90vw);background:var(--green);color:var(--cream)}#photo-dialog img{max-height:78vh;object-fit:contain}#photo-dialog p{margin:12px;text-align:center}body.modal-open{overflow:hidden}
@media(min-width:1700px){body{max-width:1920px;margin:auto}.section{padding-left:10%;padding-right:10%}}
@media(max-width:1000px){.site-header{gap:20px}.site-header nav{gap:18px}.section{padding:80px 6%}.visit{gap:45px;padding:75px 6%}.visit h2{font-size:40px}.visit-card{padding:25px}.gallery-item img{height:300px}.section-heading{align-items:start}.section-heading p{max-width:260px}}
@media(max-width:650px){.review{gap:13px;font-size:8px;letter-spacing:.4px;min-height:32px}.site-header{padding:17px 5%;gap:15px}.brand img{width:39px;height:39px}.brand>span{font-size:18px;letter-spacing:2px}.brand small{font-size:7px;letter-spacing:1.5px}.nav-book{font-size:11px;margin-left:auto}.nav-book span{margin-left:10px}.menu-toggle{display:block;background:none;padding:6px;font-size:21px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:25px;box-shadow:0 10px 12px #0001}.site-header nav.open{display:flex;flex-direction:column;gap:24px}.section{padding:70px 6%}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:20px}.section-heading{display:block;margin-bottom:30px}.section-heading p{margin-top:20px;max-width:100%;font-size:12px}.section-heading .text-link{margin-top:12px}.button{font-size:12px;padding:16px 20px}.gallery{gap:14px;grid-template-columns:1fr 1fr}.gallery-item:first-child{grid-column:1/-1}.gallery-item:first-child img{height:260px}.gallery-item img{height:210px}.gallery-item span{font-size:11px;padding:14px 0}.visit{grid-template-columns:1fr;gap:35px;padding:65px 6%}.visit h2{font-size:38px}.visit .phone{font-size:27px}.visit-card{padding:28px}.footer-main{display:block}.social{margin-top:28px;font-size:10px;gap:25px}.footer-brand{font-size:26px}footer{padding:45px 6% 95px}.footer-bottom{font-size:8px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:8;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--cream);gap:8px;border-top:1px solid #17362933}.mobile-cta a,.mobile-cta button{width:50%;text-align:center;padding:12px 0;font-size:12px;background:var(--green);color:var(--cream)}.mobile-cta button{background:var(--orange);color:#fff}.mobile-cta small{font-size:9px;opacity:.8;margin-left:5px}dialog{padding:50px 25px 30px}.tabs{gap:22px}[role=tabpanel]{min-height:175px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
