/* ── Reset & base ─────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,sans-serif;color:#0a1a2b;background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}
ul{list-style:none}

/* ── Layout ───────────────────────────────────────────────────────────────── */
.wrap{width:min(1200px,92%);margin:0 auto}

/* ── Buttons ──────────────────────────────────────────────────────────────── */
.gold-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;font-size:12px;font-weight:800;letter-spacing:.06em;border:none;cursor:pointer;background:#e2ac34;color:#07182b;transition:background .2s}
.gold-btn:hover{background:#f2c45e}
.outline-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;font-size:12px;font-weight:800;letter-spacing:.06em;border:2px solid rgba(255,255,255,.75);cursor:pointer;background:transparent;color:#fff;transition:border-color .2s}
.outline-btn:hover{border-color:#fff}
.text-btn{color:#9d731d;font-size:12px;font-weight:700}
.text-btn:hover{color:#e2ac34}

/* ── Kicker / headings ────────────────────────────────────────────────────── */
.kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.2em;color:#e1aa2d;margin-bottom:10px}
h2{font:800 42px/1.1 Manrope,sans-serif;letter-spacing:-.03em}
h2 em{font-style:normal;color:#e3ad36}

/* ═══════════════════════════════════════════════════════════════════════════
   HEADER
═══════════════════════════════════════════════════════════════════════════ */
.header{height:72px;background:#03152a;color:#fff;position:sticky;top:0;z-index:200;border-bottom:1px solid rgba(255,255,255,.08)}
.nav{height:100%;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;gap:10px;align-items:center}
.logo-v{font:800 36px Georgia;color:#d9a52a;width:52px;height:52px;display:flex;align-items:center;justify-content:center}
.logo b{display:block;font:800 22px Manrope;letter-spacing:.16em}
.logo small{display:block;font-size:10px;letter-spacing:.1em;color:#d4c89a}
.nav nav{display:flex;gap:22px;align-items:center;font-size:11px;font-weight:700}
.nav nav a{opacity:.82;color:#fff}
.nav nav a:hover,.nav nav .active{opacity:1;color:#f2b735}
.nav-btn{background:#dca72c !important;color:#07182b !important;padding:10px 18px;opacity:1 !important}
.hamb{display:none;background:none;color:#fff;border:none;font-size:24px;cursor:pointer;padding:4px}

/* ═══════════════════════════════════════════════════════════════════════════
   HERO SLIDER
═══════════════════════════════════════════════════════════════════════════ */
.hero-slider{position:relative;height:320px;color:#fff;overflow:hidden}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;display:flex;align-items:center}
.slide.active{opacity:1}
.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.slide-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(2,16,30,.55) 0%,rgba(2,16,30,.50) 50%,rgba(2,16,30,.22) 100%);z-index:1}
.slide-content{position:relative;z-index:2;padding:0;max-width:560px}
.hero-kicker{font-size:10px;font-weight:800;letter-spacing:.22em;color:#e1aa2d;margin-bottom:16px}
.slide-content h1{font:800 clamp(26px,3.2vw,46px)/1.05 Manrope,sans-serif;letter-spacing:-.03em;margin-bottom:18px}
.slide-content h1 em{font-style:normal;color:#e3ad36}
.slide-content p{font-size:15px;color:#c8d8e4;max-width:540px;margin-bottom:32px;line-height:1.65}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.slider-dots{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:10}
.dot{width:10px;height:10px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:transparent;cursor:pointer;padding:0;transition:background .3s,border-color .3s}
.dot.active{background:#e2ac34;border-color:#e2ac34}

/* ═══════════════════════════════════════════════════════════════════════════
   STATS BAR
═══════════════════════════════════════════════════════════════════════════ */
.stats{background:#061b31;color:#fff;border-bottom:3px solid #dca72c}
.stat-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr)}
.stat-grid div{padding:22px 24px;border-right:1px solid rgba(255,255,255,.12)}
.stat-grid div:last-child{border-right:none}
.stat-grid strong{display:block;font-size:15px;font-weight:700;color:#fff}
.stat-grid small{display:block;font-size:9px;color:#8fa4b5;margin-top:4px;letter-spacing:.05em}

/* ═══════════════════════════════════════════════════════════════════════════
   SECTIONS
═══════════════════════════════════════════════════════════════════════════ */
.section{padding:90px 0}
.section.light{background:#f4f7f8}
.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}
.section-top>a{font-size:11px;color:#a47718;font-weight:800;white-space:nowrap}

/* ═══════════════════════════════════════════════════════════════════════════
   ABOUT
═══════════════════════════════════════════════════════════════════════════ */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.about-grid>div:first-child p{color:#5b6b77;font-size:15px;margin:20px 0 28px}
.service-mini{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.service-mini div{padding:20px;border:1px solid #dbe3e7;background:#fafcfd}
.service-mini b{display:block;font-size:12px;margin-bottom:4px}
.service-mini span{display:block;color:#82909a;font-size:11px}

/* ═══════════════════════════════════════════════════════════════════════════
   SECTOR GRID — 3x2 equal, photo top, text bottom
═══════════════════════════════════════════════════════════════════════════ */
.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sector{
  min-height:280px;
  padding:22px 22px 24px;
  color:#fff;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  cursor:pointer;
}
.sector::before{
  content:"";
  position:absolute;
  inset:0;
  background:inherit;
  background-size:cover;
  background-position:center;
  transition:transform .5s ease;
  z-index:0;
}
.sector:hover::before{transform:scale(1.04)}
.sector .num,.sector h3,.sector p{position:relative;z-index:1}
.num{font-size:10px;font-weight:800;color:#e5ad33;letter-spacing:.1em;margin-bottom:10px}
.sector h3{font:700 17px/1.3 Manrope,sans-serif;margin-bottom:7px}
.sector p{font-size:11px;color:#d0dce4;line-height:1.6}

/* bottom-up gradient: photo clearly visible at top, text readable at bottom */
.s-marine{background:linear-gradient(to top,rgba(5,35,60,.92) 0%,rgba(5,35,60,.55) 40%,rgba(5,35,60,.08) 100%),url('valtora-hero.png') center/cover}
.s-oil{background:linear-gradient(to top,rgba(30,15,0,.92) 0%,rgba(30,15,0,.55) 40%,rgba(30,15,0,.08) 100%),url('hero-industry.jpg') center/cover}
.s-eng{background:linear-gradient(to top,rgba(4,22,10,.92) 0%,rgba(4,22,10,.55) 40%,rgba(4,22,10,.08) 100%),url('sector-eng.jpg') center/cover}
.s-epc{background:linear-gradient(to top,rgba(28,8,0,.92) 0%,rgba(28,8,0,.55) 40%,rgba(28,8,0,.08) 100%),url('sector-epc.jpg') center/cover}
.s-energy{background:linear-gradient(to top,rgba(6,10,30,.92) 0%,rgba(6,10,30,.55) 40%,rgba(6,10,30,.08) 100%),url('sector-cnc.jpg') center/cover}
.s-industrial{background:linear-gradient(to top,rgba(18,18,18,.92) 0%,rgba(18,18,18,.55) 40%,rgba(18,18,18,.08) 100%),url('sector-industrial.jpg') center/cover}

/* ═══════════════════════════════════════════════════════════════════════════
   SERVICES
═══════════════════════════════════════════════════════════════════════════ */
.services{background:#f4f7f8}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.service-grid article{background:#fff;border:1px solid #dde5e9;padding:32px 28px}
.service-grid i{font-style:normal;color:#c28c1d;font-size:10px;font-weight:800}
.service-grid h3{font:700 19px/1.3 Manrope,sans-serif;margin:16px 0 10px}
.service-grid p{font-size:13px;color:#65747e;margin-bottom:20px}
.service-grid a.text-btn{font-size:11px}

/* ═══════════════════════════════════════════════════════════════════════════
   INDUSTRY PULSE / NEWS
═══════════════════════════════════════════════════════════════════════════ */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;min-height:80px}
.news-card{background:#fff;border:1px solid #dde5e9;border-top:3px solid #e2ac34;padding:22px 22px 20px;display:flex;flex-direction:column;gap:10px}
.news-meta{display:flex;justify-content:space-between;font-size:9px;color:#8fa4b5;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.news-card h4{font:600 14px/1.45 Manrope,sans-serif;color:#0a1a2b;flex:1}
.news-card a.read-more{font-size:11px;font-weight:700;color:#9d731d;align-self:flex-start}
.news-card a.read-more:hover{color:#e2ac34}
.news-loading{color:#8fa4b5;font-size:13px;padding:20px 0;grid-column:1/-1}
.news-error{display:none}

/* ═══════════════════════════════════════════════════════════════════════════
   SPLIT SECTIONS
═══════════════════════════════════════════════════════════════════════════ */
.split{padding:90px 0}
.employer{background:#eaf1f4}
.candidate{background:#fff}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.split h2{font-size:40px;margin:12px 0 18px}
.split p{color:#60717b;font-size:14px;max-width:480px}
.split ul{padding:0;margin:24px 0 32px}
.split li{padding:8px 0;font-size:13px;color:#465861;border-bottom:1px solid #dde5e9}
.split li::before{content:"✓";color:#c48d1d;font-weight:800;margin-right:10px}
.panel{background:#061b31;color:#fff;padding:36px;box-shadow:0 20px 50px rgba(0,20,40,.15)}
.panel>span{display:block;font-size:9px;color:#e2ad35;letter-spacing:.18em;font-weight:800;margin-bottom:8px}
.panel h3{font:700 22px Manrope,sans-serif;margin-bottom:20px}
.fake-form div{padding:14px;border-bottom:1px solid #1e4060;color:#8299a8;font-size:12px}
.candidate-card{background:#061b31;color:#fff;padding:44px}
.candidate-card h3{font:800 28px/1.3 Manrope,sans-serif;margin:14px 0}
.candidate-card p{color:#a9b9c4;font-size:14px;margin-bottom:24px}
.candidate-points{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.candidate-points span{font-size:12px;color:#dbe5ea}

/* ═══════════════════════════════════════════════════════════════════════════
   CONTACT
═══════════════════════════════════════════════════════════════════════════ */
.contact{padding:90px 0;background:#f5f8f9}
.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:80px;align-items:start}
.contact h2{font-size:44px;margin:12px 0 18px}
.contact-info{display:flex;gap:40px;margin-top:30px}
.contact-info small{display:block;color:#9b7a2c;font-size:8px;letter-spacing:.14em;font-weight:800;margin-bottom:4px}
.contact-info b{font-size:13px}
form{background:#fff;padding:32px;border:1px solid #dde5e8}
form label{display:block;font-size:9px;font-weight:800;letter-spacing:.08em;margin-bottom:14px}
form input,form select,form textarea{display:block;width:100%;margin-top:6px;border:1px solid #d7e0e4;padding:11px 12px;font:13px Inter,sans-serif;background:#fbfcfd;color:#0a1a2b}
form textarea{resize:vertical}
form .gold-btn{width:100%;margin-top:8px;justify-content:center}

/* ═══════════════════════════════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════════════════════════════ */
footer{background:#03101e;color:#94a6b3;padding:36px 0}
.foot{display:grid;grid-template-columns:1fr auto auto;gap:30px;align-items:center}
.foot-links{display:flex;gap:22px;font-size:10px}
.foot-links a:hover{color:#e2ac34}
.copy{font-size:9px}

/* ═══════════════════════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════════════════════ */
@media(max-width:1050px){
  .stat-grid{grid-template-columns:repeat(3,1fr)}
  .sector-grid{grid-template-columns:repeat(2,1fr)}
  .nav nav{gap:14px}
  .nav-btn{display:none}
}
@media(max-width:800px){
  .hamb{display:block}
  .nav nav{display:none;position:absolute;top:72px;left:0;right:0;background:#03152a;padding:20px 4%;flex-direction:column;align-items:flex-start;gap:0}
  .nav nav a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07);width:100%}
  .nav nav.open{display:flex}
  .hero-slider{height:280px}
  .about-grid,.split-grid,.contact-grid{grid-template-columns:1fr;gap:40px}
  .service-grid{grid-template-columns:1fr 1fr}
  .news-grid{grid-template-columns:1fr 1fr}
  .stat-grid{grid-template-columns:1fr 1fr}
  .section-top{flex-direction:column;align-items:flex-start;gap:12px}
  .foot{grid-template-columns:1fr;gap:20px}
}
@media(max-width:520px){
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions a{text-align:center;justify-content:center}
  .slide-content h1{font-size:30px}
  .hero-slider{height:240px}
  .service-grid,.sector-grid,.news-grid{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:1fr}
  .service-mini{grid-template-columns:1fr}
  h2{font-size:34px}
}

/* ═══════════════════════════════════════════════════════════════════════════
   INNER PAGE HERO
═══════════════════════════════════════════════════════════════════════════ */
.page-hero{position:relative;background:#03152a;color:#fff;padding:40px 0 36px;border-bottom:3px solid #dca72c;overflow:hidden}
.page-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.page-hero-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(3,21,42,.50) 0%,rgba(3,21,42,.25) 55%,rgba(3,21,42,.0) 100%);z-index:1}
.page-hero .wrap{position:relative;z-index:2}
.page-hero .kicker{margin-bottom:10px}
.page-hero h1{font:800 clamp(22px,2.6vw,38px)/1.05 Manrope,sans-serif;letter-spacing:-.03em;margin-bottom:12px}
.page-hero h1 em{font-style:normal;color:#e3ad36}
.page-hero p{font-size:13px;color:#c8d8e4;max-width:520px;line-height:1.65}

/* ── About page ───────────────────────────────────────────────────────────── */
.about-story{padding:90px 0}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.story-grid p{color:#5b6b77;font-size:15px;line-height:1.75;margin-bottom:18px}
.exp-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin:48px 0}
.exp-box{background:#061b31;color:#fff;padding:36px 28px;text-align:center}
.exp-box strong{display:block;font:800 44px/1 Manrope,sans-serif;color:#e2ac34;margin-bottom:8px}
.exp-box span{font-size:12px;color:#8fa4b5;letter-spacing:.06em}
.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}
.diff-item{padding:24px;border-left:3px solid #dca72c;background:#f6f9fa}
.diff-item h4{font:700 15px Manrope,sans-serif;margin-bottom:8px}
.diff-item p{font-size:13px;color:#6a7a84;margin:0}

/* ── Industries page ─────────────────────────────────────────────────────── */
.ind-list{display:flex;flex-direction:column;gap:0}
.ind-block{display:grid;grid-template-columns:320px 1fr;border-bottom:1px solid #dde5e9}
.ind-block:nth-child(even){background:#f6f9fa}
.ind-photo{min-height:280px;background-size:cover;background-position:center}
.ind-body{padding:48px 52px;display:flex;flex-direction:column;justify-content:center}
.ind-body .num{font-size:10px;font-weight:800;color:#e5ad33;letter-spacing:.1em;margin-bottom:12px}
.ind-body h3{font:700 26px/1.2 Manrope,sans-serif;margin-bottom:14px}
.ind-body p{font-size:14px;color:#5b6b77;line-height:1.75;margin-bottom:20px}
.role-tags{display:flex;flex-wrap:wrap;gap:8px}
.role-tags span{font-size:10px;font-weight:700;letter-spacing:.04em;padding:5px 12px;background:#e8f0f4;color:#3a5060;border:1px solid #d0dce4}

/* ── Services page ───────────────────────────────────────────────────────── */
.svc-list{display:flex;flex-direction:column;gap:0}
.svc-block{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid #dde5e9}
.svc-block:nth-child(even) .svc-body{order:-1}
.svc-block:nth-child(even) .svc-accent{order:1}
.svc-body{padding:70px 60px;display:flex;flex-direction:column;justify-content:center}
.svc-body h3{font:700 30px/1.2 Manrope,sans-serif;margin:12px 0 18px}
.svc-body p{font-size:14px;color:#5b6b77;line-height:1.75;margin-bottom:20px}
.svc-body ul{margin:0 0 28px;display:flex;flex-direction:column;gap:10px}
.svc-body li{font-size:13px;color:#465861;padding-left:18px;position:relative}
.svc-body li::before{content:"→";position:absolute;left:0;color:#dca72c;font-weight:700}
.svc-accent{padding:70px 60px;display:flex;align-items:center;justify-content:center}
.svc-accent.dark{background:#061b31;color:#fff}
.svc-accent.mid{background:#eaf1f4}
.svc-accent.gold{background:#dca72c}
.accent-stat{text-align:center}
.accent-stat strong{display:block;font:800 56px/1 Manrope,sans-serif;margin-bottom:10px}
.accent-stat span{font-size:13px;letter-spacing:.06em;opacity:.75}
.svc-accent.dark .accent-stat strong{color:#e2ac34}
.svc-accent.gold .accent-stat strong{color:#07182b}
.svc-accent.gold .accent-stat span{color:#07182b}
.process-strip{background:#061b31;color:#fff;padding:80px 0}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:48px}
.process-step{background:#082034;padding:32px 28px;position:relative}
.process-step .step-n{font:800 40px/1 Manrope,sans-serif;color:rgba(226,172,52,.18);margin-bottom:16px}
.process-step h4{font:700 16px Manrope,sans-serif;margin-bottom:10px;color:#fff}
.process-step p{font-size:12px;color:#8299a8;line-height:1.65}

/* ── Contact page ────────────────────────────────────────────────────────── */
.contact-page{padding:90px 0}
.contact-page-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}
.contact-detail{display:flex;flex-direction:column;gap:32px}
.c-item small{display:block;font-size:9px;font-weight:800;letter-spacing:.14em;color:#9b7a2c;margin-bottom:6px}
.c-item b{font-size:15px;display:block}
.c-item span{font-size:13px;color:#6a7a84;margin-top:4px;display:block}

/* ── Responsive inner pages ──────────────────────────────────────────────── */
@media(max-width:900px){
  .story-grid,.ind-block,.svc-block,.contact-page-grid{grid-template-columns:1fr;gap:0}
  .ind-photo{min-height:220px}
  .ind-body,.svc-body,.svc-accent{padding:36px 28px}
  .svc-block:nth-child(even) .svc-body{order:1}
  .svc-block:nth-child(even) .svc-accent{order:-1}
  .exp-strip{grid-template-columns:1fr 1fr}
  .diff-grid{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .exp-strip{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr}
}
