.cw2-tabs-summer-camps-page {
    position: relative;
    padding: 23px 0 34px;
}

.cw2-tabs-summer-camps-page .side-line {
    position: absolute;
    z-index: -100;
    top: 25px;
    bottom: 0;
    left: 21px;
    width: 33px;
}

.cw2-tabs-summer-camps-page .side-line:before {
    position: absolute;
    z-index: -80;
    content: '';
    top: 0;
    bottom: 0;
    left: 10px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #fdc743;
}

.cw2-tabs-summer-camps-page .side-line:after {
    position: absolute;
    z-index: -100;
    content: '';
    top: 0;
    bottom: 2px;
    left: 13px;
    width: 6px;
    background: url('data:image/png;base64,R0lGODlhBgAGALMAAP7+/vz8/Ozs7Ofn5+7u7v39/erq6v///+Xl5QAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4wLWMwMDEgNzkuMTRlY2I0MmYyYywgMjAyMy8wMS8xMy0xMjoyNTo0NCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmI0OTI1NTBlLTU2OTUtNGRiMy1hNDgxLTkwODBiNTNjMTk2ZCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyREE4NjMwNEI3NzkxMUVFOTE1QkE2RkEzQzhBOTY3MiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyREE4NjMwM0I3NzkxMUVFOTE1QkE2RkEzQzhBOTY3MiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOmYyNzY1NmNlLTgzZjEtNGNlNS1iNGFhLWQ0NzkwNTJmNzc4MSIgc3RSZWY6ZG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmZmZmRkODQwLWZjMmEtMWM0Yi1hNGFmLTM0NDRjYjk2YjdlYiIvPiA8ZGM6dGl0bGU+IDxyZGY6QWx0PiA8cmRmOmxpIHhtbDpsYW5nPSJ4LWRlZmF1bHQiPkNXX0Rlc2t0b3BfTW9ja3VwX3Y4X0FsdDwvcmRmOmxpPiA8L3JkZjpBbHQ+IDwvZGM6dGl0bGU+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAAAAAAAsAAAAAAYABgAABBIQIRMOQaMAMYuV1TVtUiYaXgQAOw==');
}

.cw2-tabs-summer-camps-page .side-line .icon {
    position: absolute;
    z-index: -80;
    left: 0;
    bottom: 0;
    display: flex;
}

.cw2-tabs-summer-camps-page .class-frequency {
    padding: 19px 0 0;
    text-align: center;
    font-size: 16px;
}

.cw2-tabs-summer-camps-page .class-frequency + .item {
    padding-top: 20px;
}

.cw2-tabs-summer-camps-page .class-frequency .title {
    margin: 0 0 14px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.cw2-tabs-summer-camps-page .class-frequency .buttons {
    display: flex;
    max-width: 750px;
    justify-content: space-around;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.cw2-tabs-summer-camps-page .class-frequency .buttons li {
    flex: 1;
    padding: 0 5px;
}

.cw2-tabs-summer-camps-page .class-frequency .buttons a {
    display: inline-block;
    padding-bottom: 2px;
    letter-spacing: 1px;
    text-decoration: none;
    border-bottom: 3px solid #e1e1e1;
}

.cw2-tabs-summer-camps-page .class-frequency .buttons a:hover,
.cw2-tabs-summer-camps-page .class-frequency .buttons a.active {
    border-color: #fdc743;
}

.cw2-tabs-summer-camps-page .class-frequency .note {
    font-size: 13px;
    color: #7f828c;
}

.cw2-tabs-summer-camps-page .item {
    display: flex;
    padding: 32px 0 0 0;
}

.cw2-tabs-summer-camps-page .item.color-green .capstone-title {
    color: #008664;
}

.cw2-tabs-summer-camps-page .item.color-green .circle-wrapper {
    color: #008664;
}

.cw2-tabs-summer-camps-page .item.color-green .circle-wrapper span {
    box-shadow: inset 0 0 0 8px #aaecdb;
    border: 6px solid #008664;
}

.cw2-tabs-summer-camps-page .item.color-green .content .text .heading .camp {
    color: #008664;
}

.cw2-tabs-summer-camps-page .item.color-green .content .text .description ul li:before {
    background-color: #008664;
}

.cw2-tabs-summer-camps-page .item.color-blue .capstone-title {
    color: #3b75bb;
}

.cw2-tabs-summer-camps-page .item.color-blue .circle-wrapper {
    color: #3b75bb;
}

.cw2-tabs-summer-camps-page .item.color-blue .circle-wrapper span {
    box-shadow: inset 0 0 0 8px #a7d4ff;
    border: 6px solid #3b75bb;
}

.cw2-tabs-summer-camps-page .item.color-blue .content .text .heading .camp {
    color: #3b75bb;
}

.cw2-tabs-summer-camps-page .item.color-blue .content .text .description ul li:before {
    background-color: #3b75bb;
}

.cw2-tabs-summer-camps-page .item.color-violet .capstone-title {
    color: #7d52a1;
}

.cw2-tabs-summer-camps-page .item.color-violet .circle-wrapper {
    color: #7d52a1;
}

.cw2-tabs-summer-camps-page .item.color-violet .circle-wrapper span {
    box-shadow: inset 0 0 0 8px #e5c7ff;
    border: 6px solid #7d52a1;
}

.cw2-tabs-summer-camps-page .item.color-violet .content .text .heading .camp {
    color: #7d52a1;
}

.cw2-tabs-summer-camps-page .item.color-violet .content .text .description ul li:before {
    background-color: #7d52a1;
}

.cw2-tabs-summer-camps-page .item.color-purple .capstone-title {
    color: #aa227d;
}

.cw2-tabs-summer-camps-page .item.color-purple .circle-wrapper {
    color: #aa227d;
}

.cw2-tabs-summer-camps-page .item.color-purple .circle-wrapper span {
    box-shadow: inset 0 0 0 8px #fec8ec;
    border: 6px solid #aa227d;
}

.cw2-tabs-summer-camps-page .item.color-purple .content .text .heading .camp {
    color: #aa227d;
}

.cw2-tabs-summer-camps-page .item.color-purple .content .text .description ul li:before {
    background-color: #aa227d;
}

.cw2-tabs-summer-camps-page .item.color-orange .capstone-title {
    color: #fdc743;
}

.cw2-tabs-summer-camps-page .item.color-orange .circle-wrapper {
    color: #fdc743;
}

.cw2-tabs-summer-camps-page .item.color-orange .circle-wrapper span {
    box-shadow: inset 0 0 0 8px #ffe5a3;
    border: 6px solid #fdc743;
}

.cw2-tabs-summer-camps-page .item.color-orange .content .text .heading .camp {
    color: #fdc743;
}

.cw2-tabs-summer-camps-page .item.color-orange .content .text .description ul li:before {
    background-color: #fdc743;
}

.cw2-tabs-summer-camps-page .item.capstone-block .content {
    background-color: #fff;
    border: 1px dashed #fdc743;
}

.cw2-tabs-summer-camps-page .item .circle-wrapper {
    flex: 0 0 96px;
    max-width: 96px;
    padding: 25px 0 0 3px;
}

.cw2-tabs-summer-camps-page .item .circle-wrapper .circle,
.cw2-tabs-summer-camps-page .item .circle-wrapper .donut-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    font-size: 22px;
}

.cw2-tabs-summer-camps-page .item .circle-wrapper .circle {
    border-radius: 50%;
    background: #fff;
}

.cw2-tabs-summer-camps-page .item .circle-wrapper .donut-wrapper {
    position: relative;
    z-index: 1;
}

.cw2-tabs-summer-camps-page .item .circle-wrapper .donut-wrapper .donut {
    position: absolute;
    z-index: -5;
    top: 0;
    left: 0;
}

.cw2-tabs-summer-camps-page .item .content {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 21px 27px 7px;
    background-color: #fafafa;
}

.cw2-tabs-summer-camps-page .item .content .text {
    flex: 1;
    padding-right: 80px;
}

.cw2-tabs-summer-camps-page .item .content .text .heading {
    margin-bottom: 9px;
    font-size: 16px;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .camp,
.cw2-tabs-summer-camps-page .item .content .text .heading .ages {
    margin-right: 18px;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .heading-link {
    font-weight: bold;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .heading-link a {
    text-decoration: none;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone,
.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone-2 {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 5;
    letter-spacing: normal;
    text-transform: none;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone .button,
.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone-2 .button {
    display: inline-block;
    margin-right: 2px;
    cursor: pointer;
    border-bottom: 1px dashed #fdc743;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone .button:hover,
.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone-2 .button:hover {
    border-bottom-color: transparent;
}

.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone .tooltip,
.cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone-2 .tooltip {
    top: 25px;
    left: -15px;
}

.cw2-tabs-summer-camps-page .item .content .text .title {
    margin-bottom: 14px;
    font-size: 36px;
    line-height: 1.1;
    font-weight: 700;
}

.cw2-tabs-summer-camps-page .item .content .text .title a {
    border-bottom: 2px solid #fdc743;
    text-decoration: none;
}

.cw2-tabs-summer-camps-page .item .content .text .title a:hover {
    border-bottom: none;
}

.cw2-tabs-summer-camps-page .item .content .text .title a sup {
    font-size:.6em;
}

.cw2-tabs-summer-camps-page .item .content .text .description-heading {
    margin-bottom: 2px;
    font-size: 18px;
    font-weight: bold;
}

.cw2-tabs-summer-camps-page .item .content .text .description-heading .icon {
    display: inline-flex;
    position: relative;
    top: 2px;
    width: 20px;
    margin-right: 7px;
    color: #fdc743;
}

.cw2-tabs-summer-camps-page .item .content .text .description {
    font-size: 16px;
    line-height: 1.25;
}

.cw2-tabs-summer-camps-page .item .content .text .description ul {
    margin: 0 0 0 25px;
    padding: 0;
    list-style: none;
}

.cw2-tabs-summer-camps-page .item .content .text .description ul li {
    position: relative;
    margin: 0 0 12px;
    padding: 0 0 0 31px;
}

.cw2-tabs-summer-camps-page .item .content .text .description ul li:before {
    content: '';
    display: block;
    position: absolute;
    z-index: 0;
    top: 3px;
    left: 0;
    width: 13px;
    height: 13px;
    border-radius: 50%;
}

.cw2-tabs-summer-camps-page .item .content .text .description ul a {
    text-decoration: none;
    border-bottom: 1px solid #fdc743;
    transition: none;
}

.cw2-tabs-summer-camps-page .item .content .text .description ul a:hover {
    border-bottom: none;
}

.cw2-tabs-summer-camps-page .item .content .attributes {
    flex: 0 0 235px;
    max-width: 235px;
    padding: 0 0 14px;
    font-size: 18px;
}

.cw2-tabs-summer-camps-page .item .content .attributes .per-cource-title {
    margin-bottom: 10px;
    font-weight: 700;
}

.cw2-tabs-summer-camps-page .item .content .attributes ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.cw2-tabs-summer-camps-page .item .content .attributes li {
    display: flex;
    margin-bottom: 7px;
}

.cw2-tabs-summer-camps-page .item .content .attributes li .icon {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 24px;
    max-width: 24px;
    height: 26px;
    margin-right: 15px;
    color: #fdc743;
}

.cw2-tabs-summer-camps-page .item .content .attributes li .icon > svg {
    flex: unset;
}

.cw2-tabs-summer-camps-page .item .content .attributes li .icon.icon-laptop-code > svg {
    flex: 0 0 24px;
}

.cw2-tabs-summer-camps-page .item .content .attributes li .label {
    flex: 1;
}

.cw2-tabs-summer-camps-page .item .content .attributes li .count {
    flex: 0 0 29px;
    max-width: 29px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background-color: #fff;
    font-weight: bold;
}

.cw2-tabs-summer-camps-page .item .content .attributes .button {
    display: block;
    flex: 0 0 70px;
    max-width: 70px;
    margin-top: 1px;
    margin-left: 10px;
}

.cw2-tabs-summer-camps-page .item .content .attributes .button .btn {
    width: 100%;
    min-width: unset;
    padding: 0;
    border-bottom: 2px solid #fdc743 !important;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price {
    display: flex;
    align-items: flex-start;
    padding: 14px 0 0 5px;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price + .price {
    padding-top: 0;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price.special-price .label {
    font-weight: bold;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price.special-price .amount {
    color: #008664;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price .label {
    font-size: 16px;
    line-height: 0.875;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price .amount {
    display: flex;
    justify-content: flex-end;
    position: relative;
    top: -8px;
    flex: 1;
    font-size: 32px;
    font-weight: 700;
}

.cw2-tabs-summer-camps-page .item .content .attributes .price .currency-sign {
    position: relative;
    top: 3px;
    margin-left: 4px;
    font-size: 20px;
    font-weight: 400;
}

.cw2-tabs-summer-camps-page .item .content .attributes .enrollment-conditions {
    display: flex;
    align-items: flex-start;
    margin-top: -5px;
    font-size: 13px;
    line-height: 1.08;
}

.cw2-tabs-summer-camps-page .item .content .attributes .enrollment-conditions .icon {
    display: flex;
    flex: 0 0 19px;
    max-width: 19px;
    margin-right: 5px;
    color: #9673b2;
}

.cw2-tabs-summer-camps-page .item .content .attributes .right-section-link {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
    padding: 0 0 0 5px;
    font-size: 13px;
}

.cw2-tabs-summer-camps-page .item .content .attributes .right-section-link a {
    border-bottom: 2px solid #fdc743;
    text-decoration: none;
}

.cw2-tabs-summer-camps-page .item .content .attributes .right-section-link a:hover {
    border-bottom: none;
}

.cw2-tabs-summer-camps-page .item .content .attributes .right-section-link .button {
    margin-left: auto;
}

.cw2-tabs-summer-camps-page .pricing-card + .enrollment-conditions {
    margin-top:0 !important;
}

.cw2-tabs-summer-camps-page .pricing-card .monthly-plan {
    margin-bottom:8px;
    font-size:22px;
}

.cw2-tabs-summer-camps-page .pricing-card .monthly-plan .monthly-price {
    font-size:37px;
}

.cw2-tabs-summer-camps-page .pricing-card .upfront-payment {
    margin-bottom:15px;
    padding-left:6px;
    font-size:19px;
    border-left:5px solid #fdc743;
}

.cw2-tabs-summer-camps-page .pricing-card .upfront-payment .label {
    font-size:12px;
    text-transform:uppercase;
}

.cw2-tabs-summer-camps-page .pricing-card .bundle-details {
    margin-bottom:10px;
    font-size:12px;
}

.cw2-tabs-summer-camps-page .pricing-card sup {
    font-size:.6em;
}

.cw2-tabs-summer-camps-page .pricing-card sup.dagger {
    color:#9673b2;
}

.cw2-tabs-summer-camps-page .pricing-card sup.dagger a {
    text-decoration:none;
}

@media screen and (max-width: 991px) {
    .all-tabs-visible-on-mobile .cw2-tabs-content .lazyblock-inner-blocks > .cw2-tabs-summer-camps-page,
    .all-tabs-visible-on-mobile .cw2-tabs-content .lazyblock-inner-blocks > .cw2-tabs-summer-camps-page.hidden {
        display:block !important;
    }
}

@media screen and (max-width: 767px) {
    .cw2-tabs-summer-camps-page .side-line {
        display: none;
    }

    .cw2-tabs-summer-camps-page .item .circle-wrapper {
        display: none;
    }

    .cw2-tabs-summer-camps-page .item .content {
        display: block;
    }

    .cw2-tabs-summer-camps-page .item .content .text {
        padding-right: 0;
    }
}

@media screen and (max-width: 600px) {
    .cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone,
    .cw2-tabs-summer-camps-page .item .content .text .heading .what-is-capstone-2 {
        display:block;
    }
}

@media screen and (max-width: 575px) {
    .cw2-tabs-summer-camps-page .class-frequency .buttons {
        display: block;
    }

    .cw2-tabs-summer-camps-page .class-frequency .buttons li + li {
        margin-top: 15px;
    }
}
