:root{
  --ink:#0a0c0f;
  --panel:#12171a;
  --gold:#d6a900;
  --muted:#69717d;
  --line:#e2e5e9;
  --bg:#f5f6f7;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#161a20;background:var(--bg)}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}

.top{position:sticky;top:0;z-index:20;background:rgba(8,10,13,.96);backdrop-filter:blur(14px);color:#fff;border-bottom:1px solid rgba(255,255,255,.07)}
.nav{max-width:1440px;height:76px;margin:auto;padding:0 32px;display:flex;align-items:center;gap:36px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:94px;height:52px;object-fit:contain;display:block}
.navlinks{display:flex;align-items:center;gap:34px;margin-left:auto}
.nav-main-links{display:flex;align-items:center;gap:30px}
.nav-main-links a{position:relative;padding:28px 0 25px;font-size:14px;font-weight:600;color:#e9ebee;white-space:nowrap}
.nav-main-links a::after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:1px;background:var(--gold);transition:right .22s ease}
.nav-main-links a:hover::after,.nav-main-links a:focus-visible::after{right:0}
.internal{border:1px solid rgba(255,255,255,.26);border-radius:999px;padding:10px 16px;font-size:13px;font-weight:650;color:#fff;white-space:nowrap;transition:border-color .2s ease,background .2s ease}
.internal:hover{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.05)}
.hamb{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:27px;cursor:pointer}

.hero{background:radial-gradient(circle at 79% 22%,#25302c 0,#101518 37%,#07090c 75%);color:#fff;padding:72px 32px 76px}
.hero-in{max-width:1440px;margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);align-items:center;gap:72px}
.hero-copy{max-width:760px}
.eyebrow{color:var(--gold);font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.hero h1{font-size:clamp(46px,5.3vw,78px);line-height:.98;letter-spacing:-.045em;margin:18px 0 24px;max-width:760px}
.hero p{margin:0;max-width:650px;color:#c9ced6;font-size:19px;line-height:1.65}
.hero-card{background:rgba(255,255,255,.98);color:#111318;border-radius:22px;padding:28px;box-shadow:0 20px 55px rgba(0,0,0,.22)}
.hero-card h2{font-size:19px;margin:0 0 20px;letter-spacing:-.01em}
.quick{display:grid;gap:10px}
.quick a{min-height:58px;padding:0 18px;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:700;background:#fff;transition:border-color .18s ease,transform .18s ease,background .18s ease}
.quick a:hover{border-color:#aeb4bc;background:#fafafa;transform:translateX(2px)}
.quick a span:last-child{font-size:20px;font-weight:400;color:#7a828d}

.section{max-width:1440px;margin:auto;padding:62px 32px 78px}
.vehicle-section{scroll-margin-top:76px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.section h2{font-size:clamp(31px,3vw,42px);line-height:1.08;letter-spacing:-.035em;margin:8px 0 0}
.muted{color:var(--muted)}
.section-head .muted{margin:12px 0 0}

.filters{display:grid;grid-template-columns:minmax(230px,1.35fr) repeat(2,minmax(155px,.7fr)) minmax(250px,1fr) minmax(170px,.75fr);gap:10px;margin:24px 0 28px}
.filters input,.filters select{width:100%;min-width:0;height:46px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 13px;color:#232830;outline:none}
.filters input:focus,.filters select:focus{border-color:#9da4ad;box-shadow:0 0 0 3px rgba(16,24,40,.05)}
.year-range{height:46px;display:grid;grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 10px}
.year-range input{height:34px;border:0;border-radius:0;padding:0 4px;background:transparent}
.year-range input:focus{box-shadow:none}
.range-label{font-size:13px;font-weight:700;color:#4e5661}
.range-separator{color:#9aa1aa}

.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.vehicle{min-width:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .2s ease,border-color .2s ease}
.vehicle:hover{transform:translateY(-2px);border-color:#cbd0d6}
.vehicle-img{height:158px;background:#e9edf1;display:grid;place-items:center;overflow:hidden}
.vehicle-img img{width:100%;height:100%;object-fit:cover;transform-origin:center;will-change:transform}
.vehicle-body{padding:15px}
.vehicle h3{margin:0 0 5px;font-size:17px;line-height:1.25;letter-spacing:-.015em}
.vehicle-body>.muted{font-size:13px;min-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.specs{display:grid;grid-template-columns:1fr;gap:5px;color:#5c6470;font-size:12px;margin:13px 0}
.price{font-size:21px;font-weight:800;letter-spacing:-.025em}
.price-row,.modal-price-row{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;flex-wrap:wrap}
.monthly{display:flex;flex-direction:column;align-items:flex-end;font-size:10px;color:#69717d;line-height:1.15}
.monthly strong{font-size:12px;color:#1b2027;white-space:nowrap}
.monthly small{font-size:9px;color:#818995}
.vehicle-actions{display:flex;gap:7px;margin-top:14px}
.btn{border:0;border-radius:9px;padding:11px 13px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:13px}
.btn-primary{background:var(--gold);color:#111}
.btn-dark{background:#171b21;color:#fff}
.vehicle-actions .btn{flex:1}

.company-note{background:#fff;border-top:1px solid var(--line)}
.company-note-in{max-width:1440px;margin:auto;padding:36px 32px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.company-note-in span{font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#3d444d}
.company-note-in p{margin:0;color:#69717d;text-align:right}
.footer{background:#080a0d;color:#9da4ad;padding:34px 32px}
.footer-in{max-width:1440px;margin:auto;display:flex;justify-content:space-between;gap:20px;font-size:14px}
.footer strong{color:#fff}

.modal{position:fixed;inset:0;background:rgba(0,0,0,.66);z-index:50;display:none;align-items:center;justify-content:center;padding:20px}
.modal.open{display:flex}
.modal-box{background:#fff;border-radius:18px;max-width:900px;width:100%;max-height:90vh;overflow:auto;padding:25px}
.close{float:right;border:0;background:#eee;border-radius:9px;padding:8px 12px;cursor:pointer}
.gallery-main{height:390px;background:#eee;border-radius:14px;overflow:hidden}
.gallery-main img{width:100%;height:100%;object-fit:cover;transform-origin:center;will-change:transform}
.thumbs{display:flex;gap:8px;margin-top:10px;overflow:auto}
.vehicle-thumb{width:95px;height:65px;overflow:hidden;border-radius:8px;cursor:pointer;flex:0 0 auto;background:#eee}.vehicle-thumb img{width:100%;height:100%;object-fit:cover;transform-origin:center;will-change:transform}
.vehicle-description{margin-top:22px;padding-top:18px;border-top:1px solid #e2e8f0}
.vehicle-description h3{margin:0 0 8px;font-size:1.05rem}
.vehicle-description p{margin:0;color:#334155;line-height:1.65}
.credit-note{font-size:.76rem;color:#64748b;margin:14px 0 0}
.empty{grid-column:1/-1;text-align:center;background:#fff;padding:40px;border-radius:14px;border:1px solid var(--line)}

.login-page{min-height:100vh;background:#080a0e;display:grid;place-items:center;padding:20px}
.login-box{width:min(440px,100%);background:#fff;border-radius:22px;padding:30px}
.login-box img{width:130px;display:block;margin:auto}
.login-box h1{text-align:center}
.login-box .field{margin:14px 0}
.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:800}.field input,.field select,.field textarea{border:1px solid #d1d5db;border-radius:10px;padding:13px;background:#fff}.login-error{color:#b91c1c;min-height:24px}

@media(max-width:1250px){
  .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .filters{grid-template-columns:repeat(3,minmax(0,1fr))}
  .year-range{grid-column:span 2}
}
@media(max-width:980px){
  .nav{padding:0 22px}
  .navlinks{display:none;position:absolute;top:76px;left:0;right:0;background:#090b0f;padding:22px;flex-direction:column;align-items:stretch;gap:20px;border-top:1px solid rgba(255,255,255,.08)}
  .navlinks.open{display:flex}
  .nav-main-links{flex-direction:column;align-items:stretch;gap:0}
  .nav-main-links a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.07)}
  .nav-main-links a::after{display:none}
  .internal{text-align:center}
  .hamb{display:block}
  .hero{padding:58px 22px 64px}
  .hero-in{grid-template-columns:1fr;gap:40px}
  .hero-copy{max-width:780px}
  .hero-card{max-width:680px;width:100%}
  .section{padding-left:22px;padding-right:22px}
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .filters{grid-template-columns:1fr 1fr}
  .filters #search{grid-column:1/-1}
  .year-range{grid-column:1/-1}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vehicle-img{height:185px}
  .company-note-in{align-items:flex-start;flex-direction:column}
  .company-note-in p{text-align:left}
  .footer-in{flex-direction:column}
}
@media(max-width:500px){
  .nav{padding:0 14px}
  .brand img{width:82px}
  .hero{padding:46px 16px 50px}
  .hero h1{font-size:43px}
  .hero p{font-size:17px}
  .hero-card{padding:20px;border-radius:18px}
  .quick a{min-height:54px;padding:0 15px}
  .section{padding:48px 16px 58px}
  .filters{grid-template-columns:1fr}
  .filters #search,.year-range{grid-column:auto}
  .grid{grid-template-columns:1fr}
  .vehicle-img{height:230px}
  .footer{padding-left:16px;padding-right:16px}
  .price-row,.modal-price-row{align-items:flex-start;flex-direction:column}
  .monthly{align-items:flex-start}
}

/* Sprint 3 — identidade institucional */
.brand img{width:128px;height:62px}
.nav{height:86px}.nav-main-links a{padding-top:33px;padding-bottom:30px}.vehicle-section{scroll-margin-top:86px}
.nav-main-links a.active::after{right:0}
.company-note-in>div{display:flex;align-items:center;gap:30px}.dark-link{color:#151a20}
.text-link{display:inline-block;font-weight:750;margin-top:20px}.text-link:hover{text-decoration:underline}
.premium-footer{padding:0;background:#080a0d}
.footer-main{max-width:1440px;margin:auto;padding:58px 32px 42px;display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:55px}
.footer-main h3{margin:0 0 18px;color:#fff;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.footer-main a,.footer-main p{display:block;margin:0 0 10px;color:#aab0b8;font-size:14px;line-height:1.55}
.footer-main a:hover{color:#fff}.footer-brand img{width:150px;height:82px;object-fit:contain;object-position:left center}.footer-brand p{max-width:260px;margin-top:16px;font-size:16px;color:#d4d7db}
.footer-partners{max-width:1440px;margin:auto;padding:22px 32px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:26px;flex-wrap:wrap;opacity:.68}
.footer-partners span{font-size:11px;color:#8f969f;text-transform:uppercase;letter-spacing:.13em;margin-right:4px}
.footer-partners img{width:auto;height:25px;max-width:115px;object-fit:contain;filter:grayscale(1);mix-blend-mode:screen}
.footer-partners img.pme-badge{height:31px;max-width:155px;filter:grayscale(1);mix-blend-mode:normal}
.footer-bottom{max-width:1440px;margin:auto;padding:20px 32px 28px;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;gap:20px;color:#737a84;font-size:12px}

.company-hero{height:min(670px,72vh);min-height:520px;position:relative;overflow:hidden;background:#080a0d;color:#fff}
.company-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 54%}.company-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,7,10,.88) 0,rgba(4,7,10,.62) 43%,rgba(4,7,10,.14) 78%)}
.company-hero-copy{position:absolute;left:max(32px,calc((100% - 1376px)/2));bottom:78px;width:min(650px,calc(100% - 64px))}.company-hero-copy h1{font-size:clamp(48px,6vw,86px);line-height:.98;letter-spacing:-.05em;margin:18px 0 22px}.company-hero-copy p{font-size:20px;line-height:1.55;color:#d5d9de;max-width:560px}
.institutional-section{max-width:1440px;margin:auto;padding:92px 32px}.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.institutional-section h2,.team-copy h2,.rent-copy h2,.contact-section h2{font-size:clamp(36px,4vw,58px);line-height:1.03;letter-spacing:-.045em;margin:12px 0 0}.eyebrow.dark{color:#58616c}.prose{font-size:18px;line-height:1.8;color:#4e5660}.prose p:first-child{margin-top:0}
.mission-grid{display:grid;grid-template-columns:1fr 1fr;background:#0b0e12;color:#fff}.mission-grid article{padding:72px max(32px,calc((100vw - 1376px)/2));padding-right:70px}.mission-grid article+article{border-left:1px solid rgba(255,255,255,.1);padding-left:70px}.mission-grid span,.business-grid span{font-size:12px;letter-spacing:.13em;color:#8e96a1}.mission-grid h3{font-size:32px;margin:20px 0 18px}.mission-grid p{color:#c0c5cc;font-size:17px;line-height:1.75;max-width:620px}
.section-title{max-width:820px;margin-bottom:42px}.values-section{background:#fff;max-width:none;padding-left:max(32px,calc((100% - 1376px)/2));padding-right:max(32px,calc((100% - 1376px)/2))}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.values-grid article{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:190px}.values-grid h3{margin:0 0 14px;font-size:20px}.values-grid p{margin:0;color:#69717d;line-height:1.65}
.team-feature{display:grid;grid-template-columns:1.05fr .95fr;background:#11161a;color:#fff}.team-photo img{width:100%;height:100%;min-height:760px;object-fit:cover}.team-copy{padding:76px clamp(32px,5vw,82px)}.team-copy>.eyebrow{margin-bottom:14px}.team-list{margin-top:42px}.team-list article{padding:22px 0;border-top:1px solid rgba(255,255,255,.12)}.team-list h3{margin:0 0 5px;font-size:20px}.team-list strong{color:#d6a900;font-size:13px}.team-list p{color:#b9c0c8;line-height:1.6;margin-bottom:0}
.services-section{background:#f4f5f6}.business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.business-grid article{background:#fff;padding:30px;min-height:210px;border:1px solid var(--line)}.business-grid h3{margin:28px 0 12px}.business-grid p{color:#69717d;line-height:1.6}
.rent-feature{display:grid;grid-template-columns:.85fr 1.15fr;background:#080a0d;color:#fff}.rent-feature img{width:100%;height:100%;min-height:560px;object-fit:cover}.rent-copy{padding:80px max(32px,calc((100vw - 1376px)/2));padding-right:75px}.rent-copy ul{padding:0;list-style:none;margin:34px 0}.rent-copy li{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12);color:#cbd0d6}.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.why-grid p{padding:25px 0;border-top:1px solid var(--line);font-size:17px;line-height:1.55;color:#626a74}.why-grid strong{color:#151a20}
.contact-section{background:#d6a900;color:#101214;padding:76px max(32px,calc((100% - 1376px)/2));display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-section .eyebrow{color:#101214}.contact-section p{font-size:17px;line-height:1.7}.contact-section a{font-weight:700}.contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.contact-actions a{border:1px solid rgba(0,0,0,.35);padding:12px 17px;border-radius:8px}.contact-actions a:hover{background:#111;color:#fff}
@media(max-width:980px){.brand img{width:112px;height:58px}.nav{height:80px}.navlinks{top:80px}.footer-main{grid-template-columns:1fr 1fr}.two-col,.team-feature,.rent-feature,.contact-section{grid-template-columns:1fr}.mission-grid{grid-template-columns:1fr}.mission-grid article,.mission-grid article+article{padding:55px 32px;border-left:0;border-top:1px solid rgba(255,255,255,.1)}.values-grid,.business-grid{grid-template-columns:repeat(2,1fr)}.team-photo img{min-height:520px}.rent-feature img{min-height:420px}.company-hero{min-height:500px}}
@media(max-width:650px){.company-hero-copy{bottom:48px;left:20px;width:calc(100% - 40px)}.company-hero-copy h1{font-size:46px}.institutional-section{padding:65px 20px}.two-col{gap:32px}.values-grid,.business-grid,.why-grid{grid-template-columns:1fr}.team-copy{padding:55px 20px}.contact-section{padding:58px 20px;gap:34px}.footer-main{grid-template-columns:1fr;padding:45px 20px 28px;gap:28px}.footer-partners{padding:20px;gap:18px}.footer-partners img{height:20px;max-width:95px}.footer-bottom{padding:18px 20px 24px;flex-direction:column}.company-note-in>div{display:block}.company-note-in{align-items:flex-start}.company-note-in p{margin-top:10px}.brand img{width:102px;height:54px}}


/* Sprint 3.1 — As nossas histórias */
.stories-section{max-width:1440px;margin:auto;padding:94px 32px 108px}
.stories-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:end;margin-bottom:42px}
.stories-intro h2{font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-.05em;margin:12px 0 0}
.stories-copy{max-width:670px;justify-self:end}
.stories-copy p{margin:0 0 12px;color:#5d6570;font-size:18px;line-height:1.75}
.stories-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:245px;gap:12px}
.story-card{position:relative;margin:0;overflow:hidden;background:#e9ecef;border-radius:3px}
.story-card.story-wide{grid-column:span 2}
.story-card.story-tall{grid-row:span 2}
.story-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.25,1)}
.story-card:hover img{transform:scale(1.025)}
.story-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.42));opacity:0;transition:opacity .3s ease}
.story-card:has(figcaption)::after{opacity:1}
.story-card figcaption{position:absolute;z-index:1;left:22px;right:22px;bottom:20px;color:#fff;font-size:17px;font-weight:700;letter-spacing:-.01em}
.stories-closing{margin-top:38px;padding-top:30px;border-top:1px solid var(--line);display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.stories-closing blockquote{margin:0;max-width:780px;font-size:clamp(25px,3vw,39px);line-height:1.2;letter-spacing:-.035em;color:#1b2026;font-weight:650}
.stories-closing .text-link{margin:0;white-space:nowrap}
@media(max-width:980px){.stories-intro{grid-template-columns:1fr;gap:28px}.stories-copy{justify-self:start}.stories-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:250px}.stories-closing{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.stories-section{padding:68px 16px 76px}.stories-mosaic{grid-auto-rows:210px;gap:8px}.story-card.story-wide{grid-column:span 2}.story-card.story-tall{grid-row:span 1}.story-card:nth-child(3),.story-card:nth-child(4),.story-card:nth-child(7){grid-column:span 1}.story-card figcaption{left:16px;right:16px;bottom:15px;font-size:15px}.stories-copy p{font-size:16px}.stories-closing{margin-top:26px;padding-top:24px}}

/* Sprint 3.2 — imagens originais HD e logótipo SVG oficial */
.brand img,
.footer-brand img{
  background:transparent !important;
  filter:none !important;
  mix-blend-mode:normal;
}
.brand img{width:142px;height:66px;object-fit:contain;object-position:left center}
.footer-brand img{width:190px;height:96px;object-fit:contain;object-position:left center}
.company-hero>img{object-position:center 48%}
.team-photo img{object-position:center center}
.rent-feature img{object-position:center center}
@media(max-width:980px){.brand img{width:122px;height:60px}.footer-brand img{width:170px;height:88px}}
@media(max-width:650px){.brand img{width:110px;height:56px}.footer-brand img{width:155px;height:82px}}

/* V10 final: histórias e avaliações */
.stories-mosaic{grid-auto-flow:dense}.story-card img{object-position:center center}.story-card:nth-of-type(2) img{object-position:center 25%}.story-card:nth-of-type(5) img{object-position:center 20%}.google-review{background:#fff;border:1px solid #dadce0;border-radius:14px;padding:18px;min-height:180px;display:flex;flex-direction:column;justify-content:flex-start;color:#202124}.review-head{display:flex;gap:10px;align-items:center}.review-head .avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#7651c8;color:#fff;font-weight:700}.review-head div{display:flex;flex-direction:column}.review-head small{color:#5f6368;margin-top:2px}.review-head b{color:#4285f4}.stars{margin:14px 0 8px;color:#fbbc04;font-weight:900;letter-spacing:1px}.stars small{color:#5f6368;font-weight:400;letter-spacing:0}.google-review p{font-size:14px;line-height:1.45;margin:0}.home-contact{margin-top:0}.contact-section a{color:inherit}
