@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;600;800&display=swap');
:root{--bg:#111210;--panel:#1a1b17;--cream:#f7f3e8;--muted:#b8b9ae;--accent:#f2b544;--line:#383a31;--red:#e46142}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--bg);color:var(--cream);font-family:'DM Sans','Noto Sans JP',sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,.hero-line,.footer-brand{font-family:'Barlow Condensed','Noto Sans JP',Impact,sans-serif;line-height:.98;letter-spacing:-.025em;font-weight:800;white-space:pre-line}h1{font-size:clamp(3.8rem,7.8vw,8rem)}h2{font-size:clamp(2.8rem,4.6vw,4.7rem)}h3{font-size:1.35rem}p{margin:1.2rem 0;color:var(--muted)}.eyebrow{font-size:.8rem;letter-spacing:.18em;font-weight:700;color:var(--accent);margin:0 0 1.5rem}.section{padding:100px max(5vw,24px);max-width:1600px;margin:auto}.skip{position:fixed;top:-90px;left:20px;z-index:100;background:white;color:black;padding:12px}.skip:focus{top:0}header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 4vw;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:15px;flex-shrink:0}.brand img{width:64px;height:64px;object-fit:contain;background:white;border-radius:50%}.brand>span{font-weight:800;font-size:1rem;letter-spacing:.025em}.brand small{display:block;color:var(--muted);font-size:.65rem;letter-spacing:.16em;margin-top:3px}header nav{display:flex;gap:28px;font-size:.9rem}header nav a:hover,.text-link:hover{color:var(--accent)}.languages{display:flex;gap:3px;border:1px solid var(--line);padding:4px;border-radius:5px;flex-shrink:0}.languages :is(button,a){border:0;background:none;color:var(--muted);font-size:.85rem;min-height:36px;padding:5px 10px;border-radius:2px}.languages :is(button,a):is([aria-pressed=true],[aria-current=page]){background:var(--cream);color:var(--bg)}.nav-toggle{display:none}.hero{position:relative;min-height:720px;min-height:min(810px,calc(100svh - 96px));display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,13,11,.9),rgba(12,13,11,.45) 60%,rgba(12,13,11,.15)),linear-gradient(0deg,rgba(12,13,11,.8),transparent 35%)}.hero-content{position:relative;z-index:1;padding:80px 6vw 130px;width:100%}.hero h1{font-size:clamp(3.7rem,7.5vw,7.6rem);max-width:1000px}.hero-line{font-size:clamp(3.7rem,7.5vw,7.6rem);color:var(--accent);max-width:1050px}.hero-intro{font-size:1.12rem;color:#e8e6df;margin-top:28px}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 26px;font-size:.95rem;font-weight:700;border:1px solid transparent;border-radius:3px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--accent);color:#181a11}.primary:hover{background:#ffcc63}.outline{border-color:#c1c0b4;color:white;background:#11121055}.hero-foot{position:absolute;bottom:0;left:6vw;right:6vw;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff40;padding:24px 0;color:var(--cream);font-size:.9rem}.about{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;border-bottom:1px solid var(--line)}.about-copy p:first-child{margin-top:0}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.tags span{padding:5px 12px;border:1px solid #4b4d41;border-radius:30px;font-size:.8rem;color:#d1d2c8}.karaoke{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.photo-frame{position:relative;height:630px}.photo-frame img{width:100%;height:100%;object-fit:cover;border-radius:3px}.photo-label{position:absolute;bottom:28px;left:-12px;background:var(--accent);color:var(--bg);padding:12px 25px;font-family:'Barlow Condensed',sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:.08em;transform:rotate(-3deg)}.time-pill{display:inline-block;border:1px solid var(--accent);color:var(--accent);padding:7px 15px;margin:28px 0 0;border-radius:4px;letter-spacing:.06em;font-weight:600}ol{padding:0;list-style:none;counter-reset:steps}ol li{counter-increment:steps;margin:15px 0;display:flex;gap:16px;align-items:center}ol li:before{content:'0'counter(steps);font-family:'Barlow Condensed',sans-serif;font-size:1.5rem;color:var(--accent)}details{border-top:1px solid var(--line);margin-top:30px;padding:18px 0;color:var(--muted)}summary{cursor:pointer;color:var(--cream);font-weight:500}details ul{padding-left:20px}details li{margin:12px 0}.drinks{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.text-link{border-bottom:1px solid var(--accent);padding-bottom:5px;white-space:nowrap;font-size:.95rem}.drink-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:46px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.drink-grid article{padding:30px;border-right:1px solid var(--line)}.drink-grid article:first-child{padding-left:0}.drink-grid article:last-child{border:0}.drink-number{color:var(--accent);font-size:.85rem}.drink-grid h3{margin-top:25px;font-size:1.65rem}.drink-grid p{font-size:.9rem;min-height:3em}.drink-grid strong{font-family:'Barlow Condensed',sans-serif;font-size:2.6rem;color:var(--accent)}.instagram{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.instagram-copy{max-width:490px}.small-note{font-size:.85rem}.instagram-frame{background:#fff;border-radius:8px;overflow:hidden;max-width:540px;width:100%;justify-self:center;border:1px solid var(--line)}.instagram-frame iframe{display:block;border:0;width:100%;height:560px}.instagram .small-note{max-width:320px}.visit{border-top:1px solid var(--line);display:grid;grid-template-columns:1.1fr 1fr;gap:10%;background:#181a15}address{font-style:normal;max-width:380px;margin-top:30px;font-size:1.05rem}.hours{padding:38px;border:1px solid #4a4c3f;align-self:center}.hours h3{font-family:'Barlow Condensed','Noto Sans JP',sans-serif;font-size:1.9rem;font-weight:700;margin-bottom:22px}.hour-row{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding:18px 0;font-size:.95rem}.hour-row strong{white-space:nowrap;color:var(--accent)}.visit-notes{border-top:1px solid var(--line);margin-top:25px;padding-top:5px}.visit-notes p{font-size:.9rem}.contact-strip{display:flex;justify-content:space-between;gap:24px;padding:35px 5vw;background:var(--accent);color:var(--bg);align-items:center}.contact-strip h3{font-size:1.25rem}.contact-strip a{font-weight:700;border-bottom:1px solid}.footer-brand{font-size:2rem;max-width:260px}.footer-brand small{display:block;font-size:.8rem;letter-spacing:.2em;font-family:'DM Sans',sans-serif;margin-top:15px}footer{padding:60px 5vw;display:flex;justify-content:space-between;gap:30px}footer p{margin:0 0 10px;font-size:.9rem}footer small{color:var(--muted);font-size:.8rem}.mobile-bottom{display:none}.menu-main{padding:70px 6vw 110px;max-width:1500px;margin:auto}.menu-title{border-bottom:1px solid var(--line);padding-bottom:40px}.menu-title h1{color:var(--accent)}.menu-layout{display:grid;grid-template-columns:240px 1fr;gap:8%;padding-top:50px}.menu-categories{display:flex;flex-direction:column;gap:4px;align-self:start;position:sticky;top:120px}.menu-categories a{padding:9px 14px;border-left:2px solid var(--line);color:var(--muted)}.menu-categories a:hover{border-color:var(--accent);color:var(--cream)}.menu-sections{max-width:800px;width:100%}.menu-sections section{margin-bottom:60px;scroll-margin-top:120px}.menu-sections h2{font-size:2.6rem;margin-bottom:20px;color:var(--accent)}.menu-item{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:15px 0}.menu-item strong{white-space:nowrap;font-weight:500}.menu-item span{overflow-wrap:anywhere}html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] .hero-line{font-family:'Noto Sans JP',sans-serif;line-height:1.3;letter-spacing:.01em}html[lang=ja] .hero h1,html[lang=ja] .hero-line{font-size:clamp(2.8rem,6vw,6rem)}html[lang=ja] h2{font-size:clamp(2rem,3.4vw,3.5rem)}html[lang=ja] .menu-title h1{font-size:clamp(3rem,6vw,5rem)}
@media(min-width:1600px){.hero-content{padding-left:max(6vw,calc((100vw - 1420px)/2))}.hero{max-height:860px}}
@media(max-width:1100px){header{gap:14px;padding:0 24px}.brand>span{font-size:.85rem}.brand small{font-size:.6rem}header nav{gap:18px;font-size:.85rem}.section{padding:75px 5vw}.hero{min-height:650px}.hero-content{padding-left:5vw}.about{gap:6%}.karaoke{gap:6%}.photo-frame{height:560px}.hours{padding:25px}.visit{gap:5%}.hour-row{font-size:.85rem;gap:10px}.instagram{gap:6%}}
@media(max-width:850px){header{height:82px}.brand img{width:52px;height:52px}.brand>span{font-size:.8rem}.brand small{font-size:.55rem}header nav{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;background:var(--panel);padding:20px 25px;border-bottom:1px solid var(--line);gap:0}header nav.is-open{display:flex}header nav a{padding:12px;font-size:1rem}.nav-toggle{display:block;background:none;color:var(--cream);border:1px solid var(--line);border-radius:3px;min-width:40px;height:42px;font-size:1.2rem}.languages{margin-left:auto}.about{gap:5%}.photo-frame{height:520px}.karaoke{align-items:start}.karaoke h2{font-size:2.7rem}.hero{min-height:660px}.hero h1,.hero-line{font-size:clamp(3.8rem,9.5vw,6rem)}.visit{grid-template-columns:1fr 1fr;gap:5%}.hours{padding:20px}.hour-row{flex-direction:column;gap:3px}.instagram-frame iframe{height:500px}.section-heading{align-items:start;flex-direction:column}.drink-grid article{padding:25px 20px}.drink-grid h3{font-size:1.3rem}.contact-strip{flex-direction:column;align-items:start}.menu-layout{grid-template-columns:190px 1fr;gap:5%}footer{flex-wrap:wrap}.brand{gap:9px}}
@media(max-width:600px){header{padding:0 16px;gap:9px}.brand>span{font-size:.72rem;max-width:125px;line-height:1.2}.brand small{font-size:.5rem;line-height:1.4;margin-top:6px}.brand img{width:46px;height:46px}.languages{padding:2px;gap:0}.languages :is(button,a){padding:5px 7px;font-size:.78rem}.nav-toggle{min-width:35px;font-size:1.1rem}.section{padding:60px 24px}.hero{min-height:650px;align-items:start}.hero-content{padding:65px 24px 125px}.hero-photo{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#10120ede,#10120e50),linear-gradient(0deg,#10120ecf,transparent)}.hero h1,.hero-line{font-size:3.65rem;line-height:.98}.hero-line{margin-top:5px}.eyebrow{font-size:.75rem;margin-bottom:20px}.hero-intro{font-size:1rem;max-width:260px}.actions{gap:10px;margin-top:25px}.button{padding:12px 18px;font-size:.88rem;min-height:50px}.hero-foot{left:24px;right:24px;flex-direction:column;gap:5px;font-size:.8rem;padding:18px 0}.about,.karaoke,.instagram,.visit{grid-template-columns:1fr;gap:30px}.about-copy p{font-size:1rem}.about h2{font-size:2.8rem}.photo-frame{height:420px}.karaoke-copy h2{font-size:3rem}.karaoke .photo-frame{order:2;margin-top:15px}.photo-label{left:-8px}.drink-grid{grid-template-columns:1fr;margin-top:25px}.drink-grid article,.drink-grid article:first-child{padding:24px 0;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:5px 20px}.drink-number{grid-column:1 / -1}.drink-grid h3{margin-top:5px;grid-column:1;font-size:1.5rem}.drink-grid p{grid-column:1;margin:0;min-height:0}.drink-grid strong{grid-column:2;grid-row:2 / 4;align-self:center;font-size:2rem}.instagram-frame{max-width:420px}.instagram-frame iframe{height:490px}.hours{padding:25px}.hour-row{flex-direction:row;font-size:.9rem;gap:10px}.visit h2{font-size:3rem}.contact-strip{padding:28px 24px;font-size:.9rem}.contact-strip h3{font-size:1.1rem}footer{padding:45px 24px 115px;display:grid;gap:25px}.mobile-bottom{position:fixed;z-index:15;bottom:0;left:0;right:0;display:flex;border-top:1px solid var(--line);background:var(--bg);padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-bottom a{flex:1;text-align:center;border:1px solid var(--line);padding:10px 6px;font-weight:600;font-size:.85rem;border-radius:3px}.mobile-bottom a:first-child{background:var(--accent);color:var(--bg);border-color:var(--accent)}.menu-main{padding:45px 24px 60px}.menu-title h1{font-size:3.8rem}.menu-layout{display:block;padding-top:25px}.menu-categories{position:static;flex-direction:row;overflow-x:auto;padding-bottom:20px;margin-bottom:20px}.menu-categories a{white-space:nowrap;border:1px solid var(--line);font-size:.85rem;padding:8px 12px;border-radius:25px}.menu-sections h2{font-size:2.5rem}.menu-item{font-size:.94rem}html[lang=ja] .hero h1,html[lang=ja] .hero-line{font-size:2.9rem}html[lang=ja] h2{font-size:2.1rem;line-height:1.4}.hero-content .eyebrow{letter-spacing:.14em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.existing-links{display:flex;gap:18px;margin:12px 0;font-size:.9rem}.existing-links a:hover{color:var(--accent)}
.karaoke-rules{display:grid;grid-template-columns:1fr 1.35fr;gap:7%;border-top:1px solid var(--line);background:var(--panel)}.rules-intro h2{font-size:clamp(2.8rem,4.5vw,4.6rem)}.rules-hours{border-left:3px solid var(--accent);padding:8px 0 8px 18px;margin-top:30px}.rules-hours strong,.rules-hours span{display:block}.rules-hours strong{color:var(--accent)}.rules-hours span{margin-top:5px;color:var(--muted)}.rules-list{list-style:none;padding:0;margin:0}.rules-list li{display:flex;align-items:baseline;gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}.rules-list li:first-child{padding-top:0}.rule-number{font-family:'Barlow Condensed',sans-serif;color:var(--accent);font-size:1.6rem;flex-shrink:0}.rules-list li>span:last-child{font-size:1rem;line-height:1.7}@media(max-width:700px){.karaoke-rules{grid-template-columns:1fr;gap:32px}.rules-list li{gap:18px}.rules-hours{margin-top:22px}}
.shop-main{max-width:1500px;margin:auto;padding:70px 6vw 100px}.shop-heading h1{color:var(--accent);font-size:clamp(3.5rem,7vw,7rem)}.shop-heading p{max-width:650px}.shop-notice{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:32px 0;color:var(--cream)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 36px}.product-image{aspect-ratio:1;background:#f5f3ed;position:relative;overflow:hidden;border-radius:3px}.product-image img{height:100%;width:100%;object-fit:contain}.product-badge{position:absolute;top:18px;left:18px;background:var(--accent);color:var(--bg);padding:6px 14px;font-size:.9rem;font-weight:700;border-radius:3px}.product-info{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-top:20px}.product-info h2{font-size:2.3rem}.product-info strong{font-size:1.4rem;color:var(--accent);white-space:nowrap}.product-card p{font-size:.95rem;margin:10px 0}.shop-visit{border-top:1px solid var(--line);margin-top:65px;padding-top:50px}.shop-visit h2{font-size:clamp(2.3rem,4vw,4rem)}html[lang=ja] .product-info h2{font-size:1.7rem}@media(max-width:600px){.shop-main{padding:45px 24px 65px}.shop-heading h1{font-size:3.5rem}.product-grid{grid-template-columns:1fr;gap:36px}.product-info h2{font-size:2rem}.product-info strong{font-size:1.3rem}html[lang=ja] .shop-heading h1{font-size:2.6rem}}
.jobs-main{max-width:1500px;margin:auto;padding:70px 6vw 100px}.jobs-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center}.jobs-hero h1{font-size:clamp(3.5rem,6vw,6.5rem);color:var(--accent)}.jobs-hero img{width:100%;height:540px;object-fit:cover;border-radius:3px}.jobs-lead{font-size:1.3rem;color:var(--cream)}.jobs-hero .button{margin-top:12px}.jobs-details,.job-apply{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;margin-top:70px;padding-top:65px;border-top:1px solid var(--line)}.jobs-details h2,.job-apply h2{font-size:clamp(2.5rem,3.6vw,3.8rem)}.job-facts>div{border-bottom:1px solid var(--line);padding:20px 0}.job-facts>div:first-child{padding-top:0}.job-facts h3{font-size:.9rem;letter-spacing:.08em;color:var(--accent)}.job-facts p{margin:8px 0;font-size:1rem}.apply-card{padding:30px;background:var(--panel);border:1px solid var(--line);align-self:start}.apply-card .button{width:100%}html[lang=ja] .jobs-hero h1{font-size:clamp(2.8rem,4.8vw,5rem)}html[lang=ja] .jobs-details h2,html[lang=ja] .job-apply h2{font-size:clamp(2rem,3vw,3rem)}@media(min-width:851px) and (max-width:1100px){header nav{gap:12px}.brand>span{max-width:140px;line-height:1.25}header{gap:12px}}@media(max-width:700px){.jobs-main{padding:45px 24px 70px}.jobs-hero,.jobs-details,.job-apply{grid-template-columns:1fr;gap:30px}.jobs-hero img{height:310px}.jobs-hero h1{font-size:3.7rem}.jobs-details,.job-apply{margin-top:45px;padding-top:45px}.apply-card{padding:24px}}
.application-section{margin-top:70px;border-top:1px solid var(--line);padding-top:55px;scroll-margin-top:110px}.application-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;flex-wrap:wrap}.application-heading h2{font-size:clamp(2.6rem,4vw,4rem)}.application-section>p{max-width:850px}.application-frame{background:#fff;border:1px solid var(--line);border-radius:5px;overflow:hidden;margin-top:25px}.application-frame iframe{display:block;width:100%;height:1500px;border:0;background:#fff}@media(max-width:600px){.application-section{margin-top:45px;padding-top:40px}.application-frame iframe{height:1250px}.application-heading{align-items:start;flex-direction:column;gap:20px}.application-heading .text-link{white-space:normal}}
[hidden]{display:none!important}.native-application{max-width:1050px;margin-left:auto;margin-right:auto}.native-application>h2{font-size:clamp(2.6rem,4vw,4rem)}.application-group{border:0;border-top:1px solid var(--line);margin:38px 0;padding:30px 0 0;min-width:0}.application-group>legend{font-size:1.4rem;font-weight:700;padding:0 20px 0 0}.application-group>legend>span:first-child{color:var(--accent);margin-right:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.form-field{min-width:0}.form-field.full{grid-column:1/-1}.form-field>label,.checkbox-group>legend{display:block;font-size:1rem;margin:0 0 9px;line-height:1.65}.form-field input:not([type=checkbox]),.form-field select,.form-field textarea{width:100%;min-width:0;background:#20221d;border:1px solid #686b5c;border-radius:4px;color:var(--cream);padding:13px 14px;font:inherit;font-size:1rem;color-scheme:dark}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.form-field textarea{resize:vertical}.required-mark{color:var(--accent)}.choice{display:flex!important;align-items:flex-start;gap:12px;margin-bottom:12px;font-size:1rem}.choice input{margin-top:7px;width:19px;height:19px;flex-shrink:0;accent-color:var(--accent)}.checkbox-group{border:0;margin:0;padding:0}.check-options{display:flex;flex-wrap:wrap;gap:12px 28px}.upload-field{padding:25px;background:var(--panel);border:1px dashed #7d805d;border-radius:5px}.upload-field input[type=file]{padding:10px;font-size:.95rem}.upload-field input::file-selector-button{background:var(--accent);color:var(--bg);border:0;padding:10px 14px;border-radius:3px;margin-right:12px;cursor:pointer}.bot-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.application-submit{border-top:1px solid var(--line);padding-top:20px}.application-submit p{font-size:.95rem;max-width:700px}.application-submit button{min-width:230px}button:disabled{cursor:wait;opacity:.7}.form-error{padding:20px;border:1px solid #ed8b74;background:#351d17;color:#ffd3c9;margin:20px 0;white-space:pre-line}#application-success{padding:40px;border:1px solid var(--accent);background:var(--panel);margin-top:30px}#application-reference{overflow-wrap:anywhere;color:var(--accent)}.gallery-main{max-width:1500px;padding:65px 5vw 100px;margin:auto}.gallery-heading h1{font-size:clamp(3.5rem,7vw,7rem);color:var(--accent)}.gallery-filters{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.gallery-filters button{background:none;color:var(--cream);padding:10px 20px;border:1px solid var(--line);border-radius:30px;font-size:1rem;min-height:46px}.gallery-filters button[aria-pressed=true]{background:var(--accent);color:var(--bg);border-color:var(--accent)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gallery-photo{position:relative;background:var(--panel);padding:0;border:0;border-radius:4px;overflow:hidden;text-align:left;color:white}.gallery-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .25s}.gallery-photo:hover img{transform:scale(1.035)}.gallery-photo>span{display:block;padding:13px 16px;font-size:.9rem}.gallery-share{padding-top:65px;margin-top:65px;border-top:1px solid var(--line)}.gallery-share h2{font-size:clamp(2.6rem,4vw,4rem)}#gallery-lightbox{background:#111210;color:white;border:1px solid var(--line);border-radius:5px;padding:20px;width:min(1100px,95vw);max-height:95svh}#gallery-lightbox::backdrop{background:#000e}.lightbox-bar,.lightbox-controls{display:flex;justify-content:space-between;align-items:center;gap:20px}.lightbox-bar button,.lightbox-controls button{background:var(--panel);border:1px solid var(--line);color:var(--cream);border-radius:3px;padding:10px 20px;min-height:44px}#lightbox-image{width:100%;height:calc(85svh - 150px);object-fit:contain;margin:16px 0}.lightbox-open{overflow:hidden}.admin-main{max-width:1100px;margin:auto;padding:60px 5vw 100px}.admin-main h1{font-size:clamp(3rem,6vw,6rem);color:var(--accent)}.application-row{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;text-align:left;gap:20px;border:1px solid var(--line);background:var(--panel);color:var(--cream);padding:20px;font-size:1rem;margin:10px 0;border-radius:4px}.application-row span{overflow-wrap:anywhere}.admin-pagination{display:flex;gap:16px;margin-top:20px}#applicant-name{font-size:2.5rem;margin-top:35px}#application-data{display:grid;grid-template-columns:1fr 1.3fr}#application-data dt,#application-data dd{padding:16px 12px;border-bottom:1px solid var(--line);margin:0;white-space:pre-wrap;overflow-wrap:anywhere}#application-data dt{color:var(--muted)}#application-files{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}#application-files a{overflow-wrap:anywhere;max-width:100%}.existing-links{flex-wrap:wrap}@media(max-width:1000px){header nav{gap:12px;font-size:.83rem}.brand>span{font-size:.8rem;max-width:145px;line-height:1.25}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.form-grid{grid-template-columns:1fr;gap:22px}.application-group>legend{font-size:1.15rem}.upload-field{padding:18px}.application-submit button{width:100%}.gallery-main{padding:40px 24px 75px}.gallery-grid{gap:12px}.gallery-photo>span{font-size:.8rem;padding:10px}.gallery-heading h1{font-size:3.5rem}.gallery-filters{gap:8px}.gallery-filters button{font-size:.88rem;padding:8px 15px}.gallery-share{margin-top:45px;padding-top:40px}#gallery-lightbox{padding:12px}.application-row{grid-template-columns:1fr;gap:8px}#application-data{grid-template-columns:1fr}#application-data dt{border:0;padding-bottom:3px}#application-data dd{padding-top:3px}.admin-main{padding:40px 24px 90px}}

/* Glass after dark: shared surfaces across every page. */
:root{--bg:#0d1017;--panel:#1b202b;--cream:#fff9ee;--muted:#c3c7d0;--accent:#ffd080;--line:rgba(235,240,255,.18);--glass:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.035));--glass-shadow:0 16px 48px #0003,inset 0 1px 0 #ffffff26}
body{background:radial-gradient(ellipse at 5% 25%,#65442638,transparent 45%),radial-gradient(ellipse at 95% 60%,#34497538,transparent 45%),var(--bg)}
header{top:16px;margin:16px auto;width:calc(100% - 48px);max-width:1480px;height:82px;padding:0 24px;border:1px solid #ffffff30;border-radius:28px;background:linear-gradient(125deg,#ffffff1c,#ffffff08),#111722b8;backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);box-shadow:var(--glass-shadow);gap:20px}
.brand img{width:54px;height:54px}.brand small{font-size:.7rem}header nav{gap:19px;font-size:.9rem}header nav a{transition:color .2s}header nav a:hover{color:#ffe0a8}
.languages{border-radius:30px;background:#ffffff08}.languages :is(button,a){border-radius:22px;min-height:38px}.languages :is(button,a):is([aria-pressed=true],[aria-current=page]){background:linear-gradient(145deg,#fff6e6,#d9dfe6);box-shadow:0 2px 10px #0002}.nav-toggle{border-radius:50%;background:#ffffff0d}
.hero{margin:0 24px;border-radius:36px;border:1px solid #ffffff26;min-height:720px;min-height:min(820px,calc(100svh - 130px));box-shadow:0 25px 65px #0004}.hero-photo{object-position:center 55%}.hero-shade{background:linear-gradient(90deg,#0b101de6,#0b101d65 65%,#0b101d10),linear-gradient(0deg,#0d1017b3,transparent 65%)}.hero-content{padding-left:5vw;padding-top:70px}.hero h1,.hero-line{text-shadow:0 5px 35px #0004}.hero .eyebrow{display:inline-block;padding:8px 15px;border:1px solid #ffffff30;background:#ffffff12;border-radius:30px;backdrop-filter:blur(12px);font-size:.8rem}.hero-intro{max-width:520px}.hero-foot{left:5vw;right:5vw;bottom:24px;border:1px solid #ffffff30;border-radius:20px;padding:18px 24px;background:#17202c80;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.button{border-radius:100px;min-height:54px;padding:14px 27px;box-shadow:inset 0 1px 0 #ffffff45;transition:transform .2s,background .2s,box-shadow .2s}.primary{background:linear-gradient(145deg,#ffe1a3,#edb75e);color:#251b0d;border-color:#ffe4b5}.primary:hover{background:#ffe3b2;box-shadow:0 8px 28px #e5a64325}.outline{background:linear-gradient(145deg,#ffffff20,#ffffff08);border-color:#ffffff40;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.tags span,.time-pill{border-radius:30px;background:#ffffff09;border-color:var(--line);font-size:.875rem}.photo-frame img,.jobs-hero img{border-radius:28px;border:1px solid #ffffff2b;box-shadow:0 20px 50px #0004}.photo-label{border-radius:16px;background:linear-gradient(140deg,#ffe4ac,#efbc6e);box-shadow:0 8px 24px #0003;transform:rotate(-2deg)}
.drinks,.karaoke-rules,.visit{background:linear-gradient(125deg,#ffffff05,#ffffff01)}.drink-grid{border:0;gap:20px}.drink-grid article,.drink-grid article:first-child,.drink-grid article:last-child{padding:30px;border:1px solid var(--line);border-radius:24px;background:var(--glass);box-shadow:var(--glass-shadow)}.drink-grid p{font-size:1rem}.hours,.apply-card{border:1px solid var(--line);border-radius:28px;background:var(--glass);box-shadow:var(--glass-shadow)}.instagram-frame{border-radius:28px;box-shadow:0 20px 60px #0004}.rules-list{border:1px solid var(--line);border-radius:28px;padding:12px 28px;background:var(--glass);box-shadow:var(--glass-shadow)}.rules-list li:first-child{padding-top:20px}.rules-list li:last-of-type{border-bottom:0}.contact-strip{margin:24px;border:1px solid #ffe1a150;border-radius:24px;background:linear-gradient(120deg,#ffd28726,#ffe1ab0a);color:var(--cream)}.contact-strip a{color:var(--accent)}
.menu-categories{border:1px solid var(--line);border-radius:22px;padding:12px;background:var(--glass)}.menu-categories a{border-left:0;border-radius:12px;font-size:.95rem}.menu-categories a:hover{background:#ffffff0c}.menu-sections section{border:1px solid var(--line);border-radius:26px;padding:28px;background:var(--glass);box-shadow:var(--glass-shadow)}.menu-item:last-of-type{border-bottom:0}.menu-item{font-size:1rem}.menu-title,.shop-heading,.gallery-heading{padding-bottom:28px}.product-card{padding:16px 16px 22px;border:1px solid var(--line);border-radius:28px;background:var(--glass);box-shadow:var(--glass-shadow)}.product-image{border-radius:18px}.product-info{padding:0 8px;flex-wrap:wrap;gap:8px}.product-card p{padding:0 8px}.product-badge{border-radius:24px}.shop-notice{padding:20px 24px;border:1px solid var(--line);border-radius:18px;background:#ffffff06}.gallery-filters button{background:#ffffff08;border-color:#ffffff30;box-shadow:inset 0 1px 0 #ffffff1a}.gallery-filters button[aria-pressed=true]{background:linear-gradient(145deg,#ffe1a3,#edb75e)}.gallery-photo{border:1px solid #ffffff26;border-radius:22px;background:var(--glass);box-shadow:var(--glass-shadow)}.gallery-photo>span{font-size:.95rem;padding:16px 20px}#gallery-lightbox{background:linear-gradient(140deg,#29303aeb,#111722eb);border-radius:28px;box-shadow:0 30px 100px #0008;backdrop-filter:blur(22px)}#gallery-lightbox::backdrop{background:#080b12c9;backdrop-filter:blur(10px)}.lightbox-bar button,.lightbox-controls button{border-radius:24px;background:#ffffff10}#lightbox-image{border-radius:16px}
.application-group{background:var(--glass);border:1px solid var(--line);border-radius:24px;padding:25px;margin:32px 0;box-shadow:var(--glass-shadow)}.application-group>legend{padding:0 12px;line-height:1.5}.form-field input:not([type=checkbox]),.form-field select,.form-field textarea{background:#111722d9;border-color:#ffffff40;border-radius:13px;min-height:50px}.upload-field{background:#ffffff05;border-radius:18px}.upload-field input::file-selector-button{border-radius:20px}.form-error,#application-success{border-radius:20px}.application-row{border-radius:18px;background:var(--glass)}.small-note{font-size:.9rem}
@media(min-width:851px) and (max-width:1150px){header{padding:0 16px;gap:12px;width:calc(100% - 32px)}header nav{gap:11px;font-size:.875rem}.brand>span{max-width:125px;font-size:.8rem}.brand{gap:9px}.brand img{width:46px;height:46px}.languages :is(button,a){padding:5px 8px}}
@media(max-width:850px){header{top:10px;width:calc(100% - 32px);margin:10px auto;height:76px;padding:0 16px;border-radius:24px}header nav{top:85px;left:0;right:0;padding:14px;background:linear-gradient(140deg,#303641f5,#151b26fa);border:1px solid #ffffff30;border-radius:24px;box-shadow:0 24px 60px #0007;backdrop-filter:blur(24px)}header nav a{border-radius:12px}header nav a:hover{background:#ffffff10}.nav-toggle{min-width:44px;height:44px}.hero{margin:0 16px;min-height:660px;border-radius:28px}.hero-foot{padding:16px 20px;left:24px;right:24px}.hero-content{padding-left:32px}.drink-grid{gap:12px}.drink-grid article,.drink-grid article:first-child,.drink-grid article:last-child{padding:24px 20px}.menu-layout{gap:24px;grid-template-columns:180px 1fr}.menu-sections section{padding:24px}}
@media(max-width:600px){header{width:calc(100% - 20px);padding:0 10px;gap:7px;height:72px;border-radius:23px}.brand{gap:8px}.brand img{width:42px;height:42px}.brand>span{font-size:.72rem;max-width:108px}.brand small{font-size:.55rem;letter-spacing:.08em}.languages :is(button,a){padding:5px 7px;min-height:40px;font-size:.8rem}.nav-toggle{min-width:40px;height:42px}.hero{margin:0 10px;min-height:710px;border-radius:27px}.hero-content{padding:52px 24px 175px}.hero h1,.hero-line{font-size:clamp(3rem,13vw,4.5rem)}.hero .eyebrow{font-size:.75rem;letter-spacing:.08em;padding:7px 12px}.hero-foot{left:16px;right:16px;bottom:16px;padding:16px;font-size:.875rem;border-radius:20px}.hero-intro{max-width:280px}.hero .actions{gap:10px}.button{font-size:.9rem;padding:13px 20px}.section{padding:58px 24px}.drink-grid{gap:14px}.drink-grid article,.drink-grid article:first-child,.drink-grid article:last-child{padding:24px;border:1px solid var(--line)}.rules-list{padding:5px 20px;border-radius:24px}.photo-frame{height:420px}.contact-strip{margin:16px;padding:25px}.mobile-bottom{bottom:12px;left:12px;right:12px;gap:8px;padding:8px;border:1px solid #ffffff35;border-radius:26px;background:#18202bd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 10px 40px #0007;margin-bottom:env(safe-area-inset-bottom)}.mobile-bottom a{border-radius:19px;min-height:46px;font-size:.875rem}.mobile-bottom a:first-child{background:linear-gradient(145deg,#ffe1a3,#edb75e)}.menu-layout{display:block}.menu-categories{padding:10px;margin-bottom:28px;gap:8px}.menu-categories a{font-size:.9rem}.menu-sections section{padding:22px;margin-bottom:26px}.product-grid{gap:24px}.product-card{padding:12px 12px 20px}.gallery-grid{gap:12px}.gallery-photo{border-radius:17px}.gallery-photo>span{font-size:.875rem;padding:12px}.gallery-filters button{font-size:.9rem}.application-group{padding:20px 16px;border-radius:20px}.application-group>legend{font-size:1.1rem}.jobs-hero img{border-radius:24px}html[lang=ja] .hero h1,html[lang=ja] .hero-line{font-size:clamp(2.25rem,10vw,3rem)}footer{padding-bottom:125px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){header,.mobile-bottom{background:#19212ef5}.hero-foot{background:#19212ee8}}
@media(prefers-reduced-transparency:reduce){header,.mobile-bottom,.hero-foot{background:#19212e;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Consistent field baselines, including native iOS date controls. */
.native-application .form-grid{align-items:stretch;column-gap:24px;row-gap:26px}
.native-application .form-field{display:flex;flex-direction:column;justify-content:flex-end;min-width:0}
.native-application .form-field>label:not(.choice){margin:0 0 10px;line-height:1.55;overflow-wrap:anywhere}
.native-application .form-field input:not([type=checkbox]):not([type=file]),
.native-application .form-field select{display:block;width:100%;max-width:100%;min-width:0;height:56px;min-height:56px;margin:0;padding:14px 16px;font:inherit;font-size:16px;line-height:26px;box-sizing:border-box}
.native-application .form-field textarea{display:block;width:100%;max-width:100%;min-height:132px;margin:0;padding:14px 16px;font:inherit;font-size:16px;line-height:1.6;box-sizing:border-box}
.native-application input[type=date]{appearance:none;-webkit-appearance:none;text-align:left}
.native-application input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:26px}
.native-application input[type=date]::-webkit-datetime-edit{padding:0}
.native-application .choice{justify-content:flex-start;align-items:flex-start;margin:0;line-height:1.65}
.native-application .choice input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;width:20px;height:20px;min-width:20px;min-height:20px;margin:3px 0 0;padding:0;flex:0 0 20px}
.native-application .choice>span:not(.required-mark){flex:1;min-width:0}
.native-application .check-options .choice>span{flex:initial}
.native-application .application-group>p+.choice{margin-bottom:25px}
.native-application input[type=file]{width:100%;min-width:0;max-width:100%;overflow:hidden}
.native-application .upload-field{justify-content:flex-start}
/* Brighter reflections and translucent surfaces, with dark readable controls. */
:root{--glass:linear-gradient(125deg,rgba(255,255,255,.21) 0%,rgba(235,244,255,.08) 42%,rgba(255,255,255,.035) 65%,rgba(211,228,255,.11) 100%);--glass-shadow:0 20px 50px #0003,inset 0 1px 0 #ffffff66,inset 0 -1px 0 #ffffff12}
body{background:radial-gradient(ellipse at 5% 20%,#ae783545,transparent 45%),radial-gradient(ellipse at 95% 55%,#4568ac45,transparent 45%),var(--bg)}
header{background:linear-gradient(125deg,#ffffff2c,#ffffff0a 60%,#cadbff18),#1117229e;border-color:#ffffff45;box-shadow:var(--glass-shadow);backdrop-filter:blur(30px) saturate(170%);-webkit-backdrop-filter:blur(30px) saturate(170%)}
.application-group,.hours,.apply-card,.rules-list,.drink-grid article,.product-card,.menu-sections section,.gallery-photo{border-color:#ffffff36;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%)}
.native-application .form-field input:not([type=checkbox]),.native-application .form-field select,.native-application .form-field textarea{background:linear-gradient(120deg,#ffffff0e,#ffffff03),#101824b8;border:1px solid #dce9ff52;border-radius:14px;box-shadow:inset 0 1px 0 #ffffff17,0 2px 8px #0001;color:#fff9ee}
.native-application .form-field select option{background:#19212e;color:#fff9ee}
.native-application .form-field input:focus,.native-application .form-field select:focus,.native-application .form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #ffd08018;outline:2px solid var(--accent);outline-offset:2px}
.hero-foot,.mobile-bottom{border-color:#ffffff45;box-shadow:var(--glass-shadow)}
@media(max-width:600px){.native-application .form-grid{grid-template-columns:minmax(0,1fr);gap:24px}.native-application .application-group{padding:22px 16px}.application-group,.hours,.apply-card,.rules-list,.drink-grid article,.product-card,.menu-sections section,.gallery-photo{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}
@media(prefers-reduced-transparency:reduce){header,.mobile-bottom,.hero-foot,.application-group,.hours,.apply-card,.rules-list,.drink-grid article,.product-card,.menu-sections section,.gallery-photo{background:#202938;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Preserve the complete supplied blue logo in the header. */
.brand img{background:#0089b5;border-radius:10px;object-fit:contain;flex-shrink:0}

/* Keep section titles inside the glass panels, with a shared text baseline. */
.native-application .application-group-title{display:grid;grid-template-columns:2.5rem minmax(0,1fr);align-items:start;gap:14px;margin:0 0 26px;padding:0;font-size:1.25rem;font-weight:700;line-height:1.5;letter-spacing:normal}
.native-application .application-group-title>span:last-child{padding-top:5px;overflow-wrap:anywhere}
.native-application .application-step{display:flex;align-items:center;justify-content:center;min-height:2.5rem;border:1px solid #ffd08045;border-radius:12px;background:#ffd08012;color:var(--accent);font-size:1rem;line-height:1.5;font-variant-numeric:tabular-nums}
.native-application .application-group-title+.small-note{margin-top:0}
@media(max-width:600px){.native-application .application-group-title{font-size:1.125rem;gap:12px;margin-bottom:24px}.native-application .application-group-title>span:last-child{padding-top:6px}}

/* Liquid highlights for controls. Layers never intercept clicks. */
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a){position:relative;isolation:isolate;overflow:hidden;box-shadow:inset 0 1px 0 #ffffff68,inset 0 -1px 0 #ffffff12,0 4px 14px #0002;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background-color .22s ease}
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a)::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;background:linear-gradient(168deg,#ffffff27 0%,#ffffff0c 35%,transparent 48%,transparent 78%,#ffffff10 100%);opacity:.8;transition:opacity .25s ease}
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a)::after{content:"";position:absolute;inset:-40% -55%;z-index:2;pointer-events:none;background:linear-gradient(110deg,transparent 38%,#ffffff08 43%,#ffffff52 50%,#ffffff10 56%,transparent 62%);transform:translateX(-85%);opacity:0}
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a):focus-visible{box-shadow:inset 0 1px 0 #ffffff8c,0 5px 22px #c8dfff22}
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a):focus-visible::after{animation:clam-control-shine .85s ease-out both}
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a):active:not(:disabled){transform:scale(.97);box-shadow:inset 0 1px 0 #ffffff75,inset 0 3px 12px #0002,0 2px 8px #0002}
:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a).glass-tapped::after{animation:clam-control-shine .8s ease-out both}
header{isolation:isolate;box-shadow:0 18px 48px #0004,inset 0 1px 0 #ffffff80,inset 0 -1px 0 #ffffff20}
header::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 28%,#ffffff06 40%,#ffffff24 48%,#ffffff08 55%,transparent 66%);background-size:280% 100%;background-position:100% 0;animation:clam-nav-reflection 12s ease-in-out infinite}
header nav a{border-radius:14px;padding:7px 9px;background:#ffffff05;box-shadow:inset 0 1px 0 #ffffff16;white-space:nowrap}header nav{gap:5px}
.primary{box-shadow:inset 0 2px 0 #fff5d5b0,inset 0 -2px 0 #9c651f38,0 7px 22px #f4bd4d16}
.nav-toggle,.languages :is(button,a),.lightbox-bar button,.lightbox-controls button{box-shadow:inset 0 1px 0 #ffffff48,inset 0 -1px 0 #ffffff12}
.upload-field input::file-selector-button{background-image:linear-gradient(165deg,#ffffff50,transparent 55%);box-shadow:inset 0 1px 0 #ffffff88;transition:filter .2s ease,transform .2s ease}
.upload-field input::file-selector-button:hover{filter:brightness(1.12)}
@keyframes clam-control-shine{0%{transform:translateX(-85%);opacity:0}15%{opacity:.65}85%{opacity:.65}100%{transform:translateX(85%);opacity:0}}
@keyframes clam-nav-reflection{0%,15%{background-position:100% 0;opacity:.25}45%{opacity:.8}70%,100%{background-position:0% 0;opacity:.25}}
@media(hover:hover) and (pointer:fine){:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a):hover:not(:disabled){transform:translateY(-2px);box-shadow:inset 0 1px 0 #ffffff95,inset 0 -1px 0 #ffffff20,0 8px 24px #bdd6ff20}:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a):hover::before{opacity:1}:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a):hover::after{animation:clam-control-shine .85s ease-out both}}
@media(min-width:851px) and (max-width:1150px){header nav{gap:2px}header nav a{padding:7px 5px}}
@media(max-width:850px){header nav{gap:5px}header nav a{padding:12px 16px;background:#ffffff06;white-space:normal}header nav.is-open{animation:clam-menu-open .22s ease-out both}@keyframes clam-menu-open{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){header::before{animation:none;background-position:50% 0;opacity:.35}:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a){transform:none!important}:where(button,.languages a,.button,.mobile-bottom a,.menu-categories a,header nav a)::after{display:none}}

/* Readable category labels, with room for every word on small screens. */
.menu-categories a{flex-shrink:0;min-width:0;min-height:44px;display:flex;align-items:center}
@media(max-width:600px){.menu-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding:12px}.menu-categories a{white-space:normal;overflow-wrap:anywhere;justify-content:center;text-align:center;min-height:48px;padding:11px 12px;margin:0;line-height:1.45;font-size:.9375rem;border-radius:16px}}
/* Color caught in the glass on selection and press. */
:is(header nav a,.menu-categories a,.languages :is(button,a),.nav-toggle){--prism-fill:linear-gradient(120deg,#28c9ff24,#946cff33 50%,#ff70bc26);--prism-glow:0 0 20px #6eb5ff30,inset 0 1px 0 #dceaffb0,inset 0 -1px 0 #ec8cff40}
:is(header nav a,.menu-categories a)[aria-current]{background:var(--prism-fill);box-shadow:var(--prism-glow);color:#fff;border-color:#bcb0ff80}
:is(header nav a,.menu-categories a,.languages :is(button,a),.nav-toggle):active,
:is(header nav a,.menu-categories a,.languages :is(button,a),.nav-toggle).prism-tapped{background:linear-gradient(120deg,#147da3e8,#6754a4ec 50%,#973f7be8);box-shadow:0 0 26px #9f87ff55,inset 0 1px 0 #ffffffbf,inset 0 -1px 0 #ffa8e480;color:#fff;border-color:#d8cfff9e}
:is(header nav a,.menu-categories a,.languages :is(button,a),.nav-toggle).prism-tapped::before{background:radial-gradient(ellipse at 15% 25%,#5be5ff65,transparent 55%),radial-gradient(ellipse at 85% 80%,#ff82d865,transparent 60%),linear-gradient(150deg,#ffffff25,transparent 55%);animation:clam-prism-bloom .7s ease-out both}
:is(header nav a,.menu-categories a,.languages :is(button,a),.nav-toggle)::after{background:linear-gradient(110deg,transparent 36%,#69e8ff20 43%,#eadcff80 50%,#ff9cdb35 57%,transparent 64%)}
@keyframes clam-prism-bloom{0%{opacity:.2;transform:scale(.9)}30%{opacity:1;transform:scale(1)}100%{opacity:.55;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){:is(header nav a,.menu-categories a,.languages :is(button,a),.nav-toggle).prism-tapped::before{animation:none;opacity:.7}}
@media(max-width:360px){header{padding:0 8px;gap:5px}.brand{gap:6px;flex-shrink:1;min-width:0}.brand img{width:36px;height:36px}.brand>span{max-width:78px;font-size:.65rem}.brand small{display:none}.languages :is(button,a){padding:5px 6px}.nav-toggle{min-width:36px}}
/* Existing blog content, preserved in the site's glass theme. */
.blog-main{max-width:1000px;margin:0 auto;padding:clamp(8rem,16vw,11rem) 1.5rem 5rem}
.blog-main>h1{font-size:clamp(2.5rem,7vw,5rem);margin:1rem 0 2rem}
.blog-card,.blog-article{border:1px solid rgba(255,255,255,.25);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(25,32,46,.58));box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 20px 50px rgba(0,0,0,.16);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);overflow:hidden}
.blog-card>a{display:grid;grid-template-columns:1fr 1fr;color:inherit;text-decoration:none}
.blog-card img{display:block;width:100%;height:100%;object-fit:cover}
.blog-card>a>div{padding:clamp(1.5rem,4vw,2.5rem)}
.blog-card h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin:.75rem 0 1rem}
.blog-card p{line-height:1.6}.blog-card .text-link{display:inline-block;margin-top:1rem}
.blog-article{margin-top:1.5rem;padding:clamp(1.25rem,5vw,3.5rem);overflow-wrap:anywhere}
.blog-article h1{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.05;margin:1rem 0}
.blog-article h2{font-size:clamp(2rem,4.5vw,2.7rem);line-height:1.15;margin:2.5rem 0 1rem}
.blog-article h3{font-size:clamp(1.7rem,4vw,2.2rem);line-height:1.2;margin:2rem 0 1rem}
.blog-article p{font-size:1.05rem;line-height:1.8;margin:1rem 0}
.blog-article .blog-meta{font-size:.9rem;color:var(--muted,#c6c9d0)}
.blog-article img{width:100%;height:auto;border-radius:18px;display:block}
.blog-article .blog-cover{margin:1.75rem 0 2rem}
.blog-article figure{margin:2rem 0}.blog-article figcaption{font-size:.9rem;line-height:1.6;margin-top:.75rem;color:var(--muted,#c6c9d0)}
.blog-article a{color:#f8cb78;text-underline-offset:.2em}
@media(max-width:600px){.blog-main{padding:8rem 1rem 7rem}.blog-card>a{grid-template-columns:1fr}.blog-card img{aspect-ratio:3/2}.blog-article{border-radius:24px}}

/* Instagram profile link respects the account's 20+ viewing restriction. */
.instagram-profile-card{width:100%;max-width:540px;justify-self:center;min-width:0;border:1px solid var(--line);border-radius:28px;background:var(--glass);box-shadow:var(--glass-shadow);overflow:hidden;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.instagram-profile-heading{display:flex;align-items:center;gap:16px;padding:26px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--cream);background:linear-gradient(120deg,#ffd28715,#b27aff10,#47d9ee0a)}
.instagram-profile-heading img{width:64px;height:64px;object-fit:cover;border-radius:18px;flex:none}
.instagram-profile-heading>span{display:grid;gap:5px;min-width:0}.instagram-profile-heading strong{font-size:1.15rem;overflow-wrap:anywhere}.instagram-profile-heading span span{font-size:.9rem;color:var(--muted)}
.instagram-profile-body{padding:30px}.instagram-profile-body .instagram-age{display:inline-flex;align-items:center;justify-content:center;margin:0 0 22px;padding:7px 14px;border:1px solid #ffd28760;border-radius:100px;color:var(--accent);font-size:.95rem;font-weight:700;background:#ffd28710}
.instagram-profile-body h3{font-family:'Barlow Condensed','Noto Sans JP',sans-serif;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.2;color:var(--accent);margin:0 0 18px}.instagram-profile-body>p:not(.instagram-age){font-size:1rem;line-height:1.7;margin:0 0 26px}.instagram-profile-body .button{max-width:100%;text-align:center;white-space:normal}
@media(max-width:600px){.instagram-profile-heading{padding:22px 20px;gap:12px}.instagram-profile-heading img{width:56px;height:56px}.instagram-profile-body{padding:24px 20px}.instagram-profile-body .button{width:100%}}

/* The authenticated feed uses the existing glass surfaces. */
.instagram [hidden],.instagram-admin [hidden]{display:none!important}.instagram-feed-area{grid-column:1/-1;min-width:0}.instagram-connected{gap:32px}.instagram-connected .instagram-copy{grid-column:1/-1}.instagram-connected .instagram-copy h2{white-space:normal}.instagram-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.instagram-post{min-width:0;overflow:hidden;display:block;border:1px solid var(--line);border-radius:24px;background:var(--glass);box-shadow:var(--glass-shadow);text-decoration:none;color:var(--cream)}.instagram-post img{display:block;aspect-ratio:1;width:100%;height:auto;object-fit:cover;background:#1b2130}.instagram-post-info{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:16px;font-size:.9rem}.instagram-post-info time{color:var(--muted)}.instagram-post:hover,.instagram-post:focus-visible{border-color:var(--accent)}.instagram-connected #instagram-age-gate{max-width:100%}.instagram-admin{max-width:1000px;margin:auto}.instagram-admin-panel{padding:28px;margin:26px 0;border:1px solid var(--line);border-radius:26px;background:var(--glass);box-shadow:var(--glass-shadow)}.instagram-admin-panel h2{font-size:2rem;margin:0 0 20px}.instagram-admin-panel p,.instagram-admin-panel li{font-size:1rem;line-height:1.7}.instagram-admin-panel ol{padding-left:24px}.instagram-admin-panel li{margin-bottom:20px}.instagram-admin-panel a{color:var(--accent)}#instagram-connect-form{display:grid;gap:14px;margin:26px 0}#instagram-connect-form input{width:100%;min-width:0;padding:16px;border:1px solid var(--line);border-radius:14px;background:#0b0e1680;color:var(--cream);font:inherit}#instagram-connect-form label{font-weight:600}#instagram-connect-form button{justify-self:start}#instagram-admin-actions{display:flex;gap:12px;flex-wrap:wrap}#instagram-admin-message:empty{display:none}
@media(max-width:850px){.instagram-posts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:480px){.instagram-posts{grid-template-columns:1fr}.instagram-admin-panel{padding:22px 18px}.instagram-post-info{font-size:.9rem}}

/* Soft convex glass: a thin bright rim, rounded inner light and a quiet sun reflection. */
:root{--glass:radial-gradient(ellipse at 12% 0%,#f0f7ff18,transparent 58%),linear-gradient(145deg,#ffffff17,#d8e7ff07 48%,#b5d8ff12);--glass-shadow:0 16px 42px #0003,inset 0 1px 1px #ffffff80,inset 1px 0 1px #d9edff38,inset -1px -1px 1px #d2e9ff48,inset 0 0 18px #e6f2ff08}
.bubble-glass:not(header):not(.hero-foot):not(.mobile-bottom):not(.menu-categories){position:relative}
.bubble-glass{isolation:isolate;border-color:#d9ebff42;box-shadow:var(--glass-shadow);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%)}
:is(.hours,.apply-card,.rules-list,.menu-sections section,.product-card,.application-group,.instagram-profile-card,.instagram-admin-panel).bubble-glass{border-radius:32px}
.bubble-glass>.glass-reflection{position:absolute;inset:0;z-index:3;display:block;margin:0;padding:0;pointer-events:none;overflow:hidden;border-radius:inherit;background:radial-gradient(ellipse at 28% 0%,#effaff16,transparent 65%),radial-gradient(ellipse at 85% 100%,#c9e8ff0c,transparent 55%);box-shadow:inset 0 1px 1px #ffffff45,inset 0 -1px 1px #c9e7ff30}
.bubble-glass>.glass-reflection::before{content:"";position:absolute;inset:-15% -40%;pointer-events:none;background:linear-gradient(112deg,transparent 35%,#f7fbff03 42%,#fff9ec16 49%,#e2f4ff0b 54%,transparent 63%);transform:translate3d(var(--glass-shift,-55%),0,0)}
header.bubble-glass::before{animation:none;background:none}
header.bubble-glass{background:linear-gradient(125deg,#edf5ff21,#c7e2ff08 65%,#e0f1ff16),#131b28b0}
.mobile-bottom.bubble-glass{background:linear-gradient(140deg,#e5f3ff12,#ccdfff06),#15202edb}
.blog-card.bubble-glass,.blog-article.bubble-glass{background:var(--glass)}
.upload-field.bubble-glass{backdrop-filter:none;-webkit-backdrop-filter:none}
html[lang=ja] .menu-sections h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.5;overflow-wrap:anywhere}
html[lang=ja] .menu-item{line-height:1.8}
@media(max-width:600px){.menu-categories.bubble-glass{position:relative;inset:auto}.bubble-glass{backdrop-filter:blur(12px) saturate(125%);-webkit-backdrop-filter:blur(12px) saturate(125%)}:is(.hours,.apply-card,.rules-list,.menu-sections section,.product-card,.application-group,.instagram-profile-card,.instagram-admin-panel).bubble-glass{border-radius:26px}.menu-item{gap:14px}.menu-item>span{min-width:0}.menu-item strong{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){.bubble-glass>.glass-reflection::before{transform:none;opacity:.35}}
@media(prefers-reduced-transparency:reduce){.bubble-glass,header.bubble-glass,.mobile-bottom.bubble-glass,.blog-card.bubble-glass,.blog-article.bubble-glass{background:#202938;backdrop-filter:none;-webkit-backdrop-filter:none}.bubble-glass>.glass-reflection{display:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.bubble-glass{background-color:#202938}}

/* Crawlable language links retain the familiar glass language control. */
.languages a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:1.5}
.landing-intro{padding-bottom:24px}.landing-intro h1{font-size:clamp(2.5rem,6vw,5rem);max-width:1100px}.landing-intro p{max-width:750px;font-size:1.1rem}
.footer-address{display:block;max-width:370px;font-size:.875rem;line-height:1.8;margin:12px 0 18px;color:var(--muted)}
.visit-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:8%;align-items:start}.visit-faq h2{font-size:clamp(2rem,4vw,3.5rem)}.faq-list details{margin:0;padding:22px 0}.faq-list summary{font-size:1rem;line-height:1.6}.faq-list p{margin:16px 0 0}
@media(max-width:600px){.visit-faq{grid-template-columns:1fr;gap:28px}.landing-intro{padding-top:44px}.landing-intro h1{font-size:2.7rem}.languages a{font-size:.8rem}}

/* Direct email contact, using the shared glass control effects. */
.contact-strip .email-button{flex-shrink:0;max-width:100%;text-align:center;border:1px solid #ffe1a170;background:linear-gradient(145deg,#ffffff24,#ffffff08);color:var(--accent)}

/* Tattoo booking sits beneath the bar merchandise in a matching glass panel. */
.tattoo-booking{display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:28px;margin-top:40px;padding:32px;border:1px solid var(--line);border-radius:32px;background:var(--glass);box-shadow:var(--glass-shadow)}
.tattoo-logo{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 8px 24px #0004}
.tattoo-logo img{position:absolute;width:151.724%;height:auto;max-width:none;left:-25.862%;top:-38.621%}
.tattoo-booking h2{font-size:clamp(2.2rem,3.3vw,3.4rem);line-height:1.15}
.tattoo-booking p{margin:10px 0 0}
.tattoo-booking .button{text-align:center;max-width:100%}
@media(max-width:900px){.tattoo-booking{grid-template-columns:96px minmax(0,1fr)}.tattoo-booking .button{grid-column:2;justify-self:start}}
@media(max-width:600px){.tattoo-booking{grid-template-columns:76px minmax(0,1fr);gap:20px;margin-top:26px;padding:24px;border-radius:26px}.tattoo-booking h2{font-size:2rem}.tattoo-booking p{font-size:.95rem}.tattoo-booking .button{grid-column:1/-1;width:100%}html[lang=ja] .tattoo-booking h2{font-size:1.6rem;line-height:1.45}}
@media(prefers-reduced-transparency:reduce){.tattoo-booking{background:#202938}}
