*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #060c18;--bg-card: #0f1629;--bg-hover: #111827;--border: rgba(255,255,255,.08);--border-hi: rgba(255,255,255,.14);--text: #f3f4f6;--text-sub: #9ca3af;--text-dim: #6b7280;--accent: #f59e0b;--blue: #2563eb;--blue-hi: #3b82f6;--green: #6ee7b7;--red: #f87171;--radius: 12px;--radius-sm: 8px;--shadow: 0 4px 24px rgba(0,0,0,.35)}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}input,select,button,textarea{font-family:inherit}a{color:var(--blue-hi)}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:0 20px 64px}.header{text-align:center;padding:16px 0 28px;width:100%;max-width:720px}.header-eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}.header h1{font-size:clamp(28px,5vw,42px);font-weight:300;font-family:Georgia,Times New Roman,serif;line-height:1.15;color:var(--text);margin-bottom:10px}.header h1 span{color:var(--accent)}.header-sub{font-size:15px;color:var(--text-sub)}.quote-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px 28px 24px;width:100%;max-width:720px;margin-bottom:28px;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-sub)}.location-input,.form-group input,.form-group select{background:#ffffff0d;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;padding:10px 14px;outline:none;transition:border-color .15s;width:100%}.location-input:focus,.form-group input:focus,.form-group select:focus{border-color:var(--blue)}.location-input::placeholder,.form-group input::placeholder{color:var(--text-dim)}.form-group select option{background:#1a2235;color:var(--text)}.input-hint{font-size:11px;color:var(--text-dim);margin-top:2px}.reefer-temps{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.reefer-temps button{padding:6px 14px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-sub);font-size:12px;cursor:pointer;transition:all .15s}.reefer-temps button.active{background:#2563eb26;border-color:#2563eb66;color:var(--blue-hi)}.temp-btn-label{display:block;font-weight:600}.temp-btn-desc{display:block;font-size:10px;opacity:.7}.btn-primary{background:var(--blue);color:#fff;border:none;border-radius:var(--radius-sm);padding:12px 24px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover{background:#1d4ed8}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background:#374151;cursor:not-allowed}.btn-full{width:100%;margin-top:4px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.error-msg{background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-sm);color:#fca5a5;font-size:13px;padding:10px 14px;margin-top:8px}.remaining-note{font-size:12px;color:var(--text-dim);text-align:center;margin-top:8px}.quote-result{width:100%;max-width:720px;animation:fadeUp .35s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.quote-route{font-size:22px;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.quote-sub{font-size:13px;color:var(--text-dim);margin-bottom:18px}.quote-meta{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}.transit-pill{background:#ffffff0f;border:1px solid var(--border);border-radius:20px;padding:6px 12px;font-size:12px;color:var(--text-sub);display:flex;align-items:center;gap:5px}.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}@media (max-width: 640px){.tiers{grid-template-columns:1fr}}.tiers>div{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 18px;cursor:pointer;transition:border-color .15s,background .15s;position:relative}.tiers>div:hover{border-color:var(--border-hi);background:var(--bg-hover)}.tiers>div.selected{border-color:var(--blue);background:#2563eb14}.tier-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:var(--accent);color:#000;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;border-radius:20px;white-space:nowrap}.tier-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.tier-price{font-size:28px;font-weight:700;color:var(--text);margin-bottom:6px}.tier-desc{font-size:12px;color:var(--text-dim);margin-bottom:6px}.tier-transit{font-size:11px;color:var(--text-dim);opacity:.7}.selected-tier-label{font-size:13px;color:var(--green);font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:6px}.book-row{display:flex;gap:12px;align-items:center;margin-top:12px;flex-wrap:wrap}.quote-disclaimer{font-size:11px;color:var(--text-dim);line-height:1.6;margin-top:14px;padding:10px 14px;background:#ffffff05;border-radius:var(--radius-sm);border:1px solid var(--border)}.team-banner{background:#6366f112;border:1px solid rgba(99,102,241,.2);border-radius:var(--radius);padding:14px 18px;margin-bottom:14px;cursor:pointer;transition:background .15s}.team-banner:hover{background:#6366f11f}.team-toggle{display:flex;align-items:center;justify-content:space-between}.team-label{font-size:14px;font-weight:600;color:#a5b4fc;display:flex;align-items:center;gap:8px}.team-icon{font-size:18px}.team-chevron{font-size:12px;color:var(--text-dim);transition:transform .2s}.team-note{font-size:12px;color:var(--text-dim);margin-top:4px}.team-sub{font-size:12px;color:var(--text-dim);margin-top:10px;line-height:1.6}.team-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.team-tiers>div{background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;cursor:pointer;text-align:center;transition:all .15s}.team-tiers>div:hover{border-color:#6366f166;background:#6366f11a}.insight-block{background:#2563eb0d;border:1px solid rgba(37,99,235,.18);border-radius:var(--radius);padding:18px 20px;margin-bottom:18px}.insight-header{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-hi);margin-bottom:14px}.insight-icon{font-size:14px}.insight-list{list-style:none;display:flex;flex-direction:column;gap:10px}.insight-item{display:flex;gap:10px;font-size:14px;color:#d1d5db;line-height:1.6}.insight-item:before{content:"—";color:var(--blue-hi);flex-shrink:0;margin-top:1px}.insight-loading{display:flex;align-items:center;gap:10px;color:var(--text-dim);font-size:13px}.insight-skeleton{height:13px;background:#ffffff12;border-radius:4px;animation:pulse 1.4s ease-in-out infinite}.insight-skeleton.short{width:55%}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.custom-nudge{background:#f59e0b0d;border:1px solid rgba(245,158,11,.18);border-radius:var(--radius);padding:14px 18px;margin-bottom:14px;display:flex;align-items:flex-start;gap:12px}.custom-nudge-inline{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.custom-nudge-text{font-size:13px;color:#fde68a;line-height:1.6;flex:1}.custom-nudge-link{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none;white-space:nowrap;padding:6px 12px;border:1px solid rgba(245,158,11,.3);border-radius:6px}.custom-nudge-link:hover{background:#f59e0b1a}.ai-chat{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-top:18px;overflow:hidden}.ai-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:14px 18px;background:none;border:none;cursor:pointer;color:var(--text-sub);font-size:13px;font-weight:600;text-align:left;transition:background .15s}.ai-toggle:hover{background:#ffffff08}.ai-icon{font-size:16px}.ai-messages{max-height:320px;overflow-y:auto;padding:8px 16px 4px;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.ai-msg{font-size:13px;line-height:1.65;padding:10px 14px;border-radius:var(--radius-sm);max-width:88%}.ai-msg.assistant{background:#2563eb14;border:1px solid rgba(37,99,235,.15);color:#d1d5db;align-self:flex-start}.ai-msg:not(.assistant){background:#ffffff0f;color:var(--text);align-self:flex-end}.ai-typing{display:flex;gap:4px;padding:10px 14px;align-self:flex-start}.ai-typing span{width:6px;height:6px;background:var(--blue-hi);border-radius:50%;animation:bounce .9s ease-in-out infinite}.ai-typing span:nth-child(2){animation-delay:.15s}.ai-typing span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}.ai-input-row{display:flex;gap:8px;padding:10px 16px 14px;border-top:1px solid var(--border);margin-top:8px}.ai-input-row input{flex:1;background:#ffffff0d;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:13px;padding:8px 12px;outline:none;transition:border-color .15s}.ai-input-row input:focus{border-color:var(--blue)}.ai-input-row button{background:var(--blue);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:600;padding:8px 16px;cursor:pointer;transition:background .15s}.ai-input-row button:hover{background:#1d4ed8}.ai-input-row button:disabled{background:#374151;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.modal{background:#0d1526;border:1px solid var(--border-hi);border-radius:16px;padding:28px;width:100%;max-width:480px;box-shadow:0 20px 60px #00000080;position:relative;animation:fadeUp .25s ease}.modal.modal-wide{max-width:600px}.modal-close{position:absolute;top:16px;right:18px;background:none;border:none;color:var(--text-dim);font-size:20px;cursor:pointer;line-height:1}.modal h3{font-size:18px;font-weight:600;margin-bottom:6px}.modal-sub{font-size:13px;color:var(--text-sub);margin-bottom:22px}.modal-note{font-size:11px;color:var(--text-dim);margin-top:12px;line-height:1.6}.booking-summary{background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:20px;font-size:13px;color:var(--text-sub);line-height:1.7}.booking-price{font-size:22px;font-weight:700;color:var(--text)}.success-banner{background:#10b98114;border:1px solid rgba(16,185,129,.25);border-radius:var(--radius);padding:20px 24px;text-align:center;margin-top:20px;animation:fadeUp .4s ease}.success-banner h3{font-size:17px;font-weight:600;color:var(--green);margin-bottom:6px}.success-banner p{font-size:14px;color:var(--text-sub)}.attr-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.attr-content{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;transition:all .15s}.attr-content:hover{border-color:var(--border-hi);background:#ffffff08}.attr-content.selected{border-color:#6ee7b766;background:#6ee7b70f}.attr-label{font-size:14px;font-weight:600;color:var(--text)}.attr-desc{font-size:12px;color:var(--text-dim);margin-top:2px}.attr-saving{font-size:12px;font-weight:700;color:var(--green);white-space:nowrap;margin-left:auto;padding-top:2px}.footer{text-align:center;font-size:12px;color:var(--text-dim);margin-top:48px;padding-bottom:24px;width:100%;max-width:720px}.footer a{color:var(--text-dim)}.watermark{font-size:10px;color:#ffffff0f;text-align:center;margin-top:8px;letter-spacing:.08em}
