:root { --teal:        #14a7a8;
--teal-dark:   #0e6d81;
--teal-deep:   #0a4f66;
--teal-light:  #eef6f6;
--footer-teal: #0e7f89;
--black:       #111111;
--dark:        #1a1a1a;
--gray:        #555555;
--gray-light:  #888888;
--light-gray:  #f5f5f5;
--border:      #e0e0e0;
--white:       #ffffff; --font-main: 'Syne', sans-serif; --section-pad: 60px;
--container: 1440px; --radius:  20px;
--shadow:  0 2px 16px rgba(0, 0, 0, 0.10);
--transition: 0.2s ease;
}*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html {
scroll-behavior: smooth;
font-size: 16px;
}
body {
font-family: var(--font-main);
color: var(--black);
background: var(--white);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
img {
max-width: 100%;
height: auto;
display: block;
}
a {
color: inherit;
text-decoration: none;
}
ul, ol { list-style: none; }
button {
font-family: var(--font-main);
cursor: pointer;
} .container {
max-width: var(--container);
margin: 0 auto;
padding: 0 20px;
} .alignwide  { max-width: 1200px; margin-left: auto; margin-right: auto; }
.alignfull  { width: 100%; max-width: none; }
.aligncenter { text-align: center; } .has-teal-color            { color: var(--teal) !important; }
.has-teal-background-color { background-color: var(--teal) !important; color: var(--white) !important; }
.has-black-color           { color: var(--black) !important; }
.has-white-color           { color: var(--white) !important; }
.has-light-gray-background-color { background-color: var(--light-gray) !important; } .screen-reader-text {
border: 0;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
word-wrap: normal !important;
} .skip-link {
background: var(--teal);
color: var(--white);
font-weight: 700;
left: 6px;
padding: 8px 16px;
position: absolute;
top: -100px;
z-index: 9999;
transition: top 0.2s;
}
.skip-link:focus { top: 6px; }h1, h2, h3, h4, h5, h6 {
font-family: var(--font-main);
font-weight: 700;
line-height: 1.2;
color: var(--black);
}
h1 { font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 900; }
h2 { font-size: clamp(1.3rem, 2.5vw, 1.75rem); }
h3 { font-size: clamp(1.1rem, 2vw, 1.35rem); }
h4 { font-size: 1rem; }
h5 { font-size: 0.9rem; }
h6 { font-size: 0.85rem; }
p {
font-size: 1rem;
line-height: 1.7;
color: var(--gray);
}
strong { font-weight: 700; color: var(--dark); }
em     { font-style: italic; } .section-title {
font-size: clamp(1.1rem, 2.2vw, 2.5rem);
font-weight: 700;
color: var(--teal);
text-align: center;
margin-bottom: 30px;
position: relative;
}
.section-title::after {
content: '';
display: block;
width: 50px;
height: 3px;
background: var(--teal);
margin: 10px auto 0;
border-radius: 2px;
}
.section-title.left { text-align: left; }
.section-title.left::after { margin-left: 0; } .entry-content h2,
.entry-content h3 { margin: 1.5em 0 0.5em; }
.entry-content p   { margin-bottom: 1.2em; }
.entry-content ul,
.entry-content ol  { margin: 0 0 1.2em 1.5em; }
.entry-content ul  { list-style: disc; }
.entry-content ol  { list-style: decimal; }
.entry-content li  { margin-bottom: 0.4em; }
.entry-content a   { color: var(--teal); text-decoration: underline; }
.entry-content a:hover { color: var(--teal-dark); }
.entry-content blockquote {
border-left: 4px solid var(--teal);
padding: 12px 20px;
margin: 1.5em 0;
background: var(--teal-light);
border-radius: 0 var(--radius) var(--radius) 0;
font-style: italic;
}
.entry-content img {
border-radius: var(--radius);
margin: 1.2em 0;
}.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 6px;
padding: 11px 24px;
min-height: 44px;
border-radius: var(--radius);
font-family: var(--font-main);
font-size: 0.82rem;
font-weight: 700;
letter-spacing: 0.3px;
line-height: 1;
text-decoration: none;
white-space: nowrap;
cursor: pointer;
border: 2px solid transparent;
transition: all var(--transition);
box-sizing: border-box;
}
.btn svg {
width: 15px;
height: 15px;
flex-shrink: 0;
} .btn-teal {
background: var(--teal);
color: var(--white);
border-color: var(--teal);
}
.btn-teal:hover {
background: var(--teal-dark);
border-color: var(--teal-dark);
color: var(--white);
}
.btn-outline-teal {
background: transparent;
color: var(--teal);
border-color: var(--teal);
}
.btn-outline-teal:hover {
background: var(--teal);
border-color: var(--teal);
color: var(--white);
}
.btn-black {
background: var(--black);
color: var(--white);
border-color: var(--black);
}
.btn-black:hover {
background: var(--dark);
border-color: var(--dark);
color: var(--white);
}
.btn-outline-white {
background: transparent;
color: var(--white);
border-color: var(--white);
}
.btn-outline-white:hover {
background: var(--white);
color: var(--teal);
}
.btn-white {
background: var(--white);
color: var(--teal);
border-color: var(--white);
}
.btn-white:hover {
background: var(--teal-light);
color: var(--teal-dark);
} .btn-sm {
padding: 8px 16px;
min-height: 36px;
font-size: 0.75rem;
}
.btn-md {
padding: 11px 24px;
min-height: 44px;
font-size: 0.82rem;
}
.btn-lg {
padding: 0 28px;
min-width: 205px;
min-height: 58px;
font-size: 1.25rem;
font-weight: 700;
border-radius: 999px;
} .btn-pill {
border-radius: 999px;
} .btn-block {
width: 100%;
justify-content: center;
} .btn-outline-teal.btn-lg {
border-width: 4px;
}
.btn-teal.btn-lg:hover {
background: var(--teal-dark);
border-color: var(--teal-dark);
color: var(--white);
}
.btn-outline-teal.btn-lg:hover {
background: var(--teal);
border-color: var(--teal);
color: var(--white);
}#site-header {
background: var(--white);
position: sticky;
top: 0;
z-index: 1000;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
transition: box-shadow var(--transition);
padding: 10px 0;
}
#site-header.scrolled {
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
}
.header-inner {
display: flex;
align-items: center;
justify-content: space-between;
height: 70px;
gap: 20px;
} .site-logo {
display: flex;
align-items: center;
flex-shrink: 0;
}
.site-logo img,
.site-logo svg {
height: 70px;
width: auto;
}
.site-logo .logo-text {
font-size: 1.15rem;
font-weight: 800;
color: var(--teal);
letter-spacing: -0.5px;
} #main-nav {
display: flex;
align-items: center;
background: var(--teal);
border-radius: 10px;
}
#main-nav ul {
display: flex;
align-items: center;
gap: 2px;
}
#main-nav ul li a {
font-size: 1rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
color: var(--white);
padding: 8px 11px;
border-radius: 4px;
transition: color var(--transition), background var(--transition);
display: block;
}
#menu-primary-menu>li>a:hover {
border-bottom: 2px solid var(--black);
border-radius: 0;
} .hamburger {
display: none;
flex-direction: column;
gap: 5px;
cursor: pointer;
padding: 6px;
background: none;
border: none;
border-radius: 4px;
}
.hamburger span {
display: block;
width: 22px;
height: 2px;
background: var(--black);
border-radius: 2px;
transition: transform 0.3s, opacity 0.3s;
}
.hamburger.active span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.hamburger.active span:nth-child(2) {
opacity: 0;
}
.hamburger.active span:nth-child(3) {
transform: translateY(-7px) rotate(-45deg);
}
@media(max-width:1024px) {
#site-header .container {
position: static;
}
.header-inner {
position: static;
}
#main-nav {
position: fixed !important;
inset: 0 !important;
width: 100vw !important;
max-width: none !important;
height: 100vh !important;
margin: 0 !important;
padding: 0 !important;
background: var(--white) !important;
z-index: 9999;
display: flex !important;
align-items: center;
justify-content: center;
opacity: 0;
visibility: hidden;
pointer-events: none;
transform: none !important;
transition: opacity var(--transition), visibility var(--transition);
}
#main-nav.is-open {
opacity: 1;
visibility: visible;
pointer-events: auto;
}
#main-nav .menu {
width: 100%;
max-width: none;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 32px;
margin: 0;
padding: 0;
list-style: none;
}
#main-nav .menu>li {
width: auto;
margin: 0;
padding: 0;
}
#main-nav .menu>li>a {
display: block;
color: var(--teal);
font-size: clamp(2rem, 7vw, 4rem);
font-weight: 700;
line-height: 1;
text-align: center;
text-decoration: none;
text-transform: uppercase;
}
.hamburger {
position: relative;
z-index: 10001;
} #main-nav .mega-submenu {
display: none !important;
position: static !important;
background: transparent !important;
box-shadow: none !important;
width: 100% !important;
padding: 12px 0 0 0 !important;
gap: 12px;
flex-direction: column;
align-items: center;
}
#main-nav li.has-mega-submenu.submenu-open > .mega-submenu {
display: flex !important;
}
#main-nav .mega-submenu > li {
padding: 0 !important;
text-align: center;
}
#main-nav .mega-submenu > li > a {
color: var(--teal) !important;
font-size: clamp(1rem, 4.5vw, 1.8rem) !important;
opacity: 0.75;
}
#main-nav .mega-submenu > li > a:hover {
opacity: 1;
} #main-nav a.has-submenu-link::after {
content: ' ▾';
font-size: 0.55em;
vertical-align: middle;
display: inline-block;
transition: transform 0.2s;
padding-left: 10px;
}
#main-nav li.has-mega-submenu.submenu-open > a.has-submenu-link::after {
transform: rotate(180deg);
padding-right: 10px;
}
} #site-header {
position: relative;
z-index: 500;
}
#site-header .container {
position: relative;
}
#main-nav {
position: static;
}
#menu-primary-menu>li.has-mega-submenu {
position: static;
}
#menu-primary-menu>li.has-mega-submenu>.mega-submenu {
display: none;
position: absolute;
top: 115%;
left: 0;
width: 100%;
margin: 0;
list-style: none;
background: var(--teal);
border-radius: 0;
box-shadow: none;
z-index: 999;
}
#menu-primary-menu>li.has-mega-submenu.is-open>.mega-submenu {
display: block;
}
#menu-primary-menu>li.has-mega-submenu>.mega-submenu>li {
display: block;
margin: 0;
padding: 0;
padding: 15px 20px;
}
#menu-primary-menu>li.has-mega-submenu>.mega-submenu>li>a {
display: block;
color: var(--white);
text-decoration: none;
font-size: clamp(1.2rem, 1.8vw, 2rem);
font-weight: 700;
line-height: 1;
text-transform: uppercase;
}
#menu-primary-menu>li.has-mega-submenu>.mega-submenu>li:hover {
background-color: var(--white);
}
#menu-primary-menu>li.has-mega-submenu>.mega-submenu>li:hover>a {
color: var(--teal);
}.footer-cta-bar {
display: grid;
grid-template-columns: 1fr 1.4fr;
width: 100%;
}
.footer-cta-left {
display: flex;
align-items: center;
justify-content: center;
min-height: 48px;
padding: 0 20px;
background: #a9d6e4;
color: var(--white);
font-size: clamp(1.1rem, 1.5vw, 1.45rem);
font-weight: 700;
text-decoration: none;
line-height: 1;
}
.footer-cta-right {
display: flex;
align-items: center;
justify-content: flex-start;
min-height: 48px;
padding: 0 38px;
background: #F2F8F9;
color: var(--black);
font-size: clamp(1.1rem, 1.5vw, 1.45rem);
font-weight: 700;
line-height: 1;
}
.footer-social-bar {
background: var(--teal);
}
.footer-social-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
min-height: 80px;
}
.footer-social-text {
margin: 0;
color: var(--white);
font-size: clamp(1.1rem, 2vw, 1.6rem);
font-weight: 700;
line-height: 1.1;
}
.footer-social-icons {
display: flex;
align-items: center;
gap: 12px;
}
.footer-social-icons a {
display: flex;
align-items: center;
justify-content: center;
width: 42px;
height: 42px;
color: var(--white);
text-decoration: none;
}
.footer-social-icons a svg {
width: 100%;
height: 100%;
}
#site-footer {
background: var(--white);
}
.footer-main-grid {
display: grid;
grid-template-columns: 1.25fr 1fr 1fr 1fr;
gap: 34px;
padding: 22px 0 18px;
align-items: start;
}
.footer-brand-col .site-logo {
display: block;
margin-bottom: 12px;
}
.footer-brand-col .site-logo img,
.footer-brand-col .site-logo svg {
height: 58px;
width: auto;
}
.footer-brand-name,
.footer-brand-role {
margin: 0;
color: var(--dark);
font-size: clamp(.85rem, .95vw, 1rem);
font-weight: 700;
line-height: 1.1;
}
.footer-info-col {
position: relative;
}
.footer-info-col h4 {
margin: 0 0 10px;
color: var(--teal);
font-size: clamp(1.2rem, 1.5vw, 1.9rem);
font-weight: 700;
line-height: 1;
}
.footer-info-col p {
margin: 0;
color: var(--dark);
font-size: clamp(.9rem, 1vw, 1.15rem);
font-weight: 700;
line-height: 1.05;
}
.footer-info-col p+p {
margin-top: 3px;
}
.footer-info-col a {
color: inherit;
text-decoration: none;
}
.footer-phone {
margin-top: 8px !important;
color: var(--teal) !important;
font-size: clamp(1rem, 1.15vw, 1.35rem) !important;
font-weight: 700;
}
.footer-info-col-split {
padding-left: 26px;
}
.footer-info-col-split::before {
content: "";
position: absolute;
left: 0;
top: 32px;
width: 4px;
height: 48px;
background: var(--teal);
border-radius: 999px;
}
.footer-bottom-bar {
background: var(--teal);
}
.footer-bottom-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
min-height: 44px;
}
.footer-copy {
margin: 0;
color: var(--white);
font-size: .9rem;
font-weight: 500;
line-height: 1;
}
.footer-credit {
display: flex;
align-items: center;
gap: 10px;
color: var(--white);
font-size: .9rem;
font-weight: 500;
line-height: 1;
}
.footer-credit a {
color: var(--white);
text-decoration: none;
font-size: 1.2rem;
font-weight: 700;
line-height: 1;
}
@media(max-width:991px) {
.footer-cta-bar {
grid-template-columns: 1fr;
}
.footer-cta-left,
.footer-cta-right {
justify-content: center;
padding: 12px 18px;
text-align: center;
}
.footer-social-inner {
min-height: auto;
padding: 18px 0;
flex-direction: column;
justify-content: center;
}
.footer-main-grid {
grid-template-columns: 1fr 1fr;
gap: 24px;
}
.footer-info-col-split {
padding-left: 18px;
}
.footer-info-col-split::before {
top: 28px;
height: 40px;
}
}
@media(max-width:767px) {
.footer-social-text {
text-align: center;
}
.footer-main-grid {
grid-template-columns: 1fr;
padding: 24px 0 20px;
}
.footer-info-col-split {
padding-left: 0;
}
.footer-info-col-split::before {
display: none;
}
.footer-bottom-inner {
min-height: auto;
padding: 12px 0;
flex-direction: column;
justify-content: center;
text-align: center;
}
.footer-copy,
.footer-credit {
line-height: 1.3;
}
}.img-card {
border-radius: var(--radius);
overflow: hidden;
box-shadow: var(--shadow);
position: relative;
display: block;
background: var(--black);
}
.img-card img {
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0.88;
transition: opacity var(--transition), transform 0.4s ease;
}
.img-card:hover img {
opacity: 1;
transform: scale(1.03);
}
.img-card .card-label {
position: absolute;
bottom: 0;
left: 0;
right: 0;
background: linear-gradient(transparent, rgba(0, 0, 0, 0.82));
padding: 24px 12px 10px;
}
.img-card .card-label span {
color: var(--white);
font-size: 0.7rem;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.5px;
line-height: 1.3;
} .video-showcase-section {
padding: clamp(30px, 4vw, 60px) 0;
background: var(--white)
}
.video-cards-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: clamp(20px, 2.4vw, 42px)
}
.video-card {
position: relative
}
.video-card-inner {
position: relative;
border-radius: clamp(22px, 2vw, 32px);
overflow: hidden
}
.video-card-trigger {
position: relative;
display: block;
width: 100%;
padding: 0;
border: 0;
background: none;
cursor: pointer;
text-align: left
}
.video-card-trigger img,
.video-card-inner video {
display: block;
width: 100%;
aspect-ratio: 3/4;
object-fit: cover;
object-position: 50% 50%
}
.video-card-overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(17, 17, 17, .65) 0%, rgba(17, 17, 17, .18) 45%, rgba(17, 17, 17, .05) 100%)
}
.video-card-play {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 64px;
height: 64px;
border-radius: 999px;
background: rgba(255, 255, 255, .18);
backdrop-filter: blur(4px);
display: flex;
align-items: center;
justify-content: center;
color: var(--white);
transition: transform var(--transition), background var(--transition)
}
.video-card-play svg {
width: 28px;
height: 28px;
margin-left: 2px
}
.video-card-title {
position: absolute;
left: clamp(16px, 1.4vw, 24px);
right: clamp(16px, 1.4vw, 24px);
bottom: clamp(16px, 1.4vw, 24px);
color: var(--white);
font-size: clamp(16px, 1.25vw, 28px);
font-weight: 700;
line-height: 1.05;
text-transform: uppercase
}
.video-card-trigger:hover .video-card-play {
transform: translate(-50%, -50%) scale(1.08);
background: rgba(255, 255, 255, .28)
}
.video-card.is-playing .video-card-trigger {
display: none
}
.video-card-video-wrap {
position: relative
}
.video-card-video-wrap video {
background: var(--black)
}
.video-card-close {
position: absolute;
top: 12px;
right: 12px;
z-index: 2;
width: 38px;
height: 38px;
border: 0;
border-radius: 999px;
background: rgba(17, 17, 17, .72);
color: var(--white);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all var(--transition)
}
.video-card-close:hover {
background: rgba(17, 17, 17, .9)
}
.video-card-close svg {
width: 18px;
height: 18px
}
@media(max-width:991px) {
.video-cards-grid {
grid-template-columns: repeat(2, 1fr)
}
}
@media(max-width:767px) {
.video-cards-grid {
grid-template-columns: 1fr
}
.video-card-trigger img,
.video-card-inner video {
aspect-ratio: 4/5
}
.video-card-play {
width: 56px;
height: 56px
}
}
.equipment-link {
font-size: 30px;
color: var(--teal);
font-weight: 500;
text-align: center;
display: block;
} .condition-card {
aspect-ratio: 4 / 3;
cursor: pointer;
}
.condition-card .card-label {
padding: 18px 12px 10px;
background: rgba(0, 0, 0, 0.68);
}
.condition-card .card-label span {
font-size: 0.85rem;
letter-spacing: 1px;
} .equip-showcase-card {
text-align: center;
}
.equip-showcase-card img {
width: 100%;
aspect-ratio: 4 / 3;
object-fit: cover;
border-radius: var(--radius);
margin-bottom: 10px;
box-shadow: var(--shadow);
transition: box-shadow var(--transition);
}
.equip-showcase-card:hover img {
box-shadow: 0 6px 24px rgba(0, 0, 0, 0.18);
}
.equip-showcase-card .equip-name {
font-size: 0.75rem;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.5px;
color: var(--dark);
line-height: 1.3;
} .review-card {
background: var(--white);
border-radius: var(--radius);
padding: 24px 20px;
box-shadow: var(--shadow);
border-top: 3px solid var(--teal);
}
.review-card .review-stars {
color: #FFD700;
font-size: 1.1rem;
letter-spacing: 2px;
margin-bottom: 12px;
}
.review-card .review-text {
font-size: 0.85rem;
color: var(--gray);
line-height: 1.7;
margin-bottom: 16px;
font-style: italic;
}
.review-card .review-author {
font-size: 0.85rem;
font-weight: 700;
color: var(--dark);
} .post-card {
background: var(--white);
border-radius: var(--radius);
box-shadow: var(--shadow);
overflow: hidden;
transition: transform var(--transition), box-shadow var(--transition);
display: flex;
flex-direction: column;
}
.post-card:hover {
transform: translateY(-3px);
box-shadow: 0 8px 28px rgba(0, 0, 0, 0.14);
}
.post-card .post-thumb {
aspect-ratio: 16 / 9;
overflow: hidden;
}
.post-card .post-thumb img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.4s ease;
}
.post-card:hover .post-thumb img {
transform: scale(1.04);
}
.post-card .post-card-body {
padding: 20px;
flex: 1;
display: flex;
flex-direction: column;
}
.post-card .post-meta {
font-size: 0.72rem;
color: var(--gray-light);
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
margin-bottom: 8px;
}
.post-card h3 {
font-size: 1rem;
margin-bottom: 10px;
flex: 1;
}
.post-card h3 a {
color: var(--black);
transition: color var(--transition);
}
.post-card h3 a:hover {
color: var(--teal);
}
.post-card .post-excerpt {
font-size: 0.82rem;
color: var(--gray);
margin-bottom: 16px;
line-height: 1.6;
}
.post-card .read-more {
font-size: 0.78rem;
font-weight: 700;
color: var(--teal);
text-transform: uppercase;
letter-spacing: 0.5px;
}
.post-card .read-more:hover {
text-decoration: underline;
} .fade-in {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.5s ease, transform 0.5s ease;
}
.fade-in.visible {
opacity: 1;
transform: translateY(0);
}.form-group {
margin-bottom: 18px;
}
.form-group label {
display: block;
font-size: 0.82rem;
font-weight: 700;
color: var(--dark);
margin-bottom: 6px;
}
.form-control {
width: 100%;
padding: 11px 14px;
border: 2px solid var(--border);
border-radius: var(--radius);
font-family: var(--font-main);
font-size: 0.88rem;
color: var(--black);
background: var(--white);
transition: border-color var(--transition), box-shadow var(--transition);
appearance: none;
}
.form-control:focus {
outline: none;
border-color: var(--teal);
box-shadow: 0 0 0 3px rgba(0, 169, 157, 0.15);
}
.form-control::placeholder { color: var(--gray-light); }
textarea.form-control {
resize: vertical;
min-height: 120px;
} .contact-form-wrap {
background: var(--white);
border-radius: var(--radius);
box-shadow: var(--shadow);
padding: 36px;
}
.contact-form-wrap h3 {
margin-bottom: 24px;
font-size: 1.2rem;
} #commentform label    { font-size: 0.82rem; font-weight: 700; color: var(--dark); }
#commentform input,
#commentform textarea { @extend .form-control; }
#commentform .submit .submit { @extend .btn; @extend .btn-teal; margin-top: 10px; }.hero-section {
background: var(--white);
overflow: hidden;
} .hero-name-bar {
background: var(--teal);
padding: 10px 0;
}
.hero-name-bar h1 {
color: var(--white);
font-size: clamp(1.4rem, 5.55vw, 5rem);
font-weight: 700;
line-height: 1.05;
margin: 0;
} .hero-info-row {
background: var(--white);
padding: 12px 0 14px;
}
.hero-info-row .container {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 24px;
}
.hero-info-row .inner {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 16px;
}
.hero-info-row .doctor-title {
font-size: clamp(1.2rem, 3.47vw, 3.125rem);
font-weight: 700;
color: var(--teal-deep);
margin-bottom: 4px;
}
.hero-info-row .doctor-credentials {
font-size: clamp(0.75rem, 1.39vw, 1.25rem);
color: var(--teal-deep);
text-transform: uppercase;
letter-spacing: 0.2px;
font-weight: 700;
line-height: 1;
}
.hero-info-row .doctor-credentials {
display: flex;
flex-direction: column;
gap: 8px;
}
.hero-info-row .doctor-credentials>* {
position: relative;
padding-left: 45px;
}
.hero-info-row .doctor-credentials>*::before {
content: "";
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 32px;
height: 2px;
background: var(--teal);
}
.hero-actions {
display: flex;
flex-direction: column;
align-items: flex-end;
flex-shrink: 0;
padding-top: 20px;
} .hero-slider-wrap {
position: relative;
border-bottom: 6px solid var(--teal);
}
.hero-slider-wrap .container {
padding-left: 0;
padding-right: 0;
margin-left: 0;
margin-right: 0;
}
.hero-slider {
position: relative;
overflow: hidden;
background: var(--white);
}
.hero-slider-track {
position: relative;
}
.hero-slide {
display: none;
position: relative;
}
.hero-slide.is-active {
display: block;
}
.hero-slide img {
display: block;
width: 100%;
height: clamp(320px, 42vw, 620px);
object-fit: cover;
object-position: center;
}
.hero-slider-controls {
position: absolute;
left: 50%;
bottom: 18px;
transform: translateX(-50%);
display: flex;
align-items: center;
gap: 10px;
z-index: 3;
}
.hero-slider-arrow {
width: 44px;
height: 44px;
display: inline-flex;
align-items: center;
justify-content: center;
border: none;
border-radius: 14px;
background: rgba(17, 17, 17, 0.72);
color: var(--white);
font-family: var(--font-main);
font-size: 1.4rem;
line-height: 1;
cursor: pointer;
transition: all var(--transition);
backdrop-filter: blur(4px);
}
.hero-slider-arrow:hover {
background: rgba(17, 17, 17, 0.9);
}
@media (max-width:767px) {
.dual-strip {
grid-template-columns: 1fr !important;
gap: 15px;
}
.dual-strip .strip-item {
border-right: none !important;
}
.dual-strip .strip-item:last-child {
text-align: left !important;
}
.hero-slide img {
height: 260px;
object-fit: contain;
}
.hero-slider-controls {
bottom: 12px;
}
.hero-slider-arrow {
width: 40px;
height: 40px;
border-radius: 12px;
font-size: 1.2rem;
}
} .hero-benefits {
padding: 40px 0;
background: var(--white)
}
.hero-benefits-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px
}
.benefit-card {
border: 6px solid var(--teal);
border-radius: 40px;
padding: 48px 40px;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
min-height: 220px;
}
.benefit-card p {
font-size: clamp(24px, 2.5vw, 40px);
font-weight: 700;
color: var(--teal);
line-height: 1.4;
}
@media(max-width:991px) {
.hero-benefits-grid {
grid-template-columns: 1fr;
gap: 24px
}
.benefit-card {
padding: 32px 24px;
min-height: auto
}
.benefit-card p {
font-size: 1.2rem
}
} .dual-strip-bar {
background: var(--teal-deep);
}
.dual-strip {
display: grid;
grid-template-columns: 1fr 1.4fr;
padding: 15px 0;
align-items: center;
}
.dual-strip .strip-item {
color: var(--white);
font-size: clamp(1.2rem, 2.5vw, 3.125rem);
font-weight: 700;
text-transform: uppercase;
line-height: 1.15;
border-right: 3px solid var(--white);
}
.dual-strip .strip-item:last-child {
border-right: none;
text-align: right;
} .hero-full-image {
width: 100%;
aspect-ratio: 16 / 7;
object-fit: cover;
border-bottom: 4px solid var(--teal);
display: block;
} .hero-content {
padding: 30px 40px 30px 0;
display: flex;
flex-direction: column;
justify-content: center;
}
.hero-badges {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin-bottom: 18px;
}
.hero-badge {
background: var(--teal);
color: var(--white);
font-size: 0.7rem;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.5px;
padding: 8px 14px;
border-radius: 4px;
text-align: center;
line-height: 1.3;
}
.hero-badge.outline {
background: transparent;
border: 2px solid var(--teal);
color: var(--teal);
}
.doctor-name {
font-size: clamp(1.4rem, 2.5vw, 2rem);
font-weight: 900;
margin-bottom: 5px;
}
.doctor-title {
font-size: 0.95rem;
font-weight: 700;
color: var(--dark);
margin-bottom: 4px;
}
.doctor-credentials {
font-size: 0.68rem;
color: var(--gray);
text-transform: uppercase;
letter-spacing: 0.2px;
font-weight: 400;
margin-bottom: 20px;
}
.hero-buttons {
display: flex;
gap: 10px;
flex-wrap: wrap;
}
.hero-image {
position: relative;
overflow: hidden;
}
.hero-image img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
} .no-drugs-bar {
padding: 16px 17px 50px;
text-align: center;
}
.no-drugs-bar .container {
background: var(--teal);
border-radius: 999px;
padding: 14px 20px;
}
.no-drugs-bar p {
color: var(--white);
font-size: clamp(24px, 2.5vw, 36px);
font-weight: 600;
text-transform: uppercase;
letter-spacing: 1.5px;
margin: 0;
} .equipment-section {
padding: 50px 0;
}
.equipment-grid,
.equipment-grid-bottom {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
.equipment-grid-bottom {
margin-top: 16px;
} .phone-bar {
padding: 22px 0;
text-align: center;
margin: 4px 0 8px;
}
.phone-bar .btn-custom {
display: block;
width: 450px;
max-width: 100%;
margin: 0 auto;
background: var(--teal);
color: var(--white);
text-align: center;
border-radius: 999px;
padding: 12px 20px;
font-size: clamp(24px, 2.2vw, 2.4rem);
font-weight: 700;
min-height: auto;
}
.phone-bar .phone-numbers {
display: block;
border: 3px solid var(--teal);
color: var(--teal);
background: var(--white);
border-radius: 999px;
text-align: center;
padding: 6px 16px;
font-size: clamp(24px, 3.5vw, 42px);
font-weight: 700;
max-width: calc(100% - 40px);
margin: 0 auto;
line-height: 1.1;
}
.phone-bar .phone-numbers a {
color: var(--teal);
transition: color var(--transition);
}
.phone-bar .phone-numbers a:hover {
color: var(--teal-dark);
} .stats-section {
padding: 40px 0;
}
.stats-since {
text-align: center;
font-size: clamp(24px, 3.5vw, 42px);
color: var(--teal);
font-weight: 600;
margin-bottom: 16px;
}
.stats-inner {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 12px;
text-align: center;
}
.stat-item {
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
padding: 10px 0;
}
.stat-oval {
width: 243px;
height: 243px;
border: 4px solid var(--teal);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: clamp(24px, 3.5vw, 42px);
font-weight: 800;
color: var(--teal-dark);
}
.stat-label {
font-size: clamp(24px, 3.5vw, 42px);
font-weight: 600;
color: var(--teal);
} @media(max-width:991px) {
.stats-inner {
grid-template-columns: repeat(2, 1fr);
gap: 16px;
}
} @media(max-width:575px) {
.stats-inner {
grid-template-columns: 1fr;
gap: 12px;
}
} .conditions-section {
padding: var(--section-pad) 0;
}
.conditions-title {
background: var(--teal);
color: var(--white);
text-align: center;
padding: 14px 30px;
font-size: clamp(24px, 3.5vw, 42px);
font-weight: 600;
line-height: 1.1;
text-transform: uppercase;
border-radius: 999px;
margin-bottom: 28px;
}
.conditions-section {
padding: clamp(32px, 4vw, 60px) 0;
}
.conditions-title {
margin: 0 auto clamp(28px, 3vw, 42px);
padding: clamp(16px, 1.8vw, 24px) clamp(24px, 3vw, 40px);
background: var(--teal);
color: var(--white);
text-align: center;
border-radius: 999px;
font-size: clamp(1.25rem, 2vw, 2rem);
font-weight: 700;
line-height: 1.05;
text-transform: uppercase;
}
.conditions-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 16px;
}
.conditions-grid>.condition-card {
width: 100%;
min-width: 0;
}
.condition-card {
max-width: 100%;
}
.condition-card img,
.condition-card-placeholder {
width: 100%;
height: clamp(260px, 24vw, 380px);
object-fit: cover;
object-position: 50% 50%;
}
.condition-card-media {
position: relative;
overflow: hidden;
border-radius: clamp(18px, 1.8vw, 28px);
box-shadow: var(--shadow);
}
.condition-card img,
.condition-card-placeholder {
display: block;
width: 100%;
height: clamp(320px, 32vw, 470px);
object-fit: cover;
object-position: 50% 50%;
transition: transform .45s ease;
}
.condition-card-placeholder {
background: var(--light-gray);
}
.condition-card-label {
position: absolute;
left: 0;
right: 0;
bottom: 0;
background: var(--teal);
padding: 10px 12px;
text-align: center;
transition: opacity var(--transition), transform var(--transition);
}
.condition-card-label span {
display: block;
color: var(--white);
font-size: clamp(1.6rem, 1.2vw, 1.5rem);
font-weight: 700;
line-height: 1;
text-transform: uppercase;
}
.condition-card-overlay {
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(20, 167, 168, .9) 0%, rgba(20, 167, 168, .82) 100%);
color: var(--white);
opacity: 0;
visibility: hidden;
transition: opacity var(--transition), visibility var(--transition);
display: flex;
align-items: center;
justify-content: center;
text-align: center;
padding: clamp(22px, 2.2vw, 34px);
}
.condition-card-overlay-inner {
max-width: 250px;
}
.condition-card-overlay h3 {
margin: 0 0 clamp(14px, 1.4vw, 20px);
color: var(--white);
font-size: clamp(1.6rem, 1.2vw, 1.5rem);
font-weight: 700;
line-height: 1.05;
text-transform: uppercase;
}
.condition-card-overlay p {
margin: 0 0 clamp(18px, 1.6vw, 26px);
color: var(--white);
font-size: clamp(1.1rem, 1vw, 1.15rem);
font-weight: 700;
line-height: 1.15;
}
.condition-card-more {
display: inline-block;
color: var(--white);
font-size: clamp(1rem, .78vw, .95rem);
font-weight: 700;
line-height: 1;
text-transform: uppercase;
}
.condition-card:hover img {
transform: scale(1.04);
}
.condition-card:hover .condition-card-overlay {
opacity: 1;
visibility: visible;
}
.condition-card:hover .condition-card-label {
opacity: 0;
transform: translateY(100%);
}
@media(max-width:991px) {
.conditions-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media(max-width:767px) {
.conditions-grid {
grid-template-columns: 1fr;
}
.condition-card img,
.condition-card-placeholder {
height: 340px;
}
.conditions-title {
border-radius: 28px;
}
} .why-us-section {
padding: clamp(36px, 5vw, 72px) 0;
background: var(--light-gray);
}
.why-us-inner {
display: grid;
grid-template-columns: 1fr 1.9fr;
gap: clamp(28px, 3vw, 56px);
align-items: start;
}
.why-us-stars {
background: var(--white);
border: 10px solid var(--teal);
border-radius: 36px;
min-height: 510px;
padding: clamp(34px, 3vw, 48px) clamp(22px, 2vw, 32px);
display: flex;
flex-direction: column;
justify-content: space-between;
}
.why-us-stars-top {
display: flex;
align-items: center;
gap: clamp(8px, .8vw, 14px);
color: var(--teal);
font-size: clamp(2.2rem, 3vw, 4rem);
line-height: 1;
}
.why-us-stars-text {
display: flex;
align-items: flex-end;
flex: 1;
padding-top: clamp(24px, 3vw, 42px);
}
.why-us-stars-text p {
margin: 0;
color: var(--teal);
font-size: clamp(2rem, 3.2vw, 4.1rem);
font-weight: 700;
line-height: .95;
}
.why-us-list {
display: flex;
flex-direction: column;
gap: clamp(18px, 2vw, 40px);
padding-top: clamp(2px, .4vw, 8px);
}
.why-us-item {
display: grid;
grid-template-columns: 96px 1fr;
align-items: stretch;
gap: 0;
filter: drop-shadow(0 8px 14px rgba(0, 0, 0, .10));
}
.why-us-item-icon {
background: var(--white);
border-radius: 24px 0 0 24px;
min-height: 98px;
display: flex;
align-items: center;
justify-content: center;
}
.why-us-item-icon svg {
width: 48px;
height: 48px;
stroke: var(--black);
stroke-width: 2.6;
stroke-linecap: round;
stroke-linejoin: round;
}
.why-us-item-bar {
background: var(--teal);
border-radius: 24px;
min-height: 98px;
padding: 18px 34px;
display: flex;
align-items: center;
margin-left: -15px;
z-index: 2;
}
.why-us-item-bar p {
margin: 0;
color: var(--white);
font-size: clamp(1.55rem, 2.3vw, 3rem);
font-weight: 700;
line-height: 1;
}
@media(max-width:1199px) {
.why-us-inner {
grid-template-columns: 260px 1fr;
}
.why-us-stars {
min-height: 420px;
border-width: 8px;
border-radius: 28px;
}
.why-us-item {
grid-template-columns: 78px 1fr;
}
.why-us-item-icon {
min-height: 82px;
border-radius: 20px 0 0 20px;
}
.why-us-item-icon svg {
width: 38px;
height: 38px;
}
.why-us-item-bar {
min-height: 82px;
border-radius: 20px;
padding: 16px 24px;
}
.why-us-item-bar p {
font-size: clamp(1.15rem, 2vw, 2rem);
}
}
@media(max-width:767px) {
.why-us-inner {
grid-template-columns: 1fr;
gap: 24px;
}
.why-us-stars {
min-height: auto;
padding: 28px 22px;
border-width: 6px;
border-radius: 24px;
}
.why-us-stars-top {
justify-content: center;
font-size: 2rem;
}
.why-us-stars-text {
justify-content: center;
text-align: center;
padding-top: 18px;
}
.why-us-stars-text p {
font-size: 2rem;
}
.why-us-list {
gap: 16px;
}
.why-us-item {
grid-template-columns: 64px 1fr;
}
.why-us-item-icon {
min-height: 68px;
border-radius: 18px 0 0 18px;
}
.why-us-item-icon svg {
width: 30px;
height: 30px;
}
.why-us-item-bar {
min-height: 68px;
border-radius: 18px;
padding: 14px 18px;
}
.why-us-item-bar p {
font-size: 1.05rem;
line-height: 1.1;
}
} .equipment-showcase {
padding: var(--section-pad) 0 0;
}
.equip-showcase-head {
display: flex;
justify-content: center;
margin-bottom: clamp(26px, 3vw, 42px);
}
.equip-showcase-pill {
display: grid;
grid-template-columns: 1fr 1fr;
align-items: stretch;
border: 4px solid var(--teal);
border-radius: 999px;
overflow: hidden;
background: var(--white);
}
.equip-showcase-pill-label {
display: flex;
align-items: center;
justify-content: center;
padding: clamp(18px, 2vw, 26px) clamp(24px, 3vw, 40px);
background: var(--teal);
color: var(--white);
font-size: clamp(1.8rem, 3vw, 3.2rem);
font-weight: 700;
line-height: 1;
text-transform: uppercase;
text-align: center;
border-radius: 50px;
}
.equip-showcase-pill-text {
display: flex;
align-items: center;
justify-content: center;
padding: clamp(14px, 1.8vw, 22px) clamp(18px, 2vw, 28px);
color: var(--teal);
font-size: clamp(1rem, 1.35vw, 1.75rem);
font-weight: 700;
line-height: 1.05;
text-align: center;
}
.equip-slider {
position: relative;
overflow: hidden;
width: 100%;
}
.equip-slider-track {
display: flex;
align-items: flex-start;
width: max-content;
will-change: transform;
}
.equip-slide {
flex: 0 0 auto;
width: clamp(260px, 28vw, 360px);
padding: 0 clamp(12px, 1.4vw, 22px);
text-align: center;
}
.equip-slide-media {
display: flex;
align-items: flex-end;
justify-content: center;
height: clamp(220px, 24vw, 330px);
margin-bottom: clamp(14px, 1.8vw, 22px);
}
.equip-slide img {
display: block;
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
object-fit: contain;
}
.equip-slide-placeholder {
width: 100%;
height: 100%;
border-radius: var(--radius);
background: var(--light-gray);
}
.equip-slide-title {
margin: 0;
color: var(--black);
font-size: clamp(1rem, 1.45vw, 2rem);
font-weight: 700;
line-height: .95;
text-transform: uppercase;
text-align: left;
max-width: 280px;
margin-inline: auto;
}
@media(max-width:991px) {
.equip-slide {
width: clamp(220px, 42vw, 300px);
}
.equip-slide-media {
height: 260px;
}
.equip-slide-title {
text-align: center;
}
}
@media(max-width:767px) {
.equip-slide {
width: clamp(220px, 72vw, 280px);
padding: 0 10px;
}
.equip-slide-media {
height: 240px;
}
.equip-slide-title {
max-width: 240px;
font-size: 1.2rem;
text-align: center;
}
}
.equip-more-link {
margin: clamp(26px, 3vw, 40px) 0 0;
text-align: center;
}
.equip-more-link a {
color: var(--teal);
text-decoration: none;
font-size: clamp(1rem, 1.5vw, 1.7rem);
font-weight: 700;
}
.equip-more-link a:hover {
text-decoration: underline;
}
@media(max-width:991px) {
.equip-showcase-pill {
grid-template-columns: 1fr;
border-radius: 32px;
}
.equip-showcase-pill-label {
font-size: clamp(1.5rem, 4vw, 2.4rem);
}
.equip-showcase-pill-text {
padding-top: 16px;
padding-bottom: 16px;
}
.equip-slide {
flex: 0 0 50%;
}
.equip-slide-media {
height: 260px;
}
.equip-slide-title {
text-align: center;
}
}
@media(max-width:767px) {
.hero-info-row .container {
flex-direction: column;
}
.equipment-showcase {
padding: 40px 0 0;
}
.equip-showcase-pill {
width: 100%;
border-radius: 28px;
}
.equip-showcase-pill-label {
padding: 18px 20px;
font-size: 1.6rem;
}
.equip-showcase-pill-text {
padding: 14px 18px;
font-size: 1rem;
}
.equip-slide {
flex: 0 0 12%;
padding: 0 10px;
}
.equip-slide-media {
height: 240px;
}
.equip-slide-title {
max-width: 240px;
font-size: 1.2rem;
text-align: center;
}
} .testimonials-slider-section {
padding: var(--section-pad) 0;
}
.testimonials-title {
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 24px;
}
.testimonials-title h2 {
font-family: var(--font-main);
font-size: clamp(17px, 3vw, 44px);
font-weight: 800;
color: var(--teal);
margin: 0;
white-space: nowrap;
}
.testimonials-line {
flex: 1;
height: 6px;
background: var(--teal);
border-radius: 999px;
}
.testimonials-slider {
overflow: hidden;
position: relative;
}
.testimonials-track {
display: flex;
width: max-content;
will-change: transform;
}
.testimonial-slide {
flex: 0 0 auto;
width: clamp(260px, 24vw, 340px);
height: auto;
padding: 0 10px;
}
.testimonial-slide img {
width: 100%;
height: clamp(200px, 22vw, 320px);
object-fit: cover;
border-radius: var(--radius);
display: block;
box-shadow: 0 6px 14px rgba(0, 0, 0, .12);
}
@media(max-width:991px) {
.testimonial-slide {
width: clamp(160px, 32vw, 220px);
}
}
@media(max-width:767px) {
.testimonial-slide {
width: clamp(140px, 60vw, 200px);
}
}@media (max-width: 1024px) {
.hamburger {
display: flex;
}
.footer-grid {
grid-template-columns: 1fr 1fr;
}
.blog-inner {
grid-template-columns: 1fr;
}
.blog-sidebar {
position: static;
}
.posts-grid {
grid-template-columns: repeat(2, 1fr);
}
.page-inner {
grid-template-columns: 1fr;
}
.single-inner {
grid-template-columns: 1fr;
}
.single-inner.no-sidebar {
max-width: 100%;
}
.pathiseis-grid,
.mixanhmata-grid {
grid-template-columns: repeat(2, 1fr);
}
} @media (max-width: 768px) {
:root {
--section-pad: 40px;
}
#main-nav.open {
display: block;
position: fixed;
top: 70px;
left: 0;
right: 0;
bottom: 0;
background: var(--white);
padding: 20px;
overflow-y: auto;
z-index: 999;
border-top: 2px solid var(--teal);
}
#main-nav.open ul {
flex-direction: column;
gap: 0;
}
#main-nav.open ul li a {
display: block;
padding: 14px 10px;
border-bottom: 1px solid var(--border);
font-size: 1rem;
}
#main-nav.open ul li ul {
display: block;
position: static;
box-shadow: none;
border: none;
padding-left: 16px;
}
#main-nav.open ul li ul li a {
font-size: 0.9rem;
padding: 10px;
} .hero-inner {
grid-template-columns: 1fr;
}
.hero-image {
height: 260px;
}
.hero-content {
padding: 24px 0;
}
.hero-badges {
gap: 8px;
} .intro-grid,
.about-grid,
.contact-grid {
grid-template-columns: 1fr;
}
.equipment-grid,
.equipment-grid-bottom,
.equip-showcase-grid {
grid-template-columns: repeat(2, 1fr);
}
.conditions-grid {
grid-template-columns: repeat(2, 1fr);
}
.why-us-inner {
grid-template-columns: 1fr;
gap: 28px;
}
.reviews-grid {
grid-template-columns: 1fr;
}
.footer-grid {
grid-template-columns: 1fr;
gap: 28px;
} .posts-grid {
grid-template-columns: 1fr;
} .equipment-single-header {
flex-direction: column;
}
.equipment-single-header img {
width: 100%;
} .post-nav {
grid-template-columns: 1fr;
} .pathiseis-grid,
.mixanhmata-grid {
grid-template-columns: 1fr;
} .footer-bottom {
flex-direction: column;
text-align: center;
}
} @media (max-width: 480px) {
:root {
--section-pad: 32px;
}
.equipment-grid,
.equipment-grid-bottom,
.equip-showcase-grid,
.conditions-grid {
grid-template-columns: 1fr;
}
.hero-tagline-inner {
flex-direction: column;
gap: 10px;
}
.phone-bar .phone-numbers {
font-size: 1rem;
}
.page-hero {
padding: 36px 0;
}
.page-404 .error-number {
font-size: 5rem;
}
.footer-grid {
grid-template-columns: 1fr;
}
.hero-buttons {
flex-direction: column;
}
.hero-buttons .btn {
width: 100%;
justify-content: center;
}
} @media print {
#site-header,
.footer-cta,
#site-footer {
display: none;
}
body {
font-size: 12pt;
color: #000;
}
a {
color: #000;
text-decoration: underline;
}
.container {
max-width: 100%;
padding: 0;
}
}