/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
    #who {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .threep-grid {
        grid-template-columns: 1fr;
    }
    .threep-card {
        border-bottom: 1.5px solid var(--grey-light);
    }
    #contact {
        grid-template-columns: 1fr;
        gap: 4rem;
    }
    .verticals-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .clients-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    .footer-top {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
    }
}
@media(min-width: 1199px){
    .service-item-left{
        width: 500px;
    }
}
@media (max-width: 1024px) {
    .blog-layout {
        grid-template-columns: 1fr;
    }
    .sidebar {
        position: static;
    }
    #story {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .story-left {
        position: static;
    }
    .values-grid {
        grid-template-columns: 1fr;
    }
    .why-grid {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .why-right {
        position: static;
    }
    .team-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .footer-top {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
    }
    .hero-content-wrap {
        flex-direction: column;
        align-items: flex-start;
        gap: 2rem;
    }
    .hero-right {
        padding-left: 0;
        max-width: 100%;
    }
    .article-wrap {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    .post-sidebar {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .sidebar-block,
    .sidebar-cta {
        flex: 1 1 280px;
    }
}
@media (max-width: 767px) {
    .cs-hero {
        padding: 3rem 1.5rem 2rem;
    }
    .cs-hero h1 {
        font-size: 2.4rem;
    }
    .cs-filters {
        padding: 1rem 1.5rem;
    }
    .cs-grid {
        padding: 1.5rem;
        grid-template-columns: 1fr;
    }
    .cs-cta {
        padding: 3rem 1.5rem;
    }
    .post-hero {
        min-height: 75vh;
        padding: 0 5vw 5vh;
    }
    .post-hero-title {
        font-size: clamp(1.8rem, 6vw, 2.6rem);
    }
    .post-meta-row {
        gap: 1rem;
    }
    .meta-divider {
        display: none;
    }
    .stat-highlight {
        grid-template-columns: 1fr 1fr;
    }
    .blog-hero {
        padding: 3rem 1.5rem 2.5rem;
    }
    .blog-hero h1 {
        font-size: 2.4rem;
    }
    .featured-card {
        grid-template-columns: 1fr;
    }
    .featured-img {
        min-height: 200px;
    }
    .featured-wrap,
    .blog-grid-section,
    .blog-layout {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    .blog-filters {
        padding: 0 1.5rem;
    }
    .blog-grid {
        grid-template-columns: 1fr;
    }
    .legal-hero {
        padding: 3rem 1.5rem 2rem;
    }
    .legal-hero h1 {
        font-size: 2rem;
    }
    .legal-layout {
        grid-template-columns: 1fr;
    }
    .legal-sidebar {
        position: static;
        height: auto;
    }
    .legal-content {
        padding: 2rem 1.5rem;
    }
    .hero-bottom-bar {
        flex-wrap: wrap;
    }
    .hero-bottom-item {
        min-width: 50%;
        border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    }
    .team-grid {
        grid-template-columns: 1fr;
    }
    .container{
        display: grid;
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .top-bar{
        display: none;
    }
    section {
        padding: 3rem 4.5vw;
    }
    .nav-links {
        display: none;
    }
    .hamburger {
        display: flex;
    }
    .hero-headline {
        font-size: clamp(3rem, 12vw, 6rem);
        line-height: 1.2;
    }
    .btn-primary svg{
        display: none;
    }
    .btn-primary{
        text-align: center;
        font-size: 0.82rem;
        padding: 14px 25px;
    }
    .hero-eyebrow-line{
        display: none;
    }
    .hero-desc{
        text-align: center;
    }
    .hero-stats {
        gap: 1.5rem;
        flex-wrap: wrap;
        text-align: center;
    }
    .section-label,
    .section-title{
        text-align: center;
    }
    .section-label-line{
        display: block;
        margin: 0px auto 10px;
    }
    .who-left{
        text-align: center;
    }
    .container-v2{
        grid-template-columns: 1fr;
        gap: 3rem;
    }
    .services-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .service-item{
        display: grid;
        gap: 0.6rem;
    }
    .verticals-grid {
        grid-template-columns: 1fr;
    }
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .clients-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .footer-top {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
    .form-two-col {
        grid-template-columns: 1fr;
    }
    .threep-header {
        flex-direction: column;
        align-items: center;
        margin-bottom: 2rem;
        text-align: center;
    }
    .threep-card{
        text-align: center;
    }
    .who-right {
        grid-template-columns: 1fr;
    }
    .contact-body {
        grid-template-columns: 1fr;
    }
    .contact-form-wrap,
    .contact-info-wrap {
        padding: 2.5rem 1.5rem;
    }
    .contact-info-wrap {
        border-left: none;
        border-top: 1px solid var(--brand-line);
    }
    .vertical-card,
    .clients-header,
    .contact-form-title,
    .timeline-header{
        text-align: center;
    }
    .form-row{
        grid-template-columns: 1fr;
    }
    .clients-header{
        justify-content: center;
    }
    .contact-left p{
        text-align: center;
    }
    .contact-info-item{
        justify-content: center;
    }
    #story,
    #values,
    #timeline,
    #team,
    #why,
    #cta-banner{
        padding: 3rem 5vw;
        text-align: center;
    }
    #cta-banner{
        justify-content: center;
    }
    .why-grid{
        margin-top: 20px;
    }
    .values-header,
    .team-header{
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .section-header{
        text-align: center;
        margin-bottom: 20px;
    }
    #manifesto {
        padding: 3rem 5vw;
    }
    .timeline-item{
        padding-left: 0px;
    }
    .timeline-track{
        padding-left: 1rem;
    }
    .team-avatar{
        display: block;
        margin: 0px auto 15px;
        line-height: 64px;
    }
    .hero.v2 .hero-tag{
        text-align: center;
        display: inline-flex;
        margin-top: 25px;
        margin-bottom: 0px;
        justify-content: center;
    }
    .hero-headline {
        font-size: clamp(3rem, 12vw, 6rem);
        line-height: 1.2;
        max-width: inherit;
    }
    .hero.v2 .hero-sub{
        margin: 10px auto;
    }
    .hero.v2 .hero-actions{
        margin-top: 10px;
    }
    .hero.v2 .hero-stats{
        margin-top: 20px;
    }
    .benefit-grid{
        margin-top: 10px;
    }
    .intro-highlight p,
    .intro-cols,
    .benefit-card,
    .svc-card{
        text-align: center;
    }
    .svc-card ul li{
        justify-content: center;
    }
    .benefit-icon{
        margin: 0px auto;
        display: block;
    }
    
}