/* ---------- RESET ---------- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* ---------- BACKGROUND ---------- */
body {
  min-height: 100vh;
  font-family: Arial, Helvetica, sans-serif;
  background: radial-gradient(circle at top, #2c2c36 0, #050509 50%, #000 100%);
  color: #fff;
}

/* ------------------------------------------------------ */
/* ------------------ FLOATING GLASS NAV ---------------- */
/* ------------------------------------------------------ */

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  padding-top: 10px;
}

.nav-outer {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 10px 10px;
  display: flex;
  justify-content: center;
}

.nav-inner {
  width: 100%;
  max-width: 1100px;
  padding: 10px 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;

  background: rgba(10, 10, 18, 0.78);
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(16px);
}

.logo {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 1px;
}

.logo span {
  color: #f5c76b;
}

.nav-links {
  display: flex;
  gap: 26px;
  align-items: center;
}

/* top-level links & dropdown parent link */
.nav-links > a,
.nav-item > a {
  text-decoration: none;
  color: #d8d8d8;
  font-size: 15px;
  font-weight: 500;
  position: relative;
  padding: 4px 0;
  transition: color 0.3s ease, letter-spacing 0.3s ease, transform 0.3s ease;
}

/* neon shimmer underline */
@keyframes shimmer {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}

/* underline pseudo */
.nav-links > a::after,
.nav-item > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 0%;
  height: 2px;
  border-radius: 10px;
  background: linear-gradient(120deg, #f8d37f, #ffe9b3, #f5c76b);
  background-size: 250% 250%;
  transition: width 0.35s ease;
}

/* hover = glow + lift + animated underline */
.nav-links > a:hover,
.nav-item > a:hover {
  color: #ffffff;
  letter-spacing: 1px;
  transform: translateY(-2px);
  text-shadow: 0 0 8px rgba(255, 210, 96, 0.55);
}

.nav-links > a:hover::after,
.nav-item > a:hover::after {
  width: 100%;
  animation: shimmer 1.2s linear infinite;
}

/* active link */
.nav-links > a.active {
  color: #ffffff;
  text-shadow: 0 0 6px rgba(255, 210, 96, 0.55);
}

.nav-links > a.active::after {
  width: 100%;
  animation: shimmer 1.2s linear infinite;
}

/* DROPDOWN MENU */
.nav-item {
  position: relative;
}

.nav-item.has-dropdown {
  padding-bottom: 2px;
}

.dropdown {
  position: absolute;
  top: 115%;
  right: 0;
  min-width: 180px;
  background: rgba(8, 8, 15, 0.96);
  border-radius: 12px;
  border: 1px solid rgba(245, 199, 107, 0.35);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.8);
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;

  opacity: 0;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.dropdown a {
  text-decoration: none;
  color: #f2f2f2;
  font-size: 14px;
  padding: 6px 10px;
  border-radius: 8px;
  transition: background 0.25s ease, transform 0.2s ease;
}

.dropdown a:hover {
  background: rgba(245, 199, 107, 0.12);
  transform: translateX(2px);
}

.nav-item.has-dropdown:hover .dropdown,
.nav-item.has-dropdown:focus-within .dropdown {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* MOBILE MENU (HAMBURGER) */
.nav-toggle {
  display: none;
}

.nav-toggle-label {
  display: none;
  width: 26px;
  height: 20px;
  cursor: pointer;
  position: relative;
}

.nav-toggle-label span,
.nav-toggle-label span::before,
.nav-toggle-label span::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #ffffff;
  content: "";
  transition: transform 0.25s ease, top 0.25s ease, opacity 0.25s ease;
}

.nav-toggle-label span {
  top: 50%;
  transform: translateY(-50%);
}

.nav-toggle-label span::before {
  top: -7px;
}

.nav-toggle-label span::after {
  top: 7px;
}

.nav-toggle:checked + .nav-toggle-label span {
  transform: rotate(45deg);
}

.nav-toggle:checked + .nav-toggle-label span::before {
  top: 0;
}

.nav-toggle:checked + .nav-toggle-label span::after {
  top: 0;
  transform: rotate(-90deg);
}

/* ------------------------------------------------------ */
/* ---------------------- HERO -------------------------- */
/* ------------------------------------------------------ */

.hero {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 25px 10px 20px;
}

.hero-inner {
  width: 85%;
  max-width: 1300px;
}

/* Banner strip */
.banner-container {
  display: flex;
  border-radius: 18px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.65);
}

.banner-img {
  flex: 1;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.banner-img img {
  height: 100%;
  max-height: 420px;
  width: auto;
  object-fit: cover;
  transition: 0.6s ease;
}

.banner-img:hover img {
  transform: scale(1.07);
  opacity: 0.92;
}

/* Center text box */
.banner-center {
  flex: 1.4;
  max-height: 420px;
  padding: 40px 25px;
  text-align: center;
  background: linear-gradient(135deg, #000 0%, #13131a 50%, #0a0a0a 100%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
}

.small-text {
  font-size: 14px;
  letter-spacing: 4px;
  font-weight: 600;
  opacity: 0.8;
}

.banner-center h1 {
  font-size: 42px;
  font-weight: 900;
  letter-spacing: 3px;
  text-transform: uppercase;
  background: linear-gradient(to right, #ffffff, #f4d588);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0px 0px 12px rgba(255, 212, 100, 0.25);
}

.tagline {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #e3e3e3;
}

.divider {
  width: 60px;
  height: 2px;
  background: linear-gradient(to right, #f8d37f, #e5b15a);
  margin: 5px auto;
}

.highlights {
  list-style: none;
  font-size: 15px;
  line-height: 1.5;
  color: #dcdcdc;
  font-weight: 500;
}

.highlights li::before {
  content: "• ";
  color: #f5c76b;
  font-weight: bold;
}

.website {
  font-size: 14px;
  opacity: 0.7;
  margin-top: 6px;
}

/* ------------------------------------------------------ */
/* ----------------- SLIDING GALLERY -------------------- */
/* ------------------------------------------------------ */

.gallery-strip {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 10px 10px 70px;
}

.gallery-inner {
  width: 85%;
  max-width: 1300px;
}

.section-title {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

.section-subtitle {
  font-size: 13px;
  color: #c9c9c9;
  margin-bottom: 14px;
}

.gallery-track-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: radial-gradient(circle at top, #15151f 0, #050508 60%, #000 100%);
  padding: 14px 0;
}

/* Outer moving strip */
.gallery-track {
  display: flex;
  width: max-content;
  animation: gallery-scroll 35s linear infinite;
}

/* pause animation on hover */
.gallery-track-wrapper:hover .gallery-track {
  animation-play-state: paused;
}

/* One group of cards */
.gallery-slide {
  display: flex;
  gap: 16px;
  padding: 0 16px;
}

.gallery-card {
  width: 210px;
  height: 220px;
  border-radius: 16px;
  overflow: hidden;
  flex-shrink: 0;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.55);
  background: #111;
}

.gallery-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease, opacity 0.4s ease;
}

.gallery-card:hover img {
  transform: scale(1.08);
  opacity: 0.96;
}

@keyframes gallery-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ------------------------------------------------------ */
/* ----------------- FLOATING WHATSAPP BTN -------------- */
/* ------------------------------------------------------ */

.whatsapp-btn {
  position: fixed;
  right: 28px;
  bottom: 28px;
  width: 62px;
  height: 62px;
  background: linear-gradient(135deg, #10b418, #0d8f14);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;

  box-shadow: 0 0 18px rgba(16, 180, 24, 0.7), 0 0 35px rgba(16, 180, 24, 0.45);

  transition: transform 0.35s ease, box-shadow 0.35s ease;
  z-index: 999;
}

.whatsapp-btn img {
  width: 32px;
  height: 32px;
  filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.3));
}

.whatsapp-btn:hover {
  transform: scale(1.15) rotate(8deg);
  box-shadow: 0 0 22px rgba(16, 180, 24, 0.9), 0 0 40px rgba(16, 180, 24, 0.5),
    0 0 80px rgba(16, 180, 24, 0.35);
}

/* ------------------------------------------------------ */
/* -------------------- RESPONSIVE ---------------------- */
/* ------------------------------------------------------ */

@media (max-width: 900px) {
  .nav-toggle-label {
    display: block;
  }

  .nav-inner {
    border-radius: 16px;
  }

  .nav-links {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 8px;
    background: rgba(5, 5, 10, 0.97);
    flex-direction: column;
    align-items: flex-start;
    padding: 14px 20px 16px;
    gap: 10px;
    max-height: 0;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.8);
    transition: max-height 0.3s ease;
  }

  .nav-toggle:checked ~ .nav-links {
    max-height: 260px;
  }

  .nav-item.has-dropdown {
    width: 100%;
  }

  .nav-item.has-dropdown .dropdown {
    position: static;
    opacity: 1;
    transform: none;
    pointer-events: auto;
    margin-top: 4px;
    border-radius: 10px;
    border-color: rgba(245, 199, 107, 0.25);
    box-shadow: none;
  }

  .hero-inner,
  .gallery-inner {
    width: 92%;
  }

  .gallery-card {
    width: 180px;
    height: 190px;
  }
}

@media (max-width: 768px) {
  .banner-container {
    flex-direction: column;
    border-radius: 16px;
  }

  .banner-img img {
    width: 100%;
    height: auto;
    max-height: none;
  }

  .banner-center {
    order: -1;
    padding: 32px 20px;
  }

  .banner-center h1 {
    font-size: 33px;
  }

  .hero-inner,
  .gallery-inner {
    width: 100%;
  }

  .gallery-card {
    width: 160px;
    height: 180px;
  }
}

/* ------------------------------------------------------ */
/* -------------------- CONTACT PAGE -------------------- */
/* ------------------------------------------------------ */

.contact-page {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 40px 10px 80px;
}

.contact-inner {
  width: 85%;
  max-width: 1100px;
  display: grid;
  grid-template-columns: 1.1fr 1.1fr;
  gap: 32px;
}

/* LEFT SIDE: text + details */
.contact-info .small-text {
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #f5c76b;
  margin-bottom: 6px;
}

.contact-info h1 {
  font-size: 32px;
  font-weight: 800;
  letter-spacing: 1px;
  margin-bottom: 10px;
}

.contact-intro {
  font-size: 14px;
  color: #d0d0d0;
  line-height: 1.6;
  margin-bottom: 20px;
}

.contact-details {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 18px;
}

.detail-item {
  padding: 10px 12px;
  border-radius: 12px;
  background: radial-gradient(circle at top left, #1d1d26 0, #070709 60%);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.detail-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #a8a8a8;
  margin-bottom: 4px;
}

.detail-value {
  font-size: 14px;
  color: #f5f5f5;
  text-decoration: none;
}

.detail-value:hover {
  color: #f5c76b;
}

.contact-note {
  font-size: 13px;
  color: #bcbcbc;
  line-height: 1.6;
}

/* RIGHT SIDE: form card */
.contact-form-card {
  background: radial-gradient(circle at top left, #1d1b24 0, #050507 65%);
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.75);
  padding: 24px 22px 26px;
}

.contact-form-card h2 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 4px;
}

.form-subtitle {
  font-size: 13px;
  color: #c8c8c8;
  margin-bottom: 18px;
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.form-row {
  display: flex;
  gap: 14px;
}

.form-field {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.form-field label {
  font-size: 12px;
  margin-bottom: 4px;
  color: #e8e8e8;
}

.form-field input,
.form-field textarea,
.form-field select {
  background: rgba(8, 8, 15, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 13px;
  color: #f3f3f3;
  outline: none;
  transition: border-color 0.25s ease, box-shadow 0.25s ease,
    background 0.25s ease;
}

.form-field textarea {
  resize: vertical;
  min-height: 110px;
}

.form-field input::placeholder,
.form-field textarea::placeholder {
  color: #8c8c8c;
}

.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus {
  border-color: #f5c76b;
  box-shadow: 0 0 0 1px rgba(245, 199, 107, 0.4);
  background: rgba(12, 12, 20, 0.95);
}

.btn-submit {
  margin-top: 4px;
  padding: 10px 16px;
  border-radius: 999px;
  border: none;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #161616;
  background: linear-gradient(135deg, #f5c76b, #e0a84d);
  box-shadow: 0 10px 24px rgba(245, 199, 107, 0.4);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.btn-submit:hover {
  transform: translateY(-1px);
  box-shadow: 0 13px 32px rgba(245, 199, 107, 0.55);
}

/* Responsive layout for contact */
@media (max-width: 900px) {
  .contact-inner {
    width: 92%;
    grid-template-columns: 1fr;
  }

  .contact-form-card {
    order: -1; /* form first on mobile */
  }
}

@media (max-width: 768px) {
  .contact-inner {
    width: 100%;
  }

  .form-row {
    flex-direction: column;
  }
}

/* ------------------------------------------------------ */
/* ---------------- CUSTOM CONTENT AREA ----------------- */
/* ------------------------------------------------------ */

.custom-content {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 40px 10px 20px;
}

.custom-inner {
  width: 85%;
  max-width: 1100px;
  background: rgba(20, 20, 28, 0.5);
  border-radius: 16px;
  padding: 25px 28px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55);
}

/* UPDATED: structured content with headings + paragraphs */
.your-content {
  display: flex;
  flex-direction: column;
  gap: 28px; /* space between each section */
}

/* each section wrapper */
.content-block h2 {
  font-size: 26px;
  font-weight: 800;
  color: #f5c76b;
  margin-bottom: 6px;
  letter-spacing: 1px;
}

.content-block p {
  font-size: 15px;
  line-height: 1.65;
  color: #ddd;
  background: rgba(0, 0, 0, 0.25);
  padding: 14px 18px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.06);
}
/* ---------- HOME CONTENT BLOCKS (27 sections) ---------- */

.custom-content {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 50px 10px 70px;
}

.custom-inner {
  width: 85%;
  max-width: 1100px;
  background: rgba(25, 25, 32, 0.55);
  border-radius: 18px;
  padding: 30px 32px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(6px);
}

.your-content {
  display: flex;
  flex-direction: column;
  gap: 34px;
}

/* ---------- SECTION HEADINGS ---------- */

.content-block h2 {
  font-size: 28px;
  font-weight: 900;
  color: #f8d58a;
  margin-bottom: 10px;
  letter-spacing: 1.4px;
  text-shadow: 0 0 8px rgba(245, 199, 107, 0.35);
}

/* ---------- MAIN PARAGRAPHS ---------- */

.content-block p {
  font-size: 16px;
  line-height: 1.75;
  color: #e4e4e4;
  background: rgba(255, 255, 255, 0.06);
  padding: 14px 18px;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.35);
}

/* ---------- SUB-SECTIONS (14, 15, 16) ---------- */

.content-block .sub-block {
  margin-top: 14px;
  padding: 12px;
  border-left: 3px solid #f5c76b;
  background: rgba(255, 255, 255, 0.03);
  border-radius: 12px;
}

.content-block .sub-block h3 {
  font-size: 18px;
  font-weight: 700;
  color: #f7c869;
  margin-bottom: 6px;
  letter-spacing: 0.5px;
}

.content-block .sub-block p {
  font-size: 15px;
  color: #dcdcdc;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 10px;
  padding: 10px 14px;
}

/* ---------- IMAGE BLOCKS (IMPROVED & BIGGER) ---------- */

.content-image-block {
  border-radius: 18px;
  overflow: hidden;
  width: 88%; /* increased from 75% */
  margin: 0 auto 30px; /* centered, increased spacing */
  border: 1px solid rgba(250, 215, 140, 0.28);

  background: radial-gradient(circle at top, #241c2f, #050508);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.78),
    0 0 12px rgba(245, 199, 107, 0.25);

  transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.content-image-block img {
  width: 100%;
  height: 500px; /* 🔥 increased height */
  object-fit: cover;

  transform: scale(1.03);
  filter: saturate(1.07) contrast(1.05);
  transition: transform 0.6s ease, filter 0.6s ease;
}

/* Hover effect */
.content-image-block:hover {
  transform: scale(1.045);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.92),
    0 0 14px rgba(245, 199, 107, 0.45), 0 0 22px rgba(245, 199, 107, 0.3);
}

.content-image-block:hover img {
  transform: scale(1.12);
  filter: saturate(1.22) contrast(1.12);
}

/* ALT styling */
.content-image-block.alt {
  border-color: rgba(255, 225, 160, 0.35);
  background: radial-gradient(circle at bottom right, #302630, #050508);
}

/* Responsive */
@media (max-width: 768px) {
  .content-image-block {
    width: 100%;
  }

  .content-image-block img {
    height: 220px; /* increased from 180px */
  }
}
/* -------- SPECIAL HEIGHT FOR LAST TWO IMAGES ONLY -------- */

.content-image-block.tall img {
  height: 1400px; /* 🔥 choose your custom height */
}

/* Mobile version for tall images */
@media (max-width: 768px) {
  .content-image-block.tall img {
    height: 320px; /* 🔥 mobile height override */
  }
}
/* ===================== ABOUT PAGE LAYOUT ===================== */

.about-content .about-inner {
  max-width: 1200px;
}

.about-layout {
  display: flex;
  gap: 34px;
  align-items: flex-start;
}

/* LEFT: Animated collage */
.about-collage {
  flex: 1;
  min-height: 360px;
  position: relative;
}

/* Individual floating cards */
.about-photo {
  position: absolute;
  border-radius: 18px;
  overflow: hidden;
  background: radial-gradient(circle at top, #2a2232, #050509);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.85);
  transform-origin: center;
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
}

/* card positions */
.about-photo.p1 {
  top: 0;
  left: 4%;
  width: 68%;
  height: 220px;
  animation: floatSlow1 18s ease-in-out infinite alternate;
}

.about-photo.p2 {
  top: 140px;
  right: 0;
  width: 64%;
  height: 210px;
  animation: floatSlow2 22s ease-in-out infinite alternate;
}

.about-photo.p3 {
  bottom: 0;
  left: 14%;
  width: 60%;
  height: 190px;
  animation: floatSlow3 20s ease-in-out infinite alternate;
}

/* images inside cards */
.about-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.06);
  filter: saturate(1.08) contrast(1.05);
  transition: transform 0.5s ease, filter 0.5s ease;
}

/* hover effect: stronger zoom + glow */
.about-photo:hover {
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 25px 70px rgba(0, 0, 0, 0.95),
    0 0 14px rgba(245, 199, 107, 0.45);
  border-color: rgba(245, 199, 107, 0.5);
}

.about-photo:hover img {
  transform: scale(1.12);
  filter: saturate(1.16) contrast(1.1);
}

/* subtle floating animations */
@keyframes floatSlow1 {
  0% {
    transform: translateY(0) translateX(0);
  }
  50% {
    transform: translateY(-10px) translateX(4px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}

@keyframes floatSlow2 {
  0% {
    transform: translateY(0) translateX(0);
  }
  50% {
    transform: translateY(8px) translateX(-6px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}

@keyframes floatSlow3 {
  0% {
    transform: translateY(0) translateX(0);
  }
  50% {
    transform: translateY(-6px) translateX(3px);
  }
  100% {
    transform: translateY(0) translateX(0);
  }
}

/* RIGHT: content column */
.about-layout .your-content {
  flex: 1.4;
}

/* subtle hover for content blocks */
.about-content .content-block {
  transition: transform 0.25s ease, box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.about-content .content-block:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.6);
}

/* ensure sub-block keeps shape on hover */
.about-content .content-block:hover .sub-block {
  border-color: #f5c76b;
}

/* ============ RESPONSIVE FOR ABOUT PAGE ============ */

@media (max-width: 900px) {
  .about-layout {
    flex-direction: column-reverse;
  }

  .about-collage {
    min-height: auto;
    margin-bottom: 18px;
  }

  .about-photo {
    position: relative;
    width: 100%;
    height: 210px;
    margin-bottom: 14px;
    animation: none;
  }
}

@media (max-width: 650px) {
  .about-photo {
    height: 190px;
  }
}
/* ================= INLINE IMAGE STRIPS (ABOUT PAGE) ================= */

.about-inline-gallery {
  display: flex;
  gap: 12px;
  margin: 4px 0 20px;
}

.about-inline-gallery.wide {
  justify-content: center;
}

.about-inline-card {
  flex: 1;
  border-radius: 14px;
  overflow: hidden;
  background: radial-gradient(circle at top, #251d2b, #050508);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.8);
  transform: translateY(0);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.about-inline-card img {
  width: 100%;
  height: 130px;
  object-fit: cover;
  transform: scale(1.04);
  filter: saturate(1.06) contrast(1.05);
  transition: transform 0.5s ease, filter 0.5s ease;
}

/* Hover effect */
.about-inline-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.95),
    0 0 10px rgba(245, 199, 107, 0.35);
  border-color: rgba(245, 199, 107, 0.5);
}

.about-inline-card:hover img {
  transform: scale(1.12);
  filter: saturate(1.18) contrast(1.1);
}

/* Responsive behaviour */
@media (max-width: 900px) {
  .about-inline-gallery {
    flex-wrap: wrap;
  }

  .about-inline-card {
    flex: 1 1 calc(50% - 10px);
  }
}

@media (max-width: 600px) {
  .about-inline-card {
    flex: 1 1 100%;
  }

  .about-inline-card img {
    height: 150px;
  }
}
/* ===================== ABOUT PAGE LAYOUT ===================== */

.about-content .about-inner {
  max-width: 1200px;
}

.about-layout {
  display: flex;
  gap: 34px;
  align-items: flex-start;
}

/* LEFT COLUMN: stacked image cards */
.about-visuals {
  flex: 0.9;
  display: flex;
  flex-direction: column;
  gap: 18px;
  position: sticky;
  top: 120px; /* sticks while scrolling on desktop */
}

/* individual image card */
.about-card {
  border-radius: 18px;
  overflow: hidden;
  background: radial-gradient(circle at top, #2a2232, #050509);
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.85);
  transform-origin: center;
  transform: translateY(0);
  transition: transform 0.35s ease, box-shadow 0.35s ease,
    border-color 0.35s ease;
}

.about-card.big {
  height: 260px;
}

.about-card:not(.big) {
  height: 190px;
}

/* image itself */
.about-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.05);
  filter: saturate(1.1) contrast(1.05);
  transition: transform 0.6s ease, filter 0.6s ease;
}

/* subtle idle animation using nth-child */
.about-card:nth-child(1) {
  animation: aboutFloat1 22s ease-in-out infinite alternate;
}
.about-card:nth-child(2) {
  animation: aboutFloat2 26s ease-in-out infinite alternate;
}
.about-card:nth-child(3) {
  animation: aboutFloat3 24s ease-in-out infinite alternate;
}
.about-card:nth-child(4) {
  animation: aboutFloat2 28s ease-in-out infinite alternate;
}

/* hover = stronger glow + zoom */
.about-card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.95),
    0 0 14px rgba(245, 199, 107, 0.45);
  border-color: rgba(245, 199, 107, 0.6);
}

.about-card:hover img {
  transform: scale(1.12);
  filter: saturate(1.2) contrast(1.12);
}

/* floating keyframes */
@keyframes aboutFloat1 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes aboutFloat2 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(5px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes aboutFloat3 {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-4px);
  }
  100% {
    transform: translateY(0);
  }
}

/* RIGHT COLUMN: content */
.about-layout .your-content {
  flex: 1.5;
}

/* hover lift for content blocks */
.about-content .content-block {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.about-content .content-block:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.6);
}

/* ============ RESPONSIVE FOR ABOUT PAGE ============ */

@media (max-width: 900px) {
  .about-layout {
    flex-direction: column;
  }

  .about-visuals {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px;
  }

  .about-card,
  .about-card.big {
    flex: 1 1 calc(50% - 10px);
    height: 180px;
    animation: none; /* simpler on mobile */
  }
}

@media (max-width: 600px) {
  .about-card,
  .about-card.big {
    flex: 1 1 100%;
    height: 190px;
  }
}
/* ===================== GALLERY PAGE GRID ===================== */

.gallery-page {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 40px 10px 80px;
}

.gallery-page-inner {
  width: 85%;
  max-width: 1200px;
}

.gallery-page-header {
  margin-bottom: 24px;
}

.gallery-page-header h2 {
  font-size: 26px;
  font-weight: 800;
  color: #f8d58a;
  margin-bottom: 6px;
}

.gallery-page-header p {
  font-size: 14px;
  color: #d0d0d0;
  max-width: 620px;
}

/* GRID */

.gallery-grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.gallery-tile {
  border: none;
  padding: 0;
  cursor: pointer;
  text-align: left;

  border-radius: 18px;
  overflow: hidden;
  background: radial-gradient(circle at top, #241c2b, #050508);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.8);

  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.tile-image {
  width: 100%;
  height: 170px;
  overflow: hidden;
}

.tile-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.03);
  filter: saturate(1.05) contrast(1.04);
  transition: transform 0.5s ease, filter 0.5s ease;
}

.tile-info {
  padding: 10px 12px 12px;
}

.tile-info h3 {
  font-size: 14px;
  font-weight: 700;
  color: #f5e2ac;
  letter-spacing: 0.3px;
}

/* Hover effect */

.gallery-tile:hover {
  transform: translateY(-5px);
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.95), 0 0 14px rgba(245, 199, 107, 0.4);
  border-color: rgba(245, 199, 107, 0.6);
}

.gallery-tile:hover .tile-image img {
  transform: scale(1.12);
  filter: saturate(1.2) contrast(1.08);
}

/* RESPONSIVE GRID */

@media (max-width: 1024px) {
  .gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .gallery-page-inner {
    width: 92%;
  }

  .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tile-image {
    height: 160px;
  }
}

@media (max-width: 520px) {
  .gallery-grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .tile-image {
    height: 190px;
  }
}

/* ===================== GALLERY MODAL ===================== */

.gallery-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 999;
}

.gallery-modal.open {
  display: flex;
}

.gallery-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(6px);
}

.gallery-modal-content {
  position: relative;
  z-index: 1;
  width: 90%;
  max-width: 780px;
  background: radial-gradient(circle at top, #25212c, #050507);
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.95);
  padding: 16px 18px 18px;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 16px;
}

.modal-image img {
  width: 100%;
  height: 100%;
  max-height: 380px;
  object-fit: cover;
  border-radius: 14px;
}

.modal-text h3 {
  font-size: 20px;
  font-weight: 800;
  color: #f8d58a;
  margin-bottom: 8px;
}

.modal-text p {
  font-size: 14px;
  line-height: 1.7;
  color: #e1e1e1;
}

/* Close button */

.modal-close {
  position: absolute;
  top: 10px;
  right: 12px;
  border: none;
  background: transparent;
  color: #f5e2ac;
  font-size: 26px;
  cursor: pointer;
  line-height: 1;
  padding: 2px;
  transition: transform 0.2s ease, color 0.2s ease;
}

.modal-close:hover {
  transform: scale(1.1);
  color: #ffffff;
}

/* Responsive modal */

@media (max-width: 720px) {
  .gallery-modal-content {
    grid-template-columns: 1fr;
  }

  .modal-image img {
    max-height: 260px;
  }
}
/* ============ GIRL DETAIL PAGE ============ */

.girl-profile {
  display: flex;
  justify-content: center;
  padding: 40px 10px 80px;
}

.girl-profile-inner {
  width: 85%;
  max-width: 1200px;
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 40px;
  align-items: flex-start;
}

/* LEFT COLUMN: IMAGES */

.girl-images {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* MAIN BIG IMAGE */
.big-photo {
  width: 100%;
  height: 520px; /* 🔼 increased height */
  object-fit: cover;
  border-radius: 20px;
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.75);
  transform: translateY(0);
  animation: profileFloat 18s ease-in-out infinite alternate;
  transition: transform 0.5s ease, box-shadow 0.5s ease;
}

/* SMALL IMAGES STRIP */
.small-photos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.small-photos img {
  width: 100%;
  height: 210px; /* 🔼 increased height */
  object-fit: cover;
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.7);
  transform: scale(1.02);
  transition: transform 0.45s ease, box-shadow 0.45s ease, filter 0.45s ease;
  filter: saturate(1.05) contrast(1.03);
}

/* HOVER EFFECTS */

.big-photo:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.95),
    0 0 18px rgba(245, 199, 107, 0.45);
}

.small-photos img:hover {
  transform: scale(1.08) translateY(-4px);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.95), 0 0 12px rgba(245, 199, 107, 0.4);
  filter: saturate(1.18) contrast(1.08);
}

/* subtle slow float for main image */
@keyframes profileFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
  100% {
    transform: translateY(0);
  }
}

/* RIGHT COLUMN: TEXT INFO */

.girl-info h2 {
  color: #f5d283;
  font-size: 30px;
  margin-bottom: 12px;
  letter-spacing: 0.5px;
}

.girl-info .bio {
  color: #e0e0e0;
  line-height: 1.8;
  margin-bottom: 18px;
  font-size: 15px;
}

.details {
  list-style: none;
  color: #ffffff;
  line-height: 1.8;
  margin-bottom: 26px;
  font-size: 14px;
}

.details li::before {
  content: "• ";
  color: #f5c76b;
}

/* BOOK BUTTON */

.profile-book-btn {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 999px;
  background: linear-gradient(135deg, #f5c76b, #dca24d);
  font-weight: 700;
  letter-spacing: 1px;
  color: #111;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(245, 199, 107, 0.35);
  transition: 0.3s;
  text-transform: uppercase;
  font-size: 13px;
}

.profile-book-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 40px rgba(245, 199, 107, 0.55);
}

/* ============ RESPONSIVE ============ */

@media (max-width: 900px) {
  .girl-profile-inner {
    width: 92%;
    grid-template-columns: 1fr;
  }

  .big-photo {
    height: 420px;
    animation: none; /* simpler on smaller screens */
  }

  .small-photos img {
    height: 180px;
  }
}

@media (max-width: 600px) {
  .big-photo {
    height: 340px;
  }

  .small-photos {
    grid-template-columns: repeat(2, 1fr);
  }

  .small-photos img {
    height: 160px;
  }

  .girl-info h2 {
    font-size: 24px;
  }
}
/* ----------------------------------------------------
   GIRL 1 — CLASSY SILVER/GREY ANIMATION + HOVER GLOW
   ---------------------------------------------------- */

.big-photo.girl1-main {
  /* soft entrance */
  animation: girl1Fade 1.1s ease-out forwards,
    girl1Float 8s ease-in-out infinite;
  border-radius: 18px;

  /* base silver-shadow */
  box-shadow: 0 0 22px rgba(180, 180, 180, 0.35),
    0 20px 60px rgba(0, 0, 0, 0.75);

  transition: 0.45s ease;
  filter: brightness(0.97) contrast(1.1);
}

/* subtle fade-in */
@keyframes girl1Fade {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.96);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

/* gentle floating aesthetic motion */
@keyframes girl1Float {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-7px) scale(1.015);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* hover effect — premium metallic glow */
.big-photo.girl1-main:hover {
  transform: scale(1.085) rotateX(3deg);
  filter: brightness(1.08) contrast(1.18);

  box-shadow: 0 0 36px rgba(220, 220, 220, 0.85),
    0 0 110px rgba(180, 180, 180, 0.55), 0 30px 150px rgba(0, 0, 0, 0.95);
}
/* ----------------------------------------------------
   GIRL 2 — WHITE / PEARL GLOW + SOFT ANIMATION
   ---------------------------------------------------- */

.big-photo.girl2-main {
  animation: girl2Fade 1s ease-out forwards, girl2Float 8s ease-in-out infinite;
  border-radius: 18px;

  /* base pearl shadow */
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.28),
    0 20px 60px rgba(0, 0, 0, 0.75);

  filter: brightness(0.98) contrast(1.15);
  transition: 0.45s ease;
}

/* fade-in animation */
@keyframes girl2Fade {
  0% {
    opacity: 0;
    transform: translateY(16px) scale(0.97);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

/* breathing motion */
@keyframes girl2Float {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-7px) scale(1.016);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* hover glow — strong white aura */
.big-photo.girl2-main:hover {
  transform: scale(1.085) rotateX(3deg);
  filter: brightness(1.1) contrast(1.22);

  box-shadow: 0 0 40px rgba(255, 255, 255, 0.9),
    0 0 120px rgba(255, 255, 255, 0.55), 0 28px 150px rgba(0, 0, 0, 0.95);
}
/* ----------------------------------------------------
   GIRL 3 — ROMANTIC PINK GLOW + ELEGANT ANIMATION
   ---------------------------------------------------- */

.big-photo.girl3-main {
  animation: girl3Fade 1s ease-out forwards, girl3Float 8s ease-in-out infinite;
  border-radius: 18px;

  /* gentle pink base aura */
  box-shadow: 0 0 20px rgba(255, 120, 155, 0.25),
    0 22px 60px rgba(0, 0, 0, 0.75);

  filter: brightness(0.98) contrast(1.13) saturate(1.05);
  transition: 0.45s ease;
}

/* fade-in entrance */
@keyframes girl3Fade {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.96);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

/* floating motion */
@keyframes girl3Float {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-7px) scale(1.018);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* hover — elegant pink aura boost */
.big-photo.girl3-main:hover {
  transform: scale(1.085) rotateX(3deg);
  filter: brightness(1.1) contrast(1.2) saturate(1.1);

  box-shadow: 0 0 45px rgba(255, 120, 155, 0.95),
    0 0 120px rgba(255, 120, 155, 0.55), 0 32px 160px rgba(0, 0, 0, 0.95);
}
/* ----------------------------------------------------
   GIRL 4 — ELEGANT DEEP RED GLOW + CLASSY ANIMATION
   ---------------------------------------------------- */

.big-photo.girl4-main {
  animation: girl4Fade 1s ease-out forwards, girl4Float 8s ease-in-out infinite;
  border-radius: 18px;

  /* soft dark-red ambient base glow */
  box-shadow: 0 0 20px rgba(190, 40, 40, 0.25), 0 22px 60px rgba(0, 0, 0, 0.75);

  filter: brightness(0.97) contrast(1.12) saturate(1.05);
  transition: 0.45s ease;
}

/* fade-in appearance */
@keyframes girl4Fade {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.96);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

/* elegant floating motion */
@keyframes girl4Float {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-7px) scale(1.018);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* hover — rich red professional glow */
.big-photo.girl4-main:hover {
  transform: scale(1.085) rotateX(3deg);
  filter: brightness(1.08) contrast(1.18) saturate(1.1);

  box-shadow: 0 0 45px rgba(190, 40, 40, 0.9), 0 0 120px rgba(190, 40, 40, 0.55),
    0 32px 160px rgba(0, 0, 0, 0.95);
}
/* ----------------------------------------------------
   GIRL 5 — RICH BROWN LUXURY GLOW + FLOAT ANIMATION
   ---------------------------------------------------- */

.big-photo.girl5-main {
  animation: girl7Fade 1s ease-out forwards, girl7Float 8s ease-in-out infinite;
  border-radius: 18px;

  /* warm brown shadow */
  box-shadow: 0 0 22px rgba(140, 75, 45, 0.3), 0 22px 60px rgba(0, 0, 0, 0.75);

  filter: brightness(0.96) contrast(1.14) saturate(1.1);
  transition: 0.45s ease;
}

/* fade-in effect */
@keyframes girl5Fade {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.96);
    filter: blur(1px);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

/* floating animation */
@keyframes girl5Float {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-7px) scale(1.018);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* hover — premium dark brown glow */
.big-photo.girl5-main:hover {
  transform: scale(1.085) rotateX(3deg);
  filter: brightness(1.08) contrast(1.2) saturate(1.15);

  box-shadow: 0 0 45px rgba(140, 75, 45, 0.95),
    0 0 125px rgba(140, 75, 45, 0.55), 0 34px 160px rgba(0, 0, 0, 0.95);
}
/* MAIN IMAGE – Champagne Gold Hover Glow */
.big-photo.champagne-gold {
  animation: goldFade 1s ease-out forwards, goldFloat 9s ease-in-out infinite;
  border-radius: 20px;
  overflow: hidden;
  transition: 0.45s ease;
  filter: brightness(0.97) contrast(1.08);
  box-shadow: 0 0 25px rgba(255, 215, 160, 0.15), 0 0 60px rgba(0, 0, 0, 0.55);
}

/* Fade-in effect */
@keyframes goldFade {
  0% {
    opacity: 0;
    transform: translateY(20px) scale(0.96);
    filter: blur(1px) brightness(0.85);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0) brightness(1);
  }
}

/* Floating animation */
@keyframes goldFloat {
  0% {
    transform: translateY(0) scale(1);
  }
  50% {
    transform: translateY(-8px) scale(1.015);
  }
  100% {
    transform: translateY(0) scale(1);
  }
}

/* HOVER EFFECT – Soft golden outer aura */
.big-photo.champagne-gold:hover {
  transform: scale(1.085);
  filter: brightness(1.12) contrast(1.16);

  box-shadow: 0 0 50px rgba(255, 225, 180, 0.55),
    0 0 140px rgba(255, 205, 150, 0.35), 0 0 200px rgba(255, 190, 120, 0.25);
}
/* DARK BLUE GLOW */
.big-photo.dark-blue {
  animation: dbFade 1s ease-out forwards, dbFloat 9s ease-in-out infinite;
  border-radius: 20px;
  transition: 0.45s ease;
  filter: brightness(0.95) contrast(1.15);
  box-shadow: 0 0 24px rgba(20, 60, 130, 0.35), 0 22px 60px rgba(0, 0, 0, 0.8);
}

@keyframes dbFade {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.96);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes dbFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
  100% {
    transform: translateY(0);
  }
}

.big-photo.dark-blue:hover {
  transform: scale(1.08);
  box-shadow: 0 0 50px rgba(40, 90, 200, 0.9), 0 0 140px rgba(30, 70, 160, 0.6),
    0 40px 180px rgba(0, 0, 0, 1);
}
/* LIGHT BLUE GLOW */
.big-photo.light-blue {
  animation: lbFade 1s ease-out forwards, lbFloat 9s ease-in-out infinite;
  border-radius: 20px;
  transition: 0.45s ease;
  filter: brightness(0.98) contrast(1.1);
  box-shadow: 0 0 22px rgba(120, 170, 255, 0.3), 0 22px 60px rgba(0, 0, 0, 0.75);
}

@keyframes lbFade {
  0% {
    opacity: 0;
    transform: translateY(16px) scale(0.97);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes lbFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-7px);
  }
  100% {
    transform: translateY(0);
  }
}

.big-photo.light-blue:hover {
  transform: scale(1.08);
  box-shadow: 0 0 45px rgba(150, 200, 255, 0.9),
    0 0 120px rgba(120, 170, 255, 0.6), 0 36px 160px rgba(0, 0, 0, 0.95);
}
/* BLACK GLOW */
.big-photo.black-glow {
  animation: bkFade 1s ease-out forwards, bkFloat 9s ease-in-out infinite;
  border-radius: 20px;
  transition: 0.45s ease;
  filter: brightness(0.94) contrast(1.2);
  box-shadow: 0 0 22px rgba(0, 0, 0, 0.5), 0 24px 70px rgba(0, 0, 0, 0.85);
}

@keyframes bkFade {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.96);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes bkFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
  100% {
    transform: translateY(0);
  }
}

.big-photo.black-glow:hover {
  transform: scale(1.085);
  box-shadow: 0 0 55px rgba(0, 0, 0, 1), 0 0 160px rgba(0, 0, 0, 0.9),
    0 45px 200px rgba(0, 0, 0, 1);
}
/* GREY / SILVER GLOW */
.big-photo.grey-glow {
  animation: grFade 1s ease-out forwards, grFloat 9s ease-in-out infinite;
  border-radius: 20px;
  transition: 0.45s ease;
  filter: brightness(0.97) contrast(1.12);
  box-shadow: 0 0 24px rgba(200, 200, 200, 0.3), 0 22px 60px rgba(0, 0, 0, 0.75);
}

@keyframes grFade {
  0% {
    opacity: 0;
    transform: translateY(16px) scale(0.97);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes grFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-7px);
  }
  100% {
    transform: translateY(0);
  }
}

.big-photo.grey-glow:hover {
  transform: scale(1.08);
  box-shadow: 0 0 45px rgba(220, 220, 220, 0.9),
    0 0 130px rgba(180, 180, 180, 0.6), 0 36px 160px rgba(0, 0, 0, 0.95);
}
/* ======================================================
   PRICING PAGE – CONTENT SECTIONS (AFTER PRICE BOXES)
   ====================================================== */

/* Main wrapper */
.info-section {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 60px 12px 90px;
}

.info-inner {
  width: 85%;
  max-width: 1100px;
  display: flex;
  flex-direction: column;
  gap: 38px;
}

/* Each content block */
.content-block {
  background: rgba(15, 15, 22, 0.6);
  border-radius: 18px;
  padding: 26px 30px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.6);
}

/* Headings */
.content-block h2 {
  font-size: 30px;
  font-weight: 800;
  color: #f5c76b;
  margin-bottom: 14px;
  letter-spacing: 0.8px;
}

/* Paragraph text */
.content-block p {
  font-size: 15px;
  line-height: 1.75;
  color: #dddddd;
}

/* ======================================================
   LIST STYLING (4 LI / 3 LI / 2 LI)
   ====================================================== */

.content-block ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.content-block ul li {
  font-size: 15px;
  color: #e2e2e2;
  padding-left: 26px;
  margin-bottom: 12px;
  position: relative;
  line-height: 1.6;
}

/* Golden bullet */
.content-block ul li::before {
  content: "✦";
  position: absolute;
  left: 0;
  top: 0;
  color: #f5c76b;
  font-size: 14px;
}

/* ======================================================
   TABLE STYLING (SECTION 2)
   ====================================================== */

.table-wrapper {
  margin-top: 10px;
  overflow-x: auto;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.table-wrapper table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(0, 0, 0, 0.35);
}

.table-wrapper th {
  background: rgba(245, 199, 107, 0.18);
  color: #f5c76b;
  font-size: 14px;
  font-weight: 700;
  padding: 14px 16px;
  text-align: left;
}

.table-wrapper td {
  font-size: 14px;
  color: #e0e0e0;
  padding: 14px 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
}

/* Table hover effect */
.table-wrapper tbody tr:hover {
  background: rgba(245, 199, 107, 0.08);
}

/* ======================================================
   RESPONSIVE TWEAKS
   ====================================================== */

@media (max-width: 900px) {
  .info-inner {
    width: 95%;
  }

  .content-block {
    padding: 22px 20px;
  }

  .content-block h2 {
    font-size: 26px;
  }
}

@media (max-width: 600px) {
  .content-block h2 {
    font-size: 24px;
  }

  .content-block p,
  .content-block ul li {
    font-size: 14px;
  }
}
/* ================= PRICING BOXES ================= */

.pricing-section {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 60px 12px 90px;
}

.pricing-container {
  width: 85%;
  max-width: 1100px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

/* Individual card */
.pricing-card {
  background: radial-gradient(circle at top, #1c1c25, #050508);
  border-radius: 20px;
  overflow: hidden;
  text-align: center;
  padding-bottom: 22px;

  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.75);
  transition: 0.45s ease;
}

/* Image container */
.pricing-img {
  width: 100%;
  height: 260px;
  overflow: hidden;
}

.pricing-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s ease;
}

/* Title */
.pricing-card h3 {
  font-size: 20px;
  margin-top: 16px;
  font-weight: 700;
  color: #ffffff;
}

/* Price */
.price {
  font-size: 28px;
  font-weight: 800;
  color: #f5c76b;
  margin: 8px 0;
}

/* Description */
.pricing-desc {
  font-size: 13px;
  color: #cfcfcf;
  padding: 0 18px;
}

/* Hover animation */
.pricing-card:hover {
  transform: translateY(-10px) scale(1.05);
  box-shadow: 0 35px 90px rgba(245, 199, 107, 0.45);
}

.pricing-card:hover img {
  transform: scale(1.08);
}

/* Highlight middle box */
.pricing-card.featured {
  border: 1px solid rgba(245, 199, 107, 0.4);
  transform: scale(1.04);
}

/* Responsive */
@media (max-width: 900px) {
  .pricing-container {
    grid-template-columns: 1fr;
  }

  .pricing-card.featured {
    transform: scale(1);
  }
}
/* ================= BLUR EFFECT UNTIL HOVER ================= */

/* Initial blur */
.pricing-img img {
  filter: blur(6px) brightness(0.85);
  transition: 0.6s ease;
}

.price {
  filter: blur(5px);
  opacity: 0.7;
  transition: 0.6s ease;
}

/* Optional subtle overlay to look premium */
.pricing-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.15),
    rgba(0, 0, 0, 0.45)
  );
  transition: 0.6s ease;
}

/* Hover – reveal image & price */
.pricing-card:hover .pricing-img img {
  filter: blur(0) brightness(1);
  transform: scale(1.08);
}

.pricing-card:hover .price {
  filter: blur(0);
  opacity: 1;
}

/* Remove overlay on hover */
.pricing-card:hover .pricing-img::after {
  background: transparent;
}
.pricing-img {
  position: relative;
}
/* ================= PRICING INTRO CONTENT ================= */

.pricing-content {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 60px 12px 40px;
}

.pricing-inner {
  width: 85%;
  max-width: 900px;
  text-align: center;

  background: rgba(18, 18, 26, 0.65);
  border-radius: 18px;
  padding: 34px 38px;

  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.6);

  backdrop-filter: blur(8px);
}

/* Heading */
.pricing-inner h2 {
  font-size: 34px;
  font-weight: 800;
  margin-bottom: 14px;
  letter-spacing: 1px;

  color: #f5c76b;
  text-transform: uppercase;
}

/* Paragraph */
.pricing-inner p {
  font-size: 15px;
  line-height: 1.75;
  color: #dddddd;
  max-width: 720px;
  margin: 0 auto;
}

/* Subtle hover polish (optional) */
.pricing-inner:hover {
  box-shadow: 0 24px 70px rgba(245, 199, 107, 0.25);
  transition: 0.4s ease;
}

/* Responsive */
@media (max-width: 768px) {
  .pricing-inner {
    width: 95%;
    padding: 26px 20px;
  }

  .pricing-inner h2 {
    font-size: 28px;
  }

  .pricing-inner p {
    font-size: 14px;
  }
}
/* ================= BLOG PAGE ================= */

.blog-controls {
  display: flex;
  justify-content: center;
  padding: 40px 0 10px;
}

.add-blog-btn {
  padding: 12px 28px;
  border-radius: 999px;
  border: none;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  background: linear-gradient(135deg, #f5c76b, #e0a84d);
  color: #111;
  box-shadow: 0 12px 30px rgba(245, 199, 107, 0.45);
  transition: 0.35s ease;
}
.add-blog-btn:hover {
  transform: scale(1.08);
}

/* FORM */
.blog-form {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.88);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999;
}
.blog-form.hidden {
  display: none;
}

.form-card {
  width: 420px;
  background: radial-gradient(circle at top, #1b1b24, #050508);
  border-radius: 18px;
  padding: 26px;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.9);
  animation: popIn 0.35s ease;
}
@keyframes popIn {
  from {
    transform: scale(0.92);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}

.form-card h2 {
  margin-bottom: 12px;
  color: #f5c76b;
}

.form-card input,
.form-card textarea {
  width: 100%;
  margin-bottom: 10px;
  padding: 10px 12px;
  background: #0f0f15;
  border: 1px solid #333;
  border-radius: 10px;
  color: #fff;
}
.form-card textarea {
  min-height: 130px;
}

.form-actions {
  display: flex;
  gap: 10px;
}
.form-actions button {
  flex: 1;
  padding: 10px;
  border-radius: 999px;
  border: none;
  font-weight: 800;
  cursor: pointer;
}
.form-actions .cancel {
  background: #2b2b2b;
  color: #fff;
}

/* BLOG GRID */
.blog-section {
  display: flex;
  justify-content: center;
  padding: 50px 12px 90px;
}
.blog-grid {
  width: 85%;
  max-width: 1100px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 28px;
}

/* BLOG CARD */
.blog-card {
  position: relative;
  background: radial-gradient(circle at top, #1c1c25, #050508);
  border-radius: 18px;
  padding: 22px 22px 26px;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.75);
  transition: 0.45s ease;
  overflow: hidden;
  animation: fadeUp 0.6s ease forwards;
}
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Accent bar */
.blog-accent {
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #f5c76b, #e0a84d);
  border-radius: 18px 0 0 18px;
}

/* Content */
.blog-card h3 {
  font-size: 20px;
  margin-bottom: 8px;
}
.blog-card p {
  font-size: 14px;
  color: #d5d5d5;
  line-height: 1.6;
  margin-bottom: 14px;
}

/* CTA */
.read-more {
  background: transparent;
  border: 1px solid rgba(245, 199, 107, 0.5);
  color: #f5c76b;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.3s ease;
}
.read-more:hover {
  background: rgba(245, 199, 107, 0.15);
}

/* Hover animation */
.blog-card:hover {
  transform: translateY(-10px) scale(1.03);
  box-shadow: 0 35px 95px rgba(245, 199, 107, 0.45);
}
/* DELETE BLOG BUTTON */
.delete-blog {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: none;
  background: rgba(255, 60, 60, 0.85);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  opacity: 0;
  transform: scale(0.8);
  transition: 0.3s ease;
}

/* Show delete on hover */
.blog-card:hover .delete-blog {
  opacity: 1;
  transform: scale(1);
}

/* Hover effect */
.delete-blog:hover {
  background: #ff1f1f;
  transform: scale(1.15);
}

/* Fade-out animation on delete */
@keyframes fadeOut {
  to {
    opacity: 0;
    transform: scale(0.92);
  }
}
/* BLOG DETAIL PAGE */
.blog-detail {
  display: flex;
  justify-content: center;
  padding: 80px 12px 100px;
}

.blog-detail-inner {
  width: 85%;
  max-width: 900px;
  background: rgba(18, 18, 26, 0.7);
  border-radius: 20px;
  padding: 40px 45px;
  box-shadow: 0 25px 80px rgba(0, 0, 0, 0.75);
}

.blog-detail-inner h1 {
  font-size: 36px;
  margin-bottom: 18px;
  color: #f5c76b;
}

.blog-detail-inner p {
  font-size: 16px;
  line-height: 1.8;
  color: #dddddd;
}
/* ================= BLOG PAGE BUTTONS ================= */

.blog-controls {
  display: flex;
  justify-content: center;
  gap: 18px;
  padding: 45px 0 20px;
}

/* COMMON BUTTON STYLE */
.add-blog-btn {
  padding: 12px 30px;
  border-radius: 999px;
  border: none;
  cursor: pointer;

  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;

  background: linear-gradient(135deg, #f5c76b, #e0a84d);
  color: #111;

  box-shadow: 0 10px 25px rgba(245, 199, 107, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.35);

  transition: all 0.35s ease;
}

/* Hover effect */
.add-blog-btn:hover {
  transform: translateY(-2px) scale(1.06);
  box-shadow: 0 18px 45px rgba(245, 199, 107, 0.65),
    inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

/* Click effect */
.add-blog-btn:active {
  transform: scale(0.96);
}

/* ADMIN LOGIN BUTTON – darker variant */
.blog-controls button:last-child {
  background: linear-gradient(135deg, #2c2c36, #141418);
  color: #f5c76b;

  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.7),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* Hover for admin button */
.blog-controls button:last-child:hover {
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.9), 0 0 18px rgba(245, 199, 107, 0.35);
}

/* Hidden state fix */
.add-blog-btn.hidden {
  display: none;
}

/* MOBILE */
@media (max-width: 600px) {
  .blog-controls {
    flex-direction: column;
  }
}
/* BLOG IMAGE – FULL FIT (NO CROPPING) */
.blog-thumb {
  width: 100%;
  height: 220px; /* controlled height */
  object-fit: contain; /* SHOW FULL IMAGE */
  background: #0e0e14; /* dark backdrop for empty space */
  border-radius: 14px;
  padding: 8px; /* breathing space */
  margin-bottom: 14px;

  box-shadow: inset 0 0 20px rgba(255, 255, 255, 0.04),
    0 12px 30px rgba(0, 0, 0, 0.6);

  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

/* Subtle hover polish */
.blog-card:hover .blog-thumb {
  transform: scale(1.04);
  box-shadow: inset 0 0 26px rgba(255, 255, 255, 0.08),
    0 18px 45px rgba(0, 0, 0, 0.8);
}

/* Mobile tweak */
@media (max-width: 600px) {
  .blog-thumb {
    height: 180px;
  }
} /* BLOG LIST */
.blog-section {
  display: flex;
  justify-content: center;
  padding: 50px 16px 80px;
}

.blog-grid {
  width: 100%;
  max-width: 1200px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 28px;
}

.blog-card {
  background: rgba(18, 18, 26, 0.75);
  border-radius: 18px;
  padding: 16px;
  cursor: pointer;
  transition: 0.35s ease;
}

.blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.75);
}

.blog-card img {
  width: 100%;
  height: 180px;
  object-fit: contain;
  background: #000;
  border-radius: 14px;
  margin-bottom: 12px;
}

.blog-card h3 {
  font-size: 18px;
  margin-bottom: 6px;
  color: #f5c76b;
}

.blog-card p {
  font-size: 14px;
  color: #ddd;
}

/* BLOG BUTTON */
.blog-controls {
  display: flex;
  justify-content: center;
  padding: 30px 0;
}

.add-blog-btn {
  padding: 12px 26px;
  border-radius: 999px;
  border: none;
  background: linear-gradient(135deg, #f5c76b, #e0a84d);
  font-weight: 700;
  cursor: pointer;
}

/* MODAL */
.modal {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
}

.hidden {
  display: none;
}

.modal-box {
  background: #1c1c26;
  padding: 26px;
  border-radius: 18px;
  width: 340px;
}

.modal-box.large {
  width: 520px;
}

.modal-box input,
.modal-box textarea {
  width: 100%;
  margin-bottom: 12px;
  padding: 10px;
  border-radius: 10px;
  border: none;
}
/* ================= ABOUT SPLIT LAYOUT ================= */

.about-split {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 50px;
  max-width: 1300px;
  margin: 60px auto;
  padding: 0 20px;
}

/* ---------- LEFT IMAGES ---------- */

.about-images {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: sticky;
  top: 90px;
}

.image-row {
  display: flex;
  gap: 18px;
}

.image-box {
  border-radius: 18px;
  overflow: hidden;
  position: relative;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6);
  transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Sizes */
.img-lg {
  height: 340px;
}
.img-md {
  height: 260px;
}
.img-sm {
  height: 180px;
  flex: 1;
}

/* Hover effects */
.image-box:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 25px 55px rgba(245, 199, 107, 0.25);
}

.glow-gold:hover {
  box-shadow: 0 0 25px rgba(245, 199, 107, 0.45),
    0 0 60px rgba(245, 199, 107, 0.25);
}

/* ---------- RIGHT CONTENT ---------- */

.about-content {
  display: flex;
  flex-direction: column;
  gap: 34px;
}

.about-block {
  background: rgba(20, 20, 28, 0.55);
  border-radius: 16px;
  padding: 22px 26px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 0 25px rgba(0, 0, 0, 0.4);
}

.about-block h2 {
  font-size: 26px;
  font-weight: 800;
  color: #f5c76b;
  margin-bottom: 8px;
}

.about-block p {
  font-size: 15px;
  line-height: 1.7;
  color: #ddd;
}

/* ---------- SUBPOINTS ---------- */

.subpoints {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.subpoint {
  background: rgba(0, 0, 0, 0.35);
  border-radius: 12px;
  padding: 14px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.subpoint:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 30px rgba(245, 199, 107, 0.2);
}

.subpoint h4 {
  font-size: 15px;
  color: #f4d588;
  margin-bottom: 4px;
}

.subpoint p {
  font-size: 13.5px;
  color: #e0e0e0;
}

/* ---------- RESPONSIVE ---------- */

@media (max-width: 900px) {
  .about-split {
    grid-template-columns: 1fr;
  }

  .about-images {
    position: relative;
    top: auto;
  }

  .subpoints {
    grid-template-columns: 1fr;
  }
}
/* ================= ABOUT PAGE MASTER LAYOUT ================= */

.about-page {
  max-width: 1300px;
  margin: 60px auto;
  padding: 0 20px;
  display: flex;
  flex-direction: column;
  gap: 80px;
}

/* ================= ALTERNATING ROW ================= */

.about-row {
  display: flex;
  gap: 50px;
  align-items: center;

  /* fade-in animation */
  opacity: 0;
  transform: translateY(40px);
  animation: fadeUp 1s ease forwards;
  animation-timeline: view();
  animation-range: entry 20% cover 40%;
}

/* Alternate layout */
.about-row:nth-child(even) {
  flex-direction: row-reverse;
}

/* ================= IMAGE COLUMN ================= */

.about-images {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* image card */
.image-box {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.6);
  transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* sizes */
.img-lg {
  height: 340px;
}
.img-md {
  height: 260px;
}
.img-sm {
  height: 180px;
}

/* row of images */
.image-row {
  display: flex;
  gap: 18px;
}

/* hover luxury effect */
.image-box:hover {
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 0 30px rgba(245, 199, 107, 0.25),
    0 30px 70px rgba(0, 0, 0, 0.85);
}

/* ================= CONTENT COLUMN ================= */

.about-content {
  flex: 1.2;
  display: flex;
  flex-direction: column;
  gap: 22px;
}

/* content card */
.about-block {
  background: rgba(20, 20, 28, 0.6);
  border-radius: 18px;
  padding: 26px 30px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow: inset 0 0 25px rgba(0, 0, 0, 0.45);
}

/* headings */
.about-block h2 {
  font-size: 28px;
  font-weight: 800;
  color: #f5c76b;
  margin-bottom: 8px;
}

/* paragraph */
.about-block p {
  font-size: 15.5px;
  line-height: 1.7;
  color: #ddd;
}

/* ================= SUBPOINTS (4TH SECTION) ================= */

.subpoints {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 18px;
}

.subpoint {
  background: rgba(0, 0, 0, 0.35);
  border-radius: 14px;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.subpoint:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 34px rgba(245, 199, 107, 0.22);
}

.subpoint h4 {
  font-size: 15px;
  color: #f4d588;
  margin-bottom: 4px;
}

.subpoint p {
  font-size: 13.5px;
  color: #e0e0e0;
}

/* ================= FADE IN ANIMATION ================= */

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ================= RESPONSIVE ================= */

@media (max-width: 900px) {
  .about-row,
  .about-row:nth-child(even) {
    flex-direction: column;
  }

  .subpoints {
    grid-template-columns: 1fr;
  }

  .img-lg {
    height: 280px;
  }
  .img-md {
    height: 220px;
  }
  .img-sm {
    height: 160px;
  }
}
/* ================= ABOUT PAGE WRAPPER ================= */

.about-page {
  max-width: 1300px;
  margin: 70px auto;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 90px;
}

/* ================= EACH ROW ================= */

.about-row {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 50px;
  align-items: center;

  /* scroll fade-in */
  opacity: 0;
  transform: translateY(40px);
  animation: aboutFade 0.9s ease forwards;
  animation-timeline: view();
  animation-range: entry 20% cover 40%;
}

/* alternate rows */
.about-row:nth-child(even) {
  grid-template-columns: 1.2fr 1fr;
}

.about-row:nth-child(even) .about-images {
  order: 2;
}

.about-row:nth-child(even) .about-content {
  order: 1;
}

/* ================= IMAGE COLUMN ================= */

.about-images {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.image-row {
  display: flex;
  gap: 18px;
}

/* image card */
.image-box {
  border-radius: 18px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.75);
  transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.image-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* sizes */
.img-lg {
  height: 360px;
}
.img-md {
  height: 260px;
}
.img-sm {
  height: 180px;
  flex: 1;
}

/* hover effect */
.image-box:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 0 35px rgba(245, 199, 107, 0.25), 0 30px 70px rgba(0, 0, 0, 0.9);
}

/* ================= CONTENT COLUMN ================= */

.about-content {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

/* content card */
.about-block {
  background: linear-gradient(
    145deg,
    rgba(22, 22, 30, 0.95),
    rgba(10, 10, 14, 0.95)
  );
  border-radius: 18px;
  padding: 26px 30px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 0 25px rgba(0, 0, 0, 0.45);
}

/* heading */
.about-block h2 {
  font-size: 28px;
  font-weight: 800;
  color: #f5c76b;
  margin-bottom: 10px;
  line-height: 1.25;
}

/* paragraph */
.about-block p {
  font-size: 15.5px;
  line-height: 1.75;
  color: #dedede;
}

/* ================= SUBPOINTS (4TH SECTION) ================= */

.subpoints {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.subpoint {
  background: rgba(0, 0, 0, 0.35);
  border-radius: 14px;
  padding: 14px 16px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.subpoint:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 34px rgba(245, 199, 107, 0.2);
}

.subpoint h3,
.subpoint h4 {
  font-size: 15px;
  color: #f4d588;
  margin-bottom: 4px;
}

.subpoint p {
  font-size: 13.5px;
  color: #e0e0e0;
}

/* ================= ANIMATION ================= */

@keyframes aboutFade {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ================= RESPONSIVE ================= */

@media (max-width: 900px) {
  .about-row {
    grid-template-columns: 1fr !important;
  }

  .about-images,
  .about-content {
    order: unset !important;
  }

  .subpoints {
    grid-template-columns: 1fr;
  }

  .img-lg {
    height: 280px;
  }
  .img-md {
    height: 220px;
  }
  .img-sm {
    height: 160px;
  }
}
/* ---------------- FLOATING CALL BUTTON (LEFT SIDE) ---------------- */

.call-btn-left {
  position: fixed;
  left: 28px;
  bottom: 28px;
  width: 62px;
  height: 62px;
  background: linear-gradient(135deg, #1e90ff, #005ecb);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;

  box-shadow: 0 0 18px rgba(30, 144, 255, 0.7),
    0 0 35px rgba(30, 144, 255, 0.45);

  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.call-btn-left img {
  width: 30px;
  height: 30px;
  filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.4));
}

/* Hover animation */
.call-btn-left:hover {
  transform: scale(1.15) rotate(-6deg);
  box-shadow: 0 0 25px rgba(30, 144, 255, 0.9), 0 0 50px rgba(30, 144, 255, 0.6);
}
/* ================= MOBILE FIXES ================= */

@media (max-width: 768px) {
  /* NAVBAR */
  .nav-inner {
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px;
  }

  .nav-links {
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    font-size: 14px;
  }

  /* HERO / BANNER */
  .hero {
    padding: 10px 0 20px;
  }

  .banner-container {
    flex-direction: column;
    border-radius: 16px;
    overflow: hidden;
  }

  /* HIDE SIDE IMAGES ON MOBILE */
  .banner-img {
    display: none;
  }

  /* CENTER CONTENT */
  .banner-center {
    width: 100%;
    padding: 40px 20px;
    text-align: center;
  }

  .banner-center h1 {
    font-size: 28px;
    letter-spacing: 1.5px;
  }

  .banner-center .small-text {
    font-size: 12px;
    letter-spacing: 3px;
  }

  .banner-center .tagline {
    font-size: 14px;
    line-height: 1.4;
  }

  /* BLOG TITLE SPACING */
  .banner-center p {
    margin-bottom: 8px;
  }

  /* BLOG GRID */
  .blog-grid {
    grid-template-columns: 1fr;
    padding: 0 12px;
  }

  /* BLOG CARD */
  .blog-card {
    margin-bottom: 18px;
  }

  /* FLOATING BUTTONS */
  .call-btn-left {
    left: 16px;
    bottom: 16px;
    width: 56px;
    height: 56px;
  }

  .whatsapp-btn {
    right: 16px;
    bottom: 16px;
    width: 56px;
    height: 56px;
  }
}
/* ================= MOBILE NAVBAR FIX ================= */

@media (max-width: 768px) {
  /* Navbar layout */
  .nav-inner {
    position: relative;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
  }

  /* Logo clickable */
  .logo {
    cursor: pointer;
  }

  /* Hide nav links by default */
  .nav-links {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;

    background: rgba(5, 5, 12, 0.98);
    padding: 20px 0;
    border-radius: 0 0 18px 18px;

    max-height: 0;
    overflow: hidden;
    opacity: 0;

    transition: max-height 0.35s ease, opacity 0.3s ease;
  }

  /* Show menu ONLY when checkbox is checked */
  .nav-toggle:checked ~ .nav-links {
    max-height: 320px;
    opacity: 1;
  }

  /* Hamburger visible */
  .nav-toggle-label {
    display: block;
  }

  /* Desktop menu hidden */
  .nav-links a {
    font-size: 15px;
    padding: 6px 0;
  }
}
/* ===================================================
   FINAL MOBILE NAVBAR FIX (100% WORKING)
   =================================================== */

/* Hide checkbox */
.nav-toggle {
  display: none;
}

/* Hamburger icon */
.nav-toggle-label {
  display: none;
  width: 26px;
  height: 20px;
  position: relative;
}

.nav-toggle-label span,
.nav-toggle-label span::before,
.nav-toggle-label span::after {
  position: absolute;
  width: 100%;
  height: 2px;
  background: #fff;
  content: "";
  left: 0;
  transition: 0.3s;
}

.nav-toggle-label span {
  top: 50%;
  transform: translateY(-50%);
}

.nav-toggle-label span::before {
  top: -8px;
}

.nav-toggle-label span::after {
  top: 8px;
}

/* X animation */
.nav-toggle:checked + .nav-toggle-label span {
  transform: rotate(45deg);
}

.nav-toggle:checked + .nav-toggle-label span::before {
  top: 0;
}

.nav-toggle:checked + .nav-toggle-label span::after {
  top: 0;
  transform: rotate(-90deg);
}

/* ================= MOBILE ================= */
@media (max-width: 768px) {
  .nav-inner {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
  }

  /* SHOW HAMBURGER */
  .nav-toggle-label {
    display: block;
    cursor: pointer;
    z-index: 1001;
  }

  /* HIDE MENU INITIALLY */
  .nav-links {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;

    display: flex;
    flex-direction: column;
    align-items: center;

    background: rgba(0, 0, 0, 0.96);
    backdrop-filter: blur(12px);

    padding: 24px 0;
    gap: 18px;

    border-radius: 0 0 18px 18px;

    max-height: 0;
    overflow: hidden;
    opacity: 0;

    transition: max-height 0.35s ease, opacity 0.3s ease;
  }

  /* SHOW MENU WHEN CLICKED */
  .nav-toggle:checked ~ .nav-links {
    max-height: 420px;
    opacity: 1;
  }

  /* 🔥 FIX PRICING ALIGNMENT */
  .nav-links a {
    width: 100%;
    text-align: center;
    font-size: 16px;
    padding: 8px 0;
    margin: 0;
  }

  .nav-links a::after {
    left: 50%;
    transform: translateX(-50%);
  }
}
/* LOGO FIX */
.logo {
  font-size: 26px;
  font-weight: 800;
  color: #f5c76b; /* gold */
  text-decoration: none;
}

.logo span {
  color: #ffffff; /* white */
}
/* ================= MOBILE NAVBAR FIX ================= */
@media (max-width: 900px) {
  /* Ensure navbar stays above banner */
  .site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
  }

  /* Show hamburger */
  .nav-toggle-label {
    display: block;
    position: relative;
    z-index: 1100;
  }

  /* Hide nav links initially */
  .nav-links {
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    width: 92%;

    display: flex;
    flex-direction: column;
    align-items: center;

    background: rgba(5, 5, 10, 0.97);
    border-radius: 16px;
    padding: 16px 0;

    max-height: 0;
    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.8);

    transition: max-height 0.35s ease;
  }

  /* Open menu when hamburger checked */
  .nav-toggle:checked ~ .nav-links {
    max-height: 360px;
  }

  /* Menu items centered */
  .nav-links a {
    width: 100%;
    text-align: center;
    padding: 12px 0;
    font-size: 16px;
  }

  /* Fix dropdown alignment (if any) */
  .nav-item.has-dropdown {
    width: 100%;
    text-align: center;
  }

  .nav-item.has-dropdown .dropdown {
    position: static;
    transform: none;
    opacity: 1;
    pointer-events: auto;
    margin-top: 6px;
    width: 90%;
    align-self: center;
  }
}
@media (max-width: 900px) {
  .nav-links a {
    cursor: pointer;
  }
}
/* ================= SEO INTERNAL LINKS ================= */
.seo-link {
  position: relative;
  color: #f5c76b; /* soft gold */
  font-weight: 600;
  text-decoration: none;
  padding: 2px 4px;
  transition: color 0.3s ease;
}

/* underline glow */
.seo-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 2px;
  background: linear-gradient(
    90deg,
    rgba(245, 199, 107, 0),
    rgba(245, 199, 107, 0.9),
    rgba(245, 199, 107, 0)
  );
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* hover effect */
.seo-link:hover {
  color: #ffd98a;
}

.seo-link:hover::after {
  opacity: 1;
}

/* subtle shimmer animation */
.seo-link:hover {
  text-shadow: 0 0 6px rgba(245, 199, 107, 0.6);
}
/* ================= MOBILE NAVBAR FIX ================= */
@media (max-width: 768px) {
  .nav-links {
    position: fixed;
    top: 70px;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    max-height: calc(100vh - 100px); /* IMPORTANT */
    background: rgba(10, 10, 15, 0.98);
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 0;
    overflow-y: auto; /* ✅ THIS FIXES CONTACT US */
    z-index: 9999;
  }

  .nav-links a {
    padding: 14px 0;
    font-size: 18px;
    width: 100%;
    text-align: center;
  }
}
.nav-links::-webkit-scrollbar {
  width: 6px;
}

.nav-links::-webkit-scrollbar-thumb {
  background: rgba(255, 215, 120, 0.6);
  border-radius: 10px;
}
.nav-links::-webkit-scrollbar {
  width: 6px;
}

.nav-links::-webkit-scrollbar-thumb {
  background: rgba(255, 215, 120, 0.6);
  border-radius: 10px;
}
/* ================= MOBILE NAV FIX (FINAL) ================= */
@media (max-width: 768px) {
  .nav-links {
    position: fixed;
    top: 80px;
    left: 50%;
    transform: translateX(-50%) scale(0.96);
    width: 92%;
    max-height: 80vh; /* FIXED visible area */
    background: rgba(12, 12, 18, 0.98);
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 0;

    /* IMPORTANT FIXES */
    overflow-y: auto;
    opacity: 0;
    pointer-events: none;

    transition: opacity 0.25s ease, transform 0.25s ease;
    z-index: 9999;
  }

  /* WHEN MENU IS OPEN */
  .nav-links.active {
    opacity: 1;
    transform: translateX(-50%) scale(1);
    pointer-events: auto;
  }

  .nav-links a {
    padding: 14px 0;
    font-size: 18px;
    width: 100%;
    text-align: center;
  }
}
.nav-toggle {
  display: none;
}
.nav-toggle-label {
  display: none;
  cursor: pointer;
  z-index: 10001;
}

.nav-toggle-label span,
.nav-toggle-label span::before,
.nav-toggle-label span::after {
  content: "";
  display: block;
  width: 26px;
  height: 3px;
  background: #f5c76b;
  border-radius: 2px;
  position: relative;
}

.nav-toggle-label span::before {
  position: absolute;
  top: -8px;
}

.nav-toggle-label span::after {
  position: absolute;
  top: 8px;
}
@media (max-width: 768px) {
  .nav-toggle-label {
    display: block;
  }

  .nav-links {
    position: fixed;
    top: 85px;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;

    background: rgba(10, 10, 15, 0.98);
    border-radius: 18px;

    display: flex;
    flex-direction: column;
    align-items: center;

    padding: 20px 0;

    max-height: 80vh;
    overflow-y: auto;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    z-index: 10000;

    transition: opacity 0.25s ease, visibility 0.25s ease;
  }

  /* OPEN MENU */
  .nav-toggle:checked ~ .nav-links {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .nav-links a {
    padding: 14px 0;
    width: 100%;
    text-align: center;
    font-size: 18px;
  }
}
/* ================= MOBILE NAV FIX (IOS SAFE OVERRIDE) ================= */
@media (max-width: 768px) {
  /* Neutralize overflow & transform issues */
  body,
  header,
  .site-header,
  .nav-outer,
  .nav-inner,
  .hero,
  .hero-inner {
    overflow: visible !important;
    transform: none !important;
  }

  /* Force nav above everything */
  .nav-links {
    position: fixed !important;
    z-index: 99999 !important;
    top: 80px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 90% !important;
    max-height: 85vh !important;
    overflow-y: auto !important;
    background: rgba(10, 10, 15, 0.98) !important;
    border-radius: 18px !important;
  }

  /* Ensure links stay clickable */
  .nav-links a {
    pointer-events: auto !important;
    z-index: 99999 !important;
  }

  /* Fix checkbox overlay blocking clicks */
  .nav-toggle-label {
    z-index: 100000 !important;
  }
}
.logo {
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.logo:hover {
  opacity: 0.85;
}
.nav-toggle {
  display: none;
}

.nav-toggle-label {
  display: none;
  cursor: pointer;
}

@media (max-width: 768px) {
  .nav-toggle-label {
    display: block;
  }

  .nav-links {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #0f0f17;
    flex-direction: column;
    padding: 20px 0;
    display: none;
  }

  .nav-toggle:checked ~ .nav-links {
    display: flex;
  }

  .nav-links a {
    padding: 12px 0;
    font-size: 18px;
  }
}
