/* ============================================================
   TRANSPORTES TUMBEZ — CSS v2.0
   Estilo con secciones diagonales (clip-path)
   ============================================================ */

:root {
  --navy:   #0D1B3E;
  --navy2:  #1a2a5e;
  --orange: #F5820A;
  --orh:    #d96e00;
  --white:  #ffffff;
  --gbg:    #f5f6fa;
  --text:   #1a1a2e;
  --textg:  #5a5f7a;
  --bdr:    #e5e7f0;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html  { scroll-behavior: smooth; }
body  { font-family: 'Inter', 'Segoe UI', Arial, sans-serif; color: var(--text); overflow-x: hidden; background: #fff; }
img   { max-width: 100%; display: block; }
a     { text-decoration: none; color: inherit; }

/* ── LAYOUT ── */
.wrap  { max-width: 1180px; margin: 0 auto; padding: 0 40px; }
.tc    { text-align: center; }
.tc .lbl  { justify-content: center; }
.tc .lbl::before { display: none; }
.tc .sub  { margin-left: auto; margin-right: auto; }

.lbl {
  display: inline-flex; align-items: center; gap: 8px;
  color: var(--orange); font-weight: 700; font-size: .73rem;
  letter-spacing: .13em; text-transform: uppercase; margin-bottom: 10px;
}
.lbl::before { content:''; width: 20px; height: 2px; background: var(--orange); border-radius: 2px; }

.ttl {
  font-size: clamp(1.75rem, 3.8vw, 2.75rem); font-weight: 900;
  color: var(--navy); line-height: 1.12; margin-bottom: 14px; letter-spacing: -.01em;
}
.ttl.w { color: #fff; }

.sub {
  color: var(--textg); font-size: 1rem; line-height: 1.65;
  max-width: 580px; margin-bottom: 44px;
}
.sub.w { color: rgba(255,255,255,.72); }

/* ── BUTTONS ── */
.btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 14px 30px; border-radius: 10px;
  font-weight: 700; font-size: .92rem; letter-spacing: .04em;
  transition: all .25s; cursor: pointer; border: none; font-family: inherit;
}
.btn-or   { background: var(--orange); color: #fff; box-shadow: 0 4px 20px rgba(245,130,10,.30); }
.btn-or:hover { background: var(--orh); transform: translateY(-2px); box-shadow: 0 8px 30px rgba(245,130,10,.42); }
.btn-nv   { background: var(--navy); color: #fff; }
.btn-nv:hover { background: var(--navy2); transform: translateY(-2px); }
.btn-ghost { background: rgba(255,255,255,.1); color: #fff; border: 1.5px solid rgba(255,255,255,.28); backdrop-filter: blur(8px); }
.btn-ghost:hover { background: rgba(255,255,255,.2); transform: translateY(-2px); }
.btn-wh   { background: #fff; color: var(--orange); }
.btn-wh:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(0,0,0,.15); }

/* ── NAVBAR ── */
.navbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  padding: 10px 40px; min-height: 80px;
  background: rgba(255,255,255,.97); backdrop-filter: blur(14px);
  box-shadow: 0 2px 20px rgba(0,0,0,.07);
  display: flex; align-items: center; justify-content: space-between;
  border-radius: 0 0 18px 18px;
  transition: padding .3s, box-shadow .3s, min-height .3s;
}
.navbar.scrolled { padding: 6px 40px; min-height: 64px; box-shadow: 0 4px 28px rgba(0,0,0,.12); }
.nb-logo img { height: 100px; object-fit: contain; transition: height .3s; transform: scale(1.3); transform-origin: left center; }
.navbar.scrolled .nb-logo img { height: 80px; }

.nb-links { display: flex; align-items: center; gap: 28px; list-style: none; }
.nb-links a {
  color: var(--navy); font-weight: 600; font-size: .86rem;
  letter-spacing: .04em; text-transform: uppercase;
  position: relative; transition: color .25s;
}
.nb-links a::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:2px; background:var(--orange); transition: width .3s; }
.nb-links a:hover, .nb-links a.active { color: var(--orange); }
.nb-links a:hover::after, .nb-links a.active::after { width: 100%; }
.nb-cta { background: var(--orange) !important; color: #fff !important; padding: 10px 22px !important; border-radius: 8px !important; }
.nb-cta::after { display:none !important; }
.nb-cta:hover { background: var(--orh) !important; color:#fff !important; transform: translateY(-1px); }

.hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:4px; }
.hamburger span { display:block; width:25px; height:2.5px; background:var(--navy); border-radius:4px; transition:all .3s; }
.hamburger.open span:nth-child(1) { transform:translateY(7.5px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity:0; }
.hamburger.open span:nth-child(3) { transform:translateY(-7.5px) rotate(-45deg); }

/* ── HOME HERO — con corte diagonal inferior ── */
.home-hero {
  position: relative; min-height: 100vh;
  display: flex; align-items: center; overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
  margin-bottom: -60px;
}
.hh-bg {
  position: absolute; inset: 0;
  background: url('https://transtumbez.cl/wp/wp-content/uploads/2026/05/Hero-principal-banner-home.webp') center/cover;
  animation: bgZoom 1.4s ease forwards;
}
.hh-ov {
  position: absolute; inset: 0;
  background: linear-gradient(108deg, rgba(13,27,62,.90) 0%, rgba(13,27,62,.60) 55%, rgba(13,27,62,.25) 100%);
}
.hh-body {
  position: relative; z-index: 2;
  padding: 0 40px; margin-top: 100px; max-width: 680px;
  opacity: 0; transform: translateY(28px);
  transition: opacity .8s ease, transform .8s ease;
}
.hh-body.in { opacity:1; transform:translateY(0); }

.hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(245,130,10,.15); border: 1px solid rgba(245,130,10,.35);
  color: var(--orange); padding: 6px 16px; border-radius: 100px;
  font-size: .76rem; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; margin-bottom: 20px;
}
.hero-badge i { width:6px; height:6px; border-radius:50%; background:var(--orange); display:block; animation: pulseDot 1.6s infinite; }

.hh-body h1 { color:#fff; font-size:clamp(2.4rem,5.5vw,4rem); font-weight:900; line-height:1.08; margin-bottom:16px; }
.hh-body h1 em { font-style:normal; color:var(--orange); }
.hh-body .hero-sub { color:rgba(255,255,255,.83); font-size:1.08rem; line-height:1.65; margin-bottom:30px; }

.hero-tags { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:34px; }
.htag { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,.88); font-size:.88rem; font-weight:600; }
.htag svg { color:var(--orange); flex-shrink:0; }

.hero-ctas { display:flex; flex-wrap:wrap; gap:14px; }

.hero-scroll {
  position:absolute; bottom:80px; left:50%; transform:translateX(-50%);
  z-index:2; display:flex; flex-direction:column; align-items:center; gap:7px;
  color:rgba(255,255,255,.45); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase;
  animation: bounceScroll 2s infinite;
}
.hs-ring { width:26px; height:26px; border-radius:50%; border:2px solid rgba(255,255,255,.3); display:flex; align-items:center; justify-content:center; }

/* ── PAGE HERO (inner pages) — diagonal inferior ── */
.page-hero {
  padding-top: 80px; min-height: 380px; position: relative;
  display: flex; align-items: center; overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 100% 88%, 0 100%);
  margin-bottom: -48px;
}
.ph-bg  { position:absolute; inset:0; background-size:cover; background-position:center; }
.ph-ov  { position:absolute; inset:0; background:linear-gradient(110deg, rgba(13,27,62,.90) 0%, rgba(13,27,62,.60) 60%, rgba(13,27,62,.28) 100%); }
.ph-cnt { position:relative; z-index:2; padding:70px 40px 100px; }
.breadcrumb { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,.5); font-size:.8rem; margin-bottom:14px; }
.breadcrumb a { color:rgba(255,255,255,.5); }
.breadcrumb a:hover { color:var(--orange); }
.breadcrumb sep { color:rgba(255,255,255,.3); margin:0 2px; }
.page-hero h1 { color:#fff; font-size:clamp(2rem,4.5vw,3.2rem); font-weight:900; line-height:1.1; margin-bottom:12px; }
.page-hero p  { color:rgba(255,255,255,.8); font-size:1.04rem; line-height:1.6; max-width:540px; }

/* ── SECTIONS ── */
.sec   { padding: 90px 40px; position: relative; }
.sec-w { background: #fff; }
.sec-g { background: var(--gbg); }
.sec-n { background: var(--navy); overflow:hidden; }

/* Diagonal top cut */
.diag-top {
  clip-path: polygon(0 5%, 100% 0, 100% 100%, 0 100%);
  margin-top: -40px; padding-top: 120px;
}
/* Diagonal bottom cut */
.diag-bot {
  clip-path: polygon(0 0, 100% 0, 100% 95%, 0 100%);
  margin-bottom: -40px; padding-bottom: 120px;
}
/* Both */
.diag-both {
  clip-path: polygon(0 5%, 100% 0, 100% 95%, 0 100%);
  margin-top: -40px; margin-bottom: -40px;
  padding-top: 120px; padding-bottom: 120px;
}

/* Diagonal lines bg for navy sections */
.sec-n::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background-image: linear-gradient(135deg,rgba(255,255,255,.022) 1px,transparent 1px), linear-gradient(45deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size: 80px 80px;
}

/* ── SERVICE CARDS GRID ── */
.srv-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.srv-card {
  background:#fff; border-radius:14px; overflow:hidden;
  box-shadow:0 4px 28px rgba(0,0,0,.08); transition:transform .35s, box-shadow .35s;
}
.srv-card:hover { transform:translateY(-8px); box-shadow:0 16px 50px rgba(0,0,0,.14); }
.srv-img { height:190px; overflow:hidden; }
.srv-img img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.srv-card:hover .srv-img img { transform:scale(1.07); }
.srv-body { padding:20px 20px 24px; }
.srv-ico { width:42px; height:42px; border-radius:10px; background:rgba(245,130,10,.1); display:flex; align-items:center; justify-content:center; margin-bottom:12px; transition:background .3s; }
.srv-card:hover .srv-ico { background:var(--orange); }
.srv-ico svg { stroke:var(--orange); fill:none; stroke-width:2; transition:stroke .3s; }
.srv-card:hover .srv-ico svg { stroke:#fff; }
.srv-card h3 { font-size:.9rem; font-weight:800; color:var(--navy); text-transform:uppercase; letter-spacing:.04em; margin-bottom:8px; line-height:1.3; }
.srv-card p  { color:var(--textg); font-size:.855rem; line-height:1.6; margin-bottom:16px; }
.srv-lnk { display:inline-flex; align-items:center; gap:7px; color:var(--orange); font-weight:700; font-size:.8rem; letter-spacing:.05em; text-transform:uppercase; transition:gap .25s; }
.srv-lnk:hover { gap:13px; }

/* ── STATS ── */
.stats-in { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.stats-l .lbl { color:rgba(255,255,255,.5); }
.stats-l .sub { margin-bottom:28px; }
.stats-g  { display:grid; grid-template-columns:1fr 1fr; gap:18px; }

.stat-card {
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
  border-radius:14px; padding:22px 18px;
  display:flex; align-items:flex-start; gap:15px;
  transition:background .3s, transform .3s;
}
.stat-card:hover { background:rgba(255,255,255,.1); transform:translateY(-4px); }
.st-ico { width:50px; height:50px; border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.st-ico.o { background:var(--orange); }
.st-ico.d { background:rgba(255,255,255,.09); }
.st-num { font-size:2.1rem; font-weight:900; color:#fff; line-height:1; display:flex; align-items:baseline; gap:2px; }
.st-num .pre { font-size:1.3rem; color:var(--orange); }
.st-num .suf { font-size:1.3rem; color:var(--orange); margin-left:1px; }
.st-lbl { color:rgba(255,255,255,.6); font-size:.8rem; margin-top:4px; line-height:1.4; }

/* ── CTA BANNER (naranja, diagonal ambos lados) ── */
.cta-sec {
  background:var(--orange); text-align:center;
  clip-path: polygon(0 6%, 100% 0, 100% 94%, 0 100%);
  padding: 110px 40px; margin: -40px 0; position:relative; overflow:hidden; z-index:1;
}
.cta-sec::before {
  content:''; position:absolute; inset:0;
  background:url('https://transtumbez.cl/wp/wp-content/uploads/2026/05/Servicio-24_7-nocturno.webp') center/cover;
  opacity:.08;
}
.cta-in { position:relative; z-index:1; max-width:680px; margin:0 auto; }
.cta-in h2 { color:#fff; font-size:clamp(1.8rem,3.5vw,2.6rem); font-weight:900; margin-bottom:14px; }
.cta-in p  { color:rgba(255,255,255,.85); font-size:1.04rem; line-height:1.6; margin-bottom:28px; }
.cta-btns  { display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }

/* ── NOSOTROS — intro ── */
.about-g { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.about-img { position:relative; border-radius:18px; overflow:hidden; }
.about-img img { width:100%; height:460px; object-fit:cover; border-radius:18px; }
.about-badge { position:absolute; bottom:22px; left:22px; background:var(--orange); color:#fff; padding:14px 18px; border-radius:12px; font-size:.88rem; font-weight:800; line-height:1.3; }
.about-badge span { font-size:2rem; display:block; }
.about-txt p { color:var(--textg); font-size:.97rem; line-height:1.7; margin-bottom:16px; }
.vals { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin-top:26px; }
.val  { display:flex; align-items:flex-start; gap:13px; background:var(--gbg); border-radius:12px; padding:15px; }
.val-dot { width:36px; height:36px; background:var(--orange); border-radius:9px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.val h4 { font-size:.85rem; font-weight:800; color:var(--navy); margin-bottom:3px; }
.val p  { font-size:.8rem; color:var(--textg); line-height:1.5; margin:0; }

/* ── WHY CARDS ── */
.why-g { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.why-c {
  display:flex; gap:18px; align-items:flex-start;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1);
  border-radius:14px; padding:26px; transition:background .3s, transform .3s;
}
.why-c:hover { background:rgba(255,255,255,.1); transform:translateY(-5px); }
.why-ico { width:56px; height:56px; border-radius:14px; flex-shrink:0; display:flex; align-items:center; justify-content:center; transition:transform .3s; }
.why-c:hover .why-ico { transform:scale(1.1) rotate(-3deg); }
.why-ico.o  { background:var(--orange); }
.why-ico.dl { background:rgba(255,255,255,.09); border:1.5px solid rgba(255,255,255,.15); }
.why-c h3 { color:#fff; font-size:.92rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; margin-bottom:7px; }
.why-c p  { color:rgba(255,255,255,.62); font-size:.858rem; line-height:1.6; margin:0; }

/* ── FLEET ── */
.fleet-g { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.fleet-c { border-radius:14px; overflow:hidden; box-shadow:0 4px 28px rgba(0,0,0,.08); transition:transform .3s, box-shadow .3s; }
.fleet-c:hover { transform:translateY(-6px); box-shadow:0 16px 50px rgba(0,0,0,.14); }
.fleet-c img { width:100%; height:220px; object-fit:cover; transition:transform .5s; }
.fleet-c:hover img { transform:scale(1.06); }
.fleet-body { padding:18px 20px; background:#fff; }
.fleet-body h3 { font-size:.92rem; font-weight:800; color:var(--navy); margin-bottom:5px; }
.fleet-body p  { font-size:.84rem; color:var(--textg); margin:0; }

/* ── SERVICIOS — full rows ── */
.svc-rows { display:grid; gap:60px; }
.svc-row  { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.svc-row.rev { direction:rtl; }
.svc-row.rev > * { direction:ltr; }
.svc-img  { position:relative; border-radius:18px; overflow:hidden; }
.svc-img img { width:100%; height:380px; object-fit:cover; border-radius:18px; transition:transform .5s; }
.svc-row:hover .svc-img img { transform:scale(1.04); }
.svc-tag { position:absolute; top:16px; left:16px; background:var(--orange); color:#fff; padding:5px 14px; border-radius:100px; font-size:.72rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.svc-txt p { color:var(--textg); font-size:.96rem; line-height:1.7; margin-bottom:14px; }
.svc-feats { list-style:none; margin:16px 0 26px; display:flex; flex-direction:column; gap:10px; }
.svc-feats li { display:flex; align-items:center; gap:10px; font-size:.9rem; font-weight:500; }
.svc-feats li::before { content:''; width:8px; height:8px; border-radius:50%; background:var(--orange); flex-shrink:0; }

/* ── HOW IT WORKS ── */
.how-g { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; position:relative; }
.how-g::before { content:''; position:absolute; top:44px; left:calc(16.6% + 44px); right:calc(16.6% + 44px); height:2px; background:linear-gradient(90deg,var(--orange),#1a2a5e,var(--orange)); opacity:.25; z-index:0; }
.how-c { text-align:center; position:relative; z-index:1; background:#fff; border-radius:16px; box-shadow:0 4px 28px rgba(0,0,0,.08); padding:32px 22px; }
.how-ico { width:88px; height:88px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 22px; position:relative; transition:transform .3s; }
.how-c:hover .how-ico { transform:scale(1.1); }
.how-ico.nv { background:var(--navy); }
.how-ico.or { background:var(--orange); }
.step-n { position:absolute; top:-3px; right:-3px; width:26px; height:26px; background:#fff; border:2px solid var(--orange); border-radius:50%; font-size:.7rem; font-weight:900; color:var(--orange); display:flex; align-items:center; justify-content:center; }
.how-c h3 { font-size:.92rem; font-weight:800; color:var(--navy); text-transform:uppercase; letter-spacing:.04em; margin-bottom:10px; line-height:1.3; }
.how-c p  { color:var(--textg); font-size:.865rem; line-height:1.65; margin:0; }

/* ── CONTACT ── */
.cnt-g   { display:grid; grid-template-columns:1fr 1.6fr; gap:48px; align-items:start; }
.cnt-l   { background:var(--orange); border-radius:20px; padding:46px 38px; position:relative; overflow:hidden; }
.cnt-l::before { content:''; position:absolute; inset:0; background:url('https://transtumbez.cl/wp/wp-content/uploads/2026/05/Seccion-contacto-_-CTA-final.webp') center/cover; opacity:.1; }
.cnt-l h2 { color:#fff; font-size:1.9rem; font-weight:900; line-height:1.2; margin-bottom:12px; position:relative; }
.cnt-l > p { color:rgba(255,255,255,.82); font-size:.93rem; line-height:1.65; margin-bottom:26px; position:relative; }
.cnt-info  { display:flex; flex-direction:column; gap:13px; position:relative; }
.cnt-item  { display:flex; align-items:center; gap:12px; color:rgba(255,255,255,.88); font-size:.9rem; }
.cnt-ico   { width:36px; height:36px; background:rgba(255,255,255,.18); border-radius:8px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.cnt-item a { color:rgba(255,255,255,.88); }
.cnt-item a:hover { color:#fff; }

.cnt-box  { background:#fff; border-radius:20px; padding:46px 38px; box-shadow:0 6px 40px rgba(0,0,0,.07); }
.cnt-box h3 { font-size:1.35rem; font-weight:800; color:var(--navy); margin-bottom:4px; }
.cnt-box > p { color:var(--textg); font-size:.87rem; margin-bottom:26px; }
.f-row   { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.f-g     { margin-bottom:16px; }
.f-g label { display:block; font-size:.78rem; font-weight:700; color:var(--navy); letter-spacing:.05em; text-transform:uppercase; margin-bottom:7px; }
.f-g label span { color:var(--orange); }
.f-g input, .f-g select, .f-g textarea {
  width:100%; padding:12px 15px; border:1.5px solid var(--bdr); border-radius:10px;
  font-size:.9rem; color:var(--text); background:#fafbff;
  outline:none; font-family:inherit; transition:border-color .25s, box-shadow .25s;
}
.f-g input:focus, .f-g select:focus, .f-g textarea:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(245,130,10,.11); background:#fff; }
.f-g textarea { resize:vertical; min-height:110px; }
.btn-wa {
  width:100%; display:flex; align-items:center; justify-content:center; gap:11px;
  background:#25D366; color:#fff; border:none;
  padding:15px; border-radius:10px; font-size:1rem; font-weight:700;
  cursor:pointer; box-shadow:0 4px 20px rgba(37,211,102,.3);
  transition:background .25s, transform .2s; font-family:inherit;
}
.btn-wa:hover { background:#1ebe5a; transform:translateY(-2px); }

/* Zones */
.zones-g { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.zone-c  { background:var(--gbg); border-radius:14px; padding:24px 20px; }
.zone-dot { width:10px; height:10px; border-radius:50%; background:var(--orange); margin-bottom:12px; }
.zone-c h3 { font-size:.9rem; font-weight:800; color:var(--navy); margin-bottom:7px; }
.zone-c p  { font-size:.84rem; color:var(--textg); line-height:1.6; margin:0; }

/* ── FOOTER ── */
footer { background:#060e22; color:rgba(255,255,255,.65); padding:70px 40px 28px; }
.ft-g  { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; max-width:1180px; margin:0 auto 40px; }
.ft-logo img { height:60px; margin-bottom:14px; filter:brightness(0) invert(1); transform:scale(1.1); transform-origin:left center; }
.ft-brand p  { font-size:.84rem; line-height:1.65; margin-bottom:18px; }
.ft-soc { display:flex; gap:10px; }
.ft-soc a { width:36px; height:36px; background:rgba(255,255,255,.07); border-radius:8px; display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.55); transition:background .25s, color .25s, transform .2s; }
.ft-soc a:hover { background:var(--orange); color:#fff; transform:translateY(-3px); }
.ft-col h4 { color:#fff; font-size:.8rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; margin-bottom:16px; }
.ft-col ul { list-style:none; }
.ft-col li { margin-bottom:10px; }
.ft-col a  { color:rgba(255,255,255,.58); font-size:.84rem; transition:color .2s; }
.ft-col a:hover { color:var(--orange); }
.ft-ci  { display:flex; align-items:flex-start; gap:10px; margin-bottom:11px; font-size:.84rem; }
.ft-ci svg { flex-shrink:0; margin-top:2px; color:var(--orange); }
.ft-ci a { color:rgba(255,255,255,.58); }
.ft-ci a:hover { color:var(--orange); }
.ft-bot { border-top:1px solid rgba(255,255,255,.07); padding-top:22px; max-width:1180px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; font-size:.78rem; }

/* ── WA FLOAT ── */
.wa-float {
  position:fixed; bottom:28px; right:28px;
  width:58px; height:58px; background:#25D366; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 24px rgba(37,211,102,.45); z-index:9999;
  transition:transform .3s, box-shadow .3s; animation:pulseWa 3s infinite;
}
.wa-float:hover { transform:scale(1.12); animation:none; box-shadow:0 8px 40px rgba(37,211,102,.6); }

/* ── REVEAL ── */
.rev { opacity:0; transform:translateY(26px); transition:opacity .55s ease, transform .55s ease; }
.rev.fl { transform:translateX(-26px); }
.rev.fr { transform:translateX(26px); }
.rev.sc { transform:scale(.9); }
.rev.in { opacity:1; transform:none; }
.d1{transition-delay:.05s} .d2{transition-delay:.13s} .d3{transition-delay:.21s} .d4{transition-delay:.29s} .d5{transition-delay:.37s}

/* ── KEYFRAMES ── */
@keyframes bgZoom      { from{transform:scale(1.06)} to{transform:scale(1)} }
@keyframes pulseDot    { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.45;transform:scale(.65)} }
@keyframes bounceScroll{ 0%,100%{transform:translateX(-50%) translateY(0)} 50%{transform:translateX(-50%) translateY(7px)} }
@keyframes pulseWa     { 0%{box-shadow:0 4px 24px rgba(37,211,102,.45)} 50%{box-shadow:0 4px 40px rgba(37,211,102,.7),0 0 0 10px rgba(37,211,102,.1)} 100%{box-shadow:0 4px 24px rgba(37,211,102,.45)} }

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .srv-grid{grid-template-columns:repeat(2,1fr)}
  .stats-in{grid-template-columns:1fr;gap:40px}
  .about-g{grid-template-columns:1fr}
  .about-img img{height:340px}
  .svc-row{grid-template-columns:1fr}
  .svc-row.rev{direction:ltr}
  .fleet-g{grid-template-columns:repeat(2,1fr)}
  .cnt-g{grid-template-columns:1fr}
  .zones-g{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .navbar{padding:12px 18px}
  .nb-links{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:20px 18px;box-shadow:0 10px 30px rgba(0,0,0,.1);border-radius:0 0 16px 16px;gap:18px}
  .nb-links.open{display:flex}
  .hamburger{display:flex}
  .sec{padding:60px 18px}
  .stats-g{grid-template-columns:1fr 1fr}
  .why-g{grid-template-columns:1fr}
  .how-g{grid-template-columns:1fr}
  .how-g::before{display:none}
  .fleet-g{grid-template-columns:1fr}
  .f-row{grid-template-columns:1fr}
  .vals{grid-template-columns:1fr}
  .srv-grid{grid-template-columns:1fr}
  .zones-g{grid-template-columns:1fr}
  .hh-body{padding:0 18px}
  .ph-cnt{padding:60px 18px 90px}
  .ft-g{grid-template-columns:1fr 1fr}
  .ft-bot{flex-direction:column;text-align:center}
  .home-hero{clip-path:polygon(0 0,100% 0,100% 96%,0 100%)}
  .page-hero{clip-path:polygon(0 0,100% 0,100% 94%,0 100%)}
  .diag-both{clip-path:polygon(0 3%,100% 0,100% 97%,0 100%)}
  .diag-top{clip-path:polygon(0 3%,100% 0,100% 100%,0 100%)}
  .diag-bot{clip-path:polygon(0 0,100% 0,100% 97%,0 100%)}
  .cta-sec{clip-path:polygon(0 3%,100% 0,100% 97%,0 100%)}
}
@media(max-width:480px){
  .ft-g{grid-template-columns:1fr}
  .stats-g{grid-template-columns:1fr}
  .wrap{padding:0 18px}
}
