/*--------------------------------------------------------------
# Comprehensive Display Resolution Optimizations
--------------------------------------------------------------*/

/* 1280x800 (Landscape Laptop) */
@media (max-width: 1280px) and (max-height: 800px) {
  .hero-section {
    min-height: 80vh;
    padding: 60px 0;
  }

  .banner-text h2 {
    font-size: 2.8rem;
  }

  .fade-text h1 {
    font-size: 3.5rem;
  }

  .banner-text .banner-description {
    font-size: 1.1rem;
  }

  .sectors {
    padding: 60px 0;
  }

  .sector h2 {
    font-size: 2.2rem;
  }

  .about-homepage {
    padding: 60px 0;
  }

  .about-homepage h2 {
    font-size: 2.2rem;
  }

  .newsletter-section {
    padding: 60px 0;
  }

  .newsletter-section h2 {
    font-size: 2.2rem;
  }

  .footer {
    padding: 40px 0 20px 0;
  }
}

/* 1024x1366 (iPad Pro Portrait) */
@media (max-width: 1024px) and (max-height: 1366px) {
  .hero-section {
    min-height: 85vh;
    padding: 80px 0;
  }

  .banner-text h2 {
    font-size: 3.2rem;
  }

  .fade-text h1 {
    font-size: 4rem;
  }

  .banner-text .banner-description {
    font-size: 1.3rem;
  }

  .sectors {
    padding: 80px 0;
  }

  .sector h2 {
    font-size: 2.5rem;
  }

  .about-homepage {
    padding: 80px 0;
  }

  .about-homepage h2 {
    font-size: 2.5rem;
  }

  .newsletter-section {
    padding: 80px 0;
  }

  .newsletter-section h2 {
    font-size: 2.5rem;
  }

  .footer {
    padding: 60px 0 30px 0;
  }
}

/* 1024x600 (Small Laptop) */
@media (max-width: 1024px) and (max-height: 600px) {
  .hero-section {
    min-height: 70vh;
    padding: 40px 0;
  }

  .banner-text h2 {
    font-size: 2.5rem;
  }

  .fade-text h1 {
    font-size: 3rem;
  }

  .banner-text .banner-description {
    font-size: 1rem;
  }

  .sectors {
    padding: 40px 0;
  }

  .sector h2 {
    font-size: 2rem;
  }

  .about-homepage {
    padding: 40px 0;
  }

  .about-homepage h2 {
    font-size: 2rem;
  }

  .newsletter-section {
    padding: 40px 0;
  }

  .newsletter-section h2 {
    font-size: 2rem;
  }

  .footer {
    padding: 30px 0 15px 0;
  }
}

/* 912x1368 (iPad Air Portrait) */
@media (max-width: 912px) and (max-height: 1368px) {
  .hero-section {
    min-height: 80vh;
    padding: 70px 0;
  }

  .banner-text h2 {
    font-size: 3rem;
  }

  .fade-text h1 {
    font-size: 3.8rem;
  }

  .banner-text .banner-description {
    font-size: 1.2rem;
  }

  .sectors {
    padding: 70px 0;
  }

  .sector h2 {
    font-size: 2.3rem;
  }

  .about-homepage {
    padding: 70px 0;
  }

  .about-homepage h2 {
    font-size: 2.3rem;
  }

  .newsletter-section {
    padding: 70px 0;
  }

  .newsletter-section h2 {
    font-size: 2.3rem;
  }

  .footer {
    padding: 50px 0 25px 0;
  }
}

/* 853x1280 (iPad Mini Portrait) */
@media (max-width: 853px) and (max-height: 1280px) {
  .hero-section {
    min-height: 75vh;
    padding: 60px 0;
  }

  .banner-text h2 {
    font-size: 2.8rem;
  }

  .fade-text h1 {
    font-size: 3.5rem;
  }

  .banner-text .banner-description {
    font-size: 1.1rem;
  }

  .sectors {
    padding: 60px 0;
  }

  .sector h2 {
    font-size: 2.2rem;
  }

  .about-homepage {
    padding: 60px 0;
  }

  .about-homepage h2 {
    font-size: 2.2rem;
  }

  .newsletter-section {
    padding: 60px 0;
  }

  .newsletter-section h2 {
    font-size: 2.2rem;
  }

  .footer {
    padding: 40px 0 20px 0;
  }
}

/* 820x1180 (iPad Air Landscape) */
@media (max-width: 820px) and (max-height: 1180px) {
  .hero-section {
    min-height: 70vh;
    padding: 50px 0;
  }

  .banner-text h2 {
    font-size: 2.6rem;
  }

  .fade-text h1 {
    font-size: 3.2rem;
  }

  .banner-text .banner-description {
    font-size: 1rem;
  }

  .sectors {
    padding: 50px 0;
  }

  .sector h2 {
    font-size: 2rem;
  }

  .about-homepage {
    padding: 50px 0;
  }

  .about-homepage h2 {
    font-size: 2rem;
  }

  .newsletter-section {
    padding: 50px 0;
  }

  .newsletter-section h2 {
    font-size: 2rem;
  }

  .footer {
    padding: 35px 0 18px 0;
  }
}

/* 768x1024 (iPad Portrait) */
@media (max-width: 768px) and (max-height: 1024px) {
  .hero-section {
    min-height: 65vh;
    padding: 45px 0;
  }

  .banner-text h2 {
    font-size: 2.4rem;
  }

  .fade-text h1 {
    font-size: 3rem;
  }

  .banner-text .banner-description {
    font-size: 0.95rem;
  }

  .sectors {
    padding: 45px 0;
  }

  .sector h2 {
    font-size: 1.8rem;
  }

  .about-homepage {
    padding: 45px 0;
  }

  .about-homepage h2 {
    font-size: 1.8rem;
  }

  .newsletter-section {
    padding: 45px 0;
  }

  .newsletter-section h2 {
    font-size: 1.8rem;
  }

  .footer {
    padding: 30px 0 15px 0;
  }
}

/* 320x568 (iPhone SE) */
@media (max-width: 320px) and (max-height: 568px) {
  .hero-section {
    min-height: 60vh;
    padding: 30px 0;
  }

  .banner-text h2 {
    font-size: 1.8rem;
  }

  .fade-text h1 {
    font-size: 2.2rem;
  }

  .banner-text .banner-description {
    font-size: 0.85rem;
  }

  .sectors {
    padding: 30px 0;
  }

  .sector h2 {
    font-size: 1.5rem;
  }

  .about-homepage {
    padding: 30px 0;
  }

  .about-homepage h2 {
    font-size: 1.5rem;
  }

  .newsletter-section {
    padding: 30px 0;
  }

  .newsletter-section h2 {
    font-size: 1.5rem;
  }

  .footer {
    padding: 20px 0 10px 0;
  }

  .navmenu {
    padding: 10px 15px;
  }

  .navmenu .logo {
    font-size: 1.2rem;
  }

  .navmenu ul {
    gap: 15px;
  }

  .navmenu a {
    font-size: 0.8rem;
    padding: 8px 12px;
  }

  .project-base {
    padding: 8px 12px;
    font-size: 0.8rem;
  }
}

/*--------------------------------------------------------------
# Additional Responsive Optimizations for Specific Elements
--------------------------------------------------------------*/

/* Form Optimizations for Different Screen Sizes */
@media (max-width: 1024px) {
  .django-form {
    padding: 25px;
  }

  .form-control,
  .form-select,
  textarea.form-control {
    padding: 14px 16px;
    font-size: 0.9rem;
  }

  .btn-submit {
    padding: 14px 20px;
    font-size: 0.9rem;
  }
}

@media (max-width: 912px) {
  .django-form {
    padding: 20px;
  }

  .form-control,
  .form-select,
  textarea.form-control {
    padding: 12px 14px;
    font-size: 0.85rem;
  }

  .btn-submit {
    padding: 12px 18px;
    font-size: 0.85rem;
  }
}

@media (max-width: 820px) {
  .django-form {
    padding: 18px;
  }

  .form-control,
  .form-select,
  textarea.form-control {
    padding: 10px 12px;
    font-size: 0.8rem;
  }

  .btn-submit {
    padding: 10px 16px;
    font-size: 0.8rem;
  }
}

@media (max-width: 768px) {
  .django-form {
    padding: 15px;
  }

  .form-control,
  .form-select,
  textarea.form-control {
    padding: 8px 10px;
    font-size: 0.75rem;
  }

  .btn-submit {
    padding: 8px 14px;
    font-size: 0.75rem;
  }
}

/* Navigation Optimizations */
@media (max-width: 1024px) {
  .navmenu {
    padding: 15px 20px;
  }

  .navmenu .logo {
    font-size: 1.4rem;
  }

  .navmenu ul {
    gap: 20px;
  }

  .navmenu a {
    font-size: 0.9rem;
    padding: 10px 15px;
  }

  .project-base {
    padding: 10px 15px;
    font-size: 0.9rem;
  }
}

@media (max-width: 912px) {
  .navmenu {
    padding: 12px 18px;
  }

  .navmenu .logo {
    font-size: 1.3rem;
  }

  .navmenu ul {
    gap: 18px;
  }

  .navmenu a {
    font-size: 0.85rem;
    padding: 8px 12px;
  }

  .project-base {
    padding: 8px 12px;
    font-size: 0.85rem;
  }
}

@media (max-width: 820px) {
  .navmenu {
    padding: 10px 15px;
  }

  .navmenu .logo {
    font-size: 1.2rem;
  }

  .navmenu ul {
    gap: 15px;
  }

  .navmenu a {
    font-size: 0.8rem;
    padding: 6px 10px;
  }

  .project-base {
    padding: 6px 10px;
    font-size: 0.8rem;
  }
}

/* Footer Optimizations */
@media (max-width: 1024px) {
  .footer {
    padding: 40px 0 25px 0;
  }

  .footer h3 {
    font-size: 1.3rem;
  }

  .footer p,
  .footer a {
    font-size: 0.9rem;
  }
}

@media (max-width: 912px) {
  .footer {
    padding: 35px 0 20px 0;
  }

  .footer h3 {
    font-size: 1.2rem;
  }

  .footer p,
  .footer a {
    font-size: 0.85rem;
  }
}

@media (max-width: 820px) {
  .footer {
    padding: 30px 0 20px 0;
  }

  .footer h3 {
    font-size: 1.1rem;
  }

  .footer p,
  .footer a {
    font-size: 0.8rem;
  }
}

/* Service Page Optimizations */
@media (max-width: 1024px) {
  .service-details {
    padding: 40px 0;
  }

  .service-details h1 {
    font-size: 2.2rem;
  }

  .service-details h2 {
    font-size: 1.8rem;
  }

  .service-details p {
    font-size: 0.95rem;
  }
}

@media (max-width: 912px) {
  .service-details {
    padding: 35px 0;
  }

  .service-details h1 {
    font-size: 2rem;
  }

  .service-details h2 {
    font-size: 1.6rem;
  }

  .service-details p {
    font-size: 0.9rem;
  }
}

@media (max-width: 820px) {
  .service-details {
    padding: 30px 0;
  }

  .service-details h1 {
    font-size: 1.8rem;
  }

  .service-details h2 {
    font-size: 1.4rem;
  }

  .service-details p {
    font-size: 0.85rem;
  }
}

/* About Us Page Optimizations */
@media (max-width: 1024px) {
  .about-section {
    padding: 60px 0;
  }

  .about-section h1 {
    font-size: 2.5rem;
  }

  .about-section h2 {
    font-size: 2rem;
  }

  .about-section p {
    font-size: 0.95rem;
  }
}

@media (max-width: 912px) {
  .about-section {
    padding: 50px 0;
  }

  .about-section h1 {
    font-size: 2.2rem;
  }

  .about-section h2 {
    font-size: 1.8rem;
  }

  .about-section p {
    font-size: 0.9rem;
  }
}

@media (max-width: 820px) {
  .about-section {
    padding: 40px 0;
  }

  .about-section h1 {
    font-size: 2rem;
  }

  .about-section h2 {
    font-size: 1.6rem;
  }

  .about-section p {
    font-size: 0.85rem;
  }
}

/* Contact Page Optimizations */
@media (max-width: 1024px) {
  .contact-section {
    padding: 60px 0;
  }

  .contact-section h1 {
    font-size: 2.5rem;
  }

  .contact-address-card {
    padding: 25px;
  }

  .address-header h2 {
    font-size: 1.8rem;
  }

  .address-text p {
    font-size: 0.95rem;
  }
}

@media (max-width: 912px) {
  .contact-section {
    padding: 50px 0;
  }

  .contact-section h1 {
    font-size: 2.2rem;
  }

  .contact-address-card {
    padding: 20px;
  }

  .address-header h2 {
    font-size: 1.6rem;
  }

  .address-text p {
    font-size: 0.9rem;
  }
}

@media (max-width: 820px) {
  .contact-section {
    padding: 40px 0;
  }

  .contact-section h1 {
    font-size: 2rem;
  }

  .contact-address-card {
    padding: 18px;
  }

  .address-header h2 {
    font-size: 1.4rem;
  }

  .address-text p {
    font-size: 0.85rem;
  }
}

/* Stack Page Optimizations */
@media (max-width: 1024px) {
  .stack-page {
    padding: 60px 0;
  }

  .stack-page-header h1 {
    font-size: 2.2rem;
  }

  .stack-category h5 {
    font-size: 1.2rem;
  }

  .stack-technologies p {
    font-size: 0.95rem;
  }
}

@media (max-width: 912px) {
  .stack-page {
    padding: 50px 0;
  }

  .stack-page-header h1 {
    font-size: 2rem;
  }

  .stack-category h5 {
    font-size: 1.1rem;
  }

  .stack-technologies p {
    font-size: 0.9rem;
  }
}

@media (max-width: 820px) {
  .stack-page {
    padding: 40px 0;
  }

  .stack-page-header h1 {
    font-size: 1.8rem;
  }

  .stack-category h5 {
    font-size: 1rem;
  }

  .stack-technologies p {
    font-size: 0.85rem;
  }
}

/* Project Page Optimizations */
@media (max-width: 1024px) {
  .project-section {
    padding: 60px 0;
  }

  .project-message-card h2 {
    font-size: 1.6rem;
  }

  .form-input,
  .form-select,
  .form-textarea {
    padding: 16px 18px;
    font-size: 0.95rem;
  }

  .submit-button {
    padding: 16px 25px;
    font-size: 1rem;
  }
}

@media (max-width: 912px) {
  .project-section {
    padding: 50px 0;
  }

  .project-message-card h2 {
    font-size: 1.4rem;
  }

  .form-input,
  .form-select,
  .form-textarea {
    padding: 15px 16px;
    font-size: 0.9rem;
  }

  .submit-button {
    padding: 15px 20px;
    font-size: 0.95rem;
  }
}

@media (max-width: 820px) {
  .project-section {
    padding: 40px 0;
  }

  .project-message-card h2 {
    font-size: 1.3rem;
  }

  .form-input,
  .form-select,
  .form-textarea {
    padding: 14px 15px;
    font-size: 0.85rem;
  }

  .submit-button {
    padding: 14px 18px;
    font-size: 0.9rem;
  }
}

/* Values Section Optimizations */
@media (max-width: 1024px) {
  .values {
    padding: 60px 0;
  }

  .values .values-items h1 {
    font-size: 2.5rem;
  }

  .values-list-items h5 {
    font-size: 1.3rem;
  }

  .values-list-items p {
    font-size: 0.95rem;
  }
}

@media (max-width: 912px) {
  .values {
    padding: 50px 0;
  }

  .values .values-items h1 {
    font-size: 2.2rem;
  }

  .values-list-items h5 {
    font-size: 1.2rem;
  }

  .values-list-items p {
    font-size: 0.9rem;
  }
}

@media (max-width: 820px) {
  .values {
    padding: 40px 0;
  }

  .values .values-items h1 {
    font-size: 2rem;
  }

  .values-list-items h5 {
    font-size: 1.1rem;
  }

  .values-list-items p {
    font-size: 0.85rem;
  }
}

/* Extras Section Optimizations */
@media (max-width: 1024px) {
  .extras {
    padding: 25px;
  }

  .extras li span {
    font-size: 1.6rem;
  }

  .extras li p {
    font-size: 0.95rem;
  }
}

@media (max-width: 912px) {
  .extras {
    padding: 20px;
  }

  .extras li span {
    font-size: 1.4rem;
  }

  .extras li p {
    font-size: 0.9rem;
  }
}

@media (max-width: 820px) {
  .extras {
    padding: 18px;
  }

  .extras li span {
    font-size: 1.3rem;
  }

  .extras li p {
    font-size: 0.85rem;
  }
}

/* Responsive Optimizations for Various Screen Sizes */

/* 1280x800 (Landscape Laptop) */
@media (max-width: 1280px) and (max-height: 800px) {
  .hero-section {
    min-height: 80vh;
    padding: 60px 0;
  }
  .banner-text h2 {
    font-size: 2.8rem;
  }
  .fade-text h1 {
    font-size: 3.5rem;
  }
  .banner-text .banner-description {
    font-size: 1.1rem;
  }
  .sectors {
    padding: 60px 0;
  }
  .sector h2 {
    font-size: 2.2rem;
  }
  .about-homepage {
    padding: 60px 0;
  }
  .about-homepage h2 {
    font-size: 2.2rem;
  }
  .newsletter-section {
    padding: 60px 0;
  }
  .newsletter-section h2 {
    font-size: 2.2rem;
  }
  .footer {
    padding: 40px 0 20px 0;
  }
}

/* 1024x1366 (iPad Pro Portrait) */
@media (max-width: 1024px) and (max-height: 1366px) {
  .hero-section {
    min-height: 85vh;
    padding: 80px 0;
  }
  .banner-text h2 {
    font-size: 3.2rem;
  }
  .fade-text h1 {
    font-size: 4rem;
  }
  .banner-text .banner-description {
    font-size: 1.3rem;
  }
  .sectors {
    padding: 80px 0;
  }
  .sector h2 {
    font-size: 2.5rem;
  }
  .about-homepage {
    padding: 80px 0;
  }
  .about-homepage h2 {
    font-size: 2.5rem;
  }
  .newsletter-section {
    padding: 80px 0;
  }
  .newsletter-section h2 {
    font-size: 2.5rem;
  }
  .footer {
    padding: 60px 0 30px 0;
  }
}

/* 1024x600 (Small Laptop) */
@media (max-width: 1024px) and (max-height: 600px) {
  .hero-section {
    min-height: 70vh;
    padding: 40px 0;
  }
  .banner-text h2 {
    font-size: 2.5rem;
  }
  .fade-text h1 {
    font-size: 3rem;
  }
  .banner-text .banner-description {
    font-size: 1rem;
  }
  .sectors {
    padding: 40px 0;
  }
  .sector h2 {
    font-size: 2rem;
  }
  .about-homepage {
    padding: 40px 0;
  }
  .about-homepage h2 {
    font-size: 2rem;
  }
  .newsletter-section {
    padding: 40px 0;
  }
  .newsletter-section h2 {
    font-size: 2rem;
  }
  .footer {
    padding: 30px 0 15px 0;
  }
}

/* 912x1368 (iPad Air Portrait) */
@media (max-width: 912px) and (max-height: 1368px) {
  .hero-section {
    min-height: 80vh;
    padding: 70px 0;
  }
  .banner-text h2 {
    font-size: 3rem;
  }
  .fade-text h1 {
    font-size: 3.8rem;
  }
  .banner-text .banner-description {
    font-size: 1.2rem;
  }
  .sectors {
    padding: 70px 0;
  }
  .sector h2 {
    font-size: 2.3rem;
  }
  .about-homepage {
    padding: 70px 0;
  }
  .about-homepage h2 {
    font-size: 2.3rem;
  }
  .newsletter-section {
    padding: 70px 0;
  }
  .newsletter-section h2 {
    font-size: 2.3rem;
  }
  .footer {
    padding: 50px 0 25px 0;
  }
}

/* 853x1280 (iPad Mini Portrait) */
@media (max-width: 853px) and (max-height: 1280px) {
  .hero-section {
    min-height: 75vh;
    padding: 60px 0;
  }
  .banner-text h2 {
    font-size: 2.8rem;
  }
  .fade-text h1 {
    font-size: 3.5rem;
  }
  .banner-text .banner-description {
    font-size: 1.1rem;
  }
  .sectors {
    padding: 60px 0;
  }
  .sector h2 {
    font-size: 2.2rem;
  }
  .about-homepage {
    padding: 60px 0;
  }
  .about-homepage h2 {
    font-size: 2.2rem;
  }
  .newsletter-section {
    padding: 60px 0;
  }
  .newsletter-section h2 {
    font-size: 2.2rem;
  }
  .footer {
    padding: 40px 0 20px 0;
  }
}

/* 820x1180 (iPad Air Landscape) */
@media (max-width: 820px) and (max-height: 1180px) {
  .hero-section {
    min-height: 70vh;
    padding: 50px 0;
  }
  .banner-text h2 {
    font-size: 2.6rem;
  }
  .fade-text h1 {
    font-size: 3.2rem;
  }
  .banner-text .banner-description {
    font-size: 1rem;
  }
  .sectors {
    padding: 50px 0;
  }
  .sector h2 {
    font-size: 2rem;
  }
  .about-homepage {
    padding: 50px 0;
  }
  .about-homepage h2 {
    font-size: 2rem;
  }
  .newsletter-section {
    padding: 50px 0;
  }
  .newsletter-section h2 {
    font-size: 2rem;
  }
  .footer {
    padding: 35px 0 18px 0;
  }
}

/* 768x1024 (iPad Portrait) */
@media (max-width: 768px) and (max-height: 1024px) {
  .hero-section {
    min-height: 65vh;
    padding: 45px 0;
  }
  .banner-text h2 {
    font-size: 2.4rem;
  }
  .fade-text h1 {
    font-size: 3rem;
  }
  .banner-text .banner-description {
    font-size: 0.95rem;
  }
  .sectors {
    padding: 45px 0;
  }
  .sector h2 {
    font-size: 1.8rem;
  }
  .about-homepage {
    padding: 45px 0;
  }
  .about-homepage h2 {
    font-size: 1.8rem;
  }
  .newsletter-section {
    padding: 45px 0;
  }
  .newsletter-section h2 {
    font-size: 1.8rem;
  }
  .footer {
    padding: 30px 0 15px 0;
  }
}

/* 320x568 (iPhone SE) */
@media (max-width: 320px) and (max-height: 568px) {
  .hero-section {
    min-height: 60vh;
    padding: 30px 0;
  }
  .banner-text h2 {
    font-size: 1.8rem;
  }
  .fade-text h1 {
    font-size: 2.2rem;
  }
  .banner-text .banner-description {
    font-size: 0.85rem;
  }
  .sectors {
    padding: 30px 0;
  }
  .sector h2 {
    font-size: 1.5rem;
  }
  .about-homepage {
    padding: 30px 0;
  }
  .about-homepage h2 {
    font-size: 1.5rem;
  }
  .newsletter-section {
    padding: 30px 0;
  }
  .newsletter-section h2 {
    font-size: 1.5rem;
  }
  .footer {
    padding: 20px 0 10px 0;
  }
}

/* Mobile Breadcrumbs Auto-Adjustment */
@media (max-width: 767px) {
  /* Make breadcrumbs height auto-adjust based on content */
  .page-title {
    padding: 120px 0 60px 0 !important;
    min-height: auto !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .page-title .container {
    padding: 20px 15px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .page-title h1 {
    font-size: 2.2rem !important;
    line-height: 1.2 !important;
    margin-bottom: 15px !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    hyphens: auto !important;
  }

  .page-title p {
    font-size: 1rem !important;
    line-height: 1.5 !important;
    margin-bottom: 0 !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    hyphens: auto !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
  }

  /* Ensure rainbow snow animation doesn't interfere with content */
  .page-title .rainbow-snow-container {
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
  }

  /* Override fixed height for rainbow-snow-container on mobile */
  .rainbow-snow-container {
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
  }
}

/* Small Mobile Devices */
@media (max-width: 480px) {
  .page-title {
    padding: 100px 0 50px 0 !important;
  }

  .page-title h1 {
    font-size: 1.8rem !important;
    margin-bottom: 12px !important;
  }

  .page-title p {
    font-size: 0.9rem !important;
    line-height: 1.4 !important;
  }
}

/* Extra Small Mobile Devices */
@media (max-width: 375px) {
  .page-title {
    padding: 80px 0 40px 0 !important;
  }

  .page-title h1 {
    font-size: 1.6rem !important;
    margin-bottom: 10px !important;
  }

  .page-title p {
    font-size: 0.85rem !important;
    line-height: 1.3 !important;
  }
}

/* Landscape Mobile */
@media (max-width: 767px) and (orientation: landscape) {
  .page-title {
    padding: 80px 0 40px 0 !important;
  }

  .page-title h1 {
    font-size: 1.8rem !important;
    margin-bottom: 10px !important;
  }

  .page-title p {
    font-size: 0.9rem !important;
    line-height: 1.3 !important;
  }
}

/* High DPI Displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .page-title h1 {
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7) !important;
  }

  .page-title p {
    text-shadow: 0 1px 5px rgba(0, 0, 0, 0.7) !important;
  }
}

/* Touch Devices */
@media (hover: none) and (pointer: coarse) {
  .page-title {
    padding: 100px 0 50px 0 !important;
  }

  .page-title h1 {
    font-size: 2rem !important;
    margin-bottom: 15px !important;
  }

  .page-title p {
    font-size: 0.95rem !important;
    line-height: 1.4 !important;
  }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
  .page-title .rainbow-snow {
    animation: none !important;
  }

  .page-title .floating-particles .particle {
    animation: none !important;
  }
}
