/*
Theme Name: LogisticsPro
Theme URI: https://example.com
Author: Shah Azam
Description: Professional, modern WordPress theme for transportation & logistics companies. Fully Elementor compatible. Includes quote requests, load booking, shipment tracking, carrier applications, customer account portal, auto-generated menu, and header contact bar.
Version: 2.0
Requires PHP: 7.4
Text Domain: logisticspro
*/

:root{
  --color-primary:#0f2942;
  --color-primary-light:#1d3557;
  --color-accent:#f4a300;
  --color-bg:#f7f9fb;
  --color-text:#22303e;
  --color-muted:#5c6b7a;
  --radius:12px;
  --font-heading:'Poppins',sans-serif;
  --font-body:'Inter',sans-serif;
  --shadow:0 6px 24px rgba(15,41,66,0.08);
}
*{box-sizing:border-box;}
body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.65;}
h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-primary);margin-top:0;line-height:1.25;}
a{color:var(--color-primary);text-decoration:none;transition:.2s;}
img{max-width:100%;display:block;}
.container{max-width:1240px;margin:0 auto;padding:0 24px;}
.btn{display:inline-block;background:var(--color-accent);color:#111;padding:13px 30px;border-radius:var(--radius);font-weight:700;border:none;cursor:pointer;transition:.2s;letter-spacing:.2px;}
.btn:hover{background:#dd9502;transform:translateY(-1px);}
.btn-outline{background:transparent;border:2px solid var(--color-primary);color:var(--color-primary);}
.btn-outline:hover{background:var(--color-primary);color:#fff;}
.btn-white{background:#fff;color:var(--color-primary);}

/* Top contact bar */
.top-bar{background:var(--color-primary);color:#cfd9e3;font-size:.85rem;padding:8px 0;}
.top-bar .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;}
.top-bar a{color:#fff;font-weight:600;}
.top-bar .contact-items{display:flex;gap:24px;flex-wrap:wrap;}
.top-bar .contact-items span{display:flex;align-items:center;gap:6px;}

/* Header/nav */
.site-header{background:#fff;padding:14px 0;position:sticky;top:0;z-index:999;box-shadow:0 2px 12px rgba(0,0,0,.05);}
.site-header .container{display:flex;justify-content:space-between;align-items:center;}
.site-title{color:var(--color-primary);font-weight:800;font-size:1.5rem;}
.main-nav ul{list-style:none;display:flex;gap:28px;margin:0;padding:0;}
.main-nav a{color:var(--color-text);font-weight:600;font-size:.95rem;}
.main-nav a:hover{color:var(--color-accent);}
.header-cta{display:flex;align-items:center;gap:16px;}
.mobile-toggle{display:none;background:none;border:none;color:var(--color-primary);font-size:1.8rem;cursor:pointer;}

/* Hero */
.hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 60%,#2a5080 100%);color:#fff;padding:110px 0 100px;text-align:center;position:relative;overflow:hidden;}
.hero h1{color:#fff;font-size:3rem;margin-bottom:18px;font-weight:800;}
.hero p{font-size:1.2rem;max-width:660px;margin:0 auto 36px;color:#dbe4ee;}
.hero .btn-group{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.route-line{position:relative;height:2px;background:repeating-linear-gradient(90deg,#f4a300 0 10px,transparent 10px 20px);margin:40px auto;max-width:600px;}
.route-line::before,.route-line::after{content:'';position:absolute;width:14px;height:14px;background:#fff;border-radius:50%;top:-6px;box-shadow:0 0 0 4px rgba(255,255,255,.25);}
.route-line::before{left:0;}
.route-line::after{right:0;}

.section{padding:90px 0;}
.section-title{text-align:center;margin-bottom:56px;}
.section-title h2{font-size:2.2rem;}
.section-title p{color:var(--color-muted);max-width:600px;margin:12px auto 0;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
@media(max-width:1000px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:768px){.grid-3,.grid-2,.grid-4{grid-template-columns:1fr;}.hero h1{font-size:2.1rem;}}

.card{background:#fff;border-radius:var(--radius);padding:36px;box-shadow:var(--shadow);transition:.25s;border:1px solid #eef1f5;}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(15,41,66,.12);}
.card .icon{font-size:2rem;margin-bottom:16px;}
.card h3{margin-bottom:10px;}
.card p{color:var(--color-muted);margin-bottom:18px;}

.form-box{background:#fff;border-radius:var(--radius);padding:44px;box-shadow:var(--shadow);max-width:680px;margin:0 auto;}
.form-box h2{margin-bottom:8px;}
.form-box > p{color:var(--color-muted);margin-bottom:28px;}
.form-box label{display:block;margin-bottom:6px;font-weight:600;font-size:.88rem;color:var(--color-text);}
.form-box input,.form-box select,.form-box textarea{width:100%;padding:13px;margin-bottom:20px;border:1px solid #dbe2e9;border-radius:8px;font-family:var(--font-body);font-size:.95rem;}
.form-box input:focus,.form-box select:focus,.form-box textarea:focus{outline:none;border-color:var(--color-accent);}
.form-box .btn{width:100%;font-size:1rem;}
.status-msg{padding:13px 16px;border-radius:8px;margin-bottom:18px;display:none;font-size:.9rem;}
.status-msg.success{background:#e6f4ea;color:#1a7431;display:block;}
.status-msg.error{background:#fdeaea;color:#b3261e;display:block;}

.site-footer{background:#0b1c2c;color:#a9bccf;padding:70px 0 28px;}
.site-footer h4{color:#fff;margin-bottom:16px;}
.site-footer a{color:#a9bccf;}
.site-footer a:hover{color:var(--color-accent);}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:40px;}
.footer-grid ul{list-style:none;padding:0;margin:0;}
.footer-grid li{margin-bottom:10px;}
.footer-bottom{text-align:center;padding-top:28px;border-top:1px solid #1c3348;font-size:.85rem;}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;}}

.tracking-result{font-family:'SFMono-Regular',monospace;background:#eef2f6;padding:24px;border-radius:10px;margin-top:24px;border-left:4px solid var(--color-accent);}
@media(max-width:900px){.main-nav{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:16px 24px;box-shadow:0 8px 20px rgba(0,0,0,.08);display:none;}
.main-nav.open{display:block;}
.main-nav ul{flex-direction:column;gap:14px;}
.mobile-toggle{display:block;}
.top-bar .container{flex-direction:column;align-items:flex-start;}
}
