:root{
  --ag-blue:#176d95;
  --ag-blue-deep:#0c4e71;
  --ag-navy:#071c27;
  --ag-navy-2:#0a2c3a;
  --ag-teal:#4c9594;
  --ag-green:#79b25d;
  --ag-lime:#c1bc3c;
  --ag-orange:#f2a13b;
  --ag-ink:#0c1820;
  --ag-muted:#61727b;
  --ag-line:#dce5e2;
  --ag-paper:#f5f8f7;
  --ag-soft:#edf4f1;
  --ag-white:#ffffff;
  --ag-ease:cubic-bezier(.22,1,.36,1);
  --ag-shadow:0 28px 80px rgba(7,28,39,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ag-ink);
  background:#fff;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
main{overflow:hidden}
.container{max-width:1240px}
.ag-section{padding:112px 0}
.ag-section-sm{padding:76px 0}
.ag-paper{background:var(--ag-paper)}
.ag-dark{background:var(--ag-navy);color:#fff}
.ag-border-top{border-top:1px solid var(--ag-line)}
.ag-muted{color:var(--ag-muted)}

.ag-kicker{
  display:inline-flex;align-items:center;gap:.7rem;
  color:var(--ag-blue-deep);
  font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase
}
.ag-kicker::before{content:"";width:30px;height:2px;background:linear-gradient(90deg,var(--ag-blue),var(--ag-green))}
.ag-dark .ag-kicker{color:#d6e4e9}
.ag-display{
  font-size:clamp(3rem,6.8vw,7rem);
  line-height:.93;
  letter-spacing:-.067em;
  font-weight:850;
}
.ag-display-section{
  font-size:clamp(2.35rem,4.9vw,5rem);
  line-height:.98;
  letter-spacing:-.058em;
  font-weight:835;
}
.ag-display-sub{
  font-size:clamp(2rem,3.25vw,3.45rem);
  line-height:1.02;
  letter-spacing:-.05em;
  font-weight:830;
}
.ag-lead{
  max-width:730px;
  color:var(--ag-muted);
  font-size:clamp(1.04rem,1.35vw,1.24rem);
  line-height:1.72;
}
.ag-dark .ag-lead{color:rgba(255,255,255,.67)}
.ag-gradient{
  background:linear-gradient(100deg,var(--ag-blue) 0%,var(--ag-teal) 40%,var(--ag-green) 78%,var(--ag-lime));
  -webkit-background-clip:text;background-clip:text;color:transparent
}

/* NAVIGATION — intentionally simple and stable */
#site-navbar{min-height:82px}
.ag-nav{
  min-height:82px;
  padding:10px 0;
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(220,229,226,.92);
  backdrop-filter:blur(18px);
  transition:box-shadow .3s var(--ag-ease),background .3s var(--ag-ease);
}
.ag-nav.is-scrolled{box-shadow:0 12px 35px rgba(7,28,39,.07);background:rgba(255,255,255,.98)}
.ag-brand{display:flex;align-items:center}
.ag-brand img,.ag-offcanvas-logo{width:auto;height:52px}
.ag-menu{gap:.1rem}
.ag-menu .nav-link{
  position:relative;
  padding:.9rem .82rem!important;
  color:#36505b;
  font-size:.82rem;
  font-weight:780;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.ag-menu .nav-link::after{
  content:"";
  position:absolute;
  left:.82rem;right:.82rem;bottom:.56rem;height:2px;
  background:linear-gradient(90deg,var(--ag-blue),var(--ag-green));
  transform:scaleX(0);transform-origin:right;
  transition:transform .25s var(--ag-ease)
}
.ag-menu .nav-link:hover,.ag-menu .nav-link.active{color:var(--ag-blue-deep)}
.ag-menu .nav-link:hover::after,.ag-menu .nav-link.active::after{transform:scaleX(1);transform-origin:left}
.ag-nav-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:.65rem;
  min-height:46px;padding:.75rem 1rem;
  background:var(--ag-navy);color:#fff!important;
  font-size:.75rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase;
  transition:.25s var(--ag-ease)
}
.ag-nav-cta:hover{background:var(--ag-blue-deep);transform:translateY(-2px)}
.ag-nav-cta span{color:var(--ag-green)}
.ag-toggler{border:0!important;box-shadow:none!important;padding:.5rem;display:flex;flex-direction:column;gap:5px}
.ag-toggler span{display:block;width:25px;height:2px;background:var(--ag-ink)}
.ag-offcanvas{width:min(90vw,390px)!important}

/* BUTTONS */
.ag-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.7rem;
  border:1px solid transparent;
  min-height:50px;padding:.9rem 1.15rem;
  font-size:.75rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;
  transition:.28s var(--ag-ease)
}
.ag-btn-primary{background:var(--ag-navy);color:#fff}
.ag-btn-primary:hover{background:var(--ag-blue);color:#fff;transform:translateY(-3px)}
.ag-btn-outline{border-color:#b9c8c3;background:#fff;color:var(--ag-ink)}
.ag-btn-outline:hover{border-color:var(--ag-blue);color:var(--ag-blue-deep);transform:translateY(-3px)}
.ag-btn-white{background:#fff;color:var(--ag-navy)}
.ag-btn-white:hover{background:#eef5f2;color:var(--ag-navy);transform:translateY(-3px)}

/* HERO */
.ag-hero{
  position:relative;
  min-height:calc(100vh - 82px);
  padding:86px 0 92px;
  display:flex;align-items:center;
  background:
    linear-gradient(90deg,#fff 0 61%,#f3f7f5 61% 100%);
}
.ag-hero::before{
  content:"";
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(11,78,114,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(11,78,114,.035) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,#000,transparent 90%);
  pointer-events:none
}
.ag-hero .container{position:relative;z-index:2}
.ag-hero-copy{max-width:760px}
.ag-hero-actions{display:flex;flex-wrap:wrap;gap:.72rem;margin-top:2rem}
.ag-hero-points{
  display:flex;flex-wrap:wrap;gap:.7rem 1.2rem;
  margin-top:2.1rem;padding-top:1.2rem;border-top:1px solid var(--ag-line);
  max-width:720px
}
.ag-hero-points span{font-size:.76rem;font-weight:750;color:#52666f}
.ag-hero-points span::before{content:"+";margin-right:.42rem;color:var(--ag-green);font-weight:900}

/* BUSINESS SYSTEM BOARD */
.ag-system-board{
  position:relative;
  min-height:570px;
  background:var(--ag-navy);
  color:#fff;
  border:1px solid #163a49;
  box-shadow:var(--ag-shadow);
  overflow:hidden
}
.ag-system-board::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:40px 40px
}
.ag-board-head{
  position:relative;z-index:2;
  min-height:58px;padding:1rem 1.15rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  border-bottom:1px solid rgba(255,255,255,.1);
  font-size:.65rem;font-weight:850;letter-spacing:.1em
}
.ag-board-live{display:inline-flex;align-items:center;gap:.5rem;color:#bfd8c5}
.ag-board-live::before{
  content:"";width:7px;height:7px;border-radius:50%;background:var(--ag-green);
  box-shadow:0 0 0 6px rgba(121,178,93,.12);
  animation:agPulse 2s ease-out infinite
}
@keyframes agPulse{0%{box-shadow:0 0 0 0 rgba(121,178,93,.33)}70%{box-shadow:0 0 0 12px transparent}100%{box-shadow:0 0 0 0 transparent}}
.ag-board-body{position:relative;z-index:2;padding:1.35rem}
.ag-board-label{font-size:.61rem;font-weight:850;letter-spacing:.12em;color:rgba(255,255,255,.4);text-transform:uppercase}
.ag-board-flow{margin-top:1rem;border-top:1px solid rgba(255,255,255,.09)}
.ag-board-row{
  position:relative;
  display:grid;grid-template-columns:88px 1fr 78px;
  gap:1rem;align-items:center;
  min-height:78px;
  border-bottom:1px solid rgba(255,255,255,.09)
}
.ag-board-row small{font-size:.59rem;color:rgba(255,255,255,.38);font-weight:800;letter-spacing:.08em}
.ag-board-row strong{font-size:1rem;font-weight:820}
.ag-board-row b{
  justify-self:end;
  font-size:.6rem;letter-spacing:.08em;font-weight:850;color:#c7dbc8
}
.ag-board-row::after{
  content:"";position:absolute;left:88px;right:78px;bottom:-1px;height:2px;
  background:linear-gradient(90deg,transparent,var(--ag-green),var(--ag-orange),transparent);
  transform:scaleX(.24);transform-origin:left;
  animation:agScan 3.8s ease-in-out infinite
}
.ag-board-row:nth-child(2)::after{animation-delay:.65s}
.ag-board-row:nth-child(3)::after{animation-delay:1.3s}
.ag-board-row:nth-child(4)::after{animation-delay:1.95s}
@keyframes agScan{0%,100%{transform:scaleX(.12);opacity:.35}50%{transform:scaleX(1);opacity:1}}
.ag-board-route{
  margin-top:1.5rem;padding:1.1rem;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.025)
}
.ag-route-top{display:flex;justify-content:space-between;gap:1rem;font-size:.6rem;color:rgba(255,255,255,.38);font-weight:850;letter-spacing:.08em}
.ag-route-track{position:relative;height:90px;margin-top:.8rem}
.ag-route-line{position:absolute;left:9%;right:9%;top:43px;height:1px;background:rgba(255,255,255,.17)}
.ag-route-line::after{
  content:"";position:absolute;top:-1px;width:28%;height:3px;
  background:linear-gradient(90deg,transparent,var(--ag-green),var(--ag-orange));
  animation:agTravel 4.6s linear infinite
}
@keyframes agTravel{from{left:-25%}to{left:105%}}
.ag-route-stop{
  position:absolute;top:27px;transform:translateX(-50%);
  width:32px;height:32px;border-radius:50%;
  background:var(--ag-navy);border:1px solid rgba(255,255,255,.22)
}
.ag-route-stop::after{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--ag-green)}
.ag-route-stop.s1{left:10%}.ag-route-stop.s2{left:50%}.ag-route-stop.s3{left:90%}
.ag-route-stop.s2::after{background:var(--ag-orange)}
.ag-route-name{
  position:absolute;top:66px;transform:translateX(-50%);
  font-size:.6rem;font-weight:850;letter-spacing:.08em;color:rgba(255,255,255,.65)
}
.ag-route-name.n1{left:10%}.ag-route-name.n2{left:50%}.ag-route-name.n3{left:90%}

/* POWER RAIL */
.ag-power-rail{overflow:hidden;background:var(--ag-blue);color:#fff}
.ag-power-track{
  display:flex;width:max-content;padding:.9rem 0;
  animation:agMarquee 30s linear infinite
}
.ag-power-set{display:flex;align-items:center}
.ag-power-set span{white-space:nowrap;font-size:.75rem;font-weight:850;letter-spacing:.12em}
.ag-power-set i{width:5px;height:5px;border-radius:50%;background:var(--ag-lime);margin:0 1.55rem}
@keyframes agMarquee{to{transform:translateX(-50%)}}

/* OUTCOME / BUSINESS VALUE */
.ag-outcomes{border-top:1px solid var(--ag-line)}
.ag-outcome{
  display:grid;grid-template-columns:86px minmax(220px,.8fr) 1.3fr 60px;
  gap:1.5rem;align-items:center;
  min-height:155px;
  padding:1.7rem 1rem;
  border-bottom:1px solid var(--ag-line);
  transition:.3s var(--ag-ease)
}
.ag-outcome:hover{background:#f7faf8;padding-left:1.35rem}
.ag-outcome small{font-size:.66rem;color:var(--ag-blue);font-weight:850;letter-spacing:.09em}
.ag-outcome h3{font-size:clamp(1.55rem,2.4vw,2.5rem);font-weight:835;letter-spacing:-.045em;margin:0}
.ag-outcome p{color:var(--ag-muted);line-height:1.68;margin:0}
.ag-outcome b{justify-self:end;color:var(--ag-green);font-size:1.3rem}

/* CAPABILITY STACK */
.ag-stack{border-top:1px solid var(--ag-line)}
.ag-stack-row{
  position:relative;
  display:grid;grid-template-columns:92px 1.05fr 1.25fr 130px;
  gap:1.5rem;align-items:center;
  min-height:128px;
  padding:1.45rem 1rem;
  border-bottom:1px solid var(--ag-line);
  transition:.3s var(--ag-ease)
}
.ag-stack-row::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;
  transition:.3s var(--ag-ease)
}
.ag-stack-row:hover{background:#fff;box-shadow:0 16px 45px rgba(7,28,39,.06);transform:translateX(4px)}
.ag-stack-row:hover::before{background:linear-gradient(var(--ag-blue),var(--ag-green))}
.ag-stack-code{font-size:.65rem;color:var(--ag-blue);font-weight:850;letter-spacing:.09em}
.ag-stack-title{font-size:1.55rem;font-weight:830;letter-spacing:-.035em}
.ag-stack-copy{color:var(--ag-muted);line-height:1.65;font-size:.93rem}
.ag-stack-link{text-align:right;font-size:.66rem;font-weight:850;letter-spacing:.08em;color:var(--ag-blue-deep)}

/* ASEAN CORRIDOR */
.ag-corridor{
  position:relative;margin-top:4rem;padding-top:2rem
}
.ag-corridor-track{
  position:absolute;left:8%;right:8%;top:53px;height:2px;
  background:rgba(255,255,255,.14)
}
.ag-corridor-track::after{
  content:"";position:absolute;top:-1px;width:25%;height:4px;
  background:linear-gradient(90deg,transparent,var(--ag-green),var(--ag-orange));
  animation:agTravel 5.4s linear infinite
}
.ag-corridor-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}
.ag-corridor-step{position:relative;padding-top:2.7rem}
.ag-corridor-dot{
  position:absolute;top:13px;left:0;width:18px;height:18px;border-radius:50%;
  background:var(--ag-navy);border:4px solid var(--ag-green);box-shadow:0 0 0 7px rgba(121,178,93,.1)
}
.ag-corridor-step:nth-child(3) .ag-corridor-dot{border-color:var(--ag-orange)}
.ag-corridor-step small{display:block;color:rgba(255,255,255,.38);font-size:.61rem;font-weight:850;letter-spacing:.1em}
.ag-corridor-step h3{font-size:1.55rem;font-weight:830;margin:.7rem 0}
.ag-corridor-step p{margin:0;color:rgba(255,255,255,.62);line-height:1.65;font-size:.9rem}

/* INTERACTIVE OPERATING MODEL */
.ag-os{border:1px solid var(--ag-line);background:#fff}
.ag-os-tabs{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--ag-line)}
.ag-os-tab{
  min-height:82px;border:0;border-right:1px solid var(--ag-line);background:#fff;
  padding:.9rem .7rem;text-align:left;cursor:pointer;transition:.25s var(--ag-ease)
}
.ag-os-tab:last-child{border-right:0}
.ag-os-tab small{display:block;font-size:.58rem;color:var(--ag-blue);font-weight:850;letter-spacing:.08em}
.ag-os-tab strong{display:block;margin-top:.35rem;font-size:.79rem;font-weight:820}
.ag-os-tab.active{background:var(--ag-navy);color:#fff}
.ag-os-tab.active small{color:#afd0da}
.ag-os-panel{display:none;padding:2.3rem}
.ag-os-panel.active{display:block;animation:agPanel .45s var(--ag-ease)}
@keyframes agPanel{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
.ag-os-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem}
.ag-os-stage{font-size:.65rem;color:var(--ag-blue);font-weight:850;letter-spacing:.1em}
.ag-os-panel h3{font-size:clamp(2rem,3.5vw,3.4rem);letter-spacing:-.05em;font-weight:840;margin:.65rem 0}
.ag-os-panel p{color:var(--ag-muted);line-height:1.7}
.ag-os-output{border-left:1px solid var(--ag-line);padding-left:2rem}
.ag-os-output small{display:block;font-size:.61rem;color:var(--ag-blue);font-weight:850;letter-spacing:.1em}
.ag-os-output ul{list-style:none;padding:0;margin:1rem 0 0}
.ag-os-output li{padding:.7rem 0;border-top:1px solid var(--ag-line);font-weight:760;font-size:.87rem}
.ag-os-output li::before{content:"+";color:var(--ag-green);font-weight:900;margin-right:.55rem}

/* ENTRY POINTS */
.ag-entry-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ag-line);border-left:1px solid var(--ag-line)}
.ag-entry{
  min-height:340px;padding:1.7rem;
  border-right:1px solid var(--ag-line);border-bottom:1px solid var(--ag-line);
  background:#fff;transition:.3s var(--ag-ease)
}
.ag-entry:hover{background:#f5faf7;transform:translateY(-4px);box-shadow:0 20px 50px rgba(7,28,39,.06)}
.ag-entry small{font-size:.62rem;color:var(--ag-blue);font-weight:850;letter-spacing:.1em}
.ag-entry h3{font-size:1.65rem;line-height:1.05;letter-spacing:-.04em;font-weight:830;margin:2.6rem 0 1rem}
.ag-entry p{color:var(--ag-muted);line-height:1.65}
.ag-entry ul{list-style:none;padding:0;margin:1.3rem 0 0}
.ag-entry li{padding:.58rem 0;border-top:1px solid var(--ag-line);font-size:.8rem;font-weight:750}

/* PAGE HERO */
.ag-page-hero{
  position:relative;padding:125px 0 88px;
  background:var(--ag-paper);border-bottom:1px solid var(--ag-line)
}
.ag-page-hero::before{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(11,78,114,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(11,78,114,.035) 1px,transparent 1px);
  background-size:48px 48px
}
.ag-page-hero .container{position:relative;z-index:2}
.ag-page-meta{display:flex;flex-wrap:wrap;gap:.7rem 1.3rem;margin-top:2rem}
.ag-page-meta span{font-size:.68rem;color:#52666f;font-weight:790;letter-spacing:.06em;text-transform:uppercase}
.ag-page-meta b{color:var(--ag-blue-deep);margin-right:.35rem}

/* ABOUT */
.ag-thesis{border-top:1px solid var(--ag-line)}
.ag-thesis-row{
  display:grid;grid-template-columns:100px .8fr 1.2fr;
  gap:2rem;align-items:start;
  padding:2rem 0;border-bottom:1px solid var(--ag-line)
}
.ag-thesis-row small{font-size:.65rem;color:var(--ag-blue);font-weight:850;letter-spacing:.09em}
.ag-thesis-row h3{font-size:1.5rem;font-weight:830;letter-spacing:-.035em;margin:0}
.ag-thesis-row p{color:var(--ag-muted);line-height:1.7;margin:0}
.ag-roadmap{border-left:1px solid var(--ag-line)}
.ag-roadmap-item{
  position:relative;display:grid;grid-template-columns:130px 1fr;gap:1.8rem;
  padding:0 0 2rem 2rem
}
.ag-roadmap-item::before{
  content:"";position:absolute;left:-6px;top:5px;width:11px;height:11px;border-radius:50%;
  background:var(--ag-green);border:3px solid #fff;box-shadow:0 0 0 1px var(--ag-line)
}
.ag-roadmap-item small{font-size:.63rem;color:var(--ag-blue);font-weight:850;letter-spacing:.1em}
.ag-roadmap-item h3{font-size:1.5rem;font-weight:830;margin:0 0 .45rem}
.ag-roadmap-item p{color:var(--ag-muted);line-height:1.68;margin:0}

/* SOLUTIONS */
.ag-specs{border-top:1px solid var(--ag-line)}
.ag-spec{
  display:grid;grid-template-columns:96px 1fr 1fr;gap:2rem;
  padding:2rem 0;border-bottom:1px solid var(--ag-line)
}
.ag-spec-code{font-size:.64rem;color:var(--ag-blue);font-weight:850;letter-spacing:.09em}
.ag-spec h3{font-size:clamp(1.8rem,2.6vw,2.6rem);font-weight:835;letter-spacing:-.045em;line-height:1;margin:0 0 .8rem}
.ag-spec p{color:var(--ag-muted);line-height:1.7}
.ag-spec strong{font-size:.68rem;color:var(--ag-blue-deep);letter-spacing:.08em}
.ag-spec-list{list-style:none;padding:0;margin:1rem 0 0}
.ag-spec-list li{padding:.58rem 0;border-top:1px solid var(--ag-line);font-size:.84rem;font-weight:740}
.ag-spec-list li::before{content:"+";margin-right:.5rem;color:var(--ag-green);font-weight:900}

/* ECOSYSTEM */
.ag-role-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ag-line);border-left:1px solid var(--ag-line)}
.ag-role{
  min-height:430px;padding:1.8rem;
  border-right:1px solid var(--ag-line);border-bottom:1px solid var(--ag-line);
  transition:.3s var(--ag-ease)
}
.ag-role:hover{background:#f6faf8}
.ag-role small{font-size:.63rem;color:var(--ag-blue);font-weight:850;letter-spacing:.1em}
.ag-role h3{font-size:1.75rem;font-weight:830;letter-spacing:-.04em;margin:1.7rem 0 1rem}
.ag-role p{color:var(--ag-muted);line-height:1.68}
.ag-role ul{list-style:none;padding:0;margin:1.4rem 0 0}
.ag-role li{padding:.62rem 0;border-top:1px solid var(--ag-line);font-size:.82rem;font-weight:750}
.ag-partner-row{display:grid;grid-template-columns:190px 1fr;gap:1.5rem;padding:1.25rem 0;border-top:1px solid var(--ag-line)}
.ag-partner-row:last-child{border-bottom:1px solid var(--ag-line)}
.ag-partner-row strong{font-size:.78rem;color:var(--ag-blue-deep)}
.ag-partner-row span{color:var(--ag-muted)}

/* ACADEMY */
.ag-modules{border-top:1px solid var(--ag-line)}
.ag-module{
  display:grid;grid-template-columns:90px 1fr 200px;gap:2rem;align-items:center;
  padding:1.75rem 0;border-bottom:1px solid var(--ag-line)
}
.ag-module small{font-size:.63rem;color:var(--ag-blue);font-weight:850;letter-spacing:.09em}
.ag-module h3{font-size:1.5rem;font-weight:830;margin:0 0 .35rem}
.ag-module p{margin:0;color:var(--ag-muted);line-height:1.65}
.ag-module-tag{text-align:right;font-size:.64rem;color:#4b6457;font-weight:850;letter-spacing:.08em;text-transform:uppercase}

/* CONTACT */
.ag-contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;border:1px solid var(--ag-line)}
.ag-contact-info{padding:3rem;background:var(--ag-navy);color:#fff}
.ag-contact-info .ag-lead{color:rgba(255,255,255,.62)}
.ag-contact-point{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.1)}
.ag-contact-point small{display:block;color:rgba(255,255,255,.4);font-size:.61rem;font-weight:850;letter-spacing:.1em}
.ag-contact-point strong{display:block;margin-top:.35rem}
.ag-contact-form{padding:3rem;background:#fff}
.form-label{font-size:.75rem;font-weight:800;letter-spacing:.03em}
.form-control,.form-select{
  border-radius:0!important;padding:.95rem 1rem;
  border-color:#cdd9d5;background:#fbfdfc
}
.form-control:focus,.form-select:focus{border-color:var(--ag-blue);box-shadow:0 0 0 .22rem rgba(23,109,149,.08)}
.accordion-item{border:0;border-bottom:1px solid var(--ag-line)}
.accordion-button{
  padding:1.3rem 0;background:transparent!important;box-shadow:none!important;
  color:var(--ag-ink)!important;font-weight:820
}
.accordion-body{padding:0 0 1.3rem;color:var(--ag-muted);line-height:1.7}

/* CTA */
.ag-cta{
  position:relative;overflow:hidden;
  padding:82px 0;
  color:#fff;
  background:linear-gradient(110deg,var(--ag-navy),#0c5669 60%,#4f7f53)
}
.ag-cta::after{
  content:"";position:absolute;right:-150px;top:-190px;width:430px;height:430px;
  border:1px solid rgba(255,255,255,.1);transform:rotate(35deg)
}
.ag-cta .container{position:relative;z-index:2}

/* FOOTER */
.ag-footer{background:#041721;color:#fff;padding:66px 0 24px}
.ag-footer-grid{display:grid;grid-template-columns:2.2fr .8fr .8fr 1.2fr;gap:3rem}
.ag-footer-brand img{height:58px;width:auto;background:#fff;padding:4px}
.ag-footer-brand p{max-width:520px;margin:1.45rem 0 0;color:rgba(255,255,255,.58);line-height:1.75}
.ag-footer-flow{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.2rem;font-size:.61rem;font-weight:850;letter-spacing:.09em;color:rgba(255,255,255,.52)}
.ag-footer-flow i{width:4px;height:4px;border-radius:50%;background:var(--ag-green)}
.ag-footer-label{color:rgba(255,255,255,.38);font-size:.62rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.ag-footer a:not(.ag-footer-cta){display:block;color:rgba(255,255,255,.7);padding:.35rem 0;font-size:.88rem;font-weight:680}
.ag-footer a:hover{color:#fff}
.ag-footer-next h3{font-size:1.25rem;line-height:1.4;font-weight:800}
.ag-footer-cta{display:inline-flex;gap:.55rem;margin-top:1rem;color:#fff;font-size:.7rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.ag-footer-cta span{color:var(--ag-green)}
.ag-footer-bottom{
  display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  margin-top:3.2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.4);font-size:.68rem;letter-spacing:.07em
}
.ag-top{
  position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;
  background:var(--ag-blue-deep);color:#fff;z-index:100;
  opacity:0;pointer-events:none;transform:translateY(8px);transition:.25s var(--ag-ease)
}
.ag-top.show{opacity:1;pointer-events:auto;transform:none}

/* Animation is progressive enhancement: content is visible if JS fails */
.reveal{opacity:1;transform:none}
.js-ready .reveal{
  opacity:0;transform:translateY(22px);
  transition:opacity .72s var(--ag-ease),transform .72s var(--ag-ease)
}
.js-ready .reveal.visible{opacity:1;transform:none}
.js-ready .delay-1{transition-delay:.08s}
.js-ready .delay-2{transition-delay:.16s}
.js-ready .delay-3{transition-delay:.24s}

/* RESPONSIVE */
@media(max-width:1199.98px){
  .ag-offcanvas .nav-link{font-size:1rem;padding:.85rem 0!important}
  .ag-offcanvas .nav-link::after{left:0;right:auto;width:30px}
  .ag-hero{background:#fff}
  .ag-system-board{max-width:620px;margin:2rem auto 0}
  .ag-role-grid,.ag-entry-grid{grid-template-columns:repeat(2,1fr)}
  .ag-footer-grid{grid-template-columns:1.8fr .8fr .8fr}
  .ag-footer-next{grid-column:1/-1;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}
}
@media(max-width:991.98px){
  .ag-section{padding:88px 0}
  .ag-hero{min-height:auto;padding:64px 0 80px}
  .ag-stack-row{grid-template-columns:80px 1fr}
  .ag-stack-copy,.ag-stack-link{grid-column:2}
  .ag-stack-link{text-align:left}
  .ag-outcome{grid-template-columns:70px 1fr}
  .ag-outcome p,.ag-outcome b{grid-column:2}
  .ag-outcome b{justify-self:start}
  .ag-os-tabs{grid-template-columns:repeat(3,1fr)}
  .ag-os-tab:nth-child(3n){border-right:0}
  .ag-os-tab:nth-child(-n+3){border-bottom:1px solid var(--ag-line)}
  .ag-os-grid{grid-template-columns:1fr}
  .ag-os-output{border-left:0;border-top:1px solid var(--ag-line);padding:1.4rem 0 0}
  .ag-thesis-row{grid-template-columns:80px 1fr}
  .ag-thesis-row p{grid-column:2}
  .ag-spec{grid-template-columns:80px 1fr}
  .ag-spec>div:last-child{grid-column:2}
  .ag-module{grid-template-columns:70px 1fr}
  .ag-module-tag{grid-column:2;text-align:left}
  .ag-contact-grid{grid-template-columns:1fr}
  .ag-page-hero{padding-top:105px}
}
@media(max-width:767.98px){
  #site-navbar{min-height:74px}
  .ag-nav{min-height:74px}
  .ag-brand img,.ag-offcanvas-logo{height:46px}
  .ag-display{font-size:clamp(3.25rem,16vw,5.2rem)}
  .ag-section{padding:72px 0}
  .ag-section-sm{padding:56px 0}
  .ag-hero{padding:54px 0 70px}
  .ag-system-board{min-height:0}
  .ag-board-row{grid-template-columns:70px 1fr}
  .ag-board-row b{grid-column:2;justify-self:start;margin-bottom:.7rem}
  .ag-board-row::after{left:70px;right:0}
  .ag-board-head{font-size:.58rem}
  .ag-corridor-track,.ag-corridor-dot{display:none}
  .ag-corridor-grid{grid-template-columns:1fr}
  .ag-corridor-step{padding-top:.4rem}
  .ag-os-tabs{grid-template-columns:repeat(2,1fr)}
  .ag-os-tab:nth-child(odd){border-right:1px solid var(--ag-line)}
  .ag-os-tab:nth-child(even){border-right:0}
  .ag-os-tab:nth-child(-n+4){border-bottom:1px solid var(--ag-line)}
  .ag-os-panel{padding:1.5rem}
  .ag-entry-grid,.ag-role-grid{grid-template-columns:1fr}
  .ag-entry{min-height:0}
  .ag-roadmap-item{grid-template-columns:1fr;gap:.4rem}
  .ag-partner-row{grid-template-columns:1fr;gap:.35rem}
  .ag-contact-info,.ag-contact-form{padding:2rem}
  .ag-footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .ag-footer-brand,.ag-footer-next{grid-column:1/-1}
}
@media(max-width:480px){
  .ag-route-name{font-size:.52rem}
  .ag-footer-grid{grid-template-columns:1fr}
  .ag-footer-brand,.ag-footer-next{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js-ready .reveal{opacity:1!important;transform:none!important}
}