:root {
  --wc-global-container: min(100% - 32px, 1240px);
}

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

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  min-width: 320px;
  -webkit-text-size-adjust: 100%;
}

body :where(img, svg, video, canvas) {
  display: block;
  max-width: 100%;
  height: auto;
}

body iframe {
  display: block;
  max-width: 100%;
  width: 100%;
}

body :where(h1, h2, h3, h4, h5, h6, p, li, a, small, strong, span) {
  overflow-wrap: anywhere;
}

body :where(.container, .corp-container, .wc-shell-container) {
  width: var(--wc-global-container) !important;
  margin-inline: auto !important;
}

body :where([class*="grid"], [class*="card"], [class*="panel"], [class*="column"], [class*="wrapper"]) {
  min-width: 0;
}

body :where([class*="grid"] > *, [class*="card"] > *, [class*="panel"] > *) {
  min-width: 0;
}

body :where([class$="-main-wrapper"], [class*="-bg-wrapper"], [class*="container-wrapper"]) {
  max-width: 100%;
  overflow-x: clip;
}

body :where(input, select, textarea, button) {
  max-width: 100%;
}

body :where(.corp-actions, .wc-popup-actions, .wc-footer-top-actions, .wc-footer-bottom-links) {
  max-width: 100%;
}

body :where(
  .wc-solution-main,
  .wc-solution-section,
  .wc-solution-shell,
  .wc-solution-side,
  .wc-solution-block,
  .wc-solution-grid,
  .wc-solution-card,
  .wc-solution-cta,
  .wc-solution-actions,
  .wc-solution-pills
) {
  min-width: 0;
}

body :where(.wc-solution-copy, .wc-solution-side, .wc-solution-card, .wc-solution-panel, .wc-solution-mini) {
  min-width: 0;
}

body :where(
  .wc-popup-card,
  .corp-hero,
  .corp-card,
  .corp-process-card,
  .corp-contact-card,
  .corp-value-card,
  .corp-faq-item,
  .corp-form-shell,
  .ref-item,
  .service-item,
  .solution-card,
  .premium-kart,
  .bento-card,
  .contact-card,
  .wc-form-container,
  .info-panel,
  .form-panel
) {
  max-width: 100%;
}

body :where(
  .wc-footer-bottom-links a,
  .wc-footer-bottom-links a:link,
  .wc-footer-bottom-links a:visited
) {
  color: #9db2c8 !important;
  text-decoration: none !important;
}

body :where(.wc-footer-bottom-links a:hover) {
  color: #ffffff !important;
}

@media (max-width: 1180px) {
  body :where(
    .corp-grid-3,
    .corp-portfolio-grid,
    .corp-process-grid,
    .corp-value-grid,
    .corp-contact-grid,
    .ref-grid-system,
    .qr-main-grid,
    .wc-footer-grid,
    .wc-footer-cta,
    .cam-ai-grid,
    .agri-step-grid,
    .benefit-grid,
    .spray-grid,
    .robo-grid,
    .robo-stats-grid,
    .capabilities-grid,
    .roles-grid,
    .combat-weapon-grid,
    .combat-op-grid,
    .feature-blocks,
    .detail-main,
    .compare-box,
    .contact-main-grid,
    .wc-solution-grid
  ) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body :where(.wc-solution-shell, .wc-solution-cta) {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 900px) {
  body :where(
    .corp-grid-3,
    .corp-portfolio-grid,
    .corp-process-grid,
    .corp-value-grid,
    .corp-contact-grid,
    .corp-form-grid,
    .ref-grid-system,
    .qr-main-grid,
    .wc-footer-grid,
    .wc-footer-cta,
    .cam-ai-grid,
    .agri-step-grid,
    .benefit-grid,
    .spray-grid,
    .robo-grid,
    .robo-stats-grid,
    .capabilities-grid,
    .roles-grid,
    .combat-weapon-grid,
    .combat-op-grid,
    .feature-blocks,
    .detail-main,
    .compare-box,
    .contact-main-grid,
    .wc-solution-grid
  ) {
    grid-template-columns: 1fr !important;
  }

  body [style*="grid-template-columns"] {
    grid-template-columns: 1fr !important;
  }

  body :where([class$="-main-wrapper"], [class*="-bg-wrapper"], [class*="container-wrapper"]) {
    padding-inline: 16px !important;
  }

  body :where(
    .corp-form-grid,
    .corp-option-grid,
    .wc-popup-metric-grid,
    .wc-footer-grid,
    .wc-solution-grid
  ) {
    grid-template-columns: 1fr !important;
  }

  body :where(.wc-solution-main) {
    padding-top: 144px !important;
    padding-bottom: 74px !important;
  }

  body :where(.wc-solution-shell, .wc-solution-block, .wc-solution-cta) {
    padding: 26px 22px !important;
    border-radius: 24px !important;
  }

  body :where(.wc-solution-head) {
    display: grid !important;
    justify-content: stretch !important;
    align-items: start !important;
    gap: 12px !important;
  }

  body :where(.wc-solution-actions) {
    justify-content: flex-start !important;
  }
}

@media (max-width: 720px) {
  :root {
    --wc-global-container: min(100% - 24px, 1240px);
  }

  body :where(h1) {
    font-size: clamp(32px, 10vw, 46px) !important;
    line-height: 1.06 !important;
  }

  body :where(h2) {
    font-size: clamp(26px, 8vw, 36px) !important;
    line-height: 1.1 !important;
  }

  body :where(
    .corp-hero,
    .corp-highlight,
    .corp-card,
    .corp-process-card,
    .corp-contact-card,
    .corp-value-card,
    .corp-faq-item,
    .corp-form-shell,
    .wc-popup-card,
    .wc-footer-panel
  ) {
    border-radius: 24px !important;
  }

  body :where(.corp-actions, .wc-popup-actions, .wc-footer-top-actions) > * {
    width: 100%;
  }

  body :where(.corp-map iframe, iframe[src*="maps"], iframe[loading="lazy"]) {
    min-height: 260px !important;
  }

  body :where(.wc-solution-main) {
    padding-top: 132px !important;
    padding-bottom: 66px !important;
  }

  body :where(.wc-solution-shell, .wc-solution-block, .wc-solution-cta) {
    padding: 22px 18px !important;
    border-radius: 22px !important;
  }

  body :where(.wc-solution-copy h1) {
    font-size: clamp(30px, 10vw, 42px) !important;
    line-height: 1.04 !important;
  }

  body :where(.wc-solution-copy p, .wc-solution-card p, .wc-solution-panel p, .wc-solution-mini p, .wc-solution-head p) {
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  body :where(.wc-solution-pills span) {
    flex: 1 1 calc(50% - 6px);
    justify-content: center;
    min-height: 40px !important;
    padding-inline: 12px !important;
  }

  body :where(.wc-solution-actions) {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  body :where(.wc-solution-actions > a, .wc-solution-actions > button, .wc-solution-btn) {
    width: 100% !important;
  }

  body :where(.wc-solution-card strong) {
    width: 38px !important;
    height: 38px !important;
    margin-bottom: 12px !important;
  }
}

@media (max-width: 520px) {
  :root {
    --wc-global-container: min(100% - 20px, 1240px);
  }

  body :where(.wc-solution-main) {
    padding-top: 124px !important;
  }

  body :where(.wc-solution-shell, .wc-solution-block, .wc-solution-cta) {
    padding: 20px 16px !important;
  }

  body :where(.wc-solution-pills span) {
    flex-basis: 100%;
  }
}
