:root{--navy:#061d4b;--blue:#0874bb;--sky:#62a8d6;--ice:#edf7fc;--white:#fff;--text:#12213a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff}a{text-decoration:none;color:inherit}.nav{position:fixed;z-index:50;top:0;left:0;right:0;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;background:rgba(4,25,67,.9);backdrop-filter:blur(14px);color:#fff;border-bottom:1px solid #ffffff22}.brand{font-size:22px;font-weight:600;letter-spacing:1.5px}.navlinks{display:flex;gap:24px;font-size:13px;font-weight:500}.hero{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:linear-gradient(135deg,#061d4b,#0874bb 65%,#69add8);color:#fff;padding-top:76px;overflow:hidden}.heroText{padding:11vh 6vw;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:13px;letter-spacing:3px;text-transform:uppercase;opacity:.75}.hero h1{font-size:clamp(58px,8vw,128px);line-height:.82;margin:22px 0 28px;letter-spacing:-5px}.hero p{font-size:18px;line-height:1.7;max-width:680px;color:#dbefff}.actions{display:flex;gap:14px;margin-top:28px}.btn{padding:14px 20px;border-radius:999px;background:#fff;color:#06366c;font-weight:800;font-size:13px}.btn.alt{background:transparent;color:#fff;border:1px solid #ffffff66}.heroSlider{position:relative;min-height:640px;overflow:hidden;background:#061d4b}.heroSlide{position:absolute;inset:0;opacity:0;transform:scale(1.01);transition:opacity 1.05s cubic-bezier(.22,1,.36,1),transform 6.5s ease}.heroSlide.active{opacity:1;transform:scale(1.01);z-index:1}.heroSlide img{width:100%;height:100%;object-fit:cover;display:block}.heroSlider:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;}.heroSliderNav{position:absolute;right:28px;bottom:28px;z-index:4;display:flex;gap:10px}.heroSliderBtn{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:rgba(4,25,67,.32);backdrop-filter:blur(8px);color:#fff;font-size:24px;cursor:pointer;transition:transform .25s,background .25s,border-color .25s}.heroSliderBtn:hover{transform:translateY(-2px);background:rgba(8,116,187,.8);border-color:#fff}.heroSliderDots{position:absolute;left:50%;bottom:32px;transform:translateX(-50%);z-index:4;display:flex;gap:8px}.heroSliderDot{width:8px;height:8px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.45);cursor:pointer;transition:width .3s,background .3s}.heroSliderDot.active{width:28px;background:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d7e8f3}.stat{background:#fff;padding:36px 5vw}.stat b{display:block;font-size:34px;color:#0874bb}.stat span{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#60758b}.section{padding:100px 6vw}.section.dark{background:#061d4b;color:#fff}.kicker{color:#0874bb;font-weight:900;font-size:12px;letter-spacing:2px;text-transform:uppercase}.dark .kicker{color:#7cc8f2}.section h2{font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-2px;margin:14px 0 34px}.aboutGrid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.aboutGrid img,.feature img{width:100%;border-radius:0px;box-shadow:0 24px 60px #001d3d22}
.asphalt-video{
  display:block;
  width:100%;
  height:auto;
  min-height:230px;
  object-fit:cover;
  padding:30px;
  box-sizing:border-box;
  border-radius:20px;
  background:#0a2b62;
  border:1px solid #1c4d86;
  box-shadow:0 24px 60px #001d3d22;
}.copy{font-size:16px;line-height:1.8;color:#52677c}.dark .copy{color:#c8d8e7}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:30px;border-radius:20px;background:#f2f8fc;border:1px solid #dbeaf4;min-height:230px}.card .num{font-size:46px;color:#8fc5e6;font-weight:900}.card h3{font-size:20px;margin:18px 0 12px}.card p{font-size:14px;line-height:1.7;color:#5d7184}.dark .card{background:#0a2b62;border-color:#1c4d86}.dark .card p{color:#c9d9e8}.sectors{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.sector{padding:28px 20px;background:#fff;border-radius:18px;border:1px solid #dbeaf4}.sector i{font-style:normal;font-size:28px}.sector h3{font-size:16px}.sector p{font-size:13px;line-height:1.6;color:#66798c}.feature{display:grid;grid-template-columns:1fr 1fr;gap:4vw;align-items:center;margin-top:0px}.feature:nth-child(even) img{order:2}.feature h3{font-size:32px;margin:10px 0}.pill{display:inline-block;padding:7px 11px;border-radius:999px;background:#e7f4fb;color:#0874bb;font-size:11px;font-weight:800}.mission{background:linear-gradient(135deg,#eef8fd,#d8eef9)}.contact{padding:100px 6vw;background:#0874bb;color:#fff;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.contact h2{font-size:44px;margin:0 0 10px}.contact p{margin:0;color:#dceffc}.footer{padding:28px 6vw;background:#04152f;color:#9bb2c7;display:flex;justify-content:space-between;font-size:12px}@media(max-width:900px){.navlinks{display:none}.hero{grid-template-columns:1fr}.heroSlider{min-height:48vh}.heroText{padding:70px 6vw}.stats{grid-template-columns:1fr 1fr}.aboutGrid,.feature{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.sectors{grid-template-columns:1fr 1fr}.feature:nth-child(even) img{order:0}.contact{grid-template-columns:1fr}.hero h1{letter-spacing:-3px}
  /* Mobile: keep the Company Profile download card at the very bottom of the contact section, after email/phone. */
  .contact{display:flex;flex-direction:column;align-items:stretch}
  .contact > div:first-child{display:contents}
  .contact > div:first-child h2{order:1}
  .contact > div:first-child p{order:2}
  .contact > div:first-child .profile-download{order:4}
  .contact > div:nth-child(2){order:3}
  .contact > div:first-child .profile-download{width:100%;margin-top:24px}
}@media(max-width:520px){.sectors{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat{padding:24px}.hero h1{font-size:56px}}

/* Company Profile / Catalog Download */
.profile-download{
  margin-top:30px;
  display:flex;
  align-items:center;
  gap:16px;
  width:min(665px,100%);
  padding:18px 20px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:18px;
  background:rgba(4,25,67,.16);
  box-shadow:0 14px 35px rgba(0,20,55,.12);
  transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.profile-download:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.5);
  box-shadow:0 18px 42px rgba(0,20,55,.2);
}
.profile-download-icon{
  flex:0 0 54px;
  width:54px;height:54px;
  display:grid;place-items:center;
  border-radius:14px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
}
.profile-download-icon svg{width:28px;height:28px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.profile-download-copy{min-width:0;flex:1}
.profile-download-label{display:block;margin-bottom:5px;font-size:11px;font-weight:900;letter-spacing:2px;text-transform:uppercase;color:#bfe6ff}
.profile-download-title{display:block;font-size:18px;font-weight:800;line-height:1.25;color:#fff}
.profile-download-meta{display:block;margin-top:4px;font-size:12px;color:#dceffc}
.profile-download-action{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:999px;background:#fff;color:#06366c;font-size:12px;font-weight:900;white-space:nowrap}
.profile-download-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:520px){
  .profile-download{align-items:flex-start;padding:16px;gap:12px;margin-top:24px}
  .profile-download-icon{flex-basis:48px;width:48px;height:48px}
  .profile-download-icon svg{width:24px;height:24px}
  .profile-download-title{font-size:15px}
  .profile-download-meta{font-size:11px}
  .profile-download-action{padding:10px 12px;font-size:11px}
}

.mobileToggle{display:none;width:48px;height:48px;border:0;background:transparent;cursor:pointer;position:relative;z-index:102}.mobileToggle span{position:absolute;left:10px;width:28px;height:2px;background:#fff;border-radius:4px;transition:transform .35s,top .35s,opacity .25s}.mobileToggle span:nth-child(1){top:15px}.mobileToggle span:nth-child(2){top:23px}.mobileToggle span:nth-child(3){top:31px}.mobileToggle.active span:nth-child(1){top:23px;transform:rotate(45deg)}.mobileToggle.active span:nth-child(2){opacity:0}.mobileToggle.active span:nth-child(3){top:23px;transform:rotate(-45deg)}.mobileMenu{display:none}@media(max-width:900px){.mobileToggle{display:block}.mobileMenu{display:flex;position:fixed;inset:0;z-index:100;flex-direction:column;justify-content:center;align-items:center;padding:90px 24px 35px;background:linear-gradient(145deg,#04152f,#061d4b 45%,#0874bb);color:#fff;opacity:0;visibility:hidden;transform:scale(1.01);transition:opacity .35s,visibility .35s,transform .35s}.mobileMenu.open{opacity:1;visibility:visible;transform:scale(1)}.mobileMenu a{font-size:clamp(28px,8vw,46px);font-weight:900;line-height:1.4;letter-spacing:-1px;opacity:.82;transition:.2s}.mobileMenu a:hover,.mobileMenu a:active{opacity:1;transform:translateX(5px)}.mobileContact{width:min(420px,88vw);margin-top:26px;padding-top:22px;border-top:1px solid #ffffff30;text-align:center;font-size:13px;line-height:1.9;color:#d6efff}body.menuOpen{overflow:hidden}}
#shinalScrollProgress{
  position:fixed;
  left:0;
  top:72px;
  width:0%;
  height:4px;
  z-index:99999;
  pointer-events:none;
  background:#1597e5;
  box-shadow:0 0 10px rgba(21,151,229,.7);
  transition:width .08s linear;
}
@media(max-width:900px){
  #shinalScrollProgress{top:68px;height:3px;}
}
@media (min-width:901px){
  .navlinks{position:relative}
  .navlinks a{
    position:relative;
    z-index:2;
    border:0 !important;
    border-radius:0 !important;
    padding:10px 0 14px !important;
    background:transparent !important;
  }
  #shinalActiveLine{
    position:absolute;
    left:0;
    bottom:5px;
    height:2px;
    width:0;
    border-radius:999px;
    background:linear-gradient(90deg,rgba(21,151,229,.15),#1597e5 32%,#62c4ff 100%);
    box-shadow:0 0 8px rgba(21,151,229,.45);
    opacity:0;
    pointer-events:none;
    transform:translateX(0);
    transition:
      transform .46s cubic-bezier(.22,1,.36,1),
      width .38s cubic-bezier(.22,1,.36,1),
      opacity .2s ease;
    z-index:1;
  }
  .navlinks a.active{color:#fff}
}
@media (max-width:900px){
  #shinalScrollProgress{display:none !important;}
  .mobileMenu .mobileContact{display:none !important;}
  .mobileCopyright{position:absolute;left:24px;right:24px;bottom:28px;padding-top:18px;border-top:1px solid #ffffff30;text-align:center;font-size:12px;letter-spacing:.4px;color:#d6efff;}
}
@media(max-width:900px){
  .mobileCloseBtn{
    position:absolute;
    top:22px;
    left:22px;
    width:48px;
    height:48px;
    border:1px solid rgba(255,255,255,.35);
    border-radius:12px;
    background:rgba(255,255,255,.06);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    cursor:pointer;
    z-index:103;
    transition:background .25s ease,border-color .25s ease,transform .25s ease;
  }
  .mobileCloseBtn::before,.mobileCloseBtn::after{
    content:"";
    position:absolute;
    top:22px;
    left:11px;
    width:26px;
    height:2px;
    border-radius:10px;
    background:#fff;
  }
  .mobileCloseBtn::before{transform:rotate(45deg)}
  .mobileCloseBtn::after{transform:rotate(-45deg)}
  .mobileCloseBtn:active{transform:scale(.94)}
  .mobileCloseBtn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.6)}
}
@media(min-width:901px){.mobileCloseBtn{display:none!important}}
/* Stripe-inspired cursor-following light for the Group Companies cards */
#companies .cards{
  --mouse-x: 50%;
  --mouse-y: 50%;
}
#companies .card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
#companies .card::before{
  content:"";
  position:absolute;
  inset:0;
  padding:1px;
  border-radius:inherit;
  background:
    radial-gradient(
      260px circle at var(--card-x,50%) var(--card-y,50%),
      rgba(87,190,255,.95),
      rgba(34,147,230,.42) 28%,
      rgba(34,147,230,.08) 55%,
      transparent 72%
    );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:0;
  pointer-events:none;
  z-index:3;
  transition:opacity .22s ease;
}
#companies .card::after{
  content:"";
  position:absolute;
  width:430px;
  height:430px;
  left:var(--card-x,50%);
  top:var(--card-y,50%);
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(27,151,230,.12) 0%,rgba(27,151,230,.055) 34%,transparent 68%);
  opacity:0;
  pointer-events:none;
  z-index:-1;
  transition:opacity .22s ease;
}
#companies .cards.flashlight-active .card::before,
#companies .card:hover::after{
  opacity:1;
}
#companies .card{
  transition:transform .28s cubic-bezier(.22,1,.36,1),background-color .28s ease;
}
#companies .card:hover{
  transform:translateY(-3px);
}
@media (hover:none),(max-width:900px){
  #companies .card::before,#companies .card::after{display:none}
  #companies .card:hover{transform:none}
}
#companies .shinal-wipe-heading{
  position:relative;
  display:table;
  z-index:0;
  color:#fff;
  isolation:isolate;
  cursor:default;
}
#companies .shinal-wipe-heading::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-10px;
  top:-4px;
  width:calc(100% + 20px);
  height:calc(100% + 8px);
  background:#fff;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .62s cubic-bezier(.22,1,.36,1);
  will-change:transform;
}
#companies .shinal-wipe-heading:hover{
  color:#08285b;
  transition:color .18s ease .18s;
}
#companies .shinal-wipe-heading:hover::before{
  transform:scaleX(1);
}
#companies .shinal-wipe-heading:not(:hover){
  transition:color .18s ease;
}
@media(max-width:900px),(hover:none){
  #companies .shinal-wipe-heading::before{display:none}
  #companies .shinal-wipe-heading:hover{color:#fff}
}
.shinal-hero-wipe{
  position:relative;
  display:table;
  z-index:0;
  color:#fff;
  isolation:isolate;
  cursor:default;
}
.shinal-hero-wipe::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-8px;
  top:-3px;
  width:calc(100% + 16px);
  height:calc(100% + 6px);
  background:#fff;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .68s cubic-bezier(.22,1,.36,1);
  will-change:transform;
}
.shinal-hero-wipe:hover{
  color:#08285b;
  transition:color .18s ease .20s;
}
.shinal-hero-wipe:hover::before{
  transform:scaleX(1);
}
.shinal-hero-wipe:not(:hover){
  transition:color .18s ease;
}
@media(max-width:900px),(hover:none){
  .shinal-hero-wipe::before{display:none}
  .shinal-hero-wipe:hover{color:#fff}
}
.header-company-logo{
  display:block;
  width:auto;
  height:54px;
  max-width:330px;
  object-fit:contain;
  object-position:left center;
}
@media(max-width:900px){
  .header-company-logo{
    height:44px;
    max-width:245px;
  }
}
@media(max-width:480px){
  .header-company-logo{
    height:38px;
    max-width:215px;
  }
}
.shinalSwapBtn{transition:background .32s cubic-bezier(.22,1,.36,1),color .32s,border-color .32s,box-shadow .32s,transform .32s!important}
.shinalStartsFilled:hover{background:transparent!important;color:#fff!important;border-color:rgba(1,255,255,.6)!important;box-shadow:none!important;transform:translateY(-2px)}
.shinalStartsOutline:hover{background:#fff!important;color:#08285b!important;border-color:#fff!important;box-shadow:0 8px 24px rgba(0,0,0,.12)!important;transform:translateY(-2px)}
.shinal-reveal-up{
  opacity:0 !important;
  transform:translateY(55px) !important;
  transition:
    opacity .75s cubic-bezier(.22,1,.36,1),
    transform .85s cubic-bezier(.22,1,.36,1) !important;
  transition-delay:var(--shinal-delay,0ms) !important;
  will-change:opacity,transform;
}
.shinal-reveal-up.shinal-show{
  opacity:1 !important;
  transform:translateY(0) !important;
}
@media (prefers-reduced-motion: reduce){
  .shinal-reveal-up{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
}

/* Chairman message — full width expandable panel */
.chairmanMedia{position:relative;align-self:start}.chairmanMedia>img{display:block}
.chairmanMessage{grid-column:1/-1;margin-top:26px;padding:30px 34px 26px;border-radius:20px;background:linear-gradient(135deg,#061d4b,#0a3974);color:#fff;box-shadow:0 22px 55px rgba(0,29,61,.16);border:1px solid rgba(124,200,242,.22);overflow:hidden}
.chairmanMessage:before{content:"“";display:block;height:28px;font-family:Georgia,serif;font-size:64px;line-height:.7;color:#62a8d6;opacity:.9}.chairmanMessageLabel{margin-top:8px;color:#7cc8f2;font-size:11px;font-weight:900;letter-spacing:2.2px}.chairmanMessage h3{margin:7px 0 16px;font-size:26px;letter-spacing:.4px}.chairmanMessage p{margin:0 0 14px;font-size:14px;line-height:1.8;color:#d8e8f5}.chairmanMessage p:last-child{margin-bottom:0}
.chairmanMessageMore{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .65s cubic-bezier(.22,1,.36,1),opacity .35s ease}.chairmanMessageMoreInner{min-height:0;overflow:hidden}.chairmanMessage.is-expanded .chairmanMessageMore{grid-template-rows:1fr;opacity:1}.chairmanMessage.is-expanded .chairmanMessageMore .shinal-reveal-up{opacity:1 !important;transform:translateY(0) !important}.chairmanExpandBtn{width:46px;height:46px;margin:6px auto 0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(124,200,242,.55);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;transition:transform .35s ease,background .35s ease,border-color .35s ease;box-shadow:0 10px 26px rgba(0,0,0,.16)}.chairmanExpandBtn:hover{background:rgba(124,200,242,.18);border-color:#7cc8f2;transform:translateY(2px)}.chairmanExpandBtn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .45s cubic-bezier(.22,1,.36,1)}.chairmanMessage.is-expanded .chairmanExpandBtn svg{transform:rotate(180deg)}
.chairmanExpandHint{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:12px;color:#9fdcff;font-size:11px;font-weight:900;letter-spacing:1.6px;text-transform:uppercase;user-select:none;transition:opacity .3s ease,transform .3s ease}.chairmanExpandHint:before,.chairmanExpandHint:after{content:"";width:30px;height:1px;background:linear-gradient(90deg,transparent,rgba(124,200,242,.8))}.chairmanExpandHint:after{background:linear-gradient(90deg,rgba(124,200,242,.8),transparent)}.chairmanExpandBtn{animation:chairmanExpandPulse 2.2s ease-in-out infinite}.chairmanMessage.is-expanded .chairmanExpandBtn{animation:none}.chairmanMessage.is-expanded .chairmanExpandHint{opacity:.72}.chairmanExpandHint .expandedText{display:none}.chairmanMessage.is-expanded .chairmanExpandHint .collapsedText{display:none}.chairmanMessage.is-expanded .chairmanExpandHint .expandedText{display:inline}@keyframes chairmanExpandPulse{0%,100%{box-shadow:0 10px 26px rgba(0,0,0,.16),0 0 0 0 rgba(124,200,242,.22)}50%{box-shadow:0 10px 26px rgba(0,0,0,.16),0 0 0 9px rgba(124,200,242,0)}}@media(prefers-reduced-motion:reduce){.chairmanExpandBtn{animation:none}}
@media(max-width:900px){.chairmanMessage{margin-top:18px;padding:25px 22px 22px}.chairmanMessage h3{font-size:23px}}

.heroSlide img{
  transform:scale(1);
  will-change:transform;
}
.heroSlide.active img{
  animation:shinalHeroKenBurns 6.2s ease-out both !important;
}
@keyframes shinalHeroKenBurns{
  0%{transform:scale(1)}
  100%{transform:scale(1.04)}
}
@media(prefers-reduced-motion:reduce){
  .heroSlider .slide.active img,
  .hero-slider .slide.active img,
  .heroSlide.active img{animation:none!important}
}

/* Mobile only: slider above hero text. Desktop stays unchanged. */
@media (max-width:900px){
  .hero{
    display:flex !important;
    flex-direction:column !important;
    min-height:auto !important;
  }
  .heroSlider{
    order:1 !important;
    width:100% !important;
    min-height:48vh !important;
  }
  .heroText{
    order:2 !important;
    width:100% !important;
  }
}

#shinalBackToTop{
  position:fixed;right:26px;bottom:26px;z-index:9990;
  width:50px;height:50px;padding:0;border-radius:50%;
  border:1px solid rgba(255,255,255,.26);
  display:grid;place-items:center;color:#fff;
  background:rgba(5,35,82,.88);
  box-shadow:0 12px 30px rgba(0,0,0,.22);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(12px) scale(.94);
  transition:opacity .28s ease,visibility .28s ease,transform .32s cubic-bezier(.22,1,.36,1),background .25s ease;
}
#shinalBackToTop.btt-visible{
  opacity:1;visibility:visible;pointer-events:auto;
  transform:translateY(0) scale(1);
}
#shinalBackToTop:hover{background:#0d8fd3;transform:translateY(-3px)}
#shinalBackToTop .btt-arrow{
  width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;
}
#shinalBackToTop .btt-ring{
  position:absolute;inset:-3px;width:56px;height:56px;
  transform:rotate(-90deg);pointer-events:none;
}
#shinalBackToTop .btt-ring circle{
  fill:none;stroke:#32b9ff;stroke-width:2;stroke-linecap:round;
}
@media(max-width:900px){
  #shinalBackToTop{right:18px;bottom:18px;width:46px;height:46px}
  #shinalBackToTop .btt-ring{width:52px;height:52px}
  body.menuOpen #shinalBackToTop{
    opacity:0 !important;visibility:hidden !important;pointer-events:none !important;
    transform:translateY(12px) scale(.94) !important;
  }
}

@media (hover:hover) and (pointer:fine){
  #mission .card,
  #sectors .sector{
    position:relative;
    z-index:1;
    transform-origin:center center;
    transition:
      transform .38s cubic-bezier(.22,1,.36,1),
      box-shadow .38s cubic-bezier(.22,1,.36,1),
      border-color .3s ease !important;
    will-change:transform;
  }

  /* !important is intentional: it overrides the fadeInUp transform after reveal */
  #mission .card.shinal-show:hover,
  #mission .card:hover,
  #sectors .sector.shinal-show:hover,
  #sectors .sector:hover{
    z-index:8;
    transform:translateY(-8px) scale(1.055) !important;
    box-shadow:0 22px 48px rgba(6,29,75,.16);
    border-color:rgba(8,116,187,.42);
  }

  #mission .card h3,
  #mission .card p,
  #sectors .sector i,
  #sectors .sector h3,
  #sectors .sector p{
    transition:transform .38s cubic-bezier(.22,1,.36,1);
  }

  #mission .card:hover h3,
  #sectors .sector:hover h3,
  #sectors .sector:hover i{
    transform:translateY(-2px);
  }
}

/* Desktop only: framed hero slider like the supplied reference. Mobile/tablet remains unchanged. */
@media (min-width:901px){
  .hero{
    grid-template-columns:1.12fr .88fr !important;
    align-items:stretch;
  }
  .heroText{
    min-width:0;
  }
  .heroSlider{
    align-self:center;
    width:calc(100% - 5.5vw) !important;
    height:calc(100vh - 118px) !important;
    min-height:520px !important;
    max-height:760px !important;
    margin:21px 5.5vw 21px 0 !important;
    border-radius:0;
    background:#061d4b;
  }
  .heroSlide,
  .heroSlide img{
    width:100%;
    height:100%;
  }
  .heroSlide img{
    object-fit:cover;
    object-position:center center;
  }
}

#companies .company-card-icon{height:58px;display:flex;align-items:center;margin:0 0 18px}
#companies .company-card-icon img{display:block;width:auto;height:54px;max-width:180px;object-fit:contain;object-position:left center}
@media(max-width:900px){#companies .company-card-icon{height:52px;margin-bottom:15px}#companies .company-card-icon img{height:48px;max-width:160px}}

#companies .company-expand-card{height:auto;align-self:start;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease,border-color .3s ease}
#companies .company-more{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .48s cubic-bezier(.22,1,.36,1),opacity .3s ease,margin .48s cubic-bezier(.22,1,.36,1);margin-top:0}
#companies .company-more-inner{overflow:hidden}
#companies .company-more-inner p{margin:0}
#companies .company-expand-card.is-expanded .company-more{grid-template-rows:1fr;opacity:1;margin-top:14px}
#companies .company-expand-btn{margin-top:18px;font:inherit;font-weight:800;cursor:pointer}
#companies .company-expand-card.is-expanded .company-expand-btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
@media(max-width:900px){#companies .company-expand-card.is-expanded .company-more{margin-top:12px}}

.refinery-products{margin-top:28px;padding:24px;border:1px solid rgba(124,200,242,.28);border-radius:20px;background:#eef7fd;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden}
.refinery-products-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;color:#7cc8f2;font-size:11px;font-weight:900;letter-spacing:2.2px}.refinery-products-line{height:1px;flex:1;background:linear-gradient(90deg,rgba(124,200,242,.65),transparent)}
.refinery-products-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.refinery-product{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:14px;border:1px solid #d8e7f2;background:#fff;transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease}
.refinery-product:hover{transform:translateY(-3px);border-color:rgba(124,200,242,.55);background:#f5fbff;box-shadow:0 12px 26px rgba(0,0,0,.14)}
.refinery-product-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#7cc8f2,#0874bb);color:#fff;font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(8,116,187,.22)}
.refinery-product b{display:block;color:#17324f;font-size:14px;line-height:1.2}.refinery-product small{display:block;margin-top:4px;color:#6d7f92;font-size:11px}
.refinery-note{background:#f5fbff;border:1px solid #d8e7f2;display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;margin-top:14px;padding:14px 15px;border-radius:14px;background:linear-gradient(90deg,rgba(8,116,187,.22),rgba(8,116,187,.06));border-left:2px solid #62a8d6}.refinery-note-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(124,200,242,.14);color:#7cc8f2;font-size:18px}.refinery-note p{margin:0;color:#2f4256;font-size:14px;line-height:1.7;font-weight:500}
@media(max-width:900px){.refinery-products{margin-top:22px;padding:18px}}
@media(max-width:520px){.refinery-products-grid{grid-template-columns:1fr}.refinery-products{padding:16px}.refinery-note{grid-template-columns:32px 1fr;padding:13px}.refinery-note-mark{width:28px;height:28px}}

/* Only the final Karbend Oil Refinery block is white. The rest of PLANTS keeps its original navy background. */
#asphalt .refinery-feature{
  position:relative;
  margin-left:-6vw;
  margin-right:-6vw;
  margin-bottom:-100px; /* absorb #asphalt bottom padding so no navy gap before Contact */
  padding:72px 6vw;
  background:#fff;
  color:#12213a;
}
#asphalt .refinery-feature h3{color:#12213a}
#asphalt .refinery-feature .copy{color:#52677c}
#asphalt .refinery-feature .refinery-products{
  background:linear-gradient(145deg,#f8fcff,#eef7fc);
  border-color:#d5e8f4;
  box-shadow:0 18px 45px rgba(6,29,75,.08),inset 0 1px 0 #fff;
}
#asphalt .refinery-feature .refinery-product{
  background:#fff;
  border-color:#dbeaf4;
  box-shadow:0 6px 18px rgba(6,29,75,.04);
}
#asphalt .refinery-feature .refinery-product:hover{
  background:#f4faff;
  border-color:#8fc9e9;
  box-shadow:0 12px 28px rgba(8,116,187,.12);
}
#asphalt .refinery-feature .refinery-product b{color:#12213a}
#asphalt .refinery-feature .refinery-product small{color:#66798c}
#asphalt .refinery-feature .refinery-note{
  background:linear-gradient(90deg,#eaf6fc,#f8fcff);
  border-left-color:#0874bb;
}
#asphalt .refinery-feature .refinery-note p{color:#2f4256 !important;font-size:14px;font-weight:500;opacity:1}
@media(max-width:900px){
  #asphalt .refinery-feature{padding-top:56px;padding-bottom:56px}
}

/* Responsive visual connection: chairman photo -> chairman message.
   Decorative only: it never captures clicks or changes layout. */
.aboutGrid{
  position:relative;
}

.chairmanConnector{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none;
  z-index:0;
}

.chairmanConnector .connectorPath{
  fill:none;
  stroke:#244b78;
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:7 8;
  vector-effect:non-scaling-stroke;
}

.chairmanConnector .connectorDot{
  fill:#fff;
  stroke:#244b78;
  stroke-width:2.25;
  vector-effect:non-scaling-stroke;
}

.aboutGrid > *:not(.chairmanConnector){
  position:relative;
  z-index:1;
}

@media(max-width:900px){
  .chairmanConnector .connectorPath{
    stroke-width:2;
    stroke-dasharray:6 7;
  }
}
.heroGroupLogo{margin-top:4px;margin-bottom:0;display:flex;align-items:center;justify-content:flex-start}.heroGroupLogo img{display:block;width:auto;max-width:330px;height:auto;object-fit:contain}@media(max-width:700px){.heroGroupLogo{margin-top:2px}.heroGroupLogo img{max-width:270px}}

/* Asphalt gallery — isolated component */
.asphaltGallery{
  width:100%;
  min-width:0;
  padding:30px;
  box-sizing:border-box;
  border-radius:20px;
  background:#0a2b62;
  border:1px solid #1c4d86;
  box-shadow:0 24px 60px #001d3d22;
}
.asphaltGalleryViewport{
  position:relative;
  width:100%;
  aspect-ratio:4 / 3;
  overflow:hidden;
  border-radius:2px;
  background:#061d42;
  isolation:isolate;
}
.asphaltGalleryTrack{
  position:absolute;
  inset:0;
}
.asphaltGallerySlide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  opacity:0;
  transform:scale(1.025);
  transition:opacity .7s ease,transform 4.8s cubic-bezier(.2,.65,.25,1);
  pointer-events:none;
}
.asphaltGallerySlide.is-active{
  opacity:1;
  transform:scale(1);
}
.asphaltGalleryShade{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(to top,rgba(2,18,44,.72),transparent 30%);
}
.asphaltGalleryBtn{
  position:absolute;
  z-index:3;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  background:rgba(4,25,67,.5);
  backdrop-filter:blur(8px);
  color:#fff;
  font:normal 30px/42px Arial,sans-serif;
  cursor:pointer;
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.asphaltGalleryBtn:hover{
  transform:translateY(-50%) scale(1.08);
  background:rgba(8,116,187,.88);
  border-color:#fff;
}
.asphaltGalleryPrev{left:16px}
.asphaltGalleryNext{right:16px}
.asphaltGalleryDots{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:17px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:7px;
}
.asphaltGalleryDot{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.45);
  cursor:pointer;
  transition:width .3s ease,background .3s ease,transform .3s ease;
}
.asphaltGalleryDot.is-active{
  width:24px;
  border-radius:10px;
  background:#fff;
}
.asphaltGalleryCounter{
  position:absolute;
  z-index:3;
  right:18px;
  bottom:16px;
  display:flex;
  align-items:center;
  gap:8px;
  color:#fff;
  font:700 10px/1 Arial,sans-serif;
  letter-spacing:.12em;
}
.asphaltGalleryCounter i{
  width:22px;
  height:1px;
  background:rgba(255,255,255,.55);
}
.asphaltGalleryCounter b{
  font-weight:700;
  opacity:.62;
}
@media(max-width:900px){
  .asphaltGallery{order:2}
}
@media(max-width:700px){
  .asphaltGallery{padding:14px;border-radius:16px}
  .asphaltGalleryViewport{aspect-ratio:4 / 3;border-radius:2px}
  .asphaltGalleryBtn{width:40px;height:40px;font-size:26px;line-height:36px}
  .asphaltGalleryPrev{left:10px}
  .asphaltGalleryNext{right:10px}
  .asphaltGalleryDots{bottom:12px;gap:5px}
  .asphaltGalleryDot{width:6px;height:6px}
  .asphaltGalleryDot.is-active{width:19px}
  .asphaltGalleryCounter{right:12px;bottom:11px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .asphaltGallerySlide{transition:opacity .2s ease,transform .2s ease}
}



/* THE AVENUE — premium feature section */
.avenue-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:112px 6vw 118px;
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%,rgba(46,154,224,.28),transparent 34%),
    radial-gradient(circle at 12% 88%,rgba(15,102,174,.28),transparent 30%),
    linear-gradient(135deg,#031634 0%,#062957 48%,#0a5e96 100%);
}
.avenue-section::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.20;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent);
  pointer-events:none;
}
.avenue-section::after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-190px;
  top:-210px;
  z-index:-1;
  border-radius:50%;
  background:rgba(86,185,238,.12);
  filter:blur(4px);
  pointer-events:none;
}
.avenue-head{max-width:980px;margin:0 0 54px}
.avenue-kicker{display:inline-flex;align-items:center;gap:10px;color:#8fd8ff;font-weight:900;font-size:12px;letter-spacing:3px;text-transform:uppercase}
.avenue-kicker::before{content:"";width:34px;height:2px;background:#43b9f4;border-radius:10px}
.avenue-title{font-size:clamp(46px,6vw,82px);line-height:.92;letter-spacing:-3px;margin:16px 0 22px;color:#fff}
.avenue-lead{max-width:930px;margin:0;color:#d8ebfa;font-size:17px;line-height:1.85}
.avenue-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:5vw;align-items:center}
.avenue-copy{min-width:0}
.avenue-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0 0}
.avenue-fact{padding:18px 16px;border:1px solid rgba(155,218,249,.22);border-radius:16px;background:rgba(255,255,255,.055);backdrop-filter:blur(10px)}
.avenue-fact strong{display:block;font-size:26px;line-height:1;color:#fff;margin-bottom:7px}
.avenue-fact span{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#a9d8f1}
.avenue-text{margin:22px 0 0;color:#cfe4f3;font-size:15px;line-height:1.85}
.avenue-gallery{position:relative;padding:13px;border:1px solid rgba(157,218,249,.28);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035));box-shadow:0 30px 80px rgba(0,0,0,.28);overflow:hidden}
.avenue-gallery::before{content:"";position:absolute;inset:0;border-radius:24px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);pointer-events:none}
.avenue-viewport{position:relative;aspect-ratio:1200/743;overflow:hidden;border-radius:15px;background:#071b3b}
.avenue-slide{position:absolute;inset:0;opacity:0;transform:scale(1.015);transition:opacity .75s ease,transform 5.5s ease;pointer-events:none}
.avenue-slide.active{opacity:1;transform:scale(1);z-index:1}
.avenue-slide img{width:100%;height:100%;display:block;object-fit:cover}
.avenue-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(3,22,52,.02) 48%,rgba(2,17,39,.58) 100%);pointer-events:none}
.avenue-caption{position:absolute;left:25px;bottom:24px;z-index:4;color:#fff}
.avenue-caption small{display:block;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#9ddcff;margin-bottom:5px}
.avenue-caption strong{font-size:22px;letter-spacing:-.4px}
.avenue-controls{position:absolute;right:24px;bottom:22px;z-index:5;display:flex;gap:8px}
.avenue-btn{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.48);background:rgba(4,25,67,.45);color:#fff;cursor:pointer;font-size:23px;line-height:1;backdrop-filter:blur(8px);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.avenue-btn:hover{transform:translateY(-2px);background:rgba(8,116,187,.82);border-color:#fff}
.avenue-dots{position:absolute;left:50%;bottom:25px;z-index:5;display:flex;gap:7px;transform:translateX(-50%)}
.avenue-dot{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:rgba(255,255,255,.48);cursor:pointer;transition:width .25s ease,background .25s ease}
.avenue-dot.active{width:25px;background:#fff}
@media(max-width:1100px){
  .navlinks{gap:17px;font-size:12px}
  .avenue-grid{gap:4vw}
}
@media(max-width:900px){
  .avenue-section{padding:86px 6vw 90px}
  .avenue-head{margin-bottom:38px}
  .avenue-grid{grid-template-columns:1fr;gap:34px}
  .avenue-copy{order:1}
  .avenue-gallery{order:2}
  .avenue-title{letter-spacing:-2px}
  .avenue-lead{font-size:15px;line-height:1.75}
}
@media(max-width:600px){
  .avenue-section{padding:72px 5vw 78px}
  .avenue-title{font-size:clamp(42px,13vw,62px);margin-top:13px}
  .avenue-facts{grid-template-columns:1fr 1fr}
  .avenue-fact:last-child{grid-column:1/-1}
  .avenue-fact strong{font-size:23px}
  .avenue-gallery{padding:9px;border-radius:18px}
  .avenue-viewport{border-radius:11px}
  .avenue-caption{left:16px;bottom:16px}
  .avenue-caption strong{font-size:17px}
  .avenue-caption small{font-size:8px}
  .avenue-controls{right:14px;bottom:13px}
  .avenue-btn{width:38px;height:38px;font-size:20px}
  .avenue-dots{bottom:15px}
}
@media(prefers-reduced-motion:reduce){
  .avenue-slide{transition:opacity .2s ease}
}

/* Asphalt gallery layout: right side on desktop, first on mobile */
@media (min-width:901px){
  #asphalt .feature > .asphaltGallery{order:2}
  #asphalt .feature > .asphaltGallery + div{order:1}
}
@media (max-width:900px){
  #asphalt .feature > .asphaltGallery{order:1}
  #asphalt .feature > .asphaltGallery + div{order:2}
}

.footer > span{opacity:1!important;transform:none!important;visibility:visible!important;}

/* Final visual alignment: Asphalt media frames match THE AVENUE */
.asphalt-video{
  width:100%;
  min-width:0;
  min-height:0;
  aspect-ratio:1200/743;
  object-fit:cover;
  display:block;
  padding:13px;
  box-sizing:border-box;
  border:1px solid rgba(157,218,249,.28);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035));
  box-shadow:0 30px 80px rgba(0,0,0,.28);
}
.asphaltGallery{
  padding:13px;
  border:1px solid rgba(157,218,249,.28);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035));
  box-shadow:0 30px 80px rgba(0,0,0,.28);
  overflow:hidden;
}
.asphaltGalleryViewport{
  aspect-ratio:1200/743;
  border-radius:15px;
}
@media(max-width:900px){
  .asphalt-video{aspect-ratio:1200/743}
}
@media(max-width:600px){
  .asphalt-video{padding:9px;border-radius:18px}
  .asphaltGallery{padding:9px;border-radius:18px}
  .asphaltGalleryViewport{aspect-ratio:1200/743;border-radius:11px}
}
