
/*
Theme Name: Royal Limos Luxury Premium
Theme URI: https://royallimos.in/
Author: HP Websoft
Description: Cinematic luxury limousine, wedding car and chauffeur WordPress theme with Elementor compatibility.
Version: 7.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: royal-limos
*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');

:root{--wine:#25060f;--wine2:#4c1021;--burg:#711c32;--ivory:#f7f0e7;--cream:#fffaf3;--gold:#d8b36a;--ink:#251c1b;--muted:#756b66;--line:rgba(37,6,15,.12);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--shadow:0 24px 70px rgba(37,6,15,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);background:var(--cream);line-height:1.7;overflow-x:hidden}
body:before{content:"";position:fixed;inset:-20%;pointer-events:none;z-index:-2;background:radial-gradient(circle at 10% 20%,rgba(216,179,106,.11),transparent 23%),radial-gradient(circle at 85% 30%,rgba(113,28,50,.08),transparent 25%),radial-gradient(circle at 45% 85%,rgba(216,179,106,.08),transparent 22%);animation:ambient 18s ease-in-out infinite alternate}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");}
@keyframes ambient{from{transform:translate3d(-1%,0,0) scale(1)}to{transform:translate3d(1%,1%,0) scale(1.05)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes shine{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(37,6,15,.25)}50%{box-shadow:0 0 0 14px rgba(37,6,15,0)}}@keyframes rise{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}

a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:100;background:rgba(247,240,231,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(37,6,15,.08)}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:var(--sans);font-size:25px;letter-spacing:.16em}.brand span{font-size:10px;letter-spacing:.28em;color:var(--gold);font-weight:700;margin-top:9px}.nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}.nav a{position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--burg);transition:.3s}.nav a:hover:after{width:100%}.nav-cta,.btn-primary{background:var(--wine);color:#fff;padding:15px 25px;border-radius:999px;font-weight:700;box-shadow:0 12px 28px rgba(37,6,15,.2);transition:.3s}.nav-cta:hover,.btn-primary:hover{transform:translateY(-3px);background:var(--burg)}.menu-toggle{display:none;background:none;border:0;font-size:26px}.marquee{background:var(--wine);color:#e8d29d;overflow:hidden;white-space:nowrap;border-bottom:1px solid rgba(216,179,106,.2)}.marquee-track{display:flex;width:max-content;animation:marquee 24s linear infinite}.marquee span{padding:13px 42px;font-size:11px;letter-spacing:.24em;font-weight:700}.hero{min-height:720px;display:grid;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(37,6,15,.87) 0%,rgba(37,6,15,.60) 48%,rgba(37,6,15,.2) 100%),url('https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2200&q=85') center/cover}.hero:before,.page-hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(216,179,106,.3);border-radius:50%;right:-100px;top:-120px;animation:float 8s ease-in-out infinite}.hero:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(216,179,106,.25);border-radius:50%;left:50%;bottom:-90px;animation:float 7s ease-in-out infinite reverse}.hero-content{position:relative;z-index:2;color:white;max-width:780px;padding:100px 0}.eyebrow{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-weight:700}.hero h1,.page-hero h1{font-family:var(--serif);font-size:clamp(65px,8vw,112px);line-height:.86;margin:20px 0 28px;font-weight:600;letter-spacing:-.035em}.hero p{font-size:18px;max-width:650px;color:rgba(255,255,255,.84)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn-outline{padding:14px 24px;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:999px;font-weight:700;transition:.3s}.btn-outline:hover{background:#fff;color:var(--wine);transform:translateY(-3px)}.section{padding:105px 0;position:relative;overflow:hidden}.section-dark{background:var(--wine);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}.section-head h2{font-family:var(--serif);font-size:clamp(48px,5vw,74px);line-height:.95;margin:8px 0}.section-head p{max-width:520px;color:var(--muted)}.section-dark .section-head p{color:rgba(255,255,255,.68)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:30px;position:relative;overflow:hidden;transition:.4s}.card:before{content:"";position:absolute;top:0;left:-120%;width:70%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);animation:shine 5s infinite}.card:hover{transform:translateY(-9px);box-shadow:0 32px 80px rgba(37,6,15,.17)}.card h3{font-family:var(--serif);font-size:35px;margin:10px 0}.card p{color:var(--muted)}.card-media{height:270px;margin:-30px -30px 24px;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.card:hover img{transform:scale(1.08)}.number{font-size:11px;color:var(--gold);letter-spacing:.2em;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.16);margin-top:55px}.stat{padding:34px 25px;background:rgba(37,6,15,.5)}.stat strong{display:block;font-family:var(--serif);font-size:48px;color:#fff}.stat span{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center}.split img{width:100%;height:580px;object-fit:cover;box-shadow:var(--shadow)}.split h2{font-family:var(--serif);font-size:clamp(50px,5vw,76px);line-height:.95;margin:12px 0 25px}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:30px 0}.checklist div{padding:15px;border-bottom:1px solid var(--line);font-weight:600}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.gallery a{overflow:hidden;display:block}.gallery img{width:100%;height:100%;min-height:230px;object-fit:cover;transition:.7s}.gallery a:hover img{transform:scale(1.07)}.g1{grid-column:span 7;grid-row:span 2}.g2{grid-column:span 5}.g3{grid-column:span 5}.g4{grid-column:span 4}.g5{grid-column:span 4}.g6{grid-column:span 4}.page-hero{min-height:430px;display:flex;align-items:end;background:linear-gradient(90deg,rgba(37,6,15,.93),rgba(37,6,15,.62)),url('https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=2200&q=85') center/cover;color:#fff;position:relative;overflow:hidden}.page-hero .container{padding:90px 0;position:relative;z-index:2}.page-hero h1{font-size:clamp(58px,7vw,94px);margin-bottom:0}.content-section{padding:90px 0}.rich-copy{max-width:820px}.rich-copy h2{font-family:var(--serif);font-size:55px;line-height:1;margin:45px 0 15px}.rich-copy p{color:var(--muted);font-size:17px}.cta{padding:75px;background:linear-gradient(110deg,var(--wine),var(--burg));color:#fff;position:relative;overflow:hidden}.cta:after{content:"";position:absolute;width:350px;height:350px;border:1px solid rgba(216,179,106,.3);border-radius:50%;right:-100px;top:-120px;animation:float 7s infinite}.cta h2{font-family:var(--serif);font-size:60px;line-height:1;margin:0 0 15px}.footer{background:#17040a;color:#fff;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px}.footer h3{font-family:var(--serif);font-size:30px;margin:0 0 14px}.footer p,.footer a{color:rgba(255,255,255,.66)}.footer a{display:block;margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:20px;color:rgba(255,255,255,.45);font-size:12px}.whatsapp{position:fixed;right:24px;bottom:24px;z-index:120;background:#159447;color:#fff;padding:16px 22px;border-radius:999px;font-weight:700;animation:pulse 2.2s infinite}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}.reveal.in-view{opacity:1;transform:none}.floating-orb{position:absolute;width:170px;height:170px;border:1px solid rgba(216,179,106,.18);border-radius:50%;animation:float 9s infinite}.orb-a{right:7%;top:16%}.orb-b{left:4%;bottom:10%;width:110px;height:110px;animation-delay:2s}
@media(max-width:900px){.nav{display:none;position:absolute;left:0;right:0;top:92px;background:var(--cream);padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav.mobile-open{display:flex}.nav-cta{text-align:center}.menu-toggle{display:block}.grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr;gap:35px}.split img{height:420px}.stats{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:650px}.hero-content{padding:80px 0}.section{padding:80px 0}}
@media(max-width:600px){.header-inner{min-height:76px}.brand strong{font-size:20px}.brand span{font-size:8px}.nav{top:76px}.hero h1{font-size:61px}.hero p{font-size:16px}.grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.split img{height:330px}.checklist{grid-template-columns:1fr}.gallery{display:grid;grid-template-columns:1fr 1fr}.g1,.g2,.g3,.g4,.g5,.g6{grid-column:span 1;grid-row:auto}.gallery img{min-height:170px}.section-head{display:block}.cta{padding:50px 28px}.cta h2{font-size:48px}.footer-grid{grid-template-columns:1fr}.page-hero h1{font-size:60px}.whatsapp{right:14px;bottom:14px}.marquee span{padding:12px 25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* =========================================================
   ROYAL LIMOS v7 — PAGE-SPECIFIC CINEMATIC DESIGN SYSTEM
   ========================================================= */
:root{
  --rl-maroon:#3a0715;
  --rl-wine:#5c1028;
  --rl-ivory:#f8f1e7;
  --rl-paper:#fffaf3;
  --rl-gold:#d8b06a;
  --rl-ink:#1d1114;
  --rl-muted:#75676b;
}
body{overflow-x:hidden;background:var(--rl-paper)}
.royal-ambient{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;opacity:.65}
.royal-ambient span,.royal-ambient i{position:absolute;display:block;border-radius:999px;filter:blur(2px)}
.royal-ambient span:nth-child(1){width:420px;height:420px;left:-150px;top:12%;background:radial-gradient(circle,rgba(216,176,106,.18),transparent 68%);animation:rlFloat 15s ease-in-out infinite}
.royal-ambient span:nth-child(2){width:520px;height:520px;right:-180px;top:38%;background:radial-gradient(circle,rgba(92,16,40,.15),transparent 68%);animation:rlFloat 19s ease-in-out infinite reverse}
.royal-ambient span:nth-child(3){width:320px;height:320px;left:42%;bottom:-130px;background:radial-gradient(circle,rgba(216,176,106,.13),transparent 68%);animation:rlFloat 17s ease-in-out infinite}
.royal-ambient i:nth-child(4){width:7px;height:7px;left:18%;top:24%;background:var(--rl-gold);box-shadow:0 0 22px rgba(216,176,106,.7);animation:rlDrift 10s linear infinite}
.royal-ambient i:nth-child(5){width:5px;height:5px;right:24%;top:62%;background:#fff;box-shadow:0 0 18px rgba(255,255,255,.8);animation:rlDrift 13s linear infinite reverse}
body>*:not(.royal-ambient){position:relative;z-index:1}
.page-hero{position:relative;overflow:hidden}
.page-hero:before{content:"";position:absolute;inset:-30%;background:conic-gradient(from 90deg,transparent,rgba(216,176,106,.12),transparent 28%,rgba(92,16,40,.10),transparent 55%);animation:rlSpin 24s linear infinite}
.page-hero .container{position:relative;z-index:2}
.page-hero h1{animation:rlTitleIn .9s cubic-bezier(.2,.8,.2,1) both}
.page-hero .eyebrow{animation:rlFade .7s .1s both}

/* About — editorial split */
.royal-about-page .page-hero{background:linear-gradient(120deg,#24040e,#5c1028 48%,#2b0a14)}
.royal-about-page .section:nth-of-type(2){background:linear-gradient(90deg,#fffaf3 0%,#f3e8dc 100%)}
.royal-about-page .section:nth-of-type(2) .split>div:last-child img{border-radius:180px 20px 180px 20px;box-shadow:25px 25px 0 rgba(216,176,106,.22)}
.royal-about-page .card{border-radius:28px 4px 28px 4px}

/* Fleet — showroom */
.royal-fleet-page .page-hero{background:#11090c}
.royal-fleet-page .page-hero:after{content:"FLEET";position:absolute;right:-2%;bottom:-55px;font-size:190px;letter-spacing:.08em;font-weight:800;color:rgba(255,255,255,.035)}
.royal-fleet-page .card{border-radius:6px;overflow:hidden;background:#fff;border:1px solid rgba(92,16,40,.08);transform-style:preserve-3d}
.royal-fleet-page .card:hover{transform:perspective(900px) rotateX(2deg) rotateY(-2deg) translateY(-10px)}
.royal-fleet-page .card-media{height:260px;overflow:hidden}
.royal-fleet-page .card-media img{height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.royal-fleet-page .card:hover img{transform:scale(1.08)}

/* Services — dark luxury panels */
.royal-services-page .page-hero{background:radial-gradient(circle at 78% 20%,#7a1a36,#270611 52%,#0e0609)}
.royal-services-page .section:nth-of-type(2){background:#12070b;color:#fff}
.royal-services-page .section:nth-of-type(2) .card{background:linear-gradient(145deg,#3a0715,#16070b);border:1px solid rgba(216,176,106,.22);color:#fff}
.royal-services-page .section:nth-of-type(3) .card{border-left:3px solid var(--rl-gold);border-radius:0 18px 18px 0}

/* Weddings — romantic champagne */
.royal-weddings-page .page-hero{background:linear-gradient(135deg,#5d112c,#a75c70 50%,#3a0715)}
.royal-weddings-page .section:nth-of-type(2){background:linear-gradient(135deg,#fffaf4,#f2dfd2)}
.royal-weddings-page .section:nth-of-type(2) .split>div:last-child img{border-radius:35% 8% 35% 8%;box-shadow:0 30px 70px rgba(58,7,21,.18)}
.royal-weddings-page .card{border-radius:24px;background:rgba(255,255,255,.72);backdrop-filter:blur(10px)}

/* Gallery — immersive grid feel */
.royal-gallery-page .page-hero{background:#080608}
.royal-gallery-page .section:nth-of-type(2){background:#0f0a0c;color:#fff}
.royal-gallery-page .section:nth-of-type(2) .card{background:#191014;color:#fff;border-color:rgba(216,176,106,.16)}
.royal-gallery-page .card-media{overflow:hidden}
.royal-gallery-page .card-media img{transition:transform 1.2s ease,filter 1.2s ease}
.royal-gallery-page .card:hover img{transform:scale(1.1);filter:saturate(1.08) contrast(1.03)}
.royal-gallery-page .section:nth-of-type(3) .split>div:last-child img{border-radius:20px;filter:contrast(1.04)}

/* Contact — booking studio */
.royal-contact-page .page-hero{background:linear-gradient(115deg,#21040d,#5b0e27 55%,#1a080c)}
.royal-contact-page .section:nth-of-type(2){background:#f4eadf}
.royal-contact-page .section:nth-of-type(2) .split{align-items:center}
.royal-contact-page .section:nth-of-type(2) img{border-radius:18px 90px 18px 90px}
.royal-contact-page .card{background:#fff;border:1px solid rgba(216,176,106,.25);box-shadow:0 18px 50px rgba(58,7,21,.06)}

/* Universal motion */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.card{transition:transform .5s ease,box-shadow .5s ease,border-color .5s ease}
.card:hover{box-shadow:0 24px 60px rgba(45,8,18,.14)}
.btn-outline,.btn-primary,.actions a{transition:transform .35s ease,box-shadow .35s ease,background .35s ease}
.btn-outline:hover,.btn-primary:hover,.actions a:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(58,7,21,.18)}
@keyframes rlFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(35px,-28px,0) scale(1.08)}}
@keyframes rlDrift{0%{transform:translateY(80px);opacity:0}15%,75%{opacity:1}100%{transform:translateY(-90px);opacity:0}}
@keyframes rlSpin{to{transform:rotate(360deg)}}
@keyframes rlTitleIn{from{opacity:0;transform:translateY(35px);letter-spacing:.03em}to{opacity:1;transform:none;letter-spacing:normal}}
@keyframes rlFade{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
@media(max-width:768px){
 .royal-ambient span:nth-child(1){width:260px;height:260px}
 .royal-ambient span:nth-child(2){width:300px;height:300px}
 .royal-fleet-page .page-hero:after{font-size:85px;bottom:-20px}
}
