.page-template-page-namako-room .site-body { padding-top: 0; }
.namakos-room { --room-ink:#1b3657; --room-green:#4d8061; --room-orange:#d9672f; --room-cream:#faf6eb; max-width:1180px; margin:0 auto; padding:clamp(24px,5vw,64px) 16px 100px; color:var(--room-ink); }
.namakos-room__hero { overflow:hidden; border:1px solid #e6dbc5; border-radius:30px; background:#fff; box-shadow:0 22px 55px rgba(38,56,42,.13); }
.namakos-room__scene { position:relative; overflow:hidden; aspect-ratio:16/9; background:#eee4bd; }
.namakos-room__hero-image { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }
.namakos-room__hotspot { position:absolute; z-index:3; display:block; border:2px solid transparent; border-radius:18px; color:#fff; background:transparent; text-decoration:none; }
.namakos-room__hotspot span { position:absolute; left:50%; bottom:8px; max-width:calc(100% - 12px); padding:5px 9px; border-radius:999px; color:#fff; background:rgba(16,45,72,.88); box-shadow:0 3px 10px rgba(0,0,0,.22); font-size:clamp(.62rem,1.25vw,.82rem); font-weight:700; line-height:1.25; text-align:center; white-space:nowrap; opacity:0; transform:translate(-50%,5px); transition:opacity .16s ease,transform .16s ease; }
.namakos-room__hotspot:hover,.namakos-room__hotspot:focus-visible,.namakos-room__hotspot.is-tap-selected { border-color:#fff; background:rgba(255,255,255,.12); box-shadow:0 0 0 3px rgba(7,95,204,.82); color:#fff; text-decoration:none; outline:0; }
.namakos-room__hotspot:hover span,.namakos-room__hotspot:focus-visible span,.namakos-room__hotspot.is-tap-selected span { opacity:1; transform:translate(-50%,0); }
.namakos-room__hotspot--music { left:2.5%; top:72%; width:20%; height:25%; }
.namakos-room__hotspot--material { left:12%; top:14%; width:31%; height:61%; }
.namakos-room__hotspot--game { left:46.5%; top:22%; width:29%; height:42%; }
.namakos-room__hotspot--notice { left:78%; top:75%; width:12%; height:22%; }
.namakos-room__break { position:absolute; z-index:5; inset:0; display:grid; place-items:center; padding:3%; pointer-events:none; }
.namakos-room__break[hidden] { display:none; }
.namakos-room__break-sign { display:block; width:auto; max-width:42%; height:94%; object-fit:contain; border-radius:4px; filter:drop-shadow(0 14px 18px rgba(34,24,14,.32)); }
.namakos-room__cleaning-robot { position:absolute; z-index:4; left:0; top:0; width:clamp(115px,18vw,215px); height:auto; pointer-events:none; filter:drop-shadow(0 8px 6px rgba(45,35,20,.24)); transform:translate3d(var(--robot-x,20px),var(--robot-y,20px),0) scaleX(var(--robot-direction,1)); transform-origin:50% 88%; will-change:transform; }
.namakos-room__cleaning-robot[hidden] { display:none; }
.namakos-room__walker { position:absolute; z-index:4; left:0; top:0; width:clamp(145px,22.5vw,270px); height:auto; pointer-events:none; filter:drop-shadow(0 8px 5px rgba(55,40,18,.2)); transform:translate3d(var(--namako-x,20px),calc(var(--namako-y,20px) + var(--namako-step-y,0px)),0) scale(var(--namako-state-scale,1)) scaleX(var(--namako-direction,1)); transform-origin:50% 88%; will-change:transform; }
.namakos-room__walker[data-namako-state="sleeping"],.namakos-room__walker[data-namako-state="waking"] { --namako-state-scale:.85; }
.namakos-room__walker[data-namako-state="gaming"],.namakos-room__walker[data-namako-state="painting"] { --namako-state-scale:.9; }
.namakos-room__walker[data-namako-state="sleeping"] { pointer-events:auto; cursor:pointer; }
.namakos-room__walker[data-namako-state="sleeping"]:focus-visible { border-radius:18px; outline:4px solid #075fcc; outline-offset:4px; }
.namakos-room__hero-copy { padding:clamp(26px,5vw,54px); background:linear-gradient(135deg,#fffdf8,#f5edda); }
.namakos-room__eyebrow { margin:0 0 12px; color:var(--room-green); font-size:.78rem; font-weight:800; letter-spacing:.22em; }
.namakos-room__hero h1 { margin:0; color:var(--room-ink); font-size:clamp(2.5rem,9vw,6rem); letter-spacing:.04em; line-height:1.05; }
.namakos-room__lead { max-width:620px; margin:20px 0 0; color:#4b5e64; font-size:clamp(1rem,2.3vw,1.3rem); line-height:1.9; }
.namakos-room__introduction { max-width:820px; margin:clamp(28px,6vw,60px) auto; padding:clamp(22px,4vw,40px); border-left:4px solid var(--room-orange); background:#fff; box-shadow:0 10px 30px rgba(27,54,87,.06); font-size:1.05rem; line-height:2; }
.namakos-room__introduction > :last-child { margin-bottom:0; }
.namakos-room__contents { margin-top:clamp(48px,8vw,88px); }
.namakos-room__section-heading { margin-bottom:24px; }
.namakos-room__section-heading p { margin:0 0 5px; color:var(--room-orange); font-size:.75rem; font-weight:800; letter-spacing:.22em; }
.namakos-room__section-heading h2 { margin:0; color:var(--room-ink); font-size:clamp(1.7rem,4vw,2.7rem); }
.namakos-room__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.namakos-room-card { position:relative; display:flex; min-height:230px; overflow:hidden; padding:30px; flex-direction:column; justify-content:flex-end; border:1px solid rgba(27,54,87,.13); border-radius:22px; color:var(--room-ink); background:#fff; box-shadow:0 12px 35px rgba(27,54,87,.08); text-decoration:none; transition:transform .18s ease,box-shadow .18s ease; }
.namakos-room-card:hover { color:var(--room-ink); box-shadow:0 18px 42px rgba(27,54,87,.15); text-decoration:none; transform:translateY(-4px); }
.namakos-room-card:focus-visible { outline:3px solid #075fcc; outline-offset:3px; }
.namakos-room-card__number { position:absolute; top:22px; left:24px; color:rgba(27,54,87,.45); font-size:.72rem; font-weight:800; letter-spacing:.14em; }
.namakos-room-card__icon { position:absolute; top:18px; right:24px; color:var(--room-orange); font-size:2.2rem; line-height:1; }
.namakos-room-card strong { display:block; margin-bottom:8px; font-size:clamp(1.35rem,3vw,2rem); }
.namakos-room-card > span:last-child { color:#5d6868; line-height:1.7; }
.namakos-room-card--music { background:linear-gradient(145deg,#fff,#fff5df); }
.namakos-room-card--game { background:linear-gradient(145deg,#fff,#eaf4ed); }
.namakos-room-card--material { background:linear-gradient(145deg,#fff,#edf3fa); }
.namakos-room-card--soon { border-style:dashed; background:#f7f5ef; }
.namakos-room-card--soon .namakos-room-card__icon,.namakos-room-card--soon strong { color:#777b73; }
@media (max-width:700px) {
 .namakos-room { padding-inline:12px; }
 .namakos-room__hero { border-radius:22px; }
 .namakos-room__scene { aspect-ratio:16/9; }
 .namakos-room__hero-image { aspect-ratio:16/9; object-fit:cover; }
 .namakos-room__break-sign { max-width:46%; height:92%; }
 .namakos-room__walker { width:clamp(88px,24vw,120px); }
 .namakos-room__grid { grid-template-columns:1fr; }
 .namakos-room-card { min-height:190px; padding:26px; }
}
@media (prefers-reduced-motion:reduce) { .namakos-room-card,.namakos-room__hotspot span { transition:none; } .namakos-room__walker { will-change:auto; } }
