/* ALTERRA VR — CLEAN RESPONSIVE BLOCK 04 V1
   Desktop baseline untouched. <=1100px only.
   Static/interactivity pass only. Motion comes later. */

.m4-quests{display:none}

@media (max-width:1100px){
  .q4{display:none !important}

  .m4-quests{
    display:block;
    position:relative;
    overflow:hidden;
    color:#f7fbff;
    background:
      radial-gradient(circle at 82% 16%,rgba(42,200,237,.10),transparent 30%),
      linear-gradient(180deg,#061521 0%,#04111c 52%,#020d16 100%);
    border-bottom:1px solid rgba(65,225,249,.14);
  }

  .m4-inner{
    width:min(calc(100% - 40px),940px);
    margin:0 auto;
    padding:52px 0 62px;
    box-sizing:border-box;
  }

  .m4-kicker{
    margin:0 0 12px;
    color:#62edff;
    font-size:clamp(10px,2vw,13px);
    line-height:1.2;
    letter-spacing:.17em;
    font-weight:950;
    text-transform:uppercase;
  }

  .m4-title{
    margin:0;
    max-width:860px;
    color:#f7f9fc;
    font-size:clamp(46px,7.4vw,74px);
    line-height:.94;
    letter-spacing:-.047em;
    font-weight:1000;
    text-transform:uppercase;
  }

  .m4-title span{
    display:block;
    color:#2bdff2;
  }

  .m4-selector{
    display:flex;
    gap:10px;
    margin-top:28px;
    padding-bottom:7px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .m4-selector::-webkit-scrollbar{display:none}

  .m4-tab{
    flex:0 0 174px;
    scroll-snap-align:start;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:9px;
    align-items:center;
    min-height:60px;
    padding:9px 11px;
    box-sizing:border-box;
    border:1px solid rgba(73,221,246,.26);
    border-radius:12px;
    background:rgba(6,24,38,.78);
    color:#dceaf3;
    text-align:left;
    cursor:pointer;
  }

  .m4-tab-num{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border:1px solid rgba(89,234,255,.55);
    border-radius:50%;
    color:#64edff;
    font-size:9px;
    font-weight:950;
    letter-spacing:.04em;
  }

  .m4-tab-title{
    min-width:0;
    font-size:11px;
    line-height:1.08;
    font-weight:850;
  }

  .m4-tab.is-active{
    border-color:#55e7f7;
    background:linear-gradient(180deg,rgba(20,79,101,.92),rgba(7,43,61,.94));
    box-shadow:inset 0 0 0 1px rgba(90,236,255,.08),0 0 24px rgba(48,215,239,.09);
    color:#fff;
  }

  .m4-card{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);
    margin-top:20px;
    overflow:hidden;
    border:1px solid rgba(68,224,248,.36);
    border-radius:22px;
    background:#051827;
    box-shadow:0 24px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.03);
  }

  .m4-media{
    position:relative;
    min-height:440px;
    overflow:hidden;
    background:#071421;
  }

  .m4-media img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    filter:saturate(1.08) contrast(1.05);
  }

  .m4-media::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      linear-gradient(180deg,rgba(2,11,18,.02),rgba(2,11,18,.10) 58%,rgba(2,11,18,.62) 100%),
      linear-gradient(90deg,transparent 65%,rgba(5,24,39,.42) 100%);
  }

  .m4-counter{
    position:absolute;
    z-index:2;
    top:16px;
    right:16px;
    padding:8px 10px;
    border:1px solid rgba(90,236,255,.36);
    border-radius:8px;
    background:rgba(3,20,32,.76);
    color:#ccebf3;
    font-size:10px;
    font-weight:850;
    letter-spacing:.07em;
    backdrop-filter:blur(8px);
  }
  .m4-counter b{color:#61ecff}

  .m4-body{
    display:flex;
    flex-direction:column;
    padding:28px 26px 26px;
    box-sizing:border-box;
  }

  .m4-genre{
    margin:0;
    color:#61ebfb;
    font-size:11px;
    line-height:1.2;
    letter-spacing:.10em;
    font-weight:900;
    text-transform:uppercase;
  }

  .m4-quest-title{
    margin:9px 0 0;
    color:#f7fbff;
    font-size:clamp(28px,3.2vw,39px);
    line-height:1.02;
    letter-spacing:-.03em;
  }

  .m4-description{
    margin:16px 0 0;
    color:#c8d8e4;
    font-size:13.5px;
    line-height:1.55;
  }

  .m4-meta{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:22px;
  }

  .m4-meta div{
    min-width:0;
    padding:11px 10px;
    border:1px solid rgba(72,215,239,.22);
    border-radius:10px;
    background:rgba(2,16,27,.46);
  }

  .m4-meta span{
    display:block;
    color:#7190a2;
    font-size:8px;
    line-height:1.2;
    letter-spacing:.11em;
    text-transform:uppercase;
  }

  .m4-meta strong{
    display:block;
    margin-top:4px;
    color:#eef8fc;
    font-size:12px;
    line-height:1.2;
  }

  .m4-actions{
    display:grid;
    gap:10px;
    margin-top:auto;
    padding-top:24px;
  }

  .m4-primary,
  .m4-secondary{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    min-height:54px;
    box-sizing:border-box;
    border-radius:10px;
    font-size:13px;
    font-weight:950;
    text-decoration:none;
  }

  .m4-primary{
    border:1px solid #5be9f8;
    background:linear-gradient(180deg,#69effb,#34d5e8);
    color:#00131e;
  }

  .m4-secondary{
    border:1px solid rgba(77,224,246,.58);
    background:transparent;
    color:#f3fbff;
  }

  .m4-index{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:30px;
    color:#69eafa;
    font-size:9px;
    line-height:1.2;
    letter-spacing:.16em;
    font-weight:850;
    text-transform:uppercase;
  }
  .m4-index::after{
    content:"";
    height:1px;
    flex:1;
    background:linear-gradient(90deg,#32d8ef,transparent);
  }
}

@media (max-width:767px){
  .m4-inner{
    width:calc(100% - 36px);
    padding:42px 0 50px;
  }

  .m4-title{
    font-size:clamp(39px,10.5vw,52px);
    line-height:.96;
    letter-spacing:-.042em;
  }

  .m4-selector{
    margin-top:22px;
    gap:8px;
  }

  .m4-tab{
    flex-basis:148px;
    min-height:56px;
    grid-template-columns:30px minmax(0,1fr);
    padding:8px 9px;
  }

  .m4-tab-num{
    width:27px;
    height:27px;
    font-size:8px;
  }

  .m4-tab-title{font-size:10px}

  .m4-card{
    display:block;
    margin-top:15px;
    border-radius:16px;
  }

  .m4-media{min-height:0;height:280px}
  .m4-media::after{
    background:linear-gradient(180deg,rgba(2,11,18,.01) 0%,rgba(2,11,18,.06) 62%,rgba(5,24,39,.76) 100%);
  }

  .m4-counter{
    top:12px;
    right:12px;
    padding:7px 9px;
  }

  .m4-body{padding:19px 17px 18px}

  .m4-quest-title{
    font-size:26px;
    line-height:1.04;
  }

  .m4-description{
    margin-top:12px;
    font-size:12.5px;
    line-height:1.52;
  }

  .m4-meta{
    margin-top:17px;
    gap:6px;
  }

  .m4-meta div{padding:9px 7px}
  .m4-meta strong{font-size:11px}

  .m4-actions{
    margin-top:18px;
    padding-top:0;
  }

  .m4-primary,
  .m4-secondary{
    min-height:52px;
    font-size:12px;
  }

  .m4-index{margin-top:24px}
}

@media (max-width:430px){
  .m4-inner{
    width:calc(100% - 32px);
    padding-top:36px;
  }

  .m4-kicker{
    margin-bottom:9px;
    font-size:9px;
  }

  .m4-title{
    font-size:clamp(36px,9.7vw,41px);
    line-height:.98;
    letter-spacing:-.036em;
  }

  .m4-tab{flex-basis:142px}
  .m4-media{height:255px}
  .m4-body{padding:17px 14px 16px}
  .m4-genre{font-size:9px}
  .m4-quest-title{font-size:23px}
  .m4-description{font-size:12px}
  .m4-meta span{font-size:7px}
  .m4-meta strong{font-size:10.5px}
}
