/*!
Theme Name: Kashyap Dental Clinic
Author: Inteshno Software Pvt Ltd
Author URI: https://inteshno.com/
Description: Kashyap Dental Clinic is a modern WordPress theme designed for dental clinics and healthcare providers. It features a clean, professional design with customizable hero section, services, testimonials, and appointment booking.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: kashyap-dental-clinic
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	width: 100%;
}

body {
	margin: 0;
	overflow-x: hidden;
	width: 100%;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li>ul,
li>ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: flex;
	align-items: center;
	width: auto;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover>ul,
.main-navigation ul ul li.focus>ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover>ul,
.main-navigation ul li.focus>ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.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 !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* ==========================================================================
   DOCTOR / DENTAL HERO SECTION & MODERN HEADER STYLES
   ========================================================================== */

:root {
	--color-primary: #00a4b4;
	--color-primary-dark: #008b99;
	--color-heading: #08282e;
	--color-body: #557077;
	--color-bg-light: #eaf7f9;
	--font-main: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;

	/* Masterpiece Dental Wand Navbar Variables */
	--blade-bg: #ffffff;
	--blade-top: #ffffff;
	--blade-bottom: #eaf7f9;
	--text-main: #557077;
	--text-active: #08282e;
	--gold: #00a4b4;
	--card-bg: #ffffff;
}

body {
	font-family: var(--font-main);
	color: var(--color-body);
	background-color: #ffffff;
	margin: 0;
	padding: 0;

	/*--------------------------------------------------------------
# KASHYAP DENTAL CLINIC - MASTERPIECE REFERENCE HEADER & HERO
--------------------------------------------------------------*/
	.main-theme-header {
		background-color: #ffffff;
		position: relative;
		z-index: 100;
	}

	/* Top Utility Bar */
	.top-bar {
		background-color: #008796;
		color: #ffffff;
		font-size: 0.85rem;
		font-weight: 600;
		padding: 0.6rem 0;
	}

	.header-container {
		max-width: 1360px;
		margin: 0 auto;
		padding: 0 2rem;
	}

	.top-bar .header-container {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.top-bar-left {
		display: flex;
		align-items: center;
		gap: 1.25rem;
	}

	.top-bar-left span {
		display: flex;
		align-items: center;
		gap: 6px;
	}

	.top-bar-divider {
		opacity: 0.5;
	}

	.top-bar-right {
		display: flex;
		align-items: center;
		gap: 1.5rem;
	}

	.top-bar-right a {
		color: #ffffff;
		text-decoration: none;
		display: flex;
		align-items: center;
		gap: 6px;
		transition: opacity 0.2s ease;
	}

	.top-bar-right a:hover {
		opacity: 0.85;
	}

	.top-socials {
		display: flex;
		align-items: center;
		gap: 0.85rem;
		margin-left: 0.5rem;
	}

	.top-socials a {
		color: #ffffff;
		transition: transform 0.2s ease;
	}

	.top-socials a:hover {
		transform: scale(1.15);
	}

	/* Main Navbar */
	.main-navbar-wrapper {
		padding: 1.1rem 0;
		background: #ffffff;
		position: sticky;
		top: 0;
		z-index: 1000;
		box-shadow: 0 4px 20px rgba(8, 40, 46, 0.08);
	}

	.navbar-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 2rem;
	}

	/* Logo */
	.clinic-logo-link {
		display: flex;
		align-items: center;
		gap: 12px;
		text-decoration: none;
	}

	.logo-tooth-icon {
		background: #eaf7f9;
		width: 52px;
		height: 52px;
		border-radius: 14px;
		display: flex;
		align-items: center;
		justify-content: center;
		border: 1px solid #d0f0f4;
	}

	.logo-text-block {
		display: flex;
		flex-direction: column;
		line-height: 1.05;
	}

	.logo-brand-main {
		font-size: 1.35rem;
		font-weight: 900;
		color: var(--secondary-color);
		letter-spacing: 0.02em;
	}

	.logo-brand-sub {
		font-size: 0.78rem;
		font-weight: 800;
		color: var(--primary-color);
		letter-spacing: 0.05em;
	}

	.logo-tagline {
		font-size: 0.65rem;
		font-weight: 600;
		color: #77929a;
		margin-top: 2px;
	}

	/* Navigation Links */
	.clinic-navigation {
		display: flex;
		align-items: center;
	}

	.nav-menu {
		display: flex;
		align-items: center;
		gap: 1.5rem;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.nav-menu li a {
		color: var(--secondary-color);
		font-size: 0.95rem;
		font-weight: 700;
		text-decoration: none;
		padding: 0.4rem 0;
		white-space: nowrap;
		position: relative;
		transition: color 0.2s ease;
	}

	.nav-menu li.active a,
	.nav-menu li a:hover {
		color: var(--primary-color);
	}

	.nav-menu li.active a::after {
		content: "";
		position: absolute;
		bottom: -4px;
		left: 0;
		width: 100%;
		height: 3px;
		background-color: var(--primary-color);
		border-radius: 2px;
	}

	.nav-menu .arrow {
		font-size: 0.75rem;
		margin-left: 2px;
	}

	/* Header Button */
	.btn-book-header {
		background-color: var(--primary-color);
		color: #ffffff !important;
		padding: 0.65rem 1.4rem;
		border-radius: 30px;
		font-weight: 700;
		font-size: 0.9rem;
		white-space: nowrap;
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		gap: 8px;
		box-shadow: 0 6px 18px rgba(0, 164, 180, 0.25);
		transition: all 0.3s ease;
	}

	.official-logo-img {
		height: 100px;
		max-width: 300px;
		width: auto;
		object-fit: contain;
		display: block;
	}

	.footer-official-logo-img {
		height: 100%;
		max-width: 100%;
		width: auto;
		object-fit: contain;
		display: block;
		background: #ffffff;
		padding: 6px 14px;
		border-radius: 12px;
		box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
	}

	/*--------------------------------------------------------------
# HERO MASTERPIECE SECTION
--------------------------------------------------------------*/
	.hero-masterpiece-section {
		position: relative;
		background-color: #f7fcfd;
		background-image: radial-gradient(rgba(0, 164, 180, 0.12) 1.2px, transparent 1.2px);
		background-size: 24px 24px;
		padding: 2.5rem 0 5.5rem;
	}

	/* Curved Background Right */
	.hero-bg-curved-wrapper {
		position: absolute;
		top: 0;
		right: 0;
		width: 50%;
		height: 560px;
		overflow: hidden;
		z-index: 1;
	}

	.hero-patient-bg {
		width: 100%;
		height: 100%;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		border-top-left-radius: 450px;
		border-bottom-left-radius: 450px;
		box-shadow: -15px 0 40px rgba(0, 164, 180, 0.12);
	}

	.hero-curved-overlay {
		position: absolute;
		top: 0;
		left: -24px;
		width: 100%;
		height: 100%;
		border-top-left-radius: 460px;
		border-bottom-left-radius: 460px;
		border-left: 28px solid rgba(0, 164, 180, 0.18);
		pointer-events: none;
	}

	.hero-main-container {
		max-width: 1360px;
		margin: 0 auto;
		padding: 0 2rem;
		position: relative;
		z-index: 2;
	}

	.hero-masterpiece-grid {
		display: grid;
		grid-template-columns: 1.15fr 1fr;
		gap: 2rem;
		align-items: center;
	}

	.hero-pill-badge {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		background: #e1f5f8;
		color: #008796;
		padding: 0.45rem 1.1rem;
		border-radius: 30px;
		font-size: 0.82rem;
		font-weight: 800;
		letter-spacing: 0.04em;
		margin-bottom: 1.5rem;
	}

	.hero-masterpiece-title {
		font-size: 3rem;
		line-height: 1.1;
		font-weight: 900;
		color: var(--secondary-color);
		margin: 0 0 1.5rem 0;
		letter-spacing: -0.03em;
		position: relative;
	}

	.cyan-highlight {
		color: var(--primary-color);
	}

	.smile-curve-svg {
		width: 115px;
		height: 30px;
		display: inline-block;
		vertical-align: middle;
		margin-left: 8px;
	}

	.hero-masterpiece-desc {
		font-size: 1.125rem;
		line-height: 1.75;
		color: #557077;
		margin: 0 0 2.2rem 0;
		max-width: 520px;
	}

	.hero-action-buttons {
		display: flex;
		align-items: center;
		gap: 1.25rem;
		margin-bottom: 3rem;
	}

	.btn-hero-primary {
		background-color: var(--primary-color);
		color: #ffffff !important;
		padding: 0.95rem 2.2rem;
		border-radius: 30px;
		font-weight: 800;
		font-size: 0.7rem;
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		gap: 10px;
		box-shadow: 0 8px 24px rgba(0, 164, 180, 0.3);
		transition: all 0.3s ease;
	}

	.btn-hero-primary:hover {
		background-color: #008b99;
		transform: translateY(-2px);
		box-shadow: 0 12px 28px rgba(0, 164, 180, 0.4);
	}

	.btn-hero-video {
		background-color: #ffffff;
		color: var(--secondary-color) !important;
		border: 1.5px solid #d0ebf0;
		padding: 0.75rem 2rem 0.75rem 1rem;
		border-radius: 30px;
		font-weight: 800;
		font-size: 1rem;
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		gap: 10px;
		transition: all 0.3s ease;
	}

	.btn-hero-video:hover {
		border-color: var(--primary-color);
		color: var(--primary-color) !important;
		transform: translateY(-2px);
		box-shadow: 0 8px 20px rgba(0, 164, 180, 0.12);
	}

	.play-icon-circle {
		width: 32px;
		height: 32px;
		border-radius: 50%;
		background-color: #eaf7f9;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	/* 4 Feature Cards Grid */
	.hero-feature-cards {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1rem;
		max-width: 620px;
	}

	.feature-card {
		background: #ffffff;
		border-radius: 18px;
		padding: 1.25rem 1rem;
		box-shadow: 0 8px 24px rgba(8, 40, 46, 0.04);
		border: 1px solid #eaf6f8;
		transition: all 0.3s ease;
		text-align: center;
	}

	.feature-card:hover {
		transform: translateY(-6px);
		box-shadow: 0 18px 36px rgba(0, 164, 180, 0.18);
		border-color: var(--primary-color);
	}

	.feature-card:hover .feature-icon-circle {
		background: var(--primary-color);
		transform: scale(1.12) rotate(6deg);
	}

	.feature-card:hover .feature-icon-circle svg {
		stroke: #ffffff;
	}

	.stat-item:hover .stat-icon-box {
		transform: scale(1.15) rotate(-6deg);
		background: var(--primary-color);
		color: #ffffff;
		transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
	}

	.feature-icon-circle {
		width: 44px;
		height: 44px;
		border-radius: 12px;
		background: #eaf7f9;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0 auto 0.75rem;
		transition: all 0.3s ease;
	}

	.feature-card h4 {
		font-size: 0.88rem;
		font-weight: 800;
		color: var(--secondary-color);
		margin: 0 0 4px 0;
		line-height: 1.2;
	}

	.feature-card p {
		font-size: 0.72rem;
		color: #77929a;
		margin: 0;
		line-height: 1.3;
	}

	/* Floating Avatar Cluster Pill Badge over Patient Image */
	.patient-avatars-floating-badge {
		position: absolute;
		bottom: 12px;
		right: 6%;
		background: #ffffff;
		border-radius: 50px;
		padding: 0.5rem 1.25rem 0.5rem 0.6rem;
		box-shadow: 0 16px 36px rgba(8, 40, 46, 0.16);
		display: flex;
		align-items: center;
		gap: 12px;
		z-index: 10;
		border: 1px solid #e1f4f7;
	}

	.patient-avatars-cluster {
		display: flex;
		align-items: center;
	}

	.patient-avatars-cluster img {
		width: 38px;
		height: 38px;
		border-radius: 50%;
		object-fit: cover;
		border: 2px solid #ffffff;
		margin-left: -12px;
	}

	.patient-avatars-cluster img:first-child {
		margin-left: 0;
	}

	.patient-stats-pill {
		display: flex;
		align-items: center;
		gap: 8px;
	}

	.patient-stats-pill .pill-number {
		background: var(--primary-color);
		color: #ffffff;
		font-weight: 900;
		font-size: 0.92rem;
		padding: 0.35rem 0.75rem;
		border-radius: 20px;
	}

	.patient-stats-pill .pill-label {
		font-size: 0.88rem;
		font-weight: 800;
		color: var(--secondary-color);
		white-space: nowrap;
	}

	/* Full-Width Solid Cyan Counter Bar */
	.hero-cyan-counter-bar-wrapper {
		position: relative;
		margin-top: 2.5rem;
		z-index: 10;
	}

	.hero-cyan-counter-bar {
		max-width: 1360px;
		margin: 0 auto;
		background: var(--primary-color);
		border-radius: 18px;
		padding: 1.4rem 2rem;
		box-shadow: 0 16px 36px rgba(0, 164, 180, 0.25);
		display: grid;
		grid-template-columns: repeat(5, 1fr);
		gap: 1rem;
	}

	.cyan-counter-item {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 1rem;
		color: #ffffff;
	}

	.cyan-counter-item:not(:last-child) {
		border-right: 1px solid rgba(255, 255, 255, 0.22);
	}

	.cyan-icon {
		font-size: 1.8rem;
	}

	.cyan-info strong {
		display: block;
		font-size: 1.5rem;
		font-weight: 900;
		line-height: 1.1;
		color: #ffffff;
	}

	.cyan-info span {
		font-size: 0.82rem;
		font-weight: 600;
		color: rgba(255, 255, 255, 0.9);
		white-space: nowrap;
	}

	/* 6 Key Featured Treatment Cards Grid */
	.hero-featured-treatments-section {
		margin-top: 2.5rem;
		position: relative;
		z-index: 10;
	}

	.featured-treatments-grid {
		display: grid;
		grid-template-columns: repeat(6, 1fr);
		gap: 1.25rem;
	}

	.featured-treatment-card {
		background: #ffffff;
		border-radius: 20px;
		padding: 1rem;
		box-shadow: 0 10px 28px rgba(8, 40, 46, 0.05);
		border: 1px solid #eaf6f8;
		transition: all 0.35s ease;
		text-align: center;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.featured-treatment-card:hover {
		transform: translateY(-8px);
		box-shadow: 0 18px 40px rgba(0, 164, 180, 0.2);
		border-color: var(--primary-color);
	}

	.treatment-img-box {
		width: 100%;
		height: 130px;
		border-radius: 14px;
		overflow: hidden;
		margin-bottom: 0.85rem;
	}

	.treatment-img-box img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.4s ease;
	}

	.featured-treatment-card:hover .treatment-img-box img {
		transform: scale(1.08);
	}

	.treatment-card-body h4 {
		font-size: 0.98rem;
		font-weight: 800;
		color: var(--secondary-color);
		margin: 0 0 4px 0;
		line-height: 1.25;
	}

	.treatment-card-body p {
		font-size: 0.76rem;
		color: #77929a;
		margin: 0 0 0.85rem 0;
		line-height: 1.3;
	}

	.treatment-circle-arrow {
		width: 34px;
		height: 34px;
		border-radius: 50%;
		background-color: var(--primary-color);
		color: #ffffff !important;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-size: 1.1rem;
		font-weight: 900;
		text-decoration: none;
		transition: all 0.3s ease;
	}

	.featured-treatment-card:hover .treatment-circle-arrow {
		background-color: var(--secondary-color);
		transform: scale(1.1);
	}

	/* Floating Right Ribbon */
	.hero-vertical-ribbon {
		position: fixed;
		right: 0;
		top: 40%;
		background: var(--primary-color);
		border-top-left-radius: 12px;
		border-bottom-left-radius: 12px;
		padding: 12px 10px;
		display: flex;
		flex-direction: column;
		gap: 16px;
		z-index: 9999;
		box-shadow: -4px 6px 18px rgba(0, 164, 180, 0.3);
	}

	.hero-vertical-ribbon a {
		color: #ffffff;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: transform 0.2s ease;
	}

	.hero-vertical-ribbon a:hover {
		transform: scale(1.2);
	}

	.btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 0.9rem 2.2rem;
		border-radius: 30px;
		font-weight: 700;
		font-size: 1rem;
		text-decoration: none;
		transition: all 0.3s ease;
		cursor: pointer;
	}

	.btn-primary {
		background-color: var(--color-primary);
		color: #ffffff !important;
		box-shadow: 0 8px 24px rgba(0, 164, 180, 0.3);
	}

	.btn-primary:hover {
		background-color: var(--color-primary-dark);
		transform: translateY(-2px);
		box-shadow: 0 12px 28px rgba(0, 164, 180, 0.4);
	}

	.btn-outline {
		background-color: transparent;
		color: var(--color-heading) !important;
		border: 2px solid var(--color-heading);
	}

	.btn-outline:hover {
		background-color: var(--color-heading);
		color: #ffffff !important;
		transform: translateY(-2px);
	}

	/* Floating Sidebar Actions (Right side widget) */
	.hero-side-bar {
		position: fixed;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		display: flex;
		flex-direction: column;
		background-color: var(--color-primary);
		border-radius: 8px 0 0 8px;
		overflow: hidden;
		z-index: 99;
		box-shadow: -4px 6px 20px rgba(0, 164, 180, 0.3);
	}

	.hero-side-item {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		color: #ffffff;
		text-decoration: none;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
		transition: background-color 0.2s ease;
	}

	.hero-side-item:last-child {
		border-bottom: none;
	}

	.hero-side-item:hover {
		background-color: var(--color-primary-dark);
	}

	/* Responsive Breakpoints */
	@media (max-width: 1024px) {
		.hero-grid {
			grid-template-columns: 1fr;
			gap: 2rem;
		}

		.hero-heading {
			font-size: 2.8rem;
		}

		.hero-container {
			margin-top: -40px;
		}
	}

	@media (max-width: 768px) {
		.header-inner {
			flex-direction: column;
			gap: 1rem;
		}

		.hero-banner-wrapper {
			height: 340px;
		}

		.hero-heading {
			font-size: 2.2rem;
		}

		.hero-paragraph {
			font-size: 1rem;
		}

		.hero-side-bar {
			display: none;
		}
	}

	/* ==========================================================================
   COMPLETE HOME PAGE SECTIONS STYLES
   ========================================================================== */

	/* Shared Section Utilities */
	.section-container {
		max-width: 1320px;
		margin: 0 auto;
		padding: 0 2rem;
	}

	.text-center {
		text-align: center;
	}

	.section-header {
		margin-bottom: 3.5rem;
	}

	.section-tagline {
		font-size: 0.875rem;
		font-weight: 800;
		letter-spacing: 0.1em;
		color: var(--color-primary);
		text-transform: uppercase;
		display: inline-block;
		margin-bottom: 0.75rem;
	}

	.section-title {
		font-size: 2.5rem;
		font-weight: 800;
		color: var(--color-heading);
		line-height: 1.2;
		margin: 0;
		letter-spacing: -0.02em;
	}

	.section-subtitle {
		font-size: 1.1rem;
		color: var(--color-body);
		margin-top: 1rem;
		max-width: 620px;
		margin-left: auto;
		margin-right: auto;
		line-height: 1.6;
	}

	/* 2. STATS SECTION */
	.stats-section {
		background-color: #ffffff;
		margin-top: -50px;
		position: relative;
		z-index: 10;
		padding-bottom: 3rem;
	}

	.stats-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1.5rem;
	}

	.stat-card {
		background: #ffffff;
		border: 1px solid #eaf4f6;
		border-radius: 20px;
		padding: 1.75rem 1.5rem;
		display: flex;
		align-items: center;
		gap: 1.25rem;
		box-shadow: 0 12px 35px rgba(8, 40, 46, 0.05);
		transition: all 0.3s ease;
	}

	.stat-card:hover {
		transform: translateY(-6px);
		box-shadow: 0 18px 40px rgba(0, 164, 180, 0.15);
		border-color: rgba(0, 164, 180, 0.3);
	}

	.stat-icon {
		width: 56px;
		height: 56px;
		border-radius: 14px;
		background-color: rgba(0, 164, 180, 0.1);
		color: var(--color-primary);
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.stat-number {
		display: block;
		font-size: 1.85rem;
		font-weight: 800;
		color: var(--color-heading);
		line-height: 1.1;
	}

	.stat-label {
		font-size: 0.9rem;
		color: var(--color-body);
		font-weight: 600;
		margin-top: 4px;
	}

	/* 3. ABOUT OUR CLINIC SECTION */
	.about-section {
		padding: 6rem 0;
		background-color: #ffffff;
	}

	.about-grid {
		display: grid;
		grid-template-columns: 1fr 1.15fr;
		gap: 4.5rem;
		align-items: center;
	}

	.about-image-wrapper {
		position: relative;
		border-radius: 24px;
		overflow: hidden;
		box-shadow: 0 20px 45px rgba(8, 40, 46, 0.08);
	}

	.about-main-img {
		width: 100%;
		height: 500px;
		object-fit: cover;
		display: block;
	}

	.experience-badge {
		position: absolute;
		bottom: 2rem;
		left: 2rem;
		background-color: var(--color-primary);
		color: #ffffff;
		padding: 1.25rem 1.75rem;
		border-radius: 18px;
		box-shadow: 0 12px 30px rgba(0, 164, 180, 0.4);
		display: flex;
		align-items: center;
		gap: 1rem;
	}

	.badge-num {
		font-size: 2.2rem;
		font-weight: 800;
		line-height: 1;
	}

	.badge-text {
		font-size: 0.9rem;
		font-weight: 700;
		max-width: 130px;
		line-height: 1.3;
	}

	.about-content .section-title {
		margin-top: 0.5rem;
		margin-bottom: 1.25rem;
	}

	.about-features-grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1.5rem;
		margin-top: 2rem;
		padding-bottom: 2rem;
		border-bottom: 1px solid rgba(8, 40, 46, 0.1);
	}

	.feature-list {
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.feature-list li {
		display: flex;
		align-items: flex-start;
		gap: 0.75rem;
		margin-bottom: 1.25rem;
		font-weight: 600;
		color: var(--color-text);
		font-size: 0.95rem;
		line-height: 1.4;
	}

	.feature-list li:last-child {
		margin-bottom: 0;
	}

	.feature-list .check-icon {
		flex-shrink: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 24px;
		height: 24px;
		background: var(--color-primary);
		/* Solid cyan background */
		border-radius: 50%;
		margin-top: 2px;
	}

	.feature-list .check-icon svg {
		stroke: #ffffff;
		/* White checkmark */
		width: 14px;
		height: 14px;
	}

	.about-doctor-card {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
		margin-top: 2rem;
		flex-wrap: wrap;
	}

	.about-doctor-card .doc-name {
		font-size: 1.5rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 0.5rem 0;
	}

	.about-doctor-card .doc-role {
		font-size: 0.95rem;
		color: var(--color-text-light);
		font-weight: 500;
	}

	.about-doctor-card .btn-primary {
		padding: 1rem 1.75rem;
		border-radius: 12px;
		font-size: 1rem;
	}

	.section-desc {
		font-size: 1.1rem;
		line-height: 1.75;
		color: var(--color-body);
		margin-bottom: 2rem;
	}

	.about-checklist {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1.25rem;
		margin-bottom: 2.5rem;
	}

	.check-item {
		display: flex;
		align-items: center;
		gap: 0.75rem;
		font-weight: 600;
		color: var(--color-heading);
		font-size: 0.95rem;
	}

	.check-icon {
		width: 24px;
		height: 24px;
		border-radius: 50%;
		background-color: rgba(0, 164, 180, 0.12);
		color: var(--color-primary);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-size: 0.85rem;
		font-weight: 800;
		flex-shrink: 0;
	}

	.about-doctor-signature {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding-top: 1.75rem;
		border-top: 1px solid #eef6f8;
	}

	.doc-name {
		font-size: 1.25rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0;
	}

	.doc-role {
		font-size: 0.9rem;
		color: var(--color-body);
		font-weight: 500;
	}

	/* 4. SERVICES SECTION */
	.services-section {
		padding: 6rem 0;
		background-color: #f6fcfd;
	}

	.services-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	.services-12-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 1.75rem;
	}

	@media (min-width: 1280px) {
		.services-12-grid {
			grid-template-columns: repeat(4, 1fr);
		}
	}

	.service-card {
		background: #ffffff;
		border-radius: 20px;
		padding: 2.5rem 2rem;
		border: 1px solid #e8f4f6;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.03);
		transition: all 0.35s ease;
	}

	.service-card:hover {
		transform: translateY(-8px);
		box-shadow: 0 20px 45px rgba(0, 164, 180, 0.15);
		border-color: rgba(0, 164, 180, 0.3);
	}

	.service-icon-box {
		width: 64px;
		height: 64px;
		border-radius: 16px;
		background-color: var(--color-bg-light);
		color: var(--color-primary);
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 1.5rem;
		transition: all 0.3s ease;
	}

	.service-card:hover .service-icon-box {
		background-color: var(--color-primary);
		color: #ffffff;
	}

	.service-title {
		font-size: 1.35rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 0.75rem 0;
	}

	.service-desc {
		font-size: 0.98rem;
		line-height: 1.65;
		color: var(--color-body);
		margin-bottom: 1.5rem;
	}

	.service-link {
		font-weight: 700;
		color: var(--color-primary);
		text-decoration: none;
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		transition: gap 0.2s ease;
	}

	.service-card:hover .service-link {
		gap: 0.8rem;
	}

	/* 5. WHY CHOOSE US SECTION */
	.why-choose-us-section {
		padding: 6rem 0;
		background-color: #ffffff;
	}

	.why-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 2rem;
	}

	.why-card {
		background: #ffffff;
		padding: 2.25rem 1.75rem;
		border-radius: 20px;
		text-align: center;
		border: 1px solid #eef6f8;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.03);
		transition: all 0.3s ease;
	}

	.why-card:hover {
		transform: translateY(-6px);
		border-color: rgba(0, 164, 180, 0.3);
		box-shadow: 0 15px 35px rgba(0, 164, 180, 0.1);
	}

	.why-icon {
		font-size: 2.75rem;
		margin-bottom: 1rem;
	}

	.why-card h3 {
		font-size: 1.2rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 0.5rem 0;
	}

	.why-card p {
		font-size: 0.95rem;
		line-height: 1.55;
		color: var(--color-body);
		margin: 0;
	}

	/* 6. APPOINTMENT BANNER */
	.appointment-banner-section {
		padding: 3rem 0 6rem 0;
	}

	.appointment-card {
		background: linear-gradient(135deg, var(--secondary-color) 0%, #004d56 100%);
		border-radius: 28px;
		padding: 4rem;
		color: #ffffff;
		display: grid;
		grid-template-columns: 1.1fr 1fr;
		gap: 4rem;
		align-items: center;
		box-shadow: 0 25px 60px rgba(8, 40, 46, 0.25);
	}

	.badge-tag {
		background: rgba(0, 164, 180, 0.25);
		color: #ffffff;
		padding: 0.4rem 1rem;
		border-radius: 20px;
		font-size: 0.8rem;
		font-weight: 800;
		letter-spacing: 0.08em;
		display: inline-block;
		margin-bottom: 1.25rem;
	}

	.appointment-left h2 {
		font-size: 2.5rem;
		font-weight: 800;
		color: #ffffff;
		margin: 0 0 1rem 0;
		line-height: 1.2;
	}

	.appointment-left p {
		font-size: 1.1rem;
		color: #b2d5dc;
		margin-bottom: 2rem;
		line-height: 1.65;
	}

	.emergency-contact-box {
		display: inline-flex;
		align-items: center;
		gap: 1.25rem;
		background: rgba(255, 255, 255, 0.08);
		padding: 1.25rem 1.75rem;
		border-radius: 18px;
		border: 1px solid rgba(255, 255, 255, 0.12);
	}

	.em-icon {
		font-size: 2rem;
	}

	.emergency-contact-box small {
		display: block;
		font-size: 0.8rem;
		color: #94c4cd;
		text-transform: uppercase;
		letter-spacing: 0.05em;
	}

	.emergency-contact-box strong {
		font-size: 1.35rem;
		color: #ffffff;
	}

	.appointment-form {
		background: #ffffff;
		border-radius: 24px;
		padding: 2.5rem;
		box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
	}

	.form-group {
		margin-bottom: 1.25rem;
	}

	.form-input {
		width: 100%;
		padding: 1rem 1.25rem;
		border: 1px solid #e0e8ea;
		border-radius: 12px;
		font-size: 0.95rem;
		font-family: inherit;
		color: var(--color-heading);
		outline: none;
		transition: all 0.2s ease;
		box-sizing: border-box;
	}

	.form-input:focus {
		border-color: var(--color-primary);
		box-shadow: 0 0 0 4px rgba(0, 164, 180, 0.15);
	}

	.btn-block {
		width: 100%;
		margin-top: 0.5rem;
	}

	/* 7. PATIENT TESTIMONIALS */
	.testimonials-section {
		padding: 6rem 0;
		background-color: #f6fcfd;
	}

	.testimonials-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	.testimonial-card {
		background: #ffffff;
		padding: 2.5rem 2rem;
		border-radius: 20px;
		border: 1px solid #e8f4f6;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.03);
	}

	.stars {
		color: #ffb800;
		font-size: 1.25rem;
		margin-bottom: 1.25rem;
	}

	.review-text {
		font-size: 1.05rem;
		line-height: 1.65;
		color: var(--color-body);
		font-style: italic;
		margin-bottom: 2rem;
	}

	.patient-profile {
		display: flex;
		align-items: center;
		gap: 1rem;
	}

	.patient-avatar {
		width: 48px;
		height: 48px;
		border-radius: 50%;
		background-color: var(--color-primary);
		color: #ffffff;
		font-weight: 800;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1rem;
	}

	.patient-name {
		font-size: 1.05rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0;
	}

	.patient-treatment {
		font-size: 0.85rem;
		color: var(--color-body);
	}

	/* 8. LATEST BLOG SECTION */
	.blog-section {
		padding: 6rem 0;
		background-color: #ffffff;
	}

	.blog-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	.blog-card {
		background: #ffffff;
		border-radius: 20px;
		overflow: hidden;
		border: 1px solid #eef6f8;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.04);
		transition: all 0.3s ease;
	}

	.blog-card:hover {
		transform: translateY(-6px);
		box-shadow: 0 20px 40px rgba(0, 164, 180, 0.12);
	}

	.blog-image {
		width: 100%;
		height: 220px;
		background-size: cover;
		background-position: center;
	}

	.blog-content {
		padding: 2rem 1.75rem;
	}

	.blog-date {
		font-size: 0.85rem;
		font-weight: 700;
		color: var(--color-primary);
		display: block;
		margin-bottom: 0.5rem;
	}

	.blog-title {
		font-size: 1.25rem;
		font-weight: 800;
		color: var(--color-heading);
		line-height: 1.35;
		margin: 0 0 0.75rem 0;
	}

	.blog-excerpt {
		font-size: 0.95rem;
		color: var(--color-body);
		line-height: 1.6;
		margin-bottom: 1.25rem;
	}

	.blog-read-more {
		font-weight: 700;
		color: var(--color-heading);
		text-decoration: none;
		transition: color 0.2s ease;
	}

	.blog-card:hover .blog-read-more {
		color: var(--color-primary);
	}

	/* Responsive Overrides */
	@media (max-width: 1024px) {
		.stats-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.about-grid {
			grid-template-columns: 1fr;
			gap: 2.5rem;
		}

		.services-grid,
		.testimonials-grid,
		.blog-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.why-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.appointment-card {
			grid-template-columns: 1fr;
			padding: 3rem 2rem;
		}
	}

	@media (max-width: 640px) {

		.stats-grid,
		.services-grid,
		.why-grid,
		.testimonials-grid,
		.blog-grid {
			grid-template-columns: 1fr;
		}

		.about-checklist {
			grid-template-columns: 1fr;
		}

		.section-title {
			font-size: 2rem;
		}

		.about-doctor-signature {
			flex-direction: column;
			align-items: flex-start;
			gap: 1.25rem;
		}
	}

	/* FOOTER STYLES */
	.site-footer {
		background-color: #051e23;
		color: #a3c4cb;
		margin-top: 0;
	}

	.footer-main {
		padding: 5rem 0 4rem 0;
	}

	.footer-grid {
		display: grid;
		grid-template-columns: 1.4fr 1fr 1fr 1fr;
		gap: 3rem;
	}

	.text-white {
		color: #ffffff !important;
	}

	.footer-desc {
		font-size: 0.95rem;
		line-height: 1.65;
		color: #8bb1b9;
		margin-top: 1rem;
	}

	.footer-heading {
		font-size: 1.15rem;
		font-weight: 800;
		color: #ffffff;
		margin: 0 0 1.5rem 0;
		letter-spacing: -0.01em;
	}

	.footer-links {
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.footer-links li {
		margin-bottom: 0.75rem;
	}

	.footer-links a {
		color: #8bb1b9;
		text-decoration: none;
		font-size: 0.95rem;
		transition: color 0.2s ease;
	}

	.footer-links a:hover {
		color: var(--color-primary);
	}

	.footer-hours {
		font-size: 0.95rem;
		line-height: 1.6;
		color: #8bb1b9;
		margin-bottom: 1.5rem;
	}

	.footer-hours strong {
		color: #ffffff;
	}

	.footer-phone-box small {
		display: block;
		font-size: 0.8rem;
		color: var(--color-primary);
		text-transform: uppercase;
		font-weight: 700;
	}

	.footer-phone-box a {
		font-size: 1.2rem;
		font-weight: 800;
		color: #ffffff;
		text-decoration: none;
	}

	.footer-bottom {
		background-color: #031417;
		padding: 1.5rem 0;
		border-top: 1px solid rgba(255, 255, 255, 0.05);
		font-size: 0.9rem;
		color: #6a9199;
	}

	.bottom-flex {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.bottom-flex p {
		margin: 0;
	}

	.bottom-links {
		display: flex;
		gap: 1.5rem;
	}

	.bottom-links a {
		color: #6a9199;
		text-decoration: none;
	}

	.bottom-links a:hover {
		color: var(--color-primary);
	}

	@media (max-width: 1024px) {
		.footer-grid {
			grid-template-columns: 1fr 1fr;
			gap: 2.5rem;
		}
	}

	@media (max-width: 991px) {
		.awareness-grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	@media (max-width: 640px) {
		.awareness-grid {
			grid-template-columns: 1fr;
		}

		.about-features-grid {
			grid-template-columns: 1fr;
		}

		.footer-grid {
			grid-template-columns: 1fr;
		}

		.bottom-flex {
			flex-direction: column;
			gap: 1rem;
			text-align: center;
		}
	}

	/* ==========================================================================
   5 PAGES CUSTOM TEMPLATE STYLES
   ========================================================================== */

	/* Page Inner Banner */
	.page-hero-banner {
		background: linear-gradient(135deg, var(--secondary-color) 0%, #004d56 100%);
		padding: 5rem 0 4.5rem 0;
		color: #ffffff;
		position: relative;
		overflow: hidden;
	}

	.banner-tagline {
		color: #ffffff !important;
		font-weight: 800;
		font-size: 0.85rem;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		display: inline-block;
		margin-bottom: 0.75rem;
	}

	.banner-title {
		font-size: 3rem;
		font-weight: 800;
		color: #ffffff;
		margin: 0;
		letter-spacing: -0.02em;
	}

	.banner-subtitle {
		font-size: 1.15rem;
		color: #a3c4cb;
		margin-top: 0.75rem;
	}

	.padding-y-lg {
		padding: 5.5rem 0;
	}

	.bg-light-teal {
		background-color: #f6fcfd;
	}

	.margin-top-lg {
		margin-top: 3rem;
	}

	/* Values Grid (About Page) */
	.values-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	.value-card {
		background: #ffffff;
		border-radius: 20px;
		padding: 2.5rem 2rem;
		border: 1px solid #e8f4f6;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.03);
		text-align: center;
	}

	.value-icon {
		font-size: 3rem;
		margin-bottom: 1.25rem;
	}

	.value-card h3 {
		font-size: 1.3rem;
		font-weight: 800;
		color: var(--color-heading);
		margin-bottom: 0.75rem;
	}

	.value-card p {
		font-size: 0.98rem;
		color: var(--color-body);
		line-height: 1.65;
	}

	/* Doctor Bio Section */
	.doctor-bio-card {
		background: #ffffff;
		border-radius: 24px;
		border: 1px solid #e8f4f6;
		overflow: hidden;
		box-shadow: 0 15px 40px rgba(8, 40, 46, 0.06);
		display: grid;
		grid-template-columns: 1fr 1.3fr;
	}

	.doctor-bio-image {
		background-size: cover;
		background-position: center top;
		min-height: 400px;
	}

	.doctor-bio-info {
		padding: 3.5rem 3rem;
	}

	.doctor-bio-info h2 {
		font-size: 2.2rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0.5rem 0 0.25rem 0;
	}

	.bio-subtitle {
		color: var(--color-primary);
		font-weight: 700;
		font-size: 1rem;
		margin-bottom: 1.5rem;
	}

	.bio-text {
		font-size: 1.05rem;
		line-height: 1.75;
		color: var(--color-body);
		margin-bottom: 2rem;
	}

	/* FAQ Accordion (Services Page) */
	.faq-accordion {
		max-width: 900px;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		gap: 1.25rem;
	}

	.faq-item {
		background: #ffffff;
		border-radius: 16px;
		padding: 1.75rem 2rem;
		border: 1px solid #e8f4f6;
		box-shadow: 0 6px 20px rgba(8, 40, 46, 0.02);
	}

	.faq-question {
		font-size: 1.2rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 0.75rem 0;
	}

	.faq-answer p {
		font-size: 1rem;
		color: var(--color-body);
		line-height: 1.65;
		margin: 0;
	}

	/* Contact Page Grid & Form */
	.contact-grid {
		display: grid;
		grid-template-columns: 1fr 1.2fr;
		gap: 4rem;
		align-items: flex-start;
	}

	.contact-cards-stack {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		margin-top: 2rem;
	}

	.contact-card {
		background: #ffffff;
		border: 1px solid #eaf4f6;
		border-radius: 18px;
		padding: 1.5rem;
		display: flex;
		align-items: center;
		gap: 1.25rem;
		box-shadow: 0 8px 25px rgba(8, 40, 46, 0.03);
	}

	.contact-icon {
		font-size: 2rem;
		width: 54px;
		height: 54px;
		border-radius: 14px;
		background-color: var(--color-bg-light);
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
	}

	.contact-card h4 {
		font-size: 1.1rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 4px 0;
	}

	.contact-card p {
		margin: 0;
		font-size: 0.95rem;
		color: var(--color-body);
		line-height: 1.5;
	}

	.contact-card a {
		color: var(--color-primary);
		font-weight: 700;
		text-decoration: none;
	}

	.contact-page-form {
		background: #ffffff;
		border-radius: 24px;
		padding: 2.75rem 2.25rem;
		border: 1px solid #e8f4f6;
		box-shadow: 0 20px 45px rgba(8, 40, 46, 0.06);
	}

	.form-title {
		font-size: 1.75rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0.5rem 0 1.5rem 0;
	}

	.form-label {
		display: block;
		font-size: 0.88rem;
		font-weight: 700;
		color: var(--color-heading);
		margin-bottom: 0.4rem;
	}

	/* Map Section */
	.map-section {
		padding-bottom: 5rem;
	}

	.map-placeholder {
		background: linear-gradient(135deg, #eaf7f9 0%, #f6fcfd 100%);
		border-radius: 24px;
		border: 2px dashed var(--primary-color);
		padding: 4rem 2rem;
		text-align: center;
	}

	.map-icon {
		font-size: 3rem;
	}

	.map-placeholder h3 {
		font-size: 1.5rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0.75rem 0 0.25rem 0;
	}

	/* Gallery Grid Page */
	.gallery-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}

	.gallery-card {
		background: #ffffff;
		border-radius: 20px;
		overflow: hidden;
		border: 1px solid #e8f4f6;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.04);
		transition: all 0.3s ease;
	}

	.gallery-card:hover {
		transform: translateY(-6px);
		box-shadow: 0 20px 40px rgba(0, 164, 180, 0.15);
	}

	.gallery-image {
		width: 100%;
		height: 250px;
		background-size: cover;
		background-position: center;
		position: relative;
	}

	.gallery-badge {
		position: absolute;
		top: 1rem;
		right: 1rem;
		background: var(--color-primary);
		color: #ffffff;
		font-size: 0.8rem;
		font-weight: 800;
		padding: 0.35rem 0.85rem;
		border-radius: 20px;
	}

	.gallery-info {
		padding: 1.75rem;
	}

	.gallery-info h3 {
		font-size: 1.25rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 0.5rem 0;
	}

	.gallery-info p {
		font-size: 0.95rem;
		color: var(--color-body);
		margin: 0;
		line-height: 1.55;
	}

	/* Blog Page Grid & Sidebar */
	.blog-page-grid {
		display: grid;
		grid-template-columns: 2fr 1fr;
		gap: 3.5rem;
	}

	.blog-page-posts {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	.blog-sidebar-col {
		display: flex;
		flex-direction: column;
		gap: 2rem;
	}

	.sidebar-widget {
		background: #ffffff;
		border-radius: 20px;
		padding: 2rem;
		border: 1px solid #e8f4f6;
		box-shadow: 0 10px 30px rgba(8, 40, 46, 0.03);
	}

	.widget-title {
		font-size: 1.2rem;
		font-weight: 800;
		color: var(--color-heading);
		margin: 0 0 1rem 0;
		border-bottom: 2px solid var(--color-primary);
		padding-bottom: 0.5rem;
		display: inline-block;
	}

	.sidebar-categories {
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.sidebar-categories li {
		margin-bottom: 0.75rem;
	}

	.sidebar-categories a {
		color: var(--color-body);
		font-weight: 600;
		text-decoration: none;
		transition: color 0.2s ease;
	}

	.sidebar-categories a:hover {
		color: var(--color-primary);
	}

	.emergency-widget {
		background: linear-gradient(135deg, var(--secondary-color) 0%, #004d56 100%);
		color: #ffffff;
	}

	.emergency-widget h4 {
		color: #ffffff;
		margin: 0 0 0.5rem 0;
	}

	.sidebar-phone {
		color: var(--color-primary);
		font-size: 1.3rem;
		font-weight: 800;
		text-decoration: none;
	}

	/* Media Queries for 5 Pages */
	@media (max-width: 1024px) {

		.values-grid,
		.gallery-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.doctor-bio-card,
		.contact-grid,
		.blog-page-grid {
			grid-template-columns: 1fr;
		}

		.blog-page-posts {
			grid-template-columns: 1fr !important;
		}

		.banner-title {
			font-size: 2.2rem;
		}
	}

	@media (max-width: 640px) {

		.values-grid,
		.gallery-grid {
			grid-template-columns: 1fr;
		}

		.doctor-bio-info {
			padding: 2rem 1.5rem;
		}
	}

	/*--------------------------------------------------------------
# BOOTSTRAP 5 & MOBILE RESPONSIVE MEDIA QUERIES
--------------------------------------------------------------*/
	@media (max-width: 1200px) {
		.hero-masterpiece-title {
			font-size: 3.2rem;
		}

		.stats-bar-container {
			padding: 1.25rem 1.5rem;
			gap: 1rem;
		}

		.stat-text-box strong {
			font-size: 1.4rem;
		}
	}

	@media (max-width: 991px) {

		/* Top Bar */
		.top-bar-left span:nth-child(3) {
			display: none;
		}

		.top-bar-divider {
			display: none;
		}

		/* Hero Masterpiece Grid */
		.hero-masterpiece-grid {
			grid-template-columns: 1fr;
			gap: 2.5rem;
		}

		.hero-bg-curved-wrapper {
			position: relative;
			width: 100%;
			height: 340px;
			margin-bottom: 2rem;
			border-radius: 24px;
		}

		.hero-curved-overlay {
			display: none;
		}

		.hero-masterpiece-title {
			font-size: 2.75rem;
		}

		.hero-feature-cards {
			max-width: 100%;
			grid-template-columns: repeat(2, 1fr);
		}

		.stats-bar-container {
			grid-template-columns: repeat(2, 1fr);
			gap: 1.5rem;
		}

		.stat-item:nth-child(2) {
			border-right: none;
		}

		.hero-cyan-counter-bar {
			grid-template-columns: repeat(3, 1fr);
			gap: 1rem;
		}

		.featured-treatments-grid {
			grid-template-columns: repeat(3, 1fr);
		}

		.services-12-grid,
		.blog-grid,
		.testimonials-grid,
		.why-grid {
			grid-template-columns: repeat(2, 1fr) !important;
		}

		.about-grid {
			grid-template-columns: 1fr !important;
		}

		.appointment-card {
			grid-template-columns: 1fr !important;
		}
	}

	@media (max-width: 768px) {
		.top-bar {
			font-size: 0.78rem;
		}

		.top-bar-left {
			gap: 0.5rem;
		}

		.top-bar-right {
			gap: 0.75rem;
		}

		.logo-brand-main {
			font-size: 1.15rem;
		}

		.logo-brand-sub {
			font-size: 0.7rem;
		}

		.logo-tagline {
			display: none;
		}

		.logo-tooth-icon {
			width: 44px;
			height: 44px;
		}

		.hero-masterpiece-title {
			font-size: 2.2rem;
		}

		.hero-masterpiece-desc {
			font-size: 1rem;
		}

		.hero-action-buttons {
			flex-direction: column;
			align-items: stretch;
		}

		.btn-hero-primary,
		.btn-hero-video {
			justify-content: center;
			width: 100%;
		}

		.hero-feature-cards {
			grid-template-columns: repeat(2, 1fr);
		}

		.stats-bar-container {
			grid-template-columns: 1fr;
			padding: 1.25rem 1rem;
		}

		.stat-item {
			border-right: none !important;
			padding-right: 0 !important;
			border-bottom: 1px solid #ebf5f7;
			padding-bottom: 0.75rem;
		}

		.stat-item:last-child {
			border-bottom: none;
			padding-bottom: 0;
		}

		.hero-cyan-counter-bar {
			grid-template-columns: repeat(2, 1fr);
			gap: 1rem;
		}

		.featured-treatments-grid {
			grid-template-columns: repeat(2, 1fr);
		}

		.services-12-grid,
		.blog-grid,
		.testimonials-grid,
		.why-grid {
			grid-template-columns: 1fr !important;
		}

		.hero-vertical-ribbon {
			display: none;
		}
	}

	@media (max-width: 576px) {
		.hero-cyan-counter-bar {
			grid-template-columns: 1fr;
			text-align: center;
		}

		.cyan-counter-item {
			border-right: none !important;
			border-bottom: 1px solid rgba(255, 255, 255, 0.2);
			padding-bottom: 0.75rem;
		}

		.cyan-counter-item:last-child {
			border-bottom: none;
			padding-bottom: 0;
		}

		.featured-treatments-grid {
			grid-template-columns: 1fr;
		}

		.top-bar-left, .top-bar-right {
			flex-direction: row;
			gap: 15px;
			align-items: center;
            white-space: nowrap;
		}
        
        .top-bar-left span, .top-bar-right a {
            justify-content: flex-start;
        }
        
        .top-bar-divider {
            display: inline-block;
        }

		.top-bar .header-container {
			flex-direction: row;
			gap: 20px;
			justify-content: flex-start;
			padding-top: 10px;
			padding-bottom: 10px;
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none; /* Firefox */
		}
        
        .top-bar .header-container::-webkit-scrollbar {
            display: none; /* Chrome/Safari */
        }
        
        .top-socials {
            margin-top: 0;
            padding-right: 15px;
        }

		.hero-feature-cards {
			grid-template-columns: 1fr;
		}
	}

	/* Responsive Typography, Variables & Sticky Header */
	:root {
		--primary-color: #00a4b4;
		--secondary-color: #08282e;
	}

	body {
		font-size: clamp(1rem, 1.2vw, 1.125rem);
	}

	h1,
	.hero-masterpiece-title {
		font-size: clamp(2.5rem, 5vw, 4rem) !important;
		line-height: 1.1;
	}

	h2,
	.section-title {
		font-size: clamp(2rem, 4vw, 3rem) !important;
	}

	h3 {
		font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
	}

	h4 {
		font-size: clamp(1.2rem, 2vw, 1.5rem) !important;
	}

	/* Sticky Header CSS */
	.site-header.is-sticky {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1050;
		background: #fff;
		box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
		animation: slideDown 0.35s ease-out forwards;
	}

	@keyframes slideDown {
		from {
			transform: translateY(-100%);
		}

		to {
			transform: translateY(0);
		}
	}

	/* --------------------------------------------------------
   PREMIUM CUSTOM FOOTER 
-------------------------------------------------------- */
	.custom-premium-footer {
		background-color: var(--secondary-color, #0a192f);
		color: #a0aec0;
		font-family: 'Plus Jakarta Sans', sans-serif;
	}

	.custom-premium-footer a {
		color: #a0aec0;
		text-decoration: none;
		transition: 0.3s ease;
	}

	.custom-premium-footer a:hover {
		color: var(--primary-color, var(--primary-color));
	}

	/* Footer Top Grid */
	.footer-main-top {
		padding: 80px 0 60px;
	}

	.footer-premium-grid {
		display: grid;
		grid-template-columns: 1.5fr 1fr 1fr 1.5fr;
		gap: 40px;
	}

	/* Col 1: Brand */
	.brand-col .footer-official-logo-img {
		max-width: 250px;
		margin-bottom: 20px;
	}

	.footer-tagline {
		font-size: 0.95rem;
		line-height: 1.6;
		margin-bottom: 30px;
	}

	.footer-contact-list {
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.footer-contact-list li {
		display: flex;
		align-items: flex-start;
		gap: 15px;
		margin-bottom: 20px;
		font-size: 0.95rem;
	}

	.footer-contact-list li .icon {
		color: var(--primary-color, var(--primary-color));
		flex-shrink: 0;
	}

	/* Headings */
	.footer-heading {
		color: #ffffff;
		font-size: 1rem;
		font-weight: 700;
		letter-spacing: 1px;
		margin-bottom: 30px;
		text-transform: uppercase;
	}

	/* Links & Services Lists */
	.footer-links-list,
	.footer-services-list {
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.footer-links-list li,
	.footer-services-list li {
		margin-bottom: 15px;
	}

	.footer-links-list a,
	.footer-services-list a {
		display: flex;
		align-items: center;
		gap: 10px;
		font-size: 0.95rem;
	}

	.footer-links-list a span {
		color: var(--primary-color, var(--primary-color));
		font-weight: bold;
		font-size: 1.2rem;
		line-height: 1;
	}

	.footer-services-list a .icon-circle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 28px;
		background: rgba(0, 164, 180, 0.1);
		border-radius: 50%;
		color: var(--primary-color, var(--primary-color));
	}

	/* Clinic Hours & CTA */
	.hours-box {
		display: flex;
		align-items: flex-start;
		gap: 15px;
		padding: 20px;
		background: rgba(255, 255, 255, 0.03);
		border-radius: 8px;
		margin-bottom: 30px;
		font-size: 0.9rem;
		line-height: 1.8;
	}

	.helpline-box {
		border: 1px dashed rgba(0, 164, 180, 0.4);
		border-radius: 8px;
		padding: 25px;
		text-align: center;
	}

	.helpline-top {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 15px;
		margin-bottom: 20px;
	}

	.helpline-text {
		text-align: left;
	}

	.helpline-text small {
		display: block;
		color: var(--primary-color, var(--primary-color));
		font-weight: 600;
		font-size: 0.8rem;
		letter-spacing: 1px;
	}

	.helpline-text strong {
		display: block;
		color: #ffffff;
		font-size: 1.4rem;
	}

	.btn-footer-book {
		display: inline-block;
		background: var(--primary-color, var(--primary-color));
		color: #fff !important;
		padding: 12px 24px;
		border-radius: 6px;
		font-weight: 600;
		font-size: 0.9rem;
		width: 100%;
	}

	.btn-footer-book:hover {
		background: #008b99;
	}

	/* Social Icons */
	.social-icons {
		display: flex;
		gap: 10px;
	}

	.social-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.05);
		color: #fff;
	}

	.social-btn:hover {
		background: var(--primary-color, var(--primary-color));
		color: #fff;
	}

	.social-btn.facebook:hover {
		background: #1877F2;
	}

	.social-btn.instagram:hover {
		background: #E4405F;
	}

	.social-btn.youtube:hover {
		background: #FF0000;
	}

	.social-btn.whatsapp:hover {
		background: #25D366;
	}

	/* Middle Features Strip */
	.footer-middle-strip {
		border-top: 1px solid rgba(255, 255, 255, 0.05);
		border-bottom: 1px solid rgba(255, 255, 255, 0.05);
		padding: 40px 0;
	}

	.footer-middle-flex {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		gap: 30px;
	}

	.footer-features {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 30px;
		flex: 1;
	}

	.feature-item {
		display: flex;
		align-items: center;
		gap: 15px;
	}

	.feature-item .icon {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 50px;
		height: 50px;
		border-radius: 50%;
		border: 1px solid rgba(255, 255, 255, 0.1);
		color: #fff;
	}

	.feature-item .text {
		font-size: 0.85rem;
		line-height: 1.4;
		color: #cbd5e0;
	}

	.footer-newsletter {
		display: flex;
		align-items: center;
		gap: 20px;
		flex: 1;
		justify-content: flex-end;
	}

	.newsletter-icon {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 60px;
		height: 60px;
		background: rgba(0, 164, 180, 0.1);
		border-radius: 8px;
	}

	.newsletter-text strong {
		display: block;
		color: var(--primary-color, var(--primary-color));
		font-size: 0.9rem;
		letter-spacing: 1px;
	}

	.newsletter-text small {
		color: #a0aec0;
		font-size: 0.85rem;
	}

	.newsletter-form {
		display: flex;
		align-items: center;
	}

	.newsletter-form input {
		padding: 12px 15px;
		border: 1px solid rgba(255, 255, 255, 0.1);
		background: transparent;
		color: #fff;
		border-radius: 4px 0 0 4px;
		outline: none;
		width: 200px;
	}

	.newsletter-form button {
		padding: 12px 20px;
		background: var(--primary-color, var(--primary-color));
		border: none;
		color: #fff;
		border-radius: 0 4px 4px 0;
		cursor: pointer;
	}

	/* Bottom Strip */
	.footer-bottom-strip {
		padding: 30px 0;
		font-size: 0.9rem;
	}

	.bottom-strip-flex {
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		gap: 20px;
	}

	.bottom-strip-flex .highlight {
		color: var(--primary-color, var(--primary-color));
	}

	.policy-links a {
		margin: 0 5px;
	}

	.designed-by {
		display: flex;
		align-items: center;
	}

	/* Responsive Footer */
	@media (max-width: 1200px) {
		.footer-premium-grid {
			grid-template-columns: 1fr 1fr;
		}

		.footer-features {
			flex-wrap: wrap;
		}

		.footer-newsletter {
			justify-content: flex-start;
			width: 100%;
			flex: none;
		}
	}

	@media (max-width: 768px) {
		.footer-premium-grid {
			grid-template-columns: 1fr;
		}

		.bottom-strip-flex {
			flex-direction: column;
			text-align: center;
		}

		.footer-features {
			flex-direction: column;
			align-items: flex-start;
		}

		.newsletter-form input {
			width: 150px;
		}
	}

	   

	/* ==========================================================================
   Oral Cancer Awareness Section
   ========================================================================== */
	.precancer-awareness-section {
		padding: 80px 0;
		background-color: #f4f9fc;
	}

	.precancer-header {
		margin-bottom: 50px;
	}

	.precancer-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
		margin-bottom: 40px;
	}

	.precancer-card {
		background: #fff;
		border-radius: 12px;
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
		overflow: hidden;
		transition: transform 0.3s ease;
	}

	.precancer-card:hover {
		transform: translateY(-5px);
	}

	.card-header {
		padding: 15px 20px;
		color: #fff;
		text-align: center;
	}

	.card-header h3 {
		margin: 0;
		font-size: 1.2rem;
		font-weight: 700;
	}

	.card-header.bg-red {
		background-color: #e74c3c;
	}

	.card-header.bg-green {
		background-color: #2ecc71;
	}

	.card-header.bg-orange {
		background-color: #f39c12;
	}

	.card-header.bg-blue {
		background-color: #3498db;
	}

	.precancer-list {
		list-style: none;
		padding: 20px;
		margin: 0;
	}

	.precancer-list li {
		display: flex;
		align-items: flex-start;
		gap: 10px;
		margin-bottom: 12px;
		font-size: 0.95rem;
		color: #444;
		line-height: 1.4;
	}

	.precancer-list .icon {
		font-size: 1.1rem;
		line-height: 1.2;
	}

	.precancer-alert {
		background: #fff3cd;
		border: 1px solid #ffeeba;
		border-radius: 12px;
		padding: 25px;
		text-align: center;
		box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 15px;
	}

	.precancer-alert p {
		margin: 0;
		font-size: 1.15rem;
		color: #856404;
	}

	.btn-alert {
		background: #e74c3c;
		color: #fff;
		padding: 12px 30px;
		border-radius: 30px;
		text-decoration: none;
		font-weight: 600;
		transition: background 0.3s;
	}

	.btn-alert:hover {
		background: #c0392b;
		color: #fff;
	}

	@media (max-width: 1024px) {
		.precancer-grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	@media (max-width: 600px) {
		.precancer-grid {
			grid-template-columns: 1fr;
		}
	}

	/* ==========================================================================
   Oral Health Awareness Section
   ========================================================================== */

	.awareness-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1.5rem;
	}

	.awareness-card {
		background: #ffffff;
		border-radius: 12px;
		box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);
		border: 1px solid #f0f4f8;
		overflow: visible;
		/* Need visible for the top badge */
		position: relative;
		margin-top: 35px;
		transition: transform 0.3s ease;
	}

	.awareness-card:hover {
		transform: translateY(-5px);
	}

	.awareness-card-header {
		padding: 2.5rem 1.5rem 1.25rem 1.5rem;
		text-align: center;
		border-radius: 12px 12px 0 0;
		position: relative;
	}

	.header-icon-badge {
		position: absolute;
		top: -30px;
		left: 50%;
		transform: translateX(-50%);
		width: 60px;
		height: 60px;
		background: #ffffff;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
		z-index: 10;
	}

	.header-icon-badge svg {
		width: 28px;
		height: 28px;
	}

	.awareness-card-header h3 {
		color: #ffffff;
		margin: 0;
		font-size: 1.25rem;
		font-weight: 700;
	}

	/* Specific Card Colors */
	.cause-card .awareness-card-header {
		background: #08736e;
	}

	.cause-card .header-icon-badge svg {
		color: #08736e;
	}

	.symptom-card .awareness-card-header {
		background: #00a4b4;
	}

	.symptom-card .header-icon-badge svg {
		color: #00a4b4;
	}

	.prevention-card .awareness-card-header {
		background: #0bc09c;
	}

	.prevention-card .header-icon-badge svg {
		color: #0bc09c;
	}

	.treatment-card .awareness-card-header {
		background: #006ee0;
	}

	.treatment-card .header-icon-badge svg {
		color: #006ee0;
	}

	.awareness-list {
		list-style: none;
		padding: 0 1.5rem 1.5rem 1.5rem;
		margin: 0;
	}

	.awareness-list li {
		display: flex;
		align-items: flex-start;
		gap: 0.75rem;
		padding: 1rem 0;
		margin: 0;
		font-size: 0.95rem;
		color: #475569;
		line-height: 1.5;
		border-bottom: 1px solid #f0f4f8;
	}

	.awareness-list li:last-child {
		border-bottom: none;
		padding-bottom: 0;
	}

	.awareness-list .icon {
		font-size: 1.1rem;
		line-height: 1.4;
		flex-shrink: 0;
		margin-top: 1px;
	}

	@media (max-width: 991px) {
		.awareness-grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	@media (max-width: 640px) {
		.awareness-grid {
			grid-template-columns: 1fr;
		}
	}

	/* ==========================================================================
   Single Post Styling
   ========================================================================== */

	.single-post-content {
		padding: 4rem 1rem !important;
		background: #ffffff;
		border-radius: 12px;
		box-shadow: 0 5px 30px rgba(0, 0, 0, 0.04);
		margin-top: -60px !important;
		position: relative;
		z-index: 10;
	}

	.entry-content {
		font-size: 1.1rem;
		line-height: 1.8;
		color: #475569;
	}

	.entry-content p {
		margin-bottom: 1.5rem;
	}

	.entry-content h2,
	.entry-content h3 {
		color: #08282e;
		margin-top: 2.5rem;
		margin-bottom: 1rem;
		font-weight: 700;
	}

	.entry-footer {
		margin-top: 3rem;
		padding-top: 1.5rem;
		border-top: 1px solid #f0f4f8;
		display: flex;
		justify-content: space-between;
		align-items: center;
		font-size: 0.95rem;
	}

	.entry-footer a {
		color: #00a4b4;
		text-decoration: none;
		font-weight: 600;
	}

	.post-navigation {
		margin: 3rem 0;
		padding: 2rem;
		background: #f8fafc;
		border-radius: 12px;
	}

	.post-navigation .nav-links {
		display: flex;
		justify-content: space-between;
	}

	.post-navigation a {
		color: #08282e;
		text-decoration: none;
		transition: color 0.2s;
	}

	.post-navigation a:hover {
		color: #00a4b4;
	}

	.nav-subtitle {
		display: block;
		font-size: 0.85rem;
		color: #64748b;
		text-transform: uppercase;
		letter-spacing: 1px;
		margin-bottom: 0.5rem;
	}

	.nav-title {
		font-size: 1.15rem;
		font-weight: 700;
	}

	/* Comments Section */
	#comments {
		margin-top: 4rem;
	}

	.comments-title,
	.comment-reply-title {
		font-size: 1.75rem;
		font-weight: 800;
		color: #08282e;
		margin-bottom: 2rem;
	}

	.comment-list {
		list-style: none;
		padding: 0;
	}

	.comment-body {
		background: #f8fafc;
		padding: 1.5rem;
		border-radius: 12px;
		margin-bottom: 2rem;
	}

	.comment-author img {
		border-radius: 50%;
		margin-right: 1rem;
	}

	.comment-form {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
	}

	.comment-form label {
		display: block;
		margin-bottom: 0.5rem;
		font-weight: 600;
		color: #334155;
	}

	.comment-form input[type="text"],
	.comment-form input[type="email"],
	.comment-form input[type="url"],
	.comment-form textarea {
		width: 100%;
		padding: 1rem;
		border: 1px solid #cbd5e1;
		border-radius: 8px;
		background: #ffffff;
		font-family: inherit;
		font-size: 1rem;
		color: #334155;
		transition: border-color 0.2s;
	}

	.comment-form input:focus,
	.comment-form textarea:focus {
		outline: none;
		border-color: #00a4b4;
		box-shadow: 0 0 0 3px rgba(0, 164, 180, 0.1);
	}

	.comment-form .submit {
		background: #00a4b4;
		color: #ffffff;
		border: none;
		padding: 1rem 2.5rem;
		border-radius: 30px;
		font-size: 1.05rem;
		font-weight: 700;
		cursor: pointer;
		transition: background-color 0.3s, transform 0.2s;
		display: inline-block;
	}

	.comment-form .submit:hover {
		background: #008b99;
		transform: translateY(-2px);
	}

	/* New Hero Styles from Mockup */
	.hero-action-buttons {
		display: flex;
		gap: 20px;
		align-items: center;
		margin-top: 30px;
	}

	.btn-hero-video {
		display: flex;
		align-items: center;
		gap: 12px;
		text-decoration: none;
		color: #333;
	}

	.btn-hero-video .play-icon-wrapper {
		width: 48px;
		height: 48px;
		border-radius: 50%;
		border: 2px solid #00a4b4;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #00a4b4;
		transition: background 0.3s, color 0.3s;
	}

	.btn-hero-video:hover .play-icon-wrapper {
		background: #00a4b4;
		color: #fff;
	}

	.btn-hero-video .video-text {
		display: flex;
		flex-direction: column;
	}

	.btn-hero-video .video-text .title {
		font-weight: 700;
		font-size: 1.1rem;
		color: #1a3644;
	}

	.btn-hero-video .video-text .subtitle {
		font-size: 0.9rem;
		color: #6c757d;
	}

	.hero-mini-stats {
		display: flex;
		gap: 12px;
		margin-top: 30px;
		flex-wrap: wrap;
	}

	.hero-mini-stats .stat-item {
		display: flex;
		align-items: center;
		gap: 8px;
	}

	.hero-mini-stats .stat-icon {
		width: 28px;
		height: 28px;
		border-radius: 50%;
		background: rgba(0, 164, 180, 0.1);
		color: #00a4b4;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 13px;
	}

	.hero-mini-stats .stat-text {
		display: flex;
		flex-direction: column;
	}

	.hero-mini-stats .stat-text strong {
		font-size: 0.9rem;
		color: #1a3644;
		line-height: 1.2;
	}

	.hero-mini-stats .stat-text span {
		font-size: 0.75rem;
		color: #6c757d;
	}

	/* Floating Features Card */
	.floating-features-card-wrapper {
		position: absolute;
		bottom: -60px;
		left: 0;
		right: 0;
		display: flex;
		justify-content: center;
		z-index: 10;
	}

	.floating-features-card {
		background: #fff;
		border-radius: 20px;
		padding: 25px 30px;
		display: flex;
		gap: 20px;
		box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06);
		max-width: 1200px;
		width: 95%;
		justify-content: space-between;
	}

	.floating-features-card .feature-item {
		display: flex;
		align-items: flex-start;
		gap: 12px;
		flex: 1;
	}

	.floating-features-card .feature-icon {
		color: #00a4b4;
		background: rgba(0, 164, 180, 0.05);
		padding: 10px;
		border-radius: 12px;
	}

	.floating-features-card .feature-text {
		display: flex;
		flex-direction: column;
	}

	.floating-features-card .feature-text strong {
		font-size: 1rem;
		color: #1a3644;
		line-height: 1.2;
		margin-bottom: 5px;
	}

	.floating-features-card .feature-text span {
		font-size: 0.8rem;
		color: #6c757d;
		line-height: 1.4;
	}

	@media (max-width: 1200px) {
		.floating-features-card {
			flex-wrap: wrap;
			gap: 20px;
		}

		.floating-features-card .feature-item {
			min-width: 45%;
		}
	}

	@media (max-width: 992px) {
		.hero-masterpiece-grid {
			grid-template-columns: 1fr;
			gap: 40px;
		}

		.hero-bg-curved-wrapper {
			position: relative;
			width: 100%;
			height: 400px;
			margin-top: 40px;
			border-radius: 20px;
			overflow: hidden;
		}

		.hero-patient-bg {
			border-radius: 20px;
		}

		.hero-curved-overlay {
			display: none;
		}

		.hero-masterpiece-title {
			font-size: 2.5rem;
		}

		.hero-masterpiece-section {
			padding: 2.5rem 0 10rem;
		}
	}

	@media (max-width: 768px) {
		.hero-action-buttons {
			flex-direction: column;
			align-items: flex-start;
		}

		.floating-features-card-wrapper {
			position: relative;
			bottom: 0;
			margin-top: -60px;
			z-index: 10;
		}

		.floating-features-card .feature-item {
			min-width: 100%;
		}

		.hero-masterpiece-title {
			font-size: 2.2rem;
		}
	}

	/* ==========================================================================
   CLINIC TOUR SLIDER (SWIPER)
   ========================================================================== */
	.clinicTourSwiper {
		width: 100%;
		padding-bottom: 50px;
	}

	.clinicTourSwiper .swiper-slide {
		background-position: center;
		background-size: cover;
		width: 600px;
		height: 400px;
		border-radius: 15px;
		overflow: hidden;
		box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
	}

	.clinicTourSwiper .swiper-slide img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.clinicTourSwiper .swiper-pagination-bullet {
		background: #cbd5e1;
		opacity: 1;
	}

	.clinicTourSwiper .swiper-pagination-bullet-active {
		background: var(--primary-color);
	}

	.clinicTourSwiper .swiper-button-next:after,
	.clinicTourSwiper .swiper-button-prev:after {
		font-size: 24px;
		font-weight: bold;
	}

	@media (max-width: 768px) {
		.clinicTourSwiper .swiper-slide {
			width: 85%;
			height: 300px;
		}
	}