:root{
  --black:#080808; --black2:#111; --gold:#c8a45d; --gold2:#e2c98e;
  --white:#fff; --cream:#f7f5f0; --grey:#a7a7a7; --line:rgba(200,164,93,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:#151515;font-family:Montserrat,Arial,sans-serif;font-weight:400;line-height:1.7}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.site-header{height:94px;position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(7,7,7,.92);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line)}
.brand img{width:145px;height:76px;object-fit:contain;mix-blend-mode:screen}
.nav{display:flex;align-items:center;gap:30px;color:#eee;font-size:11px;letter-spacing:2px;text-transform:uppercase}
.nav a{opacity:.86;transition:.25s}
.nav a:hover{color:var(--gold2);opacity:1}
.nav-cta{border:1px solid var(--gold);padding:12px 17px!important;color:var(--gold2)!important}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:27px}
.hero{min-height:100vh;position:relative;background:#000;color:#fff;display:flex;align-items:center;overflow:hidden}
.hero-image{position:absolute;inset:0;background-image:url('couple-1.jpg');background-size:cover;background-position:center 38%;transform:scale(1.02)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.26) 60%,rgba(0,0,0,.42)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 55%)}
.hero-content{position:relative;z-index:2;max-width:730px;padding:150px 7vw 100px}
.eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:#ddd;margin:0 0 18px}
.eyebrow.gold{color:var(--gold)}
.hero h1,.section-heading h2,.feature-copy h2,.car-copy h2,.quote-banner h2,.about h2,.contact h2{font-family:"Cormorant Garamond",serif;font-weight:500;line-height:.92;margin:0}
.hero h1{font-size:clamp(72px,10vw,150px);letter-spacing:-3px}
em{color:var(--gold);font-style:italic}
.hero-copy{max-width:570px;font-size:16px;color:#e3e3e3;margin:28px 0}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;transition:.25s;border:1px solid transparent;cursor:pointer}
.button-gold{background:var(--gold);color:#090909}
.button-gold:hover{background:var(--gold2);transform:translateY(-2px)}
.button-outline{border-color:rgba(255,255,255,.55);color:white}
.button-outline:hover{border-color:var(--gold);color:var(--gold2)}
.button-dark{background:#111;color:#fff}
.hero-note{margin-top:25px;color:#ddd;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}
.scroll-hint{position:absolute;bottom:25px;left:7vw;font-size:9px;letter-spacing:3px;color:#ddd}.scroll-hint span{margin-left:12px;color:var(--gold);font-size:15px}
.section{padding:110px 7vw}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}
.section-heading h2{font-size:clamp(54px,6vw,90px)}
.intro-text{font-size:16px;color:#5c5c5c;max-width:610px}
.intro-text p{margin:0 0 18px}
.feature{display:grid;grid-template-columns:1.05fr .95fr;min-height:690px}
.feature.reverse{grid-template-columns:.95fr 1.05fr}
.feature.reverse .feature-image{order:2}
.feature-image{overflow:hidden;min-height:520px}
.feature-image img{width:100%;height:100%;object-fit:cover}
.feature-copy{padding:100px 9vw;display:flex;flex-direction:column;justify-content:center}
.feature-copy h2{font-size:clamp(62px,7vw,105px)}
.feature-copy p{color:#686868;max-width:530px}
.dark-section{background:var(--black);color:white}
.dark-section .feature-copy p{color:#b9b9b9}
.tick-list{list-style:none;padding:0;margin:20px 0 25px;color:#ddd;font-size:13px}
.tick-list li{padding:8px 0;border-bottom:1px solid var(--line)}
.tick-list li:before{content:"✦";color:var(--gold);margin-right:12px}
.price{margin:8px 0 25px}.price small{display:block;font-size:9px;letter-spacing:3px;color:#bbb}.price strong{display:block;font-family:"Cormorant Garamond",serif;font-size:58px;color:var(--gold);font-weight:500;line-height:1}
.text-link{color:var(--gold);font-size:11px;letter-spacing:2px;text-transform:uppercase}
.light-price strong{color:#111}
.car-section{display:grid;grid-template-columns:.9fr 1.1fr;min-height:700px}
.car-copy{padding:100px 7vw;display:flex;flex-direction:column;justify-content:center}
.car-copy h2{font-size:clamp(70px,7vw,110px)}
.model{font-family:"Cormorant Garamond",serif!important;color:var(--gold)!important;font-size:27px!important;margin-top:8px}
.car-image{min-height:600px;overflow:hidden}.car-image img{height:100%;width:100%;object-fit:cover}
.specs{display:flex;gap:18px;margin-top:30px}.specs div{border-top:1px solid var(--line);padding-top:13px;min-width:110px}.specs strong{font-family:"Cormorant Garamond",serif;color:var(--gold);font-size:30px;font-weight:500}.specs span{display:block;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#aaa;line-height:1.5}
.quote-banner{background:#151515;color:#fff;padding:85px 7vw;display:flex;align-items:center;justify-content:space-between;gap:30px}
.quote-banner h2{font-size:clamp(55px,6vw,85px)}
.gallery-section{background:#f2f0eb}
.centered{text-align:center;max-width:760px;margin:0 auto 55px}.centered>p:last-child{color:#777}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:340px;gap:16px;max-width:1500px;margin:auto}
.gallery-item{margin:0;overflow:hidden;background:#111;display:flex;align-items:center;justify-content:center}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}
.gallery-item img{width:100%;height:100%;object-fit:contain;transition:transform .6s;cursor:zoom-in}.gallery-item:hover img{transform:scale(1.04)}
.about{padding:115px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}
.about-logo{display:flex;justify-content:center}.about-logo img{width:min(320px,80%);mix-blend-mode:screen}
.about h2{font-size:clamp(55px,6vw,88px)}.about p{max-width:650px;color:#b7b7b7}
.social{background:#f7f5f0}.social-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:900px;margin:auto}.social-card{border:1px solid #ddd;padding:35px;display:flex;flex-direction:column;gap:5px;transition:.25s}.social-card:hover{border-color:var(--gold);transform:translateY(-3px)}.social-icon{font-size:35px;color:var(--gold);font-family:Arial}.social-card strong{font-family:"Cormorant Garamond",serif;font-size:30px;font-weight:500}.social-card span:last-child{font-size:11px;letter-spacing:1px;color:#777}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:115px 7vw}.contact h2{font-size:clamp(60px,7vw,100px)}.contact-intro>p:not(.eyebrow){color:#aaa;max-width:520px}.contact-details{margin-top:35px;display:grid;gap:18px}.contact-details a,.contact-details div{color:#eee;font-size:15px}.contact-details span{display:block;color:var(--gold);font-size:9px;letter-spacing:3px;margin-bottom:3px}
.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-content:start}.enquiry-form label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#aaa}.enquiry-form label:nth-last-of-type(1){grid-column:1/-1}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{display:block;width:100%;margin-top:7px;padding:14px;background:#141414;border:1px solid #333;color:#fff;font:inherit;font-size:13px;outline:none}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--gold)}.full{grid-column:1/-1}.form-note{grid-column:1/-1;color:#777;font-size:9px;margin:0}
footer{background:#050505;color:#888;text-align:center;padding:60px 7vw;border-top:1px solid var(--line)}footer img{width:130px;height:80px;object-fit:contain;margin:0 auto 15px;mix-blend-mode:screen}footer p{font-size:10px;letter-spacing:1px}footer small{display:block;margin-top:25px;color:#555}.footer-links{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;font-size:10px;letter-spacing:1px}.footer-links a:hover{color:var(--gold)}
@media(max-width:850px){
  .site-header{height:76px;padding:0 5vw}.brand img{width:120px;height:64px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#090909;flex-direction:column;align-items:stretch;gap:0;padding:10px 6vw 20px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:13px 0}.nav-cta{text-align:center;margin-top:5px}
  .hero-content{padding:125px 7vw 90px}.hero h1{font-size:clamp(65px,18vw,105px)}.hero-copy{font-size:14px}.hero-note{line-height:1.7}
  .intro,.feature,.feature.reverse,.car-section,.about,.contact{grid-template-columns:1fr}.intro{gap:30px}.feature.reverse .feature-image{order:0}.feature-image,.car-image{min-height:430px}.feature-copy,.car-copy{padding:70px 7vw}.car-image{order:2}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:300px}.gallery-item.wide{grid-column:span 2}.social-cards{grid-template-columns:1fr}.quote-banner{display:block;padding:65px 7vw}.quote-banner .button{margin-top:25px}.contact{gap:50px}.enquiry-form{grid-template-columns:1fr}.enquiry-form label:nth-last-of-type(1),.full{grid-column:1}.specs{flex-wrap:wrap}
}
@media(max-width:500px){.section{padding:80px 6vw}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:360px}.gallery-item.wide{grid-column:auto}.gallery-item.tall{grid-row:auto}.hero-actions .button{width:100%}.feature-copy h2,.car-copy h2{font-size:64px}}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.revealed{opacity:1;transform:none}

/* Reviews */
.reviews-section { background: #f7f4ee; color: #171717; }
.reviews-intro { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.review-summary { display: inline-flex; align-items: center; gap: 12px; margin-top: 14px; padding: 10px 18px; border: 1px solid rgba(184,145,75,.45); border-radius: 999px; font-size: .9rem; letter-spacing: .04em; }
.review-summary strong { color: #9d7635; font-size: 1.05rem; }
.reviews-grid { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.review-card { background: #fff; border: 1px solid rgba(0,0,0,.08); padding: 28px; box-shadow: 0 10px 30px rgba(0,0,0,.05); }
.review-stars { color: #b58a42; letter-spacing: 2px; font-size: .95rem; margin-bottom: 12px; }
.review-card h3 { margin: 0 0 5px; font-family: 'Montserrat', sans-serif; font-size: 1rem; font-weight: 600; }
.review-date { display: block; color: #777; font-size: .78rem; margin-bottom: 16px; }
.review-card p { margin: 0; line-height: 1.7; color: #444; font-size: .95rem; }
.review-card .review-service { margin-top: 15px; color: #9d7635; font-size: .72rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
@media (max-width: 760px) { .reviews-grid { grid-template-columns: 1fr; } .review-card { padding: 23px; } }
