/* =========================================
   ADDVIBES — MOBILE FRAMES SECTION
   Full: 22–23 / Fade: 24 / Hidden: 25
   Small headline + description above frame
   Button below frame and above mobile bar
========================================= */

.addvibes-mobile-frames-section{
  display:none;
}

@media (max-width:900px), (orientation:portrait){

  .addvibes-mobile-frames-section{
    --frames-opacity:0;

    position:absolute;
    inset:0;
    z-index:18;

    display:block;

    opacity:var(--frames-opacity);
    visibility:hidden;
    pointer-events:none;

    transition:
      opacity .09s linear,
      visibility .09s linear;

    direction:ltr;
  }

  .addvibes-mobile-frames-section.is-active{
    visibility:visible;
  }

  .addvibes-mobile-frames-section.is-interactive{
    pointer-events:auto;
  }

  .addvibes-mobile-frames-section__inner{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    pointer-events:none;
  }

  /* Headline + description in the empty wall space above the frame */
  .addvibes-mobile-frames-section__copy{
    position:absolute;
    left:51%;
    top:max(5.5svh,38px);

    width:min(70vw,300px);

    transform:translateX(-50%);

    text-align:center;
    pointer-events:none;
  }

  .addvibes-mobile-frames-section__title{
    display:flex;
    align-items:baseline;
    justify-content:center;
    gap:6px;

    margin:0;

    font-family:"Fraunces",Georgia,serif;
    font-size:clamp(24px,7.2vw,34px);
    font-weight:700;
    line-height:.92;

    letter-spacing:-.035em;

    filter:
      drop-shadow(0 3px 5px rgba(0,0,0,.90))
      drop-shadow(0 8px 16px rgba(0,0,0,.48));
  }

  .addvibes-mobile-frames-section__title-rgb{
    color:transparent;

    background:
      linear-gradient(
        90deg,
        #2FA8D9 0%,
        #8D63E8 34%,
        #D63E9C 68%,
        #E0A93B 100%
      );

    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
  }

  .addvibes-mobile-frames-section__title-main{
    color:#F0DFC2;
  }

  .addvibes-mobile-frames-section__text{
    width:min(68vw,285px);
    max-width:285px;

    margin:9px auto 0;

    color:rgba(242,231,216,.92);

    font-family:Arial,Helvetica,sans-serif;
    font-size:9.5px;
    font-weight:500;
    line-height:1.5;
    text-align:center;

    text-shadow:
      0 2px 5px rgba(0,0,0,1),
      0 4px 12px rgba(0,0,0,.86);
  }

  /* Button directly below the frame and safely above the mobile bar */
  .addvibes-mobile-frames-section__button{
    position:absolute;
    left:53.5%;
    top:80%;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    width:min(40vw,155px);
    min-height:38px;

    padding:0 13px;

    transform:translateX(-50%);

    border:1px solid rgba(242,231,216,.44);
    border-radius:999px;

    background:
      linear-gradient(
        135deg,
        rgba(12,26,48,.92),
        rgba(22,41,74,.86)
      );

    color:#F2E7D8;
    text-decoration:none;
    white-space:nowrap;

    font-family:Arial,Helvetica,sans-serif;
    font-size:8px;
    font-weight:800;
    line-height:1;

    letter-spacing:.13em;

    box-shadow:
      0 9px 22px rgba(0,0,0,.50),
      inset 0 1px 0 rgba(255,255,255,.14),
      0 0 14px rgba(47,168,217,.10);

    pointer-events:auto;
    touch-action:manipulation;
  }

  .addvibes-mobile-frames-section__button:active{
    transform:
      translateX(-50%)
      scale(.98);
  }
}

@media (max-height:700px) and (max-width:900px){

  .addvibes-mobile-frames-section__copy{
    top:max(4svh,28px);
    width:min(72vw,290px);
  }

  .addvibes-mobile-frames-section__title{
    font-size:23px;
  }

  .addvibes-mobile-frames-section__text{
    width:min(70vw,275px);
    margin-top:7px;
    font-size:9px;
  }

  .addvibes-mobile-frames-section__button{
    top:78%;
    width:min(38vw,150px);
    min-height:36px;
    font-size:7.5px;
  }
}

@media (min-width:901px) and (orientation:landscape){
  .addvibes-mobile-frames-section{
    display:none !important;
  }
}
