/* Enhanced color palette for youth appeal */
    :root {
      --primary-purple: #311561;
      --secondary-purple: #2b2f90;
      --accent-orange: #f3a93e;
      --vibrant-pink: #ff006e;
      --electric-blue: #00b4d8;
      --bright-green: #06ffa5;
      --sunny-yellow: #ffbe0b;
    }

    .bg-overlay-section {
      position: relative;
      background: linear-gradient(135deg, var(--primary-purple) 0%, var(--secondary-purple) 100%);
      color: #fff;
      overflow: hidden;
    }

    .bg-overlay-section::before {
      content: "";
      position: absolute;
      inset: 0;
      background: url('https://teenspiration.org/magazine/img/teens1.jpg') center center/cover no-repeat;
      transform: scaleX(-1);
      opacity: 0.3;
      z-index: 0;
    }

    .bg-overlay-section::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(49, 21, 97, 0.85) 0%, rgba(43, 47, 144, 0.85) 100%);
      z-index: 1;
    }

    .bg-overlay-section .slider-inner {
      position: relative;
      z-index: 2;
    }

    /* Colorful card styles */
    .card {
      transition: all 0.3s ease;
      border: none;
      box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    }

    .card:hover {
      transform: translateY(-10px);
      box-shadow: 0 15px 30px rgba(0,0,0,0.2);
    }

    .card:nth-child(1) {
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
      color: white;
    }

    .card:nth-child(2) {
      background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
      color: white;
    }

    .card:nth-child(3) {
      background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
      color: white;
    }

    .card:nth-child(4) {
      background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
      color: white;
    }

    /* Feature box icon colors */
    .fbox-icon svg {
      fill: white;
      filter: drop-shadow(0 4px 6px rgba(0,0,0,0.1));
    }

    /* Colorful accent for headings */
    .heading-block h2 {
      background: linear-gradient(90deg, var(--vibrant-pink), var(--accent-orange), var(--electric-blue));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    /* Badge styling */
    .badge.bg-secondary {
      background: linear-gradient(135deg, var(--accent-orange), var(--sunny-yellow)) !important;
      color: #000;
      font-weight: 600;
    }

    /* Button enhancements */
    .button {
      position: relative;
      overflow: hidden;
      z-index: 1;
      transition: all 0.3s ease;
    }

    .button::before {
      content: '';
      position: absolute;
      top: 0;
      left: -100%;
      width: 100%;
      height: 100%;
      background: linear-gradient(90deg, var(--vibrant-pink), var(--accent-orange));
      z-index: -1;
      transition: left 0.3s ease;
    }

    .button:hover::before {
      left: 0;
    }

    /* Section background colors */
    .section-features {
      background: linear-gradient(180deg, #f8f9fa 0%, #ffffff 100%);
    }

    .section-about {
      background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%) !important;
    }

    /* Circle border enhancement */
    .circle-border {
      position: relative;
      padding: 20px;
    }

    .circle-border::before {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: 50%;
      padding: 4px;
      background: linear-gradient(135deg, var(--vibrant-pink), var(--electric-blue), var(--bright-green));
      -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask-composite: exclude;
      animation: rotate 3s linear infinite;
    }

    @keyframes rotate {
      100% { transform: rotate(360deg); }
    }

    /* Featured card styling */
    .featured-card {
      background: linear-gradient(135deg, var(--secondary-purple) 0%, var(--primary-purple) 100%);
      border-radius: 15px;
      padding: 20px;
      box-shadow: 0 10px 30px rgba(49, 21, 97, 0.3);
    }

    /* Add colorful underline to links */
    a:not(.button) {
      position: relative;
      text-decoration: none;
    }

    a:not(.button)::after {
      content: '';
      position: absolute;
      bottom: -2px;
      left: 0;
      width: 0;
      height: 2px;
      background: linear-gradient(90deg, var(--vibrant-pink), var(--accent-orange));
      transition: width 0.3s ease;
    }

    a:not(.button):hover::after {
      width: 100%;
    }

    /* Social icons colorful hover */
    .social-icon {
      transition: all 0.3s ease;
    }

    .social-icon:hover {
      transform: scale(1.2) rotate(5deg);
    }

    .si-facebook:hover { background: #1877f2 !important; }
    .si-twitter:hover { background: #1da1f2 !important; }
    .si-gplus:hover { background: #db4437 !important; }
    .si-pinterest:hover { background: #e60023 !important; }
    .si-instagram:hover { 
      background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;
    }

    /* Mobile device section enhancement */
    .mobile-section {
        background: linear-gradient(rgba(255, 255, 255, 0.90), rgba(255, 255, 255, 0.90)), url('https://teenspiration.org/magazine/img/whoarewe.jpg') center center/cover no-repeat;
        color: #333;
        padding: 80px 40px;
        border-radius: 0;
        margin: 0;
        position: relative;
    }
    /* Owl carousel items hover effect */
    .oc-item {
      transition: all 0.3s ease;
      border-radius: 10px;
      overflow: hidden;
    }

    .oc-item:hover {
      transform: scale(1.05);
      box-shadow: 0 10px 25px rgba(0,0,0,0.2);
    }

    /* Text color enhancements */
    .text-muted {
      color: rgba(255,255,255,0.8) !important;
    }

    /* Dive in section */
    .dive-in-section {
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        border-radius: 0;
        padding: 60px 40px;
        margin: 0;
        color: white;
    }

    .dive-in-section h2,
    .dive-in-section h4,
    .dive-in-section .heading-block h2,
    .dive-in-section span {
        color: white !important;
    }

    .dive-in-section p {
        color: rgba(255,255,255,0.9) !important;
    }

    .button-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;     /* centers them horizontally */
  gap: 10px;                   /* space between buttons */
}

.button-row .button {
  flex: 1 1 auto;              /* allows them to shrink or grow */
  text-align: center;
}

/* On very small screens, make sure they still fit neatly side-by-side */
@media (max-width: 480px) {
  .button-row .button {
    flex: 1 1 48%;             /* 2 buttons per row */
  }
}