@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap");
:root{
--primary:#0f172a;
--secondary:#1e293b;
--accent:#16a34a;
--accent-hover:#15803d;
--light:#f8fafc;
--border:#e2e8f0;
--text:#334155;
--muted:#64748b;
--white:#ffffff;
--shadow:0 10px 30px rgba(15,23,42,.08);
--shadow-hover:0 18px 40px rgba(15,23,42,.14);
--radius:20px;
--transition:all .3s ease;
} *{
box-sizing:border-box;
}
html{
scroll-behavior:smooth;
}
body{
margin:0;
font-family:'Inter',sans-serif !important;
background:var(--light);
color:var(--text);
line-height:1.7;
overflow-x:hidden;
}
img{
max-width:100%;
height:auto;
border-radius:16px;
}
a{
text-decoration:none;
transition:var(--transition);
}
h1,h2,h3,h4,h5,h6{
color:var(--primary);
font-weight:700;
letter-spacing:-0.03em;
line-height:1.2;
margin-bottom:18px;
}
p{
color:var(--muted);
font-size:16px;
} .site-header,
header,
.elementor-location-header{
background:rgba(255,255,255,.92);
backdrop-filter:blur(12px);
position:sticky;
top:0;
z-index:999;
border-bottom:1px solid rgba(226,232,240,.8);
box-shadow:0 4px 20px rgba(15,23,42,.04);
}
.site-branding img,
.custom-logo{
max-height:60px;
}
.main-navigation,
nav ul{
display:flex;
align-items:center;
gap:12px;
}
.main-navigation a,
nav a,
.menu-item a{
color:var(--secondary) !important;
font-weight:600;
padding:12px 18px;
border-radius:12px;
}
.main-navigation a:hover,
nav a:hover,
.menu-item a:hover{
background:#eff6ff;
color:#2563eb !important;
} .elementor-top-section:first-child{
position:relative;
overflow:hidden;
}
.elementor-top-section:first-child::before{
content:"";
position:absolute;
inset:0;
background:linear-gradient(135deg, rgba(15,23,42,.82), rgba(37,99,235,.62));
z-index:1;
}
.elementor-top-section:first-child .elementor-container{
position:relative;
z-index:2;
}
.elementor-top-section:first-child h1,
.elementor-top-section:first-child h2,
.elementor-top-section:first-child p{
color:white !important;
} button,
input[type="submit"],
.elementor-button,
.wp-block-button__link{
background:linear-gradient(135deg,#2563eb,#1d4ed8) !important;
border:none !important;
color:white !important;
border-radius:14px !important;
padding:14px 28px !important;
font-weight:700 !important;
letter-spacing:.02em;
box-shadow:0 10px 24px rgba(37,99,235,.25);
transition:var(--transition);
}
button:hover,
input[type="submit"]:hover,
.elementor-button:hover,
.wp-block-button__link:hover{
transform:translateY(-2px);
box-shadow:0 18px 30px rgba(37,99,235,.32);
} .elementor-section,
section{
padding-top:50px;
padding-bottom:50px;
}
.elementor-widget-wrap{
gap:14px;
} article,
.properties .property,
.property-item,
.elementor-post,
.elementor-grid-item{
background:var(--white);
border-radius:24px;
overflow:hidden;
border:1px solid rgba(226,232,240,.9);
box-shadow:var(--shadow);
transition:var(--transition);
}
article:hover,
.properties .property:hover,
.property-item:hover,
.elementor-post:hover,
.elementor-grid-item:hover{
transform:translateY(-8px);
box-shadow:var(--shadow-hover);
}
article img,
.property-item img,
.elementor-grid-item img{
width:100%;
object-fit:cover;
}
article .entry-title,
.property-title,
.elementor-post__title{
font-size:1.25rem;
padding:0 24px;
margin-top:20px;
}
article p,
.property-item p,
.elementor-post__excerpt{
padding:0 24px;
}
.price,
.property-price,
[class*="price"]{
display:inline-flex;
align-items:center;
background:#dcfce7;
color:#166534 !important;
font-weight:800;
padding:10px 18px;
border-radius:999px;
margin:10px 24px 24px;
font-size:1rem;
} .elementor-posts-container,
.blog-posts,
.properties-grid,
.row{
gap:28px;
}
.elementor-posts-container{
display:grid !important;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
} .widget,
.sidebar-widget{
background:var(--white);
border-radius:22px;
padding:28px;
margin-bottom:24px;
border:1px solid var(--border);
box-shadow:var(--shadow);
}
.widget-title{
font-size:1.1rem;
margin-bottom:18px;
} input,
textarea,
select{
width:100%;
border:1px solid var(--border) !important;
background:white !important;
border-radius:14px !important;
padding:14px 16px !important;
font-size:15px !important;
transition:var(--transition);
}
input:focus,
textarea:focus,
select:focus{
outline:none;
border-color:#2563eb !important;
box-shadow:0 0 0 4px rgba(37,99,235,.12);
} .elementor-icon-box,
.contact-card{
background:white;
padding:28px;
border-radius:22px;
box-shadow:var(--shadow);
border:1px solid var(--border);
transition:var(--transition);
}
.elementor-icon-box:hover,
.contact-card:hover{
transform:translateY(-5px);
} table{
width:100%;
border-collapse:collapse;
background:white;
border-radius:20px;
overflow:hidden;
box-shadow:var(--shadow);
}
table th{
background:#eff6ff;
color:#1e3a8a;
}
table th,
table td{
padding:16px;
border-bottom:1px solid var(--border);
} footer,
.site-footer{
background:var(--primary);
color:rgba(255,255,255,.8);
margin-top:70px;
padding-top:60px;
}
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
footer a{
color:white !important;
}
footer a:hover{
color:#93c5fd !important;
}
.site-info{
border-top:1px solid rgba(255,255,255,.12);
margin-top:30px;
padding:20px 0;
text-align:center;
} .elementor-widget,
article,
.property-item{
animation:fadeUp .5s ease both;
}
@keyframes fadeUp{
from{
opacity:0;
transform:translateY(20px);
}
to{
opacity:1;
transform:translateY(0);
}
} @media (max-width:1024px){
.elementor-section{
padding-top:40px;
padding-bottom:40px;
}
h1{
font-size:2.5rem !important;
}
h2{
font-size:2rem !important;
}
}
@media (max-width:768px){
body{
font-size:15px;
}
.main-navigation,
nav ul{
flex-direction:column;
align-items:flex-start;
gap:6px;
}
.elementor-posts-container{
grid-template-columns:1fr !important;
}
.elementor-column{
width:100% !important;
}
.elementor-section{
padding-left:18px;
padding-right:18px;
}
h1{
font-size:2rem !important;
}
h2{
font-size:1.6rem !important;
}
.elementor-button,
button{
width:100%;
justify-content:center;
}
}
@media (max-width:480px){
.price,
.property-price{
width:calc(100% - 48px);
justify-content:center;
}
article .entry-title,
.property-title,
.elementor-post__title{
font-size:1.05rem;
}
.widget,
.sidebar-widget{
padding:20px;
}
}