@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,500;0,600;0,700;1,600&family=DM+Sans:wght@300;400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root {
    --coal: #08090b;
    --graphite: #111318;
    --steel: #1c2027;
    --ember: #f05a16;
    --ember-hot: #ff782f;
    --electric: #1d54a3;
    --paper: #f0efe9;
    --muted: #9a9da3;
    --line: rgba(255,255,255,.13);
    --shell: min(1320px, calc(100vw - 96px));
}

html { scroll-behavior: smooth; }
body.home-page { background: var(--coal); color: var(--paper); font-family: 'DM Sans', sans-serif; overflow-x: hidden; }
body.home-page::selection { background: var(--ember); color: #fff; }
.home-page main { overflow: clip; }
.energy-shell { width: var(--shell); margin-inline: auto; position: relative; }
.section-pad { padding: clamp(100px, 12vw, 180px) 0; }

/* Header shared by home and inner pages */
.header { position: fixed; inset: 0 0 auto; z-index: 1000; display: flex; justify-content: center; padding: 22px 0; background: transparent; isolation: isolate; transform: translateZ(0); transition: padding .45s ease, background .45s ease, transform .45s ease; }
.header::before { content: ''; position: absolute; inset: 0 0 -60px; background: linear-gradient(180deg, rgba(5,6,8,.86), transparent); pointer-events: none; transition: opacity .4s; }
.header__container { width: min(1420px, calc(100vw - 64px)); height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 0 8px 0 18px; position: relative; border: 1px solid transparent; border-radius: 2px; transition: all .45s cubic-bezier(.2,.8,.2,1); }
.header__logo { display: flex; position: relative; z-index: 2; }
.header__logo img { width: 216px; height: auto; transition: width .4s; }
.header__nav { position: absolute; left: 50%; transform: translateX(-50%); width: auto; padding: 0; background: transparent; border-radius: 0; box-shadow: none; }
.header__menu { display: flex; align-items: center; gap: clamp(16px, 1.35vw, 24px); }
.header__menu li { display: flex; }
.header__menu a { color: rgba(255,255,255,.82); font: 500 12px/1 'IBM Plex Mono', monospace; text-transform: uppercase; letter-spacing: .07em; white-space: nowrap; position: relative; padding: 10px 0; }
.header__menu a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: 2px; height: 1px; background: var(--ember); transition: right .3s; }
.header__menu a:hover { color: #fff; }
.header__menu a:hover::after { right: 0; }
.header__actions { display: flex; align-items: center; gap: 12px; }
.header__contact { height: 42px; display: flex; align-items: center; gap: 14px; padding: 0 6px 0 18px; background: var(--ember); color: #fff !important; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.header__contact i { width: 30px; height: 30px; display: grid; place-items: center; background: rgba(0,0,0,.16); font-size: 17px; }
.header__mobile { width: 44px; height: 42px; padding: 0; border: 1px solid var(--line); background: transparent; display: none; align-items: center; justify-content: center; flex-direction: column; gap: 6px; cursor: pointer; }
.header__mobile span { width: 18px; height: 1px; background: #fff; transition: transform .3s; }
.header.is-compact { padding: 12px 0; }
.header.is-compact::before { opacity: 0; }
.header.is-compact .header__container { width: min(1180px, calc(100vw - 40px)); background: #0a0b0e; border-color: rgba(255,255,255,.12); padding-left: 16px; box-shadow: 0 14px 50px rgba(0,0,0,.32); }
.header.is-compact .header__logo img { width: 178px; }
.mobile-panel { position: fixed; inset: 0; z-index: 999; background: var(--coal); padding: 130px 28px 28px; transform: translateY(-102%); transition: transform .6s cubic-bezier(.76,0,.24,1); display: flex; flex-direction: column; justify-content: space-between; }
.mobile-panel.is-open { transform: none; }
.mobile-panel nav { display: flex; flex-direction: column; }
.mobile-panel nav a { color: #fff; font: 600 clamp(34px,10vw,58px)/1.1 'Barlow Condensed',sans-serif; text-transform: uppercase; border-bottom: 1px solid var(--line); padding: 8px 0; }
.mobile-panel__foot { display: flex; justify-content: space-between; color: var(--muted); font: 11px 'IBM Plex Mono',monospace; text-transform: uppercase; }
body.menu-open { overflow: hidden; }
body.menu-open .header__mobile span:first-child { transform: translateY(3.5px) rotate(45deg); }
body.menu-open .header__mobile span:last-child { transform: translateY(-3.5px) rotate(-45deg); }

/* Hero */
.energy-hero { min-height: 100svh; position: relative; display: flex; align-items: flex-end; isolation: isolate; overflow: hidden; }
.energy-hero__media, .energy-hero__media video, .energy-hero__shade, .energy-hero__grid { position: absolute; inset: 0; }
.energy-hero__media { z-index: -3; background: #050609; }
.energy-hero__media video { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.15); opacity: .38; z-index: 0; }
.energy-hero__shade { background: linear-gradient(90deg, rgba(5,6,8,.94) 0%, rgba(5,6,8,.64) 48%, rgba(5,6,8,.1) 78%), linear-gradient(0deg, var(--coal) 0%, transparent 35%); z-index: 2; pointer-events: none; }
#energy-core { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .92; z-index: 1; pointer-events: none; }
.energy-hero__grid { z-index: -1; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(90deg,#000,transparent 74%); }
.energy-hero__content { width: var(--shell); margin: 0 auto; padding: 190px 0 72px; position: relative; z-index: 2; }
.energy-hero__eyebrow { display: flex; align-items: center; gap: 10px; margin-bottom: 34px; color: #c7c8c9; font: 500 11px 'IBM Plex Mono',monospace; letter-spacing: .1em; text-transform: uppercase; }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--ember); box-shadow: 0 0 0 5px rgba(240,90,22,.15),0 0 22px var(--ember); animation: live 1.8s ease infinite; }
@keyframes live { 50% { opacity: .45; box-shadow: 0 0 0 9px transparent; } }
.energy-hero__title { margin: 0; font: 600 clamp(76px, 11.2vw, 180px)/.72 'Barlow Condensed',sans-serif; letter-spacing: -.035em; text-transform: uppercase; }
.hero-line { display: block; overflow: hidden; padding-bottom: .1em; }
.hero-line > span { display: block; transform: translateY(110%); }
.hero-line--offset { margin-left: 9vw; }
.energy-hero__title em { color: var(--ember); font-style: italic; }
.energy-hero__bottom { display: flex; align-items: flex-end; gap: 62px; margin: 28px 0 0 35%; }
.energy-hero__bottom p { width: min(430px, 40vw); color: #b8b9bc; font-size: 15px; line-height: 1.65; }
.energy-button { min-height: 60px; display: inline-flex; align-items: center; gap: 24px; padding: 0 8px 0 24px; color: #fff !important; font: 600 12px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .04em; transition: transform .3s, background .3s; white-space: nowrap; }
.energy-button i { width: 44px; height: 44px; display: grid; place-items: center; font-size: 20px; }
.energy-button--solid { background: var(--ember); }
.energy-button--solid i { background: #d64608; }
.energy-button:hover { transform: translateY(-4px); background: var(--ember-hot); }
.energy-hero__rail { position: absolute; right: 28px; bottom: 70px; display: flex; flex-direction: column; align-items: center; gap: 13px; color: #fff; font: 10px 'IBM Plex Mono',monospace; z-index: 3; }
.energy-hero__rail span { writing-mode: vertical-rl; letter-spacing: .15em; color: #8e9093; }
.energy-hero__rail i { width: 1px; height: 65px; display: block; background: linear-gradient(var(--ember) 50%,rgba(255,255,255,.2) 50%); animation: rail 2s ease infinite; }
.energy-hero__rail b { font-weight: 400; }
@keyframes rail { 50% { background-position-y: 32px; } }

/* Global section language */
.section-index { width: 230px; flex: 0 0 230px; display: flex; align-items: center; gap: 16px; align-self: flex-start; font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); }
.section-index span { color: var(--ember); }
.section-index p { margin: 0; }
.section-head { display: flex; align-items: flex-end; margin-bottom: 72px; }
.section-head h2 { margin: 0; font: 600 clamp(46px,6vw,82px)/.92 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.025em; }
.section-head h2 em { color: var(--ember); font-style: normal; }
.section-head > .text-link { margin-left: auto; }
.text-link { display: inline-flex; gap: 12px; align-items: center; color: #fff !important; font: 500 11px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .08em; padding-bottom: 8px; border-bottom: 1px solid var(--ember); }
.text-link i { color: var(--ember); font-size: 18px; transition: transform .25s; }
.text-link:hover i { transform: translateX(5px); }

/* Intro */
.energy-intro { background: var(--paper); color: var(--coal); }
.energy-intro .energy-shell { display: grid; grid-template-columns: 230px 1fr 300px; gap: 0; align-items: end; }
.energy-intro .section-index { color: #6d7075; align-self: start; }
.energy-intro__statement > p { color: #77797c; font: 500 12px 'IBM Plex Mono',monospace; text-transform: uppercase; margin-bottom: 28px; }
.energy-intro__statement h2 { max-width: 760px; margin: 0; font: 500 clamp(54px,7vw,102px)/.92 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.035em; }
.energy-intro__statement h2 em { color: var(--ember); font-style: italic; }
.energy-intro__aside { padding-left: 48px; border-left: 1px solid rgba(0,0,0,.16); }
.energy-intro__aside > span { color: var(--ember); font: 500 11px 'IBM Plex Mono',monospace; text-transform: uppercase; }
.energy-intro__aside p { color: #52555a; font-size: 14px; line-height: 1.7; margin: 20px 0 32px; }
.energy-intro .text-link { color: var(--coal) !important; }

/* Services */
.energy-services { background: var(--coal); }
.energy-services .energy-shell { isolation: isolate; }
.energy-services__list { border-top: 1px solid var(--line); position: relative; z-index: 2; }
.service-row { min-height: 118px; display: grid; grid-template-columns: 120px 1.4fr 1fr 52px; align-items: center; color: var(--paper) !important; border-bottom: 1px solid var(--line); transition: padding .35s, background .35s; position: relative; }
.service-row::before { content: ''; position: absolute; inset: 0; background: var(--ember); transform: scaleY(0); transform-origin: bottom; transition: transform .35s cubic-bezier(.22,.61,.36,1); z-index: -1; }
.service-row:hover::before { transform: scaleY(1); }
.service-row:hover { padding-inline: 22px; }
.service-row__no { font: 500 11px 'IBM Plex Mono',monospace; color: var(--ember); }
.service-row:hover .service-row__no { color: #fff; }
.service-row h3 { font: 500 clamp(32px,4vw,55px) 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.service-row p { color: var(--muted); font-size: 13px; }
.service-row:hover p { color: rgba(255,255,255,.76); }
.service-row > i { width: 45px; height: 45px; border: 1px solid rgba(255,255,255,.25); display: grid; place-items: center; font-size: 22px; }
.service-preview { width: 310px; height: 390px; position: fixed; z-index: 20; pointer-events: none; opacity: 0; transform: translate(-50%,-50%) rotate(3deg) scale(.85); overflow: hidden; box-shadow: 0 25px 80px rgba(0,0,0,.4); }
.service-preview img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.7); }

/* Product cards */
.energy-projects { background: var(--graphite); }
.energy-projects__slider { overflow: visible; padding-bottom: 1px; }
.energy-projects__slider .swiper-wrapper { align-items: stretch; }
.energy-card { width: min(420px, 76vw); height: auto; min-height: 622px; display: flex; flex-direction: column; color: #fff !important; }
.energy-card__image { height: 510px; flex: 0 0 510px; position: relative; overflow: hidden; background: #1a1c21; }
.energy-card__image::after { content: ''; position: absolute; inset: 0; box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.energy-card__image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.55) brightness(.8); transition: transform .8s cubic-bezier(.2,.8,.2,1),filter .5s; }
.energy-card__image span { position: absolute; left: 18px; top: 18px; z-index: 2; width: 38px; height: 38px; display: grid; place-items: center; background: rgba(8,9,11,.75); backdrop-filter: blur(7px); color: var(--ember); font: 10px 'IBM Plex Mono',monospace; }
.energy-card:hover img { transform: scale(1.055); filter: saturate(1) brightness(.9); }
.energy-card__body { min-height: 112px; flex: 1 0 112px; gap: 20px; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; }
.energy-card__body h3 { min-height: 2.1em; margin: 0; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font: 500 25px/1.05 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.energy-card__body i { flex: 0 0 auto; }
.energy-card__body i { color: var(--ember); font-size: 24px; }
.energy-projects__controls { position: relative; clear: both; margin-top: 42px; display: flex; align-items: center; gap: 18px; }
.energy-projects__controls button { flex: 0 0 48px; width: 48px; height: 48px; border: 1px solid var(--line); background: transparent; color: #fff; font-size: 18px; cursor: pointer; }
.project-progress { height: 2px !important; position: relative !important; flex: 1; background: rgba(255,255,255,.12); }
.project-progress .swiper-pagination-progressbar-fill { background: var(--ember); }

/* Numbers */
.energy-numbers { background: var(--paper); color: var(--coal); position: relative; }
.energy-numbers__line { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.energy-numbers__line::before,.energy-numbers__line::after { content: ''; position: absolute; border: 1px solid rgba(240,90,22,.17); border-radius: 50%; width: 65vw; height: 65vw; right: -26vw; top: -26vw; transform-origin: center; will-change: transform, opacity; animation: energy-wave-outer 9s ease-in-out infinite alternate; }
.energy-numbers__line::after { width: 42vw; height: 42vw; right: -14vw; top: -14vw; border-color: rgba(240,90,22,.22); animation: energy-wave-inner 7s ease-in-out infinite alternate-reverse; }
@keyframes energy-wave-outer {
    0% { transform: translate3d(0,0,0) scale(.96); opacity: .55; }
    50% { transform: translate3d(-1.4vw,1vw,0) scale(1.035); opacity: 1; }
    100% { transform: translate3d(.8vw,2vw,0) scale(1.075); opacity: .68; }
}
@keyframes energy-wave-inner {
    0% { transform: translate3d(0,0,0) scale(.94); opacity: .5; }
    50% { transform: translate3d(1vw,-1.2vw,0) scale(1.055); opacity: .95; }
    100% { transform: translate3d(-1.2vw,1.4vw,0) scale(1.1); opacity: .62; }
}
.energy-numbers .section-index { color: #64666a; margin-bottom: 70px; }
.energy-numbers__grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(0,0,0,.17); }
.energy-stat { padding: 50px 28px 0; min-height: 280px; border-right: 1px solid rgba(0,0,0,.17); }
.energy-stat:first-child { padding-left: 0; }
.energy-stat:last-child { border: 0; }
.energy-stat__value { display: flex; align-items: flex-start; gap: 7px; white-space: nowrap; }
.energy-stat strong { font: 600 clamp(58px,6vw,94px)/1 'Barlow Condensed',sans-serif; letter-spacing: -.04em; }
.energy-stat sup { position: static; color: var(--ember); line-height: 1; vertical-align: baseline; }
.energy-stat sup.is-plus { margin-top: .12em; font: 600 clamp(30px,2.5vw,42px)/1 'Barlow Condensed',sans-serif; }
.energy-stat sup.is-unit { margin-top: .3em; font: 600 clamp(22px,1.8vw,30px)/1 'Barlow Condensed',sans-serif; letter-spacing: -.02em; }
.energy-stat h3 { margin-top: 38px; font: 600 19px 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.energy-stat p { max-width: 210px; color: #6d7074; font-size: 12px; line-height: 1.6; margin-top: 9px; }

/* Film */
.energy-film { background: var(--coal); }
.energy-film__frame { height: min(78vh, 820px); min-height: 580px; position: relative; overflow: hidden; }
.energy-film video { width: 100%; height: 120%; position: absolute; top: -10%; object-fit: cover; filter: grayscale(.82) contrast(1.1); }
.energy-film__frame::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(5,6,8,.78),transparent 70%),linear-gradient(0deg,rgba(5,6,8,.6),transparent); }
.energy-film__overlay { position: absolute; z-index: 2; left: clamp(30px,7vw,100px); bottom: clamp(35px,8vw,105px); }
.energy-film__overlay span { font: 500 10px 'IBM Plex Mono',monospace; letter-spacing: .14em; text-transform: uppercase; color: #b9bbbd; }
.energy-film__overlay h2 { margin-top: 22px; font: 600 clamp(55px,8vw,112px)/.8 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.energy-film__overlay em { color: var(--ember); font-style: italic; }

/* Journal */
.energy-journal { background: var(--graphite); }
.energy-journal__grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 24px; }
.journal-card { padding-top: 16px; border-top: 1px solid var(--line); }
.journal-card__image { display: block; height: 280px; overflow: hidden; margin-bottom: 20px; }
.journal-card:first-child .journal-card__image { height: 420px; }
.journal-card__image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.5); transition: transform .7s,filter .5s; }
.journal-card:hover img { transform: scale(1.04); filter: saturate(1); }
.journal-card__meta { display: flex; justify-content: space-between; color: var(--muted); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .08em; }
.journal-card__meta span { color: var(--ember); }
.journal-card h3 { font: 500 clamp(24px,2.5vw,36px)/1.05 'Barlow Condensed',sans-serif; text-transform: uppercase; margin: 18px 0 12px; }
.journal-card h3 a { color: #fff; }
.journal-card p { color: var(--muted); font-size: 12px; line-height: 1.6; }

/* CTA */
.energy-contact { min-height: 72vh; display: flex; align-items: center; background: var(--ember); color: #fff; position: relative; overflow: hidden; }
.energy-contact::after { content: 'SERİ'; position: absolute; right: -3vw; bottom: -17vw; font: 700 46vw/.8 'Barlow Condensed',sans-serif; color: rgba(0,0,0,.075); pointer-events: none; }
.energy-contact__glow { position: absolute; width: 60vw; height: 60vw; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; right: -20vw; top: -20vw; }
.energy-contact .energy-shell { z-index: 2; padding: 90px 0; }
.energy-contact .energy-shell > span { font: 500 11px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.energy-contact h2 { margin: 24px 0 50px; font: 600 clamp(72px,11vw,154px)/.9 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.03em; }
.energy-contact h2 em { color: var(--coal); font-style: italic; }
.energy-button--dark { background: var(--coal); }
.energy-button--dark i { background: #191b1f; }

/* Footer and inner-page dark color system */
.footer { position: relative; overflow: hidden; background: #060708 !important; border-top: 1px solid rgba(255,255,255,.1); color: var(--paper); }
.footer::before { content: ''; position: absolute; width: 56vw; height: 56vw; right: -29vw; top: -35vw; border: 1px solid rgba(240,90,22,.13); border-radius: 50%; pointer-events: none; }
.footer__container { width: var(--shell) !important; max-width: 1320px !important; position: relative; z-index: 2; }
.footer__cta { min-height: 520px; padding: 105px 0 80px; display: flex; justify-content: space-between; align-items: flex-end; }
.footer__cta>div>span { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.footer__cta h2 { margin: 28px 0 0; font: 600 clamp(67px,8.5vw,120px)/.82 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.03em; }
.footer__cta h2 em { color: var(--ember); font-style: italic; }
.footer__cta>a { flex: 0 0 142px; width: 142px; height: 142px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 12px; border-radius: 50%; background: var(--ember); color: #fff !important; font: 600 10px/1.35 'IBM Plex Mono',monospace; text-align: center; text-transform: uppercase; transition: transform .4s,background .3s; }
.footer__cta>a i { font-size: 24px; }
.footer__cta>a:hover { transform: rotate(7deg) scale(1.05); background: var(--ember-hot); }
.footer__energy-line { width: 100%; height: 1px; position: relative; background: rgba(255,255,255,.12); }
.footer__energy-line i { position: absolute; left: 0; top: -1px; width: 22%; height: 2px; background: var(--ember); }
.footer__main { display: grid; grid-template-columns: 1.3fr .7fr 1fr 1fr; gap: clamp(35px,5vw,80px); padding: 80px 0 90px; }
.footer__brand { display: flex; align-items: flex-start; flex-direction: column; }
.footer__logo { display: inline-flex; }
.footer__logo img { max-height: 30px; width: auto; }
.footer__brand>p { max-width: 300px; margin: 28px 0 35px; color: #85888d; font-size: 13px; line-height: 1.7; }
.footer__menu { gap: 22px !important; }
.footer__menu h6,.footer__contact h6 { margin: 0; color: var(--ember) !important; font: 500 9px 'IBM Plex Mono',monospace !important; text-transform: uppercase; letter-spacing: .14em; }
.footer__menu ul { gap: 13px !important; }
.footer__menu ul a { color: #b9bbbe !important; font-size: 13px; line-height: 1.35; transition: color .25s,transform .25s; }
.footer__menu ul a:hover { color: #fff !important; transform: translateX(4px); }
.footer__contact { max-width: none !important; gap: 13px !important; color: #b9bbbe !important; }
.footer__contact h6 { margin-bottom: 9px; }
.footer__contact a { color: #b9bbbe !important; font-size: 13px; }
.footer__contact a:hover { color: var(--ember) !important; }
.footer__contact .footer__contact-phone { margin-bottom: 8px; color: #fff !important; font: 500 29px/1 'Barlow Condensed',sans-serif; }
.footer__contact address { max-width: 280px; margin-top: 12px; color: #74777c; font-size: 12px; line-height: 1.65; font-style: normal; }
.footer__social { gap: 8px !important; }
.footer__social a { width: 38px !important; height: 38px !important; border: 1px solid rgba(255,255,255,.12); border-radius: 0 !important; background: transparent !important; color: #fff !important; }
.footer__social a:hover { border-color: var(--ember); background: var(--ember) !important; }
.footer__bottom { min-height: 84px; padding: 24px 0 !important; display: grid !important; grid-template-columns: 1fr auto 1fr; border-top: 1px solid rgba(255,255,255,.1); color: #6f7277; font: 500 9px/1.5 'IBM Plex Mono',monospace !important; text-transform: uppercase; letter-spacing: .06em; }
.footer__copyright { max-width: 520px; }
.footer__back-top { display: inline-flex; align-items: center; gap: 10px; color: #fff !important; }
.footer__back-top i { color: var(--ember); font-size: 16px; }
.footer__oyos { justify-self: end; }
.footer__oyos a { color: var(--ember) !important; text-decoration: none !important; }
.cursor { background: var(--ember) !important; width: 280px !important; height: 280px !important; filter: blur(120px) !important; opacity: .12 !important; }
.whatsapp-float { position: fixed; z-index: 990; left: 26px; bottom: 26px; width: 215px; height: 68px; padding: 7px; display: flex; align-items: center; gap: 12px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); background: rgba(8,9,11,.94); box-shadow: 0 18px 55px rgba(0,0,0,.3); color: #fff !important; transform: translateZ(0); animation: whatsapp-attention 6s ease-in-out infinite; transition: width .45s cubic-bezier(.2,.8,.2,1),bottom .45s cubic-bezier(.2,.8,.2,1),border-color .3s,transform .3s,box-shadow .3s; }
.whatsapp-float::before { content: ''; position: absolute; top: 0; bottom: 0; left: -70%; width: 55%; background: linear-gradient(90deg,transparent,rgba(37,211,102,.17),transparent); transform: skewX(-18deg); animation: whatsapp-sweep 6s ease-in-out infinite; pointer-events: none; }
@keyframes whatsapp-attention { 0%,72%,100% { border-color: rgba(255,255,255,.14); box-shadow: 0 18px 55px rgba(0,0,0,.3); } 80% { border-color: rgba(37,211,102,.48); box-shadow: 0 18px 55px rgba(0,0,0,.3),0 0 0 4px rgba(37,211,102,.07); } }
@keyframes whatsapp-sweep { 0%,70% { left: -70%; opacity: 0; } 76% { opacity: 1; } 90%,100% { left: 130%; opacity: 0; } }
.whatsapp-float__icon { width: 52px; height: 52px; margin-left: auto; flex: 0 0 52px; display: grid; place-items: center; position: relative; z-index: 2; background: #25d366; color: #07110a; }
.whatsapp-float__copy { min-width: 120px; display: flex; flex-direction: column; gap: 4px; position: relative; z-index: 2; }
.whatsapp-float__copy small { display: flex; align-items: center; gap: 6px; color: #8d9196; font: 500 8px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .08em; }
.whatsapp-float__copy small i { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: #25d366; box-shadow: 0 0 0 0 rgba(37,211,102,.35); animation: whatsapp-online 2.2s ease-out infinite; }
@keyframes whatsapp-online { 60%,100% { box-shadow: 0 0 0 7px transparent; } }
.whatsapp-float__copy strong { font: 500 14px 'DM Sans',sans-serif; }
.whatsapp-float:hover { border-color: rgba(37,211,102,.55); transform: translateY(-5px); box-shadow: 0 24px 65px rgba(0,0,0,.42); }
.whatsapp-float:hover { animation-play-state: paused; }
.whatsapp-float:focus-visible { outline: 2px solid #25d366; outline-offset: 4px; }
.whatsapp-float.is-footer-visible { bottom: 102px; }
.inner-page { background: #0c0e12; color: #edece6; font-family: 'DM Sans',sans-serif; padding-top: 100px; }
.inner-page .header { background: transparent; }
.inner-page .cms-title h1,.inner-page .cms-page__title h1,.inner-page .cms-product__content h1 { font-family: 'Barlow Condensed',sans-serif; text-transform: uppercase; font-size: clamp(42px,6vw,78px); }
.inner-page .cms-title span,.inner-page .cms-page__content,.inner-page .cms-product__content-description { color: #a5a7ab; }
.inner-page .cms-post,.inner-page .cms-contact__wrapper-form,.inner-page .cms-product__item { background: #15181e; border-color: rgba(255,255,255,.1); color: #eee; }
.inner-page .cms-post a,.inner-page .cms-page a,.inner-page .cms-product a { color: #fff; }
.inner-page .cms-post__category,.inner-page .cms-product__item h2,.inner-page .cms-contact__items i { color: var(--ember) !important; }
.inner-page .cms-button,.inner-page .cms-contact__wrapper-form>button { background: var(--ember); }
.inner-page input,.inner-page textarea { background: #0c0e12; border-color: rgba(255,255,255,.16); color: #fff; }

/* Inner page content cards */
.inner-page .cms-category { margin-bottom: clamp(90px,10vw,150px); }
.inner-page .cms-category__container { width: var(--shell); max-width: 1320px; }
.inner-page .cms-category__wrapper { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 54px 28px; }
.inner-page .cms-post { position: relative; min-width: 0; padding: 14px 0 22px; overflow: visible; background: transparent; border: 0; border-top: 1px solid rgba(255,255,255,.16); color: var(--paper); transition: border-color .35s ease; }
.inner-page .cms-post::before { content: ''; position: absolute; left: 0; top: -1px; width: 0; height: 2px; background: var(--ember); transition: width .55s cubic-bezier(.2,.8,.2,1); }
.inner-page .cms-post::after { content: '\2197'; position: absolute; z-index: 3; right: 14px; top: 28px; width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.3); background: rgba(8,9,11,.72); color: #fff; font: 400 22px/1 'DM Sans',sans-serif; transition: color .3s,background .3s,border-color .3s,transform .3s; pointer-events: none; }
.inner-page .cms-post:hover { border-color: rgba(240,90,22,.5); }
.inner-page .cms-post:hover::before { width: 100%; }
.inner-page .cms-post:hover::after { color: #fff; background: var(--ember); border-color: var(--ember); transform: translate(3px,-3px); }
.inner-page .cms-post__img { position: relative; width: 100%; margin: 0 0 22px; display: block; overflow: hidden; background: var(--steel); clip-path: polygon(0 0,calc(100% - 42px) 0,100% 42px,100% 100%,0 100%); }
.inner-page .cms-post__img::after { content: ''; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.12); pointer-events: none; }
.inner-page .cms-post__img img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; border: 0; border-radius: 0; background: var(--steel); filter: grayscale(.72) saturate(.55) brightness(.82); transform: scale(1.002); transition: transform .75s cubic-bezier(.2,.8,.2,1),filter .5s ease; }
.inner-page .cms-post:hover .cms-post__img img { filter: grayscale(0) saturate(.92) brightness(.9); transform: scale(1.055); }
.inner-page .cms-post__category { display: inline-flex; margin-bottom: 10px; color: var(--ember) !important; opacity: 1; font: 500 10px/1 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.inner-page .cms-post > h2 { min-height: 2.05em; margin: 0; padding-right: 34px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font: 500 clamp(25px,2.1vw,34px)/1.03 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.015em; }
.inner-page .cms-post > h2 a { color: var(--paper); transition: color .3s ease; }
.inner-page .cms-post:hover > h2 a { color: var(--ember-hot); }
.inner-page .cms-post a:focus-visible { outline: 2px solid var(--ember); outline-offset: 4px; }

/* About page */
.about-page,.references-page { margin-top: -100px; background: var(--coal); color: var(--paper); }
.about-shell { width: var(--shell); max-width: 1320px; margin-inline: auto; position: relative; }
.about-hero { min-height: 86vh; padding: 190px 0 75px; display: flex; align-items: flex-end; overflow: hidden; position: relative; background: radial-gradient(circle at 78% 35%,rgba(29,84,163,.2),transparent 27%),linear-gradient(135deg,#101319 0%,#08090b 62%); }
.about-hero::before { content: ''; position: absolute; width: 58vw; height: 58vw; border: 1px solid rgba(240,90,22,.2); border-radius: 50%; right: -24vw; top: -29vw; }
.about-hero::after { content: ''; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px); background-size: 82px 82px; mask-image: linear-gradient(90deg,#000,transparent 75%); }
.about-hero .about-shell { z-index: 2; }
.about-hero__top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 62px; padding-top: 18px; border-top: 1px solid var(--line); }
.about-hero__top span,.about-manifesto__label span,.about-principles__head>span,.about-cta .about-shell>span { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.about-hero__top p { width: 360px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.about-hero h1 { margin: 0; max-width: 1050px; font: 600 clamp(82px,11.5vw,170px)/.78 'Barlow Condensed',sans-serif; letter-spacing: -.035em; text-transform: uppercase; }
.about-hero h1 em { color: var(--ember); font-style: italic; }
.about-hero__year { position: absolute; right: 0; bottom: 6px; display: flex; align-items: flex-end; gap: 13px; }
.about-hero__year strong { color: rgba(255,255,255,.12); font: 600 clamp(82px,10vw,142px)/.75 'Barlow Condensed',sans-serif; }
.about-hero__year span { color: var(--muted); font: 500 9px/1.35 'IBM Plex Mono',monospace; text-transform: uppercase; }
.about-manifesto { padding: clamp(100px,12vw,180px) 0; background: var(--paper); color: var(--coal); }
.about-manifesto .about-shell { display: grid; grid-template-columns: 230px 1fr; }
.about-manifesto__label { padding-top: 12px; display: flex; align-items: flex-start; gap: 18px; }
.about-manifesto__label i { width: 52px; height: 1px; margin-top: 5px; background: rgba(0,0,0,.25); }
.about-manifesto__copy h2 { max-width: 900px; margin: 0 0 58px; font: 600 clamp(56px,7vw,100px)/.9 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.03em; }
.about-manifesto__copy h2 em { color: var(--ember); font-style: italic; }
.about-lead { max-width: 760px; padding-left: 80px; color: #52555a; font-size: clamp(17px,1.5vw,21px); line-height: 1.75; }
.about-lead p { margin: 0; }
.about-field { padding: 0 0 clamp(110px,12vw,180px); background: var(--paper); color: var(--coal); }
.about-field .about-shell { display: grid; grid-template-columns: 1.55fr .8fr; grid-template-rows: auto auto; gap: 28px; align-items: end; }
.about-field__primary { height: 660px; overflow: hidden; clip-path: polygon(0 0,calc(100% - 60px) 0,100% 60px,100% 100%,0 100%); }
.about-field__secondary { height: 400px; overflow: hidden; }
.about-field img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.78) contrast(1.05); transition: filter .6s,transform 1s; }
.about-field__primary:hover img,.about-field__secondary:hover img { filter: grayscale(0); transform: scale(1.035); }
.about-field__note { grid-column: 2; padding-top: 24px; border-top: 1px solid rgba(0,0,0,.18); }
.about-field__note span { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.about-field__note p { max-width: 330px; margin: 16px 0 0; color: #62656a; font-size: 13px; line-height: 1.65; }
.about-principles { padding: clamp(100px,12vw,170px) 0; background: var(--graphite); }
.about-principles__head { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 75px; }
.about-principles__head h2 { margin: 0; font: 600 clamp(55px,6.5vw,90px)/.9 'Barlow Condensed',sans-serif; text-transform: uppercase; text-align: right; }
.about-principles__head h2 em { color: var(--ember); font-style: normal; }
.about-principles__grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); }
.about-principles__grid article { min-height: 380px; padding: 35px 38px; border-right: 1px solid var(--line); }
.about-principles__grid article:last-child { border: 0; }
.about-principles__grid article>span { color: var(--ember); font: 500 11px 'IBM Plex Mono',monospace; }
.about-principles__grid h3 { margin: 90px 0 28px; font: 600 34px 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.about-principles__grid article>div { color: var(--muted); font-size: 13px; line-height: 1.75; }
.about-principles__grid p { margin: 0; }
.about-cta { min-height: 72vh; padding: 110px 0; display: flex; align-items: center; position: relative; overflow: hidden; background: var(--coal); }
.about-cta::after { content: 'SE'; position: absolute; right: -4vw; bottom: -15vw; color: rgba(240,90,22,.08); font: 700 42vw/.8 'Barlow Condensed',sans-serif; }
.about-cta .about-shell { z-index: 2; }
.about-cta h2 { margin: 25px 0 48px; font: 600 clamp(65px,9vw,130px)/.86 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.about-cta h2 em { color: var(--ember); font-style: italic; }

/* References page */
.references-hero { min-height: 88vh; padding: 190px 0 80px; display: flex; align-items: flex-end; overflow: hidden; position: relative; background: linear-gradient(135deg,#0f1218,var(--coal) 65%); }
.references-hero .about-shell { z-index: 2; }
.references-orbit { position: absolute; width: 70vw; height: 70vw; border: 1px solid rgba(240,90,22,.2); border-radius: 50%; right: -34vw; top: -37vw; animation: energy-wave-outer 10s ease-in-out infinite alternate; }
.references-orbit::before,.references-orbit::after { content: ''; position: absolute; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; inset: 12%; }
.references-orbit::after { inset: 29%; border-color: rgba(29,84,163,.28); }
.references-hero__label,.reference-index__head span,.reference-statement .about-shell>span { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.references-hero h1 { margin: 52px 0 45px; font: 600 clamp(85px,12vw,176px)/.76 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.035em; }
.references-hero h1 em { color: var(--ember); font-style: italic; }
.references-hero__meta { display: flex; justify-content: flex-end; gap: 90px; align-items: flex-end; }
.references-hero__meta>p { max-width: 470px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.references-hero__meta>div { display: flex; align-items: flex-end; gap: 15px; }
.references-hero__meta strong { color: var(--ember); font: 600 88px/.72 'Barlow Condensed',sans-serif; }
.references-hero__meta span { color: var(--muted); font: 500 9px/1.4 'IBM Plex Mono',monospace; text-transform: uppercase; }
.reference-index { padding: clamp(100px,12vw,170px) 0; background: var(--paper); color: var(--coal); }
.reference-index__head { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 70px; }
.reference-index__head p { max-width: 340px; margin: 0; color: #6c6f74; font-size: 13px; }
.reference-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(0,0,0,.2); }
.reference-item { min-height: 150px; padding: 24px 22px; display: grid; grid-template-columns: 38px 1fr 28px; gap: 15px; align-items: center; border-right: 1px solid rgba(0,0,0,.17); border-bottom: 1px solid rgba(0,0,0,.17); transition: color .3s,background .3s,padding .3s; }
.reference-item:nth-child(3n) { border-right: 0; }
.reference-item>span { color: var(--ember); font: 500 9px 'IBM Plex Mono',monospace; }
.reference-item h2 { margin: 0; font: 500 clamp(25px,2vw,32px)/1.05 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.reference-item i { color: #b4b0aa; font-size: 19px; transition: color .3s,transform .3s; }
.reference-item:hover { padding-left: 30px; background: var(--coal); color: #fff; }
.reference-item:hover i { color: var(--ember); transform: rotate(12deg) scale(1.15); }
.reference-statement { min-height: 75vh; padding: 110px 0; display: flex; align-items: center; overflow: hidden; position: relative; background: var(--ember); color: #fff; }
.reference-statement::after { content: '29'; position: absolute; right: -4vw; bottom: -13vw; color: rgba(0,0,0,.08); font: 700 44vw/.8 'Barlow Condensed',sans-serif; }
.reference-statement .about-shell { z-index: 2; }
.reference-statement h2 { margin: 25px 0 48px; font: 600 clamp(62px,8.5vw,124px)/.88 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.reference-statement h2 em { color: var(--coal); font-style: italic; }

/* Category pages */
.category-page { padding-top: 0; }
.category-hero { min-height: 62vh; padding: 180px 0 75px; display: flex; align-items: flex-end; overflow: hidden; position: relative; background: radial-gradient(circle at 82% 15%,rgba(29,84,163,.18),transparent 26%),var(--coal); }
.category-hero__orbit { position: absolute; width: 52vw; height: 52vw; right: -24vw; top: -30vw; border: 1px solid rgba(240,90,22,.22); border-radius: 50%; }
.category-hero__orbit::after { content: ''; position: absolute; inset: 18%; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; }
.category-hero__container { width: var(--shell); max-width: 1320px; margin-inline: auto; position: relative; z-index: 2; }
.category-hero__eyebrow { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.category-hero h1 { max-width: 1000px; margin: 38px 0 30px; font: 600 clamp(74px,10vw,145px)/.82 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.035em; }
.category-hero__description { max-width: 520px; margin-left: auto; color: var(--muted); font-size: 14px; line-height: 1.7; }
.category-hero__foot { margin-top: 50px; display: flex; align-items: center; gap: 14px; color: #797c81; font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.category-hero__foot i { width: 70px; height: 1px; background: var(--ember); }
.category-page .cms-category { padding-top: 110px; }
.category-page--2 .cms-post__category { visibility: hidden; }
.category-page--2 .cms-post__category::after { content: 'Enerji Notları'; visibility: visible; display: block; }
.category-page .cms-pagination a { border-radius: 0; border-color: var(--line); color: #fff; }
.category-page .cms-pagination a.active { background: var(--ember); }
.category-page .cms-team,.category-page .cms-catalogs,.category-page .cms-img-content { padding: 100px 0; }
.inner-page .cms-user { padding-top: 14px; border-top: 1px solid var(--line); }
.inner-page .cms-user img { border-radius: 0; border: 0; filter: grayscale(.65); }
.inner-page .cms-user>h2 { margin-top: 12px; font: 600 27px 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.inner-page .cms-comment { border-radius: 0; border-color: var(--line); background: var(--graphite); }
.inner-page .cms-comment__header { border-color: var(--line); color: var(--ember); font-family: 'IBM Plex Mono',monospace; text-transform: uppercase; }
.inner-page .cms-comment__text { color: #b7b9bc; font-size: 16px; }
.inner-page .cms-catalogs__container { width: var(--shell); max-width: 1200px; }
.inner-page .cms-catalog { border-radius: 0; border-color: var(--line); background: var(--graphite); color: #fff; }
.inner-page .cms-catalog:hover { border-color: var(--ember); background: rgba(240,90,22,.08); }
.inner-page .cms-catalog i { border-radius: 0; color: var(--ember); background: rgba(240,90,22,.12); }

/* Contact page */
.post-page--1 { padding-top: 0; }
.contact-hero { min-height: 72vh; padding: 180px 0 80px; display: flex; align-items: flex-end; overflow: hidden; position: relative; background: linear-gradient(135deg,#101319,var(--coal) 65%); }
.contact-hero__line { position: absolute; width: 68vw; height: 68vw; right: -36vw; top: -38vw; border: 1px solid rgba(240,90,22,.24); border-radius: 50%; }
.contact-hero__line::before,.contact-hero__line::after { content: ''; position: absolute; inset: 14%; border: 1px solid rgba(255,255,255,.07); border-radius: 50%; }
.contact-hero__line::after { inset: 31%; border-color: rgba(29,84,163,.24); }
.contact-shell { width: var(--shell); max-width: 1320px; margin-inline: auto; position: relative; z-index: 2; }
.contact-hero .contact-shell>span,.contact-section-label,.contact-map__head span { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.contact-hero h1 { margin: 45px 0 40px; font: 600 clamp(78px,10.5vw,152px)/.8 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.035em; }
.contact-hero h1 em { color: var(--ember); font-style: italic; }
.contact-hero p { max-width: 500px; margin: 0 0 0 auto; color: var(--muted); font-size: 14px; line-height: 1.7; }
.contact-page .cms-contact { padding: clamp(100px,11vw,160px) 0; background: var(--paper); color: var(--coal); }
.contact-page .cms-contact__container { width: var(--shell); max-width: 1320px; }
.contact-page .cms-contact__wrapper { padding: 0; gap: clamp(60px,8vw,120px); align-items: flex-start; }
.contact-page .cms-contact__wrapper-text { flex: 1; }
.contact-page .cms-contact__wrapper-text h1 { margin: 25px 0 48px; font: 600 clamp(48px,5vw,72px)/.9 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.contact-page .cms-contact__items { margin: 0; border-top: 1px solid rgba(0,0,0,.18); }
.contact-page .cms-contact__items>li { min-height: 92px; padding: 18px 0; border-bottom: 1px solid rgba(0,0,0,.14); }
.contact-page .cms-contact__items>li i { width: 46px; height: 46px; border-radius: 0; color: var(--ember); background: rgba(240,90,22,.1); font-size: 22px; }
.contact-page .cms-contact__items>li div>span:first-child { color: #72757a; font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.contact-page .cms-contact__items a { color: var(--coal); }
.contact-page .cms-contact__wrapper-form { width: min(590px,48vw); margin: 0; padding: 48px; gap: 22px; border: 0; border-radius: 0; background: var(--coal); color: #fff; box-shadow: 0 30px 80px rgba(8,9,11,.16); }
.contact-page .cms-contact__wrapper-form>h3 { margin: 8px 0 20px; font: 600 clamp(36px,4vw,56px)/.95 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.contact-page .cms-contact__form-row label { color: #9a9da3; font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .1em; }
.contact-page .cms-contact__form-row input,.contact-page .cms-contact__form-row textarea { padding: 15px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.2); border-radius: 0; background: transparent; color: #fff; }
.contact-page .cms-contact__form-row input:focus,.contact-page .cms-contact__form-row textarea:focus { border-color: var(--ember); box-shadow: none; }
.contact-page .cms-contact__wrapper-form>button { min-height: 58px; margin-top: 10px; border-radius: 0; background: var(--ember); color: #fff; font: 600 11px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .08em; cursor: pointer; }
.contact-map { margin-top: 130px; }
.contact-map__head { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 30px; }
.contact-map__head p { margin: 0; color: #71747a; font-size: 12px; }
.contact-page .cms-contact__map { display: block; aspect-ratio: 16/6; border-radius: 0; filter: grayscale(1) contrast(.9); }

/* Blog detail */
.post-category--2 { padding-top: 0; }
.blog-detail__shell { width: min(1080px,calc(100vw - 48px)); margin-inline: auto; }
.blog-detail__hero { min-height: 75vh; padding: 180px 0 90px; display: flex; align-items: flex-end; background: radial-gradient(circle at 82% 20%,rgba(29,84,163,.2),transparent 27%),var(--coal); }
.blog-detail__meta { display: flex; justify-content: space-between; padding-top: 18px; border-top: 1px solid var(--line); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.blog-detail__meta a { color: var(--ember); }
.blog-detail__meta span { color: var(--muted); }
.blog-detail__hero h1 { max-width: 1050px; margin: 60px 0 0; font: 600 clamp(65px,8.5vw,120px)/.87 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.03em; }
.blog-detail__description { max-width: 650px; margin: 35px 0 0 auto; color: var(--muted); font-size: 16px; line-height: 1.7; }
.blog-detail__cover { width: min(1320px,calc(100vw - 48px)); height: min(72vh,760px); margin: 0 auto; overflow: hidden; clip-path: polygon(0 0,calc(100% - 70px) 0,100% 70px,100% 100%,0 100%); }
.blog-detail__cover img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.05); }
.blog-detail__body { padding: clamp(90px,10vw,150px) 0; background: var(--paper); color: var(--coal); }
.blog-detail__layout { display: grid; grid-template-columns: 190px minmax(0,720px); gap: 80px; justify-content: center; align-items: start; }
.blog-detail__layout aside { position: sticky; top: 130px; padding-top: 16px; border-top: 1px solid rgba(0,0,0,.22); }
.blog-detail__layout aside span { color: var(--ember); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.blog-detail__layout aside p { margin: 18px 0; color: #74777b; font-size: 11px; line-height: 1.6; }
.blog-detail__layout aside i { display: block; width: 46px; height: 1px; background: var(--ember); }
.blog-detail__content { color: #35383d; font-size: 18px; line-height: 1.85; }
.blog-detail__content>p:first-of-type { font-size: 23px; line-height: 1.65; color: var(--coal); }
.blog-detail__content h1,.blog-detail__content h2,.blog-detail__content h3 { margin: 70px 0 24px; color: var(--coal); font-family: 'Barlow Condensed',sans-serif; line-height: 1; text-transform: uppercase; }
.blog-detail__content h1 { font-size: 48px; }
.blog-detail__content h2 { font-size: 42px; }
.blog-detail__content h3 { font-size: 32px; }
.blog-detail__content img { max-width: 100%; height: auto; margin: 35px 0; }
.blog-detail__content ul { margin: 25px 0; padding-left: 24px; }
.blog-detail__content li { margin-bottom: 10px; list-style: square; }
.blog-related { padding: 120px 0; background: var(--graphite); }
.blog-related__head { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 55px; }
.blog-related__head span { color: var(--ember); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; }
.blog-related__head h2 { margin: 0; font: 600 55px 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.blog-related__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.blog-related__card { position: relative; padding-top: 14px; border-top: 1px solid var(--line); color: #fff; }
.blog-related__card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; margin-bottom: 20px; filter: grayscale(.65); transition: filter .4s,transform .6s; }
.blog-related__card:hover img { filter: grayscale(0); }
.blog-related__card>span { color: var(--ember); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; }
.blog-related__card h3 { max-width: 90%; margin: 12px 0 0; font: 500 26px/1.05 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.blog-related__card>i { position: absolute; right: 0; bottom: 0; color: var(--ember); font-size: 22px; }

/* Product and service detail */
.post-type--product { padding-top: 0; }
.post-type--product .cms-product { padding: 145px 0 0; background: var(--coal); }
.product-detail__head { width: 100%; margin-bottom: 55px; }
.product-detail__head-inner { width: var(--shell); max-width: 1320px; margin-inline: auto; padding-bottom: 18px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .12em; }
.product-detail__head-inner>span { color: var(--ember); }
.product-detail__head-inner a { color: var(--muted); }
.post-type--product .cms-product__container { width: var(--shell); max-width: 1320px; gap: clamp(50px,7vw,105px); padding-bottom: 130px; align-items: flex-start; }
.post-type--product .cms-product__gallery { width: min(610px,48vw); top: 105px; gap: 14px; }
.post-type--product .cms-product__top-img img { aspect-ratio: 1/1; padding: 0; border: 0; border-radius: 0; background: transparent; object-fit: cover; }
.post-type--product .cms-product__bottom-img { border: 1px solid var(--line); border-radius: 0; background: var(--graphite); }
.post-type--product .cms-product__bottom-img.swiper-slide-thumb-active { border-color: var(--ember); }
.product-detail__eyebrow { color: var(--ember); font: 500 10px 'IBM Plex Mono',monospace; text-transform: uppercase; letter-spacing: .14em; }
.post-type--product .cms-product__content { gap: 22px; padding-top: 5px; }
.post-type--product .cms-product__content>h1 { margin: 10px 0; font: 600 clamp(58px,6vw,88px)/.86 'Barlow Condensed',sans-serif; text-transform: uppercase; letter-spacing: -.03em; }
.post-type--product .cms-product__content-description { color: #adafb3; font-size: 16px; line-height: 1.75; }
.post-type--product .cms-button { min-height: 54px; border-radius: 0; background: var(--ember); font: 600 10px 'IBM Plex Mono',monospace; text-transform: uppercase; }
.post-type--product .cms-product__item { margin: 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; }
.post-type--product .cms-product__item h2 { padding: 22px 0; border: 0; color: #fff !important; font: 500 18px 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.post-type--product .cms-product__item h2 i { color: var(--ember); }
.post-type--product .cms-product__item.active .cms-product__item-content { padding: 8px 0 35px; color: #a9abb0; line-height: 1.75; }
.post-type--product .cms-product__item-content h1,.post-type--product .cms-product__item-content h2,.post-type--product .cms-product__item-content h3 { color: #fff; font-family: 'Barlow Condensed',sans-serif; }
.post-type--product .cms-form { gap: 16px; }
.post-type--product .cms-form__item label { color: #8e9196; font-family: 'IBM Plex Mono',monospace; text-transform: uppercase; }
.post-type--product .cms-form__item input,.post-type--product .cms-form__item textarea { padding: 14px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; color: #fff; }
.post-type--product .cms-form button { min-height: 52px; border: 0; border-radius: 0; background: var(--ember); color: #fff; cursor: pointer; }
.form-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
.form-status { display: none; min-height: 54px; padding: 15px 18px; align-items: center; gap: 12px; border-left: 3px solid currentColor; font: 500 11px/1.5 'IBM Plex Mono',monospace; }
.form-status.is-visible { display: flex; }
.form-status.is-success { color: #53c58a; background: rgba(83,197,138,.1); }
.form-status.is-error { color: #ff765d; background: rgba(255,118,93,.1); }
.form-status i { flex: 0 0 auto; font-size: 19px; }
.form-is-loading { cursor: wait; }
.form-is-loading button[type='submit'] { opacity: .65; pointer-events: none; }
.product-detail__cta { width: var(--shell); max-width: 1320px; margin: 0 auto; padding: 90px 0; display: flex; justify-content: space-between; align-items: flex-end; border-top: 1px solid var(--line); }
.product-detail__cta>div>span { color: var(--ember); font: 500 9px 'IBM Plex Mono',monospace; text-transform: uppercase; }
.product-detail__cta h2 { max-width: 750px; margin: 18px 0 0; font: 600 clamp(45px,5vw,70px)/.92 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.post-category--14 .cms-product { background: linear-gradient(135deg,#101319,var(--coal) 55%); }
.post-category--14 .cms-product__top-img img { filter: grayscale(.45) contrast(1.03); }
.post-category--14 .product-detail__cta { border-color: rgba(240,90,22,.35); }

/* Remaining default and image-content pages */
.post-type--default:not(.post-page--2):not(.post-page--140) .cms-page { padding: 160px 0 120px; }
.post-type--default .cms-page__container { width: min(960px,calc(100vw - 48px)); gap: 45px; }
.post-type--default .cms-page__title { padding-bottom: 35px; border-bottom: 1px solid var(--line); }
.post-type--default .cms-page__title h1 { font: 600 clamp(58px,8vw,105px)/.86 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.post-type--default .cms-page__title span { max-width: 700px; color: var(--muted); font-size: 17px; line-height: 1.65; }
.post-type--default .cms-page__img { width: 100%; margin: 0; border-radius: 0; clip-path: polygon(0 0,calc(100% - 55px) 0,100% 55px,100% 100%,0 100%); }
.post-type--default .cms-page__content { max-width: 760px; margin-inline: auto; color: #b1b3b7; font-size: 17px; line-height: 1.8; }
.post-type--default .cms-page__content h1,.post-type--default .cms-page__content h2,.post-type--default .cms-page__content h3 { color: #fff; font-family: 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.post-type--img-content .cms-title { padding: 160px 0 80px; }
.post-type--img-content .cms-img-content__container { width: var(--shell); max-width: 1200px; gap: 25px; }
.post-type--img-content .cms-img-content__item { gap: 25px; }
.post-type--img-content .cms-img-content__item-img img,.post-type--img-content .cms-img-content__item-text { border-radius: 0; border: 0; }
.post-type--img-content .cms-img-content__item-text { background: var(--graphite); align-items: flex-start; }
.post-type--img-content .cms-img-content__item:hover .cms-img-content__item-text { background: var(--ember); }

@media (max-width: 1100px) {
    :root { --shell: calc(100vw - 48px); }
    .header__nav { display: none; }
    .header__mobile { display: flex; }
    .energy-hero__bottom { margin-left: 18%; }
    .energy-intro .energy-shell { grid-template-columns: 160px 1fr; }
    .energy-intro__aside { grid-column: 2; padding: 45px 0 0; border: 0; max-width: 600px; }
    .section-index { width: 160px; flex-basis: 160px; }
    .energy-numbers__grid { grid-template-columns: repeat(2,1fr); }
    .energy-stat:nth-child(2) { border-right: 0; }
    .inner-page .cms-category__wrapper { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .about-hero__year { position: relative; margin-top: 55px; justify-content: flex-end; }
    .reference-grid { grid-template-columns: repeat(2,1fr); }
    .reference-item:nth-child(3n) { border-right: 1px solid rgba(0,0,0,.17); }
    .reference-item:nth-child(2n) { border-right: 0; }
    .contact-page .cms-contact__wrapper { gap: 45px; }
    .contact-page .cms-contact__wrapper-form { width: 50%; }
    .post-type--product .cms-product__container { gap: 45px; }
    .blog-detail__layout { grid-template-columns: 150px minmax(0,680px); gap: 45px; }
}

@media (max-width: 700px) {
    :root { --shell: calc(100vw - 32px); }
    .section-pad { padding: 88px 0; }
    .header { padding: 12px 0; }
    .header::before { inset-bottom: -20px; }
    .header__container,.header.is-compact .header__container { width: calc(100vw - 24px); height: 54px; padding: 0 6px 0 12px; background: #0a0b0e; border-color: transparent; box-shadow: none; }
    .header__logo img,.header.is-compact .header__logo img { width: 154px; }
    .header__contact { display: none; }
    .header__mobile { border: 0; }
    .mobile-panel nav a { border-bottom: 0; padding-block: 10px; }
    .energy-hero { min-height: 100svh; }
    .energy-hero__content { padding: 150px 0 44px; }
    .energy-hero__title { font-size: clamp(60px, 22vw, 104px); line-height: .77; }
    .hero-line--offset { margin-left: 0; }
    .energy-hero__bottom { margin: 24px 0 0; display: block; }
    .energy-hero__bottom p { width: 100%; max-width: 400px; font-size: 13px; margin-bottom: 24px; }
    .energy-hero__rail { display: none; }
    #energy-core { opacity: .65; }
    .energy-intro .energy-shell { display: block; }
    .energy-intro .section-index,.energy-numbers .section-index { margin-bottom: 48px; }
    .energy-intro__statement h2 { font-size: clamp(48px,15vw,72px); }
    .energy-intro__aside { padding-top: 45px; }
    .section-head { display: block; margin-bottom: 50px; }
    .section-head .section-index { margin-bottom: 35px; }
    .section-head > .text-link { margin-top: 30px; }
    .service-row { grid-template-columns: 38px 1fr 40px; min-height: 100px; }
    .service-row p { display: none; }
    .service-row h3 { font-size: 32px; }
    .service-preview { display: none; }
    .energy-card { min-height: 0; }
    .energy-card__image { height: auto; aspect-ratio: 1/1; flex: 0 0 auto; }
    .energy-numbers__grid { grid-template-columns: 1fr 1fr; }
    .energy-stat { min-height: 220px; padding: 32px 15px 15px; }
    .energy-stat:nth-child(odd) { padding-left: 0; }
    .energy-stat h3 { margin-top: 22px; }
    .energy-stat__value { gap: 4px; }
    .energy-stat sup.is-plus { margin-top: .08em; font-size: 28px; }
    .energy-stat sup.is-unit { margin-top: .24em; font-size: 20px; }
    .energy-film__frame { min-height: 520px; height: 70vh; }
    .energy-film__overlay h2 { font-size: clamp(50px,15vw,76px); }
    .energy-journal__grid { grid-template-columns: 1fr; gap: 55px; }
    .journal-card__image,.journal-card:first-child .journal-card__image { height: 320px; }
    .energy-contact { min-height: 620px; }
    .energy-contact h2 { font-size: clamp(48px,13.5vw,58px); line-height: .92; letter-spacing: -.035em; }
    .footer__container { padding-inline: 0; }
    .footer__cta { min-height: auto; padding: 90px 0 65px; display: block; }
    .footer__cta h2 { font-size: clamp(39px,11.5vw,48px); line-height: .88; }
    .footer__cta>a { width: 106px; height: 106px; margin: 45px 0 0 auto; font-size: 8px; }
    .footer__main { grid-template-columns: 1fr 1fr; gap: 50px 25px; padding: 65px 0 70px; }
    .footer__brand { grid-column: 1/-1; }
    .footer__brand>p { max-width: 320px; }
    .footer__contact { grid-column: 1/-1; padding-top: 35px; border-top: 1px solid rgba(255,255,255,.1); }
    .footer__bottom { min-height: auto; padding: 30px 0 !important; grid-template-columns: 1fr !important; gap: 20px; align-items: start !important; }
    .footer__back-top { grid-row: 1; }
    .footer__oyos { justify-self: start; }
    .whatsapp-float { left: 16px; bottom: 16px; width: 58px; height: 58px; padding: 5px; border-radius: 0; }
    .whatsapp-float__icon { width: 46px; height: 46px; flex-basis: 46px; }
    .whatsapp-float__copy { display: none; }
    .whatsapp-float:hover { width: 58px; transform: translateY(-3px); }
    .whatsapp-float.is-footer-visible { bottom: 92px; }
    .inner-page .cms-category__wrapper { grid-template-columns: 1fr; gap: 42px; }
    .inner-page .cms-post::after { right: 12px; top: 26px; width: 40px; height: 40px; }
    .inner-page .cms-post__img { clip-path: polygon(0 0,calc(100% - 34px) 0,100% 34px,100% 100%,0 100%); }
    .inner-page .cms-post > h2 { min-height: auto; font-size: 29px; }
    .about-page,.references-page { margin-top: -100px; }
    .about-hero,.references-hero { min-height: 760px; padding: 150px 0 60px; }
    .about-hero__top { display: block; margin-bottom: 48px; }
    .about-hero__top p { width: 100%; margin-top: 20px; }
    .about-hero h1,.references-hero h1 { font-size: clamp(64px,20vw,92px); line-height: .84; }
    .about-hero__year { margin-top: 50px; justify-content: flex-start; }
    .about-manifesto .about-shell { display: block; }
    .about-manifesto__label { margin-bottom: 45px; }
    .about-manifesto__copy h2 { font-size: 53px; }
    .about-lead { padding-left: 0; font-size: 17px; }
    .about-field .about-shell { display: block; }
    .about-field__primary { height: 470px; }
    .about-field__secondary { width: 75%; height: 280px; margin: -65px 0 0 auto; position: relative; border: 10px solid var(--paper); }
    .about-field__note { margin-top: 30px; }
    .about-principles__head { display: block; }
    .about-principles__head h2 { margin-top: 30px; text-align: left; font-size: 54px; }
    .about-principles__grid { grid-template-columns: 1fr; }
    .about-principles__grid article { min-height: auto; padding: 32px 0 45px; border-right: 0; border-bottom: 1px solid var(--line); }
    .about-principles__grid h3 { margin: 48px 0 20px; }
    .about-cta h2,.reference-statement h2 { font-size: 58px; line-height: .92; }
    .references-hero { min-height: 800px; }
    .references-hero h1 { margin-top: 45px; }
    .references-hero__meta { display: block; }
    .references-hero__meta>div { margin-top: 45px; }
    .reference-index__head { display: block; }
    .reference-index__head p { margin-top: 20px; }
    .reference-grid { grid-template-columns: 1fr; }
    .reference-item,.reference-item:nth-child(2n),.reference-item:nth-child(3n) { min-height: 118px; padding-inline: 10px; border-right: 0; }
    .reference-item:hover { padding-left: 18px; }
    .category-hero { min-height: 580px; padding: 150px 0 60px; }
    .category-hero h1 { margin-top: 45px; font-size: 72px; line-height: .86; }
    .category-hero__description { margin-left: 0; }
    .category-page .cms-category { padding-top: 75px; }
    .contact-hero { min-height: 700px; padding: 150px 0 60px; }
    .contact-hero h1 { font-size: 67px; line-height: .87; }
    .contact-hero p { margin-left: 0; }
    .contact-page .cms-contact__wrapper { flex-direction: column; }
    .contact-page .cms-contact__wrapper-text,.contact-page .cms-contact__wrapper-form { width: 100%; }
    .contact-page .cms-contact__wrapper-form { padding: 32px 22px; }
    .contact-map { margin-top: 80px; }
    .contact-map__head { display: block; }
    .contact-map__head p { margin-top: 12px; }
    .contact-page .cms-contact__map { aspect-ratio: 1/1; }
    .blog-detail__shell { width: calc(100vw - 32px); }
    .blog-detail__hero { min-height: 670px; padding: 150px 0 65px; }
    .blog-detail__hero h1 { margin-top: 48px; font-size: 58px; line-height: .92; }
    .blog-detail__cover { width: calc(100vw - 32px); height: 440px; clip-path: polygon(0 0,calc(100% - 38px) 0,100% 38px,100% 100%,0 100%); }
    .blog-detail__layout { display: block; }
    .blog-detail__layout aside { position: relative; top: auto; margin-bottom: 55px; }
    .blog-detail__content { font-size: 16px; line-height: 1.75; }
    .blog-detail__content>p:first-of-type { font-size: 20px; }
    .blog-related__head { display: block; }
    .blog-related__head h2 { margin-top: 20px; font-size: 43px; }
    .blog-related__grid { grid-template-columns: 1fr; gap: 48px; }
    .post-type--product .cms-product { padding-top: 120px; }
    .product-detail__head { margin-bottom: 35px; }
    .product-detail__head-inner { width: calc(100vw - 32px); }
    .post-type--product .cms-product__container { width: calc(100vw - 32px); flex-direction: column; padding-bottom: 80px; }
    .post-type--product .cms-product__gallery { width: 100%; position: relative; top: 0; }
    .post-type--product .cms-product__content>h1 { font-size: 58px; }
    .product-detail__cta { width: calc(100vw - 32px); padding: 70px 0; display: block; }
    .product-detail__cta h2 { font-size: 44px; }
    .product-detail__cta .energy-button { margin-top: 35px; }
    .post-type--default:not(.post-page--2):not(.post-page--140) .cms-page { padding: 135px 0 80px; }
    .post-type--default .cms-page__container { width: calc(100vw - 32px); }
    .post-type--default .cms-page__title h1 { font-size: 58px; }
    .post-type--img-content .cms-title { padding: 135px 16px 60px; }
    .post-type--img-content .cms-img-content__container { width: calc(100vw - 32px); }
    .post-type--img-content .cms-img-content__item { gap: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .hero-line > span { transform: none; }
    #energy-core { display: none; }
}
