@layer tokens{:root{--gc-gold:#f5b015;--gc-black:#080707;--gc-white:#fff;--warm-white:#faf9f6;--paper:#f2f0e9;--ink:var(--gc-black);--muted:#69665f;--line:#d8d5cd;--font-sans:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;--font-serif:"Noto Serif TC","Songti TC","PMingLiU",serif;--font-editorial:Georgia,"Times New Roman",serif;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4.5rem;--space-7:7rem;--content-width:1360px;--gutter:clamp(1.25rem,5vw,5.5rem);--duration:.18s}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--warm-white);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{max-width:100%;height:auto;display:block}p,h1,h2,h3,figure{margin:0}a:focus-visible,summary:focus-visible{outline-offset:6px;outline:3px solid #956600}::selection{background:var(--gc-gold);color:var(--gc-black)}.section-wrap{width:min(100%,var(--content-width));padding-inline:var(--gutter);margin-inline:auto}.section-space{padding-top:100px;padding-bottom:100px}.eyebrow{letter-spacing:.16em;font-size:.75rem;font-weight:500;line-height:1.8}.button{background:var(--gc-gold);min-height:50px;color:var(--gc-black);transition:background var(--duration),transform var(--duration);justify-content:space-between;align-items:center;gap:3rem;padding:12px 24px;font-size:.875rem;font-weight:600;display:inline-flex}.button:hover{background:#ffc342;transform:translateY(-2px)}.button span{font-size:1.3rem;font-weight:400}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:2rem;min-height:48px;font-size:.875rem;display:inline-flex}.text-link:hover{border-color:var(--gc-gold)}.skip-link{z-index:100;background:var(--gc-gold);padding:12px 24px;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:10px}.header{height:102px;padding:0 var(--gutter);background:var(--gc-white);z-index:30;border-bottom:1px solid #eae8e1;align-items:center;gap:2.5rem;display:flex;position:sticky;top:0}.brand-lockup{flex-shrink:0;align-items:center;gap:12px;margin-right:auto;display:flex}.brand-lockup img{object-fit:contain;width:76px;height:76px}.brand-lockup>span{letter-spacing:.08em;font-size:1.15rem;font-weight:600}.brand-lockup small{letter-spacing:.04em;color:var(--muted);font-size:.75rem;font-weight:400;display:block}.desktop-nav{gap:26px;display:flex}.desktop-nav a{white-space:nowrap;font-size:.875rem;position:relative}.desktop-nav a:after{content:"";background:var(--gc-gold);height:2px;transition:right var(--duration);position:absolute;bottom:-6px;left:0;right:100%}.desktop-nav a:hover:after{right:0}.header-booking{gap:1.6rem}.mobile-menu{display:none}.hero{grid-template-columns:1.13fr 1fr;align-items:center;gap:0 6%;padding-top:56px;display:grid}.hero-copy{padding:32px 0 38px}.hero .eyebrow{letter-spacing:.14em;align-items:center;gap:12px;font-size:.75rem;display:flex}.gold-line{background:var(--gc-gold);width:24px;height:2px}.hero-brand{letter-spacing:.12em;margin:34px 0 16px;font-size:.875rem;font-weight:600}.hero-brand span{color:var(--muted);letter-spacing:.14em;margin-left:16px;font-size:.75rem;font-weight:400}.hero h1{font-family:var(--font-serif);letter-spacing:.045em;white-space:nowrap;font-size:clamp(2rem,3.5vw,3.3rem);font-weight:500;line-height:1.6}.accent-underline{z-index:0;position:relative}.accent-underline:after{content:"";background:var(--gc-gold);z-index:-1;height:7px;position:absolute;bottom:5px;left:0;right:0}.hero-english{font-family:var(--font-editorial);letter-spacing:-.045em;margin-top:24px;font-size:clamp(3rem,5.7vw,5.25rem);line-height:1.02}.hero-english em{font-weight:400}.gold-period{vertical-align:baseline;color:var(--gc-gold);margin-left:12px;font-size:1rem;display:inline-block}.hero-description{color:var(--muted);letter-spacing:.035em;margin:28px 0 24px;font-size:.9rem;line-height:1.9}.hero-actions{align-items:center;gap:30px;display:flex}.hero-visual{flex-direction:column;align-self:stretch;padding-top:10px;display:flex;position:relative}.photo-placeholder{color:#676359;background:#e8e5dd;flex-direction:column;justify-content:space-between;min-height:360px;padding:25px;display:flex;overflow:hidden}.hero-placeholder{background:#e5e1d8;flex:1;min-height:590px}.placeholder-top,.placeholder-bottom{letter-spacing:.15em;justify-content:space-between;gap:1rem;font-size:.75rem;display:flex}.placeholder-top span{font-size:.75rem}.placeholder-middle{text-align:center;padding:40px 0}.placeholder-rule{background:#a6a095;width:1px;height:44px;margin:0 auto 30px;display:block}.placeholder-middle p{font-family:var(--font-serif);letter-spacing:.15em;font-size:1.3rem;line-height:2}.placeholder-middle small{letter-spacing:.06em;margin-top:28px;font-size:.75rem;display:block}.placeholder-bottom{align-items:center}.placeholder-bottom>span{font-size:1.5rem}.visual-caption{letter-spacing:.08em;color:var(--muted);text-align:right;padding-top:12px;font-size:.75rem}.hero-foot{border-bottom:1px solid var(--line);letter-spacing:.12em;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:16px;padding:36px 0 26px;font-size:.75rem;display:flex}.hero-foot a{letter-spacing:.08em;gap:22px;font-size:.75rem;display:flex}.intro{grid-template-columns:.75fr 1.5fr .65fr;gap:32px;padding-block:100px;display:grid}.intro>.eyebrow{padding-top:10px}.intro h2,h2{font-family:var(--font-serif);letter-spacing:.05em;font-size:clamp(1.7rem,2.6vw,2.5rem);font-weight:500;line-height:1.65}.intro p:not(.eyebrow){color:var(--muted);margin-top:26px;font-size:.9rem;line-height:2}.intro-note{font-family:var(--font-editorial);color:#7c715c;align-self:end;font-size:1.6rem;line-height:1.35;transform:rotate(-5deg)}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:44px;display:flex}.section-heading .eyebrow{margin-bottom:16px}.section-aside{color:var(--muted);font-size:.875rem;line-height:1.9}.portfolio{padding-top:20px}.portfolio-grid{grid-template-columns:1fr 1fr 1fr;gap:26px;display:grid}.portfolio-grid figure:nth-child(2){padding-top:55px}.portfolio-grid figure:nth-child(3){padding-top:110px}.portfolio-grid .photo-placeholder{aspect-ratio:3/4;min-height:0;padding:22px}.portfolio-grid figure:nth-child(2) .photo-placeholder{background:#e3e2dc}.portfolio-grid figure:nth-child(3) .photo-placeholder{background:#ede5db}.portfolio-grid .placeholder-middle p{font-size:1.05rem}.portfolio-grid .placeholder-top{letter-spacing:.09em;font-size:.75rem}.portfolio-grid .placeholder-middle{padding:20px 0}.portfolio-grid .placeholder-rule{height:24px;margin-bottom:20px}.portfolio-grid .placeholder-middle small{margin-top:18px;font-size:.75rem}.portfolio-grid figcaption{justify-content:space-between;align-items:center;padding-top:18px;display:flex}.portfolio-grid figcaption small{color:var(--muted);letter-spacing:.12em;margin-left:14px;font-size:.75rem}.pending{color:var(--muted);font-size:.75rem}.content-note{color:var(--muted);margin-top:32px;font-size:.75rem}.services-section{background:var(--gc-black);color:var(--gc-white)}.services-layout{grid-template-columns:.85fr 1.4fr;gap:10%;display:grid}.services-intro .eyebrow{color:var(--gc-gold);margin-bottom:22px}.services-intro>p:not(.eyebrow){color:#bbb7b0;margin-top:26px;font-size:.9rem}.service-footnote{color:#bbb7b0;margin-top:36px;font-size:.75rem;display:block}.service-list article{border-bottom:1px solid #45423c;gap:24px;padding:27px 0;display:flex}.service-list article:first-child{padding-top:0}.service-number{font-family:var(--font-editorial);color:var(--gc-gold);font-size:1rem}.service-list h3{letter-spacing:.03em;font-size:1.25rem;font-weight:400}.service-list h3 span{font-family:var(--font-editorial);color:#bbb7b0;white-space:nowrap;margin-left:20px;font-size:1rem;font-style:italic}.service-list p{color:#bbb7b0;margin-top:10px;font-size:.875rem}.service-plus{color:var(--gc-gold);margin-left:auto;font-size:1.3rem}.story{grid-template-columns:1fr 1fr;gap:12%;padding-block:120px;display:grid}.story-word{font-family:var(--font-editorial);letter-spacing:-.04em;margin:42px 0 30px;font-size:clamp(4rem,7.7vw,7rem);line-height:1.05}.story-word em{font-weight:400}.story-side>span{letter-spacing:.18em;font-size:.8rem}.story-copy p{color:var(--muted);margin-top:24px;font-size:.95rem;line-height:2.1}.story-sign{font-family:var(--font-editorial);border-bottom:2px solid var(--gc-gold);width:fit-content;margin-top:32px;padding-bottom:7px;font-size:1.3rem;font-style:italic;display:block}.journal{border-top:1px solid var(--line)}.journal-list{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.journal-list article{border-top:1px solid var(--line);gap:20px;padding:24px 0;display:flex}.journal-number{font-family:var(--font-editorial);color:#8c7545;font-size:2rem;line-height:1.2}.journal-list .eyebrow{color:var(--muted);font-size:.75rem}.journal-list h3{margin:8px 0 16px;font-size:1.1rem;font-weight:500;line-height:1.6}.reviews{text-align:center;background:var(--paper);padding-block:64px}.reviews .eyebrow{margin-bottom:20px}.reviews p:not(.eyebrow){color:var(--muted);margin-top:20px;font-size:.875rem}.faq{grid-template-columns:1fr 1.4fr;gap:8%;display:grid}.faq h2{margin-top:18px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:1rem;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#84600b;transition:transform var(--duration);flex-shrink:0;font-size:1.4rem}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding:0 24px 25px 0;font-size:.9rem;line-height:2}.contact-section{background:#f0eee8}.contact-layout{grid-template-columns:1fr 1fr;align-items:center;gap:12%;display:grid}.contact-layout h2{margin-top:18px}.contact-details{margin-top:32px}.contact-details div{gap:30px;padding:10px 0;font-size:.875rem;display:flex}.contact-details dt{color:var(--muted);min-width:6em}.contact-details dd{margin:0}.map-placeholder{background:#e2ded4;flex-direction:column;justify-content:space-between;min-height:340px;padding:40px;display:flex}.map-placeholder p{font-family:var(--font-serif);letter-spacing:.06em;font-size:2rem;line-height:1.65}.map-placeholder>span:last-child{color:#635e54;font-size:.75rem}.booking{text-align:center;padding-block:110px}.booking h2{margin:24px 0 32px;font-size:clamp(2rem,3.2vw,3rem)}.booking-label{border-bottom:2px solid var(--gc-gold);padding-bottom:6px;font-size:.95rem;display:inline-block}.booking-status p{color:var(--muted);margin-top:16px;font-size:.75rem}.footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:35px;display:flex}.footer-brand{letter-spacing:.08em;font-size:1.2rem;font-weight:600}.footer-brand span{font-family:var(--font-editorial);letter-spacing:0;font-size:.875rem;font-style:italic;font-weight:400;display:block}.footer p,.footer>a:last-child{color:var(--muted);font-size:.75rem}.mobile-booking{display:none}@media (width>=1500px){.header{padding-inline:max(var(--gutter),calc((100vw - 1184px)/2))}}@media (width<=1100px){.header{gap:1.5rem}.desktop-nav{gap:16px}.desktop-nav a{font-size:.8rem}.brand-lockup small{display:none}.header-booking{gap:1rem;padding-inline:18px}.hero{gap:0 4%}.hero h1{font-size:2.5rem}.hero-placeholder{min-height:540px}.intro{grid-template-columns:.6fr 1.4fr}.intro-note{display:none}.services-layout{gap:6%}.portfolio-grid{gap:18px}.portfolio-grid .placeholder-top>span{display:none}.portfolio-grid .placeholder-middle p{font-size:.9rem}.portfolio-grid figcaption{flex-direction:column;align-items:start;gap:8px}.portfolio-grid .placeholder-bottom{font-size:.75rem}.story{gap:8%}.journal-list{gap:20px}.journal-list article{gap:12px}.journal-list h3{font-size:1rem}}@media (width<=800px){html{scroll-padding-top:95px}.header{gap:18px;height:84px;padding-inline:20px}.brand-lockup img{width:62px;height:62px}.brand-lockup{gap:8px}.brand-lockup>span{font-size:1rem}.desktop-nav{display:none}.header-booking{gap:20px;min-height:42px;margin-left:auto;padding:8px 15px;font-size:.8rem}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;flex-direction:column;align-items:center;gap:4px;min-width:42px;padding:8px 2px;font-size:.75rem;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.menu-lines{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);width:22px;height:12px}.mobile-menu nav{background:var(--gc-white);border-bottom:1px solid var(--line);flex-direction:column;padding:18px 24px 24px;display:flex;position:absolute;top:83px;left:0;right:0}.mobile-menu nav a{border-bottom:1px solid #eee;padding:13px 4px;font-size:1rem}.mobile-menu nav a:last-child{border-bottom:none}.hero{padding-top:35px}.hero h1{font-size:clamp(1.65rem,4vw,2.25rem)}.hero-english{font-size:3.4rem}.hero-brand{margin-top:24px}.hero-brand span{display:none}.hero .eyebrow{letter-spacing:.09em;font-size:.75rem}.hero-description{font-size:.8rem}.hero-actions{gap:20px}.hero-actions .button{gap:24px;padding-inline:18px}.hero-actions .text-link{gap:14px}.hero-placeholder{min-height:530px;padding:20px}.placeholder-top{font-size:.75rem}.placeholder-top>span{display:none}.hero-placeholder .placeholder-middle p{font-size:1.1rem}.placeholder-bottom{font-size:.75rem}.hero-foot>span:last-child{display:none}.intro{gap:25px;padding-block:70px}.section-space{padding-block:70px}.portfolio{padding-top:15px}.portfolio-grid{gap:16px}.portfolio-grid .photo-placeholder{aspect-ratio:3/4.5;padding:15px}.portfolio-grid .placeholder-middle p{display:none}.portfolio-grid .placeholder-middle small{font-size:.75rem}.portfolio-grid .placeholder-bottom{letter-spacing:.05em;font-size:.75rem}.portfolio-grid figure:nth-child(2){padding-top:30px}.portfolio-grid figure:nth-child(3){padding-top:60px}.services-layout{grid-template-columns:1fr}.services-intro{margin-bottom:40px}.services-intro>p:not(.eyebrow) br,.services-intro h2 br{display:none}.service-footnote{margin-top:20px}.story{gap:8%}.story-word{font-size:4rem}.journal-list{grid-template-columns:1fr}.journal-list article{gap:24px}.journal-list h3{font-size:1.1rem}.journal-list .pending{margin-bottom:0}.faq{grid-template-columns:1fr;gap:30px}.faq h2 br{display:none}.contact-layout{gap:5%}.map-placeholder{padding:26px}.contact-details div{gap:12px}.footer{padding-bottom:95px}.mobile-booking{z-index:20;background:var(--gc-gold);min-height:58px;color:var(--gc-black);padding:12px 24px calc(12px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;font-size:.875rem;font-weight:600;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-booking>span:first-child{font-size:.75rem;font-weight:400}.mobile-booking>span:last-child{font-size:1.3rem}}@media (width<=580px){.header{gap:8px;padding-inline:14px}.header-booking{gap:12px;padding-inline:13px}.brand-lockup img{width:58px;height:58px}.brand-lockup>span{font-size:.9rem}.hero{grid-template-columns:1fr;padding-top:26px}.hero-copy{padding:0 0 34px}.hero .eyebrow{letter-spacing:.12em;font-size:.75rem}.hero-brand{margin:25px 0 12px}.hero-brand span{font-size:.75rem;display:inline-block}.hero h1{letter-spacing:.025em;font-size:clamp(1.8rem,7vw,2.65rem);line-height:1.6}.hero-english{margin-top:20px;font-size:clamp(3.5rem,13vw,4.8rem);line-height:1.02}.hero-english br{display:none}.hero-english em{display:block}.hero-description{margin-block:22px;font-size:.875rem}.hero-actions{gap:28px}.hero-actions .button{min-width:150px;min-height:50px}.hero-visual{padding-top:0}.hero-placeholder{aspect-ratio:4/4.5;min-height:0;padding:25px}.hero-placeholder .placeholder-top>span{display:inline}.hero-placeholder .placeholder-top,.hero-placeholder .placeholder-bottom{font-size:.75rem}.hero-placeholder .placeholder-middle p{font-size:1.25rem}.hero-placeholder .placeholder-middle{padding:20px 0}.visual-caption{font-size:.75rem}.hero-foot{letter-spacing:.08em;margin-top:6px;padding:26px 0;font-size:.75rem}.hero-foot a{gap:18px;font-size:.75rem}.intro{grid-template-columns:1fr;gap:22px;padding-block:60px}.intro h2,h2{font-size:1.8rem}.intro p:not(.eyebrow){margin-top:20px;font-size:.875rem}.section-space{padding-block:60px}.section-heading{margin-bottom:30px;display:block}.section-aside{margin-top:20px;font-size:.875rem}.section-aside br{display:none}.portfolio{padding-top:10px}.portfolio-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.portfolio-grid figure:nth-child(2){padding-top:32px}.portfolio-grid figure:nth-child(3){grid-column:1/-1;width:65%;padding-top:0}.portfolio-grid .photo-placeholder{aspect-ratio:3/4;min-height:230px}.portfolio-grid .placeholder-rule{margin-bottom:14px}.portfolio-grid .placeholder-top,.portfolio-grid .placeholder-bottom{font-size:.75rem}.portfolio-grid .placeholder-bottom span{font-size:1.1rem}.portfolio-grid figure:nth-child(3) .photo-placeholder{aspect-ratio:4/4.4}.portfolio-grid figcaption{padding-top:12px;font-size:.9rem}.portfolio-grid figcaption small{margin-left:10px;font-size:.75rem}.portfolio-grid .pending{font-size:.75rem}.content-note{margin-top:26px;font-size:.75rem;line-height:1.9}.services-intro h2 br{display:block}.service-list article{gap:17px;padding-block:24px}.service-list h3{font-size:1.1rem}.service-list h3 span{margin-left:10px;font-size:.95rem}.service-list p{font-size:.8rem}.service-plus{font-size:1rem}.story{grid-template-columns:1fr;gap:45px}.story-word{margin:25px 0 18px;font-size:4.3rem}.story-word br{display:none}.story-word em{margin-left:12px}.story-side>span{font-size:.75rem}.story-copy p{font-size:.9rem}.story-sign{font-size:1.2rem}.journal-list article{padding-block:20px}.reviews{padding-block:50px}.reviews h2{font-size:1.45rem}.reviews p:not(.eyebrow){font-size:.8rem}.faq-list summary{padding-block:20px;font-size:.9rem}.faq-list details p{font-size:.85rem}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-details div{gap:28px}.map-placeholder{min-height:290px;padding:28px}.booking h2{font-size:1.9rem}.booking .eyebrow,.booking-status p{font-size:.75rem}.footer{flex-wrap:wrap;gap:20px;padding-top:28px;padding-bottom:100px}.footer-brand{width:100%}.footer p,.footer>a:last-child{font-size:.75rem}.desktop-break{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media (width>=801px) and (height<=850px){.hero{padding-top:28px}.hero-copy{padding-block:15px}.hero-brand{margin-top:24px}.hero h1{font-size:clamp(2rem,3.1vw,2.8rem)}.hero-english{margin-top:20px;font-size:clamp(3rem,5vw,4.5rem)}.hero-description{margin-block:20px}.hero-placeholder{min-height:520px}.hero-foot{padding-top:20px}}.portfolio-grid>figure,.story>div,.hero>div{min-width:0}@media (width<=580px){.story-word{font-size:clamp(2.8rem,14vw,4.3rem)}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.placeholder-bottom{flex-wrap:wrap}.portfolio-grid .placeholder-top{overflow-wrap:anywhere}}.portfolio-grid .photo-placeholder{width:100%;min-width:0}.header-booking{white-space:nowrap}@media (width<=360px){.header-booking{display:none}.mobile-menu{margin-left:auto}.portfolio-grid .photo-placeholder{aspect-ratio:auto;min-height:250px}.hero h1{white-space:normal}.hero-brand span{margin-left:8px}}[hidden]{display:none!important}.portfolio-more{margin-top:32px}.portfolio-page h1{font-family:var(--font-serif);letter-spacing:.05em;font-size:clamp(2rem,3.5vw,3rem);font-weight:500;line-height:1.6}.breadcrumbs{color:var(--muted);gap:12px;margin-bottom:35px;font-size:.875rem;display:flex}.portfolio-filters{flex-wrap:wrap;gap:12px;margin-block:32px 20px;display:flex}.portfolio-filters button{border:1px solid var(--line);cursor:pointer;min-height:46px;color:var(--ink);font:inherit;background:0 0;padding:10px 18px;font-size:.875rem}.portfolio-filters button[aria-pressed=true]{background:var(--gc-black);color:var(--gc-white);border-color:var(--gc-black);box-shadow:inset 0 -3px var(--gc-gold)}.portfolio-filters button:focus-visible{outline-offset:3px;outline:3px solid #956600}.gallery-status{color:var(--muted);margin-bottom:25px;font-size:.875rem}.works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px;display:grid}.works-grid>figure{min-width:0}.work-media{aspect-ratio:3/4;background:var(--paper);overflow:hidden}.work-media img,.work-media video{object-fit:contain;width:100%;height:100%;display:block}.work-card figcaption,.work-placeholder figcaption{justify-content:space-between;gap:12px;padding-top:16px;display:flex}.work-card figcaption small{color:var(--muted);font-size:.75rem;display:block}.work-description{color:var(--muted);overflow-wrap:anywhere;margin-top:12px;font-size:1rem}.work-tags{color:var(--muted);flex-wrap:wrap;gap:8px 14px;margin:12px 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.work-tags li:before{content:"#";color:#89640c}.works-grid .photo-placeholder{aspect-ratio:3/4;min-height:0}.contact-links{flex-wrap:wrap;gap:16px;display:flex}.contact-links a{text-underline-offset:4px;text-decoration:underline}.service-list .service-price{color:var(--gc-gold)}@media (width<=900px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=580px){.works-grid{grid-template-columns:minmax(0,1fr)}.portfolio-filters{gap:8px}.portfolio-filters button{padding-inline:12px}.portfolio-grid .work-card:nth-child(3){width:100%}.portfolio-grid:has(.work-card){grid-template-columns:minmax(0,1fr)}.portfolio-grid .work-card:nth-child(n){padding-top:0}.portfolio-page{padding-bottom:80px}}.announcement{background:var(--gc-black);color:var(--gc-white);text-align:center;min-height:40px;padding:9px 18px;font-size:.8rem;line-height:1.7}.announcement a{display:block}.announcement a:hover{color:var(--gc-gold)}.content-page{min-height:60vh}.page-heading{margin-bottom:54px}.page-heading h1{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);font-weight:500;line-height:1.5}.page-heading>p:last-child{color:var(--muted);max-width:680px;margin-top:20px}.breadcrumbs{flex-wrap:wrap}.reading-width{max-width:850px;margin-inline:auto}.action-links{flex-wrap:wrap;align-items:center;gap:24px;margin-block:28px;display:flex}.page-cta{border-top:1px solid var(--line);margin-top:60px;padding-top:32px}.price-index{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:12px 24px;padding-bottom:24px;display:flex}.price-index a{padding:8px 0}.pricing-section{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:8%;padding-block:52px;scroll-margin-top:125px;display:grid}.pricing-heading h2{font-size:1.8rem}.pricing-heading>p:last-child{color:var(--muted);font-size:.875rem}.price-item+.price-item{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.price-name{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.price-name h3{font-size:1.1rem;font-weight:500}.price-name p{margin:0}.price-value{white-space:nowrap;margin-left:auto!important}.length-prices{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.length-prices dt{color:var(--muted);margin-bottom:8px;font-size:.75rem}.length-prices dd{margin:0;font-size:1.05rem}.hair-lengths{margin-top:48px}.hair-lengths h2{font-size:1.3rem}.hair-lengths dl{flex-wrap:wrap;gap:22px 40px;margin-top:24px;display:flex}.hair-lengths dl>div{gap:12px;display:flex}.hair-lengths dt{color:var(--muted)}.hair-lengths dd{margin:0}.pricing-note{margin-top:32px}.fine-print{color:var(--muted);font-size:.875rem}.news-row{border-top:1px solid var(--line);grid-template-columns:180px 1fr;gap:36px;padding:30px 0;display:grid}.news-meta{color:var(--muted);flex-direction:column;gap:10px;font-size:.8rem;display:flex}.news-meta span{color:var(--ink)}.news-row h2,.news-row h3{font-size:1.3rem;font-weight:500;line-height:1.6}.news-row p{color:var(--muted);margin-top:10px;font-size:.9rem}.news-period{font-size:.8rem!important}.news-detail{max-width:850px;margin:auto}.news-detail h1{font-size:clamp(2rem,5vw,3rem);line-height:1.5}.news-detail>header{margin-bottom:50px}.news-detail section{margin-block:40px}.news-detail section h2{font-size:1.5rem}.news-detail section p,.news-detail li{margin-top:12px;line-height:1.9}.news-detail img{max-width:100%;height:auto}.visit-layout{grid-template-columns:1fr 1fr;align-items:start;gap:7%;display:grid}.visit-layout>div{min-width:0}.visit-layout h2{font-size:1.8rem}.visit-layout address{font-style:normal}.visit-map{background:var(--paper);border:0;width:100%;height:380px}.contact-details dd{overflow-wrap:anywhere;margin:0}.parking-section{margin-top:65px}.parking-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-block:28px;display:grid}.parking-list article{border-top:1px solid var(--line);padding-top:24px}.parking-list h3{font-size:1.1rem;font-weight:500}.parking-list p{color:var(--muted);margin-block:14px;font-size:.875rem}.parking-list a{margin-block:10px;display:inline-block}.site-footer{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:36px;padding-block:50px;font-size:.85rem;display:grid}.site-footer p{margin-top:12px}.footer-links{flex-wrap:wrap;gap:12px 20px;margin-top:18px;display:flex}.footer-links a{padding-block:6px}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;justify-content:space-between;padding-top:24px;display:flex}@media (width>=801px) and (width<=1150px){.desktop-nav{gap:13px}.desktop-nav a{font-size:.78rem}.header{padding-inline:24px}.brand-lockup>span{display:none}}@media (width<=800px){.visit-layout{grid-template-columns:1fr;gap:32px}.visit-map{height:340px}.parking-list{grid-template-columns:1fr;gap:20px}.pricing-section{grid-template-columns:1fr;gap:24px}.news-row{grid-template-columns:130px 1fr;gap:20px}.site-footer{padding-bottom:110px}.gc-fixed-booking{left:auto;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));border:1px solid var(--gc-black);gap:16px;min-height:48px;padding:10px 18px}.content-page{padding-bottom:90px}}@media (width<=580px){.page-heading{margin-bottom:36px}.news-row{grid-template-columns:1fr;gap:16px}.news-meta{flex-direction:row;gap:20px}.site-footer{grid-template-columns:1fr}.price-name h3{flex-basis:100%}.price-value{margin-left:0!important}.length-prices{gap:6px}.length-prices dd{font-size:.92rem}.visit-map{height:300px}.contact-details div{gap:12px}.action-links{gap:20px}.announcement{font-size:.75rem}.footer-bottom{gap:16px}}.parking-list address{margin-top:14px;font-size:.875rem;font-style:normal}.parking-list ul{color:var(--muted);padding-left:20px;font-size:.875rem}.about-story{grid-template-columns:1fr 1.4fr;align-items:start;gap:10%;display:grid}.about-story>div{min-width:0}.about-story .story-word{margin-top:0}.story-copy>.text-link{margin-top:20px}.mobile-menu nav{max-height:calc(100dvh - 160px);overflow-y:auto}@media (width<=580px){.about-story{grid-template-columns:1fr;gap:40px}.about-story .story-word{font-size:clamp(2.8rem,14vw,4.3rem)}}.parking-subtitle{color:var(--muted);margin-top:8px;font-size:.875rem}.parking-list article{flex-direction:column;align-items:flex-start;display:flex}.parking-list address{margin-bottom:20px}.parking-list .text-link{margin-top:auto}.news-row-with-image{grid-template-columns:160px 150px minmax(0,1fr);gap:28px}.news-thumbnail{aspect-ratio:4/3;align-self:start;width:100%;display:block}.news-thumbnail img{object-fit:contain;width:100%;height:100%;display:block}.news-detail .news-hero-image{width:100%;max-width:720px;height:auto;margin:28px auto;display:block}@media (width<=800px){.brand-lockup small{letter-spacing:0;font-size:.65rem;display:block}.news-row-with-image{grid-template-columns:120px minmax(0,1fr);gap:16px 22px}.news-row-with-image .news-thumbnail{grid-area:1/1/3}.news-row-with-image .news-meta,.news-row-with-image>div:last-child{grid-column:2}}@media (width<=580px){.header-booking{display:none}.news-row-with-image{grid-template-columns:100px minmax(0,1fr);gap:12px 16px}.news-row-with-image .news-meta{flex-wrap:wrap;gap:4px 12px}.news-row-with-image h2,.news-row-with-image h3{font-size:1.1rem}.news-row-with-image>div:last-child{min-width:0}.news-detail .news-hero-image{margin-block:24px}}.hero-without-image{grid-template-columns:minmax(0,1fr)}@media (width>=801px){.news-row-with-image{grid-template-columns:190px 150px minmax(0,1fr)}.news-thumbnail{aspect-ratio:1}}@media (width<=800px){.gc-fixed-booking{min-width:64px;min-height:52px;right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));flex-direction:column;justify-content:center;align-items:center;gap:0;padding:7px 10px;line-height:1.4;display:flex}.gc-fixed-booking>span:first-child{letter-spacing:.08em;font-size:.625rem}.gc-fixed-booking>span:last-child{font-size:.75rem}.gc-fixed-booking[data-suppressed]{visibility:hidden;pointer-events:none}}
