  @import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&display=swap');
  :root{
    --dark:#1c3521;
    --dark2:#152a1c;
    --green:#8DD23B;
    --green-deep:#6FAF22;
    --lime:#c9e600;
    --lime2:#e8ff2e;
    --grey-bg:#ededed;
    --text-dark:#333333;
    --text-grey:#767676;
    --white:#ffffff;
    --font: 'Geist', 'Segoe UI', Arial, sans-serif;
  }

  *{box-sizing:border-box; margin:0; padding:0;}
  body{font-family:var(--font); color:var(--text-dark); line-height:1.6; overflow-x:hidden;}
  img{max-width:100%; display:block;}
  a{text-decoration:none; color:inherit;}
  ul{list-style:none;}
  .wrap{max-width:1200px; margin:0 auto; padding:0 24px;}

  /* Buttons */
  .btn-row{display:flex; align-items:center; gap:10px;}
  .pill{
    display:inline-flex; align-items:center; justify-content:center;
    padding:10px 56px; border-radius:50px;
    font-size:14px; font-weight:600; letter-spacing:.5px; text-transform:uppercase;
    white-space:nowrap;
  }
  .pill-green{background:var(--green); color:#111;}
  .pill-lime{background:var(--green); color:#111;}
  .pill-dark{background:var(--dark); color:#fff;}
  .pill-yellow{background:var(--lime2); color:#111;}
  .arrow-circle{
    width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    flex-shrink:0; position:relative; font-size:0 !important; font-weight:400 !important; line-height:1; text-align:center;
  }
  .arrow-circle::before{
    content:""; position:absolute; top:50%; left:50%; width:9px; height:9px;
    border-right:2px solid currentColor; border-bottom:2px solid currentColor;
    transform:translate(-50%, -65%) rotate(45deg);
  }
  .arrow-circle.arrow-right::before{
    transform:translate(-62%, -50%) rotate(-45deg);
  }
  .arrow-circle.mail-circle::before{
    width:22px; height:18px; border:0; transform:translate(-50%, -50%);
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 22' fill='none' stroke='%23111' stroke-width='2.2'%3E%3Crect x='1.1' y='1.1' width='25.8' height='19.8' rx='.8'/%3E%3Cpath d='m2.5 3 11.5 8.5L25.5 3M2.5 19.5l8.6-7.1m14.4 7.1-8.6-7.1'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .arrow-circle.on-green{background:var(--green); color:#111;}
  .arrow-circle.on-dark{background:var(--dark); color:#fff;}
  .arrow-circle.on-lime{background:var(--green); color:#111;}
  a.pill, a.arrow-circle{cursor:pointer; text-decoration:none;}
  a.pill:focus-visible, a.arrow-circle:focus-visible{outline:2px solid #fff; outline-offset:3px;}
  button{font:inherit; border:0; cursor:pointer;}

  /* Header CTA modal */
  .header-cta{border:0; font-family:inherit;}
  .lead-modal{position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:24px; opacity:0; visibility:hidden; transition:opacity .2s ease, visibility .2s ease;}
  .lead-modal.is-open{opacity:1; visibility:visible;}
  .lead-modal__backdrop{position:absolute; inset:0; background:rgba(9,22,13,.44); backdrop-filter:blur(9px); -webkit-backdrop-filter:blur(9px);}
  .lead-modal__dialog{position:relative; z-index:1; width:min(560px, 100%); overflow:hidden; background:var(--green); box-shadow:0 20px 60px rgba(0,0,0,.3); transform:translateY(14px); transition:transform .2s ease;}
  .lead-modal.is-open .lead-modal__dialog{transform:translateY(0);}
  .lead-modal__content{position:relative; z-index:1; padding:76px 60px 84px;}
  .lead-modal__close{position:absolute; z-index:2; top:16px; right:18px; width:34px; height:34px; border-radius:50%; background:transparent; color:#152a1c; font-size:30px; font-weight:300; line-height:1;}
  .lead-modal__close:hover, .lead-modal__close:focus-visible{background:rgba(255,255,255,.35);}
  .lead-modal h2{font-size:36px; line-height:1; letter-spacing:-.05em; color:#101710; font-weight:400; margin-bottom:8px;}
  .lead-modal__content > p{max-width:430px; color:#111; font-size:14px; line-height:1.18;}
  .lead-form{margin-top:42px;}
  .lead-form label{display:block; margin:0 0 6px 22px; color:#111; font-size:14px; line-height:1.2;}
  .lead-form input{display:block; width:100%; height:42px; margin-bottom:18px; padding:0 24px; border:0; border-radius:999px; background:#fff; color:#111; font:400 14px var(--font); outline:2px solid transparent;}
  .lead-form input::placeholder{color:#aeb5a9;}
  .lead-form input:focus{outline-color:#1c3521;}
  .lead-form__actions{display:flex; align-items:center; gap:10px; margin-top:38px;}
  .lead-form__submit{min-width:264px; justify-content:flex-start; padding:12px 26px; background:var(--lime2); color:#111; font-size:14px; font-weight:500; letter-spacing:0; text-transform:none;}
  .lead-form__arrow{background:var(--lime2); color:#111;}
  .lead-form__arrow::before{transform:translate(-62%, -50%) rotate(-45deg);}
  .lead-modal__diagonal{position:absolute; inset:auto 0 0; height:68px; background:var(--lime2); clip-path:polygon(0 82%, 100% 0, 100% 100%, 0 100%);}
  body.modal-open{overflow:hidden;}

  /* Global PHP lead form only; retained HTML and other forms are unaffected. */
  .lead-modal[data-global-lead]{overflow-y:auto;}
  .lead-modal[data-global-lead].is-open{transition:opacity .2s ease;}
  .lead-modal[data-global-lead] .lead-modal__dialog{margin:auto;flex-shrink:0;}
  .lead-modal[data-global-lead] .lead-modal__content h2{overflow-wrap:anywhere;}
  .lead-modal[data-global-lead] input[type="hidden"],
  .lead-modal[data-global-lead] [hidden],
  .lead-modal[data-global-lead] .lead-form__trap{display:none!important;}
  .lead-modal[data-global-lead] .lead-form__status{color:#142a1a;font-size:14px;line-height:1.4;margin:12px 0;}
  .lead-modal[data-global-lead] button:disabled{cursor:wait;opacity:.65;}
  @media(max-width:600px){
    .lead-modal[data-global-lead] .lead-modal__content h2{font-size:clamp(22px,6vw,30px)!important;line-height:1.12!important;}
    .lead-modal[data-global-lead] .lead-form__submit{min-width:0;flex:1;}
  }

  /* Dedicated thank-you page. */
  .thank-you-page{position:relative; isolation:isolate; min-height:100vh; display:grid; place-items:center; overflow:hidden; background:#142a1a;}
  .thank-you-page::before{content:""; position:fixed; inset:-18px; z-index:0; background:linear-gradient(rgba(13,37,20,.45), rgba(13,37,20,.45)), url('../assets/images/benefits.jpg') center/cover no-repeat; filter:blur(9px); transform:scale(1.04);}
  .thank-you-card{position:relative; z-index:1; width:min(560px, calc(100% - 48px)); min-height:530px; display:flex; align-items:center; justify-content:center; overflow:hidden; padding:68px 52px 96px; text-align:center; color:#fff; background-color:var(--dark); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M0 4L6 0L12 4L18 0L24 4M0 11L6 7L12 11L18 7L24 11' fill='none' stroke='%233c673d' stroke-opacity='.52' stroke-width='1'/%3E%3C/svg%3E");}
  .thank-you-card__content{position:relative; z-index:1;}
  .thank-you-card h1{margin-bottom:18px; color:var(--lime2); font-family:cursive; font-size:clamp(66px, 9vw, 94px); font-weight:400; line-height:100%; letter-spacing:-5%;font-style:italic;}
  .thank-you-card h2{margin-bottom:28px; color:#fff; font-size:26px; font-weight:400; line-height:1.1;}
  .thank-you-card p{max-width:390px; font-size:13px; line-height:1.35;}
  .thank-you-card__diagonal{position:absolute; inset:auto 0 0; height:68px; background:var(--lime2); clip-path:polygon(0 100%, 100% 0, 100% 100%, 0 100%);}

  /* Photo placeholders */
  .photo{
    background:linear-gradient(135deg,#cfd8cf,#9fb39a);
    display:flex; align-items:center; justify-content:center;
    color:rgba(255,255,255,.85); font-size:12px; text-align:center; padding:10px;
    background-size:cover; background-position:center;
  }
  .photo.round{border-radius:50%; aspect-ratio:1/1; overflow:hidden;}

  h1,h2,h3,h4,h5,h6{font-weight:400; line-height:1.2;}
  .eyebrow{color:var(--lime2); font-weight:700; text-transform:uppercase; font-size:13px; letter-spacing:1px;}

  /* ===== HEADER / HERO ===== */
  header{
    position:relative;
    background:url('../assets/images/banner.jpg') center/cover no-repeat;
    color:#fff;
    min-height:clamp(690px,50vw,860px);
  }
  nav{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:24px;
    padding:30px clamp(48px,8vw,138px) 18px;
  }
  .logo{display:flex; align-items:center;}
  .site-logo{display:block; width:220px; height:auto;}
  .footer-logo-img{display:block; width:150px; height:auto; margin-bottom:12px;}
  .nav-links{display:flex; justify-content:center; gap:28px; font-size:14px; font-weight:600; text-transform:uppercase;}
  .nav-links a:hover, .nav-links a:focus-visible{color:var(--green); text-decoration:none;}
  .menu-toggle{display:none;}
  .hero-content{text-align:center; padding:158px 20px 138px; max-width:1240px; margin:0 auto;}
  .hero-content h1{
    font-size:clamp(52px,5vw,65px);
    line-height:.95;
    margin:0 auto 16px;
    max-width:none;
    letter-spacing:-5%;
  }
  .hero-content p{max-width:1070px; margin:0 auto 30px; font-size:16px; color:#fff; line-height:1.35; letter-spacing: 5%; }
  .hero-content .btn-row{justify-content:center;}
  .hero-subheading{font-size:clamp(20px,3vw,25px); margin:0 auto 20px; max-width:1070px;} 
  /* Product hero follows its supplied composition without changing Home. */
  header[data-page="products"]{background-image:url('../assets/images/product-hero.jpg');}
  header[data-page="products"] .hero-content{padding-top:86px; padding-bottom:112px;}
  header[data-page="products"] .hero-content h1{max-width:900px;}
  header[data-page="products"] .hero-content p{max-width:570px; margin-bottom:28px;}
  header[data-page="products"] .hero-content .pill{font-size:14px; padding-left:42px; padding-right:42px;}
  header[data-page="products"] .hero-content .secondary-action{margin-top:10px;}
  header[data-page="products"] + .band-top{margin-bottom:0; clip-path:none; background:var(--dark);}
  header[data-page="products"] + .band-top::after{content:""; position:absolute; inset:0; background:var(--green-deep); clip-path:polygon(0 0, 100% 0, 100% 5%, 0 100%);}

  /* ===== INTRO DARK STRIP ===== */
  .band-top{
    background:var(--green-deep);
    height:96px;
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0 5%);
    margin-bottom:-96px;
    position:relative;
    z-index:1;
  }
  .band-b{
    background:var(--green-deep);
    height:96px;
    clip-path: polygon(-5% 100%, 100% 0, 100% 100%);
  }
  .intro-dark{
    background-color:var(--dark);
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M0 4L6 0L12 4L18 0L24 4M0 11L6 7L12 11L18 7L24 11' fill='none' stroke='%233c673d' stroke-opacity='.52' stroke-width='1'/%3E%3C/svg%3E");
    background-size:24px 14px;
    color:#fff; padding:140px 0 88px; position:relative; overflow:hidden;
  }
  .intro-grid{display:grid; grid-template-columns:1.5fr .50fr; gap:44px; align-items:center; position:relative;}
  .intro-grid h2{color:var(--lime2); font-size:clamp(32px,2.7vw,42px); line-height:1.01; max-width:530px; margin-bottom:20px; letter-spacing:-.035em;}
  .intro-grid p{color:#f0f0f0; font-size:15px; line-height:1.32; margin-bottom:26px; max-width:470px;}
  .link-list li{
    border-bottom:1px solid var(--green); padding:9px 0; font-size:14px; color:#fff;
  }
  .link-list{max-width:440px;}
  .ebook-art{position:relative; display:flex; justify-content:center; align-items:center; min-height:374px;}
  .ebook-circle{
    width:374px; height:374px; border-radius:50%;
    background:#111d13 url('../assets/images/hero-human-edge-book.png') center/cover no-repeat;
    position:relative;
    display:flex; align-items:center; justify-content:center; left:10%;
  }
  .ebook-cover{
    display:none;
  }
  .lime-blob{
    position:absolute; right:-435px; top:0; width:360px; height:360px; border-radius:50%;
    background:var(--lime2); z-index:0;
  }
  .dl-row{display:flex; align-items:center; gap:10px; position:relative; z-index:2;left:10%;}
  .intro-dark > .wrap:last-child{display:flex; justify-content:flex-end; padding-right:clamp(24px,8vw,130px); margin-top:16px;}
  .intro-dark .pill-lime, .intro-dark .arrow-circle.on-lime{background:var(--lime2); color:#111;}
  .intro-dark .dl-row .pill{text-transform:none; letter-spacing:0; font-weight:500;}

  /* ===== CAPABILITY TRANSFORM ===== */
  .section{padding:88px 0;}
  .center-head{text-align:center; max-width:740px; margin:0 auto 50px;}
  .center-head h2{font-size:36px; color:#4a4a4a;}
  .center-head .lead{font-weight:700; font-size:15px; margin:18px 0 12px;}
  .center-head .sub{color:var(--text-grey); font-size:14px;}
  .section-white{background:#fff;}
  .intro-section{padding:88px 0 24px;}
  .intro-wrap{max-width:1000px; margin:0 auto; text-align:center;}
  .intro-wrap h2{
    color:#666; font-size:54px; line-height:0.98; letter-spacing:-5%;
    max-width:780px; margin:0 auto;
  }
  .intro-rule{
    margin:20px auto 20px !important;
  }
  .intro-lead{
    font-size:18px; line-height:1.35; color:#7a7a7a; font-weight:700;
    max-width:900px; margin:0 auto;
  }
  .intro-sub{
    font-size:16px; line-height:1.48; color:#757575;
    max-width:66ch; margin:16px auto 0;
  }
  .capability-section{padding:50px 0 96px;}
  .areas-label{
    text-align:center; font-weight:800; font-size:20px; letter-spacing:0;
    margin:0 0 30px; color:#121212; position:relative;
  }
  .areas-label::after{
    content:""; display:block; width:min(100%, 445px); height:20px;
    background:linear-gradient(90deg, var(--green) 0%, var(--green-deep) 78%);
    clip-path:polygon(0 50%, 100% 0, 100% 100%, 0 50%);
    margin:14px auto 0;
  }
  .circle-grid{
    display:grid;
    justify-content:center;
    justify-items:center;
    gap:42px 48px;
    margin-bottom:0;
  }
  .circle-grid-top{
    grid-template-columns:repeat(4, minmax(0, 1fr));
    max-width:1120px;
    margin:0 auto;
  }
  .circle-grid-bottom{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    max-width:840px;
    margin:46px auto 0;
  }
  .circle-item{width:100%; max-width:220px; text-align:center;}
  .circle-item .photo.round{width:210px; height:210px; margin:0 auto 18px;}
  .circle-item span{font-size:15px; font-weight:700; line-height:1.18; color:#747474;}
  .center-btn{display:flex; justify-content:center; margin-top:50px;}
  .cap-cta .pill-green{background:#a7dc49; color:#111; padding:14px 32px; font-size:12px; letter-spacing:.25px;}
  .cap-cta .arrow-circle.on-green{background:#a7dc49; color:#111;}

  /* ===== FRAMEWORK ===== */
  .grey{background:#f3f3f3;}
  .framework-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; position:relative;}
  .framework-grid > div:first-child{max-width:380px;}
  .framework-grid h2{font-size:50px; color:#333; line-height:1.08; max-width:14ch; margin-bottom:22px; letter-spacing:-.035em;font-weight:400;}
  .framework-grid .sub{color:var(--text-grey); font-size:13px; margin-bottom:34px; white-space:nowrap;}
  .framework-grid .link-list{max-width:380px;}
  .book-art{position:relative; display:flex; justify-content:center; align-items:center; min-height:420px;}
  .book-circle-yellow{width: 427px;
    height: 427px;
    border-radius: 50%;
    background: #111d13 url('../assets/images/book2.jpg') center / cover no-repeat;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;}
  .book-circle-green{position:absolute; right:-475px; top:0; width:427px; height:427px; border-radius:50%; background:var(--green); z-index:1;}
  .book-cover-img{width:210px; height:auto; display:block; transform:rotate(-6deg); filter:drop-shadow(0 20px 30px rgba(0,0,0,.25));}
  .framework-cta{display:flex; justify-content:flex-end; padding-right:44px; left:5%; position:relative; z-index:3;}
  .framework-cta .pill-dark{min-width:500px; justify-content:flex-start; padding:12px 36px; text-transform:none; font-size:16px; font-weight:500; letter-spacing:0;}

  /* trusted by */
  .trust-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
  .trust-brand-image{width:100%; display:flex; align-items:center; justify-content:center;}
  .trust-brand-image img{width:100%; max-width:520px; height:auto; object-fit:contain;}
  .trust-grid h2{font-size:40px; margin-bottom:18px; color:#333;font-weight:400;}
  .trust-grid p{color:var(--text-grey); font-size:13px; margin-bottom:10px;}

  /* why enterprises */
  .why-grid{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; position:relative;}
  .why-grid .photo.round{width:400px; height:400px;margin-top:-115px;}
  .why-grid h2{font-size:40px; margin-bottom:26px;font-weight: 500;}
  .bullet-list li{position:relative; padding:10px 0 10px 22px; font-size:16px; color:#444;}
  .bullet-list li::before{content:""; position:absolute; left:0; top:16px; width:6px; height:6px; background:var(--green); border-radius:50%;}
  .lime-half{position:absolute; left:0px; bottom:-440px; width:400px; height:400px; background:var(--lime2); border-radius:100% 100% 0 0; z-index:0;}

  /* Transformative Learning services */
  .dark2col{background:var(--dark); color:#fff; padding:80px 0 84px; position:relative; overflow:hidden;}
  .service-grid{display:grid; grid-template-columns:1fr 1fr; gap:58px; align-items:center;}
  .service-grid h2{font-size:50px; margin-bottom:12px; max-width:500px; line-height:1.02;font-weight:400;}
  .service-grid p{color:#d2d2d2; font-size:14px; margin-bottom:22px; max-width:470px;}
  .btn-stack{display:flex; flex-direction:column; gap:12px; margin-bottom:26px; max-width:360px;}
  .btn-stack .pill{
    width:100%; justify-content:flex-start; text-align:left; text-transform:none;
    font-weight:500; background:var(--green); color:#111; padding:12px 18px; font-size:12px;
    letter-spacing:.1px;
  }
  .service-photo{
    border-radius: 220px 0px 0px 220px;
    min-height: 490px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .dark2col .pill-lime,
  .dark2col .arrow-circle.on-lime{background:var(--lime2);}
  

  .green-block{--solution-art-size:400px; background:var(--green); padding:80px 0 80px; position:relative; overflow:hidden;}
  .green-grid{display:grid; grid-template-columns:1fr 1fr; gap:46px; align-items:center; position:relative;}
  .green-grid h2{font-size:32px; color:#111; margin-bottom:26px; max-width:19ch; line-height:1.04;}
  .green-grid .btn-stack{max-width:500px; gap:14px; margin-bottom:16px;}
  .green-grid .btn-stack .pill{background:var(--lime2); color:#172312; min-height:40px; padding:7px 34px; font-size:16px; font-weight:500;}
  .lime-halfcircle{width:var(--solution-art-size); height:var(--solution-art-size); border-radius:50%; background:var(--lime2); position:absolute; top:-285px;}
  .green-grid .photo.round{width:var(--solution-art-size); height:570px; aspect-ratio:auto; border-radius:240px 240px 0 0; margin-top:0; transform:translateY(140px);}
  .green-grid p{display:none;}
  .more-link{font-weight:500; font-size:14px; margin:8px 0 24px; display:block; color:#111;}
  .green-grid .pill-dark{text-transform:none; letter-spacing:0; font-weight:500; padding:14px 42px;}
  .green-grid > div:last-child{transform:translateY(-18px);}
  .green-block + .band-b{
    height:96px; margin-top:-96px; position:relative; z-index:1; background:var(--green-deep);
    clip-path:polygon(0 0, 100% 90%, 100% 100%, 0 100%);
  }

  /* why clients */
  .clients-grid{display:grid; grid-template-columns:.88fr 1.12fr; gap:32px; align-items:center; position:relative; margin-bottom:56px;}
  .clients-grid h2{font-size:50px; line-height:1.08; margin-bottom:20px; max-width:13ch; letter-spacing:-1%;}
  .dark-circle-bg{position:absolute; left:-460px; top:0; width:400px; height:400px; border-radius:50%; background:var(--dark); z-index:0;}
  .clients-grid .photo.round{width:400px; height:400px; position:relative; z-index:1;}
  .clients-grid > div:first-child > div:last-child{margin-top:46px;}
  .clients-grid p.desc{color:var(--text-grey); font-size:15px; margin-bottom:12px; max-width:300px;}
  .clients-grid > div:last-child{transform:translateX(80px);}
  .clients-grid .bullet-list{max-width:470px;}
  .clients-grid .bullet-list li::before{width:7px; height:7px; border-radius:0; background:var(--dark);font-size:15px;}
  .clients-grid .pill-green{text-transform:none; letter-spacing:0; font-weight:500; padding:14px 30px;}

  

  /* proven by experience */
  .proven-head{text-align:center; max-width:800px; margin:150px auto 64px;}
  .proven-head h2{font-size:48px; color:#666; letter-spacing:-5%;font-weight:400;}
  .proven-head h2 + h2{margin-top:2px;}
  .proven-head .underline{
    width:450px; height:20px; margin:20px auto 32px; background:var(--green);
    clip-path:polygon(0 100%, 100% 0, 100% 100%, 0 100%);
  }
  .proven-head .lead{font-weight:700; font-size:16px; margin-bottom:10px;}
  .proven-head .sub{color:var(--text-grey); font-size:16px; max-width:680px; margin-left:auto; margin-right:auto;}
  .proven-head .pill-green{text-transform:none; font-weight:500; letter-spacing:0; padding:14px 30px;}

  .stat-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:70px 60px; max-width:960px; margin:82px auto 54px;}
  .stat-card{max-width:270px;}
  .stat-card .photo{width:200px; height:200px; margin:0 auto; border-radius:50%; position:relative;}
  .stat-tag{
    position:relative; margin-top:-84px; margin-left:0; background:var(--dark); color:var(--green);
    clip-path:polygon(0 0,100% 100%,0 100%); width:270px; height:94px; display:flex; align-items:flex-end; padding:12px 0 10px 12px;
    font-size:24px; font-weight:500; line-height:1;
  }
  .stat-card:nth-child(2n) .stat-tag{background:var(--green); color:var(--dark);}
  .stat-card h4{font-size:16px; margin:16px 0 8px; font-weight:500;}
  .stat-card p{font-size:16px; color:var(--text-grey); line-height:1.42;}
  .stat-grid + .wrap{max-width:960px; padding:0 24px;}

  /* AI powered */
  .ai-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:46px; align-items:center; position:relative;}
  .ai-grid h2{color:var(--lime2); font-size:50px; line-height:1.02; max-width:22ch; margin-bottom:16px;letter-spacing:-5%;font-weight:400;}
  .ai-grid .tagline{color:#fff; font-weight:700; font-size:16px; margin-bottom:8px;}
  .ai-grid p.body{color:#d2d2d2; font-size:16px; margin-bottom:20px; max-width:470px;}
  .ai-grid h3{color:var(--green); font-size:32px; margin-bottom:14px;}
  .ai-powered-block{--ai-art-size:480px; padding:100px 0 100px;}
  .ai-powered-block .ai-photo{
    border-radius:0 0 50% 50%; width:var(--ai-art-size); height:550px; margin-left:auto;
    transform:translateY(-62px);
  }
  .ai-powered-block .green-dot{
    position:absolute; right:0; top:calc(100% - 38px); bottom:auto;
    width:var(--ai-art-size); height:var(--ai-art-size); border-radius:50%; background:var(--green); z-index:0;
  }
  .ai-powered-block .pill-lime{background:var(--lime2); color:#111; text-transform:none; font-weight:500; letter-spacing:0;}

  .ai-why-section{background:rgba(196, 196, 196, 0.4); padding:88px 0 136px; position:relative; overflow:hidden;}
  .ai-why-section::after{
    content:""; position:absolute; right:0; bottom:0; left:0; height:96px; background:var(--green-deep);
    clip-path:polygon(0 0, 100% 90%, 100% 100%, 0 100%);
  }
  .ai-why-grid{display:grid; grid-template-columns:.76fr 1.05fr 1fr; gap:46px; align-items:start; padding:0;}
  .ai-why-grid .photo.round{width:400px; height:400px; margin-left:auto;}
  .ai-why-section .ideal-for h2{font-size:36px !important; line-height:1.12; max-width:10ch !important; margin-bottom:12px !important; letter-spacing:-.035em;}
  .ai-why-section .ideal-for p{max-width:420px; margin-bottom:20px !important;}
  .ai-why-section .ideal-for .pill-dark{text-transform:none; letter-spacing:0; font-weight:500; padding:14px 30px;}
  .thin-list li{border-top:1px solid #ccc; padding:14px 0; font-size:13px; font-weight:500;}
  .ideal-for-li {margin-top:-150px;}
  .ideal-for-li h4{font-size:24px; margin:30px 0 16px; font-weight:500;}
  .two-col-bullets{display:grid; grid-template-columns:1fr 1fr; gap:6px 20px;}
  .ai-why-section .bullet-list li{font-size:16px; padding-top:8px; padding-bottom:8px;}
  .ai-why-section .bullet-list li::before{background:var(--green); width:7px; height:7px; top:16px;}
  .ai-why-grid > :nth-child(4) {
    grid-column: 2 / 4;
}

  /* Enterprise learning tech */
  .tech-intro{display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:center; position:relative; margin-bottom:54px;}
  .tech-intro h2{font-size:50px; margin-bottom:14px; font-weight:400;}
  .tech-intro h4{font-size:16px; font-weight:500; margin-bottom:10px;}
  .tech-intro p{font-size:16px; color:var(--text-grey); margin-bottom:18px; max-width:460px;}
  .photo.arch{border-radius:180px 0 0 180px; height:400px;left:-8%;}
  .green-dot-lg{position:absolute; left:-85%; top:0; width:400px; height:400px; border-radius:50%; background:var(--green); z-index:0;}
  .dark-dot-lg{position:absolute; left:-75%; top:0; width:400px; height:400px; border-radius:50%; background:var(--dark); z-index:0;}

  .product-row{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; padding:50px 0; border-top:1px solid #e2e2e2;}
  .product-row.rev > :first-child{order:2;}
  .product-row.rev > :last-child{order:1;}
  .product-row h3{
    display:table;
    position:relative;
    font-size:32px;
    margin:0 0 20px;
    padding-bottom:16px;
    font-weight:400;
  }
  .product-row h3::after{
    content:"";
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    height:20px;
    background:var(--green);
    clip-path:polygon(0 100%, 100% 0, 100% 100%, 0 100%);
    top: 80%;
  }
  .product-row .bar{display:none;}
  .product-row p.desc{font-size:16px; color:var(--text-grey); margin-bottom:16px; max-width:440px;}
  .product-row .photo.round{width:390px; height:390px; margin:0 auto;}

  /* platform benefits */
  .benefits-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; position:relative;}
  .benefits-grid h2{color:var(--lime2); font-size:36px; margin-bottom:22px;font-weight:400;}
  .benefits-list{max-width:430px;}
  .benefits-list li{
    border-top:0;
    border-bottom:2px solid var(--lime);
    padding:10px 0;
    font-size:16px;
    color:#ddd;
  }
  .benefits-grid p.note{color:#ccc; font-size:16px; margin:20px 0;max-width:500px;font-weight:600;}
  .green-round-tr{position:absolute; right:20%; top:-30px; width:180px; height:180px; border-radius:50%; background:var(--green); z-index:0;}
  .benefits-grid .photo.round{width:300px; height:300px; margin-top:120px; position:relative; z-index:1;}

  /* Platform Benefits artwork and angled entry border. */
  .platform-benefits{padding:142px 0 0; min-height:720px;}
  .platform-benefits::before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:96px;
    background:var(--lime2);
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0 5%);
    z-index:2;
  }
  .platform-benefits .benefits-grid{position:relative; z-index:1; min-height:578px;}
  .platform-benefits .green-round-tr{
    right:0%;
    top:-300px;
    width:490px;
    height:420px;
    z-index:0;
  }
  .platform-benefits .photo.round{
    width:490px;
    height:500px;
    margin:152px 0 0 auto;
    border-radius:240px 240px 0 0;
  }
  .green-underline{
    width:min(100%, 675px); height:26px; margin:24px auto 24px;
    background:linear-gradient(90deg, var(--green) 0%, var(--green-deep) 78%);
    clip-path:polygon(0 50%, 100% 0, 100% 100%, 0 50%);
  }
  /* workforce augmentation */
  .lime-block{background:var(--green); padding:132px 0 116px; position:relative;}
  .lime-block .center-head{max-width:780px; margin:0 auto 112px;}
  .lime-block .center-head h2{color:#173011; font-size:clamp(46px,5.1vw,64px); line-height:89%; max-width:10ch; margin:0 auto; letter-spacing:-1%;}
  .lime-block .underline{
    width:min(100%, 400px); height:26px; margin:24px auto 24px;
    background:linear-gradient(90deg, var(--lime2) 0%, var(--lime2) 78%);
    clip-path:polygon(0 50%, 100% 0, 100% 100%, 0 50%);
  }
  .lime-block .center-head p{color:#1c3524; font-size:16px; line-height:1.36; max-width:700px; margin-left:auto; margin-right:auto;}
  .lime-block .center-head .lead{color:#173011; font-size:16px; font-weight:600; margin-bottom:12px;}
  .lime-block .center-head .btn-row{justify-content:center; gap:10px; margin-top:20px !important;}
  .lime-block .center-head .pill-dark{
    width:260px; min-height:46px; padding:0;
    background:var(--lime2) !important; color:#173011 !important;
    text-transform:none; letter-spacing:0; font-size:16px; font-weight:500;
  }
  .lime-block .center-head .arrow-circle.on-dark{width:46px; height:46px; background:var(--lime2); color:#173011;}
  .talent-head{text-align:center; font-size:32px; font-weight:500; margin:0 0 40px; color:#173011;}
  .talent-grid{display:grid; grid-template-columns:1fr 1fr; gap:48px 140px; max-width:1100px; margin:0 auto;}
  .talent-item .pill-white{
    background:#fff; padding:12px 34px; border-radius:44px; font-weight:500; font-size:16px; margin-bottom:12px; display:inline-block; width:100%;
  }
  .talent-item.alt .pill-white{background:var(--lime2);}
  .talent-item p{font-size:16px; line-height:1.3; color:#1c3524; margin-top:4px;}
  .workforce-exit{height:96px; margin-top:-96px; position:relative; z-index:1;}

  /* industry expertise */
  table{width:100%; border-collapse:collapse; font-size:13px;}
  table th{background:var(--dark); color:#fff; padding:18px 20px; text-align:left; font-weight:600; font-size:15px;}
  table td{padding:18px 20px; border-bottom:1px solid #eee; font-size:15px;}
  .industry-photo{display:flex; align-items:flex-start;}
  .industry-photo .photo.round{width:300px; height:300px;}

  /* Industry Expertise */
  .industry-section{padding:112px 0 104px; position:relative; overflow:hidden;}
  .industry-layout{display:grid; grid-template-columns:1fr 1fr; gap:96px; align-items:start;}
  .industry-left{position:relative; min-height:560px;}
  .industry-left h2{font-size:50px; line-height:1; letter-spacing:-5%; margin:0 0 26px; max-width:none;}
  .industry-left .pill-green{min-width:260px; min-height:46px; padding:0 28px; text-transform:none; letter-spacing:0; font-size:14px; font-weight:500;}
  .industry-left .arrow-circle{width:46px; height:46px;}
  .industry-circle{
    position:absolute; left:-85%; top:224px; width:390px; height:390px;
    border-radius:50%; background:var(--dark); z-index:0;
  }
  .industry-left .industry-photo{position:relative; z-index:1; margin:100px 0 0 40px;}
  .industry-left .industry-photo .photo.round{width:390px; height:390px;}
  .industry-right h4{font-size:16px; font-weight:600; margin:2px 0 12px;}
  .industry-right p{font-size:16px; line-height:1.34; color:#222; max-width:540px; margin:0 0 100px;}
  .industry-table-head{display:flex; justify-content:space-between; gap:100px; margin-bottom:44px;}
  .industry-table-head span{
    width:220px; min-height:46px; display:inline-flex; align-items:center; justify-content:center;
    border-radius:30px; background:var(--dark); color:#fff; font-size:16px; font-weight:500;
  }
  .industry-table-head span:last-child{background:var(--green); color:#111;}
  .industry-right table{width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0; font-size:16px;}
  .industry-right td:first-child{width:70%;}
  .industry-right td:last-child{width:30%;}
  .industry-right td{padding:8px 32px; border-bottom:1px solid #d3dfd4; font-size:16px; line-height:1.25;}
  .industry-right td:last-child{text-align:left !important; padding-left:38px;}
  .industry-right tr:last-child td{border-bottom:0; font-weight:600 !important; padding-top:10px;}

  /* training areas */
  .training-grid{display:grid; grid-template-columns:.72fr 1.28fr; gap:28px;}
  .training-cols{display:grid; grid-template-columns:1fr 1fr; gap:0 34px;}
  .training-grid h2{color:#fff; font-size:32px; margin-bottom:22px; max-width:10ch; line-height:1.05;}
  .training-cols h5{color:var(--lime2); font-size:13px; margin:14px 0 6px; font-weight:500;}
  .training-cols p{font-size:12px; color:#cfcfcf; margin-bottom:10px; line-height:1.35;}

  /* Training Areas */
  .training-section{padding:170px 0 190px; min-height:800px;}
  .training-section .training-grid{grid-template-columns:.62fr 1.38fr; gap:64px;}
  .training-section .training-grid h2{font-size:clamp(46px,3.7vw,50px); max-width:9ch; line-height:1.02; margin-bottom:30px; letter-spacing:-5%;}
  .training-section .pill-lime{
    width:260px; min-height:48px; padding:0; background:var(--lime2); color:#111;
    text-transform:none; letter-spacing:0; font-size:16px; font-weight:500;
  }
  .training-section .arrow-circle.on-lime{width:48px; height:48px; background:var(--lime2); color:#111; font-size:18px;}
  .training-section .training-cols{gap:0 120px;}
  .training-section .training-cols h5{font-size:18px; line-height:1.18; margin:0 0 7px; color:var(--lime2); font-weight:500;}
  .training-section .training-cols p{font-size:16px; line-height:1.38; color:#f2f2f2; margin:0 0 32px;}
  .training-exit{
    height:96px; margin-top:-96px; position:relative; z-index:1;
    clip-path:polygon(0 0, 100% 88%, 100% 100%, 0 100%);
  }

  /* knowledge centre */
  .kc-head{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; margin-bottom:38px;}
  .kc-head h2{font-size:36px; line-height:1.02; letter-spacing:-.035em;}
  .kc-head .tag{font-size:12px; color:var(--text-grey); margin-top:6px;}
  .kc-head p{font-size:13px; color:var(--text-grey); margin-bottom:16px; max-width:470px; line-height:1.45;}
  .kc-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:34px;}
  .kc-card{background:var(--green); border-radius:6px; display:flex; height:164px; overflow:hidden;}
  .kc-card .txt{padding:18px; width:57%;}
  .kc-card .txt h4{font-size:16px; margin-bottom:8px; color:#173011; font-weight:500; line-height:1.12; letter-spacing:-.02em;}
  .kc-card .txt p{font-size:12px; color:#204014; line-height:1.32;}
  .kc-card .photo{width:43%; border-radius:0;}
  .center-btn2{display:flex; justify-content:center; margin-top:6px;}

  /* Knowledge Centre */
  .knowledge-section{padding:64px 0 96px;}
  .knowledge-section .kc-head{grid-template-columns:600px 1fr; gap:92px; align-items:start; margin-bottom:64px;}
  .knowledge-section .kc-head h2{font-size:clamp(40px,3.5vw,48px); line-height:.96; color:#111; letter-spacing:-5%; white-space:nowrap;}
  
  .knowledge-section .kc-head .tag{font-size:16px; color:#111; font-weight:600; margin-top:12px;}
  .knowledge-section .kc-head p{font-size:16px; line-height:1.3; color:#111; max-width:460px; margin:0 0 20px;}
  .knowledge-section .pill-green{
    width:220px; min-height:48px; text-transform:none;
    font-size:16px; font-weight:500;
  }
  .knowledge-section .arrow-circle.on-green{width:48px; height:48px; font-size:22px;}
  .knowledge-section .kc-grid{gap:36px 40px; margin-bottom:46px;}
  .knowledge-section .kc-card{height:190px; border-radius:10px; position:relative; display:block; overflow:hidden;}
  .knowledge-section .kc-card::before{
    content:""; position:absolute; z-index:2; inset:0 auto 0 62%; width:12.5%;
    background:var(--dark); clip-path:polygon(100% 0, 100% 0, 18% 100%, 0 100%);
  }
  .knowledge-section .kc-card .txt{
    position:relative; z-index:3; width:76%; height:100%; padding:42px 64px 42px 44px; background:var(--green);
    clip-path:polygon(0 0, 98% 0, 82% 100%, 0 100%);
  }
  .knowledge-section .kc-card .txt h4{font-size:24px; line-height:1.08; margin:0 0 14px; color:#386700; font-weight:400; letter-spacing:0%;}
  .knowledge-section .kc-card .txt p{font-size:12px; line-height:1.35; color:#131511; font-weight:400;}
  .knowledge-section .kc-card .photo{
    position:absolute; z-index:1; inset:0 0 0 auto; width:39%; border-radius:0;
    clip-path:polygon(24% 0, 100% 0, 100% 100%, 0 100%);
  }
  .knowledge-section .center-btn2{margin-top:0;}

  .products-main .knowledge-section .kc-head h2{
    position:relative;
    width:fit-content;
    margin:0 auto 18px;
    padding-bottom:30px;
    font-size:48px;
    line-height:1.05;
    letter-spacing:-.04em;
    color:#666;
  }
  .products-main .knowledge-section .kc-head h2::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;
    width:100%;
    height:23px;
    background:var(--green);
    clip-path:polygon(0 100%, 100% 0, 100% 100%, 0 100%);
    transform:translateX(-50%);
  }
  /* FAQ */
  .faq-entry-band{
    height:92px; margin:60px 0 0; background:var(--green); position:relative; clip-path:none;
  }
  .faq-entry-band::before{
    content:""; position:absolute; inset:0; background:var(--green-deep);
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0 0);
  }
  .faq-block{background:var(--green); padding:52px 0 104px; position:relative; overflow:hidden;}
  .faq-eyebrow{display:block; color:#1F1E1E; font-size:16px; font-weight:400; margin-bottom:22px;letter-spacing:-1%;}
  .faq-block h2{font-size:clamp(30px,3vw,48px); color:#1B3120; max-width:780px; margin:10px 0 46px; line-height:1.06; letter-spacing:-5%; font-weight:400;}
  .faq-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px 22px;}
  .faq-item{
    --faq-surface:#fff;
    color:#233d12;
  }
  .faq-item.alt{--faq-surface:var(--lime2);}
  .faq-item summary{
    min-height:62px; padding:0; background:transparent;
    display:grid; grid-template-columns:1fr 62px; align-items:center; gap:8px; cursor:pointer;
    list-style:none; font-size:14px; font-weight:400; line-height:1.25;
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-label{min-height:45px; padding:14px 28px; display:flex; align-items:center; background:var(--faq-surface); border-radius:40px;}
  .faq-icon{width:45px; height:45px; margin:0; border-radius:50%; background:var(--faq-surface); position:relative;}
  .faq-icon::before{
    content:""; position:absolute; top:50%; left:50%; width:14px; height:14px;
    border-right:2px solid currentColor; border-bottom:2px solid currentColor;
    transform:translate(-62%, -50%) rotate(-45deg);
  }
  .faq-item[open] .faq-icon::before{transform:translate(-50%, -64%) rotate(45deg);}
  .faq-answer{background:var(--faq-surface); margin-top:8px; padding:16px 28px 20px; border-radius:24px; font-size:13px; line-height:1.45;}

  /* CTA + footer */
  .cta-block{
    background-color:var(--dark); color:#fff; padding:92px 0 0; position:relative; overflow:hidden; min-height:680px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M0 4L6 0L12 4L18 0L24 4M0 11L6 7L12 11L18 7L24 11' fill='none' stroke='%233c673d' stroke-opacity='.52' stroke-width='1'/%3E%3C/svg%3E");
    background-size:24px 14px;
  }
  .cta-grid{display:block; width:100%; max-width:none; margin:0; padding:0 clamp(24px, 11.5vw, 210px); min-height:570px; position:relative;}
  .cta-grid > div:first-child{position:relative; z-index:3; width:min(62%, 970px);}
  .cta-grid h2{color:var(--lime2); font-size:clamp(38px,3vw,50px); line-height:89%; margin-bottom:22px; max-width:none; letter-spacing:-5%;font-weight:400;}
  .cta-grid p{color:#f0f0f0; font-size:16px; line-height:149%; margin-bottom:50px; max-width:550px; letter-spacing:-1%;font-weight:300 !important;}
  .cta-photo{
    position:absolute; z-index:1; top:-115px; right:0; bottom:-18px; left:auto;
    width:65%; margin:0;
    clip-path:polygon(100% 0, 100% 100%, 0 100%);
    background-position:center; background-repeat:no-repeat; background-size:cover;
  }
  .cta-diag{
    position:absolute; right:32px; top:0; bottom:0; width:69%;
    background:var(--green); clip-path:polygon(100% 0,100% 0,18% 100%,0 100%); z-index:2;
  }

  footer{background:#07160A; color:#ccc; padding:82px 0 62px; margin-top:0;}
  .footer-grid{display:grid; grid-template-columns:1.25fr 1fr 1fr 1fr; gap:34px; align-items:start;}
  .footer-grid h5{color:var(--green); font-size:14px; letter-spacing:1px; margin-bottom:14px; text-transform:uppercase; font-weight:500;}
  .footer-grid li{font-size:14px; padding:5px 0; color:#bbb; line-height:1.35;}
  .footer-grid li a{color:#fff; text-decoration:none;}
  .footer-grid li a:hover, .footer-grid li a:focus-visible{color:var(--green); text-decoration:none;}
  .footer-email{color:var(--green) !important; text-decoration:underline !important;}
  .footer-logo-link{display:inline-block;}
  .footer-grid p{font-size:12px; color:#fff; margin-bottom:14px; line-height:1.5;}
  .copyright{font-size:11px; color:#888; margin-top:16px;}

  

  

  

  /* Tablet portrait and compact tablet landscape */
  

  /* Phone and phablet safeguards. These rules never affect tablet or desktop layouts. */
  

  /* Product-only geometry. Shared controls and containers stay on Home classes. */
  .tech-panel-section{background-color:var(--dark); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M0 4L6 0L12 4L18 0L24 4M0 11L6 7L12 11L18 7L24 11' fill='none' stroke='%233c673d' stroke-opacity='.52' stroke-width='1'/%3E%3C/svg%3E"); color:#fff;}
  #cases{background-color:var(--dark); background-image:none; color:#fff;}
  .lime-panel{position:relative; overflow:hidden; background:var(--green); color:#163014;}
  .lime-panel::before{content:""; position:absolute; inset:0 0 auto; height:60px; background:var(--green-deep); clip-path:polygon(0 0,100% 0,100% 100%,0 4%);}
  .lime-panel > .wrap{position:relative; z-index:1;}
  .product-summary{padding:82px 0 46px; text-align:center;}
  .product-summary h2{max-width:12ch; margin:auto; font-size:clamp(28px,3vw,44px);}
  .impact{min-height:730px;padding:56px 0 110px;text-align:center;position:relative;background:#fff;color:#111;}
  .impact h2{
    position:relative;
    width:fit-content;
    margin:0 auto 18px;
    padding-bottom:30px;
    font-size:48px;
    line-height:1.05;
    letter-spacing:-.04em;
    color:#666;
  }
  .impact h2::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;
    width:100%;
    height:16px;
    background:var(--green);
    clip-path:polygon(0 100%, 100% 0, 100% 100%, 0 100%);
    transform:translateX(-50%);
  }
  .impact .intro-rule{width:min(100%,450px);height:22px;margin:18px auto 18px;}
  .impact p{max-width:820px;margin:0 auto;color:#666;font-size:18px;line-height:1.4;}
  .impact .btn-row{justify-content:center;}
  .impact p + .btn-row{margin-top:34px;}
  .impact .btn-row + .btn-row{margin-top:24px;}
  .impact .pill{min-height:52px;padding:12px 28px;text-transform:none;letter-spacing:0;font-size:18px;font-weight:500;}
  .impact .pill-green{width:420px;}
  .impact .pill-dark{width:255px;color:var(--green);}
  .impact .arrow-circle{width:52px;height:52px;}
  .impact::after{content:"";position:absolute;z-index:0;inset:auto 0 0;height:2px;background:var(--green);}
  .impact > .wrap{position:relative; z-index:1;}
  

  

  

  /* ===== PRODUCT PAGES =====
     Scoped extensions reuse the approved Home palette, typography, chevrons,
     pills, and diagonal transitions without changing Home itself. */
  .product-summary,
  .lime-panel,
  .tech-panel-section,
  #cases{overflow-x:hidden;}
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .arch-image-left {border-radius: 0 260px 260px 0 !important;
    width: 100% !important;
    margin-left: -100px !important;
    height: 400px !important;}
  .arch-image{width:min(100%,500px);aspect-ratio:.95;margin:auto;border-radius:260px 260px 0 0;}
  .side-orb{position:absolute;width:300px;aspect-ratio:1;border-radius:50%;background:var(--green);}.side-orb.left{left:-210px;top:45%;}.side-orb.right{right:-210px;top:45%;}
  
  .product-card{display:grid;align-items:center;border-bottom:1px solid #d6d6d6;}.product-card:nth-child(even)>:first-child{order:2;}.product-card:nth-child(even)>:last-child{order:1;}
  .product-card h3{position:relative;display:inline-block;padding-bottom:20px;margin-bottom:20px;}.product-card h3::after{content:"";position:absolute;right:0;bottom:0;left:0;height:14px;background:var(--green);clip-path:polygon(0 100%,100% 0,100% 100%,0 100%);}
  .link-list.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 42px;}
  .lime-bg{background-color:var(--green);color:#163014;}
  .custom-section{position:relative;overflow:hidden;padding:118px 0 142px;}.custom-section .photo.round{width:360px;margin-top:28px;}
  .feature-section{padding:132px 0 126px;}.feature-section .feature-grid,.tech-panel-section .feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 100px;max-width:1050px;margin:58px auto 0;}.feature-section .feature-card:nth-child(4n + 2) h4,.feature-section .feature-card:nth-child(4n + 3) h4{background:var(--lime2);}.feature-section .feature-card p,.tech-panel-section .feature-card p{padding:14px 28px 0;font-size:16px;}
  
  .case-study{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding:72px 32px;border-bottom:1px solid rgba(141,210,59,.18);}.case-study:nth-of-type(even)>:first-child{order:2;}.case-study:nth-of-type(even)>:last-child{order:1;}.case-study h3{color:var(--lime2);margin-bottom:18px;}.case-study .photo.round{width:380px;}.case-study .arch-image{width:470px;aspect-ratio:1.1;border-radius:260px 0 0 260px;}.case-study p{max-width:470px;}.case-study.white h3{color:#111;}.case-study.white > :first-child,.case-study.white > :last-child{order:initial;}
  
  .custom-section{isolation:isolate;background-image:radial-gradient(circle at 18% 100%,var(--lime2) 0 125px,transparent 126px);}
  .custom-section::after,.feature-section::after{content:"";position:absolute;z-index:0;inset:auto 0 0;height:70px;clip-path:polygon(0 72%,100% 0,100% 100%,0 100%);}
  .custom-section::after{background:var(--dark);}
  .feature-section::after{background:var(--lime2);}
  .custom-section > .wrap,.feature-section > .wrap{z-index:1;}
  .product-cards{position:relative;isolation:isolate;}
  .product-card{position:relative;z-index:1;}
  .product-card:first-child::before,.product-card:nth-child(2)::after{content:"";position:absolute;z-index:-1;width:400px;height:400px;border-radius:50%;background:var(--green);}
  .product-card:first-child::before{left:-440px;top:35%;}
  .product-card:nth-child(2)::after{right:-330px;top:35%;}
  #cases{
    background-image:
      radial-gradient(circle at -60px 20.5%, var(--lime2) 0 200px, transparent 201px),
      radial-gradient(circle at -60px 84%, var(--lime2) 0 200px, transparent 201px);
    padding:120px 0 0;
    isolation:isolate;
  }
  #cases::before{
    content:"";
    position:absolute;
    z-index:0;
    inset:0 0 auto;
    height:64px;
    background:var(--green-deep);
    clip-path:polygon(0 0,100% 0,100% 100%,0 0);
  }
  #cases > .wrap{position:relative;z-index:1;}
  #cases .case-study{
    position:relative;
    grid-template-columns:minmax(0,560px) minmax(0,1fr);
    gap:110px;
    min-height:628px;
    padding:72px 0;
    border-bottom:0;
  }
  #cases .case-study::after{
    content:"";
    position:absolute;
    right:50%;
    bottom:0;
    width:min(74%,850px);
    height:1px;
    background:rgba(141,210,59,.32);
    transform:translateX(50%);
  }
  #cases .case-study:nth-child(2){grid-template-columns:minmax(0,500px) minmax(0,450px);justify-content:space-between;}
  #cases .case-study:nth-child(2) > :last-child{padding-left:68px;}
  #cases .case-study h3{font-size:48px;line-height:1.08;font-weight:400;letter-spacing:-.04em;margin-bottom:14px;}
  #cases .case-study:nth-child(2) h3{font-size:43px;}
  #cases .case-study .lede{font-size:16px;line-height:1.25;margin:0 0 10px;font-weight:700;}
  #cases .case-study p:not(.lede){max-width:460px;font-size:15px;line-height:1.22;}
  #cases .case-study .btn-row{margin-top:24px;}
  #cases .case-study .pill{width:255px;min-height:48px;padding:10px 20px;font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;}
  #cases .case-study .arrow-circle{width:48px;height:48px;}
  #cases .case-study .arch-image{width:560px;aspect-ratio:1.22;border-radius:280px 0 0 280px;margin:0;background-position:center;}
  #cases .case-study .photo.round{width:450px;height:450px;margin:0;background-position:center;}
  #cases .case-study:nth-child(2) .photo.round{justify-self:end;}

  .case-showcase{
    position:relative;
    overflow:hidden;
    padding:0;
    background-color:#fff;
  }
  .case-showcase .case-study{
    position:relative;
    min-height:760px;
    grid-template-columns:minmax(0,470px) minmax(0,450px);
    gap:157px;
    padding:80px 0 80px 64px;
    border-bottom:0;
  }
  .case-showcase .case-study:nth-child(2){
    min-height:560px;
    grid-template-columns:minmax(0,560px) minmax(0,1fr);
    gap:90px;
    align-items:start;
    padding:68px 0 140px;
  }
  .case-showcase .case-study:first-child > :first-child{transform:translateY(18px);}
  .case-showcase .case-study h3{font-size:50px;line-height:1.05;letter-spacing:-.04em;margin:0 0 16px;}
  .case-showcase .case-study:nth-child(2) > :last-child{padding-top:88px;}
  .case-showcase .case-study:nth-child(2) h3{font-size:48px;margin-bottom:0;}
  .case-showcase .case-study .lede{font-size:16px;line-height:1.25;margin:0 0 14px;font-weight:600;}
  .case-showcase .case-study p:not(.lede){max-width:480px;font-size:18px;line-height:1.22;margin-top:20px;}
  .case-showcase .case-study:nth-child(2) p{max-width:520px;font-size:16px;}
  .case-showcase .case-study .btn-row{margin-top:28px;}
  .case-showcase .case-study .btn-row + .btn-row{margin-top:12px;}
  .case-showcase .case-study .pill{width:255px;min-height:48px;padding:10px 20px;font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;}
  .case-showcase .case-study:nth-child(2) .pill-dark{width:310px;}
  .case-showcase .case-study:nth-child(2) .pill-green{width:280px;}
  .case-showcase .case-study .arrow-circle{width:48px;height:48px;}
  .case-showcase .case-study .photo.round{width:400px;height:400px;margin:0;}
  .case-showcase .case-study .arch-image{width:100%;aspect-ratio:1.22;border-radius:280px 0 0 280px;margin:0;background-position:center;height:400px;}
  .case-showcase .case-study .intro-rule{width:430px;height:23px;margin:12px 0 24px;}
  .right-dot {left:90%;}
  
  
  
  
  
  
  .hero-content .secondary-action{margin-top:10px;}
  .hero-content .pill-white{background:#fff;color:#151515;}
  .hero-content .on-white{background:#fff;color:#151515;}
  .tech-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:52px 90px;align-items:start;}
  .tech-panel__copy{grid-column:1;grid-row:1;max-width:520px;}
  .tech-panel__copy h2{margin-bottom:24px;font-size:46px;line-height:1.01;letter-spacing:-.05em;}
  .tech-panel__copy p{max-width:520px;}
  .tech-benefits{grid-column:2;grid-row:1 / span 2;}
  .tech-benefits li{padding:0 0 16px;margin-bottom:18px;border-bottom:1px solid var(--green);}
  .tech-benefits strong{display:block;color:var(--lime2);font-size:16px;line-height:1.2;margin-bottom:4px;}
  .tech-benefits span{display:block;font-size:16px;line-height:1.3;}
  .tech-panel__image{grid-column:1;grid-row:2;width:min(100%,500px);aspect-ratio:1.2;border-radius:260px 0 0 260px;}
  .tech-panel-section{padding-top:64px; padding-bottom:70px;}
  .tech-panel-section{background-image:none;}
  .tech-panel-section .tech-panel__image{aspect-ratio:1.6; background-position:center;}
  
  .product-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:46px 90px;padding:88px 0;}
  .product-card__intro{grid-column:1;grid-row:1;}
  .product-card__list{grid-column:2;grid-row:1;margin:0;}
  .product-card__image{grid-column:1;grid-row:2;align-self:start;}
  .product-card__details{grid-column:2;grid-row:2;align-self:start;}
  
  .product-card__details .pill{font-size:14px;padding:12px 28px;text-transform:none;}
  .product-card:nth-child(2) .product-card__list{grid-column:1;}
  .product-card:nth-child(2) .product-card__intro{grid-column:2;}
  .product-card:nth-child(2) .product-card__details{grid-column:1;}
  .product-card:nth-child(2) .product-card__image{grid-column:2;}
  
  
  

  /* Product-page typography follows the approved Home type system. */
  .product-card:first-child .product-card__image{background-image:url('../assets/images/cap6.jpg') !important;}
  .product-card:nth-child(2) .product-card__image{background-image:url('../assets/images/hrms.jpg') !important;}
  .custom-section .photo.round{background-image:url('../assets/images/cap6.jpg') !important;}
  
  
  

  /* Keep repeated product sections on the approved Home type and layout system. */
  .center-copy{
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
  }
  .center-copy .eyebrow-line{margin-left:auto; margin-right:auto;}
  .lede{
    font-size:16px;
    line-height:1.35;
    font-weight:600;
    margin:18px 0 12px;
  }
  .line-list{margin:22px 0; max-width:440px;}
  .line-list li{
    padding:9px 0;
    border-bottom:1px solid currentColor;
    font-size:16px;
    line-height:1.2;
  }
  .knowledge-section .stat-card .line-list{margin-top:26px;}
  .knowledge-section .stat-card .line-list li{
    color:#315222;
    border-color:#c8c8c8;
    font-weight:500;
  }
  .page-split,
  .support-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:76px;
    align-items:center;
  }
  

  /* Final desktop alignment for the product technology reference section. */
  

  /* Product ecosystem section: desktop composition from the supplied Figma reference. */
  

  /* Product page responsive hardening. Kept after desktop refinements so Home is untouched. */
  .products-main{overflow-x:clip;}
  .products-main > *,
  .products-main .wrap,
  .products-main .btn-row{min-width:0;}
  .products-main .pill{max-width:100%;}

/* ===== RESPONSIVE ===== */
/* Desktop */
@media (min-width:901px){
.dark2col{padding:118px 0 124px;}
    .dark2col .service-photo{
      width:calc(100% + max(0px, calc(50vw - 576px)));
      justify-self:start;
      margin-left: 30%;
      margin-top: 10%;
    }

.clients-grid > div:last-child{
      width:min(100%, 470px);
      justify-self:end;
      transform:translateX(clamp(36px, 5vw, 80px));
    }

.tech-panel-section > .wrap{max-width:calc(100% - 180px); padding-left:0; padding-right:0;}
    .tech-panel-section .tech-panel{grid-template-columns:minmax(0,.82fr) minmax(0,1fr);}
    .tech-panel-section .tech-panel__copy h2{font-size:40px;}
    .tech-panel-section .tech-panel__image{width:min(100%,400px); margin-left:0;margin-top:40px;}

.tech-panel-section{background-image:none;}
    .tech-panel-section > .wrap{max-width:calc(100% - 180px);}
    .tech-panel-section .tech-panel{grid-template-columns:minmax(0,1.13fr) minmax(0,.67fr); transform:translateX(120px); gap:20px 90px;}
    .tech-panel-section .tech-panel__copy h2{font-size:56px;}
    .tech-panel-section .tech-panel__copy{max-width:760px;}
    .tech-panel-section .tech-panel__image{width:min(100%,560px);}
    .tech-panel-section .tech-benefits{width:90%; justify-self:end; transform:translateX(-160px);}
    .tech-panel-section .side-orb{width:400px; background:var(--lime2); left:-250px; top:44%;}

.product-summary h2{max-width:none;}
    .product-cards{transform:translateX(55px);}
    .product-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:20px 112px; padding:100px 0;}
    .product-card h3{padding-bottom:0; margin-bottom:10px; font-size:48px; line-height:1; letter-spacing:-.05em;}
    .product-card h3::after{display:none;}
    .product-card__image{width:400px; transform:translateY(-170px);}
    .product-card__details .btn-row + .btn-row{margin-top:16px;}
    .product-card__details .pill{width:240px;}
    .product-card__list{max-width:440px; justify-self:normal;}

    /* The HRMS panel reverses the shared product-card composition. */
    .product-card:nth-child(2){grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:36px 92px;padding-top:118px;}
    .product-card:nth-child(2) .product-card__list{max-width:330px;}
    .product-card:nth-child(2) .product-card__intro{max-width:690px;}
    .product-card:nth-child(2) h3{font-size:64px;}
    .product-card:nth-child(2) .product-card__image{width:min(95%,700px);aspect-ratio:1.5;margin:0;transform:none;border-radius:0 340px 340px 0;background-position:center;margin-top:-100px;}
    .product-card:nth-child(2) .product-card__details{max-width:400px;margin-top:85px;}
    .product-card:nth-child(2)::after{right:-390px;top:41%;width:400px;height:400px;}

    .custom-section{min-height:950px;padding:105px 0 165px;background-position:18% 100%;background-size:auto;}
    .custom-section > .page-split{max-width:1320px;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:120px;align-items:start;}
    .custom-section h2{font-size:64px;line-height:1.08;letter-spacing:-.05em;margin-bottom:18px;}
    .custom-section .lede{font-size:20px;line-height:1.25;margin:0 0 18px;}
    .custom-section .page-split > div:first-child > p:last-of-type{max-width:570px;font-size:20px;line-height:1.32;}
    .custom-section .photo.round{width:420px;margin:46px 0 0;}
    .custom-section .page-split > div:last-child{padding-top:8px;}
    .custom-section .line-list{max-width:600px;margin:0;}
    .custom-section .line-list li{padding:13px 6px;font-size:21px;line-height:1.2;border-color:rgba(22,48,20,.42);}
    .custom-section .page-split > div:last-child > p{max-width:600px;margin-top:170px;font-size:20px;line-height:1.3;}
    .custom-section .btn-row{margin-top:30px;}
    .custom-section .pill{width:390px;min-height:60px;padding:12px 30px;font-size:18px;text-transform:none;letter-spacing:0;font-weight:500;}
    .custom-section .arrow-circle{width:60px;height:60px;}
    .custom-section::after{height:110px;clip-path:polygon(0 90%,100% 0,100% 100%,0 100%);}

    /* Preserve each specialized section's approved desktop spacing. */
    .dark2col.ai-powered-block{padding:100px 0;}
    .dark2col.platform-benefits{padding:142px 0 0;}
    .dark2col.training-section{padding:170px 0 190px;}
    .dark2col.tech-panel-section{padding:64px 0 70px;}
}

/* Tablet and below */
@media (max-width:1024px){
.product-card,.case-study{gap:42px;}.case-study{padding-left:0;padding-right:0;}.case-study .photo.round{width:min(100%,320px);}.case-study .arch-image{width:min(100%,390px);}.tech-panel{gap:42px;}
}

/* Compact desktop and tablet landscape */
@media (min-width:901px) and (max-width:1024px){
header[data-page="products"] .hero-content{padding:104px 32px 108px;}
    header[data-page="products"] .hero-content h1{font-size:52px;max-width:780px;}

    .products-main .tech-panel-section > .wrap{max-width:1200px;padding-left:40px;padding-right:40px;}
    .products-main .tech-panel-section .tech-panel{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:38px 48px;transform:none;}
    .products-main .tech-panel-section .tech-panel__copy{max-width:100%;}
    .products-main .tech-panel-section .tech-panel__copy h2{font-size:44px;}
    .products-main .tech-panel-section .tech-benefits{width:100%;justify-self:stretch;transform:none;}
    .products-main .tech-panel-section .tech-panel__image{width:min(100%,420px);margin:16px 0 0;}

    .products-main .product-cards{transform:none;}
    .products-main .product-card,
    .products-main .product-card:nth-child(2){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px 52px;padding:80px 0;}
    .products-main .product-card h3,
    .products-main .product-card:nth-child(2) h3{font-size:44px;}
    .products-main .product-card__image{width:min(100%,360px);transform:none;}
    .products-main .product-card:nth-child(2) .product-card__image{width:100%;max-width:460px;aspect-ratio:1.25;margin:0;transform:none;border-radius:230px 0 0 230px;}
    .products-main .product-card:nth-child(2) .product-card__details{max-width:none;margin-top:0;}
    .products-main .product-card:nth-child(2)::after{right:-300px;}

    .products-main .custom-section{min-height:0;padding:92px 0 140px;}
    .products-main .custom-section > .page-split{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:54px;}
    .products-main .custom-section h2{font-size:50px;}
    .products-main .custom-section .lede,
    .products-main .custom-section .page-split > div:first-child > p:last-of-type,
    .products-main .custom-section .line-list li,
    .products-main .custom-section .page-split > div:last-child > p{font-size:16px;}
    .products-main .custom-section .photo.round{width:min(100%,350px);margin-top:38px;}
    .products-main .custom-section .page-split > div:last-child > p{margin-top:70px;}
    .products-main .custom-section .pill{width:320px;min-height:52px;font-size:15px;}
    .products-main .custom-section .arrow-circle{width:52px;height:52px;}

    .dark2col.ai-powered-block{padding:88px 0;}
    .dark2col.platform-benefits{padding:120px 0 0;}
    .dark2col.training-section{padding:96px 0 86px;}
}

/* Tablet portrait and below */
@media (max-width:900px){
.intro-grid, .framework-grid, .trust-grid, .why-grid, .service-grid, .green-grid,
    .clients-grid, .ai-grid, .ai-why-grid, .tech-intro, .product-row, .benefits-grid,
    .talent-grid, .training-cols, .kc-head, .kc-grid, .cta-grid,
    .footer-grid, .stat-grid, .faq-grid, .training-grid{
      grid-template-columns:1fr !important;
    }
    nav{display:flex; justify-content:space-between; position:relative;}
    nav .btn-row{margin-left:auto;}
    .nav-links{display:none;}
    .nav-links.is-open{
      display:flex; flex-direction:column; align-items:stretch; gap:0;
      position:absolute; z-index:20; top:calc(100% + 6px); left:24px; right:24px;
      padding:12px; border-radius:16px; background:rgba(21,42,28,.98);
      box-shadow:0 14px 30px rgba(0,0,0,.25);
    }
    .nav-links.is-open a{padding:12px 14px; font-size:14px;}
    .menu-toggle{
      display:grid; place-content:center; gap:5px; width:42px; height:42px;
      flex:0 0 42px; border:0; border-radius:50%; background:var(--green); cursor:pointer;
    }
    .menu-toggle span{display:block; width:17px; height:2px; border-radius:2px; background:#0c170e; transition:transform .2s ease, opacity .2s ease;}
    .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg);}
    .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
    .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg);}
    .band-top{height:72px; margin-bottom:-72px;}
    .hero-content{padding:120px 24px 112px;}
    .hero-content h1{font-size:clamp(40px,6vw,52px); max-width:14ch;}
    .lime-blob, .dark-circle-bg, .lime-half, .green-dot, .green-dot-lg, .green-round-tr, .cta-diag{display:none;}
    .intro-dark{padding:116px 0 68px;}
    .intro-grid{gap:22px;}
    .intro-grid > div:first-child{max-width:560px; margin:0 auto; width:100%;}
    .ebook-art{min-height:330px;display:block;}
    .ebook-circle{width:330px; height:330px;}
    .ebook-cover{width:192px; height:258px;}
    .intro-dark > .wrap:last-child{justify-content:center; padding-right:24px; padding-left:24px; margin-top:12px;}
    .intro-wrap{max-width:640px;}
    .intro-wrap h2{font-size:42px; max-width:100%;}
    .intro-rule{width:min(100%, 360px); height:18px;}
    .intro-lead{font-size:16px;}
    .intro-sub{font-size:14px;}
    .framework-grid > div:first-child{max-width:560px;}
    .framework-grid .sub{white-space:normal;}
    .framework-cta{justify-content:center; padding:0 24px; margin-top:12px !important;}
    .framework-cta .pill-dark{min-width:0; font-size:13px;}
    .clients-grid h2{font-size:36px;}
    .clients-grid > div:first-child > div:last-child{margin-top:28px;}
    .dark-circle-bg{left:-180px;}
    .clients-grid > div:last-child{transform:none;}
    .stat-grid{grid-template-columns:repeat(2, minmax(0, 1fr)); max-width:640px; gap:56px 36px;}
    .ai-powered-block{--ai-art-size:min(100%, 420px);}
    .ai-powered-block .ai-photo{width:var(--ai-art-size); margin:0 auto; transform:none;}
    .ai-why-grid .photo.round{margin:0 auto;}
    .platform-benefits{min-height:0; padding:116px 0 70px;}
    .platform-benefits .benefits-grid{min-height:0;}
    .platform-benefits .photo.round{width:min(100%, 400px); height:460px; margin:48px auto 0;}
    .industry-layout{grid-template-columns:1fr; gap:44px;}
    .industry-left{min-height:0;}
    .industry-left .industry-photo{margin:48px auto 0; justify-content:center;}
    .industry-circle{display:none;}
    .industry-right p{margin-bottom:40px;}
    .training-section{min-height:0; padding:110px 0 96px;}
    .training-section .training-grid{gap:56px;}
    .training-section .training-grid h2{font-size:46px;}
    .training-section .training-cols{gap:34px;}
    .training-section .training-cols h5{font-size:17px;}
    .training-section .training-cols p{font-size:15px; margin-bottom:26px;}
    .training-exit{height:72px; margin-top:-72px;}
    .knowledge-section{padding:72px 0 88px;}
    .knowledge-section .kc-head{gap:28px; margin-bottom:48px;}
    .knowledge-section .kc-card{height:220px;}
    .knowledge-section .kc-card .txt{padding:36px 32px;}
    .knowledge-section .kc-card .txt h4{font-size:22px; margin-bottom:14px;}
    .knowledge-section .kc-card .txt p{font-size:13px;}
    .lime-block{padding:96px 0 82px;}
    .lime-block .center-head{margin-bottom:72px;}
    .lime-block .center-head h2{font-size:52px;}
    .talent-grid{gap:34px; max-width:620px;}
    .workforce-exit{height:72px; margin-top:-72px;}
    .green-grid .photo.round{width:380px; height:400px;}
    .lime-halfcircle{width:380px; height:380px; left:-48px; top:-210px;}
    .green-grid .photo.round, .green-grid > div:last-child{transform:none;}
    .green-block + .band-b{height:72px; margin-top:-72px;}
    .capability-section{padding:52px 0 74px;}
    .areas-label{margin-bottom:24px;}
    .areas-label::after{width:min(100%, 360px); height:12px;}
    .circle-grid{gap:28px 24px;}
    .circle-grid-bottom{margin-top:28px;}
    .circle-item{max-width:150px;}
    .circle-item .photo.round{width:128px; height:128px; margin-bottom:12px;}
    .circle-item span{font-size:12px;}
    .center-btn{margin-top:34px;}
    .cap-cta .pill-green{padding:12px 22px; font-size:11px;}
    .faq-block{padding:70px 0 78px;}
    .faq-block h2{max-width:620px; margin-bottom:32px;}
    .kc-card{height:156px;}
    .cta-block{padding:68px 0 0; min-height:0; background-image:none;}
    .cta-grid{display:grid; gap:18px; min-height:0; padding:0 24px;}
    .cta-grid > div:first-child{width:auto;}
    .cta-grid h2{font-size:26px; max-width:100%; margin-bottom:14px;}
    .cta-grid p{max-width:100%;}
    .cta-photo{position:relative; right:auto; bottom:auto; width:100%; height:240px; margin-top:22px; clip-path:none;}
    footer{padding:40px 0 26px;}
    .footer-grid{gap:18px;}
}

/* Tablet */
@media (min-width:768px) and (max-width:1024px){
.wrap{padding-left:40px; padding-right:40px;}
    nav{padding:24px 40px 18px; gap:16px;}
    .site-logo{width:146px;}
    .nav-links{gap:15px; font-size:14px;}
    nav .pill{padding:12px 20px; font-size:11px;}
    nav .arrow-circle{width:42px; height:42px;}
    .nav-links.is-open{left:40px; right:40px;}

    .framework-grid,
    .trust-grid,
    .why-grid,
    .service-grid,
    .green-grid,
    .clients-grid,
    .ai-grid,
    .tech-intro,
    .product-row,
    .benefits-grid,
    .talent-grid,
    .kc-head,
    .kc-grid,
    .faq-grid{
      grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    }
    .framework-grid,
    .trust-grid,
    .why-grid,
    .service-grid,
    .green-grid,
    .clients-grid,
    .ai-grid,
    .tech-intro,
    .product-row,
    .benefits-grid{gap:32px;}
    .framework-grid > *, .trust-grid > *, .why-grid > *, .service-grid > *,
    .green-grid > *, .clients-grid > *, .ai-grid > *, .tech-intro > *,
    .product-row > *, .benefits-grid > *{min-width:0;}

    .framework-grid h2, .service-grid h2, .ai-grid h2, .tech-intro h2{font-size:clamp(34px, 5vw, 46px);}
    .framework-grid .sub{white-space:normal;}
    .service-grid .btn-stack{max-width:none;}
    .service-photo{min-height:360px; border-radius:170px 0 0 170px;}
    .green-grid{align-items:start;}
    .green-grid .photo.round{width:100%; max-width:330px; height:430px; margin:0 auto; transform:translateY(80px);}
    .green-grid .btn-stack .pill{font-size:14px; padding:8px 22px;}
    .clients-grid > div:last-child{transform:none;}
    .clients-grid .photo.round, .why-grid .photo.round{width:min(100%, 320px); height:auto; aspect-ratio:1; margin-top:0;}
    .dark-circle-bg{left:-180px; width:260px; height:260px;}

    .stat-grid{grid-template-columns:repeat(2, minmax(0, 1fr)) !important; gap:54px 34px; max-width:700px;}
    .stat-card{justify-self:center;}
    .ai-powered-block{padding:88px 0;}
    .ai-powered-block .ai-photo{width:360px; height:430px; transform:none;}
    .ai-powered-block .green-dot{width:330px; height:330px;}

    .tech-intro{margin-bottom:34px;}
    .product-row{padding:42px 0;}
    .product-row .photo.round{width:min(100%, 310px); height:auto; aspect-ratio:1;}
    .product-row p.desc{font-size:14px;}
    .platform-benefits{padding-top:120px; min-height:0;}
    .platform-benefits .photo.round{width:340px; height:410px; margin-top:60px;}

    .lime-block{padding:96px 0 90px;}
    .lime-block .center-head{margin-bottom:74px;}
    .lime-block .center-head h2{font-size:52px;}
    .talent-grid{gap:34px 58px;}
    .industry-layout{grid-template-columns:minmax(0, 1fr) minmax(0, 1.2fr); gap:48px;}
    .industry-left .industry-photo .photo.round{width:290px; height:290px;}

    .training-section{padding:96px 0 86px;}
    .training-grid{grid-template-columns:1fr !important; gap:44px;}
    .training-cols{grid-template-columns:repeat(2, minmax(0, 1fr)) !important; gap:30px 42px;}
    .training-section .training-grid h2{font-size:44px;}

    .knowledge-section{padding:80px 0 88px;}
    .knowledge-section .kc-head{grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr) !important; gap:44px; margin-bottom:46px;}
    .knowledge-section .kc-head h2{font-size:42px; white-space:normal;}
    .knowledge-section .kc-card{height:176px;}
    .knowledge-section .kc-card .txt{padding:28px 30px;}
    .knowledge-section .kc-card .txt h4{font-size:20px;}

    .faq-block{padding:76px 0 86px;}
    .faq-block h2{font-size:42px; max-width:700px;}
    .faq-grid{gap:14px 18px;}
    .faq-label{padding-left:22px; padding-right:18px; font-size:13px;}

    .footer-grid{grid-template-columns:1.2fr 1fr 1fr !important; gap:28px;}
    .footer-grid > :first-child{grid-column:1 / -1; max-width:420px;}

#cases{padding-top:88px;background-image:radial-gradient(circle at -55px 21%,var(--lime2) 0 145px,transparent 146px),radial-gradient(circle at -55px 84%,var(--lime2) 0 145px,transparent 146px);}
    #cases .case-study,
    #cases .case-study:nth-child(2){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;min-height:500px;padding:64px 0;}
    #cases .case-study:nth-child(2) > :last-child{padding-left:24px;}
    #cases .case-study .arch-image{width:min(100%,430px);}
    #cases .case-study .photo.round{width:min(100%,350px);height:auto;aspect-ratio:1;}
    #cases .case-study h3,
    #cases .case-study:nth-child(2) h3{font-size:34px;}
    #cases .case-study .pill{width:210px;}
    .case-showcase{background-image:radial-gradient(circle at calc(100% + 70px) 23%,var(--green) 0 150px,transparent 151px),radial-gradient(circle at -70px 70%,var(--dark) 0 150px,transparent 151px);}
    .case-showcase .case-study,
    .case-showcase .case-study:nth-child(2){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;min-height:580px;padding:64px 0;}
    .case-showcase .case-study:first-child > :first-child{transform:none;}
    .case-showcase .case-study:nth-child(2) > :last-child{padding-top:36px;}
    .case-showcase .case-study .photo.round{width:min(100%,330px);height:auto;aspect-ratio:1;}
    .case-showcase .case-study .arch-image{width:min(100%,390px);}
    .case-showcase .case-study h3,
    .case-showcase .case-study:nth-child(2) h3{font-size:38px;}
    .case-showcase .case-study .lede{font-size:16px;}
    .case-showcase .case-study p:not(.lede){font-size:15px;}
    .case-showcase .case-study .intro-rule{width:min(100%,330px);}
}

/* Tablet portrait */
@media (min-width:768px) and (max-width:900px){
/* The desktop framework artwork needs more than half an iPad portrait viewport. */
    .framework-grid{grid-template-columns:1fr !important; gap:34px;}
    .framework-grid > div:first-child{max-width:560px; margin:0 auto;}
    .framework-grid .link-list{max-width:560px;}
    .book-art{min-height:380px; overflow:hidden;}
    .book-circle-yellow{width:380px; height:380px;}
    .book-circle-green{display:none;}
    .framework-cta{left:0; justify-content:center; padding:0 40px; margin-top:0 !important;}

    .cta-block{padding:74px 0 0; min-height:620px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cpath d='M0 4L6 0L12 4L18 0L24 4M0 11L6 7L12 11L18 7L24 11' fill='none' stroke='%233c673d' stroke-opacity='.52' stroke-width='1'/%3E%3C/svg%3E");}
    .cta-grid{display:block; min-height:532px; padding:0 8vw;}
    .cta-grid > div:first-child{width:62%;}
    .cta-grid h2{font-size:clamp(34px,5vw,46px); max-width:none;}
    .cta-grid p{font-size:14px; max-width:440px; margin-bottom:58px;}
    .cta-diag{display:block; right:20px; width:69%; clip-path:polygon(100% 0,100% 0,18% 100%,0 100%);}
    .cta-photo{position:absolute; top:-74px; right:0; bottom:-14px; left:auto; width:65%; margin:0; clip-path:polygon(100% 0,100% 100%,0 100%);}

.product-card,.case-study,.tech-panel{grid-template-columns:1fr;}.case-study{padding-top:58px;padding-bottom:58px;}.tech-benefits{grid-column:1;grid-row:auto;}.tech-panel__image{grid-column:1;grid-row:auto;}.product-card__intro,.product-card__list,.product-card__image,.product-card__details{grid-column:1 !important;grid-row:auto !important;}

.case-showcase .case-study,
    .case-showcase .case-study:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:34px;min-height:0;padding:64px 0;}
    .case-showcase .case-study:nth-child(2) > :last-child{padding-top:0;}
    .case-showcase .case-study .photo.round,
    .case-showcase .case-study .arch-image{align-self:center;}

header[data-page="products"] .hero-content{padding:92px 40px 104px;}
    header[data-page="products"] .hero-content h1{font-size:clamp(42px,6vw,50px);max-width:720px;}
    header[data-page="products"] .hero-content p{max-width:540px;}

    .products-main .tech-panel-section > .wrap{max-width:100%;padding-left:40px;padding-right:40px;}
    .products-main .tech-panel-section .tech-panel{grid-template-columns:1fr;gap:38px;transform:none;}
    .products-main .tech-panel-section .tech-panel__copy{max-width:620px;}
    .products-main .tech-panel-section .tech-benefits{width:100%;max-width:620px;justify-self:start;transform:none;}
    .products-main .tech-panel-section .tech-panel__image{width:min(100%,520px);margin:12px auto 0;}

    .products-main .product-cards{transform:none;}
    .products-main .product-card,
    .products-main .product-card:nth-child(2){display:flex;flex-direction:column;gap:30px;padding:72px 0;}
    .products-main .product-card__intro{order:1;width:100%;}
    .products-main .product-card__list{order:2;width:100%;max-width:560px;}
    .products-main .product-card__image{order:3;width:min(100%,400px);margin:8px auto 0;transform:none;}
    .products-main .product-card__details{order:4;width:100%;max-width:560px;margin:0;}
    .products-main .product-card:nth-child(2) .product-card__image{width:min(100%,520px);max-width:none;aspect-ratio:1.35;margin:8px auto 0;transform:none;border-radius:260px 0 0 260px;}
    .products-main .product-card:nth-child(2) .product-card__details{max-width:560px;margin:0;}

    .products-main .custom-section{min-height:0;padding:88px 0 138px;}
    .products-main .custom-section > .page-split{grid-template-columns:1fr;gap:52px;}
    .products-main .custom-section h2{font-size:52px;}
    .products-main .custom-section .photo.round{width:min(100%,380px);margin:38px auto 0;}
    .products-main .custom-section .line-list{max-width:620px;}
    .products-main .custom-section .page-split > div:last-child > p{max-width:620px;margin-top:44px;}

    .products-main > .section .trust-grid{grid-template-columns:1fr !important;gap:44px;}
    .products-main > .section .trust-grid > div{max-width:650px;}
    .products-main > .section .trust-brand-image{margin:0 auto;}

    /* Keep the approved tablet geometry after the portrait-only adjustments. */
    .framework-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;gap:32px;}
    .cta-grid{padding-left:40px;padding-right:40px;}
}

/* Compact phone */
@media (max-width:600px){
nav{padding:20px 18px 14px;}
    .band-top{height:48px; margin-bottom:-48px;}
    .site-logo{width:140px;}
    nav .pill{padding:11px 15px; font-size:11px;}
    nav .arrow-circle{width:38px; height:38px;}
    .logo{font-size:22px;}
    header{min-height:610px; background-position:center;}
    .hero-content{padding:96px 18px 110px;}
    .hero-content h1{font-size:34px; max-width:9ch;}
    .hero-content p{font-size:14px; max-width:320px;}
    .btn-row{gap:8px;}
    .pill{padding:14px 20px; font-size:12px;}
    .arrow-circle{width:42px; height:42px;}
    .intro-section{padding:14px 0 18px;}
    .intro-wrap h2{font-size:31px; line-height:1;}
    .intro-rule{width:min(100%, 255px); height:23px; margin:14px auto 14px;}
    .intro-lead{font-size:16px;}
    .intro-sub{font-size:14px; margin-top:12px;}
    .capability-section{padding:44px 0 64px;}
    .areas-label{font-size:12px; letter-spacing:.5px; margin-bottom:20px;}
    .areas-label::after{width:min(100%, 270px); height:10px; margin-top:10px;}
    .circle-grid{gap:24px 16px;}
    .circle-item{max-width:120px;}
    .circle-item .photo.round{width:108px; height:108px; margin-bottom:10px;}
    .circle-item span{font-size:11px; line-height:1.1;}
    .circle-grid-bottom{margin-top:22px;}
    .center-btn{margin-top:28px;}
    .cap-cta .pill-green{padding:12px 16px; font-size:10px; letter-spacing:.15px;}
    .cap-cta .arrow-circle.on-green{width:40px; height:40px; font-size:15px;}
    .cta-grid h2{font-size:24px;}
    .cta-grid p{font-size:12px;}
    .cta-photo{height:210px; margin-top:18px;}
    .intro-dark{padding:86px 0 58px;}
    .intro-grid h2{font-size:30px;}
    .intro-grid p{font-size:14px;}
    .link-list li{font-size:13px; padding:8px 0;}
    .ebook-art{min-height:282px;}
    .ebook-circle{width:276px; height:276px;}
    .ebook-cover{width:160px; height:214px;}
    .green-grid .photo.round{width:280px; height:310px; border-radius:140px 140px 0 0;}
    .lime-halfcircle{width:280px; height:280px; left:-44px; top:-150px;}
    .green-grid .btn-stack .pill{font-size:14px; min-height:46px;}
    .green-block + .band-b{height:56px; margin-top:-56px;}
    .clients-grid h2{font-size:32px;}
    .clients-grid .photo.round{width:270px; height:270px;}
    .dark-circle-bg{left:-150px; width:250px; height:250px;}
    .proven-head{margin:88px auto 54px; padding:0 24px;}
    .proven-head h2{font-size:32px;}
    .proven-head .underline{width:min(100%, 400px);}
    .stat-grid{grid-template-columns:1fr; justify-items:center; gap:48px; margin-top:58px;}
    .ai-powered-block{--ai-art-size:280px;}
    .ai-powered-block .ai-photo{width:var(--ai-art-size); height:300px;}
    .ai-powered-block .green-dot{width:var(--ai-art-size); height:var(--ai-art-size); right:0; top:calc(100% - 24px);}
    .platform-benefits{padding:92px 0 54px;}
    .platform-benefits::before{height:64px;}
    .platform-benefits .photo.round{width:min(100%, 300px); height:360px; border-radius:150px 150px 0 0; margin-top:34px;}
    .industry-section{padding:72px 0;}
    .industry-left h2{font-size:40px;}
    .industry-left .industry-photo .photo.round{width:280px; height:280px;}
    .industry-right h4, .industry-right p{font-size:14px;}
    .industry-right table, .industry-right td{font-size:13px;}
    .industry-table-head{gap:20px; margin-bottom:28px;}
    .industry-table-head span{width:auto; flex:1; min-height:42px; font-size:13px;}
    .industry-right td{padding:7px 12px;}
    .training-section{padding:76px 0 64px;}
    .training-section .training-grid h2{font-size:40px; margin-bottom:26px;}
    .training-section .pill-lime{width:auto; min-height:50px; padding:0 22px; font-size:14px;}
    .training-section .arrow-circle.on-lime{width:50px; height:50px; font-size:18px;}
    .training-section .training-cols h5{font-size:17px;}
    .training-section .training-cols p{font-size:15px; margin-bottom:22px;}
    .training-exit{height:56px; margin-top:-56px;}
    .knowledge-section{padding:56px 0 72px;}
    .knowledge-section .kc-head h2{font-size:36px; white-space:normal;}
    .knowledge-section .kc-head .tag, .knowledge-section .kc-head p{font-size:15px;}
    .knowledge-section .pill-green{width:auto; min-height:48px; padding:0 20px; font-size:14px;}
    .knowledge-section .arrow-circle.on-green{width:48px; height:48px; font-size:22px;}
    .knowledge-section .kc-grid{gap:22px; margin-bottom:34px;}
    .knowledge-section .kc-card{height:190px;}
    .knowledge-section .kc-card .txt{width:77%; padding:26px 22px;}
    .knowledge-section .kc-card .txt h4{font-size:19px; margin-bottom:10px;}
    .knowledge-section .kc-card .txt p{font-size:12px;}
    .knowledge-section .kc-card .photo{width:29%;}
    .lime-block{padding:72px 0 62px;}
    .lime-block .center-head{margin-bottom:52px;}
    .lime-block .center-head h2{font-size:42px;}
    .lime-block .underline{height:18px; margin:18px auto;}
    .lime-block .center-head p, .talent-item p{font-size:14px;}
    .talent-head{font-size:27px; margin-bottom:28px;}
    .talent-grid{gap:28px;}
    .talent-item .pill-white{font-size:14px; padding:11px 22px;}
    .workforce-exit{height:56px; margin-top:-56px;}
    .knowledge-section .kc-card::before {width: 18.5%;clip-path: polygon(100% 0, 100% 0, 48% 100%, 0 100%);}
}

/* Phone and phablet */
@media (max-width:767px){
html, body{overflow-x:clip;}
    .wrap{padding-left:20px; padding-right:20px;}
    .section{padding-top:64px; padding-bottom:64px;}
    h2{
      font-size:40px !important;
      line-height:1.01 !important;
      letter-spacing:-0.05em !important;
    }

    .circle-grid-top{grid-template-columns:repeat(3, minmax(0, 1fr));}
    .circle-grid-bottom{grid-template-columns:repeat(2, minmax(0, 1fr));}
    .circle-grid-bottom .circle-item:last-child:nth-child(odd){grid-column:1 / -1;}

    .hero-content .btn-row{width:100%; justify-content:center; gap:8px;}
    .hero-content .pill{min-width:0; padding:13px 16px; font-size:10px; letter-spacing:0;}
    .hero-content .arrow-circle{width:42px; height:42px;}

    .framework-cta .btn-row,
    .intro-dark .dl-row,
    .center-btn .btn-row{max-width:100%;}
    .framework-cta{left:0; max-width:100%; padding-left:20px; padding-right:20px;}
    .intro-dark .dl-row{left:0;}
    .framework-cta .pill-dark,
    .cap-cta .pill-green{min-width:0; white-space:normal; text-align:center;}

    .ai-why-grid > :nth-child(4){grid-column:auto;}
    .ai-why-grid .photo.round{width:min(100%, 340px); height:auto; aspect-ratio:1;}
    .two-col-bullets{grid-template-columns:1fr; gap:0;}
    .ai-why-section{padding-bottom:176px;}
    .ai-why-grid{gap:28px;}
    .thin-list li{padding:16px 0;}
    .thin-list li:last-child{border-bottom:1px solid #ccc;}
    .ideal-for-li{margin-top:0;}
    .ideal-for-li hr{display:none;}
    .ideal-for-li h4{margin:24px 0 16px;}

  .book-circle-green{display:none;}
  .book-art{min-height:0; width:100%; overflow:hidden;}
    .book-circle-yellow{
      width:min(100%, 360px);
      height:auto;
      aspect-ratio:1;
      flex:0 0 auto;
    }

    /* Learning Solutions: centered, half-cropped accent above centered artwork. */
    .green-block{
      --solution-art-size:min(360px, 86vw);
      padding-top:180px;
    }
    .green-grid > div:first-child{display:flex; justify-content:center;}
    .lime-halfcircle{
      width:var(--solution-art-size);
      height:var(--solution-art-size);
      left:50%;
      top:-10%;
      transform:translate(-50%, -100%);
    }
    .green-grid .photo.round{
      width:var(--solution-art-size);
      max-width:100%;
      height:auto;
      aspect-ratio:.9 / 1;
      margin:0 auto;
      transform:none;
      border-radius:50% 50% 0 0;
    }

  .product-row.rev > :first-child,
    .product-row.rev > :last-child{order:initial;}
    .product-row .photo.round{width:min(100%, 330px); height:auto; aspect-ratio:1;}
    .product-row .btn-row{flex-wrap:wrap;}

    .industry-table-head{gap:12px;}
    .industry-right td{padding-left:10px; padding-right:10px;}
    .industry-right td:last-child{padding-left:10px;}

    .knowledge-section .kc-card .txt{padding-right:18%;}
    .faq-item summary{grid-template-columns:minmax(0, 1fr) 45px;}
    .faq-label{padding-left:20px; padding-right:18px;}
    .faq-answer{padding-left:20px; padding-right:20px;}

    .footer-grid > :first-child{max-width:360px;}

.product-summary{padding:62px 0 18px;}
    .impact{min-height:0;padding:64px 0 72px;}
    .impact h2{font-size:40px;}
    .impact p{font-size:15px;}
    .impact .pill-green,.impact .pill-dark{width:auto;max-width:calc(100vw - 98px);}

.lead-modal{align-items:start; overflow-y:auto; padding:18px;}
    .lead-modal__dialog{margin:auto 0;}
    .lead-modal__content{padding:62px 28px 76px;}
    .lead-modal h2{font-size:32px !important;}
    .lead-modal__content > p{font-size:13px;}
    .lead-form{margin-top:32px;}
    .lead-form__actions{margin-top:30px;}
    .lead-form__submit{min-width:0; flex:1;}
    .thank-you-page{padding:20px 0;}
    .thank-you-card{width:calc(100% - 36px); min-height:480px; padding:54px 28px 86px;}
    .thank-you-card h1{font-size:68px;}
    .thank-you-card h2{font-size:25px !important; letter-spacing:-.03em !important;}
    .why-grid .photo.round{margin-top:0px;}
    .cta-photo {top:0px;margin-bottom:20px;}

.custom-section,.feature-section,.product-card,.case-study{grid-template-columns:1fr;gap:32px;}.product-card:nth-child(even)>:first-child,.case-study:nth-of-type(even)>:first-child{order:initial;}.product-card:nth-child(even)>:last-child,.case-study:nth-of-type(even)>:last-child{order:initial;}.product-card{padding:56px 0;}.link-list.two-col,.feature-grid{grid-template-columns:1fr;}.link-list.two-col{gap:0;}.feature-grid{gap:26px;margin-top:40px;}.feature-card h4,.feature-card p{padding-left:20px;padding-right:20px;}.case-study{padding:56px 0;}.case-study .photo.round,.case-study .arch-image{width:min(100%,320px);}.side-orb{width:180px;}.side-orb.left{left:-130px;}.side-orb.right{right:-130px;}

#cases{padding-top:72px;background-image:radial-gradient(circle at -70px 18%,var(--lime2) 0 110px,transparent 111px),radial-gradient(circle at -70px 82%,var(--lime2) 0 110px,transparent 111px);}
    #cases::before{height:42px;}
    #cases .case-study,
    #cases .case-study:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:30px;min-height:0;padding:54px 0;}
    #cases .case-study:nth-child(2) > :last-child{padding-left:0;}
    #cases .case-study .arch-image{width:min(100%,440px);}
    #cases .case-study .photo.round{width:min(88vw,340px);height:auto;aspect-ratio:1;align-self:center;}
    #cases .case-study h3,
    #cases .case-study:nth-child(2) h3{font-size:34px;}
    #cases .case-study .pill{width:min(220px,calc(100vw - 100px));}
    #cases .case-study::after{width:82%;}
    .case-showcase{background-image:radial-gradient(circle at calc(100% + 72px) 20%,var(--green) 0 105px,transparent 106px),radial-gradient(circle at -72px 72%,var(--dark) 0 105px,transparent 106px);}
    .case-showcase .case-study,
    .case-showcase .case-study:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:30px;min-height:0;padding:54px 0;}
    .case-showcase .case-study:first-child > :first-child{transform:none;}
    .case-showcase .case-study:nth-child(2) > :last-child{padding-top:0;}
    .case-showcase .case-study .photo.round{width:min(88vw,340px);height:auto;aspect-ratio:1;align-self:center;}
    .case-showcase .case-study .arch-image{width:min(100%,440px);align-self:center;}
    .case-showcase .case-study h3,
    .case-showcase .case-study:nth-child(2) h3{font-size:34px;}
    .case-showcase .case-study .lede{font-size:15px;}
    .case-showcase .case-study p:not(.lede){font-size:14px;}
    .case-showcase .case-study .intro-rule{width:min(100%,300px);}
    .case-showcase .case-study .pill,
    .case-showcase .case-study:nth-child(2) .pill-dark,
    .case-showcase .case-study:nth-child(2) .pill-green{width:min(250px,calc(100vw - 100px));}
    .tech-panel__copy h2{font-size:40px;}
    .tech-panel{grid-template-columns:1fr;gap:32px;}
    .tech-panel__copy,
    .tech-benefits,
    .tech-panel__image{grid-column:1;grid-row:auto;}
    .product-card{display:flex;flex-direction:column;gap:26px;padding:56px 0;}
    .product-card__intro,
    .product-card__list,
    .product-card__image,
    .product-card__details{width:100%;order:initial;}
    .product-card__intro{order:1;}
    .product-card__list{order:2;}
    .product-card__image{order:3;}
    .product-card__details{order:4;}

.page-split,
    .support-grid{grid-template-columns:1fr; gap:32px;}
    .center-copy{max-width:100%;}

header[data-page="products"]{min-height:640px;background-position:center;}
    header[data-page="products"] nav{padding:18px 20px 12px;}
    header[data-page="products"] nav > .btn-row{display:none;}
    header[data-page="products"] .hero-content{width:100%;padding:76px 20px 88px;}
    header[data-page="products"] .hero-content h1{max-width:350px;margin-left:auto;margin-right:auto;font-size:clamp(32px,9vw,38px);line-height:.98;}
    header[data-page="products"] .hero-content p{max-width:340px;margin:0 auto 26px;font-size:14px;line-height:1.4;letter-spacing:0;}
    header[data-page="products"] .hero-content .btn-row{width:min(100%,350px);margin-left:auto;margin-right:auto;}
    header[data-page="products"] .hero-content .pill{flex:1;width:auto;min-width:0;min-height:44px;max-width:calc(100% - 50px);padding:10px 14px;font-size:11px;line-height:1.2;white-space:normal;}
    header[data-page="products"] .hero-content .arrow-circle{width:42px;height:42px;}

    .products-main .tech-panel-section{padding:64px 0;}
    .products-main .tech-panel-section > .wrap{width:100%;max-width:100%;padding-left:20px;padding-right:20px;}
    .products-main .tech-panel-section .tech-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;transform:none;}
    .products-main .tech-panel-section .tech-panel__copy,
    .products-main .tech-panel-section .tech-benefits,
    .products-main .tech-panel-section .tech-panel__image{width:100%;max-width:100%;grid-column:1;grid-row:auto;transform:none;}
    .products-main .tech-panel-section .tech-panel__copy h2{font-size:34px !important;overflow-wrap:anywhere;}
    .products-main .tech-panel-section .tech-panel__copy p,
    .products-main .tech-panel-section .tech-benefits span{font-size:14px;overflow-wrap:anywhere;}
    .products-main .tech-panel-section .tech-benefits li{width:100%;padding-bottom:14px;margin-bottom:16px;}
    .products-main .tech-panel-section .tech-panel__image{width:min(100%,350px);aspect-ratio:1.45;margin:8px auto 0;border-radius:180px 0 0 180px;}
    .products-main .tech-panel-section .side-orb{display:none;}

    .products-main .product-summary{padding:60px 0 26px;}
    .products-main .product-summary h2{font-size:36px !important;max-width:11ch;}
    .products-main .product-cards{width:100%;padding-left:20px;padding-right:20px;transform:none;}
    .products-main .product-card,
    .products-main .product-card:nth-child(2){display:flex;flex-direction:column;width:100%;gap:26px;padding:56px 0;}
    .products-main .product-card__intro,
    .products-main .product-card__list,
    .products-main .product-card__image,
    .products-main .product-card__details{width:100%;min-width:0;max-width:100%;}
    .products-main .product-card__intro{order:1;}
    .products-main .product-card__list{order:2;margin:4px 0 8px;}
    .products-main .product-card__image{order:3;}
    .products-main .product-card__details{order:4;margin:0;}
    .products-main .product-card h3,
    .products-main .product-card:nth-child(2) h3{font-size:32px;line-height:1.05;overflow-wrap:anywhere;}
    .products-main .product-card p{font-size:15px;overflow-wrap:anywhere;}
    .products-main .product-card .line-list li{font-size:15px;overflow-wrap:anywhere;}
    .products-main .product-card:first-child .product-card__image{width:min(100%,330px);height:auto;aspect-ratio:1;margin:4px auto 0;transform:none;}
    .products-main .product-card:nth-child(2) .product-card__image{width:min(100%,350px);height:auto;aspect-ratio:1.2;margin:4px auto 0;transform:none;border-radius:180px 0 0 180px;}
    .products-main .product-card:nth-child(2) .product-card__details{max-width:100%;margin:0;}
    .products-main .product-card__details br{display:none;}
    .products-main .product-card__details .btn-row{width:100%;gap:8px;margin-top:12px;}
    .products-main .product-card__details .pill{flex:1;width:auto;min-width:0;min-height:46px;padding:10px 14px;font-size:12px;white-space:normal;}
    .products-main .product-card__details .arrow-circle{width:46px;height:46px;}

    .products-main .custom-section{min-height:0;padding:72px 0 118px;background-position:50% 100%;}
    .products-main .custom-section > .page-split{grid-template-columns:1fr;gap:44px;}
    .products-main .custom-section h2{font-size:40px !important;}
    .products-main .custom-section .lede{font-size:16px;}
    .products-main .custom-section p{font-size:15px;overflow-wrap:anywhere;}
    .products-main .custom-section .photo.round{width:min(100%,320px);height:auto;aspect-ratio:1;margin:34px auto 0;}
    .products-main .custom-section .line-list{width:100%;max-width:100%;margin:0;}
    .products-main .custom-section .line-list li{font-size:15px;}
    .products-main .custom-section .page-split > div:last-child > p{max-width:100%;margin-top:36px;}
    .products-main .custom-section .btn-row{width:100%;gap:8px;margin-top:24px;}
    .products-main .custom-section .pill{flex:1;width:auto;min-width:0;min-height:48px;padding:10px 14px;font-size:12px;white-space:normal;}
    .products-main .custom-section .arrow-circle{width:48px;height:48px;}
    .products-main .custom-section::after{height:72px;}

    .products-main > .section .trust-grid{grid-template-columns:1fr !important;gap:40px;}
    .products-main > .section .trust-grid h2{font-size:36px !important;}
    .products-main > .section .trust-grid p{font-size:14px;}
    .products-main > .section .trust-brand-image{width:100%;margin:0 auto;}
    .products-main > .section .trust-grid .btn-row{width:100%;}
    .products-main > .section .trust-grid .pill{flex:1;min-width:0;padding:11px 14px;font-size:11px;white-space:normal;}

    .products-main .lime-block{padding:72px 0 82px;}
    .products-main .lime-block .center-head{margin-bottom:52px;}
    .products-main .lime-block .center-head h2{font-size:36px !important;}
    .products-main .lime-block .center-head .btn-row{width:min(100%,350px);margin-left:auto;margin-right:auto;}
    .products-main .lime-block .center-head .pill{flex:1;min-width:0;padding:11px 14px;font-size:12px;white-space:normal;}
    .products-main .lime-block .talent-grid{grid-template-columns:1fr !important;gap:30px;}
    .products-main .lime-block .talent-item .pill-white{width:100%;}

    .products-main .knowledge-section .kc-head h2{font-size:36px !important;}
    .products-main .knowledge-section .stat-grid{grid-template-columns:1fr !important;width:100%;max-width:380px;gap:48px;margin:54px auto 20px;}
    .products-main .knowledge-section .stat-card{width:100%;max-width:340px;justify-self:center;}
    .products-main .knowledge-section .stat-card .photo{width:220px;height:220px;}
    .products-main .knowledge-section .stat-tag{width:100%;max-width:340px;font-size:22px;}
    .products-main .knowledge-section .line-list{width:100%;max-width:100%;}

    .products-main .impact{min-height:0;padding:64px 0 76px;}
    .products-main .impact h2{font-size:36px !important;}
    .products-main .impact p{font-size:15px;overflow-wrap:anywhere;}
    .products-main .impact .btn-row{width:min(100%,350px);margin-left:auto;margin-right:auto;gap:8px;}
    .products-main .impact .pill{flex:1;width:auto;min-width:0;max-width:calc(100% - 56px);min-height:48px;padding:10px 14px;font-size:13px;line-height:1.2;white-space:normal;}
    .products-main .impact .arrow-circle{width:48px;height:48px;}

    .products-main #cases .case-study,
    .products-main #cases .case-study:nth-child(2),
    .products-main .case-showcase .case-study,
    .products-main .case-showcase .case-study:nth-child(2){width:100%;padding-left:0;padding-right:0;}
    .products-main #cases .case-study h3,
    .products-main #cases .case-study:nth-child(2) h3,
    .products-main .case-showcase .case-study h3,
    .products-main .case-showcase .case-study:nth-child(2) h3{font-size:32px;overflow-wrap:anywhere;}
    .products-main #cases .case-study p,
    .products-main .case-showcase .case-study p{max-width:100%;overflow-wrap:anywhere;}
    .products-main #cases .case-study .btn-row,
    .products-main .case-showcase .case-study .btn-row{width:100%;gap:8px;}
    .products-main #cases .case-study .pill,
    .products-main .case-showcase .case-study .pill,
    .products-main .case-showcase .case-study:nth-child(2) .pill-dark,
    .products-main .case-showcase .case-study:nth-child(2) .pill-green{flex:1;width:auto;min-width:0;max-width:calc(100% - 56px);min-height:48px;padding:10px 14px;font-size:12px;white-space:normal;}
    .products-main #cases .case-study .arrow-circle,
    .products-main .case-showcase .case-study .arrow-circle{width:48px;height:48px;}

    .products-main .faq-block.green-block{padding:72px 0 80px;}
    .products-main .faq-block h2{font-size:36px !important;margin-bottom:32px;}
    .products-main .faq-block .faq-grid{grid-template-columns:1fr !important;gap:14px;}
    .products-main .faq-block .faq-item,
    .products-main .faq-block .faq-item summary{width:100%;min-width:0;}
    .products-main .faq-block .faq-label{font-size:13px;overflow-wrap:anywhere;}

.products-main .product-card:first-child::before,
    .products-main .product-card:nth-child(2)::after{display:none;}
    .products-main #cases,
    .products-main .case-showcase{background-image:none;}
    .products-main .case-showcase{padding:0;}
    .custom-section {background-image:none;}
}

/* Small phone */
@media (max-width:480px){
nav{gap:8px;}
    .site-logo{width:112px;}
    nav .pill{padding:10px 11px; font-size:9px;}
    nav .arrow-circle, .menu-toggle{width:36px; height:36px; flex-basis:36px;}
    .menu-toggle{gap:4px;}
    .menu-toggle span{width:15px;}
    .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(6px) rotate(45deg);}
    .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-6px) rotate(-45deg);}

    .circle-grid-top, .circle-grid-bottom{grid-template-columns:repeat(2, minmax(0, 1fr));}
    .circle-grid-bottom .circle-item:last-child:nth-child(odd){grid-column:1 / -1;}
    .circle-item .photo.round{width:min(100%, 116px); height:auto; aspect-ratio:1;}

    .hero-content .pill{padding:12px 12px; font-size:9px;}
    .hero-content .arrow-circle{width:40px; height:40px;}
    .btn-row{gap:7px;}
    .pill{white-space:normal; text-align:center;}
    .intro-dark .dl-row .pill,
    .center-btn .pill,
    .framework-cta .pill{font-size:10px; padding-left:16px; padding-right:16px;}

  .ebook-circle{width:min(276px, 88vw); height:auto; aspect-ratio:1;}
  .book-circle-yellow{width:min(100%, 320px);}
  .green-grid .photo.round{width:min(100%, 280px);}
    .clients-grid .photo.round,
    .why-grid .photo.round{width:min(100%, 270px); height:auto; aspect-ratio:1;}
    .stat-tag{width:100%; max-width:270px;}
    .stat-card{width:min(100%, 270px);}

    .ai-powered-block .ai-photo{width:min(100%, 280px);}
    .platform-benefits .photo.round{width:min(100%, 300px);}
    .industry-left .industry-photo .photo.round{width:min(100%, 280px); height:auto; aspect-ratio:1;}
    .knowledge-section .kc-card{height:auto; min-height:190px;}
    .knowledge-section .kc-card .txt{width:82%; padding:24px 26% 24px 20px;}
    .knowledge-section .kc-card .photo{width:34%;}

header[data-page="products"] .hero-content{padding-top:72px;}
    header[data-page="products"] .hero-content h1{font-size:32px;}
    header[data-page="products"] .hero-content p{font-size:13px;}
    header[data-page="products"] .hero-content .pill{font-size:10px;}
    .products-main .tech-panel-section .tech-panel__copy h2,
    .products-main .product-summary h2,
    .products-main .lime-block .center-head h2,
    .products-main .knowledge-section .kc-head h2,
    .products-main .impact h2,
    .products-main .faq-block h2{font-size:32px !important;}
    .products-main .product-card h3,
    .products-main .product-card:nth-child(2) h3,
    .products-main #cases .case-study h3,
    .products-main #cases .case-study:nth-child(2) h3,
    .products-main .case-showcase .case-study h3,
    .products-main .case-showcase .case-study:nth-child(2) h3{font-size:29px;}
}

/* Approved Home hero compatibility for screenshot-based pages. Keep these
   rules scoped so index.html and products.html remain unchanged. */
.new-figma-page .nf-hero{
  min-height:clamp(690px,50vw,860px) !important;
  background-color:var(--dark) !important;
  background-position:center !important;
  background-size:cover !important;
}
.new-figma-page .nf-hero::after{display:none !important;}
.new-figma-page .nf-hero__content{
  width:auto !important;
  max-width:1240px !important;
  margin:0 auto !important;
  padding:158px 20px 138px !important;
  text-align:center !important;
}
.new-figma-page .nf-hero__content h1{
  max-width:none !important;
  margin:0 auto 16px !important;
  color:#fff !important;
  font-size:clamp(52px,5vw,65px) !important;
  line-height:.95 !important;
  letter-spacing:-5% !important;
}
.new-figma-page .nf-hero__content p{
  max-width:470px !important;
  margin:0 auto 30px !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1.35 !important;
}
.new-figma-page .nf-hero__content .btn-row{justify-content:center !important;}
.new-figma-page .nav-links a:nth-child(2){display:none;}
@media (max-width:900px){
  .new-figma-page .nf-hero__content{padding:120px 24px 112px !important;}
  .new-figma-page .nf-hero__content h1{font-size:clamp(40px,6vw,52px) !important;max-width:14ch !important;}
}

@media (max-width:600px){
  .new-figma-page .nf-hero{
    min-height:610px !important;
    background-position:center !important;
  }
  .new-figma-page .nf-hero__content{padding:96px 18px 110px !important;}
  .new-figma-page .nf-hero__content h1{font-size:34px !important;max-width:9ch !important;}
  .new-figma-page .nf-hero__content p{max-width:320px !important;font-size:14px !important;}
}

/* AI page keeps its legacy inner markup, but uses the approved Home hero
   geometry so every page shares the same header experience. */
.page-ai-powered-learning .ai-hero{
  min-height:clamp(690px,50vw,860px) !important;
  background:var(--dark) url('../assets/images/why-ai-learning.jpg') center/cover no-repeat !important;
}
.page-ai-powered-learning .ai-hero::after,
.page-ai-powered-learning .ai-hero__inner::after{display:none !important;}
.page-ai-powered-learning .ai-hero__inner{min-height:0 !important;}
.page-ai-powered-learning .ai-hero__copy{
  width:auto !important;
  max-width:1240px !important;
  margin:0 auto !important;
  padding:158px 20px 138px !important;
  text-align:center !important;
}
.page-ai-powered-learning .ai-hero__copy h1{
  max-width:none !important;
  margin:0 auto 16px !important;
  font-size:clamp(52px,5vw,65px) !important;
  line-height:.95 !important;
  letter-spacing:-5% !important;
}
.page-ai-powered-learning .ai-hero__copy p{
  max-width:470px !important;
  margin:0 auto 30px !important;
  font-size:16px !important;
  line-height:1.35 !important;
}
.page-ai-powered-learning .ai-hero__copy .btn-row{justify-content:center !important;}
.page-ai-powered-learning .ai-hero__image,
.page-ai-powered-learning .ai-hero__orb{display:none !important;}

@media (max-width:900px){
  .page-ai-powered-learning .ai-hero__copy{padding:120px 24px 112px !important;}
  .page-ai-powered-learning .ai-hero__copy h1{font-size:clamp(40px,6vw,52px) !important;max-width:14ch !important;}
}
@media (max-width:600px){
  .page-ai-powered-learning .ai-hero{min-height:610px !important;}
  .page-ai-powered-learning .ai-hero__copy{padding:96px 18px 110px !important;}
  .page-ai-powered-learning .ai-hero__copy h1{font-size:34px !important;max-width:9ch !important;}
  .page-ai-powered-learning .ai-hero__copy p{max-width:320px !important;font-size:14px !important;}
}

/* =========================================================
   MEGA NAVIGATION
   Only affects navigation inside .mega-nav
   ========================================================= */

.mega-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
}

.mega-nav .nav-item {
  position: relative;
  display: flex;
  align-items: center;
}

.mega-nav .nav-link {
  display: flex;
  align-items: center;
  min-height: 42px;
  white-space: nowrap;
}

/* Do not allow inherited nav text-transform to affect submenu content */
.mega-nav .mega-menu {
  text-transform: none;
}

/* Invisible on desktop because desktop menu opens by hover/focus */
.mega-toggle {
  display: none;
}

/* -------------------------
   Dropdown panel
   ------------------------- */

.mega-menu {
  position: absolute;
  z-index: 99999;
  top: 100%;
  left: 50%;
  padding-top: 12px;

  width: 580px;
  padding: 14px;

  background: #fff;
  border: 1px solid rgba(102, 189, 61, 0.22);
  border-radius: 20px;

  box-shadow:
    0 24px 60px rgba(13, 34, 18, 0.16),
    0 8px 20px rgba(13, 34, 18, 0.08);

  color: #17321f;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transform: translate(-50%, 10px);

  transition:
    opacity 0.18s ease,
    visibility 0.18s ease,
    transform 0.18s ease;
}

.mega-menu-inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;

  /* padding: 14px; */

  /* background: #fff;
  border: 1px solid rgba(102, 189, 61, 0.22);
  border-radius: 20px;

  box-shadow:
    0 24px 60px rgba(13, 34, 18, 0.16),
    0 8px 20px rgba(13, 34, 18, 0.08); */
}
/* Dropdown caret - matches CTA down-arrow style */
.mega-nav .has-mega > .nav-link::after {
  content: "";
  display: inline-block;

  width: 9px;
  height: 9px;

  margin-left: 10px;
  margin-top: -5px;

  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;

  transform: rotate(45deg);
  flex-shrink: 0;
}

.has-mega:hover > .mega-menu,
.has-mega:focus-within > .mega-menu,
.has-mega.is-mega-open > .mega-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}


/* -------------------------
   Menu grid
   ------------------------- */

.mega-menu-inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
}

.mega-menu-inner > a {
  display: flex;
  flex-direction: column;
  gap: 4px;

  padding: 14px 16px;

  color: #17321f;
  text-decoration: none;

  border-radius: 14px;

  transition:
    background-color 0.15s ease,
    color 0.15s ease;
}

.mega-menu-inner > a:hover,
.mega-menu-inner > a:focus-visible {
  background: rgba(109, 194, 61, 0.10);
  color: #65b936;
  text-decoration: none;
}

.mega-menu-inner strong {
  display: block;

  font-size: 16px;
  line-height: 1.3;
  font-weight: 700;
}

.mega-menu-inner span {
  display: block;

  font-size: 11px;
  line-height: 1.45;
  font-weight: 400;

  color: #607267;
}


/* -------------------------
   Compact Learning Technology menu
   Similar to supplied reference
   ------------------------- */

.mega-menu--compact {
  width: 320px;
}

.mega-menu--compact .mega-menu-inner {
  grid-template-columns: 1fr;
}

.mega-menu--compact .mega-menu-inner > a {
  padding: 13px 16px;
}

.mega-menu--compact .mega-menu-inner strong {
  font-size: 16px;
}


/* -------------------------
   Services / Solutions panels
   ------------------------- */

.mega-menu--services,
.mega-menu--solutions {
  width: min(560px, calc(100vw - 40px));
}


/* Keep wide dropdowns inside viewport */

.mega-nav .nav-item:nth-last-child(-n + 2) .mega-menu {
  left: auto;
  right: 0;
  transform: translateY(10px);
}

.mega-nav .nav-item:nth-last-child(-n + 2):hover > .mega-menu,
.mega-nav .nav-item:nth-last-child(-n + 2):focus-within > .mega-menu,
.mega-nav .nav-item:nth-last-child(-n + 2).is-mega-open > .mega-menu {
  transform: translateY(0);
}


/* =========================================================
   MOBILE / TABLET APP-STYLE NAVIGATION
   ========================================================= */

@media (max-width: 900px) {

  /* ---------------------------------
     Left slide-in navigation drawer
     --------------------------------- */

  .nav-links.mega-nav {
    display: flex;

    position: fixed;
    z-index: 2000;

    top: 0;
    left: 0;
    bottom: 0;

    width: min(86vw, 340px);
    height: 100dvh;

    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;

    gap: 0;

    padding: 90px 22px 40px;

    background: rgba(18, 48, 30, 0.98);

    box-shadow: 18px 0 45px rgba(0, 0, 0, 0.25);

    overflow-y: auto;
    overscroll-behavior: contain;

    transform: translateX(-105%);
    transition: transform 0.28s ease;

    visibility: hidden;
    pointer-events: none;
  }


  .nav-links.mega-nav.is-open {
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
  }


  /* ---------------------------------
     Main menu rows
     --------------------------------- */

  .mega-nav .nav-item {
    display: grid;

    grid-template-columns:
      minmax(0, 1fr)
      44px;

    align-items: center;

    width: 100%;

    border-bottom:
      1px solid rgba(255, 255, 255, 0.08);
  }


  .mega-nav .nav-item:not(.has-mega) {
    grid-template-columns: 1fr;
  }


  .mega-nav .nav-item > .nav-link {
    display: flex;
    align-items: center;

    min-height: 54px;

    padding: 14px 8px;

    color: #fff;

    font-size: 14px;
    font-weight: 700;

    line-height: 1.3;

    white-space: normal;
  }


  /* ---------------------------------
     IMPORTANT:
     Remove desktop caret on mobile
     --------------------------------- */

  .mega-nav .has-mega > .nav-link::after {
    display: none !important;
  }


  /* ---------------------------------
     Single mobile dropdown button
     --------------------------------- */

  .mega-toggle {
    display: grid;

    place-items: center;

    width: 44px;
    height: 44px;

    margin: 0;

    padding: 0;

    border: 0;

    background: transparent;

    color: #fff;

    cursor: pointer;
  }


  .mega-toggle::before {
    content: "";

    width: 9px;
    height: 9px;

    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;

    transform: rotate(45deg) translate(-2px, -2px);

    transition: transform 0.22s ease;
  }


  .has-mega.is-mega-open >
  .mega-toggle::before {
    transform:
      rotate(225deg)
      translate(-1px, -1px);
  }


  /* ---------------------------------
     Reset desktop dropdown positioning
     --------------------------------- */

  .mega-menu,
  .mega-menu--compact,
  .mega-menu--services,
  .mega-menu--solutions,
  .mega-nav
  .nav-item:nth-last-child(-n + 2)
  .mega-menu {

    position: static;

    grid-column: 1 / -1;

    width: 100%;
    max-width: none;

    margin: 0;

    padding: 0;

    border: 0;
    border-radius: 0;

    background: transparent;

    box-shadow: none;

    opacity: 1;
    visibility: visible;

    pointer-events: auto;

    transform: none;

    display: none;
  }


  .has-mega.is-mega-open >
  .mega-menu {
    display: block;
  }


  /* ---------------------------------
     Submenu
     --------------------------------- */

  .mega-menu-inner {
    display: grid;

    grid-template-columns: 1fr;

    gap: 0;

    margin: 0 0 10px;

    padding: 4px 0 8px 14px;

    background: transparent;

    border: 0;

    box-shadow: none;
  }


  .mega-menu-inner > a {
    position: relative;

    display: flex;
    flex-direction: column;

    gap: 2px;

    padding: 10px 12px 10px 18px;

    color: rgba(255, 255, 255, 0.82);

    border-radius: 8px;

    font-size: 14px;

    text-transform: none;
  }


  /* small green indicator */

  .mega-menu-inner > a::before {
    content: "";

    position: absolute;

    left: 3px;
    top: 18px;

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--green);
  }


  .mega-menu-inner > a:hover,
  .mega-menu-inner > a:focus-visible {
    background:
      rgba(255, 255, 255, 0.07);

    color: var(--green);
  }


  .mega-menu-inner strong {
    font-size: 16px;
    font-weight: 600;

    line-height: 1.3;
  }


  .mega-menu-inner span {
    margin-top: 2px;

    color:
      rgba(255, 255, 255, 0.52);

    font-size: 11px;
    font-weight: 400;

    line-height: 1.4;
  }

  /* Fix desktop mega-menu transform leaking into mobile */
  .mega-nav .has-mega.is-mega-open > .mega-menu {
    transform: none !important;
    left: auto;
    right: auto;
  }
}
.mobile-nav-overlay {
  display: none;
}

/* Desktop mega menu - split items 50/50 vertically */
.mega-menu-inner {
  display: block;
  column-count: 2;
  column-gap: 20px;
}

.mega-menu-inner > a {
  display: flex;
  break-inside: avoid;
  margin-bottom: 4px;
}

.mega-menu--compact .mega-menu-inner {
  column-count: 1;
}

@media (max-width: 900px) {

  .mega-nav .mega-menu-inner {
    display: block;
    column-count: 1;
    column-gap: 0;
  }

  .mega-nav .mega-menu-inner > a {
    width: 100%;
    break-inside: avoid;
  }

  .mobile-nav-overlay {
    display: block;

    position: fixed;
    z-index: 1990;

    inset: 0;

    background: rgba(0, 0, 0, 0.48);

    opacity: 0;
    visibility: hidden;

    pointer-events: none;

    transition:
      opacity 0.25s ease,
      visibility 0.25s ease;
  }


  body.mobile-menu-open
  .mobile-nav-overlay {
    opacity: 1;
    visibility: visible;

    pointer-events: auto;
  }


  body.mobile-menu-open {
    overflow: hidden;
  }
}
@media (max-width: 900px) {

  .mega-nav .mega-menu,
  .mega-nav .mega-menu--compact,
  .mega-nav .mega-menu--services,
  .mega-nav .mega-menu--solutions {
    position: static;
    left: auto;
    right: auto;

    width: 100%;
    max-width: 100%;

    margin: 0;
    padding: 0;

    transform: none !important;
  }

  .mega-nav .has-mega.is-mega-open > .mega-menu {
    display: block;
    transform: none !important;
  }

  .mega-nav .mega-menu-inner {
    width: 100%;
    margin: 0;
    padding: 4px 0 10px 14px;
  }
}
@media (min-width: 901px) {

  .mega-menu--services .mega-menu-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 0;
  }

  .mega-menu--services .mega-menu-column {
    display: flex;
    flex-direction: column;
  }

  /* Left side + center divider */
  .mega-menu--services .mega-menu-column--left {
    padding-right: 20px;
    border-right: 2px solid var(--green);
  }

  /* Right side */
  .mega-menu--services .mega-menu-column--right {
    padding-left: 20px;
  }

  .mega-menu--services .mega-menu-column > a {
    display: flex;
    flex-direction: column;
    padding: 10px 0;
    color: #17321f;
  }

  .mega-menu--services .mega-menu-column strong {
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
  }

  .mega-menu--services .mega-menu-column span {
    margin-top: 4px;
    font-size: 13px;
    line-height: 1.4;
    color: #607267;
  }

  /* Custom eLearning heading */
  .mega-menu--services .mega-menu-heading {
    margin-bottom: 4px;
  }

  /* Green dash only for its children */
  .mega-menu--services .mega-sub-item {
    position: relative;
    padding-left: 14px !important;
  }

  .mega-menu--services .mega-sub-item::before {
    content: "–";
    position: absolute;
    left: 0;
    top: 9px;
    color: var(--green);
    font-weight: 700;
  }
}
@media (max-width: 900px) {

  .mega-menu--services .mega-menu-inner {
    display: block;
  }

  .mega-menu--services .mega-menu-column {
    display: flex;
    flex-direction: column;
  }

  .mega-menu--services .mega-menu-column--left,
  .mega-menu--services .mega-menu-column--right {
    padding: 0;
    border: 0;
  }
}
.font-light {font-weight:400 !important;}
.font-regular {font-weight:500 !important;}
.font-medium {font-weight:600 !important;}
.font-semibold {font-weight:700 !important;}  
.font-light strong {font-weight:500 !important;}
.text-center {text-align:center !important;}
.mt-10 {margin-top:10px !important;}
.mt-20 {margin-top:20px !important;}
.mt-30 {margin-top:30px !important;}
.mb-10 {margin-bottom:10px !important;}
.mb-20 {margin-bottom:20px !important;}     
.mb-30 {margin-bottom:30px !important;}
.section-width {max-width:66ch;}