/*
Main CSS Entry Point - Imports Only
*/

/* Core Styles */
@import url('core/variables.css');
@import url('core/base.css');
@import url('core/layout.css');
@import url('core/animations.css');

/* Components */
@import url('components/buttons.css');
@import url('components/navigation.css');
@import url('components/cards.css');
@import url('components/forms.css');
@import url('components/modal.css');

/* Sections */
@import url('sections/hero.css');
@import url('sections/what-helps.css');
@import url('sections/combined-bg.css'); /* Styles for shared gradient/shape backgrounds */
@import url('sections/working-together.css');
@import url('sections/about.css');
@import url('sections/packages.css');
@import url('sections/for-you.css');
@import url('sections/testimonials.css');
@import url('sections/faq.css');
@import url('sections/newsletter.css');
@import url('sections/footer.css');

/* Note: Responsive styles that don't fit neatly into a section/component 
   or global overrides could go into a separate responsive.css, 
   but for now, they are kept within their respective files. */

/* ==========================================
   Mobile Overrides (Max-width: 768px)
   ========================================== */

@media (max-width: 768px) {

  /* Remove horizontal container padding on mobile (REMOVED) */
  /* 
  .container {
    padding-left: 0;
    padding-right: 0;
  } 
  */

  /* Apply Hero Container Padding to Packages & FAQ (REMOVED PADDING RULES)*/
  /* 
  .packages .container,
  .faq .container {
    padding-top: 80px; 
    padding-bottom: 60px; 
  } 
  */

  /* Disable Perspective/Tilt Effects on Mobile */

  /* General Cards (including feature cards) */
  .feature-card,
  .package,
  .for-you-card,
  .testimonial-card {
    perspective: none;
    transform: none !important; /* Use important to override potential specificity */
    transform-style: flat;
  }

  /* Specific hover/state effects */
  .feature-card:hover,
  .package:hover,
  .for-you-card:hover,
  .testimonial-card:hover {
    transform: none !important;
  }

  /* Testimonial Slider specific perspectives */
  .testimonial-slider {
    perspective: none;
  }
  .testimonial-slider .testimonial-card,
  .testimonial-slider .testimonial-card.is-active {
      transform: none !important;
  }

  /* About Section Image Frame */
  .about-image,
  .about-image .image-frame {
    perspective: none;
    transform: none !important;
  }

  /* Working Together Process Visual */
  .process-visual,
  .process-visual .process-step {
    perspective: none;
    transform: none !important;
  }

  /* Add any other elements identified with tilt if needed */

}

/* Core/Base Styles */

:root {
  /* Variables defined in core/variables.css */
}

html {
  box-sizing: border-box;
  scroll-behavior: smooth; /* Enable smooth scrolling */
}

*, *:before, *:after {
  box-sizing: inherit;
}

body {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: var(--line-height);
  color: var(--text-color);
  background-color: var(--white); /* Default light background */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden; /* Prevent horizontal scroll */
  cursor: default; /* Set default cursor */
}

/* Override cursor for interactive/text elements */
a,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
label[for] {
  cursor: pointer;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="url"],
textarea {
  cursor: text;
}

.faq-item, 
.modal-close,
.mobile-nav-toggle {
     cursor: pointer;
}


img {
  max-width: 100%;
  height: auto;
  display: block; /* Prevent extra space below images */
}