/* =========================================================
   COREENACT — RESPONSIVE + COLOUR SYSTEM
   Desktop geometry is intentionally left untouched. Layout
   adaptations begin at 1100px and below.
   ========================================================= */

:root{
  --accent-blue:#5567ff;
  --accent-cyan:#20cfd1;
  --accent-violet:#9b5cff;
  --accent-pink:#f052a0;
  --accent-coral:#ff735c;
  --accent-amber:#ffb33f;
  --accent-mint:#43dfa6;
  --text-primary:#f5f7fb;
  --text-secondary:#c7d2e3;
  --text-muted:#9ba8bc;
  --gradient-accent:linear-gradient(120deg,#5567ff 0%,#20cfd1 48%,#9b5cff 100%);
  --motion-accent:#56e6c2;
  --motion-accent-2:#4bc7ff;
  --motion-accent-3:#a66cff;
}

/* Home hero reference layout breakpoints */
@media(max-width:1100px){.hero-ai-showcase .hero-showcase-grid{grid-template-columns:1.08fr .92fr;gap:24px}.hero-ai-showcase .hero-capabilities{gap:10px}.hero-ai-showcase .hero-capabilities>a{padding:13px 9px}.hero-ai-showcase .hero-capabilities strong{font-size:.74rem}}
@media(max-width:820px){.hero-ai-showcase{min-height:0!important}.hero-ai-showcase .hero-showcase-grid{grid-template-columns:1fr;text-align:center;padding-top:60px}.hero-ai-showcase .hero-showcase-copy{padding:0}.hero-ai-showcase .hero-copy{margin:24px auto 0}.hero-ai-showcase .hero-person-stage{height:auto;min-height:365px}.hero-ai-showcase .hero-capabilities{grid-template-columns:repeat(2,1fr);margin-bottom:-35px}.hero-ai-showcase .hero-credibility{padding-top:82px}.hero-ai-showcase .hero-credibility-grid{grid-template-columns:1fr;gap:34px;text-align:center}.hero-ai-showcase .hero-credibility-grid::before{display:none}.hero-ai-showcase .inner-copy,.hero-ai-showcase .inner-mark{grid-column:1;grid-row:auto}}
@media(max-width:520px){.hero-ai-showcase .hero-showcase-grid{padding-top:42px;padding-bottom:25px}.hero-ai-showcase .hero-title{font-size:2.65rem}.hero-ai-showcase .hero-copy{font-size:1.05rem}.hero-ai-showcase .hero-person-stage{height:auto;min-height:310px}.hero-ai-showcase .hero-person-stage::before{width:235px;height:235px;border-width:24px}.hero-ai-showcase .hero-person{max-height:320px}.hero-ai-showcase .hero-capabilities{grid-template-columns:1fr;gap:9px}.hero-ai-showcase .hero-capabilities>a{min-height:78px}.hero-ai-showcase .inner-circle-logo i{width:72px;height:72px}}

.glass{
  background:linear-gradient(145deg,rgba(26,35,58,.86),rgba(12,17,31,.72));
  border-color:rgba(107,130,255,.2);
}

/* A polished SaaS palette: blue for trust, cyan/mint for technology,
   violet/pink/coral for visual energy and clear content grouping. */
body.motion-theme .btn-primary,
body.motion-theme .primary-btn,
body.motion-theme button[type="submit"],
.site-header .btn-primary,
.site-header .nav-cta{
  background:linear-gradient(120deg,#4f66ff 0%,#7257ee 52%,#bf4fe0 100%)!important;
  color:#fff!important;
  box-shadow:0 12px 34px rgba(85,103,255,.25);
}

body.motion-theme .btn-primary:hover,
body.motion-theme .primary-btn:hover,
body.motion-theme button[type="submit"]:hover{
  box-shadow:0 18px 46px rgba(155,92,255,.32);
}

.hero-title span,
.hero h1 span,
.page-hero h1 span,
h2 span{
  background:linear-gradient(105deg,#6ee7ff 5%,#8b7cff 48%,#ff75b7 95%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.section-light{
  background:
    radial-gradient(circle at 8% 8%,rgba(75,199,255,.13),transparent 28%),
    radial-gradient(circle at 92% 88%,rgba(166,108,255,.12),transparent 30%),
    #f7f9ff;
}

.section-light h1,
.section-light h2,
.section-light h3,
.section-light h4{color:#152039;}
.section-light p{color:#5f6c82;}

.service-card,
.industry-card,
.grid > .card,
.grid > .solution-card,
.cards-grid > .card,
.value-card,
.leader-card,
.method-step{
  --card-accent:#5567ff;
  box-shadow:inset 0 3px 0 var(--card-accent),0 18px 52px rgba(17,31,70,.08)!important;
}

.service-card:nth-child(6n + 2),
.industry-card:nth-child(6n + 2),
.grid > :nth-child(6n + 2),
.cards-grid > :nth-child(6n + 2){--card-accent:#20cfd1;}
.service-card:nth-child(6n + 3),
.industry-card:nth-child(6n + 3),
.grid > :nth-child(6n + 3),
.cards-grid > :nth-child(6n + 3){--card-accent:#9b5cff;}
.service-card:nth-child(6n + 4),
.industry-card:nth-child(6n + 4),
.grid > :nth-child(6n + 4),
.cards-grid > :nth-child(6n + 4){--card-accent:#f052a0;}
.service-card:nth-child(6n + 5),
.industry-card:nth-child(6n + 5),
.grid > :nth-child(6n + 5),
.cards-grid > :nth-child(6n + 5){--card-accent:#ff735c;}
.service-card:nth-child(6n),
.industry-card:nth-child(6n),
.grid > :nth-child(6n),
.cards-grid > :nth-child(6n){--card-accent:#ffb33f;}

.service-icon,
.industry-card > span,
.card-icon,
.card-link,
.solution-card .card-icon{color:var(--card-accent,#5567ff)!important;}

.section-light .service-card,
.section-light .industry-card,
.section-light .card,
.section-light .solution-card,
.section-light .value-card,
.section-light .leader-card{
  background:rgba(255,255,255,.88)!important;
  border-color:rgba(125,140,180,.2)!important;
}

.section-light .service-card h3,
.section-light .industry-card h3,
.section-light .card h3,
.section-light .solution-card h3,
.section-light .value-card h3,
.section-light .leader-card h3{color:#17223c;}

.section-light .service-card p,
.section-light .industry-card p,
.section-light .card p,
.section-light .solution-card p,
.section-light .value-card p,
.section-light .leader-card p{color:#647187;}

.motion-progress{
  background:linear-gradient(90deg,#20cfd1,#5567ff,#9b5cff,#f052a0,#ffb33f);
}

/* ---------- Tablet and compact laptop navigation ---------- */
@media (max-width:1100px){
  :root{--header-h:76px;--gutter:clamp(1.25rem,4.5vw,2.5rem);}

  .nav-primary{display:none;}
  .nav-toggle{display:flex;flex:none;}
  body.nav-open{overflow:hidden;touch-action:none;}

  .site-header{height:var(--header-h);padding:0;}
  .header-inner{gap:1rem;}
  .header-logo{width:170px!important;max-height:46px;}

  .mobile-nav{
    background:
      radial-gradient(circle at 90% 5%,rgba(155,92,255,.22),transparent 34%),
      radial-gradient(circle at 5% 92%,rgba(32,207,209,.18),transparent 35%),
      #080b17;
  }
  .mobile-nav > ul{max-width:680px;width:100%;margin-inline:auto;}
  .mobile-nav .cta-row{width:100%;max-width:680px;margin-inline:auto;}
  .mobile-nav a[aria-current="page"]{color:#65e6cd!important;}

  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .service-grid,.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .transform-track{grid-template-columns:repeat(3,minmax(0,1fr));}
  .core-layout,.ai-layout{grid-template-columns:1fr;gap:2.25rem;}
  .contact-grid,.contact-panel{grid-template-columns:1fr;gap:2.5rem;}
  .service-detail{grid-template-columns:1fr;gap:1.5rem;}

  .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));}
  .footer-brand{grid-column:span 2;}
  .footer-contact-column{text-align:left;}

  .hero-content{padding-block:4.5rem 5.5rem;}
  .page-hero{min-height:430px;}
  .hero-side-note{display:none;}
  .core-visual{max-width:680px;width:100%;margin-inline:auto;}
  .ai-network,.tech-orbit{max-width:760px;width:100%;margin-inline:auto;}

  video,canvas{max-width:100%;}
  .hero-motion-video{width:100%;height:100%;}
  .diagram-svg{width:100%;height:100%;}
}

/* ---------- Tablet portrait ---------- */
@media (max-width:820px){
  :root{--gutter:clamp(1.1rem,4.8vw,2rem);}

  section,.section{padding-block:clamp(4.5rem,10vw,6rem);}
  .site-header .header-actions > .btn{display:none;}
  .hero{min-height:max(720px,100svh);}
  .hero-content{padding-top:5.5rem;}
  .hero-title{font-size:clamp(3rem,10vw,5.2rem);}
  .hero-copy,.hero-desc{font-size:1rem;max-width:620px;}
  .page-hero{padding-top:calc(var(--header-h) + 3.5rem);padding-bottom:3.5rem;}

  .metrics,.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .metric-grid div:nth-child(2){border-right:0;}
  .metric-grid div{border-bottom:1px solid #dce4ee;}
  .metric-grid div:nth-last-child(-n + 2){border-bottom:0;}

  .transform-track{grid-template-columns:repeat(2,minmax(0,1fr));}
  .contact-panel{padding:clamp(2rem,6vw,3.25rem);}
  .diagram-wrap{aspect-ratio:4/3;}
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));}
  .footer-brand{grid-column:1/-1;}
}

/* ---------- Mobile ---------- */
@media (max-width:640px){
  :root{--header-h:70px;--gutter:20px;}

  .container{width:100%;max-width:none;padding-inline:var(--gutter);}
  .site-header{height:var(--header-h);}
  .header-logo{width:148px!important;max-height:40px;}
  .nav-toggle{width:42px;height:42px;}

  .mobile-nav{padding:calc(var(--header-h) + .75rem) var(--gutter) 1.5rem;}
  .mobile-nav-close{top:14px;right:var(--gutter);}
  .mobile-nav ul{gap:1rem;margin-top:1rem;}
  .mobile-nav a{font-size:clamp(1.35rem,7vw,1.75rem);}
  .mobile-nav .mobile-sub{gap:.72rem;margin-top:.5rem;}
  .mobile-nav .mobile-sub a{font-size:.98rem;line-height:1.35;}

  section,.section{padding-block:4.25rem;}
  .section-head,.section-heading{margin-bottom:2.25rem;}
  h1,.hero-title{font-size:clamp(2.55rem,12vw,4rem);line-height:1!important;}
  h2,.section-heading h2,.ai-layout h2,.contact-panel h2{font-size:clamp(2rem,9.5vw,3rem);line-height:1.05;}
  h3{line-height:1.15;}
  .eyebrow{font-size:.7rem;letter-spacing:.11em;line-height:1.5;}

  .hero{min-height:max(680px,100svh);align-items:flex-end;}
  .hero-content{text-align:left;padding:7.5rem var(--gutter) 5rem;}
  .hero-content .eyebrow{justify-content:flex-start;}
  .hero-title{margin-inline:0;max-width:12ch;}
  .hero-copy,.hero-desc{margin:1.35rem 0 1.8rem;line-height:1.65;}
  .hero-actions,.hero .cta-row{justify-content:flex-start;}
  .scroll-hint,.scroll-cue{display:none;}
  .hero-motion-video{object-position:68% center;}
  .hero-motion-tint{
    background:
      linear-gradient(90deg,rgba(4,8,20,.96),rgba(4,8,20,.72) 78%,rgba(4,8,20,.64)),
      linear-gradient(180deg,rgba(4,8,20,.2),rgba(4,8,20,.78));
  }

  .page-hero{min-height:390px;padding-top:calc(var(--header-h) + 3rem);padding-bottom:3rem;}
  .page-hero h1{font-size:clamp(2.45rem,11.5vw,3.5rem);max-width:13ch;}
  .page-hero p.lead{font-size:.98rem;line-height:1.65;}

  .grid-4,.grid-3,.cards-grid,
  .service-grid,.industry-grid,.transform-track,
  .metrics,.contact-grid,.contact-panel{grid-template-columns:1fr;}
  .core-layout,.ai-layout{gap:1.75rem;}
  .form-row{grid-template-columns:1fr;}

  .card,.service-card,.solution-card,.industry-card,
  .feature-card,.value-card,.leader-card,.case-card{padding:1.5rem!important;min-height:0;}
  .service-card h3,.industry-card h3{margin-top:1.75rem;}
  .industry-card{min-height:0;}
  .transform-stage{min-height:190px;padding:1.4rem;}
  .transform-stage h3{margin-top:2.5rem;}

  .core-visual{height:auto;min-height:0;aspect-ratio:1/1;border-radius:18px;}
  .ring-a{width:68%;height:68%;}
  .ring-b{width:92%;height:92%;}
  .core-orb{width:116px;height:116px;}
  .core-node{padding:6px 9px;font-size:8px;letter-spacing:.06em;}
  .n1{left:12%;}.n2{right:12%;}.n3{left:13%;}.n4{right:12%;}.n5{left:2%;}.n6{right:2%;}

  .ai-network{height:380px;border-radius:20px;}
  .ai-center{width:108px;height:108px;font-size:17px;}
  .agent{padding:8px 10px;font-size:8px;}
  .a1{top:13%;left:8%;}.a2{top:16%;right:6%;}.a3{bottom:15%;left:7%;}.a4{bottom:12%;right:5%;}
  .ai-list div{display:grid;gap:.3rem;}
  .ai-list span{text-align:left;}

  .tech-orbit{height:390px;border-radius:20px;}
  .tech-center{width:112px;height:112px;font-size:13px;}
  .tech{padding:7px 9px;font-size:7px;letter-spacing:.05em;}
  .t1{left:7%;}.t2{right:4%;}.t3{left:8%;}.t4{right:4%;}.t5{left:1%;}.t6{right:1%;}

  .metric-grid{grid-template-columns:1fr 1fr;gap:0;}
  .metric-grid div{padding:1.5rem .75rem;border-right:1px solid #dce4ee;}
  .metric-grid div:nth-child(even){border-right:0;}
  .metric-grid strong{font-size:clamp(2.25rem,13vw,3.5rem);}

  .contact-panel{padding:1.5rem;border-radius:20px;gap:2rem;}
  .contact-form{gap:14px;}
  .contact-form input,.contact-form textarea{font-size:16px;}

  .diagram-wrap{aspect-ratio:auto;min-height:330px;overflow-x:auto;}
  .diagram-svg{min-width:560px;width:560px;height:330px;}
  .method-steps{display:grid;grid-template-columns:1fr;}
  .method-step{width:100%;}
  .service-detail{padding-block:2.25rem;}

  .footer-top{grid-template-columns:1fr;gap:2rem;}
  .footer-brand{grid-column:auto;}
  .footer-contact-column{text-align:left;}
  .footer-bottom{display:grid;gap:.65rem;padding-top:1.5rem;}
  .footer-logo{width:200px!important;}

  .cta-row,.hero-actions{width:100%;}
  .cta-row .btn,.hero-actions .btn{flex:1 1 100%;width:100%;white-space:normal;text-align:center;}
}

/* ---------- Small phones ---------- */
@media (max-width:390px){
  :root{--gutter:16px;}
  .header-logo{width:138px!important;}
  .hero-content{padding-inline:var(--gutter);}
  .hero-title{font-size:clamp(2.35rem,12vw,3.15rem);}
  .card,.service-card,.solution-card,.industry-card,
  .feature-card,.value-card,.leader-card,.case-card{padding:1.3rem!important;}
  .core-node{font-size:7px;padding:5px 7px;}
  .contact-panel{padding:1.25rem;}
}

@media (hover:none){
  .card:hover,.service-card:hover,.solution-card:hover,.industry-card:hover,
  .feature-card:hover,.value-card:hover,.case-card:hover,
  .info-card:hover,.btn:hover{transform:none!important;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .reveal,.motion-reveal,.motion-word{opacity:1!important;transform:none!important;filter:none!important;}
  .core-ring,.core-orb,.agent,.scroll-dot{animation:none!important;}
  .hero canvas,.hero-motion-video{display:none;}
}

/* Homepage hero responsive overrides — kept last to beat legacy rules. */
@media (max-width:1100px){
  .hero-ai-showcase .hero-showcase-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:30px}
  .hero-ai-showcase .hero-title{font-size:clamp(42px,5.8vw,62px)}
  .hero-ai-showcase .hero-capabilities{grid-template-columns:repeat(3,1fr)}
  .hero-ai-showcase .hero-capabilities a:nth-child(3){border-right:0}
  .hero-ai-showcase .hero-capabilities a:nth-child(-n+3){border-bottom:1px solid #e5ebf3}
  .hero-ai-showcase .hero-credibility-grid{grid-template-columns:repeat(4,1fr)}
  .hero-ai-showcase .hero-credibility a{display:none}
}
@media (max-width:820px){
  .hero-ai-showcase{padding-top:62px!important}
  .hero-ai-showcase .hero-showcase-grid{grid-template-columns:1fr;text-align:center}
  .hero-ai-showcase .hero-showcase-copy{padding-bottom:10px}
  .hero-ai-showcase .eyebrow,.hero-ai-showcase .hero-actions,.hero-ai-showcase .hero-assurance{justify-content:center}
  .hero-ai-showcase .hero-title,.hero-ai-showcase .hero-copy{margin-left:auto;margin-right:auto}
  .hero-ai-showcase .hero-person-stage{width:min(100%,560px);height:480px;margin:0 auto}
  .hero-ai-showcase .hero-person{height:455px!important}
  .hero-ai-showcase .hero-capabilities{grid-template-columns:repeat(2,1fr)}
  .hero-ai-showcase .hero-capabilities a:nth-child(3){border-right:1px solid #e5ebf3}
  .hero-ai-showcase .hero-capabilities a:nth-child(2n){border-right:0}
  .hero-ai-showcase .hero-capabilities a:nth-child(-n+4){border-bottom:1px solid #e5ebf3}
  .hero-ai-showcase .hero-credibility-grid{grid-template-columns:repeat(2,1fr)}
  .hero-ai-showcase .hero-credibility-grid>div{min-height:78px;border-bottom:1px solid rgba(255,255,255,.1)}
}
@media (max-width:560px){
  .hero-ai-showcase{padding-top:48px!important}
  .hero-ai-showcase .hero-title{max-width:none;margin-inline:auto;font-size:clamp(38px,12vw,50px)}
  .hero-ai-showcase .hero-copy{font-size:16px;line-height:1.65}
  .hero-ai-showcase .hero-actions{display:grid;width:100%}
  .hero-ai-showcase .hero-actions .btn{width:100%}
  .hero-ai-showcase .hero-assurance{align-items:flex-start;flex-direction:column;width:max-content;max-width:100%;margin-left:auto;margin-right:auto}
  .hero-ai-showcase .hero-person-stage{height:400px}
  .hero-ai-showcase .hero-person{height:380px!important;max-width:100%!important}
  .hero-ai-showcase .hero-tech-pill{min-width:0;padding:8px}
  .hero-ai-showcase .hero-tech-pill>span{min-width:31px;width:31px;height:31px}
  .hero-ai-showcase .hero-tech-pill small{display:none}
  .hero-ai-showcase .pill-ai{left:4px}.hero-ai-showcase .pill-erp{right:4px}.hero-ai-showcase .pill-data{right:0;top:210px}.hero-ai-showcase .pill-auto{left:0;top:240px}
  .hero-ai-showcase .hero-person-card{right:4px;bottom:16px}
  .hero-ai-showcase .hero-capabilities{grid-template-columns:1fr}
  .hero-ai-showcase .hero-capabilities a,.hero-ai-showcase .hero-capabilities a:nth-child(3){border-right:0;border-bottom:1px solid #e5ebf3}
  .hero-ai-showcase .hero-credibility-grid>div{padding:12px}
  .hero-ai-showcase .hero-credibility span{font-size:10px}
}

/* Final home hero responsive overrides — keep last */
@media(max-width:1100px){.hero-ai-showcase .hero-showcase-grid{grid-template-columns:1.08fr .92fr;gap:24px}.hero-ai-showcase .hero-capabilities{grid-template-columns:repeat(3,1fr);gap:10px}.hero-ai-showcase .hero-capabilities>a{padding:13px 9px}.hero-ai-showcase .hero-capabilities strong{font-size:.74rem}}
@media(max-width:820px){.hero-ai-showcase{min-height:0!important;padding-top:0!important}.hero-ai-showcase .hero-showcase-grid{grid-template-columns:1fr;text-align:center;padding-top:60px}.hero-ai-showcase .hero-showcase-copy{padding:0}.hero-ai-showcase .hero-copy{margin:24px auto 0}.hero-ai-showcase .hero-person-stage{height:auto;min-height:365px}.hero-ai-showcase .hero-person{height:auto!important}.hero-ai-showcase .hero-capabilities{grid-template-columns:repeat(2,1fr);margin-bottom:-35px}.hero-ai-showcase .hero-credibility{padding-top:82px}.hero-ai-showcase .hero-credibility-grid{grid-template-columns:1fr;gap:34px;text-align:center}.hero-ai-showcase .hero-credibility-grid::before{display:none}.hero-ai-showcase .inner-copy,.hero-ai-showcase .inner-mark{grid-column:1;grid-row:auto}.hero-ai-showcase .hero-credibility-grid>div{min-height:0;border:0}}
@media(max-width:520px){.hero-ai-showcase .hero-showcase-grid{padding-top:42px;padding-bottom:25px}.hero-ai-showcase .hero-title{font-size:2.65rem}.hero-ai-showcase .hero-copy{font-size:1.05rem}.hero-ai-showcase .hero-person-stage{height:auto;min-height:310px}.hero-ai-showcase .hero-person-stage::before{width:235px;height:235px;border-width:24px}.hero-ai-showcase .hero-person{height:auto!important;max-height:320px}.hero-ai-showcase .hero-capabilities{grid-template-columns:1fr;gap:9px}.hero-ai-showcase .hero-capabilities>a{min-height:78px}.hero-ai-showcase .inner-circle-logo i{width:72px;height:72px}}
/* Blue-indigo hero sizing — authoritative */
@media(max-width:1100px){.hero-ai-showcase .hero-showcase-grid{width:min(100% - 40px,1180px);padding-top:138px;grid-template-columns:minmax(0,1.1fr) minmax(350px,.9fr)}.hero-ai-showcase .hero-title{font-size:clamp(3rem,6vw,4.6rem)}.hero-ai-showcase .hero-capabilities{width:min(100% - 40px,1180px)}}
@media(max-width:820px){.hero-ai-showcase .hero-showcase-grid{width:min(100% - 34px,680px);padding-top:112px;text-align:center}.hero-ai-showcase .eyebrow,.hero-ai-showcase .hero-actions,.hero-ai-showcase .hero-assurance{justify-content:center}.hero-ai-showcase .hero-person-stage{min-height:440px}.hero-ai-showcase .hero-capabilities{width:min(100% - 34px,680px)}}
@media(max-width:520px){.hero-ai-showcase .hero-showcase-grid{padding-top:96px}.hero-ai-showcase .hero-title{font-size:clamp(2.65rem,12vw,3.35rem)}.hero-ai-showcase .hero-title span{display:block!important}.hero-ai-showcase .hero-actions{display:grid!important}.hero-ai-showcase .hero-assurance{align-items:flex-start;flex-direction:column;margin-inline:auto;width:max-content}.hero-ai-showcase .hero-person-stage{min-height:345px}.hero-ai-showcase .hero-person-stage::before{top:40px}.hero-ai-showcase .hero-tech-pill small{display:none}.hero-ai-showcase .hero-capabilities{width:min(100% - 28px,480px)}}
