:root{--ink:#17221d;--muted:#65706a;--cream:#f7f4ed;--paper:#fffdfa;--orange:#f2673a;--orange-dark:#d94e25;--sage:#a7b79e;--line:#dddcd4;--shadow:0 18px 50px rgba(23,34,29,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans SC",sans-serif}button,input,select,textarea{font:inherit}button,a{cursor:pointer}a{color:inherit;text-decoration:none}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid rgba(23,34,29,.09);background:rgba(255,253,250,.92);backdrop-filter:blur(16px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:21px;letter-spacing:2px}.brand-mark{width:34px;height:34px;border:2px solid var(--ink);display:grid;place-items:center;font-family:Outfit,sans-serif;font-size:18px;transform:rotate(-5deg);background:var(--orange);color:#fff}.main-nav{display:flex;gap:38px;height:100%}.nav-link{display:grid;place-items:center;font-weight:600;font-size:15px;position:relative}.nav-link:after{content:"";position:absolute;bottom:15px;width:0;height:2px;background:var(--orange);transition:.25s}.nav-link:hover:after,.nav-link.active:after{width:24px}.header-actions{display:flex;align-items:center;gap:12px}.icon-button{width:40px;height:40px;border:0;background:transparent;display:grid;place-items:center}.icon-button svg,.hero-search svg,.filter-search svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.login-button{border:1px solid var(--ink);padding:9px 18px;background:transparent;font-weight:600}.login-button:hover{background:var(--ink);color:#fff}.view{display:none}.active-view{display:block}.hero{min-height:570px;background:var(--cream);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.hero-copy{padding:90px 4vw 70px max(5vw,calc((100vw - 1320px)/2));position:relative;z-index:2}.eyebrow,.section-kicker{font-family:Outfit,sans-serif;color:var(--orange);font-size:12px;font-weight:700;letter-spacing:3px;margin:0 0 18px}.hero h1,.custom-intro h1{font-size:clamp(48px,5.3vw,78px);line-height:1.12;letter-spacing:-4px;margin:0;font-weight:900}.hero h1 span,.custom-intro h1 span{color:var(--orange)}.hero-subtitle{font-size:17px;line-height:1.9;color:var(--muted);max-width:570px;margin:26px 0 34px}.hero-search{height:62px;display:flex;align-items:center;background:#fff;border:1px solid rgba(23,34,29,.16);max-width:650px;padding-left:20px;box-shadow:0 10px 30px rgba(23,34,29,.08)}.hero-search input{border:0;outline:0;flex:1;min-width:0;padding:0 14px;background:transparent}.hero-search button{align-self:stretch;border:0;background:var(--orange);color:#fff;padding:0 28px;font-weight:700}.hero-search button:hover{background:var(--orange-dark)}.quick-cities{display:flex;align-items:center;gap:16px;margin-top:18px;font-size:13px;color:var(--muted)}.quick-cities button{border:0;padding:0;background:none;color:var(--ink);border-bottom:1px solid transparent}.quick-cities button:hover{color:var(--orange);border-color:var(--orange)}.hero-art{position:relative;background:#dce2d6;overflow:hidden}.sun{position:absolute;width:310px;height:310px;border-radius:50%;background:#ee724b;top:65px;right:11%;opacity:.94}.city-line{position:absolute;width:92%;left:2%;bottom:36px;stroke:var(--ink);stroke-width:3}.stamp{position:absolute;right:8%;top:50px;border:2px solid var(--ink);padding:12px 10px;font-weight:800;line-height:1.15;transform:rotate(7deg);z-index:2;background:#f8d9a7}.floating-note{position:absolute;background:#fff;padding:14px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column;border-left:3px solid var(--orange)}.floating-note strong{font:700 24px Outfit}.floating-note span{font-size:11px;color:var(--muted)}.note-one{left:8%;top:34%}.note-two{right:5%;bottom:13%}.explore-section{max-width:1420px;margin:auto;padding:92px 5vw 110px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px}.section-heading h2,.form-heading h2{font-size:36px;margin:0;letter-spacing:-1.5px}.section-heading>p{color:var(--muted);max-width:430px;line-height:1.8;margin:0}.filter-panel{display:grid;grid-template-columns:2.1fr repeat(4,1fr) auto;border:1px solid var(--line);background:#fff;box-shadow:0 10px 30px rgba(23,34,29,.06);min-height:72px}.filter-search{display:flex;align-items:center;padding:0 20px;border-right:1px solid var(--line)}.filter-search input{width:100%;border:0;outline:0;padding:0 12px}.select-wrap{display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);padding:8px 15px}.select-wrap span{font-size:10px;color:var(--muted);margin-bottom:4px}.select-wrap select,.sort-box select{border:0;outline:0;background:transparent;color:var(--ink);font-weight:600}.reset-button{border:0;background:var(--ink);color:#fff;padding:0 22px}.reset-button:hover{background:var(--orange)}.result-bar{display:flex;justify-content:space-between;align-items:center;margin:32px 0 22px;color:var(--muted);font-size:14px}.result-bar strong{color:var(--orange);font-size:20px}.sort-box select{font-size:13px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.guide-card{background:#fff;border:1px solid var(--line);transition:.3s;overflow:hidden}.guide-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.guide-visual{height:250px;position:relative;display:grid;place-items:center;overflow:hidden}.guide-visual:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.42);top:22px}.avatar-art{position:relative;width:145px;height:180px;z-index:1}.avatar-head{position:absolute;width:72px;height:82px;border-radius:48% 48% 44% 44%;background:var(--skin);left:36px;top:12px}.avatar-hair{position:absolute;width:84px;height:68px;border-radius:50% 50% 30% 30%;background:var(--hair);left:30px;top:4px;clip-path:polygon(0 0,100% 0,97% 58%,78% 34%,62% 55%,45% 30%,26% 52%,2% 70%)}.avatar-body{position:absolute;width:140px;height:95px;border-radius:65px 65px 12px 12px;background:var(--shirt);left:2px;bottom:0}.avatar-face{position:absolute;left:57px;top:58px;width:30px;border-top:2px solid rgba(60,38,27,.45);border-radius:50%}.online-badge{position:absolute;top:16px;left:16px;background:#fff;padding:5px 9px;font-size:11px;font-weight:600}.online-badge:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#55a36b;margin-right:5px}.favorite{position:absolute;right:14px;top:14px;border:0;background:rgba(255,255,255,.86);width:34px;height:34px;border-radius:50%;font-size:19px}.favorite.active{color:var(--orange)}.guide-content{padding:22px}.guide-top{display:flex;justify-content:space-between;align-items:flex-start}.guide-name{margin:0;font-size:21px}.guide-meta{font-size:12px;color:var(--muted);margin-top:5px}.rating{font:600 14px Outfit;color:var(--ink)}.rating:before{content:"★";color:var(--orange);margin-right:4px}.guide-bio{font-size:13px;color:var(--muted);line-height:1.7;min-height:45px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0 20px}.tag{font-size:11px;padding:5px 9px;background:var(--cream);color:#526057}.guide-bottom{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;align-items:center}.price strong{font:700 22px Outfit}.price small{color:var(--muted)}.book-button{border:1px solid var(--ink);background:transparent;padding:9px 17px;font-weight:600}.book-button:hover{background:var(--ink);color:#fff}.empty-state{text-align:center;padding:80px 20px;border:1px dashed var(--line)}.empty-state div{font-size:24px;font-weight:700}.empty-state p{color:var(--muted)}.empty-state button{border:0;background:var(--orange);color:#fff;padding:10px 20px}.how-section{background:var(--ink);color:#fff;padding:90px max(5vw,calc((100vw - 1280px)/2))}.section-heading.light>p{color:#aab2ae}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#415048}.steps article{background:var(--ink);padding:42px}.steps span{font:700 46px Outfit;color:var(--orange)}.steps h3{font-size:20px;margin:20px 0 10px}.steps p{color:#aab2ae;line-height:1.8;font-size:14px}.custom-view{background:var(--cream)}.custom-intro{min-height:590px;display:grid;grid-template-columns:1fr 1fr;padding:80px max(5vw,calc((100vw - 1320px)/2));gap:70px;align-items:center}.custom-intro>div:first-child>p:not(.eyebrow){max-width:600px;color:var(--muted);line-height:1.9}.custom-points{display:flex;gap:24px;margin-top:35px}.custom-points div{display:flex;gap:10px;align-items:center}.custom-points b{font:700 24px Outfit;color:var(--orange)}.custom-points span{display:flex;flex-direction:column}.custom-points strong{font-size:13px}.custom-points small{color:var(--muted);margin-top:4px}.route-art{height:430px;background:#dce2d6;position:relative;overflow:hidden}.route-art svg{width:100%;height:100%;fill:none;stroke:var(--orange);stroke-width:4;stroke-dasharray:9 9}.route-art circle{fill:var(--ink);stroke:#fff;stroke-width:5}.route-card{position:absolute;background:#fff;padding:14px 20px;font-weight:700;box-shadow:var(--shadow);z-index:2}.route-card span{font:600 12px Outfit;color:var(--orange)}.card-a{left:7%;top:12%}.card-b{left:45%;top:36%}.card-c{right:3%;bottom:9%}.custom-form-section{background:#fff;padding:90px max(5vw,calc((100vw - 1000px)/2))}.form-heading{text-align:center;margin-bottom:44px}.form-heading p:last-child{color:var(--muted)}.custom-form{border:1px solid var(--line);padding:42px 50px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.custom-form label,.modal-card label{display:flex;flex-direction:column;gap:9px}.custom-form label>span,.custom-form legend,.modal-card label span{font-size:13px;font-weight:600}.custom-form input,.custom-form select,.custom-form textarea,.modal-card input,.modal-card select,.modal-card textarea{border:1px solid var(--line);padding:13px 14px;outline:0;background:#fff}.custom-form input:focus,.custom-form select:focus,.custom-form textarea:focus{border-color:var(--orange)}fieldset{border:0;padding:25px 0;margin:0}.interest-options{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px}.interest-options input{display:none}.interest-options span{border:1px solid var(--line);padding:11px 6px;text-align:center;font-weight:500!important}.interest-options input:checked+span{color:var(--orange);border-color:var(--orange);background:#fff6f1}.full-field{margin-bottom:24px}.agreement{flex-direction:row!important;align-items:center;margin:25px 0}.agreement input{width:17px;height:17px;accent-color:var(--orange)}.submit-custom{width:100%;border:0;background:var(--orange);color:#fff;padding:16px;font-weight:700;font-size:16px}.submit-custom:hover{background:var(--orange-dark)}.submit-custom span{margin-left:10px}footer{background:#111915;color:#fff;padding:34px 5vw;display:flex;align-items:center;justify-content:space-between}.footer-brand{font-size:17px}.footer-brand .brand-mark{width:28px;height:28px}footer p,footer>span{font-size:12px;color:#87918c}.modal{display:none;position:fixed;inset:0;z-index:100}.modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(10,16,13,.66);backdrop-filter:blur(4px)}.modal-card{position:relative;background:#fff;width:min(500px,calc(100% - 32px));margin:8vh auto;padding:42px;z-index:1;box-shadow:var(--shadow)}.modal-card h2{font-size:28px;margin:0 0 8px}.modal-card>p:not(.section-kicker){color:var(--muted);font-size:14px}.modal-close{position:absolute;right:18px;top:15px;border:0;background:transparent;font-size:28px}.modal-card form{display:grid;gap:16px;margin-top:24px}.modal-card form button{border:0;background:var(--orange);color:#fff;padding:14px;font-weight:700}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,30px);background:var(--ink);color:#fff;padding:13px 22px;opacity:0;pointer-events:none;transition:.3s;z-index:120;font-size:14px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.hero{grid-template-columns:1fr}.hero-art{height:390px}.filter-panel{grid-template-columns:2fr repeat(2,1fr)}.filter-panel>*{min-height:62px;border-bottom:1px solid var(--line)}.guide-grid{grid-template-columns:repeat(2,1fr)}.custom-intro{grid-template-columns:1fr}.route-art{max-width:700px;width:100%}.interest-options{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.site-header{padding:0 18px}.main-nav{position:fixed;bottom:0;left:0;right:0;height:62px;background:#fff;justify-content:space-around;z-index:60;border-top:1px solid var(--line)}.nav-link{font-size:13px}.nav-link:after{bottom:7px}.header-actions .icon-button{display:none}.login-button{padding:8px 10px;font-size:12px}.hero-copy{padding:65px 22px}.hero h1,.custom-intro h1{font-size:48px;letter-spacing:-3px}.hero-search{height:auto;display:grid;grid-template-columns:auto 1fr;padding:10px}.hero-search button{grid-column:1/-1;padding:13px;margin-top:8px}.quick-cities{gap:10px}.hero-art{height:320px}.explore-section{padding:68px 18px}.section-heading{display:block}.section-heading h2,.form-heading h2{font-size:30px}.section-heading>p{margin-top:15px}.filter-panel{display:grid;grid-template-columns:1fr 1fr}.filter-search{grid-column:1/-1}.reset-button{min-height:55px}.guide-grid{grid-template-columns:1fr}.result-bar{align-items:flex-start;gap:8px;flex-direction:column}.steps{grid-template-columns:1fr}.custom-intro{padding:60px 22px}.custom-points{flex-direction:column}.route-art{height:330px}.custom-form-section{padding:65px 18px}.custom-form{padding:28px 20px}.form-grid{grid-template-columns:1fr}.interest-options{grid-template-columns:1fr 1fr}footer{padding-bottom:90px;align-items:flex-start;gap:18px;flex-direction:column}.modal-card{padding:34px 24px}}

.guide-photo{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.guide-card:hover .guide-photo{transform:scale(1.035)}
.guide-visual.has-photo:before{display:none}
.auth-card{width:min(460px,calc(100% - 32px))}.auth-tabs,.account-tabs{display:flex;border-bottom:1px solid var(--line);margin:22px 0}.auth-tabs button,.account-tabs button{border:0;background:transparent;padding:11px 22px;font-weight:700;color:var(--muted)}.auth-tabs button.active,.account-tabs button.active{color:var(--orange);border-bottom:2px solid var(--orange)}.auth-form{display:grid;gap:15px}.auth-form button{border:0;background:var(--orange);color:#fff;padding:14px;font-weight:700}.demo-account{font-size:12px!important;background:var(--cream);padding:12px;color:var(--muted)!important;margin-top:18px!important}.account-card{width:min(900px,calc(100% - 32px));max-height:84vh;overflow:auto}.account-heading{display:flex;align-items:center;justify-content:space-between}.account-heading h2{margin:0}.logout-button{border:1px solid var(--line);background:#fff;padding:8px 14px}.account-content{min-height:180px}.order-list{display:grid;gap:12px}.order-item{border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:1fr auto;gap:10px}.order-item h3{margin:0 0 7px;font-size:17px}.order-item p{margin:4px 0;color:var(--muted);font-size:13px}.order-status{color:var(--orange);font-size:12px;font-weight:700}.empty-orders{text-align:center;color:var(--muted);padding:55px}.login-button.logged-in{background:var(--ink);color:#fff}.modal-card button:disabled,.submit-custom:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:720px){.account-card{padding:28px 18px}.order-item{grid-template-columns:1fr}.account-heading{align-items:flex-start}.auth-tabs button,.account-tabs button{padding:10px 13px}}

.card-actions{display:flex;gap:8px}.review-button{border:0;background:transparent;padding:9px 6px;color:var(--muted);font-weight:700}.review-button:hover{color:var(--orange)}
.main-nav button.nav-link{border:0;background:transparent;padding:0 4px}.service-subnav{height:52px;display:flex;align-items:center;justify-content:center;gap:34px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:76px;z-index:40}.service-subnav button,.service-subnav a{border:0;background:transparent;color:var(--muted);font-weight:700;font-size:13px;padding:7px 3px}.service-subnav button.active,.service-subnav button:hover,.service-subnav a:hover{color:var(--orange)}
.nav-dropdown{height:100%;display:flex;align-items:center;position:relative}.travel-menu{position:absolute;left:50%;top:66px;transform:translate(-50%,-8px);width:330px;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(23,34,29,.14);display:flex;gap:4px;opacity:0;visibility:hidden;pointer-events:none;transition:.2s;z-index:80}.nav-dropdown:hover .travel-menu,.nav-dropdown:focus-within .travel-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.travel-menu:before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}.travel-menu button,.travel-menu a{flex:1;border:0;background:transparent;padding:12px 8px;color:var(--muted);font-weight:700;font-size:13px;text-align:center}.travel-menu button:hover,.travel-menu a:hover{background:var(--cream);color:var(--orange)}
.review-card{width:min(680px,calc(100% - 32px));max-height:88vh;overflow:auto}.review-card>p{margin-top:4px}.review-list{display:grid;gap:12px;margin:24px 0;max-height:310px;overflow:auto}.review-item{border:1px solid var(--line);padding:16px}.review-meta{display:flex;justify-content:space-between;gap:15px}.review-meta span{color:var(--orange);letter-spacing:2px}.review-item p{margin:10px 0;color:var(--muted);line-height:1.7;font-size:14px}.review-item time{font-size:11px;color:#929a96}.review-empty{text-align:center;padding:35px 15px;color:var(--muted);background:var(--cream)}.review-form{border-top:1px solid var(--line);padding-top:20px}.review-form h3{margin:0}.star-input{display:flex;gap:4px}.star-input button{background:transparent!important;color:#c7cbc8!important;padding:0!important;font-size:28px!important}.star-input button.selected{color:var(--orange)!important}.review-form textarea{resize:vertical}.review-login-hint{margin:0!important;text-align:center}.review-login-hint a{color:var(--orange);font-weight:700}.loading-message{grid-column:1/-1;color:var(--muted);padding:40px 0}
@media(max-width:720px){.guide-bottom{align-items:flex-end}.card-actions{flex-direction:column;align-items:stretch}.review-button,.book-button{padding:8px 11px}.review-card{padding:28px 20px}}
@media(max-width:720px){.service-subnav{top:76px;justify-content:flex-start;padding:0 18px;gap:24px;overflow:auto}.main-nav button.nav-link{font-size:13px}}
@media(max-width:720px){.nav-dropdown{position:static}.travel-menu{position:fixed;left:8px;right:8px;top:auto;bottom:62px;width:auto;transform:translateY(8px);justify-content:center}.nav-dropdown:hover .travel-menu,.nav-dropdown:focus-within .travel-menu{transform:translateY(0)}}
.service-hero{min-height:500px;padding:75px max(5vw,calc((100vw - 1280px)/2));display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:70px;background:var(--cream)}.service-hero h1{font-size:clamp(48px,5vw,72px);line-height:1.1;letter-spacing:-4px;margin:0}.service-hero h1 span{color:var(--orange)}.service-hero p:not(.eyebrow){max-width:600px;color:var(--muted);line-height:1.9}.service-hero>div>a{display:inline-block;background:var(--orange);color:#fff;padding:14px 24px;font-weight:700;margin-top:15px}.service-poster{height:350px;background:#ddcde8;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid var(--ink);transform:rotate(2deg);box-shadow:18px 18px 0 var(--ink)}.service-poster:before,.service-poster:after{content:"";position:absolute;border:2px solid var(--ink);border-radius:50%}.service-poster:before{width:190px;height:190px}.service-poster:after{width:250px;height:250px}.service-poster b{font:900 55px/1 Outfit;z-index:1;text-align:center}.service-poster span{z-index:1;margin-top:18px;font:700 11px Outfit;letter-spacing:3px}.gaming-hero{background:#e7ece8}.game-poster{background:#bad2c3;transform:rotate(-2deg)}.anime-page .section-kicker,.anime-page .rating:before,.anime-page .review-button:hover{color:#9864ad}.anime-page .book-button:hover{background:#765283}.gaming-page .section-kicker,.gaming-page .rating:before,.gaming-page .review-button:hover{color:#426d58}.gaming-page .book-button:hover{background:#315442}
@media(max-width:800px){.service-hero{grid-template-columns:1fr;padding:60px 22px}.service-poster{height:280px;box-shadow:10px 10px 0 var(--ink)}.service-hero h1{font-size:48px}}

/* Anime festival: comic-book energy while keeping the shared site structure. */
.anime-page{background:#fff8ff}
.anime-page .site-header{background:rgba(255,248,255,.94);border-bottom:2px solid #24182a}
.anime-page .nav-link:after{height:3px;background:#a744c7}
.anime-page .login-button{border:2px solid #24182a;box-shadow:3px 3px 0 #ffc83d}
.anime-page .service-hero{position:relative;background:radial-gradient(circle at 1px 1px,rgba(91,43,110,.15) 1.5px,transparent 1.6px),linear-gradient(125deg,#fff8ff 0 58%,#eed8ff 58%);background-size:16px 16px,100% 100%;border-bottom:4px solid #24182a;overflow:hidden}
.anime-page .service-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:#ffc83d;right:30%;bottom:-190px;border:3px solid #24182a}
.anime-copy{position:relative;z-index:2}
.manga-label{display:inline-block;background:#24182a;color:#fff;padding:7px 13px;margin-bottom:18px;font:800 12px Outfit,sans-serif;letter-spacing:2px;transform:rotate(-2deg);box-shadow:5px 5px 0 #ffc83d}
.anime-page .service-hero h1{font-family:Outfit,"Noto Sans SC",sans-serif;text-shadow:4px 4px 0 #fff,7px 7px 0 #d9a5ef}
.anime-page .service-hero h1 span{color:#a744c7}
.anime-page .service-hero>div>a{background:#a744c7;border:2px solid #24182a;box-shadow:6px 6px 0 #24182a;transition:.2s}
.anime-page .service-hero>div>a:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 #24182a}
.anime-poster{background:linear-gradient(135deg,#f8b9ef 0 47%,#a744c7 47% 53%,#ffc83d 53%);border:4px solid #24182a;box-shadow:18px 18px 0 #24182a;overflow:visible}
.anime-poster:before{background:radial-gradient(circle at 1px 1px,#24182a 1.5px,transparent 1.8px);background-size:12px 12px;border:0;width:190px;height:190px}
.anime-poster:after{border:4px solid #fff;width:245px;height:245px}
.anime-poster b{color:#24182a;text-shadow:3px 3px 0 #fff;font-size:62px}
.anime-poster span{background:#fff;border:2px solid #24182a;padding:7px 12px}
.anime-poster .sticker-one,.anime-poster .sticker-two{position:absolute;border:3px solid #24182a;background:#fff;padding:9px 12px;font:900 14px Outfit,sans-serif;z-index:3}
.anime-poster .sticker-one{left:-25px;top:30px;transform:rotate(-10deg);background:#6de1dd}
.anime-poster .sticker-two{right:-23px;bottom:42px;transform:rotate(9deg);background:#ff789f}
.speech-bubble{position:absolute;right:-25px;top:-34px;background:#fff;border:3px solid #24182a;padding:13px 18px;border-radius:50%;font-weight:900;transform:rotate(5deg);z-index:4}
.anime-listing{background:linear-gradient(180deg,#fff8ff,#f5eaff)}
.anime-page .filter-panel{border:3px solid #24182a;box-shadow:8px 8px 0 #d9a5ef}
.anime-page .guide-card{border:3px solid #24182a;box-shadow:5px 5px 0 #ffc83d}
.anime-page .guide-card:nth-child(even){transform:rotate(.45deg)}
.anime-page .guide-card:nth-child(odd){transform:rotate(-.35deg)}
.anime-page .guide-card:hover{transform:translateY(-7px) rotate(0);box-shadow:9px 9px 0 #a744c7}
.anime-page .tag{background:#f2d7ff;border:1px solid #a744c7;color:#60316f}
.anime-page .book-button{border:2px solid #24182a;box-shadow:3px 3px 0 #ffc83d}
.anime-page .reset-button{background:#a744c7}

/* Gaming companion: dark HUD styling with neon interaction cues. */
.gaming-page{background:#0c1210;color:#eef8f0}
.gaming-page .site-header{background:rgba(10,16,13,.95);border-bottom:1px solid #294034;color:#eef8f0}
.gaming-page .brand-mark{background:#8cff57;color:#0a100d;border-color:#8cff57;box-shadow:0 0 18px rgba(140,255,87,.38)}
.gaming-page .nav-link:after{background:#8cff57;box-shadow:0 0 10px #8cff57}
.gaming-page .login-button{border-color:#8cff57;color:#8cff57}
.gaming-page .login-button:hover,.gaming-page .login-button.logged-in{background:#8cff57;color:#0a100d}
.gaming-hero{position:relative;background:linear-gradient(rgba(140,255,87,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(140,255,87,.035) 1px,transparent 1px),radial-gradient(circle at 80% 30%,#254231,#0c1210 55%);background-size:32px 32px,32px 32px,100% 100%;border-bottom:1px solid #355643;overflow:hidden}
.gaming-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 5px,rgba(0,0,0,.12) 6px)}
.gaming-copy{position:relative;z-index:2}
.online-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #8cff57;color:#8cff57;padding:7px 12px;margin-bottom:20px;font:700 12px Outfit,sans-serif;letter-spacing:2px;background:rgba(140,255,87,.07)}
.online-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:#8cff57;box-shadow:0 0 12px #8cff57}
.gaming-page .service-hero h1{font-family:Outfit,"Noto Sans SC",sans-serif;text-transform:uppercase;letter-spacing:-2px}
.gaming-page .service-hero h1 span{color:#8cff57;text-shadow:0 0 22px rgba(140,255,87,.45)}
.gaming-page .service-hero p:not(.eyebrow){color:#9fb1a5}
.gaming-page .service-hero>div>a{background:#8cff57;color:#0a100d;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.game-stats{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.game-stats span{border:1px solid #355643;background:#111c16;color:#b8c9bd;padding:8px 12px;font:600 12px Outfit,sans-serif}
.game-poster{background:#101b15;border:1px solid #8cff57;box-shadow:0 0 0 7px #17271d,0 0 35px rgba(140,255,87,.2);transform:none;color:#eef8f0;overflow:hidden}
.game-poster:before{width:220px;height:220px;border:1px solid #355643;box-shadow:0 0 25px rgba(140,255,87,.15) inset}
.game-poster:after{width:160px;height:160px;border:1px dashed #8cff57}
.game-poster b{color:#8cff57;text-shadow:0 0 15px rgba(140,255,87,.45)}
.game-poster span{color:#8cff57}
.game-poster em{position:absolute;bottom:35px;font:700 11px Outfit,sans-serif;letter-spacing:4px;color:#8cff57;animation:game-blink 1.4s steps(2,end) infinite;z-index:4}
@keyframes game-blink{50%{opacity:.3}}
.hud-corner{position:absolute;width:38px;height:38px;z-index:3}
.hud-corner.top-left{left:14px;top:14px;border-left:3px solid #8cff57;border-top:3px solid #8cff57}
.hud-corner.top-right{right:14px;top:14px;border-right:3px solid #8cff57;border-top:3px solid #8cff57}
.hud-corner.bottom-left{left:14px;bottom:14px;border-left:3px solid #8cff57;border-bottom:3px solid #8cff57}
.hud-corner.bottom-right{right:14px;bottom:14px;border-right:3px solid #8cff57;border-bottom:3px solid #8cff57}
.crosshair{position:absolute;width:18px;height:18px;border:1px solid #8cff57;border-radius:50%;z-index:3}
.crosshair:before,.crosshair:after{content:"";position:absolute;background:#8cff57}
.crosshair:before{width:26px;height:1px;left:-5px;top:8px}.crosshair:after{width:1px;height:26px;left:8px;top:-5px}
.gaming-listing{background:#101713}
.gaming-page .section-heading>p,.gaming-page .result-bar,.gaming-page .loading-message{color:#91a297}
.gaming-page .filter-panel{background:#121d17;border-color:#355643;box-shadow:0 0 30px rgba(140,255,87,.06)}
.gaming-page .filter-panel input,.gaming-page .filter-panel select{color:#eef8f0;background:transparent}
.gaming-page .filter-panel input::placeholder{color:#91a99a;opacity:1}
.gaming-page .filter-panel option{color:#17221d}
.gaming-page .filter-search,.gaming-page .select-wrap{border-color:#355643}
.gaming-page .select-wrap span{color:#789080}
.gaming-page .reset-button{background:#8cff57;color:#0a100d}
.gaming-page .guide-card{background:#151f19;border:1px solid #355643;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.gaming-page .guide-card:hover{border-color:#8cff57;box-shadow:0 0 28px rgba(140,255,87,.16)}
.gaming-page .guide-meta,.gaming-page .guide-bio,.gaming-page .price small{color:#91a297}
.gaming-page .tag{background:#203126;color:#aee69a;border:1px solid #355643}
.gaming-page .guide-bottom{border-color:#355643}
.gaming-page .book-button{border-color:#8cff57;color:#8cff57}
.gaming-page .book-button:hover{background:#8cff57;color:#0a100d}
.gaming-page .review-button{color:#91a297}
.gaming-page footer{border-top:1px solid #294034}
.gaming-page .modal-card{background:#151f19;color:#eef8f0;border:1px solid #355643}
.gaming-page .modal-card input,.gaming-page .modal-card select,.gaming-page .modal-card textarea{background:#0f1712;color:#eef8f0;border-color:#355643}
.gaming-page .review-item{border-color:#355643}.gaming-page .review-empty{background:#101713}
@media(max-width:800px){.anime-poster .sticker-one{left:-8px}.anime-poster .sticker-two,.speech-bubble{right:-8px}.game-stats{margin-bottom:8px}}
.anime-events-section{padding:75px max(5vw,calc((100vw - 1280px)/2));background:#fff8ff;border-bottom:3px solid #24182a}.anime-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.anime-event-card{background:#fff;border:3px solid #24182a;padding:24px;box-shadow:6px 6px 0 #ffc83d}.anime-event-card time{font:800 13px Outfit,sans-serif;color:#a744c7;letter-spacing:2px}.anime-event-card h3{font-size:20px;margin:13px 0 8px}.anime-event-card p{color:var(--muted);font-size:13px}.anime-event-card button{border:2px solid #24182a;background:#a744c7;color:#fff;padding:9px 14px;font-weight:800;margin-top:10px}.anime-page .modal-card select{border:1px solid var(--line);padding:13px 14px;background:#fff}.anime-page .modal-card input:disabled{background:#eee;color:#999}@media(max-width:800px){.anime-event-grid{grid-template-columns:1fr}.anime-events-section{padding:55px 22px}}

/* Photography: restrained editorial layout inspired by contact sheets and film. */
.photography-page{background:#eeeae2;color:#1d1c19}
.photography-page .site-header{background:rgba(238,234,226,.94);border-bottom:1px solid #aaa397}
.photography-page .brand-mark{background:#1d1c19;border-color:#1d1c19;transform:none}
.photography-page .nav-link:after{background:#1d1c19}
.photography-page .login-button{border-color:#1d1c19}
.photo-hero{min-height:610px;background:#d8d1c5;padding-top:55px;padding-bottom:55px;grid-template-columns:.85fr 1.15fr}
.photo-copy .eyebrow{color:#6e685f}.photo-index{font:600 12px Outfit,sans-serif;letter-spacing:3px;border-top:1px solid #1d1c19;padding-top:11px;display:inline-block;margin-bottom:38px}
.photography-page .service-hero h1{font-family:Georgia,"Noto Serif SC",serif;font-weight:400;letter-spacing:-3px}.photography-page .service-hero h1 span{color:#1d1c19;font-style:italic}.photography-page .service-hero p:not(.eyebrow){color:#625d55}.photography-page .service-hero>div>a{background:#1d1c19;color:#f7f4ed;font-weight:500;letter-spacing:2px}
.photo-stage{height:470px;position:relative;background:#252522;padding:28px;box-shadow:18px 18px 0 #b8b0a3}.photo-frame{height:100%;position:relative;background:linear-gradient(145deg,rgba(20,20,18,.1),rgba(20,20,18,.48)),linear-gradient(115deg,#b7aa98 0 33%,#6f746d 33% 60%,#c5b394 60%);overflow:hidden}.photo-frame:before{content:"";position:absolute;width:44%;height:130%;left:30%;top:-15%;background:rgba(245,238,222,.32);transform:skew(-12deg);filter:blur(8px)}.photo-subject{position:absolute;width:150px;height:260px;border-radius:48% 48% 12% 12%;background:#292723;left:48%;bottom:-30px;transform:translateX(-50%)}.photo-subject:before{content:"";position:absolute;width:86px;height:104px;border-radius:50%;background:#c9a27e;left:32px;top:-70px;box-shadow:0 -28px 0 -6px #292723}.photo-caption{position:absolute;left:44px;bottom:42px;color:#fff;font:500 11px Outfit,sans-serif;letter-spacing:3px;writing-mode:vertical-rl}.film-code{position:absolute;right:11px;top:32px;color:#d8d1c5;font:500 9px Outfit,sans-serif;letter-spacing:2px;writing-mode:vertical-rl}.focus-box{position:absolute;width:90px;height:112px;border:1px solid rgba(255,255,255,.8);left:50%;top:42%;transform:translate(-50%,-50%)}
.photo-listing{background:#f4f1eb;max-width:none;padding-left:max(5vw,calc((100vw - 1280px)/2));padding-right:max(5vw,calc((100vw - 1280px)/2))}.photography-page .section-kicker{color:#6e685f}.photography-page .section-heading h2{font-family:Georgia,"Noto Serif SC",serif;font-weight:400}.photography-page .filter-panel{border-color:#aaa397;box-shadow:none}.photography-page .guide-grid{gap:34px}.photography-page .guide-card{border:0;background:transparent;overflow:visible}.photography-page .guide-card:hover{box-shadow:none;transform:translateY(-4px)}.photography-page .guide-visual{height:330px;filter:saturate(.72) contrast(1.05)}.photography-page .guide-content{padding:20px 0}.photography-page .guide-name{font-family:Georgia,"Noto Serif SC",serif;font-weight:400;font-size:25px}.photography-page .tag{background:transparent;border-bottom:1px solid #aaa397;padding:5px 0;margin-right:12px}.photography-page .book-button{background:#1d1c19;color:#fff}.photography-page .reset-button{background:#6e685f}.photography-page .rating:before,.photography-page .review-button:hover{color:#8b6545}
@media(max-width:800px){.photo-hero{grid-template-columns:1fr}.photo-stage{height:360px;box-shadow:10px 10px 0 #b8b0a3}}
.booking-agreements{display:grid;gap:10px;padding:16px;background:var(--cream);border:1px solid var(--line);font-size:12px;line-height:1.65}.booking-agreements>strong{font-size:14px}.modal-card .booking-agreements label{display:grid;grid-template-columns:18px 1fr;gap:9px;align-items:start}.booking-agreements input{width:17px;height:17px;margin:2px 0 0;padding:0;accent-color:var(--orange)}.modal-card .booking-agreements label span{font-size:12px;font-weight:400}.gaming-page .booking-agreements{background:#0f1712;border-color:#355643}.modal-card{max-height:90vh;overflow-y:auto}
