:root{
  --navy:#07111B;
  --navy-2:#0B1724;
  --navy-3:#0E1B2A;
  --gold:#C9A35A;
  --gold-soft:#E1C37A;
  --text:#FFFFFF;
  --muted:#C7CCD4;
  --line:rgba(201,163,90,.38);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, Arial, Helvetica, sans-serif;
  background:var(--navy);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
.page{
  min-height:100vh;
  background:
    radial-gradient(circle at 75% 18%, rgba(201,163,90,.12), transparent 22%),
    radial-gradient(circle at 18% 40%, rgba(24,70,110,.28), transparent 24%),
    linear-gradient(180deg, #06101A 0%, #07111B 45%, #06101A 100%);
  background-image: url('Assets/port_abstract.svg');
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    background-attachment: fixed;
}
.header{
  height:112px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:24px 7vw;
  border-bottom:1px solid rgba(201,163,90,.18);
}
.logo img{height:74px;width:auto;display:block}
.nav{display:flex;gap:52px;align-items:center;font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.nav a{color:#fff;opacity:.92;padding:12px 0;border-bottom:2px solid transparent}
.nav a.active,.nav a:hover{color:var(--gold-soft);border-bottom-color:var(--gold)}
.hero{
  position:relative;
  min-height:calc(100vh - 112px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8vh 7vw 16vh;
  overflow:hidden;
}
.hero:after,.visual:after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(7,17,27,.94) 0%, rgba(7,17,27,.72) 44%, rgba(7,17,27,.34) 100%),
    radial-gradient(circle at 72% 48%, rgba(201,163,90,.20), transparent 18%);
  pointer-events:none;
}
.visual{
  position:absolute;inset:0;
  background:
    linear-gradient(rgba(7,17,27,.20),rgba(7,17,27,.20)),
    url('assets/port_abstract.svg') center/cover no-repeat;
  opacity:.82;
}

.hero-inner{position:relative;z-index:1;max-width:920px;text-align:center;margin-top:-3vh}
.hero-logo{height:118px;margin-bottom:20px}
h1{font-family:Georgia, 'Times New Roman', serif;font-weight:400;letter-spacing:.14em;font-size:clamp(44px,6vw,88px);line-height:1;margin:0 0 22px}
.kicker{color:var(--gold);letter-spacing:.24em;text-transform:uppercase;font-size:13px;margin-bottom:18px}
.tagline{font-size:clamp(18px,2.1vw,31px);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:28px}
p{color:var(--muted);line-height:1.75;font-size:16px;margin:0}
.hero p{max-width:690px;margin:0 auto 34px}
.buttons{display:flex;gap:22px;justify-content:center;flex-wrap:wrap}
.btn{border:1px solid var(--gold);padding:15px 34px;letter-spacing:.12em;text-transform:uppercase;font-size:13px;color:var(--gold-soft)}
.btn.filled{background:linear-gradient(135deg,var(--gold),#B58C3C);color:#07111B;border-color:transparent}
.section{padding:110px 7vw;border-top:1px solid rgba(201,163,90,.16)}
.section.narrow{max-width:1120px;margin:0 auto;border-top:0}
.section-title{font-size:14px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}
.big-copy{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,4.1vw,56px);line-height:1.18;color:#fff;margin:0 0 26px;max-width:860px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:86px;align-items:start}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:70px}
.feature{border-top:1px solid var(--line);padding-top:24px;min-height:160px}
.feature h3,.person h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:25px;margin:0 0 10px;color:#fff}
.feature p,.person p,.footer p{font-size:14px;color:var(--muted)}
.about-block{display:grid;grid-template-columns:220px 1fr;gap:54px;padding:56px 0;border-bottom:1px solid rgba(201,163,90,.20)}
.about-block h2{margin:0;color:var(--gold);font-size:14px;letter-spacing:.25em;text-transform:uppercase;font-weight:500}
.about-block p{max-width:760px}
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:48px}
.value{border-left:1px solid var(--line);padding:10px 0 10px 24px;color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:13px}
.contact-hero{min-height:44vh;align-items:flex-end;justify-content:flex-start;padding-bottom:70px}
.contact-hero .hero-inner{text-align:left;margin:0;max-width:640px}
.contact-hero h1{font-size:clamp(46px,5.2vw,78px)}
.team-section{padding-top:36px}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:52px 62px;margin-top:32px}
.person{border-top:1px solid var(--line);padding-top:22px;min-height:156px}
.role{color:var(--gold);text-transform:uppercase;letter-spacing:.13em;font-size:12px;margin-bottom:14px}
.email{color:#fff;font-size:13px;margin-bottom:18px;display:block;opacity:.92}
.meta{font-size:13px;color:var(--muted);line-height:1.8}
.contact-form-wrap{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;margin-top:84px;padding:38px 7vw 0;border-top:1px solid rgba(201,163,90,.25)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid input,.form-grid textarea{width:100%;background:rgba(14,27,42,.72);border:1px solid rgba(199,204,212,.22);color:#fff;padding:15px 16px;font:inherit}
.form-grid textarea{grid-column:1/-1;min-height:132px;resize:vertical}
.form-grid .full{grid-column:1/-1}
.footer{padding:42px 7vw;border-top:1px solid rgba(201,163,90,.24);display:grid;grid-template-columns:1fr auto auto;gap:54px;align-items:center;background:#06101A}
.footer-logo img{height:54px}.footer-info{display:flex;gap:34px;color:var(--muted);font-size:14px}.languages{display:flex;gap:24px;color:var(--muted);font-size:14px}
@media (max-width:900px){
  .header{height:auto;padding:22px 24px;align-items:flex-start}.logo img{height:60px}.nav{gap:22px;font-size:12px}
  .hero{min-height:70vh;padding:70px 24px}.hero-logo{height:84px}.section{padding:70px 24px}
  .two-col,.about-block,.contact-form-wrap{grid-template-columns:1fr;gap:26px}.feature-grid,.values,.team-grid{grid-template-columns:1fr}
  .footer{grid-template-columns:1fr;gap:22px}.footer-info,.languages{flex-wrap:wrap}
}
