:root{--blue:#1479B4;--deep:#082E4D;--navy:#092A45;--red:#ED483E;--red-dark:#C9352D;--paper:#F7FAFC;--surface:#FFF;--text:#102C43;--muted:#52697B;--line:#DDE8EE;--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Inter,Arial,sans-serif;letter-spacing:-.023em;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}::selection{background:#f7c0bd;color:#092a45}
.nav{height:84px;position:sticky;top:0;z-index:40;background:rgba(255,255,255,.93);backdrop-filter:blur(20px);border-bottom:1px solid rgba(9,42,69,.09);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5.5vw,100px);gap:25px}.logo img{width:154px;height:67px;object-fit:contain}.nav-items{display:flex;align-items:center;gap:clamp(13px,2vw,32px)}.nav-items a{font-size:13px;color:#314D63;font-weight:600;transition:color .2s}.nav-items a:hover{color:var(--red)}.header-call{border-radius:99px;background:var(--blue);color:#fff!important;padding:13px 19px;box-shadow:0 7px 18px #1479b421}.header-call:hover{background:var(--deep)}.mobile-menu{display:none;border:0;background:transparent;font-size:26px;color:var(--navy);padding:8px}
.hero{min-height:680px;position:relative;overflow:hidden;color:white;background:var(--navy);display:flex;align-items:center}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,28,50,.98) 0%,rgba(5,39,63,.90) 34%,rgba(5,39,63,.26) 75%),linear-gradient(0deg,rgba(3,24,40,.50),transparent 30%),url('../img/transporte-carretera.jpg') center 55%/cover}.hero:before{content:'';position:absolute;top:-170px;right:-120px;width:520px;height:520px;border-radius:100%;border:1px solid #ffffff25;z-index:1}.hero-content{position:relative;z-index:2;width:100%;max-width:1420px;margin:auto;padding:95px clamp(24px,8vw,130px)}.eyebrow{display:flex;gap:12px;align-items:center;font-size:12px;font-weight:750;letter-spacing:.17em;text-transform:uppercase;color:var(--blue)}.eyebrow:before{content:'';width:28px;height:3px;background:var(--red);border-radius:4px}.hero .eyebrow{color:#b9e8ff}.hero h1{font-size:clamp(53px,7.8vw,106px);letter-spacing:-.075em;line-height:.99;font-weight:760;margin:30px 0 27px;max-width:830px}.hero h1 em{font-style:normal;color:#FF746A}.hero p{font-size:clamp(17px,2vw,21px);line-height:1.55;color:#D9EAF4;max-width:580px;margin:0 0 33px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:99px;padding:16px 24px;font-weight:700;font-size:14px;transition:transform .25s,background .25s,border-color .25s;border:1px solid transparent}.btn:hover{transform:translateY(-3px)}.btn-red{background:var(--red);color:white}.btn-red:hover{background:var(--red-dark)}.btn-outline{border-color:#ffffff80;color:white;background:#ffffff0a}.btn-outline:hover{background:#ffffff24}.btn-blue{background:var(--blue);color:#fff}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-meta{position:absolute;bottom:24px;right:clamp(24px,5vw,80px);z-index:2;letter-spacing:.18em;font-size:10px;color:#ffffffb5;text-transform:uppercase}
.section{padding:clamp(78px,9vw,128px) clamp(24px,8vw,130px)}.container{max-width:1370px;margin:auto}.section-title{font-size:clamp(38px,5.3vw,69px);line-height:1.04;font-weight:735;letter-spacing:-.065em;margin:20px 0 24px}.body-copy{font-size:clamp(15px,1.35vw,18px);line-height:1.78;color:var(--muted);margin:0}.intro-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:8%;align-items:center}.intro-visual{border-radius:26px;overflow:hidden;position:relative;background:#DFE9F1;aspect-ratio:1.3}.intro-visual img{width:100%;height:100%;object-fit:cover}.intro-visual .image-tag{position:absolute;bottom:16px;left:16px;background:#fff;border-radius:12px;padding:12px 16px;font-size:11px;font-weight:750;color:var(--navy);box-shadow:0 10px 35px #0017}.facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:37px;padding-top:25px;border-top:1px solid var(--line)}.fact strong{font-size:clamp(34px,4vw,56px);letter-spacing:-.065em;display:block;color:var(--blue)}.fact span{display:block;color:var(--muted);font-size:13px;line-height:1.5;margin-top:2px}
.services{background:#fff}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:44px}.section-top .body-copy{max-width:405px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.service-card{padding:33px 30px;min-height:254px;border:1px solid var(--line);border-radius:23px;background:linear-gradient(145deg,#fff 25%,#f5faff);transition:.3s}.service-card:hover{transform:translateY(-5px);border-color:#81BFDF;box-shadow:0 18px 40px #1e66821a}.service-icon{height:50px;width:50px;display:flex;align-items:center;justify-content:center;border-radius:15px;background:#EAF5FB;color:var(--blue);font-size:22px}.service-num{float:right;font-size:12px;letter-spacing:.18em;color:#A2B3BD;font-weight:700}.service-card h3{font-size:22px;line-height:1.15;letter-spacing:-.04em;margin:26px 0 10px}.service-card p{font-size:14px;line-height:1.68;color:var(--muted);margin:0}.process{margin-top:37px;padding:29px 35px;border-radius:18px;background:#EDF5F9;display:flex;align-items:center;gap:32px;justify-content:space-between}.process span{font-size:13px;color:#415E72;line-height:1.55}.process strong{color:var(--navy);display:block;font-size:15px;margin-bottom:4px}.process .arrow{color:var(--red);font-size:28px}
.history{background:var(--navy);color:white}.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.history .section-title{color:white}.history .body-copy{color:#B8D3E4}.history-image{border-radius:25px;overflow:hidden;aspect-ratio:1.07;position:relative;background:#16415d}.history-image img{height:100%;width:100%;object-fit:cover}.history-image:after{content:'';position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#0621359b);height:40%}.history-year{font-size:clamp(70px,10vw,134px);font-weight:770;letter-spacing:-.085em;color:#ffffff12;line-height:1;margin:10px 0 -12px}.history .eyebrow{color:#b9e8ff}
.values{background:#f0f6f9}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.value{background:white;padding:37px 40px;border-radius:24px;border-top:5px solid var(--blue)}.value:nth-child(2){border-top-color:var(--red)}.value h3{font-size:30px;letter-spacing:-.05em;margin:0 0 18px}.value p{color:var(--muted);font-size:16px;line-height:1.75;margin:0}.pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.pill{background:#fff;border:1px solid #D7E7EF;color:var(--blue);padding:12px 17px;border-radius:99px;font-weight:700;font-size:12px}
.clients{background:white}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.client{padding:27px 18px;border:1px solid var(--line);border-radius:18px;background:var(--paper);font-size:17px;font-weight:750;letter-spacing:-.035em;text-align:center;display:flex;justify-content:center;align-items:center;min-height:102px}.client::before{content:'';display:block;width:5px;height:5px;border-radius:50%;background:var(--red);margin-right:11px;flex-shrink:0}.disclaimer{color:#778B99;font-size:12px;line-height:1.6;margin:23px 0 0}.insurance-strip{margin-top:56px;display:grid;grid-template-columns:1fr .48fr;gap:35px;align-items:center;border-radius:22px;background:#EFF7FB;padding:32px 48px}.insurance-strip h3{font-size:26px;letter-spacing:-.04em;margin:0 0 12px}.insurance-strip p{font-size:15px;line-height:1.7;color:var(--muted);margin:0}.insurance-strip img{height:240px;width:100%;object-fit:contain;mix-blend-mode:multiply}
.gallery-section{background:var(--navy);color:white}.gallery-section .section-title{color:white}.gallery-section .body-copy{color:#bed4e2}.gallery-filter{display:flex;flex-wrap:wrap;gap:10px;margin:32px 0}.filter-button{border:1px solid #ffffff4a;border-radius:99px;padding:12px 19px;background:transparent;color:#daeaf6;font-size:13px;font-weight:700;transition:.2s}.filter-button:hover,.filter-button.active{background:#fff;color:var(--deep);border-color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:205px;gap:12px}.gallery-item{border:0;padding:0;position:relative;overflow:hidden;border-radius:16px;background:#315268;color:#fff;text-align:left}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.gallery-item:hover img{transform:scale(1.075)}.gallery-item:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#000b)}.gallery-item .gallery-label{position:absolute;left:16px;bottom:16px;z-index:1;font-weight:720;font-size:13px;text-shadow:0 1px 9px #0009}.gallery-item:first-child{grid-column:span 2;grid-row:span 2}.gallery-item.hidden{display:none}.gallery-item:focus-visible{outline:3px solid var(--red);outline-offset:3px}.gallery-note{font-size:12px;color:#a2bfd0;margin-top:18px}
.location{background:#F2F7FA}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.location-card{border-radius:24px;overflow:hidden;background:white;border:1px solid var(--line)}.location-card img{width:100%;max-height:350px;object-fit:contain}.location-card p{padding:0 22px 18px;font-size:12px;color:#677e8a}.contact-footer{background:#07283F;color:#fff;padding:68px clamp(24px,8vw,130px) 25px;border-top:5px solid var(--red)}.footer-grid{max-width:1370px;margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px}.footer-logo{padding:11px;background:white;border-radius:15px;width:180px}.footer-logo img{width:100%}.footer-heading{font-size:12px;font-weight:750;letter-spacing:.17em;text-transform:uppercase;color:#9BCDE7;margin:0 0 15px}.contact-footer p,.contact-footer a{font-size:14px;line-height:1.75;color:#DAE8F1}.contact-footer a:hover{color:#fff;text-decoration:underline}.copyright{max-width:1370px;margin:55px auto 0;padding-top:19px;border-top:1px solid #ffffff24;color:#93B3C7;font-size:12px;display:flex;justify-content:space-between;gap:15px}.top-btn{position:fixed;bottom:24px;right:24px;z-index:20;width:47px;height:47px;border-radius:50%;border:0;background:var(--red);color:white;font-size:22px;box-shadow:0 8px 30px #0003;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s}.top-btn.show{opacity:1;pointer-events:auto;transform:none}.lightbox{position:fixed;inset:0;background:#041A2DEB;z-index:100;display:none;align-items:center;justify-content:center;padding:55px 25px}.lightbox.open{display:flex}.lightbox figure{margin:0;max-width:1100px;width:100%;text-align:center}.lightbox img{max-height:75vh;width:100%;object-fit:contain;border-radius:10px}.lightbox figcaption{color:#fff;margin-top:14px;font-size:15px}.lightbox-close{position:absolute;right:24px;top:19px;color:#fff;border:1px solid #ffffff55;background:#ffffff18;border-radius:50%;font-size:28px;width:47px;height:47px}.reveal{opacity:1;transform:none;transition:opacity .7s,transform .7s}.reveal.is-pending{opacity:0;transform:translateY(26px)}.reveal.visible{opacity:1;transform:none}
@media(max-width:960px){.nav-items{gap:14px}.nav-items a{font-size:12px}.section{padding:80px 5vw}.intro-grid,.history-grid,.location-grid{gap:5%}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{gap:20px}.contact-footer{padding-left:5vw;padding-right:5vw}}
@media(max-width:700px){.nav{height:75px;padding:0 20px}.logo img{width:131px;height:59px}.mobile-menu{display:block}.nav-items{display:none;position:absolute;left:0;right:0;top:75px;background:white;flex-direction:column;align-items:stretch;gap:0;padding:12px 25px 20px;border-bottom:1px solid var(--line);box-shadow:0 20px 35px #092a4518}.nav-items.open{display:flex}.nav-items a{padding:14px;font-size:15px}.hero{min-height:700px}.hero-bg{background:linear-gradient(90deg,#07283FF0 0%,#07283F8F 80%),url('../img/transporte-carretera.jpg') 66% center/cover}.hero-content{padding:70px 24px 105px}.hero h1{font-size:clamp(48px,12vw,68px)}.hero-meta{display:none}.section{padding:75px 23px}.section-top,.intro-grid,.history-grid,.location-grid{display:grid;grid-template-columns:1fr;gap:28px}.section-top{margin-bottom:32px}.intro-visual{order:-1;max-height:420px}.services-grid,.value-grid,.client-grid,.footer-grid{grid-template-columns:1fr}.service-card{min-height:205px}.process{display:grid;gap:13px;text-align:center}.process .arrow{transform:rotate(90deg)}.history-image{max-height:390px}.insurance-strip{grid-template-columns:1fr;padding:24px}.insurance-strip img{height:250px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:155px;gap:8px}.gallery-item:first-child{grid-column:span 2;grid-row:span 2}.gallery-item .gallery-label{font-size:11px;left:10px;bottom:10px}.contact-footer{padding:58px 23px 25px}.footer-grid{gap:26px}.copyright{display:block;line-height:1.8;margin-top:33px}.facts{gap:10px}.fact strong{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
/* Keyboard navigation and narrow screens. */
.skip-link{position:fixed;top:10px;left:16px;z-index:200;background:white;color:var(--deep);padding:12px 18px;border-radius:8px;transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.hero-content,.intro-grid>*,.history-grid>*,.location-grid>*,.footer-grid>*{min-width:0}
.contact-footer a{overflow-wrap:anywhere}
.lightbox[hidden]{display:none}
@media(max-width:380px){.hero .eyebrow{font-size:10px;letter-spacing:.1em}.hero h1{font-size:clamp(38px,11.8vw,45px)}.hero-actions .btn{padding:15px 19px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.reveal.is-pending{opacity:1;transform:none}}

