/* ====================================
   INMOBICAR - Responsive Design
   Mobile-first approach
==================================== */

/* ====================================
   TABLET STYLES (768px and down)
==================================== */
@media (max-width: 768px) {
    
    /* Base adjustments */
    .container {
        padding: 0 var(--spacing-base);
    }
    
    .section-title {
        font-size: var(--font-size-2xl);
        margin-bottom: var(--spacing-xl);
    }
    
    /* Header */
    .header-content {
        flex-direction: column;
        gap: var(--spacing-base);
        text-align: center;
    }
    
    .nav {
        order: 3;
        width: 100%;
        justify-content: center;
    }
    
    .header-contact {
        order: 2;
    }
    
    /* Hero Section */
    .hero {
        padding: var(--spacing-2xl) 0;
    }
    
    .hero-content {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
        text-align: center;
    }
    
    .hero-title {
        font-size: var(--font-size-3xl);
    }
    
    .hero-subtitle {
        font-size: var(--font-size-lg);
    }
    
    .hero-highlights {
        grid-template-columns: 1fr 1fr;
        gap: var(--spacing-sm);
    }
    
    .highlight-item {
        padding: var(--spacing-sm);
        font-size: var(--font-size-sm);
        flex-direction: column;
        text-align: center;
        gap: var(--spacing-xs);
    }
    
    .price-badge {
        flex-direction: column;
        gap: var(--spacing-sm);
    }
    
    .price-badge .price {
        font-size: var(--font-size-3xl);
    }
    
    /* Form */
    .form-card {
        padding: var(--spacing-xl);
    }
    
    .form-title {
        font-size: var(--font-size-xl);
    }
    
    /* Benefits */
    .benefits {
        padding: var(--spacing-2xl) 0;
    }
    
    .benefits-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
    
    .benefit-item {
        padding: var(--spacing-xl);
    }
    
    .benefit-icon {
        width: 60px;
        height: 60px;
        font-size: var(--font-size-xl);
    }
    
    /* CTA Section */
    .cta-section {
        padding: var(--spacing-2xl) 0;
    }
    
    .cta-content h3 {
        font-size: var(--font-size-2xl);
    }
    
    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }
    
    .btn-primary,
    .btn-secondary,
    .btn-outline,
    .cta-button {
        width: 100%;
        max-width: 300px;
        justify-content: center;
    }
    
    /* Property Header */
    .property-title-section {
        grid-template-columns: 1fr;
        text-align: center;
        gap: var(--spacing-lg);
    }
    
    .property-title {
        font-size: var(--font-size-2xl);
    }
    
    .price-section {
        text-align: center;
    }
    
    .main-price {
        font-size: var(--font-size-3xl);
    }
    
    /* Property Gallery */
    .gallery-container {
        grid-template-columns: 1fr;
        gap: var(--spacing-base);
    }
    
    .main-image img {
        height: 300px;
    }
    
    .thumbnail-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .thumbnail-grid img {
        height: 80px;
    }
    
    /* Property Details */
    .property-details {
        padding: var(--spacing-2xl) 0;
    }
    
    .details-card {
        padding: var(--spacing-xl);
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .feature-item {
        padding: var(--spacing-sm);
    }
    
    .feature-item i {
        width: 35px;
        height: 35px;
    }
    
    /* Investment Analysis */
    .investment-content {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /* Location */
    .location-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .map-container {
        height: 250px;
    }
    
    /* Testimonials */
    .testimonials-hero {
        padding: var(--spacing-2xl) 0;
    }
    
    .page-title {
        font-size: var(--font-size-3xl);
    }
    
    .page-subtitle {
        font-size: var(--font-size-lg);
    }
    
    .rating-summary {
        flex-direction: column;
        gap: var(--spacing-base);
    }
    
    .trust-badges {
        padding: var(--spacing-2xl) 0;
    }
    
    .badges-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .badge-item {
        padding: var(--spacing-lg);
    }
    
    .badge-icon {
        width: 60px;
        height: 60px;
        font-size: var(--font-size-xl);
    }
    
    .testimonials-section {
        padding: var(--spacing-2xl) 0;
    }
    
    .testimonials-grid {
        grid-template-columns: 1fr;
    }
    
    .testimonial-card {
        padding: var(--spacing-lg);
    }
    
    /* Process */
    .process-section {
        padding: var(--spacing-2xl) 0;
    }
    
    .process-grid {
        grid-template-columns: 1fr;
    }
    
    .process-step {
        padding: var(--spacing-lg);
    }
    
    .step-number {
        width: 50px;
        height: 50px;
        font-size: var(--font-size-lg);
    }
    
    /* Contact */
    .contact-hero {
        padding: var(--spacing-2xl) 0;
    }
    
    .contact-highlights {
        flex-direction: column;
        gap: var(--spacing-base);
    }
    
    .contact-methods {
        padding: var(--spacing-2xl) 0;
    }
    
    .methods-grid {
        grid-template-columns: 1fr;
    }
    
    .method-card {
        padding: var(--spacing-lg);
    }
    
    .method-icon {
        width: 60px;
        height: 60px;
        font-size: var(--font-size-xl);
    }
    
    /* Booking */
    .booking-section {
        padding: var(--spacing-2xl) 0;
    }
    
    .booking-content {
        grid-template-columns: 1fr;
        gap: var(--spacing-2xl);
    }
    
    .booking-form-container {
        padding: var(--spacing-lg);
    }
    
    .form-row {
        grid-template-columns: 1fr;
    }
    
    /* FAQ */
    .faq-section {
        padding: var(--spacing-2xl) 0;
    }
    
    .faq-grid {
        grid-template-columns: 1fr;
    }
    
    .faq-item {
        padding: var(--spacing-lg);
    }
    
    /* Contact Info */
    .contact-info-section {
        padding: var(--spacing-2xl) 0;
    }
    
    .contact-info-grid {
        grid-template-columns: 1fr;
    }
    
    .info-card {
        padding: var(--spacing-lg);
    }
    
    /* Footer */
    .footer {
        padding: var(--spacing-xl) 0;
    }
    
    .footer-content {
        flex-direction: column;
        text-align: center;
        gap: var(--spacing-base);
    }
}

/* ====================================
   MOBILE STYLES (480px and down)
==================================== */
@media (max-width: 480px) {
    
    /* Base adjustments */
    :root {
        --font-size-xs: 0.7rem;        /* 11px */
        --font-size-sm: 0.8rem;        /* 13px */
        --font-size-base: 0.9rem;      /* 14px */
        --font-size-lg: 1rem;          /* 16px */
        --font-size-xl: 1.1rem;        /* 18px */
        --font-size-2xl: 1.3rem;       /* 21px */
        --font-size-3xl: 1.6rem;       /* 26px */
        --font-size-4xl: 1.9rem;       /* 30px */
        --font-size-5xl: 2.2rem;       /* 35px */
    }
    
    .container {
        padding: 0 25px;
    }
    
    /* Header */
    .logo h1 {
        font-size: var(--font-size-xl);
    }
    
    .nav {
        gap: var(--spacing-base);
        flex-wrap: wrap;
    }
    
    .nav a {
        font-size: var(--font-size-sm);
    }
    
    .header-contact .phone {
        padding: var(--spacing-xs) var(--spacing-sm);
        font-size: var(--font-size-sm);
    }
    
    /* Hero Section */
    .hero-title {
        font-size: var(--font-size-2xl);
        line-height: 1.2;
    }
    
    .hero-subtitle {
        font-size: var(--font-size-base);
    }
    
    .hero-highlights {
        grid-template-columns: 1fr;
    }
    
    .highlight-item {
        padding: var(--spacing-xs);
        font-size: var(--font-size-xs);
    }
    
    .price-badge .price {
        font-size: var(--font-size-2xl);
    }
    
    /* Form */
    .form-card {
        padding: var(--spacing-base);
        border-radius: var(--radius-lg);
    }
    
    .form-title {
        font-size: var(--font-size-lg);
    }
    
    .form-subtitle {
        font-size: var(--font-size-sm);
    }
    
    .form-group input,
    .form-group select,
    .form-group textarea {
        padding: var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 2.5rem;
        font-size: var(--font-size-sm);
    }
    
    .form-group i {
        left: var(--spacing-sm);
        font-size: var(--font-size-base);
    }
    
    .btn-primary,
    .btn-secondary,
    .btn-outline,
    .cta-button {
        padding: var(--spacing-sm) var(--spacing-base);
        font-size: var(--font-size-sm);
        min-height: 44px;
    }
    
    /* Benefits */
    .benefit-item {
        padding: var(--spacing-base);
    }
    
    .benefit-icon {
        width: 50px;
        height: 50px;
        font-size: var(--font-size-lg);
    }
    
    .benefit-item h4 {
        font-size: var(--font-size-lg);
    }
    
    .benefit-item p {
        font-size: var(--font-size-sm);
    }
    
    /* Property */
    .property-title {
        font-size: var(--font-size-xl);
        line-height: 1.3;
    }
    
    .property-meta {
        flex-direction: column;
        gap: var(--spacing-sm);
        font-size: var(--font-size-xs);
    }
    
    .main-price {
        font-size: var(--font-size-2xl);
    }
    
    .price-per-meter {
        font-size: var(--font-size-sm);
    }
    
    /* Gallery */
    .main-image img {
        height: 250px;
        border-radius: var(--radius-md);
    }
    
    .thumbnail-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .thumbnail-grid img {
        height: 100px;
        border-radius: var(--radius-sm);
    }
    
    /* Details */
    .details-card {
        padding: var(--spacing-base);
        border-radius: var(--radius-lg);
    }
    
    .card-title {
        font-size: var(--font-size-lg);
        margin-bottom: var(--spacing-base);
    }
    
    .feature-item {
        flex-direction: column;
        text-align: center;
        gap: var(--spacing-xs);
        padding: var(--spacing-base);
    }
    
    .feature-item i {
        width: 30px;
        height: 30px;
        font-size: var(--font-size-sm);
    }
    
    .feature-item div strong {
        font-size: var(--font-size-sm);
    }
    
    .feature-item div span {
        font-size: var(--font-size-xs);
    }
    
    /* Investment */
    .investment-content {
        grid-template-columns: 1fr;
    }
    
    .investment-item {
        padding: var(--spacing-base);
    }
    
    .investment-label {
        font-size: var(--font-size-xs);
    }
    
    .investment-value {
        font-size: var(--font-size-lg);
    }
    
    .highlight {
        padding: var(--spacing-sm);
        font-size: var(--font-size-xs);
    }
    
    /* Services */
    .service-item {
        padding: var(--spacing-base);
        flex-direction: column;
        text-align: center;
        gap: var(--spacing-sm);
    }
    
    .service-item i {
        width: 35px;
        height: 35px;
    }
    
    .service-item div strong {
        font-size: var(--font-size-sm);
    }
    
    .service-item div span {
        font-size: var(--font-size-xs);
    }
    
    /* Map */
    .map-container {
        height: 200px;
    }
    
    .map-placeholder i {
        font-size: var(--font-size-2xl);
    }
    
    /* Testimonials */
    .page-title {
        font-size: var(--font-size-2xl);
        line-height: 1.2;
    }
    
    .page-subtitle {
        font-size: var(--font-size-base);
    }
    
    .rating-stars {
        font-size: var(--font-size-lg);
    }
    
    .rating-text .rating-number {
        font-size: var(--font-size-xl);
    }
    
    .badges-grid {
        grid-template-columns: 1fr;
    }
    
    .badge-item {
        padding: var(--spacing-base);
    }
    
    .badge-icon {
        width: 50px;
        height: 50px;
        font-size: var(--font-size-lg);
    }
    
    .badge-content h3 {
        font-size: var(--font-size-xl);
    }
    
    .badge-content p {
        font-size: var(--font-size-sm);
    }
    
    /* Testimonial Cards */
    .testimonial-card {
        padding: var(--spacing-base);
    }
    
    .client-avatar {
        width: 40px;
        height: 40px;
        font-size: var(--font-size-lg);
    }
    
    .client-name {
        font-size: var(--font-size-base);
    }
    
    .client-source {
        font-size: var(--font-size-xs);
    }
    
    .testimonial-rating {
        font-size: var(--font-size-sm);
    }
    
    .testimonial-content {
        font-size: var(--font-size-sm);
        margin-bottom: var(--spacing-base);
    }
    
    .testimonial-footer {
        font-size: var(--font-size-xs);
    }
    
    /* Process */
    .process-step {
        padding: var(--spacing-base);
    }
    
    .step-number {
        width: 40px;
        height: 40px;
        font-size: var(--font-size-base);
    }
    
    .step-content h3 {
        font-size: var(--font-size-base);
    }
    
    .step-content p {
        font-size: var(--font-size-sm);
    }
    
    /* Contact Methods */
    .method-card {
        padding: var(--spacing-base);
    }
    
    .method-icon {
        width: 50px;
        height: 50px;
        font-size: var(--font-size-lg);
    }
    
    .method-card h3 {
        font-size: var(--font-size-base);
    }
    
    .method-card p {
        font-size: var(--font-size-sm);
    }
    
    .method-info .phone-number {
        font-size: var(--font-size-base);
    }
    
    .method-info span {
        font-size: var(--font-size-xs);
    }
    
    .availability {
        font-size: var(--font-size-xs);
    }
    
    /* Booking */
    .booking-info h2 {
        font-size: var(--font-size-xl);
    }
    
    .booking-info p {
        font-size: var(--font-size-sm);
    }
    
    .booking-benefits .benefit-item {
        font-size: var(--font-size-sm);
    }
    
    .urgency-reminder {
        padding: var(--spacing-base);
        font-size: var(--font-size-sm);
    }
    
    .booking-form-container {
        padding: var(--spacing-base);
    }
    
    .booking-form h3 {
        font-size: var(--font-size-base);
    }
    
    .form-note {
        font-size: var(--font-size-xs);
    }
    
    /* FAQ */
    .faq-item {
        padding: var(--spacing-base);
    }
    
    .faq-question {
        font-size: var(--font-size-base);
        margin-bottom: var(--spacing-sm);
    }
    
    .faq-answer {
        font-size: var(--font-size-sm);
    }
    
    /* Contact Info */
    .info-card {
        padding: var(--spacing-base);
    }
    
    .info-icon {
        width: 50px;
        height: 50px;
        font-size: var(--font-size-lg);
    }
    
    .info-card h3 {
        font-size: var(--font-size-base);
    }
    
    .info-card p {
        font-size: var(--font-size-sm);
    }
    
    .info-card small {
        font-size: var(--font-size-xs);
    }
    
    /* Footer */
    .footer-logo h3 {
        font-size: var(--font-size-lg);
    }
    
    .footer-logo p {
        font-size: var(--font-size-sm);
    }
    
    .contact-item {
        font-size: var(--font-size-sm);
    }
    
    /* Urgency elements */
    .urgency-badge {
        padding: var(--spacing-sm);
        font-size: var(--font-size-xs);
    }
}

/* ====================================
   LANDSCAPE MOBILE (568px and down)
==================================== */
@media (max-width: 568px) and (orientation: landscape) {
    .hero {
        padding: var(--spacing-xl) 0;
    }
    
    .hero-content {
        gap: var(--spacing-xl);
    }
    
    .hero-title {
        font-size: var(--font-size-2xl);
        margin-bottom: var(--spacing-sm);
    }
    
    .hero-subtitle {
        font-size: var(--font-size-sm);
        margin-bottom: var(--spacing-base);
    }
    
    .hero-highlights {
        grid-template-columns: repeat(2, 1fr);
        margin-bottom: var(--spacing-base);
    }
    
    .price-badge {
        margin-top: var(--spacing-base);
    }
}

/* ====================================
   EXTRA SMALL DEVICES (360px and down)
==================================== */
@media (max-width: 360px) {
    .container {
        padding: 0 20px;
    }
    
    .hero-title {
        font-size: var(--font-size-xl);
    }
    
    .hero-subtitle {
        font-size: var(--font-size-sm);
    }
    
    .form-card {
        padding: var(--spacing-sm);
    }
    
    .btn-primary,
    .btn-secondary,
    .btn-outline,
    .cta-button {
        padding: var(--spacing-xs) var(--spacing-sm);
        font-size: var(--font-size-xs);
        min-height: 40px;
    }
    
    .benefit-icon,
    .badge-icon,
    .method-icon,
    .info-icon {
        width: 40px;
        height: 40px;
        font-size: var(--font-size-base);
    }
    
    .main-image img {
        height: 200px;
    }
    
    .thumbnail-grid img {
        height: 80px;
    }
    
    .map-container {
        height: 180px;
    }
}

/* ====================================
   HIGH DENSITY DISPLAYS
==================================== */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    /* Optimize for retina displays */
    .hero::before {
        background-size: 400px 80px;
    }
    
    .form-group i,
    .testimonial-rating i,
    .rating-stars i {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}

/* ====================================
   TOUCH DEVICES
==================================== */
@media (hover: none) and (pointer: coarse) {
    /* Optimize for touch */
    .btn-primary,
    .btn-secondary,
    .btn-outline,
    .cta-button,
    .nav a,
    .header-contact .phone {
        min-height: 44px;
        min-width: 44px;
    }
    
    .thumbnail-grid img {
        min-height: 44px;
    }
    
    .checkbox-label {
        min-height: 44px;
        align-items: center;
    }
    
    .checkmark {
        width: 24px;
        height: 24px;
    }
    
    /* Remove hover effects */
    .benefit-item:hover,
    .testimonial-card:hover,
    .badge-item:hover,
    .process-step:hover,
    .method-card:hover {
        transform: none;
        box-shadow: var(--shadow-base);
    }
    
    .btn-primary:hover,
    .btn-secondary:hover,
    .btn-outline:hover,
    .cta-button:hover {
        transform: none;
    }
}

/* ====================================
   DARK MODE SUPPORT
==================================== */
@media (prefers-color-scheme: dark) {
    /* Optional dark mode styles can be added here */
    /* For now, keeping the light theme consistent with brand */
}

/* ====================================
   REDUCED MOTION
==================================== */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    
    .hero::before {
        animation: none;
    }
    
    .urgency-badge {
        animation: none;
    }
    
    .scroll-reveal {
        animation: none;
        opacity: 1;
        transform: none;
    }
}

/* ====================================
   HIGH CONTRAST MODE
==================================== */
@media (prefers-contrast: high) {
    :root {
        --border-color: #000000;
        --text-light: #333333;
        --shadow-base: 0 2px 4px rgba(0, 0, 0, 0.3);
        --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.3);
        --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.3);
    }
    
    .form-group input,
    .form-group select,
    .form-group textarea {
        border-width: 2px;
        padding: 16px 18px;
        font-size: 1rem;
    }
    
    .form-group label {
        font-size: 1rem;
        margin-bottom: 10px;
    }
    
    .btn-primary,
    .btn-secondary,
    .cta-button {
        border: 2px solid currentColor;
    }
    
    .testimonial-card,
    .benefit-item,
    .badge-item,
    .details-card {
        border: 1px solid var(--border-color);
    }
}

/* ====================================
   RESPONSIVE PARA NUEVAS SECCIONES MEJORADAS
==================================== */

/* TABLET (768px and down) */
@media (max-width: 768px) {
    /* Description Layout */
    .description-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .description-sidebar {
        position: static;
    }
    
    /* Benefits Grid */
    .benefits-grid-two {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    
    .benefit-card {
        padding: 30px;
    }
    
    /* Floor Description */
    .floor-item {
        flex-direction: column;
        padding: 30px;
        text-align: center;
    }
    
    .floor-number {
        width: 70px;
        height: 70px;
        font-size: 1.5rem;
        margin: 0 auto 20px;
    }
    
    /* Features Grid */
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .feature-box {
        padding: 30px 20px;
    }
    
    .feature-icon-large {
        width: 75px;
        height: 75px;
    }
    
    .feature-icon-large i {
        font-size: 2rem;
    }
    
    /* Investment Grid */
    .investment-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    
    .investment-card {
        padding: 30px;
    }
    
    .investment-chart {
        height: 250px;
        padding: 25px 15px 15px 15px;
    }
    
    /* Projection Timeline */
    .projection-timeline {
        flex-direction: column;
        gap: 20px;
    }
    
    .timeline-arrow {
        transform: rotate(90deg);
        font-size: 2rem;
    }
    
    /* CTA Box Large */
    .cta-box-large {
        flex-direction: column;
        padding: 40px 30px;
        text-align: center;
    }
    
    .cta-box-content h3 {
        font-size: 1.6rem;
    }
    
    /* Comparison Table */
    .comparison-table-wrapper {
        padding: 15px;
    }
    
    .comparison-table {
        font-size: 0.9rem;
    }
    
    .comparison-table thead th,
    .comparison-table tbody td {
        padding: 15px 10px;
    }
    
    .comparison-conclusion {
        padding: 35px 25px;
    }
    
    .conclusion-icon {
        width: 80px;
        height: 80px;
    }
    
    .conclusion-icon i {
        font-size: 2.5rem;
    }
    
    .conclusion-content h3 {
        font-size: 1.6rem;
    }
    
    .conclusion-content p {
        font-size: 1rem;
    }
    
    /* Reasons Grid */
    .reasons-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .reason-card {
        padding: 35px 30px;
    }
    
    .reason-number {
        width: 55px;
        height: 55px;
        font-size: 1.3rem;
        top: -18px;
        right: 30px;
    }
    
    /* Testimonials Grid */
    .testimonials-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    
    .testimonial-card.featured {
        grid-column: auto;
    }
    
    .testimonial-card {
        padding: 30px;
    }
    
    /* Contact Layout */
    .contact-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .contact-form-wrapper {
        padding: 35px;
    }
    
    .contact-form .form-row {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .contact-method {
        padding: 20px;
    }
    
    .method-icon {
        width: 55px;
        height: 55px;
    }
    
    .method-icon i {
        font-size: 1.5rem;
    }
    
    .method-value {
        font-size: 1.1rem;
    }
    
    /* Footer */
    .footer-content {
        grid-template-columns: repeat(2, 1fr);
        gap: 35px;
    }
    
    /* Floating CTA */
    .floating-cta-content {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
    
    .floating-cta-buttons {
        justify-content: center;
    }
    
    /* Info and Highlight Boxes */
    .info-box,
    .highlight-box {
        flex-direction: column;
        padding: 25px;
        text-align: center;
    }
    
    .info-icon,
    .highlight-icon {
        margin: 0 auto 15px;
    }
    
    /* CTA Inline */
    .cta-inline {
        flex-direction: column;
        padding: 30px;
        text-align: center;
    }
    
    .cta-inline-text h4 {
        font-size: 1.4rem;
    }
}

/* MOBILE (480px and down) */
@media (max-width: 480px) {
    /* General container - más espacio en los lados */
    .container {
        padding: 0 20px;
    }
    
    /* General spacing */
    .section-header h2 {
        font-size: 1.8rem;
    }
    
    .section-subtitle {
        font-size: 1rem;
    }
    
    /* Benefits and Feature Cards */
    .benefit-card,
    .feature-box {
        padding: 30px 25px;
    }
    
    .benefit-card h4,
    .feature-box h3 {
        font-size: 1.2rem;
    }
    
    .benefit-card p,
    .feature-box p {
        font-size: 0.95rem;
    }
    
    .benefit-icon,
    .feature-icon-large {
        width: 60px;
        height: 60px;
    }
    
    .benefit-icon i,
    .feature-icon-large i {
        font-size: 1.5rem;
    }
    
    /* Features Grid - Single Column */
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    /* Floor Items */
    .floor-item {
        padding: 30px 25px;
    }
    
    .floor-number {
        width: 60px;
        height: 60px;
        font-size: 1.3rem;
    }
    
    .floor-details h4 {
        font-size: 1.3rem;
    }
    
    .floor-details p {
        font-size: 1rem;
    }
    
    /* Investment Cards */
    .investment-card {
        padding: 30px 25px;
    }
    
    .investment-header {
        flex-direction: column;
        text-align: center;
    }
    
    .investment-header h3 {
        font-size: 1.4rem;
    }
    
    .investment-chart {
        height: 220px;
    }
    
    .projection-item,
    .detail-row {
        padding: 18px 20px;
        font-size: 0.95rem;
    }
    
    .projection-item .value-big {
        font-size: 1.3rem;
    }
    
    .projection-item .value-big.success {
        font-size: 1.5rem;
    }
    
    .timeline-value {
        font-size: 1.5rem;
    }
    
    /* Advantages List */
    .advantages-list li {
        flex-direction: column;
        padding: 25px 20px;
        text-align: center;
    }
    
    .advantages-list li i {
        margin-bottom: 10px;
    }
    
    /* CTA Box Large */
    .cta-box-large {
        padding: 35px 25px;
    }
    
    .cta-box-content h3 {
        font-size: 1.4rem;
    }
    
    .cta-box-content p {
        font-size: 1rem;
    }
    
    /* Comparison Table */
    .comparison-table {
        font-size: 0.85rem;
    }
    
    .comparison-table thead th,
    .comparison-table tbody td {
        padding: 12px 8px;
    }
    
    .table-badge {
        font-size: 0.65rem;
        padding: 6px 15px;
    }
    
    .comparison-conclusion {
        padding: 25px 20px;
    }
    
    .conclusion-icon {
        width: 70px;
        height: 70px;
    }
    
    .conclusion-icon i {
        font-size: 2rem;
    }
    
    .conclusion-content h3 {
        font-size: 1.4rem;
    }
    
    .conclusion-content p {
        font-size: 0.95rem;
    }
    
    /* Reason Cards */
    .reason-card {
        padding: 30px 25px;
    }
    
    .reason-number {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
        right: 25px;
    }
    
    .reason-card h3 {
        font-size: 1.3rem;
        padding-right: 60px;
    }
    
    .reason-card p {
        font-size: 1rem;
    }
    
    /* Testimonials */
    .testimonial-card {
        padding: 25px 20px;
    }
    
    .testimonial-avatar {
        width: 50px;
        height: 50px;
        font-size: 1.5rem;
    }
    
    .testimonial-info h4 {
        font-size: 1.1rem;
    }
    
    .testimonial-text {
        font-size: 1rem;
    }
    
    /* Contact */
    .contact-info h3 {
        font-size: 1.6rem;
    }
    
    .contact-form-wrapper {
        padding: 30px 25px;
    }
    
    .contact-form .form-group input,
    .contact-form .form-group select,
    .contact-form .form-group textarea {
        font-size: 1rem;
        padding: 16px 18px;
    }
    
    .contact-form h3 {
        font-size: 1.5rem;
    }
    
    .contact-method {
        padding: 18px;
    }
    
    .method-icon {
        width: 50px;
        height: 50px;
    }
    
    .method-icon i {
        font-size: 1.3rem;
    }
    
    .method-value {
        font-size: 1rem;
    }
    
    .office-info {
        padding: 30px 25px;
    }
    
    /* Footer */
    .footer-content {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .footer-brand h3 {
        font-size: 1.6rem;
    }
    
    /* Floating CTA */
    .floating-cta {
        padding: 12px 0;
    }
    
    .floating-cta-text strong {
        font-size: 1rem;
    }
    
    .floating-cta-text span {
        font-size: 0.85rem;
    }
    
    .btn-small {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
    
    /* Sidebar Cards */
    .sidebar-card {
        padding: 25px 20px;
    }
    
    .sidebar-title {
        font-size: 1.2rem;
    }
    
    .quick-specs li {
        padding: 12px 0;
    }
    
    .spec-value.highlight {
        font-size: 1.1rem;
    }
    
    /* Utility */
    .section-subtitle-left {
        font-size: 1.5rem;
        margin: 40px 0 20px;
    }
    
    .feature-list li {
        font-size: 1rem;
    }
    
    .intro-text p {
        font-size: 1.05rem;
    }
}