@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
body {
font-family: 'Inter', sans-serif;
}
h1, h2, h3, h4 {
font-family: 'Playfair Display', serif;
}
::-webkit-scrollbar {
width: 6px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background-color: #cbd5e1;
border-radius: 20px;
}
.dark ::-webkit-scrollbar-thumb {
background-color: #4b5563;
}
.no-scrollbar::-webkit-scrollbar {
display: none;
}
.no-scrollbar {
-ms-overflow-style: none;
scrollbar-width: none;
}
.comparison-slider {
position: relative;
width: 100%;
overflow: hidden;
}
.comparison-item {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}
.comparison-handle {
position: absolute;
top: 0;
bottom: 0;
width: 2px;
background: #fff;
cursor: col-resize;
z-index: 10;
}
.comparison-circle {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 40px;
height: 40px;
background: #fff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
color: #333;
}
.reveal-on-scroll {
opacity: 0;
filter: blur(5px);
transform: translateY(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out, filter 0.8s ease-out;
}
.reveal-on-scroll.is-visible {
opacity: 1;
filter: blur(0);
transform: translateY(0);
}
.glass-panel {
background: rgba(255, 255, 255, 0.03);
backdrop-filter: blur(12px);
border: 1px solid rgba(255, 255, 255, 0.05);
}
.glass-card-hover {
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.glass-card-hover:hover {
transform: translateY(-2px);
box-shadow: 0 10px 40px -10px rgba(0,0,0,0.1);
}
/* Modal scrollbar styling */
#modalContent::-webkit-scrollbar {
width: 4px;
}
#modalContent::-webkit-scrollbar-thumb {
background-color: #cbd5e1;
border-radius: 20px;
}
.dark #modalContent::-webkit-scrollbar-thumb {
background-color: #4b5563;
}
/* No body scroll when modal is open */
body.modal-open {
overflow: hidden;
}

/* WordPress admin bar */
body.admin-bar #navbar { top: 32px; }
@media screen and (max-width: 782px) {
  body.admin-bar #navbar { top: 46px; }
}
/* Reset WP theme chrome interference */
.estemed-root, .estemed-root * { box-sizing: border-box; }
body.estemed-front {
  margin: 0 !important;
  padding: 0 !important;
}

