/*
 Theme Name: Th Portfolio
 Theme URI: https://themehunk.com/product/gogo-amazing-wordpress-theme/
 Author: ThemeHunk
 Author URI: https://www.themehunk.com
 Template: portfoliolite
 Description: Portfoliolite theme is not just a portfolio theme but a multipurpose theme using which you can create a website for agency, personal, corporate, shop etc. Theme comes with sliding main section with typewriter, Services section, Portfolio section with Ajax grid, WooCommece section, Team and Contact section. This theme is compatible with nearly all plugins available at WordPress repository. Perfectly compatible with your favourite page builder like Elementor, SiteOrigin, Brizy etc. Specially integrated with Lead form Builder plugin to receive and save your valuable leads. 
 check out demo: https://themehunk.com/wp-themes/portfoliolite/
 Version: 1.0.0
 Requires at least: 4.5
 Tested up to: 5.8.2
 Requires PHP: 5.6
 License: GNU General Public License v3 or later
 License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
 Text Domain: th-portfolio
 Tags: two-columns, grid-layout, right-sidebar, custom-menu, custom-header, custom-background, threaded-comments, editor-style, portfolio, translation-ready, full-width-template, flexible-header, post-formats, sticky-post, one-column

 This theme, like WordPress, is licensed under the GPL.
 Use it to make something cool, have fun, and share what you've learned with others.
*/
.sidebar-wrapper {
    display: none;
    visibility: hidden;
    opacity: 0;
}
.content-wrapper {
    width: 100%;
    max-width: 1200px;
    margin-top: 50px;
}
.blog-image {
    height: 150px;
}
form.wpcf7-form {
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
    padding: 20px;
    margin: auto;
    border-radius: 10px;
    background-color: #fff;
    color: #000;
}
body.page-id-532 iframe {
    height: 320px;
}
input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], textarea, textarea.form-control {
    border: 1px solid #000;
    background-color: rgba(255,255,255,0);
    outline: 0;
    border-radius: 5px;
    width: 100%;
    color: #000;
    font-size: 1rem;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-align: start;
}
.wpcf7 input, .wpcf7 select {
    padding: 3px 6px;
}
textarea.wpcf7-form-control.wpcf7-textarea {
    height: 100px;
}
form p label{
    max-width: 100%;
    margin: 0px;
}
form.wpcf7-form > p{
    margin-bottom: 0;
}
.nomarginpadding .vc_column-inner {
    padding-top: 0px !important;
}

.nomarginpadding .thunk-content-area.container .thunk-service-wrapper.thunk-wrapper {
    margin-top: 0px !important;
}
.thunk-service-post.col2:nth-child(2) {
    margin-right: 0px;
}
.thunk-service-post.col2 {
    width: 48%;
}
.img-container {
	flex: 1;
	border-radius: 15px;
	overflow: hidden;
	box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}
.text-container h2 {
	font-family: var(--heading-font);
	font-size: 2.5rem;
	color: #3e7de5;
	margin-top: 0;
	margin-bottom: 20px;
	line-height: 1.2;
}
.text-container p strong {
	color: #3e7de5;
	font-weight: 700;
}
.innercontainer .container {
    margin: auto !important;
}
.padl30 {
    padding-left: 30px;
}
.pricing-container {
    max-width: 900px;
    width: 100%;
    text-align: center;
}

.pricing-container h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #3c7be3;
    margin-bottom: 50px;
}

/* --- Deals Layout --- */
.deals-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap; /* Allows wrapping on smaller screens */
}

/* --- Deal Card Styling --- */
.deal-card {
    background: var(--white-color);
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    padding: 40px 30px;
    width: 100%;
    max-width: 380px;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Featured Deal Styling */
.deal-card.featured {
    transform: scale(1.05);
    border: 2px solid var(--accent-color);
}

.deal-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}

/* Reset hover transform for featured card on desktop */
.deal-card.featured:hover {
    transform: scale(1.05) translateY(-10px);
}

.deal-header h3 {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 0 0 10px;
    color: #3c7be3;
    text-align: center;
}

.deal-price {
    font-size: 3rem;
    font-weight: 700;
    color: #3c7be3;
    margin: 20px 0;
    text-align: center;
}

.deal-price .currency {
    font-size: 1.5rem;
    vertical-align: super;
}

.deal-price .duration {
    font-size: 1rem;
    font-weight: 400;
    color: var(--light-text-color);
}

.deal-features {
    list-style: none;
    padding: 0;
    margin: 30px 0;
    text-align: left;
    flex-grow: 1; /* Pushes the button to the bottom */
}

.deal-features li {
    margin-bottom: 15px;
    color: var(--light-text-color);
    display: flex;
    align-items: center;
}

/* Checkmark Icon */
.deal-features li::before {
    content: '✔';
    color: #28a745; /* Green checkmark */
    font-weight: bold;
    margin-right: 15px;
    font-size: 1.2rem;
}

.deal-button {
    display: block;
    width: 50%;
    padding: 15px 25px;
    background-color: #3c7be3;
    color: #fff;
    text-decoration: none;
    border-radius: 50px;
    font-weight: 600;
    font-size: 1rem;
    transition: background-color 0.3s ease;
    margin: auto;
    text-align: center;
}

.deal-card.featured .deal-button {
    background-color: #3c7be3;
}

.deal-button:hover {
    background-color: var(--primary-dark);
}

.deal-card.featured .deal-button:hover {
    background-color: var(--accent-hover);
}

/* --- Ribbon for Featured Deal --- */
.ribbon {
    position: absolute;
    top: 25px;
    right: -35px; /* Position it so the text is centered */
    background-color: #3c7be3;
    color: #fff;
    padding: 8px 40px;
    font-size: 0.8rem;
    font-weight: 600;
    transform: rotate(45deg);
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
}

/* --- Responsive Design --- */
@media (max-width: 768px) {
    .deals-wrapper {
        flex-direction: column;
    }

    .deal-card.featured {
        transform: scale(1); /* Reset scale on mobile */
    }

    .deal-card:hover, .deal-card.featured:hover {
        transform: translateY(-5px); /* Simpler hover effect */
    }

    .pricing-container h2 {
        font-size: 2rem;
    }
}

.cta-section {
    background-color: #8eb9ff;
    color: #fff;
    padding: 80px 20px;
    text-align: center;
}

.cta-container {
    max-width: 800px;
    margin: 0 auto;
}

.cta-headline {
    font-family: var(--font-family);
    font-size: 2.5rem;
    font-weight: 700;
    margin: 0 0 30px 0;
    line-height: 1.2;
    color: #fff;
}

.cta-text {
    font-family: var(--font-family);
    font-size: 1.2rem;
    font-weight: 400;
    margin: 0 0 40px 0;
    color: #fff;
    line-height: 1.7;
}

/* --- CTA Button --- */
.cta-button {
    display: inline-flex;
    align-items: center;
    background-color: #3e7de5;
    color: var(--white-color);
    padding: 18px 35px;
    border-radius: 50px;
    text-decoration: none;
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 1.1rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
    border: none;
    cursor: pointer;
}

.cta-button i {
    margin-right: 10px; /* Space between icon and text */
    font-size: 1.2rem;
}

.cta-button:hover {
    background-color: #3e7de5;
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

/* --- Responsive Design --- */
@media (max-width: 768px) {
    .cta-headline {
        font-size: 2rem;
    }

    .cta-text {
        font-size: 1.1rem;
    }

    .cta-button {
        padding: 15px 30px;
        font-size: 1rem;
    }
}
body.home .blog-top {
    display: none;
}
.content-wrapper {
    margin-top: 0px;
}
body.home .vc_column-inner {
    padding-top: 0px !important;
}

.hero-section {
    background: linear-gradient(rgba(0, 90, 156, 0.7), rgba(0, 90, 156, 0.7)), url('https://source.unsplash.com/random/1600x600/?dental,spa,wellness') no-repeat center center/cover;
    color: var(--white-color);
    padding: 120px 20px;
    text-align: center;
}

.hero-content h1 {
    font-size: 3.5rem;
    font-weight: 700;
    margin: 0 0 15px 0;
}

.hero-content p {
    font-size: 1.5rem;
    font-weight: 500;
    margin: 0;
    opacity: 0.9;
}

/* --- Content Wrapper --- */
/* .content-wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 80px 20px;
} */

/* --- Alternating Section Layout --- */
.content-section {
    display: flex;
    align-items: center;
    margin-bottom: 80px;
    /* background-color: var(--white-color); */
    border-radius: 12px;
    overflow: hidden;
    /* box-shadow: 0 10px 30px rgba(0,0,0,0.07); */
}

.section-image {
    flex: 1;
    min-height: 450px;
    background-size: cover;
    background-position: center;
}

.section-text {
    flex: 1;
    padding: 50px;
    padding-top:0px ;
    padding-bottom: 0px;
}

.section-text h2 {
    font-size: 2.2rem;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 25px;
    color: var(--primary-color);
}

.section-text p {
    font-size: 1rem;
    color: var(--light-text-color);
    margin-bottom: 1em;
}

/* --- Alternate Section Direction & Color --- */
.content-section:nth-child(even) {
    flex-direction: row-reverse;
}

.content-section:nth-child(even) .section-text h2 {
    color: var(--secondary-color);
}

/* --- Call to Action Section --- */
.cta-section {
    background-color: var(--dark-color);
    color: var(--white-color);
    text-align: center;
    padding: 70px 20px;
    border-radius: 12px;
}

.cta-section h2 {
    font-size: 2.5rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.cta-button {
    display: inline-flex;
    align-items: center;
    background-color: var(--primary-color);
    color: var(--white-color);
    padding: 18px 40px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.1rem;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.cta-button i {
    margin-right: 10px;
}

.cta-button:hover {
    background-color: var(--secondary-color);
    transform: translateY(-3px);
}

/* --- Responsive Design --- */
@media (max-width: 768px) {
    .hero-content h1 {
        font-size: 2.5rem;
    }
    .hero-content p {
        font-size: 1.2rem;
    }

    .content-section, .content-section:nth-child(even) {
        flex-direction: column;
    }

    .section-image {
        width: 100%;
        min-height: 250px;
    }

    .section-text {
        padding: 40px 30px;
    }

    .cta-section h2 {
        font-size: 2rem;
    }
}
.rc {
    border-radius: 10px;box-shadow: 0 5px 5px rgba(0,0,0,0.1);
}
.vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel.vc_active .vc_tta-panel-heading{
    background-color: #fff;
    border-color: #fff;
}