:root {
  /* Primary Colors */
  --primary-color: #ff6b35; /* Vibrant orange */
  --primary-dark: #e55a2b; /* Darker shade for hover effects */
  --primary-light: #ff8a5c; /* Lighter shade for highlights */
  
  /* Secondary Colors */
  --secondary-color: #2e86ab; /* Deep blue */
  --secondary-dark: #246c8e; /* Darker blue */
  --secondary-light: #4da8cc; /* Lighter blue */
  
  /* Accent Colors */
  --accent-color: #8a4fff; /* Vibrant purple */
  --accent-dark: #7038e0; /* Darker purple */
  --accent-light: #a875ff; /* Lighter purple */
  
  /* Neutral Colors */
  --dark-color: #1a1a2e; /* Almost black with a hint of blue */
  --dark-gray: #2d2d42; /* Dark gray with blue tint */
  --medium-gray: #4a4a68; /* Medium gray */
  --light-gray: #e0e0e8; /* Light gray */
  --white-color: #ffffff; /* White */
  --off-white: #f8f8fc; /* Off-white */
  
  /* Gradient backgrounds */
  --gradient-primary: linear-gradient(135deg, var(--primary-color), var(--accent-color));
  --gradient-secondary: linear-gradient(135deg, var(--secondary-color), var(--accent-dark));
  --gradient-light: linear-gradient(135deg, var(--off-white), var(--light-gray));
  --gradient-dark: linear-gradient(135deg, var(--dark-color), var(--dark-gray));
  
  /* Overlay for background images */
  --overlay-dark: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.5));
  --overlay-light: linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.7));
  --overlay-gradient: linear-gradient(135deg, rgba(26, 26, 46, 0.8), rgba(138, 79, 255, 0.6));
  
  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 12px 36px rgba(0, 0, 0, 0.14);
  
  /* 3D effect shadows */
  --shadow-3d: 0 8px 16px -4px rgba(0, 0, 0, 0.1), 0 4px 8px -2px rgba(0, 0, 0, 0.05);
  --shadow-3d-hover: 0 16px 32px -8px rgba(0, 0, 0, 0.15), 0 8px 16px -4px rgba(0, 0, 0, 0.1);
  
  /* Typography */
  --heading-font: 'Manrope', sans-serif;
  --body-font: 'Rubik', sans-serif;
  
  /* Spacing */
  --spacing-xs: 0.5rem;
  --spacing-sm: 1rem;
  --spacing-md: 1.5rem;
  --spacing-lg: 2.5rem;
  --spacing-xl: 4rem;
  
  /* Border radius */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
  
  /* Transitions */
  --transition-fast: 0.2s ease-out;
  --transition-medium: 0.3s ease-in-out;
  --transition-slow: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

body {
  font-family: var(--body-font);
  line-height: 1.6;
  color: var(--dark-color);
  background-color: var(--white-color);
  overflow-x: hidden;
}

a {
  color: var(--secondary-color);
  text-decoration: none;
  transition: color var(--transition-fast);
}

a:hover {
  color: var(--primary-color);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--heading-font);
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: var(--spacing-sm);
  color: var(--dark-color);
}

h1 {
  font-size: 3rem;
  font-weight: 800;
}

h2 {
  font-size: 2.5rem;
  font-weight: 700;
}

h3 {
  font-size: 1.8rem;
  font-weight: 600;
}

h4 {
  font-size: 1.4rem;
  font-weight: 600;
}

p {
  margin-bottom: var(--spacing-md);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

ul, ol {
  margin-bottom: var(--spacing-md);
  padding-left: var(--spacing-lg);
}

/* Utility Classes */
.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}

.section-title {
  text-align: center;
  margin-bottom: var(--spacing-lg);
  position: relative;
}

.section-title:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.section-description {
  text-align: center;
  max-width: 800px;
  margin: -1.5rem auto var(--spacing-lg);
  color: var(--medium-gray);
  font-size: 1.1rem;
}

.text-center {
  text-align: center;
}

.mb-sm {
  margin-bottom: var(--spacing-sm);
}

.mb-md {
  margin-bottom: var(--spacing-md);
}

.mb-lg {
  margin-bottom: var(--spacing-lg);
}

.hidden {
  display: none;
}

/* Buttons */
.btn, 
button, 
input[type='submit'] {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  font-family: var(--heading-font);
  font-weight: 600;
  font-size: 1rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-medium);
  border: none;
  box-shadow: var(--shadow-md);
}

.btn:hover, 
button:hover, 
input[type='submit']:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-lg);
}

.btn:active, 
button:active, 
input[type='submit']:active {
  transform: translateY(1px);
  box-shadow: var(--shadow-sm);
}

.primary-btn {
  background: var(--gradient-primary);
  color: var(--white-color);
}

.primary-btn:hover {
  background: linear-gradient(135deg, var(--primary-dark), var(--accent-dark));
  color: var(--white-color);
}

.secondary-btn {
  background: var(--white-color);
  color: var(--primary-color);
  border: 2px solid var(--primary-color);
}

.secondary-btn:hover {
  background: rgba(255, 107, 53, 0.1);
  color: var(--primary-dark);
  border-color: var(--primary-dark);
}

/* Header */
.main-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background-color: rgba(255, 255, 255, 0.95);
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: all var(--transition-medium);
}

.main-header .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem var(--spacing-md);
}

.logo a {
  display: inline-block;
}

.logo img {
  height: 60px;
  width: auto;
  transition: height var(--transition-medium);
}

.main-nav ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

.main-nav li {
  margin-left: var(--spacing-md);
}

.main-nav a {
  position: relative;
  color: var(--dark-color);
  font-weight: 500;
  font-size: 1rem;
  padding: 0.5rem 0;
}

.main-nav a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--gradient-primary);
  transition: width var(--transition-medium);
}

.main-nav a:hover:after,
.main-nav a:focus:after {
  width: 100%;
}

.burger-menu {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 30px;
  height: 21px;
  cursor: pointer;
}

.burger-menu span {
  display: block;
  height: 3px;
  background-color: var(--dark-color);
  border-radius: var(--radius-full);
  transition: all var(--transition-fast);
}

/* Header Scroll State */
.main-header.scrolled {
  padding: 0.5rem 0;
  background-color: rgba(255, 255, 255, 0.98);
  box-shadow: var(--shadow-lg);
}

.main-header.scrolled .logo img {
  height: 50px;
}

/* Hero Section */
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding: 6rem 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: var(--white-color);
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--overlay-gradient);
}

.hero-content {
  position: relative;
  max-width: 800px;
  z-index: 1;
}

.hero h1 {
  font-size: 3.5rem;
  margin-bottom: var(--spacing-md);
  color: var(--white-color);
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
  animation: fadeInUp 1s ease-out 0.2s both;
}

.hero p {
  font-size: 1.25rem;
  margin-bottom: var(--spacing-lg);
  color: var(--white-color);
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
  max-width: 700px;
  animation: fadeInUp 1s ease-out 0.4s both;
}

.hero-buttons {
  display: flex;
  gap: var(--spacing-md);
  animation: fadeInUp 1s ease-out 0.6s both;
}

/* About Section */
.about-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.about-content {
  display: flex;
  align-items: center;
  gap: var(--spacing-xl);
}

.about-text {
  flex: 1;
}

.about-image {
  flex: 1;
}

.image-container {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-3d);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
}

.image-container:hover {
  transform: translateY(-10px) rotateY(-5deg);
  box-shadow: var(--shadow-3d-hover);
}

.about-image img {
  width: 100%;
  height: auto;
  transition: transform var(--transition-slow);
}

.about-image:hover img {
  transform: scale(1.05);
}

/* Rooms Section */
.rooms-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.rooms-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: var(--spacing-lg);
}

.card {
  background-color: var(--white-color);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
  display: flex;
  flex-direction: column;
  height: 100%;
}

.card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-3d-hover);
}

.card-image {
  width: 100%;
  height: 250px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

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

.card-content {
  padding: var(--spacing-md);
  flex: 1;
  display: flex;
  flex-direction: column;
}

.card h3 {
  color: var(--dark-color);
  margin-bottom: var(--spacing-sm);
}

.room-details {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: var(--spacing-sm) 0;
}

.card .btn {
  margin-top: auto;
  align-self: flex-start;
}

/* Workshops Section */
.workshops-section {
  padding: var(--spacing-xl) 0;
  background: linear-gradient(135deg, #f6f9fc, #e6f1fa);
}

.workshops-content {
  display: flex;
  align-items: center;
  gap: var(--spacing-xl);
}

.workshops-image {
  flex: 1;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-3d);
}

.workshops-image img {
  width: 100%;
  height: auto;
  transition: transform var(--transition-slow);
}

.workshops-image:hover img {
  transform: scale(1.05);
}

.workshops-info {
  flex: 1;
}

.accordion {
  margin: var(--spacing-md) 0;
}

.accordion-item {
  margin-bottom: var(--spacing-sm);
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  background-color: var(--white-color);
}

.accordion-header {
  padding: var(--spacing-md);
  background-color: var(--white-color);
  font-weight: 600;
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  transition: background-color var(--transition-fast);
}

.accordion-header:hover {
  background-color: rgba(46, 134, 171, 0.05);
}

.accordion-header:after {
  content: '+';
  position: absolute;
  right: var(--spacing-md);
  font-size: 1.5rem;
  color: var(--primary-color);
  transition: transform var(--transition-fast);
}

.accordion-item.active .accordion-header:after {
  transform: rotate(45deg);
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--transition-medium);
  background-color: var(--white-color);
}

.accordion-content p {
  padding: 0 var(--spacing-md) var(--spacing-md);
  color: var(--medium-gray);
}

.accordion-item.active .accordion-content {
  max-height: 500px;
}

/* Careers Section */
.careers-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.careers-content {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-xl);
}

.careers-text {
  flex: 1.5;
}

.careers-image {
  flex: 1;
}

.job-listings {
  list-style-type: none;
  padding: 0;
  margin: var(--spacing-md) 0;
}

.job-listings li {
  background-color: var(--off-white);
  padding: var(--spacing-md);
  margin-bottom: var(--spacing-sm);
  border-radius: var(--radius-md);
  border-left: 4px solid var(--primary-color);
  transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

.job-listings li:hover {
  transform: translateX(5px);
  box-shadow: var(--shadow-md);
}

.job-listings h4 {
  margin-bottom: 0.5rem;
  color: var(--dark-color);
}

.job-listings p {
  margin-bottom: 0;
  color: var(--medium-gray);
}

/* Webinars Section */
.webinars-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.webinars-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: var(--spacing-lg);
}

/* Projects Section */
.projects-section {
  padding: var(--spacing-xl) 0;
  background: linear-gradient(135deg, #fcf6ff, #f0e6ff);
}

.projects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
  gap: var(--spacing-lg);
}

/* Partners Section */
.partners-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.partners-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--spacing-lg);
}

.partner-card {
  text-align: center;
  padding: var(--spacing-md);
  background-color: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
  width: 200px;
}

.partner-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-lg);
}

.partner-card img {
  width: 100%;
  height: 100px;
  object-fit: contain;
  margin: 0 auto var(--spacing-sm);
  filter: grayscale(100%);
  transition: filter var(--transition-medium);
}

.partner-card:hover img {
  filter: grayscale(0%);
}

.partner-card p {
  margin-bottom: 0;
  color: var(--medium-gray);
  font-size: 0.9rem;
  transition: color var(--transition-fast);
}

.partner-card:hover p {
  color: var(--primary-color);
}

/* Insights Section */
.insights-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.insights-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: var(--spacing-lg);
}

/* FAQ Section */
.faq-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.faq-content {
  max-width: 800px;
  margin: 0 auto;
}

/* Contact Section */
.contact-section {
  padding: var(--spacing-xl) 0;
  background: linear-gradient(135deg, #ffffff, #f0f8ff);
}

.contact-content {
  display: flex;
  gap: var(--spacing-xl);
}

.contact-info {
  flex: 1;
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

.contact-info h3 {
  margin-top: var(--spacing-md);
  color: var(--dark-color);
}

.contact-info p {
  margin-bottom: var(--spacing-md);
  color: var(--medium-gray);
}

.map-container {
  margin-top: var(--spacing-md);
  border-radius: var(--radius-md);
  overflow: hidden;
}

.contact-form {
  flex: 1;
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

.form-group {
  margin-bottom: var(--spacing-md);
}

.form-group label {
  display: block;
  margin-bottom: var(--spacing-xs);
  font-weight: 500;
}

.form-group input,
.form-group select,
.form-group textarea {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid var(--light-gray);
  border-radius: var(--radius-md);
  font-family: var(--body-font);
  font-size: 1rem;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  outline: none;
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(255, 107, 53, 0.2);
}

/* Footer */
.main-footer {
  background-color: var(--dark-color);
  color: var(--white-color);
  padding: var(--spacing-xl) 0 var(--spacing-md);
}

.footer-content {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-lg);
  margin-bottom: var(--spacing-lg);
}

.footer-logo {
  flex: 1 1 300px;
}

.footer-logo img {
  margin-bottom: var(--spacing-sm);
}

.footer-logo p {
  color: var(--light-gray);
}

.footer-links {
  flex: 1 1 200px;
}

.footer-links h4 {
  color: var(--white-color);
  font-weight: 600;
  margin-bottom: var(--spacing-md);
}

.footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links li {
  margin-bottom: var(--spacing-xs);
}

.footer-links a {
  color: var(--light-gray);
  transition: color var(--transition-fast);
}

.footer-links a:hover {
  color: var(--primary-light);
}

.footer-social {
  flex: 1 1 200px;
}

.footer-social h4 {
  color: var(--white-color);
  font-weight: 600;
  margin-bottom: var(--spacing-md);
}

.footer-social ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-social li {
  margin-bottom: var(--spacing-xs);
}

.footer-social a {
  color: var(--light-gray);
  transition: color var(--transition-fast);
  display: inline-flex;
  align-items: center;
}

.footer-social a:before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 8px;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.7;
  transition: opacity var(--transition-fast);
}

.footer-social a[href*="facebook"]:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z'/%3E%3C/svg%3E");
}

.footer-social a[href*="twitter"]:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M23.953 4.57a10 10 0 01-2.825.775 4.958 4.958 0 002.163-2.723 10.054 10.054 0 01-3.127 1.184 4.92 4.92 0 00-8.384 4.482C7.69 8.095 4.067 6.13 1.64 3.162a4.822 4.822 0 00-.666 2.475c0 1.71.87 3.213 2.188 4.096a4.904 4.904 0 01-2.228-.616v.06a4.923 4.923 0 003.946 4.827 4.996 4.996 0 01-2.212.085 4.936 4.936 0 004.604 3.417 9.867 9.867 0 01-6.102 2.105c-.39 0-.779-.023-1.17-.067a13.995 13.995 0 007.557 2.209c9.053 0 13.998-7.496 13.998-13.985 0-.21 0-.42-.015-.63A9.935 9.935 0 0024 4.59z'/%3E%3C/svg%3E");
}

.footer-social a[href*="instagram"]:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 0C8.74 0 8.333.015 7.053.072 5.775.132 4.905.333 4.14.63c-.789.306-1.459.717-2.126 1.384S.935 3.35.63 4.14C.333 4.905.131 5.775.072 7.053.012 8.333 0 8.74 0 12s.015 3.667.072 4.947c.06 1.277.261 2.148.558 2.913.306.788.717 1.459 1.384 2.126.667.666 1.336 1.079 2.126 1.384.766.296 1.636.499 2.913.558C8.333 23.988 8.74 24 12 24s3.667-.015 4.947-.072c1.277-.06 2.148-.262 2.913-.558.788-.306 1.459-.718 2.126-1.384.666-.667 1.079-1.335 1.384-2.126.296-.765.499-1.636.558-2.913.06-1.28.072-1.687.072-4.947s-.015-3.667-.072-4.947c-.06-1.277-.262-2.149-.558-2.913-.306-.789-.718-1.459-1.384-2.126C21.319 1.347 20.651.935 19.86.63c-.765-.297-1.636-.499-2.913-.558C15.667.012 15.26 0 12 0zm0 2.16c3.203 0 3.585.016 4.85.071 1.17.055 1.805.249 2.227.415.562.217.96.477 1.382.896.419.42.679.819.896 1.381.164.422.36 1.057.413 2.227.057 1.266.07 1.646.07 4.85s-.015 3.585-.074 4.85c-.061 1.17-.256 1.805-.421 2.227-.224.562-.479.96-.897 1.382-.419.419-.824.679-1.38.896-.42.164-1.065.36-2.235.413-1.274.057-1.649.07-4.859.07-3.211 0-3.586-.015-4.859-.074-1.171-.061-1.816-.256-2.236-.421-.569-.224-.96-.479-1.379-.897-.421-.419-.69-.824-.9-1.38-.165-.42-.359-1.065-.42-2.235-.045-1.26-.061-1.649-.061-4.844 0-3.196.016-3.586.061-4.861.061-1.17.255-1.814.42-2.234.21-.57.479-.96.9-1.381.419-.419.81-.689 1.379-.898.42-.166 1.051-.361 2.221-.421 1.275-.045 1.65-.06 4.859-.06l.045.03zm0 3.678c-3.405 0-6.162 2.76-6.162 6.162 0 3.405 2.76 6.162 6.162 6.162 3.405 0 6.162-2.76 6.162-6.162 0-3.405-2.76-6.162-6.162-6.162zM12 16c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4zm7.846-10.405c0 .795-.646 1.44-1.44 1.44-.795 0-1.44-.646-1.44-1.44 0-.794.646-1.439 1.44-1.439.793-.001 1.44.645 1.44 1.439z'/%3E%3C/svg%3E");
}

.footer-social a[href*="yelp"]:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M21.111 18.226c-.141.969-2.119 3.483-3.029 3.847-.311.124-.611.094-.85-.09-.154-.12-.314-.365-1.447-2.269-.382-.645-.637-1.095-.637-1.095v.015c-.094-.154-.154-.309-.111-.465.044-.21.242-.284.59-.363.285-.075 1.025-.225 1.025-.225s.599-.135.719-.18c.3-.09.524-.239.594-.449.074-.21.074-.404-.016-.597-.09-.18-.27-.404-.539-.645-1.2-1.079-1.814-1.559-1.949-1.649-.195-.135-.404-.15-.599-.09-.18.045-.39.224-.719.884l-1.245 2.354-.9.015c-.13.019-.27.06-.375.149-.209.18-.27.404-.239.675.03.174.33 3.438.075 4.319.045.869.544.944.674.944.135 0 .27-.030.379-.105.104-.074.215-.195.33-.285 0 0 2.884-2.499 3.064-2.684.195-.204.284-.435.239-.674l-.076-.345zm-5.708-3.639c.09-.149.226-.27.435-.285.204-.03.435.045.645.16.215.119.944.719 1.784 1.469.811.75 1.346 1.275 1.346 1.275s.104.09.164.135c.135.09.24.045.365-.27.12-.09.675-.674 1.05-1.08.42-.449.794-.959.69-1.364-.06-.284-.225-.434-.42-.569-.195-.134-1.049-.45-2.129-.659-1.605-.315-1.739-.36-1.979-.434-.27-.104-.539-.120-.764 0-.195.105-.315.284-.375.465-.75.205-.225 1.619-.39 2.858-.15 1.349-.315 2.519-.315 2.519-.069.195-.074.449.16.644.223.195.539.224.735.074.12-.074.209-.149.27-.224l.915-1.859c.594-1.185.765-1.5.854-1.649zm-1.364-6.407c.045-.866-.574-1.604-1.364-1.649-.795-.05-1.304.624-1.364 1.215-.059.704-.12 1.084-.104 1.694.015.695.09 1.409.18 2.074.075.42.21 1.064.524 1.304.315.225.6.165.859.015.255-.149.435-.344.539-.599.12-.27.344-1.214.42-1.904.073-.674.224-2.15.224-2.15zm-3.089-1.035c.165-.644-.224-1.529-1.109-1.694-.854-.18-1.504.404-1.649 1.004-.12.539-.18 1.485-.18 1.485-.03.375-.074 1.02-.044 1.484.03.539.12.959.329 1.214.181.215.39.315.69.315.194 0 .388-.044.584-.135.195-.105.348-.24.465-.45.09-.149.199-.569.254-1.049.06-.644.149-1.424.195-1.694.051-.24.075-.3.09-.345.016-.044.031-.12.074-.165.046-.074.151-.12.256-.134.074-.016.149.015.209.074.59.06.104.149.135.21.044.119.089.389.089.389zm-.195 7.286c-1.184-.21-1.784-.225-2.183-.18-.45.044-.959.374-1.094.928-.139.554.025 1.064.33 1.394.284.315.704.449.99.495 0 0 .75.044 1.484.119.734.075 1.38.195 1.664.225.284.03.465-.044.549-.12.09-.075.225-.27.18-.614-.045-.285-.209-.885-.539-1.634-.195-.45-.314-.689-.419-.809-.09-.119-.24-.194-.374-.209-.074-.016-.194 0-.404.029-.195.031-.36.045-.36.045l.164.331c.091.12.255.435.315.57.059.165.134.33.209.524.074.195.119.359.104.404-.16.045-.6.074-.165.074-.104 0-.39-.029-.39-.029zm13.736 6.241c-.09-.09-.09-.1-.18-.15-.285-.09-.39.044-.374.104l.285.66c-.09.285-.225.464-.465.614-.135.075-.359.12-.584.135-.255.016-.599-.061-.764-.15-.135-.074-.24-.195-.299-.33-.061-.119-.105-.314-.12-.479-.014-.18.016-.614.045-.794.028-.194.029-.434.029-.434s.104-.599.165-.93c.059-.33.119-.615.18-.885.029-.135.045-.27.074-.374.031-.09.061-.165.061-.225 0-.12-.045-.225-.135-.3-.09-.075-.314-.15-.614-.225-.285-.075-.51-.104-.629-.075-.09.016-.165.061-.24.135-.074.09-.104.18-.149.329-.045.165-.089.315-.12.45-.03.12-.104.764-.195 1.305-.089.539-.195 1.125-.225 1.26-.029.12-.029.165-.029.165s-.06.554-.045.75c.016.185.016.33.046.494.029.18.074.359.148.524.18.39.45.764.81 1.034.344.27.765.465 1.154.539.404.075.81.075 1.125.045.434-.03.87-.164 1.197-.345.329-.195.554-.404.734-.705.18-.284.27-.614.285-.959.016-.3-.016-.494-.061-.659-.044-.179-.119-.359-.194-.524-.086-.134-.209-.314-.209-.314zm-7.185-13.406l-.045-1.319c.014-.719-.195-1.079-.344-1.229-.135-.149-.3-.194-.494-.209-.164-.015-.33.015-.75.119-.315.09-.495.164-.659.255-.18.09-.345.225-.495.39-.329.375-.629 1.019-.839 1.574-.225.614-.36 1.2-.45 1.754-.089.509-.179 1.409-.179 1.409-.045.449-.075.959-.09 1.334-.014.479-.014.854.016 1.019.029.165.09.315.149.39.59.075.225.165.375.165.225 0 .66-.074 1.139-.209.329-.104.734-.27.914-.36.225-.12.345-.24.42-.405.059-.149.045-.345-.016-.554-.074-.255-.104-.359-.239-.945-.104-.479-.224-1.156-.224-1.156l.09-1.064c.042-.465.147-1.304.193-1.484.046-.18.15-.36.36-.405.166-.045.314.015.391.09.074.074.119.195.119.345.003.148-.011.349-.011.349z'/%3E%3C/svg%3E");
}

.footer-social a:hover:before {
  opacity: 1;
}

.footer-social a:hover {
  color: var(--primary-light);
}

.footer-bottom {
  text-align: center;
  padding-top: var(--spacing-md);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-bottom p {
  margin-bottom: 0;
  font-size: 0.9rem;
  color: var(--light-gray);
}

/* Special Pages */
/* Success Page */
.success-page {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: linear-gradient(135deg, var(--off-white), var(--light-gray));
  text-align: center;
  padding: var(--spacing-md);
}

.success-container {
  background-color: var(--white-color);
  border-radius: var(--radius-lg);
  padding: var(--spacing-xl);
  box-shadow: var(--shadow-lg);
  max-width: 600px;
  width: 100%;
}

.success-icon {
  width: 80px;
  height: 80px;
  margin: 0 auto var(--spacing-md);
  color: var(--primary-color);
}

.success-page h1 {
  margin-bottom: var(--spacing-md);
  color: var(--dark-color);
}

.success-page p {
  margin-bottom: var(--spacing-lg);
  color: var(--medium-gray);
}

/* Privacy & Terms Pages */
.privacy-page,
.terms-page {
  padding-top: 100px; /* Ensure content doesn't overlap with header */
  padding-bottom: var(--spacing-xl);
  background-color: var(--white-color);
}

.privacy-container,
.terms-container {
  max-width: 800px;
  margin: 0 auto;
  padding: var(--spacing-lg);
  background-color: var(--white-color);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

.privacy-page h1,
.terms-page h1 {
  margin-bottom: var(--spacing-lg);
  color: var(--dark-color);
}

.privacy-page h2,
.terms-page h2 {
  margin-top: var(--spacing-lg);
  margin-bottom: var(--spacing-sm);
  color: var(--dark-color);
  font-size: 1.6rem;
}

.privacy-page p,
.terms-page p {
  margin-bottom: var(--spacing-md);
  color: var(--medium-gray);
}

.privacy-page ul,
.terms-page ul {
  margin-bottom: var(--spacing-md);
  color: var(--medium-gray);
}

/* Animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes rotateIn {
  from {
    opacity: 0;
    transform: perspective(1000px) rotateY(30deg);
  }
  to {
    opacity: 1;
    transform: perspective(1000px) rotateY(0);
  }
}

/* Media Queries */
@media (max-width: 1200px) {
  html {
    font-size: 15px;
  }
  
  .about-content,
  .workshops-content,
  .careers-content,
  .contact-content {
    flex-direction: column;
  }
  
  .contact-content {
    gap: var(--spacing-md);
  }
  
  .hero h1 {
    font-size: 3rem;
  }
}

@media (max-width: 992px) {
  html {
    font-size: 14px;
  }
  
  .hero h1 {
    font-size: 2.75rem;
  }
  
  .main-nav {
    display: none;
  }
  
  .burger-menu {
    display: flex;
  }
  
  .rooms-grid,
  .webinars-grid,
  .projects-grid,
  .insights-grid {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  }
}

@media (max-width: 768px) {
  html {
    font-size: 13px;
  }
  
  .hero h1 {
    font-size: 2.5rem;
  }
  
  .hero-buttons {
    flex-direction: column;
    gap: var(--spacing-sm);
  }
  
  .hero-buttons .btn {
    width: 100%;
  }
  
  .footer-content {
    flex-direction: column;
    gap: var(--spacing-md);
  }
  
  .partners-grid {
    gap: var(--spacing-md);
  }
  
  .partner-card {
    width: 150px;
  }
}

@media (max-width: 576px) {
  html {
    font-size: 12px;
  }
  
  .hero h1 {
    font-size: 2.25rem;
  }
  
  .section-title {
    font-size: 2rem;
  }
  
  .rooms-grid,
  .webinars-grid,
  .projects-grid,
  .insights-grid {
    grid-template-columns: 1fr;
  }
  
  .card-image {
    height: 200px;
  }
}

/* About Banner Section */
.about-banner {
  padding: var(--spacing-xl) 0;
  background: linear-gradient(135deg, #f6f9fc, #e6f1fa);
}

.banner-content h1 {
  text-align: center;
  margin-bottom: var(--spacing-lg);
  color: var(--dark-color);
}

.banner-image {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-3d);
}

.banner-image img {
  width: 100%;
  height: auto;
}

/* Our Story Section */
.our-story {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.story-content h2 {
  text-align: center;
  margin-bottom: var(--spacing-lg);
  position: relative;
}

.story-content h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.story-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: var(--spacing-xl);
  align-items: start;
}

.story-text p {
  margin-bottom: var(--spacing-md);
  color: var(--medium-gray);
  line-height: 1.8;
}

.story-image {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  position: sticky;
  top: 100px;
}

.story-image img {
  width: 100%;
  height: auto;
  transition: transform var(--transition-slow);
}

.story-image:hover img {
  transform: scale(1.05);
}

/* Mission & Values Section */
.mission-values {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.mission-content h2 {
  text-align: center;
  margin-bottom: var(--spacing-lg);
  position: relative;
}

.mission-content h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.mission-statement {
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  margin-bottom: var(--spacing-xl);
  border-left: 4px solid var(--primary-color);
}

.mission-statement h3 {
  color: var(--primary-color);
  margin-bottom: var(--spacing-sm);
}

.mission-statement p {
  color: var(--medium-gray);
  line-height: 1.8;
  margin-bottom: 0;
}

.values-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--spacing-lg);
}

.value-card {
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
}

.value-card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-3d-hover);
}

.value-card h3 {
  color: var(--dark-color);
  margin-bottom: var(--spacing-sm);
}

.value-card p {
  color: var(--medium-gray);
  line-height: 1.7;
  margin-bottom: 0;
}

/* Our Team Section */
.our-team {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.our-team h2 {
  text-align: center;
  margin-bottom: var(--spacing-sm);
  position: relative;
}

.our-team h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.team-intro {
  text-align: center;
  max-width: 800px;
  margin: 0 auto var(--spacing-xl);
  color: var(--medium-gray);
  font-size: 1.1rem;
}

.team-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--spacing-lg);
}

.team-card {
  background-color: var(--off-white);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
}

.team-card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-3d-hover);
}

.team-image {
  width: 100%;
  height: 300px;
  overflow: hidden;
}

.team-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

.team-card:hover .team-image img {
  transform: scale(1.1);
}

.team-info {
  padding: var(--spacing-md);
}

.team-info h3 {
  color: var(--dark-color);
  margin-bottom: 0.25rem;
}

.team-info .position {
  color: var(--primary-color);
  font-weight: 600;
  font-size: 0.95rem;
  margin-bottom: var(--spacing-sm);
}

.team-info .bio {
  color: var(--medium-gray);
  line-height: 1.7;
  margin-bottom: 0;
}

/* Achievements Section */
.achievements {
  padding: var(--spacing-xl) 0;
  background: linear-gradient(135deg, #fcf6ff, #f0e6ff);
}

.achievements h2 {
  text-align: center;
  margin-bottom: var(--spacing-xl);
  position: relative;
}

.achievements h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.achievements-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--spacing-lg);
  margin-bottom: var(--spacing-xl);
}

.achievement-card {
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  text-align: center;
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
}

.achievement-card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-3d-hover);
}

.achievement-icon {
  width: 100px;
  height: 100px;
  margin: 0 auto var(--spacing-md);
  border-radius: var(--radius-full);
  overflow: hidden;
}

.achievement-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.achievement-card h3 {
  color: var(--dark-color);
  margin-bottom: var(--spacing-sm);
}

.achievement-card p {
  color: var(--medium-gray);
  line-height: 1.7;
  margin-bottom: 0;
}

.stats-container {
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  max-width: 900px;
  margin: 0 auto;
}

.stats-container h3 {
  text-align: center;
  color: var(--dark-color);
  margin-bottom: var(--spacing-md);
}

.stats-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.stats-list li {
  padding: var(--spacing-sm) 0;
  color: var(--medium-gray);
  font-size: 1.05rem;
  border-bottom: 1px solid var(--light-gray);
  display: flex;
  align-items: center;
}

.stats-list li:last-child {
  border-bottom: none;
}

.stats-list li:before {
  content: '✓';
  color: var(--primary-color);
  font-weight: bold;
  margin-right: var(--spacing-sm);
  font-size: 1.2rem;
}

.stats-list strong {
  color: var(--primary-color);
  font-weight: 700;
  margin-right: 0.5rem;
}

/* Testimonials Section */
.testimonials {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.testimonials h2 {
  text-align: center;
  margin-bottom: var(--spacing-xl);
  position: relative;
}

.testimonials h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: var(--spacing-lg);
}

.testimonial-card {
  background-color: var(--off-white);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
}

.testimonial-card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-3d-hover);
}

.testimonial-image {
  width: 120px;
  height: 120px;
  border-radius: var(--radius-full);
  overflow: hidden;
  margin-bottom: var(--spacing-md);
  border: 4px solid var(--white-color);
  box-shadow: var(--shadow-md);
}

.testimonial-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.testimonial-content {
  text-align: center;
}

.testimonial-content p {
  color: var(--medium-gray);
  line-height: 1.7;
  font-style: italic;
  margin-bottom: var(--spacing-md);
}

.testimonial-author h4 {
  color: var(--dark-color);
  margin-bottom: 0.25rem;
  font-size: 1.1rem;
}

.testimonial-author p {
  color: var(--primary-color);
  font-size: 0.9rem;
  margin-bottom: 0;
  font-style: normal;
}

/* Gallery Section */
.gallery {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.gallery h2 {
  text-align: center;
  margin-bottom: var(--spacing-sm);
  position: relative;
}

.gallery h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.gallery-intro {
  text-align: center;
  max-width: 800px;
  margin: 0 auto var(--spacing-xl);
  color: var(--medium-gray);
  font-size: 1.1rem;
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: var(--spacing-md);
}

.gallery-item {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
  height: 300px;
}

.gallery-item:hover {
  transform: scale(1.05);
  box-shadow: var(--shadow-3d-hover);
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

.gallery-item:hover img {
  transform: scale(1.1);
}

/* CTA Section */
.cta-section {
  padding: var(--spacing-xl) 0;
  background: var(--gradient-primary);
  color: var(--white-color);
}

.cta-content {
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}

.cta-content h2 {
  color: var(--white-color);
  margin-bottom: var(--spacing-md);
  font-size: 2.5rem;
}

.cta-content p {
  color: var(--white-color);
  font-size: 1.2rem;
  margin-bottom: var(--spacing-lg);
}

.cta-buttons {
  display: flex;
  gap: var(--spacing-md);
  justify-content: center;
  flex-wrap: wrap;
}

.cta-buttons .secondary-btn {
  background-color: var(--white-color);
  color: var(--primary-color);
  border: 2px solid var(--white-color);
}

.cta-buttons .secondary-btn:hover {
  background-color: transparent;
  color: var(--white-color);
  border-color: var(--white-color);
}

/* Responsive Styles */
@media (max-width: 992px) {
  .story-grid {
    grid-template-columns: 1fr;
  }
  
  .story-image {
    position: static;
  }
}

@media (max-width: 768px) {
  .testimonials-grid {
    grid-template-columns: 1fr;
  }
  
  .gallery-grid {
    grid-template-columns: 1fr;
  }
  
  .cta-buttons {
    flex-direction: column;
    align-items: center;
  }
  
  .cta-buttons .btn {
    width: 100%;
    max-width: 300px;
  }
}
/* Contact Banner Section */
.contact-banner {
  padding: var(--spacing-xl) 0;
  background: var(--gradient-primary);
  color: var(--white-color);
  text-align: center;
}

.page-title {
  color: var(--white-color);
  margin-bottom: var(--spacing-sm);
  font-size: 3rem;
}

.subtitle {
  color: var(--white-color);
  font-size: 1.2rem;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.7;
}

/* Contact Section */
.contact-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-xl);
}

.contact-info h2,
.contact-form-container h2 {
  margin-bottom: var(--spacing-lg);
  color: var(--dark-color);
}

.info-card {
  background-color: var(--white-color);
  padding: var(--spacing-md);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  margin-bottom: var(--spacing-md);
  border-left: 4px solid var(--primary-color);
  transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

.info-card:hover {
  transform: translateX(5px);
  box-shadow: var(--shadow-lg);
}

.info-card h3 {
  color: var(--primary-color);
  margin-bottom: var(--spacing-sm);
  font-size: 1.2rem;
}

.info-card p {
  color: var(--medium-gray);
  line-height: 1.7;
  margin-bottom: 0;
}

.info-card strong {
  color: var(--dark-color);
  display: inline-block;
  margin-top: var(--spacing-xs);
}

.contact-form-container {
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

/* Map Section */
.map-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--white-color);
}

.map-section h2 {
  text-align: center;
  margin-bottom: var(--spacing-lg);
  position: relative;
}

.map-section h2:after {
  content: '';
  display: block;
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  margin: var(--spacing-sm) auto 0;
  border-radius: var(--radius-full);
}

.map-container {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
}

.map-container iframe {
  display: block;
}

/* Additional Info Section */
.additional-info-section {
  padding: var(--spacing-xl) 0;
  background-color: var(--off-white);
}

.additional-info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--spacing-lg);
}

.info-box {
  background-color: var(--white-color);
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  transition: transform var(--transition-medium), box-shadow var(--transition-medium);
}

.info-box:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-3d-hover);
}

.info-box h3 {
  color: var(--primary-color);
  margin-bottom: var(--spacing-sm);
}

.info-box p {
  color: var(--medium-gray);
  line-height: 1.7;
  margin-bottom: 0;
}

/* Active Navigation Link */
.main-nav a.active {
  color: var(--primary-color);
}

.main-nav a.active:after {
  width: 100%;
}

/* Responsive Styles */
@media (max-width: 992px) {
  .contact-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }
}

@media (max-width: 768px) {
  .page-title {
    font-size: 2.5rem;
  }
  
  .subtitle {
    font-size: 1.1rem;
  }
  
  .additional-info-grid {
    grid-template-columns: 1fr;
  }
}