@layer base {
  * {
    box-sizing: border-box;
  }
  html {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    scroll-behavior: smooth;
  }
  body {
    color: #0f172a;
    background-color: #f8fafc;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
  }
}

/* Fallback & Custom Utility Classes */
.bg-gradient-gold {
  background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 50%, #d97706 100%);
}

.text-gradient-emerald {
  background: linear-gradient(135deg, #065f46 0%, #047857 50%, #0d9488 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.site-footer { position: relative; overflow: hidden; background: #061914 url('../assets/img/map-image.png') center/cover no-repeat; }
.site-footer::before { content: ""; position: absolute; inset: 0; background: rgba(4, 22, 17, .91); }
.site-footer > div { position: relative; z-index: 1; }
.site-footer a { transition: color .2s, transform .2s, background .2s; }
.site-footer a:hover { color: #6ee7b7; }
.footer-logo { height: 4.5rem; padding: .45rem .7rem; border-radius: .8rem; background: #fff; object-fit: contain; }
.footer-action { display: inline-flex; align-items: center; gap: .4rem; padding: .65rem .85rem; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; color: #fff; font-weight: 700; text-decoration: none; }
.footer-action:hover { transform: translateY(-2px); background: rgba(255,255,255,.08); }
.footer-action svg { width: 17px; height: 17px; }
.whatsapp-action { background: #15803d; border-color: #22c55e; }
.floating-actions{position:fixed;right:clamp(1rem,2.5vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:60;display:flex;flex-direction:column;gap:.75rem}.floating-action{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff!important;background:#0f2d25;box-shadow:0 12px 30px rgba(0,0,0,.25);transition:transform .2s,opacity .2s,visibility .2s}.floating-action:hover{transform:translateY(-3px)}.floating-action svg{width:25px;height:25px}.floating-whatsapp{background:#16a34a}.floating-top{opacity:0;visibility:hidden;transform:translateY(10px)}.floating-top.is-visible{opacity:1;visibility:visible;transform:none}

.landing-nav { background: transparent; }
.landing-nav .nav-menu .text-slate-700 { color: rgba(255,255,255,.92) !important; text-shadow: 0 1px 12px rgba(0,0,0,.35); }
.landing-nav .nav-menu .text-slate-700:hover { color: #f8c735 !important; }
.landing-nav .logo-dark { display: none; }
.landing-nav.is-scrolled { background: rgba(255,255,255,.96); border-color: #e2e8f0; box-shadow: 0 10px 35px rgba(15,23,42,.12); backdrop-filter: blur(14px); }
.landing-nav.is-scrolled .nav-menu .text-slate-700 { color: #334155 !important; text-shadow: none; }
.landing-nav.is-scrolled .nav-menu .text-slate-700:hover { color: #047857 !important; }
.landing-nav.is-scrolled .logo-light { display: none; }
.landing-nav.is-scrolled .logo-dark { display: block; }
.landing-nav #mobile-menu-btn { color: #fff !important; }
.landing-nav.is-scrolled #mobile-menu-btn { color: #334155 !important; }
.landing-nav[class~="bg-white/95"] .nav-menu .text-slate-700 { color: #334155 !important; text-shadow: none; }
.landing-nav[class~="bg-white/95"] .logo-light { display: none; }
.landing-nav[class~="bg-white/95"] .logo-dark { display: block; }

@media (max-width: 1023px) {
  .landing-nav { background: rgba(4,22,17,.32); backdrop-filter: blur(4px); }
  .landing-nav.is-scrolled { background: rgba(255,255,255,.97); }
}

.hero-bg {
  background-image: linear-gradient(90deg, rgba(4, 24, 19, .94), rgba(7, 37, 30, .80) 55%, rgba(8, 32, 27, .58)), url('../assets/img/header-bg.jpg');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.hero-bg h2 { color: rgba(255, 255, 255, .82) !important; }
.hero-bg h1 > span:first-child { color: #fff !important; }
.hero-bg h1 > span:last-child {
  background-image: linear-gradient(90deg, #f8d45a, #f1b924, #dca313) !important;
}
.hero-bg > div > div > p { color: rgba(255, 255, 255, .78) !important; }

.team-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 10%, rgba(16, 185, 129, .16), transparent 32%),
    radial-gradient(circle at 90% 90%, rgba(245, 188, 46, .10), transparent 28%),
    linear-gradient(135deg, #071d17 0%, #0b3026 100%);
}
.team-section > div { position: relative; z-index: 1; }
.team-section h2 { color: #fff !important; }
.team-section > div > div:first-child > p { color: #b8cbc4 !important; }
.team-section .bg-slate-50 { background-color: rgba(255,255,255,.96) !important; }
.team-section .bg-slate-900 { background-color: #06130f !important; }

.locations-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-image: url('../admin/uploads/Tema-port.jpg');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
}
.locations-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(135deg, rgba(3, 19, 15, .91), rgba(5, 43, 33, .80));
}
.locations-section h2 { color: #fff !important; }
.locations-section > div > div:first-child > p { color: #c5d5cf !important; }
.locations-section .bg-white { background-color: rgba(255,255,255,.96) !important; backdrop-filter: blur(8px); }

@media (max-width: 767px) {
  .locations-section { background-attachment: scroll; background-position: 65% center; }
}

@media (max-width: 640px) {
  .hero-bg { background-image: linear-gradient(rgba(4, 24, 19, .86), rgba(4, 24, 19, .78)), url('../assets/img/header-bg.jpg'); }
}
