/* =========================================================
   J.E.T. shared full-screen menu
   ========================================================= */
.jet-menu-shell,.jet-menu-shell *{box-sizing:border-box}
.jet-menu-shell{position:fixed;inset:0;z-index:9998;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.jet-menu-shell.is-open{visibility:visible;opacity:1;pointer-events:auto}
.jet-menu-backdrop{position:absolute;inset:0;background:rgba(23,23,31,.5);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.jet-menu-panel{position:absolute;top:0;bottom:0;left:50%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,430px);max-width:100%;overflow:hidden;background:radial-gradient(circle at 90% 10%,rgba(255,0,233,.08),transparent 25%),linear-gradient(180deg,#f9f5e9 0%,#f6f3e8 100%);color:#17171f;transform:translate(-50%,-14px);transition:transform .28s cubic-bezier(.22,.75,.25,1);box-shadow:0 0 50px rgba(23,23,31,.25)}
.jet-menu-shell.is-open .jet-menu-panel{transform:translate(-50%,0)}
.jet-menu-header{display:flex;min-height:74px;padding:12px 14px;align-items:center;justify-content:space-between;gap:12px;border-bottom:1.5px solid #191922;background:rgba(246,243,232,.97)}
.jet-menu-brand{display:flex;min-width:0;align-items:center;gap:9px;color:inherit;text-decoration:none}
.jet-menu-brand-mark{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:50%;background:#ff00e9;color:#fff;font-size:.72rem;font-weight:900}
.jet-menu-brand-copy strong,.jet-menu-brand-copy small{display:block}
.jet-menu-brand-copy strong{font-size:.82rem;font-weight:900}
.jet-menu-brand-copy small{margin-top:3px;font-size:.62rem;font-weight:700}
.jet-menu-close{position:relative;flex:0 0 44px;width:44px;height:44px;border:1.5px solid #191922;border-radius:50%;background:#fffefa;cursor:pointer}
.jet-menu-close span{position:absolute;top:50%;left:50%;width:19px;height:1.5px;background:#17171f}
.jet-menu-close span:first-child{transform:translate(-50%,-50%) rotate(45deg)}
.jet-menu-close span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
.jet-menu-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:14px 14px 0;scrollbar-width:thin}
.jet-menu-diagnosis{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:78px;padding:13px 14px;border:1.5px solid #191922;border-radius:16px;background:#d8ee56;color:#17171f;text-decoration:none;box-shadow:4px 4px 0 #17171f;overflow:hidden}
.jet-menu-new{position:absolute;top:6px;right:8px;padding:2px 6px;border:1px solid #191922;border-radius:20px;background:#ff00e9;color:#fff;font-size:.53rem;font-weight:900;letter-spacing:.05em;transform:rotate(4deg)}
.jet-menu-diagnosis-icon,.jet-menu-card-icon{display:grid;place-items:center}
.jet-menu-diagnosis-icon{width:46px;height:46px;border:1.5px solid #191922;border-radius:50%;background:#fffefa}
.jet-menu-diagnosis-icon svg,.jet-menu-card-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.jet-menu-diagnosis-copy strong,.jet-menu-diagnosis-copy small{display:block}
.jet-menu-diagnosis-copy strong{font-size:1rem;font-weight:900}
.jet-menu-diagnosis-copy small{margin-top:3px;font-size:.67rem;font-weight:700}
.jet-menu-arrow{font-size:1.35rem;font-weight:900}
.jet-menu-section{margin-top:25px}
.jet-menu-section-head{display:flex;margin-bottom:10px;align-items:end;justify-content:space-between;gap:10px}
.jet-menu-section-head p,.jet-menu-section-head small{margin:0}
.jet-menu-section-head p{font-size:.76rem;font-weight:900;letter-spacing:.04em}
.jet-menu-section-head small{color:#68665f;font-size:.6rem;font-weight:700}
.jet-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.jet-menu-card{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center;min-height:82px;padding:10px;border:1.5px solid #191922;border-radius:12px;background:#fffefa;color:#17171f;text-decoration:none;box-shadow:2px 2px 0 #17171f;transition:transform .16s ease,background .16s ease}
.jet-menu-card:nth-child(4n+2),.jet-menu-card:nth-child(4n+3){background:#eefafa}
.jet-menu-card:nth-child(4n+4){background:#fceff2}
.jet-menu-card:active{transform:translate(2px,2px);box-shadow:none}
.jet-menu-card.is-current{background:#d8ee56}
.jet-menu-card.is-current::after{content:"NOW";position:absolute;top:5px;right:6px;padding:1px 4px;border-radius:10px;background:#17171f;color:#fff;font-size:.45rem;font-weight:900;letter-spacing:.05em}
.jet-menu-card-icon{width:42px;height:42px;border:1.5px solid #191922;border-radius:50%;background:#fff}
.jet-menu-card-icon svg{width:25px;height:25px}
.jet-menu-card-copy strong,.jet-menu-card-copy small{display:block}
.jet-menu-card-copy strong{font-size:.83rem;font-weight:900;line-height:1.25}
.jet-menu-card-copy small{margin-top:4px;color:#68665f;font-size:.58rem;font-weight:700;line-height:1.3}
.jet-menu-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.jet-menu-image-card{position:relative;display:block;min-height:190px;overflow:hidden;border:1.5px solid #191922;border-radius:14px;background:#ddd;color:#fff;text-decoration:none;box-shadow:3px 3px 0 #17171f}
.jet-menu-image-card::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(12,13,20,.78))}
.jet-menu-image-card img{display:block;width:100%;height:190px;object-fit:cover}
.jet-menu-image-card:first-child img{object-position:center 30%}
.jet-menu-image-card:last-child img{object-position:center 32%}
.jet-menu-image-card-copy{position:absolute;z-index:2;right:10px;bottom:9px;left:10px;line-height:1.25}
.jet-menu-image-card-copy small,.jet-menu-image-card-copy strong,.jet-menu-image-card-copy span{display:block}
.jet-menu-image-card-copy small{font-size:.55rem;font-weight:800}
.jet-menu-image-card-copy strong{font-size:.85rem;font-weight:900}
.jet-menu-image-card-copy span{margin-top:4px;font-size:.58rem;font-weight:700}
.jet-menu-area-links{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.jet-menu-area-links a{display:grid;min-height:46px;place-items:center;border:1px solid #191922;border-radius:9px;background:#fffefa;color:#17171f;font-size:.7rem;font-weight:900;text-decoration:none}
.jet-menu-tags{display:flex;flex-wrap:wrap;gap:7px}
.jet-menu-tags a{display:inline-flex;min-height:34px;padding:6px 11px;align-items:center;border:1px solid #191922;border-radius:99px;background:#f6df67;color:#17171f;font-size:.66rem;font-weight:900;text-decoration:none}
.jet-menu-note{margin-top:25px;padding:15px;border:1.5px solid #191922;border-radius:12px;background:#fffefa;text-align:center}
.jet-menu-note strong{display:block;font-size:.78rem}
.jet-menu-note p{margin:5px 0 0;color:#68665f;font-size:.65rem;font-weight:700;line-height:1.5}
.jet-menu-bottom-space{height:28px}
.jet-menu-sticky{position:relative;z-index:4;padding:8px 12px calc(10px + env(safe-area-inset-bottom));border-top:1.5px solid #191922;background:rgba(246,243,232,.97);box-shadow:0 -8px 24px rgba(23,23,31,.08)}
.jet-menu-sticky>span{display:block;margin-bottom:5px;color:#68665f;font-size:.57rem;font-weight:800;text-align:center}
.jet-menu-sticky a{display:flex;min-height:50px;padding:8px 18px;align-items:center;justify-content:center;gap:9px;border:1.5px solid #191922;border-radius:99px;background:#ff00e9;color:#fff;font-size:.82rem;font-weight:900;text-decoration:none;box-shadow:2px 2px 0 #17171f}
html.jet-menu-lock,body.jet-menu-lock{overflow:hidden;overscroll-behavior:none}
.menu-btn.jet-menu-open{display:inline-grid;min-width:74px;min-height:44px;padding:7px 14px;place-items:center;border:1.5px solid #191922;border-radius:99px;background:#fffefa;color:#17171f;font-size:.78rem;font-weight:900;cursor:pointer}
.jet-menu-shell a:focus-visible,.jet-menu-shell button:focus-visible,.menu-btn.jet-menu-open:focus-visible{outline:3px solid #ff00e9;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.jet-menu-shell,.jet-menu-panel,.jet-menu-card{transition:none}}
@media(max-width:360px){.jet-menu-scroll{padding-inline:10px}.jet-menu-card{grid-template-columns:36px minmax(0,1fr);min-height:76px;padding:8px}.jet-menu-card-icon{width:36px;height:36px}.jet-menu-card-icon svg{width:22px;height:22px}.jet-menu-card-copy strong{font-size:.76rem}.jet-menu-card-copy small{font-size:.53rem}}
