/*
Theme Name: T.I.M. Agency
Theme URI: https://t-i-m.cz
Author: T.I.M. Agency
Author URI: https://t-i-m.cz
Description: Custom WordPress theme for T.I.M. Digital Marketing Agency. Pixel-perfect conversion from Webflow with multilingual support (CZ, UK, EN).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tim-agency
Tags: custom-theme, multilingual, marketing, agency, webflow

This theme, like WordPress, is licensed under the GPL.
*/

/* Main styles are loaded via functions.php */

/* Custom CSS Fixes */

/* Fix tariff cards to have equal height */
.grid_tariffs_all {
    display: grid !important;
    grid-auto-rows: 1fr !important;
}

.div_tariffs_card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.div_text_btn {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    justify-content: space-between !important;
}

.div_text {
    flex: 1 !important;
}

/* Modal - no animations */
.modal_wrapper {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 9999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: rgba(0, 0, 0, 0.6) !important;
}

.modal_wrapper.show {
    display: flex !important;
}

.modal_window {
    position: relative !important;
    max-width: 90% !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
}

/* Service cards hover effect */
.service-arrow-icon {
    opacity: 0;
    transition: opacity 0.3s ease;
}

.service_name:hover .service-arrow-icon {
    opacity: 1;
}

/* Service hover icon (Google Ads, Facebook, etc.) */
.service-hover-icon {
    position: absolute;
    right: 35%;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: opacity 0.3s ease;
    max-width: 80px;
    max-height: 80px;
    object-fit: contain;
}

.service_name:hover .service-hover-icon {
    opacity: 1;
}

/* Social media icons animation */
.soc-link,
.soc-link.inst {
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.soc-link:hover,
.soc-link.inst:hover {
    transform: scale(1.1) rotate(5deg);
}

/* Hero section social icons floating animation */
.social_link {
    position: relative;
}

.social_link .soc-link,
.social_link .div-rel-absolute-social {
    transition: transform 0.3s ease;
}

.social_link:hover .soc-link {
    transform: translateY(-3px);
}

.social_link:hover .div-rel-absolute-social {
    transform: translateY(-3px);
}

/* Floating icons animation in hero section */
.image_inst_hero,
.image_sms_hero,
.image_ga_hero_absolute,
.image_telegram_hero {
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    cursor: pointer;
}

.image_inst_hero:hover {
    transform: translateY(-8px) rotate(-5deg) scale(1.05);
    filter: drop-shadow(0 10px 20px rgba(193, 53, 132, 0.3));
}

.image_sms_hero:hover {
    transform: translateY(-8px) rotate(5deg) scale(1.05);
    filter: drop-shadow(0 10px 20px rgba(0, 136, 204, 0.3));
}

.image_ga_hero_absolute:hover {
    transform: translateY(-8px) rotate(-3deg) scale(1.05);
    filter: drop-shadow(0 10px 20px rgba(66, 133, 244, 0.3));
}

.image_telegram_hero:hover {
    transform: translateY(-8px) rotate(3deg) scale(1.05);
    filter: drop-shadow(0 10px 20px rgba(0, 136, 204, 0.3));
}

/* Projects page titles alignment - override Webflow centering */
.pojects_title,
.div_web_all {
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

.pojects_title .clash_400_48,
.div_web_all .h2_clash_400_48 {
    text-align: left !important;
    align-self: flex-start !important;
}

.projects_all {
    align-items: flex-start !important;
}

/* Contact Form 7 styling for modal */
.modal_window .wpcf7-form {
    width: 100%;
}

.modal_window .wpcf7-form p {
    margin: 0;
}

.modal_window .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.modal_window .wpcf7-text,
.modal_window .wpcf7-email,
.modal_window .wpcf7-tel {
    width: 100%;
}

.modal_window .wpcf7-checkbox .wpcf7-list-item {
    margin: 0;
    display: block;
}

.modal_window .wpcf7-list-item-label {
    display: flex;
    align-items: center;
}

.modal_window .wpcf7-response-output {
    margin: 20px 0;
    padding: 15px;
    border-radius: 4px;
    border: none !important;
}

.modal_window .wpcf7-mail-sent-ok {
    background-color: #4caf50;
    color: white;
}

.modal_window .wpcf7-validation-errors,
.modal_window .wpcf7-mail-sent-ng {
    background-color: #ff6b6b;
    color: white;
}

.modal_window .wpcf7-not-valid-tip {
    color: #ff6b6b;
    font-size: 12px;
    margin-top: 5px;
}

.modal_window .wpcf7-spinner {
    margin-left: 10px;
}

/* Remove underline from project category tags */
.project_card_top p,
.project_card_top a,
.project_card_top .p_clash_400_18 {
    text-decoration: none !important;
    border-bottom: none !important;
}

.project_cards .project_card_top p {
    text-decoration: none !important;
}

/* Project challenges blocks - purple background */
.div_white_grid.case {
    background: linear-gradient(135deg, #a78bfa 0%, #c084fc 100%) !important;
    color: white !important;
}

.div_white_grid.case h4,
.div_white_grid.case .h4_clash_500_24,
.div_white_grid.case .p_clash_400_18 {
    color: white !important;
}

.div_white_grid.case .div_h4_img {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
}

/* Remove underline from project titles on homepage */
.project_cards .h4_clash_700_32,
.project_cards h4,
.slide_project h4,
.slide_project .h4_clash_700_32 {
    text-decoration: none !important;
    border-bottom: none !important;
}

.project_cards a,
.slide_project a {
    text-decoration: none !important;
}

.project_cards a:hover .h4_clash_700_32,
.project_cards a:hover h4,
.slide_project a:hover h4,
.slide_project a:hover .h4_clash_700_32 {
    text-decoration: none !important;
}

/* Remove underline from ALL elements in project cards */
.project_cards *,
.slide_project *,
.project_card_top *,
.dot_card * {
    text-decoration: none !important;
    border-bottom: none !important;
}

/* Fix consultation form styling on project pages */
.section_wrap_consultation-service .div_bg_consultation,
.section_wrap_consultation-service .div_consult_service,
.section_wrap_consultation-service .div_h4_form,
.section_wrap_consultation-service,
.section_wrap_consultation-service * {
    border: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* Remove black border but keep background */
.section_wrap_consultation-service .div_consult_service {
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
}

/* Keep the purple background for consultation form */
.section_wrap_consultation-service .div_bg_consultation {
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-radius: 40px !important;
    box-shadow: none !important;
}

/* Hide any stray characters after form */
.section_wrap_consultation-service .div_h4_form::after,
.section_wrap_consultation-service .div_bg_consultation::after {
    content: '' !important;
    display: none !important;
}

/* Remove any text nodes that might contain "] */
.section_wrap_consultation-service .wpcf7-form::after {
    display: none !important;
}

/* Fix slider navigation dots alignment on homepage projects */
.slider_projects_card .w-slider-nav {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 20px !important;
}

.slider_projects_card .w-slider-nav .w-slider-dot {
    margin: 0 5px !important;
    vertical-align: middle !important;
}

/* Language switcher — pure CSS, zero Webflow JS dependency */
.tim-lang-switcher {
    position: relative;
    z-index: 950;
}

.tim-lang-toggle {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px;
    cursor: pointer;
    background: none;
    border: none;
    font-family: inherit;
    font-size: inherit;
    color: inherit;
}

.tim-lang-list {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    border-radius: 12px;
    background-color: var(--white, #fff);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    padding: 8px 0;
    min-width: 60px;
}

/* Open on hover or keyboard focus */
.tim-lang-switcher:hover .tim-lang-list,
.tim-lang-switcher:focus-within .tim-lang-list {
    display: block;
}

.tim-lang-link {
    display: block;
    padding: 6px 16px;
    white-space: nowrap;
    color: inherit;
    text-decoration: none;
}

.tim-lang-link:hover {
    background-color: rgba(0, 0, 0, 0.05);
}

/* On mobile (< 479px): show all language links inline */
@media screen and (max-width: 479px) {
    .tim-lang-toggle {
        display: none;
    }

    .tim-lang-list {
        display: flex !important;
        position: static;
        box-shadow: none;
        padding: 0;
        gap: 8px;
    }
}

/* Service hero — clip image to rounded container */
.div_right_img_ga {
    overflow: hidden;
}

