/* Premium Mobile — Liquid Glass Pro */

/* Scroll Reveal */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.reveal.revealed{opacity:1;transform:translateY(0)}
.reveal-stagger>*{opacity:0;transform:translateY(30px) scale(.95);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}
.reveal-stagger.revealed>*:nth-child(1){transition-delay:.05s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(2){transition-delay:.12s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(3){transition-delay:.19s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(4){transition-delay:.26s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(5){transition-delay:.33s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(6){transition-delay:.40s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(7){transition-delay:.47s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(8){transition-delay:.54s;opacity:1;transform:none}
.reveal-stagger.revealed>*:nth-child(n+9){transition-delay:.61s;opacity:1;transform:none}

/* 3D Tilt */
.tilt-card{transform-style:preserve-3d;transition:transform .2s ease-out;will-change:transform}
.tilt-card .tilt-shine{position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,50%),rgba(255,255,255,.15),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;z-index:3}
.tilt-card.tilt-active .tilt-shine{opacity:1}

/* Card Flip */
.flip-card{perspective:1000px;cursor:pointer}
.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}
.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}
.flip-card-front,.flip-card-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:inherit;overflow:hidden}
.flip-card-back{transform:rotateY(180deg)}

/* FAB Menu */
.fab-menu-overlay{position:fixed;inset:0;background:rgba(10,14,26,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9996;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.fab-menu-overlay.active{opacity:1;visibility:visible}
.fab-menu-items{position:fixed;bottom:90px;right:20px;z-index:9997;display:flex;flex-direction:column-reverse;gap:12px;align-items:flex-end}
.fab-menu-item{display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:50px;text-decoration:none;color:#fff;font-size:13px;font-weight:600;white-space:nowrap;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 20px rgba(0,0,0,.3);transform:translateX(100px) scale(.5);opacity:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s;cursor:pointer}
.fab-menu-overlay.active~.fab-menu-items .fab-menu-item{transform:translateX(0) scale(1);opacity:1}
.fab-menu-overlay.active~.fab-menu-items .fab-menu-item:nth-child(1){transition-delay:.05s}
.fab-menu-overlay.active~.fab-menu-items .fab-menu-item:nth-child(2){transition-delay:.10s}
.fab-menu-overlay.active~.fab-menu-items .fab-menu-item:nth-child(3){transition-delay:.15s}
.fab-menu-overlay.active~.fab-menu-items .fab-menu-item:nth-child(4){transition-delay:.20s}
.fab-menu-item i{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:16px;flex-shrink:0}
.fab-call{background:linear-gradient(135deg,rgba(34,197,94,.4),rgba(22,163,74,.3))}.fab-call i{background:rgba(34,197,94,.3);color:#4ade80}
.fab-whatsapp{background:linear-gradient(135deg,rgba(37,211,102,.4),rgba(29,161,42,.3))}.fab-whatsapp i{background:rgba(37,211,102,.3);color:#25d366}
.fab-enquiry{background:linear-gradient(135deg,rgba(102,126,234,.4),rgba(118,75,162,.3))}.fab-enquiry i{background:rgba(102,126,234,.3);color:#a5b4fc}
.fab-directions{background:linear-gradient(135deg,rgba(245,158,11,.4),rgba(217,119,6,.3))}.fab-directions i{background:rgba(245,158,11,.3);color:#fbbf24}
.fab-menu-item:active{transform:scale(.92)!important}
.enquiry-fab-btn.fab-menu-open{transform:rotate(135deg)!important;animation:none!important}
.enquiry-fab-btn.fab-menu-open::before,.enquiry-fab-btn.fab-menu-open::after{display:none}

/* Bottom Sheet */
.bottom-sheet-overlay{position:fixed;inset:0;background:rgba(10,14,26,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:9999;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.bottom-sheet-overlay.active{opacity:1;visibility:visible}
.bottom-sheet{position:fixed;bottom:0;left:0;right:0;z-index:10000;background:linear-gradient(180deg,rgba(30,41,59,.97),rgba(15,23,42,.97));backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border-top:1px solid rgba(255,255,255,.15);border-radius:24px 24px 0 0;box-shadow:0 -8px 40px rgba(0,0,0,.4);transform:translateY(100%);transition:transform .4s cubic-bezier(.22,1,.36,1);max-height:80vh;overflow-y:auto;padding:8px 0 24px}
.bottom-sheet.active{transform:translateY(0)}
.bottom-sheet-handle{width:40px;height:4px;background:rgba(255,255,255,.3);border-radius:4px;margin:8px auto 16px}
.bottom-sheet-content{padding:0 20px}
.bottom-sheet-title{font-size:18px;font-weight:700;color:#fff;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.bottom-sheet-body{color:#cbd5e1;font-size:14px;line-height:1.6}
.bottom-sheet-close{position:absolute;top:16px;right:20px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}
.bottom-sheet-close:active{transform:scale(.9);background:rgba(239,68,68,.3)}

/* Mesh Blobs */
.mesh-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.mesh-blob{position:absolute;border-radius:50%;filter:blur(50px);opacity:.08;animation:blobMorph 20s ease-in-out infinite,blobFloat 15s ease-in-out infinite}
.mesh-blob.b1{width:300px;height:300px;background:radial-gradient(circle,#667eea,transparent 70%);top:-50px;left:-80px}
.mesh-blob.b2{width:250px;height:250px;background:radial-gradient(circle,#a855f7,transparent 70%);top:30%;right:-100px;animation-delay:-5s}
.mesh-blob.b3{width:200px;height:200px;background:radial-gradient(circle,#f59e0b,transparent 70%);bottom:10%;left:-60px;animation-delay:-10s}
@keyframes blobMorph{0%,100%{border-radius:50% 50% 50% 50%}33%{border-radius:40% 60% 50% 50%}66%{border-radius:60% 40% 60% 40%}}
@keyframes blobFloat{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-20px) scale(1.1)}66%{transform:translate(-20px,30px) scale(.9)}}

/* Ripple */
.ripple-btn{position:relative;overflow:hidden}
.ripple-circle{position:absolute;border-radius:50%;background:rgba(255,255,255,.4);transform:scale(0);animation:rippleExpand .6s ease-out;pointer-events:none}
@keyframes rippleExpand{to{transform:scale(4);opacity:0}}

/* Skeleton */
.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.05) 25%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.05) 75%);background-size:200% 100%;animation:skShimmer 1.5s ease-in-out infinite;border-radius:8px}
@keyframes skShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.skeleton-card{height:200px;border-radius:16px;margin-bottom:16px}
.skeleton-line{height:14px;margin-bottom:8px;border-radius:4px}
.skeleton-line.short{width:60%}.skeleton-line.medium{width:80%}

/* Typewriter */
.typewriter-cursor{display:inline-block;width:2px;height:1em;background:#a5b4fc;margin-left:2px;animation:cursorBlink .8s step-end infinite;vertical-align:text-bottom}
@keyframes cursorBlink{0%,100%{opacity:1}50%{opacity:0}}

/* Trust Badges */
.trust-strip{display:flex;gap:12px;overflow-x:auto;padding:16px 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.trust-strip::-webkit-scrollbar{display:none}
.trust-badge{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 16px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border:1px solid rgba(255,255,255,.1);border-radius:14px;min-width:100px;transition:transform .2s}
.trust-badge:active{transform:scale(.95)}
.trust-badge i{font-size:24px;background:linear-gradient(135deg,#667eea,#a855f7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.trust-badge span{font-size:11px;color:#94a3b8;font-weight:600;text-align:center}

/* Toast */
.toast-container{position:fixed;top:80px;left:50%;transform:translateX(-50%);z-index:10001;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.toast{display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:50px;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 20px rgba(0,0,0,.3);font-size:13px;font-weight:600;color:#fff;opacity:0;transform:translateY(-20px);transition:opacity .3s,transform .3s;pointer-events:auto;max-width:90vw}
.toast.show{opacity:1;transform:translateY(0)}
.toast.success{background:linear-gradient(135deg,rgba(34,197,94,.4),rgba(22,163,74,.3))}.toast.success i{color:#4ade80}
.toast.error{background:linear-gradient(135deg,rgba(239,68,68,.4),rgba(220,38,38,.3))}.toast.error i{color:#f87171}
.toast.info{background:linear-gradient(135deg,rgba(102,126,234,.4),rgba(118,75,162,.3))}.toast.info i{color:#a5b4fc}
.toast.warning{background:linear-gradient(135deg,rgba(245,158,11,.4),rgba(217,119,6,.3))}.toast.warning i{color:#fbbf24}

/* Segmented Control */
.segmented-control{display:flex;background:rgba(255,255,255,.06);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:4px;margin-bottom:20px}
.segmented-btn{flex:1;padding:10px 16px;border:none;background:transparent;color:#94a3b8;font-size:13px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s;font-family:inherit}
.segmented-btn.active{background:linear-gradient(135deg,rgba(102,126,234,.5),rgba(118,75,162,.4));color:#fff;box-shadow:0 2px 8px rgba(102,126,234,.3)}

/* Safe Areas */
.safe-top{padding-top:env(safe-area-inset-top)}
.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}

/* Reduced Motion */
@media(prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*,.mesh-blob,.tilt-card,.flip-card-inner,.toast{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}.reveal-stagger>*{opacity:1!important;transform:none!important}}
