:root{
  --navy:#142762; --blue:#014a8c; --cyan:#01b0e8; --ink:#1b2333; --muted:#5b6476;
  --line:#dfe4ec; --bg:#f5f7fa; --grid:rgba(1,74,140,.07); --max:1180px;
  --mono:ui-monospace,"Cascadia Mono",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;color:var(--ink);line-height:1.6;background:#fff}
a{color:var(--blue)}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono)}

/* header */
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.nav img{height:30px;width:auto}
.nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0}
.nav ul a{color:var(--ink);text-decoration:none;font-weight:500;font-size:15px}
.nav ul a:hover{color:var(--blue)}
.lang{font-size:13px;border:1px solid var(--line);padding:4px 10px;border-radius:4px;text-decoration:none;color:var(--muted)}
#menu-toggle,.burger{display:none}

/* hero */
.hero{background:linear-gradient(100deg,rgba(20,39,98,.95) 0%,rgba(20,39,98,.85) 48%,rgba(1,74,140,.3) 100%),url(/assets/hero-tragere.jpg) center/cover no-repeat;color:#fff}
.hero .wrap{padding-top:104px;padding-bottom:56px}
.hero .txt{max-width:700px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;color:var(--cyan);font-weight:600}
.hero h1{font-size:42px;line-height:1.15;margin:14px 0 18px;font-weight:700}
.hero p.lead{font-size:18px;color:#d6e4f5;max-width:620px;margin:0 0 30px}
.btn{display:inline-block;padding:13px 24px;border-radius:4px;font-weight:600;text-decoration:none;font-size:15px}
.btn-primary{background:var(--cyan);color:var(--navy)}
.btn-ghost{border:1px solid rgba(255,255,255,.5);color:#fff;margin-left:10px}

/* key figures */
.figs{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:64px;border-top:1px solid rgba(255,255,255,.25)}
.fig{padding:20px 20px 4px 0}
.fig b{display:block;font-family:var(--mono);font-size:34px;font-weight:600;color:#fff;line-height:1.1}
.fig span{display:block;font-size:13.5px;color:#b9cbe4;margin-top:6px;max-width:220px}

/* credentials strip */
.creds{background:var(--bg);border-bottom:1px solid var(--line)}
.creds .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:26px;padding-bottom:26px}
.cred b{display:block;color:var(--navy);font-size:15px}
.cred span{font-size:13.5px;color:var(--muted)}

/* sections */
section{padding:84px 0}
section.alt{background:var(--bg)}
section.grid-bg{background-color:#fbfcfe;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px}
h2{font-size:32px;color:var(--navy);margin:8px 0 14px;line-height:1.2}
h3.sub{color:var(--navy);margin:48px 0 18px;font-size:22px}
.intro{max-width:780px;color:var(--muted);font-size:17px;margin-bottom:40px}
.grid{display:grid;gap:22px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:26px}
.card h3{margin:0 0 8px;font-size:18px;color:var(--navy)}
.card p{margin:0;color:var(--muted);font-size:15px}
.card .k{display:inline-block;font-size:12px;font-weight:600;color:var(--blue);background:#e8f3fb;padding:3px 9px;border-radius:3px;margin-bottom:12px}

/* HDD profile drawing */
.drawing{background:#fff;border:1px solid var(--line);border-radius:6px;padding:18px 18px 10px;overflow-x:auto}
.drawing svg{display:block;width:100%;min-width:760px;height:auto}
.drawing .cap{font-size:13px;color:var(--muted);margin:8px 2px 4px}
.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px;margin-top:34px}
.check{border-top:1px solid var(--line);padding:16px 0}
.check h3{margin:0 0 4px;font-size:16.5px;color:var(--navy)}
.check p{margin:0;font-size:14.5px;color:var(--muted)}
.check .ref{display:block;font-family:var(--mono);font-size:12.5px;color:var(--blue);margin-top:6px}

/* tables */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:#fff}
table{border-collapse:collapse;width:100%;font-size:14px}
th{background:var(--navy);color:#fff;text-align:left;font-weight:600;padding:10px 12px;font-size:13px;white-space:nowrap}
td{padding:9px 12px;border-top:1px solid var(--line);vertical-align:top}
tr:nth-child(even) td{background:#fafbfd}
td.n,td.y,td.c{font-family:var(--mono);font-size:13px;white-space:nowrap}
td.n{color:var(--muted);text-align:right}
table.reg{min-width:860px}
table.mtab{min-width:560px}
tr.grp td{background:#e8f3fb;color:var(--navy);font-weight:600;font-size:13px;letter-spacing:.04em}
.tnote{font-size:13px;color:var(--muted);margin-top:10px}

/* projects */
.proj{border-left:4px solid var(--cyan)}
.proj .spec{margin:12px 0 0;display:grid;grid-template-columns:max-content 1fr;gap:3px 12px;font-size:13.5px}
.proj .spec dt{color:var(--muted)}
.proj .spec dd{margin:0;font-family:var(--mono);font-size:13px;color:var(--ink)}
.proj .meta{font-size:13px;color:var(--muted);margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.proj .meta b{color:var(--ink);font-weight:600}
.press{padding-top:12px}
.press b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--blue);margin-bottom:4px}
.press ul{list-style:none;margin:0;padding:0}
.press li{font-size:13.5px;padding:3px 0 3px 16px;position:relative}
.press li:before{content:"↗";position:absolute;left:0;color:var(--cyan);font-size:12px;top:4px}
.press a{text-decoration:none}
.press a:hover{text-decoration:underline}
.press .src{font-weight:600;color:var(--ink)}
.disclaim{font-size:13.5px;color:var(--muted);border-left:3px solid var(--line);padding:2px 0 2px 12px;max-width:780px;margin:-16px 0 32px}

/* methods */
.mtab td:first-child{font-weight:600;color:var(--navy);width:32%}

/* recognition */
.rec{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.rec .card b{color:var(--navy)}

/* gallery */
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gal figure{margin:0;position:relative;overflow:hidden;border-radius:6px;aspect-ratio:4/3;background:#dfe4ec}
.gal figure.lat{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.gal figure:hover img{transform:scale(1.03)}
.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 14px 10px;font-size:13.5px;color:#fff;background:linear-gradient(transparent,rgba(14,27,71,.85))}

/* about */
.about{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:start}
.about p{font-size:16.5px}
.badges{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.badges img{max-height:84px;width:auto}
.badges .iso{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center}
.badges .iso img{max-height:56px;max-width:100%}

/* contact */
.contact{background:var(--navy);color:#fff}
.contact h2{color:#fff}
.contact .grid{grid-template-columns:1fr 1fr;gap:48px}
.contact a{color:var(--cyan)}
.contact dl{margin:0}
.contact dt{font-size:12.5px;text-transform:uppercase;letter-spacing:.1em;color:#9fb6d6;margin-top:18px}
.contact dd{margin:4px 0 0;font-size:17px}
form label{display:block;font-size:13.5px;color:#c9d7ea;margin:12px 0 4px}
form input,form textarea{width:100%;padding:11px 12px;border-radius:4px;border:1px solid #3a4f86;background:#1d3374;color:#fff;font:inherit}
form textarea{min-height:120px}
form button{margin-top:16px;border:0;cursor:pointer}

footer{background:#0e1b47;color:#9fb0cc;font-size:13.5px;padding:28px 0}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
footer a{color:#c9d7ea}

@media (max-width:1060px){.nav ul{gap:16px}.nav ul a{font-size:14px}}
@media (max-width:960px){
  .about,.contact .grid{grid-template-columns:1fr}
  .g3{grid-template-columns:1fr 1fr}
  .creds .wrap,.figs{grid-template-columns:1fr 1fr}
  .hero h1{font-size:34px}
  .checks{grid-template-columns:1fr}
}
@media (max-width:860px){
  .burger{display:block;cursor:pointer;font-size:26px;color:var(--navy)}
  .nav ul{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;gap:14px;padding:16px 24px;border-bottom:1px solid var(--line)}
  #menu-toggle:checked ~ ul{display:flex}
}
@media (max-width:680px){
  .wrap{padding:0 16px}
  .g3,.g2,.rec,.creds .wrap{grid-template-columns:1fr}
  .gal{grid-template-columns:1fr}.gal figure.lat{grid-column:auto;aspect-ratio:4/3}
  section{padding:60px 0}
  .hero .wrap{padding-top:72px}
  .hero h1{font-size:29px}
  .fig b{font-size:28px}
  .btn-ghost{margin:10px 0 0}
  .proj .spec{grid-template-columns:1fr}
  .proj .spec dd{margin-bottom:6px}
}
