/* ==========================================================================
   Home Page & Global Responsive Styles
   ========================================================================== */

@media only screen and (max-width: 1600px) {}

@media only screen and (max-width: 1400px) {

    .hero-title {
        font-size: 64px;
    }
}

@media only screen and (max-width: 1300px) {

    .hero-title {
        font-size: 58px;
    }

}

@media only screen and (max-width: 1250px) {

    .card-lead,
    .card-data {
        left: 300px;
    }

    .card-brand,
    .card-system {
        left: -15px;
    }

}


@media only screen and (max-width: 1200px) {

    /* Who We Are */
    .who-we-are-container {
        padding: 0 20px;
        gap: 30px;
    }

    .who-we-are-content h2.section-title {
        font-size: 40px;
    }

    .who-we-are-graphic {
        transform: scale(0.9);
        transform-origin: left center;
    }

    .exact-content-area {
        max-width: 900px;
    }
}

@media only screen and (max-width: 1150px) {
    .who-we-are-content {
        flex: 0 0 45%;
        padding-right: 0;
    }

    .who-we-are-graphic {
        flex: 0 0 55%;
        transform: scale(0.8);
        transform-origin: left center;
    }

    /* Services Section */
    .service-row-item {
        flex-wrap: wrap;
        gap: 20px;
    }

    .service-row-excerpt {
        padding: 0;
        max-width: 100%;
        width: 100%;
        flex: 0 0 100%;
        margin-top: 15px;
        order: 3;
    }
}

@media only screen and (max-width: 1054px) {
    .hero-bg-graphic {
        object-position: calc(85% + 100px) center;
    }

    .wwd-hero-section {
        padding: 150px 0 50px;
    }

    .alturaitz-contact-area {
        padding-top: 150px;
    }

    .premium-cta-right p {
        max-width: 400px;
    }

}

@media only screen and (max-width: 992px) {

    .hero-container {
        flex-direction: column;
        padding-top: 140px;
        padding-bottom: 60px;
        gap: 40px;
        text-align: center;
    }

    .hero-content-left {
        width: 100%;
        max-width: 100%;
    }

    .hero-title {
        font-size: 64px;
        margin: 0 auto 20px;
    }

    .hero-actions {
        justify-content: center;
    }

    /* Who We Are Section */
    .who-we-are-container {
        flex-direction: column;
        text-align: center;
        gap: 60px;
    }

    .who-we-are-content {
        flex: 0 0 100%;
        width: 100%;
    }

    .who-we-are-content .btn-link {
        margin: 20px auto 0;
    }

    /* Fix for Who We Are Graphic - Use zoom for perfect proportional scaling */
    .who-we-are-graphic {
        flex: 0 0 100%;
        width: 100%;
        max-width: 650px;
        margin: 0 auto;
        min-height: 550px;
        justify-content: center;
        transform: scale(0.9);
        transform-origin: center center;
    }

    .card-brand,
    .card-system {
        left: 40px;
    }

    .card-lead,
    .card-data {
        left: 360px;
    }

    .globe-graphic {
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        max-width: 600px;
    }


    /* Why Choose Us - Exact Section */
    .exact-why-choose-us .services-header {
        margin-bottom: 50px;
    }

    .exact-content-area {
        flex-direction: column;
        gap: 0;
    }

    .exact-left-column,
    .exact-right-column {
        width: 100%;
        gap: 40px;
        align-items: center;
    }

    .exact-feature-item {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }

    .exact-feature-header.exact-right-header {
        flex-direction: row;
    }

    .exact-feature-content.exact-text-right {
        text-align: center;
    }

    .exact-center-logo {
        margin: 40px 0;
    }

    .exact-bottom-row {
        margin-top: 60px;
    }

    /* Journal Grid */
    .journal-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .journal-grid>a:nth-child(2) {
        transform: none;
    }

    .journal-grid>a.testimonial-blog-card:nth-child(2):hover {
        transform: translateY(-5px);
    }

    .exact-feature-desc {
        margin: auto;
    }

    /* What We Do Page */
    .wwd-hero-container {
        flex-direction: column;
        text-align: center;
        gap: 40px;
    }

    .wwd-hero-content {
        max-width: 100%;
    }

    .wwd-highlight-box {
        display: inline-block;
        padding-top: 15px;
    }

    .journal-grid {
        margin-top: 50px;
    }

    .wwd-hero-graphic {
        zoom: 0.85;
    }

    /* Services Section */
    .service-row-item {
        flex-wrap: wrap;
        gap: 20px;
    }

    .service-row-excerpt {
        padding: 0;
        max-width: 100%;
        width: 100%;
        flex: 0 0 100%;
        margin-top: 15px;
        order: 3;
    }

    .service-row-arrow {
        display: none !important;
    }

    /* How We Work Section */
    .process-timeline-item {
        justify-content: center !important;
        margin-bottom: 50px;
    }

    .process-timeline-card {
        width: 100%;
        max-width: 600px;
        padding: 40px;
        margin: 0 auto;
    }

    .timeline-curve {
        display: none !important;
    }

    .floating-menu ul li a {
        font-size: 13px;
    }

    .floating-menu ul {
        gap: 12px;
    }

    .floating-contact-btn {
        margin-left: 0px;
    }

    .exact-number-circle {
        display: none;
    }

    .wwa-reveal-list {
        max-width: 500px;
    }


    .wwa-hero {
        background-position: right 21% center;
    }
}

@media only screen and (max-width: 768px) {

    /* Hero Section */
    .hero-title {
        font-size: 58px;
    }

    .hero-actions {
        flex-direction: column;
        gap: 20px;
        align-items: center;
    }

    .hero-bg-graphic {
        object-position: center;
    }

    .who-we-are-section {
        margin: 50px 0 0px;
    }

    .exact-number-circle {
        display: none;
    }


    .golden-eagle-img {
        max-width: 350px;
    }

    /* What We Do Page */
    .wwd-title {
        font-size: 40px;
    }

    .services-title {
        font-size: 38px;
    }

    .process-card-title {
        font-size: 24px;
    }

    .wwd-hero-graphic {
        zoom: 0.7;
    }

    .premium-services-section {
        padding: 60px 0;
    }

    .service-row-number {
        width: 50px;
    }

    .service-row-title-area h3 {
        font-size: 22px;
    }

    .service-list-title {
        font-size: 36px;
    }

    .header-container-floating {
        gap: 15px;
    }

    .bottom-floating-header {
        top: 15px;
        bottom: auto;
    }

    .offcanvas-sidebar {
        padding: 30px 25px;
        width: 100%;
        max-width: calc(100vw - 30px);
        right: 15px;
        top: 80px;
        bottom: auto;
        transform-origin: top right;
        transform: translateY(-60px) scale(0.3);
    }

    .floating-menu,
    .floating-contact-btn {
        display: none !important;
    }

    .right-capsule {
        padding: 5px;
    }

    .floating-menu ul {
        gap: 10px;
    }

    .floating-contact-btn {
        padding: 8px 16px;
        font-size: 12px;
    }

    .single-post-hero {
        padding: 150px 15px 50px;
    }

    .single-post-page-wrapper {
        padding: 30px 15px 0px;
    }

    .post-meta-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .post-navigation-links {
        flex-direction: column;
        gap: 20px;
    }

    .nav-next {
        text-align: left;
        margin-left: 0;
    }

    .post-quote {
        padding: 20px;
        flex-direction: column;
        gap: 10px;
    }

    .post-quote::before {
        font-size: 40px;
    }

    .story-quote {
        padding: 30px 20px;
        margin: 30px 0 40px 0;
    }

    .story-quote h2 {
        font-size: 22px;
    }

    .post-tags-container {
        flex-direction: column;
        align-items: flex-start;
    }

    .wwa-hero-desc {
        max-width: 300px;
        margin: 0 auto 20px;
    }

}

@media only screen and (max-width: 700px) {

    /* Services Grid */
    .services-grid-3d {
        gap: 25px;
    }

    .service-card-3d {
        flex: 0 0 calc(100% - 15px);
        max-width: calc(100% - 15px);
        padding-top: 60px;
    }

    .wwa-hero-actions {
        margin-bottom: 0px;
    }

    .premium-bottom-bar {
        margin-top: 25px;
    }

    .premium-footer-columns {
        gap: 30px;
    }

    .story-card {
        background: #fff;
        border-radius: 0;
        padding: 0px;
        box-shadow: none;
        border: none;
    }

    .premium-site-footer {
        padding: 50px 0 2%;
    }

    .exact-feature-title {
        font-size: 22px;
        line-height: 28px;
        max-width: 300px;
    }

    .contact-action-link,
    .text-wrap,
    .premium-footer-links a {
        font-size: 16px;
    }

    .premium-social-dock {
        flex-wrap: wrap;
        row-gap: 15px;
        justify-content: flex-start;
        /* Or center if preferred */
    }

    /* Journal Grid */
    .journal-grid {
        grid-template-columns: 1fr;
    }

    .alt-form-subtitle {
        padding: 0 10px;
    }

}

@media only screen and (max-width: 550px) {

    /* Hero */
    .hero-title {
        font-size: 38px;
    }

    .hero-description {
        font-size: 16px;
        padding: 0 10px;
    }

    /* Graphic Elements - Unified Zooming */
    .who-we-are-graphic {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        zoom: normal;
        transform: none;
        min-height: auto;
        padding: 0;
        position: relative;
        width: 100%;
        margin-top: 0px;
    }

    .who-we-are-graphic .globe-graphic {
        position: relative;
        transform: none;
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        object-fit: cover;
        margin-bottom: 0px;
        z-index: 0;
        opacity: 1;
        border-radius: 0px;
    }

    .wwa-glass-card:hover {
        box-shadow: none;
    }


    .who-we-are-graphic .connecting-lines {
        display: none;
    }

    /* Typography Overrides */
    h2.section-title,
    .services-title {
        font-size: 32px;
    }

    .contact-hero-title {
        font-size: 48px;
        margin-bottom: 20px;
    }

    .exact-center-logo {
        transform: scale(0.8);
    }

    .section-description {
        margin-bottom: 0px;
    }

    /* What We Do Page */
    .wwd-title {
        font-size: 32px;
    }

    .wwd-desc {
        font-size: 16px;
    }

    .services-title {
        font-size: 30px;
    }

    .wwd-hero-graphic {
        zoom: 0.55;
    }

    .process-timeline-card {
        padding: 30px 20px;
    }

    .process-card-title {
        font-size: 20px;
    }

    .service-row-title-area h3 {
        font-size: 20px;
    }

    .simple-map-link img {
        height: 260px;
        object-fit: cover;
    }

    .alt-form-nav {
        flex-wrap: wrap;
        gap: 20px;
    }

    .alt-choice-list input[type="radio"],
    .alt-checkbox-grid input[type="checkbox"] {
        min-width: 20px;
    }

    .journal-section {
        padding: 50px 0 20px;
    }

    .globe-graphic {
        max-width: 1000px;
    }

    .service-row-item:hover {
        padding-left: 0px;
        padding-right: 0px;
    }

    .service-row-item {
        display: grid;
    }

    .service-list-title {
        margin-bottom: 10px;
    }

    .split-description-bottom {
        margin-top: 20px !important;
    }

    .privacy-policy-content {
        margin: 0 0px !important;
    }

    .who-we-are-container {
        gap: 31px;
    }

    .wwa-glass-card {
        width: 92%;
        max-width: 360px;
        position: relative;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        margin: 0;
        transform: none !important;
        z-index: 1;
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        text-align: left;
        padding: 16px 24px 16px 16px;
        background: rgb(184 147 69 / 6%);
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        border: none;
        box-shadow: none;
        border-radius: 20px;
    }

    /* Stagger the cards slightly like the timeline in the image */
    .wwa-glass-card:nth-of-type(1) {
        transform: translateX(-10px) !important;
    }

    .wwa-glass-card:nth-of-type(2) {
        transform: translateX(10px) !important;
    }

    .wwa-glass-card:nth-of-type(3) {
        transform: translateX(-10px) !important;
    }

    .wwa-glass-card:nth-of-type(4) {
        transform: translateX(10px) !important;
    }

    .wwa-card-icon {
        width: 55px;
        height: 55px;
        margin: 0 20px 0 0;
        flex-shrink: 0;
        background: linear-gradient(135deg, #f9f8f4 0%, #E8E5DA 100%) !important;
        border: none;
        box-shadow: inset 0 2px 6px rgba(255, 255, 255, 0.9) !important;
        border-radius: 16px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .wwa-card-icon .icon-circle svg {
        width: 24px;
        height: 24px;
        stroke: var(--primary-teal) !important;
    }

    .wwa-card-text {
        text-align: left;
    }

    .wwa-card-text span {
        font-size: 22px;
        font-weight: 800;
        display: inline-block;
        margin: 2px 0;
        color: #1a1a1a !important;
        text-shadow: none;
        letter-spacing: -0.5px;
    }

    .wwa-card-text strong {
        font-size: 13px;
        line-height: 1.5;
        color: #888888 !important;
        text-shadow: none;
        font-weight: 500;
    }

    .wwd-hero-container {
        padding: 0 20px;
    }

    .wwd-hero-section {
        padding: 150px 0 0px;
    }

    .services-list-wrapper {
        margin-top: 40px;
    }

    .wwa-ethos {
        padding: 0px 0 50px;
    }

    .wwa-ethos-grid {
        margin-top: 40px;
    }

    .archive-blog-list-section {
        padding: 40px 0 0;
    }

    .archive-services-container {
        padding: 0 20px;
    }

    .wwa-reveal-list {
        margin: 30px auto 0;
    }

    .wwa-commitment-desc {
        font-size: 18px;
    }

    .wwa-cursive-text {
        font-size: 24px;
    }

    .wwa-ethos-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .exact-bottom-row {
        margin-top: 40px;
    }

}

@media only screen and (max-width: 400px) {
    .hero-title {
        font-size: 34px;
    }

    /* Graphic Elements - Unified Zooming */
    .who-we-are-graphic {
        zoom: normal;
    }

    .wwa-title {
        font-size: 38px;
    }

    .wwa-card-icon {
        margin: 0 0px 0 0;
    }

    .wwa-glass-card {
        width: 98%;
    }
}

@media only screen and (max-width: 360px) {}