/* R.A.K. GROUP / Design A v3.5 — Premium Interface
   Approved Industrial Luxury art direction: charcoal, orange, architectural
   diagonals, cinematic photography, editorial content and restrained motion.
   Presentation only: all copy and images continue to come from Elementor.
   Scoped to admin-enabled v17, no DOM content replacement.
*/
body.rak-v17-active{
  --rak-premium-accent:#ff8709;
  --rak-premium-light:#ffbb65;
  --rak-premium-night:#0b121d;
  --rak-premium-dark:#111c2a;
  --rak-premium-line:rgba(255,138,26,.38);
  --rak-premium-ease:cubic-bezier(.22,1,.36,1);
  --rak-premium-shadow:0 24px 70px rgba(7,20,37,.18);
  background:#f6f7f8;
}
/* A premium brand frame that does not change the Elementor Header template. */
body.rak-v17-active .rak-global-header{z-index:9999;isolation:isolate}
body.rak-v17-active .rak-header{
  border-bottom:1px solid rgba(255,165,69,.35)!important;
  background:linear-gradient(110deg,rgba(7,13,21,.98) 0%,rgba(21,32,46,.96) 55%,rgba(10,16,25,.98) 100%)!important;
  box-shadow:0 11px 42px rgba(0,0,0,.19)!important;
}
body.rak-v17-active .rak-header-inner{
  max-width:1480px!important;
  min-height:86px!important;
  gap:clamp(16px,2vw,30px)!important;
}
body.rak-v17-active .rak-header-logo,
body.rak-v17-active .rak-header-logo img{
  width:clamp(155px,15.2vw,202px)!important;
  max-width:202px!important;
  flex:0 0 clamp(155px,15.2vw,202px)!important;
}
body.rak-v17-active .rak-nav-item .elementor-button{
  font-size:clamp(13px,.93vw,15px)!important;
  padding:15px 12px!important;
  font-weight:700!important;
  transition:color .25s ease,background .25s ease!important;
}
body.rak-v17-active .rak-nav-item.rak-premium-current .elementor-button,
body.rak-v17-active .rak-nav-item .elementor-button[aria-current="page"]{
  color:#ffb666!important;
}
body.rak-v17-active .rak-header-cta .elementor-button{
  font-size:14px!important;
  padding:15px 24px!important;
  border-radius:5px!important;
  text-transform:none!important;
}
body.rak-v17-active.rak-premium-scrolled .rak-header{
  box-shadow:0 13px 42px rgba(0,0,0,.31)!important;
}
/* HERO: more graphic architecture, confident typography and cinematic imagery. */
body.rak-v17-active .rak-hero{
  min-height:clamp(650px,81svh,930px)!important;
  padding:clamp(92px,9vh,134px) max(6%,calc((100vw - 1380px)/2)) clamp(104px,11vh,150px)!important;
  background:var(--rak-premium-night)!important;
  border-bottom:1px solid rgba(255,135,15,.55)!important;
}
body.rak-v17-active .rak-hero:after{
  background:
    linear-gradient(90deg,rgba(5,10,17,.97) 0%,rgba(8,15,25,.88) 29%,rgba(8,15,25,.47) 55%,rgba(5,11,20,.07) 84%),
    linear-gradient(0deg,rgba(5,10,16,.60) 0%,transparent 37%,rgba(8,15,25,.04) 90%)!important;
}
body.rak-v17-active .rak-hero:before{
  content:""!important;
  position:absolute!important;
  top:-10%!important;right:-12%!important;bottom:auto!important;
  width:clamp(145px,22vw,340px)!important;height:clamp(210px,40vw,600px)!important;
  background:linear-gradient(130deg,rgba(255,181,53,.97),#ff7e00 43%,#f36b00 78%,rgba(255,120,0,.92))!important;
  clip-path:polygon(63% 0,100% 0,57% 100%,0 100%)!important;
  opacity:.94!important;
  filter:drop-shadow(-12px 24px 26px rgba(2,5,8,.2))!important;
  pointer-events:none!important;z-index:1!important;
}
body.rak-v17-active .rak-hero-image img{
  object-position:53% 70%!important;
  filter:brightness(.89) contrast(1.13) saturate(1.19)!important;
}
body.rak-v17-active .rak-hero-content{
  max-width:min(890px,78%)!important;
  gap:clamp(9px,.9vw,15px)!important;
  padding-left:clamp(3px,.35vw,7px)!important;
}
body.rak-v17-active .rak-hero-content:before{
  content:"";position:absolute;left:-27px;top:0;width:3px;height:clamp(78px,8vw,126px);
  background:linear-gradient(#ffd16c,#ff7300 55%,transparent);border-radius:4px;pointer-events:none;
}
body.rak-v17-active .rak-hero-eyebrow .elementor-heading-title{
  font-size:clamp(13px,1.03vw,17px)!important;letter-spacing:.20em!important;
  color:#fff2df!important;line-height:1.45!important;
}
body.rak-v17-active .rak-hero-title .elementor-heading-title,
body.rak-v17-active .rak-hero-highlight .elementor-heading-title{
  font-size:clamp(55px,5.55vw,96px)!important;
  line-height:1.11!important;letter-spacing:-.052em!important;
  text-shadow:0 12px 35px rgba(0,0,0,.46)!important;
}
body.rak-v17-active .rak-hero-highlight .elementor-heading-title{
  color:#ff9228!important;
  -webkit-text-stroke:.15px rgba(255,208,153,.45);
}
body.rak-v17-active .rak-hero-company .elementor-widget-container{
  font-size:clamp(16px,1.2vw,19px)!important;font-weight:700!important;line-height:1.65!important;
}
body.rak-v17-active .rak-hero-desc .elementor-widget-container{
  max-width:620px!important;font-size:clamp(16px,1.18vw,19px)!important;
  line-height:1.85!important;color:#e1e7ee!important;
}
body.rak-v17-active .rak-hero-actions{margin-top:clamp(24px,3vw,43px)!important;gap:15px!important;}
body.rak-v17-active .rak-hero-actions .elementor-button{
  min-height:57px!important;padding:17px 31px!important;font-size:16px!important;
  border-radius:6px!important;letter-spacing:.01em;
}
body.rak-v17-active .rak-btn-outline .elementor-button{
  background:rgba(9,19,30,.46)!important;
  border:1px solid rgba(255,255,255,.7)!important;
  backdrop-filter:blur(4px);
}
body.rak-v17-active .rak-btn-outline .elementor-button:hover{border-color:#ffb15b!important;background:rgba(255,118,0,.14)!important}
/* STAT BAR: anchored to the hero as a high-quality, engineered strip. */
body.rak-v17-active .rak-stat-bar{
  background:linear-gradient(115deg,#0b1521,#162538 70%,#0d1724)!important;
  border-top:3px solid #ff931f!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 19px 45px rgba(11,21,35,.2)!important;
}
body.rak-v17-active .rak-stat{padding:27px 15px 29px!important;min-width:0}
body.rak-v17-active .rak-stat-num .elementor-heading-title{
  font-size:clamp(34px,3.12vw,56px)!important;
  font-weight:900!important;color:#ff9d35!important;
  letter-spacing:-.04em!important;
}
body.rak-v17-active .rak-stat-label .elementor-widget-container{
  font-size:clamp(12px,1vw,15px)!important;color:#dce4ee!important;
}
/* SECTION RHYTHM: technical precision instead of stock-template boxes. */
body.rak-v17-active .rak-section,
body.rak-v17-active .rak-v11-section{
  padding-top:clamp(84px,8vw,132px)!important;
  padding-bottom:clamp(86px,8vw,132px)!important;
}
body.rak-v17-active .rak-section-white,
body.rak-v17-active .rak-v11-white{
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%)!important;
}
body.rak-v17-active .rak-section-muted{
  background:linear-gradient(150deg,#f2f4f7,#e9eef3)!important;
}
body.rak-v17-active .rak-section-heading,
body.rak-v17-active .rak-v11-heading{
  max-width:1030px!important;gap:11px!important;margin-bottom:15px!important;
}
body.rak-v17-active .rak-section-title .elementor-heading-title,
body.rak-v17-active .rak-v11-heading-title .elementor-heading-title{
  font-size:clamp(36px,3.65vw,64px)!important;line-height:1.25!important;
  font-weight:900!important;letter-spacing:-.045em!important;
}
body.rak-v17-active .rak-section-intro .elementor-widget-container,
body.rak-v17-active .rak-v11-intro .elementor-widget-container{
  font-size:clamp(16px,1.12vw,18px)!important;line-height:1.9!important;
}
body.rak-v17-active .rak-kicker .elementor-heading-title,
body.rak-v17-active .rak-v11-eyebrow .elementor-heading-title{
  font-size:clamp(12px,.92vw,14px)!important;letter-spacing:.19em!important;
}
body.rak-v17-active .rak-section-heading:after{
  width:112px!important;height:5px!important;
  background:linear-gradient(90deg,#ff8000,#ffc17b 66%,transparent)!important;
}
/* SERVICE GALLERY: big editorial images, disciplined accent and stronger hierarchy. */
body.rak-v17-active .rak-grid-four{gap:clamp(14px,1.6vw,27px)!important;}
body.rak-v17-active .rak-service-card{
  background:#fff!important;border-radius:12px!important;
  box-shadow:0 16px 43px rgba(8,22,37,.13)!important;
  border:1px solid rgba(9,25,45,.1)!important;
  overflow:hidden!important;
}
body.rak-v17-active .rak-service-card:before{
  height:5px!important;background:linear-gradient(90deg,#ff7000,#ffbb5a)!important;
  z-index:3!important;
}
body.rak-v17-active .rak-card-photo,
body.rak-v17-active .rak-card-photo img{
  height:clamp(270px,22vw,385px)!important;
}
body.rak-v17-active .rak-card-photo{background:#101a27!important;position:relative!important}
body.rak-v17-active .rak-card-photo:after{
  content:"";position:absolute;inset:auto 0 0;height:33%;pointer-events:none;
  background:linear-gradient(0deg,rgba(7,17,28,.22),transparent);
}
body.rak-v17-active .rak-card-photo img{
  filter:contrast(1.12) saturate(1.12)!important;
  transition:transform .75s var(--rak-premium-ease),filter .75s!important;
}
body.rak-v17-active .rak-card-content{
  padding:clamp(22px,2vw,34px)!important;
  gap:8px!important;
  border-bottom:2px solid transparent;
}
body.rak-v17-active .rak-service-index .elementor-heading-title{
  font-size:clamp(19px,2vw,30px)!important;font-weight:900!important;
  color:#ff870d!important;letter-spacing:0!important;
}
body.rak-v17-active .rak-card-heading .elementor-heading-title{
  font-size:clamp(21px,1.68vw,28px)!important;line-height:1.42!important;
  letter-spacing:-.02em!important;color:#121d2c!important;
}
body.rak-v17-active .rak-english .elementor-widget-container{
  font-size:clamp(12px,.99vw,15px)!important;color:#c55c00!important;
}
body.rak-v17-active .rak-service-card:focus-within,
body.rak-v17-active .rak-service-card:hover{
  box-shadow:0 32px 76px rgba(8,22,38,.22)!important;
  border-color:rgba(255,133,13,.53)!important;
}
body.rak-v17-active .rak-link-button .elementor-button{
  font-size:clamp(14px,1vw,16px)!important;
  font-weight:800!important;
}
body.rak-v17-active .rak-project-card,
body.rak-v17-active .rak-article-card{
  border-radius:12px!important;box-shadow:0 13px 40px rgba(12,25,37,.13)!important;
}
/* ABOUT: magazine-like photo/editorial grid, strong charcoal panel. */
body.rak-v17-active .rak-about-teaser{
  background:#111c29!important;
  box-shadow:0 28px 84px rgba(4,16,30,.2)!important;
  border-top:4px solid #ff8b11!important;
}
body.rak-v17-active .rak-about-media,
body.rak-v17-active .rak-about-photo img{
  min-height:clamp(480px,43vw,660px)!important;
}
body.rak-v17-active .rak-about-photo img{filter:contrast(1.15) saturate(1.12)!important}
body.rak-v17-active .rak-about-text{
  background:
   radial-gradient(circle at 100% 0%,rgba(255,139,20,.095),transparent 42%),
   linear-gradient(135deg,#1e3044,#0c1724 73%)!important;
  padding:clamp(45px,5vw,88px)!important;
  border-left:4px solid #ff951e!important;
}
body.rak-v17-active .rak-about-text .elementor-widget-text-editor .elementor-widget-container{
  font-size:clamp(16px,1.1vw,19px)!important;
  line-height:1.94!important;
}
/* Interior page hero gains a controlled graphic angle from the approved mockup. */
body.rak-v17-active .rak-page-hero{min-height:clamp(420px,40vw,615px)!important;}
body.rak-v17-active .rak-page-hero:before{
  content:"";position:absolute;top:0;left:0;width:min(16%,220px);height:100%;
  background:linear-gradient(133deg,rgba(255,128,8,.45),rgba(255,120,10,.10) 50%,transparent 75%);
  clip-path:polygon(0 0,100% 0,0 100%);z-index:1;pointer-events:none;
}
body.rak-v17-active .rak-page-hero-content{max-width:min(900px,82%)!important;}
body.rak-v17-active .rak-page-title .elementor-heading-title{
  font-size:clamp(49px,4.6vw,83px)!important;
  font-weight:900!important;line-height:1.16!important;
}
/* Pro process, project, editorial sections share a premium rhythm. */
body.rak-v17-active .rak-v11-step-card,
body.rak-v17-active .rak-v11-value-card{
  border:1px solid rgba(16,34,53,.10)!important;
  border-top:3px solid #ff880d!important;
  box-shadow:0 18px 48px rgba(11,26,45,.11)!important;
  transition:transform .4s var(--rak-premium-ease),box-shadow .4s!important;
}
body.rak-v17-active .rak-v11-step-card:hover,
body.rak-v17-active .rak-v11-value-card:hover{
  transform:translateY(-7px)!important;box-shadow:0 30px 60px rgba(10,25,40,.18)!important;
}
body.rak-v17-active .rak-v11-dark{
  background:radial-gradient(ellipse at 100% 0%,#293a4f 0%,#111b29 41%,#0a111b 100%)!important;
}
body.rak-v17-active .rak-v12-brand-banner,
body.rak-v17-active .rak-cta-banner{
  border-block:1px solid rgba(255,139,30,.4)!important;
}
body.rak-v17-active .rak-v11-contact-form-wrap{
  box-shadow:0 24px 64px rgba(10,25,39,.18)!important;
  border-top:5px solid #ff8b15!important;
}
body.rak-v17-active .rak-v11-pro-form :is(input,textarea,select){
  border-radius:7px!important;min-height:48px!important;
}
body.rak-v17-active .rak-footer{
  background:linear-gradient(140deg,#070f19,#132337 72%,#09121c)!important;
  border-top:4px solid #ff840b!important;
}
/* Keep image focus manageable on tablets and portrait desktop screens. */
@media (max-width:1239px){
  body.rak-v17-active .rak-header-inner{min-height:75px!important;gap:12px!important}
  body.rak-v17-active .rak-header-logo,body.rak-v17-active .rak-header-logo img{width:165px!important;max-width:165px!important;flex-basis:165px!important}
  body.rak-v17-active .rak-hero{min-height:clamp(630px,74svh,800px)!important;padding:90px 6% 94px!important}
  body.rak-v17-active .rak-hero:before{width:clamp(118px,23vw,260px)!important;height:clamp(185px,37vw,400px)!important}
  body.rak-v17-active .rak-hero-content{max-width:83%!important}
  body.rak-v17-active .rak-hero-title .elementor-heading-title,
  body.rak-v17-active .rak-hero-highlight .elementor-heading-title{font-size:clamp(47px,6vw,76px)!important}
  body.rak-v17-active .rak-card-photo,body.rak-v17-active .rak-card-photo img{height:clamp(265px,30vw,370px)!important}
}
@media (max-width:850px){
  body.rak-v17-active .rak-hero{min-height:650px!important}
  body.rak-v17-active .rak-hero-content{max-width:90%!important}
  body.rak-v17-active .rak-hero-title .elementor-heading-title,
  body.rak-v17-active .rak-hero-highlight .elementor-heading-title{font-size:clamp(42px,6.5vw,61px)!important}
  body.rak-v17-active .rak-about-teaser{grid-template-columns:1fr!important}
  body.rak-v17-active .rak-about-text{padding:clamp(36px,7vw,65px)!important;border-left:0!important;border-top:4px solid #ff8b11!important}
  body.rak-v17-active .rak-about-media,body.rak-v17-active .rak-about-photo img{min-height:390px!important}
}
@media (max-width:767px){
  body.rak-v17-active .rak-header-inner{min-height:70px!important;padding:10px 17px!important}
  body.rak-v17-active .rak-header-logo,body.rak-v17-active .rak-header-logo img{width:144px!important;max-width:144px!important;flex-basis:144px!important}
  body.rak-v17-active .rak-hero{
    min-height:700px!important;
    padding:82px 22px 69px!important;
    justify-content:flex-end!important;
  }
  body.rak-v17-active .rak-hero:after{
    background:linear-gradient(0deg,rgba(4,10,18,.99) 0%,rgba(5,12,21,.95) 42%,rgba(5,11,21,.54) 75%,rgba(4,10,17,.28) 100%)!important;
  }
  body.rak-v17-active .rak-hero:before{
    right:-13%!important;top:-4%!important;
    width:150px!important;height:220px!important;opacity:.82!important;
  }
  body.rak-v17-active .rak-hero-content{max-width:100%!important}
  body.rak-v17-active .rak-hero-content:before{display:none!important}
  body.rak-v17-active .rak-hero-title .elementor-heading-title,
  body.rak-v17-active .rak-hero-highlight .elementor-heading-title{
    font-size:clamp(38px,9.2vw,55px)!important;line-height:1.15!important;
  }
  body.rak-v17-active .rak-hero-company .elementor-widget-container,
  body.rak-v17-active .rak-hero-desc .elementor-widget-container{font-size:15px!important;line-height:1.75!important}
  body.rak-v17-active .rak-hero-actions .elementor-button{width:100%!important;min-height:54px!important}
  body.rak-v17-active .rak-stat{padding:19px 8px!important}
  body.rak-v17-active .rak-stat-num .elementor-heading-title{font-size:clamp(28px,7vw,38px)!important}
  body.rak-v17-active .rak-stat-label .elementor-widget-container{font-size:11px!important}
  body.rak-v17-active .rak-section,body.rak-v17-active .rak-v11-section{padding-top:72px!important;padding-bottom:78px!important}
  body.rak-v17-active .rak-section-title .elementor-heading-title,
  body.rak-v17-active .rak-v11-heading-title .elementor-heading-title{font-size:clamp(30px,7.8vw,42px)!important}
  body.rak-v17-active .rak-card-photo,body.rak-v17-active .rak-card-photo img{height:clamp(230px,64vw,340px)!important}
  body.rak-v17-active .rak-about-media,body.rak-v17-active .rak-about-photo img{min-height:320px!important;height:320px!important}
  body.rak-v17-active .rak-page-hero{min-height:380px!important}
  body.rak-v17-active .rak-page-title .elementor-heading-title{font-size:clamp(36px,9vw,52px)!important}
}
/* No hover-only affordances for touch. */
@media(hover:none){
  body.rak-v17-active .rak-service-card:hover,
  body.rak-v17-active .rak-project-card:hover,
  body.rak-v17-active .rak-article-card:hover{transform:none!important}
}
@media(prefers-reduced-motion:reduce){
  body.rak-v17-active *,body.rak-v17-active *::before,body.rak-v17-active *::after{
    animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important;
  }
  body.rak-v17-active .rak-hero-image img{transform:none!important}
  body.rak-v17-active .rak-service-card:hover,body.rak-v17-active .rak-v11-step-card:hover,
  body.rak-v17-active .rak-v11-value-card:hover{transform:none!important}
}
