/* Vishnu — mobile refine 2026-09-10 (<=700px only; PC untouched) */
.vm-only{display:none}
@media(max-width:700px){
  .vm-only{display:block}
  /* HERO: drop the tilted plaque stack + orbit, replace with quiet index */
  .vc-brand-art{display:none}
  .vc-hero-grid{padding:30px 0 8px}
  .vn-page.vn-refined .vc-hero h1{font-size:clamp(30px,8.2vw,40px);line-height:1.6;margin-bottom:16px}
  .vc-lead{font-size:13px;line-height:2;color:#cfc8b6}
  .vc-link{margin-top:16px;min-width:0;width:100%;gap:20px}
  .vm-hero-index{margin:30px 0 6px;border-top:1px solid #393c34}
  .vm-hero-index a{display:grid;grid-template-columns:34px 1fr auto;align-items:baseline;gap:12px;padding:16px 0 14px;border-bottom:1px solid #393c34;color:#ede5d3;text-decoration:none}
  .vm-hero-index small{font:9px/1 'Jost',sans-serif;letter-spacing:.2em;color:#a89f88}
  .vm-hero-index strong{font:500 20px/1.4 var(--vc-serif,'Noto Serif JP',serif);letter-spacing:.06em}
  .vm-hero-index strong em{font:500 18px 'Jost',sans-serif;font-style:normal;color:#c9b288;margin-left:6px;letter-spacing:.04em}
  .vm-hero-index span{font:11px/1.6 'Noto Sans JP',sans-serif;color:#b8b7a9;letter-spacing:.02em}
  .vm-hero-mark{display:flex;justify-content:center;padding:26px 0 4px}
  .vm-hero-mark img{width:84px;height:84px;opacity:.9}
  .vc-hero-bottom{padding:16px 0 22px}
  .vc-hero-bottom a{gap:14px}
  /* SERVICE CARDS: calmer marks, one action, fewer arrows */
  .vn-refined .vn-directory{padding-top:8px}
  .vn-refined .vn-directory-label{padding:14px 0 12px}
  .vn-card-top>span:last-child{display:none}
  .vn-service{padding:22px 22px 20px}
  .vn-service-ai{padding:22px 22px 20px;position:relative;overflow:hidden}
  .vn-ai-mark{padding:18px 0 10px}
  .vn-ai-mark>span{font-size:12px;letter-spacing:.3em;color:#cbb994}
  .vn-ai-mark>strong{font-size:58px;letter-spacing:-.03em;line-height:1.05}
  .vn-signal{display:none}
  .vm-ai-logo{position:absolute;right:-6px;top:10px;width:132px;height:132px;opacity:.55;pointer-events:none}
  .vn-card-action{padding-top:14px;margin-top:16px}
  .vn-card-action>span{font-size:18px;color:#c9b288}
  .vn-service-school{display:grid;grid-template-columns:minmax(0,1fr) 80px;grid-template-areas:"top top" "mark img" "bottom img";column-gap:14px;align-items:end}
  .vn-service-school .vn-card-top{grid-area:top}
  .vn-service-school .vn-school-mark{grid-area:mark;padding:14px 0 8px;gap:12px}
  .vn-service-school .vn-card-bottom{grid-area:bottom}
  .vm-mascot{grid-area:img;align-self:end;justify-self:end;width:80px;height:auto;margin-bottom:-20px;margin-right:-4px}
  .vn-school-symbol{width:38px;height:38px;font-size:20px}
  .vn-school-mark strong{font-size:22px;white-space:nowrap}
  .vn-service-school .vn-card-bottom h3{font-size:12.5px;letter-spacing:.01em}
  .vn-film-mark{padding:14px 0 8px}
  .vn-film-mark strong{font-size:27px;letter-spacing:.14em}
  .vn-card-bottom h3{font-size:13px}
  .vn-card-bottom p{font-size:12px}
  .vn-space-link{gap:16px;padding:20px 0;flex-wrap:wrap}
  .vn-space-link>span:last-child{display:none}
  .vn-space-link h3{font-size:22px}
  /* GALLERY DOOR: smaller, less theatrical */
  .vc-gallery-door{padding:44px 0 40px;gap:24px}
  .vc-gallery-door h2{font-size:28px;line-height:1.6;margin:14px 0}
  .vc-door-art{height:220px}
  .vc-door-inside{width:160px;height:196px;border-radius:90px 90px 0 0}
  .vc-door-inside:before{inset:8px;border-radius:82px 82px 0 0}
  .vc-door-inside strong{font-size:34px}
  .vc-door-inside small{font-size:7px;margin-top:12px}
  .vc-door-arrow{width:36px;height:36px;font-size:18px;margin-top:12px}
  .vn-refined .vn-home-bottom{padding-top:24px;padding-bottom:60px}
  .vn-refined .vn-home-bottom h2{font-size:22px}
  /* SERVICES PAGE panels */
  .vn-service-row>*{min-width:0}
  .vn-brand-panel{position:relative;overflow:hidden;box-sizing:border-box;width:100%;max-width:100%;min-height:0;aspect-ratio:16/10;padding:22px}
  .vn-brand-panel .vn-wordmark{min-width:0}
  .vn-brand-panel>span[aria-hidden]{display:none}
  .vn-brand-panel .vn-ai-mark strong{font-size:66px;line-height:1.05}
  .vn-brand-panel.dark .vm-ai-logo{right:6px;top:auto;bottom:6px;width:150px;height:150px;opacity:.6}
  .vn-brand-panel.space{position:relative}
  .vn-brand-panel.space .vm-shisha-mark{position:absolute;right:10px;bottom:2px;width:120px;height:120px;opacity:.75;pointer-events:none}
  .vn-brand-panel.space .vn-wordmark{position:relative;z-index:1}
  .vn-brand-panel.school{display:flex;align-items:flex-start;justify-content:flex-start}
  .vn-brand-panel.school .vn-school-mark{padding:6px 0 0}
  .vn-brand-panel.school .vm-mascots{display:flex;align-items:flex-end;position:absolute;right:-4px;bottom:-3px;margin:0}
  .vn-brand-panel.school .vm-mascots img{height:118px;width:auto}
  .vn-brand-panel.school .vm-mascots img+img{margin-left:-26px}
  .vn-brand-panel.film{background:#171917 center/cover no-repeat;color:#f1ebdc}
  .vn-brand-panel.film .vm-film-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;pointer-events:none}
  .vn-brand-panel.film .vn-wordmark{position:relative;z-index:1}
  .vn-brand-panel.film .vn-frame,.vn-brand-panel.film .vn-frame:before,.vn-brand-panel.film .vn-frame:after{border-color:#f1ebdc}
  .vn-brand-panel.film strong{color:#f1ebdc;text-shadow:0 1px 12px #0009}
  .vn-service-detail h2{font-size:24px}
}
@media(max-width:360px){
  .vm-hero-index strong{font-size:18px}
  .vn-ai-mark>strong{font-size:50px}
  .vn-service-school{grid-template-columns:1fr 78px}
  .vm-mascot{width:78px}
  .vn-brand-panel.school .vm-mascots img{height:104px}
}
