/* ─── SHARED STYLES – Orchid Shipping ─── */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=DM+Serif+Display:ital@0;1&display=swap');

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Outfit', sans-serif; font-size: 15px; color: #1a2744; background: #fff; overflow-x: hidden; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }
ul { list-style: none; }

:root {
  --navy:      #0d1f3c;
  --navy2:     #14294f;
  --navy3:     #1a3360;
  --gold:      #4fa822;
  --gold2:     #68c438;
  --gold-light:#eaf5e2;
  --gold-glow: rgba(79,168,34,0.20);
  --silver:    #8a96a8;
  --silver2:   #b0bac8;
  --white:     #ffffff;
  --off-white: #f4f7f2;
  --text:      #2d3f2a;
  --muted:     #6e7e8a;
  --border:    #d4dfe0;
  --section-bg:#f0f5f0;
}

/* ─── CUSTOM CURSOR ─── */
.cursor-dot { width:8px;height:8px;border-radius:50%;background:var(--gold);position:fixed;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform 0.1s; }
.cursor-ring { width:32px;height:32px;border-radius:50%;border:2px solid rgba(79,168,34,0.5);position:fixed;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:all 0.18s ease; }
#particleCanvas { position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:0.35; }

/* ─── TOP BAR ─── */
.topbar { background:var(--navy);color:rgba(255,255,255,0.7);font-size:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.06);position:relative;z-index:10; }
.topbar-inner { max-width:1280px;margin:0 auto;padding:0 30px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px; }
.topbar-left { display:flex;align-items:center;gap:24px;flex-wrap:wrap; }
.topbar-left span { display:flex;align-items:center;gap:6px; }
.topbar-right { display:flex;align-items:center;gap:10px; }
.topbar-right a { width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;font-size:11px;color:rgba(255,255,255,0.7);transition:all 0.2s; }
.topbar-right a:hover { background:var(--gold);color:#fff;transform:scale(1.1); }

/* ─── HEADER ─── */
header { background:#fff;box-shadow:0 2px 24px rgba(13,31,78,0.1);position:sticky;top:0;z-index:1000; }
.header-inner { max-width:1280px;margin:0 auto;padding:0 30px;display:flex;align-items:center;justify-content:space-between;height:76px; }
.logo img { height:52px;width:auto; }
.main-nav { display:flex;align-items:center;gap:4px; }
.main-nav > li { position:relative; }
.main-nav > li > a { display:flex;align-items:center;gap:4px;padding:10px 14px;font-size:13.5px;font-weight:500;color:var(--navy);border-radius:6px;transition:all 0.2s;white-space:nowrap; }
.main-nav > li > a:hover, .main-nav > li > a.active { color:var(--gold);background:var(--gold-light); }
.main-nav > li > a .arrow { display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-top:1px;transition:transform 0.2s; }
.main-nav > li:hover > a .arrow { transform:rotate(180deg); }
.dropdown { position:absolute;top:calc(100% + 6px);left:0;background:#fff;border-radius:10px;box-shadow:0 16px 48px rgba(13,31,78,0.15);border:1px solid var(--border);min-width:210px;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all 0.22s; }
.main-nav > li:hover .dropdown { opacity:1;visibility:visible;transform:translateY(0); }
.dropdown li a { display:block;padding:9px 18px;font-size:13px;color:var(--text);transition:all 0.15s;border-left:3px solid transparent; }
.dropdown li a:hover { color:var(--gold);background:var(--gold-light);border-left-color:var(--gold); }
.header-ctas { display:flex;align-items:center;gap:8px;margin-left:12px; }
.hdr-btn { padding:9px 16px;border-radius:8px;font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:6px;transition:all 0.2s;white-space:nowrap;cursor:pointer;border:none; }
.hdr-btn-track { background:var(--gold-light);color:var(--gold);border:1.5px solid rgba(79,168,34,0.35); }
.hdr-btn-track:hover { background:#dff0d2;border-color:var(--gold);transform:translateY(-1px); }
.hdr-btn-wms { background:var(--navy);color:#fff; }
.hdr-btn-wms:hover { background:var(--navy2);box-shadow:0 4px 18px rgba(13,31,78,0.35);transform:translateY(-1px); }

/* ─── PAGE HERO ─── */
.page-hero { background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 60%,var(--navy3) 100%);padding:80px 0 70px;position:relative;overflow:hidden; }
.page-hero::before { content:'';position:absolute;top:-100px;right:-100px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(79,168,34,0.12) 0%,transparent 70%);pointer-events:none; }
.page-hero-inner { max-width:1280px;margin:0 auto;padding:0 30px;position:relative;z-index:2; }
.page-hero-tag { display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold2);margin-bottom:14px; }
.page-hero-tag::before { content:'';display:block;width:30px;height:2px;background:var(--gold); }
.page-hero-title { font-family:'DM Serif Display',serif;font-size:clamp(34px,4.5vw,58px);font-weight:400;line-height:1.1;color:#fff;margin-bottom:16px; }
.page-hero-title em { font-style:italic;color:var(--gold2); }
.page-hero-sub { font-size:15px;color:rgba(255,255,255,0.65);max-width:560px;line-height:1.75; }
.breadcrumb { display:flex;align-items:center;gap:8px;font-size:12px;color:rgba(255,255,255,0.4);margin-bottom:18px; }
.breadcrumb a { color:rgba(255,255,255,0.55);transition:color 0.2s; }
.breadcrumb a:hover { color:var(--gold2); }
.breadcrumb span { color:rgba(255,255,255,0.25); }

/* ─── SECTION COMMONS ─── */
.section { padding:88px 0;position:relative;z-index:1; }
.section-inner { max-width:1280px;margin:0 auto;padding:0 30px; }
.sec-label { display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;padding:5px 14px;border-radius:20px;background:var(--gold-light);border:1px solid rgba(79,168,34,0.25); }
.sec-label::before { content:'';width:16px;height:2px;background:var(--gold);border-radius:2px; }
.sec-title { font-family:'DM Serif Display',serif;font-size:clamp(28px,3vw,44px);font-weight:400;color:var(--navy);line-height:1.12;margin-bottom:14px; }
.sec-title em { font-style:italic;color:var(--gold); }
.sec-sub { font-size:15px;color:var(--muted);max-width:580px;line-height:1.75; }

/* ─── SCROLL REVEAL ─── */
.reveal { opacity:0;transform:translateY(32px);transition:opacity 0.7s ease,transform 0.7s ease; }
.reveal.visible { opacity:1;transform:translateY(0); }
.reveal-left { opacity:0;transform:translateX(-32px);transition:opacity 0.7s ease,transform 0.7s ease; }
.reveal-left.visible { opacity:1;transform:translateX(0); }
.reveal-right { opacity:0;transform:translateX(32px);transition:opacity 0.7s ease,transform 0.7s ease; }
.reveal-right.visible { opacity:1;transform:translateX(0); }

/* ─── BUTTONS ─── */
.btn-primary { display:inline-flex;align-items:center;gap:10px;padding:14px 30px;border-radius:8px;background:var(--gold);color:#fff;font-size:14px;font-weight:700;transition:all 0.25s;border:none;cursor:pointer; }
.btn-primary:hover { background:var(--gold2);transform:translateY(-2px);box-shadow:0 10px 28px rgba(79,168,34,0.45); }
.btn-outline { display:inline-flex;align-items:center;gap:8px;padding:12px 26px;border-radius:8px;border:2px solid var(--gold);color:var(--gold);font-size:13.5px;font-weight:700;transition:all 0.22s; }
.btn-outline:hover { background:var(--gold);color:#fff;transform:translateY(-1px); }
.btn-navy { display:inline-flex;align-items:center;gap:8px;padding:13px 30px;border-radius:8px;background:var(--navy);color:#fff;font-size:13.5px;font-weight:700;transition:all 0.22s;border:2px solid var(--navy); }
.btn-navy:hover { background:transparent;color:var(--navy); }

/* ─── STATS BAR ─── */
.stats-bar { background:var(--gold);padding:14px 0;overflow:hidden; }
.stats-ticker { display:flex;gap:0;animation:ticker 25s linear infinite;width:max-content; }
.stats-ticker:hover { animation-play-state:paused; }
@keyframes ticker { from{transform:translateX(0)}to{transform:translateX(-50%)} }
.stat-item { display:flex;align-items:center;gap:12px;padding:0 48px;white-space:nowrap;color:#fff;font-size:13px;font-weight:600; }
.stat-item::after { content:'|';opacity:0.35;margin-left:48px; }
.stat-item strong { font-size:20px;font-weight:900;font-family:'DM Serif Display',serif; }

/* ─── FOOTER ─── */
footer { background:var(--navy);color:rgba(255,255,255,0.58);padding:72px 0 0;border-top:3px solid var(--gold); }
.footer-grid { display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:48px;margin-bottom:52px; }
.footer-logo img { height:48px;margin-bottom:16px;filter:brightness(0) invert(1); }
.footer-desc { font-size:13.5px;line-height:1.75;margin-bottom:20px;max-width:280px; }
.footer-col-title { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--gold2);margin-bottom:16px; }
.footer-links { display:flex;flex-direction:column;gap:9px; }
.footer-links a { font-size:13px;color:rgba(255,255,255,0.48);transition:all 0.2s;display:flex;align-items:center;gap:6px; }
.footer-links a::before { content:'›';color:var(--gold);opacity:0;transition:opacity 0.2s; }
.footer-links a:hover { color:var(--gold2);padding-left:4px; }
.footer-links a:hover::before { opacity:1; }
.footer-address { font-size:13px;line-height:1.8; }
.footer-address strong { color:var(--gold2);font-size:11px;text-transform:uppercase;letter-spacing:0.1em;display:block;margin-bottom:8px; }
.footer-contact-item { display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:13px; }
.footer-contact-item a { color:rgba(255,255,255,0.48);transition:color 0.2s; }
.footer-contact-item a:hover { color:var(--gold2); }
.footer-portal-links { margin-top:18px;display:flex;flex-direction:column;gap:8px; }
.footer-portal-link { display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:8px;border:1px solid rgba(255,255,255,0.09);background:rgba(255,255,255,0.035);color:rgba(255,255,255,0.6);font-size:12.5px;transition:all 0.22s; }
.footer-portal-link:hover { border-color:var(--gold);color:var(--gold2);background:rgba(79,168,34,0.1); }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.07);padding:22px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px; }
.footer-bottom p { font-size:12.5px;color:rgba(255,255,255,0.3); }
.footer-bottom a { color:var(--gold2); }
.footer-social { display:flex;gap:10px; }
.footer-social a { width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;font-size:12px;color:rgba(255,255,255,0.5);transition:all 0.22s; }
.footer-social a:hover { background:var(--gold);border-color:var(--gold);color:#fff;transform:translateY(-2px); }

/* ─── COOKIE ─── */
.cookie-bar { position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--navy);color:rgba(255,255,255,0.8);padding:16px 30px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;border-top:3px solid var(--gold);font-size:13px;backdrop-filter:blur(10px); }
.cookie-bar p { flex:1;min-width:200px; }
.cookie-btns { display:flex;gap:10px;flex-shrink:0; }
.cookie-reject { padding:7px 16px;border-radius:6px;border:1px solid rgba(255,255,255,0.2);background:transparent;color:rgba(255,255,255,0.6);font-size:12.5px;cursor:pointer;font-family:'Outfit',sans-serif;transition:all 0.2s; }
.cookie-reject:hover { border-color:#fff;color:#fff; }
.cookie-accept { padding:7px 16px;border-radius:6px;border:none;background:var(--gold);color:#fff;font-size:12.5px;font-weight:700;cursor:pointer;font-family:'Outfit',sans-serif;transition:all 0.2s; }
.cookie-accept:hover { background:var(--gold2); }
.back-top { position:fixed;bottom:90px;right:28px;width:44px;height:44px;border-radius:50%;background:var(--gold);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;z-index:999;opacity:0;transform:translateY(20px);transition:all 0.3s;box-shadow:0 4px 18px rgba(79,168,34,0.5); }
.back-top.show { opacity:1;transform:translateY(0); }
.back-top:hover { background:var(--gold2);transform:translateY(-3px); }

/* ─── MOBILE NAV ─── */
.hamburger { display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px; }
.hamburger span { display:block;width:24px;height:2px;background:var(--navy);border-radius:2px;transition:all 0.3s; }
.mobile-nav { display:none;position:fixed;inset:0;background:var(--navy);z-index:9000;flex-direction:column;padding:80px 30px 30px;overflow-y:auto; }
.mobile-nav.open { display:flex; }
.mobile-nav-close { position:absolute;top:24px;right:24px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.1);color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center; }
.mobile-nav a { color:rgba(255,255,255,0.8);font-size:18px;font-weight:500;padding:14px 0;border-bottom:1px solid rgba(255,255,255,0.08);display:block; }
.mobile-nav a:hover { color:var(--gold2); }
.mobile-nav-label { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.15em;color:var(--gold2);margin-top:24px;margin-bottom:8px; }

/* ─── RESPONSIVE ─── */
@media(max-width:1100px){
  .footer-grid { grid-template-columns:1fr 1fr;gap:32px; }
}
@media(max-width:768px){
  .topbar { display:none; }
  .header-ctas { display:none; }
  .hamburger { display:flex; }
  nav > ul.main-nav { display:none; }
  .footer-grid { grid-template-columns:1fr; }
  .cursor-dot,.cursor-ring { display:none; }
  .page-hero { padding:60px 0 50px; }
}
