/*
 Theme Name:   Avantage Child | Shared by WPTry.org
 Theme URI:    http://avantage.bold-themes.com
 Description:  Avantage child theme
 Author:       BoldThemes
 Author URI:   http://bold-themes.com
 Template:     avantage
 Version:      1.0.0
 Tags:         one-column, right-sidebar, custom-menu, featured-images, sticky-post, theme-options, threaded-comments, translation-ready
 Text Domain:  avantage-child
*/


/* ==================================================
   Custom Flip Card
================================================== */


.service-flip-card {
    width: 270px;
    max-width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    margin: 0 auto;
    perspective: 1200px;
    cursor: pointer;
}

.service-flip-inner {
    position: relative;
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    transform-style: preserve-3d;
    transition: transform 0.65s ease;
}

/* Horizontal flip */
.service-flip-card:hover .service-flip-inner,
.service-flip-card:focus .service-flip-inner,
.service-flip-card.is-flipped .service-flip-inner {
    transform: rotateY(180deg);
}

/* Vertical flip */
.service-flip-card.service-flip-vertical:hover .service-flip-inner,
.service-flip-card.service-flip-vertical:focus .service-flip-inner,
.service-flip-card.service-flip-vertical.is-flipped .service-flip-inner {
    transform: rotateX(180deg);
}

/* Front and back shared styles */
.service-flip-front,
.service-flip-back {
    position: absolute;
    inset: 0;
    display: flex;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: var(--flip-radius, 18px);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

/* Front */
.service-flip-front {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 28px 22px;
    background: #ffffff;
}

/* Front image */
.service-flip-front img {
    display: block;
    width: auto;
    max-width: 54%;
    max-height: 48%;
    margin: 0 auto 28px;
    object-fit: contain;
}

/* Front title */
.service-flip-front h3 {
    margin: 0;
    color: #289db5;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
}

/* Back */
.service-flip-back {
    align-items: center;
    justify-content: center;
    padding: 34px;
    background: var(--flip-back-color, #289db5);
    color: #ffffff;
    text-align: center;
    transform: rotateY(180deg);
}

/* Vertical back */
.service-flip-card.service-flip-vertical .service-flip-back {
    transform: rotateX(180deg);
}

/* Back text */
.service-flip-back p {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
}

/* Keyboard focus */
.service-flip-card:focus {
    outline: none;
}

/* Tablet */
@media (max-width: 1024px) {

    .service-flip-card {
        width: 270px;
        max-width: 100%;
    }

    .service-flip-front h3 {
        font-size: 27px;
    }

    .service-flip-back {
        padding: 28px;
    }

    .service-flip-back p {
        font-size: 19px;
        line-height: 1.45;
    }
}

/* Mobile */
@media (max-width: 767px) {


	 .service-flip-card {
        width: 270px;
        max-width: 100%;
    }
	
    .service-flip-front {
        padding: 24px 20px;
    }

    .service-flip-front img {
        max-width: 50%;
        max-height: 45%;
        margin-bottom: 24px;
    }

    .service-flip-front h3 {
        font-size: 25px;
        line-height: 1.2;
    }

    .service-flip-back {
        padding: 25px;
    }

    .service-flip-back p {
        font-size: 18px;
        line-height: 1.45;
    }
}

/* ==================================================
   Flip Card Row Layout
================================================== */

/* 讓整排卡片置中，卡片之間使用相同距離 */
.flip-card-row,
.flip-card-row .bt_bb_row_holder {
    justify-content: center !important;
    column-gap: 30px;
    row-gap: 30px;
}

/* 不再使用 Bold Builder 原本的 1/3、1/4 Column 寬度 */
.flip-card-row .bt_bb_column {
    flex: 0 0 270px !important;
    width: 270px !important;
    max-width: 270px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 防止 Column 裡面的容器限制寬度 */
.flip-card-row .bt_bb_column_content {
    width: 100%;
}

/* 卡片固定大小 */
.flip-card-row .service-flip-card {
    width: 270px;
    max-width: 100%;
    margin: 0 auto;
}

@media (max-width: 1024px) {

    .flip-card-row,
    .flip-card-row .bt_bb_row_holder {
        flex-wrap: wrap !important;
        justify-content: center !important;
        column-gap: 24px;
        row-gap: 24px;
    }

    .flip-card-row .bt_bb_column {
        flex: 0 0 270px !important;
        width: 270px !important;
        max-width: 270px !important;
    }
}

@media (max-width: 767px) {

    .flip-card-row,
    .flip-card-row .bt_bb_row_holder {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        row-gap: 24px;
    }

    .flip-card-row .bt_bb_column {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .flip-card-row .service-flip-card {
        width: 270px;
        max-width: calc(100vw - 40px);
    }
}

/* Header phone number */
.btIconWidgetText{
	font-weight: 500;
	line-height: 1.5;
}

/* ==================================================
   Incorporation Tabs
   Inactive = outline
   Active = filled
   Supports Bold Builder Tabs + Inner Row
================================================== */

/* --------------------------------------------------
   Tabs wrapper
-------------------------------------------------- */

.incorporation-tabs,
.incorporation-tabs.bt_bb_style_outline,
.incorporation-tabs .bt_bb_tabs_tabs,
.incorporation-tabs .bt_bb_tab_item,
.incorporation-tabs .bt_bb_tab_content {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* --------------------------------------------------
   Tab buttons layout
-------------------------------------------------- */

.incorporation-tabs .bt_bb_tabs_header {
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    flex-wrap: wrap !important;

    gap: 28px !important;

    width: 100% !important;
    margin: 0 auto 50px !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* Individual tab button wrapper */
.incorporation-tabs .bt_bb_tabs_header li {
    float: none !important;
    display: block !important;

    flex: 0 1 360px !important;
    width: 360px !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* Remove theme spacing / middle separator */
.incorporation-tabs .bt_bb_tabs_header li + li {
    margin-left: 0 !important;
    border-left: 0 !important;
}

/* Remove extra lines created by pseudo elements */
.incorporation-tabs .bt_bb_tabs_header li::before,
.incorporation-tabs .bt_bb_tabs_header li::after,
.incorporation-tabs .bt_bb_tabs_header li a::before,
.incorporation-tabs .bt_bb_tabs_header li a::after,
.incorporation-tabs .bt_bb_tabs_header li span::before,
.incorporation-tabs .bt_bb_tabs_header li span::after {
    content: none !important;
    display: none !important;
}

/* --------------------------------------------------
   Inactive tab
   White background + outline
-------------------------------------------------- */

.incorporation-tabs .bt_bb_tabs_header li a,
.incorporation-tabs .bt_bb_tabs_header li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 76px !important;
    padding: 16px 28px !important;
    box-sizing: border-box !important;

    background: #ffffff !important;
    color: #123f56 !important;

    border: 2px solid #123f56 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    font-size: 22px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-align: center !important;

    cursor: pointer !important;
    transition:
        background-color 0.25s ease,
        color 0.25s ease,
        border-color 0.25s ease !important;
}

/* --------------------------------------------------
   Active tab
   Filled background + white text
-------------------------------------------------- */

.incorporation-tabs .bt_bb_tabs_header li.on a,
.incorporation-tabs .bt_bb_tabs_header li.on span,
.incorporation-tabs .bt_bb_tabs_header li.bt_bb_tab_title_active a,
.incorporation-tabs .bt_bb_tabs_header li.bt_bb_tab_title_active span {
    background: #123f56 !important;
    color: #ffffff !important;
    border-color: #123f56 !important;
    font-weight: 700 !important;
}

/* --------------------------------------------------
   Tab content
-------------------------------------------------- */

.incorporation-tabs .bt_bb_tab_item,
.incorporation-tabs .bt_bb_tab_content {
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* --------------------------------------------------
   Flip-card row inside tabs
   Supports normal Row + Inner Row
-------------------------------------------------- */

/* Normal Row holder */
.incorporation-tabs .flip-card-row .bt_bb_row_holder,

/* Inner Row holder */
.incorporation-tabs .flip-card-row .bt_bb_row_inner_holder,

/* In case class is attached directly to Inner Row */
.incorporation-tabs
.bt_bb_row_inner.flip-card-row
.bt_bb_row_inner_holder {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: flex-start !important;

    column-gap: 30px !important;
    row-gap: 30px !important;

    width: 100% !important;
}

/* Normal Columns */
.incorporation-tabs .flip-card-row .bt_bb_column,

/* Inner Columns */
.incorporation-tabs .flip-card-row .bt_bb_column_inner,

/* Direct Inner Row selector */
.incorporation-tabs
.bt_bb_row_inner.flip-card-row
.bt_bb_column_inner {
    flex: 0 0 270px !important;
    width: 270px !important;
    max-width: 270px !important;

    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Column content wrappers */
.incorporation-tabs .flip-card-row .bt_bb_column_content,
.incorporation-tabs .flip-card-row .bt_bb_column_inner_content {
    width: 100% !important;
    max-width: 100% !important;
}

/* Flip cards inside tabs */
.incorporation-tabs .flip-card-row .service-flip-card {
    width: 270px !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* --------------------------------------------------
   Tablet
-------------------------------------------------- */

@media (max-width: 1024px) {

    .incorporation-tabs .bt_bb_tabs_header {
        gap: 20px !important;
        margin-bottom: 42px !important;
    }

    .incorporation-tabs .bt_bb_tabs_header li {
        flex: 0 1 320px !important;
        width: 320px !important;
    }

    .incorporation-tabs .bt_bb_tabs_header li a,
    .incorporation-tabs .bt_bb_tabs_header li span {
        min-height: 70px !important;
        padding: 15px 24px !important;
        font-size: 20px !important;
    }

    .incorporation-tabs .flip-card-row .bt_bb_row_holder,
    .incorporation-tabs .flip-card-row .bt_bb_row_inner_holder,
    .incorporation-tabs
    .bt_bb_row_inner.flip-card-row
    .bt_bb_row_inner_holder {
        column-gap: 24px !important;
        row-gap: 24px !important;
    }
}

/* --------------------------------------------------
   Mobile
-------------------------------------------------- */

@media (max-width: 767px) {

    /* Tab buttons stack vertically */
    .incorporation-tabs .bt_bb_tabs_header {
        flex-direction: column !important;
        align-items: center !important;

        gap: 12px !important;

        width: calc(100% - 30px) !important;
        margin: 0 auto 35px !important;
    }

    .incorporation-tabs .bt_bb_tabs_header li {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .incorporation-tabs .bt_bb_tabs_header li a,
    .incorporation-tabs .bt_bb_tabs_header li span {
        min-height: 58px !important;
        padding: 14px 20px !important;
        font-size: 18px !important;
    }

    /* Flip-card rows stack vertically */
    .incorporation-tabs .flip-card-row .bt_bb_row_holder,
    .incorporation-tabs .flip-card-row .bt_bb_row_inner_holder,
    .incorporation-tabs
    .bt_bb_row_inner.flip-card-row
    .bt_bb_row_inner_holder {
        flex-direction: column !important;
        align-items: center !important;

        column-gap: 0 !important;
        row-gap: 24px !important;
    }

    .incorporation-tabs .flip-card-row .bt_bb_column,
    .incorporation-tabs .flip-card-row .bt_bb_column_inner,
    .incorporation-tabs
    .bt_bb_row_inner.flip-card-row
    .bt_bb_column_inner {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .incorporation-tabs .flip-card-row .service-flip-card {
        width: 270px !important;
        max-width: calc(100vw - 40px) !important;
    }
}
