
/* SecurSea LTD – Yacht Management theme */
:root{
  --primary: #0b2545;
  --secondary: #13315c;
  --accent: #c8a959;
  --bg: #f8fafc;
  --text: #1f2937;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body{
  margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, 'Helvetica Neue', Arial, 'Apple Color Emoji','Segoe UI Emoji';
  color: var(--text); background: var(--bg); line-height:1.6;
}
.container{ max-width: 1100px; margin: 0 auto; padding: 0 16px; }

a{ color: var(--primary); text-decoration: none; }
a:hover{ text-decoration: underline; }

.navbar{
  background: white; border-bottom: 1px solid #e5e7eb; position: sticky; top:0; z-index:50;
}
.navbar .wrap{ display:flex; align-items:center; justify-content:space-between; padding: 12px 0; }
.brand{ display:flex; align-items:center; gap:10px; }
.brand img{ height:36px; width:auto; }
.brand .name{ font-weight:700; color: var(--primary); letter-spacing:.3px; }

.nav-links{
  display:flex; gap:18px; align-items:center;
}
.nav-links a{
  padding:8px 10px; border-radius:10px; font-weight:600; color: var(--secondary);
}
.nav-links a.cta{
  background: var(--primary); color: white; box-shadow: 0 1px 2px rgba(0,0,0,.08);
}
.nav-toggle{ display:none; }

.hero{
  background: linear-gradient(120deg, var(--secondary), var(--primary));
  color: white; padding: 80px 0 60px;
}
.hero h1{ margin:0 0 10px; font-size: clamp(28px, 3.6vw, 44px); }
.hero p.lead{ font-size: clamp(16px, 2.1vw, 20px); opacity:.95; max-width: 800px; }
.hero .badges{ display:flex; gap:12px; flex-wrap:wrap; margin-top:18px; }
.badge{ background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.25); padding:6px 10px; border-radius:999px; font-weight:600; }

.section{ padding: 56px 0; }
.section h2{ margin-top:0; font-size: clamp(22px, 3vw, 32px); color: var(--secondary); }
.grid{ display:grid; gap:20px; }
.grid.cards{ grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.card{
  background:white; border:1px solid #e5e7eb; border-radius:16px; overflow:hidden;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
}
.card img{ width:100%; height:160px; object-fit:cover; background:#ddd; }
.card .p{ padding:16px; }
.card h3{ margin:0 0 8px; color: var(--primary); font-size: 18px; }
.card ul{ padding-left:16px; margin:0; }
.kicker{ color: var(--accent); font-weight:800; letter-spacing:.08em; font-size:12px; text-transform:uppercase; }

.cta-band{
  background: linear-gradient(100deg, #ffffff 30%, #f0f4f9);
  border: 1px solid #e5e7eb; border-radius:18px; padding:24px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.cta-band strong{ color: var(--secondary); }
.button{ display:inline-block; padding:10px 14px; background:#fff; color:var(--secondary); border:1px solid #e5e7eb; border-radius:12px; font-weight:700; box-shadow: var(--shadow); transition: transform .2s ease, box-shadow .25s ease, background .2s ease; }
.button.alt{ background: var(--accent); color: #1f2937; }

.footer{
  background:#0f172a; color:#cbd5e1; padding: 40px 0; margin-top: 40px;
}
.footer h4{ color:white; margin:0 0 10px; }
.footer a{ color:#e2e8f0; }
.footer .cols{ display:grid; gap:20px; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); }

.table{ width:100%; border-collapse: collapse; }
.table th, .table td{ border:1px solid #e5e7eb; padding:10px; text-align:left; }
.table th{ background:#f3f4f6; }

.form{ display:grid; gap:12px; }
input, select, textarea{ width:100%; padding:10px; border:1px solid #d1d5db; border-radius:12px; background:white; }
label{ font-weight:600; color:#334155; }
small.help{ color:#64748b; }

.taglist{ display:flex; gap:8px; flex-wrap:wrap; }
.tag{ font-size:12px; padding:6px 10px; border-radius:999px; background:#e2e8f0; color:#334155; }

@media (max-width: 820px){
  .nav-links{ display:none; }
  .nav-toggle{ display:block; background:none; border:1px solid #e5e7eb; padding:8px 10px; border-radius:10px; }
}


/* --- Premium polish tweaks --- */
:root{
  --shadow: 0 10px 25px rgba(0,0,0,.06);
  --shadow-hover: 0 16px 40px rgba(0,0,0,.10);
}
h1, h2, h3 { letter-spacing:.2px; }
h1 { font-weight:800; }
h2 { font-weight:800; }
h3 { font-weight:700; }

.navbar { box-shadow: 0 2px 10px rgba(0,0,0,.04); }

.badge{
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.35);
  backdrop-filter: blur(2px);
}

.card{
  border:1px solid #e6e8ec;
  box-shadow: var(--shadow);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.card:hover{
  transform: translateY(-4px);
  box-shadow: var(--shadow-hover);
  border-color: var(--accent);
}
.card img.media{
  width:100%; height:180px; object-fit:cover; display:block;
}
.media-placeholder{
  width:100%; height:180px; display:flex; align-items:center; justify-content:center;
  background: linear-gradient(180deg, #f3f4f6 0%, #e5e7eb 100%);
  color:#344256; font-weight:800; letter-spacing:.3px; text-transform:uppercase;
  border-bottom:1px solid #e6e8ec;
}

.button{ display:inline-block; padding:10px 14px; background:#fff; color:var(--secondary); border:1px solid #e5e7eb; border-radius:12px; font-weight:700; box-shadow: var(--shadow); transition: transform .2s ease, box-shadow .25s ease, background .2s ease; }
.button:hover{ transform: translateY(-2px); box-shadow: var(--shadow-hover); background:#f9fafb; }
.button.alt:hover{ background:#d4ba73; }

a:hover{ text-decoration: none; box-shadow: inset 0 -10px 0 rgba(200,169,89,.25); }

.hero{
  position:relative;
  isolation:isolate;
}
.hero::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(0deg, rgba(11,37,69,.55) 0%, rgba(19,49,92,.25) 35%, rgba(0,0,0,0) 65%);
  z-index:0;
}
.hero .container{ position:relative; z-index:1; }
.hero h1{ text-shadow: 0 2px 14px rgba(0,0,0,.28); }
.hero p.lead{ text-shadow: 0 1px 10px rgba(0,0,0,.22); }

/* Consistent grid alignment */
.grid.cards{ align-items:stretch; }

.button.primary{ background: var(--primary); color:#fff; border-color: var(--primary); }
.button.alt{ background: var(--accent); color:#1f2937; border-color: var(--accent); }
.button.alt:hover{ background:#d4ba73; }
