
      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }

      html {
        overflow-x: hidden;
        width: 100%;
      }

      body {
        font-family: "Cairo", sans-serif;
        background: linear-gradient(135deg, #fef5f8 0%, #f0f8ff 100%);
        overflow-x: hidden;
        position: relative;
        width: 100%;
        max-width: 100vw;
      }

      /* Decorative Background Elements */
      body::before {
        content: "";
        position: absolute;
        width: 300px;
        height: 300px;
        background: radial-gradient(
          circle,
          rgba(255, 182, 193, 0.3) 0%,
          transparent 70%
        );
        border-radius: 50%;
        top: 10%;
        left: -100px;
        z-index: 0;
      }

      body::after {
        content: "";
        position: absolute;
        width: 400px;
        height: 400px;
        background: radial-gradient(
          circle,
          rgba(173, 216, 230, 0.3) 0%,
          transparent 70%
        );
        border-radius: 50%;
        bottom: 10%;
        right: -150px;
        z-index: 0;
      }

      .container {
        max-width: 100%;
        margin: 0;
        padding: 0 30px;
        position: relative;
        z-index: 1;
        width: 100%;
        overflow-x: hidden;
      }

      /* Header Styles */
      header {
        padding: 20px 0;
        position: relative;
        z-index: 10;
      }

      nav {
        display: flex;
        justify-content: space-between;
        align-items: center;
      }

      .logo {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 24px;
        font-weight: 700;
        color: #2d2d2d;
      }

      .logo-icon {
        width: 50px;
        height: 50px;
        background: linear-gradient(135deg, #ff69b4 0%, #ff1493 100%);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 3px solid #2d2d2d;
        position: relative;
      }

      .logo-icon::after {
        content: "✦";
        color: white;
        font-size: 24px;
      }

      .nav-links {
        display: flex;
        gap: 40px;
        list-style: none;
      }

      .nav-links a {
        text-decoration: none;
        color: #2d2d2d;
        font-weight: 600;
        font-size: 16px;
        transition: color 0.3s;
      }

      .nav-links a:hover {
        color: #ff69b4;
      }

      .cta-button {
        background: #ff69b4;
        color: white;
        padding: 12px 30px;
        border: 3px solid #2d2d2d;
        border-radius: 10px;
        font-weight: 700;
        font-size: 16px;
        cursor: pointer;
        transition:
          transform 0.2s,
          box-shadow 0.2s;
        box-shadow: 4px 4px 0 #2d2d2d;
      }

      .cta-button:hover {
        transform: translate(2px, 2px);
        box-shadow: 2px 2px 0 #2d2d2d;
      }

      /* Hero Section */
      .hero {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 60px;
        padding: 60px 0;
        align-items: center;
      }

      .hero-content {
        position: relative;
      }

      .tag {
        background: #ffff99;
        color: #2d2d2d;
        padding: 10px 20px;
        border: 3px solid #2d2d2d;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        font-weight: 700;
        font-size: 14px;
        margin-bottom: 30px;
        transform: rotate(-2deg);
      }

      .tag::before {
        content: "✏️";
      }

      h1 {
        font-size: 72px;
        font-weight: 800;
        line-height: 1.1;
        color: #2d2d2d;
        margin-bottom: 20px;
      }

      .gradient-text {
        background: linear-gradient(
          135deg,
          #b19cd9 0%,
          #ff69b4 50%,
          #98fb98 100%
        );
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }

      .highlight-box {
        background: #ffb6c1;
        padding: 5px 20px;
        border: 3px solid #2d2d2d;
        display: inline-block;
        transform: rotate(-1deg);
      }

      .hero-description {
        font-size: 18px;
        color: #555;
        margin-bottom: 40px;
        line-height: 1.6;
      }

      .button-group {
        display: flex;
        gap: 20px;
        margin-bottom: 50px;
      }

      .primary-btn {
        background: #ffb6c1;
        color: #2d2d2d;
        padding: 18px 40px;
        border: 3px solid #2d2d2d;
        border-radius: 10px;
        font-weight: 700;
        font-size: 18px;
        cursor: pointer;
        transition: transform 0.2s;
        box-shadow: 5px 5px 0 #2d2d2d;
        display: flex;
        align-items: center;
        gap: 10px;
      }

      .primary-btn:hover {
        transform: translate(3px, 3px);
        box-shadow: 2px 2px 0 #2d2d2d;
      }

      .secondary-btn {
        background: #98fb98;
        color: #2d2d2d;
        padding: 18px 40px;
        border: 3px solid #2d2d2d;
        border-radius: 10px;
        font-weight: 700;
        font-size: 18px;
        cursor: pointer;
        transition: transform 0.2s;
        box-shadow: 5px 5px 0 #2d2d2d;
        display: flex;
        align-items: center;
        gap: 10px;
      }

      .secondary-btn:hover {
        transform: translate(3px, 3px);
        box-shadow: 2px 2px 0 #2d2d2d;
      }

      /* Stats */
      .stats {
        display: flex;
        gap: 60px;
      }

      .stat-item {
        text-align: center;
      }

      .stat-number {
        font-size: 48px;
        font-weight: 800;
        color: #2d2d2d;
      }

      .stat-label {
        font-size: 14px;
        color: #666;
        text-transform: uppercase;
        letter-spacing: 1px;
      }

      /* Hero Image */
      .hero-image {
        position: relative;
      }

      .image-container {
        background: white;
        border: 4px solid #2d2d2d;
        border-radius: 20px;
        padding: 20px;
        box-shadow: 15px 15px 0 rgba(0, 0, 0, 0.1);
        position: relative;
        overflow: visible;
        max-width: 85%;
        margin: 0 auto;
      }

      .image-container img {
        width: 100%;
        height: auto;
        border-radius: 10px;
        display: block;
      }

      /* Decorative Elements */
      .decoration {
        position: absolute;
        z-index: 5;
      }

      .heart-1 {
        top: 10%;
        right: -5px;
        font-size: 40px;
        animation: float 3s ease-in-out infinite;
      }

      .star-1 {
        top: -20px;
        right: 100px;
        font-size: 35px;
        animation: rotate 10s linear infinite;
      }

      .star-2 {
        bottom: -20px;
        right: 50px;
        font-size: 30px;
        animation: rotate 8s linear infinite reverse;
        display: hidden;
      }

      .badge {
        position: absolute;
        bottom: 30px;
        left: -2px;
        background: #98fb98;
        color: #2d2d2d;
        padding: 10px 20px;
        border: 3px solid #2d2d2d;
        font-weight: 700;
        border-radius: 8px;
        box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.2);
        transform: rotate(-5deg);
        z-index: 10;
      }

      .splash {
        position: absolute;
        top: -50px;
        right: -50px;
        width: 150px;
        height: 150px;
        background: radial-gradient(circle, #ffa500 0%, #ff6347 100%);
        border-radius: 50%;
        opacity: 0.6;
        z-index: -1;
      }

      /* Animations */
      @keyframes float {
        0%,
        100% {
          transform: translateY(0);
        }
        50% {
          transform: translateY(-20px);
        }
      }

      @keyframes rotate {
        from {
          transform: rotate(0deg);
        }
        to {
          transform: rotate(360deg);
        }
      }

      /* Responsive - Tablet */
      @media (max-width: 968px) {
        .container {
          padding: 0;
        }

        .hero {
          grid-template-columns: 1fr;
          gap: 40px;
          padding: 40px 0;
        }

        h1 {
          font-size: 48px;
        }

        .nav-links {
          display: none;
        }

        .stats {
          gap: 20px;
          flex-wrap: wrap;
          justify-content: center;
        }

        .button-group {
          flex-direction: column;
          width: 100%;
        }

        .primary-btn,
        .secondary-btn {
          width: 100%;
          justify-content: center;
        }
      }

      /* Responsive - Mobile */
      @media (max-width: 640px) {
        .container {
          padding: 0 5px;
          max-width: 100%;
        }

        header {
          padding: 15px 0;
        }

        .logo {
          font-size: 18px;
        }

        .logo-icon {
          width: 40px;
          height: 40px;
        }

        .cta-button {
          padding: 10px 20px;
          font-size: 14px;
        }

        .hero {
          padding: 30px 0;
          overflow-x: hidden;
        }

        h1 {
          font-size: 36px;
          line-height: 1.2;
        }

        .tag {
          font-size: 12px;
          padding: 8px 15px;
        }

        .hero-description {
          font-size: 16px;
        }

        .primary-btn,
        .secondary-btn {
          width: 100%;
          padding: 15px 30px;
          font-size: 16px;
          justify-content: center;
        }

        .stats {
          gap: 15px;
          flex-direction: row;
          justify-content: space-around;
        }

        .stat-number {
          font-size: 32px;
        }

        .stat-label {
          font-size: 11px;
        }

        .image-container {
          padding: 15px;
          max-width: 100%;
        }

        .image-container img {
          max-width: 100%;
          height: auto;
        }

        .badge {
          font-size: 12px;
          padding: 8px 15px;
        }

        /* Fix all sections overflow */
        section {
          overflow-x: hidden;
          max-width: 100vw;
        }

        /* Fix grids */
        .gallery-grid,
        .moments-grid,
        .activity-cards-grid {
          overflow-x: hidden;
          max-width: 100%;
        }

        /* Fix all images */
        img {
          max-width: 100%;
          height: auto;
        }
      }

      /* Doodle patterns background */
      .doodle-pattern {
        position: absolute;
        opacity: 0.05;
        font-size: 30px;
        z-index: 0;
      }

      .pattern-1 {
        top: 20%;
        left: 5%;
      }
      .pattern-2 {
        top: 60%;
        right: 10%;
      }
      .pattern-3 {
        bottom: 30%;
        left: 15%;
      }

      /* ========== ABOUT SECTION STYLES ========== */
      .about-section {
        padding: 100px 0;
        position: relative;
      }

      .section-header {
        text-align: center;
        margin-bottom: 80px;
      }

      .section-title {
        font-size: 64px;
        font-weight: 800;
        color: #2d2d2d;
        letter-spacing: -1px;
      }

      .gradient-text-2 {
        background: linear-gradient(135deg, #98fb98 0%, #90ee90 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }

      .gradient-text-3 {
        background: linear-gradient(135deg, #ffb6c1 0%, #ff69b4 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }

      .about-content {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: center;
      }

      /* About Image Section */
      .about-image-wrapper {
        position: relative;
        height: 600px;
      }

      .about-image-main {
        position: relative;
        width: 100%;
        height: 100%;
      }

      .image-frame {
        width: 100%;
        height: 100%;
        background: white;
        border: 4px solid #2d2d2d;
        border-radius: 20px;
        padding: 15px;
        box-shadow: 20px 20px 0 rgba(0, 0, 0, 0.1);
        position: relative;
        overflow: hidden;
      }

      .image-frame::before {
        content: "";
        position: absolute;
        top: -10px;
        left: 50%;
        transform: translateX(-50%);
        width: 80px;
        height: 20px;
        background: #ffff99;
        border: 3px solid #2d2d2d;
        border-radius: 5px;
      }

      .image-frame img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 12px;
      }

      /* Circular Images */
      .circular-image {
        position: absolute;
        width: 180px;
        height: 180px;
        border-radius: 50%;
        border: 5px solid #2d2d2d;
        overflow: hidden;
        box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.15);
        background: white;
        animation: float 4s ease-in-out infinite;
      }

      .circular-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      .circular-image-1 {
        top: -40px;
        right: -10px;
        animation-delay: 0s;
      }

      .circular-image-2 {
        bottom: -40px;
        left: -10px;
        animation-delay: 1s;
      }

      /* Floating Shapes */
      .floating-shape {
        position: absolute;
        border-radius: 50%;
        opacity: 0.6;
        animation: float 6s ease-in-out infinite;
      }

      .shape-1 {
        width: 100px;
        height: 100px;
        background: rgba(255, 182, 193, 0.4);
        top: 15%;
        left: -50px;
        animation-delay: 0s;
      }

      .shape-2 {
        width: 80px;
        height: 80px;
        background: rgba(152, 251, 152, 0.4);
        bottom: 20%;
        right: -40px;
        animation-delay: 2s;
      }

      .shape-3 {
        width: 60px;
        height: 60px;
        background: rgba(255, 255, 153, 0.4);
        top: 60%;
        left: -30px;
        animation-delay: 3s;
      }

      .shape-4 {
        width: 120px;
        height: 120px;
        background: rgba(173, 216, 230, 0.3);
        top: -60px;
        left: 30%;
        animation-delay: 1.5s;
      }

      /* About Text Section */
      .about-text {
        position: relative;
      }

      .about-intro {
        font-size: 24px;
        line-height: 1.6;
        color: #2d2d2d;
        margin-bottom: 30px;
        font-weight: 500;
      }

      .highlight-text {
        font-weight: 700;
        padding: 2px 8px;
        border-radius: 4px;
        position: relative;
        display: inline-block;
      }

      .highlight-purple {
        background: rgba(177, 156, 217, 0.3);
        color: #6b4ba8;
      }

      .highlight-yellow {
        background: rgba(255, 255, 153, 0.5);
        color: #8b7500;
      }

      .about-mission {
        font-size: 18px;
        line-height: 1.7;
        color: #555;
        margin-bottom: 50px;
      }

      /* Feature Cards */
      .feature-cards {
        display: flex;
        flex-direction: column;
        gap: 20px;
      }

      .feature-card {
        padding: 25px 30px;
        border: 3px solid #2d2d2d;
        border-radius: 12px;
        display: flex;
        align-items: flex-start;
        gap: 20px;
        box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.1);
        transition:
          transform 0.3s,
          box-shadow 0.3s;
        cursor: pointer;
      }

      .feature-card:hover {
        transform: translate(-3px, -3px);
        box-shadow: 9px 9px 0 rgba(0, 0, 0, 0.15);
      }

      .card-pink {
        background: linear-gradient(135deg, #ffb6c1 0%, #ffccd5 100%);
      }

      .card-green {
        background: linear-gradient(135deg, #98fb98 0%, #b9fbc0 100%);
      }

      .card-yellow {
        background: linear-gradient(135deg, #ffff99 0%, #ffffcc 100%);
      }

      .card-icon {
        flex-shrink: 0;
        width: 60px;
        height: 60px;
        background: white;
        border: 3px solid #2d2d2d;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
      }

      .card-icon svg {
        color: #2d2d2d;
      }

      .card-content {
        flex: 1;
      }

      .card-title {
        font-size: 20px;
        font-weight: 700;
        color: #2d2d2d;
        margin-bottom: 8px;
      }

      .card-description {
        font-size: 15px;
        color: #555;
        line-height: 1.5;
        margin: 0;
      }

      /* Additional Animations */
      @keyframes pulse {
        0%,
        100% {
          transform: scale(1);
        }
        50% {
          transform: scale(1.05);
        }
      }

      @keyframes slideInLeft {
        from {
          opacity: 0;
          transform: translateX(-50px);
        }
        to {
          opacity: 1;
          transform: translateX(0);
        }
      }

      @keyframes slideInRight {
        from {
          opacity: 0;
          transform: translateX(50px);
        }
        to {
          opacity: 1;
          transform: translateX(0);
        }
      }

      /* Scroll Animation Classes */
      .fade-in-up {
        animation: fadeInUp 0.8s ease-out;
      }

      @keyframes fadeInUp {
        from {
          opacity: 0;
          transform: translateY(30px);
        }
        to {
          opacity: 1;
          transform: translateY(0);
        }
      }

      /* Responsive for About Section */
      @media (max-width: 968px) {
        .about-content {
          grid-template-columns: 1fr;
          gap: 60px;
        }

        .about-image-wrapper {
          height: 500px;
        }

        .circular-image {
          width: 140px;
          height: 140px;
        }

        .section-title {
          font-size: 48px;
        }

        .about-intro {
          font-size: 20px;
        }

        .feature-card {
          flex-direction: column;
          text-align: center;
          align-items: center;
        }
      }

      @media (max-width: 640px) {
        .about-section {
          padding: 60px 0;
        }

        .section-header {
          margin-bottom: 50px;
        }

        .about-image-wrapper {
          height: 400px;
        }

        .circular-image {
          width: 100px;
          height: 100px;
        }

        .circular-image-1 {
          top: -20px;
          right: -20px;
        }

        .circular-image-2 {
          bottom: -20px;
          left: -20px;
        }
      }

      /* ========== FEATURED SECTION STYLES ========== */
      .featured-section {
        padding: 100px 0;
        position: relative;
        background: linear-gradient(
          180deg,
          transparent 0%,
          rgba(255, 255, 255, 0.5) 100%
        );
      }

      .featured-header {
        text-align: center;
        margin-bottom: 60px;
        position: relative;
      }

      .featured-badge {
        display: inline-block;
        background: #ffff99;
        color: #2d2d2d;
        padding: 8px 20px;
        border: 3px solid #2d2d2d;
        border-radius: 8px;
        font-weight: 700;
        font-size: 13px;
        letter-spacing: 1px;
        margin-bottom: 20px;
        transform: rotate(-2deg);
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.1);
      }

      .featured-title {
        font-size: 64px;
        font-weight: 800;
        color: #2d2d2d;
        background: linear-gradient(135deg, #b19cd9 0%, #d8b5ff 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        margin-bottom: 15px;
        letter-spacing: -1px;
      }

      .featured-subtitle {
        font-size: 20px;
        color: #555;
        max-width: 600px;
        margin: 0 auto;
        line-height: 1.6;
      }

      /* Gallery Grid */
      .gallery-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
        margin-bottom: 40px;
      }

      .gallery-item {
        position: relative;
        overflow: hidden;
      }

      .gallery-large {
        height: 350px;
      }

      .gallery-frame {
        width: 100%;
        height: 100%;
        background: white;
        border: 4px solid #2d2d2d;
        border-radius: 15px;
        overflow: hidden;
        position: relative;
        transform: rotate(-1deg);
        transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
        box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.1);
      }

      .gallery-frame:hover {
        transform: rotate(0deg) scale(1.02);
        box-shadow: 12px 12px 0 rgba(0, 0, 0, 0.15);
      }

      .gallery-frame img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.5s ease;
      }

      .gallery-frame:hover img {
        transform: scale(1.1);
      }

      .gallery-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(
          to top,
          rgba(0, 0, 0, 0.7) 0%,
          transparent 60%
        );
        opacity: 0;
        transition: opacity 0.4s ease;
        display: flex;
        align-items: flex-end;
        padding: 30px;
      }

      .gallery-frame:hover .gallery-overlay {
        opacity: 1;
      }

      .overlay-content h3 {
        color: white;
        font-size: 28px;
        font-weight: 700;
        margin-bottom: 5px;
        transform: translateY(20px);
        transition: transform 0.4s ease 0.1s;
      }

      .gallery-frame:hover .overlay-content h3 {
        transform: translateY(0);
      }

      .overlay-content p {
        color: rgba(255, 255, 255, 0.9);
        font-size: 16px;
        transform: translateY(20px);
        transition: transform 0.4s ease 0.2s;
      }

      .gallery-frame:hover .overlay-content p {
        transform: translateY(0);
      }

      /* Activity Cards Grid */
      .activity-cards-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 25px;
        margin-bottom: 50px;
      }

      .activity-card {
        padding: 30px 25px;
        border: 3px solid #2d2d2d;
        border-radius: 15px;
        text-align: center;
        transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
        box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.1);
        cursor: pointer;
        position: relative;
        overflow: hidden;
      }

      .activity-card::before {
        content: "";
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(
          90deg,
          transparent,
          rgba(255, 255, 255, 0.4),
          transparent
        );
        transition: left 0.5s;
      }

      .activity-card:hover::before {
        left: 100%;
      }

      .activity-card:hover {
        transform: translateY(-8px);
        box-shadow: 12px 16px 25px rgba(0, 0, 0, 0.2);
      }

      /* Ensure activity cards are always visible */
      .activity-card {
        opacity: 1 !important;
        visibility: visible !important;
      }

      .card-color-pink {
        background: linear-gradient(135deg, #ffc9d9 0%, #ffb6c1 100%);
      }

      .card-color-green {
        background: linear-gradient(135deg, #b5f5c8 0%, #98fb98 100%);
      }

      .card-color-yellow {
        background: linear-gradient(135deg, #ffff99 0%, #fffacd 100%);
      }

      .card-color-peach {
        background: linear-gradient(135deg, #ffd4b8 0%, #ffcba4 100%);
      }

      .activity-icon {
        width: 70px;
        height: 70px;
        margin: 0 auto 20px;
        background: white;
        border: 3px solid #2d2d2d;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
        transition: transform 0.3s ease;
      }

      .activity-card:hover .activity-icon {
        transform: scale(1.1) rotate(10deg);
      }

      .activity-icon svg {
        color: #2d2d2d;
      }

      .activity-title {
        font-size: 20px;
        font-weight: 700;
        color: #2d2d2d;
        margin-bottom: 12px;
        line-height: 1.3;
      }

      .activity-description {
        font-size: 14px;
        color: #555;
        line-height: 1.5;
        margin: 0;
      }

      /* Explore More Button */
      .explore-more-container {
        text-align: center;
      }

      .explore-more-btn {
        background: linear-gradient(135deg, #ff69b4 0%, #ff1493 100%);
        color: white;
        padding: 18px 45px;
        border: 3px solid #2d2d2d;
        border-radius: 12px;
        font-weight: 700;
        font-size: 18px;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 12px;
        box-shadow: 6px 6px 0 #2d2d2d;
        transition: all 0.3s ease;
        position: relative;
        overflow: hidden;
      }

      .explore-more-btn::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 0;
        height: 0;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.3);
        transform: translate(-50%, -50%);
        transition:
          width 0.6s,
          height 0.6s;
      }

      .explore-more-btn:hover::before {
        width: 300px;
        height: 300px;
      }

      .explore-more-btn:hover {
        transform: translate(3px, 3px);
        box-shadow: 3px 3px 0 #2d2d2d;
      }

      .explore-more-btn:active {
        transform: translate(6px, 6px);
        box-shadow: 0 0 0 #2d2d2d;
      }

      .explore-more-btn svg {
        position: relative;
        z-index: 1;
        transition: transform 0.3s ease;
      }

      .explore-more-btn:hover svg {
        transform: translateX(5px);
      }

      /* Decorative elements for featured section */
      .featured-section::before {
        content: "✨";
        position: absolute;
        top: 10%;
        right: 5%;
        font-size: 50px;
        opacity: 0.3;
        animation: float 4s ease-in-out infinite;
      }

      .featured-section::after {
        content: "🎨";
        position: absolute;
        bottom: 10%;
        left: 5%;
        font-size: 50px;
        opacity: 0.3;
        animation: float 5s ease-in-out infinite 1s;
      }

      /* Advanced Animations */
      @keyframes slideInFromLeft {
        from {
          opacity: 0;
          transform: translateX(-50px);
        }
        to {
          opacity: 1;
          transform: translateX(0);
        }
      }

      @keyframes slideInFromRight {
        from {
          opacity: 0;
          transform: translateX(50px);
        }
        to {
          opacity: 1;
          transform: translateX(0);
        }
      }

      @keyframes bounceIn {
        0% {
          opacity: 0;
          transform: scale(0.3);
        }
        50% {
          opacity: 1;
          transform: scale(1.05);
        }
        70% {
          transform: scale(0.9);
        }
        100% {
          transform: scale(1);
        }
      }

      .animate-on-scroll {
        opacity: 1 !important;
      }

      .animate-on-scroll.animated {
        animation: bounceIn 0.6s ease forwards;
      }

      /* Responsive for Featured Section */
      @media (max-width: 1200px) {
        .activity-cards-grid {
          grid-template-columns: repeat(2, 1fr);
        }
      }

      @media (max-width: 968px) {
        .featured-section {
          padding: 80px 0;
        }

        .featured-title {
          font-size: 48px;
        }

        .gallery-grid {
          grid-template-columns: 1fr;
        }

        .gallery-large {
          height: 300px;
        }

        .activity-cards-grid {
          grid-template-columns: repeat(2, 1fr);
          gap: 20px;
        }
      }

      @media (max-width: 640px) {
        .featured-section {
          padding: 60px 0;
        }

        .featured-title {
          font-size: 36px;
        }

        .featured-subtitle {
          font-size: 16px;
        }

        .gallery-large {
          height: 250px;
        }

        .activity-cards-grid {
          grid-template-columns: 1fr !important;
          padding: 0 10px;
        }

        .explore-more-btn {
          width: 100%;
          justify-content: center;
        }
      }

      /* ========== GALLERY SECTION STYLES ========== */
      .gallery-section {
        padding: 100px 0 120px;
        position: relative;
        overflow: hidden;
      }

      .gallery-section-header {
        text-align: center;
        margin-bottom: 70px;
        position: relative;
        z-index: 2;
      }

      .gallery-badge {
        display: inline-block;
        background: #ffff99;
        color: #2d2d2d;
        padding: 8px 20px;
        border: 3px solid #2d2d2d;
        border-radius: 8px;
        font-weight: 700;
        font-size: 13px;
        letter-spacing: 1.5px;
        margin-bottom: 20px;
        transform: rotate(-2deg);
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.1);
        animation: wiggle 2s ease-in-out infinite;
      }

      @keyframes wiggle {
        0%,
        100% {
          transform: rotate(-2deg);
        }
        25% {
          transform: rotate(-3deg);
        }
        75% {
          transform: rotate(-1deg);
        }
      }

      .gallery-section-title {
        font-size: 68px;
        font-weight: 800;
        line-height: 1.2;
        letter-spacing: -1px;
      }

      .color-pink {
        background: linear-gradient(135deg, #ff69b4 0%, #ff1493 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }

      .color-green {
        background: linear-gradient(135deg, #98fb98 0%, #00fa9a 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
      }

      /* Moments Grid - Polaroid Style */
      .moments-grid {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 35px;
        margin-bottom: 60px;
        position: relative;
        z-index: 2;
      }

      .moment-card {
        background: white;
        border: 4px solid #2d2d2d;
        border-radius: 12px;
        padding: 12px 12px 18px;
        box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.1);
        transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
        cursor: pointer;
        position: relative;
        transform-style: preserve-3d;
        perspective: 1000px;
      }

      .moment-card::before {
        content: "";
        position: absolute;
        top: -8px;
        left: 50%;
        transform: translateX(-50%);
        width: 60px;
        height: 25px;
        background: rgba(255, 255, 255, 0.8);
        border: 2px solid #2d2d2d;
        border-radius: 8px 8px 0 0;
        z-index: 10;
      }

      .moment-card:hover {
        transform: translateY(-15px) rotate(0deg) scale(1.05);
        box-shadow: 12px 16px 25px rgba(0, 0, 0, 0.2);
        z-index: 10;
      }

      /* Different border colors for each card */
      .card-border-pink {
        border-bottom-color: #ffb6c1;
        border-bottom-width: 20px;
        transform: rotate(-3deg);
      }

      .card-border-green {
        border-bottom-color: #98fb98;
        border-bottom-width: 20px;
        transform: rotate(2deg);
      }

      .card-border-yellow {
        border-bottom-color: #ffff99;
        border-bottom-width: 20px;
        transform: rotate(-2deg);
      }

      .card-border-purple {
        border-bottom-color: #dda0dd;
        border-bottom-width: 20px;
        transform: rotate(3deg);
      }

      .card-border-blue {
        border-bottom-color: #add8e6;
        border-bottom-width: 20px;
        transform: rotate(-1deg);
      }

      .moment-image-wrapper {
        width: 100%;
        aspect-ratio: 1;
        overflow: hidden;
        border-radius: 6px;
        position: relative;
        background: #f5f5f5;
      }

      .moment-image-wrapper::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(
          45deg,
          transparent 0%,
          rgba(255, 255, 255, 0.2) 50%,
          transparent 100%
        );
        opacity: 0;
        transition: opacity 0.3s ease;
      }

      .moment-card:hover .moment-image-wrapper::after {
        opacity: 1;
        animation: shimmer 1s ease-in-out;
      }

      @keyframes shimmer {
        0% {
          transform: translateX(-100%);
        }
        100% {
          transform: translateX(100%);
        }
      }

      .moment-image-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.5s ease;
        opacity: 1 !important;
        display: block !important;
      }

      .moment-card:hover .moment-image-wrapper img {
        transform: scale(1.15);
      }

      .moment-footer {
        display: flex;
        justify-content: center;
        align-items: center;
        padding-top: 12px;
      }

      .heart-button {
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 8px;
        transition: transform 0.3s ease;
        position: relative;
      }

      .heart-button:hover {
        transform: scale(1.2);
      }

      .heart-button:active {
        transform: scale(0.9);
      }

      .heart-icon {
        color: #ccc;
        transition: all 0.3s ease;
      }

      .heart-button:hover .heart-icon {
        color: #ff69b4;
        fill: #ff69b4;
      }

      .heart-button.liked .heart-icon {
        color: #ff69b4;
        fill: #ff69b4;
        animation: heartbeat 0.6s ease;
      }

      @keyframes heartbeat {
        0%,
        100% {
          transform: scale(1);
        }
        25% {
          transform: scale(1.3);
        }
        50% {
          transform: scale(1.1);
        }
        75% {
          transform: scale(1.2);
        }
      }

      /* View All Button */
      .view-all-container {
        text-align: center;
        position: relative;
        z-index: 2;
      }

      .view-all-btn {
        background: linear-gradient(135deg, #98fb98 0%, #7bed9f 100%);
        color: #2d2d2d;
        padding: 18px 45px;
        border: 3px solid #2d2d2d;
        border-radius: 12px;
        font-weight: 700;
        font-size: 18px;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 12px;
        box-shadow: 6px 6px 0 #2d2d2d;
        transition: all 0.3s ease;
        position: relative;
        overflow: hidden;
      }

      .view-all-btn::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 0;
        height: 0;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.4);
        transform: translate(-50%, -50%);
        transition:
          width 0.6s,
          height 0.6s;
      }

      .view-all-btn:hover::before {
        width: 400px;
        height: 400px;
      }

      .view-all-btn:hover {
        transform: translate(3px, 3px);
        box-shadow: 3px 3px 0 #2d2d2d;
      }

      .view-all-btn:active {
        transform: translate(6px, 6px);
        box-shadow: 0 0 0 #2d2d2d;
      }

      .view-all-btn svg {
        position: relative;
        z-index: 1;
        transition: transform 0.3s ease;
      }

      .view-all-btn:hover svg {
        transform: rotate(90deg);
      }

      /* Gallery Decorations */
      .gallery-decoration {
        position: absolute;
        border-radius: 50%;
        opacity: 0.15;
        pointer-events: none;
        z-index: 1;
      }

      .decoration-shape-1 {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle, #ffb6c1 0%, transparent 70%);
        top: 10%;
        left: -50px;
        animation: float 8s ease-in-out infinite;
      }

      .decoration-shape-2 {
        width: 150px;
        height: 150px;
        background: radial-gradient(circle, #98fb98 0%, transparent 70%);
        top: 50%;
        right: -30px;
        animation: float 10s ease-in-out infinite 2s;
      }

      .decoration-shape-3 {
        width: 180px;
        height: 180px;
        background: radial-gradient(circle, #ffff99 0%, transparent 70%);
        bottom: 20%;
        left: 10%;
        animation: float 9s ease-in-out infinite 1s;
      }

      .decoration-shape-4 {
        width: 160px;
        height: 160px;
        background: radial-gradient(circle, #dda0dd 0%, transparent 70%);
        bottom: 10%;
        right: 15%;
        animation: float 11s ease-in-out infinite 3s;
      }

      /* Advanced 3D Tilt Effect */
      .moment-card[data-tilt] {
        transition: transform 0.3s ease-out;
      }

      /* Responsive for Gallery Section */
      @media (max-width: 1400px) {
        .moments-grid {
          grid-template-columns: repeat(4, 1fr);
        }

        .moment-card:nth-child(5) {
          grid-column: 2 / 4;
        }
      }

      @media (max-width: 1200px) {
        .moments-grid {
          grid-template-columns: repeat(3, 1fr);
        }

        .moment-card:nth-child(5) {
          grid-column: auto;
        }
      }

      @media (max-width: 968px) {
        .gallery-section {
          padding: 80px 0 100px;
        }

        .gallery-section-title {
          font-size: 48px;
        }

        .moments-grid {
          grid-template-columns: repeat(2, 1fr);
          gap: 25px;
        }
      }

      @media (max-width: 640px) {
        .gallery-section {
          padding: 60px 0 80px;
        }

        .gallery-section-title {
          font-size: 36px;
        }

        .moments-grid {
          grid-template-columns: 1fr;
          gap: 30px;
        }

        .moment-card {
          transform: rotate(0deg) !important;
          max-width: 400px;
          margin: 0 auto;
        }

        .view-all-btn {
          width: 100%;
          justify-content: center;
        }
      }

      /* Loading Skeleton Animation */
      @keyframes skeleton-loading {
        0% {
          background-position: -200px 0;
        }
        100% {
          background-position: calc(200px + 100%) 0;
        }
      }

      .skeleton {
        background: linear-gradient(
          90deg,
          #f0f0f0 25%,
          #e0e0e0 50%,
          #f0f0f0 75%
        );
        background-size: 200px 100%;
        animation: skeleton-loading 1.5s ease-in-out infinite;
      }

      /* Prevent skeleton from hiding gallery images */
      .moment-image-wrapper.skeleton img {
        opacity: 1 !important;
        visibility: visible !important;
      }
      /* Join Section (Bottom CTA) */
      .join-section {
        display: grid;
        grid-template-columns: 45% 55%;
        gap: 80px;
        padding: 80px 20px;
        align-items: center;
        background: transparent;
        margin-top: 60px;
        margin-bottom: 60px;
        position: relative;
      }

      .join-content {
        position: relative;
        z-index: 2;
      }

      .join-title {
        font-size: 56px;
        font-weight: 700;
        line-height: 1.2;
        color: #2d2d2d;
        margin-bottom: 20px;
      }

      .join-gradient-text {
        background: linear-gradient(135deg, #b19cd9 0%, #9370db 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        font-weight: 700;
      }

      .join-gradient-text-green {
        background: linear-gradient(135deg, #90ee90 0%, #98fb98 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        font-weight: 700;
      }

      .join-highlight-box {
        background: #ffff99;
        padding: 5px 25px;
        border: 4px solid #2d2d2d;
        display: inline-block;
        transform: rotate(-2deg);
        font-weight: 800;
        margin-left: 10px;
        color: #2d2d2d;
      }

      .join-description {
        font-size: 18px;
        color: #555;
        margin-bottom: 30px;
        line-height: 1.6;
      }

      /* Join Section Image */
      .join-image {
        position: relative;
        transform: rotate(-8deg);
      }

      .join-image-container {
        background: white;
        border: 5px solid #2d2d2d;
        padding: 15px;
        position: relative;
        overflow: visible;
        transform: perspective(1000px) rotateY(-5deg);
        box-shadow: 15px 15px 0 rgba(0, 0, 0, 0.1);
      }

      .join-image-container img {
        width: 100%;
        height: auto;
        display: block;
        border: 2px solid #eee;
      }

      /* Magnifying Glass Effect */
      .join-magnifying-glass {
        position: absolute;
        bottom: -40px;
        right: -40px;
        width: 200px;
        height: 200px;
        border: 6px solid #2d2d2d;
        border-radius: 50%;
        background: white;
        overflow: hidden;
        box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.2);
        z-index: 10;
      }

      .join-magnifying-glass img {
        width: 400px;
        height: 400px;
        object-fit: cover;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%) scale(1.5);
      }

      .join-magnifying-handle {
        position: absolute;
        bottom: -60px;
        right: 30px;
        width: 12px;
        height: 90px;
        background: #2d2d2d;
        transform: rotate(45deg);
        border-radius: 6px;
        border: 2px solid #000;
      }

      /* Badge Buttons */
      .badge-group {
        display: flex;
        gap: 15px;
        flex-wrap: wrap;
        margin-top: 30px;
      }

      .badge-btn {
        background: white;
        color: #2d2d2d;
        padding: 10px 20px;
        border: 3px solid #2d2d2d;
        border-radius: 6px;
        font-weight: 600;
        font-size: 14px;
        cursor: pointer;
        transition: transform 0.2s;
        box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
        display: inline-flex;
        align-items: center;
        gap: 8px;
      }

      .badge-btn:hover {
        transform: translate(1px, 1px);
        box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.1);
      }

      /* Responsive Styles for Join Section */
      @media (max-width: 968px) {
        .join-section {
          grid-template-columns: 1fr;
          gap: 40px;
          padding: 40px 20px;
        }

        .join-image {
          order: 2;
          transform: rotate(-5deg);
          margin-top: 20px;
          margin-bottom: 40px;
        }

        .join-content {
          order: 1;
        }

        .join-title {
          font-size: 42px;
        }

        .join-magnifying-glass {
          width: 150px;
          height: 150px;
        }
      }

      @media (max-width: 640px) {
        .join-section {
          padding: 30px 15px;
        }

        .join-title {
          font-size: 32px;
        }

        .join-highlight-box {
          font-size: 28px;
          padding: 5px 15px;
        }

        .join-magnifying-glass {
          width: 120px;
          height: 120px;
          bottom: -30px;
          right: -30px;
        }

        .join-magnifying-handle {
          bottom: -45px;
          right: 20px;
        }

        .join-image-container {
          box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.1);
        }
      }
      /* Footer Styles */
      .footer {
        padding: 80px 0 40px;
        position: relative;
        z-index: 10;
        margin-top: 40px;
        border-top: 2px solid #2d2d2d;
      }

      .footer-grid {
        display: grid;
        grid-template-columns: 1.5fr 1fr 1.5fr;
        gap: 60px;
        margin-bottom: 60px;
      }

      .footer-brand h3 {
        display: flex;
        align-items: center;
        gap: 15px;
        font-size: 28px;
        font-weight: 700;
        color: #2d2d2d;
        margin-bottom: 20px;
      }

      .footer-logo-icon {
        width: 50px;
        height: 50px;
        background: #ff69b4;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 3px solid #2d2d2d;
        box-shadow: 3px 3px 0 #2d2d2d;
        position: relative;
      }

      .footer-logo-icon::after {
        content: "✨";
        color: white;
        font-size: 24px;
        position: absolute;
      }

      .footer-desc {
        color: #555;
        line-height: 1.6;
        margin-bottom: 30px;
        max-width: 350px;
      }

      .social-links {
        display: flex;
        gap: 15px;
      }

      .social-link {
        width: 45px;
        height: 45px;
        border: 2px solid #2d2d2d;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #2d2d2d;
        font-size: 20px;
        transition:
          transform 0.2s,
          background 0.2s;
        text-decoration: none;
        background: white;
      }

      .social-link:hover {
        transform: translate(-3px, -3px);
        box-shadow: 3px 3px 0 #2d2d2d;
        background: #ffff99;
      }

      .footer-heading {
        font-size: 20px;
        font-weight: 700;
        color: #2d2d2d;
        margin-bottom: 25px;
        text-align: right;
      }

      .footer-links ul {
        list-style: none;
        padding: 0;
        text-align: right;
      }

      .footer-links li {
        margin-bottom: 15px;
      }

      .footer-links a {
        color: #555;
        text-decoration: none;
        transition: color 0.2s;
        font-weight: 500;
      }

      .footer-links a:hover {
        color: #ff69b4;
      }

      .newsletter-form {
        display: flex;
        gap: 0;
        border: 2px solid #2d2d2d;
        background: white;
        padding: 0;
      }

      .newsletter-input {
        border: none;
        padding: 10px 15px;
        flex: 1;
        outline: none;
        font-family: "Poppins", sans-serif;
        font-size: 14px;
        color: #2d2d2d;
        min-height: 45px;
      }

      .newsletter-input::placeholder {
        color: #999;
      }

      .newsletter-btn {
        background: #ff69b4;
        border: none;
        border-left: 2px solid #2d2d2d;
        width: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        color: white;
        transition: background 0.2s;
      }

      .newsletter-btn:hover {
        background: #ff1493;
      }

      .footer-bottom {
        border-top: 2px solid #2d2d2d;
        padding-top: 30px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #666;
        font-size: 14px;
      }

      .footer-bottom-links {
        display: flex;
        gap: 30px;
      }

      .footer-bottom-links a {
        color: #666;
        text-decoration: none;
      }

      .footer-bottom-links a:hover {
        text-decoration: underline;
      }

      @media (max-width: 968px) {
        .footer-grid {
          grid-template-columns: 1fr;
          gap: 40px;
          text-align: center;
        }

        .footer-brand h3,
        .social-links {
          justify-content: center;
        }

        .footer-desc {
          margin: 0 auto 30px;
        }

        .footer-bottom {
          flex-direction: column;
          gap: 20px;
          text-align: center;
        }
      }

      /* ========== QUESTIONS SECTION STYLES ========== */
      .questions-section {
        padding: 100px 0;
        position: relative;
        background: radial-gradient(circle at center, #fff0f5 0%, #fff 100%);
        overflow: hidden;
      }

      .questions-header {
        text-align: center;
        margin-bottom: 60px;
        position: relative;
        z-index: 2;
      }

      .questions-badge {
        display: inline-block;
        background: #ff69b4;
        color: white;
        padding: 8px 20px;
        border: 3px solid #2d2d2d;
        border-radius: 8px;
        font-weight: 700;
        font-size: 13px;
        letter-spacing: 1px;
        margin-bottom: 20px;
        transform: rotate(2deg);
        box-shadow: 4px 4px 0 #2d2d2d;
      }

      .questions-title {
        font-size: 56px;
        font-weight: 800;
        color: #2d2d2d;
        margin-bottom: 15px;
      }

      .questions-container {
        display: flex;
        justify-content: center;
        align-items: center;
        perspective: 1000px;
        padding: 20px;
      }

      .smart-card-wrapper {
        width: 100%;
        max-width: 600px;
        height: 400px;
        position: relative;
        cursor: pointer;
      }

      .smart-card {
        width: 100%;
        height: 100%;
        position: relative;
        transform-style: preserve-3d;
        transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        border-radius: 20px;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
      }

      .smart-card.is-flipped {
        transform: rotateY(180deg);
      }

      .card-face {
        position: absolute;
        width: 100%;
        height: 100%;
        backface-visibility: hidden;
        border: 4px solid #2d2d2d;
        border-radius: 20px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 40px;
        text-align: center;
        box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.1);
      }

      .card-front {
        background: white;
      }

      .card-back {
        background: linear-gradient(135deg, #ff69b4 0%, #ff1493 100%);
        color: white;
        transform: rotateY(180deg);
      }

      .question-icon {
        font-size: 60px;
        margin-bottom: 20px;
        animation: bounce 2s infinite;
      }

      .question-text {
        font-size: 32px;
        font-weight: 700;
        color: #2d2d2d;
        line-height: 1.4;
        margin-bottom: 40px;
      }

      .lets-play-btn {
        background: #ff69b4;
        color: white;
        padding: 15px 40px;
        border: 3px solid #2d2d2d;
        border-radius: 12px;
        font-weight: 800;
        font-size: 24px;
        cursor: pointer;
        box-shadow: 5px 5px 0 #2d2d2d;
        transition: all 0.2s;
        display: flex;
        align-items: center;
        gap: 10px;
      }

      .lets-play-btn:hover {
        transform: translate(2px, 2px);
        box-shadow: 3px 3px 0 #2d2d2d;
      }

      .answer-text {
        font-size: 48px;
        font-weight: 800;
        margin-bottom: 30px;
        text-shadow: 3px 3px 0 #2d2d2d;
      }

      .next-question-btn {
        background: #fff;
        color: #2d2d2d;
        padding: 12px 30px;
        border: 3px solid #2d2d2d;
        border-radius: 10px;
        font-weight: 700;
        font-size: 18px;
        cursor: pointer;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
        transition: all 0.2s;
      }

      .next-question-btn:hover {
        transform: scale(1.05);
      }

      @keyframes bounce {
        0%,
        100% {
          transform: translateY(0);
        }
        50% {
          transform: translateY(-15px);
        }
      }

      /* Responsive */
      @media (max-width: 640px) {
        .smart-card-wrapper {
          height: 500px;
        }
        .question-text {
          font-size: 24px;
        }
        .answer-text {
          font-size: 36px;
        }
      }
      /* Booking Section Styles */
      .booking-section {
        padding: 80px 20px;
        background: #ffffff;
        position: relative;
        overflow: hidden;
      }

      .booking-header {
        text-align: center;
        margin-bottom: 60px;
        position: relative;
        z-index: 2;
      }

      .booking-header h2 {
        font-size: 48px;
        color: #2d2d2d;
        font-weight: 900;
        margin-bottom: 20px;
        text-shadow: 4px 4px 0 #89cff0;
      }

      .booking-table-container {
        max-width: 1000px;
        margin: 0 auto;
        background: white;
        border: 4px solid #2d2d2d;
        border-radius: 20px;
        box-shadow: 15px 15px 0 #2d2d2d;
        overflow: hidden;
        position: relative;
        z-index: 2;
      }

      .booking-table {
        width: 100%;
        border-collapse: collapse;
        font-family: inherit;
      }

      .booking-table th {
        background: #7bdcb5; /* Green header */
        color: white;
        padding: 20px;
        font-size: 24px;
        font-weight: 800;
        text-align: center;
        border-bottom: 4px solid #2d2d2d;
        text-shadow: 2px 2px 0 #2d2d2d;
      }

      .booking-table td {
        padding: 15px;
        text-align: center;
        font-size: 18px;
        font-weight: 700;
        border-bottom: 2px solid #eee;
        color: #2d2d2d;
      }

      .booking-table tr:last-child td {
        border-bottom: none;
      }

      .booking-table tr:nth-child(even) {
        background-color: #f9f9f9;
      }

      .booking-table tr:hover {
        background-color: #fff0f5; /* Light pink hover */
      }

      .book-btn {
        background: #ff69b4;
        color: white;
        border: 2px solid #2d2d2d;
        padding: 8px 16px;
        border-radius: 8px;
        cursor: pointer;
        font-weight: 700;
        box-shadow: 3px 3px 0 #2d2d2d;
        transition: all 0.2s;
      }

      .book-btn:hover {
        transform: translate(2px, 2px);
        box-shadow: 1px 1px 0 #2d2d2d;
      }

      /* Activities List Section */
      .activities-list-section {
        padding: 80px 20px;
        background: none; /* White background */
        position: relative;
        overflow: hidden;
        display: none; /* Hidden by default */
      }

      .activities-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 30px;
        max-width: 1200px;
        margin: 0 auto;
        position: relative;
        z-index: 2;
        /* align-items: start; Removed to allow stretch */
      }

      .category-card {
        background: white;
        border: 4px solid #2d2d2d;
        border-radius: 20px;
        box-shadow: 10px 10px 0 #2d2d2d;
        padding: 25px;
        transition: transform 0.3s;
        height: 100%; /* Restore full height for alignment */
        display: flex;
        flex-direction: column;
      }

      .category-card:hover {
        transform: translateY(-5px);
      }

      .category-header {
        display: flex;
        align-items: center;
        margin-bottom: 20px;
        padding-bottom: 15px;
        border-bottom: 3px dashed #2d2d2d;
      }

      .category-icon {
        font-size: 32px;
        margin-left: 15px;
        background: #2d2d2d;
        color: white;
        width: 60px;
        height: 60px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2);
      }

      .category-title {
        font-size: 24px;
        font-weight: 800;
        color: #2d2d2d;
      }

      .workshop-list {
        list-style: none;
        padding: 0;
        margin: 0;
      }

      .workshop-item {
        padding: 10px 0;
        border-bottom: 1px solid #eee;
        font-size: 18px;
        font-weight: 600;
        color: #4a4a4a;
        display: flex;
        align-items: center;
      }

      .workshop-item:before {
        content: "•";
        color: #ff69b4; /* Default bullet color */
        font-size: 24px;
        margin-left: 10px;
        line-height: 1;
      }

      .workshop-item:last-child {
        border-bottom: none;
      }

      /* Category Colors */
      .cat-pink .category-icon {
        background: #ff69b4;
      }
      .cat-pink .workshop-item:before {
        color: #ff69b4;
      }

      .cat-purple .category-icon {
        background: #9b59b6;
      }
      .cat-purple .workshop-item:before {
        color: #9b59b6;
      }

      .cat-orange .category-icon {
        background: #ffa500;
      }
      .cat-orange .workshop-item:before {
        color: #ffa500;
      }

      .cat-green .category-icon {
        background: #7bdcb5;
      }
      .cat-green .workshop-item:before {
        color: #7bdcb5;
      }

      .cat-blue .category-icon {
        background: #89cff0;
      }
      .cat-blue .workshop-item:before {
        color: #89cff0;
      }

      .cat-brown .category-icon {
        background: #a0522d;
      }
      .cat-brown .workshop-item:before {
        color: #a0522d;
      }

      .cat-yellow .category-icon {
        background: #f1c40f;
      }
      .cat-yellow .workshop-item:before {
        color: #f1c40f;
      }

      .cat-red .category-icon {
        background: #e74c3c;
      }
      .cat-red .workshop-item:before {
        color: #e74c3c;
      }

      @media (max-width: 768px) {
        .booking-table-container {
          border: none;
          background: transparent;
          box-shadow: none;
        }

        .booking-table thead {
          display: none; /* Hide header on mobile */
        }

        .booking-table,
        .booking-table tbody,
        .booking-table tr,
        .booking-table td {
          display: block;
          width: 100%;
        }

        .booking-table tr {
          margin-bottom: 20px;
          background: white;
          border: 3px solid #2d2d2d;
          border-radius: 15px;
          box-shadow: 5px 5px 0 #2d2d2d;
          padding: 10px;
        }

        .booking-table td {
          text-align: right;
          padding: 10px;
          border-bottom: 1px solid #eee;
          position: relative;
          padding-left: 50%;
        }

        .booking-table td:last-child {
          border-bottom: none;
          text-align: center;
          padding: 15px;
        }

        /* Add labels via pseudo-elements */
        .booking-table td::before {
          content: attr(data-label);
          position: absolute;
          right: 15px;
          width: 45%;
          font-weight: 800;
          color: #ff69b4;
          text-align: right;
        }

        .booking-table td {
          text-align: left; /* Shift content to left */
          padding-left: 15px;
          padding-right: 50%; /* Make space for label */
        }
      }
      /* Magnifying Glass Effect */
      .join-magnifying-glass {
        position: absolute;
        width: 180px;
        height: 180px;
        border: 5px solid #2d2d2d;
        border-radius: 50%;
        overflow: hidden;
        background: white;
        box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.15);
        transform: rotate(-5deg);
        z-index: 10;
        top: -40px;
        right: -40px;
        transition: transform 0.3s ease;
      }

      .join-magnifying-glass:hover {
        transform: rotate(0deg) scale(1.1);
      }

      .join-magnifying-glass img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }

      /* Handle mobile */
      @media (max-width: 768px) {
        .join-magnifying-glass {
          width: 120px;
          height: 120px;
          top: -20px;
          right: -20px;
        }
      }
