@font-face{font-family:Allura;src:url(../assets/fonts/allura-400.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Cormorant Garamond;src:url(../assets/fonts/cormorant-garamond-500.ttf)format("truetype");font-display:swap;font-style:normal;font-weight:500}@font-face{font-family:Cormorant Garamond;src:url(../assets/fonts/cormorant-garamond-italic-600.ttf)format("truetype");font-display:swap;font-style:italic;font-weight:600}@font-face{font-family:Libre Baskerville;src:url(../assets/fonts/libre-baskerville-400.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Libre Baskerville;src:url(../assets/fonts/libre-baskerville-700.ttf)format("truetype");font-display:swap;font-weight:700}:root{--bg:oklch(94.1% .009 52.1);--surface:oklch(95% .008 56.3);--fg:oklch(37% .026 55);--muted:oklch(50% .025 18);--border:oklch(87.1% .037 13.7);--accent:oklch(67.7% .112 5.9);--accent-strong:oklch(49% .13 5.9);--accent-soft:oklch(91% .038 10);--white:oklch(99% .003 50);--shadow:0 18px 45px oklch(34% .04 20/.13);--display:"Cormorant Garamond",Georgia,serif;--body:"Libre Baskerville",Georgia,serif;--script:"Allura","Segoe Script",cursive;--max:1180px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{background:var(--bg);color:var(--fg);font-family:var(--body);margin:0;font-size:15px;line-height:1.65;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit}:focus-visible{outline:3px solid var(--accent-strong);outline-offset:4px}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.eyebrow{font:700 11px/1.4 var(--body);letter-spacing:.22em;text-transform:uppercase;margin:0 0 5px}.eyebrow,.script{color:var(--accent-strong)}.script{font-family:var(--script);font-weight:400}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0}.sr-only,.svg-defs{position:absolute;overflow:hidden}.svg-defs{width:0;height:0}.sakura-branch{z-index:0;pointer-events:none;opacity:.82;filter:drop-shadow(0 3px 4px oklch(45% .05 15/.08));position:absolute;overflow:visible}.site-header{z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:oklch(96% .009 52/.96);border-bottom:1px solid oklch(87.1% .037 13.7/.7);position:sticky;top:0}.header-inner{grid-template-columns:210px 1fr auto;align-items:center;gap:24px;height:106px;display:grid}.brand{place-content:center;align-self:stretch;justify-items:center;min-width:0;line-height:1;display:grid}.brand img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:112px;height:55px}.brand-name{color:var(--accent-strong);font:400 35px/.8 var(--script);margin-top:-8px}.brand-subtitle{color:var(--fg);font:700 7px/1 var(--body);letter-spacing:.28em;text-transform:uppercase;margin-top:5px}.nav-list{justify-content:center;align-items:center;gap:clamp(16px,2.2vw,31px);margin:0;padding:0;list-style:none;display:flex}.nav-link{min-height:44px;color:inherit;cursor:pointer;font:500 13px/1 var(--display);white-space:nowrap;background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.nav-link:after{content:"";background:var(--accent-strong);height:1px;transition:transform .2s;position:absolute;bottom:7px;left:10%;right:10%;transform:scaleX(0)}.nav-link:hover:after,.nav-link[aria-current=page]:after{transform:scaleX(1)}.lang-switch{align-items:center;gap:8px;display:flex}.lang-switch button{cursor:pointer;background:0 0;border:0;place-items:center;min-width:38px;min-height:44px;padding:0;display:grid}.lang-switch .flag{opacity:.4;border-radius:2.5px;width:26px;height:18px;transition:opacity .2s,box-shadow .2s;display:block;box-shadow:inset 0 0 0 1px oklch(30% .03 30/.18)}.lang-switch button:hover .flag{opacity:.8}.lang-switch button[aria-pressed=true] .flag{opacity:1;box-shadow:inset 0 0 0 1px oklch(30% .03 30/.18),0 0 0 2px var(--accent-soft),0 0 0 3px var(--accent-strong)}.mobile-nav .lang-switch{justify-content:start;padding-left:12px}.nav-cta .button{gap:7px;min-height:38px;padding:0 15px;font-size:11px}.nav-cta .button .icon{width:14px;height:14px}.header-actions{justify-items:end;gap:9px;display:grid}.socials{color:var(--accent-strong);gap:12px;display:flex}.icon-link{border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.icon-link:hover{background:var(--accent-soft)}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.button{cursor:pointer;min-height:46px;font:700 12px/1 var(--body);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:0 24px;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent-strong);color:var(--white);box-shadow:0 8px 22px oklch(49% .13 5.9/.2)}.button-primary:hover{background:oklch(43% .13 5.9);box-shadow:0 11px 28px oklch(43% .13 5.9/.28)}.button-outline{border-color:var(--accent-strong);color:var(--accent-strong);background:0 0}.button-outline:hover{background:var(--accent-strong);color:var(--white)}.menu-toggle{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:50%;width:48px;height:48px;display:none}.menu-lines,.menu-lines:after,.menu-lines:before{background:var(--fg);width:20px;height:2px;margin:auto;transition:transform .2s,opacity .2s;display:block}.menu-lines{position:relative}.menu-lines:after,.menu-lines:before{content:"";position:absolute;left:0}.menu-lines:before{top:-6px}.menu-lines:after{top:6px}.menu-toggle[aria-expanded=true] .menu-lines{background:0 0}.menu-toggle[aria-expanded=true] .menu-lines:before{transform:translateY(6px)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{transform:translateY(-6px)rotate(-45deg)}.sound-toggle{z-index:41;width:48px;height:48px;color:var(--white);cursor:pointer;background:oklch(23% .015 40/.92);border:1px solid oklch(30% .02 40/.55);border-radius:50%;place-items:center;transition:transform .15s;display:grid;position:fixed;top:122px;right:16px;box-shadow:0 6px 18px oklch(20% .03 30/.35)}.sound-toggle:hover{transform:scale(1.07)}.sound-toggle .icon{stroke-width:2px;width:22px;height:22px}@media (width<=940px){.sound-toggle{top:104px}}@media (width<=620px){.sound-toggle{width:44px;height:44px;top:92px;right:12px}}.hero{isolation:isolate;min-height:480px;color:var(--white);background:oklch(34% .055 45) url(../assets/images/hero-sakura.jpg) 50%/cover no-repeat;align-items:center;display:grid;position:relative}.hero-video{z-index:-2;-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.hero-video,.hero:before{position:absolute;inset:0}.hero:before{content:"";z-index:-1;background:linear-gradient(90deg,oklch(20% .03 45/.8),oklch(28% .04 30/.52) 35%,#0000 68%)}.hero-content{z-index:1;width:min(520px,48%);padding-block:64px;position:relative}.hero .eyebrow{color:oklch(94% .02 30);font-size:12px}.hero h1{max-width:590px;font:italic 600 clamp(54px,5.4vw,78px)/.95 var(--display);letter-spacing:-.025em;text-wrap:balance;margin:8px 0 14px}.hero-copy{text-wrap:pretty;max-width:430px;margin:0 0 24px;font-size:16px;line-height:1.75}.hero-flourish{color:oklch(95% .02 30/.85);align-items:center;gap:12px;width:230px;margin-top:23px;display:flex}.hero-flourish:after,.hero-flourish:before{content:"";background:currentColor;flex:1;height:1px}.hero-flourish svg{width:30px;height:30px}.benefits{background:var(--surface);padding:27px 0 31px;position:relative}.benefit-grid{z-index:1;grid-template-columns:repeat(5,1fr);gap:28px;display:grid;position:relative}.sakura-branch--benefits{width:178px;height:132px;top:-18px;right:4px}.sakura-scatter{z-index:0;pointer-events:none;position:absolute;overflow:visible}.sakura-scatter--benefits{left:max(18px,calc(50% - var(--max)/2 + 18px));opacity:.64;width:104px;height:82px;bottom:8px}.benefit{text-align:center;min-width:0}.benefit-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-strong);border-radius:50%;place-items:center;margin:0 auto 8px;display:grid}.benefit-icon .icon{width:27px;height:27px}.benefit h2{font:italic 600 17px/1.2 var(--display);margin:0}.benefit p{color:var(--muted);margin:2px 0 0;font-size:10px;line-height:1.5}.about{background:var(--surface);position:relative;overflow:hidden}.about-grid{grid-template-columns:minmax(0,48%) minmax(0,52%);display:grid}.about-media{background:url(../assets/images/about-sakura.jpg) 50%/cover no-repeat;min-height:365px}.about-copy{z-index:1;align-self:center;max-width:650px;padding:48px clamp(40px,6vw,86px);position:relative}.about-intro{white-space:pre-line}.about-copy>:not(.sakura-branch):not(.japan-silhouette){z-index:1;position:relative}.sakura-branch--about-top{right:min(-69px,calc(-45px - 50vw + var(--max)/2));width:190px;height:140px;top:-42px;transform:rotate(8deg)}.sakura-branch--about-bottom{right:min(-88px,calc(-64px - 50vw + var(--max)/2));width:272px;height:196px;bottom:-32px;transform:rotate(-7deg)}.japan-silhouette{z-index:0;width:min(390px,72%);height:auto;color:var(--accent);opacity:.14;pointer-events:none;position:absolute;bottom:-13px;right:-18px}.about h2{font:400 clamp(42px,4vw,58px)/.9 var(--script);color:var(--accent-strong);align-items:center;gap:9px;margin:-3px 0 9px;display:flex}.about p{text-wrap:pretty;max-width:610px;margin:0 0 9px;font-size:13px;line-height:1.7}.signature{color:var(--accent-strong);font:400 25px/1.15 var(--script)!important;margin:8px 0 14px!important}.title-blossom{flex:none;width:17px;height:17px;overflow:visible}.about .title-blossom{width:15px;height:15px;margin-top:5px}.services{background:linear-gradient(180deg,var(--bg),oklch(91% .035 13.7));padding:38px 0 28px;position:relative;overflow:hidden}.services:after{content:"";background:oklch(96% .014 10/.65);border-radius:50% 50% 0 0/80% 80% 0 0;height:170px;position:absolute;bottom:-84px;left:-4%;right:-4%}.section-heading{z-index:1;text-align:center;position:relative}.section-heading h2{font:400 clamp(38px,4.1vw,55px)/1 var(--script);color:var(--accent-strong);justify-content:center;align-items:center;gap:13px;margin:0 0 20px;display:flex}.service-grid{z-index:1;grid-template-columns:repeat(5,1fr);gap:18px;display:grid;position:relative}.service-card{text-align:center;background:oklch(97% .006 50);border:1px solid oklch(99% .004 50);border-radius:10px;min-width:0;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 4px 18px oklch(43% .04 20/.08)}.service-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.service-photo{background:50%/cover no-repeat;height:112px}.service-card:first-child .service-photo{background-image:url(../assets/images/service-bain-sechage.jpg)}.service-card:nth-child(2) .service-photo{background-image:url(../assets/images/service-coupe-tonte.jpg)}.service-card:nth-child(3) .service-photo{background-image:url(../assets/images/service-soin-griffes.jpg)}.service-card:nth-child(4) .service-photo{background-image:url(../assets/images/service-nettoyage-oreilles.jpg)}.service-card:nth-child(5) .service-photo{background-image:url(../assets/images/service-soins-specifiques.jpg)}.service-body{padding:0 13px 17px}.service-icon{background:var(--surface);border:1px solid var(--border);width:42px;height:42px;color:var(--accent-strong);border-radius:50%;place-items:center;margin:-20px auto 5px;display:grid}.service-icon .icon{width:21px;height:21px}.service-card h3{font:italic 600 16px/1.2 var(--display);margin:0 0 4px}.service-card p{color:var(--muted);margin:0;font-size:9px;line-height:1.45}.service-action{z-index:2;text-align:center;margin-top:17px;position:relative}.prices{background:var(--surface);padding:58px 0 62px;position:relative;overflow:hidden}.prices:before{content:"";background:radial-gradient(circle at 50% 44%,oklch(98% .008 50/.72),transparent 47%),linear-gradient(180deg,var(--surface),oklch(92% .028 12));pointer-events:none;position:absolute;inset:0}.prices .container{z-index:1;position:relative}.prices-heading h2{margin-bottom:8px}.prices-intro{max-width:590px;color:var(--muted);text-wrap:pretty;margin:0 auto 30px;font-size:13px;line-height:1.7}.sakura-branch--prices{opacity:.58;width:225px;height:160px;top:8px;left:-57px;transform:rotate(-12deg)}.sakura-scatter--prices{right:max(18px,calc(50% - var(--max)/2 + 20px));opacity:.44;width:92px;height:76px;top:160px}.prices-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:stretch;gap:20px;display:grid}.price-card{background:oklch(98% .006 50/.9);border:1px solid oklch(99% .004 50);border-radius:18px;padding:25px 26px;transition:transform .2s,box-shadow .2s;position:relative;box-shadow:0 10px 30px oklch(43% .04 20/.08)}.price-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.price-card--dogs{background:linear-gradient(145deg,oklch(97% .026 10),oklch(99% .004 50));border-color:oklch(78% .09 8/.42);flex-direction:column;justify-content:center;padding:31px 34px;display:flex}.price-card--dogs:after{content:"";border:1px solid var(--border);opacity:.42;border-radius:50%;width:94px;height:94px;position:absolute;bottom:18px;right:20px}.price-card--dogs:before{content:"✦";color:var(--accent);font:26px/1 var(--display);opacity:.5;position:absolute;bottom:47px;right:56px}.prices-side{grid-template-columns:1fr 1fr;gap:20px;display:grid}.price-card--compact{padding:22px 20px}.price-card--supplements{background:linear-gradient(145deg,oklch(98% .006 50/.92),oklch(94% .038 10/.75));grid-column:1/-1}.price-card-heading{align-items:center;gap:13px;margin-bottom:18px;display:flex}.price-icon{background:var(--accent-soft);width:47px;height:47px;color:var(--accent-strong);border-radius:50%;flex:none;place-items:center;display:grid}.price-icon .icon{stroke-width:1.75px;width:24px;height:24px}.price-kicker{color:var(--accent-strong);font:700 9px/1.4 var(--body);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1px}.price-card h3{color:var(--accent-strong);font:400 37px/.9 var(--script);margin:0}.price-card--compact h3{font-size:31px}.price-list,.price-row{gap:12px;display:grid}.price-row{font:500 14px/1.35 var(--display);grid-template-columns:minmax(0,1fr) auto;align-items:end}.price-row span{align-items:end;min-width:0;display:flex}.price-row span:after{content:"";background:repeating-linear-gradient(90deg,var(--border) 0 3px,transparent 3px 6px);flex:1;min-width:12px;height:1px;margin:0 8px 5px}.price-row strong{color:var(--fg);font:700 16px/1 var(--display);white-space:nowrap}.price-subsection{border-top:1px solid var(--border);margin-top:25px;padding-top:18px;position:relative}.price-subsection-title{color:var(--accent-strong);font:italic 600 20px/1 var(--display);margin:0 0 12px}.prices-note{border:1px solid var(--border);background:oklch(99% .003 50/.6);border-radius:16px;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:23px;margin:27px auto 0;padding:18px 26px;display:grid;box-shadow:0 5px 18px oklch(43% .04 20/.05)}.prices-torii{width:92px;height:auto;color:var(--accent);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;opacity:.75}.prices-note-title{color:var(--accent-strong);font:italic 600 24px/1.1 var(--display);margin:0 0 3px}.prices-note p:last-child{max-width:650px;color:var(--muted);margin:0;font-size:12px;line-height:1.65}.prices-note .button{white-space:nowrap;min-height:40px;padding:0 17px;font-size:10px}.prices-tax-note{text-align:center;color:var(--muted);margin:10px 0 0;font-size:11px}.gallery{background:linear-gradient(180deg,var(--bg),var(--surface) 45%,var(--bg));padding:44px 0 40px;position:relative;overflow:hidden}.gallery .container{z-index:1;position:relative}.sakura-branch--gallery{width:170px;height:126px;top:-14px;right:-44px;transform:rotate(9deg)}.sakura-scatter--gallery{left:max(16px,calc(50% - var(--max)/2 + 16px));opacity:.5;width:96px;height:76px;bottom:10px}.carousel{grid-template-columns:1fr 1fr;align-items:center;display:grid;position:relative}.gallery-location{width:min(420px,50% - 100px);max-width:none;color:var(--muted);font-size:13px;line-height:1.75;position:absolute;top:50%;left:25%;translate:-50% -50%}.gallery-location p{margin:0}.gallery-location-title{font:italic 600 24px/1.25 var(--display);color:var(--accent-strong);margin-bottom:8px!important}.gallery-location .signature{text-align:center;margin-top:28px!important}.carousel-viewport{aspect-ratio:2/3;background:var(--surface);width:min(400px,88%);box-shadow:var(--shadow);touch-action:pan-y;border:1px solid oklch(99% .004 50);border-radius:18px;grid-column:2;margin:12px auto;position:relative;overflow:hidden}.carousel-track{height:100%;margin:0;padding:0;list-style:none;transition:transform .5s cubic-bezier(.22,.7,.35,1);display:flex}.carousel-slide{flex:0 0 100%;min-width:0;height:100%}.carousel-slide figure{height:100%;margin:0;position:relative}.carousel-slide img{-o-object-fit:cover;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.carousel-slide figcaption{color:var(--white);font:italic 500 18px/1.35 var(--display);text-align:center;background:linear-gradient(#0000,oklch(24% .04 40/.78));padding:48px 18px 14px;position:absolute;bottom:0;left:0;right:0}.carousel-arrow{z-index:2;border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:46px;height:46px;color:var(--accent-strong);cursor:pointer;background:oklch(96% .009 52/.92);border-radius:50%;place-items:center;transition:background .2s,box-shadow .2s;display:grid;position:absolute;top:50%;translate:0 -50%}.carousel-arrow:hover{background:var(--white);box-shadow:0 8px 20px oklch(34% .04 20/.2)}.carousel-arrow .icon{stroke-width:2.4px;width:21px;height:21px}.carousel-prev{left:max(12px,75% - 268px)}.carousel-next{right:max(12px,25% - 268px)}.carousel-dots{justify-content:center;margin-top:12px;margin-left:50%;display:flex}.carousel-dot{cursor:pointer;background:0 0;border:0;min-width:44px;min-height:34px;position:relative}.location{background:#f2ede9;padding:48px 0 54px}.location-subtitle{max-width:720px;color:var(--muted);margin:-10px auto 30px;font-size:14px;line-height:1.6}.location-grid{grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);align-items:center;gap:28px;max-width:1040px;margin:0 auto;padding:26px;display:grid}.location-copy{color:var(--muted);font-size:13px;line-height:1.75}.location-description p{margin:0 0 14px}.location-description p:last-child{margin-bottom:16px}.location-copy address{color:var(--accent-strong);font-size:13px;font-style:normal;font-weight:700}.location-map-frame-wrap{aspect-ratio:16/10;border:1px solid var(--border);background:var(--bg);border-radius:12px;min-height:280px;position:relative;overflow:hidden}.location-map-frame{background:var(--bg);border:0;width:100%;height:calc(100% + 70px);display:block;position:absolute;top:0;left:0}.map-attribution{color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;gap:3px;margin-top:7px;font-size:clamp(8px,2.5vw,11px);line-height:1.3;display:flex}.map-attribution a{color:inherit;text-underline-offset:2px;text-decoration:underline}.map-attribution a:hover{color:var(--accent-strong)}.carousel-dot:before{content:"";background:var(--accent);opacity:.45;border-radius:999px;width:9px;height:9px;transition:width .25s,opacity .25s,background .25s;position:absolute;top:50%;left:50%;translate:-50% -50%}.carousel-dot:hover:before{opacity:.85}.carousel-dot[aria-current=true]:before{opacity:1;background:var(--accent-strong);width:26px}.reviews{background:linear-gradient(180deg,oklch(91% .035 13.7) 0,var(--bg) 120px);padding:52px 0 44px;position:relative}.review-grid{grid-template-columns:repeat(2,1fr);gap:18px;max-width:880px;margin:0 auto;display:grid}.review-card{text-align:center;background:oklch(97% .006 50);border:1px solid oklch(99% .004 50);border-radius:10px;padding:27px 24px 23px;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 18px oklch(43% .04 20/.08)}.review-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.review-stars{color:oklch(80% .15 85);justify-content:center;gap:3px;margin-bottom:11px;display:flex}.review-stars .icon{fill:currentColor;stroke:none;width:16px;height:16px}.review-text{margin:0 0 12px}.review-text p{font:italic 500 16px/1.55 var(--display);margin:0}.review-name{font:700 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-strong);margin:0}dialog{background:var(--surface);width:min(560px,100% - 32px);color:var(--fg);box-shadow:var(--shadow);border:0;border-radius:20px;padding:0}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:oklch(20% .025 30/.66)}#booking-dialog{max-height:calc(100dvh - 32px);overflow:auto}.dialog-head{justify-content:space-between;align-items:flex-start;gap:20px;padding:27px 28px 12px;display:flex}.dialog-head h2{font:italic 600 34px/1 var(--display);margin:0}.dialog-close{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.dialog-contact{padding:0 28px 8px}.contact-dialog{max-height:calc(100dvh - 32px);overflow:auto}.contact-dialog .dialog-contact{padding-bottom:0}.contact-dialog-image{border-radius:0 0 20px 20px;width:100%;height:auto}.dialog-contact-label{color:var(--accent-strong);font:700 11px/1.4 var(--body);letter-spacing:.12em;text-transform:uppercase;margin:0 0 2px}.dialog-phone-list{gap:5px;display:grid}.dialog-phone{color:var(--fg);font:700 18px/1.4 var(--body);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:4px;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.dialog-phone span{color:var(--muted);font-size:12px;font-weight:500;text-decoration:none}.dialog-phone strong{font:inherit;white-space:nowrap}.booking-form{grid-template-columns:1fr 1fr;gap:16px;padding:10px 28px 28px;display:grid}.form-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.field{gap:6px;display:grid}.field-full{grid-column:1/-1}label{font-size:12px;font-weight:700}input,select{border:1px solid var(--border);background:var(--white);width:100%;min-height:48px;color:var(--fg);border-radius:10px;padding:0 13px}input:hover,select:hover{border-color:var(--accent-strong)}.form-intro{font-size:13px;line-height:1.5}.form-intro,.form-note{color:var(--muted);margin:0}.form-note{font-size:11px}.form-status{min-height:24px;color:var(--accent-strong);margin:0;font-weight:700}@media (width<=1050px){.header-inner{grid-template-columns:170px 1fr auto;gap:12px}.brand img{width:105px}.nav-list{gap:14px}.nav-link{font-size:12px}.nav-cta .button{padding:0 12px;font-size:10px}.service-grid{grid-template-columns:repeat(3,1fr)}.service-card:nth-child(4){grid-column:1}.service-card:nth-child(5){grid-column:2}}@media (width<=940px){.container{width:min(var(--max),calc(100% - 36px))}.header-inner{grid-template-columns:150px 1fr auto;height:88px}.brand{justify-content:start}.brand img{width:94px;height:46px}.brand-name{font-size:30px}.brand-subtitle{font-size:6px}.desktop-nav,.header-actions{display:none}.menu-toggle{grid-column:3;place-items:center;display:grid}.mobile-nav{z-index:39;background:var(--surface);visibility:hidden;align-content:start;padding:28px 24px 40px;transition:transform .25s,visibility .25s;display:grid;position:fixed;inset:88px 0 0;transform:translate(100%)}.mobile-nav.is-open{visibility:visible;transform:translate(0)}.mobile-nav .nav-list{justify-items:stretch;gap:4px;display:grid}.mobile-nav .nav-link{justify-content:start;min-height:56px;padding-inline:12px;font-size:23px}.mobile-nav .nav-link:after{width:42px;left:12px;right:auto}.mobile-cta{margin-top:22px}.hero{background-position:62%;min-height:560px}.hero-content{width:min(470px,70%)}.benefit-grid{grid-template-columns:repeat(3,1fr)}.about-grid{grid-template-columns:1fr}.about-media{min-height:420px}.about-copy{max-width:none}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}.service-card:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 9px)}.prices-layout{grid-template-columns:1fr}.prices-side{grid-template-columns:repeat(2,1fr)}.location-grid{grid-template-columns:1fr;gap:16px}.carousel{grid-template-columns:46px minmax(0,400px) 46px;justify-content:center;align-items:center;row-gap:12px;display:grid}.carousel-viewport{grid-area:2/2;width:100%;margin:0}.carousel-arrow{grid-row:2;position:static;translate:none}.carousel-prev{grid-column:1}.carousel-next{grid-column:3}.carousel-dots{margin-left:0}}@media (width>=941px){.mobile-nav{display:none}}@media (width<=940px){.gallery-location{text-align:center;grid-column:1/-1;width:auto;max-width:420px;margin:0 auto;position:static;translate:none}.location-grid{grid-template-columns:1fr;gap:16px}}@media (width<=620px){.location{padding:38px 0 42px}.location-subtitle{margin:-9px auto 24px;font-size:12px}.location-grid{gap:12px;padding:14px}.location-map-frame-wrap{aspect-ratio:4/3;min-height:260px}.location-map-frame{height:calc(100% + 84px);top:0}.booking-form{grid-template-columns:1fr}.field-full{grid-column:auto}.booking-form,.dialog-contact,.dialog-head,.legal-body{padding-left:20px;padding-right:20px}.carousel{grid-template-columns:40px minmax(0,310px) 40px}.review-grid{grid-template-columns:1fr}.review-card{padding:24px 20px 20px}.review-text p{font-size:15px}html{scroll-padding-top:78px}.container{width:calc(100% - 28px)}.site-header{height:78px}.header-inner{grid-template-columns:132px 1fr auto;height:78px}.brand img{width:82px;height:40px}.brand-name{font-size:27px}.brand-subtitle{margin-top:4px}.mobile-nav{inset:78px 0 0}.hero{background-position:67%;align-items:end;min-height:660px}.hero:before{background:linear-gradient(#0000 24%,oklch(24% .035 35/.48) 52%,oklch(18% .03 40/.88))}.hero-content{width:100%;padding:220px 0 44px}.hero h1{max-width:360px;font-size:clamp(52px,15vw,67px)}.hero-copy{max-width:360px;font-size:14px}.benefits{padding-block:23px}.benefit-grid{grid-template-columns:1fr;gap:0}.benefit{-moz-column-gap:14px;text-align:left;border-bottom:1px solid var(--border);grid-template-rows:auto auto;grid-template-columns:52px 1fr;column-gap:14px;padding:11px 4px;display:grid}.benefit:last-child{border-bottom:0}.benefit-icon{grid-row:1/3;width:48px;height:48px;margin:0}.benefit h2{align-self:end}.benefit p{align-self:start}.about-media{min-height:330px}.about-copy{padding:39px 24px 44px}.japan-silhouette{opacity:.11;width:300px;right:-40px}.services{padding-top:34px}.section-heading h2{font-size:41px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card:last-child{grid-column:auto;width:auto}.service-photo{height:180px}.service-body{padding-bottom:20px}.service-card h3{font-size:20px}.service-card p{font-size:11px}.prices{padding:46px 0 48px}.prices-intro{margin-bottom:23px;font-size:12px}.prices-layout,.prices-side{grid-template-columns:1fr}.prices-side{gap:14px}.price-card--dogs{padding:26px 22px}.price-card{border-radius:15px;padding:22px 20px}.price-card--compact{padding:21px 18px}.price-card--supplements{grid-column:auto}.price-card-heading{margin-bottom:16px}.price-card h3{font-size:34px}.price-card--compact h3{font-size:30px}.price-row{font-size:13px}.price-row strong{font-size:15px}.prices-note{grid-template-columns:1fr;gap:10px;margin-top:20px;padding:20px}.prices-torii{display:none}.prices-note .button{justify-self:start}.carousel{grid-template-columns:40px minmax(0,1fr) 40px;width:min(100%,390px);margin-inline:auto}.carousel-viewport{border-radius:14px;width:100%}.carousel-arrow{width:40px;height:40px}.carousel-arrow .icon{width:18px;height:18px}.carousel-slide figcaption{padding-inline:14px;font-size:16px}.sakura-branch--benefits{opacity:.55;width:125px;height:95px;top:4px;right:4px}.sakura-scatter--benefits{opacity:.38;width:74px;height:58px;bottom:10px;left:auto;right:7px}.sakura-branch--about-top{width:135px;height:100px;top:-28px;right:-55px}.sakura-branch--about-bottom{opacity:.58;width:190px;height:138px;bottom:-24px;right:-68px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.petal-fx{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.petal-fx .petal{filter:drop-shadow(0 2px 3px oklch(25% .04 25/.28));will-change:transform,opacity;width:22px;height:22px;animation:12s linear infinite petal-fall;position:absolute;top:-8%;overflow:visible}.petal-fx .petal:first-child{animation-duration:13s;animation-delay:-3s;left:9%}.petal-fx .petal:nth-child(2){width:17px;height:17px;animation-duration:16s;animation-delay:-8s;left:22%}.petal-fx .petal:nth-child(3){width:25px;height:25px;animation-duration:11s;animation-delay:-5s;left:36%}.petal-fx .petal:nth-child(4){width:19px;height:19px;animation-duration:14s;animation-delay:-10s;left:52%}.petal-fx .petal:nth-child(5){width:23px;height:23px;animation-duration:12s;animation-delay:-2s;left:66%}.petal-fx .petal:nth-child(6){width:16px;height:16px;animation-duration:17s;animation-delay:-7s;left:79%}.petal-fx .petal:nth-child(7){animation-duration:15s;animation-delay:-12s;left:90%}@keyframes petal-fall{0%{opacity:0;transform:translateY(-30px)rotate(0)}8%{opacity:.9}50%{opacity:.85;transform:translate(-28px,430px)rotate(.55turn)}to{opacity:0;transform:translate(24px,860px)rotate(1.15turn)}}.hero-content>*{animation:.75s cubic-bezier(.22,.7,.35,1) backwards rise}.hero-content>:nth-child(2){animation-delay:.12s}.hero-content>:nth-child(3){animation-delay:.24s}.hero-content>:nth-child(4){animation-delay:.36s}.hero-content>:nth-child(5){animation-delay:.48s}@keyframes rise{0%{opacity:0;translate:0 24px}to{opacity:1;translate:0}}@supports (animation-timeline:view()){.about-media,.benefit,.carousel-viewport,.review-card,.service-card,.site-footer{animation:both reveal;animation-timeline:view();animation-range:entry 0 entry 55%}}@keyframes reveal{0%{opacity:0;translate:0 26px}to{opacity:1;translate:0}}dialog{transition:opacity .3s,translate .3s}dialog[open]{opacity:1;translate:0}@starting-style{dialog[open]{opacity:0;translate:0 16px}}@media (prefers-reduced-motion:reduce){.petal-fx{display:none}}.site-footer{background:var(--surface);border-top:1px solid var(--border);text-align:center;padding:26px 0 30px}.site-footer .container{justify-items:center;gap:9px;display:grid}.site-footer .footer-address{color:var(--muted);margin:0;font-size:12px;font-style:normal}.site-footer .footer-phone-line{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.site-footer .footer-phone-label{color:inherit}.site-footer .footer-phone{color:var(--muted);font:600 13px/1.4 var(--body);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:4px;transition:color .2s}.site-footer .footer-phone:hover{color:var(--accent-strong)}.site-footer .footer-copy{color:var(--muted);margin:0;font-size:12px}.site-footer .footer-divider{border:0;border-top:1px solid var(--border);width:min(260px,100%);margin:0}.site-footer .footer-credit{color:var(--muted);margin:0;font-size:12px}.site-footer .footer-credit a{color:inherit;text-underline-offset:4px;-webkit-text-decoration:underline oklch(50% .025 18/.45);text-decoration:underline oklch(50% .025 18/.45);transition:color .2s}.site-footer .footer-credit a:hover{color:var(--accent-strong)}.footer-legal{flex-wrap:nowrap;justify-content:center;align-items:center;margin-top:0;display:flex}.footer-legal-link{min-height:40px;color:var(--muted);cursor:pointer;font:500 12px/1.4 var(--body);text-underline-offset:4px;background:0 0;border:0;padding:0 10px;-webkit-text-decoration:underline oklch(50% .025 18/.45);text-decoration:underline oklch(50% .025 18/.45);transition:color .2s}.footer-legal-link:hover{color:var(--accent-strong)}.footer-legal-sep{color:var(--border);font:400 14px/1 var(--body);-webkit-user-select:none;user-select:none}@media (width<=760px){.footer-legal{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.footer-legal-sep{display:none}.footer-legal-link{white-space:normal;width:100%}}.legal-body{max-height:min(60vh,520px);padding:4px 28px 28px;font-size:13px;line-height:1.75;overflow:auto}.legal-body p{margin:0 0 12px}.legal-body h3{color:var(--accent-strong);font:700 12px/1.4 var(--body);letter-spacing:.04em;margin:18px 0 5px}.legal-body h3:first-child{margin-top:0}.legal-body ul{margin:0 0 12px;padding-left:20px}.legal-body li{margin:0 0 5px}.legal-body a{color:var(--accent-strong);text-underline-offset:3px;text-decoration:underline}.legal-body .legal-links{border-top:1px solid var(--border);gap:6px;margin-top:18px;padding-top:14px;display:grid}.legal-body .legal-links a{display:block}@media (width<=620px){.service-card:last-child{justify-self:stretch}}.mobile-header-cta{display:none}.mobile-header-cta .icon{width:14px;height:14px}@media (width<=940px){.header-inner{grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;gap:12px}.mobile-header-cta{white-space:nowrap;justify-self:center;width:min(100%,340px);min-height:42px;padding-inline:clamp(8px,3vw,20px);font-size:clamp(10px,1.8vw,13px);display:inline-flex}}@media (width<=620px){.header-inner{grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;gap:8px}.mobile-header-cta{min-height:40px;padding-inline:clamp(6px,2vw,10px);font-size:clamp(9px,2.8vw,11px)}}
