:root{
  --ic-blue:#0B4DDB;
  --ic-white:#FFFFFF;
  --ic-yellow:#FFD21F;
  --ic-navy:#020d27;
}

html{scroll-behavior:smooth}
body{margin:0}

/* LANGUAGE */
.lang-switcher{display:flex;align-items:center;margin:0}
.premium-language{
  position:relative;
}

.lang-button{
  width:82px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;

  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#fff;

  font:600 .68rem "Montserrat",sans-serif;
  cursor:pointer;

  transition:
    background .2s,
    border-color .2s,
    box-shadow .2s;
}

.lang-button span{
  transition:transform .2s;
}
.premium-nav{
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  border: none !important;
  filter: none !important;
  width: min(1416px,calc(100% - 80px));
  height: 74px;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 36px;
  background: transparent;
}

.lang-button:hover,
.lang-button:focus-visible,
.lang-button.is-open{
  background:rgba(11,77,219,.25);
  border-color:rgba(69,126,255,.7);

  box-shadow:
    inset 0 0 0 1px rgba(11,77,219,.35),
    0 0 18px rgba(11,77,219,.4);
}

.lang-button.is-open span{
  transform:rotate(180deg);
}

.lang-menu{
  position:absolute;
  z-index:100;
  top:48px;
  right:0;

  box-sizing:border-box;
  width:190px;
  display:flex;
  flex-direction:column;

  overflow:hidden;

  background:rgba(2,13,39,.97);
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;

  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);

  box-shadow:0 20px 60px rgba(0,0,0,.4);

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  transform:translateY(-8px);

  transition:
    opacity .22s,
    visibility .22s,
    transform .22s;
}

.lang-menu.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}

.lang-menu a{
  padding:13px 16px;

  color:#fff;
  text-decoration:none;
  font:.82rem "Montserrat",sans-serif;

  border-bottom:1px solid rgba(255,255,255,.08);

  transition:
    background .2s,
    color .2s,
    box-shadow .2s;
}

.lang-menu a:last-child{
  border-bottom:0;
}

.lang-menu a:hover,
.lang-menu a:focus-visible{
  background:rgba(11,77,219,.22);

  box-shadow:
    inset 0 0 0 1px rgba(11,77,219,.45),
    0 0 18px rgba(11,77,219,.35);
}

.lang-menu a:active{
  background:rgba(11,77,219,.35);

  box-shadow:
    inset 0 0 0 1px rgba(11,77,219,.6),
    0 0 24px rgba(11,77,219,.55);
}
.premium-leveltest-button{
    transition:
        transform .25s cubic-bezier(.22,.61,.36,1),
        background .25s ease,
        border-color .25s ease,
        color .25s ease,
        box-shadow .25s ease;
        font-size:.93rem;
}
}

.premium-leveltest-button i{
  width:15px;
  height:15px;

  stroke-width:1.8;
}

.premium-leveltest-button:hover,
.premium-leveltest-button:focus-visible{

    color:#fff;
    background:#0B4DDB;
    border-color:#0B4DDB;

    transform:translateY(-2px) scale(1.03);

    box-shadow:
        0 10px 28px rgba(11,77,219,.25),
        0 0 22px rgba(11,77,219,.14);
}

.premium-leveltest-button:active{

    transform:translateY(0) scale(.98);

    box-shadow:
        0 5px 15px rgba(11,77,219,.18);
}
.premium-nav-cta,
.premium-primary-button{
  position: relative;
  overflow: hidden;
  transition: transform .25s cubic-bezier(.22,.61,.36,1),
    box-shadow .25s ease,
    filter .25s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: #fff;
  text-decoration: none;
  font-family: "Montserrat",sans-serif;
  font-weight: 800;
  background: linear-gradient(135deg,#0B4DDB,#0641C8);
  border-radius: 13px;
  box-shadow: 0 14px 34px rgba(11,77,219,.34);
}

.premium-nav-cta::before,
.premium-primary-button::before{
  content:"";

  position:absolute;
  top:0;
  bottom:0;
  left:-75%;

  width:45%;

  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.3),
    transparent
  );

  transform:skewX(-20deg);
  transition:left .55s ease;
}

.premium-nav-cta:hover,
.premium-nav-cta:focus-visible,
.premium-primary-button:hover,
.premium-primary-button:focus-visible{
  transform:translateY(-2px) scale(1.04);
  filter:brightness(1.09);

  box-shadow:
    0 17px 38px rgba(11,77,219,.48),
    0 0 25px rgba(11,77,219,.28);
}

.premium-nav-cta:hover::before,
.premium-nav-cta:focus-visible::before,
.premium-primary-button:hover::before,
.premium-primary-button:focus-visible::before{
  left:130%;
}

.premium-nav-cta:active,
.premium-primary-button:active{
  transform:translateY(0) scale(.97);

  box-shadow:
    0 8px 20px rgba(11,77,219,.35);
}

/* HEADER */
/* HEADER */
.premium-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:1000;
  height:68px;

  background:rgba(2,13,39,.38);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);

  border-bottom:1px solid rgba(255,255,255,.08);
}


.premium-brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  text-decoration:none;
}

.premium-brand-logo{
  width:54px;
  height:54px;
  object-fit:contain;
}

.premium-brand-copy{
  display:flex;
  flex-direction:column;
  line-height:1.12;
}

.premium-brand-copy strong{
  font-family:"Montserrat",sans-serif;
  font-size:1rem;
  font-weight:800;
}

.premium-brand-copy small{
  margin-top:5px;
  font-family:"Inter",sans-serif;
  font-size:.73rem;
  opacity:.88;
}

.premium-nav-links{
  justify-self:center;
  display:flex;
  align-items:center;
  gap:38px;
}

.premium-nav-links a{
  color:rgba(255,255,255,.94);
  text-decoration:none;
  font-family:"Montserrat",sans-serif;
  font-size:.86rem;
  font-weight:500;
}

.premium-nav-actions{
  display:flex;
  align-items:center;
  gap:14px;
}



.premium-nav-cta{
  min-height:48px;
  padding:0 23px;
  font-size:.86rem;
}

.premium-menu-button{
  display:none;
  width:44px;
  height:44px;
  padding:8px;
  border:0;
  background:transparent;
}

.premium-menu-button span{
  display:block;
  width:24px;
  height:2px;
  margin:5px auto;
  background:#fff;
}

/* HERO */
.premium-hero{
  position:relative;
  isolation:isolate;
  height:100vh;
  min-height:100vh;
  overflow:hidden;
  color:#fff;
  background:#020d27;
}

.premium-hero-photo{
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:url("/assets/images/ic-hero-premium.jpg");
  background-size:auto 100%;
background-position:105% top;
background-repeat:no-repeat;
}
.premium-video-player{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
}

.premium-video-cover{
    position:relative;
    width:100%;
    height:100%;
    border:0;
    padding:0;
    cursor:pointer;
    overflow:hidden;
    border-radius:12px;
    background:none;
}

.premium-video-cover img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.premium-play-button{

    position:absolute;
    left:50%;
    top:50%;

    transform:translate(-50%,-50%);

    width:64px;
    height:64px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    background:rgba(255,255,255,.22);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,.45);

    color:#fff;
    font-size:24px;

    box-shadow:
        0 10px 30px rgba(0,0,0,.22);

    transition:
        transform .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}

.premium-video-cover:hover .premium-play-button{

    transform:
        translate(-50%,-50%)
        scale(1.08);

    background:rgba(255,255,255,.30);

    box-shadow:
        0 14px 40px rgba(0,0,0,.28);

}
.premium-video-player iframe{

    width:100%;
    height:100%;

    border:0;
    border-radius:12px;

}
.premium-reviews .rev-dots{
    margin-bottom:18px;
}

.premium-hero-overlay{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(
      90deg,
      #02102b 0%,
      rgba(2,16,43,.98) 25%,
      rgba(2,16,43,.84) 39%,
      rgba(2,16,43,.22) 66%,
      rgba(1,7,18,.34) 100%
    ),
    linear-gradient(
      0deg,
      rgba(1,9,26,.96) 0%,
      rgba(1,9,26,.28) 18%,
      transparent 38%
    );
    radial-gradient(
    circle at 82% 28%,
    rgba(255,255,255,.10) 0%,
    rgba(255,255,255,.05) 22%,
    transparent 55%
)
}
.premium-badge.premium-badge-secondary{
    background:rgba(170,30,45,.22);
    border-color:rgba(255,90,90,.7);
color:#fff;
    text-decoration:none;
    box-shadow:0 10px 24px rgba(180,40,40,.22);
}
.premium-badge.premium-badge-secondary:hover{
    transform:translateY(-2px);
}

.premium-badge.premium-badge-secondary span{
    color:#ff4545;
    font-size:.9em;
}
.premium-swipe-hint{
    display:none;
}

@keyframes premiumSwipeHintFloat{
    0%,
    100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-3px);
    }
}

.premium-hero-content{
  position:absolute;
  top:106px;
  left:50%;
  transform:translateX(-50%);
  width:min(1416px,calc(100% - 120px));
  height:auto;
  margin:0;
  padding:0;
}

.premium-badge{
  display:inline-flex;
  align-items:center;
  gap:9px;
  height:38px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(4,21,53,.32);
  font-family:"Montserrat",sans-serif;
  font-size:.72rem;
  font-weight:500;
  letter-spacing:.02em;
  backdrop-filter:blur(10px);
}

.premium-badge span{color:var(--ic-yellow)}

.premium-hero h1{
  max-width:670px;
  margin:22px 0 0;
  line-height:.88;
}
.premium-student-proof-wrapper{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}

.premium-title-serif{
  display:block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(68px,5.45vw,88px);
  font-weight:700;
  letter-spacing:-.05em;
}

.premium-title-script{
  display:block;
  margin-top:14px;
  color:var(--ic-yellow);
  font-family:"Georgia",serif;
    font-style:italic;
    font-weight:500;
  font-size:clamp(54px,4.1vw,66px);
  font-weight:400;
  letter-spacing:-.035em;
}

.premium-hero-description{
  max-width:460px;
  margin:27px 0 0;
  color:rgba(255,255,255,.9);
  font-family:"Inter",sans-serif;
  font-size:1rem;
  line-height:1.55;
}

.premium-hero-promise{
  margin:10px 0 0;
  font-family:"Montserrat",sans-serif;
  font-size:.95rem;
  line-height:1.45;
}

.premium-hero-promise strong{font-weight:800}
.premium-hero-promise span{color:var(--ic-yellow);font-weight:800}

.premium-hero-actions{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:26px;
}

.premium-primary-button{
  min-height:54px;
  padding:0 27px;
  font-size:.9rem;
}

.premium-secondary-button{
  min-height:46px;
  padding:0 18px;

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

  color:#fff;
  text-decoration:none;

  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;

  background:rgba(4,15,39,.16);

  font-family:"Montserrat",sans-serif;
  font-size:.79rem;
  font-weight:500;

  backdrop-filter:blur(10px);
}

.premium-proof{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:25px;
  color:rgba(255,255,255,.9);
}

.premium-proof-item{
  display:flex;
  align-items:center;
  gap:10px;
  font-family:"Inter",sans-serif;
  font-size:.7rem;
  line-height:1.35;
  text-decoration:none;
    color:inherit;
    opacity:.9;
    transform:translateY(-1px);
}

.premium-proof-mark{
  font-family:"Montserrat",sans-serif;
  font-size:1.55rem;
  font-weight:800;
  line-height:1;
  letter-spacing:-.04em;
}

.premium-stars{
  color:var(--ic-yellow);
  font-size:.84rem;
  letter-spacing:1px;
}

.premium-proof-divider{
  width:1px;
  height:38px;
  background:rgba(255,255,255,.22);
}

.premium-image-note{
  position:absolute;
  top:380px;
  right:11%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  transform:rotate(-2deg);
  color:#fff;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.75rem;
  font-style:italic;
  font-weight:500;
  line-height:.95;
  letter-spacing:-.02em;
  text-shadow:0 3px 16px rgba(0,0,0,.65);
}

.premium-image-note strong{
  margin-top:14px;
  color:var(--ic-yellow);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.08em;
  font-style:italic;
  font-weight:600;
}
/* =====================================
   PREMIUM REVIEWS
===================================== */

.premium-reviews{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    padding-top:54px;
    padding-bottom:38px;

    background:#fff;
}

.premium-reviews::before{
    content:"";

    position:absolute;
    inset:-40px;

    background-image:url("/assets/images/premium-reviews-collage.jpg");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;

    filter:
        blur(4px)
        saturate(.85);

    opacity:.36;

    transform:scale(1.08);

    z-index:-2;
    transform:
    translate3d(var(--reviews-bg-x, 0px), 0, 0)
    scale(1.06);

transition:transform .65s cubic-bezier(.22,.61,.36,1);

will-change:transform;
}

/* Background collage */
@media (prefers-reduced-motion: reduce){
    .premium-reviews::before{
        transform:scale(1.06);
        transition:none;
    }
}

/* Gentle fade at top and into the next white section */

.premium-reviews::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            180deg,

            #f7faff 0%,
            rgba(247,250,255,.94) 2%,
            rgba(247,250,255,.72) 6%,
            rgba(247,250,255,.38) 11%,
            rgba(247,250,255,.12) 17%,
            rgba(247,250,255,0) 23%,

            rgba(255,255,255,0) 76%,
            rgba(255,255,255,.18) 86%,
            rgba(255,255,255,.55) 94%,
            #fff 100%
        );

    pointer-events:none;
    z-index:-1;
}

/* Heading spacing */

.premium-reviews-title{
    text-shadow:
        0 0 32px rgba(255,255,255,.72);
}

.premium-reviews .sdesc{
    margin-top:8px !important;
    margin-bottom:0 !important;
}

/* Carousel spacing */

.premium-reviews .reviews-wrap{
    margin-top:28px;
}

.premium-reviews .reviews-track{
    align-items:flex-start;

    padding:
        18px
        12px
        28px;
}

/* Review cards */

.premium-reviews .review-card{
    min-height:0;
    height:auto;
    align-self:flex-start;

    background:rgba(255,255,255,.91);

    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,.82);

    box-shadow:
        0 18px 42px rgba(2,13,39,.13),
        0 6px 18px rgba(11,77,219,.08);
}

/* Video testimonial */

.premium-reviews .premium-video-review{
    display:flex;
    flex-direction:column;
}

.premium-video-review-frame{
    position:relative;

    width:100%;
    aspect-ratio:16 / 9;

    margin-bottom:18px;

    overflow:hidden;
    border-radius:12px;

    background:#020d27;

    box-shadow:
        0 9px 22px rgba(2,13,39,.15);
}

.premium-video-review-frame iframe{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    border:0;
}

.premium-video-review-label{
    margin:12px 0 14px;

    color:#536987;

    font-family:"Inter",sans-serif;
    font-size:.9rem;
    line-height:1.5;
}

/* Google proof below carousel */

.premium-reviews-proof{
    box-sizing:border-box;

    display:flex;
    align-items:center;
    gap:10px;

    width:max-content;
    max-width:calc(100% - 32px);

    margin:2px auto 0;
    padding:13px 18px;

    color:#142747;
    text-decoration:none;

    border:1px solid rgba(255,255,255,.88);
    border-radius:16px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.56),
            rgba(255,255,255,.28)
        );

    backdrop-filter:blur(20px) saturate(1.15);
    -webkit-backdrop-filter:blur(20px) saturate(1.15);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.86),
        0 12px 30px rgba(2,13,39,.10);

    opacity:1;

    transition:
        transform .22s ease,
        background .22s ease,
        box-shadow .22s ease;
}

.premium-reviews-proof:hover{
    transform:translateY(-2px);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.68),
            rgba(255,255,255,.38)
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.92),
        0 16px 36px rgba(2,13,39,.13);
}
/* BENEFITS */
.premium-benefits{
  position:relative;
  left:auto;
  bottom:auto;
  transform:none;
  width:100%;
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  padding:12px 12px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:17px;
  background:linear-gradient(115deg,rgba(3,22,59,.88),rgba(3,12,31,.74));
  box-shadow:0 20px 60px rgba(0,0,0,.24);
  backdrop-filter:blur(20px);
}

.premium-benefit{
  min-width:0;
  min-height:68px;
  padding:0 14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  text-align:center;
  color:rgba(255,255,255,.94);
  border-right:1px solid rgba(255,255,255,.16);
  font-family:"Inter",sans-serif;
font-size:.68rem;
line-height:1.25;
}

.premium-benefit:last-child{border-right:0}

.premium-scroll-cue{
  position:absolute;
  bottom:8px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:9px;
  color:rgba(255,255,255,.83);
  text-decoration:none;
  font-family:"Inter",sans-serif;
  font-size:.76rem;
}
.premium-proof-logo{
  width:38px;
  height:38px;
  flex-shrink:0;
  object-fit:contain;
}

.premium-google-logo,
.premium-cambridge-logo{
  width:34px;
  height:34px;
}



.premium-benefit-icon{
    width:22px;
    height:22px;
    color:#fff;
    flex-shrink:0;
}

.premium-benefit-icon svg,
.premium-benefit svg{
    width:22px;
    height:22px;
    stroke-width:2.2;
}

/* =================================
   300+ STUDENT AVATAR PROOF
================================= */

.premium-student-proof{
  position:relative;
  z-index:5;

  box-sizing:border-box;
  width:360px;
  min-width:360px;
  height:64px;
  padding:7px 9px 7px 12px;

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

  color:#fff;
  text-decoration:none;

  border:1px solid rgba(69,126,255,.48);
  border-radius:17px;

  background:
    radial-gradient(
      circle at 15% 20%,
      rgba(34,96,236,.22),
      transparent 48%
    ),
    linear-gradient(
      135deg,
      rgba(8,39,96,.92),
      rgba(2,16,43,.96)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.1),
    0 12px 30px rgba(0,0,0,.25);

  overflow:visible;
  cursor:pointer;

  transition:
    width .42s cubic-bezier(.22,.61,.36,1),
    height .42s cubic-bezier(.22,.61,.36,1),
    border-color .25s ease,
    background .25s ease,
    box-shadow .25s ease,
    transform .25s ease;
}

/* Area containing the 12 avatars */

.student-avatars{
  position:relative;
  display:block;

  width:255px;
  height:48px;
  flex-shrink:0;

  transition:
    width .42s cubic-bezier(.22,.61,.36,1),
    height .42s cubic-bezier(.22,.61,.36,1);
}

/* Individual avatar */

.student-avatars img{
  --avatar-size:42px;

  position:absolute;
  top:3px;
  left:0;

  box-sizing:border-box;
  width:var(--avatar-size);
  height:var(--avatar-size);

  object-fit:cover;
  object-position:center;

  border:3px solid #fff;
  border-radius:50%;

  background:#fff;

  box-shadow:
    0 4px 12px rgba(0,0,0,.34);

transform:
  translateX(var(--rest-x, 0px))
  translateY(0);
  
  transition:
    transform .46s cubic-bezier(.22,.61,.36,1),
    width .35s ease,
    height .35s ease,
    box-shadow .3s ease;

  will-change:transform;
}

/* Stack order and animation coordinates */

.student-avatars img:nth-child(1){
  --stack-index:0;
  --column:0;
  --row:0;
  z-index:12;
}

.student-avatars img:nth-child(2){
  --stack-index:1;
  --column:1;
  --row:0;
  z-index:11;
}

.student-avatars img:nth-child(3){
  --stack-index:2;
  --column:2;
  --row:0;
  z-index:10;
}

.student-avatars img:nth-child(4){
  --stack-index:3;
  --column:3;
  --row:0;
  z-index:9;
}

.student-avatars img:nth-child(5){
  --stack-index:4;
  --column:4;
  --row:0;
  z-index:8;
}

.student-avatars img:nth-child(6){
  --stack-index:5;
  --column:5;
  --row:0;
  z-index:7;
}

.student-avatars img:nth-child(7){
  --stack-index:6;
  --column:0;
  --row:1;
  z-index:6;
}

.student-avatars img:nth-child(8){
  --stack-index:7;
  --column:1;
  --row:1;
  z-index:5;
}

.student-avatars img:nth-child(9){
  --stack-index:8;
  --column:2;
  --row:1;
  z-index:4;
}

.student-avatars img:nth-child(10){
  --stack-index:9;
  --column:3;
  --row:1;
  z-index:3;
}

.student-avatars img:nth-child(11){
  --stack-index:10;
  --column:4;
  --row:1;
  z-index:2;
}

.student-avatars img:nth-child(12){
  --stack-index:11;
  --column:5;
  --row:1;
  z-index:1;
}

/* +300 badge */

.student-count{
  position:relative;
  z-index:20;

  box-sizing:border-box;
  width:54px;
  min-width:54px;
  height:54px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  border:2px solid rgba(255,255,255,.94);
  border-radius:50%;

  background:
    linear-gradient(
      145deg,
      #1767ff,
      #0641c8
    );

  box-shadow:
    0 7px 20px rgba(11,77,219,.46),
    inset 0 1px 0 rgba(255,255,255,.2);

  font-family:"Montserrat",sans-serif;
  line-height:1;

  transition:
    transform .35s cubic-bezier(.22,.61,.36,1),
    box-shadow .3s ease;
}

.student-count strong{
  color:#fff;
  font-size:.78rem;
  font-weight:800;
}

.student-count small{
  margin-top:3px;
  color:rgba(255,255,255,.82);
  font-size:.42rem;
  font-weight:500;
  letter-spacing:.02em;
}
/* =========================================
   PREMIUM METHOD SECTION
========================================= */

.premium-method-section{
    position:relative;
    overflow:hidden;
    padding:48px 0 85px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(11,77,219,.30),
            transparent 38%
        ),
        linear-gradient(
            180deg,
            #020d27 0%,
            #06183d 30%,
            #023192 62%,
            #0050c7 80%,
            #f7faff 100%
        );
}

.premium-method-inner{
    text-align:center;
}

.premium-method-label{
    margin:0 0 8px;

    font-family:'Montserrat',sans-serif;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.2em;
    text-transform:uppercase;

    color:var(--gold);
}

.premium-method-title{
width:100%;
    max-width:850px;
    margin-right:auto;
    margin-left:auto;

    text-align:center;
    text-wrap:balance;

    font-family:'Montserrat',sans-serif;
    font-size:clamp(2rem,4vw,3.2rem);
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.02em;

    color:#fff;
}

.premium-method-intro{
    max-width:620px;
    margin:0 auto 12px;

    font-size:.93rem;
    line-height:1.55;

    color:rgba(255,255,255,.78);
}

/* EXPANDABLE VIDEO INFORMATION */

.premium-method-details{
    width:min(620px,100%);
    margin:0 auto 18px;

    text-align:center;
}

.premium-method-details-content{
    box-sizing:border-box;
    text-align:left;

    display:grid;
    grid-template-rows:0fr;

    margin-top:0;

    opacity:0;
    transform:translateY(-8px);

    transition:
        grid-template-rows .38s cubic-bezier(.22,.61,.36,1),
        margin-top .38s cubic-bezier(.22,.61,.36,1),
        opacity .22s ease,
        transform .32s cubic-bezier(.22,.61,.36,1);
}

.premium-method-details-content-inner{
    min-height:0;
    overflow:hidden;

    padding:0 20px;

    border:1px solid rgba(255,255,255,.14);
    border-radius:14px;

    background:rgba(2,13,39,.42);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);

    color:rgba(255,255,255,.82);

    transition:padding .38s cubic-bezier(.22,.61,.36,1);
}

.premium-method-details.is-visible .premium-method-details-content{
    grid-template-rows:1fr;
    margin-top:8px;

    opacity:1;
    transform:translateY(0);
}

.premium-method-details.is-visible .premium-method-details-content-inner{
    padding:18px 20px;
}

.premium-method-details summary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;

    width:max-content;
    margin:0 auto;
    padding:6px 11px;

    border:1px solid rgba(255,255,255,.28);
    border-radius:999px;

    background:rgba(255,255,255,.10);
    color:#fff;

    font-family:'Montserrat',sans-serif;
    font-size:.76rem;
    font-weight:500;

    cursor:pointer;
    list-style:none;

    transition:
        background .2s ease,
        border-color .2s ease;
}
.premium-method-details summary::-webkit-details-marker{
    display:none;
}

.premium-method-details summary:hover{
    background:rgba(255,255,255,.17);
    border-color:rgba(255,255,255,.42);
}

.premium-method-details summary svg{
    width:14px;
    height:14px;
    stroke:#fff;
    flex-shrink:0;
}

.premium-method-details-content p{
    margin:0;

    font-size:.93rem;
    line-height:1.65;
}

.premium-method-details-content p + p{
    margin-top:12px;
}

/* VIDEO */

.premium-method-video-frame{
    position:relative;
    overflow:hidden;

    width:min(640px,100%);
    aspect-ratio:16/9;

    margin:0 auto;

    border:6px solid rgba(255,255,255,.92);
    border-radius:16px;

    background:#000;

    box-shadow:
        0 18px 45px rgba(0,0,0,.35),
        0 0 30px rgba(255,255,255,.10);
}

.premium-method-video-frame iframe{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    border:0;
}

/* CTA */

.premium-method-cta{
    margin-top:28px;
}

.premium-method-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:50px;
    padding:0 32px;

    border-radius:999px;

    background:var(--gold);
    color:#071126;

    font-family:'Montserrat',sans-serif;
    font-size:.96rem;
    font-weight:800;
    text-decoration:none;

    box-shadow:0 14px 32px rgba(255,210,31,.26);

    transition:
        transform .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}

.premium-method-button:hover{
    transform:translateY(-2px);
    background:#ffe05c;
    box-shadow:0 18px 40px rgba(255,210,31,.34);
}

.premium-method-price{
    display:block;
    width:max-content;
    max-width:100%;

    margin:14px auto 0;
    padding:8px 15px;

    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;

    background:rgba(2,13,39,.58);
    color:rgba(255,255,255,.90);

    font-size:.85rem;
    line-height:1.4;
    white-space:nowrap;
}

.premium-method-price strong{
    color:#7cff90;
}

/* MOBILE */


/* Hover, keyboard focus and mobile expanded state */

.premium-student-proof:hover,
.premium-student-proof:focus-visible,
.premium-student-proof.is-expanded{
  width:360px;
  height:108px;

  border-color:rgba(75,132,255,.9);

  background:
    radial-gradient(
      circle at 20% 10%,
      rgba(34,96,236,.34),
      transparent 55%
    ),
    linear-gradient(
      135deg,
      rgba(8,44,108,.98),
      rgba(2,16,43,.98)
    );

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    0 0 24px rgba(11,77,219,.24),
    0 18px 38px rgba(0,0,0,.3);

  transform:translateY(-2px);
}

.premium-student-proof:hover .student-avatars,
.premium-student-proof:focus-visible .student-avatars,
.premium-student-proof.is-expanded .student-avatars{
  width:250px;
  height:92px;
}

/* Expand into two rows of six */

.premium-student-proof:hover .student-avatars img,
.premium-student-proof:focus-visible .student-avatars img,
.premium-student-proof.is-expanded .student-avatars img{
  --avatar-size: 38px;
  transform: translateX(calc(var(--column) * 42px))
    translateY(calc(var(--row) * 42px));
  box-shadow: 0 7px 16px rgba(0,0,0,.38);
  z-index: 2;
}

/* Keep later images visibly above earlier images once expanded */



.premium-student-proof:hover .student-count,
.premium-student-proof:focus-visible .student-count,
.premium-student-proof.is-expanded .student-count{
  transform:scale(1.06);

  box-shadow:
    0 0 20px rgba(11,77,219,.5),
    0 9px 22px rgba(0,0,0,.3),
    inset 0 1px 0 rgba(255,255,255,.22);
}

/* Accessible keyboard outline */

.premium-student-proof:focus-visible{
  outline:2px solid #fff;
  outline-offset:4px;
}

/* TABLET */
@media(max-width:1180px){
  .premium-nav{width:calc(100% - 44px)}
  .premium-nav-links{gap:22px}
  .premium-brand-copy{display:none}
  .premium-hero-content{width:calc(100% - 72px)}
  .premium-benefits{width:calc(100% - 58px)}
  .premium-image-note{display:none}
}
@media (min-width:521px) and (max-width:900px){

  .premium-hero h1{
    margin-top:80px;   /* was 121px */
  }

  .premium-hero-description{
    margin-top:105px;  /* was 145px */
  }

}
.premium-hero::after{
  content:"";
  position:absolute;
  inset:auto;
  left:50%;
  bottom:-180px;
  width:900px;
  height:420px;
  transform:translateX(-50%);
  pointer-events:none;

  z-index:0;

  background:radial-gradient(
    ellipse,
    rgba(11,77,219,.28) 0%,
    rgba(11,77,219,.12) 40%,
    transparent 72%
  );
}
/* =========================================
   PREMIUM WHY SECTION — COMPACT VERSION
========================================= */

.premium-why{
    padding-top:26px;
    padding-bottom:38px;
}

/* Desktop two-column structure */

.premium-why .why-inner{
    align-items:start;
    gap:56px;
}

/* Keep the text column comfortably readable */

.premium-why .why-inner > div:first-child{
    min-width:0;
}

/* Slightly tighten the headline */

.premium-why .stitle{
    max-width:560px;

    margin:0 0 14px;

    font-size:clamp(2.15rem,3.5vw,3.35rem);
    line-height:1.02;
    letter-spacing:-.035em;
}

/* Compact introductory paragraph */

.premium-why .sdesc{
    max-width:520px;
    margin-top:0;
    line-height:1.58;
}

/* Reduce the large gap before the three cards */

.premium-why .why-pts{
    margin-top:18px;

    display:flex;
    flex-direction:column;
    gap:10px;
}

/* Compact white information cards */

.premium-why .wpt{
    box-sizing:border-box;

    min-height:0;
    padding:13px 16px;

    gap:12px;

    border-radius:14px;

    box-shadow:
        0 6px 16px rgba(11,77,219,.04);
}
/* Slightly smaller icon boxes */

.premium-why .wpt-ic{

    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:10px;

    background:rgba(11,77,219,.08);

    color:#0B4DDB;
}
.premium-why .wpt-ic svg{

    width:18px;
    height:18px;

    stroke-width:2.2;
}

/* Tighten text inside the white cards */

.premium-why .wpt-t{
    margin-bottom:3px;

    font-size:.92rem;
    line-height:1.3;
}

.premium-why .wpt-d{
    color:#5b6982;

    font-size:.8rem;
    line-height:1.48;
}

/* Blue statistics panel */

.premium-why .why-vis{
    align-self:center;

    box-sizing:border-box;
    padding:30px 36px;

    border-radius:24px;
}

/* Remove unnecessary spacing from each statistic */

.premium-why .premium-why-stat{
    margin:0;
}

/* Keep numbers visually dominant */

.premium-why .wnum{
    font-size:clamp(3.25rem,5vw,4.45rem);
    line-height:.95;
}

/* Compact statistic descriptions */

.premium-why .wlbl{
    margin-top:10px;

    font-size:.82rem;
    line-height:1.48;
}

/* Tighter and more refined divider */

.premium-why .wdiv{
    height:1px;

    margin:18px 0;

    border:0;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.04),
            rgba(255,255,255,.22),
            rgba(255,255,255,.04)
        );
}

/* Compact quote */

.premium-why .wq{
    padding-left:16px;

    font-size:.9rem;
    line-height:1.48;
}

/* Reduce empty space before the next section */

.premium-why + .team{
    padding-top:68px;
}

/* =========================================
   INTERACTIVE PREMIUM WHY PANEL
========================================= */

.premium-why .premium-why-panel{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    width:100%;

    color:#fff;
    text-align:left;
    font:inherit;

    border:1px solid rgba(255,255,255,.18);

    background:
    radial-gradient(
        circle at 16% 6%,
        rgba(255,255,255,.075),
        transparent 31%
    ),
    radial-gradient(
        circle at 84% 18%,
        rgba(39,215,247,.055),
        transparent 34%
    ),
    linear-gradient(
        145deg,
        #0A3FAF 0%,
        #082F87 52%,
        #061E59 100%
    );

    box-shadow:
    0 26px 58px rgba(2,10,30,.28),
    0 14px 34px rgba(6,30,89,.26),
    0 0 32px rgba(11,77,219,.09),
    inset 0 1px 0 rgba(255,255,255,.11);

    cursor:pointer;

    animation:
        premiumWhyPanelFloat 4.8s ease-in-out infinite;

    transition:
        transform .3s cubic-bezier(.22,.61,.36,1),
        box-shadow .3s ease,
        border-color .3s ease,
        filter .3s ease;
}

/* Soft inner glow */

.premium-why .premium-why-panel::after{
    content:"";

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

    border-radius:inherit;

    background:
        radial-gradient(
            circle at 78% 18%,
            rgba(39,215,247,.16),
            transparent 36%
        );

    pointer-events:none;
}

/* Glass reflection sweep */

.premium-why .premium-why-panel::before{
    content:"";

    position:absolute;
    z-index:2;

    top:-20%;
    bottom:-20%;
    left:-55%;

    width:34%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.05),
            rgba(255,255,255,.24),
            rgba(255,255,255,.06),
            transparent
        );

    transform:skewX(-18deg);

    pointer-events:none;

    transition:left .8s cubic-bezier(.22,.61,.36,1);
}

.premium-why .premium-why-panel:hover,
.premium-why .premium-why-panel:focus-visible{
    transform:translateY(-6px) scale(1.012);

    border-color:rgba(255,255,255,.32);

    filter:brightness(1.02);

    box-shadow:
    0 34px 72px rgba(2,10,30,.34),
    0 18px 44px rgba(6,30,89,.34),
    0 0 42px rgba(11,77,219,.14),
    inset 0 1px 0 rgba(255,255,255,.16);
}

.premium-why .premium-why-panel:hover::before,
.premium-why .premium-why-panel:focus-visible::before{
    left:125%;
}

.premium-why .premium-why-panel:focus-visible{
    outline:2px solid rgba(255,255,255,.95);
    outline-offset:5px;
}

.premium-why .premium-why-panel:active{
    transform:translateY(-1px) scale(.994);
}
/* =========================================
   PREMIUM FOUNDERS
   Isolated from the existing .team / .tc CSS
========================================= */

.premium-founders{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    padding:34px 0 40px;

    background:
        radial-gradient(
            circle at 10% 18%,
            rgba(11,77,219,.075),
            transparent 34%
        ),
        radial-gradient(
            circle at 90% 72%,
            rgba(233,114,30,.055),
            transparent 32%
        ),
        linear-gradient(
            180deg,
            #f9fbff 0%,
            #eef5ff 100%
        );
}
.premium-founders-heading .lbl{
    display:inline-block;
    margin-bottom:8px;
}

/* Very faint premium texture */

.premium-founders::before{
    content:"";

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

    background-image:
        radial-gradient(
            rgba(11,77,219,.055) 1px,
            transparent 1px
        );

    background-size:26px 26px;

    opacity:.34;

    pointer-events:none;
}

.premium-founders-heading{
    max-width:900px;
    margin:0 auto 34px;
    text-align:center;
}

.premium-founders-heading .stitle{
    max-width:580px;

    margin:0 auto;

   font-size:clamp(2.4rem,4.3vw,4rem);
    line-height:1.02;
    letter-spacing:-.04em;
}

.premium-founders-intro{
    max-width:590px;

    margin:11px auto 0;

    color:#64748b;

    font-family:"Inter",sans-serif;
    font-size:.92rem;
    line-height:1.6;
}

/* Two founder cards */

.premium-founders-grid{
    position:relative;

    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:start;
    gap:22px;

    margin-top:23px;
}

/* Shared card */

.premium-founder-card{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    box-sizing:border-box;
    min-width:0;

    padding:24px;

    border:1px solid rgba(255,255,255,.92);
    border-radius:21px;

    background:rgba(255,255,255,.88);

    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);

    box-shadow:
        0 22px 55px rgba(2,13,39,.08),
        inset 0 1px 0 rgba(255,255,255,.95);

    transition:
        transform .32s cubic-bezier(.22,.61,.36,1),
        box-shadow .32s ease,
        border-color .32s ease;
}

.premium-founder-card:hover{
    transform:translateY(-6px);

    box-shadow:
        0 30px 70px rgba(2,13,39,.12),
        0 12px 28px rgba(11,77,219,.07),
        inset 0 1px 0 rgba(255,255,255,1);
}

/* Coloured top edge */

.premium-founder-accent{
    position:absolute;
    top:0;
    left:0;
    right:0;

    height:4px;
}

.premium-founder-card--max .premium-founder-accent{
    background:
        linear-gradient(
            90deg,
            #0B4DDB,
            #27D7F7
        );
}

.premium-founder-card--julia .premium-founder-accent{
    background:
        linear-gradient(
            90deg,
            #E9721E,
            #FFD21F
        );
}

/* Subtle internal colour */

.premium-founder-card--max::before,
.premium-founder-card--julia::before{
    content:"";

    position:absolute;
    z-index:-1;

    width:260px;
    height:260px;

    border-radius:50%;

    filter:blur(10px);

    pointer-events:none;
}

.premium-founder-card--max::before{
    top:-145px;
    right:-120px;

    background:
        radial-gradient(
            circle,
            rgba(11,77,219,.11),
            transparent 70%
        );
}

.premium-founder-card--julia::before{
    top:-145px;
    left:-120px;

    background:
        radial-gradient(
            circle,
            rgba(233,114,30,.10),
            transparent 70%
        );
}

/* Different header layouts */

.premium-founder-header{
    display:grid;
    align-items:center;
    gap:16px;

    min-height:78px;
}

.premium-founder-card--max .premium-founder-header{
    grid-template-columns:minmax(0,1fr) 78px;
}

.premium-founder-card--julia .premium-founder-header{
    grid-template-columns:78px minmax(0,1fr);
}

/* Identity */

.premium-founder-identity{
    min-width:0;
}

.premium-founder-country{
    display:flex;
    align-items:center;
    gap:7px;

    margin-bottom:5px;

    color:#738198;

    font-family:"Montserrat",sans-serif;
    font-size:.65rem;
    font-weight:500;
    line-height:1.3;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.premium-founder-country svg{
    width:14px;
    height:14px;

    flex-shrink:0;

    stroke-width:2;
}

.premium-founder-card--max .premium-founder-country svg{
    color:#0B4DDB;
}

.premium-founder-card--julia .premium-founder-country svg{
    color:#E9721E;
}

.premium-founder-name{
    margin:0;

    color:#10213f;

    font-family:"Montserrat",sans-serif;
    font-size:1.5rem;
    font-weight:800;
    line-height:1.08;
    letter-spacing:-.035em;
}

.premium-founder-role{
    margin:5px 0 0;

    font-family:"Montserrat",sans-serif;
    font-size:.7rem;
    font-weight:600;
    line-height:1.45;
    letter-spacing:.065em;
    text-transform:uppercase;
}

.premium-founder-card--max .premium-founder-role{
    color:#0B4DDB;
}

.premium-founder-card--julia .premium-founder-role{
    color:#D96314;
}

/* Photo */

.premium-founder-photo-wrap{
    position:relative;

    width:78px;
    height:78px;

    flex-shrink:0;
}

.premium-founder-photo-glow{
    position:absolute;
    inset:-8px;

    border-radius:50%;

    filter:blur(7px);

    opacity:.55;

    transition:
        opacity .32s ease,
        transform .32s ease;
}

.premium-founder-card--max .premium-founder-photo-glow{
    background:
        radial-gradient(
            circle,
            rgba(11,77,219,.28),
            transparent 68%
        );
}

.premium-founder-card--julia .premium-founder-photo-glow{
    background:
        radial-gradient(
            circle,
            rgba(233,114,30,.25),
            transparent 68%
        );
}

.premium-founder-photo{
    position:relative;
    z-index:1;

    box-sizing:border-box;
    display:block;

    width:78px;
    height:78px;

    object-fit:cover;
    object-position:center;

    border:3px solid rgba(255,255,255,.96);
    border-radius:50%;

    background:#fff;

    box-shadow:
        0 12px 30px rgba(2,13,39,.16);

    transition:
        transform .35s cubic-bezier(.22,.61,.36,1),
        box-shadow .35s ease;
}

.premium-founder-card:hover .premium-founder-photo{
    transform:scale(1.035);

    box-shadow:
        0 16px 38px rgba(2,13,39,.20);
}

.premium-founder-card:hover .premium-founder-photo-glow{
    opacity:.82;
    transform:scale(1.08);
}
/* Compact founder credentials */

.premium-founder-credentials{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;

    margin-top:16px;
}

.premium-founder-credential{
    box-sizing:border-box;

    display:flex;
    align-items:center;
    gap:7px;

    padding:7px 10px;

    border-radius:999px;

    color:#31445f;

    font-family:"Montserrat",sans-serif;
    font-size:.66rem;
    font-weight:600;
    line-height:1.2;

    white-space:normal;
}

.premium-founder-card--max .premium-founder-credential{
    border:1px solid rgba(11,77,219,.12);
    background:rgba(11,77,219,.055);
}

.premium-founder-card--julia .premium-founder-credential{
    border:1px solid rgba(233,114,30,.13);
    background:rgba(233,114,30,.055);
}

.premium-founder-credential svg{
    width:14px;
    height:14px;

    flex-shrink:0;

    stroke-width:2.1;
}

.premium-founder-card--max .premium-founder-credential svg{
    color:#0B4DDB;
}

.premium-founder-card--julia .premium-founder-credential svg{
    color:#D96314;
}
.premium-founder-credential-flag{
    width:16px;
    height:12px;

    flex-shrink:0;

    object-fit:cover;
    border-radius:2px;

    box-shadow:0 1px 3px rgba(2,13,39,.14);
}

/* Short visible introduction */

.premium-founder-summary{
    margin:15px 0 0;

    color:#586981;

    font-family:"Inter",sans-serif;
    font-size:.84rem;
    line-height:1.52;
}

/* Expandable story */

.premium-founder-story{
    margin-top:12px;
}

.premium-founder-story summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;

    box-sizing:border-box;
    width:100%;

    padding:9px 12px;

    cursor:pointer;
    list-style:none;

    border:1px solid rgba(15,35,70,.10);
    border-radius:12px;

    background:rgba(248,251,255,.82);

    color:#42536d;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:500;

    transition:
        color .22s ease,
        border-color .22s ease,
        background .22s ease,
        box-shadow .22s ease;
}

.premium-founder-story summary::-webkit-details-marker{
    display:none;
}

.premium-founder-story summary:hover{
    color:#10213f;
    background:#fff;
}

.premium-founder-card--max .premium-founder-story summary:hover{
    border-color:rgba(11,77,219,.22);

    box-shadow:
        0 8px 22px rgba(11,77,219,.07);
}

.premium-founder-card--julia .premium-founder-story summary:hover{
    border-color:rgba(233,114,30,.24);

    box-shadow:
        0 8px 22px rgba(233,114,30,.07);
}

.premium-founder-story summary svg{
    width:15px;
    height:15px;

    flex-shrink:0;

    transition:
        transform .34s cubic-bezier(.22,.61,.36,1);
}

.premium-founder-story[open] summary svg{
    transform:rotate(180deg);
}

/* Story animation */

.premium-founder-story-content{
    display:grid;
    grid-template-rows:0fr;

    opacity:0;
    transform:translateY(-5px);

    transition:
        grid-template-rows .38s cubic-bezier(.22,.61,.36,1),
        opacity .25s ease,
        transform .32s cubic-bezier(.22,.61,.36,1);
}

.premium-founder-story[open] .premium-founder-story-content{
    grid-template-rows:1fr;

    opacity:1;
    transform:translateY(0);
}

.premium-founder-story-inner{
    min-height:0;
    overflow:hidden;
}

.premium-founder-story-inner p{
    margin:13px 2px 0;

    color:#64748b;

    font-family:"Inter",sans-serif;
    font-size:.79rem;
    line-height:1.58;
}

.premium-founder-story-inner p + p{
    margin-top:10px;
}

.premium-founder-story-inner strong{
    color:#1a2d4a;
    font-weight:600;
}


.premium-founders-title{
    font-size:clamp(2rem,4vw,2.8rem);
    line-height:1.08;
    max-width:none;
}
.premium-founders-title{
    width:100%;
    max-width:980px;
    margin-right:auto;
    margin-left:auto;

    text-align:center;
    text-wrap:balance;
}
.premium-founder-flag{
    font-size:1rem;
    line-height:1;
    flex-shrink:0;
}
.premium-no-break{
    white-space:nowrap;
}
/* =========================================
   PREMIUM HOW IT WORKS
   Isolated from existing .how / .hi styles
========================================= */

.premium-how{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 34px 0 36px;
  border-bottom: none !important;
  background: radial-gradient(
            circle at 88% 8%,
            rgba(39,215,247,.19),
            transparent 35%
        ),
        linear-gradient(
            180deg,
            #0a3fae 0%,
            #093993 48%,
            #0a347f 78%,
            #0b367f 100%
        ) !important;
}

/* Subtle background texture */

.premium-how::before{
    content:"";

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

    background-image:
        radial-gradient(
            rgba(255,255,255,.055) 1px,
            transparent 1px
        );

    background-size:28px 28px;

    opacity:.22;

    pointer-events:none;
}

/* Heading */

.premium-how-heading{
    max-width:860px;
    margin:0 auto;
    text-align:center;
}
.premium-how-label{
    display:block;

    margin-bottom:5px;

    color:#FFD21F;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:700;
    line-height:1.3;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.premium-how-title{
    margin:0;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.4rem,4.2vw,4.2rem);
    font-weight:800;
    line-height:1.02;
    letter-spacing:-.045em;
}

.premium-how-title em{
  color: #FFD21F;
  font-style: italic;
  font-weight: 800;
  white-space: nowrap;
}

.premium-how-intro{
    max-width:none;

    margin:10px auto 0;

    white-space:nowrap;

    color:rgba(255,255,255,.78);

    font-family:"Inter",sans-serif;
    font-size:1rem;
    line-height:1.65;
}

/* Grid */

.premium-how-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;

    margin-top:24px;
}

/* Shared card */

.premium-how-card{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    box-sizing:border-box;
    min-width:0;
    min-height:235px;

    display:flex;
    flex-direction:column;

padding:23px 23px 22px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:20px;

    background:
    radial-gradient(
        circle at 88% 12%,
        rgba(255,255,255,.07),
        transparent 35%
    ),
    linear-gradient(
        145deg,
        rgba(20,78,190,.82),
        rgba(7,44,125,.86)
    );

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    box-shadow:
        0 20px 45px rgba(2,10,30,.19),
        inset 0 1px 0 rgba(255,255,255,.08);

    transition:
        transform .3s cubic-bezier(.22,.61,.36,1),
        border-color .3s ease,
        box-shadow .3s ease,
        background .3s ease;
}

/* First three are slightly more important */

.premium-how-card--primary{
    border-color:rgba(39,215,247,.28);

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(39,215,247,.19),
            transparent 36%
        ),
        radial-gradient(
            circle at 12% 88%,
            rgba(255,210,31,.08),
            transparent 42%
        ),
        linear-gradient(
            145deg,
            rgba(18,91,232,.96),
            rgba(5,57,164,.94)
        );

    box-shadow:
        0 25px 60px rgba(2,10,30,.27),
        0 12px 34px rgba(11,77,219,.24),
        inset 0 1px 0 rgba(255,255,255,.13);
}
.premium-how-card--primary h3{
    font-size:1.22rem;
    line-height:1.2;
    text-transform:uppercase;
    letter-spacing:-.025em;
}
/* Glass reflection */

.premium-how-card::before{
    content:"";

    position:absolute;
    z-index:2;

    top:-20%;
    bottom:-20%;
    left:-55%;

    width:30%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.04),
            rgba(255,255,255,.18),
            rgba(255,255,255,.04),
            transparent
        );

    transform:skewX(-18deg);

    pointer-events:none;

    transition:
        left .75s cubic-bezier(.22,.61,.36,1);
}

.premium-how-card:hover{
    transform:translateY(-6px);

    border-color:rgba(255,255,255,.22);

    box-shadow:
        0 30px 65px rgba(2,10,30,.28),
        0 14px 32px rgba(11,77,219,.16),
        inset 0 1px 0 rgba(255,255,255,.12);
}

.premium-how-card:hover::before{
    left:125%;
}

/* Card top row */

.premium-how-card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;

    margin-bottom:18px;
}

.premium-how-number{
    color:rgba(255,255,255,.58);

    font-family:"Montserrat",sans-serif;
    font-size:.78rem;
    font-weight:800;
    line-height:1;
    letter-spacing:.14em;
}
.premium-how-card--primary .premium-how-number{
    color:#FFD21F;
}

.premium-how-icon{
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  color: #FFD21F;
  border: 1px solid rgba(255,210,31,.26);
  border-radius: 13px;
  background: rgba(255,210,31,.09);
  box-shadow: 0 0 22px rgba(255,210,31,.08),
        inset 0 1px 0 rgba(255,255,255,.10);
}



.premium-how-icon svg{
    width:20px;
    height:20px;

    stroke-width:2.1;
}

/* Content */

.premium-how-card h3{
    margin:0;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:1.05rem;
    font-weight:800;
    line-height:1.3;
    letter-spacing:-.015em;
}

.premium-how-card p{
    margin:11px 0 0;

    color:rgba(255,255,255,.74);

    font-family:"Inter",sans-serif;
    font-size:.84rem;
    line-height:1.62;
}


.premium-how-title-line{
    white-space:nowrap;
}


/* =========================================
   PREMIUM ENROLMENT
   Isolated from existing schedule CSS
========================================= */

.premium-enrol{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  box-shadow: none;
  padding: 34px 0 36px;
  background: radial-gradient(
            circle at 50% 12%,
            rgba(39,215,247,.11),
            transparent 31%
        ),
        radial-gradient(
            circle at 8% 88%,
            rgba(11,77,219,.22),
            transparent 40%
        ),
        linear-gradient(
            180deg,
            #0b367f 0%,
            #0a347d 10%,
            #092f73 22%,
            #082f87 56%,
            #061a4b 100%
        ) !important;
  border-top: none !important;
}




.premium-enrol::before{
    content:"";

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

    background-image:
        radial-gradient(
            rgba(11,77,219,.055) 1px,
            transparent 1px
        );

    background-size:28px 28px;

    opacity:.26;
    pointer-events:none;
}


/* Heading */

.premium-enrol-heading{
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}

.premium-enrol-label{
  display: block;
  font-family: "Montserrat",sans-serif;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .17em;
  line-height: 1.3;
  text-transform: uppercase;
  margin-bottom: 5px;
  color: #FFD21F;
}

.premium-enrol-title{
  font-family: "Montserrat",sans-serif;
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -.045em;
  margin: 0;
  color: #fff;
  font-size: clamp(2.25rem,3.7vw,3.55rem);
}

.premium-enrol-title em{
  font-style: italic;
  font-weight: 500;
  white-space: nowrap;
  display: block;
  color: #FFD21F;
}

.premium-enrol-intro{
  font-family: "Inter",sans-serif;
  line-height: 1.55;
  max-width: 650px;
  margin: 10px auto 0;
  color: rgba(255,255,255,.76);
  font-size: .86rem;
}

.premium-enrol-heading-actions{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;

    margin-top:17px;
}


/* Level test */

.premium-level-test,
.premium-timezone-button{
    box-sizing:border-box;

    min-height:46px;

    display:inline-flex;
    align-items:center;
    gap:10px;

    padding:8px 14px;

    border-radius:14px;

    font-family:"Inter",sans-serif;
    font-size:.72rem;
    line-height:1.35;

    cursor:pointer;

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        background .22s ease;
}

.premium-level-test{
  min-height: 56px;
  margin-top: 15px;
  padding: 0 24px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #071b4a;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 15px;
  background: linear-gradient(
            135deg,
            #ffe35b,
            #ffc914
        );
  box-shadow: 0 17px 38px rgba(255,201,20,.30);
  font-family: "Montserrat",sans-serif;
  font-size: .82rem;
  font-weight: 800;
  position: relative;
  justify-content: center;
  text-align: center;
}
.premium-level-test strong{
    display:block;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:800;
}

.premium-level-test svg,
.premium-timezone-button svg{
    width:17px;
    height:17px;
    flex-shrink:0;
}

.premium-level-test:hover{
    transform:translateY(-2px);

    box-shadow:
        0 17px 35px rgba(11,77,219,.30);
}


/* Timezone */

.premium-timezone-button{
    color:#304765;

    border:1px solid rgba(11,77,219,.10);

    background:rgba(255,255,255,.72);

    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
}

.premium-timezone-button strong{
    display:block;
    color:#0B4DDB;
}

.premium-timezone-button:hover{
    transform:translateY(-2px);

    border-color:rgba(11,77,219,.20);

    box-shadow:
        0 12px 28px rgba(2,13,39,.09);
}

.premium-timezone-select{
    display:none;

    min-height:46px;
    max-width:280px;

    padding:0 12px;

    color:#172a47;

    border:1px solid rgba(11,77,219,.16);
    border-radius:13px;

    background:#fff;

    font-family:"Inter",sans-serif;
    font-size:.76rem;
}


/* Three active levels */

.premium-level-grid{
  display: grid;
  align-items: start;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 15px;
  margin-top: 23px;
}


/* Level cards */

.premium-level-card{
  --level-accent: #0B4DDB;
  --level-rgb: 11,77,219;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  min-width: 0;
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 22px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 22px;
  background: radial-gradient(
            circle at 100% 0%,
            rgba(var(--level-rgb),.17),
            transparent 39%
        ),
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(239,246,255,.96)
        );
  box-shadow: 0 24px 55px rgba(0,0,0,.22),
        inset 0 1px 0 #fff;
}
.premium-level-times{
  display: grid;
  gap: 7px;
  margin-top: 11px;
  padding: 11px 13px;
  border: 1px solid rgba(16,39,76,.08);
  border-radius: 13px;
  background: rgba(255,255,255,.66);
}

.premium-level-time-row{
  line-height: 1.35;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  font-family: "Inter",sans-serif;
  font-size: .69rem;
}

.premium-level-time-row span{
  color: #485a74;
  font-weight: 600;
}

.premium-level-time-row strong{
  color: var(--level-accent);
  font-weight: 800;
  white-space: nowrap;
}

.premium-level-card--a1{
    --level-accent:#11a966;
    --level-rgb:17,169,102;
}

.premium-level-card--a2{
    --level-accent:#00a9cd;
    --level-rgb:0,169,205;
}

.premium-level-card--b1{
    --level-accent:#e86c14;
    --level-rgb:232,108,20;
}

.premium-level-card::before{
    content:"";

    position:absolute;
    top:0;
    left:0;
    right:0;

    height:4px;

    background:
        linear-gradient(
            90deg,
            var(--level-accent),
            rgba(var(--level-rgb),.32)
        );
}

.premium-level-card::after{
    content:"";

    position:absolute;
    z-index:3;

    top:-20%;
    bottom:-20%;
    left:-55%;

    width:26%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.05),
            rgba(255,255,255,.48),
            rgba(255,255,255,.05),
            transparent
        );

    transform:skewX(-18deg);

    pointer-events:none;

    transition:
        left .8s cubic-bezier(.22,.61,.36,1);
}

.premium-level-card:hover{
    transform:translateY(-6px);

    border-color:rgba(var(--level-rgb),.34);

    box-shadow:
        0 30px 65px rgba(2,13,39,.14),
        0 12px 30px rgba(var(--level-rgb),.11),
        inset 0 1px 0 rgba(255,255,255,1);
}

.premium-level-card:hover::after{
    left:125%;
}


/* Card header */

.premium-level-card-header{
    display:block;
    width:100%;
    min-height:0;
    position:relative;
    z-index:2;
}
.premium-level-times{
    margin-top:18px;
}
.premium-level-name{
    display:flex;
    align-items:center;
    gap:7px;

    color:var(--level-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.65rem;
    font-weight:700;
    letter-spacing:.12em;
    line-height:1.3;
    text-transform:uppercase;
}

.premium-level-dot{
    width:8px;
    height:8px;

    flex-shrink:0;

    border-radius:50%;
    background:var(--level-accent);

    box-shadow:
        0 0 13px rgba(var(--level-rgb),.50);
}

.premium-level-card h3{
  margin: 7px 0 0;
  color: #0b3698;
  font-family: "Montserrat",sans-serif;
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -.035em;
  margin-top: 7px;
  font-size: 1.65rem;
}

.premium-level-promise{
    width:100%;
    max-width:none;

    margin:5px 0 0;

    color:#667790;

    font-family:"Inter",sans-serif;
    font-size:.75rem;
    line-height:1.42;
}


/* Status */

.premium-level-status{
    position:absolute;
top:0;
right:0;
    display:inline-flex;
    align-items:center;
    gap:6px;

    flex-shrink:0;

    padding:6px 9px;

    border-radius:999px;

    font-family:"Montserrat",sans-serif;
    font-size:.57rem;
    font-weight:700;
    line-height:1.1;
    letter-spacing:.04em;
    text-transform:uppercase;

    white-space:nowrap;
}
.premium-level-name,
.premium-level-card h3{
    max-width:calc(100% - 145px);
}

.premium-level-status > span{
    width:7px;
    height:7px;

    border-radius:50%;
}

.premium-level-status--limited{
    color:#ca5710;
    background:rgba(232,108,20,.09);
}

.premium-level-status--limited > span{
    background:#e86c14;
    box-shadow:0 0 10px rgba(232,108,20,.45);
}

.premium-level-status--open{
    color:#078848;
    background:rgba(17,169,102,.10);
}

.premium-level-status--open > span{
    background:#11a966;
    box-shadow:0 0 10px rgba(17,169,102,.45);
}

.premium-level-status--new{
    color:#cf5410;
    background:rgba(232,108,20,.09);
}

.premium-level-status--new > span{
    background:#e86c14;
    box-shadow:0 0 10px rgba(232,108,20,.45);
}


/* Core benefits */

.premium-level-core{
    display:grid;
    gap:7px;

    margin-top:16px;
}

.premium-level-core-item{
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    align-items:center;
    gap:9px;

    min-height:43px;
    padding:7px 9px;

    border:1px solid rgba(var(--level-rgb),.09);
    border-radius:12px;

    background:rgba(var(--level-rgb),.035);
}

.premium-level-core-item svg{
    width:17px;
    height:17px;

    justify-self:center;

    color:var(--level-accent);
}

.premium-level-core-item span{
    color:#687a92;

    font-family:"Inter",sans-serif;
    font-size:.65rem;
    line-height:1.32;
}

.premium-level-core-item strong{
    display:block;

    color:#1b304e;

    font-family:"Montserrat",sans-serif;
    font-size:.68rem;
    font-weight:700;
}


/* Upcoming lessons */

.premium-upcoming{
    margin-top:16px;
}

.premium-upcoming-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;

    margin-bottom:9px;
}

.premium-upcoming-heading span{
    display:block;

    color:#1b304e;

    font-family:"Montserrat",sans-serif;
    font-size:.68rem;
    font-weight:700;
}

.premium-upcoming-heading small{
    display:block;

    margin-top:2px;

    color:#8491a6;

    font-family:"Inter",sans-serif;
    font-size:.56rem;
}

.premium-upcoming-arrows{
    display:flex;
    gap:5px;
}

.premium-upcoming-arrows button{
    width:29px;
    height:29px;

    display:grid;
    place-items:center;

    padding:0;

    color:var(--level-accent);

    border:1px solid rgba(var(--level-rgb),.13);
    border-radius:9px;

    background:rgba(var(--level-rgb),.045);

    cursor:pointer;

    transition:
        transform .2s ease,
        background .2s ease;
}

.premium-upcoming-arrows button:hover{
    transform:translateY(-1px);
    background:rgba(var(--level-rgb),.10);
}

.premium-upcoming-arrows svg{
    width:14px;
    height:14px;
}


/* Horizontal schedule */

.premium-live-strip{
    display:flex;
    gap:8px;

    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;

    padding:2px 1px 6px;
}

.premium-live-strip::-webkit-scrollbar{
    display:none;
}

.premium-live-card{
    box-sizing:border-box;

    flex:0 0 calc(100% - 16px);
    min-width:0;

    scroll-snap-align:start;

    padding:12px;

    border:1px solid rgba(var(--level-rgb),.14);
    border-radius:14px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.94),
            rgba(var(--level-rgb),.035)
        );

    box-shadow:
        0 9px 20px rgba(2,13,39,.055);
}

.premium-live-card--next{
    border-color:rgba(var(--level-rgb),.28);

    box-shadow:
        0 10px 25px rgba(var(--level-rgb),.09);
}

.premium-live-badge{
    display:inline-flex;
    align-items:center;
    gap:5px;

    margin-bottom:7px;
    padding:4px 7px;

    color:var(--level-accent);

    border-radius:999px;

    background:rgba(var(--level-rgb),.08);

    font-family:"Montserrat",sans-serif;
    font-size:.52rem;
    font-weight:700;
    line-height:1;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.premium-live-badge::before{
    content:"";

    width:5px;
    height:5px;

    border-radius:50%;
    background:var(--level-accent);

    box-shadow:
        0 0 8px rgba(var(--level-rgb),.42);
}

.premium-live-date{
    color:var(--level-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.58rem;
    font-weight:700;
    letter-spacing:.08em;
    line-height:1.3;
    text-transform:uppercase;
}


.premium-live-topic{
    margin:5px 0 0;

    color:#172b49;

    font-family:"Montserrat",sans-serif;
    font-size:.83rem;
    font-weight:800;
    line-height:1.28;
}

.premium-live-meta{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;

    margin-top:8px;

    color:#687a92;

    font-family:"Inter",sans-serif;
    font-size:.61rem;
    line-height:1.3;
}

.premium-live-meta span{
    display:inline-flex;
    align-items:center;
    gap:4px;
}

.premium-live-meta span + span::before{
    content:"";

    width:3px;
    height:3px;

    margin-right:3px;

    border-radius:50%;
    background:#a2aec0;
}


/* Loading/error */

.premium-schedule-status{
    margin:6px 0 0;

    color:#7a899e;

    font-family:"Inter",sans-serif;
    font-size:.62rem;
    line-height:1.4;
}

.premium-schedule-status:empty{
    display:none;
}


/* Level actions */

.premium-level-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:7px;

    margin-top:13px;
}

.premium-level-enrol{
  box-sizing: border-box;
  padding: 0 18px;
  font-family: "Montserrat",sans-serif;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 56px;
  margin-top: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #07265f;
  border-radius: 15px;
  background: linear-gradient(
            135deg,
            #ffe35b,
            #ffc914
        );
  box-shadow: 0 15px 32px rgba(255,201,20,.28);
  font-size: .82rem;
  font-weight: 800;
}



.premium-level-enrol::before{
    content:"";

    position:absolute;
    top:0;
    bottom:0;
    left:-60%;

    width:38%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.48),
            transparent
        );

    transform:skewX(-20deg);

    transition:left .55s ease;
}

.premium-level-enrol:hover::before{
    left:125%;
}

.premium-level-full-schedule:hover,
.premium-level-enrol:hover{
    transform:translateY(-2px);
}

.premium-level-enrol:hover{
    box-shadow:
        0 17px 34px rgba(255,201,20,.34);
}

.premium-level-actions svg{
    width:15px;
    height:15px;
}


/* Homework */

.premium-homework-strip{
    box-sizing:border-box;

    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    align-items:center;
    gap:12px;

    margin-top:15px;
    padding:13px 16px;

    border:1px solid rgba(11,77,219,.10);
    border-radius:17px;

    background:rgba(255,255,255,.68);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    box-shadow:
        0 14px 30px rgba(2,13,39,.065);
}

.premium-homework-icon{
    width:42px;
    height:42px;

    display:grid;
    place-items:center;

    color:#0B4DDB;

    border-radius:12px;

    background:rgba(11,77,219,.08);
}

.premium-homework-icon svg{
    width:19px;
    height:19px;
}

.premium-homework-strip strong{
    display:block;

    color:#15305b;

    font-family:"Montserrat",sans-serif;
    font-size:.75rem;
    font-weight:800;
}

.premium-homework-strip p{
    margin:3px 0 0;

    color:#697b93;

    font-family:"Inter",sans-serif;
    font-size:.66rem;
    line-height:1.4;
}

.premium-homework-badge{
    padding:6px 10px;

    color:#0B4DDB;

    border-radius:999px;

    background:rgba(11,77,219,.075);

    font-family:"Montserrat",sans-serif;
    font-size:.58rem;
    font-weight:700;
    text-transform:uppercase;
}


/* Advanced interest */

.premium-advanced-interest{
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 46px minmax(0,1fr);
  align-items: center;
  gap: 14px;
  padding: 15px 17px;
  border: 1px solid rgba(124,58,237,.14);
  border-radius: 18px;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  margin-top: 13px;
  border-color: rgba(255,255,255,.14);
  background: radial-gradient(
            circle at 100% 0%,
            rgba(124,58,237,.22),
            transparent 42%
        ),
        rgba(255,255,255,.09);
  box-shadow: 0 15px 35px rgba(0,0,0,.14);
}

.premium-advanced-icon{
    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    color:#7C3AED;

    border-radius:13px;

    background:rgba(124,58,237,.09);
}

.premium-advanced-icon svg{
    width:20px;
    height:20px;
}

.premium-advanced-copy > span{
    color:#7C3AED;

    font-family:"Montserrat",sans-serif;
    font-size:.56rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.premium-advanced-copy h3{
  margin: 3px 0 0;
  font-family: "Montserrat",sans-serif;
  font-size: .9rem;
  font-weight: 800;
  color: #fff;
}

.premium-advanced-copy p{
  max-width: 700px;
  margin: 4px 0 0;
  font-family: "Inter",sans-serif;
  font-size: .66rem;
  line-height: 1.45;
  color: rgba(255,255,255,.68);
}

.premium-advanced-link{
    display:inline-flex;
    align-items:center;
    gap:5px;

    width:max-content;

    margin-top:8px;

    color:rgba(255,255,255,.72);
    text-decoration:none;

    border-bottom:1px solid rgba(255,255,255,.22);

    font-family:"Montserrat",sans-serif;
    font-size:.58rem;
    font-weight:600;
    line-height:1.3;

    transition:
        color .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.premium-advanced-link svg{
    width:12px;
    height:12px;
}

.premium-advanced-link:hover{
    color:#fff;
    border-color:rgba(255,255,255,.55);

    transform:translateX(2px);
}


.premium-schedule-preview{
    padding:34px 0 38px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(11,77,219,.08),
            transparent 34%
        ),
        linear-gradient(
            180deg,
            #f8fbff,
            #eef4ff
        );
}

.premium-schedule-preview-heading{
    text-align:center;
}

.premium-schedule-preview-heading > span{
    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.premium-schedule-preview-heading h2{
    margin:5px 0 0;

    color:#0b3698;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2rem,3.6vw,3.35rem);
    font-weight:800;
    line-height:1.04;
}

.premium-schedule-preview-heading h2 em{
    color:#0B4DDB;
    font-style:italic;
}

.premium-schedule-preview-heading p{
    max-width:700px;
    margin:10px auto 0;

    color:#64758d;

    font-family:"Inter",sans-serif;
    font-size:.84rem;
    line-height:1.5;
}

.premium-schedule-toolbar{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;

    margin-top:15px;
}

.premium-schedule-levels{
    display:grid;
    gap:12px;

    margin-top:20px;
}

.premium-schedule-level{
    --level-accent:#0B4DDB;
    --level-rgb:11,77,219;

    padding:17px;

    border:1px solid rgba(var(--level-rgb),.14);
    border-radius:18px;

    background:rgba(255,255,255,.78);

    box-shadow:
        0 14px 32px rgba(2,13,39,.07);
}

.premium-schedule-level--a1{
    --level-accent:#11a966;
    --level-rgb:17,169,102;
}

.premium-schedule-level--a2{
    --level-accent:#00a9cd;
    --level-rgb:0,169,205;
}

.premium-schedule-level--b1{
    --level-accent:#e86c14;
    --level-rgb:232,108,20;
}

.premium-schedule-level-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;

    margin-bottom:10px;
}

.premium-schedule-level-header span{
    color:var(--level-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.58rem;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.premium-schedule-level-header h3{
    margin:3px 0 0;

    color:#18315a;

    font-family:"Montserrat",sans-serif;
    font-size:.9rem;
    font-weight:800;
}

.premium-schedule-level-header a{
    display:inline-flex;
    align-items:center;
    gap:6px;

    color:var(--level-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.62rem;
    font-weight:700;
    text-decoration:none;
}

.premium-schedule-level-header svg{
    width:14px;
    height:14px;
}
/* =========================================
   FINAL SIMPLE ENROLMENT OVERRIDES
========================================= */















.premium-level-test svg{
    width:18px;
    height:18px;
}











.premium-level-highlight{
    margin-top:14px;
    padding:12px 13px;

    border:1px solid rgba(var(--level-rgb),.12);
    border-radius:13px;

    background:rgba(var(--level-rgb),.055);
}

.premium-level-highlight strong{
    display:block;

    color:var(--level-accent);

    font-family:"Montserrat",sans-serif;
    font-size:1rem;
    font-weight:800;
}

.premium-level-highlight span{
    display:block;

    margin-top:1px;

    color:#62738c;
    font-family:"Inter",sans-serif;
    font-size:.67rem;
}











.premium-level-enrol svg{
    width:17px;
    height:17px;
}

.premium-enrol-time-note{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;

    margin:13px auto 0;

    color:rgba(255,255,255,.68);

    font-family:"Inter",sans-serif;
    font-size:.65rem;
    line-height:1.4;
    text-align:center;
}

.premium-enrol-time-note svg{
    width:14px;
    height:14px;
    flex-shrink:0;
}






/* =========================================
   FINAL COLOURED LEVEL CARDS
========================================= */

/* Cards shared styling */

.premium-enrol .premium-level-card{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    padding:22px;

    color:#fff;

    border:1px solid rgba(255,255,255,.20);
    border-radius:22px;

    box-shadow:
        0 24px 55px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.20);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    transition:
        transform .3s cubic-bezier(.22,.61,.36,1),
        box-shadow .3s ease,
        border-color .3s ease;
}


/* A1 — green */

.premium-enrol .premium-level-card--a1{
    --level-accent:#7dffc1;
    --level-rgb:34,211,139;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(107,255,194,.30),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            #159d68 0%,
            #08725d 48%,
            #064d49 100%
        );
}


/* A2 — blue */

.premium-enrol .premium-level-card--a2{
    --level-accent:#8cecff;
    --level-rgb:39,215,247;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(108,231,255,.32),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            #1578ec 0%,
            #1055d1 48%,
            #17358e 100%
        );
}


/* B1/B2 — orange into purple */

.premium-enrol .premium-level-card--b1{
    --level-accent:#ffe0a1;
    --level-rgb:255,146,67;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(255,205,128,.32),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            #f17b26 0%,
            #d65158 48%,
            #673ab7 100%
        );
}


/* Remove the old pale top stripe */

.premium-enrol .premium-level-card::before{
    height:3px;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.85),
            rgba(255,255,255,.16)
        );
}


/* Stronger hover */

.premium-enrol .premium-level-card:hover{
    transform:translateY(-7px);

    border-color:rgba(255,255,255,.34);

    box-shadow:
        0 34px 72px rgba(0,0,0,.34),
        0 12px 34px rgba(var(--level-rgb),.20),
        inset 0 1px 0 rgba(255,255,255,.28);
}


/* Level label */

.premium-enrol .premium-level-name{
    color:rgba(255,255,255,.90);
}

.premium-enrol .premium-level-dot{
    background:var(--level-accent);

    box-shadow:
        0 0 14px rgba(var(--level-rgb),.72);
}


/* Main card title */

.premium-enrol .premium-level-card h3{
    color:#fff;

    text-shadow:
        0 3px 14px rgba(0,0,0,.16);
}


/* Description */

.premium-enrol .premium-level-promise{
    color:rgba(255,255,255,.80);
}


/* Availability badges */

.premium-enrol .premium-level-status{
    color:#fff;

    border:1px solid rgba(255,255,255,.20);

    background:rgba(0,0,0,.13);

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12);
}

.premium-enrol .premium-level-status > span{
    background:var(--level-accent);

    box-shadow:
        0 0 10px rgba(var(--level-rgb),.72);
}


/* 20-live-lessons highlight */

.premium-enrol .premium-level-highlight{
    margin-top:14px;
    padding:14px;

    border:1px solid rgba(255,255,255,.18);
    border-radius:15px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.15),
            rgba(255,255,255,.07)
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12);

    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}

.premium-enrol .premium-level-highlight strong{
    color:#fff;

    font-size:1.08rem;

    text-shadow:
        0 2px 10px rgba(0,0,0,.13);
}

.premium-enrol .premium-level-highlight span{
    color:rgba(255,255,255,.73);
}


/* Fixed lesson times */

.premium-enrol .premium-level-times{
    margin-top:11px;
    padding:12px 14px;

    border:1px solid rgba(255,255,255,.18);
    border-radius:15px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.15),
            rgba(255,255,255,.07)
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.11);

    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}

.premium-enrol .premium-level-time-row span{
    color:rgba(255,255,255,.78);
}

.premium-enrol .premium-level-time-row strong{
    color:#fff;

    text-shadow:
        0 2px 9px rgba(0,0,0,.14);
}


/* Large white Join buttons */

.premium-enrol .premium-level-enrol{
    position:relative;
    overflow:hidden;

    width:100%;
    min-height:56px;
    margin-top:16px;

    color:#0b3698;

    border:1px solid rgba(255,255,255,.75);
    border-radius:15px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,1),
            rgba(242,247,255,.95)
        );

    box-shadow:
        0 16px 34px rgba(0,0,0,.20),
        inset 0 1px 0 #fff;

    font-size:.82rem;
    font-weight:800;

    transition:
        transform .23s ease,
        box-shadow .23s ease,
        filter .23s ease;
}


/* Moving glass reflection */

.premium-enrol .premium-level-enrol::before{
    content:"";

    position:absolute;
    top:0;
    bottom:0;
    left:-65%;

    width:38%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.78),
            transparent
        );

    transform:skewX(-20deg);

    transition:left .55s ease;
}

.premium-enrol .premium-level-enrol:hover{
    transform:translateY(-3px);
    filter:brightness(1.03);

    box-shadow:
        0 21px 42px rgba(0,0,0,.25),
        0 0 25px rgba(255,255,255,.16),
        inset 0 1px 0 #fff;
}

.premium-enrol .premium-level-enrol:hover::before{
    left:130%;
}


/* Keep all content above decorative effects */

.premium-enrol .premium-level-card-header,
.premium-enrol .premium-level-highlight,
.premium-enrol .premium-level-times,
.premium-enrol .premium-level-enrol{
    position:relative;
    z-index:2;
}


/* Decorative glow inside each card */

.premium-enrol .premium-level-card .premium-level-glow{
    display:block;

    position:absolute;
    z-index:0;

    top:-100px;
    right:-100px;

    width:260px;
    height:260px;

    border-radius:50%;

    background:rgba(var(--level-rgb),.42);

    filter:blur(85px);

    opacity:.48;

    pointer-events:none;
}


/* Mobile refinements */


/* =========================================
   MAIN 20-LESSON SELLING POINT
========================================= */

.premium-enrol-main-offer{
    position:relative;
    overflow:hidden;

    box-sizing:border-box;
    width:min(730px,calc(100% - 30px));

    display:grid;
    grid-template-columns:54px minmax(0,1fr) auto;
    align-items:center;
    gap:15px;

    margin:19px auto 0;
    padding:13px 17px;

    color:#fff;

    border:1px solid rgba(255,255,255,.24);
    border-radius:17px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(39,215,247,.22),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            rgba(20,75,181,.90),
            rgba(6,34,101,.93)
        );

    box-shadow:
        0 18px 42px rgba(0,0,0,.25),
        0 0 34px rgba(11,77,219,.17),
        inset 0 1px 0 rgba(255,255,255,.18);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
}

/* Moving glass reflection */

.premium-enrol-main-offer::before{
    content:"";

    position:absolute;
    top:0;
    bottom:0;
    left:-45%;

    width:25%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.28),
            transparent
        );

    transform:skewX(-20deg);

    animation:premiumMainOfferShine 5.5s ease-in-out infinite;
}

@keyframes premiumMainOfferShine{
    0%,
    60%{
        left:-45%;
    }

    82%,
    100%{
        left:125%;
    }
}

.premium-enrol-main-offer-icon{
    width:54px;
    height:54px;

    display:grid;
    place-items:center;

    color:#FFD21F;

    border:1px solid rgba(255,210,31,.28);
    border-radius:14px;

    background:rgba(255,210,31,.10);

    box-shadow:
        0 0 24px rgba(255,210,31,.10),
        inset 0 1px 0 rgba(255,255,255,.12);
}

.premium-enrol-main-offer-icon svg{
    width:24px;
    height:24px;
}

.premium-enrol-main-offer-copy{
    min-width:0;
}

.premium-enrol-main-offer-copy strong{
    display:block;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:1.08rem;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.02em;
}

.premium-enrol-main-offer-copy span{
    display:block;

    margin-top:4px;

    color:rgba(255,255,255,.70);

    font-family:"Inter",sans-serif;
    font-size:.7rem;
    line-height:1.3;
}

.premium-enrol-main-offer-price{
    padding:8px 12px;

    color:#08265f;

    border-radius:999px;

    background:
        linear-gradient(
            135deg,
            #ffe35b,
            #ffc914
        );

    box-shadow:
        0 9px 22px rgba(255,201,20,.22);

    font-family:"Montserrat",sans-serif;
    font-size:.67rem;
    font-weight:800;
    line-height:1.2;

    white-space:nowrap;
}

/* Bring the cards closer to the banner */

.premium-enrol-main-offer + .premium-level-grid{
    margin-top:15px;
}

.premium-enrol-title-first{
    white-space:nowrap;
}


.premium-level-test-leading-icon{
    position:absolute;
    left:18px;
}

.premium-level-test-arrow{
    position:absolute;
    right:18px;
}

.premium-level-test > span{
    display:block;
    text-align:center;
}
/* Clickable level times */

.premium-level-times-link{
    color:inherit;
    text-decoration:none;
    cursor:pointer;

    transition:
        transform .22s ease,
        background .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.premium-level-times-link:hover,
.premium-level-times-link:focus-visible{
    transform:translateY(-2px);

    border-color:rgba(255,255,255,.32);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.21),
            rgba(255,255,255,.10)
        );

    box-shadow:
        0 12px 26px rgba(0,0,0,.13),
        inset 0 1px 0 rgba(255,255,255,.16);
}

.premium-level-times-link:focus-visible{
    outline:2px solid rgba(255,255,255,.82);
    outline-offset:3px;
}

.premium-level-times-hint{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;

    margin-top:8px;
    padding-top:8px;

    color:rgba(255,255,255,.68);

    border-top:1px solid rgba(255,255,255,.14);

    font-family:"Montserrat",sans-serif;
    font-size:.55rem;
    font-weight:600;
    line-height:1.2;
}

.premium-level-times-hint svg{
    width:12px;
    height:12px;
}
/* Fix level-test icon spacing on desktop */

@media (min-width:901px){

    .premium-level-test{
        min-width:230px;
        padding-left:54px;
        padding-right:54px;
    }

    .premium-level-test-leading-icon{
        left:20px;
    }

    .premium-level-test-arrow{
        right:20px;
    }
}
/* =========================================
   FINAL SEAMLESS HOW → ENROLMENT TRANSITION
   KEEP THIS AS THE LAST CSS IN THE FILE
========================================= */

/*
 * The bottom of How it Works gradually becomes
 * the exact same blue used at the top of Enrolment.
 */


/*
 * This begins with exactly #0b367f,
 * matching the final colour above.
 * It then returns naturally to the existing navy.
 */


/* Date + Next lesson badge */

.premium-live-header{

    display:flex;
    justify-content:space-between;
    align-items:center;

    gap:10px;

    margin-bottom:10px;

}

.premium-live-header .premium-live-date{

    margin-bottom:0;

}

.premium-live-header .premium-live-badge{

    margin:0;

    flex-shrink:0;

}
/* =========================================
   PREMIUM LIVE SCHEDULE V2
========================================= */

.premium-schedule-v2{
    --schedule-accent:#32d98b;
    --schedule-accent-soft:#8affc6;
    --schedule-rgb:50,217,139;

    position:relative;
    isolation:isolate;
    overflow:hidden;

    padding:48px 0 92px;

    color:#fff;

    /*
     * Starts with the navy from the enrolment
     * section and fades into the white section below.
     */
    background:
        radial-gradient(
            circle at 84% 14%,
            rgba(39,215,247,.17),
            transparent 34%
        ),
        radial-gradient(
            circle at 12% 46%,
            rgba(11,77,219,.22),
            transparent 42%
        ),
linear-gradient(
    180deg,
    #061a4b 0%,
    #082b75 20%,
    #0b4ddb 52%,
    #79a9ed 76%,
    #dce9fb 91%,
    #f8faff 100%
);
}


/* Level colour variables */

.premium-schedule-v2[data-level="a1"]{
    --schedule-accent:#32d98b;
    --schedule-accent-soft:#8affc6;
    --schedule-rgb:50,217,139;
}

.premium-schedule-v2[data-level="a2"]{
    --schedule-accent:#27d7f7;
    --schedule-accent-soft:#94f0ff;
    --schedule-rgb:39,215,247;
}

.premium-schedule-v2[data-level="b1"]{
    --schedule-accent:#ff8a3d;
    --schedule-accent-soft:#ffd09e;
    --schedule-rgb:255,138,61;
}


/* Main wrapper */

.premium-schedule-v2-inner{
    position:relative;
    z-index:2;
}


/* Heading */

.premium-schedule-v2-heading{
    text-align:center;
}

.premium-schedule-v2-label{
    display:block;

    margin:0 0 8px;

    color:var(--schedule-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.69rem;
    font-weight:800;
    letter-spacing:.19em;
    line-height:1.2;
    text-transform:uppercase;

    transition:color .3s ease;
}

.premium-schedule-v2-heading h2{
    max-width:870px;

    margin:0 auto;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.55rem,5vw,4.35rem);
    font-weight:800;
    line-height:.97;
    letter-spacing:-.045em;
}

.premium-schedule-v2-heading h2 em{
    color:var(--schedule-accent);

    font-family:Georgia,"Times New Roman",serif;
    font-weight:500;
    letter-spacing:-.035em;

    transition:color .3s ease;
}

.premium-schedule-v2-heading p{
    max-width:670px;

    margin:13px auto 0;

    color:rgba(255,255,255,.76);

    font-family:"Inter",sans-serif;
    font-size:.82rem;
    line-height:1.52;
}


/* Timezone */

.premium-schedule-v2-toolbar{
    position:relative;

    width:max-content;

    margin:16px auto 0;
}

.premium-schedule-v2 .premium-timezone-button{
    box-sizing:border-box;

    min-width:190px;
    min-height:48px;
    padding:8px 14px;

    display:grid;
    grid-template-columns:18px minmax(0,1fr) 16px;
    align-items:center;
    gap:9px;

    color:#fff;

    border:1px solid rgba(255,255,255,.18);
    border-radius:14px;

    background:rgba(3,24,69,.43);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        0 12px 28px rgba(0,0,0,.13);

    cursor:pointer;
}

.premium-schedule-v2 .premium-timezone-button > svg{
    width:16px;
    height:16px;
}

.premium-schedule-v2 .premium-timezone-button span{
    color:rgba(255,255,255,.69);

    font-family:"Inter",sans-serif;
    font-size:.64rem;
    line-height:1.25;
    text-align:left;
}

.premium-schedule-v2 .premium-timezone-button strong{
    display:block;

    margin-top:1px;

    color:var(--schedule-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.67rem;
    font-weight:800;

    transition:color .3s ease;
}

.premium-schedule-v2 .premium-timezone-select{
    position:absolute;
    z-index:30;

    top:calc(100% + 7px);
    left:0;

    display:none;

    box-sizing:border-box;
    width:100%;
    min-height:44px;
    padding:8px 10px;

    color:#10264b;

    border:1px solid rgba(255,255,255,.7);
    border-radius:12px;

    background:#fff;

    font-family:"Inter",sans-serif;
    font-size:.7rem;

    box-shadow:0 18px 38px rgba(0,0,0,.24);
}


/* Level tabs */

.premium-schedule-tabs{
    width:min(900px,calc(100% - 40px));

    margin:22px auto 0;

    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:4px;

    border-bottom:1px solid rgba(255,255,255,.15);
}

.premium-schedule-tab{
    position:relative;

    min-height:55px;
    padding:7px 12px 12px;

    color:rgba(255,255,255,.62);

    border:0;
    background:transparent;

    font-family:"Montserrat",sans-serif;
    text-align:center;

    cursor:pointer;

    transition:
        color .25s ease,
        background .25s ease;
}

.premium-schedule-tab span{
    display:block;

    font-size:.57rem;
    font-weight:500;
    letter-spacing:.05em;
    text-transform:uppercase;
}

.premium-schedule-tab strong{
    display:block;

    margin-top:3px;

    font-size:.76rem;
    font-weight:800;
}

.premium-schedule-tab::after{
    content:"";

    position:absolute;

    left:50%;
    right:50%;
    bottom:-1px;

    height:3px;

    border-radius:999px;

    background:var(--schedule-accent);

    box-shadow:
        0 0 17px rgba(var(--schedule-rgb),.60);

    transition:
        left .3s cubic-bezier(.22,.61,.36,1),
        right .3s cubic-bezier(.22,.61,.36,1),
        background .3s ease;
}

.premium-schedule-tab:hover{
    color:rgba(255,255,255,.88);
    background:rgba(255,255,255,.035);
}

.premium-schedule-tab.is-active{
    color:#fff;
}

.premium-schedule-tab.is-active::after{
    left:10%;
    right:10%;
}


/* Main transparent calendar */

.premium-schedule-calendar{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    box-sizing:border-box;
    width:min(1040px,calc(100% - 40px));

    margin:0 auto;
    padding:18px;

    border:1px solid rgba(255,255,255,.21);
    border-top:0;
    border-radius:0 0 22px 22px;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(var(--schedule-rgb),.17),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            rgba(7,39,107,.74),
            rgba(4,25,76,.66)
        );

    backdrop-filter:blur(24px) saturate(1.12);
    -webkit-backdrop-filter:blur(24px) saturate(1.12);

    box-shadow:
        0 25px 62px rgba(1,12,42,.25),
        inset 0 1px 0 rgba(255,255,255,.11);

    transition:
        background .35s ease,
        border-color .35s ease;
}


/* Soft glass reflection */

.premium-schedule-calendar::before{
    content:"";

    position:absolute;

    top:-30%;
    bottom:-30%;
    left:-38%;

    width:22%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.10),
            rgba(255,255,255,.23),
            rgba(255,255,255,.08),
            transparent
        );

    transform:skewX(-18deg);

    pointer-events:none;

    animation:
        premiumScheduleGlassSweep 8s ease-in-out infinite;
}

@keyframes premiumScheduleGlassSweep{
    0%,
    60%{
        left:-38%;
    }

    86%,
    100%{
        left:125%;
    }
}


/* Panels */

.premium-schedule-panel{
    position:relative;
    z-index:2;
}

.premium-schedule-panel[hidden]{
    display:none !important;
}

.premium-schedule-panel-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;

    margin-bottom:12px;
}

.premium-schedule-panel-level{
    display:block;

    margin-bottom:3px;

    color:var(--schedule-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.58rem;
    font-weight:800;
    letter-spacing:.13em;
    line-height:1.2;
    text-transform:uppercase;
}

.premium-schedule-panel-header h3{
    margin:0;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:1rem;
    font-weight:800;
    line-height:1.2;
}

.premium-schedule-panel-header a{
    display:inline-flex;
    align-items:center;
    gap:5px;

    color:var(--schedule-accent);
    text-decoration:none;

    font-family:"Montserrat",sans-serif;
    font-size:.61rem;
    font-weight:800;

    transition:
        color .2s ease,
        transform .2s ease;
}

.premium-schedule-panel-header a svg{
    width:13px;
    height:13px;
}

.premium-schedule-panel-header a:hover{
    color:#fff;
    transform:translateX(2px);
}


/* Horizontal lesson strip on PC and phone */

.premium-schedule-v2 .premium-live-strip{
    display:flex;
    gap:10px;

    width:100%;
    padding:2px 2px 10px;

    overflow-x:auto;
    overflow-y:hidden;

    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scroll-padding-left:2px;

    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;

    scrollbar-width:thin;
    scrollbar-color:
        var(--schedule-accent)
        rgba(255,255,255,.08);
}

@media (prefers-reduced-motion:reduce){
    .premium-swipe-hint{
        animation:none;
    }


    .premium-schedule-calendar::before{
        animation:none;
    }

    .premium-schedule-v2 .premium-live-strip{
        scroll-behavior:auto;
    }
}

.premium-schedule-v2 .premium-live-strip::-webkit-scrollbar{
    height:5px;
}

.premium-schedule-v2 .premium-live-strip::-webkit-scrollbar-track{
    border-radius:999px;
    background:rgba(255,255,255,.07);
}

.premium-schedule-v2 .premium-live-strip::-webkit-scrollbar-thumb{
    border-radius:999px;
    background:var(--schedule-accent);
}


/* Individual lesson */

.premium-schedule-v2 .premium-live-card{
    box-sizing:border-box;
flex:0 0 calc((100% - 40px) / 5);
min-width:calc((100% - 40px) / 5);
    min-height:105px;

    padding:13px 15px;

    color:#fff;

    border:1px solid rgba(255,255,255,.14);
    border-radius:13px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.105),
            rgba(255,255,255,.045)
        );

    backdrop-filter:blur(13px);
    -webkit-backdrop-filter:blur(13px);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08);

    scroll-snap-align:start;
    scroll-snap-stop:always;

    transition:
        transform .22s ease,
        border-color .22s ease,
        background .22s ease,
        box-shadow .22s ease;
}

.premium-schedule-v2 .premium-live-card:hover{
    transform:translateY(-2px);

    border-color:rgba(var(--schedule-rgb),.48);

    background:
        linear-gradient(
            145deg,
            rgba(var(--schedule-rgb),.16),
            rgba(255,255,255,.055)
        );

    box-shadow:
        0 13px 27px rgba(0,0,0,.13),
        inset 0 1px 0 rgba(255,255,255,.10);
}

.premium-schedule-v2 .premium-live-card--next{
    border-color:rgba(var(--schedule-rgb),.48);

    background:
        linear-gradient(
            145deg,
            rgba(var(--schedule-rgb),.20),
            rgba(255,255,255,.06)
        );

    box-shadow:
        0 0 25px rgba(var(--schedule-rgb),.08),
        inset 0 1px 0 rgba(255,255,255,.10);
}


/* Date and Next badge */

.premium-schedule-v2 .premium-live-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;

    margin-bottom:8px;
}

.premium-schedule-v2 .premium-live-date{
    min-width:0;
    margin:0;

    color:var(--schedule-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.58rem;
    font-weight:800;
    letter-spacing:.07em;
    line-height:1.2;
    text-transform:uppercase;
}

.premium-schedule-v2 .premium-live-badge{
    flex-shrink:0;

    display:inline-flex;
    align-items:center;
    gap:4px;

    margin:0;
    padding:4px 7px;

    color:var(--schedule-accent);

    border:1px solid rgba(var(--schedule-rgb),.24);
    border-radius:999px;

    background:rgba(var(--schedule-rgb),.11);

    font-family:"Montserrat",sans-serif;
    font-size:.48rem;
    font-weight:800;
    line-height:1;
    text-transform:uppercase;
    white-space:nowrap;
}

.premium-schedule-v2 .premium-live-badge > span{
    width:5px;
    height:5px;

    border-radius:50%;

    background:currentColor;

    box-shadow:
        0 0 8px currentColor;
}


/* Lesson title and time */

.premium-schedule-v2 .premium-live-topic{
    margin:0;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:.82rem;
    font-weight:800;
    line-height:1.25;
}

.premium-schedule-v2 .premium-live-meta{
    display:flex;
    align-items:center;
    gap:7px;

    margin-top:8px;

    color:rgba(255,255,255,.63);

    font-family:"Inter",sans-serif;
    font-size:.59rem;
    line-height:1.25;
}

.premium-schedule-v2 .premium-live-meta span + span::before{
    content:"";

    display:inline-block;

    width:3px;
    height:3px;
    margin-right:7px;
    vertical-align:middle;

    border-radius:50%;

    background:rgba(255,255,255,.42);
}


/* Loading/error text */

.premium-schedule-v2 .premium-schedule-status{
    margin:8px 0 0;

    color:rgba(255,255,255,.62);

    font-family:"Inter",sans-serif;
    font-size:.62rem;
    line-height:1.4;
}


/* Scroll instruction */

.premium-schedule-scroll-hint{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    width:max-content;
    max-width:calc(100% - 30px);

    margin:10px auto 0;

    color:#42536d;
    font-weight:400;
    font-family:"Inter",sans-serif;
    font-size:.61rem;
    line-height:1.35;
}

@media(max-width:900px){
    /* Mobile student proof */
    .premium-badge-secondary{
  display:flex;
  width:max-content;
  margin-top:10px;
}
 .premium-method-details-content{
    width:calc(100% - 16px);
    margin-left:auto;
    margin-right:auto;
    border-radius:12px;
}

.premium-method-details.is-visible .premium-method-details-content{
    margin-top:12px;
    padding:14px;
}

   .premium-method-details-content p{
    font-size:.82rem;
    line-height:1.55;
}

.premium-method-price{
    display:block;
    width:max-content;
    max-width:calc(100% - 32px);

    margin:14px auto 0;
    padding:7px 10px;

    font-size:.72rem;
    white-space:nowrap;
}
.premium-method-title{
    white-space:normal;
}
.premium-method-cta{
    display:flex;
    flex-direction:column;
    align-items:center;
}

.premium-student-proof{
  width:100%;
  min-width:0;
  height:68px;

  justify-content:flex-start;
  gap:8px;

  padding-left:14px;
  padding-right:14px;
}
.student-count{
  margin-left:-6px;
}
.premium-method-video-frame{
    width:82%;
    max-width:500px;
    border-radius:13px;
}

.student-avatars{

    flex:1;

    position:relative;

    min-width:0;

    height:48px;

}

.premium-student-proof:hover,
.premium-student-proof:focus-visible,
.premium-student-proof.is-expanded{
  width:100%;
  height:120px;
}

.premium-student-proof:hover .student-avatars,
.premium-student-proof:focus-visible .student-avatars,
.premium-student-proof.is-expanded .student-avatars{
  width:245px;
  height:94px;
}

.premium-student-proof:hover .student-avatars img,
.premium-student-proof:focus-visible .student-avatars img,
.premium-student-proof.is-expanded .student-avatars img{
  --avatar-size:40px;

  transform:
    translateX(calc(var(--column) * 42px))
    translateY(calc(var(--row) * 44px));
}

.premium-proof-logo{
  width:34px;
  height:34px;
}

.premium-benefit-image{
  width:28px;
  height:28px;
}
/* =========================
   MOBILE HEADER
========================= */
  .premium-header{
    height:56px;
  }

  .premium-nav{
    position:relative;
    box-sizing:border-box;
    width:100%;
    height:100%;
    margin:0;
    padding:0 10px;

    display:grid;
    grid-template-columns:40px 40px 1fr auto;
    align-items:center;
    column-gap:7px;
    background:none !important;
  }


/* Burger */

.premium-menu-button{
  position:relative;
  z-index:60;

  grid-column:1;
  justify-self:start;
  align-self:center;

  box-sizing:border-box;
  width:40px;
  height:40px;
  padding:0;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.08);

  cursor:pointer;
}

.premium-menu-button span{
  display:block;
  width:21px;
  height:2px;
  margin:2.5px 0;

  background:#fff;
  border-radius:999px;

  transition:
    transform .25s ease,
    opacity .25s ease;
}

/* Burger becomes X */

.premium-menu-button[aria-expanded="true"] span:nth-child(1){
  transform:translateY(7px) rotate(45deg);
}

.premium-menu-button[aria-expanded="true"] span:nth-child(2){
  opacity:0;
}

.premium-menu-button[aria-expanded="true"] span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
}
.premium-menu-button:hover,
.premium-menu-button:focus-visible,
.premium-menu-button[aria-expanded="true"]{
  background:rgba(11,77,219,.25);
  border-color:rgba(69,126,255,.7);

  box-shadow:
    inset 0 0 0 1px rgba(11,77,219,.35),
    0 0 18px rgba(11,77,219,.4);
}

/* Logo */

.premium-brand{
  position:relative;
  z-index:60;

  grid-column:2;
  justify-self:start;
  align-self:center;

  display:flex;
  align-items:center;
  margin:0;
}

.premium-brand-logo{
  display:block;
  width:40px;
  height:40px;
  object-fit:contain;
}

.premium-brand-copy{
  display:none;
}

/* Language + Join now */

.premium-nav-actions{
  position:relative;
  z-index:60;

  grid-column:4;
  justify-self:end;
  align-self:center;

  display:flex;
  align-items:center;
  gap:7px;

  margin:0;
}

.premium-language{
    position:relative;
}
.lang-button span{
    transition:transform .2s;
}

.lang-button.is-open span{
    transform:rotate(180deg);
}
.lang-button{

    width:82px;
    height:40px;

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

    border:1px solid rgba(255,255,255,.14);
    border-radius:12px;

    background:rgba(255,255,255,.08);

    color:#fff;

    font:600 .68rem "Montserrat",sans-serif;

    cursor:pointer;

    transition:.2s;
}

.lang-button:hover{
    background:rgba(255,255,255,.12);
}

.lang-menu{

    position:absolute;

    top:48px;
    right:0;

    width:190px;

    display:flex;
    flex-direction:column;

    background:rgba(2,13,39,.97);

    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;

    backdrop-filter:blur(20px);

    box-shadow:0 20px 60px rgba(0,0,0,.4);

    opacity:0;
    visibility:hidden;

    transform:translateY(-8px);

    transition:.22s;
}

.lang-menu a{

    padding:13px 16px;

    color:#fff;
    text-decoration:none;

    font:.82rem "Montserrat",sans-serif;

    border-bottom:1px solid rgba(255,255,255,.08);

    transition:
        background .2s,
        color .2s,
        box-shadow .2s;
}
.lang-menu a:hover,
.lang-menu a:focus{

    background:rgba(11,77,219,.22);

    box-shadow:
        inset 0 0 0 1px rgba(11,77,219,.45),
        0 0 18px rgba(11,77,219,.35);

    color:#fff;
}

.lang-menu a:active{

    background:rgba(11,77,219,.35);

    box-shadow:
        inset 0 0 0 1px rgba(11,77,219,.6),
        0 0 24px rgba(11,77,219,.55);
}

.lang-menu a:last-child{
    border-bottom:0;
}

.lang-menu.is-open{

    opacity:1;
    visibility:visible;

    transform:translateY(0);

}


.premium-nav-cta{
  box-sizing:border-box;

  height:40px;
  min-height:40px;
  padding:0 11px;

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

  border-radius:12px;
  font-size:.67rem;
  white-space:nowrap;
  box-shadow:none;
}

/* Menu is removed from the header grid at all times */

.premium-nav-links{
    position:absolute;

    top:56px;
    left:10px;

    width:min(260px, calc(100vw - 20px));

    transform-origin:top left;
  box-sizing:border-box;
  margin:0;
  padding:12px 18px;

  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:0;

  background:rgba(2,13,39,.97);
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;

  box-shadow:0 24px 60px rgba(0,0,0,.42);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  transform:translateY(-14px) scale(.97);
  transform-origin:top left;

  transition:
    opacity .22s ease,
    transform .28s cubic-bezier(.22,.61,.36,1),
    visibility .22s;
}

.premium-nav-links.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;

  transform:translateY(0) scale(1);
}

.premium-nav-links a{
  box-sizing:border-box;
  width:100%;
  padding:15px 10px;

  color:#fff;
  text-decoration:none;
  font-size:.92rem;

  border-radius:10px;
border-bottom:none;
margin:2px 0;
  transition:
    background .2s,
    color .2s,
    box-shadow .2s,
    transform .15s;
}
.premium-nav-links a:hover,
.premium-nav-links a:focus-visible{
  background:rgba(11,77,219,.22);

  box-shadow:
    inset 0 0 0 1px rgba(11,77,219,.45),
    0 0 18px rgba(11,77,219,.35);

  color:#fff;
}

.premium-nav-links a:active{
  background:rgba(11,77,219,.35);

  box-shadow:
    inset 0 0 0 1px rgba(11,77,219,.6),
    0 0 24px rgba(11,77,219,.55);

  transform:scale(.98);
}
.premium-nav-links a:last-child{
  border-bottom:0;
}

/* MOBILE HERO */
.premium-hero{
  position:relative;
  height:auto;
  min-height:100svh;
  padding:0;
  overflow:hidden;
  background:#020d27;
}

/* Large photographic opening */
.premium-hero-photo{
  position:absolute;
  inset:0 0 auto;
  width:100%;
  height:620px;
  background-size:cover;
  background-position:64% center;
  background-repeat:no-repeat;
}

/* Image fades naturally into the dark content area */
.premium-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      180deg,
      rgba(2,13,38,.12) 0%,
      rgba(2,13,38,.12) 25%,
      rgba(2,13,38,.5) 48%,
      rgba(2,13,38,.94) 68%,
      #020d27 82%,
      #020d27 100%
    ),
    linear-gradient(
      90deg,
      rgba(2,13,38,.62) 0%,
      rgba(2,13,38,.14) 70%,
      rgba(2,13,38,.08) 100%
    );
}

/* Reset desktop absolute positioning */
.premium-hero-content{
  position:relative;
  top:auto;
  left:auto;
  transform:none;

  width:calc(100% - 34px);
  height:auto;
  margin:0 auto;
  padding:84px 0 28px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

/* Badge */
.premium-badge{
    display:flex;
  width:max-content;
  height:34px;
  padding:0 12px;
  font-size:.6rem;
  letter-spacing:.035em;
  background:rgba(3,17,47,.42);
  border-color:rgba(255,255,255,.28);
  backdrop-filter:blur(12px);
  align-self:flex-start;
    margin-top:0;
}

/* Mobile headline over photograph */
.premium-hero h1{
  max-width:100%;
  margin:121px 0 0;
  line-height:.9;
}

.premium-title-serif{
  font-size:clamp(48px,14vw,68px);
  line-height:.9;
  letter-spacing:-.055em;
}

.premium-title-script{
  margin-top:10px;
  font-size:clamp(45px,13vw,64px);
  line-height:.92;
}

/* Place this lower in the photographic section */
.premium-image-note{
  display:flex;
  position:absolute;
  z-index:2;
  top:125px;
    left:20px;
right:auto;

text-align:left;
align-items:flex-start;
    font-size:1.25rem;
    z-index:5;
  align-items:flex-start;
  line-height:.95;
  transform:rotate(-1deg);
  text-shadow:0 3px 14px rgba(0,0,0,.72);
}

.premium-image-note strong{
  margin-top:10px;
  color:var(--ic-yellow);
  font-size:1.06em;
}

/* Push the main information below the photograph */
.premium-hero-description{
  max-width:92%;
  margin:145px 0 0;
  color:#fff;
  font-size:.96rem;
  line-height:1.62;
  text-shadow:0 2px 10px rgba(0,0,0,.8);
}
.premium-method-details summary svg{
    width:12px;
    height:12px;
    stroke:#fff;
    flex-shrink:0;
}


.premium-hero-promise{
  margin-top:14px;
  font-size:.88rem;
  line-height:1.55;
}

/* Full-width mobile buttons */
.premium-hero-actions{
  width:100%;
  max-width:none;
  margin-top:24px;

  display:flex;
  flex-direction:column;
  align-items:flex-start;   /* was stretch */

  gap:12px;
}
.premium-primary-button{
    width:100%;
}

.premium-secondary-button{
    width:auto;
}

.premium-primary-button,
.premium-secondary-button{
  box-sizing:border-box;
  width:100%;
  min-height:54px;
}

/* Proof becomes a premium information card */
.premium-proof{
  box-sizing:border-box;
  width:100%;
  max-width:none;
  margin-top:22px;
  padding:18px;
  display:flex;
flex-direction:column;
align-items:stretch;
gap:18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:17px;
  background:linear-gradient(
    145deg,
    rgba(6,27,68,.92),
    rgba(3,15,39,.9)
  );
  box-shadow:0 18px 45px rgba(0,0,0,.22);
  backdrop-filter:blur(18px);
}
.premium-proof .premium-proof-item{
  box-sizing:border-box;
  width:100%;
  min-height:54px;
  justify-content:flex-start;
  font-size:.74rem;
  opacity:1;
}

.premium-proof-divider{
  flex-shrink: 0;
  width: 100%;
  height: 1px;
  display: block;
  background: rgba(255,255,255,.13);
}

.premium-proof-item{
  font-size:.72rem;
}



/* Benefits become clean two-column cards */
.premium-benefits{
  box-sizing:border-box;
  position:relative;
  left:auto;
  bottom:auto;
  transform:none;

  width:100%;
  margin:24px 0 0;
  padding:10px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;

  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  overflow:hidden;
background:linear-gradient(
145deg,
rgba(7,29,71,.96),
rgba(3,16,43,.95)
);  box-shadow:0 18px 45px rgba(0,0,0,.2);
}

.premium-benefit{
  box-sizing:border-box;
  min-height:108px;
  padding:14px 8px;
  gap:8px;
    color:#fff;
    background:rgba(255,255,255,.05);
    backdrop-filter:blur(14px);
    border:1px solid rgba(255,255,255,.08);
  font-size:.68rem;
  line-height:1.35;
}

.premium-benefit:nth-child(1){
  border-radius:10px 0 0 0;
}

.premium-benefit:nth-child(2){
  border-radius:0 10px 0 0;
}

.premium-benefit:nth-child(5){
  border-radius:0 0 0 10px;
}

.premium-benefit:nth-child(6){
  border-radius:0 0 10px 0;
}

.premium-scroll-cue{
  display:none;
}


    .premium-why{
        padding-top:26px;
        padding-bottom:38px;
    }

    .premium-why .why-inner{
        gap:34px;
    }

    .premium-why .stitle{
    max-width:100%;

    margin:0 0 10px;

    font-size:clamp(1.85rem,8.5vw,2.55rem);
    line-height:1.04;
    letter-spacing:-.035em;
}

   .premium-why .sdesc{
    max-width:none;

    margin-top:0;

    font-size:.84rem;
    line-height:1.52;
}

    .premium-why .why-pts{
        margin-top:24px;
        gap:12px;
    }

    .premium-why .wpt{
        padding:15px 16px;
        gap:13px;

        border-radius:15px;
    }

    .premium-why .wpt-ic{
        width:40px;
        min-width:40px;
        height:40px;

        font-size:1rem;
    }

    .premium-why .wpt-t{
        margin-bottom:3px;

        font-size:.91rem;
    }

    .premium-why .wpt-d{
        font-size:.79rem;
        line-height:1.46;
    }

    .premium-why .why-vis{
    align-self:stretch;

    width:100%;
    padding:28px 26px;

    border-radius:22px;
}

    .premium-why .wnum{
        font-size:3.55rem;
    }

    .premium-why .wlbl{
        margin-top:8px;

        font-size:.82rem;
        line-height:1.46;
    }

    .premium-why .wdiv{
        margin:23px 0;
    }

    .premium-why .wq{
        padding-left:14px;

        font-size:.82rem;
        line-height:1.5;
    }

    .premium-why + .team{
        padding-top:54px;
    }


    .premium-founders{
        padding:26px 0 32px;
    }

    .premium-founders-heading{
        max-width:100%;
    }

    .premium-founders-heading .stitle{
    max-width:340px;

    margin-left:auto;
    margin-right:auto;

    font-size:clamp(1.8rem,8vw,2.45rem);
    line-height:1.04;
}

    .premium-founders-intro{
        max-width:340px;

        margin-top:9px;

        font-size:.84rem;
        line-height:1.55;
    }

    .premium-founders-grid{
    grid-template-columns:1fr;
    gap:14px;

    width:calc(100% - 32px);
    margin:19px auto 0;
}

   .premium-founder-card{
    padding:21px 18px;

    border-radius:19px;
}

   .premium-founder-header,
.premium-founder-card--max .premium-founder-header{
    grid-template-columns:minmax(0,1fr) 70px;
    gap:12px;

    min-height:70px;
}

.premium-founder-card--julia .premium-founder-header{
  gap: 12px;
  min-height: 70px;
  grid-template-columns: 70px minmax(0,1fr);
}

    /*
     * Keep Julia visually different:
     * photo remains on the left.
     */

    

    .premium-founder-photo-wrap,
    .premium-founder-photo{
        width:70px;
        height:70px;
    }

    .premium-founder-name{
        font-size:1.42rem;
    }

    .premium-founder-role{
        font-size:.63rem;
        line-height:1.45;
    }

    .premium-founder-country{
        margin-bottom:7px;

        font-size:.59rem;
    }

    .premium-founder-country svg{
        width:13px;
        height:13px;
    }

    .premium-founder-summary{
        margin-top:17px;

        font-size:.79rem;
        line-height:1.55;
    }

    .premium-founder-story{
        margin-top:15px;
    }

    .premium-founder-story summary{
        padding:10px 12px;

        font-size:.68rem;
    }

    .premium-founder-story-inner p{
        font-size:.75rem;
        line-height:1.55;
    }
 .premium-founder-credentials{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:13px;
    gap:6px;
}

.premium-founder-credential{
    min-width:0;
    padding:6px 7px;

    font-size:.62rem;
    line-height:1.25;
}


    .premium-how{
  padding: 24px 0 28px;
  background: radial-gradient(
            circle at 88% 8%,
            rgba(39,215,247,.16),
            transparent 35%
        ),
        linear-gradient(
            180deg,
            #0a3fae 0%,
            #093993 52%,
            #0a347f 82%,
            #0b367f 100%
        ) !important;
}

    .premium-how-heading{
        max-width:100%;
    }

    .premium-how-label{
        margin-bottom:6px;

        font-size:.64rem;
    }

   .premium-how-title{
    max-width:340px;

    margin-left:auto;
    margin-right:auto;

    font-size:clamp(1.72rem,7.4vw,2.18rem);
    line-height:1.02;
    letter-spacing:-.035em;
    text-align:center;
}

.premium-how-title-line{
    display:block;
    white-space:nowrap;
}

.premium-how-title em{
    display:block;
    white-space:nowrap;
}

 .premium-how-intro{
    max-width:320px;

    margin:9px auto 0;

    font-size:.74rem;
    line-height:1.45;
    text-align:center;

    white-space:normal;
}

.premium-how-grid{
    grid-template-columns:1fr;
    gap:10px;

    width:calc(100% - 24px);
    margin:18px auto 0;
}
    .premium-how-card{
    min-height:0;

    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    column-gap:13px;
    row-gap:0;

    padding:16px;

        border-radius:17px;
    }

    .premium-how-card-top{
        grid-column:1;
        grid-row:1 / span 2;

        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:flex-start;
        gap:10px;

        margin:0;
    }

    .premium-how-number{
        order:2;

        font-size:.62rem;
    }

    .premium-how-icon{
        order:1;

        width:40px;
        height:40px;

        border-radius:11px;
    }

    .premium-how-icon svg{
        width:19px;
        height:19px;
    }

    .premium-how-card h3{
        grid-column:2;

        font-size:.94rem;
        line-height:1.28;
    }

    .premium-how-card p{
        grid-column:2;

        margin-top:7px;

        font-size:.77rem;
        line-height:1.52;
    }
    .premium-how-card:hover{
        transform:translateY(-3px);
    }
    .premium-how-card:nth-child(odd){
    border-color:rgba(39,215,247,.24);

    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(39,215,247,.15),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            rgba(18,88,221,.94),
            rgba(7,53,151,.92)
        );
}

.premium-how-card:nth-child(even){
    border-color:rgba(255,210,31,.20);

    background:
        radial-gradient(
            circle at 8% 88%,
            rgba(255,210,31,.09),
            transparent 40%
        ),
        linear-gradient(
            145deg,
            rgba(13,65,168,.92),
            rgba(6,40,116,.94)
        );
}

.premium-how-card:nth-child(odd) .premium-how-number{
    color:#27D7F7;
}

.premium-how-card:nth-child(even) .premium-how-number{
    color:#FFD21F;
}


    .premium-enrol{
  padding: 25px 0 30px;
  background: radial-gradient(
                circle at 50% 9%,
                rgba(39,215,247,.09),
                transparent 28%
            ),
            radial-gradient(
                circle at 8% 88%,
                rgba(11,77,219,.19),
                transparent 40%
            ),
            linear-gradient(
                180deg,
                #0b367f 0%,
                #0a347d 9%,
                #092f73 20%,
                #082f87 55%,
                #061a4b 100%
            ) !important;
}

    .premium-enrol-heading{
        width:calc(100% - 30px);
    }

   .premium-enrol-title{
    max-width:380px;
    margin:0 auto;

    font-size:clamp(1.72rem,7.2vw,2.3rem);
    line-height:1.03;
    letter-spacing:-.04em;
    text-align:center;
}

.premium-enrol-title em{
  display: block;
}

    

    .premium-enrol-intro{
        max-width:350px;

        margin-top:9px;

        font-size:.75rem;
        line-height:1.48;
    }

    .premium-enrol-heading-actions{
        flex-direction:column;
        align-items:stretch;

        width:min(350px,100%);
        margin:14px auto 0;
    }

    .premium-timezone-button{
        width:100%;
        justify-content:flex-start;
    }

    .premium-level-test > svg:last-child,
    .premium-timezone-button > svg:last-child{
        margin-left:auto;
    }

    .premium-timezone-select{
        width:100%;
        max-width:none;
    }

    .premium-level-grid{
        grid-template-columns:1fr;
        gap:13px;

        width:calc(100% - 28px);
        margin:19px auto 0;
    }

    .premium-level-card{
        padding:19px 17px;

        border-radius:20px;
    }

    .premium-level-card:hover{
        transform:translateY(-3px);
    }

    .premium-level-card h3{
        font-size:1.45rem;
    }

    .premium-level-promise{
        font-size:.73rem;
    }

    .premium-level-status{
        padding:5px 8px;

        font-size:.53rem;
    }

    .premium-level-core{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:6px;

        margin-top:13px;
    }

    .premium-level-core-item{
        grid-template-columns:24px minmax(0,1fr);
        gap:6px;

        min-height:48px;
        padding:7px;
    }

    .premium-level-core-item span{
        font-size:.58rem;
    }

    .premium-level-core-item strong{
        font-size:.61rem;
    }

    .premium-upcoming{
        margin-top:13px;
    }

    .premium-live-card{
        flex-basis:82%;
    }

    .premium-level-actions{
        grid-template-columns:1fr 1.15fr;
        gap:6px;
    }

    .premium-level-full-schedule,
    .premium-level-enrol{
        min-height:43px;
        padding:7px;

        font-size:.59rem;
    }

    .premium-homework-strip{
        grid-template-columns:38px minmax(0,1fr);
        gap:10px;

        width:calc(100% - 28px);
        margin:13px auto 0;
        padding:12px 13px;
    }

    .premium-homework-icon{
        width:38px;
        height:38px;
    }

    .premium-homework-badge{
        grid-column:2;

        width:max-content;
        padding:5px 8px;
    }

    .premium-advanced-interest{
        grid-template-columns:40px minmax(0,1fr);
        gap:10px;

        width:calc(100% - 28px);
        margin:11px auto 0;
        padding:13px;

        border-radius:16px;
    }

    .premium-advanced-icon{
        width:40px;
        height:40px;
    }

    .premium-advanced-copy h3{
        font-size:.8rem;
    }

    .premium-advanced-copy p{
        font-size:.62rem;
    }
    .premium-advanced-link{
    margin-top:7px;

    font-size:.56rem;
}


    .premium-enrol .premium-level-card{
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 19px 17px !important;
  border-radius: 20px !important;
}

    .premium-enrol .premium-level-card:hover{
        transform:translateY(-3px);
    }

    .premium-enrol .premium-level-card h3{
  margin-top: 7px;
  font-size: 1.55rem !important;
  line-height: 1.04;
}

    .premium-enrol .premium-level-highlight{
        padding:13px;
    }

    .premium-enrol .premium-level-times{
  width: 100%;
  margin-top: 12px !important;
  padding: 12px 13px !important;
}

    .premium-enrol .premium-level-enrol{
  box-sizing: border-box;
  width: 100% !important;
  min-height: 57px !important;
  margin-top: 14px !important;
  padding: 10px 15px !important;
  font-size: .78rem !important;
}

.premium-level-test-leading-icon{
    left:16px;
}

.premium-level-test-arrow{
    right:16px;
}
.premium-enrol-main-offer{
    width:calc(100% - 58px);
    max-width:430px;

    grid-template-columns:38px minmax(0,1fr) auto;
    gap:9px;

    margin-top:14px;
    padding:9px 11px;

    border-radius:14px;
}

.premium-enrol-main-offer-icon{
    width:38px;
    height:38px;

    border-radius:10px;
}

.premium-enrol-main-offer-icon svg{
    width:18px;
    height:18px;
}

.premium-enrol-main-offer-copy strong{
    font-size:.76rem;
    line-height:1.15;
}

.premium-enrol-main-offer-copy span{
    margin-top:2px;

    font-size:.55rem;
    line-height:1.2;
}

.premium-enrol-main-offer-price{
    grid-column:auto;

    width:auto;
    box-sizing:border-box;

    padding:6px 8px;

    font-size:.53rem;
    line-height:1.15;
    text-align:center;
    white-space:nowrap;
}

    .premium-enrol-main-offer + .premium-level-grid{
        margin-top:12px;
    }


    

    


    .premium-schedule-v2{
        padding:35px 0 72px;

        background:
            radial-gradient(
                circle at 85% 12%,
                rgba(39,215,247,.14),
                transparent 33%
            ),
linear-gradient(
    180deg,
    #061a4b 0%,
    #082b75 21%,
    #0b4ddb 53%,
    #8bb5ef 80%,
    #e3edfb 93%,
    #f8faff 100%
);
    }

    .premium-schedule-v2-heading{
        width:calc(100% - 30px);
        margin:0 auto;
    }

    .premium-schedule-v2-label{
        margin-bottom:7px;

        font-size:.59rem;
    }

    .premium-schedule-v2-heading h2{
    max-width:460px;
    font-size:clamp(2.1rem,8.8vw,2.8rem);
    line-height:.98;
    margin:0 auto;
}

    .premium-schedule-v2-heading h2 em{
        display:block;
    }

    .premium-schedule-v2-heading p{
        max-width:350px;

        margin-top:11px;

        font-size:.7rem;
        line-height:1.48;
    }

    .premium-schedule-v2-toolbar{
  margin-top: 14px;
  width: max-content !important;
  max-width: calc(100% - 32px) !important;
  margin: 14px auto 0 !important;
}

    .premium-schedule-v2 .premium-timezone-button{
  width: auto !important;
  min-width: 210px !important;
  max-width: 100% !important;
  min-height: 46px !important;
  padding: 7px 13px !important;
  grid-template-columns: 17px auto 15px !important;
}

    .premium-schedule-tabs{
        width:calc(100% - 28px);

        margin-top:18px;
    }

    .premium-schedule-tab{
        min-height:51px;
        padding:7px 4px 11px;
    }

    .premium-schedule-tab span{
        font-size:.48rem;
    }

    .premium-schedule-tab strong{
        font-size:.66rem;
    }

    .premium-schedule-calendar{
  width: calc(100% - 20px) !important;
  padding: 12px 10px !important;
  border-radius: 0 0 17px 17px !important;
}

    .premium-schedule-panel-header{
  align-items: center;
  gap: 10px;
  margin-bottom: 9px !important;
}

    .premium-schedule-panel-header h3{
        font-size:.86rem;
    }

    .premium-schedule-panel-header a{
        font-size:.55rem;
    }

    .premium-schedule-v2 .premium-live-strip{
  padding-bottom: 7px;
  gap: 7px !important;
  padding: 1px 1px 7px !important;
}

    .premium-schedule-v2 .premium-live-card{
    flex:0 0 172px !important;
    min-width:172px !important;

    min-height:105px !important;
    height:auto !important;

    padding:13px 12px !important;

    border-radius:13px !important;
}
    .premium-schedule-v2 .premium-live-topic{
  font-size: .69rem !important;
  line-height: 1.22 !important;
}

    .premium-schedule-scroll-hint{
        margin-top:8px;

        font-size:.57rem;
    }


    /* Stack A1, A2 and B1/B2 vertically */
    .premium-enrol .premium-level-grid{
        box-sizing:border-box !important;

        display:grid !important;
        grid-template-columns:minmax(0,1fr) !important;
        align-items:stretch !important;
        gap:14px !important;

        width:calc(100% - 28px) !important;
        max-width:520px !important;

        margin:14px auto 0 !important;
        padding:0 !important;

        overflow:visible !important;
    }

    /* Each level card occupies the full available width */
    

    /* Stop any accidental desktop sizing */
    .premium-enrol .premium-level-card--a1,
    .premium-enrol .premium-level-card--a2,
    .premium-enrol .premium-level-card--b1{
        grid-column:auto !important;
        transform:none;
    }

    /* Restore readable time rows */
    

    .premium-enrol .premium-level-time-row{
        grid-template-columns:minmax(0,1fr) auto !important;
        gap:12px !important;

        font-size:.7rem !important;
    }

    /* Full-width join button */
    


    /* Centre the entire heading block */
    .premium-enrol .premium-enrol-heading{
        box-sizing:border-box !important;

        width:100% !important;
        max-width:none !important;

        margin-left:auto !important;
        margin-right:auto !important;
        padding-left:18px !important;
        padding-right:18px !important;

        text-align:center !important;
    }

    /* Centre both title lines correctly */
    .premium-enrol .premium-enrol-title{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;

        width:100% !important;
        max-width:none !important;

        margin:0 auto !important;

        text-align:center !important;
    }
    .premium-enrol .premium-enrol-title-first{
    display:block !important;

    box-sizing:border-box;
    width:100% !important;
    max-width:100% !important;

    margin:0 auto !important;
    padding:0 12px !important;

    font-size:clamp(2rem,9vw,2.75rem);
    line-height:1;

    white-space:normal !important;
    text-wrap:balance;
    overflow-wrap:normal;
    word-break:normal;

    text-align:center !important;
}

    .premium-enrol .premium-enrol-title-first{
        display:block !important;

        width:auto !important;
        max-width:100% !important;

        margin:0 auto !important;

        white-space:normal !important;
        text-align:center !important;
    }

    .premium-enrol .premium-enrol-title em{
        display:block !important;

        width:auto !important;
        margin-left:auto !important;
        margin-right:auto !important;

        text-align:center !important;
    }

    .premium-enrol .premium-level-test{
    box-sizing:border-box !important;

    width:max-content !important;
    max-width:calc(100% - 40px) !important;
    min-width:0 !important;

    min-height:56px !important;

    margin:14px auto 0 !important;
    padding-left:52px !important;
    padding-right:52px !important;

    display:flex !important;
    justify-content:center !important;
}

    .premium-enrol .premium-level-test-leading-icon{
        left:17px !important;
    }

    .premium-enrol .premium-level-test-arrow{
        right:17px !important;
    }

.premium-enrol .premium-level-test > span{
    width:100%;
    margin:0;
    text-align:center !important;
}


    /* Keep the timezone control compact */
    

    

    /* Slightly smaller calendar container */
    

    

    /* Narrow horizontal cards instead of giant phone cards */
    

    /* Keep the date and NEXT badge on one compact row */
    .premium-schedule-v2 .premium-live-header{
        gap:6px !important;
        margin-bottom:7px !important;
    }

    .premium-schedule-v2 .premium-live-date{
        font-size:.52rem !important;
        line-height:1.15 !important;
    }

    .premium-schedule-v2 .premium-live-badge{
        padding:3px 6px !important;

        font-size:.42rem !important;
        line-height:1 !important;
    }

    

    .premium-schedule-v2 .premium-live-meta{
        gap:5px !important;

        margin-top:6px !important;

        font-size:.52rem !important;
    }

    
}

@media (max-width:768px){

    .premium-swipe-hint{
        display:block;

        width:auto;
        margin:8px auto 4px;
        padding:0;

        color:rgba(15,23,42,.46);
        background:none;
        border:0;
        box-shadow:none;

        text-align:center;
        font-family:"Inter",sans-serif;
        font-size:.76rem;
        font-weight:400;
        line-height:1.4;
        letter-spacing:.01em;

        opacity:1;

        animation:
            premiumSwipeHintFloat 1.8s ease-in-out infinite;

        transition:
            opacity .35s ease,
            visibility .35s ease;
    }

    .premium-swipe-hint.is-hidden{
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        animation:none;
    }


    .premium-method-section{
        padding:60px 0 74px;
    }

    .premium-method-title{
        font-size:clamp(1.65rem,7.5vw,2.1rem);
    }

.premium-method-intro{
    max-width:440px;

    margin:0 auto 20px;

    font-size:.90rem;
    line-height:1.5;
}
    .premium-method-title,
.premium-method-intro{
    box-sizing:border-box;
    width:100%;
    padding-right:18px;
    padding-left:18px;
}

    .premium-method-details{
        margin-bottom:24px;
    }

    .premium-method-details summary{
    margin-left:8px;
    margin-right:auto;

    padding:5px 9px;

    font-size:.7rem;
    gap:5px;
}

.premium-method-details-content{
    width:calc(100% - 16px);
    margin-left:auto;
    margin-right:auto;
}

.premium-method-details-content-inner{
    border-radius:12px;
}

.premium-method-details.is-visible .premium-method-details-content{
    margin-top:12px;
}

.premium-method-details.is-visible .premium-method-details-content-inner{
    padding:14px;
}

   .premium-method-details-content p{
    font-size:.82rem;
    line-height:1.55;
}

    .premium-method-video-frame{
    width:82%;
    max-width:500px;
    border-radius:13px;
}

    .premium-method-price{
    display:block;
    width:max-content;
    max-width:calc(100% - 32px);

    margin:14px auto 0;
    padding:7px 10px;

    font-size:.72rem;
    white-space:nowrap;
}
    .premium-method-cta{
    display:flex;
    flex-direction:column;
    align-items:center;
}

}
@media(max-width:520px){
    .student-avatars img{
  --avatar-size:40px;
}

.student-avatars{
  width:230px;
}

.student-count{
  width:50px;
  min-width:50px;
  height:50px;
}

.premium-student-proof:hover .student-avatars,
.premium-student-proof:focus-visible .student-avatars,
.premium-student-proof.is-expanded .student-avatars{
  width:218px;
}

.premium-student-proof:hover .student-avatars img,
.premium-student-proof:focus-visible .student-avatars img,
.premium-student-proof.is-expanded .student-avatars img{
  --avatar-size:38px;

  transform:
    translateX(calc(var(--column) * 40px))
    translateY(calc(var(--row) * 42px));
}
  

  .premium-brand{
    gap:7px;
  }

  .premium-brand-logo{
    width:41px;
    height:41px;
  }

  .premium-brand-copy{
    display:none;
  }

  .premium-menu-button{
    width:38px;
  }

  .premium-hero-photo{
    height:620px;
    background-position:66% center;
  }

  .premium-hero-content{
    width:calc(100% - 30px);
    padding-top:84px;
  }

  .premium-badge{
    height:31px;
    padding:0 10px;
    font-size:.54rem;
    white-space:nowrap;
  }
@media (max-width:900px){
    .premium-enrol-time-note{
    box-sizing:border-box;

    width:calc(100% - 36px);
    max-width:620px;

    margin:14px auto 0;
    padding:0 8px;

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

    text-align:center;
}
.premium-enrol-time-note svg{
    width:15px;
    height:15px;
    margin-top:2px;
    flex-shrink:0;
}
    .premium-why .premium-why-panel{
    animation:none;
}

.premium-why .premium-why-panel:hover,
.premium-why .premium-why-panel:focus-visible{
    transform:translateY(-3px);
}

.premium-why .premium-why-panel-extra-inner{
    font-size:.76rem;
    line-height:1.5;
}

.premium-why .premium-why-panel[aria-expanded="true"] .premium-why-panel-extra{
    margin-top:15px;
}

.premium-why .premium-why-panel-toggle{
    margin-top:16px;
    padding:6px 10px;

    font-size:.62rem;
}

    .premium-reviews::before{
        /*
         * Much more image outside the left and right edges,
         * allowing the parallax movement without exposing white.
         */
        inset:-40px -180px;

        background-position:10% center;

        transform:
            translate3d(var(--reviews-bg-x, 0px), 0, 0)
            scale(1.10);
    }

}
  .premium-hero h1{
    margin-top:121px;
  }
  .premium-proof > .premium-proof-item{
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.13);
}

.premium-proof > .premium-proof-item:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.premium-proof > .premium-proof-divider{
  display:none;
}

  .premium-title-serif{
    font-size:52px;
  }

  .premium-title-script{
    font-size:50px;
  }

  .premium-image-note{
 top:165px;
  left:16px;
  right:auto;
  font-size:1.14rem;
  text-align:left;
  align-items:flex-start;
}

  .premium-hero-description{
    margin-top:90px;
    font-size:.92rem;
  }

  .premium-benefit{
    min-height:103px;
    padding:12px 6px;
    font-size:.65rem;
  }
}
@media(max-width:400px){
  .student-avatars img{
    --avatar-size:37px;
  }

  .student-count{
    width:47px;
    min-width:47px;
    height:47px;
  }


    .premium-founders-grid{
        width:calc(100% - 28px);
    }

    .premium-founder-card{
        padding:19px 16px;
    }

    .premium-founder-header,
    .premium-founder-card--max .premium-founder-header{
        grid-template-columns:minmax(0,1fr) 64px;
        gap:10px;

        min-height:64px;
    }

    .premium-founder-card--julia .premium-founder-header{
        grid-template-columns:64px minmax(0,1fr);
        gap:10px;

        min-height:64px;
    }

    .premium-founder-photo-wrap,
    .premium-founder-photo{
        width:64px;
        height:64px;
    }

    .premium-founder-name{
        font-size:1.25rem;
    }

    .premium-founder-role{
        font-size:.58rem;
    }

    .premium-founder-credential{
        font-size:.58rem;
        white-space:normal;
    }


    .premium-how-grid{
        width:calc(100% - 28px);
    }

    .premium-how-card{
        grid-template-columns:42px minmax(0,1fr);
        column-gap:11px;

        padding:16px 14px;
    }

    .premium-how-icon{
        width:37px;
        height:37px;
    }

    .premium-how-card h3{
        font-size:.89rem;
    }

    .premium-how-card p{
        font-size:.74rem;
    }
    .premium-how-card--primary h3{
    font-size:1rem;
    line-height:1.22;
}


    .premium-level-card-header{
        display:grid;
        grid-template-columns:minmax(0,1fr);
    }

    .premium-level-status{
        position:absolute;
        top:17px;
        right:15px;
    }

    .premium-level-card-header > div:first-child{
        padding-right:95px;
    }
    .premium-level-promise{
    width:calc(100% + 95px);
    max-width:calc(100% + 95px);
    margin-right:-95px;
}

    .premium-level-core{
        grid-template-columns:1fr;
    }

    .premium-level-actions{
        grid-template-columns:1fr;
    }

    .premium-live-card{
        flex-basis:90%;
    }


    .premium-schedule-v2 .premium-live-card{
        flex-basis:138px !important;
        min-width:138px !important;
    }
}

    .premium-schedule-v2 .premium-live-badge{
        font-size:.44rem;
    }
}
.premium-schedule-scroll-arrow{
    display:inline-block;
    flex:0 0 auto;

    color:var(--schedule-accent);

    font-family:Arial,sans-serif;
    font-size:22px !important;
    font-weight:400;
    line-height:1;

    opacity:.75;
}

/* =========================================
   WHO IT'S FOR — STUDENT STORIES
========================================= */

.premium-audience{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    padding:44px 0 48px;

    background:
        radial-gradient(
            circle at 10% 8%,
            rgba(11,77,219,.055),
            transparent 32%
        ),
        radial-gradient(
            circle at 88% 76%,
            rgba(39,215,247,.045),
            transparent 31%
        ),
        linear-gradient(
            180deg,
            #f8faff 0%,
            #f4f8ff 100%
        );
}

.premium-audience::before{
    content:"";

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

    background-image:
        radial-gradient(
            rgba(11,77,219,.045) 1px,
            transparent 1px
        );

    background-size:28px 28px;
    opacity:.28;

    pointer-events:none;
}


/* Heading */

.premium-audience-heading{
    max-width:900px;
    margin:0 auto 28px;
    text-align:center;
}

.premium-audience-label{
    display:block;

    margin-bottom:6px;

    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:700;
    line-height:1.3;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.premium-audience-title{
    margin:0;

    color:#0A2F8F;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.8rem,5vw,4.6rem);
    font-weight:800;
    line-height:.94;
    letter-spacing:-.045em;
}

.premium-audience-title em{
    color:#0B4DDB;
    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:500;
}

.premium-audience-title{
    width:100%;
    margin-right:auto;
    margin-left:auto;

    text-align:center;
    text-wrap:balance;
}
.premium-audience-intro{
    max-width:980px;
    margin:11px auto 0;

    color:#60718c;

    font-family:"Inter",sans-serif;
    font-size:.94rem;
    line-height:1.58;
}

.premium-audience-intro strong{
    color:#0B4DDB;
    font-weight:700;
}


/* Card grid */

.premium-audience-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:start;
    gap:16px;

    margin-top:26px;
}


/* Shared card colours */

.premium-audience-card{
    --audience-accent:#0B4DDB;
    --audience-soft:rgba(11,77,219,.07);
    --audience-border:rgba(11,77,219,.15);

    position:relative;
    min-width:0;
}

.premium-audience-card--beginner{
    --audience-accent:#13A653;
    --audience-soft:rgba(19,166,83,.07);
    --audience-border:rgba(19,166,83,.17);
}

.premium-audience-card--basic{
    --audience-accent:#0B4DDB;
    --audience-soft:rgba(11,77,219,.07);
    --audience-border:rgba(11,77,219,.16);
}

.premium-audience-card--natural{
    --audience-accent:#F05A18;
    --audience-soft:rgba(240,90,24,.07);
    --audience-border:rgba(240,90,24,.16);
}

.premium-audience-card--abroad{
    --audience-accent:#1555D7;
    --audience-soft:rgba(21,85,215,.07);
    --audience-border:rgba(21,85,215,.16);
}

.premium-audience-card--professional{
    --audience-accent:#05A6B7;
    --audience-soft:rgba(5,166,183,.07);
    --audience-border:rgba(5,166,183,.17);
}

.premium-audience-card--university{
    --audience-accent:#E71972;
    --audience-soft:rgba(231,25,114,.07);
    --audience-border:rgba(231,25,114,.16);
}

.premium-audience-card--over50{
    --audience-accent:#8629D7;
    --audience-soft:rgba(134,41,215,.07);
    --audience-border:rgba(134,41,215,.16);
}

.premium-audience-card--young{
    --audience-accent:#E99800;
    --audience-soft:rgba(233,152,0,.08);
    --audience-border:rgba(233,152,0,.18);
}


/* Details becomes the full card */

.premium-audience-story{
    position:relative;
    overflow:hidden;

    box-sizing:border-box;

    border:1px solid rgba(11,77,219,.10);
    border-radius:20px;

    background:rgba(255,255,255,.94);

    box-shadow:
        0 16px 38px rgba(2,13,39,.075),
        inset 0 1px 0 rgba(255,255,255,.96);

    transition:
        transform .28s cubic-bezier(.22,.61,.36,1),
        border-color .28s ease,
        box-shadow .28s ease;
}

.premium-audience-story:hover{
    transform:translateY(-4px);

    border-color:var(--audience-border);

    box-shadow:
        0 23px 52px rgba(2,13,39,.105),
        0 8px 24px var(--audience-soft),
        inset 0 1px 0 rgba(255,255,255,1);
}

.premium-audience-story[open]{
    border-color:var(--audience-border);

    box-shadow:
        0 23px 52px rgba(2,13,39,.11),
        0 9px 26px var(--audience-soft),
        inset 0 1px 0 rgba(255,255,255,1);
}


/* Remove default marker */

.premium-audience-story summary{
    display:block;
    cursor:pointer;
    list-style:none;
}

.premium-audience-story summary::-webkit-details-marker{
    display:none;
}


/* Archetype above image */

.premium-audience-category{
    min-height:58px;

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

    box-sizing:border-box;
    padding:10px 12px;

    color:var(--audience-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.77rem;
    font-weight:800;
    line-height:1.22;
    text-align:center;
}

.premium-audience-category-icon{
    width:34px;
    height:34px;

    display:grid;
    place-items:center;
    flex-shrink:0;

    color:#fff;

    border-radius:50%;

    background:
        linear-gradient(
            145deg,
            color-mix(in srgb, var(--audience-accent) 78%, white),
            var(--audience-accent)
        );

    box-shadow:
        0 7px 18px var(--audience-soft),
        inset 0 1px 0 rgba(255,255,255,.32);
}

.premium-audience-category-icon svg{
    width:17px;
    height:17px;
    stroke-width:2;
}


/* Photo */

.premium-audience-photo-wrap{
    position:relative;
    overflow:hidden;

    height:144px;

    background:#dfe8f7;
}

.premium-audience-photo-wrap::after{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            90deg,
            transparent 42%,
            rgba(2,13,39,.12) 72%,
            rgba(2,13,39,.52) 100%
        );

    pointer-events:none;
}

.premium-audience-photo{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center;

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1);
}

.premium-audience-story:hover .premium-audience-photo{
    transform:scale(1.035);
}


/* Person details over photo */

.premium-audience-person{
    position:absolute;
    z-index:2;

    top:18px;
    right:15px;

    color:#fff;
    text-align:right;

    font-family:"Montserrat",sans-serif;

    text-shadow:
        0 2px 10px rgba(0,0,0,.55);
}

.premium-audience-person strong{
    display:block;

    font-size:.87rem;
    font-weight:800;
    line-height:1.2;
}

.premium-audience-country{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;

    margin-top:7px;

    font-size:.68rem;
    font-weight:500;
}

.premium-audience-country img{
    width:19px;
    height:13px;

    object-fit:cover;
    border-radius:2px;

    box-shadow:
        0 1px 4px rgba(0,0,0,.28);
}


/* Visible text below image */

.premium-audience-summary{
    min-height:132px;

    box-sizing:border-box;
    padding:15px 16px 14px;

    display:flex;
    flex-direction:column;

    text-align:center;
}

.premium-audience-quote{
    margin:0;

    color:var(--audience-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.9rem;
    font-weight:800;
    line-height:1.38;
}

.premium-audience-description{
    margin:10px 0 0;

    color:#263955;

    font-family:"Inter",sans-serif;
    font-size:.76rem;
    line-height:1.52;
}

.premium-audience-read{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;

    margin-top:10px;
    padding-top:8px;

    color:var(--audience-accent);

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:600;
    line-height:1.2;
}

.premium-audience-read svg{
    width:15px;
    height:15px;

    stroke-width:2.2;

    transition:
        transform .32s cubic-bezier(.22,.61,.36,1);
}

.premium-audience-story[open] .premium-audience-read svg{
    transform:rotate(180deg);
}


/* Expanding story */

.premium-audience-story-content{
    display:grid;
    grid-template-rows:0fr;

    opacity:0;
    transform:translateY(-5px);

    transition:
        grid-template-rows .4s cubic-bezier(.22,.61,.36,1),
        opacity .25s ease,
        transform .34s cubic-bezier(.22,.61,.36,1);
}

.premium-audience-story[open] .premium-audience-story-content{
    grid-template-rows:1fr;

    opacity:1;
    transform:translateY(0);
}

.premium-audience-story-inner{
    min-height:0;
    overflow:hidden;
}

.premium-audience-story-body{
    padding:0 17px 18px;

    border-top:1px solid var(--audience-border);

    background:
        linear-gradient(
            180deg,
            var(--audience-soft),
            rgba(255,255,255,.82)
        );
}

.premium-audience-story-body p{
    margin:15px 0 0;

    color:#354966;

    font-family:"Inter",sans-serif;
    font-size:.76rem;
    line-height:1.62;
}

.premium-audience-story-body strong{
    color:#152943;
    font-weight:600;
}


/* Three short details */

.premium-audience-facts{
    display:grid;
    gap:8px;

    margin:15px 0 0;
    padding:14px 0 0;

    border-top:1px solid var(--audience-border);
}

.premium-audience-fact{
    display:flex;
    align-items:flex-start;
    gap:8px;

    color:#354966;

    font-family:"Inter",sans-serif;
    font-size:.7rem;
    line-height:1.4;
}

.premium-audience-fact svg{
    width:14px;
    height:14px;

    margin-top:1px;
    flex-shrink:0;

    color:var(--audience-accent);
    stroke-width:2;
}


/* Bottom reassurance */

.premium-audience-reassurance{
    box-sizing:border-box;

    width:max-content;
    max-width:100%;

    display:flex;
justify-content:center;
text-align:center;

    margin:20px auto 0;
    padding:10px 18px;

    color:#365070;

    border:1px solid rgba(11,77,219,.14);
    border-radius:14px;

    background:rgba(231,239,255,.74);

    font-family:"Inter",sans-serif;
    font-size:.78rem;
    line-height:1.45;
    text-align:center;
}
.premium-audience-reassurance-final{
    display:block;

    margin-top:6px;

    color:#0B4DDB;

    font-size:1.08em;
    font-weight:800;

    letter-spacing:-.01em;
    line-height:1.25;

    white-space:nowrap;
}

.premium-audience-reassurance strong{
    color:#0B4DDB;
    font-weight:700;
}


/* Tablet */

@media(max-width:1100px){

    .premium-audience-grid{
    box-sizing:border-box;
    width:100%;

    grid-template-columns:repeat(2,minmax(0,1fr));

    padding-left:12px;
    padding-right:12px;
}

    .premium-audience-photo-wrap{
        height:180px;
    }

    .premium-audience-summary{
        min-height:150px;
    }
}


/* Phone */

@media(max-width:600px){

    .premium-audience{
        padding:34px 0 38px;
    }

    .premium-audience-heading{
        margin-bottom:21px;
        padding:0 16px;
    }

    .premium-audience-label{
        font-size:.66rem;
    }

    .premium-audience-title{
        max-width:360px;
        margin:0 auto;

        font-size:clamp(2rem,10vw,2.8rem);
        line-height:.96;
    }
    .premium-audience-title-main{
    display:block;
    white-space:nowrap;
}

.premium-audience-title em{
    display:block;
}

    .premium-audience-intro{
        margin-top:12px;

        font-size:.83rem;
        line-height:1.55;
    }

    .premium-audience-grid{
    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:12px;

    margin-top:18px;
    padding-left:10px;
padding-right:10px;
}

    .premium-audience-category{
        min-height:52px;

        font-size:.76rem;
    }

    .premium-audience-category-icon{
        width:31px;
        height:31px;
    }

    .premium-audience-photo-wrap{
        height:120px;
    }

    .premium-audience-person{
        top:17px;
        right:16px;
    }

    .premium-audience-person strong{
        font-size:.72rem;
    }

    .premium-audience-country{
        font-size:.58rem;
    }

    .premium-audience-summary{
        min-height:0;
        padding:12px 12px 12px;
    }

    .premium-audience-quote{
        font-size:.86rem;
    }

    .premium-audience-description{
        font-size:.72rem;
    }

    .premium-audience-read{
    margin-top:8px;
    padding-top:6px;
    font-size:.68rem;
}

    .premium-audience-story-body{
        padding:0 18px 19px;
    }

    .premium-audience-story-body p{
        font-size:.8rem;
    }

    .premium-audience-fact{
        font-size:.74rem;
    }

    .premium-audience-reassurance{
        width:calc(100% - 20px);

        text-align:center;

        margin-top:18px;
        padding:11px 14px;

        font-size:.75rem;
        
    }
    .premium-audience-reassurance-final{
    margin-top:3px;
}
}
/* =========================================
   PREMIUM PRICING V3
========================================= */

.premium-pricing-v3{
    position:relative;
    overflow:hidden;

    padding:58px 20px 64px;

    background:
        radial-gradient(
            circle at 12% 20%,
            rgba(11,77,219,.10),
            transparent 34%
        ),
        radial-gradient(
            circle at 88% 78%,
            rgba(39,215,247,.10),
            transparent 32%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f1f6ff 100%
        );
}

.premium-pricing-v3::before{
    content:"";

    position:absolute;
    inset:auto -15% -180px -15%;

    height:310px;

    border-radius:50% 50% 0 0;

    background:
        linear-gradient(
            90deg,
            rgba(11,77,219,.06),
            rgba(39,215,247,.04)
        );

    pointer-events:none;
}

.premium-pricing-v3-wrap{
    position:relative;
    z-index:1;

    width:100%;
    max-width:1180px;

    margin:0 auto;
}


/* Heading */

.premium-pricing-v3-heading{
    text-align:center;
}

.premium-pricing-v3-label{
    display:block;

    margin-bottom:7px;

    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:700;
    line-height:1.3;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.premium-pricing-v3-title{

    margin:0 auto;

    color:#0A2F8F;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.8rem,5vw,4.6rem);
    font-weight:800;
    line-height:.94;
    letter-spacing:-.045em;
}

.premium-pricing-v3-title em{
    color:#0B4DDB;

    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:500;
}


/* Main card */

.premium-pricing-v3-card{
    position:relative;
    overflow:hidden;

    box-sizing:border-box;

    width:100%;
    max-width:690px;

    margin:34px auto 0;
    padding:31px 44px 25px;

    border:1px solid rgba(11,77,219,.13);
    border-radius:28px;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.99),
            rgba(255,255,255,.96)
        );

    box-shadow:
        0 28px 80px rgba(11,42,110,.12),
        0 8px 28px rgba(11,77,219,.05),
        inset 0 1px 0 rgba(255,255,255,1);
}

/* Price */

.premium-pricing-v3-price-block{
    text-align:center;
}

.premium-pricing-v3-price{
    position:relative;

    display:flex;
    align-items:flex-start;
    justify-content:center;

    width:max-content;

    margin:0 auto;

    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-weight:800;
    line-height:.86;
    letter-spacing:-.07em;

    filter:
        drop-shadow(0 8px 16px rgba(11,77,219,.14));
}

.premium-pricing-v3-price sup{
    margin-top:8px;
    margin-right:5px;

    font-size:1.8rem;
    line-height:1;
    letter-spacing:-.02em;
}

.premium-pricing-v3-price > span{
    font-size:6rem;
}



.premium-pricing-v3-payment{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:5px;

    margin:11px 0 14px;

    color:#657691;

    font-family:"Inter",sans-serif;
    font-size:.81rem;
    line-height:1.35;
}

.premium-pricing-v3-payment span{
    opacity:.55;
}


/* Glowing value pill */

.premium-pricing-v3-value{
    position:relative;

    width:max-content;
    max-width:100%;

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

    box-sizing:border-box;

    margin:0 auto 25px;
    padding:10px 20px;

    border:1px solid rgba(50,215,75,.45);
    border-radius:999px;

    background:
        linear-gradient(
            100deg,
            rgba(255,255,255,.96),
            rgba(240,255,244,.98)
        );

    color:#079348;

    box-shadow:
        0 0 0 5px rgba(50,215,75,.045),
        0 0 24px rgba(50,215,75,.22),
        inset 0 1px 0 rgba(255,255,255,1);

    animation:
        premium-pricing-v3-pulse 2.8s ease-in-out infinite;
}

.premium-pricing-v3-value::before,
.premium-pricing-v3-value::after{
    content:"";

    position:absolute;
    top:50%;

    width:25px;
    height:1px;

    background:#7be68c;

    opacity:.65;
}

.premium-pricing-v3-value::before{
    right:calc(100% + 10px);
}

.premium-pricing-v3-value::after{
    left:calc(100% + 10px);
}

.premium-pricing-v3-value strong{
    font-family:"Montserrat",sans-serif;
    font-size:.79rem;
    font-weight:800;
    line-height:1.2;
}

.premium-pricing-v3-value-divider{
    width:1px;
    height:20px;

    flex-shrink:0;

    background:rgba(7,147,72,.28);
}

@keyframes premium-pricing-v3-pulse{

    0%,
    100%{
        transform:scale(1);

        box-shadow:
            0 0 0 5px rgba(50,215,75,.035),
            0 0 18px rgba(50,215,75,.16),
            inset 0 1px 0 rgba(255,255,255,1);
    }

    50%{
        transform:scale(1.018);

        box-shadow:
            0 0 0 7px rgba(50,215,75,.055),
            0 0 31px rgba(50,215,75,.28),
            inset 0 1px 0 rgba(255,255,255,1);
    }

}


/* Group headings */

.premium-pricing-v3-group{
    margin-top:5px;
}

.premium-pricing-v3-group--bonus{
    margin-top:21px;
}

.premium-pricing-v3-group-heading{
    display:flex;
    align-items:center;
    gap:10px;

    margin-bottom:3px;
}

.premium-pricing-v3-group-symbol{
    width:34px;
    height:34px;

    display:grid;
    place-items:center;
    flex:0 0 34px;

    border-radius:50%;

    background:
        linear-gradient(
            145deg,
            rgba(11,77,219,.13),
            rgba(39,215,247,.08)
        );

    color:#0B4DDB;
}

.premium-pricing-v3-group-symbol svg{
    width:18px;
    height:18px;

    stroke-width:2;
}

.premium-pricing-v3-group-heading h3{
    margin:0;

    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.075em;
    text-transform:uppercase;
    white-space:nowrap;
}

.premium-pricing-v3-group-line{
    height:1px;

    flex:1;

    background:
        linear-gradient(
            90deg,
            rgba(11,77,219,.62),
            rgba(11,77,219,.07)
        );
}

.premium-pricing-v3-group--bonus
.premium-pricing-v3-group-symbol{
    background:
        linear-gradient(
            145deg,
            rgba(255,210,31,.22),
            rgba(233,114,30,.08)
        );

    color:#E89200;
}

.premium-pricing-v3-group--bonus
.premium-pricing-v3-group-heading h3{
    color:#E89200;
}

.premium-pricing-v3-group--bonus
.premium-pricing-v3-group-line{
    background:
        linear-gradient(
            90deg,
            rgba(232,146,0,.65),
            rgba(232,146,0,.07)
        );
}


/* Lists */

.premium-pricing-v3-list{
    margin:0;
    padding:0;

    list-style:none;
}

.premium-pricing-v3-list li{
    display:flex;
    align-items:center;
    gap:13px;

    box-sizing:border-box;

    min-height:47px;
    padding:10px 3px;

    border-bottom:1px solid rgba(11,77,219,.10);

    color:#142542;

    font-family:"Montserrat",sans-serif;
    font-size:.81rem;
    font-weight:600;
    line-height:1.35;
}

.premium-pricing-v3-list li:last-child{
    border-bottom:none;
}

.premium-pricing-v3-tick{
    width:19px;
    height:19px;

    display:grid;
    place-items:center;
    flex:0 0 19px;

    color:#0B4DDB;
}

.premium-pricing-v3-tick svg{
    width:18px;
    height:18px;

    stroke-width:3;
}

.premium-pricing-v3-group--bonus
.premium-pricing-v3-tick{
    color:#E89200;
}


/* CTA */

.premium-pricing-v3-cta{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    box-sizing:border-box;
    width:100%;

    margin:22px 0 10px;
    padding:17px 22px;

    border:1px solid rgba(104,220,255,.85);
    border-radius:15px;

    background:
        linear-gradient(
            100deg,
            #0B4DDB,
            #0A43C9
        );

    color:#fff;

    box-shadow:
        0 0 0 4px rgba(39,215,247,.12),
        0 10px 28px rgba(11,77,219,.34);

    font-family:"Montserrat",sans-serif;
    font-size:1rem;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.premium-pricing-v3-cta svg{
    width:19px;
    height:19px;

    stroke-width:2.2;

    transition:transform .25s ease;
}

.premium-pricing-v3-cta:hover{
    transform:translateY(-2px);

    box-shadow:
        0 0 0 5px rgba(39,215,247,.17),
        0 15px 38px rgba(11,77,219,.42);
}

.premium-pricing-v3-cta:hover svg{
    transform:translateX(4px);
}


/* Guarantee */

.premium-pricing-v3-guarantee{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;

    color:#657691;

    font-family:"Inter",sans-serif;
    font-size:.71rem;
    line-height:1.3;
    text-align:center;
}

.premium-pricing-v3-guarantee svg{
    width:16px;
    height:16px;

    flex-shrink:0;

    color:#0B4DDB;
    fill:rgba(11,77,219,.08);
}


/* Tablet */

@media(max-width:900px){

    .premium-pricing-v3{
        padding:50px 20px 56px;
    }

    .premium-pricing-v3-card{
        max-width:650px;

        margin-top:30px;
        padding:30px 38px 24px;
    }

}


/* Phone */

@media(max-width:600px){

    .premium-pricing-v3{
        padding:38px 0 42px;
    }

    .premium-pricing-v3-wrap{
        box-sizing:border-box;
        padding:0 12px;
    }

    .premium-pricing-v3-heading{
        padding:0 7px;
    }

    .premium-pricing-v3-label{
        margin-bottom:5px;

        font-size:.62rem;
    }

    .premium-pricing-v3-title{
        

        font-size:clamp(2rem,9.7vw,2.65rem);
        line-height:.95;
    }

    .premium-pricing-v3-card{
        width:100%;
        max-width:none;

        margin-top:23px;
        padding:22px 15px 17px;

        border-radius:22px;
    }

    .premium-pricing-v3-price sup{
        margin-top:5px;

        font-size:1.35rem;
    }

    .premium-pricing-v3-price > span{
        font-size:4.4rem;
    }

    .premium-pricing-v3-payment{
        margin:7px 0 10px;

        font-size:.65rem;
    }

    .premium-pricing-v3-value{
        gap:8px;

        margin-bottom:16px;
        padding:8px 11px;
    }

    .premium-pricing-v3-value::before,
    .premium-pricing-v3-value::after{
        display:none;
    }

    .premium-pricing-v3-value strong{
        font-size:.62rem;
    }

    .premium-pricing-v3-value-divider{
        height:15px;
    }

    .premium-pricing-v3-group--bonus{
        margin-top:14px;
    }

    .premium-pricing-v3-group-heading{
        gap:7px;

        margin-bottom:1px;
    }

    .premium-pricing-v3-group-symbol{
        width:27px;
        height:27px;

        flex-basis:27px;
    }

    .premium-pricing-v3-group-symbol svg{
        width:14px;
        height:14px;
    }

    .premium-pricing-v3-group-heading h3{
        font-size:.59rem;
        letter-spacing:.05em;
    }

    .premium-pricing-v3-list li{
        gap:9px;

        min-height:38px;
        padding:7px 2px;

        font-size:.66rem;
        line-height:1.25;
    }

    .premium-pricing-v3-tick{
        width:16px;
        height:16px;

        flex-basis:16px;
    }

    .premium-pricing-v3-tick svg{
        width:15px;
        height:15px;
    }

    .premium-pricing-v3-cta{
        margin:16px 0 8px;
        padding:13px 16px;

        border-radius:12px;

        font-size:.84rem;
    }

    .premium-pricing-v3-cta svg{
        width:16px;
        height:16px;
    }

    .premium-pricing-v3-guarantee{
        gap:4px;

        font-size:.58rem;
    }

    .premium-pricing-v3-guarantee svg{
        width:13px;
        height:13px;
    }

}

/* =========================================
   PREMIUM AFFILIATE V2
========================================= */

.premium-affiliate-v2{
    position:relative;
    overflow:hidden;

    box-sizing:border-box;
    width:100%;

    padding:70px 24px 76px;

    background:
        radial-gradient(
            circle at 50% 18%,
            rgba(39,215,247,.09),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #0B3B9C 0%,
            #0A3490 100%
        );

    text-align:center;
}

.premium-affiliate-v2::before{
    content:"";

    position:absolute;
    top:-90px;
    left:50%;

    width:390px;
    height:220px;

    transform:translateX(-50%);

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(255,210,31,.08),
            transparent 68%
        );

    pointer-events:none;
}

.premium-affiliate-v2-inner{
    position:relative;
    z-index:1;

    box-sizing:border-box;
    width:100%;
    max-width:760px;

    margin:0 auto;
}


/* Icon */

.premium-affiliate-v2-icon{
    width:48px;
    height:48px;

    display:grid;
    place-items:center;

    margin:0 auto 12px;

    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.10),
            rgba(255,255,255,.035)
        );

    color:#FFD94A;

    box-shadow:
        0 10px 28px rgba(0,0,0,.12),
        inset 0 1px 0 rgba(255,255,255,.12);
}

.premium-affiliate-v2-icon svg{
    width:25px;
    height:25px;

    stroke-width:1.9;
}


/* Commission */

.premium-affiliate-v2-rate{
    margin:0;

    color:#FFD94A;

    font-family:"Montserrat",sans-serif;
    font-size:4.8rem;
    font-weight:800;
    line-height:.9;
    letter-spacing:-.06em;

    text-shadow:
        0 8px 24px rgba(255,210,31,.10);
}

.premium-affiliate-v2-rate-label{
    margin-top:10px;

    color:rgba(255,255,255,.62);

    font-family:"Inter",sans-serif;
    font-size:.86rem;
    font-weight:400;
    line-height:1.3;
}


/* Title */

.premium-affiliate-v2-title{
    margin:16px 0 15px;

    color:#fff;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.2rem,4vw,3.4rem);
    font-weight:800;
    line-height:1;
    letter-spacing:-.04em;
}

.premium-affiliate-v2-title em{
    color:#FFD94A;

    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:500;
}


/* Copy */

.premium-affiliate-v2-copy{
    max-width:650px;

    margin:0 auto;

    color:rgba(255,255,255,.72);

    font-family:"Inter",sans-serif;
    font-size:.98rem;
    font-weight:400;
    line-height:1.75;
}

/* Tablet */

@media(max-width:900px){

    .premium-affiliate-v2{
        padding:60px 22px 66px;
    }

    .premium-affiliate-v2-rate{
        font-size:4.3rem;
    }

    .premium-affiliate-v2-title{
        margin-top:16px;
    }

    .premium-affiliate-v2-copy{
        max-width:600px;
    }

}


/* Phone */

@media(max-width:600px){

    .premium-affiliate-v2{
        padding:48px 22px 52px;
    }

    .premium-affiliate-v2-inner{
        max-width:430px;
    }

    .premium-affiliate-v2-icon{
        width:42px;
        height:42px;

        margin-bottom:10px;

        border-radius:14px;
    }

    .premium-affiliate-v2-icon svg{
        width:22px;
        height:22px;
    }

    .premium-affiliate-v2-rate{
        font-size:4rem;
    }

    .premium-affiliate-v2-rate-label{
        margin-top:8px;

        font-size:.8rem;
    }

    .premium-affiliate-v2-title{
        margin:16px 0 15px;

        font-size:clamp(2rem,9vw,2.7rem);
        line-height:.98;
    }

    .premium-affiliate-v2-copy{
        font-size:.91rem;
        line-height:1.7;
    }

}
.premium-affiliate-v2-note{

    margin-top:12px;

    color:rgba(255,255,255,.38);

    font-size:.68rem;

    line-height:1.4;

}
/* =========================================
   PREMIUM FAQ V2
========================================= */

.premium-faq-v2{
    box-sizing:border-box;
    width:100%;

    padding:76px 24px 84px;

    background:#ffffff;
}

.premium-faq-v2-inner{
    box-sizing:border-box;
    width:100%;
    max-width:1120px;

    margin:0 auto;
}


/* Heading */

.premium-faq-v2-heading{
    text-align:center;
}

.premium-faq-v2-label{
    display:block;

    margin-bottom:11px;

    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:700;
    line-height:1.2;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.premium-faq-v2-title{
    margin:0;

    color:#0A2F8F;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.8rem,5vw,4.6rem);
    font-weight:800;
    line-height:.94;
    letter-spacing:-.045em;
}

.premium-faq-v2-title em{
    color:#0B4DDB;

    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:500;
}


/* FAQ list */

.premium-faq-v2-list{
    width:100%;
    max-width:760px;

    margin:50px auto 0;

    border-top:1px solid rgba(11,77,219,.10);
}


/* Individual question */

.premium-faq-v2-item{
    border-bottom:1px solid rgba(11,77,219,.10);
}

.premium-faq-v2-question{
    appearance:none;

    box-sizing:border-box;
    width:100%;

    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;

    margin:0;
    padding:27px 4px;

    border:0;

    background:transparent;
    color:#0A3A9B;

    font-family:"Inter",sans-serif;
    font-size:.97rem;
    font-weight:700;
    line-height:1.48;
    text-align:left;

    cursor:pointer;
    user-select:none;

    transition:
        color .25s ease,
        background .25s ease,
        padding .25s ease;
}

.premium-faq-v2-question:hover{
    color:#0B4DDB;
}

.premium-faq-v2-question:focus-visible{
    outline:2px solid rgba(11,77,219,.55);
    outline-offset:4px;
    border-radius:4px;
}


/* Plus to X */

.premium-faq-v2-icon{
    display:block;
    flex:0 0 auto;

    margin-top:-1px;

    color:#0B4DDB;
    opacity:.72;

    font-family:"Inter",sans-serif;
    font-size:1.35rem;
    font-weight:500;
    line-height:1;

    transition:
        transform .3s cubic-bezier(.22,.61,.36,1),
        opacity .25s ease;
}

.premium-faq-v2-item.is-open
.premium-faq-v2-icon{
    opacity:1;
    transform:rotate(45deg);
}


/* Answer animation */

.premium-faq-v2-answer{
    display:grid;
    grid-template-rows:0fr;

    opacity:0;
    transform:translateY(-4px);

    transition:
        grid-template-rows .38s cubic-bezier(.22,.61,.36,1),
        opacity .25s ease,
        transform .38s cubic-bezier(.22,.61,.36,1);
}

.premium-faq-v2-item.is-open
.premium-faq-v2-answer{
    grid-template-rows:1fr;
    opacity:1;
    transform:translateY(0);
}
.premium-faq-v2-answer-inner{
    min-height:0;
    overflow:hidden;

    box-sizing:border-box;

    padding:0 42px 0 4px;

    color:#60718c;

    font-family:"Inter",sans-serif;
    font-size:.9rem;
    font-weight:400;
    line-height:1.75;

    transition:
        padding .38s cubic-bezier(.22,.61,.36,1);
}

.premium-faq-v2-item.is-open
.premium-faq-v2-answer-inner{
    padding-bottom:24px;
}

.premium-faq-v2-answer-inner strong{
    color:#31445f;
    font-weight:700;
}


/* Desktop hover only */

@media(min-width:901px){

    .premium-faq-v2-question:hover{
        padding-right:8px;
        padding-left:8px;

        background:rgba(11,77,219,.018);
    }

}


/* Tablet */

@media(max-width:900px){

    .premium-faq-v2{
        padding:64px 24px 70px;
    }

    .premium-faq-v2-list{
        max-width:720px;

        margin-top:44px;
    }

}


/* Phone */

@media(max-width:600px){

    .premium-faq-v2{
        padding:44px 0 52px;
    }

    .premium-faq-v2-inner{
        padding:0 18px;
    }

    .premium-faq-v2-heading{
        padding:0 4px;
    }

    .premium-faq-v2-label{
        margin-bottom:8px;

        font-size:.64rem;
    }

    .premium-faq-v2-title{
        font-size:clamp(2.15rem,10.5vw,2.85rem);
        line-height:.96;
    }

    .premium-faq-v2-list{
        margin-top:32px;
    }

    .premium-faq-v2-question{
        gap:14px;

        min-height:72px;
        padding:18px 2px;

        font-size:.91rem;
        line-height:1.42;
    }

    .premium-faq-v2-icon{
        margin-top:1px;

        font-size:1.25rem;
    }

    .premium-faq-v2-answer-inner{
        padding-right:24px;
        padding-left:2px;

        font-size:.84rem;
        line-height:1.68;
    }

    .premium-faq-v2-item.is-open
    .premium-faq-v2-answer-inner{
        padding-bottom:19px;
    }

}


/* Very small phones */

@media(max-width:380px){

    .premium-faq-v2-inner{
        padding:0 15px;
    }

    .premium-faq-v2-title{
        font-size:2.05rem;
    }

    .premium-faq-v2-question{
        min-height:68px;

        font-size:.86rem;
    }

}
.premium-faq-v2-video-intro{

    margin:18px 0 14px;

    font-size:.84rem;
    color:#60718c;

}

.premium-faq-v2-video-grid{

    display:grid;
    grid-template-columns:repeat(2,1fr);

    gap:16px;

}

.premium-faq-v2-video{

    display:block;

    text-decoration:none;

    border-radius:14px;
    overflow:hidden;

    border:1px solid rgba(11,77,219,.12);

    background:#fff;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;

}

.premium-faq-v2-video:hover{

    transform:translateY(-3px);

    border-color:rgba(11,77,219,.25);

    box-shadow:0 14px 30px rgba(11,77,219,.10);

}

.premium-faq-v2-video img{

    display:block;

    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;

}

.premium-faq-v2-video span{

    display:block;

    padding:12px;

    color:#0A3A9B;

    font-size:.84rem;
    font-weight:700;

    text-align:center;

}

@media(max-width:600px){

.premium-faq-v2-video-grid{

    display:flex;
    flex-direction:column;
    align-items:center;

    gap:12px;

}

.premium-faq-v2-video{

    width:100%;
    max-width:260px;

}
}
.premium-faq-v2-inline-link{
    color:#0B4DDB;
    font-weight:700;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:3px;

    transition:
        color .2s ease,
        text-decoration-color .2s ease;
}

.premium-faq-v2-inline-link:hover{
    color:#0A2F8F;
}
/* =========================================
   PREMIUM REAL CLASS V1
========================================= */

.premium-real-class-v1{
    --premium-real-class-accent:#20B857;
    --premium-real-class-accent-rgb:32,184,87;

    position:relative;
    overflow:hidden;

    box-sizing:border-box;
    width:100%;

   padding:58px 24px 62px;

    background:#e5ecfd;
}

.premium-real-class-v1::before{
    content:"";

    position:absolute;
    top:-42px;
    left:-5%;

    width:110%;
    height:82px;

    border-radius:0 0 50% 50%;

    background:#e5ecfd;

    pointer-events:none;
}

.premium-real-class-v1-inner{
    position:relative;
    z-index:1;

    box-sizing:border-box;
    width:100%;
    max-width:1120px;

    margin:0 auto;
}


/* Heading */

.premium-real-class-v1-heading{
    text-align:center;
}

.premium-real-class-v1-label{
    display:block;

    margin-bottom:10px;

    color:#0B4DDB;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.premium-real-class-v1-title{
    margin:0;

    color:#0A2F8F;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.8rem,5vw,4.55rem);
    font-weight:800;
    line-height:.94;
    letter-spacing:-.045em;
}

.premium-real-class-v1-title em{
    color:#0B4DDB;

    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:500;
}

.premium-real-class-v1-subtitle{
    max-width:720px;

    margin:22px auto 0;

    color:#60718c;

    font-family:"Inter",sans-serif;
    font-size:1rem;
    font-weight:400;
    line-height:1.65;
}


/* Level selector */

.premium-real-class-v1-tabs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;

    width:100%;
    max-width:760px;

    margin:26px auto 16px;

    border-bottom:1px solid rgba(11,77,219,.13);
}
.premium-real-class-v1-tab{
    appearance:none;

    position:relative;

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

    box-sizing:border-box;
    min-width:0;

    padding:13px 12px 15px;

    border:0;
    border-radius:0;

    background:transparent;
    color:#70809a;

    box-shadow:none;

    cursor:pointer;

    transition:
        color .25s ease,
        background .25s ease;
}

.premium-real-class-v1-tab::after{
    content:"";

    position:absolute;
    right:18px;
    bottom:-1px;
    left:18px;

    height:4px;

    border-radius:999px 999px 0 0;

    background:var(--premium-real-class-accent);

    opacity:0;
    transform:scaleX(.45);

    transition:
        opacity .25s ease,
        transform .3s cubic-bezier(.22,.61,.36,1);
}

.premium-real-class-v1-tab:hover{
    background:rgba(255,255,255,.30);
    color:#29476f;
}

.premium-real-class-v1-tab.is-active{
    background:rgba(255,255,255,.25);
    color:#102952;

    box-shadow:none;
}

.premium-real-class-v1-tab.is-active::after{
    opacity:1;
    transform:scaleX(1);
}

.premium-real-class-v1-tab-dot{
    width:18px;
    height:18px;

    flex:0 0 18px;

    border-radius:50%;

    background:#c6d1e2;

    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.65);
}

.premium-real-class-v1-tab[data-level="beginner"]
.premium-real-class-v1-tab-dot{
    background:#20B857;
}

.premium-real-class-v1-tab[data-level="elementary"]
.premium-real-class-v1-tab-dot{
    background:#238AF4;
}

.premium-real-class-v1-tab[data-level="intermediate"]
.premium-real-class-v1-tab-dot{
    background:#FF7918;
}

.premium-real-class-v1-tab-copy{
    display:block;
}

.premium-real-class-v1-tab-copy strong{
    font-family:"Montserrat",sans-serif;
    font-size:.87rem;
    font-weight:800;
    line-height:1.2;
}

.premium-real-class-v1-tab-copy small{
    margin-left:4px;

    font-size:.82em;
    font-weight:800;
}

.premium-real-class-v1-tab[data-level="beginner"]
.premium-real-class-v1-tab-copy small{
    color:#20B857;
}

.premium-real-class-v1-tab[data-level="elementary"]
.premium-real-class-v1-tab-copy small{
    color:#238AF4;
}

.premium-real-class-v1-tab[data-level="intermediate"]
.premium-real-class-v1-tab-copy small{
    color:#FF7918;
}


/* Player */

.premium-real-class-v1-player-shell{
    position:relative;

    width:100%;
    max-width:720px;

    margin:0 auto;

    padding:7px;

    border:1px solid rgba(
        var(--premium-real-class-accent-rgb),
        .22
    );
    border-radius:24px;

    background:rgba(255,255,255,.72);

    box-shadow:
        0 28px 72px rgba(24,57,110,.20),
        0 8px 24px rgba(24,57,110,.08),
        0 0 0 5px rgba(
            var(--premium-real-class-accent-rgb),
            .04
        ),
        inset 0 1px 0 rgba(255,255,255,.95);

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);

    transition:
        border-color .35s ease,
        box-shadow .35s ease;
}

.premium-real-class-v1-player{
    position:relative;
    overflow:hidden;

    width:100%;
    aspect-ratio:16/9;

    border-radius:16px;

    background:#071b4a;
}

.premium-real-class-v1-player iframe{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    border:0;

    opacity:1;

    transition:
        opacity .25s ease,
        transform .35s ease;
}

.premium-real-class-v1-player iframe.is-changing{
    opacity:0;
    transform:scale(.985);
}


/* Proof */

.premium-real-class-v1-proof{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:18px;

    margin:18px auto 0;

    color:#0A3A9B;
}

.premium-real-class-v1-proof-item{
    display:flex;
    align-items:center;
    gap:8px;

    font-family:"Montserrat",sans-serif;
    font-size:.78rem;
    font-weight:800;
    line-height:1.3;
}

.premium-real-class-v1-proof-item svg{
    width:19px;
    height:19px;

    color:var(--premium-real-class-accent);

    stroke-width:2.2;

    transition:color .35s ease;
}

.premium-real-class-v1-proof-divider{
    width:1px;
    height:20px;

    background:rgba(11,77,219,.22);
}

.premium-real-class-v1-note{
    max-width:620px;

    margin:10px auto 0;

    color:#60718c;

    font-family:"Inter",sans-serif;
    font-size:.79rem;
    font-style:italic;
    line-height:1.55;
    text-align:center;
}


/* Tablet */

@media(max-width:900px){

    .premium-real-class-v1{
        padding:52px 22px 58px;
    }

    .premium-real-class-v1-tabs{
        max-width:700px;
    }

    .premium-real-class-v1-player-shell{
        max-width:640px;
    }

}


/* Phone */

@media(max-width:600px){
    
.premium-real-class-v1-player-shell{
    max-width:400px;
}
    .premium-real-class-v1{
        padding:40px 0 44px;
    }

    .premium-real-class-v1-inner{
        padding:0 14px;
    }

    .premium-real-class-v1-heading{
        padding:0 5px;
    }

    .premium-real-class-v1-label{
        margin-bottom:7px;

        font-size:.62rem;
    }

    .premium-real-class-v1-title{
        font-size:clamp(2.05rem,10vw,2.75rem);
        line-height:.96;
    }

    .premium-real-class-v1-subtitle{
        max-width:390px;

        margin-top:17px;

        font-size:.88rem;
        line-height:1.58;
    }

    .premium-real-class-v1-tabs{
        gap:6px;

        margin:25px auto 14px;
    }
    
.premium-real-class-v1-tab{
    gap:5px;

    min-height:46px;
    padding:9px 3px 12px;

    border-radius:0;
}
.premium-real-class-v1-tab::after{
    right:6px;
    left:6px;

    height:3px;
}
    .premium-real-class-v1-tab-dot{
        width:12px;
        height:12px;

        flex-basis:12px;
    }

    .premium-real-class-v1-tab-copy strong{
        font-size:.69rem;
    }

    .premium-real-class-v1-tab-copy small{
        font-size:.62rem;
    }

    .premium-real-class-v1-player-shell{
        padding:4px;

        border-radius:16px;
    }

    .premium-real-class-v1-player{
        border-radius:12px;
    }

.premium-real-class-v1-proof{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;

    margin-top:16px;
}

    .premium-real-class-v1-proof-divider{
        display:none;
    }

.premium-real-class-v1-proof-item{
    justify-content:center;
    gap:6px;

    text-align:center;

    font-size:.66rem;
}

    .premium-real-class-v1-proof-item svg{
        width:15px;
        height:15px;

        flex-shrink:0;
    }

    .premium-real-class-v1-note{
        margin-top:13px;

        font-size:.68rem;
        line-height:1.45;
    }

}


/* Very small phones */

@media(max-width:380px){

    .premium-real-class-v1-inner{
        padding:0 10px;
    }

}
/* =========================================
   PREMIUM FINAL CTA + FOOTER V1
========================================= */


/* Final CTA */

.premium-final-v1-cta{
    position:relative;
    overflow:hidden;

    box-sizing:border-box;
    width:100%;

    padding:78px 24px 82px;

    background:
        radial-gradient(
            circle at 50% 42%,
            rgba(31,95,220,.20),
            transparent 42%
        ),
        linear-gradient(
            135deg,
            #0B3F9E 0%,
            #062965 100%
        );

    text-align:center;
}

.premium-final-v1-cta-inner{
    position:relative;
    z-index:1;

    box-sizing:border-box;
    width:100%;
    max-width:900px;

    margin:0 auto;
}

.premium-final-v1-label{
    display:block;

    margin-bottom:13px;

    color:#FFD94A;

    font-family:"Montserrat",sans-serif;
    font-size:.72rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.18em;
    text-transform:uppercase;
}

.premium-final-v1-title{
    max-width:760px;

    margin:0 auto;

    color:#FFFFFF;

    font-family:"Montserrat",sans-serif;
    font-size:clamp(2.7rem,5.2vw,4.7rem);
    font-weight:800;
    line-height:.96;
    letter-spacing:-.045em;
}

.premium-final-v1-title em{
    color:#FFD94A;

    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:500;
}

.premium-final-v1-description{
    max-width:800px;

    margin:25px auto 0;

    color:rgba(255,255,255,.62);

    font-family:"Inter",sans-serif;
    font-size:.96rem;
    font-weight:400;
    line-height:1.75;
}

.premium-final-v1-main-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    min-width:290px;

    margin-top:31px;
    padding:17px 33px;

    border-radius:999px;

    background:#FFD43B;
    color:#082864;

    box-shadow:
        0 14px 38px rgba(255,205,40,.24),
        inset 0 1px 0 rgba(255,255,255,.44);

    font-family:"Montserrat",sans-serif;
    font-size:.98rem;
    font-weight:800;
    line-height:1;
    text-decoration:none;

    transition:
        transform .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}

.premium-final-v1-main-button:hover{
    transform:translateY(-3px);

    background:#FFE266;

    box-shadow:
        0 20px 48px rgba(255,205,40,.31),
        inset 0 1px 0 rgba(255,255,255,.55);
}

.premium-final-v1-main-button svg{
    width:19px;
    height:19px;

    stroke-width:2.4;

    transition:transform .25s ease;
}

.premium-final-v1-main-button:hover svg{
    transform:translateX(3px);
}


/* CTA reassurance */

.premium-final-v1-reassurance{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:11px;

    margin-top:19px;

    color:rgba(255,255,255,.48);

    font-family:"Inter",sans-serif;
    font-size:.77rem;
    line-height:1.4;
}

.premium-final-v1-reassurance > span:not(
    .premium-final-v1-reassurance-divider
){
    display:flex;
    align-items:center;
    gap:6px;
}


.premium-final-v1-reassurance-divider{
    width:3px;
    height:3px;

    border-radius:50%;

    background:rgba(255,255,255,.28);
}


/* Social bar */

.premium-final-v1-socials{

    position:absolute;

    left:50%;
    transform:translateX(-50%);

    display:flex;
    align-items:center;
    gap:13px;

}
.premium-final-v1-footer{

    position:relative;

}

.premium-final-v1-social-link{
    display:grid;
    place-items:center;

    width:42px;
    height:42px;

    padding:0;

    border:1px solid rgba(255,255,255,.10);
    border-radius:50%;

    background:transparent;
    color:rgba(255,255,255,.59);

    font-family:"Inter",sans-serif;
    font-size:.82rem;
    font-weight:500;
    line-height:1;
    text-decoration:none;

    transition:
        color .25s ease,
        border-color .25s ease,
        background .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.premium-final-v1-social-link:hover{
    transform:translateY(-2px);

    border-color:rgba(39,215,247,.32);

    background:rgba(39,215,247,.045);
    color:#FFFFFF;

    box-shadow:0 8px 24px rgba(11,77,219,.12);
}

.premium-final-v1-social-icon{
    width:18px;
    height:18px;

    display:block;
    flex:0 0 18px;

     color:#FFFFFF;
}
.premium-final-v1-social-icon svg{
    display:block;

    width:100%;
    height:100%;

    fill:currentColor;
}
.premium-final-v1-social-link:hover
.premium-final-v1-social-icon{
    color:#FFFFFF;
}

/* Footer */

.premium-final-v1-footer{
    box-sizing:border-box;
    width:100%;

    display:flex;
align-items:center;
justify-content:space-between;
    align-items:center;
    gap:28px;

    padding:22px 40px;

    border:0;

    background:#0A0A0A;
}

.premium-final-v1-footer-brand{
    display:flex;
    align-items:center;
    gap:11px;
}

.premium-final-v1-footer-logo{
    display:block;

    width:39px;
    height:39px;

    object-fit:contain;
}

.premium-final-v1-footer-brand-copy{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.premium-final-v1-footer-brand-copy strong{
    color:#FFFFFF;

    font-family:"Montserrat",sans-serif;
    font-size:.84rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.01em;
    text-transform:uppercase;
}

.premium-final-v1-footer-brand-copy span{
    margin-top:3px;

    color:rgba(255,255,255,.40);

    font-family:"Inter",sans-serif;
    font-size:.67rem;
    line-height:1.2;
}

.premium-final-v1-copyright{
    margin-left:auto;

    color:rgba(255,255,255,.31);

    font-family:"Inter",sans-serif;
    font-size:.72rem;
    line-height:1.4;
    text-align:right;
}


/* Tablet */

@media(max-width:900px){

    .premium-final-v1-cta{
        padding:68px 24px 72px;
    }

    .premium-final-v1-footer{
        padding:20px 28px;
    }

}


/* Phone */

@media(max-width:900px){

    .premium-final-v1-cta{
        padding:54px 18px 58px;
    }

    .premium-final-v1-label{
        margin-bottom:10px;

        font-size:.63rem;
    }

    .premium-final-v1-title{
        font-size:clamp(2.45rem,11vw,3.3rem);
        line-height:.96;
    }

.premium-final-v1-description{

    max-width:320px;

    margin-top:20px;

    font-size:.83rem;
    line-height:1.65;

}

    .premium-final-v1-main-button{
        width:100%;
        min-width:0;
        max-width:330px;

        margin-top:27px;
        padding:16px 22px;

        font-size:.91rem;
    }

    .premium-final-v1-reassurance{
        gap:8px;

        margin-top:17px;

        font-size:.66rem;
    }

.premium-final-v1-social-link{
    width:38px;
    height:38px;
    padding:0;
}

.premium-final-v1-social-icon{
    width:15px;
    height:15px;

    flex-basis:15px;
}

.premium-final-v1-footer{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:18px;

    padding:18px 18px 20px;

    border:0;

    text-align:center;
}

.premium-final-v1-footer-brand{
    justify-self:auto;
}

.premium-final-v1-socials{
    position:static;

    order:-1;

    left:auto;
    transform:none;

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

    margin:3px 0 5px;
    padding:0;
}

.premium-final-v1-copyright{
    width:100%;
    margin-top:4px;
    margin-left:0;

    font-size:.67rem;
    line-height:1.4;
    text-align:center;
}

}


/* Very small phones */

@media(max-width:380px){

    .premium-final-v1-reassurance{
        max-width:300px;

        margin-right:auto;
        margin-left:auto;
    }

}

@media(max-width:600px){


    /* Price line below the method video */
    .premium-method-price{
        box-sizing:border-box;

        width:calc(100% - 32px);
        max-width:360px;

        margin-right:auto;
        margin-left:auto;
        padding:10px 16px;

        white-space:normal;
        text-align:center;

        font-size:.78rem;
        line-height:1.45;
    }

}
@media (min-width:521px) and (max-width:900px){

    .premium-image-note{
        top:165px;
        left:16px;
        right:auto;
    }

}