/*
TKSE-WEB-ENTERPRISE-REDESIGN-008A
Corporate Enterprise Design Layer for TK Solution Energy
Purpose: unify public website with premium enterprise visual identity.
*/
:root{
  --tkse-navy:#071b34;
  --tkse-navy-2:#0b2849;
  --tkse-navy-3:#103d68;
  --tkse-green:#21b573;
  --tkse-green-2:#58d68d;
  --tkse-mint:#eafff4;
  --tkse-ice:#f4f8fb;
  --tkse-line:rgba(7,27,52,.12);
  --tkse-text:#102033;
  --tkse-muted:#607087;
  --tkse-white:#ffffff;
  --tkse-shadow:0 24px 70px rgba(7,27,52,.13);
  --tkse-shadow-soft:0 14px 38px rgba(7,27,52,.10);
  --tkse-radius-xl:32px;
  --tkse-radius-lg:22px;
  --tkse-radius-md:16px;
  --tkse-wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--tkse-text);
  background:
    radial-gradient(circle at 8% 0%, rgba(33,181,115,.10), transparent 30%),
    radial-gradient(circle at 92% 4%, rgba(16,61,104,.12), transparent 34%),
    linear-gradient(180deg,#ffffff 0%,#f7fafc 42%,#ffffff 100%);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.wrap,.container,.site-wrap{width:min(var(--tkse-wrap),calc(100% - 40px));margin-left:auto;margin-right:auto}

/* Enterprise header lock */
.hybrid-header,.site-header,.top-header,.main-header,.f-header{
  position:sticky!important;top:0;z-index:9999;
  background:rgba(255,255,255,.88)!important;
  backdrop-filter:blur(22px) saturate(160%);
  -webkit-backdrop-filter:blur(22px) saturate(160%);
  border-bottom:1px solid rgba(7,27,52,.08)!important;
  box-shadow:0 10px 35px rgba(7,27,52,.06)!important;
}
body.tkse-scrolled .hybrid-header,body.tkse-scrolled .site-header{
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 16px 45px rgba(7,27,52,.12)!important;
}
.nav,.header-inner,.site-nav-inner,.f-nav{
  min-height:82px!important;
  display:flex!important;align-items:center!important;gap:18px!important;
}
.hybrid-logo,.site-logo,.logo,.footer-logo{
  display:flex!important;align-items:center!important;gap:12px!important;
  font-weight:850!important;letter-spacing:.01em!important;color:var(--tkse-navy)!important;
}
.hybrid-logo img,.site-logo img,.logo img,.footer-logo img{
  width:auto!important;max-width:182px!important;max-height:54px!important;object-fit:contain!important;
  filter:drop-shadow(0 10px 16px rgba(7,27,52,.08));
}
.hybrid-menu,.site-menu,.nav-menu,.main-menu{
  list-style:none!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;gap:4px!important;
}
.hybrid-menu>li>a,.site-menu>li>a,.nav-link,.main-menu>li>a{
  display:flex!important;align-items:center!important;gap:6px!important;
  padding:13px 13px!important;border-radius:999px!important;
  color:#17314f!important;font-size:14px!important;font-weight:750!important;line-height:1!important;
  transition:background .2s ease,color .2s ease,transform .2s ease!important;
}
.hybrid-menu>li:hover>a,.site-menu>li:hover>a,.nav-link:hover,.hybrid-menu>li.is-active>a,.site-menu>li.is-active>a{
  background:rgba(33,181,115,.10)!important;color:var(--tkse-navy)!important;
}
.mega,.mega-menu{
  border:1px solid rgba(7,27,52,.10)!important;border-radius:24px!important;
  background:rgba(255,255,255,.98)!important;box-shadow:0 28px 70px rgba(7,27,52,.18)!important;
  overflow:hidden!important;padding:20px!important;
}
.mega:before,.mega-menu:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--tkse-green),#32e1a0,var(--tkse-navy-3))}
.mega-link{border-radius:17px!important;padding:13px!important;transition:background .18s ease,transform .18s ease!important}
.mega-link:hover{background:#f3faf7!important;transform:translateX(3px)!important}
.mega-icon{background:linear-gradient(135deg,var(--tkse-navy),var(--tkse-green))!important;color:white!important;border-radius:14px!important;box-shadow:0 10px 22px rgba(33,181,115,.20)!important}
.mega-cta{background:linear-gradient(145deg,var(--tkse-navy),#0c2f55)!important;color:white!important;border-radius:22px!important;border:1px solid rgba(255,255,255,.12)!important}
.nav-actions,.header-actions{display:flex!important;align-items:center!important;gap:10px!important;margin-left:auto!important}
.btn,.button,.nav-cta,.cta-button,button[type="submit"]{
  border:0!important;border-radius:999px!important;font-weight:850!important;letter-spacing:.01em!important;
  min-height:44px!important;padding:13px 20px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  box-shadow:none!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important;
}
.btn.primary,.button.primary,.nav-cta,.cta-button,button[type="submit"]{
  color:white!important;background:linear-gradient(135deg,var(--tkse-green),#14a968 48%,#0b7f50)!important;
  box-shadow:0 14px 32px rgba(33,181,115,.26)!important;
}
.btn.primary:hover,.button.primary:hover,.nav-cta:hover,.cta-button:hover{transform:translateY(-2px)!important;box-shadow:0 18px 40px rgba(33,181,115,.34)!important}
.btn.secondary,.btn.light,.button.secondary{
  background:white!important;color:var(--tkse-navy)!important;border:1px solid rgba(7,27,52,.12)!important;box-shadow:0 8px 22px rgba(7,27,52,.08)!important;
}

/* Corporate hero */
.hero,.hero-section,.hybrid-hero,.f-hero{
  position:relative!important;overflow:hidden!important;
  background:linear-gradient(140deg,#06172d 0%,#092846 45%,#0f513d 100%)!important;
  color:white!important;padding:86px 0 92px!important;
  border-bottom-left-radius:38px!important;border-bottom-right-radius:38px!important;
}
.hero:before,.hero-section:before,.hybrid-hero:before,.f-hero:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.045) 1px,transparent 1px),
    radial-gradient(circle at 80% 20%,rgba(88,214,141,.22),transparent 25%),
    radial-gradient(circle at 15% 80%,rgba(255,255,255,.12),transparent 28%);
  background-size:72px 72px,72px 72px,auto,auto;
  opacity:.9;
}
.hero:after,.hero-section:after,.hybrid-hero:after,.f-hero:after{
  content:"";position:absolute;right:-120px;bottom:-180px;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(33,181,115,.28),transparent 63%);
  filter:blur(2px);
}
.hero .wrap,.hybrid-hero .wrap,.f-hero .wrap,.hero-grid,.f-hero-grid{position:relative;z-index:2}
.hero h1,.hybrid-hero h1,.f-hero h1{
  color:#fff!important;font-size:clamp(42px,5.8vw,76px)!important;line-height:.98!important;letter-spacing:-.055em!important;margin:0 0 24px!important;
  max-width:920px!important;font-weight:920!important;
}
.hero h1 span,.hybrid-hero h1 span,.f-hero h1 span{color:#76f0ae!important;text-shadow:0 0 28px rgba(88,214,141,.18)}
.hero p,.hybrid-hero p,.f-hero p,.f-lead{color:rgba(255,255,255,.82)!important;font-size:clamp(17px,2vw,22px)!important;line-height:1.65!important;max-width:730px!important}
.eyebrow,.f-eyebrow,.section-kicker{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  color:var(--tkse-green-2)!important;background:rgba(33,181,115,.10)!important;border:1px solid rgba(33,181,115,.20)!important;
  border-radius:999px!important;padding:8px 13px!important;font-weight:900!important;font-size:12px!important;letter-spacing:.12em!important;text-transform:uppercase!important;
}
.f-hero .f-eyebrow,.hybrid-hero .eyebrow,.hero .eyebrow{background:rgba(255,255,255,.10)!important;color:#baf7d4!important;border-color:rgba(255,255,255,.16)!important}
.hero-card-wrap,.f-visual,.hero-photo,.project-card,.contact-card{
  border-radius:var(--tkse-radius-xl)!important;box-shadow:0 32px 90px rgba(0,0,0,.25)!important;
}
.hero-photo img,.f-visual img,.project-card img{
  border-radius:var(--tkse-radius-xl)!important;aspect-ratio:1.15/1!important;object-fit:cover!important;
}
.contact-card,.f-info-card{
  background:rgba(255,255,255,.92)!important;color:var(--tkse-navy)!important;border:1px solid rgba(255,255,255,.72)!important;backdrop-filter:blur(14px)!important;
}

/* Sections */
.section,.f-section,.content-section{padding:82px 0!important;position:relative}
.alt,.f-alt{background:linear-gradient(180deg,#f4f8fb,#ffffff)!important}
.section-title h2,.f-section-title h2,.section h2,.f-section h2{
  color:var(--tkse-navy)!important;font-size:clamp(30px,3.6vw,50px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:920!important;margin:12px 0 14px!important;
}
.section-title p,.f-section-title p,.section p,.f-section p{color:var(--tkse-muted);line-height:1.7}
.white-panel,.dark-panel,.feature,.f-card,.mini-card,.f-related,.stats-box,.project-info,.landing-card,.service-card,.solution-card,.customer-card{
  border-radius:var(--tkse-radius-xl)!important;border:1px solid rgba(7,27,52,.10)!important;background:rgba(255,255,255,.86)!important;
  box-shadow:var(--tkse-shadow-soft)!important;overflow:hidden!important;
}
.white-panel,.feature,.f-card,.mini-card,.f-related,.service-card,.solution-card,.customer-card{padding:28px!important}
.dark-panel,.feature.dark{
  background:linear-gradient(145deg,var(--tkse-navy),#092846)!important;color:white!important;border-color:rgba(255,255,255,.10)!important;
}
.dark-panel h2,.dark-panel h3,.feature.dark h2,.feature.dark h3{color:white!important}
.f-card-grid,.section-grid3,.customer-cards,.cards-grid,.solutions-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;
}
.f-card,.feature,.mini-card,.service-card,.solution-card,.customer-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}
.f-card:hover,.feature:hover,.mini-card:hover,.service-card:hover,.solution-card:hover,.customer-card:hover{transform:translateY(-5px)!important;box-shadow:var(--tkse-shadow)!important;border-color:rgba(33,181,115,.28)!important}
.f-card span,.stat i,.feature-list i,.check-list i{
  color:white!important;background:linear-gradient(135deg,var(--tkse-navy),var(--tkse-green))!important;border-radius:15px!important;
}
.f-card h3,.feature h3,.mini-card h3,.service-card h3,.solution-card h3{font-size:22px!important;color:var(--tkse-navy)!important;letter-spacing:-.02em!important;margin-top:14px!important}
.dark-panel .check-list span,.dark-panel .check-list small,.feature.dark small,.feature.dark p{color:rgba(255,255,255,.78)!important}
.stats-bridge{margin-top:-40px!important;position:relative;z-index:5!important}.stats-box{padding:18px!important;background:white!important}
.stat{display:flex!important;align-items:flex-start!important;gap:14px!important;padding:16px!important;border-radius:20px!important;background:#f8fbfd!important}
.stat b{color:var(--tkse-navy)!important}.stat span{color:var(--tkse-muted)!important;font-size:14px!important;line-height:1.45!important}
.partners{background:white!important;border:1px solid var(--tkse-line)!important;border-radius:999px!important;padding:16px 24px!important;box-shadow:var(--tkse-shadow-soft)!important}
.partners span{border:1px solid rgba(7,27,52,.10)!important;border-radius:999px!important;padding:9px 14px!important;background:#f8fbfd!important;color:#31455f!important;font-weight:800!important}
.final-cta,.f-cta .wrap{
  background:linear-gradient(135deg,var(--tkse-navy),#0d385e 62%,#0c5b43)!important;color:white!important;border-radius:34px!important;padding:42px!important;box-shadow:0 30px 80px rgba(7,27,52,.20)!important;
}
.final-cta h2,.f-cta h2{color:white!important}.final-cta p,.f-cta p{color:rgba(255,255,255,.78)!important}

/* Forms */
input,select,textarea{
  border:1px solid rgba(7,27,52,.13)!important;border-radius:16px!important;background:white!important;color:var(--tkse-text)!important;
  padding:14px 16px!important;outline:none!important;box-shadow:0 8px 18px rgba(7,27,52,.04)!important;
}
input:focus,select:focus,textarea:focus{border-color:rgba(33,181,115,.65)!important;box-shadow:0 0 0 4px rgba(33,181,115,.12)!important}

/* Footer */
.footer,.site-footer,.f-footer{
  background:linear-gradient(180deg,#06172d,#041120)!important;color:white!important;padding:68px 0 28px!important;margin-top:0!important;
}
.footer a,.site-footer a,.f-footer a{color:rgba(255,255,255,.78)!important;display:block!important;margin:9px 0!important}
.footer h3,.site-footer h3,.f-footer h3{color:white!important;font-size:16px!important;letter-spacing:.02em!important}
.footer p,.site-footer p,.f-footer p,.copy,.copyright{color:rgba(255,255,255,.62)!important;line-height:1.65!important}
.footer-grid,.f-footer-grid{display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1.1fr 1.1fr!important;gap:28px!important}

/* Floating CTA */
.floating,.floating-contact{position:fixed!important;right:18px!important;bottom:88px!important;z-index:9998!important;display:flex!important;flex-direction:column!important;gap:10px!important}
.floating a,.float-btn{width:48px!important;height:48px!important;border-radius:50%!important;background:linear-gradient(135deg,var(--tkse-green),#0c8f59)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:900!important;box-shadow:0 14px 34px rgba(33,181,115,.32)!important}
.mobile-cta{position:fixed!important;left:12px!important;right:12px!important;bottom:12px!important;z-index:9999!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(7,27,52,.10)!important;border-radius:999px!important;padding:8px!important;box-shadow:0 22px 45px rgba(7,27,52,.18)!important;backdrop-filter:blur(18px)!important}
.mobile-cta a{border-radius:999px!important;font-weight:850!important}.mobile-cta .main{background:linear-gradient(135deg,var(--tkse-green),#0c8f59)!important;color:white!important}

/* Language */
.lang-current,.lang-v2 button{border:1px solid rgba(7,27,52,.12)!important;background:white!important;color:var(--tkse-navy)!important;border-radius:999px!important;padding:11px 14px!important;font-weight:850!important}
.lang-menu{border:1px solid rgba(7,27,52,.10)!important;border-radius:16px!important;background:white!important;box-shadow:var(--tkse-shadow-soft)!important;overflow:hidden!important}

/* Motion */
.tkse-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.tkse-reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.tkse-reveal{opacity:1;transform:none}}

/* Responsive */
@media (max-width:1024px){
  .hybrid-menu,.site-menu,.nav-menu,.main-menu{display:none!important;position:absolute!important;left:18px!important;right:18px!important;top:78px!important;flex-direction:column!important;align-items:stretch!important;background:white!important;border:1px solid rgba(7,27,52,.10)!important;border-radius:24px!important;padding:14px!important;box-shadow:var(--tkse-shadow)!important}
  body.tkse-menu-open .hybrid-menu,body.tkse-menu-open .site-menu,body.tkse-menu-open .nav-menu,body.tkse-menu-open .main-menu{display:flex!important}
  .mobile-toggle,.menu-toggle{display:inline-flex!important;margin-left:auto!important;background:white!important;border:1px solid rgba(7,27,52,.12)!important;border-radius:999px!important;width:46px!important;height:46px!important;align-items:center!important;justify-content:center!important;color:var(--tkse-navy)!important}
  .mega,.mega-menu{position:static!important;display:none!important;box-shadow:none!important;margin:8px 0!important;width:100%!important}.has-mega.is-open .mega,.has-mega.is-open .mega-menu{display:block!important}
  .hero,.hybrid-hero,.f-hero{padding:62px 0 72px!important;border-radius:0 0 28px 28px!important}
  .f-card-grid,.section-grid3,.customer-cards,.cards-grid,.solutions-grid,.footer-grid,.f-footer-grid{grid-template-columns:1fr!important}
  .nav-actions{display:none!important}.wrap,.container,.site-wrap{width:min(100% - 28px,var(--tkse-wrap))}
}
@media (max-width:680px){
  .hero h1,.hybrid-hero h1,.f-hero h1{font-size:40px!important}.section,.f-section{padding:58px 0!important}.final-cta,.f-cta .wrap{padding:28px!important;border-radius:26px!important}.floating,.floating-contact{display:none!important}.partners{border-radius:24px!important}.partners span{display:inline-flex!important;margin:4px!important}
}
