/* =========================================================
   ZALWEB ABOUT V2
   Enterprise / Product Company
   ========================================================= */

.zwa2{
  --navy:#031a36;
  --navy2:#06294f;
  --blue:#075ea7;
  --green:#00bfae;
  --text:#17324e;
  --muted:#68798d;
  --line:#dce6ef;
  --soft:#f5f8fb;

  overflow:hidden;
  background:#fff;
  color:var(--text);
}

.zwa2 *,
.zwa2 *::before,
.zwa2 *::after{
  box-sizing:border-box;
}

.zwa2-shell{
  width:min(1240px,calc(100% - 48px));
  margin-inline:auto;
}

.zwa2-eyebrow,
.zwa2-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:var(--blue);
  font-size:10px;
  font-weight:950;
  letter-spacing:.12em;
  direction:ltr;
}

.zwa2-eyebrow{
  min-height:34px;
  padding:7px 11px;
  margin-bottom:22px;
  border:1px solid rgba(0,191,174,.22);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(10px);
}

.zwa2-eyebrow i{
  width:7px;
  height:7px;
  display:block;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 5px rgba(0,191,174,.09);
}

.zwa2-kicker{
  margin-bottom:17px;
}

.zwa2-kicker::before{
  content:"";
  width:24px;
  height:2px;
  background:var(--green);
}

.zwa2-btn{
  min-height:51px;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid var(--line);
  font-size:12px;
  font-weight:950;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease;
}

.zwa2-btn:hover{
  transform:translateY(-2px);
}

.zwa2-btn-primary{
  border-color:var(--green);
  background:var(--green);
  color:#03243e;
  box-shadow:0 15px 34px rgba(0,191,174,.22);
}

.zwa2-btn-secondary{
  background:#fff;
  color:var(--navy);
}

.zwa2-btn-dark{
  border-color:rgba(255,255,255,.17);
  background:rgba(255,255,255,.05);
  color:#fff;
}


/* =========================================================
   HERO
   ========================================================= */

.zwa2-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:92px 0 78px;
  background:
    radial-gradient(circle at 10% 5%,rgba(0,191,174,.12),transparent 31%),
    radial-gradient(circle at 92% 4%,rgba(7,94,167,.11),transparent 31%),
    linear-gradient(180deg,#fff,#f7fafc);
}

.zwa2-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.7;
  background-image:
    linear-gradient(rgba(3,26,54,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(3,26,54,.035) 1px,transparent 1px);
  background-size:70px 70px;
  mask-image:linear-gradient(to bottom,#000,transparent 92%);
}

.zwa2-hero::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:540px;
  height:540px;
  left:-280px;
  bottom:-340px;
  border-radius:50%;
  border:1px solid rgba(0,191,174,.12);
  box-shadow:
    0 0 0 72px rgba(0,191,174,.025),
    0 0 0 145px rgba(7,94,167,.018);
}

.zwa2-hero-grid{
  min-height:650px;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(540px,1.1fr);
  gap:70px;
  align-items:center;
}

.zwa2-hero-copy{
  position:relative;
  z-index:2;
}

.zwa2-hero h1{
  max-width:680px;
  margin:0;
  color:var(--navy);
  font-size:clamp(43px,4.6vw,66px);
  line-height:1.43;
  font-weight:950;
  letter-spacing:-1.6px;
}

.zwa2-hero h1 strong{
  position:relative;
  color:var(--blue);
  font-weight:950;
}

.zwa2-hero h1 strong::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:0;
  left:0;
  bottom:3px;
  height:8px;
  background:rgba(0,191,174,.17);
}

.zwa2-lead{
  max-width:670px;
  margin:23px 0 0;
  color:#5f7185;
  font-size:16px;
  line-height:2.15;
}

.zwa2-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:31px;
}

.zwa2-principle-line{
  display:flex;
  flex-wrap:wrap;
  gap:9px 20px;
  margin-top:29px;
}

.zwa2-principle-line span{
  display:flex;
  align-items:center;
  gap:7px;
  color:#607187;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
  direction:ltr;
}

.zwa2-principle-line span::before{
  content:"";
  width:6px;
  height:6px;
  background:var(--green);
}


/* CONSOLE */

.zwa2-console{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(3,26,54,.11);
  background:#fff;
  box-shadow:
    0 42px 95px rgba(3,26,54,.16),
    0 8px 24px rgba(3,26,54,.07);
  direction:ltr;
}

.zwa2-console::before{
  content:"";
  position:absolute;
  inset:54px 0 0;
  opacity:.55;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(3,26,54,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(3,26,54,.025) 1px,transparent 1px);
  background-size:45px 45px;
}

.zwa2-console-top{
  height:55px;
  padding:0 17px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid #e6edf3;
}

.zwa2-console-brand{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--navy);
  font-size:9px;
  font-weight:950;
  letter-spacing:.1em;
}

.zwa2-console-mark{
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--green),var(--blue));
  color:#fff;
}

.zwa2-console-state{
  padding:5px 7px;
  border:1px solid rgba(0,191,174,.19);
  background:#eaf9f7;
  color:#008e82;
  font-size:6px;
  font-weight:950;
  letter-spacing:.1em;
}

.zwa2-console-body{
  position:relative;
  z-index:2;
  min-height:510px;
  padding:25px;
}

.zwa2-stack-intro{
  margin-bottom:20px;
}

.zwa2-stack-intro span{
  display:block;
  margin-bottom:6px;
  color:#8a98a7;
  font-size:7px;
  font-weight:950;
  letter-spacing:.12em;
}

.zwa2-stack-intro strong{
  display:block;
  max-width:430px;
  color:#18334f;
  font-size:15px;
  line-height:1.55;
}

.zwa2-stack{
  display:grid;
  gap:8px;
}

.zwa2-layer{
  min-height:65px;
  padding:0 14px;
  display:grid;
  grid-template-columns:125px 1fr auto;
  gap:12px;
  align-items:center;
  border:1px solid #e0e8ef;
  background:rgba(255,255,255,.94);
}

.zwa2-layer > div{
  display:flex;
  align-items:center;
  gap:8px;
}

.zwa2-layer small{
  color:#9aa6b2;
  font-size:6px;
  font-weight:950;
}

.zwa2-layer b{
  color:#263e58;
  font-size:8px;
  letter-spacing:.04em;
}

.zwa2-layer p{
  margin:0;
  color:#76869a;
  font-size:7px;
}

.zwa2-layer > span{
  padding:5px 6px;
  background:#f0f4f7;
  color:#69798c;
  font-size:6px;
  font-weight:950;
}

.zwa2-layer-core{
  border-color:rgba(0,191,174,.27);
  background:#f0faf8;
}

.zwa2-layer-core > span{
  background:var(--green);
  color:#03243e;
}


/* =========================================================
   ORIGIN
   ========================================================= */

.zwa2-origin{
  padding:122px 0;
  background:#fff;
}

.zwa2-origin-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:82px;
  align-items:center;
}

.zwa2-origin-copy h2,
.zwa2-section-head h2,
.zwa2-build-copy h2{
  margin:0;
  color:var(--navy);
  font-size:clamp(35px,3.7vw,52px);
  line-height:1.55;
  font-weight:950;
  letter-spacing:-1px;
}

.zwa2-origin-copy p{
  margin:18px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:2.15;
}

.zwa2-transition{
  padding:22px;
  border:1px solid var(--line);
  background:
    linear-gradient(rgba(3,26,54,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(3,26,54,.025) 1px,transparent 1px),
    #f9fbfd;
  background-size:42px 42px;
  direction:ltr;
}

.zwa2-transition-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:15px;
}

.zwa2-transition-head span{
  color:#9ba6b3;
  font-size:7px;
  font-weight:950;
}

.zwa2-transition-head b{
  color:#385069;
  font-size:9px;
}

.zwa2-fragmented{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.zwa2-frag{
  min-height:75px;
  padding:12px;
  border:1px solid #e1e8ee;
  background:#fff;
}

.zwa2-frag small{
  display:block;
  margin-bottom:7px;
  color:#9ca7b4;
  font-size:6px;
  font-weight:950;
}

.zwa2-frag strong{
  display:block;
  margin-bottom:4px;
  color:#334960;
  font-size:9px;
}

.zwa2-frag span{
  color:#8b98a7;
  font-size:6px;
}

.zwa2-transition-arrow{
  display:flex;
  align-items:center;
  gap:11px;
  margin:18px 0;
  color:#008f82;
  font-size:7px;
  font-weight:950;
  letter-spacing:.11em;
}

.zwa2-transition-arrow span{
  flex:1;
  height:1px;
  background:linear-gradient(90deg,transparent,#00bfae);
}

.zwa2-transition-arrow span:last-child{
  transform:scaleX(-1);
}

.zwa2-connected{
  padding:20px;
  border:1px solid rgba(0,191,174,.22);
  background:
    radial-gradient(circle at 90% 15%,rgba(0,191,174,.10),transparent 35%),
    #fff;
}

.zwa2-connected-core{
  text-align:center;
}

.zwa2-connected-core small{
  display:block;
  margin-bottom:5px;
  color:#8a98a7;
  font-size:6px;
  font-weight:950;
}

.zwa2-connected-core strong{
  display:block;
  color:var(--navy);
  font-size:23px;
  letter-spacing:.08em;
}

.zwa2-connected-core span{
  display:block;
  margin-top:5px;
  color:#738499;
  font-size:7px;
}

.zwa2-connected-tags{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:5px;
  margin-top:17px;
}

.zwa2-connected-tags span{
  min-height:31px;
  display:grid;
  place-items:center;
  border:1px solid #e1e9ef;
  background:#f8fafc;
  color:#5d7186;
  font-size:6px;
  font-weight:950;
}


/* =========================================================
   SECTION HEAD
   ========================================================= */

.zwa2-section-head{
  max-width:790px;
  margin:0 auto 50px;
  text-align:center;
}

.zwa2-section-head p{
  max-width:650px;
  margin:17px auto 0;
  color:var(--muted);
  font-size:14px;
  line-height:2.05;
}


/* =========================================================
   PRINCIPLES
   ========================================================= */

.zwa2-principles{
  padding:120px 0;
  background:
    radial-gradient(circle at 12% 0%,rgba(0,191,174,.13),transparent 30%),
    linear-gradient(145deg,#03182f,#06294f);
}

.zwa2-section-head-dark h2{
  color:#fff;
}

.zwa2-section-head-dark p{
  color:#9eb3c5;
}

.zwa2-section-head-dark .zwa2-kicker{
  color:#5addd0;
}

.zwa2-principles-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(255,255,255,.12);
  border-right:1px solid rgba(255,255,255,.12);
}

.zwa2-principles-grid article{
  min-height:330px;
  padding:31px 28px;
  border-left:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}

.zwa2-index{
  display:block;
  margin-bottom:50px;
  color:#5bded2;
  font-size:9px;
  font-weight:950;
  letter-spacing:.1em;
}

.zwa2-principles-grid article > strong{
  display:block;
  margin-bottom:9px;
  color:#7ee4da;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
  direction:ltr;
}

.zwa2-principles-grid h3{
  margin:0 0 12px;
  color:#fff;
  font-size:20px;
  font-weight:950;
}

.zwa2-principles-grid p{
  margin:0;
  color:#94aabd;
  font-size:12px;
  line-height:2;
}


/* =========================================================
   PRODUCTS
   ========================================================= */

.zwa2-products{
  padding:122px 0;
  background:var(--soft);
}

.zwa2-products-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.zwa2-product-card{
  overflow:hidden;
  border:1px solid #dbe5ed;
  background:#fff;
  transition:
    transform .22s ease,
    box-shadow .22s ease;
}

.zwa2-product-card:hover{
  transform:translateY(-5px);
  box-shadow:0 25px 65px rgba(3,26,54,.10);
}

.zwa2-product-preview{
  padding:17px;
  border-bottom:1px solid #e4ebf1;
  background:
    radial-gradient(circle at 12% 10%,rgba(0,191,174,.10),transparent 32%),
    linear-gradient(150deg,#fbfdff,#eef4f8);
}

.zwa2-product-window{
  height:230px;
  overflow:hidden;
  border:1px solid #dce5ed;
  background:#fff;
  direction:ltr;
  box-shadow:0 13px 34px rgba(3,26,54,.08);
}

.zwa2-product-bar{
  height:34px;
  padding:0 10px;
  display:flex;
  align-items:center;
  gap:4px;
  border-bottom:1px solid #e6ecf1;
}

.zwa2-product-bar span{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#cbd5de;
}

.zwa2-product-bar b{
  margin-left:auto;
  color:#8390a0;
  font-size:6px;
  letter-spacing:.1em;
}

.zwa2-product-dashboard{
  height:196px;
  display:grid;
  grid-template-columns:66px 1fr;
}

.zwa2-product-dashboard aside{
  padding:12px 7px;
  border-right:1px solid #e8eef3;
  background:#f8fafc;
}

.zwa2-product-dashboard aside i{
  height:6px;
  display:block;
  margin-bottom:10px;
  background:#e1e8ee;
}

.zwa2-product-dashboard aside i:first-child{
  background:var(--green);
}

.zwa2-product-dashboard > div{
  padding:11px;
  background:#fbfcfd;
}

.zwa2-product-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:5px;
}

.zwa2-product-kpis i{
  height:36px;
  border:1px solid #e6ecf1;
  background:#fff;
}

.zwa2-product-chart{
  height:90px;
  margin-top:7px;
  padding:11px 8px 0;
  display:flex;
  align-items:flex-end;
  gap:5px;
  border:1px solid #e6ecf1;
  background:#fff;
}

.zwa2-product-chart i{
  flex:1;
  display:block;
  background:linear-gradient(to top,var(--blue),var(--green));
}

.zwa2-product-chart i:nth-child(1){height:32%}
.zwa2-product-chart i:nth-child(2){height:48%}
.zwa2-product-chart i:nth-child(3){height:42%}
.zwa2-product-chart i:nth-child(4){height:66%}
.zwa2-product-chart i:nth-child(5){height:58%}
.zwa2-product-chart i:nth-child(6){height:82%}


/* BUILDER PREVIEW */

.zwa2-product-builder{
  height:196px;
  display:grid;
  grid-template-columns:64px 1fr;
}

.zwa2-product-builder aside{
  padding:11px 7px;
  border-right:1px solid #e7edf2;
  background:#f8fafc;
}

.zwa2-product-builder aside i{
  height:7px;
  display:block;
  margin-bottom:9px;
  background:#e1e8ee;
}

.zwa2-product-builder aside i:first-child{
  background:var(--green);
}

.zwa2-builder-canvas{
  padding:12px;
  background:#eef4f8;
}

.zwa2-builder-hero{
  height:65px;
  display:block;
  margin-bottom:7px;
  background:linear-gradient(135deg,var(--navy),var(--blue));
}

.zwa2-builder-canvas > div{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:5px;
  margin-bottom:7px;
}

.zwa2-builder-canvas > div i{
  height:34px;
  border:1px solid #e4ebf1;
  background:#fff;
}

.zwa2-builder-line{
  height:7px;
  display:block;
  margin-bottom:5px;
  background:#fff;
}


/* AI PREVIEW */

.zwa2-product-ai .zwa2-product-preview{
  background:
    radial-gradient(circle at 90% 0%,rgba(0,191,174,.14),transparent 35%),
    linear-gradient(150deg,#041c38,#062b50);
}

.zwa2-product-ai .zwa2-product-window{
  border-color:rgba(255,255,255,.12);
  background:#061e39;
}

.zwa2-product-ai .zwa2-product-bar{
  border-bottom-color:rgba(255,255,255,.09);
}

.zwa2-product-ai .zwa2-product-bar b{
  color:#7290aa;
}

.zwa2-product-ai-ui{
  height:196px;
  padding:14px;
  background:#061e39;
}

.zwa2-product-ai-ui > strong{
  display:block;
  margin-bottom:15px;
  color:#fff;
  font-size:7px;
  letter-spacing:.1em;
}

.zwa2-ai-source-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:6px;
}

.zwa2-ai-source-row i{
  min-height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(0,191,174,.15);
  background:rgba(0,191,174,.05);
  color:#64d8cd;
  font-size:6px;
  font-style:normal;
  font-weight:950;
}

.zwa2-ai-response{
  margin-top:10px;
  padding:13px;
  border-left:2px solid var(--green);
  background:rgba(255,255,255,.05);
}

.zwa2-ai-response span{
  height:6px;
  display:block;
  margin-bottom:8px;
  background:rgba(255,255,255,.10);
}

.zwa2-ai-response span:nth-child(2){
  width:82%;
}

.zwa2-ai-response span:nth-child(3){
  width:63%;
}


/* PRODUCT COPY */

.zwa2-product-content{
  padding:25px;
}

.zwa2-product-content > span{
  display:block;
  margin-bottom:9px;
  color:#00a795;
  font-size:8px;
  font-weight:950;
  letter-spacing:.1em;
  direction:ltr;
}

.zwa2-product-content h3{
  margin:0;
  color:var(--navy);
  font-size:22px;
  font-weight:950;
  direction:ltr;
  text-align:right;
}

.zwa2-product-content p{
  min-height:84px;
  margin:11px 0 18px;
  color:#708095;
  font-size:11px;
  line-height:2;
}

.zwa2-product-content a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--blue);
  font-size:10px;
  font-weight:950;
}

.zwa2-product-content a b{
  transition:transform .2s ease;
}

.zwa2-product-content a:hover b{
  transform:translateX(-4px);
}


/* =========================================================
   BUILD
   ========================================================= */

.zwa2-build{
  padding:124px 0;
  background:#fff;
}

.zwa2-build-grid{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:78px;
  align-items:center;
}

.zwa2-build-copy > p{
  margin:20px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:2.1;
}

.zwa2-build-list{
  margin-top:30px;
  border-top:1px solid var(--line);
}

.zwa2-build-list article{
  min-height:70px;
  display:grid;
  grid-template-columns:35px 1fr;
  gap:13px;
  align-items:center;
  border-bottom:1px solid var(--line);
}

.zwa2-build-list article > b{
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  background:#eaf9f7;
  color:#008d80;
  font-size:7px;
}

.zwa2-build-list strong{
  display:block;
  margin-bottom:3px;
  color:#294059;
  font-size:10px;
  direction:ltr;
}

.zwa2-build-list span{
  display:block;
  color:#76869a;
  font-size:9px;
}

.zwa2-build-panel{
  overflow:hidden;
  border:1px solid var(--line);
  background:
    linear-gradient(rgba(3,26,54,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(3,26,54,.025) 1px,transparent 1px),
    #f9fbfd;
  background-size:44px 44px;
  box-shadow:0 26px 70px rgba(3,26,54,.08);
  direction:ltr;
}

.zwa2-build-panel-head{
  min-height:70px;
  padding:0 19px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid #e2e9ef;
  background:rgba(255,255,255,.9);
}

.zwa2-build-panel-head small{
  display:block;
  margin-bottom:4px;
  color:#9aa6b3;
  font-size:6px;
  font-weight:950;
}

.zwa2-build-panel-head strong{
  color:#253d57;
  font-size:11px;
}

.zwa2-build-panel-head > span{
  padding:6px 8px;
  border:1px solid rgba(0,191,174,.19);
  background:#eaf9f7;
  color:#008e82;
  font-size:6px;
  font-weight:950;
}

.zwa2-build-matrix{
  padding:20px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
}

.zwa2-build-matrix > div{
  min-height:104px;
  padding:14px;
  border:1px solid #dfe7ee;
  background:rgba(255,255,255,.94);
}

.zwa2-build-matrix small{
  display:block;
  margin-bottom:13px;
  color:#9aa6b2;
  font-size:6px;
  font-weight:950;
}

.zwa2-build-matrix strong{
  display:block;
  margin-bottom:4px;
  color:#243d57;
  font-size:10px;
}

.zwa2-build-matrix span{
  color:#78889b;
  font-size:7px;
}

.zwa2-build-status{
  margin:0 20px 20px;
  padding:14px 15px;
  display:grid;
  grid-template-columns:1fr auto 9px;
  gap:15px;
  align-items:center;
  border:1px solid rgba(0,191,174,.20);
  background:#fff;
}

.zwa2-build-status span{
  color:#8794a3;
  font-size:6px;
  font-weight:950;
}

.zwa2-build-status strong{
  color:#007f74;
  font-size:8px;
}

.zwa2-build-status i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 5px rgba(0,191,174,.09);
}


/* =========================================================
   DIRECTION
   ========================================================= */

.zwa2-direction{
  padding:120px 0;
  background:
    radial-gradient(circle at 88% 100%,rgba(7,94,167,.20),transparent 35%),
    #031a36;
}

.zwa2-direction-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.11);
  border-right:1px solid rgba(255,255,255,.11);
}

.zwa2-direction-grid article{
  min-height:260px;
  padding:28px 24px;
  border-left:1px solid rgba(255,255,255,.11);
  border-bottom:1px solid rgba(255,255,255,.11);
}

.zwa2-direction-grid article > span{
  display:block;
  margin-bottom:44px;
  color:#56d9cc;
  font-size:8px;
  font-weight:950;
}

.zwa2-direction-grid strong{
  display:block;
  margin-bottom:11px;
  color:#fff;
  font-size:13px;
  direction:ltr;
}

.zwa2-direction-grid p{
  margin:0;
  color:#91a8bc;
  font-size:10px;
  line-height:1.95;
}


/* =========================================================
   FAQ
   ========================================================= */

.zwa2-faq{
  padding:120px 0;
  background:#fff;
}

.zwa2-faq-list{
  width:min(920px,100%);
  margin-inline:auto;
  border-top:1px solid var(--line);
}

.zwa2-faq-list details{
  border-bottom:1px solid var(--line);
}

.zwa2-faq-list summary{
  min-height:79px;
  padding:20px 54px 20px 0;
  position:relative;
  display:flex;
  align-items:center;
  color:#19334f;
  font-size:14px;
  line-height:1.9;
  font-weight:950;
  cursor:pointer;
  list-style:none;
}

.zwa2-faq-list summary::-webkit-details-marker{
  display:none;
}

.zwa2-faq-list summary::before,
.zwa2-faq-list summary::after{
  content:"";
  position:absolute;
  right:8px;
  top:50%;
  width:17px;
  height:2px;
  background:#00a694;
  transform:translateY(-50%);
  transition:transform .2s ease;
}

.zwa2-faq-list summary::after{
  transform:translateY(-50%) rotate(90deg);
}

.zwa2-faq-list details[open] summary::after{
  transform:translateY(-50%) rotate(0);
}

.zwa2-faq-list details p{
  margin:0;
  padding:0 54px 24px 0;
  color:#708095;
  font-size:12px;
  line-height:2.1;
}


/* =========================================================
   FINAL
   ========================================================= */

.zwa2-final{
  padding:0 0 92px;
  background:#fff;
}

.zwa2-final-box{
  min-height:360px;
  padding:58px 62px;
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr auto;
  gap:65px;
  align-items:center;
  background:
    radial-gradient(circle at 85% 10%,rgba(0,191,174,.20),transparent 30%),
    linear-gradient(145deg,#062b50,#03182f);
}

.zwa2-final-box::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.3;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;
}

.zwa2-final-box > *{
  position:relative;
  z-index:2;
}

.zwa2-final .zwa2-kicker{
  color:#5bdbd0;
}

.zwa2-final h2{
  max-width:700px;
  margin:0;
  color:#fff;
  font-size:clamp(35px,4vw,54px);
  line-height:1.5;
  font-weight:950;
}

.zwa2-final p{
  max-width:650px;
  margin:18px 0 0;
  color:#9fb4c7;
  font-size:13px;
  line-height:2;
}

.zwa2-final-actions{
  min-width:220px;
  display:grid;
  gap:9px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1080px){

  .zwa2-hero-grid,
  .zwa2-origin-grid,
  .zwa2-build-grid{
    grid-template-columns:1fr;
  }

  .zwa2-hero-copy{
    max-width:800px;
  }

  .zwa2-console,
  .zwa2-transition,
  .zwa2-build-panel{
    width:min(780px,100%);
    margin-inline:auto;
  }

  .zwa2-products-grid{
    grid-template-columns:1fr;
  }

  .zwa2-product-card{
    display:grid;
    grid-template-columns:minmax(360px,.9fr) 1.1fr;
  }

  .zwa2-product-content p{
    min-height:0;
  }

  .zwa2-direction-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:760px){

  .zwa2-shell{
    width:min(100% - 28px,1240px);
  }

  .zwa2-hero{
    padding:58px 0 54px;
  }

  .zwa2-hero-grid{
    min-height:0;
    gap:43px;
  }

  .zwa2-hero h1{
    font-size:clamp(34px,9.5vw,46px);
    letter-spacing:-.8px;
  }

  .zwa2-lead{
    font-size:14px;
  }

  .zwa2-actions{
    display:grid;
  }

  .zwa2-btn{
    width:100%;
  }

  .zwa2-console-body{
    min-height:0;
    padding:15px;
  }

  .zwa2-layer{
    min-height:0;
    padding:12px;
    grid-template-columns:1fr;
    gap:5px;
  }

  .zwa2-layer > span{
    justify-self:start;
  }

  .zwa2-origin,
  .zwa2-principles,
  .zwa2-products,
  .zwa2-build,
  .zwa2-direction,
  .zwa2-faq{
    padding:82px 0;
  }

  .zwa2-origin-copy h2,
  .zwa2-section-head h2,
  .zwa2-build-copy h2{
    font-size:32px;
  }

  .zwa2-principles-grid,
  .zwa2-direction-grid{
    grid-template-columns:1fr;
  }

  .zwa2-principles-grid article{
    min-height:0;
  }

  .zwa2-index,
  .zwa2-direction-grid article > span{
    margin-bottom:28px;
  }

  .zwa2-product-card{
    display:block;
  }

  .zwa2-connected-tags{
    grid-template-columns:1fr 1fr;
  }

  .zwa2-connected-tags span:last-child{
    grid-column:1/-1;
  }

  .zwa2-final{
    padding-bottom:50px;
  }

  .zwa2-final-box{
    min-height:0;
    padding:40px 22px;
    grid-template-columns:1fr;
    gap:35px;
  }

  .zwa2-final-actions{
    min-width:0;
  }
}

@media(max-width:430px){

  .zwa2-fragmented{
    grid-template-columns:1fr;
  }

  .zwa2-build-matrix{
    grid-template-columns:1fr;
  }

  .zwa2-product-preview{
    padding:10px;
  }

  .zwa2-product-window{
    height:215px;
  }

  .zwa2-faq-list summary{
    padding-right:42px;
    font-size:12px;
  }

  .zwa2-faq-list details p{
    padding-right:42px;
    font-size:11px;
  }
}

@media(prefers-reduced-motion:reduce){

  .zwa2-btn,
  .zwa2-product-card,
  .zwa2-product-content a b,
  .zwa2-faq-list summary::after{
    transition:none;
  }
}
