/* ========================================
   Pricing Section CSS
   Complete styling for pricing plans
   ======================================== */

/* Price Typography */
.price-bold {
    display: inline-block;
    font-family: "Inter-Bold", "Inter", "Inter Placeholder", sans-serif;
    font-size: 34px !important;
    letter-spacing: -1px;
    font-weight: 600;
}

.price-bold2 {
    display: inline-block;
    font-family: "Inter-Bold", "Inter", "Inter Placeholder", sans-serif;
    font-size: 48px !important;
    letter-spacing: -2px;
    font-weight: 600;
    color: #222222;
}

.price-bold3 {
    display: inline-block;
    font-family: "Inter-Bold", "Inter", "Inter Placeholder", sans-serif;
    font-size: 48px !important;
    letter-spacing: -2px;
    font-weight: 600;
}

.price-bold4 {
    display: inline-block;
    font-family: "Inter", "Inter Placeholder", sans-serif;
    font-size: 22px !important;
    letter-spacing: 0px;
    font-weight: 500;
}

.price-value {
    display: inline-block;
    font-family: "Inter-Bold", "Inter", "Inter Placeholder", sans-serif;
    font-size: 48px !important;
    letter-spacing: -2px;
    font-weight: 600;
    color: #222222;
}

.pro .price-value {
    color: #111827 !important;
}

.old-price {
    font-size: 32px !important;
    font-weight: 500;
    color: #6e6e6e;
}

.pro .old-price {
    font-size: 32px !important;
    font-weight: 500;
    color: #dadada;
}

.strike {
    opacity: 0.6;
    text-decoration: line-through;
}

.price-pro {
    color: #111827;
}

/* Pricing Section Layout */
#pricing {
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    gap: 12px;
}

.pricingcontainer {
    display: flex;
    justify-content: flex-start;
    align-content: center;
    align-items: center;
    flex-direction: column;
}

#pricing .section_header {
    margin-bottom: 70px;
}

#pricing .section_header hr {
    width: 35%;
}

/* Price Wrapper Base Styles */
#pricing .price_wrapper {
    width: 340px;
    min-height: 300px;
    position: relative;
    -webkit-transition: border-color 200ms ease,-webkit-box-shadow 200ms ease,-webkit-transform 200ms ease;
    -o-transition: border-color 200ms ease,box-shadow 200ms ease,transform 200ms ease;
    transition: border-color 200ms ease,box-shadow 200ms ease,transform 200ms ease,-webkit-box-shadow 200ms ease,-webkit-transform 200ms ease;
    border-radius: 16px !important;
    background-color: rgb(255, 255, 255);
    border: 1px solid #e5e5e5;
}

/* Price Wrapper Header */
.price_wrapper .header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    border-radius: 16px !important;
    border-bottom: 1px solid #e5e5e5;
    box-shadow: initial !important;
}

#pricing .price_wrapper .header {
    height: 100% !important;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .1);
    background: #fbfbfb !important;
    color: #252525;
    padding: 8px 4px 16px 22px;
    transition: box-shadow 0.15s ease 0s, transform 0.15s ease 0s;
    will-change: box-shadow, transform;
    text-shadow: initial;
}

#pricing .price_wrapper .header > span {
    font-size: 18px;
    font-style: italic;
}

#pricing .price_wrapper .header .price {
    font-size: 12px;
    position: relative;
    margin-top: 12px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    flex-direction: column;
    width: 100%;
}

#pricing .price_wrapper .header .price span {
    margin-right: 0px;
    font-size: 28px;
}

/* Plan-Specific Typography */
#pricing .price_wrapper .header .price span.price-pro {
    font-family: "Covered By Your Grace", cursive;
    font-style: normal;
    text-transform: uppercase;
    transform: rotate(-3deg) translate(0.35em, 0.05em);
    font-variant-ligatures: none;
    font-weight: 400;
    left: 100%;
    letter-spacing: .05em;
    transform-origin: left bottom;
    background: var(--white);
    color: var(--primary);
    padding: .25em .45em .3em .45em;
    border-radius: 8px;
}

#pricing .price_wrapper .header .price span.price-teams {
    font-family: "Covered By Your Grace", cursive;
    font-style: normal;
    text-transform: uppercase;
    transform: rotate(-3deg) translate(0.35em, 0.05em);
    font-variant-ligatures: none;
    font-weight: 400;
    left: 100%;
    letter-spacing: .05em;
    transform-origin: left bottom;
    background: var(--primary);
    padding: .25em .45em .3em .45em;
    color: var(--white);
    border-radius: 8px;
}

#pricing .price_wrapper .header .price span.price-business {
    font-family: "Covered By Your Grace", cursive;
    font-style: normal;
    text-transform: uppercase;
    transform: rotate(-3deg) translate(0.35em, 0.05em);
    font-variant-ligatures: none;
    font-weight: 400;
    font-size: 34px;
    line-height: 48px;
    letter-spacing: 1px;
    background: var(--light-grey-2);
    padding: .2em .45em .2em .45em;
    color: var(--color-background-content-selected);
    border-radius: 8px;
}

/* Pro Plan Styles */
#pricing .price_wrapper.pro {
    box-shadow: 0 15px 35px rgba(50, 50, 93, .1), 0 5px 15px rgba(0, 0, 0, .37);
}

#pricing .price_wrapper.pro .header {
    background: #ffffff !important;
    color: #111827 !important;
    background-repeat: repeat-x;
    -webkit-border-radius: 4px 4px 0px 0px;
    -moz-border-radius: 4px 4px 0px 0px;
    -ms-border-radius: 4px 4px 0px 0px;
    -o-border-radius: 4px 4px 0px 0px;
    border-radius: 4px 4px 0px 0px;
    transition: box-shadow 0.15s ease 0s, transform 0.15s ease 0s;
    will-change: box-shadow, transform;
    text-shadow: initial;
}

/* Business Plan Styles */
#pricing .price_wrapper.business {
    border: 2px solid #5d5fef !important;
    box-shadow: 0 15px 35px rgba(93, 95, 239, .15), 0 5px 15px rgba(93, 95, 239, .2);
}

#pricing .price_wrapper.business:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(93, 95, 239, 0.25);
}

#pricing .price_wrapper.business .header {
    background: #ffffff !important;
    color: #111827 !important;
    background-repeat: repeat-x;
    -webkit-border-radius: 4px 4px 0px 0px;
    -moz-border-radius: 4px 4px 0px 0px;
    -ms-border-radius: 4px 4px 0px 0px;
    -o-border-radius: 4px 4px 0px 0px;
    border-radius: 4px 4px 0px 0px;
    text-shadow: initial;
}

#pricing .price_wrapper.business .header .price span.price-business {
    color: #111827 !important;
}

#pricing .price_wrapper.business .price-business-price {
    color: #111827 !important;
}

#pricing .price_wrapper.business .price-business-price .price-bold3 {
    color: #111827 !important;
    font-weight: 600 !important;
}

#pricing .price_wrapper.business .ideal {
    font-size: 14px !important;
    line-height: 20px !important;
    color: rgba(0, 0, 0, 0.65) !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    max-width: 100% !important;
}

#pricing .price_wrapper.business .button {
    background: linear-gradient(135deg, #5d5fef 0%, #4338ca 100%) !important;
    color: #ffffff !important;
    border: none;
}

#pricing .price_wrapper.business .button:hover {
    background: linear-gradient(135deg, #4338ca 0%, #3730a3 100%) !important;
    transform: scale(1.02);
}

#pricing .price_wrapper.business .svg-icon-check {
    color: #5d5fef;
}

/* Label Diagonal & Container */
.label-container {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: 104px;
    top: -4px;
    left: -4px;
    position: absolute;
    overflow: hidden;
    width: 102%;
}

.label-container:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    transition: all .1s ease-in;
    left: 57px;
    background-color: #08af1f;
    top: -1px;
}

.label-container:after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    transition: all .1s ease-in;
    left: -1px;
    top: 58px;
    z-index: -1;
    background-color: #08af1f;
}

.label-diagonal {
    text-align: center;
    position: relative;
    right: 26px;
    width: 100px;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 10px;
    top: 15px;
    letter-spacing: .2px;
    transform: rotate(-45deg);
    padding: 2px 0;
}

.popular {
    background-color: #09d125;
}

.label-diagonal.popular:before {
    -webkit-animation: badgeHighlightShimmer 2.5s;
    animation: highlight 2.5s;
    -webkit-animation-delay: 2.8s;
    animation-delay: 2.8s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .18) 25%, rgba(255, 255, 255, .3) 50%, rgba(255, 255, 255, .18) 75%, rgba(255, 255, 255, 0));
    content: "";
    display: block;
    height: 100px;
    left: -60%;
    position: absolute;
    top: -250px;
    -webkit-transform: rotate(-25deg);
    -ms-transform: rotate(-25deg);
    transform: rotate(-25deg);
    width: 600px;
}

@-webkit-keyframes highlight {
    0% {
        left: -100%;
        top: -250px;
    }
    50% {
        left: 100%;
        top: 250px;
    }
    to {
        left: 100%;
        top: 650px;
    }
}

@keyframes highlight {
    0% {
        left: -100%;
        top: -250px;
    }
    50% {
        left: 100%;
        top: 250px;
    }
    to {
        left: 100%;
        top: 650px;
    }
}

#pricing .price_wrapper.business .label-diagonal.popular {
    background: rgb(208, 255, 153) !important;
    color: #0b0746 !important;
}

#pricing .price_wrapper.business .label-diagonal.popular.monthly-grey {
    background: #e5e7eb !important;
    color: #374151 !important;
}

/* Section Styles */
.section.intro {
    margin: 1rem 0;
}

#pricing .price_wrapper .section.pricing-details {
    padding: 0;
    text-align: left;
    margin-bottom: 0;
}

#pricing .price_wrapper .section {
    padding: 0px 0px 0px 26px;
    text-align: left;
}

#pricing .price_wrapper .section h3 {
    color: #333;
    font-size: 16px;
    line-height: 22px;
}

/* Perks List Styles */
#pricing .price_wrapper .section ul.perks {
    list-style-type: none;
    margin-left: 0px;
    margin-top: 2px;
    margin-bottom: 2px;
    font-size: 14px;
    line-height: 1.78;
    font-weight: 500;
    font-family: Hind,Arial,sans-serif;
    color: rgb(65, 65, 65);
}

#pricing .price_wrapper .section ul.perks li {
    padding: 5px 5px;
}

#pricing .price_wrapper .section ul.perks li i {
    width: 14px;
    height: 14px;
    margin: initial;
}

#pricing .price_wrapper .section.intro ul.perks {
    list-style-type: none;
    margin-left: 0px;
    margin-bottom: 6px;
    font-size: 16px;
}

#pricing .price_wrapper .section.intro ul.perks li {
    padding: 4px 0px !important;
    color: #26262c;
    margin-bottom: -3px;
    display: flex;
    justify-content: flex-start;
    font-family: 'GT America Standard Regular', 'Helvetica', 'Arial' !important;
    display: flex;
    align-items: center;
    gap: 6px;
}

#pricing .price_wrapper .section.intro ul.perks li:first-child {
    display: flex;
    align-items: center;
}

#pricing .price_wrapper .section.intro ul.perks li span.text-details {
    margin-top: 0px;
}

#pricing .price_wrapper .section ul.perks i {
    margin-right: 6px;
}

#pricing .price_wrapper .section .btn {
    bottom: 15px;
    font-weight: bold;
}

.footer-pricing i.svg-icon-check {
    margin-top: 0.2rem;
    height: 14px !important;
    width: 14px !important;
}

li.footer-pricing {
    background-color: #f9f8fc;
    border-top: 1px solid #e9e4ee;
    padding: 10px 0 10px 30px;
    border-bottom: 1px solid #e9e4ee;
}

#pricing .price_wrapper .footer-pricing ul.perks li {
    font-size: 12px;
}

/* SVG Icons */
i.svg-icon-check {
    background-color: #181719;
    -webkit-mask-image: url(/img/icons/svg/cil-check-circle.svg);
    mask-image: url(/img/icons/svg/cil-check-circle.svg);
    background-size: 100% 100%;
    height: 18px !important;
    width: 18px !important;
    float: left;
    display: block;
    fill: #6056fc;
}

i.svg-icon-right-purple {
    background-color: #815ef8 !important;
}

i.svg-icon-right-green {
    background-color: #2f9130 !important;
}

/* Utility Classes */
.ideal {
    font-size: 14px !important;
    line-height: 18px;
    color: rgba(0, 0, 0, 0.65);
}

.pro .ideal {
    font-size: 14px !important;
    line-height: 18px;
    color: rgba(0, 0, 0, 0.65);
}

.underlineDashed {
    border-bottom: 1px dashed #000;
    padding-bottom: 2px;
}

.marginRight5 {
    margin-right: 5px;
}

.margin-left-18 {
    margin-left: 18px;
}

.margin-left-5 {
    margin-left: 5px;
}

.margin-left-4 {
    margin-left: 4px;
}

.offplan {
    /* Price display class */
}

.price-teams-price {
    /* Teams plan specific pricing */
}

.price-pro-price {
    /* Pro plan specific pricing */
}

.price-business-price {
    /* Business plan specific pricing */
}

.absolute {
    position: absolute;
}

.absolute-inset {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/* Button Styles */
#pricing .price_wrapper .button {
    text-shadow: initial !important;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

#pricing .price_wrapper.free .button,
#pricing .price_wrapper.basic .button,
#pricing .price_wrapper.starter .button {
    color: #0c0c0c !important;
    text-shadow: initial !important;
    cursor: pointer;
}

.price_wrapper .cta-blue.button {
    text-transform: initial;
    padding: 1rem 3rem 1rem 3rem !important;
}

/* Pricing Publish Section */
.pricing-publish {
    -webkit-box-align: center;
    -webkit-box-pack: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    background-color: #f8f9fb;
    padding: 48px;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border-radius: 16px !important;
    border: 1px solid #e5e5e5;
}

.pricing-publish p {
    color: #000;
    position: relative;
    line-height: 1.6;
    font-size: 1.125rem;
    margin: 0px 0px 1.25rem;
}

.pricing-publish p strong {
    font-weight: 700;
}

/* Responsive Styles */
@media (min-width: 1200px) {
    #pricing .price_wrapper.lite:hover {
        box-shadow: 0 8px 30px 0 rgb(10 10 10 / 15%), 0 0 0 0px rgb(10 10 10 / 10%);
    }
}

@media (min-width: 980px) and (max-width: 1199px) {
    #pricing .price_wrapper {
        width: 280px;
    }
}

@media (max-width: 979px) {
    #pricing {
        flex-direction: column;
    }
    #pricing .price_wrapper .header .price {
        text-align: left;
        margin-left: 24px;
    }
    .pricing-publish {
        padding: 20px;
        max-width: 370px;
        margin: 0 auto;
    }
    #pricing .price_wrapper {
        margin-bottom: 20px !important;
    }
}

@media (max-width: 767px) {
    .price_wrapper {
        margin-right: 0px !important;
        display: inline-block;
    }
    .section.intro {
        margin: 1rem 0 0 0;
    }
    #pricing .price_wrapper .header {
        height: 65px;
        padding: 12px 0px 0px 28px;
    }
}

@media (max-width: 480px) {
    #pricing .price_wrapper {
        width: 345px !important;
    }
    #pricing .price_wrapper .header .price span {
        font-size: 24px;
        padding-bottom: 1rem;
    }
    .free .custom-saving3 {
        min-height: 0px;
    }
}

/* Additional Pricing Styles */

.perks strong {
    text-rendering: optimizeLegibility;
    font-size: 16px;
    font-weight: 500 !important;
    font-family: 'GT America Standard Regular', 'Helvetica', 'Arial' !important;
    display: inline-block;
}

.all .perks > strong {
    padding-top: 12px;
    font-size: 14px;
    font-weight: 600 !important;
    color: #151515;
    font-family: 'GT America Standard Regular', 'Helvetica', 'Arial' !important;
    display: inline-block;
}

.title-service {
    padding-top: 16px;
    font-size: 14px;
    font-weight: 400 !important;
    color: #48349f;
    font-family: 'Inter', 'Helvetica', 'Arial' !important;
    letter-spacing: -0.2px;
    display: inline-block;
}

.planDetails li {
    font-size: 1.2rem;
    margin-bottom: 10px;
}

.planDetails li strong {
    font-size: 1.2rem;
}

.custom-saving3 {
    margin-bottom: 12px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    color: rgb(15 26 15);
    letter-spacing: 0.3px;
    background-color: rgb(208, 255, 153);
    border-radius: 20px;
    text-transform: uppercase;
    padding: 0.25rem 0.5rem;
}

.emoji-icon {
    background-color: initial !important;
    background: initial !important;
    color: initial !important;
}

.discount-amount {
    font-weight: 700;
}

@keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

.issue-label {
    display: inline-block;
    font-size: 11px;
    font-weight: 500;
}

.pricing-svg {
    display: inline-block;
    overflow: visible !important;
    vertical-align: text-bottom;
    fill: currentColor;
    color: #288e2a !important;
    padding-top: 2px !important;
}

/* Button Styles */
.button-shine {
    -webkit-transition: box-shadow 0.15s ease,-webkit-transform 0.15s ease;
    transition: box-shadow 0.15s ease,transform 0.15s ease;
    will-change: box-shadow,transform;
    background: radial-gradient(100% 100% at 100% 0%, var(--primary) 0%, var(--primary-dark) 100%) !important;
    text-shadow: 0 1px 0 rgb(0 0 0 / 40%);
}

.button-shine3 {
    -webkit-transition: box-shadow 0.15s ease,-webkit-transform 0.15s ease;
    transition: box-shadow 0.15s ease,transform 0.15s ease;
    will-change: box-shadow,transform;
    background: radial-gradient(100% 100% at 100% 0%, var(--primary) 0%, var(--primary-dark) 100%) !important;
    text-shadow: 0 1px 0 rgb(0 0 0 / 40%);
}

#pricing .main-button {
    font-size: 22px !important;
    line-height: 2.8;
    font-weight: 500;
    padding: 8px 0px;
    height: 80px;
    border-radius: 999px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

#pricing .main-button:hover {
    line-height: 2.75;
}

#pricing .main-button-free {
    line-height: 2.8 !important;
    padding: 20px 50px !important;
    height: 81px !important;
    width: 285px;
}

/* Perks list left alignment */
#pricing ul.perks.intro {
    text-align: left;
}

#pricing ul.perks.intro li {
    text-align: left;
}

/* Info Icon Styles */
.cil-info {
    display: block;
    background-size: 100% 100%;
    background-color: #0b0b0b;
    height: 16px !important;
    width: 16px !important;
    -webkit-mask-image: url(/img/icons/svg/cil-info-2.svg);
    mask-image: url(/img/icons/svg/cil-info-2.svg);
    cursor: pointer;
}

.tippy {
    text-shadow: none;
}

.icon-tooltip {
    opacity: 1;
}

@media (hover: hover) {
    .perks li:hover .icon-tooltip {
        opacity: 1;
    }
}
