/*
Theme Name : Classroom Secrets Kids
Theme URI: https://kids.classroomsecrets.co.uk
Description: New, direct-level child theme for CSK, incorporating Classroom Secrets branding.
Author: Matt Bedford
Template: storefront
Version: 2.0.0
*/

/*Storefront admin constrained editor styles fix*/
.wp-block {
    max-width: 100% !important;
}

.wp-block[data-align="wide"] {
    max-width: 100% !important;
}

.wp-block[data-align="full"] {
    max-width: none !important;
}


/* NEW 2025 - Admin area fixes */

:root {
    --lunar: #EB5B50;
    --adriatic: #00ABC8;
    --med: #1183B8;
    --dune: #FFB800;
    --apple: #6FBC6C;
    --blueberry: #494A93;
    --lilac: #494A93;
    --light: #F6F6F6;
    --white: #FFFFFF;
    --charcoal: #343434;
    --mercury: #A6A6A6;
    --cs-shadow: 0px 2px 3px rgba(3, 7, 18, 0.02),
    1px 8px 14px rgba(3, 7, 18, 0.04),
    2px 17px 30px rgba(3, 7, 18, 0.07),
    3px 30px 54px rgba(3, 7, 18, 0.09);
}
/* Color Palette Classes for Gutenberg */
.has-lunar-color { color: #EB5B50; }
.has-lunar-background-color { background-color: #EB5B50; }

.has-adriatic-color { color: #00ABC8; }
.has-adriatic-background-color { background-color: #00ABC8; }

.has-med-color { color: #1183B8; }
.has-med-background-color { background-color: #1183B8; }

.has-dune-color { color: #FFB800; }
.has-dune-background-color { background-color: #FFB800; }

.has-apple-color { color: #6FBC6C; }
.has-apple-background-color { background-color: #6FBC6C; }

.has-blueberry-color { color: #494A93; }
.has-blueberry-background-color { background-color: #494A93; }

.has-lilac-color { color: #494A93; }
.has-lilac-background-color { background-color: #494A93; }

.has-light-color { color: #F6F6F6; }
.has-light-background-color { background-color: #F6F6F6; }

.has-white-color { color: #FFFFFF; }
.has-white-background-color { background-color: #FFFFFF; }

.has-charcoal-color { color: #343434; }
.has-charcoal-background-color { background-color: #343434; }

.has-mercury-color { color: #A6A6A6; }
.has-mercury-background-color { background-color: #A6A6A6; }

/*Globals*/

@media screen and (max-width:850px) {
    #masthead.site-header > .col-full > .row {
        flex-direction:column;
    }
    .home.page-template {
        padding: 0 10px;
    }
}

/*Notices --- to check*/
.woocommerce .notice.notice-error {
    display:inline-block;
    width:50vw;
    padding:20px 12px;
    border-radius:4px;
    background: #feecec;;
    border-left:5px solid var(--lunar);
    color:var(--lunar);
    position:relative;
}
.woocommerce .notice.notice-error::after {
    display:inline-block;
    position:relative;
    content:'!';
    font-size:25px;
    font-weight:800;
    position:absolute;
    right:20px;
    top:50%;
    padding:8px;
    border:2px solid var(--lunar);
    line-height:20px;
    border-radius:100px;
    width:20px;
    text-align:Center;
    transform:translateY(-50%);
}



/* Nav */
header#main-header {
    max-width: auto !important;
    margin: auto;
}

#masthead {
    margin-top:15px;
}
.secondary-navigation {
    display:none !important;
}

#masthead > .col-full .row:first-of-type,
.site-branding {
    display:flex !important;
    flex-wrap:nowrap;
    align-items:flex-start;
    width:100%;
    justify-content:space-between;
}
.site-branding {
    min-width:30%;
}
.csk-shelf-wrap {
    min-width:30%;
}
.csk-shelf-open.btn {
    display:flex;
    flex-direction:row-reverse;
    height:48px;
    align-items:center;
    width:160px;
    border:2px solid #f2f2f2;
    border-radius:100px;
}
.csk-shelf-open.btn svg {
    width:30px;
    height:30px;
    margin-right:10px;
}
.csk-shelf-open.btn span {
    color:#ffb800;
}
.csksearch {
    position: relative;
    z-index: 150;
    margin-left: auto;
}
.csksearch input {
    border-radius:100px;
}
body.csk-shelf-open {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow-y: scroll; /* Keeps scrollbar space reserved */
}
@media screen and (max-width:850px) {

    .csksearch {
        max-width:100% !important;
    }
    .headerLearnerName ul {
        display:flex !important;
        margin:0 !important;
        position:static !important;
    }
    .site-branding {
        display:flex !important;
        flex-direction:row;
    }
    .custom-logo-link {
        max-width:50%;
        margin:0;
        position:static;
    }

}


/*HOME*/
.FAQ-section svg {
    box-sizing:content-box;
}
@media screen and (max-width:850px) {
    .home #content {
        padding:10px;
    }

    .page-id-691153 #content {
        padding:10px;
    }

    .scroll-horizontal-on-mobile:not(.qmark) * {
        background-image:none !important;
    }

    .scroll-horizontal-on-mobile .FAQ-section {
        margin-top:0px;
        overflow-x:scroll !important;
    }
    .scroll-horizontal-on-mobile .FAQ-section .gb-accordion {
        display:flex !important;
        align-items: flex-start;
        flex-direction:row !important;
        max-width:unset !important;
        width:100%;
    }
    .scroll-horizontal-on-mobile .gb-accordion__content {
        visibility: visible !important;
        height:auto !important;
        max-height:unset;
    }
    .scroll-horizontal-on-mobile svg {
        display:none;
    }
    .scroll-horizontal-on-mobile .gb-accordion__toggle * {
        font-size:18px !important;
    }
    .scroll-horizontal-on-mobile .gb-accordion__item {
        padding:10px;
        margin-right:20px;
        min-width:75%;
    }

    .user-thoughts-section {
        background-image:none;
        margin-bottom:-80px;
        margin-left:20px;
    }
}


/*MEMBER PAGES*/
/*Woo custom titles*/
h3.custom-woo-title {
    margin-top:50px;
}

/* buttons */
/* WooCommerce Buttons - Base Styles */
.woocommerce .btn,
.woocommerce button,
.woocommerce input[type="button"],
.woocommerce form input[type="submit"],
.woocommerce input.btn {
    padding: 8px 22px !important;
    background: var(--adriatic);
    border: 2px solid var(--adriatic);
    border-radius: 4px;
    margin-right: 10px;
}

/* Hover & Focus States */
.woocommerce .btn:hover,
.woocommerce .btn:focus,
.woocommerce button:hover,
.woocommerce button:focus,
.woocommerce input[type="button"]:hover,
.woocommerce input[type="button"]:focus,
.woocommerce form input[type="submit"]:hover,
.woocommerce form input[type="submit"]:focus,
.woocommerce input.btn:hover,
.woocommerce input.btn:focus {
    border-color: var(--med);
}

/* Active State */
.woocommerce .btn:active,
.woocommerce button:active,
.woocommerce input[type="button"]:active,
.woocommerce form input[type="submit"]:active,
.woocommerce input.btn:active {
    background: var(--med);
    border-color: var(--med);
    color: #fff;
}

/* Table Cell Links & Buttons - Override to text-link style */
.woocommerce td a:after {
    display:none !important;
}

/*But NOT on first column!*/
.woocommerce table tr td:first-child a {
    text-decoration:none;
    border:none !important;
}

.woocommerce td a,
.woocommerce td a.btn,
.woocommerce td a.button {
    background: none;
    color: var(--adriatic);
    border: 2px solid transparent;
    border-radius: 100px;
}

.woocommerce td a:hover,
.woocommerce td a:active {
    background: none;
    border: 2px dashed var(--adriatic);
    color: var(--adriatic);
}


.woocommerce tr.team .team-year form {
    display:flex;
    gap:1rem;
}
/* Icon display for resource toggle buttons */
.tbx-toggle-resources[data-state="hidden"] {
    background:var(--adriatic) !important;
    color:white !important;
}
.member-change-pw-icon {
    width:20px;
    height:20px;
    color:var(--adriatic);
    margin-left:5px;
    margin-bottom:-5px;
}

.tbx-toggle-resources:before {
    font-family: "Font Awesome 5 Free", "FontAwesome";
    font-weight: 900;
    margin-right: 6px;
    display: inline-block;
}

.tbx-toggle-resources[data-icon="eye"]:before {
    content: "\f06e"; /* fa-eye */
}

.tbx-toggle-resources[data-icon="eye-slash"]:before {
    content: "\f070"; /* fa-eye-slash */
}

.pw-change-box {
    height:0;
    overflow: hidden;
    position: relative;
    background: white;
    margin: 10px 0 0 -10px;
    padding: 0;
    border-radius: 5px;
    box-shadow: var(--cs-shadow);
}
.pw-change-box.open {
    min-height:200px;
    padding:10px 15px;
}

.pw-change-box form {
    background: white;
    padding: 12px;
    margin-top: -10px;
    margin-left: -5px;
    border-radius:4px;
}

.my-team-section.add-member .card-body form {
    display:flex;
    align-items: center;
    gap:1rem;
}
/*Account area table member buttons*/
td.member-actions a,
td.member-actions span {
    background:none;
    color:var(--adriatic);
    border:2px solid transparent;
    border-radius:100px;
}

td.member-actions a:hover,
td.member-actions a:active,
td.member-actions span:hover,
td.member-actions span:active {
    background:none;
    border:2px dashed var(--adriatic);
    color:var(--adriatic);
}

/* ============================================================================
   PASSWORD GENERATION UI (v2)
   Story password generation with year-group complexity
   High specificity rules to override WooCommerce button styles
   ========================================================================= */

/* Password change box v2 - popup in table */
.woocommerce .pw-change-box-v2,
.pw-change-box-v2 {
    background: white;
    padding: 16px;
    border-radius: 8px;
    box-shadow: var(--cs-shadow);
    margin: 10px 0 0 0;
    position: relative;
    z-index: 10;
}

.pw-change-box-v2 .pw-change-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--light);
}

.pw-change-box-v2 .pw-change-header strong {
    font-size: 0.95rem;
    color: var(--charcoal);
}

/* Close button - override WooCommerce */
.woocommerce .pw-change-box-v2 button.pw-change-close,
.pw-change-box-v2 button.pw-change-close {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 1.5rem;
    line-height: 1;
    color: #999;
    cursor: pointer;
    width: auto;
    min-width: auto;
}

.pw-change-box-v2 button.pw-change-close:hover {
    color: var(--charcoal);
    background: none !important;
}

/* Mode toggle buttons - Generate/Manual */
.pw-change-box-v2 .pw-mode-toggle-v2 {
    display: flex;
    gap: 4px;
    margin-bottom: 12px;
    background: var(--light);
    padding: 4px;
    border-radius: 6px;
}

.woocommerce .pw-change-box-v2 button.pw-mode-btn-v2,
.pw-change-box-v2 button.pw-mode-btn-v2 {
    flex: 1;
    padding: 8px 12px !important;
    border: none !important;
    background: transparent !important;
    color: var(--charcoal) !important;
    border-radius: 4px !important;
    cursor: pointer;
    font-size: 0.85rem;
    font-weight: 500;
    transition: all 0.15s ease;
    margin: 0 !important;
}

.woocommerce .pw-change-box-v2 button.pw-mode-btn-v2:hover,
.pw-change-box-v2 button.pw-mode-btn-v2:hover {
    background: rgba(255,255,255,0.5) !important;
}

.woocommerce .pw-change-box-v2 button.pw-mode-btn-v2.active,
.pw-change-box-v2 button.pw-mode-btn-v2.active {
    background: var(--adriatic) !important;
    color: white !important;
}

/* Password complexity selector */
.pw-change-box-v2 .pw-complexity-row,
.pw-complexity-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.pw-complexity-row label {
    font-weight: 500;
    color: var(--charcoal);
    font-size: 0.85rem;
    min-width: auto;
}

.pw-complexity-select {
    padding: 6px 10px;
    border: 1px solid var(--mercury);
    border-radius: 4px;
    font-size: 0.85rem;
    background: white;
}

.pw-complexity-select:focus {
    border-color: var(--adriatic);
    outline: none;
}

/* Password preview box */
.pw-change-box-v2 .pw-preview-box-v2 {
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--light);
    padding: 10px 12px;
    border-radius: 6px;
    margin-bottom: 12px;
}

.pw-change-box-v2 .pw-preview-text-v2 {
    font-family: 'Courier New', monospace;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--charcoal);
    flex: 1;
}

/* Regenerate button - override WooCommerce */
.woocommerce .pw-change-box-v2 button.pw-regenerate-btn-v2,
.pw-change-box-v2 button.pw-regenerate-btn-v2 {
    background: var(--med) !important;
    color: white !important;
    border: none !important;
    padding: 6px 10px !important;
    border-radius: 4px !important;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    min-width: auto;
    width: auto;
}

.woocommerce .pw-change-box-v2 button.pw-regenerate-btn-v2:hover,
.pw-change-box-v2 button.pw-regenerate-btn-v2:hover {
    background: var(--adriatic) !important;
}

.pw-change-box-v2 button.pw-regenerate-btn-v2 svg {
    width: 16px;
    height: 16px;
}

.pw-change-box-v2 button.pw-regenerate-btn-v2.loading svg {
    animation: pw-spin 1s linear infinite;
}

/* Manual password input */
.pw-change-box-v2 .pw-manual-input-v2 {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--mercury);
    border-radius: 4px;
    font-size: 0.95rem;
    margin-bottom: 12px;
}

.pw-change-box-v2 .pw-manual-input-v2:focus {
    border-color: var(--adriatic);
    outline: none;
}

/* Save button - override WooCommerce */
.woocommerce .pw-change-box-v2 input.pw-save-btn-v2,
.pw-change-box-v2 input.pw-save-btn-v2 {
    background: var(--adriatic) !important;
    color: white !important;
    border: none !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    cursor: pointer;
    font-weight: 500;
    font-size: 0.9rem;
    margin: 0 !important;
}

.woocommerce .pw-change-box-v2 input.pw-save-btn-v2:hover,
.pw-change-box-v2 input.pw-save-btn-v2:hover {
    background: var(--med) !important;
}

/* CSV import auto-generation notice */
.csv-auto-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    background: linear-gradient(135deg, var(--light) 0%, #e8f4f8 100%);
    border: 1px solid var(--med);
    border-left: 4px solid var(--adriatic);
    border-radius: 4px;
    padding: 16px 20px;
    margin: 16px 0;
}

.csv-auto-notice svg {
    flex-shrink: 0;
    color: var(--adriatic);
}

/* Loading state for regenerate */
@keyframes pw-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Responsive adjustments */
@media (max-width: 600px) {
    .pw-complexity-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .pw-complexity-select {
        width: 100%;
    }
}

/*Notices --- to check*/

.woocommerce .notice.notice-error {
    display:inline-block;
    width:50vw;
    padding:20px 12px;
    border-radius:4px;
    background: #feecec;;
    border-left:5px solid var(--lunar);
    color:var(--lunar);
    position:relative;
}
.woocommerce .notice.notice-error::after {
    display:inline-block;
    position:relative;
    content:'!';
    font-size:25px;
    font-weight:800;
    position:absolute;
    right:20px;
    top:50%;
    padding:8px;
    border:2px solid var(--lunar);
    line-height:20px;
    border-radius:100px;
    width:20px;
    text-align:Center;
    transform:translateY(-50%);
}

/* Success notices - GREEN not red! */
.woocommerce .notice.notice-success,
.notice.notice-success.csk-success {
    display:inline-block;
    width:50vw;
    padding:20px 12px;
    border-radius:4px;
    background: #e8f5e9;
    border-left:5px solid var(--apple);
    color: #2e7d32;
    position:relative;
}

/* ============================================================================
   CLASS MANAGEMENT TABS
   ========================================================================= */
.csk-tabs-nav {
    display: flex;
    gap: 0;
    margin-bottom: 0;
    border-bottom: 2px solid var(--light);
}

.csk-tab-btn {
    padding: 12px 24px;
    border: none;
    background: var(--light);
    color: var(--charcoal);
    font-size: 1rem;
    font-weight: 500;
    cursor: pointer;
    border-radius: 8px 8px 0 0;
    margin-right: 4px;
    transition: all 0.2s ease;
    position: relative;
    top: 2px;
}

.csk-tab-btn:hover {
    background: var(--mercury);
}

.csk-tab-btn.active {
    background: white;
    color: var(--adriatic);
    border: 2px solid var(--light);
    border-bottom: 2px solid white;
}

.csk-tab-content {
    display: none;
    padding: 20px 0;
}

.csk-tab-content.active {
    display: block;
}

.woocommerce .notice.notice-success::after,
.notice.notice-success.csk-success::after {
    display:inline-block;
    content:'✓';
    font-size:20px;
    font-weight:800;
    position:absolute;
    right:20px;
    top:50%;
    padding:8px;
    border:2px solid var(--apple);
    line-height:20px;
    border-radius:100px;
    width:20px;
    text-align:center;
    transform:translateY(-50%);
    color: var(--apple);
}

/* OLD RULES FOR GRADUAL DELETION */
.linkhover:hover{
    text-decoration: underline;
}
button{
    font-family:sofia-pro,sans-serif !important;
    font-weight: normal !important;
}
.row {
    max-width: 1400px;
    margin: auto;
}
.col-md-6 {
    width: 49%;
    display: inline-block;
    vertical-align: top;
}
.col-md-4 {
    width: 32.5%;
    display: inline-block;
    vertical-align: top;
    margin-left: 0.25%;
    margin-right: 0.25%;
}
.col-md-3 {
    width: 24%;
    display: inline-block;
    vertical-align: top;
}
.col-md-8 {
    width: 100% !important;
}
.col-md-9 {
    width: 100% !important;
}
.col-md-91 {
    width: 74% !important;
    display: inline-block;
}

@media (max-width: 1024px){
    .col-md-6 {
        width: 49%;
    }
    .col-md-4 {
        width: 32%;
    }
    .col-md-3 {
        width: 24%;
    }
    .col-md-8 {
        width: 100% !important;
    }
    .col-md-91 {
        width: 73% !important;
    }
}

@media (max-width: 768px){
    .col-md-6 {
        width: 99% !important;
        margin: 1%;
    }
    .col-md-4 {
        width: 99% !important;
        padding-bottom: 10px;
    }
    .col-md-3 {
        width: 99% !important;
        margin: 1%;
    }
    .col-md-8 {
        width: 100% !important;
    }
    .col-md-91 {
        width: 99% !important;
        margin: 1%;
    }
    .page-template-template-homepage .col-md-6 {
        width: 100% !important;
        margin: 0% !important;
    }
    .cskhp-donate, .cskhp-cs{
        padding-top:276px !important;
    }
    .page-template-template-homepage .cta2{
        max-width: 100%;
    }
    .cskhp-donate, .cskhp-cs{
        background-position: top center !important;
    }
}

@media (max-width: 375px){
    .col-md-6 {
        width: 100% !important;
    }
    .col-md-4 {
        width: 100% !important;
    }
    .col-md-3 {
        width: 100% !important;
    }
    .col-md-8 {
        width: 100% !important;
    }
    .col-md-91 {
        width: 100% !important;
    }

}

@media (max-width: 500px){
    .bannerContent h1{
        font-size: 40px !important;
    }
    .bannerContent h3{
        font-size: 40px !important;
        margin-top:-80px !important;
        line-height:60px !important;
    }
    .CSsection .bannerContent h3{
        margin-top:0px !important;
    }
    #donate{
        padding-top:40px;
    }
    #content > div > div.homeSection1.sckids.section > div > div > div:nth-child(1) > div > h3{
        margin-top:0px !important;
    }
    #content > div > div.homeSection1.sckids.section > div > div > div:nth-child(1) > div{
        padding-top: 0px !important;
    }
    #content > div > div.homeSection1.sckids.section{
        padding-left:10px;
        padding-right: 10px;
    }
    .col-sm-12{
        width: 100%;
    }
}

/*--- homepage choice quality balance --*/
.homeSection2{
    background:#ff5a4c;
    text-align: center;
    padding-top: 10px;
}

.homeSection2 h2 {
    padding-bottom: 25px;
    padding-top: 25px
    !important;
}

.homeSection2 .cta h3 {
    color: #ffffff;
    padding-bottom: 1px;
}

.homeSection2 h2, .homeSection .cta h3{
    color: #ffffff;
}

.homeSection2 .row button {
    background: #ffffff;
    border-radius: 5px;
    color: #ff5a4c;
    padding: 8px 30px;
    font-size: 15px;
    margin-top: 30px;
}
.homeSection2 .row button:hover {
    background: #5d3b51;
    border-radius: 5px;
    color: #fff;
    padding: 8px 30px;
    font-size: 15px;
    margin-top: 30px;
}
/*--- homepage call to actions ---*/
.homeSection3 .row button {
    background: white;
    border: 0px solid white;
    border-radius: 0px;
    color: white;
    padding: 8px;
    font-size: 30px;
    margin-top: 30px;
}


.homeSection3 .row .purpleBox button {
    color: #c774ce;
}
.homeSection3 .row .yellowBox button {
    color: #1483c3;
}
.homeSection3 .row .blueBox button {
    color: #5bbbd0;
}

.homeSection3 p, .homeSection3 h3{
    color: white;
}

.homeSection3 h3 {
    font-size: 30px;
    line-height: 52px;
}

.homeSection3 p{
    font-size: 30px;
}

.purpleBox .cta {
    background: #ffb800;
}
/*--------- new homepage -----------*/
.section{
    padding-top: 0px;
    padding-bottom: 30px;
}
.cta {
    border-radius: 5px;
    background: white;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 30px;
    padding-top: 30px;
    text-align: center;
    min-height: 346px;
}
.cta img {
    padding-bottom: 0px;
    display: inline-block !important;
}
.cta2 {
    border-radius: 0px;
    background: #ffb800;
    padding-right: 0px;
    padding-left: 0px;
    padding-bottom: 0px;
    padding-top: 0px;
    text-align: center;
    min-height: 280px;
    max-width: 69%;
    margin: auto;
    position: relative;
}
h1.cskhph1{
    color:#fff;
    font-size:90px;
    font-weight:bold;
    margin-bottom:20px;
}
h3.cskhph3{
    color:#F76756 !important;
    font-size:80px;
    line-height:80px;
    font-weight:bold;
    margin-bottom:20px;
}
@media (max-width: 700px){
    .cta2 {
        min-height: 200px;
    }
    .bannerContent {
        padding-top: 60px !important;
    }
    .CS .bannerContent {
        padding-top: 0px !important;
    }
    h1.cskhph1{
        color:#fff;
        font-size:60px;
        font-weight:bold;
        margin-bottom:20px;
    }
    h3.cskhph3{
        color:#F76756;
        font-size:60px;
        line-height:80px;
        font-weight:bold;
        margin-bottom:20px;
    }
}
.cta2 img {
    padding-bottom: 0px;
}

.homeSection2 .cta img {
    max-width: 65%;
    border-radius: 12px;
}

/*--- homepage banner --*/
.homeSection1{
    background:#00b2ce;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: -2px;
}
.homeSection1 img{
    margin: 0px;
    width: 100%;
}
.bannerContent {
    color: white;
    padding-top: 120px;
}
.bannerContent h2,.bannerContent h3{
    color: white;
}
.bannerContent h2 {
    font-size: 86px;
    line-height: 80px;
    font-weight: bold;
    padding-bottom: 20px;
}
.bannerContent p {
    font-size: 20px;
}
.homeSection1 .bannerContent button, button.csksignup  {
    background: #f76756;
    border: 1px solid #f76756;
    border-radius: 5px;
    color: #fff;
    padding: 10px;
    font-size: 24px;
    margin: 40px 20px 0px 20px;
    padding-left: 40px;
    padding-right: 40px;
    font-weight: 600;
    width:100%;
}
.give-submit{
    border-radius: 5px !important;
    padding: 10px !important;
    margin-top: 30px !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    font-weight: 600 !important;
    font-size:16px !important;
}
#give-purchase-button{
    font-size:16px !important;
    padding: 15px 40px !important;
}
.homeSection1 .bannerContent button:hover, button.csksignup:hover {
    background: #fff;
    border: 1px solid #f76756;
    border-radius: 5px;
    color: #f76756;
    padding: 10px;
    font-size: 24px;
    padding-left: 40px;
    padding-right: 40px;
    font-weight: 600;
    width:100%;
}

.bannerContent a button.csklogin,  a button.csklogin {
    background: #fff;
    border: 1px solid #f76756;
    border-radius: 5px;
    color: #f76756;
    padding: 10px;
    font-size: 24px;
    margin: 10px 20px 20px 20px;
    padding-left: 40px;
    padding-right: 40px;
    font-weight: 600;
    width: 100%;
}
.bannerContent a button.csklogin:hover,a button.csklogin:hover {
    background: #f76756;
    border: 1px solid #f76756;
    border-radius: 5px;
    color: #fff;
    padding: 10px;
    font-size: 24px;
    padding-left: 40px;
    padding-right: 40px;
    font-weight: 600;
    width: 100%;
}
.logged-in .homeSection1 .bannerContent button, .logged-in .bannerContent a button.csklogin {
    /* display:none; */
}
.bannerContent button {
    background: #ffffff;
    border: 0px solid white;
    border-radius: 5px;
    color: #00b2ce;
    padding: 15px;
    font-size: 16px;
    margin-top: 30px;
    padding-left: 20px;
    padding-right: 20px;
    font-weight: 600;
    width:100%;
}
.robot {
    position: absolute;
    top: 12%;
    left: -27%;
}
.col-full {
    max-width: 100%;
    margin-left: 0%;
    margin-right: 0%;
    padding: 0;
    box-sizing: content-box;
}
.single-post .wp-post-image {
    display: none;
}
.bannerDesk{
    max-width: 70%;
    background: #e6f2da;
    display: inline-block;
    padding-bottom: -10px;
}
.site-header, .secondary-navigation ul ul, .main-navigation ul.menu > li.menu-item-has-children:after, .secondary-navigation ul.menu ul, .storefront-handheld-footer-bar, .storefront-handheld-footer-bar ul li > a, .storefront-handheld-footer-bar ul li.search .site-search, button.menu-toggle, button.menu-toggle:hover {
    background-color: #ffffff;
    padding: 0px !important;
}
.site-footer {
    background-color: #ffffff;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.ceop{
    padding: 0px 30px 30px 30px;
}
.KidsSlide{
    background: #0062a1;
    text-align: center;
    padding-bottom: 0px;
    margin-bottom: -6px;
}
.header-widget-region .widget {
    margin: 0;
    padding: 0;
    font-size: 0.875em;
}
.page-template-template-fullwidth-php .content-area, .page-template-template-homepage-php .content-area {
    width: 90%;
    float: left;
    margin-left: 5%;
    margin-right: 5%;
}
.storefront-breadcrumb {
    margin-top: 0px;
    margin-right: 20px;
    margin-bottom: 5px;
    margin-left: 20px;
}
#footer-area .container {
    -webkit-border-bottom-right-radius: 0px !important;
    -webkit-border-bottom-left-radius: 0px !important;
    -moz-border-radius-bottomright: 0px !important;
    -moz-border-radius-bottomleft: 0px !important;
    border-bottom-right-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

#footer-main hr {
    border: 1px solid #c6c6c6;
    border-bottom: 0px;
}

#footer-main {
    display: inline-block;
    text-align: left;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 5px;
    padding-left: 5%;
    padding-right: 5%;
}

#footer-main {
    display: inline-block;
    text-align: left;
}

#footer-main .col-md-3 {
    border-left: 1px solid #c6c6c6;
}

#footer-main h3 {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: -1px;
    color: #353535;
    padding-bottom: 20px;
}

.footerSocial img {
    padding-right: 16px;
    padding-bottom: 10px;
    width: 34px;
    display: inline-block
}

.stayInTouch {
    padding-right: 80px;
}


.links {
    min-height: 110px !important;
    padding-left: 30px;
    padding-right: 30px;
}
.ceop {
    width:270px;
    height:auto;
}
.links ul {
    list-style: none;
    padding-left: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px;
    margin-top: -26px !important;
    padding-top: 0px !important;
    margin-left: 0px;
}
.links a {
    color: #353535;
    text-decoration: none;
}
.links li {
    padding-bottom: 18px;
}

.emailTag {
    /* content: " "; */
    background-image: url(https://classroomsecrets.co.uk/wp-content/uploads/2019/10/New-Style-Website-Art-15.jpg);
    height: 20px;
    width: 20px;
    position: relative;
    display: inline-block;
    top: 4px;
    background-size: contain;
    background-size: contain;
    padding-right: 5px;
    background-repeat: no-repeat;
}

.phone {
    /* content: " "; */
    background-image: url(https://classroomsecrets.co.uk/wp-content/uploads/2019/10/New-Style-Website-Art-14.jpg);
    height: 20px;
    width: 20px;
    position: relative;
    display: inline-block;
    top: 4px;
    background-size: contain;
    background-size: contain;
    padding-right: 5px;
    background-repeat: no-repeat;
}

#footer-main #mc_embed_signup {
    display: block;
    width: 100%;
    position: relative;
}
#footer-main input#mce-EMAIL {
    width: 100%;
    padding: 6px;
}
#footer-main input#mc-embedded-subscribe {
    position: absolute;
    right: -15px;
    top: 0px;
    font-size: 14px !important;
    background: #f66756 !important;
    text-transform: uppercase;
    color: white;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 6px;
    padding-bottom: 6px;
    border: none !important;
}

#awardsFooter {
    background: #ffffff;
    /* height: 100px; */
    border-top: 2px solid #c6c6c6;
    padding-top: 20px;
    padding-bottom: 20px;
}

#awardsFooter img{
    padding-right: 25px;
    vertical-align: middle;
}

.AwardsBanner {
    max-width: 60% !important;
    display: inline;
    margin-left: 20%;
    margin-right: 20%;
}

#copywriteFooter{
    background: #454545;
    margin: auto;
    text-align: center;
}
#copywriteFooter p{
    margin: auto;
    text-align: center;
    padding-top: 5px;
    font-size: 12px;
    padding-bottom: 5px;
    display: inline-block;
    color: #efefef;
    padding-right: 20px;
    padding-left: 20px;
}
#copywriteFooter span{
    font-weight: bold;
}
.storefront-full-width-content .content-area {
    width: 90%;
    float: center;
    margin-left: 5%;
    margin-right: 5%;
}
.footerlink {
    color: #FFFFFF;
}
/* Remove shopping cart from header */
.woocommerce-active .site-header .site-header-cart {
    display: none!important;
}
.woocommerce-active .site-header .main-navigation {
    width: 100%;
    float: center;
    margin-right: 0;
    clear: both;
}
.attachment- size- wp-post-image {
    display: none;
}
.hentry .wp-post-image {
    margin-bottom: 1.618em;
    margin-left: auto;
    margin-right: auto;
    display: none;
}
body {
    font-family: sofia-pro,sans-serif;
    font-weight: 400;
    font-style: normal;
}
#feedbacklabel span {
    max-width: 150px !important;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    vertical-align: middle;
    background-color: #033e47 !important;
    border-radius: 10px
}
.zscaptcha, #FeedbackformID {
    background-color: #70c36c !important;
}
#zsfeedbackwidgetdiv .dt-blue-btn, #zsfeedbackwidgetdiv .blue-btn {
    color: #fff !important;
    background: #033e47 !important;
    border: 1px solid #033e47 !important;
}
.feedbselefield, .fbtxtnf, .feedbtxtfield, .fbfcaptchaDivimg, #advwebForm .feedtxtarea {
    border: 0px solid #fff!important;
    background-color: #fff !important;
    border-radius: 3px !important;
}
.fbfpoptitle {
    height: 62px;
    color: #fff !important;
    font-size: 20px;
    font-weight: bold;
    margin-right: 30px;
    position: relative;
    box-sizing: border-box;
    padding: 22px 0 20px 30px;
}
.FBWordVerify {
    background-color: white !important;
}
.home.blog .site-header, .home.page:not(.page-template-template-homepage) .site-header, .home.post-type-archive-product .site-header {
    margin-bottom: 0;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
    display: block;
    background: #e2e2e2;
    color: #777777;
    font-family: inherit;
    font-size: 14px;
    font-weight: normal;
    padding: 0px 10px 0px 10px;
    line-height: 35px;
    text-decoration: none;
    text-transform: none;
    vertical-align: baseline;
    border-bottom: 2px solid rgb(255, 255, 255);
    border-top: 2px solid rgb(255, 255, 255);
    border-right: 2px solid rgb(255, 255, 255);
    border-left: 2px solid rgb(255, 255, 255);
    border-radius: 8px;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item {
    border-bottom: 1px solid rgb(255, 255, 255);
    border-radius: 5px;
}
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu {
    z-index: 999;
    position: absolute;
    width: 250px;
    border: 0;
    padding: 0px 0px 0px 0px;
    background: #ffffff;
    max-width: none;
}
#mega-menu-wrap-primary #mega-menu-primary li#mega-menu-item-213.mega-menu-flyout > ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-flyout li#mega-menu-item-213 > ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    background: #e2e2e2;
}
button.menu-toggle {
    cursor: pointer;
    text-align: right;
    float: left;
    position: relative;
    border: 2px solid transparent;
    box-shadow: none;
    border-radius: 2px;
    background-image: none;
    padding: 0.6180469716em 0.875em 0.6180469716em 2.617924em;
    font-size: 0.875em;
    max-width: 161px;
    width: 100px;
}
button.menu-toggle {
    cursor: pointer;
    text-align: right;
    float: right;
    position: relative;
    border: 2px solid transparent;
    box-shadow: none;
    border-radius: 2px;
    background-image: none;
    padding: 0.6180469716em 0.875em 0.6180469716em 2.617924em;
    font-size: 0.875em;
    max-width: 161px;
    width: 100px;
}
#feedbacklabel span {
    max-width: 120px;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    vertical-align: middle;
    /* margin-top: -2px; */
    margin-left: -135px !important;
}

/* Error handling for learner registration form */
input[aria-invalid="true"], textarea[aria-invalid="true"] {
    border: 1px solid #f00;
    box-shadow: 0 0 4px 0 #f00;
}

/* Hide the Set as manager button for the my team members page */
.wc-memberships-for-teams-team-area-action .set_as_manager{
    display: none !important;
}

/* Show a login to play icon when not logged in */

.cskfeatured{
    position:relative;
}

.cskfeatured-notloggedin{
    position:absolute;
    top: 0px;
    left: 0px;
    z-index: 3;
}

.logged-in .cskfeatured-notloggedin{
    display: none;
}

.HPRobot{
    background-image: url('https://kids.classroomsecrets.co.uk/wp-content/uploads/2020/03/Robot-WebsiteHP.png');
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 10;
}

/* logged in kids header */
.headerLearnerName{
    width: max-content !important;
    display: inline-block;
    text-align: right;
    float: right;
    position: relative;
    z-index: 100;
}
.headerLearnerName ul{
    display: block;
    margin-bottom: 0px !important;
    font-size: 16px;
    margin-bottom: 10px !important;
    right: 15px;
    position: relative;
}
.headerLearnerName ul li {
    display: inline-block;
    padding: 5px;
    /* position: relative; */
    top: 5px;
    margin-top: 0px !important;
    vertical-align: middle;
    background: #00B2CE;
    border-radius: 100px;
    text-transform: uppercase;
    padding:8px 18px;
    color: #fff;
}
.headerLearnerNameLogout{
    background: #fff !important;
    border-radius: 100px 0px 100px 100px !important;
    border: solid 1px #959595;
    margin-left:20px;
    color: #959595 !important;
}
.headerLearnerNameLogout a{
    color: #959595 !important;
}
.headerLearnerNameLogout:hover{
    background: #f76756 !important;
    border: solid 1px #f76756;
    color: #fff !important;
}
.headerLearnerNameLogout a:hover{
    color: #fff !important;
}

/* logged in kids header */
.headerLearnerName{
    width: max-content !important;
    display: inline-block;
    text-align: right;
    float: right;
    position: relative;
    z-index: 100;
}
.headerLearnerName ul{
    display: block;
    margin-bottom: 0px !important;
    font-size: 16px;
    margin-bottom: 10px !important;
    right: 15px;
    position: relative;
}
.headerLearnerName ul li {
    display: inline-block;
    padding: 5px;
    /* position: relative; */
    top: 5px;
    margin-top: 0px !important;
    vertical-align: middle;
    background: #00B2CE;
    border-radius: 100px;
    text-transform: uppercase;
    padding:8px 18px;
    color: #fff;
    border: solid 1px #00B2CE;
}
.headerLearnerName ul li:hover{
    background: #f76756 !important;
    border: solid 1px #f76756;
    color: #fff !important;
}
.headerLearnerNameLogout{
    background: #fff !important;
    border-radius: 20px 0px 20px 20px !important;
    border: solid 1px #959595;
    margin-left:20px;
    color: #959595 !important;
}
.headerLearnerNameLogout a{
    color: #959595 !important;
}
.headerLearnerNameLogout:hover{
    background: #f76756 !important;
    border: solid 1px #f76756;
    color: #fff !important;
}
.headerLearnerNameLogout a:hover{
    color: #fff !important;
}

/* Learner dashboard */
.learner .entry-header{
    display: none;
}
.learner .woocommerce-MyAccount-content {
    width: 80%;
    float: unset;
    margin-right: auto;
    margin-left: auto;
}
.dashbg{
    background-color: #F0F0F0;
    border-radius: 8px;
    padding: 20px 25px;
}

.dashbg h2{
    color: #616160;
    font-weight: normal;
}
.dashyearrow{
    margin-bottom: 25px;
}
@media (max-width: 800px){
    .dashyearrow .searchcolumn{
        margin-bottom: 20px;
    }
    .dashyearrow{
        margin-bottom:0px;
    }
}
.clear { clear: both; }


.bannerContent button.donate2{
    background-color: #0062a1;
    color: #fff;
    border: 1px solid #0062a1;
}
button.donate2:hover{
    background-color: #fff;
    color: #0062a1;
    border: 1px solid #0062a1;
}
.cskdonate button, .give-submit{
    background-color: #f76756 !important;
    color: #fff !important;
    border: 1px solid #f76756 !important;
    margin-top:0px !important;
}
.give-btn:hover, .give-submit:hover{
    background-color: #fff !important;
    color: #f76756 !important;
    border: 1px solid #f76756 !important;
    margin-top:0px !important;
}
.bannerContent button.donate1{
    background-color: #f76756;
    color: #fff;
    border: 1px solid #f76756;
}
button.donate1:hover{
    background-color: #fff;
    color: #f76756;
    border: 1px solid #f76756;
}
.give_warning {
    border-color: #ffba00;
    background-color: #ffba00;
}
.give-final-total-amount{
    color:#000;
}
.give_error {
    border-color: #a00;
    background-color: #a00;
}

#mojo-sp-left h1, #mojo-sp-left h2, #mojo-sp-left h3, #mojo-sp-left h4, #mojo-sp-left h5 {
    color: #f76756;
    font-size: 40px;
    font-weight: bold;
    line-height: 50px;
    border-bottom: 0px;
    margin-bottom: 20px;
    padding-bottom: 0px;
}
#mojo-sp-left-wrap {
    height:400px;
    z-index: 4 !important;
}
#mojo-sp-left p {
    font-size:20px;
}
#mojo-sp-left-button{
    border: solid 2px #f76756;
}
.mojo-sp-button {
    width:64px;
    height:53px;
}
.mojosp-widget-area .textwidget button{
    border-radius: 5px;
    padding: 15px;
    font-size: 16px;
    margin-top: 30px;
    padding-left: 20px;
    padding-right: 20px;
    background-color: #f76756;
    color: #fff;
    border: 1px solid #f76756;
}
.mojosp-widget-area .textwidget button:hover{
    background-color: #fff;
    color: #f76756;
    border: 1px solid #f76756;
}
.page-template-page-donation .storefront-breadcrumb, .page-template-page-divi .storefront-breadcrumb, .page-template-page-half-term-2020-home-learning-timetable .storefront-breadcrumb{
    display: none !important;
}
.page-template-page-donation .required{
    border-bottom: 1px solid #ccc !important;
}
.page-template-page-donation input {
    line-height: normal !important;
}


#give-recurring-form .form-row label, form.give-form .form-row label, form[id*=give-form] .form-row label, #give-recurring-form .form-row input[type=email], #give-recurring-form .form-row input[type=password], #give-recurring-form .form-row input[type=tel], #give-recurring-form .form-row input[type=text], #give-recurring-form .form-row input[type=url], #give-recurring-form .form-row select, #give-recurring-form .form-row textarea, form.give-form .form-row input[type=email], form.give-form .form-row input[type=password], form.give-form .form-row input[type=tel], form.give-form .form-row input[type=text], form.give-form .form-row input[type=url], form.give-form .form-row select, form.give-form .form-row textarea, form[id*=give-form] .form-row input[type=email], form[id*=give-form] .form-row input[type=password], form[id*=give-form] .form-row input[type=tel], form[id*=give-form] .form-row input[type=text], form[id*=give-form] .form-row input[type=url], form[id*=give-form] .form-row select, form[id*=give-form] .form-row textarea, form[id*=give-form] #give-final-total-wrap .give-donation-total-label, form[id*=give-form] #give-final-total-wrap .give-final-total-amount{
    font-size:16px;
}



.cskhp-cs{
    background-color: #00B2CE;
    background-image: url('https://kids.classroomsecrets.co.uk/wp-content/uploads/2020/03/CS-Badge2020.png');
    background-position: top right;
    background-repeat: no-repeat;
    width: 50%;
    float: left;
    padding-left: 5%;
    padding-right: 20%;
    padding-top: 40px;
    padding-bottom: 50px;
}
.cskhp-cs h2, .cskhp-donate h2{
    color:  #fff !important;
    font-size: 50px;
    font-weight: bold;
    margin-bottom:0px!important;
}
.cskhp-cs p, .cskhp-donate p{
    color: #fff;
    font-size: 24px;
}
.cskhp-donate{
    background-color: #f7bab9;
    background-image: url('https://kids.classroomsecrets.co.uk/wp-content/uploads/2020/06/Personalised-Learning-Thumbnail2x.png');
    background-position: top right;
    background-repeat: no-repeat;
    width: 50%;
    float: left;
    padding-left: 5%;
    padding-right: 20%;
    padding-top: 40px;
    padding-bottom: 50px;
}

button.cskdonate{
    background: #f76756;
    border: 1px solid #f76756;
    border-radius: 5px;
    color: #fff;
    padding: 10px;
    font-size: 24px;
    margin: 20px 0px 20px 0px;
    padding-left: 40px;
    padding-right: 40px;
    font-weight: 600;
    width: 100%;
}
button.cskdonate:hover{
    background-color: #fff;
    color: #f76756;
    border: 1px solid #f76756;
}
button.csksub{
    background: #0062A1;
    border: 1px solid #0062A1;
    border-radius: 5px;
    color: #fff;
    padding: 10px;
    font-size: 24px;
    margin: 20px 0px 20px 0px;
    padding-left: 40px;
    padding-right: 40px;
    font-weight: 600;
    width: 100%;
}
button.csksub:hover{
    background-color: #fff;
    color: #0062A1;
    border: 1px solid #0062A1;
}

@media (max-width: 768px){
    .desktop{
        display: none !important;
    }
    .hpwelcome{
        padding:10px;
    }
    .homeSection1 .bannerContent button, button.csksignup  {
        margin: 0px 0px 0px 0px !important;
    }
    .bannerContent a button.csklogin,  a button.csklogin {
        margin: 10px 0px 20px 0px;
    }
    button.cskdonate,button.csksub{
        margin:0px;
    }
    .csksearch{
        float:left;
        width:100% !important;
        margin-top:20px;
    }
    .ceop{
        padding: 0px 30px 30px 30px;
        width: 40%;
    }
}
@media (min-width: 769px){
    .mobile{
        display: none !important;
    }
    .donatecontainer{
        display: flex !important;
    }
    .cskhp-cs{
        flex: 1 !important;
    }
    .cskhp-donate{
        flex: 1 !important;
    }
}

@media (min-width: 769px) and (max-width: 1200px){

    .cskhp-cs{
        background-size: 150px !important;
        padding-right: 16% !important;
    }
    .cskhp-donate{
        background-size: 150px !important;
    }
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
    line-height:40px;
    height: 40px;
}

.storefront-secondary-navigation.woocommerce-active .site-header .secondary-navigation{
    width: 100% !important;
    text-align:center;
    background-color: #F0F0F0;
    line-height: 26px;
    height: 26px;
    margin-bottom:0px;/*
    margin:1em -100%;  old browsers fallback
  margin:1em calc(50% - 50vw);*/
}
.secondary-navigation ul{
    margin: 0px auto;
    max-width: 1400px;
}
.secondary-navigation ul li{
    color:#909090;
    margin-right:30px;
}
.secondary-navigation ul li a:hover{
    color:#00B2CE;
}
.csksearch{
    /* Removed float and width - using absolute positioning instead */
}
@media (min-width: 769px) and (max-width: 1039px){
    .csksearch{
        /* Removed float and width - using absolute positioning instead */
    }
}





/* LESSON LAYOUT */
.page-template-page-home-learning-timetable .storefront-breadcrumb{
    display: none;
}
.timetable {
    text-align: right;
}
.timetable select{
    background: #00B2CE;
    border-radius: 20px;
    color: #fff;
    border: solid 2px #fff;
    padding-left:20px;
    padding-right:20px;
}
.timetable .select::after{
    color: #fff;
}

.timetableday{
    margin-bottom: 20px;
}

.timetableday h3{
    color:#fff;
    margin-bottom:0px;
}
.timetableday button{
    background: #00B2CE;
    border-radius: 20px;
    color: #fff;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-right:10px;
    border: solid 2px #fff;
}
.timetableday button:hover{
    background: #fff;
    border: solid 2px #fff;
    color: #00B2CE;
}
.timetableday .selected button{
    background: #fff;
    border: solid 2px #fff;
    color: #00B2CE;
}

.sessiontitle{
    background-color: #fff;
    border-radius: 10px 10px 0px 0px;
    width: 100%;
    padding: 10px 10px 10px 0px;
    margin-top:40px;
}

p.time{
    display: inline;
    margin-bottom: 0px;
    color: #00B2CE;
    margin-right:0px;
    border-right: solid 2px #00B2CE;
    padding-left:10px;
    padding-right:10px;
}
p.stitle{
    display: inline;
    margin: 0px;
    color: #00B2CE;
    padding-left:10px;
}
.sessioncontent{
    border: solid 2px #fff;
    padding:10px 10px 15px 10px;
    width:100%;
    color: #fff;
}
.sessioncontentrounded{
    border-radius: 0px 0px 10px 10px;
}
.sessioncontent p, .sessionpremiumcontent p{
    margin-bottom:10px;
}
.sessioncontent button{
    background: #ffffff;
    border-radius: 20px;
    color: #00B2CE;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-right:10px;
    border: solid 2px #fff;
}
.sessioncontent button:hover{
    background: #00B2CE;
    border: solid 2px #fff;
    color: #fff;
}
.sessionpremiumcontent{
    border-left: solid 2px #fff;
    border-right: solid 2px #fff;
    border-bottom: solid 2px #fff;
    border-radius: 0px 0px 10px 10px;
    width: 100%;
    padding: 18px 10px 15px 10px;
    color: #fff;
    margin-top: -8px;
}
.sessionpremiumcontent button{
    background: #FFBB00;
    border-radius: 20px;
    color: #FFF;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-right:10px;
    border: solid 2px #FFBB00;
}
.sessionpremiumcontent button:hover{
    background: #fff;
    border: solid 2px #FFBB00;
    color: #FFBB00;
}

.timetable input[type="submit"]{
    background: #00B2CE;
    border-radius: 20px;
    color: #fff;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-left: 10px;
    border: solid 2px #fff;
}
.timetable input[type="submit"]:hover{
    background: #fff;
    color: #00B2CE;
    border: solid 2px #fff;
    cursor: pointer;
}

/* END LESSON LAYOUT */


/* Login restyles

.page-id-9 .col-full{
    background-color: #F0F0F0;
}
.page-id-9 .u-column1 .col-1{
    border-top: 20px solid #00B2CE !important;
    border-radius: 10px !important;
    padding: 20px !important;
    background-color: #fff !important;
}
.page-id-9 .woocommerce-button .button .woocommerce-form-login__submit{
    background: #00B2CE;
    border-radius: 20px;
    color: #FFF;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-right:10px;
    border: solid 2px #00B2CE;
}
.page-id-9 .woocommerce-button .button .woocommerce-form-login__submit:hover{
    background: #fff;
    border: solid 2px #00B2CE;
    color: #00B2CE;
}
.page-id-9 .u-column2 .col-2{
    border-top: 20px solid #f66756 !important;
    border-radius: 10px !important;
    padding: 20px !important;
    background-color: #fff !important;
}
.page-id-9 .woocommerce-button .button .woocommerce-form-register__submit{
    background: #f66756;
    border-radius: 20px;
    color: #FFF;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-right:10px;
    border: solid 2px #f66756;
}
.page-id-9 .woocommerce-button .button .woocommerce-form-register__submit:hover{
    background: #fff;
    border: solid 2px #f66756;
    color: #f66756;
}
*/
/* End login restyles */

/* styling the archive card layout page */
.archive .storefront-breadcrumb, .page-template-page-free-resources .storefront-breadcrumb{
    display: none;
}
.cskarchive .storefront-breadcrumb, .page-template-page-free-resources .storefront-breadcrumb{
    display: inline;
    padding: 0px;
    margin:0px;
}
h1.cskarchive{
    color:#00B2CE;
    font-weight: bold;
    margin: 10px 0px 10px 0px;
    font-size:30px;
}
.woocommerce-breadcrumb a{
    text-decoration: none;
}
.woocommerce-breadcrumb a:hover{
    text-decoration: underline;
}
.cskrow{
    display: flex;
}
.cskrow .itemctabg{
}
.cskitemcard{
    background-color: #fff;
    border-radius:8px;
    margin-top:20px;
    padding:10px;
    /*flex:1;*/
    display: flex !important;
    flex-wrap: wrap;
}
.cskitemcard h3{
    color:#616160;
    font-size: 20px;
    line-height: 24px;
    font-weight: bold;
}
.cskitemcard p{
    color:#616160;
    margin:15px 0px 20px 0px;
}
.cskitemcard .h-readmore{
    color:#fff !important;
    background: #00B2CE;
    border: solid 2px #00B2CE;
    padding: 8px 20px;
    font-size: 15px;
    border-radius: 8px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    width:100%;
    letter-spacing: 2.1px;
}
.cskitemcard .h-readmore:hover{
    background: #fff;
    border: solid 2px #00B2CE;
    color: #00B2CE !important;
    cursor: pointer;
}
.cskitemcard .h-readmore a{
    color: unset;
}
.cskarchivenav{
    background-color: #F0F0F0;

}
.cskarchivenav .row{
    border-top:1px solid #fff;
    padding: 30px 0px 40px 0px;
}

a.next.page-numbers{
    color:#fff !important;
    background: #00B2CE;
    border: solid 2px #00B2CE;
    padding: 8px 40px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
}
a.next.page-numbers:hover, a.page-numbers:hover{
    background: #fff;
    border: solid 2px #00B2CE;
    color: #00B2CE !important;
}
a.page-numbers{
    color:#fff !important;
    background: #00B2CE;
    border: solid 2px #00B2CE;
    padding: 8px 15px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
}
span.page-numbers.current{
    color:#00B2CE !important;
    background: #fff;
    border: solid 2px #00B2CE;
    padding: 8px 15px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
}
@media (max-width: 600px){
    .cskrow {
        display: unset;
    }
}
/* end archive */


/*homepage April 2020*/
.cskhomeapr{
    display: flex;
}
.cskhomeapr .welcome{
    background-color: #fff;
    border-radius: 8px;
}
.cskhomeapr .welcome .topimage{
    background-image: url('https://kids.classroomsecrets.co.uk/wp-content/uploads/2020/03/Cropped-Robot.png');
    background-position: top left;
    background-repeat: no-repeat;
    padding:245px 0px 0px 0px;
    background-color: #0062A1;
    background-size:unset;
    border-radius: 8px 8px 0px 0px;
}
.cskhomeapr .welcome h1{
    background-color: #fff;
    margin-bottom: 0px;
    padding: 20px 20px 0px 20px;
    color: #0062A1;
    font-size:60px;
    font-weight:bold !important;
    line-height:60px;
}
.cskhomeapr .welcome p{
    background-color: #fff;
    margin-bottom:0px;
    border-radius: 0px 0px 8px 8px;
    padding:20px;
}
.cskhomeapr .welcome button{
    color:#fff !important;
    background: #0062A1;
    border: solid 2px #0062A1;
    padding: 8px 40px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    letter-spacing: 2.1px;
    margin-left:20px;
}
.cskhomeapr .welcome button:hover{
    color:#0062A1 !important;
    background: #fff;
    border: solid 2px #0062A1;
}
.cskhomeapr .welcome button.alt{
    color:#0062A1 !important;
    background: #fff;
    border: solid 2px #0062A1;
    padding: 8px 40px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    letter-spacing: 2.1px;
    margin-left:10px;
}
.cskhomeapr .welcome button.alt:hover{
    color:#fff !important;
    background: #0062A1;
    border: solid 2px #0062A1;
}

.cskhomeapr .donate{
    background-color: #fff;
    border-radius: 8px;
    margin: 0px 2%;
}
.donatelink:hover{
    text-decoration: underline;
    text-decoration-color: #FFB800;
}
.cskhomeapr .donate .topimage{
    background-image: url('https://kids.classroomsecrets.co.uk/wp-content/uploads/2020/06/Personalised-Learning-Thumbnail2x.png');
    background-position: top center;
    background-repeat: no-repeat;
    padding:245px 0px 0px 0px;
    background-size: contain;
    background-color: #FFB800;
    border-radius: 8px 8px 0px 0px;
}
.cskhomeapr .donate h2{
    background-color: #fff;
    margin-bottom: 0px;
    padding: 20px 20px 0px 20px;
    color: #FFB800;
    font-weight: bold;
}

.cskhomeapr .donate p{
    background-color: #fff;
    margin-bottom:0px;
    border-radius: 0px 0px 8px 8px;
    padding:20px;
    color: #6d6d6d;
}
.cskhomeapr .donate button.parent  {
    color: #fff !important;
    background: #FFB800;
    border: solid 2px #FFB800;
    padding: 8px 20px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    letter-spacing: 2.1px;
    margin-left: 20px;
}
.cskhomeapr .donate button.parent:hover {
    color: #FFB800 !important;
    background: #fff;
    border: solid 2px #FFB800;
}
.cskhomeapr .donate button.teacher  {
    color: #fff !important;
    background: #00B2CE;
    border: solid 2px #00B2CE;
    padding: 8px 20px;
    font-size: 15px;
    border-radius: 20px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    letter-spacing: 2.1px;
    margin-left: 10px;
    margin-bottom: 10px;
}
.cskhomeapr .donate button.teacher:hover {
    color: #00B2CE !important;
    background: #fff;
    border: solid 2px #00B2CE;
}
.cskhomeapr .csksticker{
    background-color: #fff;
    border-radius: 8px;
}
.cskstickerlink:hover{
    text-decoration: underline;
    text-decoration-color: #00B2CE;
}
.cskhomeapr .csksticker .topimage{
    background-image: url('https://kids.classroomsecrets.co.uk/wp-content/uploads/2020/04/CS-Sticker1.png');
    background-position: top center;
    background-repeat: no-repeat;
    padding:245px 0px 0px 0px;
    background-color: #00B2CE;
    border-radius: 8px 8px 0px 0px;
}
.cskhomeapr .csksticker h2{
    background-color: #fff;
    margin-bottom: 0px;
    padding: 20px 20px 0px 20px;
    color: #00B2CE;
    font-weight: bold;
}
.cskhomeapr .csksticker p{
    background-color: #fff;
    margin-bottom:0px;
    border-radius: 0px 0px 8px 8px;
    padding:20px;
    color: #6d6d6d;
}
@media (max-width: 600px){
    .cskhomeapr {
        display: unset !important;
    }
    .donate{
        margin:20px 0px !important;
    }
}
/*end homepage */


.h5p-iframe-wrapper iframe.h5p-iframe {
    /* Hack for IOS landscape / portrait */
    width: 10px;
    min-width: 100%;
    *width: 100%;
    /* End of hack */
    height: 100%;
    z-index: 10;
    overflow: hidden;
}



/* single-resource */

.student_instructions{
    background-color: #F0F0F0;
    color: #616160;
    font-size: 20px;
    padding:10px;
}

.student_instructions p{
    margin-bottom: 10px;
}
.single-resource h1{
    color: #616160;
}
.single-resource .reccommendedheader{
    background-color: #44C560;
    padding: 10px;
    color:#fff;
    margin-bottom:20px;
}
.single-resource .reccommendedheader p{
    text-align: center;
    font-size:24px;
    margin-bottom:10px;
}
.single-resource .reccommendedheader a{
    color: #fff;
    text-decoration: underline;
}
.single-resource .reccommendedheader a:hover{
    text-decoration: none;
}
.single-resource .cslink button{
    color:#fff !important;
    background: #FF5A4C;
    border: solid 2px #FF5A4C;
    padding: 8px 40px;
    font-size: 17px;
    border-radius: 8px;
    text-align: center;
    text-transform: uppercase;
    margin-top: 10px;
    width: 335px;
}
.single-resource .cslink button:hover{
    color:#FF5A4C !important;
    background: #fff;
    border: solid 2px #FF5A4C;
}
@media (max-width: 500px){
    .single-resource .bannerContent h3 {
        font-size: 40px !important;
        margin-top: 40px !important;
        line-height: 60px !important;
    }
    .single-resource .reccommendedheader p{
        font-size: 17px;
    }
}
/* end single-resource */


.assign-container{
    border: 2px solid #00B2CE;
    padding: 0px 10px 10px 10px;
    border-radius: 8px;
    margin-top:10px;
    width: 100%;
}
.assign-container p.assigntitle{
    margin:0px 0px 10px 0px !important;
    text-transform:uppercase;
    color: #00B2CE !important;
    font-size: 15px;
    letter-spacing: 2.1px;
}
.assign-container .teamname{
    background-color:#F0F0F0;
    color: #616160;
    border-radius: 4px;
    margin-right:5px;
    margin-bottom:5px;
    border: 1px solid #F0F0F0;
}


.teamname p{
    margin:0px !important;
    padding:5px !important;
}

.teacherteamname{
    margin-bottom:10px;
    border-radius:4px;
    border: 1px solid #0062A1;
    background-color:#fff;
    margin-right:10px;
    padding:5px !important;
    margin-top:0px;
}
.teacherteamname p{
    margin:0px !important;
}

.assignedstatus-assigned button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #FFBB00;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #FFBB00;
}
.assignedstatus-assigned button:hover{
    background-color: #F0F0F0;
    color: #FFBB00;
    border: 1px solid #FFBB00;
}

.assignedstatus-underway button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #00B2CE;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #00B2CE;
}
.assignedstatus-underway button:hover{
    background-color: #F0F0F0;
    color: #00B2CE;
    border: 1px solid #00B2CE;
}
.assignedstatus-unassigned button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #F76756;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #F76756;
}
.assignedstatus-unassigned button:hover, .assignedstatus-unassigned button:focus{
    background-color: #F0F0F0;
    color: #F76756;
    border: 1px solid #F76756;
    outline: none;
}
.assignedstatus-completed button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #44C560;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #44C560;
}
.assignedstatus-completed button:hover{
    background-color: #F0F0F0;
    color: #44C560;
    border: 1px solid #44C560;
}
.assignedstatus-viewteam button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #616160;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #616160;
}
.assignedstatus-viewteam button:hover{
    background-color: #F0F0F0;
    color: #616160;
    border: 1px solid #616160;
}
.assignedstatus-assigntoteam button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #FFBB00;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #FFBB00;
    margin-bottom:5px;
}
.assignedstatus-assigntoteam button:hover{
    background-color: #F0F0F0;
    color: #FFBB00;
    border: 1px solid #FFBB00;
}
.assignedstatus-assignmodal button{
    padding-top:5px;
    padding-bottom:5px;
    background-color: #F76756;
    color: #fff;
    text-align: center;
    width:100%;
    border-radius: 4px;
    border: 1px solid #F76756;
    margin-bottom:5px;
}
.assignedstatus-assignmodal button:hover{
    background-color: #F0F0F0;
    color: #FFBB00;
    border: 1px solid #F76756;
}
/* this is the popover box */
.popover_content {
    width: 200px;
    background: #fff;
    border: 1px solid #CAD5E0;
    position: absolute;
    padding: 8px 5px;
    z-index: 5;
    margin-top: 3px;
    margin-left: -14px;
    border-radius: 4px;
}

/* this CS forms the popover triangles */
.popover_content:after {
    content: '';
    display: block;
    position: absolute;
    top: -6px;
    right:100px;
    width: 10px;
    height: 10px;
    background: #FFFFFF;
    border-right:1px solid #CAD5E0;
    border-bottom:1px solid #CAD5E0;
    -moz-transform:rotate(225deg);
    -webkit-transform:rotate(225deg);
}

/* styles for the progress circles */

p.resourcetype{
    color: #C4C4C4 !important;
    text-transform: uppercase;
    font-size:12px;
    margin: 0px !important;
}

/* Progress container for category/search pages */
.progresscontainer {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    height: 24px !important;
    margin-left: auto !important;
}

/* ============================================================================
   STATUS INDICATORS - NUCLEAR OVERRIDE VERSION
   New = grey circle with dot, Try Again = amber with redo, Complete = green check

   These MUST override any legacy bullseye styles
   ========================================================================= */

/* Base reset for ALL status indicators */
[class*="result-assigned-"],
[class*="result-unassigned-"] {
    box-shadow: none !important;
    border: none !important;
}

/* ---- UNATTEMPTED (New) - Grey circle with small dot ---- */
.result-unassigned-unattempted-notpassed,
.result-assigned-unattempted-notpassed {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #F6F6F6 !important;
    border: 2px solid #A6A6A6 !important;
    box-shadow: none !important;
    position: relative !important;
    display: block !important;
}

.result-unassigned-unattempted-notpassed::before,
.result-assigned-unattempted-notpassed::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #A6A6A6 !important;
}

.result-unassigned-unattempted-notpassed::after,
.result-assigned-unattempted-notpassed::after {
    content: none !important;
}

/* ---- ATTEMPTED NOT PASSED (Try Again) - Amber with redo icon ---- */
.result-unassigned-attempted-notpassed,
.result-assigned-attempted-notpassed {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #FFB800 !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
}

.result-unassigned-attempted-notpassed::before,
.result-assigned-attempted-notpassed::before {
    content: none !important;
}

.result-unassigned-attempted-notpassed::after,
.result-assigned-attempted-notpassed::after {
    content: '\f01e' !important; /* fa-redo */
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 9px !important;
    color: #FFFFFF !important;
    position: static !important;
    transform: none !important;
    background: none !important;
    border: none !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
}

/* ---- PASSED (Complete) - Green with checkmark ---- */
.result-unassigned-attempted-passed,
.result-assigned-attempted-passed {
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    background: #6FBC6C !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
}

.result-unassigned-attempted-passed::before,
.result-assigned-attempted-passed::before {
    content: none !important;
}

.result-unassigned-attempted-passed::after,
.result-assigned-attempted-passed::after {
    content: '\f00c' !important; /* fa-check */
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 11px !important;
    color: #FFFFFF !important;
    position: static !important;
    transform: none !important;
    background: none !important;
    border: none !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
}



/* Team management area */

.cskteamscontainer{
    background-color: #F0F0F0;
    border-radius: 8px;
    padding: 20px;
}
.cskteamscontainer button.manageteamon{
    padding-top:20px;
    padding-bottom:20px;
    background-color: #FFFFFF;
    color: #0062A1;
    text-align: center;
    width:32%;
    border-radius: 4px;
    border: 1px solid #0062A1;
    margin-bottom:5px;
    font-size: 20px;
}
.cskteamscontainer button.manageteamon:hover{
    background-color: #FFF;
    color: #0062A1;
    border: 1px solid #0062A1;
    cursor: default;
}
.cskteamscontainer button.manageteam {
    padding-top:20px;
    padding-bottom:20px;
    background-color: #0062A1;
    color: #fff;
    text-align: center;
    width:32%;
    border-radius: 4px;
    border: 1px solid #0062A1;
    margin-bottom:5px;
    font-size: 20px;
}
.cskteamscontainer button.manageteam:hover{
    background-color: #FFF;
    color: #0062A1;
    border: 1px solid #0062A1;
}
.cskteamscontainer button.other {
    padding-top:5px;
    padding-bottom:5px;
    background-color: #0062A1;
    color: #fff;
    text-align: center;
    width:32%;
    border-radius: 4px;
    border: 1px solid #0062A1;
    margin-bottom:5px;
}
.cskteamscontainer button.other:hover{
    background-color: #FFF;
    color: #0062A1;
    border: 1px solid #0062A1;
}

/* End team management area */


/* Assignment area */

.cskassignmentcard{
    background-color: #fff;
    border: solid 1px #FFB800;
    border-radius:8px;
    margin-top:20px;
    padding:10px;
    /*flex:1;*/
    display: flex !important;
    flex-wrap: wrap;
    margin-right:10px;
}
.cskassignmentcard h3{
    color:#616160;
    font-size: 20px;
    line-height: 24px;
    font-weight: bold;
}
.cskassignmentcard p{
    color:#616160;
    margin:15px 0px 20px 0px;
}
.cskassignmentcard .h-readmore{
    color:#fff !important;
    background: #FFB800;
    border: solid 2px #FFB800;
    padding: 8px 20px;
    font-size: 15px;
    border-radius: 8px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    width:100%;
    letter-spacing: 2.1px;
}
.cskassignmentcard .h-readmore:hover{
    background: #fff;
    border: solid 2px #FFB800;
    color: #FFB800 !important;
    cursor: pointer;
}
.cskassignmentcard .h-readmore a{
    color: unset;
}
.cskassignmentcard a, .cskitemcard a{
    text-decoration: none !important;
}
.cskassignmentcard a:hover{
    text-decoration: underline !important;
    color: #FFB800;
}


.cskassignmentcardlocked{
    background-color: #fff;
    border: solid 1px #D1D1D1;
    border-radius:8px;
    margin-top:20px;
    padding:10px;
    /*flex:1;*/
    display: flex !important;
    flex-wrap: wrap;
    margin-right:10px;
}
.cskassignmentcardlocked h3{
    color:#D1D1D1;
    font-size: 20px;
    line-height: 24px;
    font-weight: bold;
}
.cskassignmentcardlocked p{
    color:#D1D1D1;
    margin:15px 0px 20px 0px;
}
.cskassignmentcardlocked .h-readmore{
    color:#fff !important;
    background: #D1D1D1;
    border: solid 2px #D1D1D1;
    padding: 8px 20px;
    font-size: 15px;
    border-radius: 8px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    width:100%;
    letter-spacing: 2.1px;
}

.assessment-complete{
    color: #FFB800 !important;
    background: #fff;
    border: solid 2px #FFB800;
    padding: 8px 20px;
    font-size: 15px;
    border-radius: 8px;
    text-align: center;
    text-transform: uppercase;
    align-self: flex-end;
    margin: 0px auto;
    width: 100%;
    letter-spacing: 2.1px;
}

.csk-programme-status:hover .csk-programme-unassign:before{
    content: "\f057";
}
.csk-programme-status:hover .csk-programme-assign:before{
    content: "\f058";
}
/* End assignment area */

/* */
@media only screen and (max-width: 980px){
    .mobilenoborder{
        border: 0px !important;
    }
}

.verticalTableHeader {
    text-align: center;
    vertical-align: bottom;
    width: 20px;
    margin: 0px;
    white-space: nowrap;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);

}
.page-template-page-free-resources #page > div.storefront-breadcrumb > div{
    display: none;
}



/*Programme results dashboard */
.programmeresults {
    text-align: left;
}
.programmeresults select{
    background: #fff;
    border-radius: 20px;
    color: #0062A1;
    border: solid 2px #0062A1;
    padding-left:20px;
    padding-right:20px;
    padding-top:8px;
    padding-bottom:8px;
}
.programmeresults .select::after{
    color: #0062A1;
}
.programmeresults input[type="submit"]{
    background: #0062A1;
    border-radius: 20px;
    color: #fff;
    padding: 8px 20px;
    font-size: 15px;
    margin-top: 10px;
    margin-left: 10px;
    border: solid 2px #0062A1;
}
.programmeresults input[type="submit"]:hover{
    background: #fff;
    color: #0062A1;
    border: solid 2px #0062A1;
    cursor: pointer;
}
/* End Programmes Results dashboard */

a{
    color:#0062A1;
}

/* Bootstrap buttons styles */
.btn {
    padding: 14px 24px;
    border: 0 none;
    /*font-weight: 700;*/
    /*letter-spacing: 1px;*/
    font-family:sofia-pro,sans-serif !important;
    font-weight: normal !important;
    border-radius: 4px;
    /*text-transform: uppercase;*/
}

.btn:focus, .btn:active:focus, .btn.active:focus {
    outline: 0 none;
}

.btn-primary {
    background: #0099cc;
    color: #ffffff;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary {
    background: #33a6cc!important;
    color: #ffffff;
}

.btn-primary:active, .btn-primary.active {
    background: #007299!important;
    box-shadow: none;
    color: #ffffff;
}

.btn-success {
    background: #4CAF50;
    color: #ffffff;
}

.btn-success:hover, .btn-success:focus, .btn-success:active, .btn-success.active, .open > .dropdown-toggle.btn-success {
    background: #46a049!important;
    color: #ffffff;
}

.btn-success:active, .btn-success.active {
    background: #46a049!important;
    box-shadow: none;
    color: #ffffff;
}

/* Bootsrap modal */
.modal-open {
    overflow: hidden;
}
.modal {
    display: none;
    overflow: auto;
    overflow-y: scroll;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0;
}
.modal.fade .modal-dialog {
    /*-webkit-transform: translate(0, -25%);*/
    /*-ms-transform: translate(0, -25%);*/
    /*transform: translate(0, -25%);*/
    /*-webkit-transition: -webkit-transform 0.3s ease-out;*/
    /*-moz-transition: -moz-transform 0.3s ease-out;*/
    /*-o-transition: -o-transform 0.3s ease-out;*/
    /*transition: transform 0.3s ease-out;*/
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    transform: translate(0);
}
.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}
.modal-dialog {
    position: relative;
    width: auto;
    margin: 10px;
}
.modal-content {
    position: relative;
    background-color: #ffffff;
    border: 1px solid #999999;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    background-clip: padding-box;
    outline: none;
}
.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background: rgba(0,0,0,0.5);
    /*background-color: #000000;*/
}
.modal-backdrop.fade {
    opacity: 0.5;
    filter: alpha(opacity=50);
}
.modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50);
}
.modal-header {
    padding: 15px;
    border-bottom: 1px solid #e5e5e5;
    min-height: 16.42857143px;
}
.modal-header .close {
    margin-top: -2px;
}
.modal-title {
    margin: 0;
    line-height: 1.42857143;
}
.modal-body {
    position: relative;
    padding: 20px;
    max-height: 60vh;
    overflow: auto;
}
.modal-footer {
    margin-top: 15px;
    padding: 19px 20px 20px;
    text-align: right;
    border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
    margin-left: 5px;
    margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
    margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
    margin-left: 0;
}
@media (min-width: 768px) {
    .modal-dialog {
        width: 600px;
        margin: 30px auto;
    }
    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    }
    .modal-sm {
        width: 300px;
    }
}
@media (min-width: 992px) {
    .modal-lg {
        width: 900px;
    }
}
.modal-backdrop.fade.in {
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.modal.fade{
    opacity:1;
}
.modal.fade .modal-dialog {
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    transform: translate(0);
}

/* Bootstrap 4 table styles */
.table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1rem;
}

.table th,
.table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #eceeef;
}

.table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #eceeef;
}

.table tbody + tbody {
    border-top: 2px solid #eceeef;
}

.table .table {
    background-color: #fff;
}

.table-sm th,
.table-sm td {
    padding: 0.3rem;
}

.table-bordered {
    border: 1px solid #eceeef;
}

.table-bordered th,
.table-bordered td {
    border: 1px solid #eceeef;
}

.table-bordered thead th,
.table-bordered thead td {
    border-bottom-width: 2px;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
    background-color: rgba(0, 0, 0, 0.075);
}

.table-active,
.table-active > th,
.table-active > td {
    background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
    background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
    background-color: rgba(0, 0, 0, 0.075);
}

.table-success,
.table-success > th,
.table-success > td {
    background-color: #dff0d8;
}

.table-hover .table-success:hover {
    background-color: #d0e9c6;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
    background-color: #d0e9c6;
}

.table-info,
.table-info > th,
.table-info > td {
    background-color: #d9edf7;
}

.table-hover .table-info:hover {
    background-color: #c4e3f3;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
    background-color: #c4e3f3;
}

.table-warning,
.table-warning > th,
.table-warning > td {
    background-color: #fcf8e3;
}

.table-hover .table-warning:hover {
    background-color: #faf2cc;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
    background-color: #faf2cc;
}

.table-danger,
.table-danger > th,
.table-danger > td {
    background-color: #f2dede;
}

.table-hover .table-danger:hover {
    background-color: #ebcccc;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
    background-color: #ebcccc;
}

.thead-inverse th {
    color: #fff;
    background-color: #292b2c;
}

.thead-default th {
    color: #464a4c;
    background-color: #eceeef;
}

.table-inverse {
    color: #fff;
    background-color: #292b2c;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
    border-color: #fff;
}

.table-inverse.table-bordered {
    border: 0;
}

.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}

.table-responsive.table-bordered {
    border: 0;
}

/* Popover hide fix */
.off-side {
    position:absolute !important;
    right:-5000px !important;
    opacity:0 !important;
}

.an-assign-button.button {
    padding: 5px 22px;
    border-radius:5px;
    background:#F76756;
    border:1px solid #f76756;
    color:white;
    font-weight:400;
}
.an-assign-button.button:focus, .an-assign-button.button:hover, .an-assign-button.button:active {
    background:#f0f0f0;
    color:#F76756;
}
/* ==========================================================================
   MODERN TEACHER/PARENT DASHBOARD
   ========================================================================== */

.csk-dashboard {
    position: relative;
    min-height: 80vh;
    margin: 0 -30px;
    padding-bottom: 2rem;
}

/* Decorative Blobs */
.csk-dash-blob {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    pointer-events: none;
}

.csk-dash-blob-1 {
    width: 350px;
    height: 350px;
    background: linear-gradient(135deg, rgba(26, 138, 138, 0.06) 0%, rgba(26, 138, 138, 0.01) 100%);
    top: -80px;
    right: -80px;
}

.csk-dash-blob-2 {
    width: 250px;
    height: 250px;
    background: linear-gradient(135deg, rgba(242, 108, 79, 0.05) 0%, rgba(255, 213, 79, 0.03) 100%);
    bottom: 15%;
    left: -60px;
}

/* Header Section */
.csk-dash-header {
    background: linear-gradient(135deg, var(--adriatic) 0%, #136b6b 100%);
    padding: 2.5rem 2rem 4rem;
    position: relative;
    overflow: hidden;
    border-radius: 0 0 40px 40px;
}

.csk-dash-header::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 250px;
    height: 250px;
    background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 70%);
    transform: translate(20%, -20%);
}

.csk-dash-header-content {
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
}

.csk-dash-welcome {
    flex: 1;
}

.csk-dash-greeting {
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.95rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 0.35rem 0;
}

.csk-dash-name {
    color: #fff;
    font-family: sofia-pro, sans-serif;
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    line-height: 1.2;
}

.csk-dash-subtitle {
    color: rgba(255, 255, 255, 0.85);
    font-size: 1rem;
    margin: 0;
}

.csk-dash-header-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.csk-dash-header-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.6rem 1rem;
    background: rgba(255, 255, 255, 0.12);
    border: 2px solid rgba(255, 255, 255, 0.25);
    border-radius: 10px;
    color: #fff;
    font-weight: 600;
    font-size: 0.85rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.csk-dash-header-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.4);
    color: #fff;
    transform: translateY(-2px);
}

.csk-dash-header-btn svg {
    width: 16px;
    height: 16px;
}

/* Main Content Area */
.csk-dash-main {
    max-width: 1100px;
    margin: -2rem auto 0;
    padding: 0 1.5rem;
    position: relative;
    z-index: 2;
}

/* Membership Card */
.csk-dash-membership-card {
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
    padding: 1.75rem 2rem;
    margin-bottom: 2rem;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1.5rem;
    align-items: center;
    position: relative;
    overflow: hidden;
}

.csk-dash-membership-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: var(--adriatic);
}

.csk-dash-membership-title {
    font-family: sofia-pro, sans-serif;
    font-size: 1.35rem;
    color: var(--adriatic);
    margin: 0 0 0.35rem 0;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.csk-dash-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-family: 'Nunito', -apple-system, sans-serif;
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.25rem 0.65rem;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.csk-dash-badge svg {
    width: 11px;
    height: 11px;
}

.csk-dash-badge-active {
    background: var(--adriatic);
    color: #fff;
}

.csk-dash-badge-expired {
    background: var(--lunar);
    color: #fff;
}

.csk-dash-membership-plan {
    font-size: 0.95rem;
    color: #718096;
    margin: 0 0 1rem 0;
}

.csk-dash-expiry {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 0.9rem 1.1rem;
    background: #fff8e1;
    border-radius: 12px;
    border-left: 4px solid #ffd54f;
}

.csk-dash-expiry-icon {
    width: 40px;
    height: 40px;
    background: #ffd54f;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.csk-dash-expiry-icon svg {
    width: 20px;
    height: 20px;
    color: #2d3748;
}

.csk-dash-expiry-label {
    font-size: 0.8rem;
    color: #718096;
    margin: 0 0 0.1rem 0;
}

.csk-dash-expiry-date {
    font-family: sofia-pro, sans-serif;
    font-size: 1.15rem;
    font-weight: 700;
    color: #2d3748;
    margin: 0;
}

.csk-dash-expiry-countdown {
    font-size: 0.8rem;
    color: var(--lunar);
    font-weight: 600;
    margin: 0.15rem 0 0 0;
}

.csk-dash-membership-actions {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    align-self: flex-end;
    margin-bottom: 0.5rem;
}

.csk-dash-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding: 0.9rem 1.75rem;
    background-color: #EB5B50;
    background-image: linear-gradient(135deg, #EB5B50 0%, #e05a3d 100%);
    color: #fff !important;
    font-family: sofia-pro, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(242, 108, 79, 0.3);
}

.csk-dash-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(242, 108, 79, 0.4);
    color: #fff;
}

.csk-dash-btn-primary svg {
    width: 18px;
    height: 18px;
}

/* Navigation Cards Grid */
.csk-dash-nav-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.25rem;
    margin-bottom: 2rem;
}

.csk-dash-nav-card {
    background: #fff;
    border-radius: 18px;
    padding: 1.75rem;
    box-shadow: 0 4px 20px rgba(26, 138, 138, 0.06);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    cursor: pointer;
    text-decoration: none;
    color: inherit;
    position: relative;
    overflow: hidden;
}

.csk-dash-nav-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--adriatic);
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.csk-dash-nav-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 40px rgba(26, 138, 138, 0.12);
    color: inherit;
}

.csk-dash-nav-card:hover::after {
    transform: scaleX(1);
}

.csk-dash-nav-icon {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}

.csk-dash-nav-icon svg {
    width: 28px;
    height: 28px;
}

.csk-dash-nav-class .csk-dash-nav-icon {
    background: linear-gradient(135deg, var(--adriatic) 0%, #136b6b 100%);
    color: #fff;
}

.csk-dash-nav-account .csk-dash-nav-icon {
    background: linear-gradient(135deg, var(--lunar) 0%, #e05a3d 100%);
    color: #fff;
}

.csk-dash-nav-orders .csk-dash-nav-icon {
    background: linear-gradient(135deg, #ffd54f 0%, #ffca28 100%);
    color: #2d3748;
}

.csk-dash-nav-resources .csk-dash-nav-icon {
    background: linear-gradient(135deg, var(--adriatic) 0%, #136b6b 100%);
    color: #fff;
}

.csk-dash-nav-card h3 {
    font-family: sofia-pro, sans-serif;
    font-size: 1.2rem;
    color: #2d3748;
    margin: 0 0 0.35rem 0;
}

.csk-dash-nav-card p {
    color: #718096;
    font-size: 0.9rem;
    line-height: 1.45;
    margin: 0;
}

.csk-dash-nav-arrow {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #e8eaf6;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.csk-dash-nav-arrow svg {
    width: 14px;
    height: 14px;
    color: #718096;
    transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1), transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.csk-dash-nav-card:hover .csk-dash-nav-arrow {
    background: var(--adriatic);
}

.csk-dash-nav-card:hover .csk-dash-nav-arrow svg {
    color: #fff;
    transform: translateX(3px);
}

/* Stats Row */
.csk-dash-stats-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.csk-dash-stat-card {
    background: #fff;
    border-radius: 16px;
    padding: 1.25rem;
    box-shadow: 0 4px 20px rgba(26, 138, 138, 0.06);
    display: flex;
    align-items: center;
    gap: 0.9rem;
}

.csk-dash-stat-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.csk-dash-stat-icon svg {
    width: 22px;
    height: 22px;
}

.csk-dash-stat-teal {
    background: #e3f2fd;
    color: var(--adriatic);
}

.csk-dash-stat-coral {
    background: #ffede8;
    color: var(--lunar);
}

.csk-dash-stat-content h4 {
    font-family: sofia-pro, sans-serif;
    font-size: 1.6rem;
    font-weight: 800;
    color: #2d3748;
    line-height: 1;
    margin: 0 0 0.2rem 0;
}

.csk-dash-stat-content p {
    font-size: 0.8rem;
    color: #718096;
    margin: 0;
}

/* Help Section */
.csk-dash-help {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 20px rgba(26, 138, 138, 0.06);
    padding: 1.25rem 1.5rem;
}

.csk-dash-help-content {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.csk-dash-help-icon {
    width: 50px;
    height: 50px;
    background: #e3f2fd;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.csk-dash-help-icon svg {
    width: 24px;
    height: 24px;
    color: var(--adriatic);
}

.csk-dash-help-text {
    flex: 1;
}

.csk-dash-help-text h3 {
    font-family: sofia-pro, sans-serif;
    font-size: 1rem;
    color: #2d3748;
    margin: 0 0 0.2rem 0;
}

.csk-dash-help-text p {
    font-size: 0.85rem;
    color: #718096;
    margin: 0;
}

.csk-dash-help-link {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1.1rem;
    background: var(--adriatic);
    color: #fff;
    font-weight: 600;
    font-size: 0.85rem;
    border-radius: 10px;
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.csk-dash-help-link:hover {
    background: #136b6b;
    color: #fff;
    transform: translateX(3px);
}

.csk-dash-help-link svg {
    width: 14px;
    height: 14px;
}

/* Responsive Design */
@media (max-width: 768px) {
    .csk-dashboard {
        margin: -15px -15px;
    }

    .csk-dash-header {
        padding: 1.75rem 1.25rem 3.5rem;
        border-radius: 0 0 30px 30px;
    }

    .csk-dash-header-content {
        flex-direction: column;
        gap: 1rem;
    }

    .csk-dash-header-actions {
        justify-content: flex-start;
    }

    .csk-dash-main {
        padding: 0 1rem;
    }

    .csk-dash-membership-card {
        grid-template-columns: 1fr;
        padding: 1.5rem;
    }

    .csk-dash-membership-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .csk-dash-nav-grid {
        grid-template-columns: 1fr;
    }

    .csk-dash-stats-row {
        grid-template-columns: 1fr;
    }

    .csk-dash-help-content {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }
}

/* Animation on load */
@keyframes cskDashSlideUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.csk-dash-membership-card {
    animation: cskDashSlideUp 0.5s ease-out 0.1s both;
}

.csk-dash-nav-card:nth-child(1) { animation: cskDashSlideUp 0.5s ease-out 0.15s both; }
.csk-dash-nav-card:nth-child(2) { animation: cskDashSlideUp 0.5s ease-out 0.2s both; }
.csk-dash-nav-card:nth-child(3) { animation: cskDashSlideUp 0.5s ease-out 0.25s both; }
.csk-dash-nav-card:nth-child(4) { animation: cskDashSlideUp 0.5s ease-out 0.3s both; }

.csk-dash-stats-row {
    animation: cskDashSlideUp 0.5s ease-out 0.35s both;
}

.csk-dash-help {
    animation: cskDashSlideUp 0.5s ease-out 0.4s both;
}

/* Hide page title and force full width on dashboard */
.csk-dashboard-fullwidth .entry-header,
.csk-dashboard-fullwidth .woocommerce-MyAccount-navigation {
    display: none !important;
}

.csk-dashboard-fullwidth .woocommerce-MyAccount-content {
    width: 100%;
    float: none;
}

/* ============================================================================
   CLASSROOM SECRETS SISTER SITE BANNER
   Modern, clean CTA banner for promoting classroomsecrets.co.uk
   ========================================================================= */

.csk-sister-banner {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 50%, #f1f3f5 100%);
    padding: 4rem 2rem;
    position: relative;
    overflow: hidden;
}

.csk-sister-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--lunar) 0%, var(--adriatic) 100%);
}

.csk-sister-banner-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
}

.csk-sister-banner-content {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.csk-sister-banner-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--mercury);
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.csk-sister-banner-eyebrow svg {
    width: 16px;
    height: 16px;
    color: var(--lunar);
}

.csk-sister-banner-logo {
    max-width: 200px;
    height: auto;
}

.csk-sister-banner-heading {
    font-family: sofia-pro, sans-serif;
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 700;
    color: var(--charcoal);
    line-height: 1.2;
    margin: 0;
}

.csk-sister-banner-heading span {
    color: var(--lunar);
}

.csk-sister-banner-text {
    font-size: 1.1rem;
    color: #5a6270;
    line-height: 1.6;
    margin: 0;
    max-width: 480px;
}

.csk-sister-banner-cta {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: var(--lunar);
    color: white;
    font-family: sofia-pro, sans-serif;
    font-size: 1rem;
    font-weight: 600;
    padding: 0.9rem 1.75rem;
    border-radius: 50px;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 14px rgba(235, 91, 80, 0.25);
    width: fit-content;
}

.csk-sister-banner-cta:hover {
    background: #d94a3f;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(235, 91, 80, 0.35);
}

.csk-sister-banner-cta svg {
    width: 18px;
    height: 18px;
    transition: transform 0.3s ease;
}

.csk-sister-banner-cta:hover svg {
    transform: translateX(4px);
}

.csk-sister-banner-image {
    display: flex;
    justify-content: center;
    align-items: center;
}

.csk-sister-banner-image img {
    max-width: 100%;
    height: auto;
    max-height: 380px;
    object-fit: contain;
    filter: drop-shadow(0 10px 30px rgba(0, 0, 0, 0.1));
}

/* Responsive adjustments */
@media (max-width: 900px) {
    .csk-sister-banner {
        padding: 3rem 1.5rem;
    }

    .csk-sister-banner-inner {
        grid-template-columns: 1fr;
        gap: 2rem;
        text-align: center;
    }

    .csk-sister-banner-content {
        align-items: center;
    }

    .csk-sister-banner-text {
        max-width: 100%;
    }

    .csk-sister-banner-image {
        order: -1;
    }

    .csk-sister-banner-image img {
        max-height: 280px;
    }
}

@media (max-width: 480px) {
    .csk-sister-banner {
        padding: 2.5rem 1rem;
    }

    .csk-sister-banner-cta {
        width: 100%;
        justify-content: center;
    }
}

/* ============================================================================
   ADMIN INSTRUCTION PREVIEW BOXES
   Soft, pastel boxes for admin preview of different instruction types
   ========================================================================= */

.csk-admin-preview {
    background: linear-gradient(135deg, #f8fafc 0%, #eef2f7 100%);
    border: 1px solid #e2e8f0;
    border-left: 4px solid var(--adriatic);
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.csk-admin-preview--teacher {
    border-left-color: var(--adriatic);
}

.csk-admin-preview--parent {
    border-left-color: var(--adriatic);
}

.csk-admin-preview--learner {
    border-left-color: #d788c2;
}

.csk-admin-preview-label {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--mercury);
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px dashed #e2e8f0;
}

.csk-admin-preview-label svg {
    width: 14px;
    height: 14px;
}

.csk-admin-preview--teacher .csk-admin-preview-label {
    color: var(--adriatic);
}

.csk-admin-preview--parent .csk-admin-preview-label {
    color: var(--adriatic);
}

.csk-admin-preview--learner .csk-admin-preview-label {
    color: #d788c2;
}

.csk-admin-preview p {
    color: var(--charcoal);
    line-height: 1.7;
    margin-bottom: 1rem;
}

.csk-admin-preview p:last-child {
    margin-bottom: 0;
}

.csk-admin-preview h2,
.csk-admin-preview h3,
.csk-admin-preview h4 {
    color: var(--charcoal);
    margin-top: 1.25rem;
    margin-bottom: 0.75rem;
}

.csk-admin-preview a {
    color: var(--adriatic);
    text-decoration: underline;
}

.csk-admin-preview a:hover {
    color: var(--med);
}
