/*
 * Insighterz site-wide responsive system — v3.3.0
 * Final override loaded last on every frontend route.
 */

html,body{max-width:100%;overflow-x:clip}
:where(img,svg,video,canvas,iframe){max-width:100%}
:where(.section-pad,.exp-shell,.archive-stage,.archive-block,.inner-section,.project-form-section,.article-wrap,.legal-hero,.form-hero){min-width:0}
:where(
 .inner-hero>*,.inner-section-head>*,.service-card-grid>*,.feature-grid>*,.metric-band>*,.deliverable-grid>*,.strategy-panel>*,
 .timeline-row>*,.case-grid>*,.case-story>*,.architecture-flow>*,.process-detail>*,.story-grid>*,.editorial-grid>*,.article-body>*,
 .contact-layout>*,.form-row>*,.form-hero-grid>*,.consult-grid>*,.legal-wrap>*,.not-found>*,
 .exp-head>*,.exp-split>*,.exp-grid-2>*,.exp-grid-3>*,.exp-grid-4>*,.system-flow>*,.tech-rail>*,.process-map>*,.route-grid>*,
 .result-strip>*,.capability-ledger>*,.industry-ledger>*,.lifecycle-track>*,.autonomy-scale>*,.agenda-grid>*,.checklist-grid>*,.compact-link-grid>*,
 .archive-head>*,.archive-ledger-row>*,.archive-service-grid>*,.archive-track-grid>*,.archive-featured>*,.archive-metric-strip>*,.archive-method>*,
 .archive-capability-row>*,.archive-editorial-cta>*,.archive-tech-rail>*,.iz-popup-dialog>*,.iz-popup-form-row>*
){min-width:0}

:where(p,h1,h2,h3,h4,h5,h6,a,span,strong,small,label,li,td,th){overflow-wrap:break-word}
:where(.site-form input,.site-form textarea,.site-form select){max-width:100%;min-width:0;width:100%;box-sizing:border-box}
:where(.site-form,.form-progress-card,.consult-aside,.contact-details,.legal-wrap,.article-content){min-width:0}

/* Header: keep desktop navigation only where it genuinely fits. */
@media(max-width:1240px){
  .desktop-nav{gap:22px}
  .header-contact{display:none}
}
@media(max-width:1080px){
  .desktop-nav{display:none}
  .menu-toggle{display:block}
  .header-actions>.btn{display:none}
  .site-header{width:min(calc(100% - 32px),var(--max));height:68px}
}

/* Large laptop. */
@media(max-width:1280px) and (min-width:981px){
  :root{--pad:clamp(30px,4vw,52px)}
  .inner-hero{grid-template-columns:minmax(0,1fr) minmax(380px,.78fr);gap:42px;min-height:auto;padding-top:145px;padding-bottom:86px}
  .art-frame{height:clamp(500px,48vw,590px)}
  .inner-section-head{gap:42px}
  .feature-grid.four,.exp-grid-4,.result-strip,.autonomy-scale,.agenda-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-map{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lifecycle-track{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tech-rail{grid-template-columns:repeat(3,minmax(0,1fr))}
  .archive-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archive-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archive-ledger-row{grid-template-columns:62px 48px minmax(190px,.65fr) minmax(0,1.35fr);gap:20px}
  .archive-head{gap:46px}
}

/* Tablet / compact laptop. */
@media(max-width:980px){
  .inner-hero{grid-template-columns:1fr;min-height:auto;padding-top:128px;padding-bottom:76px;gap:38px}
  .inner-hero-copy{max-width:860px}
  .inner-hero-art{width:100%;max-width:900px}
  .art-frame{height:clamp(460px,66vw,590px)}
  .inner-section{padding-top:88px;padding-bottom:88px}
  .inner-section-head{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:38px;align-items:start}
  .inner-section-head>p{width:auto;min-width:0;max-width:720px}

  .service-card-grid,.industry-grid,.editorial-grid,.feature-grid.three,.usecase-grid,.exp-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-grid.four,.exp-grid-4,.deliverable-grid,.timeline-row,.architecture-flow,.checklist-grid,.compact-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .case-card:first-child{grid-column:1/-1}
  .case-story,.story-grid,.strategy-panel{grid-template-columns:1fr;gap:30px}
  .process-detail{grid-template-columns:48px 54px minmax(0,1fr);gap:16px}

  .article-body{grid-template-columns:1fr;max-width:840px;margin-inline:auto}
  .article-aside{display:none}
  .contact-layout,.form-hero-grid,.consult-grid,.legal-wrap,.not-found{grid-template-columns:1fr}
  .legal-wrap aside{position:static}
  .contact-details{max-width:none}

  .exp-head,.exp-split{grid-template-columns:1fr;gap:26px}
  .exp-head p,.exp-copy p{max-width:760px}
  .system-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .system-node::after{display:none}
  .dashboard-grid{grid-template-columns:1fr}
  .dashboard-side{border-right:0;border-bottom:1px solid var(--ex-line)}
  .route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-map{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tech-rail{grid-template-columns:repeat(3,minmax(0,1fr))}
  .evidence-row{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr)}
  .capability-ledger article{grid-template-columns:42px minmax(0,1fr)}
  .capability-ledger em{grid-column:2;text-align:left}
  .lifecycle-track{grid-template-columns:repeat(2,minmax(0,1fr))}
  .autonomy-scale,.agenda-grid,.result-strip{grid-template-columns:repeat(2,minmax(0,1fr))}

  .archive-head{grid-template-columns:1fr;gap:20px;align-items:start}
  .archive-head>p{max-width:720px}
  .archive-service-grid,.archive-track-grid,.archive-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archive-featured{grid-template-columns:1fr}
  .archive-featured-media{min-height:380px;border-right:0;border-bottom:1px solid var(--iz-edge)}
  .archive-ledger-row{grid-template-columns:50px 38px minmax(0,1fr);gap:16px}
  .archive-ledger-row p{grid-column:3}
  .archive-method article{grid-template-columns:70px minmax(180px,.55fr) minmax(0,1fr);gap:24px}
  .archive-capability-row{grid-template-columns:minmax(150px,.7fr) minmax(0,1.2fr) minmax(170px,.8fr);gap:20px}
  .archive-editorial-cta{grid-template-columns:1fr;gap:28px;align-items:start}

  .footer-top{grid-template-columns:1fr 1fr;gap:36px}
  .footer-brand-block{grid-column:1/-1}
}

/* Phones / portrait tablets. */
@media(max-width:780px){
  :root{--pad:20px}
  .section-pad,.exp-shell{width:min(calc(100% - 40px),var(--max))!important;max-width:var(--max)!important;margin-inline:auto!important}
  .site-header{top:10px;width:calc(100% - 24px);height:64px;padding-inline:14px;border-radius:0}
  .brand,.brand img{width:148px}
  .mobile-menu-inner{padding:112px 22px 28px}

  .inner-hero{padding-top:108px;padding-bottom:62px;gap:28px}
  .breadcrumbs{margin-bottom:22px}
  .inner-hero h1{font-size:clamp(39px,11.8vw,58px);line-height:1.02}
  .inner-hero-copy>p{font-size:14px;line-height:1.75;margin-top:22px}
  .hero-chip-row{margin-top:26px}
  .art-frame{height:clamp(360px,106vw,470px)}
  .art-head,.art-foot{height:48px;padding-inline:14px}
  .art-body{height:calc(100% - 96px)}
  .art-callout{width:132px;padding:9px 10px}
  .art-callout.one{left:12px;bottom:14px}.art-callout.two{right:12px;top:14px}

  .inner-section{padding-top:72px;padding-bottom:72px}
  .inner-section-head{padding-bottom:20px;margin-bottom:30px}
  .inner-section-head h2{font-size:clamp(31px,9vw,42px)}
  .inner-section-head>p{font-size:14px;line-height:1.7}

  .service-card-grid,.case-grid,.industry-grid,.editorial-grid,.feature-grid.three,.feature-grid.four,.usecase-grid,
  .exp-grid-2,.exp-grid-3,.exp-grid-4,.route-grid,.result-strip,.process-map,.lifecycle-track,.autonomy-scale,.agenda-grid,
  .checklist-grid,.compact-link-grid,.tech-rail,.system-flow,.deliverable-grid,.timeline-row,.architecture-flow{grid-template-columns:1fr!important}
  .service-card-large,.industry-card,.editorial-card,.feature-grid article,.exp-cell,.route-card{min-height:auto}
  .service-card-large{padding:24px}.service-card-large h3{margin-top:36px;font-size:24px}
  .metric-band{grid-template-columns:1fr}
  .metric-band article{border-right:0;border-bottom:1px solid var(--line)}
  .metric-band article:last-child{border-bottom:0}
  .case-card:first-child{grid-column:auto}
  .case-image,.case-card:first-child .case-image,.project-visual-main,.project-card .project-visual{height:clamp(240px,70vw,340px);min-height:0}
  .case-story,.story-grid,.strategy-panel{grid-template-columns:1fr;padding-left:0;padding-right:0}
  .strategy-panel{padding:24px}
  .process-detail{grid-template-columns:42px minmax(0,1fr);gap:14px}
  .process-detail>span{display:none}.process-detail-icon{width:42px;height:42px}.process-detail-list{grid-column:2}

  .article-wrap{padding-top:108px}
  .article-header{margin-bottom:42px;padding-bottom:30px}
  .article-header h1{font-size:clamp(38px,10.5vw,52px)}
  .article-dek{font-size:15px}
  .article-section h2{font-size:28px}.article-section p,.article-content li{font-size:15px;line-height:1.8}
  .article-quote{font-size:22px}
  .article-toc{padding:22px}

  .form-hero{padding-top:108px;padding-bottom:56px}
  .form-hero h1{font-size:clamp(39px,11vw,54px)}
  .form-row,.form-hero-grid,.consult-grid{grid-template-columns:1fr!important}
  .site-form{padding:24px!important}
  .project-form-section{padding-top:62px;padding-bottom:72px}
  .form-section-title{grid-template-columns:36px minmax(0,1fr);gap:12px}
  .form-submit-row{flex-direction:column;align-items:stretch;gap:16px}
  .form-submit-row .btn,.site-form>.btn{width:100%}
  .choice-grid{grid-template-columns:1fr!important}
  .consult-aside,.form-progress-card{padding:24px}

  .legal-hero{padding-top:112px;padding-bottom:52px}
  .legal-wrap{gap:30px}
  .legal-wrap aside{padding-left:0;border-left:0;border-top:1px solid var(--iz-edge);padding-top:22px}
  .legal-copy h2{font-size:28px}.legal-copy p,.legal-copy li{font-size:15px;line-height:1.8}

  .not-found{padding-top:112px;padding-bottom:70px;gap:34px}
  .not-found-art img{height:auto;max-height:360px;width:100%;object-fit:cover}

  .exp-section{padding:68px 0}
  .exp-head h2,.exp-copy h2{font-size:clamp(30px,8.5vw,38px)}
  .exp-cell,.route-card,.process-map article,.lifecycle-track article,.autonomy-scale article,.agenda-grid article{padding:22px;min-height:auto}
  .system-flow{padding:16px}.system-node{min-height:100px}
  .evidence-row{grid-template-columns:1fr}.evidence-row>*{border-right:0;border-bottom:1px solid var(--ex-line-soft)}.evidence-row>*:last-child{border-bottom:0}
  .dashboard-main{grid-template-columns:1fr}.dash-chart{grid-column:auto}
  .exp-faq-q{grid-template-columns:32px minmax(0,1fr) 22px}.exp-faq-a p{padding-left:46px}
  .capability-ledger article{grid-template-columns:32px minmax(0,1fr);gap:12px}.capability-ledger em{grid-column:2;text-align:left}
  .industry-ledger a{grid-template-columns:minmax(0,1fr) 22px;padding:18px}.industry-ledger small{grid-column:1}
  .decision-matrix{overflow-x:auto;-webkit-overflow-scrolling:touch}.matrix-row{min-width:680px}
  .compact-link-grid a{grid-template-columns:minmax(0,1fr) 22px;gap:10px}.compact-link-grid span{grid-column:1}

  .archive-block{padding-top:70px;padding-bottom:70px}
  .archive-head{margin-bottom:30px}.archive-head h2{font-size:clamp(31px,8.8vw,40px)}.archive-head>p{font-size:14px}
  .archive-service-grid,.archive-track-grid,.archive-metric-strip{grid-template-columns:1fr!important}
  .archive-service-card,.archive-track,.archive-metric{min-height:auto}
  .archive-track{border-right:0;border-bottom:1px solid var(--iz-edge)}
  .archive-ledger-row{grid-template-columns:34px 30px minmax(0,1fr);gap:12px;padding:22px 0}
  .archive-ledger-row p{grid-column:3;font-size:14px}.archive-ledger-row h3{font-size:18px}
  .archive-featured-media{min-height:260px}.archive-featured-copy{padding:24px}.archive-featured-copy h3{margin-top:32px}
  .archive-method article{grid-template-columns:42px minmax(0,1fr);gap:14px}.archive-method article p{grid-column:2;font-size:14px}
  .archive-capability-row{grid-template-columns:1fr;gap:7px;padding:18px 0}.archive-capability-row.head{display:none}
  .archive-editorial-cta{padding:26px}
  .archive-topic-index span{padding:13px 15px}

  .footer-top{grid-template-columns:1fr!important;gap:28px}.footer-contact{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:12px}

  .iz-popup{padding:14px}.iz-popup-dialog,.iz-popup-dialog.size-wide{grid-template-columns:1fr;width:min(100%,620px)}
  .iz-popup-visual{min-height:190px;border-right:0;border-bottom:1px solid var(--iz-edge)}
  .iz-popup-copy{padding:26px 20px}.iz-popup-actions{align-items:stretch;flex-direction:column;gap:12px}.iz-popup-actions .btn{width:100%}
  .iz-popup-form-row{grid-template-columns:1fr}
}

@media(max-width:520px){
  :root{--pad:16px}
  .section-pad,.exp-shell{width:calc(100% - 32px)!important}
  .site-header{width:calc(100% - 20px);padding-inline:12px}
  .brand,.brand img{width:138px}
  .inner-hero h1,.form-hero h1{font-size:clamp(36px,11.4vw,48px)}
  .hero-chip-row span,.mini-tags span{padding:7px 9px}
  .art-frame{height:350px}.art-callout.two{display:none}
  .site-form{padding:20px!important}.form-section-title{grid-template-columns:30px minmax(0,1fr)}
  .archive-ledger-row{grid-template-columns:28px minmax(0,1fr)}.archive-ledger-row>i{display:none}.archive-ledger-row h3,.archive-ledger-row p{grid-column:2}
  .archive-featured-media{min-height:220px}.archive-editorial-cta{padding:22px}
  .archive-metric{padding:22px}.archive-metric strong{font-size:38px}
  .article-byline{flex-wrap:wrap;gap:12px}
}

@media(max-width:380px){
  .section-pad,.exp-shell{width:calc(100% - 28px)!important}
  .brand,.brand img{width:130px}
  .site-header{height:60px}.menu-toggle{width:40px;height:40px}
  .inner-hero,.form-hero{padding-top:100px}
  .art-frame{height:320px}
  .archive-topic-index span{width:100%}
}

/* Thank-you page */
.thank-you-hero{min-height:calc(100vh - 120px);padding-top:160px;padding-bottom:100px;display:flex;flex-direction:column;justify-content:center}
.thank-you-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.55fr);gap:80px;align-items:end}
.thank-you-copy h1{font:600 clamp(48px,5.4vw,82px)/1.02 Montserrat,sans-serif;letter-spacing:-.05em;margin:0;max-width:900px}
.thank-you-copy>p{max-width:700px;margin:26px 0 0;color:#91a5b1;font:400 16px/1.8 Poppins,sans-serif}
.thank-you-status{border-top:1px solid var(--iz-edge-strong,rgba(102,183,232,.34));border-bottom:1px solid var(--iz-edge,rgba(135,177,203,.18));padding:28px 0}
.thank-you-status>span{display:block;color:#6e8796;font:600 10px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.thank-you-status strong{display:flex;align-items:center;gap:10px;margin-top:22px;color:#eaf3f8;font:600 18px Montserrat,sans-serif}.thank-you-status strong i{color:#5dd69b}
.thank-you-status p{margin:15px 0 0;color:#8397a4;font:400 14px/1.75 Poppins,sans-serif}
@media(max-width:980px){.thank-you-grid{grid-template-columns:1fr;gap:48px}.thank-you-status{max-width:720px}}
@media(max-width:780px){.thank-you-hero{min-height:auto;padding-top:118px;padding-bottom:76px}.thank-you-copy h1{font-size:clamp(39px,11vw,54px)}.thank-you-copy>p{font-size:15px}.thank-you-grid{gap:38px}}

/* Process page responsive correction — v3.3.2
 * Keep number, icon and copy in one intentional row on compact screens.
 * The prior two-column override forced the copy onto a second grid row.
 */
@media (max-width:980px){
  .process-detail-list{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    grid-column:auto!important;
  }
  .process-detail{
    display:grid!important;
    grid-template-columns:42px 52px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    gap:16px!important;
    align-items:start!important;
    min-height:0!important;
    padding:24px 0!important;
  }
  .process-detail-num{
    grid-column:1!important;
    grid-row:1!important;
    align-self:start!important;
    padding-top:11px!important;
    line-height:1!important;
  }
  .process-detail-icon{
    grid-column:2!important;
    grid-row:1!important;
    width:48px!important;
    height:48px!important;
    border-radius:12px!important;
  }
  .process-detail>div:nth-child(3){
    grid-column:3!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .process-detail>span{display:none!important}
  .process-detail small{display:block!important;line-height:1.5!important;margin:0 0 6px!important}
  .process-detail h3{margin:0 0 8px!important}
  .process-detail p{max-width:none!important;margin:0!important}

  /* Avoid ScrollTrigger leaving process rows invisible on compact devices. */
  .process-detail.reveal{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    translate:none!important;
    rotate:none!important;
    scale:none!important;
  }
}

@media (max-width:520px){
  .process-detail{
    grid-template-columns:30px 42px minmax(0,1fr)!important;
    gap:12px!important;
    padding:21px 0!important;
  }
  .process-detail-num{padding-top:9px!important}
  .process-detail-icon{width:40px!important;height:40px!important;border-radius:10px!important;font-size:18px!important}
  .process-detail small{font-size:10px!important;letter-spacing:.07em!important}
  .process-detail h3{font-size:21px!important;line-height:1.2!important;margin-bottom:7px!important}
  .process-detail p{font-size:14px!important;line-height:1.7!important}
}
