:root { --gold:#d9aa24; --gold-bright:#f0c63c; --black:#090806; --ink:#1d1d1f; --muted:#6f7177; --cream:#fbfaf7; --line:#e8e0cf; --white:#fff; --shadow:0 20px 60px rgba(0,0,0,.2); }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; color:var(--ink); background:var(--cream); font-family:Manrope,Arial,sans-serif; line-height:1.55; }
    img { display:block; max-width:100%; }
    a { color:inherit; text-decoration:none; }
    .container { width:min(1180px, calc(100% - 42px)); margin:0 auto; }
    .topbar { position:absolute; z-index:5; top:0; left:0; right:0; padding:22px 0; color:var(--white); }
    .nav { display:flex; align-items:center; justify-content:space-between; gap:20px; }
    .brand { display:inline-flex; align-items:center; color:var(--gold-bright); text-shadow:0 3px 20px rgba(0,0,0,.45); }
    .logo-brand img { width:190px; height:auto; max-height:82px; object-fit:contain; filter:drop-shadow(0 8px 20px rgba(0,0,0,.45)); }
    .nav-actions { display:flex; align-items:center; gap:14px; font-weight:700; }
    .phone-link { color:var(--white); text-shadow:0 2px 14px rgba(0,0,0,.4); }
    .btn { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 22px; border:0; border-radius:4px; background:var(--gold); color:#17130a; font:800 15px/1 Manrope,Arial,sans-serif; cursor:pointer; box-shadow:0 12px 30px rgba(217,170,36,.25); transition:transform .2s ease, background .2s ease; }
    .btn:hover { transform:translateY(-1px); background:var(--gold-bright); }
    .btn.secondary { background:rgba(255,255,255,.13); color:var(--white); border:1px solid rgba(255,255,255,.28); box-shadow:none; }
    .hero { position:relative; min-height:760px; padding:110px 0 72px; color:var(--white); overflow:hidden; background-image:linear-gradient(90deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.58) 42%,rgba(0,0,0,.72) 100%), url("assets/hero_background.webp"); background-position:center, center; background-size:auto, cover; background-repeat:no-repeat, no-repeat; }
    .hero::after { content:""; position:absolute; inset:auto 0 0; height:34%; background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.75)); opacity:.78; filter:saturate(.8) brightness(.65); }
    .hero-grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1fr) 520px; gap:62px; align-items:start; }
    .hero-copy { padding-top:48px; max-width:620px; }
    .eyebrow { margin:0 0 12px; color:var(--gold-bright); font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
    h1,h2,h3 { margin:0; line-height:1.08; }
    h1 { color:var(--gold-bright); font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(44px,6vw,82px); font-weight:700; max-width:640px; text-shadow:0 4px 22px rgba(0,0,0,.45); }
    .hero-sub { max-width:620px; margin:22px 0 26px; color:#fff8e4; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(17px,2vw,23px); line-height:1.35; text-shadow:0 3px 18px rgba(0,0,0,.6); }
    .hero-list { display:grid; gap:8px; margin:0 0 28px; padding:0; list-style:none; color:var(--white); font-size:18px; font-weight:700; text-shadow:0 3px 15px rgba(0,0,0,.55); }
    .hero-list li { display:flex; align-items:center; gap:10px; }
    .hero-list li::before { content:"✓"; display:grid; place-items:center; flex:0 0 21px; width:21px; height:21px; border-radius:50%; color:#231a05; background:var(--gold-bright); font-size:14px; font-weight:900; }
    .hero-buttons { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
    .quote-card { margin-top:6px; padding:24px 18px 28px; border-radius:6px; color:#333; background:rgba(242,242,242,.78); box-shadow:var(--shadow); backdrop-filter:blur(5px); border:1px solid rgba(255,255,255,.45); }
    .quote-card h2 { margin-bottom:5px; color:#141414; font-size:16px; font-weight:900; text-align:center; text-transform:uppercase; letter-spacing:.04em; }
    .quote-card p { margin:0 0 12px; color:#333; font-size:12px; text-align:center; font-weight:700; }
    .quote-form { display:grid; grid-template-columns:1fr 1fr; gap:10px 14px; }
    .field,.field-wide { width:100%; }
    .field-wide,.consent,.quote-submit,.quote-note { grid-column:1 / -1; }
    input,select { width:100%; height:38px; border:1px solid rgba(0,0,0,.13); border-radius:0; background:rgba(255,255,255,.92); color:#222; padding:0 12px; font:600 13px/1 Manrope,Arial,sans-serif; outline:none; }
    input::placeholder { color:#777; }
    select { color:#6d6d6d; appearance:auto; }
    .captcha-field { display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:center; color:#262626; font-size:13px; font-weight:800; }
    .captcha-question { white-space:nowrap; }
    .captcha-field input { height:38px; }
    .honeypot { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
    .form-response { display:grid; min-height:100vh; place-items:center; padding:40px 20px; background:#10100e; color:var(--white); text-align:center; }
    .form-response > div { max-width:620px; padding:42px; border:1px solid rgba(217,170,36,.34); border-radius:8px; background:rgba(255,255,255,.07); box-shadow:var(--shadow); }
    .form-response h1 { margin-bottom:14px; color:var(--gold-bright); font-size:clamp(32px,5vw,52px); }
    .form-response p { margin:0 0 24px; color:#f8edcf; font-size:18px; }
    .consent { display:grid; grid-template-columns:17px 1fr; gap:8px; align-items:start; margin-top:2px; color:#4d4d4d; font-size:11px; font-weight:600; line-height:1.45; }
    .consent input { width:15px; height:15px; margin:1px 0 0; padding:0; }
    .quote-submit { height:46px; margin-top:5px; border-radius:24px; color:var(--white); background:var(--gold); font-size:20px; text-transform:uppercase; box-shadow:none; }
    .quote-note { color:#2d2d2d; font-size:12px; font-weight:800; text-align:center; text-decoration:underline; }
    .strip { position:relative; z-index:2; margin-top:38px; padding:18px 0 0; color:#f8edcf; border-top:1px solid rgba(255,255,255,.16); font-size:14px; font-weight:800; }
    .strip-inner { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 24px; }
    section { padding:82px 0; }
    .reviews { background:var(--white); }
    .review-head { display:grid; grid-template-columns:1fr auto; gap:24px; align-items:end; margin-bottom:34px; }
    .section-kicker { color:var(--gold); font-weight:900; text-transform:uppercase; letter-spacing:.08em; font-size:13px; }
    .section-title { margin-top:8px; color:#1f2328; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(36px,4.5vw,58px); font-weight:700; }
    .rating { text-align:right; }
    .rating strong { display:block; color:#242424; font-size:38px; line-height:1; }
    .stars { color:#ffb400; letter-spacing:1px; font-size:20px; font-weight:900; }
    .review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
    .review-card { min-height:190px; padding:26px; border:1px solid #edf0f2; border-radius:8px; background:#fff; box-shadow:0 12px 28px rgba(31,35,40,.08); }
    .review-card .meta { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; color:#8a8f98; font-size:12px; font-weight:700; }
    .review-card p { min-height:72px; margin:0 0 24px; color:#3d4249; font-size:14px; }
    .person { display:flex; align-items:center; gap:10px; color:#737984; font-size:13px; font-weight:800; }
    .avatar { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:#a8b3c5; color:var(--white); font-size:11px; }
    .intro { position:relative; overflow:hidden; padding:96px 0; background:#10100e; }
    .intro-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:34px; align-items:stretch; }
    .intro-image { min-height:430px; border:1px solid rgba(240,198,60,.24); border-radius:8px; background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.22)), url("assets/Arrive-Relaxed-and-On-Time.webp") center / cover; box-shadow:0 24px 54px rgba(0,0,0,.34); }
    .intro-copy { display:flex; flex-direction:column; justify-content:center; margin:0; padding:54px 50px; border:1px solid rgba(217,170,36,.42); border-left:6px solid var(--gold); border-radius:8px; background:#fff; box-shadow:0 24px 54px rgba(0,0,0,.22); }
    .intro-copy h2 { margin-bottom:22px; color:#10100e; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(34px,4.6vw,56px); font-weight:700; line-height:.95; text-transform:none; }
    .intro-copy p { margin:0; color:#2a2d32; font-size:17px; font-weight:700; line-height:1.48; }
    .services { position:relative; overflow:hidden; background:linear-gradient(135deg,#f7f4ed 0%,#ffffff 46%,#ede7dc 100%); }
    .services::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(217,170,36,.12),rgba(16,16,14,0) 34%,rgba(217,170,36,.09)); pointer-events:none; }
    .services .container { position:relative; z-index:1; }
    .center { text-align:center; }
    .center .section-title { color:var(--gold); }
    .section-sub { max-width:760px; margin:14px auto 0; color:#3f444b; font-size:17px; font-weight:650; }
    .divider { height:1px; margin:30px 0 44px; background:linear-gradient(90deg,rgba(217,170,36,0),rgba(217,170,36,.55),rgba(16,16,14,.18),rgba(217,170,36,0)); }
    .service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; align-items:stretch; }
    .service-tile { position:relative; min-height:360px; overflow:hidden; border:1px solid rgba(217,170,36,.38); border-radius:8px; background:#10100e; box-shadow:0 24px 55px rgba(16,16,14,.18); }
    .service-tile::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(6,6,5,.08) 0%,rgba(6,6,5,.42) 42%,rgba(6,6,5,.9) 100%); }
    .service-photo { width:100%; height:100%; min-height:360px; object-fit:cover; filter:saturate(.78) contrast(1.12) brightness(.78); transition:transform .45s ease, filter .45s ease; }
    .service-tile:hover .service-photo { transform:scale(1.045); filter:saturate(.9) contrast(1.16) brightness(.86); }
    .service-content { position:absolute; z-index:1; left:0; right:0; bottom:0; padding:32px; color:var(--white); }
    .service-content span { display:block; margin-bottom:14px; color:var(--gold-bright); font-size:13px; font-weight:900; }
    .service-content h3 { max-width:520px; margin:0 0 12px; color:#fff7df; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(30px,3.2vw,44px); font-weight:700; line-height:1; }
    .service-content p { max-width:520px; margin:0 0 20px; color:#e8e0d4; font-size:15px; font-weight:650; line-height:1.5; }
    .service-link { display:inline-flex; align-items:center; min-height:38px; padding:0 16px; border:1px solid rgba(240,198,60,.72); border-radius:4px; color:#17130a; background:var(--gold-bright); font-size:13px; font-weight:900; text-transform:uppercase; box-shadow:0 10px 26px rgba(217,170,36,.2); }
    .fleet { background:var(--white); }
    .fleet-table { overflow:hidden; margin-top:36px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 14px 38px rgba(0,0,0,.06); }
    .fleet-row { display:grid; grid-template-columns:1.4fr .8fr 1fr; border-bottom:1px solid var(--line); }
    .fleet-row:last-child { border-bottom:0; }
    .fleet-row > div { padding:18px 22px; font-weight:700; }
    .fleet-row.head { color:var(--white); background:var(--black); text-transform:uppercase; letter-spacing:.04em; font-size:13px; }
    .cards { background:#10100e; color:var(--white); }
    .cards .section-title,.cards .section-sub { color:var(--white); }
    .why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:38px; }
    .why-card { min-height:220px; padding:28px; border:1px solid rgba(217,170,36,.28); border-radius:8px; background:rgba(255,255,255,.055); }
    .why-card b { display:block; margin-bottom:10px; color:var(--gold-bright); font-size:18px; }
    .why-card p { margin:0; color:#e6e0d4; }
    .airports { padding:0; background:var(--gold); }
    .airport-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(0,0,0,.16); }
    .airport { padding:32px 26px; background:var(--gold); text-align:center; }
    .airport strong { display:block; color:#17130a; font-size:34px; line-height:1; }
    .airport span { color:#3d310e; font-weight:700; }
    .final-cta { color:var(--white); background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.62)), url("assets/footer_section_bg.webp") center / cover; }
    .cta-box { max-width:760px; }
    .cta-box h2 { color:var(--gold-bright); font-size:clamp(34px,5vw,60px); }
    .cta-box p { margin:18px 0 26px; color:#fff7df; font-size:19px; }
    .legal-page { background:#10100e; color:#242424; }
    .legal-topbar { position:relative; background:#080807; border-bottom:1px solid rgba(217,170,36,.24); }
    .legal-hero { padding:72px 0 58px; color:var(--white); background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.62)), url("assets/footer_section_bg.webp") center / cover no-repeat; }
    .legal-hero h1 { margin-top:8px; max-width:none; color:var(--gold-bright); font-size:clamp(44px,6vw,76px); }
    .legal-hero p { margin:16px 0 0; color:#f8edcf; font-weight:700; }
    .legal-content { padding:72px 0; background:linear-gradient(135deg,#f7f4ed 0%,#ffffff 52%,#eee8dc 100%); }
    .legal-panel { max-width:940px; padding:48px; border:1px solid rgba(217,170,36,.28); border-left:6px solid var(--gold); border-radius:8px; background:#fff; box-shadow:0 24px 55px rgba(16,16,14,.14); }
    .legal-panel h2 { margin:30px 0 10px; color:#10100e; font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(28px,3vw,38px); }
    .legal-panel h2:first-child { margin-top:0; }
    .legal-panel p { margin:0 0 16px; color:#33383f; font-size:16px; font-weight:600; line-height:1.72; }
    .legal-panel a { color:#9a7415; font-weight:800; text-decoration:underline; }
    footer { padding:32px 0; color:#d7d0c2; background:#080807; font-size:14px; }
    .footer-inner { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; }
    .footer-links { display:flex; gap:18px; flex-wrap:wrap; align-items:center; }
    .footer-links a { color:#f0e4c8; font-weight:700; }
    .footer-links a:hover { color:var(--gold-bright); }
    @media (max-width:980px) { .hero{min-height:auto;padding-bottom:56px;} .hero-grid,.intro-grid{grid-template-columns:1fr;} .hero-copy{padding-top:38px;} .quote-card{max-width:620px;margin:0 auto;} .intro-image{min-height:360px;} .intro-copy{margin:0;border-radius:8px;} .review-grid,.why-grid{grid-template-columns:1fr 1fr;} }
    @media (max-width:720px) { .container{width:min(100% - 28px,1180px);} .legal-panel{padding:32px 24px;} .legal-hero{padding:54px 0 44px;} .logo-brand img{width:158px;max-height:70px;} .topbar{position:relative;background:#090806;} .nav,.nav-actions,.footer-inner{align-items:flex-start;flex-direction:column;} .review-head{grid-template-columns:1fr;} .hero{padding-top:36px;} .hero-grid{gap:34px;} .quote-form,.service-grid,.review-grid,.why-grid,.airport-strip,.fleet-row{grid-template-columns:1fr;} .rating{text-align:left;} .intro{padding:56px 0;} .intro-image{min-height:280px;} .intro-copy{padding:34px 26px;} .service-grid{gap:32px;} }
