﻿:root{
      /* Logo: metallic gold + black (rich, darker tones) */
      --gold:#9A7B1A;
      --gold-dark:#6B5018;
      --gold-deep:#4A3810;
      --gold-light:#B8941F;
      --gold-mid:#8B6914;
      --gold-soft:#A67C00;
      /* Legacy aliases (existing rules use --pink-*) */
      --pink:var(--gold-mid);
      --pink-dark:var(--gold);
      --pink-deep:var(--gold-dark);
      --rose:var(--gold-soft);
      --peach:var(--gold-light);
      --cream:#faf8f4;
      --blush:#f5f1e8;
      --nude:#ebe5d8;
      --deep:#000000;
      --dark-text:#0a0a0a;
      --mid-text:#3d3d3d;
      --muted:#6b6b6b;
      --white:#ffffff;
      --border:rgba(154,123,26,0.28);
      --shadow:rgba(107,80,24,0.18);
      --site-gutter:clamp(16px,2vw,40px);
    }
    *{margin:0;padding:0;box-sizing:border-box;}
    html{scroll-behavior:smooth;}
    #home,#artwork,#gallery,#testimonials,#contact{scroll-margin-top:88px;}
    body{
      font-family:'Nunito',sans-serif;
      background:var(--white);
      color:var(--dark-text);
      overflow-x:hidden;
    }
    a{text-decoration:none;color:inherit;}

    /* SCROLL PROGRESS */
    .progress-bar{
      position:fixed;top:0;left:0;height:3px;
      background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));
      z-index:1001;width:0%;transition:width 0.1s;
    }

    /* NAV */
    nav{
      position:fixed;top:0;left:0;width:100%;
      padding:18px var(--site-gutter);
      display:flex;align-items:center;justify-content:space-between;
      z-index:1000;transition:all 0.4s;
    }
    nav.scrolled{
      background:rgba(255,255,255,0.92);
      backdrop-filter:blur(20px);
      box-shadow:0 2px 30px rgba(154,123,26,0.1);
      padding:12px var(--site-gutter);
    }
    .brand-logo{
      display:flex;align-items:center;gap:10px;
      text-decoration:none;color:var(--dark-text);
      flex-shrink:0;
    }
    .brand-logo__img{
      height:48px;width:auto;max-width:110px;
      object-fit:contain;display:block;
    }
    nav.scrolled .brand-logo__img{height:42px;}
    .brand-logo__text{
      font-family:'Playfair Display',serif;
      font-size:17px;font-weight:700;line-height:1.2;
    }
    .brand-logo__text > span{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      -webkit-background-clip:text;-webkit-text-fill-color:transparent;
    }
    .brand-logo--footer{
      flex-direction:column;align-items:flex-start;
      gap:12px;margin-bottom:14px;
    }
    .brand-logo--footer .brand-logo__img{
      height:56px;max-width:140px;
    }
    .brand-logo--footer .brand-logo__text{font-size:20px;}
    .brand-logo--footer{color:#fff;}
    .brand-logo--footer .brand-logo__text{color:#fff;}
    .brand-logo--footer .brand-logo__text > span{
      background:linear-gradient(135deg,var(--gold-light),var(--gold-soft));
      -webkit-background-clip:text;background-clip:text;
      -webkit-text-fill-color:transparent;
    }
    .nav-links{display:flex;gap:32px;align-items:center;}
    .nav-links a{
      font-size:14px;font-weight:600;color:var(--mid-text);
      transition:color 0.3s;
    }
    .nav-links a:hover{color:var(--pink-dark);}
    .nav-cta{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      padding:10px 24px;border-radius:50px;
      color:var(--white)!important;font-size:14px;font-weight:700;
      box-shadow:0 4px 20px var(--shadow);
      transition:all 0.3s;
    }
    .nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(154,123,26,0.35);}
    .hamburger{
      display:none;flex-direction:column;gap:5px;
      cursor:pointer;background:none;border:none;
      position:relative;z-index:1001;padding:8px;
    }
    .hamburger span{
      width:24px;height:2px;background:var(--pink-dark);border-radius:2px;
      transition:transform 0.3s,opacity 0.3s;display:block;
    }
    .hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
    .hamburger.active span:nth-child(2){opacity:0;}
    .hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
    .mobile-menu{
      display:none;position:fixed;top:0;left:0;width:100%;height:100vh;
      background:linear-gradient(160deg,#0a0a0a,#1a1a1a);
      z-index:1000;flex-direction:column;align-items:center;justify-content:center;gap:32px;
    }
    .mobile-menu.open{display:flex;}
    .mobile-menu a{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:#fff;}
    .mobile-menu a:hover{color:var(--gold-light);}
    .mobile-close{position:absolute;top:24px;right:28px;font-size:28px;cursor:pointer;color:rgba(255,255,255,0.55);}

    /* HERO */
    .hero{
      min-height:100vh;
      background:
        radial-gradient(ellipse 90% 80% at 80% 20%, rgba(139,107,35,0.14) 0%,transparent 55%),
        radial-gradient(ellipse 70% 60% at 20% 80%, rgba(0,0,0,0.04) 0%,transparent 50%),
        linear-gradient(160deg, #faf8f4 0%, #f5f1e8 40%, #faf8f4 100%);
      display:flex;align-items:center;
      padding:110px var(--site-gutter) 80px;
      position:relative;overflow:hidden;
    }
    /* floating blobs */
    .hero::before{
      content:'';position:absolute;
      width:600px;height:600px;border-radius:50%;
      background:radial-gradient(circle,rgba(139,107,35,0.1) 0%,transparent 70%);
      top:-200px;right:-100px;
      animation:floatBlob 8s ease-in-out infinite;
    }
    .hero::after{
      content:'';position:absolute;
      width:400px;height:400px;border-radius:50%;
      background:radial-gradient(circle,rgba(154,123,26,0.08) 0%,transparent 70%);
      bottom:-100px;left:5%;
      animation:floatBlob 10s ease-in-out infinite reverse;
    }
    @keyframes floatBlob{
      0%,100%{transform:translate(0,0) scale(1);}
      50%{transform:translate(20px,-20px) scale(1.05);}
    }
    .hero-inner{
      display:grid;grid-template-columns:1fr 1fr;
      gap:60px;align-items:center;
      width:100%;max-width:none;margin:0 auto;position:relative;z-index:1;
    }
    .hero-tag{
      display:inline-flex;align-items:center;gap:8px;
      background:linear-gradient(135deg,rgba(139,107,35,0.12),rgba(184,148,58,0.15));
      border:1px solid rgba(154,123,26,0.35);
      padding:8px 20px;border-radius:50px;
      font-size:12px;font-weight:700;letter-spacing:0.1em;
      text-transform:uppercase;color:var(--gold-dark);
      margin-bottom:24px;display:inline-flex;
      animation:fadeUp 0.7s 0.2s both;
    }
    .hero-tag .dot{
      width:7px;height:7px;border-radius:50%;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      animation:pulse 1.5s infinite;
    }
    @keyframes pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.3);}}
    .hero h1{
      font-family:'Playfair Display',serif;
      font-size:clamp(42px,5vw,74px);
      line-height:1.08;font-weight:800;
      color:var(--dark-text);
      margin-bottom:24px;
      animation:fadeUp 0.7s 0.35s both;
    }
    .hero h1 .gradient-text{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      -webkit-background-clip:text;-webkit-text-fill-color:transparent;
    }
    .hero-desc{
      font-size:16px;line-height:1.85;color:var(--mid-text);
      max-width:480px;margin-bottom:40px;
      animation:fadeUp 0.7s 0.5s both;
    }
    .hero-btns{
      display:flex;gap:14px;flex-wrap:wrap;
      animation:fadeUp 0.7s 0.65s both;
    }
    .btn-primary{
      padding:15px 32px;border-radius:60px;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      color:var(--white);font-weight:700;font-size:15px;
      box-shadow:0 6px 30px rgba(154,123,26,0.3);
      transition:all 0.3s;display:inline-block;
    }
    .btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(154,123,26,0.45);}
    .btn-secondary{
      padding:15px 32px;border-radius:60px;
      border:2px solid var(--border);
      background:var(--white);
      color:var(--pink-dark);font-weight:700;font-size:15px;
      transition:all 0.3s;display:inline-block;
    }
    .btn-secondary:hover{
      background:var(--blush);border-color:var(--pink-dark);
      transform:translateY(-3px);
    }
    .hero-social{
      display:flex;align-items:center;gap:12px;margin-top:28px;
      animation:fadeUp 0.7s 0.8s both;
    }
    .hero-social span{font-size:13px;color:var(--muted);}
    .insta-btn{
      display:inline-flex;align-items:center;gap:8px;
      background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
      color:#fff;padding:8px 18px;border-radius:50px;font-size:13px;font-weight:700;
      transition:all 0.3s;
    }
    .insta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(220,39,67,0.3);}

    /* HERO RIGHT */
    .hero-right{
      position:relative;
      animation:fadeRight 0.8s 0.4s both;
    }
    .hero-img-grid{
      display:grid;grid-template-columns:1fr 1fr;
      grid-template-rows:1fr 1fr;
      gap:14px;
    }
    .img-box{
      border-radius:22px;overflow:hidden;
      box-shadow:0 10px 40px rgba(154,123,26,0.12);
    }
    .img-box img{
      width:100%;height:100%;object-fit:cover;
      transition:transform 0.5s;
    }
    .img-box:hover img{transform:scale(1.06);}
    .img-box.tall{grid-row:span 2;height:380px;}
    .img-box.short{height:175px;}
    .hero-stat-pill{
      position:absolute;
      background:var(--white);
      border-radius:18px;
      box-shadow:0 10px 40px rgba(154,123,26,0.18);
      padding:14px 20px;
      display:flex;align-items:center;gap:12px;
    }
    .hero-stat-pill.top{top:-16px;right:30px;}
    .hero-stat-pill.bottom{bottom:24px;left:-20px;}
    .pill-icon{
      width:42px;height:42px;border-radius:12px;flex-shrink:0;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      display:flex;align-items:center;justify-content:center;font-size:18px;
    }
    .pill-num{
      font-family:'Playfair Display',serif;
      font-size:22px;font-weight:700;color:var(--dark-text);line-height:1;
    }
    .pill-lbl{font-size:11px;color:var(--muted);font-weight:600;}

    @keyframes fadeUp{
      from{opacity:0;transform:translateY(28px);}
      to{opacity:1;transform:translateY(0);}
    }
    @keyframes fadeRight{
      from{opacity:0;transform:translateX(40px);}
      to{opacity:1;transform:translateX(0);}
    }

    /* MARQUEE */
    .marquee-wrap{
      padding:20px 0;
      background:linear-gradient(135deg,#0a0a0a,var(--gold-dark),var(--gold));
      overflow:hidden;
    }
    .marquee-track{
      display:flex;gap:0;
      animation:marquee 22s linear infinite;
      width:max-content;
    }
    .mq-item{
      padding:0 28px;font-size:14px;font-weight:700;
      color:rgba(255,255,255,0.9);white-space:nowrap;
      display:flex;align-items:center;gap:24px;text-transform:uppercase;
      letter-spacing:0.06em;
    }
    .mq-item::after{content:"\2726";opacity:0.6;margin-left:24px;}
    @keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

    /* STATS */
    .stats-section{background:var(--cream);padding:80px var(--site-gutter);}
    .stats-grid{
      display:grid;grid-template-columns:repeat(4,1fr);
      gap:24px;max-width:none;width:100%;margin:0 auto;
    }
    .stat-card{
      background:var(--white);
      border-radius:24px;padding:36px 24px;text-align:center;
      box-shadow:0 4px 30px rgba(154,123,26,0.07);
      border:1px solid var(--border);
      transition:all 0.3s;
    }
    .stat-card:hover{
      transform:translateY(-6px);
      box-shadow:0 12px 40px rgba(154,123,26,0.15);
      border-color:var(--pink);
    }
    .stat-num{
      font-family:'Playfair Display',serif;
      font-size:52px;font-weight:800;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      -webkit-background-clip:text;-webkit-text-fill-color:transparent;
      line-height:1;margin-bottom:10px;
    }
    .stat-lbl{font-size:14px;font-weight:600;color:var(--mid-text);}

    /* SECTION COMMONS */
    .section{padding:100px var(--site-gutter);}
    .section-max{max-width:none;width:100%;margin:0 auto;}
    .chip{
      display:inline-flex;align-items:center;gap:8px;
      font-size:12px;font-weight:700;letter-spacing:0.12em;
      text-transform:uppercase;color:var(--pink-dark);
      margin-bottom:16px;
    }
    .chip::before{content:'';width:20px;height:2px;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));border-radius:2px;}
    .sec-h{
      font-family:'Playfair Display',serif;
      font-size:clamp(34px,4vw,58px);
      font-weight:800;line-height:1.1;
      color:var(--dark-text);margin-bottom:18px;
    }
    .sec-sub{
      font-size:15px;line-height:1.85;color:var(--muted);max-width:580px;
    }

    /* ABOUT */
    .about-section{background:var(--white);}
    .about-grid{
      display:grid;grid-template-columns:1fr 1fr;
      gap:70px;align-items:center;max-width:none;width:100%;margin:0 auto;
    }
    .about-imgs{
      position:relative;
    }
    .about-main img{
      width:100%;height:500px;object-fit:cover;
      border-radius:28px;
      box-shadow:0 20px 60px rgba(154,123,26,0.15);
    }
    .about-accent{
      position:absolute;bottom:-28px;right:-24px;
      width:190px;height:240px;
      border-radius:20px;overflow:hidden;
      border:5px solid var(--white);
      box-shadow:0 10px 40px rgba(154,123,26,0.2);
    }
    .about-accent img{width:100%;height:100%;object-fit:cover;}
    .about-decor-circle{
      position:absolute;top:-20px;left:-20px;
      width:80px;height:80px;border-radius:50%;
      background:linear-gradient(135deg,rgba(139,107,35,0.15),rgba(184,148,58,0.12));
      border:2px dashed rgba(154,123,26,0.35);
    }
    .trainers-row{
      display:flex;gap:16px;margin-top:32px;flex-wrap:wrap;
    }
    .trainer-card{
      display:flex;align-items:center;gap:12px;
      background:var(--blush);border:1px solid var(--border);
      border-radius:16px;padding:14px 18px;flex:1;min-width:180px;
    }
    .trainer-av{
      width:44px;height:44px;border-radius:50%;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      display:flex;align-items:center;justify-content:center;
      font-family:'Playfair Display',serif;
      font-size:18px;font-weight:700;color:#fff;flex-shrink:0;
    }
    .trainer-name{font-size:14px;font-weight:700;color:var(--dark-text);}
    .trainer-role{font-size:12px;color:var(--muted);}
    .feature-list{
      display:grid;grid-template-columns:1fr 1fr;
      gap:12px;margin-top:30px;
    }
    .feat-item{
      display:flex;align-items:center;gap:10px;
      background:var(--cream);border-radius:14px;
      padding:12px 16px;font-size:13px;font-weight:600;color:var(--dark-text);
      border:1px solid var(--border);transition:all 0.3s;
    }
    .feat-item:hover{background:var(--blush);border-color:var(--pink);transform:translateX(4px);}
    .feat-icon{font-size:16px;}

    /* COURSES */
    .courses-section{
      background:linear-gradient(160deg,var(--cream) 0%,var(--blush) 100%);
    }
    .courses-header{
      display:flex;align-items:flex-end;justify-content:space-between;
      margin-bottom:56px;flex-wrap:wrap;gap:24px;
    }
    .course-grid{
      display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
      gap:18px;
    }
    .course-duration{
      font-size:13px;font-weight:700;color:var(--pink-dark);
      margin-bottom:10px;
    }
    .course-duration strong{font-weight:800;}
    .enroll-btn--wa{
      background:linear-gradient(135deg,#25D366,#128C7E);
      box-shadow:0 4px 15px rgba(37,211,102,0.35);
    }
    .course-card:hover .enroll-btn--wa{transform:scale(1.15);}
    .course-card{
      background:var(--white);
      border-radius:26px;overflow:hidden;
      box-shadow:0 4px 30px rgba(154,123,26,0.07);
      border:1px solid var(--border);
      transition:all 0.4s;
    }
    .course-card:hover{
      transform:translateY(-12px);
      box-shadow:0 24px 60px rgba(154,123,26,0.18);
      border-color:var(--pink);
    }
    .course-img-wrap{height:170px;overflow:hidden;position:relative;}
    .course-img-wrap img{
      width:100%;height:100%;object-fit:cover;
      transition:transform 0.6s;
    }
    .course-card:hover .course-img-wrap img{transform:scale(1.08);}
    .course-badge{
      position:absolute;top:14px;left:14px;
      padding:5px 14px;border-radius:50px;font-size:11px;font-weight:700;
      letter-spacing:0.06em;text-transform:uppercase;
    }
    .badge-pop{background:var(--pink-dark);color:#fff;}
    .badge-trend{background:var(--gold-soft);color:#fff;}
    .badge-adv{background:var(--rose);color:#fff;}
    .course-body{padding:18px 16px 20px;}
    .course-body h3{
      font-family:'Playfair Display',serif;
      font-size:17px;font-weight:700;
      color:var(--dark-text);margin-bottom:8px;line-height:1.25;
    }
    .course-body p{font-size:13px;color:var(--muted);line-height:1.65;margin-bottom:16px;}
    .course-foot{
      display:flex;align-items:center;justify-content:space-between;
      padding-top:18px;border-top:1px solid var(--border);
    }
    .course-tags{display:flex;gap:8px;flex-wrap:wrap;}
    .ctag{
      padding:4px 12px;border-radius:50px;font-size:11px;font-weight:600;
      background:var(--blush);color:var(--pink-deep);
    }
    .enroll-btn{
      width:38px;height:38px;border-radius:50%;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      display:flex;align-items:center;justify-content:center;
      color:#fff;font-size:16px;flex-shrink:0;
      box-shadow:0 4px 15px rgba(154,123,26,0.25);
      transition:all 0.3s;
    }
    .course-card:hover .enroll-btn{transform:scale(1.15);}

    /* ICONS (encoding-safe) */
    .star-inline::before,.rating-stars::before,.testi-stars::before{
      content:"\2605\2605\2605\2605\2605";
      letter-spacing:3px;color:var(--gold-soft);
    }
    .star-inline::before{content:"\2605";}
    .pill-icon--star::before{content:"\2605";font-size:20px;}
    .pill-icon--nail::before{content:"\2728";font-size:18px;}
    .trainer-av-icon--nail::before{content:"N";font-family:'Playfair Display',serif;font-weight:700;}
    .trainer-av-icon--edu::before{content:"A";font-family:'Playfair Display',serif;font-weight:700;}
    .feat-icon--dot::before{
      content:"";width:8px;height:8px;border-radius:50%;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      display:inline-block;
    }
    .c-icon--pin::before{content:"\25CF";color:var(--pink-dark);}
    .c-icon--phone::before{content:"\260E";}
    .c-icon--clock::before{content:"\25F7";}
    .enroll-btn svg{width:18px;height:18px;}

    /* GALLERY SLIDER */
    .gallery-section{background:var(--white);overflow-anchor:none;padding-bottom:80px;}
    .gallery-intro{max-width:none;width:100%;margin:0 auto;padding:0;}
    .gallery-note{
      text-align:center;
      font-size:14px;color:var(--muted);margin-bottom:40px;
    }
    .gallery-note a{color:var(--pink-dark);font-weight:700;}
    .gallery-slider-wrap{
      width:100%;max-width:none;margin:0 auto;
      padding:0;box-sizing:border-box;
    }
    .gallery-slider{
      position:relative;width:100%;margin:0 auto;
    }
    .gallery-main{
      position:relative;border-radius:20px;overflow:hidden;
      background:var(--cream);
      box-shadow:0 16px 50px rgba(154,123,26,0.15);
      border:1px solid var(--border);
      width:100%;height:380px;max-height:55vh;
    }
    .gallery-track{
      display:flex;height:100%;will-change:transform;
      transition:transform 0.28s ease-out;
    }
    .gallery-slide{
      flex:0 0 50%;width:50%;height:100%;flex-shrink:0;
      position:relative;box-sizing:border-box;
      padding:0 5px;
    }
    .gallery-slide img{
      width:100%;height:100%;object-fit:cover;
      display:block;border-radius:14px;
    }
    .gallery-counter{
      position:absolute;bottom:16px;left:20px;
      background:rgba(26,10,18,0.65);backdrop-filter:blur(8px);
      color:#fff;padding:6px 14px;border-radius:50px;
      font-size:12px;font-weight:700;letter-spacing:0.05em;
      z-index:2;
    }
    .gallery-nav{
      position:absolute;top:50%;transform:translateY(-50%);
      width:48px;height:48px;border-radius:50%;
      border:none;cursor:pointer;z-index:3;
      background:rgba(255,255,255,0.95);
      color:var(--pink-dark);
      box-shadow:0 4px 20px rgba(154,123,26,0.2);
      display:flex;align-items:center;justify-content:center;
      transition:all 0.3s;
    }
    .gallery-nav:hover{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      color:#fff;transform:translateY(-50%) scale(1.08);
    }
    .gallery-nav.prev{left:16px;}
    .gallery-nav.next{right:16px;}
    .gallery-nav svg{width:22px;height:22px;}
    .gallery-thumbs{
      display:flex;gap:10px;margin-top:18px;
      overflow-x:auto;overflow-y:hidden;padding:4px 2px 8px;
      scroll-behavior:smooth;
      -webkit-overflow-scrolling:touch;
      overscroll-behavior-x:contain;
    }
    .gallery-thumbs::-webkit-scrollbar{height:6px;}
    .gallery-thumbs::-webkit-scrollbar-thumb{
      background:var(--pink);border-radius:10px;
    }
    .gallery-thumb{
      flex:0 0 80px;height:80px;border-radius:14px;
      overflow:hidden;cursor:pointer;opacity:0.55;
      border:2px solid transparent;transition:all 0.3s;
    }
    .gallery-thumb.active,.gallery-thumb:hover{
      opacity:1;border-color:var(--pink-dark);
      box-shadow:0 4px 16px rgba(154,123,26,0.25);
    }
    .gallery-thumb img{width:100%;height:100%;object-fit:cover;}
    .gallery-insta-cta{
      text-align:center;margin-top:36px;
    }
    .gallery-lightbox{
      position:fixed;inset:0;z-index:2000;
      background:rgba(26,10,18,0.92);
      display:flex;align-items:center;justify-content:center;
      padding:24px;opacity:0;visibility:hidden;
      transition:opacity 0.35s,visibility 0.35s;
    }
    .gallery-lightbox.open{opacity:1;visibility:visible;}
    .gallery-lightbox img{
      max-width:min(95vw,1100px);max-height:90vh;
      object-fit:contain;border-radius:12px;
    }
    .lightbox-close{
      position:absolute;top:20px;right:24px;
      width:44px;height:44px;border:none;border-radius:50%;
      background:rgba(255,255,255,0.15);color:#fff;
      font-size:24px;cursor:pointer;
    }
    .lightbox-nav{
      position:absolute;top:50%;transform:translateY(-50%);
      width:52px;height:52px;border-radius:50%;border:none;
      background:rgba(255,255,255,0.12);color:#fff;cursor:pointer;
    }
    .lightbox-nav.prev{left:20px;}
    .lightbox-nav.next{right:20px;}

    /* CREATIVE ARTWORK GRID */
    .artwork-section{background:var(--cream);}
    .artwork-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .artwork-item{
      position:relative;border:none;padding:0;cursor:pointer;
      border-radius:18px;overflow:hidden;
      aspect-ratio:1;
      background:var(--white);
      border:1px solid var(--border);
      box-shadow:0 4px 20px rgba(154,123,26,0.08);
      transition:transform 0.35s,box-shadow 0.35s;
    }
    .artwork-item::after{
      content:"+";
      position:absolute;inset:0;
      display:flex;align-items:center;justify-content:center;
      font-size:32px;font-weight:300;color:#fff;
      background:rgba(154,123,26,0);
      transition:background 0.35s;
      pointer-events:none;
    }
    .artwork-item:hover::after{
      background:rgba(190,24,93,0.45);
    }
    .artwork-item img{
      width:100%;height:100%;object-fit:cover;display:block;
      transition:transform 0.45s ease;
    }
    .artwork-item:hover{
      transform:translateY(-4px) scale(1.02);
      box-shadow:0 14px 40px rgba(154,123,26,0.18);
      z-index:1;
    }
    .artwork-item:hover img{transform:scale(1.06);}

    /* PROCESS */
    .process-section{
      background:linear-gradient(160deg,var(--blush) 0%,var(--cream) 100%);
    }
    .process-grid{
      display:grid;grid-template-columns:repeat(4,1fr);
      gap:24px;margin-top:60px;
    }
    .proc-card{
      background:var(--white);border-radius:24px;
      padding:32px 24px;text-align:center;
      border:1px solid var(--border);
      box-shadow:0 4px 20px rgba(154,123,26,0.06);
      position:relative;transition:all 0.3s;
    }
    .proc-card:hover{
      transform:translateY(-8px);
      box-shadow:0 16px 40px rgba(154,123,26,0.15);
      border-color:var(--pink);
    }
    .proc-card::after{
      content:"\2192";
      position:absolute;top:50%;right:-14px;
      transform:translateY(-50%);
      font-size:22px;color:var(--pink);
      background:var(--white);
      width:28px;height:28px;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      box-shadow:0 0 0 2px var(--border);
      z-index:1;
    }
    .proc-card:last-child::after{display:none;}
    .proc-num{
      width:64px;height:64px;border-radius:18px;
      background:linear-gradient(135deg,rgba(154,123,26,0.1),rgba(154,123,26,0.1));
      border:2px solid var(--border);
      display:flex;align-items:center;justify-content:center;
      margin:0 auto 20px;
      font-family:'Playfair Display',serif;
      font-size:26px;font-weight:800;
      color:var(--pink-dark);
      transition:all 0.3s;
    }
    .proc-card:hover .proc-num{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      border-color:transparent;color:#fff;
    }
    .proc-card h4{font-size:16px;font-weight:700;margin-bottom:10px;color:var(--dark-text);}
    .proc-card p{font-size:13px;color:var(--muted);line-height:1.7;}

    /* TESTIMONIALS */
    .testi-section{background:var(--white);}
    .testi-header{
      display:flex;align-items:flex-end;justify-content:space-between;
      flex-wrap:wrap;gap:24px;margin-bottom:56px;
    }
    .rating-box{text-align:right;}
    .rating-num{
      font-family:'Playfair Display',serif;
      font-size:56px;font-weight:800;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      -webkit-background-clip:text;-webkit-text-fill-color:transparent;
      line-height:1;
    }
    .rating-stars{color:var(--gold-soft);font-size:20px;letter-spacing:2px;}
    .rating-count{font-size:12px;color:var(--muted);font-weight:600;margin-top:4px;}
    .testi-slider{position:relative;margin-top:8px;padding:0 24px;}
    .testi-viewport{overflow:hidden;position:relative;}
    .testi-track{
      display:flex;align-items:stretch;
      will-change:transform;
    }
    .testi-card{
      background:var(--cream);
      border:1px solid var(--border);border-radius:24px;
      padding:32px 32px 0;
      transition:border-color 0.3s,box-shadow 0.3s;
      position:relative;flex-shrink:0;
      display:flex;flex-direction:column;
      min-height:100%;
    }
    .testi-card:hover{
      background:var(--white);
      border-color:var(--pink);
      box-shadow:0 12px 40px rgba(154,123,26,0.12);
    }
    .testi-nav{
      position:absolute;top:50%;transform:translateY(-50%);
      width:44px;height:44px;border-radius:50%;
      border:none;cursor:pointer;z-index:2;
      background:rgba(255,255,255,0.95);
      color:var(--pink-dark);
      box-shadow:0 4px 20px rgba(154,123,26,0.2);
      display:flex;align-items:center;justify-content:center;
      transition:all 0.3s;
    }
    .testi-nav:hover{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      color:#fff;transform:translateY(-50%) scale(1.06);
    }
    .testi-nav.prev{left:-12px;}
    .testi-nav.next{right:-12px;}
    .testi-nav svg{width:20px;height:20px;}
    .testi-dots{
      display:flex;justify-content:center;gap:10px;
      margin-top:28px;
    }
    .testi-dot{
      width:10px;height:10px;border-radius:50%;
      border:none;cursor:pointer;padding:0;
      background:rgba(154,123,26,0.25);
      transition:all 0.3s;
    }
    .testi-dot.active,.testi-dot:hover{
      background:var(--pink-dark);
      transform:scale(1.2);
    }
    .testi-card::before{
      content:"\201C";
      position:absolute;top:16px;right:22px;
      font-family:'Playfair Display',serif;
      font-size:80px;line-height:1;
      color:rgba(154,123,26,0.08);font-style:italic;
    }
    .testi-stars{color:var(--gold-soft);font-size:15px;letter-spacing:2px;margin-bottom:16px;}
    .testi-text{
      font-size:14px;line-height:1.85;color:var(--mid-text);
      margin-bottom:24px;font-style:italic;flex:1;
    }
    .testi-author{
      display:flex;align-items:center;gap:14px;
      margin:24px -32px 0;padding:18px 32px;
      background:linear-gradient(135deg,#0a0a0a 0%,var(--gold-dark) 100%);
      border-radius:0 0 23px 23px;
    }
    .testi-author-info{flex:1;min-width:0;}
    .tav{
      width:44px;height:44px;border-radius:50%;flex-shrink:0;
      background:rgba(255,255,255,0.2);
      border:2px solid rgba(255,255,255,0.45);
      display:flex;align-items:center;justify-content:center;
      font-family:'Playfair Display',serif;
      font-size:18px;font-weight:700;color:#fff;
    }
    .tname{
      font-size:16px;font-weight:700;color:#fff;
      font-style:normal;display:block;line-height:1.3;
    }
    .tdate{
      display:block;font-size:11px;font-weight:600;
      color:rgba(255,255,255,0.78);margin-top:3px;
    }
    .trole{
      display:inline-flex;align-items:center;gap:5px;
      font-size:11px;color:rgba(255,255,255,0.92);font-weight:700;
      margin-top:6px;text-transform:uppercase;letter-spacing:0.06em;
    }
    .trole::before{
      content:"";
      width:14px;height:14px;flex-shrink:0;
      background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.2 3.32v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.1z'/%3E%3Cpath fill='%23fff' d='M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z'/%3E%3Cpath fill='%23fff' d='M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z'/%3E%3Cpath fill='%23fff' d='M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z'/%3E%3C/svg%3E") center/contain no-repeat;
    }

    /* CTA */
    .cta-section{padding:80px var(--site-gutter);}
    .cta-inner{
      max-width:none;width:100%;margin:0 auto;
      background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 35%,var(--gold-dark) 80%,var(--gold) 100%);
      border-radius:32px;padding:80px 60px;
      display:flex;align-items:center;justify-content:space-between;
      gap:40px;flex-wrap:wrap;position:relative;overflow:hidden;
    }
    .cta-inner::before{
      content:"";
      position:absolute;right:-5%;top:50%;transform:translateY(-50%);
      width:280px;height:280px;border-radius:50%;
      background:radial-gradient(circle,rgba(255,255,255,0.15) 0%,transparent 70%);
      pointer-events:none;
    }
    .cta-text{position:relative;z-index:1;}
    .cta-text h2{
      font-family:'Playfair Display',serif;
      font-size:clamp(30px,3.5vw,50px);font-weight:800;
      color:#fff;line-height:1.1;margin-bottom:14px;
    }
    .cta-text p{color:rgba(255,255,255,0.85);font-size:15px;line-height:1.7;max-width:480px;}
    .cta-btns{display:flex;gap:14px;flex-wrap:wrap;position:relative;z-index:1;}
    .btn-white{
      padding:15px 32px;border-radius:60px;
      background:#fff;color:var(--pink-dark);
      font-weight:700;font-size:14px;
      transition:all 0.3s;
      box-shadow:0 4px 20px rgba(0,0,0,0.15);
    }
    .btn-white:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,0.2);}
    .btn-outline-white{
      padding:15px 32px;border-radius:60px;
      border:2px solid rgba(255,255,255,0.5);
      color:#fff;font-weight:700;font-size:14px;
      background:rgba(255,255,255,0.1);
      backdrop-filter:blur(10px);
      transition:all 0.3s;
    }
    .btn-outline-white:hover{background:rgba(255,255,255,0.2);border-color:#fff;transform:translateY(-3px);}

    /* CONTACT */
    .contact-section{background:var(--cream);}
    .contact-grid{
      display:grid;grid-template-columns:1fr 1.5fr;
      gap:36px;align-items:start;max-width:none;width:100%;margin:0 auto;
    }
    .contact-card{
      background:var(--white);border-radius:28px;
      padding:44px;border:1px solid var(--border);
      box-shadow:0 4px 30px rgba(154,123,26,0.07);
    }
    .contact-card .sec-h{font-size:36px;}
    .c-item{
      display:flex;gap:16px;align-items:flex-start;
      padding:20px 0;border-bottom:1px solid var(--border);
    }
    .c-item:last-child{border-bottom:none;}
    .c-icon{
      width:44px;height:44px;border-radius:14px;flex-shrink:0;
      background:linear-gradient(135deg,rgba(154,123,26,0.1),rgba(154,123,26,0.1));
      border:1px solid var(--border);
      display:flex;align-items:center;justify-content:center;font-size:18px;
    }
    .c-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);margin-bottom:4px;}
    .c-val{font-size:15px;font-weight:600;color:var(--dark-text);line-height:1.6;}
    .c-val a{color:var(--pink-dark);}
    .map-wrap{
      border-radius:28px;overflow:hidden;height:100%;min-height:460px;
      box-shadow:0 4px 30px rgba(154,123,26,0.1);
      border:1px solid var(--border);
    }
    .map-wrap iframe{
      width:100%;height:100%;min-height:460px;border:none;
    }

    /* FOOTER */
    footer{
      background:linear-gradient(160deg,#000000,#141414);
      color:#fff;padding:60px var(--site-gutter) 28px;
    }
    .footer-top{
      display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;
      gap:50px;margin-bottom:50px;
    }
    .f-brand .brand-logo{margin-bottom:4px;}
    .f-brand p{font-size:13px;color:rgba(255,255,255,0.5);line-height:1.8;max-width:260px;}
    .f-col h5{
      font-size:12px;text-transform:uppercase;letter-spacing:0.12em;
      color:var(--gold-light);font-weight:700;margin-bottom:18px;
    }
    .f-col ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
    .f-col ul li a{font-size:14px;color:rgba(255,255,255,0.55);transition:color 0.3s;}
    .f-col ul li a:hover{color:var(--gold);}
    .footer-bottom{
      display:flex;justify-content:space-between;align-items:center;
      flex-wrap:wrap;gap:16px;
      padding-top:28px;border-top:1px solid rgba(255,255,255,0.08);
    }
    .footer-bottom p{font-size:13px;color:rgba(255,255,255,0.35);}
    .socials{display:flex;gap:10px;}
    .soc{
      width:40px;height:40px;border-radius:10px;
      border:1px solid rgba(255,255,255,0.1);
      display:flex;align-items:center;justify-content:center;
      color:rgba(255,255,255,0.7);
      transition:all 0.3s;
    }
    .soc svg{width:20px;height:20px;fill:currentColor;}
    .soc:hover{
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      border-color:transparent;color:#fff;transform:translateY(-3px);
    }
    .soc-wa:hover{background:#25D366;border-color:#25D366;}
    .soc-ig:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);border-color:transparent;}
    .trainer-av-icon{font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
    .c-icon{display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--pink-dark);}
    .pill-icon{display:flex;align-items:center;justify-content:center;}

    /* WA FLOAT */
    .wa-btn{
      position:fixed;bottom:28px;right:28px;
      z-index:998;
      width:58px;height:58px;border-radius:50%;
      background:#25D366;color:#fff;
      display:flex;align-items:center;justify-content:center;
      box-shadow:0 6px 30px rgba(37,211,102,0.45);
      font-size:26px;
      animation:waBounce 2.5s infinite;
    }
    .wa-btn:hover{transform:scale(1.12);}
    @keyframes waBounce{
      0%,100%{box-shadow:0 6px 30px rgba(37,211,102,0.45);}
      50%{box-shadow:0 6px 50px rgba(37,211,102,0.7),0 0 0 14px rgba(37,211,102,0.08);}
    }
    .wa-tooltip{
      position:absolute;right:66px;
      background:var(--dark-text);color:#fff;
      padding:8px 14px;border-radius:10px;
      font-size:12px;font-weight:600;white-space:nowrap;
      opacity:0;transform:translateX(6px);
      transition:all 0.3s;pointer-events:none;
    }
    .wa-btn:hover .wa-tooltip{opacity:1;transform:translateX(0);}

    /* BACK TO TOP */
    .back-to-top{
      position:fixed;bottom:96px;right:28px;z-index:997;
      width:48px;height:48px;border-radius:50%;
      border:none;cursor:pointer;
      background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));
      color:#fff;
      box-shadow:0 6px 24px rgba(154,123,26,0.4);
      display:flex;align-items:center;justify-content:center;
      opacity:0;visibility:hidden;transform:translateY(12px);
      transition:opacity 0.3s,visibility 0.3s,transform 0.3s;
    }
    .back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0);}
    .back-to-top:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(154,123,26,0.5);}
    .back-to-top svg{width:22px;height:22px;}

    /* REVEAL */
    .reveal{opacity:0;transform:translateY(36px);transition:all 0.75s cubic-bezier(0.25,0.46,0.45,0.94);}
    .reveal.visible{opacity:1;transform:none;}
    .d1{transition-delay:0.1s;}.d2{transition-delay:0.2s;}.d3{transition-delay:0.3s;}.d4{transition-delay:0.4s;}

    /* RESPONSIVE */
    @media(max-width:1100px){
      .artwork-grid{grid-template-columns:repeat(3,1fr);}
      .process-grid{grid-template-columns:repeat(2,1fr);}
      .proc-card::after{display:none;}
      .footer-top{grid-template-columns:1fr 1fr;}
    }
    @media(max-width:1023px){
      .course-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    }
    @media(max-width:900px){
      .artwork-grid{grid-template-columns:repeat(2,1fr);}
      .hero-inner{grid-template-columns:1fr;}
      .hero-right{display:none;}
      .about-grid{grid-template-columns:1fr;}
      .about-accent{right:-10px;}
      .testi-nav.prev{left:4px;}
      .testi-nav.next{right:4px;}
      .contact-grid{grid-template-columns:1fr;}
      .stats-grid{grid-template-columns:repeat(2,1fr);}
      .nav-links{display:none;}
      .hamburger{display:flex;}
      .brand-logo__text{display:none;}
      .brand-logo__img{height:44px;max-width:100px;}
    }
    @media(max-width:767px){
    }
    @media(max-width:700px){
      .gallery-slider-wrap{padding:0 12px;}
      .gallery-main{height:280px;max-height:280px;aspect-ratio:unset;border-radius:16px;}
      .gallery-slide{flex:0 0 100%;padding:0 4px;}
      .gallery-nav{width:40px;height:40px;}
      .gallery-nav.prev{left:8px;}
      .gallery-nav.next{right:8px;}
      .gallery-thumb{flex:0 0 56px;height:56px;}
    }
    @media(max-width:600px){
      .course-grid{grid-template-columns:1fr;}
      .testi-slider{padding:0 8px;}
      .testi-nav{width:38px;height:38px;}
      .process-grid{grid-template-columns:1fr 1fr;}
      .cta-inner{padding:50px 30px;}
      .footer-top{grid-template-columns:1fr;gap:32px;}
      .hero-btns{flex-direction:column;}
      .btn-primary,.btn-secondary{text-align:center;}
    }
