/* Home page responsive & adaptive rules */



/* 1200px: desktops */
@media (max-width: 1200px) {
    /* Hero */
    .hero-section {
        padding-top: 180px;
    }
    .hero-title {
        line-height: 64px;
font-style: normal;
font-weight: 600;
line-height: normal;
letter-spacing: -2px;
    }
    .hero-subtitle {
        width: 80%;
        font-size: 22px;
    }
    .cards-beneffits {
        margin-top: 100px;
    }

    /* Systems */
    .systems-section {
        margin: 100px 0 140px;
    }
    .systems-section .systems-wrapper {
        gap: 60px;
    }
    .systems-text .systems-title {
        white-space: normal;
    }
    .systems-grid .system-card {
        height: 340px;
    }

    /* Testimonial */
    .testimonial-section {
        padding: 120px 30px;
        height: auto;
    }
    .testimonial-wrapper {
        gap: 60px;
    }

    /* Unique */
    .unique-section {
        height: auto;
        padding: 120px 0;
    }
    .feature-card .section-title {
        font-size: 48px;
    }

    /* Results */
    .results-section .section-header .section-title {
        width: 100%;
        max-width: 900px;
        font-size: 42px;
    }

  
}

/* 992px: tablets landscape */
@media (max-width: 992px) {
    /* Hero */
    .hero-title {
        line-height: 56px;
    }
    .hero-subtitle {
        width: 100%;
        font-size: 20px;
    }

    /* Systems */
    .systems-section .systems-wrapper {
        flex-direction: column;
        gap: 40px;
    }
    .systems-grid .system-card {
        flex: 1 1 100%;
        max-width: 100%;
        height: 320px;
    }

    /* Testimonial */
    .testimonial-wrapper {
        flex-direction: column;
        align-items: center;
    }
    .testimonial-image {
        max-width: 100%;
    }
    .testimonial-title {

        text-align: center;
    }
    .testimonial-content {
        max-width: 720px;
    }
    .testimonial-user-info .user-photos {
        justify-content: center;
    }
    .testimonial-navigator {
        margin-top: 16px;
    }

    
    

    /* Calculator */
    .calculator-container {
        gap: 32px;
    }
    .calculator-left {
        flex: 1 1 100%;
        height: auto;
    }
    .calculator-right {
        flex: 1 1 100%;
    }
    .form-grid {
        grid-template-columns: 1fr;
    }
    .calculator-submit {
        grid-template-columns: 1fr;
    }

    .calculator-container .contact-block {
        display: none;
    }

    /* Promo */
    

    /* Unique */
    .unique-grid {
        grid-template-columns: 1fr 1fr;
    }
    .feature-card:nth-child(3) {
        grid-column: span 1;
    }
    .feature-card:nth-child(6) {
        grid-column: span 1;
    }

    /* Projects */
    .projects-grid {
        grid-template-columns: 1fr 1fr;
    }
    .project-card.large {
        grid-column: span 2;
    }
}

/* 768px: tablets portrait */
@media (max-width: 768px) {
    /* Hero */
    .hero-section {
        padding-top: 140px;
    }
    .hero-title {
        line-height: 48px;
    }
    .hero-subtitle {
        font-size: 18px;
    }
    .cards-beneffits {
        /* overflow: hidden; */
        margin-top: 60px;
    }
    .cards-beneffits .card {
        flex: 0 0 100%;
    }

    /* Systems */
    .systems-section {
        margin: 80px 0 60px;
    }
    .systems-text {
        text-align: center;
    }
    .systems-text x-button {
        margin: 0 auto;
    }

    /* Testimonial */
    .testimonial-section {
        padding: 80px 24px;
    }
    
    .testimonial-quote {
        padding: 32px 0 16px;
    }

    /* Calculator */
    .calculator-title {
        font-size: 26px;
    }

    .calculator-form .form-grid {
        gap: 12px;
    }
    .calculator-form {
        gap: 32px;
    }
    .calculator-form input,
    .calculator-form select {
        height: 60px;
        padding: 12px 20px;
    }
    .calculator-submit-button {
        height: 60px;
    }
    .calculator-submit-button .button-icon {
        width: 48px;
        height: 48px;
    }

    

    /* Unique */
    .unique-section {
        margin: 120px auto;
    }
    .unique-grid {
        grid-template-columns: 1fr;
    }
    .feature-card:nth-child(n) {
        grid-column: auto;
        grid-row: auto;
    }
    .feature-card .feature-header {
        font-size: 22px;
    }
    .feature-card .section-title {
        font-size: 38px;
    }

    /* Projects */
    .projects-grid {
        grid-template-columns: 1fr;
    }
    .project-card.large {
        grid-column: auto;
    }
    .projects-section .section-header .section-title {
        font-size: 36px;
    }

    /* Results */
    .results-section .section-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
    .results-section .section-header .section-title {
        font-size: 36px;
    }
    .before-after-wrapper .image-container {
        max-width: 100%;
        aspect-ratio: 4/3;
    }

    /* Tutorials */
    .tutorials-section .section-header .section-title {
        font-size: 36px;
    }
    .tutorials-section .tutorial-info {
        margin-top: 32px;
    }
    .tutorials-section .tutorial-info .video-title {
        font-size: 20px;
    }
}

/* 576px: phones */
@media (max-width: 576px) {
    /* Hero */
    .hero-section {
        padding-top: 120px;
    }

    .hero-section .main-content {
        gap: 32px;
    }
    .hero-title {
        font-size: 40px;
        line-height: normal;
    }
    .cards-beneffits {
        gap: 16px;
    }
    .card {
        padding: 18px;
    }
    .card-title {
        font-size: 22px;
    }
    .card-text {
        font-size: 15px;
        line-height: 22px;
    }

    /* Systems */
    .systems-grid .system-card {
        height: 300px;
        padding: 24px;
    }
    .systems-grid .system-card .card-label {
        font-size: 22px;
    }
    .systems-grid .system-card .system-button-item {
        width: 46px;
        height: 46px;
        padding: 12px;
    }

    /* Testimonial */
    
    .testimonial-user-info .photo,
    .extra-count {
        width: 64px;
        height: 64px;
    }

    /* Consultation */
    .consultation-background {
        padding: 24px 12px;
    }
    .consultation-title-box {
        gap: 10px;
    }
    .consultation-form input {
        padding: 14px 18px;
    }

    /* Calculator */
    .form-grid {
        grid-template-columns: 1fr;
    }
    .calculator-submit {
        grid-template-columns: 1fr;
    }

    /* Unique */
    .corner-element {
        width: 220px;
        height: 60px;
    }

    /* Projects */
    .projects-grid {
        grid-gap: 20px;
    }
    .projects-section .section-header .section-title {
        font-size: 30px;
    }

    /* Results */
    .results-section .section-header .section-title {
        font-size: 30px;
    }
    .before-after-wrapper .image-container {
        aspect-ratio: 1/1;
    }

    /* Tutorials */
    .tutorials-section .section-header .section-title {
        font-size: 30px;
    }
    
}

/* 400px: very small phones */
@media (max-width: 400px) {
    
    .hero-title {
        font-size: 32px;
        line-height: normal;
    }
    .hero-button {
        padding: 14px 22px !important;
    }
}


@media (max-width: 992px) {
    .systems-section {
        margin: 0 0 60px;
    }

    .systems-section .systems-text {
        display: flex;
        flex-direction: column;
        text-align: center;
        align-items: center;
    }

    .systems-section .custom-button {
        display: none;
    }

    .systems-text .systems-title {
        padding: 12px 0px 0;
    }

    .testimonial-image {
        display: none;
    }
}

@media (max-width: 768px) {
    .systems-title {
        font-size: 32px;
    }
}

@media (max-width: 576px) {
    .systems-title {
        font-size: 24px;
    }
    .hero-section::after {
        border-radius: 25px 25px 0px 0px;
    }
    .footer-side::after {
        border-radius: 0px 0px 25px 25px;
    }

}

/* Testimonials responsive & adaptive */




@media (max-width: 1200px) {
    .testimonial-section {
        padding: 120px 30px;
    }
    .testimonial-wrapper {
        gap: 60px;
    }
    .testimonial-image {
        max-width: 400px;
    }
   
    .testimonial-subtitle {
        font-size: 18px;
        line-height: 26px;
    }
    .testimonial-quote {
        padding: 36px 0 18px;
    }
}

@media (max-width: 992px) {
    .testimonial-section {
        padding: 80px 30px;
        height: auto;
    }
    .testimonial-wrapper {
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }
    .testimonial-image {
        max-width: 520px;
        width: 100%;
        height: auto;
    }
    .testimonial-content {
        max-width: 720px;
        width: 100%;
        text-align: center;
    }
    
    .testimonial-navigator {
        align-items: center;
    }

    .testimonial-section .section-tag {
        display: none;
    }

    .testimonial-author {
        text-align: left;
    }
}

@media (max-width: 768px) {
    .testimonial-section {
        padding: 120px 30px 60px;
    }

    .testimonial-title {
        letter-spacing: -0.5px;
    }
    .testimonial-subtitle {
        font-size: 16px;
    }
    .testimonial-user-info .user-photos {
        gap: 16px;
        justify-content: center;
    }
    .testimonial-user-info .photo,
    .extra-count {
        width: 64px;
        height: 64px;
    }
    .testimonial-slider-nav .nav-button {
        width: 48px;
        height: 48px;
    }
}

@media (max-width: 576px) {
   
    .testimonial-subtitle {
        font-size: 15px;
        line-height: 24px;
    }
    .testimonial-quote {
        padding: 24px 0 14px;
    }
    .testimonial-user-info .photo,
    .extra-count {
        width: 56px;
        height: 56px;
    }
}

@media (max-width: 400px) {
    .testimonial-user-info .photo,
    .extra-count {
        width: 52px;
        height: 52px;
    }
    .testimonial-slider-nav .nav-button {
        width: 42px;
        height: 42px;
    }
}

/* Consultation responsive & adaptive */
@media (max-width: 1400px) {
    .consultation-background {
        aspect-ratio: 99/50;
        padding: 60px 24px;
    }
    /* .consultation-card {
        padding: 80px 240px;
    } */
}

@media (max-width: 1200px) {
    .consultation-card {
        padding: 80px 180px;
    }
}
@media (max-width: 1200px) {
    .consultation-card {
        padding: 90px 190px;
    }
}
@media (max-width: 1145px) {
    .consultation-card {
        padding: 30px 90px;
    }
}

@media (max-width: 992px) {
    .consultation-background {
        background-image: none;
        overflow: visible;
        background: transparent;
        padding: 40px 0;
        height: auto;
        margin: 280px 0;
    }
    .consultation-card {
        padding: 60px 80px;
        border: 1px solid rgba(0, 0, 0, 0.08);
        /* box-shadow: 0 2px 12px rgba(0,0,0,0.04); */
    }
    .consultation-form .form-row {
        flex-direction: column;
        gap: 16px;
    }
    .consultation-form .footer-form {
        display: grid;
        grid-template-columns: 1fr;
        gap: 16px;
        align-items: center;
        text-align: center;
        justify-items: start;
    }
}

@media (max-width: 768px) {
    
    .consultation-card {
        padding: 40px 24px;
        border: 1px solid rgba(0, 0, 0, 0.08);
    }
    .consultation-title-box .consultation-title {
        font-size: clamp(22px, 5vw, 36px);
        line-height: 1.2;
    }
    .consultation-form {
        gap: 20px;
    }
    .consultation-form input {
        padding: 14px 18px;
        height: 56px;
    }
}

@media (max-width: 576px) {
    .consultation-card {
        padding: 32px 18px;
        border: 1px solid rgba(0, 0, 0, 0.08);
        width: 100%;
        margin: 0 15px;
    }
    .consultation-form .footer-form {
        gap: 12px;
        text-align: left;
    }
    .consultation-card .submit-button {
        width: 100%;
        justify-content: center;
        height: 56px;
    }
}

@media (max-width: 400px) {
    .consultation-title-box .consultation-title {
        font-size: clamp(20px, 6vw, 30px);
    }
}

/* Promo responsive & adaptive */

.promo-content > * {
    text-align: center;
}

@media (max-width: 1200px) {
    .promo-card {
        height: 340px;
    }
    .promo-content {
        padding: 20px;
    }
    .promo-content .promo-title {
        font-size: 38px;
    }
    .promo-content .promo-text {
        font-size: 18px;
    }
}

@media (max-width: 992px) {
    
    
   
    .promo-content .promo-title {
        font-size: 34px;
    }
}

@media (max-width: 768px) {
    .promo-card {
        min-height: 300px;
        padding: 8px;
    }
    .promo-content .promo-title {
        font-size: 30px;
    }
    .promo-content .promo-text {
        font-size: 16px;
    }

    .transparent-element {
        width: 30%;
    }
    .promo-content {
        width: 80%;
    }
}

@media (max-width: 576px) {
    .promo-card {
        min-height: 260px;
        border-radius: 24px;
    }

    .transparent-element {
        width: 0%;
    }
    .promo-content {
        width: 100%;
    }
    .promo-content {
        border-radius: 16px;
    }
    .promo-content .promo-title {
        font-size: 26px;
    }
}

@media (max-width: 1200px) {
    .unique-section {
        padding: 120px 0 30px;
    }
}

/* Unique grid: switch to 2 columns just under 1000px */
@media (max-width: 1000px) {
    .unique-section {
        padding: 120px 0 30px;
    }

    .unique-grid {
        grid-template-columns: 1fr 1fr;
        grid-auto-flow: row;
    }
    /* Reset fixed placements from base styles */
    .unique-grid .feature-card {
        grid-column: auto !important;
        grid-row: auto !important;
    }
}

@media (max-width: 674px) {
    .unique-grid {
        grid-template-columns: 1fr ;
    }
    /* Reset fixed placements from base styles */
    .unique-grid .feature-card {
        grid-column: auto !important;
        grid-row: auto !important;
    }
}

/* Projects responsive fixes */
@media (max-width: 992px) {
    .projects-grid {
        grid-template-columns: 1fr 1fr;
        grid-gap: 24px;
    }
    .project-card.large {
        grid-column: span 2;
    }
}

@media (max-width: 640px) {
    .projects-grid {
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }
    .project-card.large {
        grid-column: span 1;
    }
}

@media (max-width: 768px) {
    /* Ensure projects grid never overflows */
    .projects-grid {
        grid-template-columns: 1fr !important;
        grid-auto-columns: 1fr;
        grid-gap: 20px;
        width: 100%;
    }
    .projects-section .second-container,
    .projects-grid,
    .projects-grid > * {
        min-width: 0;
        max-width: 100%;
        padding: 0;
    }
    .project-card img {
        width: 100% !important;
        height: auto !important;
        display: block;
    }
    .project-card.large {
        grid-column: auto !important;
    }
}

/* Results section responsive margins */
@media (max-width: 1400px) {
    .results-section {
        margin: 160px auto;
    }
}
@media (max-width: 1200px) {
    .results-section {
        margin: 140px auto;
    }
}
@media (max-width: 992px) {
    .results-section {
        margin: 120px auto;
    }
}
@media (max-width: 768px) {
    .results-section {
        margin: 100px auto;
    }
}
@media (max-width: 576px) {
    .results-section {
        margin: 80px auto;
    }
}
@media (max-width: 400px) {
    .results-section {
        margin: 60px auto;
    }
}

/* Footer responsive & adaptive */


/* Tutorials grid responsive */
@media (min-width: 1201px) {
    .tutorials-section .tutorials-list {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(260px, 1fr));
        gap: 32px;
    }
}

@media (max-width: 1200px) and (min-width: 769px) {
    .tutorials-section .tutorials-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(260px, 1fr));
        gap: 24px;
    }
}

@media (max-width: 768px) {
    .tutorials-section .tutorials-list {
        display: grid !important;
        /* grid-auto-flow: column; */
        gap: 16px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 8px;
        scroll-snap-type: x proximity;
    }
    .tutorials-section .tutorial-card {
        scroll-snap-align: start;
        width: 100%;
        min-width: 260px;
    }
    .tutorials-section .tutorials-list::-webkit-scrollbar { display: none; }
}

/* About Us responsive & adaptive (excluding .timeline) */
@media (max-width: 1200px) {
    /* Identity */
    .identity-section { margin: 30px 0 140px; }
    .identity-section .section-title { font-size: 42px; }
    .identity-grid .row { grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); }
    .section-header { gap: 16px; }

    /* Benefits */
    .caparol-benefits .benefits-grid .benefits-text { gap: 140px; }
    .benefits-grid .benefits-text .left-side .headline { font-size: 44px; }

    .benefits-visual .info-cards .card { padding: 26px; }
}

@media (max-width: 1050px) {
    .info-cards {
        display: flex !important;
        flex-direction: row;
width: 100%;
    }

    .info-cards .crad {
        display: none;
    }
}

@media (max-width: 992px) {
    /* Identity */
    .identity-section { margin: 24px 0 120px; }
    .identity-section .section-title { font-size: 38px; }
    .section-header { flex-direction: column; align-items: flex-start; }
    .identity-grid .row { grid-template-columns: 1fr 1fr; }

    /* Benefits */
    .caparol-benefits .benefits-grid .benefits-text { flex-direction: column; gap: 24px; }
    .benefits-grid .benefits-text .left-side, 
    .benefits-grid .benefits-text .right-side { min-width: auto; }
    .benefits-grid .benefits-text .right-side { align-items: flex-start; }
    .info-cards .card p{
        font-size: 18px !important;
        letter-spacing: normal !important;
    }

    /* Buttons under timeline */
    .buttons { flex-wrap: wrap; gap: 16px; }

    /* About tutorials block */
    .tutorial-section .tutorial-list { display: grid; grid-template-columns: repeat(2, minmax(260px, 1fr)); gap: 24px; }
    .tutorial-section .tutorial-card .tutorial-title { font-size: 36px; }
}

@media (max-width: 768px) {
    /* Identity */
    .identity-section { margin: 20px 0 100px; }
    .identity-section .section-title { font-size: 32px; }
    .identity-grid .row { grid-template-columns: 1fr; }
    .identity-card p { font-size: 15px; line-height: 24px; }

    /* Benefits */
    .benefits-grid .benefits-text .left-side .headline { font-size: 34px; }
    .benefits-grid .benefits-text .right-side .lead { font-size: 18px; }
    .benefits-grid .benefits-text .right-side .subtext { font-size: 16px; line-height: 24px; }
   
    
    /* Buttons */
    .buttons { flex-direction: column; align-items: stretch; }

    /* About tutorials block: horizontal scroll */
    .tutorial-section .tutorial-list { 
        display: grid !important;
        grid-auto-flow: column;
        grid-auto-columns: minmax(260px, 85%);
        gap: 16px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 0 16px 8px; scroll-snap-type: x proximity; 
    }
    .tutorial-section .tutorial-card { scroll-snap-align: start; }
    .tutorial-section .tutorial-list::-webkit-scrollbar { display: none; }
    .tutorial-section .tutorial-card .tutorial-title { font-size: 28px; }

  
    .info-cards {
        overflow-y: scroll;     
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        scroll-snap-align: center;
        width: 100%;
    }

    .info-cards .card {
        flex: 0 0 350px;
        border: 1px solid #e9e9e9;
    }
    .info-cards .card p{
        font-size: inherit !important;
        letter-spacing: normal !important;
    }

    .benefits-visual {
        background-image: none !important;
    }

    .info-cards {
        /* Transparent scrollbar */
        scrollbar-color: transparent transparent;
    }
    .info-cards::-webkit-scrollbar {
        height: 8px;
        background: transparent;
    }
    .info-cards::-webkit-scrollbar-thumb {
        background: transparent;
        border-radius: 8px;
    }


}

@media (max-width: 576px) {
    /* Identity */
    .identity-section { margin: 16px 0 80px; }
    .identity-section .section-title { font-size: 28px; }

    /* Benefits */
    .benefits-grid .benefits-text .left-side .headline { font-size: 28px; }
}

@media (max-width: 400px) {
    .tutorial-section .tutorial-card .tutorial-title { font-size: 24px; }
}

/* Home video section responsive */
@media (max-width: 1200px) {
    .home-video-card { height: 380px; }
}
@media (max-width: 992px) {
    .home-video-card { height: 340px; }
}
@media (max-width: 768px) {
    .home-video-card { height: 300px; }
    .home-video-play svg { width: 90px; height: 90px; }
    .home-video-title { font-size: 28px; width: 80%; }
}
@media (max-width: 576px) {
    .home-video-card { height: 240px; border-radius: 24px; }
    .home-video-play svg { width: 72px; height: 72px; }
    .home-video-title { font-size: 22px; width: 90%; }
}
@media (max-width: 400px) {
    .home-video-card { height: 200px; }
    .home-video-play svg { width: 60px; height: 60px; }
    .home-video-title { font-size: 18px; }
}
/* Home video section responsive */



