:root{
  --black:#080809; --black2:#111113; --red:#b5121b; --red2:#e0202a;
  --cream:#f5f3ee; --white:#fff; --grey:#77746f; --line:#e7e3dc;
  --max:1240px; --shadow:0 30px 90px rgba(0,0,0,.12);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"DM Sans",system-ui,sans-serif;color:var(--black);background:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}
button{font:inherit}
img{display:block;max-width:100%}
.container{width:min(var(--max),88vw);margin:auto}

/* NAV */
.nav{height:78px;position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;padding:0 5.8vw}
.brand{display:flex;align-items:center;gap:11px}
.mark{height:39px;width:39px;border:1.5px solid var(--black);border-radius:50%;display:grid;place-items:center;font:800 17px Manrope}
.brand-name{font:800 14px Manrope;letter-spacing:.055em}.brand-name small{display:block;font:700 7px "DM Sans";letter-spacing:.31em;color:#8b8985;margin-top:1px}
.navlinks{display:flex;gap:27px;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.navlinks a{padding:30px 0;position:relative;color:#454545}
.navlinks a:hover,.navlinks a.active{color:var(--red)}
.navlinks a.active:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--red)}
.nav-ctas{display:flex;gap:8px}.nav-ctas a{padding:11px 14px;border-radius:8px;font-size:10px;font-weight:800}.nav-call{border:1px solid #ddd}.nav-wa{background:var(--black);color:#fff}
.menu{display:none;background:none;border:0;font-size:24px}

/* HERO */
.hero{background:var(--black);color:#fff;min-height:calc(100vh - 78px);display:grid;grid-template-columns:.82fr 1.18fr;overflow:hidden}
.hero-copy{padding:100px 30px 100px 7vw;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:3}
.eyebrow{font-size:10px;font-weight:800;letter-spacing:.23em;text-transform:uppercase;color:#d3a5a7}
.hero h1{font:800 clamp(57px,7vw,100px)/.88 Manrope;letter-spacing:-.068em;margin:20px 0 26px}
.hero h1 .red{color:var(--red2)}
.hero-lead{max-width:600px;color:#c7c7c7;font-size:17px;line-height:1.75}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:9px;font-size:11px;font-weight:800;transition:.25s}
.btn:hover{transform:translateY(-3px)}
.btn-red{background:var(--red2);color:#fff;box-shadow:0 15px 40px rgba(224,32,42,.25)}
.btn-white{background:#fff;color:#111}.btn-outline{border:1px solid #ffffff42;color:#fff}
.micro{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px;color:#858585;font-size:9px;text-transform:uppercase;letter-spacing:.14em}
.micro span:before{content:"•";color:var(--red2);margin-right:7px}
.hero-photo{position:relative;min-height:680px;overflow:hidden}
.hero-photo:before{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,var(--black) 0%,rgba(8,8,9,.8) 9%,transparent 42%,rgba(0,0,0,.1) 100%)}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 30%,transparent 70%,rgba(0,0,0,.15))}
.photo-note{position:absolute;z-index:5;left:8%;bottom:9%;background:rgba(255,255,255,.95);color:#111;border-radius:13px;padding:17px 19px;box-shadow:0 25px 60px #0009}
.photo-note b{display:block;font:800 29px Manrope;letter-spacing:-.04em}.photo-note span{font-size:9px;color:#777;text-transform:uppercase;letter-spacing:.13em}
.hero-badge{position:absolute;z-index:5;right:7%;top:9%;border:1px solid #ffffff35;background:#090909d9;backdrop-filter:blur(12px);padding:17px 18px;border-radius:13px}
.hero-badge b{font:800 12px Manrope;display:block}.hero-badge span{font-size:9px;color:#999}

/* TICKER */
.ticker{background:var(--red);color:#fff;overflow:hidden;white-space:nowrap}
.ticker-track{display:inline-flex;gap:34px;padding:13px 0;font-size:9px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;animation:scroll 24s linear infinite}
.ticker-track span:after{content:"✦";margin-left:34px;color:#ff9da1}
@keyframes scroll{to{transform:translateX(-35%)}}

/* TRUST */
.trust{padding:27px 0;border-bottom:1px solid var(--line);background:#fff}
.trust-row{display:flex;align-items:center;justify-content:space-between;gap:25px}
.trust-label{font-size:9px;font-weight:800;color:#aaa;letter-spacing:.2em;text-transform:uppercase}
.trust-items{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.trust-pill{border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:9px;font-weight:700;color:#444}

/* IMPACT */
.impact{background:var(--red);color:#fff;padding:34px 0}
.impact-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.impact-item{padding:8px 28px;border-right:1px solid #ffffff35}.impact-item:last-child{border:0}
.impact-item b{display:block;font:800 clamp(28px,3vw,42px) Manrope;letter-spacing:-.045em}.impact-item span{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#ffdfe0}

/* GENERAL */
.section{padding:120px 0}
.kicker{font-size:10px;color:var(--red);font-weight:800;letter-spacing:.21em;text-transform:uppercase;margin-bottom:19px}
h2{font:800 clamp(43px,5.2vw,70px)/1.01 Manrope;letter-spacing:-.06em}
h2 em{font-style:normal;color:var(--red)}
.bodycopy{color:#666;line-height:1.85;font-size:15px}.lead{font-size:20px;color:#222;font-weight:600;line-height:1.55}

/* STORY */
.story-grid{display:grid;grid-template-columns:1fr .95fr;gap:9vw;align-items:end}
.story-copy p{margin-top:20px}.story-copy .lead{margin-top:0;margin-bottom:18px}

/* SERVICE */
.services{background:var(--cream)}
.section-head{display:grid;grid-template-columns:1fr .72fr;gap:8vw;align-items:end;margin-bottom:52px}
.section-head .bodycopy{font-size:14px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.service{background:#fff;border:1px solid var(--line);border-radius:18px;padding:29px;min-height:255px;position:relative;overflow:hidden;transition:.3s}
.service:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:var(--red);right:-65px;bottom:-65px;opacity:.05;transition:.3s}
.service:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:#b5121b45}
.service:hover:after{transform:scale(2.3);opacity:.09}
.service.dark{background:var(--black);color:#fff;border-color:var(--black)}
.service.redcard{background:var(--red);color:#fff;border-color:var(--red)}
.service-num{font:800 10px Manrope;color:var(--red)}.dark .service-num,.redcard .service-num{color:#ffbfc2}
.service h3{font:800 23px Manrope;letter-spacing:-.035em;margin:43px 0 10px}.service p{font-size:11px;line-height:1.72;color:#707070}.dark p,.redcard p{color:#fff;opacity:.8}
.service-link{position:absolute;bottom:25px;color:var(--red);font-size:10px;font-weight:800}.dark .service-link,.redcard .service-link{color:#fff}

/* TRUST / STANDARDS */
.standards{background:var(--black);color:#fff;padding:105px 0}
.standards-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw;align-items:center}
.standards p{color:#999;line-height:1.8;margin-top:20px}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:28px}
.feature{border:1px solid #ffffff17;border-radius:14px;padding:20px;background:#ffffff03}
.feature b{display:block;font:800 14px Manrope}.feature b i{font-style:normal;color:#ed3037;margin-right:7px}.feature span{display:block;color:#888;font-size:9px;margin-top:5px;line-height:1.6}

/* PRICING */
.price-section{background:#fff}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:52px}
.price-card{border:1px solid var(--line);border-radius:18px;padding:32px;position:relative}
.price-card.featured{background:var(--black);color:#fff;border-color:var(--black);transform:translateY(-8px);box-shadow:var(--shadow)}
.price-label{font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--red)}
.price-card h3{font:800 24px Manrope;margin:18px 0 4px}
.amount{font:800 47px Manrope;letter-spacing:-.06em}.amount small{font:600 11px "DM Sans";color:#999;letter-spacing:0}
.price-card ul{list-style:none;margin:22px 0 28px}.price-card li{font-size:11px;margin:9px 0;color:#666}.featured li{color:#aaa}.price-card li:before{content:"✓";font-weight:900;color:var(--red);margin-right:9px}
.discount{position:absolute;right:18px;top:18px;background:var(--red);color:#fff;padding:5px 8px;border-radius:5px;font-size:8px;font-weight:800}

/* PROMISE */
.promise{padding:0;background:var(--cream)}
.promise-grid{display:grid;grid-template-columns:1fr 1fr}
.promise-photo{min-height:560px;overflow:hidden}.promise-photo img{height:100%;width:100%;object-fit:cover}
.promise-copy{padding:90px 9vw 90px 7vw}.promise-copy p{margin-top:20px}
.promise-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:30px}
.point{padding:16px;border:1px solid #ddd7ce;border-radius:12px;background:#ffffff90}.point b{font:800 12px Manrope}.point span{display:block;font-size:9px;color:#777;margin-top:4px}

/* HOW */
.how{background:#fff}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:50px}
.how-card{border:1px solid var(--line);border-radius:15px;padding:27px;background:#fff}.how-card b{font:800 11px Manrope;color:var(--red)}.how-card h3{font:800 20px Manrope;margin:12px 0 8px}.how-card p{font-size:10px;color:#777;line-height:1.7}

/* AREA */
.area{display:grid;grid-template-columns:1fr 1fr;min-height:520px}
.area-copy{background:var(--black);color:#fff;padding:100px 9vw}
.area-copy p{color:#999;line-height:1.8;margin-top:20px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:27px}.chips span{padding:8px 11px;border:1px solid #ffffff22;border-radius:999px;color:#ccc;font-size:9px}
.area-image{overflow:hidden}.area-image img{width:100%;height:100%;object-fit:cover}


/* FLEET / PHOTO GALLERY */
.fleet{background:#fff}
.fleet-mosaic{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-auto-rows:260px;gap:12px}
.fleet-photo{margin:0;position:relative;overflow:hidden;border-radius:18px;background:#111}
.fleet-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1);filter:saturate(.92)}
.fleet-photo:hover img{transform:scale(1.055)}
.fleet-large{grid-row:span 2}
.fleet-wide{grid-column:span 2}
.fleet-photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.fleet-photo figcaption{position:absolute;z-index:2;left:22px;bottom:20px;color:#fff}
.fleet-photo figcaption b{display:block;font:800 18px Manrope;letter-spacing:-.025em}
.fleet-photo figcaption span{font-size:9px;color:#ddd;letter-spacing:.05em}
@media(max-width:1050px){
 .fleet-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:250px}
 .fleet-large{grid-row:span 2}
 .fleet-wide{grid-column:span 2}
}
@media(max-width:620px){
 .fleet-mosaic{grid-template-columns:1fr;grid-auto-rows:270px}
 .fleet-large,.fleet-wide{grid-column:auto;grid-row:auto}
}

/* GUARANTEE */
.guarantee{background:var(--red);color:#fff;padding:78px 0}
.guarantee-row{display:flex;justify-content:space-between;align-items:center;gap:50px}
.guarantee h2{font-size:clamp(40px,5vw,66px)}.guarantee p{color:#ffd7d9;max-width:610px;line-height:1.75;margin-top:15px}.guarantee strong{color:#fff}

/* BOOK */
.book{background:var(--cream);padding:105px 0}
.book-grid{display:grid;grid-template-columns:1fr .85fr;gap:9vw;align-items:center}
.book-copy p{color:#666;line-height:1.8;margin-top:20px}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 25px 70px #0000000a}
.contact-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);gap:15px}.contact-row:last-child{border:0}
.contact-row span{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#999;font-weight:800}.contact-row a{font:800 14px Manrope;color:var(--black)}
.contact-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.contact-buttons a{padding:14px;border-radius:9px;text-align:center;font-size:10px;font-weight:800}.wa{background:#25d366;color:#07150b}.call{background:var(--black);color:#fff}

/* FOOTER */
footer{background:#101011;color:#fff;padding:60px 0 24px}
.footer-top{display:flex;justify-content:space-between;gap:50px;padding-bottom:42px;border-bottom:1px solid #2b2b2b}.footer-copy{max-width:480px;color:#888;font-size:11px;line-height:1.8}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:20px;color:#666;font-size:9px}.footer-bottom a{color:#aaa}

/* ANIMATION */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.show{opacity:1;transform:none}

/* MOBILE */
@media(max-width:1050px){
 .navlinks{display:none}.nav-ctas{display:none}.menu{display:block}
 .hero{grid-template-columns:1fr}.hero-copy{padding:85px 7vw}.hero-photo{min-height:560px}.hero-photo:before{background:linear-gradient(0deg,var(--black) 0%,transparent 45%)}
 .impact-grid{grid-template-columns:repeat(2,1fr)}.impact-item{margin:7px 0}
 .story-grid,.standards-grid,.book-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}
 .section-head{grid-template-columns:1fr}.price-grid{grid-template-columns:1fr}.price-card.featured{transform:none}
 .how-grid{grid-template-columns:repeat(2,1fr)}.promise-grid,.area{grid-template-columns:1fr}
 .promise-photo,.area-image{min-height:390px}.promise-copy{padding:75px 7vw}.guarantee-row{flex-direction:column;align-items:flex-start}
}
@media(max-width:620px){
 .container{width:88vw}.nav{padding:0 6vw}.hero-copy{padding:70px 6vw}.hero h1{font-size:53px}.hero-lead{font-size:15px}
 .hero-photo{min-height:410px}.photo-note{left:6%;bottom:7%}.hero-badge{right:6%;top:7%}
 .trust-row{flex-direction:column;align-items:flex-start}.trust-items{justify-content:flex-start}
 .impact-grid{grid-template-columns:1fr 1fr}.impact-item{padding:8px 14px}.impact-item b{font-size:25px}
 .section{padding:80px 0}.service-grid,.feature-grid,.how-grid,.promise-points{grid-template-columns:1fr 1fr}
 .service{min-height:245px}.standards{padding:75px 0}.promise-photo{min-height:320px}.area-image{min-height:320px}
 .book{padding:75px 0}.footer-top{flex-direction:column}.contact-buttons{grid-template-columns:1fr}
}
