:root{
  --primary:#c7622f;
  --primary-dark:#a94820;
  --primary-soft:#f7eee9;
  --ink:#171717;
  --text:#606060;
  --line:#e8e1dc;
  --white:#ffffff;
  --section:#faf8f6;
  --shadow:0 24px 70px rgba(43,29,20,.12);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Montserrat",sans-serif;color:var(--ink);background:#fff;line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(15px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav-wrap{height:88px;display:flex;align-items:center;gap:32px}
.brand{width:245px;margin-right:auto}
.brand img{width:100%;height:64px;object-fit:contain;object-position:left center}
.main-nav{display:flex;align-items:center;gap:28px}
.main-nav a{font-size:.88rem;font-weight:600;position:relative}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--primary);transition:.25s}
.main-nav a:hover:after{right:0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;background:var(--primary);color:white;border:1px solid var(--primary);border-radius:999px;font-weight:700;cursor:pointer;transition:.25s}
.btn:hover{transform:translateY(-2px);background:var(--primary-dark);border-color:var(--primary-dark)}
.btn-small{min-height:44px;padding:0 20px;font-size:.84rem}
.btn-outline{background:transparent;color:var(--ink);border-color:#c8bdb6}
.btn-outline:hover{color:white}
.btn-white{background:white;color:var(--primary);border-color:white}
.menu-toggle{display:none;background:none;border:0;padding:8px}
.menu-toggle span{display:block;width:26px;height:2px;background:#222;margin:5px}
.hero{position:relative;overflow:hidden;padding:105px 0 90px;background:linear-gradient(125deg,#fff 0%,#fff 58%,#f8eee8 58%,#f5e5dc 100%)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:75px;position:relative;z-index:2}
.eyebrow{display:inline-block;color:var(--primary);font-size:.77rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-bottom:18px}
.hero h1{font-size:clamp(2.7rem,5vw,5.15rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 25px;max-width:760px}
.hero h1 strong{color:var(--primary)}
.hero-copy>p{font-size:1.08rem;color:var(--text);max-width:650px;margin-bottom:32px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-highlights{display:flex;gap:35px;margin-top:48px;padding-top:30px;border-top:1px solid var(--line)}
.hero-highlights div{display:flex;flex-direction:column}
.hero-highlights strong{font-size:.82rem}
.hero-highlights span{font-size:.78rem;color:var(--text)}
.route-card{background:#fff;border-radius:30px;padding:24px;box-shadow:var(--shadow);transform:rotate(1.5deg)}
.route-top,.route-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}
.route-top{font-size:.82rem;font-weight:700;padding-bottom:20px}
.status-dot{color:#347a51;background:#edf8f1;padding:8px 12px;border-radius:99px}
.map-shape{height:380px;border-radius:22px;background:linear-gradient(145deg,#f4f0ed,#ede4de);position:relative;overflow:hidden}
.map-shape:before,.map-shape:after{content:"";position:absolute;border:1px solid rgba(199,98,47,.18);border-radius:50%}
.map-shape:before{width:310px;height:310px;left:-80px;top:-90px}
.map-shape:after{width:250px;height:250px;right:-80px;bottom:-85px}
.road{position:absolute;height:10px;background:white;border-radius:99px;box-shadow:0 0 0 1px rgba(0,0,0,.02)}
.road-a{width:360px;transform:rotate(-28deg);left:-25px;top:180px}
.road-b{width:300px;transform:rotate(24deg);right:-40px;top:125px}
.road-c{width:320px;transform:rotate(-8deg);left:80px;bottom:80px}
.location{position:absolute;font-size:.7rem;font-weight:700;color:#555}
.location span{display:block;width:15px;height:15px;border:4px solid white;background:var(--primary);border-radius:50%;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.location-a{left:45px;bottom:58px}.location-b{left:210px;top:120px}.location-c{right:35px;top:48px}
.truck{position:absolute;left:46%;top:47%;display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--primary);color:white;font-size:1.5rem;box-shadow:0 15px 30px rgba(199,98,47,.35)}
.route-bottom{padding-top:20px}
.route-bottom div{display:flex;flex-direction:column}
.route-bottom small{font-size:.65rem;color:#777}.route-bottom strong{font-size:.8rem}
.hero-decoration{position:absolute;border-radius:50%;border:1px solid rgba(199,98,47,.12)}
.hero-decoration-one{width:400px;height:400px;left:-260px;top:-160px}
.hero-decoration-two{width:550px;height:550px;right:-350px;bottom:-300px}
.section{padding:105px 0}
.section-light{background:var(--section)}
.two-columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px}
.section-heading h2,.advantages h2,.quote-intro h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.12;letter-spacing:-.045em;margin:0}
.section-heading.centered{text-align:center;max-width:780px;margin:0 auto 55px}
.section-heading.centered p{color:var(--text)}
.about-copy>p{font-size:1.05rem;color:var(--text);margin-top:0}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.values article{padding:25px 20px;background:white;border:1px solid var(--line);border-radius:18px}
.values span,.service-number{color:var(--primary);font-weight:800;font-size:.8rem}
.values h3{margin:12px 0 7px;font-size:1rem}.values p{margin:0;color:var(--text);font-size:.82rem}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{min-height:260px;padding:32px;border:1px solid var(--line);border-radius:var(--radius);background:white;transition:.3s}
.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent}
.service-card h3{font-size:1.25rem;margin:40px 0 12px}.service-card p{color:var(--text);font-size:.9rem}
.service-card-accent{background:var(--primary);color:white;border-color:var(--primary)}
.service-card-accent .service-number,.service-card-accent p{color:#fff}.service-card-accent a{font-weight:700}
.advantages{background:linear-gradient(120deg,#1c1b1a,#34251e);color:white;position:relative;overflow:hidden}
.advantages:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;top:-200px}
.advantages-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;position:relative;z-index:2}
.eyebrow-light{color:#efb18f}
.advantages-copy p{color:#d1c8c3;max-width:600px;margin:25px 0 34px}
.advantages-list{display:grid;gap:18px}
.advantages-list div{display:flex;gap:16px;align-items:center;padding:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-radius:16px}
.advantages-list span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--primary);font-weight:800}
.advantages-list p{margin:0;color:#ddd}
.quote-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}
.quote-intro>p{color:var(--text);margin:25px 0 35px}
.contact-mini{display:flex;flex-direction:column;padding:22px 0;border-top:1px solid var(--line)}
.contact-mini span{font-size:.75rem;color:var(--text)}.contact-mini a{font-size:1.35rem;font-weight:800;color:var(--primary)}
.quote-form{background:white;padding:36px;border-radius:var(--radius);box-shadow:0 18px 55px rgba(0,0,0,.07)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.quote-form label{display:block;font-size:.78rem;font-weight:700;margin-bottom:17px}
.quote-form input,.quote-form textarea{width:100%;margin-top:8px;border:1px solid #ddd2ca;border-radius:12px;padding:14px 15px;outline:none;background:#fff}
.quote-form input:focus,.quote-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(199,98,47,.1)}
.quote-form .btn{width:100%;border:0}.form-note{font-size:.68rem;color:#777;text-align:center;margin:12px 0 0}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:50px}
.contact-card{padding:32px;border:1px solid var(--line);border-radius:var(--radius)}
.contact-card span{font-size:.72rem;color:var(--primary);font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.contact-card a,.contact-card p{display:block;margin:12px 0 0;font-size:1.05rem;font-weight:700}
.site-footer{background:#111;color:white;padding:70px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:80px}
.footer-grid img{width:250px;background:white;padding:8px 12px;border-radius:12px}
.footer-grid p{color:#aaa;font-size:.83rem}
.footer-grid h3{font-size:.85rem;color:#ddd}.footer-grid a{display:block;color:#aaa;font-size:.82rem;margin:9px 0}
.footer-bottom{border-top:1px solid #292929;margin-top:45px;padding-top:20px;color:#777;font-size:.75rem}
.whatsapp-float{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:white;font-weight:800;z-index:90;box-shadow:0 12px 28px rgba(0,0,0,.24)}
.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){
  .desktop-cta{display:none}.main-nav{position:absolute;top:88px;left:0;right:0;background:white;display:none;flex-direction:column;align-items:flex-start;padding:25px 30px;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.menu-toggle{display:block}
  .hero-grid,.two-columns,.advantages-grid,.quote-grid{grid-template-columns:1fr;gap:55px}.hero{padding-top:70px}.hero-visual{max-width:620px}.values{grid-template-columns:1fr}.services-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:640px){
  .container{width:min(100% - 28px,1160px)}.nav-wrap{height:76px}.brand{width:200px}.brand img{height:55px}.main-nav{top:76px}
  .hero{padding:55px 0 65px;background:linear-gradient(155deg,#fff 0%,#fff 64%,#f7e8df 64%)}.hero h1{font-size:2.7rem}.hero-highlights{display:grid;grid-template-columns:1fr 1fr;gap:18px}.route-card{padding:15px}.map-shape{height:300px}
  .section{padding:78px 0}.services-grid,.contact-grid,.form-row,.footer-grid{grid-template-columns:1fr}.quote-form{padding:24px}.section-heading.centered{text-align:left}.footer-grid>div:first-child{grid-column:auto}
}
