@font-face{font-family:Pretendard;src:url('/assets/fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('/assets/fonts/CormorantGaramond-500.woff2') format('woff2');font-weight:500;font-display:swap}
:root{--bg:#F7F4EF;--text:#282521;--muted:#6B625A;--line:#D8D0C6;--button:#40372F;--bar-height:69px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.85;word-break:keep-all;overflow-wrap:break-word;letter-spacing:-.02em}h1,h2,h3,h4,p,figure{margin:0}h1{font-size:44px;line-height:1.35;font-weight:600}h2{font-size:30px;line-height:1.45;font-weight:600;margin-bottom:32px}h3{font-size:20px;line-height:1.5;font-weight:600}h4{font-size:16px;font-weight:600}p{color:var(--muted)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{touch-action:manipulation}:focus-visible{outline:2px solid var(--button);outline-offset:3px}img{display:block;width:100%;height:auto;object-fit:contain;border:0;border-radius:0;box-shadow:none;margin-inline:auto}.wrap{width:calc(100% - 96px);max-width:1120px;margin-inline:auto}.wordmark{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:500;letter-spacing:.12em;line-height:1.2;color:var(--text)}.header{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{height:75px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:40px;height:40px}.desktop-nav{display:flex;align-items:center;gap:24px;font-size:15px}.desktop-nav a:not(.button){padding-block:10px}.desktop-nav [aria-current],.mobile-menu [aria-current]{text-decoration:underline;text-underline-offset:6px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border:1px solid var(--button);border-radius:4px;background:var(--button);color:white;font-size:15px;font-weight:600;line-height:1.4;text-align:center}.button.secondary{background:transparent;color:var(--button)}.actions{display:flex;flex-wrap:wrap;gap:16px}.text-link{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:5px;font-size:14px}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:none;font-size:22px}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--bg);padding:12px 20px 20px;border-bottom:1px solid var(--line)}.mobile-menu a{display:block;padding:12px 0}.skip{position:fixed;top:-100px;left:20px;z-index:70;background:white;padding:12px}.skip:focus{top:10px}[hidden]{display:none!important}.hero{display:grid;grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:64px;align-items:center;padding-block:56px}.hero-profile{width:100%;max-width:430px!important}.hero-copy{max-width:560px}.region{font-size:14px;margin:12px 0 20px}.hero h1{margin-bottom:24px}.intro-copy p+p{margin-top:14px}.hero .actions{margin-top:28px}.small-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:10px}.section{padding-block:64px}.page-intro{padding-top:56px}.page-intro p:not(:empty){margin-top:16px}.first-content{padding-top:48px}.section-nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:24px}.section-description{margin-bottom:32px;max-width:800px}.work-section h2{max-width:720px;margin-inline:auto}.work-stream{display:flex;flex-direction:column;gap:112px}.zoom{display:block;width:100%;padding:0;border:0;border-radius:0;background:none}.about-profile{display:grid;grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:64px;align-items:center}.about-profile>img{max-width:360px!important}.promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-bottom:40px}.promises article,.steps article{border-top:1px solid var(--line);padding-top:20px}.promises p,.steps p{margin-top:12px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:start}.service-grid h3{margin-top:20px}.service-grid+.actions{margin-top:32px}figcaption{margin-top:16px;font-size:14px;line-height:1.65;color:var(--muted)}.below{margin:28px 0 20px}.price-table{width:100%;border-collapse:collapse;text-align:left;font-size:16px}.price-table th,.price-table td{padding:18px 12px;border-bottom:1px solid var(--line)}.price-table th{font-weight:500}.price-table thead th{font-weight:600;border-top:1px solid var(--line)}.price-table td:nth-child(2){white-space:nowrap;text-align:right}.price-table th:nth-child(2){text-align:right}.price-note{margin-top:24px;font-size:14px;line-height:1.65}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.care{margin-top:48px}.care>p{margin:16px 0 28px}.care-layout{display:grid;grid-template-columns:minmax(0,38fr) minmax(0,62fr);gap:48px;align-items:center}.care-layout .photo{max-width:380px;width:100%;margin-inline:auto}.care-list article{border-top:1px solid var(--line);padding-block:20px}.care-list p{margin-top:8px}.space-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}.reservation-end{margin-top:64px}.reservation-end .actions{margin-top:24px}.intro-actions{margin-top:24px}.visit-info{margin:0 0 24px}.visit-info>div{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.visit-info dt{font-weight:600}.visit-info dd{margin:0;color:var(--muted)}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:56px;padding:16px 0;text-align:left;border:0;background:none;font-size:16px;line-height:1.6}.faq-question span{font-size:22px}.faq-question[aria-expanded=true] span{transform:rotate(45deg)}.faq-answer{padding-bottom:24px}.footer{border-top:1px solid var(--line);padding-block:48px;margin-top:48px;font-size:14px}.footer .wordmark{margin-bottom:16px}.footer-links{display:flex;flex-wrap:wrap;gap:12px 24px}.mobile-bar{display:none}.modal-open{overflow:hidden}.modal-open .mobile-bar{visibility:hidden}#lightbox{border:0;padding:0;margin:0;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;background:transparent;color:white;overflow:hidden}#lightbox[open]{display:flex;align-items:center;justify-content:center}#lightbox::backdrop{background:rgba(0,0,0,.85)}#lightbox>img{max-width:92vw;max-height:85dvh;width:auto;height:auto;object-fit:contain}#lightbox .lightbox-close{position:absolute;top:12px;right:12px;width:48px;height:48px;border:1px solid #aaa;background:#282521;color:white;font-size:30px;z-index:1}section[id],figure[id],main[id]{scroll-margin-top:96px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:768px) and (max-width:1023px){.wrap{width:calc(100% - 64px)}.hero,.about-profile{gap:32px}.desktop-nav{gap:12px;font-size:14px}.brand img{display:none}.space-gallery{gap:20px}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.care-layout{gap:32px}}
@media(max-width:767px){body{padding-bottom:calc(var(--bar-height) + 20px)}.wrap{width:calc(100% - 40px)}h1{font-size:30px;line-height:1.4}h2{font-size:24px}.wordmark{font-size:22px}.header-inner{height:63px}.brand img{width:36px;height:36px}.desktop-nav{display:none}.menu-toggle{display:block}.hero{grid-template-columns:1fr;gap:24px;padding-top:24px;padding-bottom:48px}.hero-profile{max-width:240px!important}.hero-copy{max-width:none}.hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero .button{font-size:14px;white-space:nowrap;padding-inline:8px}.section{padding-block:48px}.page-intro{padding-top:32px}.first-content{padding-top:32px}.work-end{margin-top:48px}.about-profile{grid-template-columns:1fr;gap:28px}.about-profile>img{max-width:240px!important}.promises{grid-template-columns:1fr;gap:24px}.service-grid{grid-template-columns:1fr;gap:40px}.steps{grid-template-columns:1fr}.care-layout{grid-template-columns:1fr;gap:28px}.price-table{font-size:14px}.price-table th,.price-table td{padding:16px 6px}.price-table th:first-child{width:52%}.space-gallery{grid-template-columns:1fr;gap:40px}.space-gallery figure{max-width:360px;width:100%;margin-inline:auto}.visit-info>div{grid-template-columns:1fr;gap:4px}.reservation-end{margin-top:48px}.mobile-bar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;z-index:45;bottom:0;left:0;right:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line)}.mobile-bar .button{padding:10px 4px;font-size:14px;white-space:nowrap}section[id],figure[id],main[id]{scroll-margin-top:80px}}
@media(prefers-reduced-motion:reduce){.work{opacity:1!important;transform:none!important;transition:none!important}}
@media print{.work{opacity:1!important;transform:none!important;transition:none!important}.header,.mobile-bar{position:static}.mobile-bar{display:none}}


.faq-answer{font-size:16px;line-height:1.85;height:auto;max-height:none}.faq-answer p+p{margin-top:12px}.faq-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.wrap{max-width:1200px}.brand img{width:176px;height:48px;object-fit:contain}.footer-logo{display:block;width:176px;margin-bottom:16px}.footer-logo img{width:176px;height:60px;object-fit:contain}
.hero-editorial{padding-top:40px}.hero-title{font-size:96px;line-height:.95;font-weight:500;letter-spacing:.02em;white-space:nowrap}.hero-stage,.hero-summary{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}.hero-stage{margin-top:24px;align-items:center}.hero-message{grid-column:1/6}.hero-stage>.hero-profile{grid-column:7/13;max-width:560px!important;margin-right:0}.hero-message .region{font-size:14px;letter-spacing:.04em;margin:0 0 24px}.hero-message h1{font-size:48px;line-height:1.25;font-weight:500}.hero-message h1 span{display:block}.hero-work-button{margin-top:32px}.hero-summary{margin-top:40px}.hero-summary .intro-copy{grid-column:1/8;max-width:640px}.hero-summary .intro-copy p+p{margin-top:16px}.hero-links{grid-column:9/13}.hero-links .small-links{gap:12px;flex-direction:column;align-items:start}
#results{padding-top:112px}.work-section h2{max-width:none;margin-bottom:56px}.work-stream{display:flex;flex-direction:column;gap:144px}.work{width:100%;position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:start;opacity:1;transform:none}.work-copy{position:sticky;top:120px;align-self:start;grid-column:1/5;grid-row:1}.work-visual{grid-column:6/13;grid-row:1/3;width:min(100%,var(--photo-width));justify-self:end;clip-path:inset(0);transition:clip-path 900ms cubic-bezier(.22,1,.36,1)}.work-copy{transition:opacity 600ms cubic-bezier(.22,1,.36,1) 100ms,transform 600ms cubic-bezier(.22,1,.36,1) 100ms}.work-link{grid-column:1/5;grid-row:2;align-self:start;margin-top:24px}.work-number{font-family:'Cormorant Garamond',serif;font-size:12px;line-height:1.5;letter-spacing:.12em;color:var(--muted);margin-bottom:12px}.work h3{font-size:34px;line-height:1.4;font-weight:500}.work-description{margin-top:16px}.work .zoom{width:100%;height:auto;aspect-ratio:auto}.work .zoom img{width:100%;height:auto;object-fit:contain}.layout-1 .work-copy,.layout-1 .work-link{grid-column:9/13}.layout-1 .work-visual{grid-column:1/8;justify-self:start}.layout-2{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center}.layout-2 .work-copy{position:static}.layout-2 .work-visual{margin-top:24px}.layout-2 .work-link{margin-top:24px}.work.is-pending .work-visual{clip-path:inset(0 0 100% 0)}.work.is-pending .work-copy{opacity:0;transform:translateY(20px)}.work.no-motion *{transition:none!important}.final-booking{background:#40372F;color:#F7F4EF;padding-block:96px;margin-top:80px}.final-booking h2{font-size:48px;line-height:1.35;font-weight:500;margin-bottom:32px}.final-booking .actions{gap:12px}.final-booking .button{background:#F7F4EF;color:#40372F;border-color:#F7F4EF}.final-booking .secondary{background:transparent;color:#F7F4EF}.final-booking+.footer{margin-top:0}
.hero-animate .hero-title,.hero-animate .hero-message h1 span{animation:hero-rise 800ms cubic-bezier(.22,1,.36,1) both}.hero-animate .hero-message h1 span:first-child{animation-delay:100ms}.hero-animate .hero-message h1 span:last-child{animation-delay:200ms}.hero-animate .hero-profile{animation:hero-fade 700ms ease 100ms both}@keyframes hero-rise{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}@keyframes hero-fade{from{opacity:0}to{opacity:1}}
@media(min-width:768px) and (max-width:1023px){.hero-title{font-size:72px}.hero-message{grid-column:1/6}.hero-stage>.hero-profile{grid-column:6/13}.hero-message h1{font-size:40px}}
@media(max-width:1023px){.hero-summary{display:block}.hero-links{margin-top:24px}#results{padding-top:88px}.work-stream{gap:96px}.work,.layout-2{display:flex;flex-direction:column;align-items:stretch;text-align:left}.work-copy{position:static}.work h3{font-size:28px}.work-visual,.layout-2 .work-visual{margin:20px auto 0}.work-link,.layout-2 .work-link{margin-top:16px}}
@media(max-width:767px){.brand img{width:132px;height:36px}.hero-editorial{padding-top:24px}.hero-title{font-size:clamp(40px,10vw,64px)}.hero-stage{display:flex;flex-direction:column;gap:28px}.hero-stage>.hero-profile{order:-1;width:min(100%,360px);max-width:360px!important;margin-inline:auto}.hero-message{width:100%}.hero-message h1{font-size:36px}.hero-message .region{margin-bottom:24px}.hero-work-button{display:none}.hero-summary{margin-top:24px}.hero-links{margin-top:24px}.hero-links .small-links{flex-direction:row;gap:12px}#results{padding-top:64px}.work-section h2{margin-bottom:32px}.work-stream{gap:72px}.work h3{font-size:26px}.final-booking{padding-block:64px;margin-top:48px}.final-booking h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.hero-animate *{animation:none!important}.work *{transition:none!important}.work.is-pending .work-visual{clip-path:none}.work.is-pending .work-copy{opacity:1;transform:none}}
@media print{.hero-animate *{animation:none!important}.work.is-pending .work-visual{clip-path:none}.work.is-pending .work-copy{opacity:1;transform:none}.work-copy{position:static}}

@media(min-width:1024px){.work-visual{grid-row:1}.work-link{margin-top:24px}.layout-2 .work-copy{display:contents}.layout-2 .work-heading{order:0}.layout-2 .work-visual{order:1}.layout-2 .work-link{order:2}}
@media(max-width:1023px){.work-copy{display:contents}.work-heading{order:0}.work-visual{order:1}.work-link{order:2}.work.is-pending .work-heading{opacity:0;transform:translateY(20px)}.work-heading{transition:opacity 600ms cubic-bezier(.22,1,.36,1) 100ms,transform 600ms cubic-bezier(.22,1,.36,1) 100ms}}
@media(prefers-reduced-motion:reduce){.work.is-pending .work-heading{opacity:1;transform:none}}@media print{.work.is-pending .work-heading{opacity:1;transform:none}}

.layout-2 .work-heading{transition:opacity 600ms cubic-bezier(.22,1,.36,1) 100ms,transform 600ms cubic-bezier(.22,1,.36,1) 100ms}.layout-2.is-pending .work-heading{opacity:0;transform:translateY(20px)}@media(prefers-reduced-motion:reduce){.layout-2.is-pending .work-heading{opacity:1;transform:none}}@media print{.layout-2.is-pending .work-heading{opacity:1;transform:none}}

/* Confirmed menu prices, 2026-10-16. */
.price-pair{display:flex;justify-content:flex-end;align-items:baseline;gap:12px;white-space:nowrap}.regular-price{font-size:15px;font-weight:400;color:#6B625A;text-decoration-line:line-through;text-decoration-color:#C43D3D;text-decoration-thickness:1px}.event-price{font-size:20px;font-weight:600;color:#282521}.event-note{margin-top:6px;font-size:13px;color:#6B625A;line-height:1.65}
@media(max-width:767px){.price-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.price-table tbody{display:block}.price-table tr{display:block;padding:18px 6px;border-bottom:1px solid #D8D0C6}.price-table tbody tr:first-child{border-top:1px solid #D8D0C6}.price-table th[scope=row],.price-table td{display:block;width:auto!important;border:0;padding:0;text-align:left!important}.price-table td{margin-top:10px}.price-table .price-pair{justify-content:flex-start}.price-table th[scope=row]{font-size:16px}}

/* Final restrained handwriting details, 2026-10-17. */
@font-face{font-family:Allura;src:url('/assets/fonts/Allura-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.handwritten{display:inline-block;font-family:Allura,cursive;font-size:32px;font-weight:400;font-synthesis:none;font-style:normal;line-height:1.3;letter-spacing:0;color:#6B625A;transform-origin:left center}.simply-you{transform:rotate(-5deg)}.handwriting-motion{margin-top:12px}.hero-message .hero-work-button{margin-top:24px}
@media(min-width:1024px){.hero-message{margin-bottom:80px}}
.hero-animate .handwriting-motion{animation:handwriting-rise 600ms cubic-bezier(.22,1,.36,1) 300ms both}@keyframes handwriting-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.space-title{margin-bottom:24px}.our-space{font-size:30px;transform:rotate(-4deg)}.space-title h2{margin:12px 0 0}.space-underline{display:block;width:72px;height:12px;margin-top:12px}.space-handwriting-motion{opacity:1;transition:opacity 600ms cubic-bezier(.22,1,.36,1)}.space-underline path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 700ms cubic-bezier(.22,1,.36,1) 150ms}.space-title.is-pending .space-handwriting-motion{opacity:0}.space-title.is-pending .space-underline path{stroke-dashoffset:1}.space-title.no-motion *{transition:none!important}
@media(max-width:1023px){.hero-message{margin-bottom:0}}
@media(max-width:767px){.handwritten,.our-space{font-size:24px}}
@media(prefers-reduced-motion:reduce){.handwriting-motion{animation:none!important;opacity:1!important;transform:none!important}.space-title .space-handwriting-motion{opacity:1!important;transition:none!important}.space-title .space-underline path{stroke-dashoffset:0!important;transition:none!important}}
@media print{.handwriting-motion{animation:none!important;opacity:1!important;transform:none!important}.space-title .space-handwriting-motion{opacity:1!important}.space-title .space-underline path{stroke-dashoffset:0!important}}

/* Isolated mobile navigation icon: preserve the existing 767px breakpoint. */
.menu-toggle{width:44px;height:44px;padding:0;flex-shrink:0;align-items:center;justify-content:center;line-height:0;border:0;background:transparent;color:#282521;transform:none;animation:none;transition:none}
.menu-toggle svg{display:block;flex-shrink:0;transform:none;animation:none;transition:none}
.menu-toggle .menu-icon-close{display:none}
.menu-toggle[aria-expanded="true"] .menu-icon-open{display:none}
.menu-toggle[aria-expanded="true"] .menu-icon-close{display:block}
@media(max-width:767px){.menu-toggle{display:inline-flex}}
#hairstroke{scroll-margin-top:96px;margin-top:40px}
#hairstroke p{margin-top:12px}
.hairstroke-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
