:root {
  --ng-line: #dfe8f2;
  --ng-soft: #f6fbff;
  --ng-soft-2: #edf8fb;
}

.ng-page { background: linear-gradient(180deg, #fff 0%, #fbfdff 100%); }
.ng-hero {
  padding: 34px 0 30px;
  background: radial-gradient(circle at 82% 18%, rgba(19,185,196,.10), transparent 25%), linear-gradient(180deg,#f9fcff 0%,#fff 100%);
}
.ng-hero-grid { display: grid; grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); gap: 34px; align-items: center; }
.ng-breadcrumb { margin-bottom: 15px; color: #6c7b8b; font-size: 13px; }
.ng-breadcrumb a { color: var(--blue-900); }
.ng-breadcrumb strong { color: var(--teal-600); }
.ng-hero-copy h1 { margin: 0 0 12px; color: var(--ink); font-size: clamp(48px,5.2vw,74px); line-height: 1.01; letter-spacing: -.05em; }
.ng-highlight { margin: 0 0 18px; color: var(--teal-600); font-size: clamp(25px,2.1vw,34px); font-weight: 800; line-height: 1.18; }
.ng-intro { max-width: 680px; margin: 0 0 22px; color: var(--body); font-size: 18px; line-height: 1.62; }
.ng-hero-note { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 25px; padding: 13px 17px; border: 1px solid var(--ng-line); border-radius: 15px; background: #f7fbff; color: var(--blue-900); }
.ng-hero-note > span { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: linear-gradient(145deg,var(--teal-600),var(--blue-800)); color: #fff; }
.ng-hero-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.ng-hero-visual { overflow: hidden; border: 1px solid var(--ng-line); border-radius: 28px; background: #fff; box-shadow: var(--shadow); }
.ng-hero-visual img { width: 100%; display: block; aspect-ratio: 16 / 10; object-fit: cover; object-position: center; }

.ng-benefits { padding: 2px 0 18px; }
.ng-benefits-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; border: 1px solid var(--ng-line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-small); }
.ng-benefits article { display: flex; gap: 15px; padding: 26px 23px; border-right: 1px solid var(--ng-line); }
.ng-benefits article:last-child { border-right: 0; }
.ng-benefits article > span { width: 54px; height: 54px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: var(--ng-soft-2); color: var(--teal-600); font-size: 27px; font-weight: 800; }
.ng-benefits h2 { margin: 0 0 6px; font-size: 17px; line-height: 1.2; }
.ng-benefits p { margin: 0; color: var(--body); font-size: 13px; line-height: 1.45; }

.ng-heading-left { text-align: left; margin: 0 0 28px; }
.ng-heading-left .heading-line { margin: 12px 0 0; }
.ng-heading-left h2 { margin: 0; font-size: clamp(34px,3.2vw,46px); line-height: 1.08; letter-spacing: -.035em; }
.ng-services { padding-top: 62px; padding-bottom: 68px; }
.ng-procedure-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; align-items: stretch; }
.ng-procedure-grid article { overflow: hidden; border: 1px solid var(--ng-line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-small); }
.ng-procedure-grid img { width: 100%; display: block; aspect-ratio: 16 / 10; object-fit: cover; object-position: center; }
.ng-procedure-grid article > div { padding: 20px 19px 24px; }
.ng-procedure-grid h3 { margin: 0 0 8px; color: var(--blue-900); font-size: 18px; line-height: 1.25; }
.ng-procedure-grid p { margin: 0; color: var(--body); font-size: 13px; line-height: 1.52; }

.ng-support { padding-top: 24px; padding-bottom: 70px; }
.ng-support-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(330px,.8fr); gap: 34px; align-items: center; }
.ng-support-image { overflow: hidden; border: 1px solid var(--ng-line); border-radius: 22px; background: #fff; box-shadow: var(--shadow-small); }
.ng-support-image img { width: 100%; display: block; aspect-ratio: 16 / 9; object-fit: cover; object-position: center; }
.ng-support-copy ul { margin: 0; padding: 0; display: grid; gap: 15px; list-style: none; }
.ng-support-copy li { display: flex; align-items: center; gap: 12px; color: var(--blue-900); font-size: 16px; font-weight: 700; }
.ng-support-copy li span { width: 29px; height: 29px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid #b8e6e8; border-radius: 50%; background: #f3fcfc; color: var(--teal-600); }

.ng-cta { padding: 8px 0 62px; }
.ng-cta-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 22px; padding: 30px 34px; border-radius: 20px; background: linear-gradient(90deg,var(--blue-900),#083b80); color: #fff; }
.ng-cta-inner h2 { margin: 0 0 6px; font-size: clamp(28px,3vw,40px); line-height: 1.1; letter-spacing: -.03em; }
.ng-cta-inner p { margin: 0; color: rgba(255,255,255,.86); font-size: 16px; }
.ng-cta-inner .button-whatsapp { background: var(--teal-600); box-shadow: none; }

@media (max-width: 1200px) {
  .ng-benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ng-benefits article:nth-child(2) { border-right: 0; }
  .ng-benefits article:nth-child(-n+2) { border-bottom: 1px solid var(--ng-line); }
  .ng-procedure-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 920px) {
  .ng-hero-grid, .ng-support-grid { grid-template-columns: 1fr; }
  .ng-cta-inner { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .ng-hero-copy h1 { font-size: 43px; }
  .ng-highlight { font-size: 23px; }
  .ng-intro { font-size: 16px; }
  .ng-hero-actions .button { width: 100%; }
  .ng-benefits-grid, .ng-procedure-grid { grid-template-columns: 1fr; }
  .ng-benefits article { border-right: 0; border-bottom: 1px solid var(--ng-line); }
  .ng-benefits article:last-child { border-bottom: 0; }
  .ng-services { padding-top: 48px; padding-bottom: 54px; }
  .ng-support { padding-bottom: 55px; }
  .ng-cta-inner { padding: 25px; }
}
