
:root{--ink:#182633;--muted:#65737e;--line:#e1e6e8;--paper:#fff;--accent:#1e654c;--dark:#102b2a;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink)}*{box-sizing:border-box}body{margin:0;background:#fff}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.wrap{max-width:1250px;margin:auto;padding:0 34px}.top{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center}.brand img{width:205px;height:auto;object-fit:contain}.nav{display:flex;align-items:center;gap:31px;font-size:13px;letter-spacing:.07em;font-weight:700}.nav a:hover,.active{color:var(--accent)}.menu-btn{display:none;background:none;border:0;font-size:25px}.hero{position:relative;min-height:610px;background:#1a2b2d;color:white;display:flex;align-items:flex-end;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.6)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,23,27,.72),rgba(6,23,27,.02))}.hero-content{position:relative;z-index:1;padding-top:140px;padding-bottom:95px;width:100%}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#74c5a6}.hero h1{font-size:clamp(42px,6vw,80px);line-height:1.08;letter-spacing:-.045em;max-width:780px;margin:20px 0}.hero p{font-size:19px;line-height:1.7;max-width:650px;color:#e7eeee}.btn{display:inline-flex;align-items:center;gap:13px;padding:16px 24px;background:var(--accent);color:white;font-size:13px;font-weight:800;letter-spacing:.05em;margin-top:20px}.btn:hover{background:#154b39}.section{padding:85px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px}.section-head h2,.page-head h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.04em;line-height:1.12;margin:12px 0}.sub{color:var(--muted);font-size:16px;line-height:1.8;max-width:710px}.small-link{font-size:13px;font-weight:800;color:var(--accent)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.project{display:block}.project-img{aspect-ratio:1.37;background:#e5e9e8;overflow:hidden}.project-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.project:hover img{transform:scale(1.045)}.project .cat{font-size:11px;color:var(--accent);font-weight:800;letter-spacing:.08em;margin:18px 0 8px;text-transform:uppercase}.project h3{font-size:19px;line-height:1.35;margin:0}.panel{background:#f3f6f5}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.stat{border-left:2px solid var(--accent);padding-left:20px}.stat strong{font-size:35px;display:block}.stat span{font-size:13px;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{padding:30px;border:1px solid var(--line);min-height:180px}.service b{display:block;font-size:19px;margin-bottom:14px}.service p{color:var(--muted);line-height:1.7}.footer{background:#102b2a;color:white;padding:55px 0 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:45px}.footer p,.footer a{color:#b7c9c6;line-height:1.8;font-size:13px}.footer h4{margin-top:0}.footer-bottom{border-top:1px solid #31514e;padding-top:24px;margin-top:36px;color:#b7c9c6;font-size:12px}.page-head{background:#f3f6f5;padding:75px 0 65px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}.filter{border:1px solid var(--line);background:#fff;padding:11px 15px;cursor:pointer;font-size:12px;color:var(--ink);font-weight:700}.filter.selected,.filter:hover{background:var(--dark);color:white}.details{display:grid;grid-template-columns:2fr 1fr;gap:50px}.gallery-main{width:100%;max-height:600px;object-fit:contain;background:#edf0f0}.thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px}.thumbs button{border:2px solid transparent;padding:0;cursor:pointer;background:#eee}.thumbs button.selected{border-color:var(--accent)}.thumbs img{width:100%;aspect-ratio:1.3;object-fit:cover}.detail-list{margin-top:24px;border-top:1px solid var(--line)}.detail-item{padding:13px 0;border-bottom:1px solid var(--line)}.detail-item span{font-size:12px;color:var(--muted);display:block;margin-bottom:6px}.detail-item b{font-size:14px;font-weight:600}.prose{font-size:16px;line-height:1.95;max-width:900px}.prose h2{margin-top:35px}.prose p{margin:0 0 20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.contact-info{padding:30px;background:#f3f6f5}.contact-info p{line-height:1.8}.empty-image{display:flex;align-items:center;justify-content:center;background:#e7ecea;color:#758680;aspect-ratio:1.37;font-size:13px}.note{padding:13px 18px;border-left:3px solid var(--accent);background:#f3f6f5;color:#52635e;font-size:13px;line-height:1.7}@media(max-width:800px){.wrap{padding:0 20px}.top{height:72px}.brand img{width:170px}.menu-btn{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;z-index:20;padding:24px;flex-direction:column;align-items:start;box-shadow:0 12px 20px #0001}.nav.open{display:flex}.hero{min-height:540px}.hero-content{padding-bottom:65px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.services,.stats{grid-template-columns:1fr}.footer-grid,.details,.contact-grid{grid-template-columns:1fr}.section{padding:55px 0}}@media(max-width:500px){.grid{grid-template-columns:1fr}.hero h1{font-size:42px}.section-head{display:block}.thumbs{grid-template-columns:repeat(4,1fr)}}

/* SESA 2026 kurumsal tasarım: koyu yeşil ve mavi; mor kullanılmaz. */
:root{--accent:#008b4b;--dark:#064b3a;--blue:#174c82;--ink:#1a2e43}
.site-header{background:#fff;position:relative;z-index:10;box-shadow:0 1px 8px rgba(15,39,60,.08)}
.top{max-width:1700px;height:100px;gap:28px}
.brand{flex:0 0 auto}.brand img{width:310px;max-height:76px;object-fit:contain}
.nav{gap:clamp(12px,1.7vw,30px);font-size:12px;letter-spacing:.02em;white-space:nowrap}
.nav a{padding:39px 0 35px;border-bottom:3px solid transparent}.nav a:hover,.nav a[aria-current=page]{border-color:var(--accent);color:var(--accent)}
.languages{display:flex;align-items:center;gap:11px;white-space:nowrap}.lang{border:0;background:transparent;cursor:pointer;font-weight:800;font-size:14px;color:var(--ink);padding:7px 2px}.lang.active{color:var(--accent)}.lang-divider{color:#9aadb7}
.home-hero{min-height:clamp(420px,38vw,640px);align-items:center}.home-hero>img{filter:none;object-position:center center}.home-hero:after{background:linear-gradient(90deg,rgba(8,31,45,.67),rgba(8,31,45,.12) 70%,transparent)}
.home-hero .hero-content{padding-top:85px;padding-bottom:85px}.home-hero h1{font-size:clamp(32px,3.2vw,53px);line-height:1.17;letter-spacing:-.02em;max-width:650px;margin:0 0 34px;font-weight:750}.hero-link{display:inline-block;border-bottom:2px solid rgba(255,255,255,.85);padding-bottom:10px;font-size:13px;font-weight:800;letter-spacing:.06em}.hero-link:hover{color:#a3e2c0}
.category-section{max-width:1700px;padding-top:38px}.category-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.category-tile{position:relative;aspect-ratio:1.45;overflow:hidden;background:#e6ebec}.category-tile:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(5,21,31,.9))}.category-tile img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.category-tile:hover img{transform:scale(1.07)}.category-tile span{position:absolute;z-index:1;bottom:12px;left:12px;right:9px;color:#fff;font-size:clamp(10px,.85vw,13px);font-weight:750;line-height:1.3;display:flex;gap:5px;justify-content:space-between;align-items:end}.category-tile b{font-size:17px}.category-fallback{height:100%;background:#e5ecea}
@media(max-width:1200px){.brand img{width:230px}.top{gap:16px}.nav{gap:13px;font-size:11px}.category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.top{height:80px}.brand img{width:210px;max-height:62px}.menu-btn{display:block;margin-left:auto}.languages{margin-left:0}.nav{top:80px}.nav a{padding:10px 0;border-bottom:0}.home-hero{min-height:480px}.home-hero h1{max-width:520px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tile{aspect-ratio:1.65}}
@media(max-width:500px){.top{gap:10px}.brand img{width:165px}.languages{gap:5px}.lang{font-size:12px}.home-hero{min-height:400px}.home-hero h1{font-size:32px}.category-grid{gap:8px}.category-tile span{font-size:10px}}


/* SESA v3 — charcoal / corporate deep green / blue */
:root{color-scheme:dark;--ink:#eef4f6;--muted:#a8b8c1;--line:#34444d;--paper:#121b21;--accent:#4aaf80;--dark:#123e32;--blue:#377fa8}
html{background:#121b21}body{background:#121b21;color:#eef4f6}
.site-header{background:#121b21;box-shadow:0 1px 0 #34444d}
.nav a,.lang{color:#e8f0f2}.nav a:hover,.nav a[aria-current=page],.nav .active,.lang.active{color:#67c296;border-color:#398b68}
.lang-divider{color:#7793a2}.menu-btn{color:#f4f8f8}
.hero{background:#0d171d}.home-hero:after{background:linear-gradient(90deg,rgba(6,14,20,.84),rgba(6,17,23,.22) 75%,rgba(6,17,23,.06))}
.eyebrow,.project .cat,.small-link{color:#66bf92}.hero-link{color:#fff}.hero-link:hover{color:#9ce2bb}
.section,.category-section{background:#121b21}.section-head h2,.page-head h1,.project h3,.prose,.service b,.stat strong{color:#f1f5f6}
.sub,.service p,.stat span{color:#adbdc5}.panel,.page-head,.contact-info{background:#19262e}
.service{border-color:#34444d;background:#17232a}.service:hover{border-color:#4aaf80}
.project-img,.empty-image,.gallery-main{background:#23333b}.project h3{color:#edf3f4}
.filter{background:#1b2b33;border-color:#34444d;color:#edf3f4}.filter.selected,.filter:hover{background:#123e32;border-color:#4aaf80;color:#fff}
.detail-list,.detail-item{border-color:#34444d}.detail-item span{color:#a8b8c1}.detail-item b{color:#f1f5f6}
.thumbs button{background:#24333b}.thumbs button.selected{border-color:#55b88a}
.note{background:#1d3031;border-left-color:#4aaf80;color:#c1d4d0}
.footer{background:#0c1419}.footer p,.footer a,.footer-bottom{color:#afc1c9}.footer-bottom{border-color:#30414a}
.btn{background:#155b43;color:#fff}.btn:hover{background:#1e7556}
.category-tile{background:#1b2a32}.category-fallback{background:#22343c}
@media(max-width:800px){.nav{background:#16232b;box-shadow:0 12px 20px #0005}.nav a{color:#e8f0f2}}

/* SESA v4 — kurumsal yeşil/mavi ışık geçişli koyu yüzey ve derinlikli logo */
:root{--paper:#0d1b23;--ink:#f0f5f7;--muted:#b4c6cd;--line:#36505a;--accent:#58bd8a;--blue:#3a87b1;color-scheme:dark}
html{background:#0a171e}
body{background:radial-gradient(ellipse 72% 42% at 4% 7%,rgba(0,106,68,.25),transparent 70%),radial-gradient(ellipse 67% 44% at 98% 15%,rgba(21,91,148,.27),transparent 72%),linear-gradient(115deg,#081b1a 0%,#10212a 43%,#102c3d 76%,#0a171f 100%);background-attachment:fixed;color:var(--ink)}
.site-header{background:linear-gradient(110deg,rgba(8,30,28,.97),rgba(14,32,43,.97) 54%,rgba(13,38,55,.97));box-shadow:0 1px 0 rgba(101,154,160,.28),0 10px 26px rgba(0,0,0,.13)}
/* Orijinal TR/EN logo dosyalarını değiştirmeden metalik, yükseltilmiş bir pano içine al. */
.brand{padding:5px;border:1px solid rgba(139,191,201,.55);border-radius:9px;background:linear-gradient(145deg,#dbe4e6 0%,#f9fcfc 19%,#e4edf0 78%,#8ca6b2 100%);box-shadow:0 2px 0 rgba(245,255,255,.36) inset,0 -2px 2px rgba(33,61,74,.4) inset,0 9px 20px rgba(0,0,0,.5),0 0 17px rgba(29,118,112,.18);transition:box-shadow .2s,transform .2s}
.brand:hover{transform:translateY(-1px);box-shadow:0 2px 0 rgba(245,255,255,.36) inset,0 -2px 2px rgba(33,61,74,.4) inset,0 12px 25px rgba(0,0,0,.55),0 0 20px rgba(37,122,165,.26)}
.brand img{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.22);display:block}
.section,.category-section{background:transparent}
.panel,.page-head{background:linear-gradient(115deg,rgba(15,47,39,.76),rgba(21,45,59,.8) 66%,rgba(15,49,72,.73));border-block:1px solid rgba(109,154,165,.18)}
.contact-info,.service,.filter,.note{background:rgba(16,37,47,.77)}
.service{border-color:rgba(105,155,170,.33);box-shadow:0 8px 22px rgba(0,0,0,.1)}
.project-img,.category-tile,.gallery-main{box-shadow:0 10px 24px rgba(0,0,0,.2)}
.footer{background:linear-gradient(110deg,#081a1c,#0d202b 58%,#0b2434);border-top:1px solid rgba(101,157,167,.25)}
.nav a:hover,.nav a[aria-current=page],.lang.active{color:#70d2a0;border-color:#399d71}
@media(max-width:800px){.nav{background:linear-gradient(120deg,#0c2826,#112b3b)}.brand{padding:3px;border-radius:6px}}
@media(prefers-reduced-motion:reduce){.brand{transition:none}}


/* SESA v8 — logo çevresinde üst ve alt nefes payı */
.top{height:auto;min-height:132px;padding-top:16px;padding-bottom:16px}
@media(max-width:800px){
  .top{height:auto;min-height:96px;padding-top:12px;padding-bottom:12px}
  .nav{top:96px}
}


/* SESA v9 — section headings and reliable project filtering */
.prose h2{color:#70d2a0}
.contact-info p > b{color:#70d2a0}
.project[hidden]{display:none !important}

/* SESA v3.2 — consistent responsive side gutters across all page content.
   Background bands stay full width; only inner content gets padding. */
.section.wrap{padding-left:34px;padding-right:34px}
.category-section.wrap{padding-left:34px;padding-right:34px}
.project-about b{display:block;white-space:pre-line;font-weight:500;line-height:1.75;overflow-wrap:anywhere}
.detail-item b{overflow-wrap:anywhere}
@media(max-width:1000px){.section.wrap,.category-section.wrap{padding-left:24px;padding-right:24px}}
@media(max-width:800px){.wrap,.section.wrap,.category-section.wrap{padding-left:20px;padding-right:20px}}
@media(max-width:500px){.wrap,.section.wrap,.category-section.wrap{padding-left:18px;padding-right:18px}}

/* v3.3 — hero image aligned to logo/content boundaries; responsive */
.home-hero{max-width:1182px;margin-left:auto;margin-right:auto;width:calc(100% - 68px);border-radius:3px}
@media(max-width:1000px){.home-hero{width:calc(100% - 48px)}}
@media(max-width:800px){.home-hero{width:calc(100% - 40px)}}
@media(max-width:500px){.home-hero{width:calc(100% - 36px)}}


/* v3.3.1 — full-width blurred continuation, original hero image remains sharp
   and aligned with the SESA header/content gutters. */
.home-hero{
  width:100%;
  max-width:none;
  margin:0;
  border-radius:0;
  isolation:isolate;
  --hero-backdrop:none;
}
.home-hero::before{
  content:"";
  position:absolute;
  inset:-28px;
  background-image:var(--hero-backdrop);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  filter:blur(24px) brightness(.55) saturate(.85);
  z-index:0;
  pointer-events:none;
}
.home-hero>img{
  left:50%;
  right:auto;
  width:min(1182px, calc(100% - 68px));
  height:100%;
  transform:translateX(-50%);
  object-fit:cover;
  z-index:1;
}
.home-hero::after{z-index:2;pointer-events:none}
.home-hero .hero-content{
  z-index:3;
  max-width:1250px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:1000px){.home-hero>img{width:calc(100% - 48px)}}
@media(max-width:800px){.home-hero>img{width:calc(100% - 40px)}}
@media(max-width:500px){.home-hero>img{width:calc(100% - 36px)}}


/* SESA v3.3.2 — hero text inset and soft photographic edge transition.
   Works automatically with every image chosen in Home Page Management. */
.home-hero > img {
  -webkit-mask-image: radial-gradient(ellipse 76% 86% at 50% 50%, #000 72%, transparent 100%);
  mask-image: radial-gradient(ellipse 76% 86% at 50% 50%, #000 72%, transparent 100%);
}
.home-hero .hero-content {
  box-sizing: border-box;
  width: min(1182px, calc(100% - 68px));
  max-width: none;
  padding-left: 34px;
  padding-right: 34px;
}
@media (max-width: 1000px) {
  .home-hero .hero-content { width: calc(100% - 48px); padding-left: 26px; padding-right: 26px; }
}
@media (max-width: 800px) {
  .home-hero .hero-content { width: calc(100% - 40px); padding-left: 22px; padding-right: 22px; }
}
@media (max-width: 500px) {
  .home-hero .hero-content { width: calc(100% - 36px); padding-left: 18px; padding-right: 18px; }
}

/* SESA v3.3.3 — visible horizontal feathering of the sharp hero photo.
   No photo is regenerated: selected image and blurred backdrop stay synchronized. */
.home-hero > img {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 3%, rgba(0,0,0,.65) 8%, #000 15%, #000 85%, rgba(0,0,0,.65) 92%, rgba(0,0,0,.18) 97%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 3%, rgba(0,0,0,.65) 8%, #000 15%, #000 85%, rgba(0,0,0,.65) 92%, rgba(0,0,0,.18) 97%, transparent 100%);
  -webkit-mask-size:100% 100%; mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
}


/* SESA v3.3.4 — four-sided feathering and increased hero text inset.
   Horizontal and vertical masks intersect; selected image remains unchanged. */
.home-hero > img {
  -webkit-mask-image:
    linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 3%, rgba(0,0,0,.65) 8%, #000 15%, #000 85%, rgba(0,0,0,.65) 92%, rgba(0,0,0,.18) 97%, transparent 100%),
    linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.3) 4%, rgba(0,0,0,.8) 10%, #000 17%, #000 83%, rgba(0,0,0,.8) 90%, rgba(0,0,0,.3) 96%, transparent 100%);
  mask-image:
    linear-gradient(to right, transparent 0%, rgba(0,0,0,.18) 3%, rgba(0,0,0,.65) 8%, #000 15%, #000 85%, rgba(0,0,0,.65) 92%, rgba(0,0,0,.18) 97%, transparent 100%),
    linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.3) 4%, rgba(0,0,0,.8) 10%, #000 17%, #000 83%, rgba(0,0,0,.8) 90%, rgba(0,0,0,.3) 96%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-composite: intersect;
  -webkit-mask-size: 100% 100%; mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
}
.home-hero .hero-content { padding-left: 58px; }
@media(max-width:1000px){.home-hero .hero-content{padding-left:46px}}
@media(max-width:800px){.home-hero .hero-content{padding-left:32px}}
@media(max-width:500px){.home-hero .hero-content{padding-left:24px}}

/* v3.3.5: subtle full-width separator below the home hero, matching header divider. */
.home-hero { box-sizing: border-box; border-bottom: 1px solid rgba(185, 209, 216, 0.22); }

/* v3.3.6 — Align seven structure-category cards with the Featured Projects
   section. The hero and its four-sided soft fade are left unchanged. */
.category-section.wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: 1250px;
  margin-left: auto;
  margin-right: auto;
}
/* Keep the existing two-column responsive layout and mobile gutters. */


/* v3.3.7 — divider between general project facts and description/technical facts. */
.detail-double-divider{
  height:7px;
  margin:0 0 5px;
  border:0;
  border-bottom:1px solid var(--line);
}
.detail-double-divider + .detail-item{border-top:0}


/* Project gallery: unused image area inherits the actual page background. */
.gallery-main{background:transparent;cursor:pointer;-webkit-user-drag:none;user-select:none}
.thumbs img{-webkit-user-drag:none;user-select:none}
/* Separate modal lightbox in front of the page. */
.sesa-lightbox[hidden]{display:none!important}
.sesa-lightbox{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(2,11,17,.83);backdrop-filter:blur(6px);padding:24px;cursor:default}
.sesa-lightbox-open{overflow:hidden}
.sesa-lightbox-panel{position:relative;display:flex;align-items:center;justify-content:center;max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);padding:0;background:#101e26;border:1px solid rgba(255,255,255,.18);border-radius:8px;box-shadow:0 25px 95px rgba(0,0,0,.7)}
.sesa-lightbox-frame{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;border-radius:7px}
.sesa-lightbox-photo{display:block;width:85vw;height:auto;max-width:85vw;max-height:85vh;object-fit:contain;user-select:none;-webkit-user-drag:none}
.sesa-lightbox-frame.is-portrait .sesa-lightbox-photo{width:auto;height:85vh;max-width:85vw;max-height:85vh}
.sesa-lightbox-watermark{position:absolute;inset:0;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);align-items:center;justify-items:center;pointer-events:none;overflow:hidden}
.sesa-lightbox-watermark span{font:500 clamp(10px,1.15vw,15px)/1.3 Arial,sans-serif;color:rgba(255,255,255,.38);text-shadow:0 1px 3px rgba(0,0,0,.48);white-space:nowrap;transform:rotate(-20deg);letter-spacing:.03em}
.sesa-lightbox-watermark span:nth-child(even){transform:translateY(14%) rotate(-20deg)}
.sesa-lightbox-close{position:absolute;top:-17px;right:-17px;width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:#142b35;color:white;font:29px/1 Arial,sans-serif;cursor:pointer;z-index:5;box-shadow:0 4px 18px #0009}
.sesa-lightbox-close:hover,.sesa-lightbox-close:focus-visible{background:#256d59;outline:2px solid #fff}
.sesa-lightbox-counter{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);padding:5px 11px;border-radius:20px;background:rgba(0,0,0,.58);color:#fff;font:600 12px Arial,sans-serif;letter-spacing:.06em;pointer-events:none}
@media(max-width:650px){.sesa-lightbox{padding:18px}.sesa-lightbox-panel{max-width:calc(100vw - 36px)}.sesa-lightbox-photo{width:85vw;max-width:85vw;max-height:85vh}.sesa-lightbox-frame.is-portrait .sesa-lightbox-photo{height:85vh;max-height:85vh}.sesa-lightbox-close{top:-13px;right:-13px;width:36px;height:36px}}

/* SESA Dark Style alternative — graphite / charcoal / neutral grey.
   Presentation-only overrides; original layout, assets, and behavior preserved. */
:root{color-scheme:dark;--paper:#141618;--ink:#f0f1f2;--muted:#aeb3b7;--line:#41464b;--accent:#c0c7cc;--dark:#2b2f33;--blue:#9da7af}
html{background:#141618}
body{background:radial-gradient(ellipse 72% 42% at 4% 7%,rgba(115,122,130,.095),transparent 70%),radial-gradient(ellipse 67% 44% at 98% 15%,rgba(133,140,147,.075),transparent 72%),linear-gradient(115deg,#141618 0%,#1a1d20 43%,#202327 76%,#141618 100%);background-attachment:fixed;color:var(--ink)}
.site-header{background:linear-gradient(110deg,rgba(20,22,24,.98),rgba(30,33,36,.98) 54%,rgba(35,38,42,.98));box-shadow:0 1px 0 rgba(167,173,180,.23),0 10px 26px rgba(0,0,0,.15)}
.nav a:hover,.nav a[aria-current=page],.nav .active,.lang.active{color:#e1e5e8;border-color:#9da7af}
.lang-divider{color:#838b92}
.hero{background:#17191c}.home-hero:after{background:linear-gradient(90deg,rgba(12,13,15,.82),rgba(15,16,18,.2) 75%,rgba(15,16,18,.05))}
.eyebrow,.project .cat,.small-link,.prose h2,.contact-info p>b{color:#cbd1d5}
.hero-link:hover{color:#e3e7ea}
.section-head h2,.page-head h1,.project h3,.prose,.service b,.stat strong{color:#f0f1f2}
.sub,.service p,.stat span{color:#b1b7bc}
.panel,.page-head{background:linear-gradient(115deg,rgba(31,34,37,.85),rgba(39,42,46,.85) 66%,rgba(34,37,41,.85));border-block:1px solid rgba(167,173,180,.15)}
.contact-info,.service,.filter,.note{background:rgba(39,42,46,.82)}
.service{border-color:rgba(151,157,164,.29);box-shadow:0 8px 22px rgba(0,0,0,.15)}
.service:hover{border-color:#b6bec4}
.project-img,.empty-image,.gallery-main{background:#2b2f33}
.gallery-main{background:transparent}
.project h3{color:#f0f1f2}
.filter{border-color:#41464b;color:#eef0f2}
.filter.selected,.filter:hover{background:#41464b;border-color:#a9b1b7;color:#fff}
.detail-list,.detail-item{border-color:#41464b}.detail-item span{color:#aeb3b7}.detail-item b{color:#f0f1f2}
.thumbs button{background:#2b2f33}.thumbs button.selected{border-color:#c0c7cc}
.note{border-left-color:#b6bec4;color:#d3d7da}
.footer{background:linear-gradient(110deg,#141618,#202327 58%,#2b2f33);border-top:1px solid rgba(167,173,180,.23)}
.footer p,.footer a,.footer-bottom{color:#c0c5c9}.footer-bottom{border-color:#41464b}
.btn{background:#454b50;color:#fff}.btn:hover{background:#626a71}
.category-tile,.category-fallback{background:#2b2f33}
.category-tile:after{background:linear-gradient(transparent,rgba(10,11,12,.9))}
.brand{border-color:rgba(176,183,190,.5);background:linear-gradient(145deg,#c5c9cd 0%,#f5f6f7 19%,#d9dcdf 78%,#8e969d 100%);box-shadow:0 2px 0 rgba(255,255,255,.3) inset,0 -2px 2px rgba(35,39,42,.4) inset,0 9px 20px rgba(0,0,0,.5),0 0 17px rgba(160,165,170,.1)}
.brand:hover{box-shadow:0 2px 0 rgba(255,255,255,.3) inset,0 -2px 2px rgba(35,39,42,.4) inset,0 12px 25px rgba(0,0,0,.55),0 0 20px rgba(165,170,175,.16)}
.sesa-lightbox{background:rgba(6,7,8,.86)}.sesa-lightbox-panel{background:#202327}.sesa-lightbox-close{background:#2b2f33}.sesa-lightbox-close:hover,.sesa-lightbox-close:focus-visible{background:#50575d}
@media(max-width:800px){.nav{background:linear-gradient(120deg,#202327,#2b2f33)}.nav a{color:#e8e9eb}}

/* SESA darker charcoal edition: restrained original green typography accents. */
:root{--paper:#0b0d0f;--ink:#f1f3f3;--muted:#aeb5b5;--line:#303638;--accent:#66bf92;--dark:#1b2022;--blue:#91aaa1}
html{background:#090b0c}
body{background:radial-gradient(ellipse 72% 55% at 3% 4%,rgba(57,68,65,.18),transparent 68%),radial-gradient(ellipse 68% 46% at 99% 27%,rgba(72,76,79,.15),transparent 72%),linear-gradient(115deg,#080a0b 0%,#111517 36%,#1c2022 70%,#0a0c0d 100%);background-attachment:fixed}
.site-header{background:linear-gradient(90deg,#24272a 0%,#111315 24%,#090b0d 43%,#16191c 67%,#303438 100%);box-shadow:0 1px 0 rgba(115,135,124,.24),0 12px 30px rgba(0,0,0,.27)}
.nav a:hover,.nav a[aria-current=page],.nav .active,.lang.active{color:#80d4a7;border-color:#66bf92}
.hero{background:#0d1112}
.home-hero:after{background:linear-gradient(90deg,rgba(5,7,8,.86),rgba(9,11,12,.2) 76%,rgba(9,11,12,.05))}
.eyebrow,.project .cat,.small-link,.prose h2,.contact-info p>b{color:#78cfa0}
.hero-link:hover{color:#a0e5bd}
.section,.category-section{background:transparent}
.panel,.page-head{background:linear-gradient(112deg,rgba(13,16,17,.96) 0%,rgba(27,31,33,.96) 55%,rgba(19,23,24,.96) 100%);border-block:1px solid rgba(114,132,121,.15)}
.contact-info,.service,.filter,.note{background:rgba(25,29,31,.9)}
.service{border-color:rgba(113,128,120,.25)}.service:hover{border-color:#66bf92}
.project-img,.empty-image{background:#1b2022}.gallery-main{background:transparent}
.filter{border-color:#303638}.filter.selected,.filter:hover{background:#24362e;border-color:#66bf92;color:#fff}
.detail-list,.detail-item{border-color:#303638}
.thumbs button{background:#1b2022}.thumbs button.selected{border-color:#66bf92}
.note{border-left-color:#66bf92}
.footer{background:linear-gradient(108deg,#080a0b 0%,#15191b 52%,#252a2c 100%);border-top:1px solid rgba(114,132,121,.22)}
.footer-bottom{border-color:#303638}
.btn{background:#24543d;color:#fff}.btn:hover{background:#32724f}
.category-tile,.category-fallback{background:#1b2022}
.category-tile:after{background:linear-gradient(transparent,rgba(5,7,8,.94))}
.sesa-lightbox{background:rgba(3,4,5,.9)}.sesa-lightbox-panel{background:#131718}.sesa-lightbox-close{background:#202627}.sesa-lightbox-close:hover,.sesa-lightbox-close:focus-visible{background:#286346}
@media(max-width:800px){.nav{background:linear-gradient(120deg,#0e1112,#252b2c)}.nav a{color:#e8e9eb}}

/* SESA: transparent logo - no panel, border or background */
.brand,.brand:hover{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;transition:none}
.brand img,.brand:hover img{background:transparent;border:0;border-radius:0;box-shadow:none}
@media(max-width:800px){.brand{padding:0;border-radius:0}}

/* SESA header refinement: 20% larger proportional logo and diagonal graphite accent */
.site-header{position:relative;isolation:isolate;overflow:visible}
.site-header::before{content:"";position:absolute;inset:0 auto 0 0;width:560px;pointer-events:none;z-index:0;background:linear-gradient(90deg,rgba(51,54,57,.82) 0%,rgba(34,37,40,.78) 34%,rgba(15,17,19,.68) 75%,rgba(8,10,12,.58) 100%);clip-path:polygon(0 0,100% 0,78% 100%,0 100%)}
.site-header .top{position:relative;z-index:1}
.brand img{width:372px;max-height:92px;height:auto;object-fit:contain}
@media(max-width:1200px){.brand img{width:276px;max-height:80px}.site-header::before{width:430px}}
@media(max-width:800px){.brand img{width:252px;max-height:75px}.site-header::before{width:365px}}
@media(max-width:500px){.brand img{width:198px;max-height:66px}.site-header::before{width:290px}}

/* SESA: restore the slim diagonal boundary while preserving the dual-direction charcoal gradient. */
.site-header::after{content:"";position:absolute;inset:0 auto 0 0;width:560px;pointer-events:none;z-index:0;background:linear-gradient(180deg,rgba(190,196,200,.26),rgba(225,230,232,.46) 48%,rgba(154,163,168,.22));clip-path:polygon(99.65% 0,100% 0,78% 100%,77.65% 100%)}
@media(max-width:1200px){.site-header::after{width:430px}}
@media(max-width:800px){.site-header::after{width:365px}}
@media(max-width:500px){.site-header::after{width:290px}}

/* SESA: diagonal is anchored to the logo container, not viewport width.
   The lower edge remains 60px beyond the actual logo width. */
.site-header::before,.site-header::after{content:none}
.site-header .top{--sesa-logo-width:372px;--sesa-diagonal-gap:60px;--sesa-diagonal-slant:65px;isolation:isolate}
.site-header .top::before,.site-header .top::after{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);width:calc(50vw - 50% + var(--sesa-logo-width) + var(--sesa-diagonal-gap) + var(--sesa-diagonal-slant));pointer-events:none;z-index:-1;clip-path:polygon(0 0,100% 0,calc(100% - var(--sesa-diagonal-slant)) 100%,0 100%)}
.site-header .top::before{background:linear-gradient(90deg,rgba(51,54,57,.82),rgba(34,37,40,.78) 45%,rgba(8,10,12,.58))}
.site-header .top::after{background:linear-gradient(180deg,rgba(190,196,200,.26),rgba(225,230,232,.46) 48%,rgba(154,163,168,.22));clip-path:polygon(calc(100% - 3px) 0,100% 0,calc(100% - var(--sesa-diagonal-slant)) 100%,calc(100% - var(--sesa-diagonal-slant) - 3px) 100%)}
@media(max-width:1200px){.site-header .top{--sesa-logo-width:276px}}
@media(max-width:800px){.site-header .top{--sesa-logo-width:252px}}
@media(max-width:500px){.site-header .top{--sesa-logo-width:198px}}

/* Project category: return to the same filtered project list. */
.page-head .project-category-link{color:inherit;text-decoration:none;cursor:pointer;transition:color .2s ease}
.page-head .project-category-link:hover,.page-head .project-category-link:focus-visible{color:#b0ebce;text-decoration:underline;text-underline-offset:5px}

/* SESA Engineering Tools - one-time host integration */
.sesa-tools-menu{position:relative;display:flex;align-items:center}
.sesa-tools-toggle{display:flex;align-items:center;gap:5px;border:0;background:transparent;color:inherit;cursor:pointer;padding:10px 8px;font:inherit;line-height:1;transition:color .2s}
.sesa-tools-toggle:hover,.sesa-tools-toggle[aria-expanded="true"]{color:#91ddb3}
.sesa-tools-toggle img{height:25px;width:27px;object-fit:contain;filter:invert(1);opacity:.87}
.sesa-tools-toggle .sesa-chevron{font-size:12px;opacity:.8}
.sesa-tools-dropdown{position:absolute;z-index:1001;top:100%;right:0;min-width:245px;max-width:min(85vw,350px);padding:8px;background:#222a2f;border:1px solid #52615a;border-radius:8px;box-shadow:0 14px 32px #0009}
.sesa-tools-dropdown[hidden]{display:none!important}
.sesa-tools-dropdown a{display:block!important;padding:11px 12px!important;color:#e6ece9!important;text-decoration:none!important;font-size:13px!important;white-space:normal!important;line-height:1.35!important}
.sesa-tools-dropdown a:hover,.sesa-tools-dropdown a:focus-visible{background:#35483f!important;color:#a9ecc5!important;border-radius:5px}
@media(max-width:800px){.sesa-tools-menu{display:block;width:100%}.sesa-tools-toggle{padding:12px 8px}.sesa-tools-dropdown{position:static;box-shadow:none;max-width:100%;min-width:0;width:100%;margin:2px 0 8px}}

/* Engineering tools: attached to language controls, visually separate from site navigation. */
.site-header .languages{gap:10px}
.site-header .languages>.sesa-tools-menu{flex:0 0 auto;margin-right:3px}
.site-header .languages>.lang-divider{margin:0 2px;color:#9aadb7}
.site-header .languages .sesa-tools-toggle{padding:5px 2px;gap:4px}
.site-header .languages .sesa-tools-toggle img{width:28px;height:28px;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}
@media(max-width:800px){.site-header .languages>.sesa-tools-menu{display:flex;width:auto}.site-header .languages .sesa-tools-dropdown{position:absolute;right:0;top:100%;min-width:230px;max-width:85vw;box-shadow:0 14px 32px #0009}}

.sesa-tools-direct{text-decoration:none!important;cursor:pointer}.sesa-tools-direct img{display:block}.sesa-tools-direct .sesa-chevron{display:none}

/* Keep an explicit, readable label for references to deleted project photos. */
img.image-missing{object-fit:contain!important;background:#26343a!important;color:#d3dbd9;border:1px dashed #87928f;padding:10px;font:600 14px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;text-align:center}
.gallery-main.image-missing{height:min(50vw,420px);min-height:220px}
.thumbs img.image-missing{aspect-ratio:1.3}

/* No hero photo: preserve the designed background without an empty image layer. */
.home-hero > img[hidden] { display: none !important; }
