@layer tokens, base, components, responsive;
@layer tokens {
 :root{--ink:#252A27;--gold:#D4B77A;--old-gold:#A78B5B;--red:#A84636;--paper:#F7F3EA;--line:#d5cec0;--serif:"Songti TC","Noto Serif TC",serif;--sans:system-ui,"PingFang TC",sans-serif;--space:clamp(4rem,7vw,6.5rem)}
}

@layer components {
 .site-header>.language-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding-inline:.65rem;border:1px solid #677064;color:var(--paper);font-family:var(--sans);font-size:.875rem;font-weight:700;letter-spacing:.08em;text-decoration:none}
 .site-header>.language-link:hover{border-color:var(--gold);color:var(--gold)}
}

@layer responsive {
 @media(max-width:767px){.site-header>.language-link{margin-left:auto;padding-inline:.55rem}.site-header>.language-link+.menu{margin-left:0}}
}
@layer base {
 *{box-sizing:border-box}html{font-size:16px;scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.8}h1,h2,h3,p,figure{margin:0}p+p{margin-top:1rem}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.3;text-wrap:balance}h1{font-size:4rem;letter-spacing:.08em}h2{font-size:2.6rem;letter-spacing:.06em}h3{font-size:1.4rem}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.3em}a,summary{touch-action:manipulation}a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}a:hover{text-decoration-thickness:2px}figure{min-width:0}figcaption{font-size:1rem;line-height:1.6;margin-top:.5rem;color:#555a52}.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}.section{padding-block:var(--space)}.eyebrow{font-size:1rem;letter-spacing:.16em;margin-bottom:1.25rem}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.text-link{display:inline-flex;align-items:center;min-height:44px;gap:.4em}.button{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:50px;padding:.55rem 1.35rem;border:1px solid currentColor;border-radius:3px;text-decoration:none}.primary{background:var(--gold);border-color:var(--gold);color:var(--ink)}.arc{width:160px;height:52px;color:var(--old-gold);opacity:.5;pointer-events:none}.skip{position:absolute;left:1rem;top:-10rem;z-index:10;background:var(--paper);padding:.5rem 1rem}.skip:focus{top:1rem}
}
@layer components {
 .site-header{display:flex;align-items:center;gap:2rem;padding:1rem max(24px,calc((100% - 1180px)/2));background:var(--ink);color:var(--paper);position:relative;z-index:2}.brand{display:flex;align-items:center;min-height:44px}.brand img,.footer-brand{width:160px;height:auto;filter:invert(1)}.quick-nav{display:flex;gap:1.5rem;align-items:center;margin-left:auto}.quick-nav a{min-height:44px;display:flex;align-items:center;text-decoration:none}.menu{margin-left:auto}.menu summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;gap:1rem}.menu summary::-webkit-details-marker{display:none}.menu-panel{position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:2rem max(24px,calc((100% - 1180px)/2));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;border-top:1px solid #677064}.nav-group p{color:var(--gold);font-family:var(--serif);font-size:1.125rem}.nav-group a{display:flex;font-size:1rem;text-decoration:none}.hero-photo{width:100%;aspect-ratio:2.3;object-fit:cover;object-position:50% 50%}.hero-copy{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;padding-block:1.5rem 2rem;border-bottom:1px solid var(--line)}.hero-copy .arc{position:absolute;right:2rem;top:1rem}.hero-intro{padding-top:2rem}.hero-intro>p{font-size:1.125rem}.quiet{display:grid;grid-template-columns:1.05fr 1.4fr .7fr;gap:1.5rem;align-items:center}.quiet h2{font-size:2.2rem;margin-bottom:1.5rem}.quiet-copy{padding-right:.75rem}.key-note{border-left:2px solid var(--old-gold);padding-left:1rem}.space-photo img{aspect-ratio:4/3;object-fit:cover}.life-photo{align-self:end;margin-bottom:2rem}.life-photo img{aspect-ratio:4/5;object-fit:cover}.quiet-links{grid-column:1/-1;display:flex;gap:2rem;justify-content:flex-end}.section-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:2.5rem}.section-heading>p{max-width:23rem}.stay{padding-top:1rem}.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--old-gold);margin-bottom:2.5rem}.plan{display:flex;flex-direction:column;padding:1.5rem 1.25rem 1rem;border-right:1px solid var(--line)}.plan:first-child{padding-left:0}.plan:last-child{border:0;padding-right:0}.number{font-family:var(--serif);color:#766341;font-size:1rem;letter-spacing:.12em;margin-bottom:1rem}.audience{margin-top:.8rem;min-height:4em}.rate{margin-block:1.25rem}.amount{font-family:var(--serif);font-size:1.45rem;line-height:1.5;color:var(--red);font-weight:600}.unit{font-size:1rem;margin-top:.4rem}.restrictions{font-size:1rem;line-height:1.75}.restrictions p+p{margin-top:.65rem}.plan-links{margin-top:auto;padding-top:1rem;display:flex;flex-wrap:wrap;column-gap:1rem}.shared-photo{width:100%}.shared-photo img{width:100%;aspect-ratio:2.5;object-fit:cover;object-position:50% 80%}.dining{display:grid;grid-template-columns:1.25fr 1fr;background:var(--ink);color:var(--paper)}.dining figure{position:relative}.dining img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}.dining figcaption{position:absolute;bottom:0;left:0;right:0;margin:0;padding:.6rem 1.5rem;background:var(--ink);color:var(--paper)}.dining-copy{padding:clamp(2rem,5vw,5rem);align-self:center}.dining-copy .arc{margin-bottom:1rem}.dining-copy h2{font-size:3rem;margin-bottom:1.5rem}.dining-copy .button{margin-top:2rem}.booking{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.booking h2{margin-bottom:1.5rem}.booking .actions{margin-bottom:1.5rem}.steps{list-style:none;margin:0;padding:0}.steps li{display:flex;gap:1.5rem;padding:1rem 0;border-top:1px solid var(--line)}.steps li>span{font-family:var(--serif);font-size:1.5rem;color:#766341}.steps h3{font-size:1.3rem}.steps p{margin-top:.25rem}.booking-boundary{border-left:2px solid var(--red);padding-left:1rem;margin-block:1.25rem}.delivery{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 190px;gap:3rem;align-items:center;padding-block:3rem}.delivery h2{font-size:2.3rem;margin-bottom:1rem}.delivery img{width:100%;height:250px;object-fit:contain}.site-footer{background:var(--ink);color:var(--paper);padding-block:3rem}.footer-brand{margin-bottom:2rem}.footer-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.5rem}.closing{border-top:1px solid #677064;padding-top:1.5rem;margin-top:2rem;font-size:1rem}
}
@layer responsive {
 @media(max-width:1023px){.wrap{width:calc(100% - 48px)}.quick-nav{display:none}h1{font-size:3rem}.quiet{grid-template-columns:1fr 1fr}.quiet-copy{grid-column:1/-1;max-width:38rem}.space-photo{align-self:center}.life-photo{margin:0}.life-photo img{aspect-ratio:4/3}.plans{grid-template-columns:repeat(2,minmax(0,1fr))}.plan{border-bottom:1px solid var(--line);padding:1.5rem!important}.plan:nth-child(2){border-right:0}.footer-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.booking{gap:2rem}.hero-copy{gap:1.5rem}.dining-copy{padding:2rem}}
 @media(max-width:767px){body{font-size:1rem}.wrap{width:calc(100% - 40px)}.site-header{padding:.75rem 20px;gap:1rem}.brand img{width:135px}.menu summary{font-size:1rem}.menu-panel{position:static;grid-template-columns:repeat(2,minmax(0,1fr));padding:1.5rem 0;gap:1.5rem}.site-header:has(.menu[open]){flex-wrap:wrap}.menu[open]{width:100%;margin:0}.menu[open] summary{justify-content:flex-end}.hero-photo{aspect-ratio:5/4}.hero-copy{display:block;padding-block:2rem 2.5rem}.hero-copy .arc{right:0;top:1rem;width:100px}.hero-intro{padding-top:1.5rem}.hero-intro>p{font-size:1rem}.eyebrow{margin-bottom:1rem;font-size:1rem;letter-spacing:.1em}h1{font-size:2.5rem;line-height:1.25}h2,.quiet h2{font-size:2rem}h3{font-size:1.35rem}.desktop-break{display:none}.actions{gap:.75rem}.button{min-height:48px;padding:.6rem 1rem}.quiet{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem}.quiet-copy{padding:0}.space-photo img{aspect-ratio:4/3}.life-photo{width:76%;align-self:flex-end}.life-photo img{aspect-ratio:16/9}.quiet-links{justify-content:flex-start;gap:1.5rem;flex-wrap:wrap}.section-heading{display:block;margin-bottom:2rem}.section-heading>p{margin-top:1.25rem}.plans{display:block}.plan{padding:1.5rem 0!important;border-right:0;display:grid;grid-template-columns:2rem minmax(0,1fr);column-gap:.5rem}.number{grid-column:1;grid-row:1;line-height:1.75;margin:0}.plan h3{grid-column:2}.plan>*:not(.number):not(h3){grid-column:2}.audience{min-height:0;margin-top:.65rem}.rate{margin-block:1rem}.plan-links{margin-top:0}.shared-photo img{aspect-ratio:4/3;object-position:50% 50%}.dining{display:flex;flex-direction:column}.dining img{height:auto;aspect-ratio:4/3}.dining figcaption{position:static;padding:.65rem 20px}.dining-copy{padding:2.5rem 20px 3rem}.dining-copy h2{font-size:2.4rem}.dining-copy .arc{height:35px}.booking{display:block}.steps{margin-top:2.5rem}.delivery{grid-template-columns:minmax(0,1fr) 105px;gap:1rem;padding-block:2.5rem}.delivery h2{font-size:1.8rem}.delivery img{height:180px}.delivery .actions{display:block}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem}.nav-group a{overflow-wrap:anywhere}.closing{font-size:1rem}}
 @media(max-width:374px){.wrap{width:calc(100% - 32px)}.site-header{padding-inline:16px}h1{font-size:2.3rem}.hero-copy .actions{display:grid;grid-template-columns:1fr}.delivery{grid-template-columns:1fr}.delivery figure{width:120px;justify-self:end}.menu-panel{column-gap:.75rem}}
 @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
}
