:root{
  --gw-blue-950:#082042;
  --gw-blue-900:#0c2f5d;
  --gw-blue-800:#11457f;
  --gw-blue-700:#1766bf;
  --gw-blue-600:#2f82ec;
  --gw-sky:#eaf4ff;
  --gw-card:#ffffff;
  --gw-text:#102743;
  --gw-muted:#4c6480;
  --gw-line:#d8e6f4;
  --gw-red:#e15555;
  --gw-red-soft:#fff2f2;
  --gw-green:#1fa167;
  --gw-green-soft:#f0fbf6;
  --gw-shadow:0 24px 64px rgba(8,35,74,.16);
}

html{scroll-behavior:smooth}
body.gw-page{
  margin:0;
  color:#fff;
  min-height:100vh;
  background:
    radial-gradient(circle at 8% 0%,rgba(114,179,255,.26),transparent 27%),
    radial-gradient(circle at 92% 8%,rgba(92,225,170,.18),transparent 24%),
    linear-gradient(180deg,#0a2a52 0%,#10407a 42%,#0b2d57 100%);
}
.gw-page .topbar{background:rgba(7,27,52,.84);backdrop-filter:blur(14px)}
.gw-page .shell{width:min(1040px,calc(100% - 30px))}
.gw-main{position:relative;z-index:2;padding:108px 0 84px}
.gw-page-shell{display:grid;gap:22px}

.gw-intro-language{display:flex;justify-content:center;align-items:center;margin:-4px 0 8px}
.gw-language-inline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  flex-wrap:wrap;
  padding:4px 6px;
  border:1px solid #dbe7f3;
  border-radius:10px;
  background:#f7faff;
  box-shadow:none;
}
.gw-language-label{
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.02em;
  color:#617792;
  white-space:nowrap;
}
.gw-tablist{
  display:inline-flex;
  gap:3px;
  padding:3px;
  border-radius:999px;
  background:#edf3fa;
  box-shadow:none
}
.gw-tablist button{
  min-width:62px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#536d89;
  padding:5px 7px;
  font:inherit;
  font-size:.52rem;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease
}
.gw-tablist button.is-active,.gw-tablist button[aria-selected="true"]{
  background:linear-gradient(135deg,#176fe5,#388df2);
  color:#fff;
  box-shadow:0 5px 12px rgba(23,111,229,.2)
}

.gw-topline{text-align:center}
.gw-badge{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:60px;
  padding:0 28px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
  color:#fff;
  font-size:clamp(1rem,2.4vw,1.24rem);
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 16px 42px rgba(0,0,0,.16);
  animation:gwBadgeBlink 2.6s ease-in-out infinite;
}
.gw-badge i{
  width:12px;height:12px;border-radius:50%;
  background:linear-gradient(135deg,#5f94ff,#62ddb3 70%,#f8d25e);
  box-shadow:0 0 0 7px rgba(109,184,255,.12);
}
@keyframes gwBadgeBlink{
  0%,100%{box-shadow:0 16px 42px rgba(0,0,0,.16),0 0 0 0 rgba(125,197,255,.08);opacity:1}
  50%{box-shadow:0 18px 46px rgba(0,0,0,.2),0 0 0 9px rgba(125,197,255,.11);opacity:.94}
}

.gw-panel{display:none}
.gw-panel.is-active{display:grid;gap:22px}
.gw-white-card,
.gw-inquiry-card{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  box-shadow:var(--gw-shadow);
}
.gw-white-card{
  background:var(--gw-card);
  color:var(--gw-text);
  border:1px solid rgba(216,230,244,.95);
  padding:30px;
}
.gw-section-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#1762b3;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase
}
.gw-section-label:before{
  content:"";width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,#176fe5,#2fc58b);box-shadow:0 0 0 5px rgba(23,111,229,.08)
}

.gw-title-accent{
  margin:0 0 14px;
  text-align:center;
  font-size:clamp(2rem,4.8vw,3.2rem);
  line-height:1.08;
  letter-spacing:-.04em;
  background:linear-gradient(90deg,#0e4f9e 0%,#6f38f0 22%,#eb5c4d 48%,#1da86c 74%,#176fe5 100%);
  background-size:220% auto;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:gwGradientShift 7s linear infinite;
}
@keyframes gwGradientShift{to{background-position:200% center}}

.gw-white-card h2,.gw-white-card h3{color:var(--gw-text)}
.gw-white-card h2{margin:12px 0 14px;font-size:clamp(1.45rem,3vw,2rem);line-height:1.2}
.gw-white-card h3{margin:0 0 8px;font-size:1.08rem}
.gw-white-card p{margin:0 0 14px;color:var(--gw-muted);line-height:1.8}
.gw-lead{
  font-size:1.08rem!important;
  font-weight:700;
  color:#224a73!important;
  text-align:center;
}
.gw-highlight-paragraph{
  padding:16px 18px;
  border-radius:18px;
  background:linear-gradient(135deg,#edf5ff,#f4fbff);
  border:1px solid #d7e7f7;
  color:#165694!important;
  font-weight:700;
}

.gw-email-stack{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:24px;
}
.gw-email-row{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:70px 1fr;
  align-items:start;
  gap:14px;
  padding:20px;
  border-radius:20px;
  border:2px solid var(--gw-line)
}
.gw-email-row-bad{background:linear-gradient(135deg,#ffe2e2,#fff0f0);border-color:#e8b4b4;box-shadow:0 12px 28px rgba(225,85,85,.10)}
.gw-email-row-good{background:linear-gradient(135deg,#dff9eb,#effdf6);border-color:#addbc3;box-shadow:0 12px 28px rgba(31,161,103,.10)}
.gw-email-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}
.gw-email-icon{
  width:56px;height:56px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;align-self:center
}
.gw-email-icon svg{width:28px;height:28px}
.gw-email-icon-bad{background:rgba(225,85,85,.15);color:var(--gw-red)}
.gw-email-icon-good{background:rgba(31,161,103,.14);color:var(--gw-green)}
.gw-email-state{font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.gw-email-row-bad .gw-email-state{color:var(--gw-red)}
.gw-email-row-good .gw-email-state{color:var(--gw-green)}
.gw-email-row b{display:block;font-size:1rem;word-break:break-word;color:#1d3959}
.gw-email-content{display:grid;gap:6px}

.gw-identity-strip{
  margin-top:22px;
  padding:24px 22px;
  border-radius:22px;
  text-align:center;
  background:linear-gradient(135deg,#f5f9ff,#f8fffb);
  border:1px solid #dceaf7
}
.gw-identity-title{
  margin:0 0 16px!important;
  font-size:clamp(1.25rem,2.8vw,1.7rem)!important;
  text-align:center;
  background:linear-gradient(90deg,#176fe5,#7548ef,#1fa167,#eb8247,#176fe5);
  background-size:240% auto;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
  animation:gwGradientShift 7s linear infinite,gwTitleBlink 2.4s ease-in-out infinite;
}
@keyframes gwTitleBlink{0%,100%{opacity:1;filter:drop-shadow(0 0 0 rgba(23,111,229,0))}50%{opacity:.88;filter:drop-shadow(0 4px 10px rgba(23,111,229,.18))}}
.gw-chip-list,.gw-device-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.gw-chip-list span,.gw-device-list span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:linear-gradient(180deg,#ffffff,#f6faff);
  border:2px solid #9fc7f2;
  color:#244b73;
  font-weight:800;
  font-size:.9rem;
  box-shadow:0 8px 18px rgba(17,69,127,.09),inset 0 0 0 1px rgba(255,255,255,.7)
}
.gw-chip-list svg{width:17px;height:17px;color:var(--gw-green)}
.gw-device-list{margin-top:12px}
.gw-device-list span{background:#eef6ff;color:#245b90}

.gw-stack-section{display:grid;gap:14px}
.gw-section-heading{text-align:center;color:#fff;padding:2px 0 4px}
.gw-section-heading .gw-section-label{color:#ddecff}
.gw-section-heading .gw-section-label:before{background:#77d9b0;box-shadow:0 0 0 5px rgba(119,217,176,.12)}
.gw-section-heading h2{margin:10px 0 0;color:#fff;font-size:clamp(1.5rem,3vw,2rem)}
.gw-info-row{padding:24px 28px;border-width:2px;box-shadow:0 14px 30px rgba(17,69,127,.08)}
.gw-info-row h3{margin-bottom:10px;font-size:1.12rem;color:#135eb0!important;font-weight:900}
.gw-info-row p{margin-bottom:0;font-weight:600;color:#111820!important}
.gw-tone-1{background:linear-gradient(135deg,#dfefff,#ffffff);border-color:#bfd9f6}
.gw-tone-2{background:linear-gradient(135deg,#e7f8ff,#ffffff);border-color:#c4def5}
.gw-tone-3{background:linear-gradient(135deg,#eef5ff,#ffffff);border-color:#cddcf2}
.gw-tone-4{background:linear-gradient(135deg,#f1f7ff,#ffffff);border-color:#d0def3}

.gw-benefits-card{
  background:linear-gradient(135deg,#f2f8ff,#ffffff 40%,#f7fffb);
  border:1px solid #d6e6f7;
}
.gw-benefits-card::after{
  content:"";position:absolute;inset:auto -40px -70px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(47,130,236,.13),transparent 65%);pointer-events:none
}
.gw-benefit-list{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gw-benefit-list li{
  position:relative;display:flex;align-items:flex-start;gap:12px;padding:13px 14px;border-radius:16px;background:#fff;border:2px solid #deebf7;color:#35516f;box-shadow:0 10px 24px rgba(10,61,125,.05);animation:gwBenefitPulse 1.8s ease-in-out infinite
}
.gw-benefit-list svg{width:18px;height:18px;flex:0 0 18px;margin-top:2px;color:var(--gw-green)}

.gw-faq-card{padding-bottom:26px}
.gw-faq-list{display:grid;gap:12px;margin-top:18px}
.gw-faq-item{overflow:hidden;border-radius:18px;border-width:2px;box-shadow:0 14px 30px rgba(17,69,127,.08)}
.gw-faq-trigger{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;border:0;background:transparent;padding:19px 20px;text-align:left;font:inherit;font-weight:900;cursor:pointer;color:#cf2e2e
}
.gw-faq-item .gw-faq-trigger span{color:#cf2e2e}
.gw-faq-trigger i{
  width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:50%;background:rgba(255,255,255,.72);color:currentColor;transition:.2s ease
}
.gw-faq-trigger svg{width:17px;height:17px}
.gw-faq-item.is-open .gw-faq-trigger i{transform:rotate(90deg)}
.gw-faq-body{padding:0 20px 20px}
.gw-faq-body p{font-weight:600;color:#101820 !important}
.gw-faq-body p:last-child{margin-bottom:0}

.gw-inquiry-card{
  isolation:isolate;
  text-align:center;
  padding:36px 28px;
  color:#fff;
  background:linear-gradient(135deg,#072e63,#0f5dab);
  box-shadow:0 24px 64px rgba(0,0,0,.18)
}
.gw-inquiry-card > *{position:relative;z-index:2}
.gw-inquiry-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:inherit;
  background:conic-gradient(from 0deg,rgba(255,255,255,0) 0deg, rgba(255,255,255,.1) 55deg, #7ed9ff 110deg, rgba(255,255,255,0) 165deg, rgba(255,255,255,0) 270deg, #9df7c5 320deg, rgba(255,255,255,0) 360deg);
  animation:gwBorderSpin 5s linear infinite;
  z-index:0;
}
.gw-inquiry-card::after{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:23px;
  background:linear-gradient(135deg,#072e63,#0f5dab);
  z-index:1;
}
@keyframes gwBorderSpin{to{transform:rotate(360deg)}}
.gw-inquiry-card .gw-section-label{color:#dcecff}
.gw-inquiry-card .gw-section-label:before{background:#73e3b0;box-shadow:0 0 0 5px rgba(115,227,176,.12)}
.gw-inquiry-card h2{margin:12px auto 10px;max-width:760px;color:#fff;font-size:clamp(1.65rem,3vw,2.2rem)}
@keyframes gwBenefitPulse{0%,100%{border-color:#deebf7;box-shadow:0 10px 24px rgba(10,61,125,.05)}25%{border-color:#8dc2ff;box-shadow:0 12px 28px rgba(23,111,229,.12)}50%{border-color:#8adbb8;box-shadow:0 12px 28px rgba(31,161,103,.12)}75%{border-color:#e8b47b;box-shadow:0 12px 28px rgba(241,124,79,.12)}}
.gw-inquiry-card p{max-width:760px;margin:0 auto 20px;color:#dbeaff;line-height:1.75}
.gw-cta-button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 22px;border-radius:14px;background:#fff;color:#0f5aab;text-decoration:none;font-weight:900;box-shadow:0 14px 28px rgba(0,0,0,.16)
}

.fos-shell-placeholder{min-height:70px}
[data-show="true"]{animation:gwRise .45s ease both}
@keyframes gwRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* Reading copy is justified on desktop; questions/headings keep their designed alignment. */
.gw-intro-card > p,
.gw-info-row p,
.gw-benefit-list li span,
.gw-faq-body p,
.gw-inquiry-card p{
  text-align:justify;
  text-justify:inter-word;
}

@media(max-width:700px){
  .gw-main{padding-top:92px;padding-bottom:64px}
  .gw-page .shell{width:min(100% - 20px,1040px)}
  .gw-white-card,.gw-inquiry-card{padding:22px;border-radius:22px}
  .gw-intro-language{justify-content:center;margin-top:-2px}
  .gw-language-inline{justify-content:center;max-width:100%}
  .gw-tablist{width:auto}
  .gw-tablist button{min-width:58px;flex:0 0 auto;padding-inline:6px}

  /* Mobile reading: body copy and long question/answer text are justified. */
  .gw-intro-card > p,
  .gw-info-row p,
  .gw-benefit-list li span,
  .gw-faq-body p,
  .gw-inquiry-card p{
    text-align:justify;
    text-justify:inter-word;
  }

  /* FAQ questions remain left aligned; answers stay justified. */
  .gw-faq-trigger > span{
    text-align:left;
    text-justify:auto;
  }

  .gw-email-stack,.gw-benefit-list{grid-template-columns:1fr}

  /* Keep the same icon-column composition used on desktop. */
  .gw-email-row{
    grid-template-columns:54px minmax(0,1fr);
    align-items:center;
    gap:12px;
    padding:16px;
  }
  .gw-email-icon{width:48px;height:48px}
  .gw-email-content{min-width:0}
  .gw-email-row b{font-size:.94rem}

  .gw-language-label,.gw-tablist button{font-size:.5rem}
  .gw-identity-strip{padding:18px}
  .gw-faq-trigger{padding:17px 16px;align-items:flex-start}
  .gw-faq-trigger i{margin-top:1px}
  .gw-faq-body{padding:0 16px 17px}
}
.gw-benefits-card > .gw-section-label,
.gw-faq-card > .gw-section-label{
  display:flex;
  width:100%;
  justify-content:center;
  text-align:center;
}
.gw-benefits-card > h2{
  text-align:center;
}
.gw-faq-closing-highlight{
  display:block;
  width:100%;
  box-sizing:border-box;
  margin:22px 0 0;
  padding:18px 22px;
  border-radius:18px;
  text-align:center;
  color:#12335b;
  font-size:clamp(1rem,2.4vw,1.24rem);
  font-weight:900;
  line-height:1.55;
  background:linear-gradient(120deg,#e8f2ff 0%,#f5ecff 25%,#fff0e8 50%,#e9fbf3 75%,#eaf4ff 100%);
  background-size:220% 220%;
  border:2px solid #9bbfe7;
  box-shadow:0 12px 28px rgba(22,85,150,.10);
  animation:gwFaqClosingColor 6s ease-in-out infinite;
}
@keyframes gwFaqClosingColor{
  0%,100%{background-position:0% 50%;border-color:#8eb8e6}
  33%{background-position:50% 50%;border-color:#b79ae8}
  66%{background-position:100% 50%;border-color:#86d2af}
}


/* Improve justified reading without exaggerated gaps on narrow or wide screens.
   Keep natural phrase wrapping, allow safe emergency breaks, and do not stretch the last line. */
.gw-intro-card > p,
.gw-info-row p,
.gw-benefit-list li span,
.gw-faq-body p{
  text-align:justify;
  text-align-last:left;
  text-justify:inter-word;
  -webkit-hyphens:auto;
  hyphens:auto;
  overflow-wrap:anywhere;
  word-break:normal;
  line-break:auto;
  text-wrap:pretty;
}

/* Where supported, distribute a little of the justification between characters
   instead of creating very large spaces between words. */
@supports (text-justify:inter-character){
  .gw-intro-card > p,
  .gw-info-row p,
  .gw-benefit-list li span,
  .gw-faq-body p{
    text-justify:inter-character;
  }
}

/* Questions stay easy to scan; only their answers are justified. */
.gw-faq-trigger > span{
  text-align:left;
  text-align-last:left;
  text-justify:auto;
  overflow-wrap:anywhere;
}

/* Get Started content stays centered; this intentionally overrides global reading-copy justification. */
.gw-inquiry-card,
.gw-inquiry-card h2,
.gw-inquiry-card p,
.gw-inquiry-card .gw-section-label{
  text-align:center;
}
