:root {
    --thai-primary: #166629;
    --thai-secondary: #2d8f3f;
    --thai-accent: #4caf50;
    --thai-light: #81c784;
    --thai-dark: #0d4d1a;
}

.list-unstyled {
    list-style: none !important;
}

.navbar-brand {
    font-weight: bold;
    color: white !important;
}

.navbar-custom {
    background-color: var(--thai-primary) !important;
    min-height: 80px;
}

.navbar-custom .navbar-nav .nav-link {
    color: white !important;
}

.navbar-custom .navbar-nav .nav-link:hover {
    color: var(--thai-light) !important;
}

/*
Source - https://stackoverflow.com/a
Posted by Carol Skelly, modified by community. See post 'Timeline' for change history
Retrieved 2025-11-20, License - CC BY-SA 4.0
*/

.custom-toggler .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,102,203, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.custom-toggler.navbar-toggler {
    border-color: rgb(255,102,203);
}


main.container {
    padding-bottom:80px;
}

section {
    position: relative;
    top:100px;
    min-height: 300px;
}

.hero-section {
    background: linear-gradient(rgba(22, 102, 41, 0.3), rgba(22, 102, 41, 0.3)), url('../img/Rene_Morunga_Thai-Massage.png');
    background-size: cover;
    background-position: top left;
    color: white;
    padding: 90px 0 90px 0;
}

.section-title {
    color: var(--thai-primary);
    border-bottom: 3px solid var(--thai-accent);
    display: inline-block;
    padding-bottom: 10px;
    margin-bottom: 30px;
}

.price-card {
    transition: transform 0.3s;
    border: 2px solid var(--thai-accent);
}

.price-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(22, 102, 41, 0.2);
}

.price-card .card-title {
    min-height: 75px;
}

.price-card .card-text {
    text-align: left;
}


.price-card ul {
    list-style: none;
    padding: 0;
}

.price-card .list-duration {
    margin-bottom: 45px;
}

.price-card .list-duration li {
    margin-bottom:15px;
}

.price-card .list-duration .line {
    display: block;
    margin-bottom: 5px;
}

.price-card .list-duration .line.l1 {
    color: var(--thai-accent);
    font-size: 1.3rem;
}

.price-card .list-duration .line.l2 {
    font-size: 0.9rem;
}

.contact-info {
    background-color: #f8f9fa;
    border-left: 5px solid var(--thai-accent);
}

.contact-info a {
    color: var(--thai-primary);
}

.contact-info a:hover {
    color: var(--thai-secondary);
}

.certificates .card img {
    height: 300px;
    width: 100%;
}

.moreCertificates .certificates .card img {
    height: 100%;
    width: auto;
}

.certificates .card:hover img {
    height: auto;
    width: auto;
}

.moreCertificates .certificates .card:hover img {
    height: 100%;
    width: auto;
}

.review-card {
    background-color: #fff;
    border-left: 4px solid var(--thai-primary);
}

.star-rating {
    color: #ffc107;
}

/* more prices, reviews */
.more a {
    color: var(--thai-primary);
    font-size: 1.2rem;
}

.more a:hover {
    color: var(--thai-secondary);
}

/*** Footer ***/
.footer {
    background-color: var(--thai-dark);
    color: white;
}

.footer a {
    color: #fff;
}

.footer a:hover {
    color: var(--thai-light);
}

/*** Buttons ***/
.btn-primary {
    background-color: var(--thai-primary);
    border-color: var(--thai-primary);
}

.btn-primary:hover {
    background-color: var(--thai-secondary);
    border-color: var(--thai-secondary);
}

.btn-success {
    background-color: var(--thai-accent);
    border-color: var(--thai-accent);
}

.btn-success:hover {
    background-color: var(--thai-secondary);
    border-color: var(--thai-secondary);
}

/*** Videos ***/
.video-section {
    background: linear-gradient(135deg, #f8f9fa 0%, #e8f5e8 100%);
}

.video-container {
    position: relative;
    overflow: hidden;
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(22, 102, 41, 0.15);
    transition: transform 0.3s ease;
}

.video-container:hover {
    transform: translateY(-5px);
}

.video-container video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-main {
    height: 450px;
}

.video-side {
    height: 350px;
}

.video-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(22, 102, 41, 0.8));
    color: white;
    padding: 20px;
    transform: translateY(100%);
    transition: transform 0.3s ease;
}

.video-container:hover .video-overlay {
    transform: translateY(0);
}

.text-success {
    color: var(--thai-primary) !important;
}

.bg-success {
    background-color: var(--thai-primary) !important;
}

.badge {
    padding: 7px 12px;
}

.badge.bg-success {
    background-color: var(--thai-accent) !important;
}

.badge.bg-info {
    background-color: var(--thai-secondary) !important;
}

.language-flags ul {
    margin: 0;
    padding: 0;
}

.language-flags ul li .nav-link.active {
    position:relative;
    top:3px !important;
}

.language-flags ul li {
    display:inline-block;
    list-style: none;
    margin-right: 10px;
}

.language-flags ul li:last-child {
    margin-right: 0;
}

.language-flags img {
    border: none;
    background: none;
    transition: transform 0.2s ease;
    color: white !important;
}

.language-flags img:hover {
    transform: scale(1.2);
    background: none !important;
}

.language-flags img:focus {
    box-shadow: none;
}

.review-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.review-text-home {
    -webkit-line-clamp: 7;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Scroll offset for fixed navbar */
section {
    scroll-margin-top: 80px;
}

.btn-booknow {
    position: absolute;
    bottom: 10px;
    display: block;
}