/*
Theme Name: Gravity Projex 2025 
Theme URI: https://gravityprojex.com
Description: Custom Theme by Gravity Projex
Author: Gravity Projex
Author URI: https://gravityprojex.com
Version: 1.0.0
Template: Divi
/*

/**
 *     Gravity Projex - Intellectual Property (Framework,software,scripts,codes,and all other material)
 *     PROPRIETARY SOFTWARE LICENSE- GRAVITY PROJEX
 *     Copyright (c) 2025 Gravity Projex / Michelle Smith. 
 *     All Rights Reserved. 
 *     Business located in Australia.
 *
 *     This software and associated documentation files (the "Software") are proprietary 
 *     and confidential to Gravity Projex.The source code contained or described herein and all documents related
 *     to the source code ("Material") and website framework are owned by Gravity Projex or its
 *     licensors and authorised representatives. Title to the Material remains with Gravity Projex
 *     or its licensors and authorised representatives. The Material contains trade
 *     secrets and proprietary and confidential information of Gravity Projex or its
 *     licensors and authorised representatives. 
 *     
 *     RESTRICTIONS:
 *     1. You may NOT copy, modify, distribute, or sell copies of the Software or coding, scripts or framework
 *     2. You may NOT reverse engineer, decompile, or disassemble the Software or coding, scripts or framework
 *     3. You may NOT remove any proprietary notices or labels on the Software or coding, scripts or framework
 *     4. Unauthorized use may result in legal action and monetary damages

 *     The Material is protected by worldwide copyright
 *     and trade secret laws and treaty provisions. No part of the Material may
 *     be used, copied, reproduced, modified, published, uploaded, posted,
 *     transmitted, distributed, or disclosed in any way without Gravity Projex prior
 *     express written permission.
 *
 *     No license under any patent, copyright, trade secret or other intellectual
 *     property right is granted to or conferred upon you by disclosure or
 *     delivery of the Materials, either expressly, by implication, inducement,
 *     estoppel or otherwise. Any license under such intellectual property rights
 *     must be expressed and approved by Gravity Projex in writing.
 *     
 *     OWNERSHIP:
 *     The Software is owned by Gravity Projex and is protected by Australian copyright 
 *     laws and international treaty provisions.
 *     
 *     CONTACT:
 *     For licensing enquiries: admin@gravityprojex.com
 *     Website: https://gravityprojex.com
 *     
 *     VIOLATIONS:
 *     Unauthorized copying or use of this Software will result in:
 *     - Immediate cease and desist notice
 *     - Legal action under Australian Copyright Act 1968
 *     - Monetary damages and legal fees
 *     
 *     Last Updated: November 2025
 */
/*
===============================================
GRAVITY PROJEX - MOBILE-ONLY OPTIMIZATION
Desktop Layout: UNCHANGED
Mobile Optimization: Enhanced UX
===============================================
*/

/* ===================================
   MOBILE-ONLY IMPROVEMENTS
   Desktop remains exactly as before
   =================================== */

/* IMPORTANT: All changes ONLY apply to mobile devices (< 1024px) */

@media (max-width: 1023px) {
    
    /* ===================================
       MOBILE TYPOGRAPHY - Larger Text
       =================================== */
    
    html {
        font-size: 18px !important; /* Larger base text for mobile */
    }
    
    body {
        line-height: 1.7 !important;
    }
    
    /* Mobile headings */
    h1, .h1 {
        font-size: 38px !important;
        line-height: 1.1 !important;
        margin-bottom: 24px !important;
    }
    
    h2, .h2 {
        font-size: 32px !important;
        line-height: 1.2 !important;
        margin-bottom: 20px !important;
    }
    
    h3, .h3 {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-bottom: 16px !important;
    }
    
    h4, .h4 {
        font-size: 22px !important;
        line-height: 1.4 !important;
    }
    
    h5, .h5 {
        font-size: 19px !important;
    }
    
    /* Body text larger on mobile */
    p, li, td, dd, dt {
        font-size: 18px !important;
        line-height: 1.7 !important;
    }
    
    /* Lead/intro text */
    .lead,
    .intro-text {
        font-size: 20px !important;
        line-height: 1.8 !important;
    }
    
    /* ===================================
       MOBILE BUTTONS - Larger Touch Targets
       =================================== */
    
    button,
    .button,
    .btn,
    a.button,
    input[type="submit"],
    .wp-block-button__link {
        min-height: 56px !important;
        padding: 16px 32px !important;
        font-size: 19px !important;
        font-weight: 700 !important;
        width: 100% !important; /* Full width on mobile */
        display: block !important;
        text-align: center !important;
    }
    
    /* ===================================
       MOBILE FORMS - Comfortable Input
       =================================== */
    
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="url"],
    input[type="password"],
    input[type="search"],
    input[type="number"],
    textarea,
    select {
        min-height: 56px !important;
        padding: 16px !important;
        font-size: 18px !important;
        width: 100% !important;
    }
    
    textarea {
        min-height: 160px !important;
    }
    
    /* Form labels */
    label {
        font-size: 18px !important;
        margin-bottom: 8px !important;
        display: block !important;
    }
    
    /* ===================================
       MOBILE NAVIGATION - Vertical Stack
       =================================== */
    
    .main-navigation ul li {
        border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    }
    
    .main-navigation ul li a {
        padding: 18px 24px !important;
        font-size: 19px !important;
        min-height: 56px !important;
        display: flex !important;
        align-items: center !important;
    }
    
    /* Mobile menu toggle */
    .menu-toggle,
    .mobile-menu-toggle {
        min-height: 56px !important;
        min-width: 56px !important;
        font-size: 28px !important;
    }
    
    /* ===================================
       MOBILE HERO SECTION
       =================================== */
    
    .hero-section,
    .page-header {
        padding: 64px 24px !important;
        text-align: center !important;
    }
    
    .hero-title {
        font-size: 44px !important;
        margin-bottom: 20px !important;
    }
    
    .hero-subtitle {
        font-size: 19px !important;
        margin-bottom: 32px !important;
    }
    
    /* ===================================
       MOBILE SERVICES SECTION
       =================================== */
    
    /* Single column services on mobile */
    .services-grid,
    .features-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    /* Service cards */
    .service-card,
    .feature-card {
        padding: 32px 24px !important;
    }
    
    .service-icon,
    .feature-icon {
        font-size: 56px !important;
        margin-bottom: 20px !important;
    }
    
    .service-title,
    .feature-title {
        font-size: 26px !important;
        margin-bottom: 16px !important;
    }
    
    .service-description,
    .feature-description {
        font-size: 18px !important;
    }
    
    /* ===================================
       MOBILE PRICING PACKAGES
       =================================== */
    
    /* Single column pricing on mobile */
    .pricing-grid,
    .packages-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    /* Pricing cards */
    .pricing-card,
    .package-card {
        padding: 32px 24px !important;
    }
    
    .package-name,
    .pricing-name {
        font-size: 26px !important;
        margin-bottom: 16px !important;
    }
    
    .package-price,
    .pricing-price {
        font-size: 44px !important;
        margin-bottom: 20px !important;
    }
    
    .package-features li,
    .pricing-features li {
        font-size: 18px !important;
        padding: 14px 0 !important;
    }
    
    /* ===================================
       MOBILE ABOUT SECTION
       =================================== */
    
    /* Stack about content on mobile */
    .about-section,
    .content-with-image {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    .content-block {
        padding: 24px !important;
    }
    
    /* ===================================
       MOBILE NEWS/BLOG GRID
       =================================== */
    
    /* Single column blog on mobile */
    .news-grid,
    .blog-grid,
    .posts-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    /* Post cards */
    .post-card,
    .news-card {
        padding: 24px !important;
    }
    
    .post-title,
    .news-title {
        font-size: 22px !important;
        margin-bottom: 12px !important;
    }
    
    .post-content,
    .news-content {
        padding: 24px !important;
    }
    
    /* ===================================
       MOBILE CONTACT PAGE
       =================================== */
    
    /* Contact info stack on mobile */
    .contact-info {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    .contact-card {
        padding: 32px 24px !important;
    }
    
    .contact-card-icon {
        font-size: 48px !important;
    }
    
    .contact-card-title {
        font-size: 22px !important;
    }
    
    /* ===================================
       MOBILE FOOTER
       =================================== */
    
    .site-footer {
        padding: 48px 24px !important;
    }
    
    /* Footer widgets stack on mobile */
    .footer-widgets {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    .footer-widget h3 {
        font-size: 20px !important;
    }
    
    /* Social icons */
    .social-links a,
    .social-icons a {
        width: 56px !important;
        height: 56px !important;
        font-size: 24px !important;
    }
    
    /* ===================================
       MOBILE SPACING - More Room
       =================================== */
    
    /* Section spacing */
    section,
    .content-section {
        padding: 48px 24px !important;
        margin-bottom: 32px !important;
    }
    
    /* Content blocks */
    .entry-content,
    .page-content {
        padding: 0 24px !important;
    }
    
    /* ===================================
       MOBILE IMAGES - Responsive
       =================================== */
    
    img {
        max-width: 100% !important;
        height: auto !important;
    }
    
    /* ===================================
       MOBILE TABLES - Scrollable
       =================================== */
    
    table {
        display: block !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }
    
    th, td {
        padding: 14px !important;
        font-size: 16px !important;
    }
    
    /* ===================================
       MOBILE LISTS
       =================================== */
    
    ul, ol {
        padding-left: 32px !important;
        margin-bottom: 24px !important;
    }
    
    li {
        margin-bottom: 12px !important;
        line-height: 1.7 !important;
    }

} /* End mobile-only media query */

/* ===================================
   TABLET OPTIMIZATION (768-1023px)
   =================================== */

@media (min-width: 768px) and (max-width: 1023px) {
    
    /* 2 column layout on tablet */
    .services-grid,
    .pricing-grid,
    .news-grid,
    .contact-info {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    /* Buttons not full width on tablet */
    button,
    .button,
    input[type="submit"] {
        width: auto !important;
        min-width: 200px !important;
        display: inline-block !important;
    }
    
    /* Footer 2 columns */
    .footer-widgets {
        grid-template-columns: repeat(2, 1fr) !important;
    }

}

/* ===================================
   ACCESSIBILITY - All Devices
   =================================== */

/* Better focus indicators */
*:focus-visible {
    outline: 3px solid currentColor !important;
    outline-offset: 3px !important;
}

/* ===================================
   iOS SAFE AREA - Mobile Only
   =================================== */

@media (max-width: 1023px) {
    @supports (padding: max(0px)) {
        body {
            padding-bottom: max(env(safe-area-inset-bottom), 0px) !important;
        }
    }
    
    /* Prevent overscroll bounce */
    body {
        overscroll-behavior-y: contain !important;
    }
}

/* ===================================
   PRINT STYLES - All Devices
   =================================== */

@media print {
    .site-header,
    .site-footer,
    .main-navigation,
    button,
    .button,
    .social-links {
        display: none !important;
    }
    
    * {
        background: white !important;
        color: black !important;
    }
}




