/*!*************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[13].oneOf[12].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[13].oneOf[12].use[3]!./app/globals.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************/
/* Global styles migrated from the original Vite build. */
:root{
  --navy: #1D1B5B;
  --bright-cyan: #29E3E3;
  --teal-blue: #3DBFF2;
  --aqua-mint: #6FFFE9;
  --charcoal: #121429;
  --soft-white: #F8FAFC;
  --slate-gray: #5E6A85;
  --primary-gradient: linear-gradient(135deg, var(--teal-blue) 0%, var(--bright-cyan) 50%, var(--aqua-mint) 100%);
  --hero-gradient: linear-gradient(140deg, #DFF9FB 0%, #d8e6e9 28%, #9EA7BF 64%, #6F6B79 100%);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background: var(--soft-white);
  color: #111827;
}

/* utility tokens for creative section */
.px-8{padding-left:8vw; padding-right:8vw}
.py-16{padding-top:64px; padding-bottom:64px}
.bg-gradient-to-b{background-image:linear-gradient(to bottom, var(--gradient-from, #F8FAFC), var(--gradient-to, #E3F7FF))}
.from-slate-50{--gradient-from:#F8FAFC}
.to-cyan-50{--gradient-to:#E3F7FF}
.grid{display:grid}
.gap-6{gap:24px}
.bg-white{background:white}
.shadow{box-shadow:0 18px 42px rgba(18,20,41,0.08)}
.rounded-xl{border-radius:18px}
.p-6{padding:24px}
.border{border:1px solid transparent}
.border-indigo-100{border-color:rgba(29,27,91,0.12)}
.text-2xl{font-size:26px; line-height:1.35}
.text-xl{font-size:20px; line-height:1.4}
.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.text-indigo-950{color:#14123F}
.text-slate-600{color:var(--slate-gray)}
.text-cyan-600{color:var(--teal-blue)}
.mb-3{margin-bottom:12px}
.mb-8{margin-bottom:32px}
.mb-2{margin-bottom:8px}
.mb-4{margin-bottom:16px}
.max-w-2xl{max-width:42rem}
.hover\:underline:hover{text-decoration:underline}
.md\:grid-cols-3{grid-template-columns:1fr}
@media (min-width:768px){
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.creative-inner{max-width:1200px; margin:0 auto}
.creative-inner .bg-white.shadow{transition:transform 0.3s ease, box-shadow 0.3s ease}
.creative-inner .bg-white.shadow:hover{transform:translateY(-6px); box-shadow:0 24px 48px rgba(18,20,41,0.1)}

/* header */
.site-header{
  position:-webkit-sticky;
  position:sticky; top:0; z-index:40; display:flex; justify-content:space-between; align-items:center;
  padding:14px 8vw; background: rgba(248,250,252,0.9); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  border-bottom:1px solid rgba(0,0,0,0.04); border-left:1px solid rgba(29,27,91,0.08); border-right:1px solid rgba(29,27,91,0.08);
}
.brand{display:flex; gap:12px; align-items:center}
.brand-logo{height:52px; width:auto; object-fit:contain; display:block}
.brand-text{display:flex; flex-direction:column; gap:4px; max-width:280px}
.logo-mark{width:48px;height:48px;border-radius:10px;background:var(--primary-gradient); display:flex;align-items:center;justify-content:center;color:white;font-weight:700}
.brand-name{margin:0;font-size:18px;color:var(--navy)}
.brand-tagline{margin:0;font-size:12px;color:var(--slate-gray); line-height:1.25; display:flex; flex-direction:column; gap:2px}
.nav{display:flex; align-items:center; gap:20px; margin-left:auto}
.nav a{color:var(--navy); text-decoration:none; font-weight:600}
.nav a:last-child{border-left:1px solid rgba(29,27,91,0.12); padding-left:16px}

.nav-toggle{
  display:none;
  width:44px;
  height:44px;
  margin-left:auto;
  border:1px solid rgba(29,27,91,0.16);
  border-radius:12px;
  background:white;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0;
  cursor:pointer;
  transition:box-shadow 0.2s ease, border-color 0.2s ease;
}
.nav-toggle:hover{box-shadow:0 10px 20px rgba(18,20,41,0.08); border-color:rgba(61,191,242,0.4)}
.nav-toggle span{
  display:block;
  width:20px;
  height:3px;
  border-radius:999px;
  background:var(--navy);
  transition:transform 0.25s ease, opacity 0.25s ease;
}
.nav-toggle span + span{margin-top:4px}
.nav-toggle.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.nav a.active{
  color:var(--teal-blue);
  position:relative;
  font-weight:700;
}
.nav a.active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-8px;
  height:4px;
  border-radius:4px;
  background: linear-gradient(90deg, var(--teal-blue), var(--bright-cyan));
  opacity:0.95;
}

.section{min-height:70vh;padding:56px 8vw; display:flex; align-items:center; justify-content:center}
.section.compact{min-height:auto; padding:32px 8vw; display:block}
.ai-web-page{color:var(--navy)}
.ai-web-page h1,.ai-web-page h2,.ai-web-page h3,.ai-web-page h4,.ai-web-page h5{color:var(--navy); margin-top:0}
.ai-web-page p{color:var(--slate-gray); line-height:1.6}
.ai-web-page .section{min-height:auto; padding-top:40px; padding-bottom:40px; align-items:center; justify-content:center}
.ai-web-page .section + .section{margin-top:12px}
.ai-web-page .split{align-items:flex-start}
.ai-web-page .section-inner{margin:0 auto}
.ai-web-page .section-kicker{display:inline-flex; align-items:center; gap:8px; text-transform:uppercase; letter-spacing:0.2rem; font-size:12px; font-weight:700; color:var(--teal-blue)}
.ai-web-page .section-kicker::before{content:""; display:block; width:18px; height:2px; border-radius:999px; background:var(--teal-blue)}

.ai-web-page .hero-section{margin-top:40px; border-radius:32px; position:relative; padding:56px 0}
.ai-web-page .hero-section::before,
.ai-web-page .hero-section::after{content:""; position:absolute; top:0; bottom:0; left:8vw; right:8vw; border-radius:32px}
.ai-web-page .hero-section::before{background: var(--hero-gradient); z-index:0}
.ai-web-page .hero-section::after{background:linear-gradient(140deg, rgba(248,250,252,0.08) 0%, rgba(18,20,41,0.45) 100%); pointer-events:none; z-index:1}
.ai-web-page .hero-section > .section-inner{position:relative; z-index:2; padding:0 calc(8vw + 24px); margin:0 auto; max-width:none; width:100%}
.ai-web-page .hero-grid{position:relative; display:grid; grid-gap:48px; gap:48px; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center}
.ai-web-page .hero-content{max-width:560px; color:#111827; animation:slideInLeft 0.9s cubic-bezier(.2,.8,.2,1) both}
.ai-web-page .hero-title{font-size:42px; line-height:1.15; margin:12px 0 16px; color:#111827; animation:slideInLeft 0.95s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.06s}
.ai-web-page .hero-lead{color:#111827; font-size:18px; margin:0; animation:slideInLeft 1.0s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.12s}
.ai-web-page .hero-content .section-kicker{color:#000}
.ai-web-page .hero-content .cta-row{margin-top:32px}
.ai-web-page .hero-content > .section-inner.hero-grid{
  display:flex;
  gap:1em;
  margin-top:1.5rem;
  align-items:center;
  justify-content:flex-start;
}
.ai-web-page .hero-section .btn{padding:10px 18px; font-size:15px}
.ai-web-page .hero-section .btn.outline{border-width:2px}
.ai-web-page .hero-visual{justify-self:end; display:flex; align-items:center; justify-content:flex-end; animation:heroFadeIn 0.9s ease-out 0.2s both; margin-right:0}
.ai-web-page .ai-hero-image{width:100%; max-width:640px; border-radius:26px; border:1px solid rgba(111,255,233,0.32); box-shadow:0 32px 68px rgba(0,0,0,0.28); object-fit:cover; aspect-ratio:16/9; height:auto}
.ai-web-page .hero-cta-row{margin-top:32px}

.section.hero{position:relative; border-radius:32px; color:var(--navy); margin-top:32px; padding:56px 0}
.section.hero::before,
.section.hero::after{content:""; position:absolute; top:0; bottom:0; left:8vw; right:8vw; border-radius:32px}
.section.hero::before{background: var(--hero-gradient); z-index:0}
.section.hero::after{background:linear-gradient(140deg, rgba(248,250,252,0.08) 0%, rgba(18,20,41,0.45) 100%); pointer-events:none; z-index:1}
.section.hero .hero-inner{position:relative; z-index:2; padding:0 calc(8vw + 24px)}
.section.hero .hero-copy{color:#111827; animation:slideInLeft 0.15s cubic-bezier(.2,.8,.2,1) both}
.section.hero .hero-headline{color:#111827; animation:slideInLeft 0.95s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.06s}
.section.hero .hero-sub{color:#111827; animation:slideInLeft 1.0s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.12s}
.section.hero .hero-visual{animation:heroFadeIn 0.9s ease-out 0.2s both; margin-right:0}
.section.hero .hero-visual img{border-radius:26px; border:1px solid rgba(111,255,233,0.32); box-shadow:0 32px 68px rgba(0,0,0,0.28); max-width:640px; aspect-ratio:16/9; width:100%; height:auto}
.section.hero .eyebrow{color:#111827}
.section.hero .cta-row .btn.outline{color:var(--soft-white); border-color:rgba(248,250,252,0.6)}
.section.hero .cta-row .btn.outline:hover{background:rgba(255,255,255,0.04)}

@keyframes heroFadeUp{
  from{opacity:0; transform:translateY(24px)}
  to{opacity:1; transform:translateY(0)}
}

@keyframes heroFadeIn{
  from{opacity:0}
  to{opacity:1}
}

@keyframes slideInLeft{
  from{opacity:0; transform:translateX(-36px)}
  to{opacity:1; transform:translateX(0)}
}

@keyframes slideInRight{
  from{opacity:0; transform:translateX(36px)}
  to{opacity:1; transform:translateX(0)}
}

@keyframes slideInUp{
  from{opacity:0; transform:translateY(28px)}
  to{opacity:1; transform:translateY(0)}
}

@media (prefers-reduced-motion: reduce){
  .hero-copy, .ai-web-page .hero-content, .ai-web-page .hero-title, .ai-web-page .hero-lead,
  .section.hero .hero-copy, .section.hero .hero-headline, .section.hero .hero-sub{
    animation: none !important;
    transition: none !important;
  }
}

#capabilities .split-left h3,
#capabilities .split-left p,
#capabilities .split-left .btn{opacity:0}
#capabilities .split-left.animate--inview h3{animation: slideInLeft 0.55s cubic-bezier(.2,.8,.2,1) both; animation-delay:0s}
#capabilities .split-left.animate--inview p{animation: slideInLeft 0.55s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.06s}
#capabilities .split-left.animate--inview .btn{animation: slideInLeft 0.55s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.12s}

#iot .split-right h3,
#iot .split-right p,
#iot .split-right .btn{opacity:0}
#iot .split-right.animate--inview h3{animation: slideInRight 0.55s cubic-bezier(.2,.8,.2,1) both; animation-delay:0s}
#iot .split-right.animate--inview p{animation: slideInRight 0.55s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.06s}
#iot .split-right.animate--inview .btn{animation: slideInRight 0.55s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.12s}

#products .product-left,
#products .product-right{opacity:0; transform:translateY(18px)}
#products .product-left.animate--inview{animation: slideInUp 0.6s cubic-bezier(.2,.8,.2,1) both; animation-delay:0s}
#products .product-right.animate--inview{animation: slideInUp 0.6s cubic-bezier(.2,.8,.2,1) both; animation-delay:0.08s}

#creative .grid > div{opacity:0; transform:translateX(-24px)}
#creative .grid > div.animate--inview{animation: slideInLeft 0.5s cubic-bezier(.2,.8,.2,1) both}
#creative .grid > div.animate--inview:nth-child(1){animation-delay:0s}
#creative .grid > div.animate--inview:nth-child(2){animation-delay:0.06s}
#creative .grid > div.animate--inview:nth-child(3){animation-delay:0.12s}
#creative .grid > div.animate--inview:nth-child(4){animation-delay:0.18s}
#creative .grid > div.animate--inview:nth-child(5){animation-delay:0.24s}

.ai-web-page .section-heading{margin-bottom:18px}
.ai-web-page .section-heading h3{margin:8px 0 0; font-size:28px}
.ai-web-page .approach-section .section-inner{background:white; border-radius:24px; padding:36px; box-shadow:0 20px 46px rgba(17,24,39,0.08); max-width:1200px; width:100%; margin:0 auto}
.ai-web-page .approach-layout{display:grid; grid-gap:20px; gap:20px; max-width:900px; margin:0 auto; text-align:center}
.ai-web-page .approach-points{list-style:none; padding:0; margin:0; display:grid; grid-gap:12px; gap:12px}
.ai-web-page .approach-points li{padding:18px 24px; border-radius:16px; background:#F4F7FB; border:1px solid rgba(29,27,91,0.08); text-align:left; max-width:720px; margin:0 auto; transition:transform 0.3s ease, box-shadow 0.3s ease}
.ai-web-page .approach-points li:hover{transform:translateY(-4px); box-shadow:0 16px 32px rgba(18,20,41,0.08)}

.ai-web-page .table-scroll{overflow-x:auto; margin-top:24px}
.ai-web-page .competencies-table{width:100%; border-collapse:collapse; background:white; border-radius:20px; overflow:hidden; box-shadow:0 18px 42px rgba(18,20,41,0.08)}
.ai-web-page .competencies-table thead{background:linear-gradient(135deg, rgba(29,27,91,0.94), rgba(61,191,242,0.6))}
.ai-web-page .competencies-table th{padding:16px 20px; text-align:left; font-size:14px; letter-spacing:0.08em; text-transform:uppercase; color:var(--soft-white)}
.ai-web-page .competencies-table td{padding:18px 20px; font-size:16px; color:var(--slate-gray); border-top:1px solid rgba(29,27,91,0.08)}
.ai-web-page .competencies-table tbody tr:nth-child(even){background:#F7FAFF}

.ai-web-page .cards-grid{display:grid; grid-gap:24px; gap:24px; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); margin-top:12px}
.ai-web-page .card{background:#fff; border-radius:18px; padding:24px; border:1px solid #e6eef6; box-shadow:0 18px 42px rgba(18,20,41,0.08); display:flex; flex-direction:column; height:100%}
.ai-web-page .card .cta-row{margin-top:auto}
.ai-web-page .card h4{margin:0 0 12px; color:var(--navy)}
.ai-web-page .card p{color:var(--slate-gray); margin:0}
.ai-web-page .case-card{display:flex; flex-direction:column; gap:14px; position:relative; overflow:hidden; transition:transform 0.3s ease, box-shadow 0.3s ease}
.ai-web-page .case-card::after{content:""; position:absolute; inset:auto -24px -24px -24px; height:4px; background:linear-gradient(135deg, var(--teal-blue), var(--bright-cyan)); opacity:0.7}
.ai-web-page .case-card:hover{transform:translateY(-6px); box-shadow:0 26px 48px rgba(18,20,41,0.08)}
.ai-web-page .case-header{display:flex; flex-direction:column; gap:8px}
.ai-web-page .case-tag{display:inline-block; align-self:flex-start; font-size:12px; letter-spacing:0.14em; text-transform:uppercase; color:var(--teal-blue); background:rgba(61,191,242,0.12); border-radius:999px; padding:6px 12px}

.ai-web-page .stack-section{padding-top:20px}
.ai-web-page .stack-grid{display:grid; grid-gap:20px; gap:20px; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr))}
.ai-web-page .stack-card{background:white; border-radius:20px; padding:32px; border:1px solid rgba(29,27,91,0.08); box-shadow:0 18px 42px rgba(18,20,41,0.06); display:flex; flex-direction:column; gap:16px; transition:transform 0.3s ease, box-shadow 0.3s ease}
.ai-web-page .stack-card:hover{transform:translateY(-6px); box-shadow:0 28px 52px rgba(18,20,41,0.12)}
.ai-web-page .feature-list{list-style:none; padding:0; margin:0; display:grid; grid-gap:12px; gap:12px}
.ai-web-page .feature-list li{position:relative; padding-left:26px; color:var(--slate-gray)}
.ai-web-page .feature-list li::before{content:""; position:absolute; left:0; top:10px; width:10px; height:10px; border-radius:50%; background:var(--bright-cyan); box-shadow:0 0 0 4px rgba(61,191,242,0.16)}

.ai-web-page .cta-section{padding-top:20px; padding-bottom:20px}
.ai-web-page .cta-card{background:linear-gradient(135deg, rgba(29,27,91,0.95), rgba(61,191,242,0.76)); border-radius:28px; padding:48px; text-align:center; color:var(--soft-white); box-shadow:0 24px 58px rgba(18,20,41,0.18)}
.ai-web-page .cta-card h3{color:var(--soft-white); font-size:32px; margin:12px 0}
.ai-web-page .cta-card .section-kicker{justify-content:center; color:rgba(248,250,252,0.86)}
.ai-web-page .cta-card .section-kicker::before{background:rgba(248,250,252,0.6)}
.ai-web-page .cta-text{color:rgba(248,250,252,0.88); margin-bottom:28px}
.ai-web-page .cta-row{justify-content:center}

@media (max-width:1024px){
  .ai-web-page .hero-grid{grid-template-columns:1fr}
  .ai-web-page .hero-visual{justify-self:center; margin-right:0}
}

@media (max-width:640px){
  .ai-web-page .section{padding-top:32px; padding-bottom:32px}
  .ai-web-page .hero-section{margin-top:20px; border-radius:24px}
  .ai-web-page .hero-title{font-size:32px}
  .ai-web-page .ai-hero-image{max-width:100%; border-radius:22px}
  .section.hero .hero-visual{margin-right:0}
  .ai-web-page .stack-card{padding:24px}
  .ai-web-page .cta-card{padding:36px 24px}
  .ai-web-page .cta-card h3{font-size:26px}
}

.section.bg-alt{background: linear-gradient(180deg,#F8FAFC 0%, #EAF9FF 100%)}
.section-inner{max-width:1200px; width:100%}

.hero-inner{display:flex; gap:48px; align-items:center; justify-content:space-between; width:100%}
.hero-copy{flex:1 1; max-width:620px}
.eyebrow{color:var(--teal-blue); margin:0; font-weight:700; letter-spacing:.4px}
.hero-headline{font-size:36px; margin:8px 0 12px; color:var(--navy)}
.hero-sub{color:var(--slate-gray); margin-bottom:18px}
.cta-row{display:flex; gap:12px}
.muted{color:var(--slate-gray); opacity:0.8}
.hero-visual{flex:1 1; display:flex; align-items:center; justify-content:flex-end}
.hero-visual img{width:100%; max-width:640px; border-radius:16px; border:1px solid #e6eef6; box-shadow:0 22px 48px rgba(18,20,41,0.16)}
.dashboard-visual{width:100%; max-width:520px; aspect-ratio:16/9; height:auto; border-radius:16px; border:1px solid rgba(29,27,91,0.08); box-shadow:0 18px 42px rgba(18,20,41,0.14); display:block; object-fit:cover; margin:0 auto; transition:transform 0.35s ease}
.dashboard-visual:hover{transform:translateY(-6px)}
.hardware-visual{width:100%; max-width:520px; aspect-ratio:16/9; height:auto; border-radius:16px; border:1px solid #e6eef6; box-shadow:0 18px 42px rgba(18,20,41,0.14); display:block; object-fit:cover; transition:transform 0.35s ease}
.hardware-visual:hover{transform:translateY(-6px)}
.btn{display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; border-radius:12px; text-decoration:none; font-weight:700; border:none; cursor:pointer}
.btn.primary{background:var(--primary-gradient); color:white; box-shadow:0 6px 18px rgba(41,227,227,0.12)}
.btn.outline{background:transparent; border:2px solid var(--navy); color:var(--navy)}
.btn.small{padding:8px 12px; font-size:14px}

.placeholder{border-radius:12px; background:linear-gradient(180deg, rgba(29,27,91,0.06), rgba(61,191,242,0.03)); min-height:260px; display:flex; align-items:center; justify-content:center; border:1px dashed rgba(29,27,91,0.06)}
.visual-note{color:var(--slate-gray); font-size:14px; text-align:center; padding:18px}

.split{display:flex; gap:32px; align-items:stretch}
.split-left, .split-right{flex:1 1}

.media-grid{display:flex; gap:16px; margin:18px 0}
.media-thumb{flex:1 1; min-height:140px}

.product-section{display:flex; gap:36px; align-items:stretch}
.product-left{flex:1 1}
.product-right{flex:1.25 1; display:flex; align-items:stretch}
.product-card{display:flex; gap:18px; align-items:stretch; border-radius:12px; padding:18px; background:white; box-shadow:0 6px 18px rgba(17,24,39,0.04); transition:transform 0.3s ease, box-shadow 0.3s ease}
.product-card:hover{transform:translateY(-6px); box-shadow:0 24px 48px rgba(18,20,41,0.14)}
.product-visual{width:220px; min-height:140px}
.product-carousel{width:100%; height:auto; border-radius:20px; border:1px solid #e6eef6; box-shadow:0 18px 42px rgba(18,20,41,0.1); object-fit:cover; display:block; transition:transform 0.3s ease}
.product-carousel:hover{transform:translateY(-4px)}
.section-inner.product-section{max-width:none}

.contact-grid{display:grid; grid-template-columns: 1fr 1fr; grid-gap:18px; gap:18px; align-items:start}
.contact-card{padding:18px; border-radius:10px; background:white; box-shadow:0 6px 18px rgba(17,24,39,0.04); transition:transform 0.3s ease, box-shadow 0.3s ease}
.contact-card:hover{transform:translateY(-4px); box-shadow:0 22px 38px rgba(17,24,39,0.12)}
.contact-form label{display:block; margin-bottom:10px; color:var(--navy)}
.contact-form input, .contact-form textarea{width:100%; padding:10px; border-radius:8px; border:1px solid #e6eef6; margin-top:6px}

.contact-page .contact-title{font-size:40px; text-align:center; margin:0 0 8px; color:var(--navy); font-weight:800}
.contact-page .contact-sub{color:var(--slate-gray); text-align:center; margin:0 auto 18px; max-width:720px}
.contact-page .contact-card{border-radius:14px; padding:28px}
.contact-page .contact-card h4{margin:0 0 8px; color:var(--navy)}
.contact-page .contact-card p{margin:0; color:var(--slate-gray)}
.contact-page .contact-form input, .contact-page .contact-form textarea{background:#fff; box-shadow:none}
.contact-page .contact-form label{font-weight:600}
.contact-page .contact-form .btn.primary{width:100%; padding:14px 20px; font-size:16px; border-radius:12px}

@media (max-width:900px){
  .contact-grid{grid-template-columns:1fr;}
  .contact-page .contact-title{font-size:28px}
}

.terms-page{background:linear-gradient(180deg, rgba(248,250,252,0.8) 0%, rgba(227,247,255,0.5) 100%)}
.terms-container{max-width:860px; margin:0 auto; background:#fff; border-radius:28px; padding:48px; box-shadow:0 22px 48px rgba(18,20,41,0.08); color:var(--navy)}
.terms-header h1{margin:0; font-size:36px; color:var(--navy)}
.terms-subhead{margin:12px 0 32px; color:var(--slate-gray); line-height:1.6; max-width:640px}
.terms-body{color:var(--slate-gray); line-height:1.7; display:flex; flex-direction:column; gap:18px}
.terms-body h2, .terms-body h3{color:var(--navy); margin-top:28px; margin-bottom:12px}
.terms-body ul, .terms-body ol{padding-left:24px; display:flex; flex-direction:column; gap:10px}
.terms-body li{color:var(--slate-gray)}
.terms-status{font-weight:600; color:var(--slate-gray)}
.terms-error{color:#b91c1c}
.terms-warning{color:#92400e}
.terms-raw{background:#0f172a; color:#e2e8f0; padding:20px; border-radius:16px; overflow:auto; font-size:12px; line-height:1.5}

@media (max-width:768px){
  .terms-container{padding:32px 24px; border-radius:22px}
  .terms-header h1{font-size:28px}
}

.project-modal-overlay{position:fixed; inset:0; background:rgba(18,20,41,0.68); display:flex; align-items:center; justify-content:center; padding:24px; z-index:120}
.project-modal{background:var(--soft-white); border-radius:28px; width:min(520px, 100%); padding:36px; box-shadow:0 28px 68px rgba(18,20,41,0.22); display:flex; flex-direction:column; gap:20px}
.project-modal__header h3{margin:0; color:var(--navy); font-size:26px}
.project-modal__header p{margin:4px 0 0; color:var(--slate-gray); font-size:15px; line-height:1.5}
.project-modal__form{display:flex; flex-direction:column; gap:16px}
.project-modal__form label{font-weight:600; font-size:14px; color:var(--navy)}
.project-modal__form input,
.project-modal__form textarea{width:100%; padding:12px 14px; border-radius:12px; border:1px solid rgba(29,27,91,0.14); background:#fff; box-shadow:0 1px 2px rgba(15,23,42,0.04) inset; font-size:15px; color:var(--navy); transition:border-color 0.2s ease, box-shadow 0.2s ease}
.project-modal__form input:focus,
.project-modal__form textarea:focus{outline:none; border-color:rgba(61,191,242,0.6); box-shadow:0 0 0 3px rgba(61,191,242,0.16)}
.project-modal__form textarea{min-height:132px; resize:vertical}
.project-modal__actions{display:flex; justify-content:flex-end; gap:12px; margin-top:4px}
.project-modal__actions .btn{min-width:120px}

.site-footer{background:var(--charcoal); color:#EAF9FF; padding:36px 8vw}
.footer-grid{display:grid; grid-template-columns: repeat(4,1fr); grid-gap:18px; gap:18px; max-width:1200px; margin:0 auto}
.footer-grid a{color:#EAF9FF; text-decoration:none}
.site-footer ul{list-style:none; padding:0; margin:12px 0 0; display:flex; flex-direction:column; gap:8px}
.footer-bottom{margin-top:20px; text-align:center; opacity:0.8}
.footer-logo{height:40px; width:auto; display:block; margin:0; border-radius:10px}

@media (max-width:900px){
  .split, .hero-inner, .product-section{flex-direction:column}
  .contact-grid{grid-template-columns:1fr}
  .nav-toggle{display:inline-flex}
  .nav{
    position:fixed;
    top:76px;
    right:8vw;
    left:8vw;
    display:none;
    flex-direction:column;
    align-items:flex-start;
    gap:16px;
    padding:20px;
    background:rgba(18,20,41,0.98);
    border-radius:16px;
    box-shadow:0 22px 48px rgba(0,0,0,0.25);
    border:1px solid rgba(61,191,242,0.35);
    z-index:50;
  }
  .nav.open{display:flex}
  .nav a{color:#F8FAFC; font-size:16px; width:100%}
  .nav a:last-child{border-left:none; padding-left:0}
  .hero-headline{font-size:28px}
  .footer-grid{grid-template-columns:repeat(2, minmax(0, 1fr)); gap:24px}
}

@media (max-width:640px){
  .footer-grid{grid-template-columns:1fr; text-align:center}
  .footer-grid > div{display:flex; flex-direction:column; align-items:center; gap:12px}
  .footer-grid ul{padding:0; margin:0; list-style:none}
  .footer-bottom{margin-top:28px}
}

