:root{--ivory:#fffaf4;--paper:#fffdf9;--beige:#eadac7;--brown:#795139;--ink:#55463d;--muted:#927b6a;--serif:"Yu Mincho","Hiragino Mincho ProN",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px;overflow-x:hidden}body{margin:0;overflow-x:hidden;color:var(--ink);background:var(--ivory);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.95}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0 0 20px}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:.08em}h2{font-size:28px;line-height:1.65}h3{font-size:20px}button:focus-visible,a:focus-visible{outline:3px solid #b28a70;outline-offset:5px}.skip{position:fixed;top:-100px;z-index:200;background:white;padding:12px}.skip:focus{top:0}.header{height:100px;position:fixed;top:0;left:0;right:0;background:#fffdf9;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1340px)/2));z-index:100;border-bottom:1px solid #eee5da}.logo{width:142px;height:94px;overflow:hidden;flex-shrink:0}.logo img{width:142px;max-width:none;transform:translateY(-20px)}.header nav{display:flex;gap:24px;align-items:center;font-size:14px;font-weight:600}.header nav>a:not(.button):hover,footer a:hover{color:#b28a70}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:13px 25px;border:1px solid var(--brown);border-radius:40px;color:white;background:var(--brown);font-size:14px;font-weight:600;line-height:1.6;box-shadow:0 5px 10px #79513912;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{background:#65412c;transform:translateY(-3px);box-shadow:0 9px 18px #79513925}.button span{font-size:22px;font-weight:400}.button.outline{color:var(--brown);background:var(--paper);border-color:#b99a85}.button.outline:hover{background:#f0e3d2}.button.small{padding:11px 21px;font-size:13px}.menu-toggle{display:none}.hero{margin-top:100px;position:relative;min-height:640px;display:grid;grid-template-columns:45% 55%;background:#f8f2e9}.hero-photo{grid-column:2;grid-row:1;overflow:hidden;position:relative}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:63% center;animation:hero-photo 1.4s both,soft-zoom 12s ease-out forwards}.hero-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f8f2e9,transparent 20%);z-index:1;pointer-events:none}.handwritten{position:absolute;top:35px;right:35px;font:italic 32px/1.3 "Segoe Script",cursive;color:#795139;transform:rotate(-9deg);z-index:2}.hero-copy{grid-column:1;grid-row:1;padding:55px 15px 45px max(35px,calc((100vw - 1180px)/2));z-index:2}.eyebrow{font-family:Georgia,serif;font-size:13px;letter-spacing:.17em;color:var(--brown)}h1{font-size:clamp(36px,3.5vw,53px);line-height:1.6;white-space:nowrap;margin-bottom:16px}.hero-lead{font-family:var(--serif);font-size:21px;letter-spacing:.08em}.hero-copy>p:not(.hero-lead):not(.eyebrow){font-size:14px}.hero-copy>*{animation:fade-up .8s both}.hero-copy>.eyebrow{animation-delay:.2s}.hero-copy>h1{animation-delay:.35s}.hero-copy>p{animation-delay:.5s}.hero-copy>.tags{animation-delay:.65s}.hero-copy>.actions{animation-delay:.8s}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0}.tags span{border:1px solid #cdb6a2;border-radius:4px;padding:2px 9px;font-size:12px;color:var(--brown)}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero .actions .button{font-size:13px;padding:12px 18px;gap:10px}.section{max-width:1180px;margin:auto;padding:70px 25px;scroll-margin-top:0}.section-title{display:flex;align-items:baseline;gap:22px;margin-bottom:25px;position:relative}.section-title:after{content:"";height:1px;background:var(--beige);flex:1;align-self:center}.section-title>span,.script{font:italic 43px/1.2 "Segoe Script","Brush Script MT",Georgia,cursive;color:#98755f}.section-title>p{font-family:var(--serif);font-size:15px;letter-spacing:.12em;margin:0}.section-heading{margin-bottom:32px}.section-heading h2{font-size:25px}.section-heading>p{margin-bottom:0}.concept{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.concept-photo{position:relative}.concept-photo img{aspect-ratio:1.05;object-fit:cover;object-position:50% 30%;border-radius:90px 8px 90px 8px}.photo-note{position:absolute;top:25px;left:22px;color:#795139;font-family:var(--serif);background:#fffaf4;padding:12px 20px;border-radius:40px 0;line-height:1.7}.concept p{font-size:15px}.text-link{display:inline-flex;gap:12px;align-items:center;background:none;border:none;border-bottom:1px solid #b28a70;color:var(--brown);padding:6px 0;font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:var(--paper);border:1px solid #e9ded2;border-radius:14px;padding:22px 26px;text-align:center;box-shadow:0 6px 18px #79513905}.service-icon{width:140px;aspect-ratio:1;margin:0 auto 18px;background-image:url('../images/services.png');background-size:390% auto;border-radius:50%;background-repeat:no-repeat}.service-card h3{font-size:20px;margin-bottom:10px}.service-card p{font-size:14px;line-height:1.8;margin-bottom:12px}.service-card .service-detail{font-size:13px;color:#7c6a5d}.gallery-section{background:#f5ede3}.gallery-section .section-heading{text-align:center}.gallery-section .section-title{justify-content:center}.gallery-section .section-title:after{display:none}.gallery-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:30px 0}.gallery-tabs button{border:1px solid #cdb6a2;border-radius:30px;background:transparent;padding:7px 19px;font-size:14px;color:var(--brown)}.gallery-tabs .active{background:var(--brown);color:white}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery-item{margin:0;position:relative;overflow:hidden;border-radius:15px;background:var(--paper);box-shadow:0 4px 14px #7951390b;transition:box-shadow .3s}.gallery-image{aspect-ratio:.81;overflow:hidden;position:relative}.gallery-image img{position:absolute;width:320.57%;max-width:none;height:324.77%;object-fit:fill;top:var(--y);left:var(--x);transition:transform .5s}.gallery-item:hover{box-shadow:0 10px 25px #79513920}.gallery-item:hover img{transform:scale(1.025)}.gallery-item figcaption{padding:13px 18px;line-height:1.7;font-size:14px}.gallery-item figcaption span{display:block;font-size:12px;color:var(--muted)}.gallery-item[hidden]{display:none}.gallery-caption{text-align:center;margin:25px 0 10px;font-family:var(--serif)}.gallery-section .text-link{display:flex;width:max-content;margin:auto}.instagram{font-size:26px}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.reason-card{padding:23px 25px;background:#f4ebdf;border-radius:12px;position:relative}.reason-number{font:italic 25px Georgia;color:#b28a70}.reason-card h3{font-size:18px;margin:10px 0}.reason-card p{font-size:14px;margin:0}.divider{width:560px;margin:35px auto -25px;max-height:70px;object-fit:cover;mix-blend-mode:multiply}.price-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:38px}.table-wrap{border:1px solid #e5d7c8;border-radius:6px;overflow:hidden}table{border-collapse:collapse;width:100%;font-size:14px}caption{background:#f3e9dd;text-align:left;padding:8px 16px;font-family:var(--serif);font-size:18px}th{background:#967862;color:white;font-weight:500}td,th{padding:11px 13px;border-bottom:1px solid #e5d7c8;text-align:left}td+td,th+th{border-left:1px solid #e5d7c8;white-space:nowrap}tbody tr:nth-child(even){background:#f6f0e8}.fine-print{font-size:12px;line-height:1.8;color:#877265;margin:15px 0 0}.offer{border:double 4px #d9bea5;border-radius:10px;text-align:center;padding:35px 20px;background:radial-gradient(ellipse at top left,#eadac7,transparent 50%),var(--paper);display:flex;flex-direction:column;justify-content:center;align-items:center}.offer p{margin:10px 0}.offer .discount{font:66px/1.1 Georgia;color:#a46c53}.discount span{font-size:35px}.offer small{font-size:12px;margin-top:10px}.offer .button{margin-top:12px}.options{margin-top:30px;padding:24px 30px;border:1px solid var(--beige);border-radius:12px}.options h3{font-size:18px}.options dl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 30px;margin:0}.options dl>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dotted #d7c5b5;font-size:14px}.options dd{margin:0;white-space:nowrap}.flow-section{background:#f6eee4}.flow-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:25px}.flow-list li{position:relative}.flow-list li:not(:last-child):after{content:"›";position:absolute;right:-17px;top:15px;color:#b28a70;font-size:25px}.flow-list .step{width:55px;height:55px;border:1px solid #b99a85;border-radius:50%;display:grid;place-items:center;font:23px Georgia;background:var(--paper);margin-bottom:20px}.flow-list h3{font-size:17px}.flow-list p{font-size:14px;margin:0}.staff{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.staff-image img{border-radius:100px 10px 10px 10px;width:100%}.staff-copy p{font-size:15px}.staff-copy .staff-name{font-family:var(--serif);font-size:27px;margin:20px 0 7px}.staff-name small{display:block;font-family:Georgia,var(--serif);font-size:13px;letter-spacing:.05em}.staff-copy .credential{font-size:13px;color:var(--muted)}.signature{font-family:var(--serif);color:#9b765f}.salon-section{background:#f6eee4}.salon-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;align-items:center}.salon-layout img{border-radius:12px}.salon-layout p{font-size:15px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;align-items:start}.faq-item{border:1px solid #ddcbbb;border-radius:8px;overflow:hidden}.faq-question{display:flex;align-items:center;text-align:left;gap:12px;justify-content:space-between;width:100%;border:0;background:var(--paper);color:var(--ink);padding:16px 18px;font-size:14px;line-height:1.7}.faq-question:before{content:"Q";font:15px Georgia;flex-shrink:0;background:var(--brown);color:white;border-radius:50%;width:25px;height:25px;display:grid;place-items:center}.faq-question>span:first-child{flex:1}.faq-question .plus{font-size:20px;color:#a1826a}.faq-answer{padding:0 20px 20px;font-size:14px;background:var(--paper);margin:0}.contact-section{background:linear-gradient(110deg,#eadac7,#fffaf4 48%,#eadac7);text-align:center;position:relative}.contact-section:before,.contact-section:after{content:"♡";position:absolute;top:80px;font:90px Georgia;color:#c9ae97;opacity:.35}.contact-section:before{left:8%}.contact-section:after{right:8%}.contact-section .section{max-width:850px;position:relative}.contact-section h2{font-size:34px}.contact-section p{font-size:15px}.contact-section .actions{justify-content:center;margin:30px 0 20px}.contact-section .contact-note{font-size:13px}.contact-section .fine-print{font-size:12px}.contact-channels{display:flex;justify-content:center;gap:24px;margin-top:16px}.access{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.salon-name{font:30px Georgia;color:var(--brown)}.store-info{margin:0}.store-info>div{display:grid;grid-template-columns:90px 1fr;border-bottom:1px solid #eadac7;padding:12px 0;font-size:14px}.store-info dd{margin:0}.store-info small{display:block;font-size:12px;color:var(--muted)}.map-placeholder{min-height:310px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:repeating-linear-gradient(45deg,#f4ede2 0,#f4ede2 38px,#fffaf4 38px,#fffaf4 46px);border:8px solid var(--paper);outline:1px solid var(--beige);border-radius:5px;font-size:14px}.map-pin{font-size:43px;color:var(--brown)}.map-placeholder small{font-size:12px;text-align:center;padding:0 10px}footer{padding:25px max(25px,calc((100% - 1250px)/2));background:#f0e6da;display:flex;align-items:center;justify-content:space-between;gap:25px}footer nav{display:flex;flex-wrap:wrap;gap:15px;font-size:12px}footer p{font-size:11px;margin:14px 0 0;color:var(--muted)}.social{border:none;background:none;font-size:30px;color:var(--brown)}dialog{border:1px solid #c9ae97;border-radius:18px;padding:45px;max-width:calc(100% - 32px);color:var(--ink);background:var(--ivory);text-align:center}dialog::backdrop{background:#35251b80}.dialog-close{position:absolute;top:8px;right:15px;font-size:28px;background:none;border:none;color:var(--brown)}dialog h2{font-size:24px}dialog p{font-size:14px}.mobile-only{display:none}.reveal.visible{animation:fade-up .8s both}@keyframes fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes hero-photo{from{opacity:0}to{opacity:1}}@keyframes soft-zoom{from{transform:scale(1)}to{transform:scale(1.03)}}
@media(max-width:1199px){.header{height:88px;padding:0 25px}.hero{margin-top:88px}.header nav{gap:15px;font-size:12px}.header .logo{width:110px}.header .logo img{width:120px;transform:translate(-5px,-10px)}.hero-copy{padding-left:30px}.hero .actions{flex-direction:column;align-items:flex-start}.hero{min-height:670px}.flow-list{grid-template-columns:repeat(3,1fr);gap:30px}.flow-list li:nth-child(3):after{display:none}.options dl{grid-template-columns:repeat(2,1fr)}.staff,.concept{gap:35px}.section{padding:60px 30px}footer{flex-wrap:wrap}.header .button{font-size:12px;padding:10px 14px}}
@media(max-width:950px){.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;width:57px;height:61px;background:var(--paper);border:1px solid var(--beige);border-radius:12px;padding:10px;gap:5px;z-index:102}.menu-toggle>span{width:25px;height:2px;background:var(--brown);transition:.25s}.menu-toggle small{font:10px Georgia;letter-spacing:.1em;color:var(--brown)}.menu-toggle[aria-expanded="true"]>span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"]>span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"]>span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header nav{display:none;position:fixed;top:88px;left:0;right:0;bottom:0;background:#fffaf4;overflow-y:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:25px 35px;gap:0;font-size:16px}.header nav.open{display:flex}.header nav>a{padding:15px 8px;border-bottom:1px solid #eadac7}.header nav .button{margin-top:22px;padding:16px;font-size:15px}.menu-open{overflow:hidden}.reason-grid{grid-template-columns:repeat(2,1fr)}.price-layout{grid-template-columns:1.25fr 1fr;gap:22px}.hero{grid-template-columns:48% 52%}.hero-copy{padding-top:40px}h1{font-size:36px}.handwritten{font-size:26px;right:20px}.hero-copy>p:not(.hero-lead):not(.eyebrow){font-size:13px}}
@media(max-width:767px){html{scroll-padding-top:78px}.header{height:78px;padding:0 18px}.header .logo{height:76px;width:116px}.header .logo img{width:116px;transform:translateY(-15px)}.header nav{top:78px}.hero{margin-top:78px;display:flex;flex-direction:column;min-height:0}.hero-photo{height:auto;aspect-ratio:4/3;order:0}.hero-photo>img{object-fit:cover;object-position:center}.hero-photo:before{background:linear-gradient(0deg,#f8f2e9,transparent 15%)}.handwritten{font-size:24px;top:15px;right:16px}.hero-copy{order:1;padding:28px 24px 40px}.hero-copy .eyebrow{font-size:12px}h1{font-size:36px;line-height:1.55;letter-spacing:.06em}.hero-lead{font-size:19px}.hero-copy>p:not(.hero-lead):not(.eyebrow){font-size:14px}.hero-copy br{display:initial}.hero .actions{align-items:stretch}.hero .actions .button{font-size:14px;padding:16px}.tags{gap:6px}.tags span{font-size:12px}.section{padding:46px 22px}.concept{grid-template-columns:1fr;gap:28px}.concept-photo img{aspect-ratio:1.1;object-position:center 27%;border-radius:55px 8px}.photo-note{font-size:14px;top:20px;left:15px;padding:10px 16px}.section-title{gap:14px;margin-bottom:22px}.section-title>span,.script{font-size:34px}.section-title>p{font-size:13px}.section-title:after{min-width:10px}h2,.section-heading h2{font-size:23px}.concept p{font-size:15px}.concept p br{display:none}.service-grid{grid-template-columns:repeat(2,1fr);gap:12px}.service-card{padding:17px 12px}.service-icon{width:110px;max-width:100%}.service-card h3{font-size:17px;letter-spacing:.03em}.service-card p{font-size:13px}.service-card .service-detail{font-size:12px}.gallery-tabs{gap:7px;margin:25px 0}.gallery-tabs button{font-size:12px;padding:7px 12px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:13px}.gallery-item{border-radius:10px}.gallery-item figcaption{padding:11px;font-size:13px}.gallery-item figcaption span{font-size:12px}.gallery-caption{font-size:14px}.gallery-section .section-title{flex-direction:column;gap:9px;align-items:center}.section-heading>p{font-size:14px}.mobile-only{display:block}.reason-grid{gap:12px}.reason-card{padding:17px}.reason-card h3{font-size:16px;letter-spacing:.02em}.reason-card p{font-size:13px}.divider{max-height:50px;margin-bottom:-15px}.price-layout{grid-template-columns:1fr;gap:30px}table{font-size:13px}td,th{padding:10px 8px}td:first-child{overflow-wrap:anywhere}.offer{padding:30px 20px}.options{padding:20px 16px}.options dl{grid-template-columns:1fr}.options dl>div{font-size:14px;padding:5px 0}.flow-list{grid-template-columns:repeat(2,1fr);gap:25px}.flow-list li:nth-child(3):after{display:block}.flow-list li:nth-child(even):after{display:none}.flow-list li:after{right:-15px!important}.flow-list .step{width:45px;height:45px;margin-bottom:12px;font-size:20px}.flow-list h3{font-size:16px;margin-bottom:8px}.flow-list p{font-size:13px}.staff{grid-template-columns:1fr;gap:30px}.staff-image{max-width:380px;margin:auto}.staff-image img{border-radius:60px 10px 10px 10px}.staff-copy .staff-name{font-size:26px}.salon-layout{grid-template-columns:1fr;gap:28px}.faq-grid{grid-template-columns:1fr;gap:10px}.faq-question{padding:15px 13px}.contact-section h2{font-size:27px}.contact-section p{font-size:14px}.contact-section:before,.contact-section:after{font-size:50px;top:35px}.contact-section:before{left:3%}.contact-section:after{right:3%}.contact-section .actions{flex-direction:column}.contact-section .button{padding:16px 14px}.contact-channels{gap:18px}.contact-channels .text-link{font-size:12px}.access{grid-template-columns:1fr;gap:30px}.store-info>div{grid-template-columns:75px 1fr;font-size:13px}.map-placeholder{min-height:250px}footer{padding:24px 22px;gap:20px;justify-content:center;text-align:center}footer nav{justify-content:center;gap:10px 15px}footer .logo{width:120px;height:80px}footer .logo img{width:120px;transform:translateY(-17px)}footer>div{order:3;width:100%}footer p{font-size:11px}dialog{padding:40px 22px}.section-title>p{max-width:65%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo>img{transform:none}}
/* Keep breed labels as readable row headers within the light price table. */
tbody th[scope="row"]{background:transparent;color:var(--ink);font-weight:500}
/* Compact header logo while preserving the footer logo size. */
.header .logo{width:124px;height:82px}
.header .logo img{width:124px;transform:translateY(-18px)}
@media(max-width:1199px){.header .logo{width:100px;height:76px}.header .logo img{width:108px;transform:translate(-4px,-12px)}}
@media(max-width:767px){.header .logo{width:100px;height:66px}.header .logo img{width:100px;transform:translateY(-13px)}}
/* Access section after removing the map placeholder. */
.access{grid-template-columns:1fr}
.access>div{width:100%;max-width:740px;margin-inline:auto}
