[data-aos] {
opacity: 0;
transition-property: transform, opacity;
}
[data-aos].aos-animate {
opacity: 1;
}
[data-aos][data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
transition-duration: 1000ms;
}
[data-aos][data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
transition-delay: 0s;
}
[data-aos][data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
transition-delay: 100ms;
}
[data-aos^="fade"][data-aos^="fade"].aos-animate {
transform: translate3d(0, 0, 0);
}
[data-aos="fade-up"] {
transform: translate3d(0, 20px, 0);
}
[data-aos="fade-right"] {
transform: translate3d(-20px, 0, 0);
}
[data-aos="fade-left"] {
transform: translate3d(20px, 0, 0);
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.carousel-container {
display: flex;
transition: transform 0.5s ease-in-out;
}
.carousel-slide {
flex: 0 0 100%;
background-size: cover;
background-position: center;
}
.carousel-dot.active {
background-color: white;
}
@keyframes shimmer {
0% {
background-position: -1000px 0;
}
100% {
background-position: 1000px 0;
}
}
@keyframes borderGlow {
0%, 100% {
border-color: rgba(197,165,114,0.3);
}
50% {
border-color: rgba(197,165,114,0.6);
}
}
:where([class^="ri-"])::before {
content: "\f3c2";
}
.font-cormorant {
font-family: 'Cormorant', serif;
}
.animate-shimmer {
background: linear-gradient(90deg, transparent, rgba(197,165,114,0.1), transparent);
background-size: 1000px 100%;
animation: shimmer 2s infinite linear;
}
.animate-border-glow {
animation: borderGlow 2s infinite ease-in-out;
}
.hover-lift {
transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.hover-lift:hover {
transform: translateY(-8px);
}
.luxury-card {
background: linear-gradient(145deg, rgba(28,28,28,0.95) 0%, rgba(18,18,18,0.95) 100%);
border: 1px solid rgba(197,165,114,0.1);
backdrop-filter: blur(10px);
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.luxury-card:hover {
border-color: rgba(197,165,114,0.3);
box-shadow:
0 20px 40px rgba(0,0,0,0.4),
0 0 20px rgba(197,165,114,0.1);
transform: translateY(-5px);
}
.text-gradient {
background: linear-gradient(135deg, #C5A572 0%, #E5C992 50%, #C5A572 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-size: 200% auto;
animation: gradient 4s linear infinite;
}
@keyframes gradient {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
.font-montserrat {
font-family: 'Montserrat', sans-serif;
}
.hero-pattern {
background-image:
linear-gradient(to right, rgba(0,0,0,0.85), rgba(0,0,0,0.6)),
url('https://readdy.ai/api/search-image?query=ultra%20luxury%20classic%20modern%20law%20office%20interior%20with%20dramatic%20lighting%2C%20black%20marble%20surfaces%2C%20gold%20accents%2C%20floor-to-ceiling%20windows%2C%20expensive%20antique%20furniture%2C%20sophisticated%20atmosphere%2C%20cinematic%20composition%2C%20dark%20moody%20lighting&width=1920&height=1080&seq=hero-legal-luxury-v2&orientation=landscape');
background-size: cover;
background-position: center;
}
.service-card {
background: linear-gradient(145deg, rgba(26,26,26,0.95) 0%, rgba(20,20,20,0.95) 100%);
border: 1px solid rgba(197,165,114,0.1);
backdrop-filter: blur(10px);
}
.service-card:hover {
border-color: rgba(197,165,114,0.3);
box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}
.testimonial-card {
background: linear-gradient(145deg, rgba(26,26,26,0.95) 0%, rgba(20,20,20,0.95) 100%);
border: 1px solid rgba(197,165,114,0.1);
backdrop-filter: blur(10px);
}
.luxury-shadow {
box-shadow: 0 10px 30px rgba(197,165,114,0.1);
}
.gold-gradient {
background: linear-gradient(135deg, #C5A572 0%, #E5C992 50%, #C5A572 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.service-card {
transition: all 0.3s ease;
background: linear-gradient(145deg, rgba(28,28,28,0.9) 0%, rgba(18,18,18,0.9) 100%);
border: 1px solid rgba(184,134,11,0.1);
}
.service-card:hover {
transform: translateY(-4px);
border-color: rgba(184,134,11,0.3);
box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}
.testimonial-card {
background: linear-gradient(145deg, rgba(28,28,28,0.9) 0%, rgba(18,18,18,0.9) 100%);
border: 1px solid rgba(184,134,11,0.1);
}
.mobile-menu {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background: rgba(0, 0, 0, 0.95);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
z-index: 60;
opacity: 0;
visibility: hidden;
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-menu.hidden {
opacity: 0;
visibility: hidden;
}
.mobile-menu:not(.hidden) {
opacity: 1;
visibility: visible;
}
.mobile-menu-content {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
padding: 2rem;
opacity: 0;
transform: translate(-50%, -45%);
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
transition-delay: 0.1s;
}
.mobile-menu:not(.hidden) .mobile-menu-content {
opacity: 1;
transform: translate(-50%, -50%);
}
.mobile-menu {
position: fixed;
top: 0;
right: 0;
width: 100%;
height: 100vh;
background: rgba(0, 0, 0, 0.95);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
z-index: 50;
opacity: 0;
visibility: hidden;
transform: translateX(100%);
transition: all 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.mobile-menu.hidden {
opacity: 0;
visibility: hidden;
transform: translateX(100%);
pointer-events: none;
}
.mobile-menu:not(.hidden) {
opacity: 1;
visibility: visible;
transform: translateX(0);
}
.mobile-menu-content {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) translateX(100px);
width: 100%;
padding: 2rem;
opacity: 0;
transition: all 0.7s cubic-bezier(0.34, 1.56, 0.64, 1);
transition-delay: 0.1s;
}
.mobile-menu:not(.hidden) .mobile-menu-content {
opacity: 1;
transform: translate(-50%, -50%) translateX(0);
}
.mobile-menu nav a,
.mobile-menu button {
opacity: 0;
transform: translateY(30px);
transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.mobile-menu:not(.hidden) nav a,
.mobile-menu:not(.hidden) button {
opacity: 1;
transform: translateY(0);
}
.mobile-menu nav a:nth-child(1) { transition-delay: 0.2s; }
.mobile-menu nav a:nth-child(2) { transition-delay: 0.25s; }
.mobile-menu nav a:nth-child(3) { transition-delay: 0.3s; }
.mobile-menu nav a:nth-child(4) { transition-delay: 0.35s; }
.mobile-menu nav a:nth-child(5) { transition-delay: 0.4s; }
.mobile-menu button { transition-delay: 0.45s; }
:where([class^="ri-"])::before {
content: "\f3c2";
}
.font-playfair {
font-family: 'Playfair Display', serif;
}
.font-inter {
font-family: 'Inter', sans-serif;
}
.hero-pattern {
background-image: radial-gradient(circle at 25% 25%, rgba(198, 160, 99, 0.05) 0%, transparent 50%),
radial-gradient(circle at 75% 75%, rgba(198, 160, 99, 0.03) 0%, transparent 50%);
}
.service-card {
transition: all 0.3s ease;
}
.service-card:hover {
transform: translateY(-4px);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}
.testimonial-slider {
scroll-behavior: smooth;
}




@media (min-width: 768px) {
    section, header, footer {
        padding-left: 68px;
        padding-right: 68px;
    }
    #sitelogo{
        height: 68px;
        margin-top: -9px;
    }

    .team-card{
        padding: 10px!important;
    }
    .team-card .text-xl{
        font-size: 17px!important;
    }
}


.scroll-to-top {
position: fixed;
bottom: 2rem;
right: 2rem;
width: 3rem;
height: 3rem;
background: rgba(197,165,114,0.9);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
opacity: 0;
visibility: hidden;
transition: all 0.3s ease;
z-index: 50;
}
.scroll-to-top.visible {
opacity: 1;
visibility: visible;
}
.scroll-to-top:hover {
background: rgba(197,165,114,1);
transform: translateY(-3px);
}

.team-card .text-sm{
    font-size: 13px; 
}