@charset "UTF-8";
.wa-float{position:fixed;bottom:24px;right:24px;z-index:9998;display:flex;flex-direction:column;align-items:flex-end;gap:10px;}
.wa-bubble{background:#f0f6ee;color:#fff;border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(21,135,25,0.4);cursor:pointer;text-decoration:none;transition:transform .2s,box-shadow .2s;border:none;padding:0;}
/* Hidden entirely while the chat panel is open — on mobile the panel's
   bottom edge sits only a few pixels from this button, sharing the same
   right-edge position, so a tap near the bottom of the open panel (very
   natural right after tapping a chip) could otherwise land on this button
   and close the whole chat. Nothing to accidentally hit once it's gone. */
.izy-toggle-hidden{visibility:hidden !important;pointer-events:none !important;}
.wa-bubble:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(21,135,25,0.5);}
.wa-bubble img{width:100%;height:100%;border-radius:50%;display:block;transition:transform .55s cubic-bezier(.34,1.4,.64,1);}
.wa-bubble.spin img{transform:rotate(-360deg);}
.wa-tooltip{background:#1a1a1a;color:#fff;font-family:"Inter",sans-serif;font-size:16px;font-weight:500;padding:8px 14px;border-radius:20px;white-space:nowrap;box-shadow:0 4px 16px rgba(0,0,0,0.25);opacity:0;transform:translateX(10px);transition:opacity .25s,transform .25s;pointer-events:none;}
.wa-float:hover .wa-tooltip,.wa-float.izy-show-tip .wa-tooltip{opacity:1;transform:translateX(0);}
.wa-bubble.izy-nudge img{transform:rotate(-28deg);}
.wa-pulse{position:absolute;width:60px;height:60px;border-radius:50%;background:rgba(21,135,25,0.25);transform:translateZ(0);animation:izyPulse 2.4s ease-out infinite;}
@keyframes izyPulse{0%{transform:scale(1);opacity:.6;}100%{transform:scale(1.5);opacity:0;}}

/* ── IZY AI Assistant chat panel ── */
.izy-chat-panel{position:fixed;bottom:96px;right:24px;z-index:9999;width:360px;max-width:calc(100vw - 32px);height:520px;max-height:calc(100vh - 140px);background:#0b2a0c;border:1px solid rgba(21,135,25,0.35);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,0.45);display:none;flex-direction:column;overflow:hidden;font-family:'Inter',sans-serif;}
.izy-chat-panel.open{display:flex;animation:izySlideUp .3s cubic-bezier(.34,1.4,.64,1);}
@keyframes izySlideUp{from{opacity:0;transform:translateY(16px) scale(.98);}to{opacity:1;transform:translateY(0) scale(1);}}
.izy-chat-head{display:flex;align-items:center;gap:10px;padding:14px 16px;background:rgba(21,135,25,0.12);border-bottom:1px solid rgba(21,135,25,0.25);flex-shrink:0;}
.izy-chat-head img{width:34px;height:34px;border-radius:50%;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,0.35),0 0 0 1px rgba(21,135,25,0.4);}
.izy-chat-head-txt{flex:1;min-width:0;}
.izy-chat-head-txt div:first-child{color:#fff;font-weight:700;font-size:14px;}
.izy-chat-head-txt div:last-child{color:#7ec97e;font-size:11px;display:flex;align-items:center;gap:5px;}
.izy-chat-head-txt div:last-child::before{content:'';width:7px;height:7px;border-radius:50%;background:#2ecc55;display:inline-block;}
.izy-chat-head-txt div:last-child.izy-status-connecting{color:#e0a91a;}
.izy-chat-head-txt div:last-child.izy-status-connecting::before{background:#e0a91a;animation:izyStatusPulse 1s ease-in-out infinite;}
@keyframes izyStatusPulse{0%,100%{opacity:1;}50%{opacity:.3;}}
.izy-chat-close{background:none;border:none;color:rgba(255,255,255,0.6);font-size:22px;cursor:pointer;line-height:1;padding:4px 6px;}
.izy-chat-close:hover{color:#fff;}
.izy-chat-back{background:none;border:none;color:rgba(255,255,255,0.6);font-size:20px;cursor:pointer;line-height:1;padding:4px 6px;display:none;}
.izy-chat-back:hover{color:#fff;}
.izy-chat-back.show{display:block;}
html.light-mode .izy-chat-close{color:rgba(13,32,16,0.55);}
html.light-mode .izy-chat-close:hover{color:#0d2010;}
html.light-mode .izy-chat-back{color:rgba(13,32,16,0.55);}
html.light-mode .izy-chat-back:hover{color:#0d2010;}
.izy-chat-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch;}
.izy-msg{max-width:82%;padding:10px 13px;border-radius:14px;font-size:14px;line-height:1.5;}
.izy-msg-bot{align-self:flex-start;background:rgba(255,255,255,0.08);color:#f0f6ee;border-bottom-left-radius:4px;}
.izy-msg-user{align-self:flex-end;background:#c8960a;color:#1a1200;font-weight:600;border-bottom-right-radius:4px;}
.izy-chips{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-start;max-width:100%;}
.izy-chip{background:rgba(255,255,255,0.06);border:1px solid rgba(21,135,25,0.45);color:#e8f5e9;font-size:13px;font-weight:600;padding:8px 13px;border-radius:20px;cursor:pointer;transition:background .15s,border-color .15s;}
.izy-chip:hover{background:rgba(21,135,25,0.25);border-color:#c8960a;}
.izy-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:rgba(255,255,255,0.08);border-radius:14px;border-bottom-left-radius:4px;}
.izy-typing span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.5);animation:izyTyping 1.2s infinite ease-in-out;}
.izy-typing span:nth-child(2){animation-delay:.15s;}
.izy-typing span:nth-child(3){animation-delay:.3s;}
@keyframes izyTyping{0%,60%,100%{transform:translateY(0);opacity:.4;}30%{transform:translateY(-4px);opacity:1;}}
.izy-chat-input-row{display:flex;gap:8px;padding:12px;border-top:1px solid rgba(21,135,25,0.25);flex-shrink:0;}
.izy-chat-input{flex:1;background:rgba(255,255,255,0.06);border:1px solid rgba(21,135,25,0.3);border-radius:20px;padding:10px 15px;color:#fff;font-size:14px;font-family:'Inter',sans-serif;outline:none;min-width:0;}
.izy-chat-input::placeholder{color:rgba(255,255,255,0.4);}
.izy-chat-input:focus{border-color:#c8960a;}
.izy-chat-send{background:#c8960a;border:none;color:#1a1200;width:38px;height:38px;border-radius:50%;flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;}
.izy-chat-send:hover{background:#e0a91a;}
html.light-mode .izy-chat-send{color:#ffffff;}
.izy-estimate-card{align-self:stretch;background:rgba(200,146,10,0.1);border:1px solid rgba(200,146,10,0.4);border-radius:14px;padding:16px;text-align:center;}
.izy-estimate-card .amt{font-family:'Playfair Display',serif;font-size:32px;font-weight:700;color:#e0a91a;line-height:1;margin-bottom:4px;}
.izy-estimate-card .lbl{font-size:11px;color:#9ab89a;text-transform:uppercase;letter-spacing:.05em;}
html.light-mode .izy-chat-panel{background:#fff;border-color:rgba(21,135,25,0.2);}
html.light-mode .izy-chat-head{background:#eef4ec;border-bottom-color:rgba(21,135,25,0.15);}
html.light-mode .izy-chat-head img{box-shadow:0 2px 8px rgba(13,32,16,0.25),0 0 0 1.5px rgba(21,135,25,0.55);}
html.light-mode .izy-chat-head-txt div:first-child{color:#0d2010;}
html.light-mode .izy-msg-bot{background:#f0f6ee;color:#1a3a1a;}
html.light-mode .izy-chip{background:#f0f6ee;border-color:rgba(21,135,25,0.3);color:#0d2010;}
html.light-mode .izy-chip:hover{background:#e2f0e0;}
html.light-mode .izy-chat-input{background:#f0f6ee;border-color:rgba(21,135,25,0.25);color:#0d2010;}
html.light-mode .izy-chat-input::placeholder{color:#5a7a5a;}
html.light-mode .izy-typing{background:#f0f6ee;}
html.light-mode .izy-typing span{background:rgba(21,135,25,0.4);}
@media(max-width:420px){.izy-chat-panel{right:16px;bottom:88px;width:calc(100vw - 32px);}}
/* -- Global contrast fixes for light mode -- */
html.light-mode [style*="color:var(--w75)"] { color: #1a3a1a !important; }
html.light-mode [style*="color:var(--w45)"] { color: #4a6a4a !important; }
html.light-mode [style*="color:rgba(255,255,255,0.78)"] { color: #1a3a1a !important; }
html.light-mode [style*="color:rgba(255,255,255,0.6)"] { color: #2a5a2a !important; }
html.light-mode [style*="color:rgba(255,255,255,0.45)"] { color: #4a6a4a !important; }
html.light-mode [style*="color:#fff"] { color: #0d2010 !important; }
html.light-mode [style*="color:white"] { color: #0d2010 !important; }
html.light-mode [style*="color:var(--gold-lt)"] { color: #0d2010 !important; }
html.light-mode [style*="color:var(--gold)"] { color: #8a6200 !important; }
html.light-mode [style*="color:var(--g1)"] { color: #0e6612 !important; }
html.light-mode [style*="color:#68d391"] { color: #0e6612 !important; }
html.light-mode [style*="color:#fff;font-weight"] { color: #0d2010 !important; }
/* Lane cards in city pages */
html.light-mode [style*="background:rgba(21,135,25,0.07)"][style*="border-radius:12px"] span { color: #1a3a1a !important; }
html.light-mode [style*="background:rgba(21,135,25,0.07)"][style*="border-radius:12px"] { background: #fff !important; }
/* Stat boxes */
html.light-mode [style*="background:rgba(21,135,25,0.07)"][style*="border-radius:16px"] { background: #fff !important; border-color: rgba(21,135,25,0.15) !important; }
html.light-mode [style*="background:rgba(21,135,25,0.1)"][style*="border-radius"] { background: #f0f6ee !important; }
/* Dark section text */
html.light-mode section[style*="background:#020e03"] p { color: #1a3a1a !important; }
html.light-mode section[style*="background:#020e03"] span { color: #1a3a1a !important; }
html.light-mode section[style*="background:#020e03"] li { color: #1a3a1a !important; }
html.light-mode section[style*="background:#020e03"] div { color: #1a3a1a !important; }
html.light-mode section[style*="background:#051c06"] p { color: #1a3a1a !important; }
html.light-mode section[style*="background:#051c06"] div { color: #1a3a1a !important; }
html.light-mode section[style*="background:linear-gradient(to right,#020e03"] p { color: #1a3a1a !important; }
html.light-mode section[style*="background:linear-gradient(to right,#020e03"] span { color: #1a3a1a !important; }

/* Mobile menu light mode comprehensive */
html.light-mode .mobile-menu { background: #f0f6ee !important; }
html.light-mode .mobile-menu a { color: #0d2010 !important; border-bottom-color: rgba(21,135,25,0.1) !important; }
html.light-mode .mobile-menu a:hover { color: #0d2010 !important; }
html.light-mode .mm-group-title { color: #0d2010 !important; border-bottom-color: rgba(200,146,10,0.3) !important; }
html.light-mode .mm-cta { background: var(--gold) !important; color: #fff !important; -webkit-text-fill-color: #fff !important; }
html.light-mode .mm-cta2 { border-color: rgba(21,135,25,0.3) !important; color: #0d2010 !important; }
html.light-mode .hamburger span { background: #3a7a1a !important; }

/* Cost-Plus card light mode */
html.light-mode [style*="background:rgba(200,146,10,0.08)"][style*="border-radius:1"] { background: #fdf8e8 !important; }
html.light-mode [style*="background:rgba(200,146,10,0.07)"][style*="border-radius:1"] { background: #fdf8e8 !important; }
html.light-mode [style*="background:rgba(200,146,10,0.05)"][style*="border-radius:1"] { background: #fdf8e8 !important; }

/* Mobile menu scroll fix */
html.light-mode .mobile-menu { overflow-y: auto !important; }
html.light-mode .mm-group a { color: #0d2010 !important; border-bottom-color: rgba(21,135,25,0.12) !important; }
html.light-mode .mm-group a:hover { color: #0d2010 !important; background: rgba(21,135,25,0.05) !important; }

/* Blog hero gradient light mode fix */
html.light-mode section[style*="background:linear-gradient(160deg,#051c06"] { background: #eef4ec !important; }
html.light-mode section[style*="background:linear-gradient(160deg,#051c06"] h1 { color: #0d2010 !important; }
html.light-mode section[style*="background:linear-gradient(160deg,#051c06"] p { color: #1a3a1a !important; }
html.light-mode section[style*="background:linear-gradient(160deg,#051c06"] div { color: #1a3a1a !important; }
html.light-mode section[style*="background:linear-gradient(to right,#020e03"] h1 { color: #0d2010 !important; }
html.light-mode section[style*="background:linear-gradient(to right,#020e03"] p { color: #1a3a1a !important; }
html.light-mode section[style*="background:var(--grad-alt)"] h1 { color: #0d2010 !important; }
html.light-mode section[style*="background:var(--grad-alt)"] p { color: #1a3a1a !important; }
html.light-mode section[style*="background:var(--grad-alt)"] div { color: #1a3a1a !important; }

/* Mobile menu display fix - ensure all groups visible */
.mobile-menu.open { display: flex !important; flex-direction: column !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; }
.mm-group { display: block !important; visibility: visible !important; opacity: 1 !important; overflow: visible !important; }
.mm-group a { display: block !important; visibility: visible !important; opacity: 1 !important; }
html.light-mode .mobile-menu.open { background: #f0f6ee !important; }

/* Menu scroll fix final */
.mobile-menu { -webkit-overflow-scrolling: touch !important; scroll-behavior: smooth !important; }
.mobile-menu > * { flex-shrink: 0; }

/* Data table light mode fix */
html.light-mode table[style*="border-collapse:collapse"] thead tr { background: rgba(21,135,25,0.15) !important; }
html.light-mode table[style*="border-collapse:collapse"] thead th { color: #0d2010 !important; }
html.light-mode table[style*="border-collapse:collapse"] tbody tr { background: #fff !important; border-bottom-color: rgba(21,135,25,0.1) !important; }
html.light-mode table[style*="border-collapse:collapse"] tbody tr:nth-child(even) { background: #f6f9f4 !important; }
html.light-mode table[style*="border-collapse:collapse"] td { color: #1a3a1a !important; border-bottom-color: rgba(21,135,25,0.08) !important; }
html.light-mode .compare-table thead tr { background: rgba(21,135,25,0.12) !important; }

/* Table header light mode */
html.light-mode .table-header { background: rgba(21,135,25,0.15) !important; }
html.light-mode .table-header th { color: #0d2010 !important; }
html.light-mode .table-header td { color: #0d2010 !important; }
/* Hardcoded white text inside light-switching sections - fix invisible text */
html.light-mode .section-dark [style*="color:rgba(255,255,255"] { color: #1a3a1a !important; }
html.light-mode .section-mint [style*="color:rgba(255,255,255"] { color: #1a3a1a !important; }
html.light-mode .section-green [style*="color:rgba(255,255,255"] { color: #1a3a1a !important; }
/* Brighter, more vivid gold for buttons in light mode - base gold looks dull against light background */
html.light-mode .btn-gold{background:linear-gradient(135deg,#e0a91a,#f0c040) !important;box-shadow:0 6px 24px rgba(224,169,26,0.4) !important;}
html.light-mode .btn-gold:hover{background:linear-gradient(135deg,#f0c040,#e0a91a) !important;}
html.light-mode [style*="linear-gradient(135deg,var(--gold),var(--gold-lt))"]{background:linear-gradient(135deg,#e0a91a,#f0c040) !important;}
/* Request a Quick Quote button text: black in dark mode, white in light mode (per explicit request) */
html.light-mode .btn-gold{color:#ffffff !important;}
/* Green CTA buttons (e.g. "Track a Shipment", "Get a Free Quote") follow the
   same convention as gold buttons sitewide: black text in dark mode, white
   text in light mode. Targeted by inline style since these buttons don't
   share a single class across the site. */
[style*="background:#158719;color:#fff"]{color:#000000 !important;}
html.light-mode [style*="background:#158719;color:#fff"]{color:#ffffff !important;}
/* Comprehensive fix: ensure all gold-background buttons/badges have white text in light mode */
html.light-mode .btn-carrier{color:#ffffff !important;}
html.light-mode .nav-btn{color:#ffffff !important;}
html.light-mode .qq-badge{color:#ffffff !important;}
html.light-mode .err-cta{color:#ffffff !important;}
html.light-mode .mm-cta{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}
html.light-mode .mobile-menu .mm-cta{color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;}
html.light-mode .btn-qq{color:#ffffff !important;}
html.light-mode .btn-gold-sm{color:#ffffff !important;}
/* Cards using background:var(--white) were silently broken by root --white redefinition in light mode */
html.light-mode .feature-card{background:#ffffff !important;}
html.light-mode .t-card{background:#ffffff !important;}
html.light-mode .cred-card{background:#ffffff !important;}
html.light-mode .blog-card{background:#ffffff !important;}
/* Any remaining inline background:var(--white) usage - also broken by root --white redefinition */
html.light-mode [style*="background:var(--white)"]{background:#ffffff !important;}
/* Desktop nav Get Quote button - force black in dark mode, white in light mode, overriding hardcoded inline #fff */
a[style*="background:var(--gold);color:#fff;font-size:16px;font-weight:700;padding:8px 18px;border-radius:50px"] {color:#000000 !important;}
html.light-mode a[style*="background:var(--gold);color:#fff;font-size:16px;font-weight:700;padding:8px 18px;border-radius:50px"] {color:#ffffff !important;}
/* Desktop nav Track link - dedicated class, consistent in both modes, matching home.html's fix */
.nav-track-link{color:rgba(255,255,255,0.85) !important;}
.nav-track-link:hover{color:#ffffff !important;}
html.light-mode .nav-track-link{color:rgba(255,255,255,0.85) !important;}
html.light-mode .nav-track-link:hover{color:#ffffff !important;}

/* LIGHT MODE STANDARDIZATION: unify page backgrounds to premium light green #eef4ec */
html.light-mode .section-green{background:#eef4ec !important;}
html.light-mode .section-green::before{background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(21,135,25,0.08) 0%,transparent 55%) !important;}
html.light-mode .section-green .s-eye,html.light-mode .section-green .s-eye-green{color:#0e6612 !important;}
html.light-mode .section-green .s-title,html.light-mode .section-green h2{color:#0d2010 !important;}
html.light-mode .section-green .s-sub,html.light-mode .section-green p{color:#143214 !important;}
html.light-mode .section-green [style*="color:rgba(255,255,255"]{color:#1a3a1a !important;}
html.light-mode .section-green [style*="color:var(--white)"]{color:#0d2010 !important;}
html.light-mode .section-green [style*="color:#fff"]{color:#0d2010 !important;}
html.light-mode .section-green [style*="color:#e8f5e9"]{color:#0d2010 !important;}
html.light-mode .section-green [style*="color:#888"]{color:#5a6a5a !important;}
