:root {
    --scc-white: #fff;
    --scc-black: #000;
    --scc-green: #083;
    --scc-yellow: #eb0;
    --scc-dark-green: #040;
    --scc-light-green: #9b1;
    --scc-dark-navy: #012;
    --scc-dark-blue: #145;
    --scc-blue: #069;
    --scc-cyan: #09f;
    --scc-light-blue: #8df;
    --scc-dark-yellow: #a80;
    --scc-magenta: #d05;
    --scc-orange: #e51;
    --scc-red: #c00;
    --scc-dark-red: #900        ;
    --scc-dark-grey: #666;
    --scc-mid-grey: #ddd;
    --scc-light-grey: #eee;
    --scc-light-grey-50: #eeeeee99;
    --scc-cream: #e9e9e0;
    --scc-news-paper: #e9e9e0;
    --scc-news-light: #ddc;
    --scc-news-mid: #887;
    --scc-news-print: #443;
    --scc-highlighter: rgba(255,255,0,.5);
}

html {
}

body {
    background-color: var( --scc-light-grey);
    background-image: url('img/wave_0.5_fff.png');
    background-repeat: repeat;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    font-family: 'Fira Sans', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400;
    line-height: 1.5rem;
    color: var(--scc-dark-blue);
}

p,
li,
h1,
h2,
h3,
h4,
h5,
h6 {
}

p {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
}

h1 {
    padding: 0.25rem 0;
    font-size: 2.5rem;
    line-height: 3.75rem;
}

h2 {
    padding: 0.2rem 0;
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 1.25rem;
}

h3 {
    padding: 0.15rem 0;
    font-size: 1.5rem;
    line-height: 2.75rem;
    margin-bottom: 1rem;
}

h4 {
    padding: 0.125rem 0;
    font-size: 1.25rem;
    line-height: 1.875rem;
}

h5 {
    padding: 0.1rem 0;
    font-size: 1rem;
    line-height: 1.5rem;
}

h6 {
    padding: 0 0 1rem;
    font-size: .75rem;
    line-height: 1.125rem;
    color: var(--scc-blue);
}

a {
    color: var(--scc-blue);
}

a:hover {
    color: var(--scc-green);
}

a.active {
    background-color: var(--scc-light-blue);
    color: var(--scc-dark-blue);
}

.cc_page-feature-2 figure,
#cc_schools figure {
    sticky: 0.625rem;
}

.magenta-underline {
    display: inline-block;
    border-bottom: 3px double var(--scc-magenta);
}

.highlighter {
    display: inline-block;
    background-color: var(--scc-highlighter);
}

.wp-block-button a {
    border-radius: 0;
    border: 1px dashed var(--scc-cyan);
    background-color: #ffffff00;
    color: var(--scc-cyan);
    font-weight: 400;
    padding: 4px;
}

.wp-block-button a:hover {
    border: 1px dashed var(--scc-green);
    background-color: #ffffff00;
    color: var(--scc-green);
    font-weight: 400;
}

.wp-block-buttons {
    margin: 0.5rem 0;
}

/* MAGENTA RULE
====================================================================== */
#marginx-wrap {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.cc_container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    max-width: 12800px !important;
}

/* SITE HEADER
====================================================================== */
header#cc_site-header {
    position: relative;
    background-color: #c9cccf;
    padding: 0;
    margin: 0;
}

header#cc_site-header h1 {
    color: var(--scc-green);
    font-size: 2rem;
    font-weight: 600;
    background-repeat: no-repeat;
    padding: 0.5rem 0 2rem 5rem;
    margin: 0;
}

header#cc_site-header h1 span {
    font-weight: 400;
}

/* HOME HERO */
section#cc_home-hero {
    position: relative;
}

#cc_home-hero-fore {
    position: absolute;
    width: 100%;
    z-index: 99;
    top: 0;
    bottom: 0;
}

@media only screen and (max-width: 768px) {
    #cc_home-hero-fore {
        position: relative;
    }
}

#cc_home-logo {
    position: relative;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    padding: 0;
    z-index: 77;
}

#cc_home-loop {
    width: 100%;
    height: auto;
    z-index: 66;
}

/* NAVIGATION
====================================================================== */
/* NAV primary */
.navbar-brand,
.navbar-brand:visited,
.navbar-brand.active {
    font-family: 'Fira Sans', sans-serif;
    color: var(--scc-green);
}

.navbar-brand:hover {
    font-family: 'Fira Sans', sans-serif;
    color: var(--scc-yellow);
}

.navbar-brand.active {
    font-family: 'Fira Sans', sans-serif;
    color: var(--scc-yellow);
}

#cc_navbar-primary {
    background-color: var(--scc-news-paper);
    margin: 0 0 2.5rem;
    padding: 0;
    z-index: 888;
}

#cc_navbar-primary li {
    margin-right: 1.5rem;
}

#cc_navbar-primary li a:hover {
    color: var(--scc-green);
}

li.cc_menu_school {
    background-image: url('img/SCC_school-stripe.svg');
    background-repeat: no-repeat;
    padding-left: 2.5rem;
}

li.cc_menu_school-senior {
    background-image: url('img/SCC_ss-stripe.svg');
    background-repeat: no-repeat;
    padding-left: 2.5rem;
}

li.cc_menu_school-junior {
    background-image: url('img/SCC_js-stripe.svg');
    background-repeat: no-repeat;
    padding-left: 2.5rem;
}

/* NAV scrollspy */
#cc_scrollspy-nav,
#cc_resources-nav {
    top: 80px;
}

#cc_scrollspy-nav li a {
    border: 1px dashed var(--scc-cyan);
    margin-bottom: 1rem;
}

#cc_scrollspy-nav li a:hover {
    border: 1px dashed var(--scc-green);
    color: var(--scc-green);
}

#cc_scrollspy-nav li a.active {
    border: 1px dashed var(--scc-dark-blue);
    background-color: var(--scc-cyan);
    color: var(--scc-white);
}

#cc_scrollspy-content {
}

.cc_scrollspy-section {
    scroll-margin-top: 50px;
    position: relative;
    top: -250px;
}

/* NAV resources */
#cc_resources-nav {
    top: 80px;
}

#cc_resources-nav ul li {
    margin-bottom: .5rem;
}

li a.cc_nav-yellow {
    background-color: var(--scc-yellow);
}

li a.cc_nav-yellow:hover {
    background-color: var(--scc-dark-yellow);
    color: var(--scc-white);
}

li a.cc_nav-blue {
    background-color: var(--scc-light-blue);
}

li a.cc_nav-blue:hover {
    background-color: var(--scc-blue);
    color: var(--scc-white);
}

li a.cc_nav-red {
    background-color: var(--scc-magenta);
    color: var(--scc-white);
}

li a.cc_nav-red:hover {
    background-color: var(--scc-dark-red);
    color: var(--scc-white);
}

li a.cc_nav-green {
    background-color: var(--scc-green);
    color: var(--scc-white);
}

li a.cc_nav-green:hover {
    background-color: var(--scc-dark-green);
    color: var(--scc-white);
}

/* =========== CALENDAR =========== */
.cc_calendar {
}

.cc_calendar ul * {
    list-style: none;
}

.cc_calendar ul li.calendar-date,
.cc_calendar ul li p {
    display: inline-block;
}

.cc_calendar ul li.calendar-date * {
    font-weight: 600;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
}

.cc_calendar-D,
.cc_calendar-j,
.cc_calendar-M,
.cc_calendar-Y,
.cc_calendar-T {
    display: inline-block;
    margin-right: 0 rem;
    margin-left: 0 rem;
}

.cc_calendar-D {
    color: #fff;
    background-color: var(--scc-red);
}

.cc_calendar-j {
    color: var(--scc-black );
    background-color: var(--scc-light-grey);
    font-size: 1.5rem;
    padding-bottom: 0.25rem;
    margin-bottom: .5rem;
}

.cc_calendar-M {
    color: #fff;
    background-color: var(--scc-black);
}

.cc_calendar-Y {
    color: var(--RAL-pearl-gold);
    background-color: var(--RAL-signal-white);
    font-weight: 300;
}

.cc_calendar-T {
    margin: 0 0.5rem;
    padding: 0 0.5rem;
    color: var(--scc-light-green);
    background-color: var(--scc-black);
}

.cc_calendar ul li {
    display: inline-block;
    margin-right: 0 rem;
    margin-left: 0 rem;
}

.cc_calendar ul li p {
    margin-top: 0.25rem;
    border-bottom: 1px dashed var(--RAL-copper-brown);
    margin-bottom: 1rem;
}

.cc_calendar ul li p.calendar-details-holiday {
    background-color: var(--scc-highlighter);
    padding: 0 0.5rem;
}

.cc_calendar ul li p.calendar-details-meeting {
    background-color: var(--scc-light-blue);
    padding: 0 0.5rem;
}

.cc_calendar ul li p.calendar-details-exam {
    border-bottom: 3px double var(--scc-magenta);
    padding: 0;
}

.calendar-return {
    font-style: italic;
    color: var(--scc-dark-grey);
}


/* FOOTER 
====================================================================== */
footer {
    background-color: var(--scc-black);
    padding: 1rem 0;
    color: var(--scc-light-blue);
}

footer li {
    list-style-type: none;
}

footer li a {
    text-decoration: none;
    color: var(--scc-light-blue);
}

/* FOOTER 
====================================================================== */
.cc_thumb-image {
}

/* SECTIONS
====================================================================== */
.cc_page-sections {
    position: relative;
}

.cc_page-sections section {
    top: 120px;
    margin: 80px 0 2rem;
    padding: 0.5rem 0.5rem 0 1rem;
    border-top: 1px dashed var(--scc-cyan);
    border-left: 1px dashed var(--scc-cyan);
}

.cc_page-sections h3 {
    color: var(--scc-blue);
}

/* HOME SIDEBARS
====================================================================== */
#cc_home-sidebar-01 {
    background-color: var(--scc-green);
}

#cc_home-sidebar-02 {
    background-color: var(--scc-dark-blue);
}

#cc_home-sidebar-03 {
    background-color: var(--scc-dark-yellow);
}

/* PROFILES
====================================================================== */
.cc_profile {
    background-color: var(--scc-light-grey-50);
    padding-top: 1rem;
    margin: 1rem 0 0 0;
    border-top: 1px dashed var(--scc-cyan);
}

.cc_profile h4 {
    display: inline-block;
    border-bottom: 3px double var(--scc-magenta);
    font-weight: 400;
}

ul.cc_subject-list {
    list-style-type: none;
    padding-left: 0;
}

ul.cc_subject-list li {
    color: var(--scc-dark-grey) ;
    display: inline-block;
    margin: 0.5rem -1px 0 0;
    padding: 0.3rem 0.5rem;
    border: 1px dashed var(--scc-cyan);
}

.cc_page-sections section .cc_news-paper header {
    padding: .5rem 0;
    margin-bottom: 1rem;
    border-bottom: 3px var(--scc-news-print) double;
    background-image: url(img/SCC_news-et-cetera_#083.png);
}

/* news
====================================================================== */
.cc_news-paper {
    background-color: var(--scc-news-paper);
    padding: 1rem;
    border-top: 2px dashed white;
    border-bottom: 2px dashed white;
    margin-bottom: 1rem;
}

.cc_news-paper header {
    padding: 1rem 0;
    margin-bottom: 2rem;
    border-bottom: 3px var(--scc-news-print) double;
    background-image: url(img/SCC_news-et-cetera_#083.png);
}

.cc_profile  .cc_news-paper header {
    padding: .25 0;
    margin-bottom: 2rem;
    border-bottom: 3px var(--scc-news-print) double;
    background-image: url(img/SCC_news-et-cetera_#083.png);
}

.cc_news-paper * {
    color: var(--scc-news-print);
}

.cc_news-paper H1 {
    font-weight: 900;
    font-size: 4rem;
}

.cc_news-title {
    display: block;
    padding: 0 0 16% 0;
    background: url(img/news-et-cetera_443.svg);
    background-size: auto;
    background-repeat: no-repeat;
}

.cc_news-excerpt {
    overflow: hidden;
}

.cc_news-article {
    position: relative;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px var(--scc-news-print) dashed;
}

.cc_news-intro {
    position: relative;
}

.cc_news-more {
    color: var(--s_ss--cyan);
    text-decoration: none;
    display: block;
    width: 100%;
}

a.cc_news-btn {
    position: absolute;
    border-radius: 0;
    padding: 0.2rem;
    background-color: var(--scc-news-light);
    color: var(--scc-news-mid);
    bottom: .5rem;
    right: 0;
}

a.cc_news-btn:hover {
    float: right;
    background-color: var(--scc-news-mid);
    color: var(--scc-cream);
}

.cc_news-categories ul {
    list-style-type: none;
    padding: 0;
    text-align: right;
}

.cc_news-categories ul li {
    list-style-type: none;
    padding: 0;
    display: inline-block;
    font-size: .75rem;
    margin: .5rem;
}

#cc_home-ditty {
    padding: 0 0 .5rem 0;
    margin-top: -1.5rem;
    margin-bottom: 1rem;
    border-bottom: 3px var(--scc-news-print) double;
}

/* Subject table
====================================================================== */
#CC_subject-table * {
    color: #09f ;
}

table {
    margin-top: 1rem;
}

th,
td {
    color: var(--scc-blue);
    border-top-color: var(--scc-light-blue) !important;
    border-right-color: var(--scc-light-blue) !important;
    border-bottom-color: var(--scc-light-blue) !important;
    border-left-color: var(--scc-light-blue) !important;
    border-right-style: dotted !important;
    border-left-style: dotted !important;
}

td {
    border-color: var(--scc-blue) !important;
}

.cc_ss-curriculum-jc-t,
.cc_ss-curriculum-sc-t {
    height: 2.2 rem;
    text-align: right;
    color: #09f !important;
}

td.cc_ss-curriculum-sc {
    background-color: var(--scc-green) !important;
}

td.cc_ss-curriculum-jc {
    background-color: var(--scc-yellow) !important;
}

th.cc_rotate-90 {
    position: relative;
    height: 10rem;
    width: 2.25rem !important;
    white-space: nowrap;
    border: 1px dashed  #09f !important;
}

th.cc_rotate-90:first-child {
    border-top: none !important;
    border-left: none !important;
}

th.cc_rotate-90 > div {
    position: absolute;
    transform: translate(-4.6rem, -5.4rem) rotate(270deg);
}

th.cc_rotate-90 > div > span {
    padding: 5px 10px;
    width: 10rem;
    display: inline-block;
    font-weight: 400;
    color: #09f;
}

table.cc_subject-table thead {
    border-bottom: 1px solid #09f !important;
}

table.cc_subject-table tbody {
    border-top: 1px solid #09f !important;
}

table.cc_subject-table tbody tr td {
    border-right: 1px solid #09f !important;
    border-bottom: 1px solid #09f !important;
}

/* Soliloquy
====================================================================== */
.soliloquy-container .soliloquy-caption-inside {
    background: #eb0 !important;
    font-family: "Fira Sans", sans-serif !important;
    font-weight: 400 !important;
    display: inline-block !important;
    color: #145 !important;
    text-shadow: none !important;
    text-align: center !important;
    padding: 4px !important;
    margin: 0 1rem 1rem !important;
    position: relative !important;
}

.soliloquy-container .soliloquy-pager {
    text-align: right !important;
    position: absolute !important;
    bottom: 1rem !important;
    right: 1rem !important;
}

.soliloquy-container .soliloquy-pager .soliloquy-pager-item * {
    color: rgba(0, 0, 0, 0) !important;
}

.soliloquy-container .soliloquy-pager-link {
    background-image: url("https://stconleths.ie/cms/wp-content/themes/reverie-child/img/square-14px-12px-eebb00.png")  !important;
    background-colour: #f00 !important;
}

.soliloquy-container .soliloquy-pager-link.active,
.soliloquy-container .soliloquy-pager-link:hover {
    background-image: url("https://stconleths.ie/cms/wp-content/themes/reverie-child/img/square-14px-eebb00.png")  !important;
}

/* FIXED BUTTONS
====================================================================== */
#cc_fixed-buttons {
    height: 3rem;
    position: fixed;
    bottom: 0;
    left: 10%;
    right: auto;
    z-index: 9999;
}

#cc_fixed-buttons p {
    color: #fff;
}

#cc_modal-button-contact,
#cc_modal-button-parent {
    height: 3rem;
    display: inline-block;
    margin: 0 0.5rem;
    padding: 0.5rem 1rem 0.5rem 1rem;
    border-radius: 0 !important;
}

#cc_modal-button-contact {
    background-color: var(--scc-green);
}

#cc_modal-button-parent {
    background-color: var(--scc-cyan);
}

#cc_modal-button-contact:hover {
    background-color: var(--scc-dark-green);
}

#cc_modal-button-parent:hover {
    background-color: var(--scc-blue);
}

.modal-content {
    z-index: 99;
    border-radius: 0 !important;
}

#cc-modal-parent-links {
}

#cc-modal-parent-links a {
    background-color: var(--scc-cyan);
    color: #fff;
    display: block;
    text-align: center;
    margin: 2rem;
    padding-bottom: 1rem;
    padding-top: 6rem;
    text-decoration: none;
}

#cc-modal-parent-links a:hover {
    background-color: var(--scc-blue);
}

#cc_link-compass,
#cc_link-payzone,
#cc_link-debitrak {
    background-position-x: center;
    background-position-y: 30%;
    background-repeat: no-repeat;
    background-size: 3rem;
}

#cc_link-compass {
    background-image: url(img/logo-compass.svg);
}

#cc_link-payzone {
    background-image: url(img/logo-payzone.svg);
}

#cc_link-debitrak {
    background-image: url(img/logo-debitrak.svg);
}

wp-block-file {
    background-color: #900;
}

#menu-news-menu * {
    list-style: none;
}

#menu-news-menu {
    padding-left: 0;
}

#menu-news-menu a {
    display: block;
    text-decoration: none;
    padding: .25rem;
}

#sub-menu a::before {
    content: "—";
    color: var(--scc-news-mid);
}

#menu-news-menu>li {
    margin: rem 0;
    border-top: 1px dashed var(--scc-news-print);
    padding: 0.5rem 0;
}

#menu-news-menu>li #sub-menu li {
    margin: 0rem;
    padding: 4px;
}

.btn {
    border-radius: 0 !important;
    border: none !important;
}

.btn-primary {
    background-color: var(--scc-cyan) !important;
}