:root{--vg-blue:#0e2a6b;--vg-blue-dark:#081a47;--vg-blue-light:#1f4099;--vg-yellow:#ffc72c;--vg-yellow-dark:#e5ae0f;--vg-yellow-soft:#fff1c4;--vg-light:#f5f7fb;--vg-muted:#64748b;--vg-text:#1f2937;--vg-radius:22px;--vg-pixar-yellow:0 5px 0 #b8860a,0 10px 18px rgba(229,174,15,.35),inset 0 2px 0 rgba(255,255,255,.6),inset 0 -3px 0 rgba(0,0,0,.08);--vg-pixar-blue:0 5px 0 #03102c,0 10px 18px rgba(14,42,107,.45),inset 0 2px 0 rgba(255,255,255,.25),inset 0 -3px 0 rgba(0,0,0,.3)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--vg-text);overflow-x:hidden;background:#fff}img{max-width:100%;display:block}a{text-decoration:none}.container{max-width:1200px}.section-padding{padding:110px 0}.section-kicker{display:inline-flex;align-items:center;gap:14px;color:var(--vg-blue);font-size:.82rem;font-weight:900;letter-spacing:.22em;text-transform:uppercase;margin-bottom:18px}.section-kicker:before,.section-kicker:after{content:"";width:30px;height:2px;background:var(--vg-yellow)}.section-title{color:var(--vg-blue);font-size:clamp(2rem,3vw,3.1rem);font-weight:950;line-height:1.08;margin-bottom:18px}.section-title span{color:var(--vg-yellow-dark)}.section-lead{color:var(--vg-muted);font-size:clamp(1rem,1.2vw,1.25rem);line-height:1.65;max-width:760px;margin:0 auto}.bg-vg-light{background:var(--vg-light)}.bg-vg-blue{background:var(--vg-blue)}.text-vg-yellow{color:var(--vg-yellow-dark)}.text-vg-blue{color:var(--vg-blue)}
.btn-vg{min-height:52px;border-radius:999px;padding:13px 28px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s ease;border:0}.btn-vg:hover{transform:translateY(-2px)}.btn-vg:active{transform:translateY(2px)}.btn-vg-yellow{background:var(--vg-yellow);color:var(--vg-blue);box-shadow:var(--vg-pixar-yellow)}.btn-vg-blue{background:linear-gradient(180deg,#356ee2 0%,var(--vg-blue) 100%);color:#fff;box-shadow:var(--vg-pixar-blue)}.btn-vg-outline{background:rgba(255,255,255,.18);border:2px solid rgba(255,255,255,.85);color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.18)}
.navbar{height:78px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);box-shadow:0 4px 14px rgba(15,23,42,.1)}.navbar-brand img{width:220px}.navbar .nav-link{font-weight:850;color:#1f2937!important;margin:0 10px}.navbar .nav-link:hover{color:var(--vg-blue)!important}.navbar-toggler{border:0}.navbar-toggler:focus{box-shadow:none}
.hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;margin-top:78px;background:url('../images/herosection.jpeg') center/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,26,71,.86),rgba(14,42,107,.62),rgba(8,26,71,.45))}.hero-content{position:relative;z-index:1;color:#fff}.hero h1{font-size:clamp(3rem,5vw,5rem);font-weight:950;line-height:1.12}.hero h1 span{color:var(--vg-yellow)}.hero p{font-size:1.25rem;line-height:1.7;color:rgba(255,255,255,.88);max-width:680px}.hero-crest{position:relative;z-index:1;filter:drop-shadow(0 25px 35px rgba(0,0,0,.25));max-width:440px;margin-left:auto}.hero-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}
.about-img-wrap{position:relative}.about-img-wrap:before{content:"";position:absolute;left:-16px;top:-16px;width:90px;height:90px;border:5px solid var(--vg-blue);border-radius:18px;z-index:0}.about-img-wrap:after{content:"";position:absolute;right:-22px;bottom:-22px;width:130px;height:130px;background:var(--vg-yellow);border-radius:50%;z-index:0}.about-img{position:relative;z-index:1;border-radius:20px;box-shadow:0 20px 45px rgba(15,23,42,.13);width:100%;height:430px;object-fit:cover}.mini-card{padding:26px;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.1);height:100%}.icon-box{width:54px;height:54px;border-radius:14px;background:var(--vg-yellow);color:var(--vg-blue);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.3rem;box-shadow:var(--vg-pixar-yellow);margin-bottom:22px}
.stats-band{background:var(--vg-blue);color:#fff;padding:26px 0}.stat{text-align:center}.stat strong{font-size:2rem;color:var(--vg-yellow)}.stat span{display:block;color:rgba(255,255,255,.72);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}
.program-card,.news-card{border-radius:22px;overflow:hidden;background:#fff;border:1px solid #e5eaf2;box-shadow:0 10px 30px rgba(15,23,42,.08);height:100%;position:relative}.program-card img{height:360px;width:100%;object-fit:cover}.program-badge,.news-badge{position:absolute;top:24px;left:24px;border-radius:999px;background:var(--vg-yellow);color:var(--vg-blue);font-weight:950;padding:8px 18px;font-size:.8rem}.program-body,.news-body{padding:26px}.program-body h3,.news-body h3{color:var(--vg-blue);font-weight:950}.schedule-card,.map-card,.fee-card,.contact-card,.form-card{background:#fff;border:1px solid #e5eaf2;border-radius:22px;box-shadow:0 10px 30px rgba(15,23,42,.08)}.schedule-card{padding:28px}.session{border-radius:20px;border:1px solid #e5eaf2;overflow:hidden;margin-bottom:18px}.session-head{background:var(--vg-blue);color:#fff;padding:18px 22px;display:flex;justify-content:space-between;font-weight:950}.session-body{padding:20px 22px}.map-card{min-height:420px;display:flex;align-items:center;justify-content:center;color:var(--vg-blue);font-size:3rem}.fee-card{padding:34px;height:100%;position:relative}.fee-card.featured{border:3px solid var(--vg-yellow);background:linear-gradient(180deg,#fff1c4,#fff)}.best-badge{position:absolute;top:-20px;left:50%;transform:translateX(-50%);background:var(--vg-blue);color:#fff;border-radius:999px;padding:10px 22px;font-size:.78rem;font-weight:950;letter-spacing:.15em}.price{color:var(--vg-blue);font-size:2.7rem;font-weight:950}.feature-list{list-style:none;padding:0;margin:26px 0}.feature-list li{padding:12px 0;border-bottom:1px solid #edf2f7;color:var(--vg-muted)}.feature-list li:before{content:"✓";color:var(--vg-yellow-dark);font-weight:950;margin-right:12px}.why-section{background:var(--vg-blue);color:#fff}.why-section .section-title{color:#fff}.why-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:32px;height:100%;color:rgba(255,255,255,.78)}.why-card h3{color:#fff;font-size:1.25rem;font-weight:950}.team-card{border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.08);border:1px solid #e5eaf2;text-align:center}.team-top{height:190px;background:linear-gradient(135deg,#ffe9a8,#e2a700);display:flex;align-items:center;justify-content:center}.team-card:nth-child(2) .team-top{background:linear-gradient(135deg,#bfdbfe,#1d4ed8)}.team-card:nth-child(3) .team-top{background:linear-gradient(135deg,#a7f3d0,#0f766e)}.team-icon{width:110px;height:110px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--vg-blue);font-size:2rem;box-shadow:0 12px 24px rgba(0,0,0,.18)}.team-body{padding:30px}.team-role{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:950;color:#65739b}.gallery-grid{display:grid;grid-template-columns:2fr 1fr;gap:22px}.gallery-grid img{width:100%;height:100%;object-fit:cover;border-radius:18px}.gallery-large{min-height:480px}.sponsor-card{height:140px;background:#fff;border:1px solid #e5eaf2;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:20px;box-shadow:0 10px 25px rgba(15,23,42,.05)}.partner-cta{background:var(--vg-yellow);border-radius:22px;padding:38px;color:var(--vg-blue)}.news-card img{height:240px;width:100%;object-fit:cover}.faq .accordion-item{border:1px solid #e5eaf2!important;border-radius:14px!important;margin-bottom:14px;overflow:hidden}.faq .accordion-button{font-weight:950;color:var(--vg-blue);padding:22px}.faq .accordion-button:not(.collapsed){background:#fff;color:var(--vg-blue);box-shadow:none}.contact-card{background:var(--vg-blue);color:#fff;padding:36px;height:100%}.contact-line{display:flex;gap:18px;align-items:center;margin:28px 0;color:rgba(255,255,255,.8)}.form-card{padding:36px}.form-label{font-size:.8rem;font-weight:950;color:var(--vg-blue);text-transform:uppercase}.form-control,.form-select{min-height:54px;border-radius:10px;border-color:#dbe3ef;font-size:1rem}.footer{background:var(--vg-blue-dark);color:#fff;padding:70px 0}.footer a{color:rgba(255,255,255,.72);display:block;margin:12px 0}.footer h5{font-weight:950;letter-spacing:.12em;font-size:.9rem}.modal-content{border-radius:22px;overflow:hidden;border:0}.modal-header{background:var(--vg-blue);color:#fff;min-height:110px}.modal-footer{position:sticky;bottom:0;background:#fff}
.policy-hero{margin-top:78px;background:linear-gradient(180deg,#fff4cc,#fff);padding:70px 0}.policy-card{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:20px;margin-top:30px}.coming-main{margin-top:78px;min-height:620px;display:grid;place-items:center;text-align:center;padding:60px 0}
@media(max-width:991px){.navbar{height:auto;min-height:78px}.navbar-brand img{width:190px}.navbar-collapse{background:#fff;padding:20px;border-radius:18px;box-shadow:0 15px 35px rgba(15,23,42,.12);margin-top:15px}.hero{min-height:auto;padding:90px 0}.hero-crest{margin:40px auto 0;max-width:300px}.section-padding{padding:80px 0}.gallery-grid{grid-template-columns:1fr}.gallery-large{min-height:300px}}@media(max-width:767px){.btn-vg{width:100%}.hero-actions{display:grid}.section-padding{padding:65px 0}.program-card img{height:280px}.price{font-size:2.1rem}.partner-cta{text-align:center}.section-title{font-size:2.1rem}.hero h1{font-size:2.6rem}}

/* Real image asset refinements */
.navbar-brand img{object-fit:contain}.hero-crest{border-radius:24px;background:#fff;padding:12px}.about-img,.program-card img,.gallery-grid img,.news-card img{object-fit:cover}.footer img{object-fit:contain}

/* Navbar logo refinements: real crest + clean text lockup */
.navbar{
  height:82px;
  padding:0;
}
.navbar .container{
  min-height:82px;
}
.vg-brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  max-width:320px;
  padding:6px 12px 6px 6px;
  border-radius:999px;
}
.vg-brand .brand-logo{
  width:56px !important;
  height:56px;
  min-width:56px;
  border-radius:50%;
  object-fit:cover;
  background:#fff;
  border:2px solid rgba(14,42,107,.12);
  box-shadow:0 6px 16px rgba(14,42,107,.14);
}
.vg-brand .brand-text{
  display:flex;
  flex-direction:column;
  line-height:1.02;
  text-transform:uppercase;
  color:var(--vg-blue);
  white-space:nowrap;
}
.vg-brand .brand-text strong{
  font-size:1.28rem;
  font-weight:950;
  letter-spacing:.02em;
}
.vg-brand .brand-text small{
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.065em;
  color:#49608f;
}
.hero{
  margin-top:82px;
}
.policy-hero,
.coming-main{
  margin-top:82px;
}
.hero-crest{
  border-radius:50%;
  background:transparent;
  padding:0;
  border:0;
}
.footer-brand{
  display:flex;
  align-items:center;
  gap:14px;
}
.footer-brand img{
  width:68px;
  height:68px;
  border-radius:50%;
  object-fit:cover;
  background:#fff;
  border:2px solid rgba(255,255,255,.25);
}
.footer-brand strong,
.footer-brand span{
  display:block;
  color:#fff;
  line-height:1.1;
}
.footer-brand strong{
  font-size:1.25rem;
  font-weight:950;
}
.footer-brand span{
  color:rgba(255,255,255,.78);
  font-weight:800;
}
@media(max-width:991px){
  .navbar{height:auto;min-height:82px;}
  .navbar .container{min-height:82px;}
  .vg-brand .brand-logo{width:50px !important;height:50px;min-width:50px;}
  .vg-brand .brand-text strong{font-size:1.08rem;}
  .vg-brand .brand-text small{font-size:.64rem;}
}
@media(max-width:420px){
  .vg-brand{gap:9px;padding-right:6px;}
  .vg-brand .brand-logo{width:46px !important;height:46px;min-width:46px;}
  .vg-brand .brand-text strong{font-size:.95rem;}
  .vg-brand .brand-text small{font-size:.56rem;letter-spacing:.035em;}
}



/*Gallery Page*/

#gallery .vg-gallery-bento {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: 300px !important;
  gap: 16px !important;
  width: 100% !important;
}

#gallery .vg-gallery-box {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 10px 30px rgba(15,23,42,.12) !important;
}

#gallery .vg-gallery-large {
  grid-column: span 2 !important;
  grid-row: span 2 !important;
}

#gallery .vg-gallery-box img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

@media(max-width:991px) {
  #gallery .vg-gallery-bento {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media(max-width:575px) {
  #gallery .vg-gallery-bento {
    grid-template-columns: 1fr !important;
    grid-auto-rows: 260px !important;
  }

  #gallery .vg-gallery-large {
    grid-column: span 1 !important;
    grid-row: span 1 !important;
  }
}


/*Hover effect*/


/* Gallery Hover Effect */
/* ===========================
   GALLERY HOVER EFFECT
   =========================== */

#gallery .vg-gallery-box{

  cursor:pointer;

  position:relative;

  overflow:hidden !important;

  transition:
  transform .35s ease,
  box-shadow .35s ease;

}


/* Image Zoom */

#gallery .vg-gallery-box img{

  width:100% !important;

  height:100% !important;

  object-fit:cover !important;

  display:block;

  transform:scale(1);

  transition:
  transform .75s ease,
  filter .55s ease;

}


/* Hover Zoom */

#gallery .vg-gallery-box:hover img{

  transform:scale(1.12);

  filter:

  brightness(.82)

  saturate(1.15);

}


/* Card Lift */

#gallery .vg-gallery-box:hover{

  transform:translateY(-8px);

  box-shadow:

  0 25px 45px rgba(8,26,71,.20);

}


/* Dark Overlay */

#gallery .vg-gallery-box::before{

  content:"";

  position:absolute;

  inset:0;

  z-index:2;

  opacity:0;

  background:

  linear-gradient(

  180deg,

  rgba(8,26,71,0) 20%,

  rgba(8,26,71,.30) 60%,

  rgba(8,26,71,.92) 100%

  );

  transition:opacity .35s ease;

}


/* Academy Name */

#gallery .vg-gallery-box::after{

  content:"Vision Girls Academy";

  position:absolute;

  left:25px;

  bottom:22px;

  z-index:3;

  color:#fff;

  font-size:14px;

  font-weight:900;

  letter-spacing:.18em;

  text-transform:uppercase;

  transform:translateY(20px);

  opacity:0;

  transition:all .35s ease;

}


/* Activate Overlay */

#gallery .vg-gallery-box:hover::before{

  opacity:1;

}


/* Activate Text */

#gallery .vg-gallery-box:hover::after{

  opacity:1;

  transform:translateY(0);

}


/* Extra Glow */

#gallery .vg-gallery-box:hover{

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

}

/* Force Gallery Image Zoom on Hover */
#gallery .vg-gallery-box {
  overflow: hidden !important;
}

#gallery .vg-gallery-box img {
  transform: scale(1) !important;
  transition: transform .75s ease, filter .55s ease !important;
  will-change: transform;
}

#gallery .vg-gallery-box:hover img {
  transform: scale(1.12) !important;
  filter: brightness(.82) saturate(1.15) !important;
}


/* FINAL FIX: Gallery zoom hover */
#gallery .vg-gallery-box {
  position: relative !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

#gallery .vg-gallery-box img {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transform: scale(1) !important;
  transition: transform 0.8s ease !important;
}

#gallery .vg-gallery-box:hover img {
  transform: scale(1.25) !important;
}

#gallery .vg-gallery-box::before {
  pointer-events: none !important;
  z-index: 2 !important;
}

#gallery .vg-gallery-box::after {
  pointer-events: none !important;
  z-index: 3 !important;
}


.team-role {
  color: #081a47 !important;
  font-weight: 950;
}


/* ==========================
   PARTNERS SECTION
========================== */

#partners .sponsor-card{

  height:220px;

  background:#fff;

  border-radius:22px;

  padding:35px;

  display:flex;

  align-items:center;

  justify-content:center;

  border:1px solid #e5eaf2;

  box-shadow:0 10px 30px rgba(15,23,42,.08);

  transition:all .35s ease;

}

#partners .sponsor-card:hover{

  transform:translateY(-8px);

  box-shadow:

  0 22px 45px rgba(8,26,71,.18);

}

#partners .partner-logo{

  width:100%;

  max-width:180px;

  max-height:120px;

  object-fit:contain;

  transition:transform .4s ease;

}

#partners .sponsor-card:hover .partner-logo{

  transform:scale(1.08);

}

@media(max-width:767px){

  #partners .sponsor-card{

    height:180px;

  }

  #partners .partner-logo{

    max-width:140px;

  }

}


/* ==========================
   LOCATION CARD
========================== */

#schedule .location-card{

  background:#fff;

  border-radius:22px;

  border:1px solid #e5eaf2;

  box-shadow:0 10px 30px rgba(15,23,42,.08);

  padding:28px;

  height:100%;

}


#schedule iframe{

  width:100%;

  height:360px;

  border:0;

  border-radius:18px;

  overflow:hidden;

}


#schedule .location-action{

  margin-top:25px;

  text-align:center;

}


#schedule .location-card:hover{

  box-shadow:

  0 18px 45px rgba(8,26,71,.12);

}


#programs .program-card img{
  width:100%;
  height:390px;
  object-fit:cover;
  object-position:center top;
  display:block;
}

#programs .program-card:first-child img{
  object-position:center 18%;
}

/* TEAM IMAGE FIX */
#team .team-card{
  height:100%;
}

#team .team-top{
  height:320px;
  background:#fff;
  overflow:hidden;
  display:flex;
  align-items:flex-start;
  justify-content:center;
}

#team .team-img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center top;
  display:block;
}

#team .team-body{
  padding:28px 22px 34px;
}

#team .team-role{
  margin-bottom:10px;
}

#team .team-role{
    display:inline-block;
    background:#ffc72c;
    color:#0e2a6b !important;
    padding:8px 20px;
    border-radius:999px;
    font-size:.75rem;
    font-weight:900;
    letter-spacing:.15em;
    text-transform:uppercase;
    box-shadow:0 8px 18px rgba(255,199,44,.35);
}

.contact-success-modal{
  border-radius:22px;
  overflow:hidden;
  border:0;
  box-shadow:0 25px 60px rgba(8,26,71,.25);
}

.contact-success-modal .modal-header{
  background:var(--vg-blue);
  color:#fff;
  min-height:90px;
  border-bottom:0;
}

.contact-success-modal .modal-body{
  padding:38px 34px;
}

.success-icon{
  width:78px;
  height:78px;
  border-radius:50%;
  background:var(--vg-yellow);
  color:var(--vg-blue);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:2.4rem;
  font-weight:950;
  margin:0 auto;
  box-shadow:var(--vg-pixar-yellow);
}


/* =====================================
   Mandatory Kit Notice
===================================== */

.kit-notice{

    display:flex;

    align-items:center;

    gap:22px;

    background:var(--vg-blue);

    color:#fff;

    border-radius:20px;

    padding:22px 28px;

    margin-top:50px;

    box-shadow:0 12px 30px rgba(8,26,71,.18);

}

.kit-icon{

    width:72px;

    height:72px;

    min-width:72px;

    border-radius:18px;

    background:var(--vg-yellow);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:2rem;

    color:var(--vg-blue);

    box-shadow:var(--vg-pixar-yellow);

}

.kit-content{

    font-size:1rem;

    line-height:1.7;

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

}

.kit-content strong{

    display:block;

    color:#fff;

    font-size:1.1rem;

    margin-bottom:6px;

    font-weight:900;

}

@media(max-width:768px){

    .kit-notice{

        flex-direction:column;

        text-align:center;

        padding:28px;

    }

}


/* Kit Fee Inside Pricing Cards */

.kit-fee-note {
    background: #fff8de;
    border-left: 4px solid var(--vg-yellow);
    color: var(--vg-blue);
    border-radius: 10px;
    padding: 12px 15px;
    margin: 20px 0;
    font-size: .9rem;
    line-height: 1.4;
}

.kit-fee-note strong {
    display: block;
    color: var(--vg-blue);
    font-size: 1rem;
    font-weight: 900;
    margin-bottom: 3px;
}


/* Payment Summary Modal */

.payment-summary {
    color: var(--vg-text);
}

.selected-plan-box {
    background: var(--vg-yellow-soft);
    border: 1px solid rgba(229, 174, 15, .3);
    border-radius: 16px;
    padding: 18px;
}

.selected-plan-box span,
.selected-plan-box small {
    display: block;
    color: var(--vg-muted);
}

.selected-plan-box strong {
    display: block;
    color: var(--vg-blue);
    font-size: 1.25rem;
    margin: 4px 0;
}

.payment-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 14px 0;
    color: var(--vg-muted);
}

.payment-row strong {
    color: var(--vg-blue);
    text-align: right;
}

.payment-total {
    background: var(--vg-blue);
    color: #fff;
    border-radius: 14px;
    padding: 18px;
    margin: 8px 0 18px;
}

.payment-total strong {
    color: var(--vg-yellow);
    font-size: 1.25rem;
}

.payment-note {
    padding: 14px;
    background: var(--vg-light);
    border-radius: 12px;
    color: var(--vg-muted);
    font-size: .9rem;
    line-height: 1.6;
}

@media (max-width: 575px) {
    .payment-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .payment-row strong {
        text-align: left;
    }

    .modal-footer .btn-vg {
        width: 100%;
    }
}


/* ==========================================
   TEAM SECTION - UNIFORM PHOTO SIZE OVERRIDE
   Paste at the very bottom of the CSS file
========================================== */

#team .team-card{
    height:100%;
    display:flex;
    flex-direction:column;
}

#team .team-top{
    height:340px !important;
    overflow:hidden !important;
    background:#fff;
    padding:0 !important;
    display:block !important;
}

#team .team-img{
    width:100% !important;
    height:340px !important;
    display:block !important;

    object-fit:cover !important;
    object-position:center top !important;

    transition:transform .4s ease;
}

#team .team-card:hover .team-img{
    transform:scale(1.05);
}

#team .team-body{
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    padding:28px 22px 32px;
}

#team .team-body h4{
    min-height:58px;
    margin-bottom:12px;
}

#team .team-role{
    display:inline-block;
    margin-bottom:14px;
}

/* ==================================================
   TEAM SECTION — PREMIUM DROP-IN ENHANCEMENT
   Scoped only to #team
================================================== */

#team .team-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(14, 42, 107, .10);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .10);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

#team .team-card:hover {
    transform: translateY(-10px);
    border-color: rgba(255, 199, 44, .75);
    box-shadow: 0 24px 55px rgba(8, 26, 71, .18);
}

#team .team-top {
    position: relative;
    width: 100%;
    height: 340px !important;
    overflow: hidden !important;
    background: #eef2f8 !important;
    padding: 0 !important;
    display: block !important;
}

#team .team-top::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(
        180deg,
        rgba(8, 26, 71, 0) 48%,
        rgba(8, 26, 71, .18) 72%,
        rgba(8, 26, 71, .62) 100%
    );
    opacity: .75;
    transition: opacity .35s ease;
}

#team .team-card:hover .team-top::before {
    opacity: 1;
}

#team .team-top::after {
    content: "";
    position: absolute;
    top: -80%;
    left: -45%;
    z-index: 3;
    width: 38%;
    height: 250%;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, .28),
        transparent
    );
    transform: rotate(18deg);
    transition: left .7s ease;
}

#team .team-card:hover .team-top::after {
    left: 125%;
}

#team .team-img {
    width: 100% !important;
    height: 340px !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center top !important;
    transform: scale(1);
    transition:
        transform .7s ease,
        filter .5s ease;
}

#team .team-card:hover .team-img {
    transform: scale(1.08);
    filter: saturate(1.05) contrast(1.03);
}

#team .team-body {
    flex: 1;
    position: relative;
    z-index: 4;
    padding: 28px 22px 32px !important;
    text-align: center;
    background:
        linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

#team .team-role {
    display: inline-block;
    margin: 0 0 14px;
    padding: 8px 18px;
    border-radius: 999px;
    background: var(--vg-yellow);
    color: var(--vg-blue) !important;
    font-size: .74rem;
    font-weight: 950;
    letter-spacing: .14em;
    text-transform: uppercase;
    box-shadow: 0 8px 18px rgba(255, 199, 44, .30);
    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

#team .team-card:hover .team-role {
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(255, 199, 44, .42);
}

#team .team-body h4 {
    min-height: 58px;
    margin: 0;
    color: var(--vg-blue);
    font-size: 1.1rem;
    line-height: 1.35;
    transition: color .3s ease;
}

#team .team-card:hover .team-body h4 {
    color: var(--vg-blue-dark);
}

#team .team-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 5px;
    background: linear-gradient(
        90deg,
        var(--vg-blue),
        var(--vg-yellow),
        var(--vg-blue)
    );
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .4s ease;
}

#team .team-card:hover::after {
    transform: scaleX(1);
}

@media (max-width: 767px) {
    #team .team-top,
    #team .team-img {
        height: 310px !important;
    }

    #team .team-card:hover {
        transform: translateY(-5px);
    }
}

@media (prefers-reduced-motion: reduce) {
    #team .team-card,
    #team .team-img,
    #team .team-top::after,
    #team .team-role,
    #team .team-card::after {
        transition: none !important;
    }
}

```css
/* ==================================================
   FEES SECTION — PREMIUM VISUAL ENHANCEMENT
   Keeps the existing Vision Girls color palette
   Scoped only to #fees and #paymentModal
================================================== */


/* ---------- Pricing cards ---------- */

#fees .fee-card {
    position: relative;
    height: 100%;
    overflow: hidden;
    border: 1px solid rgba(14, 42, 107, .10);
    border-radius: 24px;
    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #fbfcff 100%
        );
    box-shadow: 0 14px 36px rgba(15, 23, 42, .09);
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

#fees .fee-card:hover {
    transform: translateY(-10px);
    border-color: rgba(255, 199, 44, .70);
    box-shadow: 0 26px 58px rgba(8, 26, 71, .16);
}

#fees .fee-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background:
        linear-gradient(
            90deg,
            var(--vg-blue),
            var(--vg-yellow),
            var(--vg-blue)
        );
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .4s ease;
}

#fees .fee-card:hover::before {
    transform: scaleX(1);
}


/* ---------- Featured card ---------- */

#fees .fee-card.featured {
    border: 2px solid var(--vg-yellow);
    background:
        linear-gradient(
            180deg,
            var(--vg-yellow-soft) 0%,
            #ffffff 32%,
            #ffffff 100%
        );
    box-shadow:
        0 18px 44px rgba(229, 174, 15, .16),
        0 10px 30px rgba(15, 23, 42, .08);
}

#fees .fee-card.featured:hover {
    box-shadow:
        0 28px 60px rgba(229, 174, 15, .20),
        0 18px 42px rgba(8, 26, 71, .15);
}

#fees .best-badge {
    top: -18px;
    padding: 10px 24px;
    border: 3px solid #fff;
    box-shadow: 0 10px 24px rgba(8, 26, 71, .20);
}


/* ---------- Card headings ---------- */

#fees .fee-card h4 {
    color: var(--vg-blue);
    font-size: 1.35rem;
    line-height: 1.3;
}

#fees .fee-card > .text-secondary:first-of-type {
    min-height: 24px;
}


/* ---------- Price styling ---------- */

#fees .price {
    position: relative;
    display: inline-flex;
    align-items: baseline;
    gap: 7px;
    margin-top: 8px;
    color: var(--vg-blue);
    font-size: clamp(2rem, 3vw, 2.75rem);
    line-height: 1;
    letter-spacing: -.03em;
}

#fees .price small {
    color: var(--vg-yellow-dark);
    font-size: .82rem;
    font-weight: 950;
    letter-spacing: .08em;
}

#fees .price::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -12px;
    width: 56px;
    height: 4px;
    border-radius: 999px;
    background: var(--vg-yellow);
}


/* ---------- Feature list ---------- */

#fees .feature-list {
    margin-top: 30px;
}

#fees .feature-list li {
    position: relative;
    padding: 13px 0 13px 32px;
    color: var(--vg-muted);
    line-height: 1.5;
}

#fees .feature-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 12px;
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    border-radius: 50%;
    background: var(--vg-yellow-soft);
    color: var(--vg-blue);
    font-size: .78rem;
    font-weight: 950;
}


/* ---------- Kit fee note ---------- */

#fees .kit-fee-note {
    position: relative;
    overflow: hidden;
    margin: 22px 0;
    padding: 15px 17px 15px 19px;
    border: 1px solid rgba(229, 174, 15, .26);
    border-left: 5px solid var(--vg-yellow);
    border-radius: 13px;
    background:
        linear-gradient(
            135deg,
            #fff9e7 0%,
            #fffdf7 100%
        );
    box-shadow: 0 8px 20px rgba(229, 174, 15, .08);
}

#fees .kit-fee-note::after {
    content: "";
    position: absolute;
    top: -35px;
    right: -35px;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .12);
}

#fees .kit-fee-note strong {
    position: relative;
    z-index: 1;
    font-size: 1.05rem;
}

#fees .kit-fee-note {
    position: relative;
    z-index: 1;
}


/* ---------- Pricing buttons ---------- */

#fees .payment-plan-btn {
    position: relative;
    overflow: hidden;
    min-height: 56px;
    letter-spacing: .01em;
    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

#fees .payment-plan-btn::after {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 35%;
    height: 220%;
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, .30),
            transparent
        );
    transform: rotate(18deg);
    transition: left .65s ease;
}

#fees .payment-plan-btn:hover::after {
    left: 125%;
}

#fees .payment-plan-btn:hover {
    transform: translateY(-3px);
}


/* ---------- Kit notice below cards ---------- */

#fees .kit-notice {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .10);
    box-shadow:
        0 20px 46px rgba(8, 26, 71, .20);
}

#fees .kit-notice::before {
    content: "";
    position: absolute;
    top: -90px;
    right: -70px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .09);
}

#fees .kit-notice::after {
    content: "";
    position: absolute;
    bottom: -110px;
    left: 38%;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .04);
}

#fees .kit-icon,
#fees .kit-content {
    position: relative;
    z-index: 2;
}

#fees .kit-icon {
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

#fees .kit-notice:hover .kit-icon {
    transform: rotate(-5deg) scale(1.06);
    box-shadow:
        0 8px 0 #b8860a,
        0 14px 28px rgba(229, 174, 15, .38);
}


/* ==================================================
   PAYMENT MODAL ENHANCEMENT
================================================== */

#paymentModal .modal-dialog {
    max-width: 760px;
}

#paymentModal .payment-modal-content {
    border: 1px solid rgba(255, 255, 255, .08);
    background: #fff;
}

#paymentModal .payment-modal-header {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(
            135deg,
            var(--vg-blue-dark) 0%,
            var(--vg-blue) 60%,
            var(--vg-blue-light) 100%
        );
}

#paymentModal .payment-modal-header::before {
    content: "";
    position: absolute;
    top: -100px;
    right: -70px;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .10);
}

#paymentModal .payment-modal-header::after {
    content: "";
    position: absolute;
    bottom: -130px;
    left: 25%;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .05);
}

#paymentModal .payment-modal-header > * {
    position: relative;
    z-index: 2;
}

#paymentModal .btn-close {
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, .12);
    background-size: 14px;
    opacity: 1;
    transition:
        transform .25s ease,
        background-color .25s ease;
}

#paymentModal .btn-close:hover {
    transform: rotate(90deg);
    background-color: rgba(255, 255, 255, .20);
}


/* ---------- Selected plan ---------- */

#paymentModal .selected-plan-box {
    position: relative;
    overflow: hidden;
    border-left: 6px solid var(--vg-yellow);
    box-shadow: 0 12px 28px rgba(229, 174, 15, .10);
}

#paymentModal .selected-plan-box::after {
    content: "";
    position: absolute;
    top: -60px;
    right: -55px;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .13);
}

#paymentModal .selected-plan-box > * {
    position: relative;
    z-index: 1;
}


/* ---------- Fee rows ---------- */

#paymentModal .payment-row {
    border-bottom: 1px dashed #dce3ee;
}

#paymentModal .payment-total {
    position: relative;
    overflow: hidden;
    border-bottom: 0;
    box-shadow: 0 16px 34px rgba(8, 26, 71, .20);
}

#paymentModal .payment-total::after {
    content: "";
    position: absolute;
    top: -55px;
    right: -40px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .12);
}

#paymentModal .payment-total span,
#paymentModal .payment-total strong {
    position: relative;
    z-index: 1;
}


/* ---------- Payment note ---------- */

#paymentModal .payment-note {
    border-left: 4px solid var(--vg-yellow);
    background:
        linear-gradient(
            135deg,
            var(--vg-light) 0%,
            #ffffff 100%
        );
}


/* ---------- MoMo box ---------- */

#paymentModal .momo-payment-box {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .10);
}

#paymentModal .momo-payment-box::before {
    content: "";
    position: absolute;
    top: -105px;
    left: -70px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .10);
}

#paymentModal .momo-payment-box::after {
    content: "";
    position: absolute;
    right: -95px;
    bottom: -115px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .05);
}

#paymentModal .momo-payment-box > * {
    position: relative;
    z-index: 2;
}

#paymentModal .momo-code {
    position: relative;
    background:
        linear-gradient(
            180deg,
            rgba(255, 255, 255, .12) 0%,
            rgba(255, 255, 255, .06) 100%
        );
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .18),
        0 14px 28px rgba(0, 0, 0, .14);
    text-shadow: 0 4px 14px rgba(229, 174, 15, .28);
    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

#paymentModal .momo-code:hover {
    transform: scale(1.04);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .22),
        0 18px 36px rgba(0, 0, 0, .18);
}


/* ---------- Responsive ---------- */

@media (max-width: 991px) {
    #fees .fee-card:hover {
        transform: translateY(-6px);
    }
}

@media (max-width: 575px) {
    #fees .fee-card {
        border-radius: 20px;
    }

    #fees .fee-card:hover {
        transform: none;
    }

    #paymentModal .payment-modal-content {
        border-radius: 20px;
    }

    #paymentModal .selected-plan-box {
        padding: 18px;
    }

    #paymentModal .payment-total strong {
        font-size: 1.45rem;
    }

    #paymentModal .momo-payment-box {
        padding: 26px 18px;
    }
}


/* ---------- Accessibility ---------- */

@media (prefers-reduced-motion: reduce) {
    #fees .fee-card,
    #fees .payment-plan-btn,
    #fees .payment-plan-btn::after,
    #fees .kit-icon,
    #paymentModal .btn-close,
    #paymentModal .momo-code {
        transition: none !important;
    }
}

```css
/* ==================================================
   FEES SECTION — PRICE FORMAT AND DESIGN
================================================== */

#fees .fee-card {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(14, 42, 107, .10);
    border-radius: 24px;
    background: linear-gradient(180deg, #fff 0%, #fbfcff 100%);
    box-shadow: 0 14px 36px rgba(15, 23, 42, .09);
    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

#fees .fee-card:hover {
    transform: translateY(-8px);
    border-color: rgba(255, 199, 44, .72);
    box-shadow: 0 24px 55px rgba(8, 26, 71, .16);
}

#fees .fee-card.featured {
    border: 2px solid var(--vg-yellow);
    background:
        linear-gradient(
            180deg,
            var(--vg-yellow-soft) 0%,
            #fff 38%,
            #fff 100%
        );
}

#fees .fee-card h4 {
    color: var(--vg-blue);
    font-size: 1.35rem;
}


/* Price arrangement */

#fees .price {
    display: flex;
    align-items: flex-end;
    flex-wrap: nowrap;
    gap: 10px;
    margin: 24px 0 5px;
    line-height: 1;
}

#fees .price-amount {
    color: var(--vg-blue);
    font-size: clamp(1.4rem, 2vw, 2.75rem);
    font-weight: 950;
    letter-spacing: -.045em;
    white-space: nowrap;
}

#fees .price-currency {
    margin-bottom: 8px;
    color: var(--vg-yellow-dark);
    font-size: .9rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

#fees .price-period {
    position: relative;
    margin: 8px 0 26px;
    padding-top: 10px;
    color: var(--vg-muted);
    font-size: 1rem;
    font-weight: 600;
}

#fees .price-period::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 56px;
    height: 4px;
    border-radius: 999px;
    background: var(--vg-yellow);
}


/* Feature list */

#fees .feature-list {
    margin: 0 0 24px;
}

#fees .feature-list li {
    position: relative;
    padding: 14px 0 14px 34px;
    color: var(--vg-muted);
}

#fees .feature-list li::before {
    content: "✓";
    position: absolute;
    top: 12px;
    left: 0;
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    border-radius: 50%;
    background: var(--vg-yellow-soft);
    color: var(--vg-blue);
    font-size: .8rem;
    font-weight: 950;
}


/* Kit fee */

#fees .kit-fee-note {
    position: relative;
    overflow: hidden;
    margin: auto 0 22px;
    padding: 16px 18px;
    border: 1px solid rgba(229, 174, 15, .28);
    border-left: 5px solid var(--vg-yellow);
    border-radius: 14px;
    background: linear-gradient(135deg, #fff9e7, #fffdf7);
    color: var(--vg-blue);
}

#fees .kit-fee-note::after {
    content: "";
    position: absolute;
    top: -38px;
    right: -38px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(255, 199, 44, .12);
}

#fees .kit-fee-note strong {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 4px;
    color: var(--vg-blue);
    font-size: 1.05rem;
    font-weight: 950;
}

#fees .payment-plan-btn {
    min-height: 56px;
}


/* Mandatory notice */

#fees .kit-notice {
    display: flex;
    align-items: center;
    gap: 22px;
    padding: 22px 28px;
    border-radius: 20px;
    background: var(--vg-blue);
    color: #fff;
    text-align: left;
    box-shadow: 0 18px 40px rgba(8, 26, 71, .20);
}

#fees .kit-icon {
    width: 72px;
    height: 72px;
    min-width: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: var(--vg-yellow);
    color: var(--vg-blue);
    font-size: 2rem;
    box-shadow: var(--vg-pixar-yellow);
}

#fees .kit-content {
    color: rgba(255, 255, 255, .92);
    line-height: 1.7;
}

#fees .kit-content strong {
    display: block;
    margin-bottom: 6px;
    color: #fff;
    font-size: 1.08rem;
    font-weight: 950;
}


/* ==================================================
   PAYMENT MODAL
================================================== */

#paymentModal .payment-modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 26px;
    box-shadow: 0 30px 80px rgba(8, 26, 71, .28);
}

#paymentModal .payment-modal-header {
    position: relative;
    min-height: 145px;
    padding: 30px 34px;
    border-bottom: 0;
    background:
        linear-gradient(
            135deg,
            var(--vg-blue-dark),
            var(--vg-blue),
            var(--vg-blue-light)
        );
    color: #fff;
}

#paymentModal .payment-modal-kicker {
    color: var(--vg-yellow);
    font-size: .8rem;
    font-weight: 950;
    letter-spacing: .14em;
    text-transform: uppercase;
}

#paymentModal .payment-modal-body {
    padding: 32px 34px 38px;
}

#paymentModal .selected-plan-box {
    padding: 22px;
    border: 1px solid rgba(229, 174, 15, .40);
    border-left: 6px solid var(--vg-yellow);
    border-radius: 18px;
    background: var(--vg-yellow-soft);
}

#paymentModal .selected-plan-label,
#paymentModal .selected-plan-box small {
    display: block;
    color: var(--vg-muted);
}

#paymentModal .selected-plan-box strong {
    display: block;
    margin: 6px 0;
    color: var(--vg-blue);
    font-size: 1.55rem;
    font-weight: 950;
}

#paymentModal .payment-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 17px 0;
    color: var(--vg-muted);
    font-size: 1.05rem;
}

#paymentModal .payment-row strong {
    color: var(--vg-blue);
    font-size: 1.12rem;
    text-align: right;
}

#paymentModal .payment-total {
    margin-bottom: 20px;
    padding: 22px;
    border-radius: 17px;
    background: var(--vg-blue);
    color: #fff;
}

#paymentModal .payment-total span {
    color: #fff;
    font-weight: 800;
}

#paymentModal .payment-total strong {
    color: var(--vg-yellow);
    font-size: 1.75rem;
    font-weight: 950;
}

#paymentModal .payment-note {
    padding: 17px 19px;
    border-left: 4px solid var(--vg-yellow);
    border-radius: 14px;
    background: var(--vg-light);
    color: var(--vg-muted);
    line-height: 1.65;
}


/* MoMo merchant code */

#paymentModal .momo-payment-box {
    padding: 32px 24px;
    border-radius: 22px;
    background:
        linear-gradient(
            145deg,
            var(--vg-blue),
            var(--vg-blue-dark)
        );
    color: #fff;
    text-align: center;
    box-shadow: 0 18px 38px rgba(8, 26, 71, .20);
}

#paymentModal .momo-label {
    display: inline-block;
    margin-bottom: 14px;
    padding: 8px 16px;
    border-radius: 999px;
    background: var(--vg-yellow);
    color: var(--vg-blue);
    font-size: .78rem;
    font-weight: 950;
    letter-spacing: .1em;
    text-transform: uppercase;
}

#paymentModal .momo-payment-box h3 {
    margin-bottom: 20px;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 800;
}

#paymentModal .momo-code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 220px;
    margin-bottom: 17px;
    padding: 17px 30px;
    border: 2px solid rgba(255, 255, 255, .25);
    border-radius: 18px;
    background: rgba(255, 255, 255, .08);
    color: var(--vg-yellow);
    font-size: clamp(2.6rem, 7vw, 4.5rem);
    font-weight: 950;
    letter-spacing: .08em;
    line-height: 1;
}

#paymentModal .momo-account-name {
    color: rgba(255, 255, 255, .82);
    font-weight: 800;
}


/* Responsive */

@media (max-width: 768px) {
    #fees .price {
        flex-wrap: wrap;
    }

    #fees .price-amount {
        font-size: 3rem;
    }

    #fees .kit-notice {
        flex-direction: column;
        text-align: center;
    }

    #paymentModal .payment-modal-body {
        padding: 25px 20px 30px;
    }

    #paymentModal .payment-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    #paymentModal .payment-row strong {
        text-align: left;
    }

    #paymentModal .momo-code {
        width: 100%;
        min-width: 0;
    }
}

/* ==========================================
   Footer Instagram
========================================== */

.footer-social{

    margin-top:20px;

}

.footer-instagram{

    display:inline-flex;

    align-items:center;

    gap:12px;

    text-decoration:none;

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

    font-weight:600;

    transition:all .3s ease;

}

.footer-instagram i{

    width:46px;

    height:46px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:#E1306C;

    color:#fff;

    font-size:1.35rem;

    transition:all .35s ease;

    box-shadow:0 8px 18px rgba(225,48,108,.35);

}

.footer-instagram span{

    font-size:1rem;

}

.footer-instagram:hover{

    color:var(--vg-yellow);

}

.footer-instagram:hover i{

    transform:translateY(-4px) scale(1.08);

    box-shadow:0 14px 28px rgba(225,48,108,.45);

}

/* Footer Instagram link only */
.footer .footer-instagram-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 4px;
  color: rgba(255, 255, 255, .82);
  font-weight: 800;
  transition: color .25s ease, transform .25s ease;
}

.footer .footer-instagram-link:hover {
  color: var(--vg-yellow);
  transform: translateY(-2px);
}

.footer .footer-instagram-icon {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(255, 255, 255, .55);
  border-radius: 50%;
  color: var(--vg-yellow);
  font-size: 1.25rem;
  line-height: 1;
}

/*=========================================
FOOTER INSTAGRAM
=========================================*/

.footer-instagram{

    display:inline-flex;

    align-items:center;

    gap:14px;

    margin-top:18px;

    text-decoration:none;

    color:#ffffff;

    font-weight:700;

    transition:.35s;

}

.footer-instagram i{

    width:30px;

    height:30px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #feda75,
        #fa7e1e,
        #d62976,
        #962fbf,
        #4f5bd5
    );

    color:#fff;

    font-size:1.45rem;

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

    transition:.35s;

}

.footer-instagram span{

    font-size:1rem;

    letter-spacing:.3px;

}

.footer-instagram:hover{

    color:var(--vg-yellow);

}

.footer-instagram:hover i{

    transform:translateY(-5px) rotate(8deg) scale(1.08);

    box-shadow:0 18px 35px rgba(0,0,0,.35);

}

