:root{
    --black:#050505;
    --graphite:#101113;
    --ink:#181b20;
    --line:rgba(255,255,255,0.12);
    --silver:#d7d9dd;
    --soft:#aeb4bd;
    --white:#f7f7f4;
    --champagne:#c9b27d;
    --champagne-strong:#e2c982;
    --paper:#f3f0e8;
    --paper-dark:#ded8cc;
    --shadow:0 24px 70px rgba(0,0,0,0.42);
}

*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    font-family:Arial, Helvetica, sans-serif;
    background:var(--black);
    color:var(--white);
    letter-spacing:0;
}

body::selection{
    background:var(--champagne);
    color:#090909;
}

a{
    color:inherit;
    text-decoration:none;
}

img{
    display:block;
    max-width:100%;
}

button,
input,
select{
    font:inherit;
}

/* Header */
.site-header,
header{
    position:sticky;
    top:0;
    z-index:20;
    min-height:126px;
    padding:18px clamp(20px,4vw,64px) 34px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    background:rgba(5,5,5,0.76);
    border-bottom:1px solid rgba(255,255,255,0.08);
    backdrop-filter:blur(18px);
}

.logo{
    position:relative;
    display:inline-block;
    width:max-content;
    padding-bottom:48px;
    padding-right:42px;
    color:var(--white);
}

.main-logo{
    font-size:clamp(20px,2vw,28px);
    letter-spacing:3px;
    font-weight:300;
}

.logo-small{
    position:absolute;
    left:calc(100% + 8px);
    top:24px;
    color:var(--champagne-strong);
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
}

.logo-signature{
    position:absolute;
    left:76px;
    top:58px;
    width:174px;
    height:auto;
    opacity:.94;
    pointer-events:none;
    transform:none;
    filter:drop-shadow(0 3px 7px rgba(0,0,0,0.48));
}

.main-nav,
header > div:last-child{
    display:flex;
    align-items:center;
    gap:8px;
}

.main-nav a{
    position:relative;
    color:rgba(247,247,244,0.78);
    margin-left:0;
    padding:10px 12px;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:1.2px;
    transition:color .25s ease, transform .25s ease;
}

.main-nav a::after{
    content:"";
    position:absolute;
    left:12px;
    right:12px;
    bottom:5px;
    height:1px;
    background:var(--champagne-strong);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .28s ease;
}

.main-nav a:hover{
    color:var(--white);
    transform:translateY(-1px);
}

.main-nav a:hover::after{
    transform:scaleX(1);
}

/* Hero */
.hero{
    position:relative;
}

.showcase-hero{
    min-height:calc(100vh - 126px);
    display:grid;
    align-items:end;
    padding:clamp(110px,13vw,170px) clamp(20px,5vw,76px) clamp(26px,4vw,56px);
    overflow:hidden;
    background:#030303;
}

.hero-media{
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.66) 34%,rgba(0,0,0,0.18) 65%,rgba(0,0,0,0.56) 100%),
        url("assets/hero-premium-sedan.png") center right / cover no-repeat;
    transform:scale(1.04);
    animation:heroDrift 18s ease-in-out infinite alternate;
}

.hero-shade{
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 72% 42%,rgba(226,201,130,0.12),transparent 30%),
        linear-gradient(180deg,transparent 58%,rgba(0,0,0,0.86) 100%);
}

.hero-content{
    position:relative;
    z-index:2;
    max-width:760px;
    padding-bottom:clamp(28px,6vw,72px);
}

.eyebrow{
    margin:0 0 16px;
    color:var(--champagne-strong);
    font-size:12px;
    font-weight:700;
    letter-spacing:2.4px;
    text-transform:uppercase;
}

.hero h1,
.showcase-hero h1{
    max-width:820px;
    margin:0;
    font-size:clamp(38px,5.8vw,76px);
    line-height:1.02;
    font-weight:300;
    letter-spacing:0;
}

.hero-copy{
    max-width:650px;
    margin:24px 0 0;
    color:rgba(247,247,244,0.78);
    font-size:clamp(16px,1.55vw,19px);
    line-height:1.55;
}

.hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:34px;
}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    border:1px solid transparent;
    border-radius:3px;
    padding:13px 24px;
    color:#070707;
    background:linear-gradient(120deg,var(--champagne),#f2e6bd);
    box-shadow:0 12px 28px rgba(0,0,0,0.22);
    cursor:pointer;
    font-size:13px;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}

.btn:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 40px rgba(0,0,0,0.32);
}

.btn-primary{
    background:linear-gradient(120deg,#b79b55,#f3e4ae);
}

.btn-ghost{
    color:var(--white);
    background:rgba(255,255,255,0.04);
    border-color:rgba(255,255,255,0.22);
    box-shadow:none;
}

.btn-soft{
    color:var(--white);
    background:rgba(183,155,85,0.16);
    border-color:rgba(226,201,130,0.42);
    box-shadow:none;
}

.btn-dark{
    color:var(--white);
    background:#0b0c0e;
    border-color:#0b0c0e;
}

.quick-search{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:1.35fr 1fr 1fr auto;
    gap:1px;
    width:min(1120px,100%);
    margin-top:30px;
    background:rgba(255,255,255,0.16);
    border:1px solid rgba(255,255,255,0.18);
    box-shadow:var(--shadow);
    backdrop-filter:blur(20px);
}

.quick-search label{
    display:flex;
    flex-direction:column;
    gap:8px;
    min-width:0;
    padding:18px;
    background:rgba(8,9,10,0.82);
}

.quick-search span{
    color:var(--champagne-strong);
    font-size:11px;
    font-weight:700;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

input,
select,
textarea{
    width:100%;
    min-height:44px;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:3px;
    padding:12px 13px;
    color:var(--white);
    background:#141518;
    outline:none;
    transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

select{
    appearance:auto;
}

input:focus,
select:focus,
textarea:focus{
    border-color:rgba(226,201,130,0.72);
    box-shadow:0 0 0 3px rgba(226,201,130,0.12);
}

textarea{
    min-height:132px;
    resize:vertical;
}

.quick-search .btn{
    height:100%;
    min-width:120px;
    border-radius:0;
}

/* Middle contrast */
.trust-strip{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    background:var(--paper);
    color:#121212;
    border-bottom:1px solid var(--paper-dark);
}

.trust-strip div{
    min-height:132px;
    padding:28px clamp(20px,4vw,54px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-right:1px solid var(--paper-dark);
}

.trust-strip strong{
    font-size:clamp(32px,4vw,52px);
    font-weight:300;
}

.trust-strip span{
    max-width:300px;
    color:#5a5a55;
    line-height:1.45;
}

.home-offers-callout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,390px);
    align-items:center;
    gap:28px;
    padding:clamp(42px,6vw,78px) clamp(20px,5vw,76px);
    background:
        linear-gradient(135deg,rgba(14,15,17,0.98),rgba(5,5,5,1)),
        #08090a;
    border-top:1px solid rgba(226,201,130,0.18);
    border-bottom:1px solid rgba(226,201,130,0.18);
}

.home-offers-copy{
    max-width:860px;
}

.home-offers-copy h2{
    margin:0;
    font-size:clamp(30px,4vw,50px);
    line-height:1.04;
    font-weight:300;
}

.home-offers-copy p:not(.eyebrow){
    max-width:760px;
    color:rgba(247,247,244,0.74);
    font-size:18px;
    line-height:1.6;
}

.home-offers-card{
    display:grid;
    gap:16px;
    padding:26px;
    border:1px solid rgba(226,201,130,0.3);
    border-radius:8px;
    background:rgba(255,255,255,0.055);
    box-shadow:0 24px 58px rgba(0,0,0,0.28);
}

.home-offers-card span{
    color:var(--champagne-strong);
    font-size:12px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.home-offers-card strong{
    color:var(--white);
    font-size:clamp(28px,3vw,42px);
    font-weight:300;
}

.rental-home-band{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:28px;
    padding:clamp(34px,5vw,64px) clamp(20px,5vw,76px);
    background:linear-gradient(135deg,#111214,#050505);
    border-top:1px solid rgba(226,201,130,0.18);
    border-bottom:1px solid rgba(226,201,130,0.18);
}

.rental-home-copy{
    max-width:820px;
}

.rental-home-copy h2{
    margin:0;
    font-size:clamp(32px,4vw,54px);
    line-height:1.02;
}

.rental-home-copy p:not(.eyebrow){
    max-width:760px;
    color:rgba(247,247,244,0.72);
    line-height:1.6;
}

.section-contrast{
    padding:clamp(76px,9vw,130px) clamp(20px,5vw,76px);
    background:linear-gradient(180deg,var(--paper),#e7e2d8);
    color:#121212;
}

.section-heading{
    max-width:760px;
}

.section-heading h2,
.editorial-copy h2,
.sell-panel h2{
    margin:0;
    font-size:clamp(34px,5vw,66px);
    line-height:1;
    font-weight:300;
    letter-spacing:0;
}

.section-heading p:not(.eyebrow){
    max-width:620px;
    margin:22px 0 0;
    color:#5d5d58;
    font-size:18px;
    line-height:1.6;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:46px;
}

.feature-card{
    min-height:280px;
    padding:30px;
    background:rgba(255,255,255,0.42);
    border:1px solid rgba(18,18,18,0.12);
    border-radius:8px;
    transition:transform .32s ease, box-shadow .32s ease, background .32s ease;
}

.feature-card:hover{
    transform:translateY(-8px);
    background:rgba(255,255,255,0.66);
    box-shadow:0 24px 46px rgba(42,38,29,0.14);
}

.feature-number{
    color:#8f7438;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
}

.feature-card h3{
    margin:72px 0 14px;
    font-size:26px;
    font-weight:300;
}

.feature-card p{
    margin:0;
    color:#64645d;
    line-height:1.58;
}

.home-seo-section{
    padding:clamp(76px,9vw,130px) clamp(20px,5vw,76px);
    background:
        linear-gradient(180deg,rgba(8,9,10,0.98),rgba(15,16,18,0.96)),
        linear-gradient(135deg,#050505,#17191d);
    color:var(--white);
}

.home-seo-section .section-heading{
    max-width:940px;
}

.home-seo-section .section-heading p:not(.eyebrow){
    max-width:860px;
    color:rgba(247,247,244,0.72);
}

.home-seo-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:46px;
}

.home-seo-grid article{
    min-height:320px;
    padding:30px;
    border:1px solid rgba(226,201,130,0.18);
    border-radius:8px;
    background:
        linear-gradient(180deg,rgba(255,255,255,0.055),rgba(255,255,255,0.018)),
        #0d0e10;
    box-shadow:0 26px 54px rgba(0,0,0,0.24);
    transition:transform .32s ease, border-color .32s ease, background .32s ease;
}

.home-seo-grid article:hover{
    transform:translateY(-8px);
    border-color:rgba(226,201,130,0.42);
    background:
        linear-gradient(180deg,rgba(226,201,130,0.09),rgba(255,255,255,0.02)),
        #101113;
}

.home-seo-grid span{
    color:var(--champagne-strong);
    font-size:12px;
    font-weight:700;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.home-seo-grid h3{
    margin:64px 0 14px;
    font-size:26px;
    font-weight:300;
    line-height:1.12;
}

.home-seo-grid p{
    margin:0;
    color:rgba(247,247,244,0.68);
    line-height:1.6;
}

.editorial-band{
    padding:clamp(80px,10vw,140px) clamp(20px,5vw,76px);
    display:grid;
    grid-template-columns:minmax(280px,0.8fr) minmax(320px,1.2fr);
    gap:clamp(36px,7vw,96px);
    background:
        linear-gradient(90deg,rgba(5,5,5,0.98),rgba(16,17,19,0.92)),
        linear-gradient(135deg,#070707,#202329);
    color:var(--white);
}

.process-list{
    display:grid;
    gap:14px;
}

.process-item{
    display:grid;
    grid-template-columns:100px 1fr;
    gap:24px;
    align-items:center;
    padding:24px 0;
    border-bottom:1px solid rgba(255,255,255,0.12);
}

.process-item span{
    color:var(--champagne-strong);
    font-weight:700;
    letter-spacing:1.6px;
    text-transform:uppercase;
}

.process-item p{
    margin:0;
    color:rgba(247,247,244,0.72);
    font-size:18px;
    line-height:1.55;
}

.sell-cta{
    display:grid;
    grid-template-columns:1.2fr 0.8fr;
    gap:1px;
    background:rgba(255,255,255,0.12);
}

.sell-panel,
.request-panel{
    padding:clamp(48px,7vw,90px) clamp(20px,5vw,76px);
    background:#111214;
}

.sell-panel p:not(.eyebrow){
    color:rgba(247,247,244,0.72);
}

.sell-panel .btn{
    margin-top:32px;
}

.request-panel{
    background:#f0ece3;
    color:#111;
}

.request-panel h3{
    margin:0 0 24px;
    font-size:30px;
    font-weight:300;
}

.request-panel p{
    margin:-10px 0 22px;
    color:#62625c;
    line-height:1.55;
}

.request-panel input{
    margin:0 0 12px;
    color:#111;
    background:#fff;
    border-color:#d4cfc4;
}

/* Footer */
.site-footer{
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr;
    gap:38px;
    padding:52px clamp(20px,5vw,76px);
    background:#010101;
    color:rgba(247,247,244,0.72);
    border-top:1px solid rgba(226,201,130,0.22);
}

.footer-logo{
    margin-bottom:14px;
}

.footer-signature{
    display:block;
    width:210px;
    max-width:70%;
    height:auto;
    margin:0 0 24px 18px;
    opacity:.82;
    transform:none;
    filter:drop-shadow(0 5px 12px rgba(0,0,0,0.55));
}

.site-footer h3{
    margin:0 0 16px;
    color:var(--white);
    font-size:16px;
    font-weight:700;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.site-footer p{
    max-width:360px;
    margin:0 0 10px;
    line-height:1.55;
}

.footer-legal-links a,
.legal-page a,
.privacy-note a{
    color:var(--champagne-strong);
    text-decoration:underline;
    text-underline-offset:3px;
}

.privacy-note{
    margin:2px 0 0;
    color:rgba(247,247,244,0.58);
    font-size:13px !important;
    line-height:1.45;
}

.request-panel .privacy-note,
.premium-form .privacy-note{
    color:rgba(17,17,17,0.62);
}

.footer-legal-links{
    margin-top:18px !important;
}

/* Internal pages */
.inner-page{
    min-height:100vh;
    background:#08090a;
}

.page-hero{
    padding:clamp(74px,8vw,120px) clamp(20px,5vw,76px);
    background:
        linear-gradient(90deg,rgba(5,5,5,0.96),rgba(13,14,16,0.84)),
        url("assets/hero-premium-sedan.png") center right / cover no-repeat;
    border-bottom:1px solid rgba(255,255,255,0.1);
}

.compact-hero h1,
.result-page h1,
.split-copy h1,
.two-wheels-hero h1{
    max-width:820px;
    margin:0;
    font-size:clamp(42px,6vw,82px);
    line-height:1;
    font-weight:300;
}

.page-hero p:not(.eyebrow),
.split-copy p,
.two-wheels-hero p,
.result-page p{
    max-width:680px;
    color:rgba(247,247,244,0.74);
    font-size:18px;
    line-height:1.6;
}

.catalog-toolbar{
    padding:24px clamp(20px,5vw,76px);
    background:#101113;
    border-bottom:1px solid rgba(255,255,255,0.08);
}

.catalog-search{
    display:grid;
    grid-template-columns:1fr 240px auto;
    gap:12px;
    max-width:960px;
}

.catalog-section{
    padding:clamp(34px,5vw,70px) clamp(20px,5vw,76px);
}

.catalog-section .grid{
    padding:0;
    grid-template-columns:repeat(auto-fill,minmax(320px,420px));
    align-items:stretch;
    justify-content:start;
}

.car-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:100%;
    background:linear-gradient(180deg,#151619,#0e0f11);
}

.car-card::before{
    content:"";
    position:absolute;
    inset:0;
    border:1px solid transparent;
    border-radius:8px;
    pointer-events:none;
    transition:border-color .3s ease, box-shadow .3s ease;
}

.car-card:hover::before{
    border-color:rgba(226,201,130,0.42);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,0.04);
}

.car-media{
    position:relative;
    display:block;
    aspect-ratio:16 / 10;
    overflow:hidden;
    background:
        radial-gradient(circle at 50% 18%,rgba(255,255,255,0.08),transparent 42%),
        linear-gradient(135deg,#0d0e10,#030303);
}

.car-media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,0.72));
    opacity:.82;
    transition:opacity .3s ease;
}

.car-media img{
    width:100%;
    height:100%;
    padding:12px;
    object-fit:contain;
    box-sizing:border-box;
    transition:transform .55s cubic-bezier(.16,1,.3,1), filter .35s ease;
}

.car-card:hover .car-media img{
    transform:scale(1.025);
    filter:saturate(1.08) contrast(1.04);
}

.media-badge{
    position:absolute;
    right:14px;
    bottom:14px;
    z-index:2;
    padding:7px 10px;
    color:#090909;
    background:linear-gradient(120deg,#b79b55,#f3e4ae);
    border-radius:3px;
    font-size:11px;
    font-weight:700;
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.media-count{
    position:absolute;
    left:14px;
    bottom:14px;
    z-index:2;
    padding:7px 10px;
    color:rgba(247,247,244,0.88);
    background:rgba(0,0,0,0.52);
    border:1px solid rgba(255,255,255,0.16);
    border-radius:3px;
    font-size:11px;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
    backdrop-filter:blur(12px);
}

.media-badge-offer{
    color:#090909;
    background:linear-gradient(120deg,#f3e4ae,#c9b27d 55%,#fff2c7);
    box-shadow:0 12px 32px rgba(0,0,0,0.38);
}

.car-card .card-body{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    flex:1;
    padding:20px;
}

.car-card .btn{
    margin:0;
}

.status-pill{
    display:inline-flex;
    padding:6px 9px;
    border:1px solid rgba(226,201,130,0.35);
    color:var(--champagne-strong);
    font-size:11px;
    font-weight:700;
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.card-badges{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:12px;
}

.status-pill.muted{
    color:rgba(247,247,244,0.72);
    border-color:rgba(255,255,255,0.16);
}

.status-pill.neo{
    color:#070707;
    background:linear-gradient(120deg,#c9b27d,#f2e6bd);
    border-color:transparent;
}

.status-pill.offer{
    color:#101010;
    background:#f4e8bf;
    border-color:transparent;
}

.card-offer-note{
    margin:-2px 0 10px;
    color:var(--champagne-strong);
    font-size:13px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
}

.card-specs{
    margin:0 0 12px;
    color:rgba(247,247,244,0.62);
    font-size:13px;
    line-height:1.45;
}

.card-highlights{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:0 0 14px;
}

.card-highlights span{
    padding:6px 8px;
    color:rgba(247,247,244,0.82);
    border:1px solid rgba(255,255,255,0.13);
    border-radius:3px;
    background:rgba(255,255,255,0.045);
    font-size:10px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
}

.card-description{
    display:-webkit-box;
    min-height:67px;
    margin:0 0 16px;
    overflow:hidden;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    color:rgba(247,247,244,0.72);
    line-height:1.55;
}

.price,
.detail-price{
    color:var(--champagne-strong);
    font-size:24px;
}

.detail-offer-price{
    display:grid;
    gap:6px;
    margin:18px 0 8px;
}

.detail-offer-price span{
    width:max-content;
    color:rgba(247,247,244,0.52);
    font-size:20px;
    text-decoration:line-through;
    text-decoration-thickness:2px;
    text-decoration-color:rgba(226,201,130,0.9);
}

.detail-offer-price strong{
    color:var(--champagne-strong);
    font-size:clamp(36px,4vw,56px);
    font-weight:300;
}

.detail-offer-price small{
    color:rgba(247,247,244,0.7);
    font-size:14px;
    letter-spacing:1px;
    text-transform:uppercase;
}

.car-card .price{
    margin:0 0 22px;
    padding:0;
    font-size:26px;
    color:var(--white);
}

.offer-price{
    display:grid;
    gap:4px;
    margin:0 0 22px;
}

.offer-price span{
    width:max-content;
    color:rgba(247,247,244,0.52);
    font-size:15px;
    text-decoration:line-through;
    text-decoration-thickness:2px;
    text-decoration-color:rgba(226,201,130,0.9);
}

.offer-price strong{
    color:var(--champagne-strong);
    font-size:31px;
    font-weight:400;
}

.offers-hero{
    min-height:calc(100vh - 126px);
    padding:clamp(74px,9vw,126px) clamp(20px,5vw,76px);
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,440px);
    gap:clamp(34px,7vw,90px);
    align-items:center;
    background:
        linear-gradient(90deg,rgba(5,5,5,0.97),rgba(12,13,15,0.82)),
        url("assets/hero-premium-sedan.png") center right / cover no-repeat;
    border-bottom:1px solid rgba(226,201,130,0.16);
}

.offers-hero-copy h1{
    max-width:900px;
    margin:0;
    font-size:clamp(42px,6vw,82px);
    line-height:1;
    font-weight:300;
}

.offers-hero-copy p:not(.eyebrow){
    max-width:720px;
    color:rgba(247,247,244,0.76);
    font-size:18px;
    line-height:1.62;
}

.offers-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:30px;
}

.offers-care-panel{
    padding:30px;
    border:1px solid rgba(226,201,130,0.28);
    border-radius:8px;
    background:rgba(9,10,12,0.72);
    box-shadow:var(--shadow);
    backdrop-filter:blur(18px);
}

.offers-care-panel span{
    color:var(--champagne-strong);
    font-size:12px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.offers-care-panel p{
    margin:20px 0 0;
    color:rgba(247,247,244,0.78);
    font-size:19px;
    line-height:1.58;
}

.offer-stat-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px;
    margin-top:24px;
    border:1px solid rgba(226,201,130,0.22);
    background:rgba(226,201,130,0.22);
}

.offer-stat-grid div{
    min-width:0;
    padding:16px;
    background:rgba(5,6,7,0.74);
}

.offer-stat-grid strong{
    display:block;
    color:var(--white);
    font-size:clamp(21px,2.2vw,30px);
    font-weight:300;
    line-height:1.05;
}

.offer-stat-grid small{
    display:block;
    margin-top:6px;
    color:rgba(247,247,244,0.62);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.1px;
    text-transform:uppercase;
}

.customer-care-band{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    background:#f0ece3;
    color:#111;
    border-bottom:1px solid #ddd5c8;
}

.customer-care-band div{
    min-height:126px;
    padding:26px clamp(20px,4vw,54px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-right:1px solid #ddd5c8;
}

.customer-care-band strong{
    color:#171717;
    font-size:clamp(24px,3vw,38px);
    font-weight:300;
}

.customer-care-band span{
    max-width:360px;
    margin-top:8px;
    color:#5d5d58;
    line-height:1.45;
}

.offers-availability-section{
    background:#08090a;
}

.offers-availability-section .section-heading{
    max-width:900px;
    margin-bottom:34px;
}

.offers-availability-section .section-heading p:not(.eyebrow){
    max-width:760px;
    color:rgba(247,247,244,0.72);
}

.card-actions{
    display:grid;
    grid-template-columns:.62fr 1fr;
    gap:10px;
    margin-top:auto;
}

.card-actions-offer{
    grid-template-columns:.65fr .72fr 1.25fr;
}

.card-actions .btn{
    min-height:44px;
    padding:11px 14px;
    white-space:normal;
    text-align:center;
}

.empty-state{
    grid-column:1 / -1;
    padding:clamp(42px,7vw,86px);
    background:#111214;
    border:1px solid rgba(255,255,255,0.1);
    border-radius:8px;
}

.empty-state h2{
    max-width:640px;
    margin:0;
    font-size:clamp(34px,5vw,60px);
    line-height:1;
}

.empty-state p:not(.eyebrow){
    max-width:560px;
    color:rgba(247,247,244,0.7);
    line-height:1.6;
}

.detail-layout{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(360px,0.65fr);
    min-height:calc(100vh - 126px);
}

.detail-media{
    position:relative;
    display:grid;
    grid-template-rows:minmax(520px,1fr) auto;
    gap:14px;
    padding:clamp(16px,2.5vw,28px);
    background:
        radial-gradient(circle at 50% 16%,rgba(255,255,255,0.1),transparent 42%),
        linear-gradient(145deg,#111214,#030303 68%);
}

.detail-photo-stage{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:520px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.11);
    border-radius:8px;
    background:
        linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.01)),
        #070707;
}

.detail-main-image{
    width:100%;
    height:100%;
    max-height:calc(100vh - 190px);
    min-height:520px;
    object-fit:contain;
}

.detail-caption{
    margin:0;
    padding:14px 16px;
    color:rgba(247,247,244,0.78);
    background:rgba(0,0,0,0.24);
    border:1px solid rgba(255,255,255,0.1);
    border-radius:6px;
    line-height:1.5;
}

.detail-caption:empty{
    display:none;
}

.detail-thumbs{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(96px,1fr));
    gap:10px;
    max-height:220px;
    overflow:auto;
    padding:2px;
}

.detail-thumb{
    position:relative;
    height:82px;
    padding:0;
    margin:0;
    overflow:hidden;
    cursor:pointer;
    background:#0b0b0b;
    border:1px solid rgba(255,255,255,0.16);
    border-radius:4px;
    box-shadow:0 12px 26px rgba(0,0,0,0.18);
    transition:border-color .25s ease, transform .25s ease;
}

.detail-thumb:hover,
.detail-thumb.is-active{
    transform:translateY(-2px);
    border-color:rgba(226,201,130,0.74);
}

.detail-thumb img{
    width:100%;
    height:100%;
    padding:5px;
    object-fit:contain;
    box-sizing:border-box;
}

.detail-panel{
    padding:clamp(34px,5vw,70px);
    background:#111214;
    border-left:1px solid rgba(255,255,255,0.1);
}

.detail-panel h1{
    margin:0;
    font-size:clamp(36px,4vw,62px);
    line-height:1;
}

.detail-meta{
    display:grid;
    gap:10px;
    margin:26px 0;
}

.detail-meta span{
    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,0.12);
    color:rgba(247,247,244,0.72);
    text-transform:capitalize;
}

.detail-description{
    margin:26px 0 0;
    padding:18px;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:8px;
    background:rgba(255,255,255,0.035);
}

.detail-description strong{
    color:var(--champagne-strong);
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.detail-description p{
    margin:10px 0 0;
    color:rgba(247,247,244,0.72);
    line-height:1.58;
}

.lead-form,
.premium-form{
    display:grid;
    gap:12px;
}

.booking-note{
    display:grid;
    gap:7px;
    margin:26px 0 18px;
    padding:18px;
    border:1px solid rgba(226,201,130,0.35);
    border-radius:8px;
    background:rgba(226,201,130,0.08);
}

.booking-note strong{
    color:var(--champagne-strong);
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.booking-note span{
    color:rgba(247,247,244,0.74);
    line-height:1.5;
}

.split-page{
    display:grid;
    grid-template-columns:1fr minmax(360px,520px);
    gap:clamp(32px,7vw,90px);
    padding:clamp(70px,9vw,130px) clamp(20px,5vw,76px);
    background:
        linear-gradient(90deg,#08090a 0%,#111214 58%,#e9e3d8 58%,#e9e3d8 100%);
}

.rental-hero{
    display:grid;
    grid-template-columns:minmax(0,0.95fr) minmax(380px,0.72fr);
    gap:clamp(34px,7vw,88px);
    align-items:center;
    min-height:calc(100vh - 126px);
    padding:clamp(70px,8vw,116px) clamp(20px,5vw,76px);
    background:
        radial-gradient(circle at 76% 28%,rgba(226,201,130,0.16),transparent 28%),
        linear-gradient(135deg,#050505,#15171b 58%,#050505);
}

.rental-copy h1{
    max-width:820px;
    margin:0;
    font-size:clamp(42px,6vw,82px);
    line-height:1;
    font-weight:300;
}

.rental-copy p:not(.eyebrow){
    max-width:720px;
    color:rgba(247,247,244,0.76);
    font-size:18px;
    line-height:1.62;
}

.rental-points{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:28px;
}

.rental-points span{
    padding:9px 11px;
    color:var(--champagne-strong);
    border:1px solid rgba(226,201,130,0.34);
    border-radius:4px;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.rental-form{
    max-width:620px;
}

.rental-options{
    display:grid;
    gap:10px;
}

.rental-options label{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:12px;
    align-items:start;
    padding:14px;
    border:1px solid #d5cfc3;
    border-radius:8px;
    background:#fff;
    cursor:pointer;
}

.rental-options input{
    width:18px;
    height:18px;
    margin-top:3px;
    accent-color:#b79b55;
}

.rental-options strong{
    display:block;
    color:#111;
    letter-spacing:1px;
    text-transform:uppercase;
}

.rental-options small{
    display:block;
    margin-top:5px;
    color:#5f5d57;
    line-height:1.45;
}

.rental-price-box{
    padding:18px;
    background:#111214;
    border:1px solid rgba(226,201,130,0.32);
    border-radius:8px;
}

.rental-price-box span{
    color:var(--champagne-strong);
    font-size:11px;
    font-weight:800;
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.rental-price-box strong{
    display:block;
    margin:6px 0;
    color:var(--white);
    font-size:28px;
    font-weight:300;
}

.rental-price-box p{
    margin:0;
    color:rgba(247,247,244,0.72);
    line-height:1.5;
}

.rental-rate-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}

.rental-rate-grid div,
.selected-rental-box{
    padding:15px;
    border:1px solid #d5cfc3;
    border-radius:8px;
    background:#fff;
}

.rental-rate-grid span,
.selected-rental-box span{
    display:block;
    color:#8f7438;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.rental-rate-grid strong,
.selected-rental-box strong{
    display:block;
    margin-top:5px;
    color:#111;
    font-size:20px;
    font-weight:400;
}

.rental-rate-grid small{
    display:block;
    margin-top:4px;
    color:#64615a;
}

.rental-availability-section{
    padding:clamp(70px,9vw,120px) clamp(20px,5vw,76px);
    background:#08090a;
    border-top:1px solid rgba(255,255,255,0.08);
}

.rental-availability-section .section-heading{
    max-width:860px;
}

.rental-availability-section .section-heading p:not(.eyebrow){
    max-width:760px;
    color:rgba(247,247,244,0.72);
}

.rental-availability-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(320px,420px));
    gap:26px;
    margin-top:38px;
}

.rental-seo-section{
    padding:clamp(58px,8vw,108px) clamp(20px,5vw,76px);
    background:#ebe6dc;
    color:#111;
}

.rental-location-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:30px;
}

.rental-location-grid article{
    padding:28px;
    background:#f7f3eb;
    border:1px solid #ded7ca;
    border-radius:8px;
}

.rental-location-grid span{
    color:#8f7438;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.8px;
}

.rental-location-grid h3{
    margin:22px 0 12px;
    font-size:25px;
}

.rental-location-grid p{
    color:#5d5d58;
    line-height:1.58;
}

.split-copy{
    max-width:760px;
}

.mini-steps{
    display:grid;
    gap:12px;
    margin-top:36px;
}

.mini-steps span{
    color:var(--champagne-strong);
    font-weight:700;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.premium-form{
    padding:34px;
    background:#f2ede3;
    color:#111;
    border-radius:8px;
    box-shadow:var(--shadow);
}

.premium-form h2{
    margin:0 0 12px;
    font-size:32px;
}

.premium-form input,
.premium-form textarea{
    color:#111;
    background:#fff;
    border-color:#d3cdc1;
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}

.two-wheels-hero{
    min-height:calc(100vh - 126px);
    padding:clamp(70px,9vw,130px) clamp(20px,5vw,76px);
    display:grid;
    grid-template-columns:minmax(0,0.9fr) minmax(320px,0.65fr);
    align-items:center;
    gap:clamp(34px,7vw,90px);
    background:
        radial-gradient(circle at 78% 34%,rgba(226,201,130,0.14),transparent 28%),
        linear-gradient(135deg,#050505,#15171b 58%,#050505);
}

.coming-panel{
    min-height:360px;
    padding:34px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    border:1px solid rgba(226,201,130,0.28);
    border-radius:8px;
    background:
        linear-gradient(180deg,rgba(255,255,255,0.06),rgba(255,255,255,0.02)),
        repeating-linear-gradient(135deg,rgba(255,255,255,0.04) 0 1px,transparent 1px 18px);
}

.coming-panel span{
    color:var(--champagne-strong);
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
}

.coming-panel h2{
    margin:14px 0;
    font-size:clamp(32px,4vw,54px);
    line-height:1;
}

.result-page{
    min-height:calc(100vh - 126px);
    padding:clamp(70px,9vw,130px) clamp(20px,5vw,76px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:
        linear-gradient(90deg,rgba(5,5,5,0.96),rgba(12,13,15,0.82)),
        url("assets/hero-premium-sedan.png") center right / cover no-repeat;
}

.result-page .btn{
    width:max-content;
    margin-top:22px;
}

.fine-print{
    max-width:620px;
    font-size:14px !important;
    color:rgba(247,247,244,0.55) !important;
}

.premium-form .fine-print{
    color:rgba(17,17,17,0.62) !important;
}

.home-offer-popup{
    position:fixed;
    inset:0;
    z-index:58;
    display:flex;
    align-items:flex-end;
    justify-content:flex-start;
    padding:22px;
    pointer-events:none;
    opacity:0;
    transition:opacity .28s ease;
}

.home-offer-popup::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(0,0,0,0.28),transparent 60%);
    opacity:0;
    transition:opacity .28s ease;
}

.home-offer-popup.is-visible{
    opacity:1;
    pointer-events:auto;
}

.home-offer-popup.is-visible::before{
    opacity:1;
}

.home-offer-popup-card{
    position:relative;
    width:min(430px,calc(100vw - 44px));
    padding:28px;
    border:1px solid rgba(226,201,130,0.34);
    border-radius:8px;
    background:rgba(12,13,15,0.95);
    box-shadow:0 30px 80px rgba(0,0,0,0.52);
    backdrop-filter:blur(18px);
    transform:translateY(18px) scale(.97);
    transition:transform .28s ease;
}

.home-offer-popup.is-visible .home-offer-popup-card{
    transform:translateY(0) scale(1);
}

.home-offer-popup-card h2{
    margin:0;
    color:var(--white);
    font-size:clamp(24px,2.5vw,31px);
    line-height:1.12;
    font-weight:300;
}

.home-offer-popup-card p:not(.eyebrow){
    color:rgba(247,247,244,0.72);
    line-height:1.58;
}

.home-offer-popup-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:20px;
}

.home-offer-close{
    position:absolute;
    top:12px;
    right:12px;
    width:34px;
    height:34px;
    border:1px solid rgba(255,255,255,0.16);
    border-radius:50%;
    color:var(--white);
    background:rgba(255,255,255,0.04);
    cursor:pointer;
    font-size:21px;
    line-height:1;
}

/* AI chat */
.floating-contact{
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:60;
    display:flex;
    align-items:flex-end;
    gap:12px;
}

.ai-chat{
    position:relative;
}

.ai-chat-invite{
    position:absolute;
    right:0;
    bottom:74px;
    width:max-content;
    max-width:210px;
    padding:9px 12px;
    color:#090909;
    background:linear-gradient(135deg,#f3e4ae,#c9b27d);
    border-radius:6px;
    box-shadow:0 18px 42px rgba(0,0,0,0.34);
    font-size:12px;
    font-weight:900;
    letter-spacing:1px;
    text-transform:uppercase;
    opacity:0;
    pointer-events:none;
    transform:translateY(8px) scale(.96);
    transition:opacity .28s ease, transform .28s ease;
}

.ai-chat-invite::after{
    content:"";
    position:absolute;
    right:18px;
    bottom:-7px;
    width:14px;
    height:14px;
    background:#c9b27d;
    transform:rotate(45deg);
}

.whatsapp-float{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:62px;
    height:62px;
    border:1px solid rgba(37,211,102,0.5);
    border-radius:50%;
    color:#fff;
    background:linear-gradient(135deg,#128c4b,#25d366);
    box-shadow:0 18px 40px rgba(0,0,0,0.34);
    font-size:13px;
    font-weight:900;
    letter-spacing:1px;
    transition:transform .25s ease, box-shadow .25s ease;
}

.whatsapp-float:hover{
    transform:translateY(-3px) scale(1.03);
    box-shadow:0 24px 52px rgba(0,0,0,0.42);
}

.ai-chat-toggle{
    position:relative;
    width:62px;
    height:62px;
    border:1px solid rgba(226,201,130,0.55);
    border-radius:50%;
    color:#070707;
    background:linear-gradient(135deg,#b79b55,#f3e4ae);
    box-shadow:0 18px 40px rgba(0,0,0,0.34);
    cursor:pointer;
    font-weight:800;
    letter-spacing:1px;
    transition:transform .25s ease, box-shadow .25s ease;
}

.ai-chat-toggle::before,
.ai-chat-toggle::after{
    content:"";
    position:absolute;
    inset:-7px;
    border:1px solid rgba(226,201,130,0.42);
    border-radius:50%;
    opacity:0;
    transform:scale(.82);
}

.ai-chat-toggle::after{
    inset:-13px;
    border-color:rgba(226,201,130,0.22);
}

.ai-chat-dot{
    position:absolute;
    top:7px;
    right:8px;
    width:10px;
    height:10px;
    border:2px solid #070707;
    border-radius:50%;
    background:#35d07f;
    box-shadow:0 0 0 0 rgba(53,208,127,0.44);
}

.ai-chat.is-inviting .ai-chat-invite{
    opacity:1;
    transform:translateY(0) scale(1);
}

.ai-chat.is-inviting .ai-chat-toggle{
    animation:chatNudge 2.4s ease-in-out infinite;
}

.ai-chat.is-inviting .ai-chat-toggle::before{
    animation:chatPulse 1.8s ease-out infinite;
}

.ai-chat.is-inviting .ai-chat-toggle::after{
    animation:chatPulse 1.8s ease-out .45s infinite;
}

.ai-chat.is-inviting .ai-chat-dot{
    animation:chatDot 1.4s ease-out infinite;
}

.ai-chat-toggle:hover{
    transform:translateY(-3px) scale(1.03);
    box-shadow:0 24px 52px rgba(0,0,0,0.42);
}

.ai-chat-panel{
    position:absolute;
    right:0;
    bottom:76px;
    width:min(390px,calc(100vw - 28px));
    max-height:min(620px,calc(100vh - 150px));
    display:grid;
    grid-template-rows:auto 1fr auto;
    overflow:hidden;
    border:1px solid rgba(226,201,130,0.28);
    border-radius:8px;
    background:#0f1012;
    box-shadow:0 28px 70px rgba(0,0,0,0.5);
    opacity:0;
    pointer-events:none;
    transform:translateY(14px) scale(.97);
    transition:opacity .22s ease, transform .22s ease;
}

.ai-chat.is-open .ai-chat-panel{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0) scale(1);
}

.ai-chat-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    padding:18px;
    border-bottom:1px solid rgba(255,255,255,0.09);
}

.ai-chat-head strong{
    display:block;
    color:var(--white);
}

.ai-chat-head span{
    color:rgba(247,247,244,0.58);
    font-size:13px;
}

.ai-chat-close{
    width:32px;
    height:32px;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:50%;
    color:var(--white);
    background:rgba(255,255,255,0.04);
    cursor:pointer;
    font-size:22px;
    line-height:1;
}

.ai-chat-messages{
    min-height:260px;
    max-height:390px;
    overflow:auto;
    padding:16px;
}

.ai-message{
    width:fit-content;
    max-width:92%;
    margin-bottom:10px;
    padding:11px 13px;
    border-radius:8px;
    white-space:pre-line;
    line-height:1.45;
    font-size:14px;
}

.ai-message-bot{
    color:rgba(247,247,244,0.86);
    background:#181a1e;
    border:1px solid rgba(255,255,255,0.08);
}

.ai-message-user{
    margin-left:auto;
    color:#090909;
    background:#e4cf91;
}

.ai-chat-form{
    display:grid;
    grid-template-columns:1fr auto;
    gap:8px;
    padding:14px;
    border-top:1px solid rgba(255,255,255,0.09);
}

.ai-chat-form input{
    min-height:44px;
}

.ai-chat-form button{
    border:0;
    border-radius:3px;
    padding:0 15px;
    color:#090909;
    background:linear-gradient(135deg,#b79b55,#f3e4ae);
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
    cursor:pointer;
}

/* Blog */
.blog-list{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    padding:clamp(42px,6vw,82px) clamp(20px,5vw,76px);
    background:#ebe6dc;
    color:#111;
}

.blog-card{
    min-height:360px;
    padding:30px;
    display:flex;
    flex-direction:column;
    border:1px solid rgba(17,17,17,0.12);
    border-radius:8px;
    background:rgba(255,255,255,0.48);
    transition:transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.blog-card:hover{
    transform:translateY(-8px);
    background:rgba(255,255,255,0.7);
    box-shadow:0 24px 46px rgba(42,38,29,0.14);
}

.blog-card span{
    color:#8f7438;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.blog-card h2{
    margin:48px 0 16px;
    font-size:clamp(26px,3vw,38px);
    line-height:1.05;
}

.blog-card p{
    color:#5d5d58;
    line-height:1.58;
}

.blog-card .btn{
    width:max-content;
    margin-top:auto;
}

.blog-availability-section{
    padding:clamp(46px,6vw,86px) clamp(20px,5vw,76px);
    background:#08090a;
}

.blog-availability-section .section-heading{
    max-width:840px;
    margin-bottom:28px;
}

.blog-availability-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(320px,420px));
    gap:25px;
}

.article-page{
    max-width:940px;
    margin:0 auto;
    padding:clamp(62px,8vw,118px) 20px;
}

.article-page h1{
    margin:0;
    font-size:clamp(42px,6vw,82px);
    line-height:1;
}

.article-lead{
    color:rgba(247,247,244,0.78);
    font-size:21px;
    line-height:1.58;
}

.article-page h2{
    margin:46px 0 12px;
    color:var(--champagne-strong);
    font-size:28px;
    font-weight:700;
}

.article-page p{
    color:rgba(247,247,244,0.76);
    font-size:18px;
    line-height:1.68;
}

.article-page .btn{
    margin-top:28px;
}

.admin-page{
    padding:clamp(34px,6vw,80px) clamp(20px,5vw,76px);
}

.admin-dashboard-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:28px;
}

.admin-dashboard-head h1{
    margin:0;
    color:var(--white);
    font-size:clamp(38px,5vw,66px);
    line-height:1;
}

.admin-dashboard-head p:not(.eyebrow){
    max-width:620px;
    color:rgba(247,247,244,0.7);
}

.admin-dashboard-actions,
.admin-vehicle-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:flex-end;
}

.admin-vehicle-list{
    display:grid;
    gap:14px;
}

.admin-vehicle-row{
    display:grid;
    grid-template-columns:180px minmax(0,1fr) auto;
    align-items:center;
    gap:22px;
    padding:14px;
    background:linear-gradient(135deg,#141518,#0d0e10);
    border:1px solid rgba(255,255,255,0.1);
    border-radius:8px;
}

.admin-vehicle-cover{
    display:block;
    aspect-ratio:16 / 10;
    overflow:hidden;
    background:#050505;
    border-radius:6px;
    border:1px solid rgba(255,255,255,0.1);
}

.admin-vehicle-cover img{
    width:100%;
    height:100%;
    padding:8px;
    object-fit:contain;
    box-sizing:border-box;
}

.admin-vehicle-info span{
    color:var(--champagne-strong);
    font-size:11px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.admin-vehicle-info h2{
    margin:7px 0;
    color:var(--white);
    font-size:26px;
}

.admin-vehicle-info p{
    margin:0;
    color:rgba(247,247,244,0.72);
}

.admin-vehicle-tech{
    margin-top:8px !important;
    color:var(--champagne-strong) !important;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
}

.admin-vehicle-offer{
    margin-top:8px !important;
    color:#f4e8bf !important;
    font-size:15px;
    font-weight:800;
}

.btn.danger{
    border-color:rgba(150,48,48,0.55);
    color:#ffc9c9;
}

.admin-form{
    max-width:760px;
    margin-top:22px;
}

.admin-form-note{
    display:grid;
    gap:8px;
    padding:16px;
    border:1px solid rgba(226,201,130,0.32);
    border-radius:8px;
    background:rgba(226,201,130,0.08);
}

.admin-form-note strong{
    color:var(--champagne-strong);
    font-size:12px;
    font-weight:800;
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.admin-form-note span{
    color:rgba(247,247,244,0.72);
    line-height:1.5;
}

.admin-check{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:48px;
    padding:13px;
    border:1px solid rgba(226,201,130,0.32);
    border-radius:8px;
    background:rgba(255,255,255,0.04);
    cursor:pointer;
}

.admin-check input{
    width:18px;
    min-height:18px;
    height:18px;
    accent-color:#c9b27d;
}

.admin-check span{
    color:rgba(247,247,244,0.82);
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
}

.admin-success-message{
    margin-top:18px !important;
    color:var(--champagne-strong) !important;
    font-weight:800;
}

.admin-offer-row{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:20px;
    padding:18px;
    background:linear-gradient(135deg,#141518,#0d0e10);
    border:1px solid rgba(226,201,130,0.18);
    border-radius:8px;
}

.admin-offer-form{
    display:grid;
    gap:14px;
}

.admin-offer-title span{
    color:var(--champagne-strong);
    font-size:12px;
    font-weight:800;
    letter-spacing:1.3px;
    text-transform:uppercase;
}

.admin-offer-title h2{
    margin:6px 0 8px;
    color:var(--white);
    font-size:24px;
    line-height:1.1;
}

.admin-offer-title p{
    margin:0;
    color:rgba(247,247,244,0.7);
}

.admin-offer-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.admin-publish-panel{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    max-width:960px;
    margin-top:28px;
    padding:22px;
    background:linear-gradient(135deg,#141518,#0d0e10);
    border:1px solid rgba(226,201,130,0.22);
    border-radius:8px;
}

.admin-publish-panel h3{
    margin:4px 0 8px;
    color:var(--white);
    font-size:24px;
    font-weight:400;
}

.admin-publish-panel p:not(.eyebrow){
    margin:0;
    color:rgba(247,247,244,0.72);
}

.admin-publish-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:flex-end;
}

.admin-photo-guide{
    max-width:960px;
    margin-top:24px;
}

.admin-photo-guide h3{
    margin:4px 0 8px;
    color:var(--white);
    font-size:24px;
}

.admin-photo-guide p:not(.eyebrow){
    max-width:740px;
    margin:0;
    color:rgba(247,247,244,0.72);
    line-height:1.55;
}

.admin-save-status{
    display:inline-flex;
    margin-top:14px;
    padding:7px 10px;
    color:#080808;
    background:linear-gradient(120deg,#b79b55,#f3e4ae);
    border-radius:3px;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.admin-save-status[data-state="saving"]{
    color:rgba(247,247,244,0.84);
    background:#24262b;
}

.admin-save-status[data-state="error"]{
    color:#ffd0d0;
    background:#542020;
}

.admin-gallery{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:16px;
    margin-top:28px;
}

.admin-photo-card{
    overflow:hidden;
    cursor:grab;
    background:linear-gradient(180deg,#151619,#101113);
    border:1px solid rgba(255,255,255,0.12);
    border-radius:8px;
    transition:border-color .2s ease, box-shadow .2s ease, opacity .2s ease, transform .2s ease;
}

.admin-photo-card:active{
    cursor:grabbing;
}

.admin-photo-card.is-dragging{
    opacity:.52;
    transform:scale(.985);
    border-color:rgba(226,201,130,0.9);
    box-shadow:0 24px 52px rgba(0,0,0,0.36);
}

.admin-photo-card.is-cover{
    border-color:rgba(226,201,130,0.72);
    box-shadow:0 18px 44px rgba(0,0,0,0.28);
}

.admin-photo-frame{
    position:relative;
    aspect-ratio:16 / 10;
    background:
        radial-gradient(circle at 50% 20%,rgba(255,255,255,0.08),transparent 40%),
        #050505;
}

.admin-photo-frame img{
    width:100%;
    height:100%;
    padding:8px;
    object-fit:contain;
    box-sizing:border-box;
}

.admin-photo-index,
.admin-cover-badge{
    position:absolute;
    z-index:2;
    padding:6px 8px;
    border-radius:3px;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.admin-photo-index{
    left:10px;
    top:10px;
    color:#050505;
    background:var(--champagne-strong);
}

.admin-cover-badge{
    right:10px;
    top:10px;
    color:#050505;
    background:linear-gradient(120deg,#b79b55,#f3e4ae);
}

.admin-drag-handle{
    position:absolute;
    left:10px;
    bottom:10px;
    z-index:2;
    padding:6px 8px;
    color:rgba(247,247,244,0.82);
    background:rgba(0,0,0,0.54);
    border:1px solid rgba(255,255,255,0.14);
    border-radius:3px;
    font-size:10px;
    font-weight:800;
    letter-spacing:1.1px;
    text-transform:uppercase;
    pointer-events:none;
}

.admin-photo-tools{
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:8px;
    padding:10px;
    cursor:auto;
}

.admin-photo-tools form{
    margin:0;
}

.admin-caption-form{
    grid-column:1 / -1;
    display:grid;
    gap:8px;
}

.admin-caption-form textarea{
    width:100%;
    min-height:70px;
    resize:vertical;
    color:#111;
    background:#f4f0e7;
    border:1px solid rgba(255,255,255,0.18);
    border-radius:4px;
    padding:10px;
    font-size:13px;
    line-height:1.45;
}

.mini-btn{
    width:100%;
    min-height:34px;
    padding:8px 10px;
    cursor:pointer;
    color:rgba(247,247,244,0.82);
    background:#0c0d0f;
    border:1px solid rgba(255,255,255,0.16);
    border-radius:4px;
    font-size:11px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
    transition:background .2s ease, border-color .2s ease, color .2s ease;
}

.mini-btn.primary{
    color:#080808;
    background:linear-gradient(120deg,#b79b55,#f3e4ae);
    border-color:transparent;
}

.mini-btn:hover{
    border-color:rgba(226,201,130,0.56);
    color:var(--white);
}

.mini-btn.primary:hover{
    color:#080808;
}

.mini-btn:disabled{
    cursor:not-allowed;
    opacity:.45;
}

.upload-box{
    display:grid;
    gap:10px;
    padding:18px;
    border:1px dashed rgba(17,17,17,0.28);
    border-radius:8px;
    background:rgba(255,255,255,0.62);
}

.upload-box span{
    color:#111;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.upload-box input{
    color:#111;
    background:#fff;
}

.admin-errors{
    padding:12px 14px;
    border:1px solid rgba(130,38,38,0.28);
    border-radius:6px;
    background:rgba(130,38,38,0.08);
    color:#6f1f1f;
}

.admin-errors p{
    margin:0 0 6px;
}

.admin-errors p:last-child{
    margin-bottom:0;
}

/* Existing catalogue compatibility */
.grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
    padding:40px;
}

.card{
    background:#121212;
    border:1px solid #232323;
    border-radius:8px;
    overflow:hidden;
    transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.card:hover{
    transform:translateY(-6px);
    border-color:rgba(226,201,130,0.46);
    box-shadow:0 18px 44px rgba(0,0,0,0.26);
}

.card img{
    width:100%;
    height:220px;
    object-fit:cover;
    background:#1b1b1b;
}

.car-card .car-media img{
    height:100%;
    padding:12px;
    object-fit:contain;
    background:transparent;
}

.car-card h3,
.car-card p{
    padding:0;
}

.card h3{
    padding:16px 16px 4px;
    margin:0;
    font-size:22px;
    font-weight:300;
}

.card p{
    padding:0 16px 16px;
    margin:0;
    color:var(--soft);
}

.card .btn,
.card button{
    margin:0 16px 18px;
}

.car-card .card-body h3,
.car-card .card-body p{
    padding:0;
}

.car-card .card-actions .btn{
    margin:0;
}

h1,
h2,
h3{
    font-weight:300;
}

.section{
    padding:70px 40px;
}

.section-title{
    text-align:center;
    font-size:36px;
    margin-bottom:40px;
}

.locations,
.contacts{
    display:flex;
    gap:30px;
    justify-content:center;
    flex-wrap:wrap;
}

.location-card,
.contact-card{
    background:#121212;
    border:1px solid #1f1f1f;
    padding:30px;
    width:300px;
    text-align:center;
    border-radius:8px;
}

/* Motion */
.reveal-up{
    animation:revealUp .85s cubic-bezier(.16,1,.3,1) both;
}

.quick-search.reveal-up{
    animation-delay:.18s;
}

.feature-card:nth-child(2),
.process-item:nth-child(2){
    animation-delay:.08s;
}

.feature-card:nth-child(3),
.process-item:nth-child(3){
    animation-delay:.16s;
}

@keyframes revealUp{
    from{
        opacity:0;
        transform:translateY(26px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes heroDrift{
    from{
        transform:scale(1.04) translateX(0);
    }
    to{
        transform:scale(1.08) translateX(-18px);
    }
}

@keyframes chatPulse{
    0%{
        opacity:.72;
        transform:scale(.82);
    }
    100%{
        opacity:0;
        transform:scale(1.28);
    }
}

@keyframes chatNudge{
    0%, 78%, 100%{
        transform:translateY(0) scale(1);
    }
    84%{
        transform:translateY(-5px) scale(1.04);
    }
    90%{
        transform:translateY(0) scale(1);
    }
}

@keyframes chatDot{
    0%{
        box-shadow:0 0 0 0 rgba(53,208,127,0.46);
    }
    100%{
        box-shadow:0 0 0 9px rgba(53,208,127,0);
    }
}

@media (prefers-reduced-motion:reduce){
    *,
    *::before,
    *::after{
        animation-duration:.001ms !important;
        animation-iteration-count:1 !important;
        scroll-behavior:auto !important;
        transition-duration:.001ms !important;
    }
}

@media(max-width:980px){
    .blog-list{
        grid-template-columns:1fr;
    }

    .quick-search,
    .feature-grid,
    .home-seo-grid,
    .home-offers-callout,
    .editorial-band,
    .sell-cta,
    .offers-hero,
    .offer-stat-grid,
    .customer-care-band,
    .site-footer,
    .catalog-search,
    .detail-layout,
    .split-page,
    .two-wheels-hero,
    .rental-home-band,
    .rental-hero,
    .rental-rate-grid,
    .rental-location-grid{
        grid-template-columns:1fr;
    }

    .quick-search .btn{
        min-height:56px;
    }

    .trust-strip{
        grid-template-columns:1fr;
    }

    .trust-strip div{
        border-right:0;
        border-bottom:1px solid var(--paper-dark);
    }

    .detail-media{
        grid-template-rows:auto auto;
    }

    .detail-photo-stage,
    .detail-main-image{
        min-height:340px;
    }

    .detail-thumbs{
        grid-template-columns:repeat(3,1fr);
        padding:14px;
        background:#08090a;
    }

    .detail-thumb{
        height:74px;
    }

    .split-page{
        background:#090a0b;
    }

    .rental-home-band{
        align-items:flex-start;
    }

    .admin-dashboard-head,
    .admin-vehicle-row,
    .admin-offer-row,
    .admin-publish-panel{
        grid-template-columns:1fr;
        flex-direction:column;
        align-items:flex-start;
    }

    .admin-vehicle-row{
        display:grid;
    }

    .admin-vehicle-actions,
    .admin-dashboard-actions,
    .admin-publish-actions{
        width:100%;
        justify-content:flex-start;
    }
}

@media(max-width:768px){
    .site-header,
    header{
        position:sticky;
        flex-direction:column;
        align-items:flex-start;
        min-height:auto;
        padding:16px 20px 18px;
    }

    .logo{
        padding-bottom:44px;
    }

    .main-nav,
    header > div:last-child{
        width:100%;
        flex-wrap:nowrap;
        overflow-x:auto;
        padding-bottom:4px;
        margin-top:0;
        justify-content:flex-start;
        scrollbar-width:none;
    }

    .main-nav::-webkit-scrollbar{
        display:none;
    }

    .logo-signature{
        left:62px;
        top:52px;
        width:138px;
    }

    .logo-small{
        left:calc(100% + 6px);
        top:19px;
    }

    .main-nav a{
        padding-left:0;
    }

    .showcase-hero{
        min-height:auto;
        padding-top:72px;
    }

    .hero-media{
        background:
            linear-gradient(180deg,rgba(0,0,0,0.58),rgba(0,0,0,0.96) 66%),
            url("assets/hero-premium-sedan.png") center top / cover no-repeat;
    }

    .hero-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .hero h1,
    .showcase-hero h1,
    .compact-hero h1,
    .result-page h1,
    .split-copy h1,
    .rental-copy h1,
    .two-wheels-hero h1,
    .article-page h1{
        font-size:clamp(36px,12vw,54px);
    }

    .quick-search{
        margin-top:18px;
    }

    .quick-search label{
        padding:14px;
    }

    .catalog-section .grid{
        grid-template-columns:1fr;
    }

    .rental-availability-grid{
        grid-template-columns:1fr;
    }

    .catalog-toolbar,
    .catalog-section,
    .page-hero,
    .detail-panel,
    .split-page,
    .home-offers-callout,
    .home-seo-section,
    .offers-hero,
    .offers-availability-section,
    .rental-hero,
    .rental-availability-section,
    .rental-seo-section,
    .two-wheels-hero,
    .result-page{
        padding-left:20px;
        padding-right:20px;
    }

    .form-row{
        grid-template-columns:1fr;
    }

    .card-actions{
        grid-template-columns:1fr;
    }

    .premium-form{
        padding:22px;
    }

    .admin-vehicle-row{
        grid-template-columns:1fr;
    }

    .admin-vehicle-cover{
        width:100%;
    }

    .admin-vehicle-actions .btn,
    .admin-dashboard-actions .btn,
    .admin-publish-actions .btn{
        width:100%;
        justify-content:center;
    }

    .admin-photo-tools{
        grid-template-columns:1fr;
    }

    .blog-card{
        min-height:auto;
    }

    .blog-card h2{
        margin-top:34px;
    }

    .article-page p,
    .page-hero p:not(.eyebrow),
    .split-copy p,
    .two-wheels-hero p,
    .result-page p{
        font-size:16px;
    }

    .floating-contact{
        right:14px;
        bottom:14px;
        gap:10px;
    }

    .ai-chat-toggle,
    .whatsapp-float{
        width:56px;
        height:56px;
    }

    .ai-chat-panel{
        right:-4px;
        bottom:68px;
        width:calc(100vw - 20px);
        max-height:calc(100vh - 120px);
    }

    .ai-chat-messages{
        min-height:220px;
        max-height:calc(100vh - 290px);
    }

    .process-item{
        grid-template-columns:1fr;
        gap:10px;
    }

    .locations,
    .contacts{
        flex-direction:column;
        align-items:center;
    }
}
