
    /* Hero orbit fix: 3 box chạy đều quanh vòng tròn, không dừng khi hover */
    .hero-visual-real{
      --orbit-radius: 260px;
      --orbit-speed: 18s;
      isolation: isolate;
    }

    .hero-visual-real .sun-disc{
      width: 520px !important;
      height: 520px !important;
      background:
        radial-gradient(circle, rgba(184, 218, 255, .34) 0 36%, transparent 37%),
        repeating-radial-gradient(circle, rgba(111, 177, 241, .18) 0 18px, rgba(111, 177, 241, .10) 18px 36px),
        linear-gradient(135deg, #eaf7ff, #a8d7ff) !important;
      box-shadow: 0 36px 85px rgba(102, 178, 255, .22) !important;
      opacity: .82;
    }

    .hero-visual-real .sun-disc::before{
      inset: 92px !important;
      border: 2px dashed rgba(76, 144, 207, .22) !important;
    }

    .hero-visual-real .sun-disc::after{
      content: '';
      position: absolute;
      inset: 176px;
      border-radius: 50%;
      border: 1px solid rgba(76, 144, 207, .14);
    }

    .hero-visual-real .hero-img-person{
      z-index: 4;
    }

    .hero-visual-real .floating-card{
      left: 50% !important;
      top: 50% !important;
      right: auto !important;
      bottom: auto !important;
      z-index: 6;
      width: max-content;
      min-width: 170px;
      text-align: center;
      transform: translate(-50%, -50%) rotate(var(--start-angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--start-angle)));
      animation: orbitBox var(--orbit-speed) linear infinite;
      animation-delay: var(--orbit-delay);
      will-change: transform;
      pointer-events: auto;
    }

    .hero-visual-real .floating-card:hover{
      animation-play-state: running !important;
      transform-origin: center;
    }

    .hero-visual-real .card-1{
      --start-angle: -90deg;
      --orbit-delay: 0s;
    }

    .hero-visual-real .card-2{
      --start-angle: 30deg;
      --orbit-delay: 0s;
    }

    .hero-visual-real .card-3{
      --start-angle: 150deg;
      --orbit-delay: 0s;
    }

    @keyframes orbitBox{
      from{
        transform: translate(-50%, -50%) rotate(var(--start-angle)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--start-angle)));
      }
      to{
        transform: translate(-50%, -50%) rotate(calc(var(--start-angle) + 360deg)) translateX(var(--orbit-radius)) rotate(calc(-1 * (var(--start-angle) + 360deg)));
      }
    }

    @media (max-width: 1080px){
      .hero-visual-real{ --orbit-radius: 220px; }
      .hero-visual-real .sun-disc{ width: 440px !important; height: 440px !important; }
    }

    @media (max-width: 720px){
      .hero-visual-real{ --orbit-radius: 145px; --orbit-speed: 16s; }
      .hero-visual-real .sun-disc{ width: 290px !important; height: 290px !important; }
      .hero-visual-real .sun-disc::before{ inset: 52px !important; }
      .hero-visual-real .sun-disc::after{ inset: 100px; }
      .hero-visual-real .floating-card{ min-width: 118px; }
    }
  

    /* About metrics spacing fix */
    .about-metrics{
      margin-top: 10px;
    }
    .about-metric-row{
      display: grid;
      grid-template-columns: minmax(250px, 290px) minmax(0, 1fr);
      gap: 34px;
      align-items: center;
    }
    .about-metric-number{
      display: flex;
      align-items: flex-start;
      gap: 10px;
      white-space: nowrap;
      line-height: .92;
      letter-spacing: -.03em;
      flex-wrap: nowrap;
    }
    .about-metric-number span{
      display: inline-block;
      flex: 0 0 auto;
      position: relative;
      top: 8px;
      margin-left: 0;
    }

    .about-metric-number .about-count{
      display: inline-block;
      font: inherit;
      color: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      min-width: 0;
    }
    .about-metric-text{
      min-width: 0;
      padding-left: 4px;
    }
    .about-metric-text strong,
    .about-metric-text span{
      display: block;
    }
    @media (max-width: 980px){
      .about-metric-row{
        grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
        gap: 24px;
      }
    }
    @media (max-width: 720px){
      .about-metric-row{
        grid-template-columns: 1fr;
        gap: 10px;
      }
      .about-metric-number span{
        top: 4px;
      }
      .about-metric-text{
        padding-left: 0;
      }
    }


    /* Minimal, professional services section */
    .services.services-simple{
      padding: 96px 0 90px;
      background: #f8fafc;
    }
    .services-simple .services-head{
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      gap: 24px;
      margin-bottom: 34px;
    }
    .services-simple .services-head-main .eyebrow{
      margin: 0 0 10px;
      color: #5f97c5;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .06em;
      text-transform: uppercase;
    }
    .services-simple .services-head-main h2{
      margin: 0;
      color: #1f2e59;
      font-size: clamp(38px, 3.7vw, 56px);
      line-height: 1.08;
      letter-spacing: -.035em;
    }
    .services-simple .services-all-btn{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 132px;
      height: 52px;
      padding: 0 22px;
      background: transparent;
      color: #2d5f8c;
      border: 1px solid #9ec2df;
      text-decoration: none;
      font-size: 15px;
      font-weight: 700;
      border-radius: 0;
      box-shadow: none;
      white-space: nowrap;
    }
    .services-simple .service-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 24px;
    }
    .services-simple .service-card-simple,
    .services-simple .service-card-simple.featured,
    .services-simple .service-card-simple.emphasis{
      position: relative;
      display: block;
      min-height: 230px;
      padding: 34px 30px 30px;
      background: #ffffff;
      color: #1f2e59;
      text-decoration: none;
      border: 1px solid #e7edf3;
      border-bottom: 1px solid #e7edf3;
      box-shadow: none;
      border-radius: 0;
      transition: border-color .2s ease, transform .2s ease;
    }
    .services-simple .service-card-simple:hover{
      transform: translateY(-3px);
      border-color: #b9d4ea;
      box-shadow: none;
    }
    .services-simple .service-card-simple::after{
      content: '';
      position: absolute;
      left: 30px;
      right: 30px;
      bottom: 0;
      height: 2px;
      background: #79aad3;
      opacity: 0;
      transition: opacity .2s ease;
    }
    .services-simple .service-card-simple:hover::after{
      opacity: 1;
    }
    .services-simple .service-icon,
    .services-simple .featured .service-icon{
      width: 44px;
      height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 24px;
      color: #6e9fc5;
      background: #eef6fc;
      border: 1px solid #dbeaf5;
      border-radius: 0;
      opacity: 1;
    }
    .services-simple .service-icon svg{
      width: 26px;
      height: 26px;
      stroke: currentColor;
      fill: none;
      stroke-width: 1.75;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .services-simple .service-card-simple h3{
      margin: 0 0 14px;
      font-size: 23px;
      line-height: 1.3;
      color: #1f2e59;
      letter-spacing: -.02em;
      font-weight: 800;
    }
    .services-simple .service-card-simple p,
    .services-simple .featured p{
      margin: 0;
      font-size: 15.5px;
      line-height: 1.65;
      color: #8c95a3;
      font-weight: 500;
    }
    @media (max-width: 1080px){
      .services-simple .service-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 720px){
      .services.services-simple{ padding: 72px 0 68px; }
      .services-simple .services-head{ flex-direction: column; align-items: flex-start; margin-bottom: 28px; }
      .services-simple .services-all-btn{ height: 48px; }
      .services-simple .service-grid{ grid-template-columns: 1fr; gap: 18px; }
      .services-simple .service-card-simple,
      .services-simple .service-card-simple.featured,
      .services-simple .service-card-simple.emphasis{ min-height: auto; padding: 28px 24px; }
      .services-simple .service-card-simple h3{ font-size: 20px; }
    }

  

    /* Hero title spacing fix */
    .hero-grid-real h1{
      display: block;
      max-width: 760px;
      font-size: clamp(56px, 5.45vw, 88px);
      line-height: 1.12;
      letter-spacing: -0.03em;
      word-spacing: normal;
      word-break: keep-all;
      overflow-wrap: normal;
      white-space: normal;
      text-wrap: balance;
    }
    .hero-grid-real h1 br{
      display: block;
      content: "";
    }
    @media (max-width: 980px){
      .hero-grid-real h1{
        max-width: 100%;
        font-size: clamp(42px, 7.6vw, 68px);
        line-height: 1.1;
      }
    }
    @media (max-width: 720px){
      .hero-grid-real h1{
        font-size: clamp(34px, 9vw, 50px);
        line-height: 1.12;
        letter-spacing: -0.02em;
      }
    }

  

    /* Final hero title fix: smaller text and no unwanted line breaks */
    .hero-grid-real h1{
      max-width: 920px !important;
      font-size: clamp(34px, 4vw, 64px) !important;
      line-height: 1.08 !important;
      letter-spacing: -0.025em !important;
      text-wrap: initial !important;
    }
    .hero-grid-real h1 .hero-line{
      display: block;
      white-space: nowrap;
    }
    .hero-copy{
      min-width: 0;
    }
    @media (max-width: 1100px){
      .hero-grid-real h1{
        font-size: clamp(32px, 4.4vw, 56px) !important;
      }
    }
    @media (max-width: 720px){
      .hero-grid-real h1{
        font-size: clamp(28px, 8vw, 42px) !important;
        line-height: 1.1 !important;
      }
      .hero-grid-real h1 .hero-line{
        white-space: normal;
      }
    }

  

    /* 100% screen fit: keep hero/header visible and prevent clipping */
    html, body{
      max-width: 100%;
      overflow-x: hidden;
    }
    .container{
      max-width: min(1180px, calc(100vw - 48px));
    }
    .top-strip{
      min-height: 8px;
    }
    .site-header{
      height: 72px;
      overflow: visible;
    }
    .site-header .nav-wrap{
      min-height: 72px;
      padding-top: 0;
      padding-bottom: 0;
      gap: 28px;
    }
    .brand img{
      width: 150px !important;
      max-height: 68px;
      object-fit: contain;
      display: block;
    }
    .main-nav{
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: clamp(14px, 1.45vw, 26px);
      min-width: 0;
      flex: 1 1 auto;
      white-space: nowrap;
      overflow: visible;
    }
    .main-nav a{
      font-size: clamp(12px, .86vw, 14px);
      line-height: 1.2;
      white-space: nowrap;
    }
    .hero.section-sky{
      min-height: calc(100vh - 80px);
      padding-top: clamp(44px, 5vh, 62px);
      padding-bottom: clamp(38px, 4.6vh, 56px);
      overflow: hidden;
    }
    .hero-grid-real{
      grid-template-columns: minmax(0, .98fr) minmax(360px, .82fr) !important;
      gap: clamp(26px, 3.2vw, 56px) !important;
      align-items: center !important;
      max-width: min(1180px, calc(100vw - 48px));
    }
    .hero-grid-real .hero-copy{
      max-width: 680px !important;
      width: 100%;
    }
    .hero-grid-real h1{
      max-width: 680px !important;
      font-size: clamp(40px, 4.15vw, 62px) !important;
      line-height: 1.04 !important;
      letter-spacing: -0.025em !important;
      margin-top: 18px !important;
      margin-bottom: 0 !important;
    }
    .hero-grid-real h1 .hero-line{
      display: block;
      white-space: nowrap;
    }
    .hero-grid-real .lead{
      max-width: 640px;
      margin-top: 22px;
      font-size: clamp(15px, 1.08vw, 17px);
      line-height: 1.62;
    }
    .hero-actions{
      margin-top: 24px;
      gap: 14px;
    }
    .hero-actions .btn{
      padding: 15px 24px;
      min-height: 48px;
    }
    .hero-stats{
      margin-top: 30px;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 16px;
      max-width: 610px;
    }
    .hero-stats div{
      min-height: 82px;
      padding: 16px 18px;
      border-radius: 18px;
    }
    .hero-stats strong{
      font-size: clamp(28px, 2.45vw, 38px);
      line-height: 1.05;
    }
    .hero-stats span{
      font-size: 13px;
    }
    .hero-visual-real{
      --orbit-radius: 210px;
      min-height: 505px !important;
      max-width: 540px;
      width: 100%;
      justify-self: end;
      transform: translateX(0) !important;
      overflow: visible;
    }
    .hero-visual-real .sun-disc{
      width: 430px !important;
      height: 430px !important;
    }
    .hero-visual-real .sun-disc::before{
      inset: 76px !important;
    }
    .hero-visual-real .sun-disc::after{
      inset: 148px;
    }
    .hero-visual-real .hero-img-person{
      max-height: 495px !important;
      width: auto !important;
      max-width: 92%;
      object-fit: contain;
    }
    .hero-visual-real .floating-card{
      min-width: 128px;
      padding: 12px 18px;
      font-size: 14px;
      border-radius: 18px;
    }
    .about-real,
    .services.services-simple,
    .projects,
    .news,
    .register{
      padding-top: clamp(64px, 7vw, 88px);
      padding-bottom: clamp(64px, 7vw, 88px);
    }
    @media (max-width: 1200px){
      .container{
        max-width: min(1100px, calc(100vw - 40px));
      }
      .hero-grid-real{
        max-width: min(1100px, calc(100vw - 40px));
        grid-template-columns: minmax(0, .96fr) minmax(330px, .78fr) !important;
        gap: 28px !important;
      }
      .hero-grid-real h1{
        font-size: clamp(36px, 4vw, 56px) !important;
      }
      .hero-visual-real{
        --orbit-radius: 190px;
        min-height: 470px !important;
        max-width: 480px;
      }
      .hero-visual-real .sun-disc{
        width: 390px !important;
        height: 390px !important;
      }
      .hero-visual-real .hero-img-person{
        max-height: 455px !important;
      }
      .main-nav{
        gap: clamp(10px, 1.2vw, 18px);
      }
      .main-nav a{
        font-size: 12px;
      }
    }
    @media (max-width: 980px){
      .site-header{
        height: auto;
      }
      .site-header .nav-wrap{
        min-height: 70px;
      }
      .brand img{
        width: 136px !important;
      }
      .hero.section-sky{
        min-height: auto;
        padding-top: 54px;
        padding-bottom: 56px;
      }
      .hero-grid-real{
        grid-template-columns: 1fr !important;
        gap: 32px !important;
      }
      .hero-grid-real .hero-copy,
      .hero-grid-real h1,
      .hero-grid-real .lead,
      .hero-stats{
        max-width: 100% !important;
      }
      .hero-grid-real h1{
        font-size: clamp(34px, 7vw, 54px) !important;
      }
      .hero-visual-real{
        justify-self: center;
        min-height: 420px !important;
        max-width: 500px;
      }
    }
    @media (max-width: 720px){
      .container{
        max-width: calc(100vw - 28px);
      }
      .hero-grid-real h1 .hero-line{
        white-space: normal;
      }
      .hero-stats{
        grid-template-columns: 1fr;
      }
      .hero-visual-real{
        --orbit-radius: 132px;
        min-height: 330px !important;
      }
      .hero-visual-real .sun-disc{
        width: 270px !important;
        height: 270px !important;
      }
      .hero-visual-real .hero-img-person{
        max-height: 320px !important;
      }
    }


    /* Hero awards */
    .hero-awards{
      margin-top: 16px;
      max-width: 640px;
      padding: 16px 18px;
      border: 1px solid rgba(109,160,210,.28);
      border-radius: 18px;
      background: rgba(255,255,255,.68);
      box-shadow: 0 12px 28px rgba(35,68,112,.06);
      color: #203b6d;
    }
    .hero-awards strong{
      display: block;
      margin-bottom: 8px;
      font-size: 15px;
      font-weight: 800;
      color: #203b6d;
    }
    .hero-awards ul{
      margin: 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 6px;
    }
    .hero-awards li{
      position: relative;
      padding-left: 18px;
      font-size: clamp(13px, .94vw, 15px);
      line-height: 1.35;
      color: #58708c;
    }
    .hero-awards li::before{
      content: "";
      position: absolute;
      left: 0;
      top: .55em;
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: #6da0d2;
    }
    @media (max-width: 980px){
      .hero-awards{
        max-width: 100%;
      }
    }
    @media (max-width: 720px){
      .hero-awards{
        padding: 14px 16px;
        margin-top: 14px;
      }
    }


    /* Partner logo strip visually placed between hero and about */
    .hero.section-sky,
    .hero.section-sky::before,
    .hero.section-sky::after,
    .about-real,
    .about-real::before,
    .about-real::after{
      background-image: none !important;
    }
    .hero.section-sky{
      background-color: #eef6fc !important;
      position: relative;
      z-index: 1;
    }
    .about-real{
      background: #ffffff !important;
      position: relative;
      z-index: 1;
      padding-top: clamp(132px, 10vw, 154px);
    }
    .partner-band{
      position: relative;
      z-index: 6;
      background: linear-gradient(to bottom, #eef6fc 0 50%, #ffffff 50% 100%) !important;
      padding: 18px 0 12px;
      margin-top: -26px;
      margin-bottom: -78px;
      overflow: visible;
    }
    .partner-band::before,
    .partner-band::after{
      content: none !important;
      display: none !important;
    }
    .partner-panel{
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: repeat(4,minmax(0,1fr));
      align-items: center;
      gap: 28px;
      min-height: 118px;
      padding: 26px 34px;
      background: #ffffff;
      border: 1px solid #eef2f6;
      box-shadow: 0 18px 42px rgba(31,46,89,.08);
    }
    .partner-logo{
      display:flex;
      align-items:center;
      justify-content:center;
      min-width:0;
      min-height:56px;
      padding: 8px 6px;
    }
    .partner-logo img{
      display:block;
      width:auto;
      max-width:100%;
      height:52px;
      object-fit:contain;
      filter:none !important;
      opacity:1 !important;
    }
    .partner-logo.logo-marketrick img{
      height:50px;
    }
    .partner-logo.logo-happy img{
      height:48px;
    }
    @media(max-width:980px){
      .partner-band{margin-top:-18px;margin-bottom:-60px;padding:14px 0 10px;}
      .partner-panel{grid-template-columns:repeat(2,minmax(0,1fr));padding:22px 28px;gap:24px;}
      .about-real{padding-top: 122px;} 
    }
    @media(max-width:560px){
      .partner-band{margin-top:-10px;margin-bottom:-36px;padding:10px 0 8px;}
      .partner-panel{grid-template-columns:1fr;min-height:auto;gap:18px;padding:20px;}
      .partner-logo{justify-content:center;}
      .partner-logo img{height:42px;}
      .about-real{padding-top: 92px;}
    }


    /* Journey / milestone section */
    .journey{
      position: relative;
      padding: 104px 0 96px;
      background:
        radial-gradient(circle at 50% 0%, rgba(112, 171, 227, .08), transparent 36%),
        linear-gradient(180deg, #ffffff 0%, #f8fbfe 100%);
      overflow: hidden;
    }
    .journey::before,
    .journey::after{
      content: '';
      position: absolute;
      border-radius: 50%;
      pointer-events: none;
      z-index: 0;
    }
    .journey::before{
      width: 420px;
      height: 420px;
      left: -140px;
      top: 80px;
      background: radial-gradient(circle, rgba(106, 169, 230, .08), transparent 68%);
    }
    .journey::after{
      width: 360px;
      height: 360px;
      right: -120px;
      bottom: 10px;
      background: radial-gradient(circle, rgba(248, 190, 96, .08), transparent 68%);
    }
    .journey .container{ position: relative; z-index: 1; }
    .journey-head{
      text-align: center;
      max-width: 980px;
      margin: 0 auto 58px;
    }
    .journey-head .eyebrow{
      margin: 0 0 14px;
      color: #5f97c5;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .journey-head h2{
      margin: 0;
      color: #1f2e59;
      font-size: clamp(34px, 4vw, 60px);
      line-height: 1.08;
      letter-spacing: -.035em;
    }
    .journey-grid{
      position: relative;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 28px;
      margin-bottom: 70px;
    }
    .journey-grid::before{
      content: '';
      position: absolute;
      left: 16.66%;
      right: 16.66%;
      top: 80px;
      height: 2px;
      background: linear-gradient(90deg, rgba(109,167,215,.22), rgba(109,167,215,.55), rgba(109,167,215,.22));
      z-index: 0;
    }
    .journey-card{
      position: relative;
      z-index: 1;
      text-align: center;
      padding: 0 10px 12px;
      transition: transform .3s ease;
    }
    .journey-card:hover{
      transform: translateY(-6px);
    }
    .journey-icon-wrap{
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 184px;
      height: 184px;
      margin: 0 auto 28px;
      border-radius: 50%;
      background: linear-gradient(180deg, #ffffff 0%, #f6faff 100%);
      border: 8px solid rgba(128, 175, 224, .92);
      box-shadow: 0 24px 48px rgba(31,46,89,.08), inset 0 1px 0 rgba(255,255,255,.85);
      animation: journeyFloat 6s ease-in-out infinite;
    }
    .journey-card:nth-child(2) .journey-icon-wrap{ animation-delay: -.9s; }
    .journey-card:nth-child(3) .journey-icon-wrap{ animation-delay: -1.8s; }
    .journey-icon-wrap::before{
      content: '';
      position: absolute;
      inset: -16px;
      border-radius: 50%;
      border: 1px dashed rgba(111, 168, 217, .24);
      animation: spinSlow 20s linear infinite;
    }
    .journey-icon-wrap::after{
      content: '';
      position: absolute;
      inset: 14px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.98), rgba(244,248,254,.88));
      box-shadow: inset 0 -12px 30px rgba(111,168,217,.08);
      z-index: 0;
    }
    .journey-card svg{
      position: relative;
      z-index: 1;
      width: 66px;
      height: 66px;
      fill: none;
      stroke-width: 2.25;
      stroke-linecap: round;
      stroke-linejoin: round;
      filter: drop-shadow(0 6px 14px rgba(31,46,89,.08));
    }
    .journey-card.startup .journey-icon-wrap{ border-color: rgba(214, 165, 107, .92); }
    .journey-card.startup svg{ stroke: #cc9154; }
    .journey-card.positioning .journey-icon-wrap{ border-color: rgba(111, 168, 217, .92); }
    .journey-card.positioning svg{ stroke: #6b9ddd; }
    .journey-card.breakthrough .journey-icon-wrap{ border-color: rgba(112, 146, 227, .92); }
    .journey-card.breakthrough svg{ stroke: #6b89dc; }
    .journey-card h3{
      margin: 0 0 14px;
      color: #1f2e59;
      font-size: clamp(24px, 2.1vw, 30px);
      line-height: 1.2;
      letter-spacing: -.02em;
    }
    .journey-card p{
      margin: 0 auto;
      max-width: 390px;
      color: #6f778e;
      font-size: 15px;
      line-height: 1.65;
    }
    .journey-footer-line{
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      gap: 24px;
      align-items: center;
      max-width: 1320px;
      margin: 0 auto;
    }
    .journey-footer-line .line{
      height: 0;
      border-top: 3px dashed #9ea9b8;
      opacity: .75;
    }
    .journey-play{
      position: relative;
      width: 74px;
      height: 74px;
      border-radius: 50%;
      border: none;
      background: linear-gradient(135deg, #7aaee1, #5e96cf);
      box-shadow: 0 14px 32px rgba(94, 150, 207, .34);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: default;
    }
    .journey-play::before{
      content: '';
      position: absolute;
      inset: -14px;
      border-radius: 50%;
      border: 1px solid rgba(122, 174, 225, .28);
      animation: pulseRing 2.4s ease-out infinite;
    }
    .journey-play span{
      display: block;
      width: 0;
      height: 0;
      margin-left: 5px;
      border-top: 10px solid transparent;
      border-bottom: 10px solid transparent;
      border-left: 16px solid #fff;
    }
    @keyframes journeyFloat{
      0%,100%{ transform: translateY(0); }
      50%{ transform: translateY(-8px); }
    }
    @keyframes spinSlow{
      from{ transform: rotate(0deg); }
      to{ transform: rotate(360deg); }
    }
    @keyframes pulseRing{
      0%{ transform: scale(.9); opacity: .55; }
      70%{ transform: scale(1.18); opacity: 0; }
      100%{ transform: scale(1.18); opacity: 0; }
    }
    @media (max-width: 1100px){
      .journey-grid{ gap: 22px; }
      .journey-icon-wrap{ width: 164px; height: 164px; }
    }
    @media (max-width: 860px){
      .journey{ padding: 88px 0 84px; }
      .journey-grid{
        grid-template-columns: 1fr;
        gap: 44px;
        margin-bottom: 52px;
      }
      .journey-grid::before{ display: none; }
      .journey-card{ padding-bottom: 0; }
      .journey-card::after{
        content: '';
        position: absolute;
        left: 50%;
        bottom: -26px;
        transform: translateX(-50%);
        width: 2px;
        height: 24px;
        background: linear-gradient(180deg, rgba(109,167,215,.45), transparent);
      }
      .journey-card:last-child::after{ display: none; }
    }
    @media (max-width: 560px){
      .journey-head{ margin-bottom: 42px; }
      .journey-icon-wrap{ width: 144px; height: 144px; margin-bottom: 22px; border-width: 6px; }
      .journey-card h3{ font-size: 22px; }
      .journey-card p{ font-size: 14px; }
      .journey-footer-line{ gap: 14px; }
      .journey-play{ width: 62px; height: 62px; }
    }


    /* FAQ section */
    .faq-section{
      position: relative;
      padding: 96px 0 86px;
      background: #ffffff;
      overflow: hidden;
    }
    .faq-section::before{
      content: '';
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 78% 18%, rgba(109,160,210,.08), transparent 30%),
        radial-gradient(circle at 18% 78%, rgba(109,160,210,.06), transparent 28%);
      pointer-events: none;
    }
    .faq-grid{
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: minmax(0,.95fr) minmax(420px,1fr);
      gap: clamp(48px, 6vw, 88px);
      align-items: center;
    }
    .faq-copy .eyebrow{
      margin: 0 0 18px;
      color: #5f97c5;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .faq-copy h2{
      margin: 0 0 18px;
      color: #1f2e59;
      font-size: clamp(36px, 4vw, 58px);
      line-height: 1.08;
      letter-spacing: -.035em;
    }
    .faq-intro{
      margin: 0 0 28px;
      color: #8b94a5;
      font-size: 15px;
      line-height: 1.7;
    }
    .faq-list{
      display: grid;
      gap: 4px;
    }
    .faq-item{
      border-bottom: 1px solid rgba(91,151,202,.35);
      padding: 0;
      transition: border-color .22s ease;
    }
    .faq-item[open]{
      border-color: #6da0d2;
    }
    .faq-question{
      list-style: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      padding: 22px 0 20px;
      color: #1f2e59;
      font-size: clamp(17px, 1.25vw, 20px);
      font-weight: 800;
      line-height: 1.35;
    }
    .faq-question::-webkit-details-marker{ display: none; }
    .faq-question span{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 34px;
      height: 34px;
      flex: 0 0 auto;
      color: #1f2e59;
      border-radius: 50%;
      border: 1px solid rgba(109,160,210,.24);
      background: linear-gradient(180deg, #ffffff, #f4f9fe);
      box-shadow: 0 8px 18px rgba(31,46,89,.06);
      transition: transform .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease;
      font-size: 18px;
      line-height: 1;
    }
    .faq-item[open] .faq-question{
      color: #6a9fd0;
    }
    .faq-item[open] .faq-question span{
      transform: rotate(180deg);
      color: #6a9fd0;
    }
    .faq-answer{
      margin: 0;
      padding: 0 42px 24px 24px;
      color: #8b94a5;
      font-size: 15px;
      line-height: 1.7;
      animation: faqFade .22s ease both;
    }
    .faq-visual{
      position: relative;
      min-height: 560px;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .faq-image-card{
      position: relative;
      width: min(590px, 100%);
      aspect-ratio: 1 / 1;
      border-radius: 34% 66% 61% 39% / 38% 35% 65% 62%;
      overflow: hidden;
      z-index: 2;
      border: 3px solid rgba(31,46,89,.18);
      box-shadow: 0 22px 50px rgba(31,46,89,.12);
      animation: organicShape 9s ease-in-out infinite;
      background: #f2f6fa;
    }
    .faq-image-card img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      filter: none;
      opacity: 1;
      transform: scale(1.03);
      object-position: center;
      transition: transform .55s ease;
    }
    .faq-image-card:hover img{
      transform: scale(1.06);
    }
    .faq-corner{
      position: absolute;
      width: 110px;
      height: 110px;
      border: 22px solid #95c9df;
      z-index: 1;
      opacity: .88;
    }
    .faq-corner.top{
      top: 34px;
      left: 28px;
      border-right: 0;
      border-bottom: 0;
    }
    .faq-corner.bottom{
      right: 28px;
      bottom: 38px;
      border-left: 0;
      border-top: 0;
    }
    .faq-dot-pattern,
    .faq-dot-pattern::after{
      position: absolute;
      content: '';
      width: 86px;
      height: 86px;
      background-image: radial-gradient(#87909c 2px, transparent 3px);
      background-size: 16px 16px;
      opacity: .62;
      z-index: 3;
    }
    .faq-dot-pattern{
      top: 96px;
      left: 132px;
    }
    .faq-dot-pattern::after{
      left: -14px;
      top: 358px;
    }
    .faq-triangles{
      position: absolute;
      right: 50px;
      bottom: 118px;
      width: 40px;
      height: 100px;
      z-index: 3;
      opacity: .78;
      background:
        linear-gradient(60deg, transparent 50%, #7f8791 51%) left 0 top 0/22px 22px no-repeat,
        linear-gradient(60deg, transparent 50%, #7f8791 51%) left 0 top 26px/22px 22px no-repeat,
        linear-gradient(60deg, transparent 50%, #7f8791 51%) left 0 top 52px/22px 22px no-repeat,
        linear-gradient(60deg, transparent 50%, #7f8791 51%) left 0 top 78px/22px 22px no-repeat;
      -webkit-mask: linear-gradient(#000 0 0);
    }
    .faq-stats{
      position: relative;
      z-index: 1;
      margin-top: 64px;
      display: grid;
      grid-template-columns: repeat(4, minmax(0,1fr));
      gap: 30px;
      text-align: center;
    }
    .faq-stat{
      padding: 18px 14px 14px;
      border-radius: 24px;
      background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,250,253,.92));
      border: 1px solid rgba(109,160,210,.14);
      box-shadow: 0 18px 36px rgba(31,46,89,.06);
      transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    }
    .faq-stat:hover{
      transform: translateY(-6px);
      box-shadow: 0 24px 42px rgba(31,46,89,.10);
      border-color: rgba(109,160,210,.28);
    }
    .faq-stat-icon{
      width: 74px;
      height: 74px;
      margin: 0 auto 14px;
      color: #5f97c5;
      border-radius: 22px;
      display: grid;
      place-items: center;
      background: linear-gradient(145deg, #edf6ff, #ffffff);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 14px 24px rgba(109,160,210,.14);
      border: 1px solid rgba(109,160,210,.14);
      position: relative;
      overflow: hidden;
    }
    .faq-stat:nth-child(2) .faq-stat-icon{ color: #6e90d8; }
    .faq-stat:nth-child(3) .faq-stat-icon{ color: #5f9bbd; }
    .faq-stat:nth-child(4) .faq-stat-icon{ color: #77a2dc; }
    .faq-stat-icon::before{
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(circle at 28% 24%, rgba(255,255,255,.95), transparent 36%);
      pointer-events: none;
    }
    .faq-stat-icon svg{
      width: 40px;
      height: 40px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.9;
      stroke-linecap: round;
      stroke-linejoin: round;
      position: relative;
      z-index: 1;
    }
    .faq-stat-number{
      display: flex;
      justify-content: center;
      align-items: flex-start;
      gap: 7px;
      color: #1f2e59;
      font-weight: 900;
      font-size: clamp(32px, 3vw, 46px);
      line-height: 1;
      letter-spacing: -.04em;
    }
    .faq-stat-number .plus{
      color: #6da0d2;
      font-size: .46em;
      line-height: 1;
      padding-top: 2px;
    }
    .faq-stat p{
      margin: 10px 0 0;
      color: #9aa2ad;
      font-size: 15px;
    }
    @keyframes faqFade{
      from{ opacity: 0; transform: translateY(-4px); }
      to{ opacity: 1; transform: translateY(0); }
    }
    @keyframes organicShape{
      0%,100%{ border-radius: 34% 66% 61% 39% / 38% 35% 65% 62%; }
      50%{ border-radius: 44% 56% 49% 51% / 48% 43% 57% 52%; }
    }
    @media (max-width: 1050px){
      .faq-grid{ grid-template-columns: 1fr; }
      .faq-visual{ min-height: 520px; }
    }
    @media (max-width: 800px){
      .faq-section{ padding: 80px 0 72px; }
      .faq-stats{ grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; margin-top: 46px; }
    }
    @media (max-width: 560px){
      .faq-question{ font-size: 16px; padding: 18px 0; }
      .faq-answer{ padding: 0 0 20px; }
      .faq-visual{ min-height: 360px; }
      .faq-corner{ width: 76px; height: 76px; border-width: 15px; }
      .faq-dot-pattern{ display:none; }
      .faq-stats{ grid-template-columns: 1fr; }
    }



    /* Contact strip like reference image */
    .contact.contact-band{
      padding: 58px 0;
      background: #6fa6ce;
      overflow: hidden;
    }
    .contact-band .contact-info-row{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 24px;
      align-items: stretch;
    }
    .contact-band .contact-info-card{
      display: flex;
      align-items: center;
      gap: 18px;
      min-height: 92px;
      padding: 22px 28px;
      background: #ffffff;
      border: 0;
      border-radius: 0;
      box-shadow: none;
    }
    .contact-band .contact-icon{
      flex: 0 0 54px;
      width: 54px;
      height: 54px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      color: #ffffff;
      background: #5c98cf;
    }
    .contact-band .contact-icon svg{
      width: 28px;
      height: 28px;
      display: block;
    }
    .contact-band .contact-info-text{
      min-width: 0;
    }
    .contact-band .contact-info-text strong{
      display: block;
      margin: 0 0 4px;
      color: #162444;
      font-size: 16px;
      line-height: 1.35;
      font-weight: 900;
      text-transform: none;
      letter-spacing: 0;
    }
    .contact-band .contact-info-text a,
    .contact-band .contact-info-text span{
      display: block;
      margin: 0;
      color: #203052;
      font-size: 15px;
      line-height: 1.45;
      font-weight: 500;
      text-decoration: none;
    }
    .contact-band .contact-info-text a:hover{
      color: #5c98cf;
    }
    @media (max-width: 1080px){
      .contact-band .contact-info-row{
        grid-template-columns: 1fr;
      }
    }
    @media (max-width: 720px){
      .contact.contact-band{
        padding: 38px 0;
      }
      .contact-band .contact-info-card{
        align-items: flex-start;
        padding: 20px;
      }
      .contact-band .contact-icon{
        flex-basis: 48px;
        width: 48px;
        height: 48px;
      }
    }


    /* Footer embedded map */
    .site-footer .footer-map{
      margin-top: 34px;
      border-radius: 22px;
      overflow: hidden;
      background: #ffffff;
      box-shadow: 0 18px 42px rgba(31,46,89,.10);
      border: 1px solid rgba(109,160,210,.18);
    }
    .site-footer .footer-map iframe{
      display: block;
      width: 100%;
      height: 330px;
      border: 0;
    }
    @media (max-width: 720px){
      .site-footer .footer-map{
        margin-top: 24px;
        border-radius: 16px;
      }
      .site-footer .footer-map iframe{
        height: 260px;
      }
    }

  

    /* Premium FAQ stats + luxury project section */
    .faq-stats{
      gap: 26px;
      align-items: stretch;
    }
    .faq-stat{
      position: relative;
      padding: 24px 18px 18px;
      border-radius: 28px;
      background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.94));
      border: 1px solid rgba(31,46,89,.08);
      box-shadow: 0 24px 42px rgba(20,43,83,.07), inset 0 1px 0 rgba(255,255,255,.96);
      overflow: hidden;
    }
    .faq-stat::before{
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(255,255,255,.72), transparent 48%);
      pointer-events: none;
    }
    .faq-stat::after{
      content: '';
      position: absolute;
      top: 0;
      left: 18px;
      right: 18px;
      height: 4px;
      border-radius: 999px;
      background: linear-gradient(90deg, rgba(226,188,106,.95), rgba(109,160,210,.95));
      opacity: .82;
    }
    .faq-stat:hover{
      transform: translateY(-8px);
      box-shadow: 0 30px 54px rgba(20,43,83,.11);
      border-color: rgba(109,160,210,.24);
    }
    .faq-stat-icon{
      width: 88px;
      height: 88px;
      margin: 0 auto 18px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, #ffffff 0%, #f6faff 62%, #edf3fb 100%);
      box-shadow: 0 14px 30px rgba(20,43,83,.08), inset 0 1px 0 rgba(255,255,255,.98);
      border: 1px solid rgba(109,160,210,.18);
      overflow: visible;
    }
    .faq-stat-icon::after{
      content: '';
      position: absolute;
      inset: -10px;
      border-radius: 50%;
      border: 1px solid rgba(226,188,106,.28);
      box-shadow: 0 0 0 1px rgba(109,160,210,.08) inset;
      pointer-events: none;
    }
    .faq-stat:nth-child(1) .faq-stat-icon,
    .faq-stat:nth-child(4) .faq-stat-icon{
      color: #d2a45a;
    }
    .faq-stat:nth-child(2) .faq-stat-icon{
      color: #6e90d8;
    }
    .faq-stat:nth-child(3) .faq-stat-icon{
      color: #6da0d2;
    }
    .faq-stat-icon svg{
      width: 44px;
      height: 44px;
      stroke-width: 1.8;
    }
    .faq-stat-number{
      position: relative;
      z-index: 1;
      font-size: clamp(36px, 3vw, 48px);
    }
    .faq-stat p{
      position: relative;
      z-index: 1;
      margin-top: 12px;
      color: #8d95a4;
      font-size: 15px;
      font-weight: 600;
    }

    .projects{
      position: relative;
      background:
        radial-gradient(circle at 15% 15%, rgba(233, 196, 117, .14), transparent 24%),
        radial-gradient(circle at 88% 85%, rgba(109, 160, 210, .18), transparent 30%),
        linear-gradient(135deg, #14233f 0%, #20385d 52%, #2f5d92 100%);
      overflow: hidden;
      color: #ffffff;
    }
    .projects::before,
    .projects::after{
      content: '';
      position: absolute;
      border-radius: 50%;
      pointer-events: none;
      filter: blur(10px);
    }
    .projects::before{
      width: 460px;
      height: 460px;
      left: -180px;
      top: 40px;
      background: radial-gradient(circle, rgba(255,255,255,.12), transparent 62%);
    }
    .projects::after{
      width: 380px;
      height: 380px;
      right: -120px;
      bottom: -80px;
      background: radial-gradient(circle, rgba(232,191,94,.18), transparent 66%);
    }
    .projects .container{
      position: relative;
      z-index: 1;
    }
    .projects .section-head{
      max-width: 920px;
      margin: 0 auto 56px;
      text-align: center;
    }
    .projects .section-head .eyebrow{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      padding: 10px 18px;
      border-radius: 999px;
      background: rgba(255,255,255,.09);
      border: 1px solid rgba(255,255,255,.14);
      box-shadow: inset 0 1px 0 rgba(255,255,255,.12);
      color: #f0ca73;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .projects .section-head .eyebrow::before{
      content: '';
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, #ffe9ae, #d8a43e);
      box-shadow: 0 0 14px rgba(233,196,117,.45);
    }
    .projects .section-head h2{
      margin: 18px 0 16px;
      color: #ffffff;
      font-size: clamp(38px, 4.4vw, 64px);
      line-height: 1.05;
      letter-spacing: -.045em;
      text-shadow: 0 10px 22px rgba(7,14,28,.2);
    }
    .projects .section-head p{
      margin: 0 auto;
      max-width: 780px;
      color: rgba(237,242,251,.76);
      font-size: 17px;
      line-height: 1.75;
    }
    .project-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 28px;
    }
    .project-card{
      position: relative;
      display: flex;
      flex-direction: column;
      min-height: 560px;
      overflow: hidden;
      border-radius: 32px;
      background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.04));
      border: 1px solid rgba(255,255,255,.12);
      box-shadow: 0 28px 60px rgba(8,18,35,.26);
      backdrop-filter: blur(10px);
      transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
    }
    .project-card:hover{
      transform: translateY(-10px);
      box-shadow: 0 36px 74px rgba(8,18,35,.34);
      border-color: rgba(240,202,115,.34);
    }
    .project-media{
      position: relative;
      min-height: 250px;
      background-size: cover;
      background-position: center;
      overflow: hidden;
    }
    .project-media::before{
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(11,22,42,.08) 0%, rgba(11,22,42,.36) 100%);
    }
    .project-media::after{
      content: '';
      position: absolute;
      inset: auto 0 0;
      height: 120px;
      background: linear-gradient(180deg, rgba(32,56,93,0) 0%, rgba(32,56,93,.85) 100%);
    }
    .project-badge{
      position: absolute;
      left: 22px;
      top: 20px;
      z-index: 1;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 9px 14px;
      border-radius: 999px;
      background: rgba(13,25,47,.64);
      color: #f1cb76;
      border: 1px solid rgba(255,255,255,.12);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .08em;
      text-transform: uppercase;
      backdrop-filter: blur(8px);
    }
    .project-badge::before{
      content: '';
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: linear-gradient(135deg, #f6dda0, #d09e3d);
      box-shadow: 0 0 10px rgba(240,202,115,.4);
    }
    .project-content{
      position: relative;
      flex: 1;
      display: flex;
      flex-direction: column;
      padding: 26px 24px 26px;
      background: linear-gradient(180deg, rgba(55,88,132,.94), rgba(32,56,93,.98));
    }
    .project-content small{
      display: inline-block;
      margin-bottom: 10px;
      color: #f0ca73;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    .project-content h3{
      margin: 0 0 12px;
      color: #ffffff;
      font-size: clamp(27px, 2.1vw, 36px);
      line-height: 1.05;
      letter-spacing: -.035em;
    }
    .project-content p{
      margin: 0;
      color: rgba(237,242,251,.84);
      font-size: 15px;
      line-height: 1.75;
    }
    .project-tags{
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 18px;
    }
    .project-tags span{
      padding: 7px 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.10);
      color: rgba(255,255,255,.86);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: .02em;
    }
    .project-link{
      margin-top: auto;
      padding-top: 20px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: #ffffff;
      text-decoration: none;
      font-size: 15px;
      font-weight: 700;
    }
    .project-link span{
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      background: rgba(240,202,115,.18);
      color: #f0ca73;
      transition: transform .25s ease, background .25s ease;
    }
    .project-card:hover .project-link span{
      transform: translate(3px, -2px);
      background: rgba(240,202,115,.28);
    }
    .projects-cta{
      margin: 38px 0 0;
      text-align: center;
    }
    .projects .btn.btn-ghost{
      min-width: 220px;
      border: 1px solid rgba(255,255,255,.16);
      background: #ffffff;
      color: #20385d;
      box-shadow: 0 18px 34px rgba(8,18,35,.18);
    }
    .projects .btn.btn-ghost:hover{
      transform: translateY(-3px);
      background: linear-gradient(135deg, #fffaf1, #ffffff);
      color: #20385d;
      border-color: rgba(240,202,115,.4);
    }
    @media (max-width: 1100px){
      .project-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
    }
    @media (max-width: 760px){
      .projects .section-head{ margin-bottom: 38px; }
      .projects .section-head p{ font-size: 15px; }
      .project-grid{ grid-template-columns: 1fr; }
      .project-card{ min-height: 500px; }
      .project-content h3{ font-size: 28px; }
    }

  

    /* Final polish: larger premium project imagery */
    .projects{
      padding-top: clamp(92px, 8vw, 128px) !important;
      padding-bottom: clamp(96px, 8vw, 132px) !important;
    }
    .projects .section-head{
      margin-bottom: 64px !important;
    }
    .project-grid{
      gap: 34px !important;
      align-items: stretch;
    }
    .project-card{
      min-height: 700px !important;
      border-radius: 34px !important;
      background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.045)) !important;
      box-shadow: 0 34px 78px rgba(4,13,29,.32) !important;
    }
    .project-media{
      min-height: 395px !important;
      flex: 0 0 395px !important;
      background-size: cover !important;
      background-position: center !important;
      transform: translateZ(0);
      transition: transform .55s ease, filter .55s ease;
    }
    .project-card:hover .project-media{
      transform: scale(1.035);
      filter: saturate(1.06) contrast(1.03);
    }
    .project-media::before{
      background:
        linear-gradient(180deg, rgba(8,17,34,.06) 0%, rgba(8,17,34,.08) 42%, rgba(8,17,34,.52) 100%) !important;
    }
    .project-media::after{
      height: 150px !important;
      background: linear-gradient(180deg, rgba(32,56,93,0) 0%, rgba(32,56,93,.92) 100%) !important;
    }
    .project-badge{
      top: 24px !important;
      left: 24px !important;
      padding: 10px 16px !important;
      background: rgba(16, 27, 49, .76) !important;
      box-shadow: 0 12px 26px rgba(4,13,29,.22);
    }
    .project-content{
      padding: 30px 28px 30px !important;
      min-height: 305px;
      background: linear-gradient(180deg, rgba(55,88,132,.96), rgba(29,50,84,.99)) !important;
    }
    .project-content h3{
      max-width: 95%;
      font-size: clamp(28px, 1.9vw, 34px) !important;
      line-height: 1.08 !important;
      letter-spacing: -.03em !important;
    }
    .project-content p{
      font-size: 15.5px !important;
      line-height: 1.68 !important;
      color: rgba(245,248,252,.86) !important;
    }
    .project-tags{
      margin-top: 20px !important;
    }
    .project-tags span{
      background: rgba(255,255,255,.10) !important;
      border-color: rgba(255,255,255,.15) !important;
    }
    .project-link{
      padding-top: 22px !important;
    }
    @media (max-width: 1180px){
      .project-card{ min-height: 650px !important; }
      .project-media{ min-height: 340px !important; flex-basis: 340px !important; }
    }
    @media (max-width: 760px){
      .project-card{ min-height: 580px !important; }
      .project-media{ min-height: 310px !important; flex-basis: 310px !important; }
      .project-content{ min-height: auto; }
    }


    /* Final project proportion fix: wider cards, shorter height */
    .projects .container{
      max-width: min(1520px, calc(100vw - 72px));
    }
    .projects .section-head{
      margin-bottom: 44px !important;
    }
    .project-grid{
      grid-template-columns: repeat(3, minmax(360px, 1fr)) !important;
      gap: 24px !important;
      align-items: stretch;
    }
    .project-card{
      min-height: 0 !important;
      height: auto !important;
      border-radius: 28px !important;
      box-shadow: 0 26px 58px rgba(4,13,29,.28) !important;
    }
    .project-media{
      min-height: 0 !important;
      height: clamp(210px, 16vw, 260px) !important;
      flex: 0 0 auto !important;
    }
    .project-content{
      padding: 22px 24px 24px !important;
      min-height: 250px !important;
    }
    .project-content h3{
      font-size: clamp(24px, 1.75vw, 31px) !important;
      line-height: 1.08 !important;
      margin-bottom: 10px !important;
    }
    .project-content p{
      font-size: 14.5px !important;
      line-height: 1.62 !important;
    }
    .project-tags{
      margin-top: 14px !important;
      gap: 8px !important;
    }
    .project-tags span{
      padding: 6px 10px !important;
    }
    .project-link{
      padding-top: 14px !important;
    }
    @media (max-width: 1280px){
      .projects .container{ max-width: calc(100vw - 48px); }
      .project-grid{ grid-template-columns: repeat(3, minmax(280px, 1fr)) !important; gap: 20px !important; }
      .project-media{ height: 215px !important; }
      .project-content{ min-height: 245px !important; padding: 20px 20px 22px !important; }
      .project-content h3{ font-size: 25px !important; }
    }
    @media (max-width: 1050px){
      .project-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
      .project-media{ height: 230px !important; }
    }
    @media (max-width: 760px){
      .projects .container{ max-width: calc(100vw - 28px); }
      .project-grid{ grid-template-columns: 1fr !important; }
      .project-media{ height: 220px !important; }
      .project-content{ min-height: 0 !important; }
    }

  

    /* Final project overlay refinement: larger horizontal imagery, text inside image */
    .projects .container{
      max-width: min(1760px, calc(100vw - 32px)) !important;
    }
    .project-grid{
      grid-template-columns: repeat(3, minmax(450px, 1fr)) !important;
      gap: 18px !important;
    }
    .project-card{
      display: block !important;
      position: relative !important;
      min-height: 0 !important;
      height: clamp(470px, 31vw, 520px) !important;
      border-radius: 30px !important;
      overflow: hidden !important;
      background: #1d3152 !important;
      border: 1px solid rgba(255,255,255,.12) !important;
      box-shadow: 0 26px 60px rgba(4,13,29,.30) !important;
    }
    .project-media{
      position: absolute !important;
      inset: 0 !important;
      min-height: 100% !important;
      height: 100% !important;
      width: 100% !important;
      background-size: cover !important;
      background-position: center center !important;
      transform: none !important;
      transition: transform .55s ease, filter .55s ease !important;
    }
    .project-card:hover .project-media{
      transform: scale(1.045) !important;
      filter: saturate(1.05) contrast(1.02) !important;
    }
    .project-media::before{
      background: linear-gradient(180deg, rgba(9,18,33,.06) 0%, rgba(10,20,36,.14) 24%, rgba(16,28,48,.52) 58%, rgba(17,29,49,.88) 100%) !important;
    }
    .project-media::after{
      height: 55% !important;
      background: linear-gradient(180deg, rgba(20,35,63,0) 0%, rgba(20,35,63,.08) 18%, rgba(22,39,69,.55) 50%, rgba(21,37,65,.96) 100%) !important;
    }
    .project-badge{
      top: 24px !important;
      left: 24px !important;
      z-index: 3 !important;
    }
    .project-content{
      position: absolute !important;
      left: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      z-index: 2 !important;
      min-height: auto !important;
      padding: 22px 24px 22px !important;
      background: linear-gradient(180deg, rgba(31,53,87,0) 0%, rgba(31,53,87,.18) 10%, rgba(34,58,95,.74) 34%, rgba(29,49,82,.96) 100%) !important;
      backdrop-filter: blur(1px);
    }
    .project-content small{
      margin-bottom: 8px !important;
      font-size: 12px !important;
      color: #f0ca73 !important;
    }
    .project-content h3{
      max-width: 88% !important;
      margin: 0 0 10px !important;
      font-size: clamp(24px, 1.95vw, 34px) !important;
      line-height: 1.02 !important;
      letter-spacing: -.04em !important;
      color: #ffffff !important;
      text-shadow: 0 8px 18px rgba(8,18,35,.24);
    }
    .project-content p{
      max-width: 95% !important;
      font-size: 14px !important;
      line-height: 1.55 !important;
      color: rgba(245,248,252,.90) !important;
      text-shadow: 0 4px 10px rgba(8,18,35,.16);
    }
    .project-tags{
      margin-top: 14px !important;
      gap: 8px !important;
    }
    .project-tags span{
      background: rgba(255,255,255,.12) !important;
      border-color: rgba(255,255,255,.14) !important;
      color: #ffffff !important;
      backdrop-filter: blur(8px);
    }
    .project-link{
      padding-top: 14px !important;
      color: #ffffff !important;
    }
    .project-link span{
      background: rgba(240,202,115,.22) !important;
    }
    @media (max-width: 1380px){
      .projects .container{ max-width: calc(100vw - 24px) !important; }
      .project-grid{ grid-template-columns: repeat(3, minmax(360px, 1fr)) !important; gap: 16px !important; }
      .project-card{ height: 500px !important; }
      .project-content h3{ font-size: 30px !important; }
    }
    @media (max-width: 1100px){
      .project-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
      .project-card{ height: 500px !important; }
    }
    @media (max-width: 760px){
      .projects .container{ max-width: calc(100vw - 28px) !important; }
      .project-grid{ grid-template-columns: 1fr !important; }
      .project-card{ height: 500px !important; }
      .project-content{ padding: 22px 20px 20px !important; }
      .project-content h3{ font-size: 28px !important; max-width: 100% !important; }
      .project-content p{ max-width: 100% !important; }
    }


    /* DTA-like journey icons: clean premium line icons */
    .journey-card svg.dta-journey-icon{
      width: 72px !important;
      height: 72px !important;
      stroke-width: 2.35 !important;
      stroke-linecap: round !important;
      stroke-linejoin: round !important;
      fill: none !important;
      filter: drop-shadow(0 8px 16px rgba(31,46,89,.09)) !important;
    }
    .journey-card.startup svg.dta-journey-icon{ stroke:#c88b47 !important; }
    .journey-card.positioning svg.dta-journey-icon{ stroke:#6d9ed8 !important; }
    .journey-card.breakthrough svg.dta-journey-icon{ stroke:#7389dc !important; }
    .journey-icon-wrap{
      background:
        radial-gradient(circle at 50% 48%, #ffffff 0%, #f7fbff 58%, #eef5fb 100%) !important;
      box-shadow:
        0 26px 50px rgba(31,46,89,.08),
        inset 0 1px 0 rgba(255,255,255,.95),
        inset 0 -16px 36px rgba(111,168,217,.07) !important;
    }

  

    /* Exact homepage portrait image fix */
    .hero-visual-real .hero-img-person{
      display:block;
      position:absolute;
      left:50%;
      bottom:0;
      transform:translateX(-50%);
      max-height:520px !important;
      max-width:94% !important;
      width:auto !important;
      object-fit:contain !important;
      object-position:bottom center !important;
      filter:drop-shadow(0 28px 38px rgba(23,45,78,.16));
    }
    @media (max-width:1200px){
      .hero-visual-real .hero-img-person{max-height:470px !important;}
    }
    @media (max-width:720px){
      .hero-visual-real .hero-img-person{max-height:330px !important;}
    }

  