/*
Theme Name: Ensign Home
Theme URI: http://localhost:8080/matrix-global-singapore
Description: Ensign-style logistics homepage built as a child theme of Hello Elementor. Provides a custom front-page design while keeping Elementor pages intact.
Author: Matrix Global Singapore
Version: 1.5.0
Template: hello-elementor
Text Domain: ensign-home
*/

:root{
  --navy-900:#060b1f;
  --navy-800:#0a1130;
  --accent:#3b4ef0;
  --accent-2:#5b8def;
  --purple:#a855f7;
  --blue-btn:#2563eb;
  --ink:#0b1220;
  --muted:#5b6577;
  --muted-2:#8a93a6;
  --line:#e6e9f0;
  --bg:#ffffff;
  --bg-soft:#f5f7fb;
  --radius:16px;
  --shadow:0 20px 45px -25px rgba(16,26,64,.35);
  --font:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body.ensign-site{font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
.ensign-site a{color:inherit;text-decoration:none}
.ensign-site img{max-width:100%;display:block}
.ensign-site .container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}
.ensign-site .eyebrow{display:inline-block;color:var(--accent);font-weight:600;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.ensign-site .eyebrow::before{content:"// "}
.ensign-site h1,.ensign-site h2,.ensign-site h3{line-height:1.15;letter-spacing:-.02em;font-weight:800}
.grad-text{background:linear-gradient(90deg,#6aa0ff,#a855f7);-webkit-background-clip:text;background-clip:text;color:transparent}
.accent-text{color:var(--accent)}
.ensign-site .btn{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:.95rem;padding:12px 22px;border-radius:999px;cursor:pointer;border:1px solid transparent;transition:.2s}
.btn-primary{background:var(--blue-btn);color:#fff}
.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px)}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.22)}
.btn-ghost:hover{background:rgba(255,255,255,.16)}
.ensign-site .section{padding:96px 0}

/* ---------- HEADER ---------- */
.ensign-site .site-hdr{position:fixed;top:0;left:0;right:0;z-index:50;transition:.35s}
.ensign-site .site-hdr.scrolled{background:rgba(6,11,31,.9);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
/* Inner pages have no hero to overlay → show a solid, in-flow header bar. */
body.ensign-site:not(.ensign-front) .site-hdr{position:sticky;background:var(--navy-900);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.ensign-site .nav{display:flex;align-items:center;justify-content:space-between;height:74px}
.ensign-site .brand{display:flex;align-items:center;gap:11px;color:#fff;font-weight:700;font-size:1.12rem;letter-spacing:-.01em}
.ensign-site .brand .mark{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(135deg,var(--accent),var(--purple))}
.ensign-site .menu{display:flex;align-items:center;gap:30px}
.ensign-site .menu ul{list-style:none;display:flex;align-items:center;gap:30px}
.ensign-site .menu li{list-style:none;position:relative}
.ensign-site .menu a{color:rgba(255,255,255,.86);font-size:.92rem;font-weight:500;display:flex;align-items:center;gap:6px;transition:.2s}
.ensign-site .menu a:hover{color:#fff}
.ensign-site .menu a .chev{width:9px;opacity:.6}
/* caret for menu items that have a submenu (WordPress adds this class) */
.ensign-site .menu .menu-item-has-children>a::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.55;transition:.2s}
.ensign-site .menu .menu-item-has-children:hover>a::after{transform:translateY(0) rotate(-135deg)}
/* dropdown submenu */
.ensign-site .menu .sub-menu{position:absolute;top:100%;left:0;min-width:230px;list-style:none;background:rgba(6,11,31,.97);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px;margin-top:12px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s;z-index:60;box-shadow:0 24px 44px -18px rgba(0,0,0,.55)}
.ensign-site .menu .sub-menu::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.ensign-site .menu li:hover>.sub-menu,.ensign-site .menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.ensign-site .menu .sub-menu li{width:100%}
.ensign-site .menu .sub-menu a{display:block;padding:9px 14px;border-radius:8px;font-size:.9rem;font-weight:500;white-space:nowrap;color:rgba(255,255,255,.82)}
.ensign-site .menu .sub-menu a:hover{background:rgba(255,255,255,.09);color:#fff}
@media(max-width:960px){
  .ensign-site .menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;background:none;border:0;box-shadow:none;backdrop-filter:none;padding:2px 0 2px 16px;margin:4px 0 0}
  .ensign-site .menu .sub-menu::before{display:none}
  .ensign-site .menu .menu-item-has-children>a::after{display:none}
}
.ensign-site .nav-right{display:flex;align-items:center;gap:18px}
.ensign-site .lang{color:rgba(255,255,255,.86);font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:5px}
.ensign-site .burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.ensign-site .burger span{width:24px;height:2px;background:#fff;border-radius:2px}

/* ---------- HERO ---------- */
.hero{position:relative;overflow:hidden;padding:170px 0 120px;text-align:center;color:#fff;
  background:
    radial-gradient(1100px 600px at 70% -10%,rgba(28,53,111,.55) 0%,transparent 60%),
    radial-gradient(900px 500px at 15% 20%,rgba(21,42,99,.5) 0%,transparent 55%),
    linear-gradient(160deg,rgba(8,18,50,.86) 0%,rgba(9,22,66,.72) 45%,rgba(6,14,45,.92) 100%),
    var(--hero-bg,linear-gradient(160deg,#0a1440,#08153f));
  background-size:cover,cover,cover,cover;
  background-position:center;
  background-repeat:no-repeat}
.hero-net{position:absolute;inset:0;opacity:.55;pointer-events:none}
.hero h1{font-size:clamp(2.3rem,5.4vw,4rem);margin:0 auto;max-width:14ch}
.hero p{max-width:660px;margin:26px auto 0;color:rgba(255,255,255,.78);font-size:1.06rem}
.hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:32px}
.hero-cta .btn-ghost{border-color:rgba(255,255,255,.35)}
.hero .scroll-dot{margin:52px auto 0;width:30px;height:48px;border:2px solid rgba(255,255,255,.35);border-radius:16px;position:relative}
.hero .scroll-dot::after{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:5px;height:8px;background:#fff;border-radius:3px;animation:sd 1.6s infinite}
@keyframes sd{0%{opacity:0;transform:translate(-50%,0)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,14px)}}

/* ---------- VISION ---------- */
.vision{position:relative;overflow:hidden;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 30%,rgba(255,255,255,.55) 50%,rgba(255,255,255,.2) 70%,rgba(255,255,255,0) 100%),
    url("assets/img/business_vision.png");
  background-size:cover,cover;
  background-position:center,center;
  background-repeat:no-repeat}
/* Mobile: text stacks full-width, so use a more even white veil for readability. */
@media(max-width:960px){
  .vision{background-image:
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.9)),
    url("assets/img/business_vision.png")}
}
.vision-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.vision h2{font-size:clamp(1.9rem,3.5vw,2.7rem);margin-bottom:20px}
.vision .lead{color:var(--muted);max-width:46ch;margin-bottom:30px}
.features{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.feat{display:flex;gap:13px}
.feat .ic{flex:0 0 40px;height:40px;border-radius:11px;background:linear-gradient(135deg,var(--accent),#6d7bff);display:grid;place-items:center;color:#fff}
.feat h4{font-size:.98rem;margin-bottom:3px}
.feat p{font-size:.85rem;color:var(--muted)}
.stat-card{background:linear-gradient(160deg,#0f1c4a,#0a1330);border-radius:22px;padding:26px;color:#fff;box-shadow:0 30px 60px -30px rgba(12,20,60,.6);border:1px solid rgba(255,255,255,.06)}
.stat-card .top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}
.stat-card .pill{font-size:.72rem;background:rgba(255,255,255,.1);padding:6px 12px;border-radius:999px;color:rgba(255,255,255,.8)}
.stat-card .big{text-align:right}
.stat-card .big b{font-size:1.9rem;display:block;line-height:1}
.stat-card .big span{font-size:.7rem;color:rgba(255,255,255,.6)}
.st-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}
.st{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px 12px;text-align:center}
.st b{font-size:1.5rem;display:block}
.st span{font-size:.68rem;color:rgba(255,255,255,.62);line-height:1.3;display:block;margin-top:4px}
.sc-title{font-size:.95rem;font-weight:700;margin-bottom:2px}
.sc-sub{font-size:.75rem;color:rgba(255,255,255,.55);margin-bottom:16px}
.bar-row{font-size:.75rem;color:rgba(255,255,255,.75);margin-bottom:12px}
.bar-row .lbl{display:flex;justify-content:space-between;margin-bottom:6px}
.bar{height:6px;border-radius:6px;background:rgba(255,255,255,.12);overflow:hidden}
.bar i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--accent-2),var(--accent))}

/* ---------- SECTION HEADERS ---------- */
.sec-head{text-align:center;max-width:660px;margin:0 auto 54px}
.sec-head h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:16px}
.sec-head p{color:var(--muted)}

/* homepage INTRO — "The Global Matrix Hub" with a soft image backdrop */
.section.matrix-hub{position:relative;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.8) 45%,rgba(255,255,255,.92) 100%),
    url("assets/img/business_vision.png");
  background-size:cover,cover;
  background-position:center,center;
  background-repeat:no-repeat}

/* ---------- EXPERTISE CARDS ---------- */
.soft{background:var(--bg-soft)}
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.scard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:.25s}
.scard:hover{transform:translateY(-6px);box-shadow:0 30px 55px -28px rgba(16,26,64,.4)}
.scard .ph{height:190px;background-size:cover;background-position:center;position:relative}
.scard .body{padding:22px 22px 26px}
.scard h3{font-size:1.2rem;margin-bottom:9px}
.scard p{color:var(--muted);font-size:.9rem}
.scard .more{color:var(--accent);font-weight:600;font-size:.85rem;margin-top:14px;display:inline-flex;gap:6px}

/* ---------- TABS ---------- */
.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:38px}
.tab{padding:9px 18px;border-radius:999px;font-size:.85rem;font-weight:600;color:var(--muted);cursor:pointer;border:1px solid var(--line);background:#fff;transition:.2s}
.tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.mini{position:relative}
.mini .tag{position:absolute;top:12px;right:12px;background:rgba(6,11,31,.6);color:#fff;font-size:.68rem;padding:4px 10px;border-radius:999px;backdrop-filter:blur(4px)}
.mini .ph{height:150px}
.mini .body{padding:18px}
.mini h3{font-size:1.02rem}
.mini p{font-size:.82rem}

/* ---------- EMPTY / LINK ---------- */
.head-inline{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:14px;margin-bottom:38px}
.head-inline .l{max-width:640px}
.head-inline h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:12px}
.head-inline p{color:var(--muted)}
.link-arrow{color:var(--accent);font-weight:600;white-space:nowrap;display:inline-flex;gap:6px}
.empty{border:1px dashed var(--line);border-radius:var(--radius);padding:70px 20px;text-align:center;color:var(--muted-2)}
.empty .bk{width:44px;height:44px;margin:0 auto 16px;color:var(--muted-2)}
.empty h3{font-size:1.05rem;color:var(--muted);font-weight:600;margin-bottom:6px}

/* ---------- NEWS ---------- */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.ncard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:.25s}
.ncard:hover{transform:translateY(-5px)}
.ncard .ph{height:170px;background-size:cover;background-position:center}
.ncard .body{padding:20px}
.ncard .tg{font-size:.7rem;color:var(--accent);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.ncard h3{font-size:1.05rem;margin:8px 0 14px}
.ncard .meta{font-size:.76rem;color:var(--muted-2)}

/* ---------- CTA ---------- */
.cta{position:relative;color:#fff;overflow:hidden;
  background:linear-gradient(90deg,rgba(6,11,31,.88),rgba(6,11,31,.55)),
  linear-gradient(120deg,#0e3a63,#124e7a 40%,#0a2f52)}
.cta::before{content:"";position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5;
  background-image:url("assets/img/cta-ship.jpg")}
.cta .container{position:relative}
.cta-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center}
.pill-tag{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);padding:7px 15px;border-radius:999px;margin-bottom:20px}
.cta h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:18px;max-width:16ch}
.cta p{color:rgba(255,255,255,.82);max-width:52ch;margin-bottom:28px}
.glass-stats{display:flex;flex-direction:column;gap:16px}
.gstat{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);border-radius:16px;padding:18px 22px}
.gstat .gic{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.14);display:grid;place-items:center}
.gstat b{font-size:1.5rem;display:block;line-height:1}
.gstat span{font-size:.8rem;color:rgba(255,255,255,.7)}

/* ---------- FOOTER ---------- */
.ensign-site .site-foot{background:var(--navy-900);color:rgba(255,255,255,.7)}
.foot-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.35fr;gap:32px;padding:74px 0 50px}
.foot-col h5{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px}
.foot-col ul,.foot-col li{list-style:none}
.foot-col a{display:block;font-size:.88rem;margin-bottom:11px;color:rgba(255,255,255,.62);transition:.2s}
.foot-col a:hover{color:#fff}
.foot-contact a{line-height:1.55;margin-bottom:14px}
.foot-mid{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:22px;padding:30px 0;border-top:1px solid rgba(255,255,255,.08)}
.foot-brand{display:flex;align-items:center;gap:12px;color:#fff}
.foot-brand .mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--purple));display:grid;place-items:center}
.foot-brand b{font-size:1.05rem;letter-spacing:.02em}
.foot-brand small{display:block;color:rgba(255,255,255,.5);font-size:.75rem;font-weight:400}
.socials{display:flex;align-items:center;gap:12px}
.socials .tagline{font-size:.82rem;color:rgba(255,255,255,.6);margin-right:6px}
.socials a{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.08);transition:.2s}
.socials a:hover{background:var(--accent)}
.socials a.yt:hover{background:#ff0000}
.socials a.ig:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#bc1888)}
.foot-bottom{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;padding:22px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.8rem;color:rgba(255,255,255,.45)}
.foot-bottom ul,.foot-bottom li{list-style:none;display:flex;gap:26px}
.foot-bottom a:hover{color:#fff}

/* reveal (enhancement only) */
html.js .reveal{opacity:0;transform:translateY(26px);transition:.7s cubic-bezier(.2,.7,.2,1)}
html.js .reveal.in{opacity:1;transform:none}

/* ---------- RESPONSIVE ---------- */
@media(max-width:960px){
  .ensign-site .menu,.ensign-site .lang{display:none}
  .ensign-site .burger{display:flex}
  .vision-grid,.cta-grid{grid-template-columns:1fr;gap:36px}
  .cards-3,.news-grid{grid-template-columns:1fr 1fr}
  .foot-top{grid-template-columns:repeat(2,1fr);gap:26px}
}
@media(max-width:600px){
  .ensign-site .section{padding:64px 0}
  .features{grid-template-columns:1fr}
  .cards-3,.news-grid{grid-template-columns:1fr}
  .foot-top{grid-template-columns:1fr}
  .foot-mid{flex-direction:column;align-items:flex-start}
}

/* ============ INNER PAGES (About, Contact) ============ */
.page-main{overflow:hidden}
.page-hero{position:relative;color:#fff;padding:80px 0 64px;
  background:
    linear-gradient(115deg,rgba(6,11,31,.92) 0%,rgba(10,26,82,.66) 55%,rgba(6,11,31,.5) 100%),
    var(--page-hero-bg,linear-gradient(120deg,#0a1440,#08153f));
  background-size:cover;background-position:center;background-repeat:no-repeat}
.page-hero .eyebrow{color:#93b4ff}
.page-hero h1{font-size:clamp(2rem,4.2vw,3.1rem);max-width:20ch}
.page-hero .grad-2{color:#6aa0ff}
.page-hero .lead{max-width:62ch;margin-top:16px;color:rgba(255,255,255,.82);font-size:1.05rem}

.prose{color:var(--muted);font-size:1rem}
.prose p{margin-bottom:16px}
.prose p:last-child{margin-bottom:0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.two-col h2{font-size:clamp(1.4rem,2.4vw,1.9rem)}

.mv-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
.mv-card .ic{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--purple));display:grid;place-items:center;color:#fff;margin-bottom:16px}
.mv-card h3{font-size:1.3rem;margin-bottom:10px}
.mv-card p{color:var(--muted)}

.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.value{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}
.value .n{width:38px;height:38px;border-radius:10px;background:var(--bg-soft);display:grid;place-items:center;color:var(--accent);font-weight:800;margin-bottom:12px}
.value h4{font-size:1rem;margin-bottom:6px}
.value p{font-size:.85rem;color:var(--muted)}

.cta-band{background:linear-gradient(120deg,#0d1c46,#0a1330);color:#fff;text-align:center}
.cta-band h2{font-size:clamp(1.6rem,3vw,2.3rem);margin-bottom:12px}
.cta-band p{color:rgba(255,255,255,.8);max-width:54ch;margin:0 auto 24px}
/* CTA with photo backdrop (homepage) */
.cta-band.cta-photo{position:relative;overflow:hidden;
  background-image:
    linear-gradient(120deg,rgba(6,11,31,.9) 0%,rgba(10,26,82,.6) 60%,rgba(6,11,31,.78) 100%),
    url("assets/img/news-ocean.jpg");
  background-size:cover;background-position:center;background-repeat:no-repeat}

/* Trade Lane — dark photo band */
.lane-band{position:relative;overflow:hidden;color:#fff;
  background-image:
    linear-gradient(100deg,rgba(6,11,31,.92) 0%,rgba(10,26,82,.66) 55%,rgba(6,11,31,.58) 100%),
    url("assets/img/cta-ship.jpg");
  background-size:cover;background-position:center;background-repeat:no-repeat}
.lane-band .eyebrow{color:#93b4ff}
.lane-band h2{color:#fff}
.lane-band .lead{color:rgba(255,255,255,.84)}
.lane-band .vadd{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.92)}
.lane-band .vadd::before{background:var(--accent-2)}

/* Contact */
.contact-wrap{display:grid;grid-template-columns:.85fr 1.35fr;gap:32px;align-items:start}
.info-card{background:linear-gradient(160deg,#0f1c4a,#0a1330);color:#fff;border-radius:20px;padding:32px;border:1px solid rgba(255,255,255,.06)}
.info-card h3{font-size:1.2rem;margin-bottom:22px}
.info-row{display:flex;gap:14px;margin-bottom:20px}
.info-row .ic{flex:0 0 40px;height:40px;border-radius:11px;background:rgba(255,255,255,.1);display:grid;place-items:center}
.info-row .t small{display:block;color:rgba(255,255,255,.55);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.info-row .t a,.info-row .t span{color:#fff;font-size:.95rem;line-height:1.5}
.info-row .t a:hover{color:var(--accent-2)}
.info-note{margin-top:8px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:.85rem;color:rgba(255,255,255,.7)}

.form-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;box-shadow:var(--shadow)}
.form-card h3{font-size:1.25rem;margin-bottom:6px}
.form-card .sub{color:var(--muted);font-size:.9rem;margin-bottom:22px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.field.full{grid-column:1/-1}
.field label{font-size:.82rem;font-weight:600;color:var(--ink)}
.field label .req{color:#e2483d}
.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.92rem;color:var(--ink);background:#fbfcfe;transition:.15s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,78,240,.12);background:#fff}
.field textarea{min-height:120px;resize:vertical}
.form-actions{display:flex;align-items:center;gap:16px;margin-top:6px}
.form-note{font-size:.78rem;color:var(--muted-2)}
.form-alert{padding:14px 16px;border-radius:12px;margin-bottom:20px;font-size:.9rem}
.form-alert.ok{background:#e7f7ee;color:#1b7a45;border:1px solid #b7e6c9}
.form-alert.err{background:#fdecea;color:#b3261e;border:1px solid #f5c6cb}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

@media(max-width:900px){
  .two-col,.contact-wrap{grid-template-columns:1fr;gap:28px}
  .values-grid{grid-template-columns:repeat(2,1fr)}
  .fgrid{grid-template-columns:1fr}
}

/* ============ HOMEPAGE — core services block ============ */
.featured-card{display:flex;align-items:center;gap:22px;position:relative;overflow:hidden;
  background:linear-gradient(120deg,var(--accent) 0%,#6d7bff 58%,var(--purple) 100%);
  color:#fff;border-radius:var(--radius);padding:28px 30px;margin-bottom:26px;
  box-shadow:0 24px 50px -24px rgba(59,78,240,.5);transition:.25s}
.featured-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -22px rgba(59,78,240,.6)}
.featured-card .fc-badge{position:absolute;top:16px;right:18px;font-size:.66rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;background:rgba(255,255,255,.2);padding:5px 12px;border-radius:999px}
.featured-card .fc-ic{flex:0 0 62px;height:62px;border-radius:16px;background:rgba(255,255,255,.16);display:grid;place-items:center}
.featured-card .fc-body{flex:1}
.featured-card .fc-body h3{font-size:1.4rem;margin-bottom:6px}
.featured-card .fc-body p{color:rgba(255,255,255,.9);font-size:.95rem;max-width:74ch}
.featured-card .fc-arrow{font-size:1.6rem;opacity:.85;flex:0 0 auto}

.cards-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.cards-4 .scard .ph{height:150px}

.vadd-strip{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.vadd-label{font-weight:700;font-size:.85rem;color:var(--ink);margin-right:4px}
.vadd{font-size:.85rem;color:var(--muted);background:var(--bg-soft);border:1px solid var(--line);padding:8px 15px;border-radius:999px;display:inline-flex;align-items:center;gap:8px}
.vadd::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}

@media(max-width:960px){
  .cards-4{grid-template-columns:1fr 1fr}
  .featured-card{flex-wrap:wrap}
  .featured-card .fc-arrow{display:none}
}
@media(max-width:600px){
  .cards-4{grid-template-columns:1fr}
}

/* ============ SHARED — inner content blocks (services, lanes, partners, why, industries) ============ */
/* checklist */
.check-list{display:grid;gap:12px;margin-top:10px}
.check-list.two{grid-template-columns:1fr 1fr;gap:12px 30px}
.check-item{display:flex;gap:11px;align-items:flex-start;color:var(--muted);font-size:.95rem}
.check-item .ck{flex:0 0 20px;height:20px;margin-top:2px;border-radius:6px;background:rgba(59,78,240,.12);display:grid;place-items:center}

/* feature grid (icon cards, no image) */
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.feature{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;transition:.2s}
.feature:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.feature .fi{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--purple));display:grid;place-items:center;color:#fff;margin-bottom:16px}
.feature .num{font-size:.78rem;font-weight:800;color:var(--accent);display:block;margin-bottom:8px}
.feature h4{font-size:1.08rem;margin-bottom:8px}
.feature p{color:var(--muted);font-size:.9rem}

/* services page blocks */
.svc-list{display:grid;gap:22px}
.svc-block{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 30px;box-shadow:var(--shadow)}
.svc-block .svc-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.svc-block .svc-n{flex:0 0 40px;height:40px;border-radius:11px;background:linear-gradient(135deg,var(--accent),var(--purple));color:#fff;display:grid;place-items:center;font-weight:800}
.svc-block h3{font-size:1.25rem}
.svc-block .svc-desc{color:var(--muted);margin-bottom:18px}
.svc-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px}
.svc-cols h5{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin-bottom:10px}

/* trade lane region cards */
.lane-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.lane-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
.lane-card h4{font-size:1.05rem;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.lane-card ul{list-style:none}
.lane-card li{font-size:.92rem;color:var(--muted);padding:6px 0;display:flex;align-items:center;gap:9px}
.lane-card li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-2);flex:0 0 6px}

/* partner logos */
.partner-logos{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-top:8px}
.partner-logo{min-width:210px;padding:26px 34px;background:#fff;border:1px solid var(--line);border-radius:14px;text-align:center;font-weight:800;font-size:1.5rem;letter-spacing:.02em;color:var(--ink);box-shadow:var(--shadow)}
.partner-logo small{display:block;font-weight:500;font-size:.72rem;color:var(--muted-2);letter-spacing:.04em;margin-top:6px}
/* partners Swiper carousel */
.partners-swiper{padding-bottom:40px}
.partners-swiper .swiper-slide{height:auto;display:flex}
.partners-swiper .partner-logo{min-width:0;width:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px}
.partners-swiper .partner-logo img{max-height:64px;max-width:80%;width:auto;object-fit:contain;border-radius:6px}
.partners-swiper .swiper-pagination{bottom:0}
.partners-swiper .swiper-pagination-bullet{background:var(--accent);opacity:.3}
.partners-swiper .swiper-pagination-bullet-active{opacity:1}

@media(max-width:960px){
  .feature-grid{grid-template-columns:1fr 1fr}
  .lane-grid{grid-template-columns:1fr 1fr}
  .svc-cols,.check-list.two{grid-template-columns:1fr}
}
@media(max-width:600px){
  .feature-grid,.lane-grid{grid-template-columns:1fr}
}
