/* Fixed brand scenery; only the document scrolls. */
html{background:#071327}body{background:transparent;isolation:isolate}
.brand-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 0% 10%,#721a36 0,transparent 48%),radial-gradient(ellipse at 100% 75%,#123d87 0,transparent 58%),#071327}


main{background:transparent}main>.wrap{box-sizing:border-box;max-width:1320px;width:calc(100% - 64px);margin:28px auto 40px;padding:40px;background:#f6f8fcf7;border-radius:24px;box-shadow:0 24px 60px #00000030;min-height:60vh}
body>.footer-map{background:#f6f8fc;border-radius:20px;margin-bottom:32px;max-width:1256px;width:calc(100% - 80px)}
.car-card{position:relative;display:flex;flex-direction:column;border-radius:16px;background:#fff;border:1px solid #dbe3ee;box-shadow:none;overflow:hidden;transition:transform .22s ease-out,box-shadow .22s ease-out}
.car-card>.photo-link{aspect-ratio:4/3;overflow:hidden;background:#e9eef5}.car-card>.photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease-out}
.car-card .car-info{padding:22px;display:flex;flex-direction:column;flex:1;min-width:0}
.car-card .car-title{color:#101d33;font-size:24px;font-weight:750;line-height:1.2;letter-spacing:-.025em;text-decoration:none}
.car-card .car-specs{font-size:13px;line-height:1.65;margin:12px 0 16px;color:#526176;min-height:0}
.car-card .price{font-size:clamp(26px,2.2vw,34px);font-weight:800;line-height:1.15;letter-spacing:-.03em;color:#101d33;margin-bottom:10px;font-variant-numeric:tabular-nums}
.car-card .car-location{font-size:13px;line-height:1.5;color:#36557b;margin:0 0 18px}
.car-card .car-payment-methods{font-size:11px;color:#617086;line-height:1.6;padding-top:14px;border-top:1px solid #e5ebf3;margin:0 0 18px}
.car-card .catalog-contact-actions{margin-top:auto;gap:10px}.car-card .catalog-contact-actions .button{border-radius:10px;min-height:46px;font-size:14px;padding:12px 14px}
.car-card .catalog-write{background:#e61635;color:#fff;border-color:#e61635;box-shadow:none}
.car-card .catalog-call{background:#eef3fa;border:1px solid #d6e1ef;color:#16385f}
.car-card .card-actions{display:flex;align-items:center;justify-content:space-between;margin-top:16px;gap:12px}
.car-card .card-detail-link{font-size:13px;color:#204f8d;font-weight:650}.car-card .card-favorite{border-radius:50%;width:40px;height:40px;min-height:40px;padding:0;background:#f1f5fa;border:0;color:#254c7c}
.car-card :focus-visible{outline:3px solid #2168c9;outline-offset:3px}
@media(hover:hover) and (pointer:fine){.car-card:hover{transform:translateY(-4px);box-shadow:0 16px 28px #142c4e20}.car-card:hover>.photo-link img{transform:scale(1.025)}}
@media(max-width:800px){main>.wrap{width:calc(100% - 24px);margin:12px auto 24px;padding:24px 16px;border-radius:16px}body>.footer-map{width:calc(100% - 24px)}.car-card .car-info{padding:18px}.car-card .car-title{font-size:23px}.car-card .price{font-size:29px}}
@media(prefers-reduced-motion:reduce){.car-card,.car-card>.photo-link img{transition:none}.car-card:hover,.car-card:hover>.photo-link img{transform:none}}

.brand-backdrop[hidden]{display:none}
/* Reference refinement: individual scrolling blocks over visible fixed scenery. */
main>.wrap{background:transparent;box-shadow:none;border-radius:0;color:#f3f6fc}


main>.wrap>h1,main>.wrap>h2,main>.wrap>.section-head h2,main>.wrap>.section-head,main>.wrap>.catalog-heading h2{color:#f5f7fc}
main>.wrap>p,main>.wrap>.eyebrow{color:#d4dfef}
main>.wrap>.section-head>a,main>.wrap>.back,main>.wrap>.text-link{color:#c1d9ff}
main>.wrap .panel,main>.wrap .filter-bar,main>.wrap .car-card{color:#172331}
.home-page>.section-head{margin-top:42px}.home-page>.home-section,.home-page>.workshop-callout,.home-page>.how-we-work{margin-top:40px}
main>.wrap>.form-layout>.panel{background:#fff}
.design-preview-controls{color:#172331}
@media(max-width:800px){main>.wrap{background:transparent;padding:24px 12px}.home-page>.section-head{margin-top:30px}}
/* Explicit foreground pairs for sections over the brand scenery. */

main>.wrap.home-page>.home-section>h2,main>.wrap.home-page>.faqs>h2,main>.wrap.home-page>.home-section>.section-head h2{color:#f4f7fc}
main>.wrap .faqs details{background:#fff;color:#172331;border:1px solid #dbe4ef;padding:0;border-radius:12px;margin:12px 0}
main>.wrap .faqs summary{color:#172331;background:transparent;font-weight:650;line-height:1.5;min-height:52px;padding:16px 20px;cursor:pointer}
main>.wrap .faqs details p{color:#35465d;background:transparent;line-height:1.65;margin:0;padding:0 20px 20px}
main>.wrap .faqs summary:focus-visible{outline:3px solid #2168c9;outline-offset:3px}
main>.wrap .home-video-columns>section{background:#fff;color:#172331;padding:24px;border-radius:16px}
main>.wrap .home-video-columns>section h2,main>.wrap .home-video-columns>section h3{color:#172331}
@media(max-width:800px){}
/* Compact cards: explicit placement prevents the phone from splitting actions. */
.car-card .car-info{padding:16px 18px}
.car-card .car-title{font-size:22px;line-height:1.25}
.car-card .car-specs{margin:8px 0 12px;line-height:1.5}
.car-card .price{font-size:28px;margin-bottom:8px}
.car-card .car-location{margin:0 0 12px}
.car-card .car-payment-methods{padding-top:10px;margin-bottom:12px;line-height:1.45}
.car-card .catalog-contact-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:0}
.car-card .catalog-contact-actions .catalog-call{grid-column:1;grid-row:1}
.car-card .catalog-contact-actions .catalog-write{grid-column:2;grid-row:1}
.car-card .catalog-contact-actions .desktop-dealer-phone{grid-column:1/-1;grid-row:2;margin:2px 0 0;font-size:16px;line-height:1.35}
.car-card .card-actions{margin-top:12px;padding-top:10px;border-top:1px solid #e5ebf3}
@media(max-width:800px){.car-card .car-info{padding:18px}.car-card .car-title{font-size:23px}.car-card .price{font-size:29px}}
/* Readable copy directly over the fixed dark background on every route. */
main>.wrap{--muted:#fff;color:#fff}
main>.wrap>.intro,main>.wrap>.note,main>.wrap>.legal-text,main>.wrap>.own-video-description,main>.wrap .about-story,main>.wrap .about-story p,main>.wrap .about-client-preview>h2,main>.wrap .detail-layout>div>.description,main>.wrap .detail-layout>div>h3,main>.wrap .detail-layout>div>.specs,main>.wrap .detail-layout>div>.specs .spec span,main>.wrap .detail-layout>div>.specs .spec strong,main>.wrap>.results-bar,main>.wrap>.related-cars>h2{color:#fff}
main>.wrap .panel,main>.wrap .filter-bar,main>.wrap .car-card,main>.wrap .faqs details{--muted:#526176;color:#172331}
main>.wrap .panel :is(p,small,label),main>.wrap .filter-bar :is(p,label){color:#35465d}
main>.wrap .panel :is(h2,h3,strong){color:#172331}
/* Matching compact homepage video panels; desktop height follows the taller panel. */
main>.wrap .home-video-columns{align-items:stretch}
main>.wrap .home-video-columns>section{height:auto;min-height:0;padding:20px!important;background:#fff;color:#172331}
main>.wrap .home-video-columns :is(h2,h3){color:#172331;font-size:24px}
main>.wrap .home-video-columns .note,main>.wrap .home-video-columns>section>p{color:#526176;font-size:14px;line-height:1.5}
.home-video-columns .video-card{display:grid;grid-template-columns:140px minmax(0,1fr);gap:0 14px;padding:12px;align-content:start}
.home-video-columns .video-card>a:first-child{grid-column:1;grid-row:1/6;align-self:start}
.home-video-columns .video-card img,.home-video-columns .video-placeholder{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;border-radius:8px}
.home-video-columns .video-card>:not(:first-child){grid-column:2;margin:0 0 8px;padding:0}
.home-video-columns .video-card>.video-title{font-size:16px;line-height:1.35}
.home-video-columns .video-card>p{font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-video-columns .video-card>small{font-size:11px;color:#526176}
.home-video-columns .video-card>.button{padding:8px 10px;min-height:36px;font-size:12px;margin:4px 0 0}
.home-video-columns .own-video-card{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:14px;padding:12px}
.home-video-columns .own-video-card h3{font-size:16px;line-height:1.35;padding:0;margin:0}
.partner-services{margin:36px 0 12px}.partner-services>h2{color:#fff}.partner-services-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.partner-service{padding:22px}.partner-service h3{font-size:22px;line-height:1.3;margin:0 0 12px}.partner-service p{font-size:14px;line-height:1.6;margin:0 0 16px}.partner-service .button{font-size:14px;min-height:44px}
@media(max-width:1000px) and (min-width:761px){.home-video-columns .video-card,.home-video-columns .own-video-card{grid-template-columns:100px minmax(0,1fr)}}
@media(max-width:600px){.partner-services-grid{grid-template-columns:1fr}.home-video-columns .video-card,.home-video-columns .own-video-card{grid-template-columns:100px minmax(0,1fr)}}

/* Shared heading rhythm keeps both video panels aligned. */
main>.wrap .home-video-columns>section h2{font-size:24px;font-weight:700;line-height:1.25;margin:0 0 18px}
main>.wrap .home-video-columns>section>.section-head>.button,main>.wrap .home-video-columns>section>.button{margin:0 0 22px;min-height:44px}

/* One centered, stationary brand mark with the original colored wordmark below. */
.brand-backdrop>.backdrop-logo{position:absolute;left:50%;top:50%;right:auto;width:min(80vw,880px);height:auto;max-height:72vh;transform:translate(-50%,-50%);opacity:.48}
.brand-backdrop::after{content:none}
@media(max-width:800px){.brand-backdrop>.backdrop-logo{width:88vw;top:50%;opacity:.40}}

/* Larger video previews with compact captions in both homepage panels. */
main>.wrap .home-video-columns .video-card,main>.wrap .home-video-columns .own-video-card{grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:4px 14px;align-items:start}
main>.wrap .home-video-columns .video-card>a:first-child{grid-column:1;grid-row:1/8}
main>.wrap .home-video-columns .video-card>:not(:first-child){grid-column:2}
main>.wrap .home-video-columns .own-video-card img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#071327;border-radius:8px}
main>.wrap .home-video-columns .own-video-card h3,main>.wrap .home-video-columns .video-card .video-title{font-size:15px;line-height:1.35;font-weight:650}
main>.wrap .home-video-columns .video-card p,main>.wrap .home-video-columns .video-card small,main>.wrap .home-video-columns .video-card .eyebrow{font-size:12px;line-height:1.4}
@media(max-width:600px){main>.wrap .home-video-columns .video-card,main>.wrap .home-video-columns .own-video-card{grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:4px 10px}}

.home-news > h2 { color: #fff; }
.news-source { display: block; margin-top: .45rem; font-size: .85rem; }

/* Compact desktop homepage cards; the mobile homepage and full catalog keep their layouts. */
@media (min-width: 761px) {
  .home-page .home-catalog-grid { max-width: 1080px; margin-inline: auto; gap: 20px; }
  .home-page .home-catalog-grid .car-card > .photo-link { aspect-ratio: 3 / 2; }
  .home-page .home-catalog-grid .car-info { padding: 14px 16px; }
  .home-page .home-catalog-grid .car-title { font-size: 20px; }
  .home-page .home-catalog-grid .price { font-size: 26px; }
  .home-page .home-catalog-grid .car-payment-methods { margin-bottom: 9px; }
}

/* A more prominent video preview on desktop, without changing mobile layout. */
@media (min-width: 761px) {
  main>.wrap .home-video-columns .video-card,
  main>.wrap .home-video-columns .own-video-card {
    grid-template-columns: minmax(0, 62%) minmax(0, 1fr);
    gap: 6px 12px;
  }
  main>.wrap .home-video-columns .video-card .video-title,
  main>.wrap .home-video-columns .own-video-card h3 { font-size: 14px; line-height: 1.35; }
  main>.wrap .home-video-columns .video-card p,
  main>.wrap .home-video-columns .video-card small,
  main>.wrap .home-video-columns .video-card .eyebrow { font-size: 11px; line-height: 1.4; }
}

/* Full-width previews make the videos the main focus of each desktop panel. */
@media (min-width: 761px) {
  main>.wrap .home-video-columns .video-card,
  main>.wrap .home-video-columns .own-video-card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 7px;
    padding: 8px;
  }
  main>.wrap .home-video-columns .video-card>a:first-child {
    display: block;
    width: 100%;
  }
  main>.wrap .home-video-columns .video-card img,
  main>.wrap .home-video-columns .video-placeholder,
  main>.wrap .home-video-columns .own-video-card img {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
  }
  main>.wrap .home-video-columns .video-card>:not(:first-child) { margin: 0; }
  main>.wrap .home-video-columns .video-card>.button { align-self: flex-start; margin-top: 3px; }
}

/* Desktop video panels: header on one line and a compact caption under a large player. */
.home-video-heading { display: contents; }
@media (min-width: 761px) {
  main>.wrap .home-video-columns>section { padding: 16px!important; }
  main>.wrap .home-video-columns .home-video-heading,
  main>.wrap .home-video-columns .own-video-home>.section-head {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px;
  }
  main>.wrap .home-video-columns .home-video-heading h2,
  main>.wrap .home-video-columns .own-video-home>.section-head h2 { margin: 0; }
  main>.wrap .home-video-columns .home-video-heading .button,
  main>.wrap .home-video-columns .own-video-home>.section-head .button {
    flex: 0 0 auto; min-height: 36px; margin: 0; padding: 8px 12px; font-size: 12px;
  }
  main>.wrap .home-video-columns .video-card,
  main>.wrap .home-video-columns .own-video-card { gap: 4px; padding: 6px; }
  main>.wrap .home-video-columns .video-card>.button { display: none; }
  main>.wrap .home-video-columns .video-card p:empty { display: none; }
  main>.wrap .home-video-columns .video-card .video-title,
  main>.wrap .home-video-columns .own-video-card h3 { margin: 0; font-size: 15px; line-height: 1.3; }
  main>.wrap .home-video-columns .video-card small { margin: 0; line-height: 1.3; }
  main>.wrap .home-video-columns .home-inline-video { display: block; width: 100%; aspect-ratio: 16/9; height: auto; border: 0; border-radius: 8px; background: #071327; }
  main>.wrap .home-video-columns .home-video-cover,
  main>.wrap .home-video-columns .home-own-cover { position: relative; }
  main>.wrap .home-video-columns .home-video-cover::after {
    content: '▶'; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);
    display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%;
    background: #06142cbb; color: white; border: 1px solid white; font-size: 21px;
  }
}
