@charset "UTF-8";
/* https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/style.css?v=2.3&ver=7.0.4 */
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/normalize.css */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

 html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
  }
  
  /* Sections
     ========================================================================== */
  
  /**
   * Remove the margin in all browsers.
   */
  
  body {
    margin: 0;
  }
  
  /**
   * Render the `main` element consistently in IE.
   */
  
  main {
    display: block;
  }
  
  /**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
  
  h1 {
    font-size: 2em;
    margin: 0.67em 0;
  }
  
  /* Grouping content
     ========================================================================== */
  
  /**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
  
  hr {
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
  }
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  
  pre {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
  }
  
  /* Text-level semantics
     ========================================================================== */
  
  /**
   * Remove the gray background on active links in IE 10.
   */
  
  a {
    background-color: transparent;
  }
  
  /**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
  
  abbr[title] {
    border-bottom: none; /* 1 */
    text-decoration: underline; /* 2 */
    text-decoration: underline dotted; /* 2 */
  }
  
  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
  
  b,
  strong {
    font-weight: bolder;
  }
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  
  code,
  kbd,
  samp {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
  }
  
  /**
   * Add the correct font size in all browsers.
   */
  
  small {
    font-size: 80%;
  }
  
  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
  
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  
  sub {
    bottom: -0.25em;
  }
  
  sup {
    top: -0.5em;
  }
  
  /* Embedded content
     ========================================================================== */
  
  /**
   * Remove the border on images inside links in IE 10.
   */
  
  img {
    border-style: none;
  }
  
  /* Forms
     ========================================================================== */
  
  /**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
  
  button,
  input,
  optgroup,
  select,
  textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 1 */
    line-height: 1.15; /* 1 */
    margin: 0; /* 2 */
  }
  
  /**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
  
  button,
  input { /* 1 */
    overflow: visible;
  }
  
  /**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
  
  button,
  select { /* 1 */
    text-transform: none;
  }
  
  /**
   * Correct the inability to style clickable types in iOS and Safari.
   */
  
  button,
  [type="button"],
  [type="reset"],
  [type="submit"] {
    -webkit-appearance: button;
  }
  
  /**
   * Remove the inner border and padding in Firefox.
   */
  
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
  }
  
  /**
   * Restore the focus styles unset by the previous rule.
   */
  
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
  }
  
  /**
   * Correct the padding in Firefox.
   */
  
  fieldset {
    padding: 0.35em 0.75em 0.625em;
  }
  
  /**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
  
  legend {
    box-sizing: border-box; /* 1 */
    color: inherit; /* 2 */
    display: table; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    white-space: normal; /* 1 */
  }
  
  /**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
  
  progress {
    vertical-align: baseline;
  }
  
  /**
   * Remove the default vertical scrollbar in IE 10+.
   */
  
  textarea {
    overflow: auto;
  }
  
  /**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
  
  [type="checkbox"],
  [type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
  }
  
  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
  
  [type="number"]::-webkit-inner-spin-button,
  [type="number"]::-webkit-outer-spin-button {
    height: auto;
  }
  
  /**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
  
  [type="search"] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
  }
  
  /**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
  
  [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  
  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
  
  ::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
  }
  
  /* Interactive
     ========================================================================== */
  
  /*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
  
  details {
    display: block;
  }
  
  /*
   * Add the correct display in all browsers.
   */
  
  summary {
    display: list-item;
  }
  
  /* Misc
     ========================================================================== */
  
  /**
   * Add the correct display in IE 10+.
   */
  
  template {
    display: none;
  }
  
  /**
   * Add the correct display in IE 10.
   */
  
  [hidden] {
    display: none;
  }
/* Import rule from: https://fonts.googleapis.com/css2?family=Work+Sans:wght@400;700&display=swap */
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXNis.woff) format('woff')}@font-face{font-family:'Work Sans';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/worksans/v24/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K67QNis.woff) format('woff')}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/xylem.css?v=2.1 */
/*
 *  Xylem - Responsive CSS Grid framework
 *  @author - @joshwayman
 *  @version - 1.1
 */

:root {
    --xy-grid-cols : 12; /* Default to a 12 column grid, changing this will mess stuff up */

    /* For sections */
    --xy-padding-block : 1.5rem;
    --xy-padding-inline : 3rem;

    /* Gutter is the horizontal gap along the side of the page, it's used to create a nice whitespace */
    --xy-gutter : var(--xy-padding-inline);
    --xy-col-gap : calc( var(--xy-padding-inline) / 4 );
    --xy-row-gap : var(--xy-padding-block);

    /* Max widths */
    --xy-max-width : 100%;
}

* { box-sizing: border-box; }

html, body { padding: 0; margin: 0; border: 0; }
html {
    scroll-behavior: smooth;
}


/* Sections break content up, it is the outermost element */
section {
    display: block;
    margin: 0 auto;
    /*padding: var(--xy-padding-block) 0;*/
}


/*
 * Structure and Grid
 */
/* A container's job is to contain things - so gutter and max width and positining */
.xy-container {
    max-width: var(--xy-max-width);
    width: 100%;
    margin: 0 auto;
    padding: 0 var(--xy-gutter);
    display: block;
}

/* If two containers are stacked give them some breathing room */
.xy-container + .xy-container {
    margin-top: var(--xy-padding-block);
}

/* A rows job is to be a wrapper for the row of items, it puts stuff on a grid */
.xy-grid {
    width: 100%;

    --rows : 1;
    row-gap: var(--xy-row-gap);
    column-gap: var(--xy-col-gap);
    grid-template-columns: repeat(var(--xy-grid-cols, 12), 1fr);
    grid-template-rows: repeat(var(--rows, 1), 1fr);
    display: grid;
    grid-auto-flow: row;
    justify-items: stretch;
    align-items: stretch;
    justify-content: stretch;
    align-content: stretch;
}
.xy-grid.has-gutter, .xy-flex.has-gutter, .has-gutter {
    padding-inline: var(--xy-gutter);
}

.xy-grid[data-xy-items*="align-stretch"] {  align-items: stretch; }
.xy-grid[data-xy-items*="align-baseline"] {  align-items: baseline; }
.xy-grid[data-xy-items*="align-start"] {  align-items: start; }
.xy-grid[data-xy-items*="align-end"] {  align-items: end; }
.xy-grid[data-xy-items*="align-center"] {  align-items: center; }

.xy-grid[data-xy-items*="justify-stretch"] {  justify-items: stretch; }
.xy-grid[data-xy-items*="justify-baseline"] {  justify-items: baseline; }
.xy-grid[data-xy-items*="justify-start"] {  justify-items: start; }
.xy-grid[data-xy-items*="justify-end"] {  justify-items: end; }
.xy-grid[data-xy-items*="justify-center"] {  justify-items: center; }

.xy-flex[data-xy-items*="align-stretch"] {  align-items: stretch; }
.xy-flex[data-xy-items*="align-baseline"] {  align-items: baseline; }
.xy-flex[data-xy-items*="align-start"] {  align-items: flex-start; }
.xy-flex[data-xy-items*="align-end"] {  align-items: flex-end; }
.xy-flex[data-xy-items*="align-center"] {  align-items: center; }

.xy-flex[data-xy-items*="justify-stretch"] {  justify-items: stretch; }
.xy-flex[data-xy-items*="justify-baseline"] {  justify-items: baseline; }
.xy-flex[data-xy-items*="justify-start"] {  justify-items: flex-start; }
.xy-flex[data-xy-items*="justify-end"] {  justify-items: flex-end; }
.xy-flex[data-xy-items*="justify-space-around"] {  justify-items: space-around; }
.xy-flex[data-xy-items*="justify-space-between"] {  justify-items: space-between; }
.xy-flex[data-xy-items*="justify-space-evenly"] {  justify-items: space-evenly; }

.xy-flex[data-xy-flex*="nowrap"] { flex-wrap: nowrap; }
.xy-flex[data-xy-flex*="wrap"] { flex-wrap: wrap; }
.xy-flex[data-xy-flex*="column"] { flex-direction: column; }
.xy-flex[data-xy-flex*="column-reverse"] { flex-direction: column-reverse; }
.xy-flex[data-xy-flex*="row"] { flex-direction: row; }
.xy-flex[data-xy-flex*="row-reverse"] { flex-direction: row-reverse; }


.xy-flex[data-xy-flex*="center"] { justify-content: center; }
.xy-flex[data-xy-flex*="flex-start"] { justify-content: flex-start; }
.xy-flex[data-xy-flex*="flex-end"] { justify-content: flex-end; }
.xy-flex[data-xy-flex*="space-between"] { justify-content: space-between; }
.xy-flex[data-xy-flex*="space-around"] { justify-content: space-around; }
.xy-flex[data-xy-flex*="space-evenly"] { justify-content: space-evenly; }


.xy-col[data-xy-items*="align-stretch"] {  align-self: stretch; }
.xy-col[data-xy-items*="align-baseline"] {  align-self: baseline; }
.xy-col[data-xy-items*="align-start"] {  align-self: start; }
.xy-col[data-xy-items*="align-end"] {  align-self: end; }
.xy-col[data-xy-items*="align-center"] {  align-self: center; }

.xy-col[data-xy-items*="justify-stretch"] {  justify-self: stretch; }
.xy-col[data-xy-items*="justify-baseline"] {  justify-self: baseline; }
.xy-col[data-xy-items*="justify-start"] {  justify-self: start; }
.xy-col[data-xy-items*="justify-end"] {  justify-self: end; }
.xy-col[data-xy-items*="justify-center"] {  justify-self: center; }


/* Make sure rows are not smushed */
/*
.xy-grid + .xy-grid {
    margin-top: var(--xy-row-gap);
}
*/

/** 
    Art of the xy-col and positioning 
    A xy-col will set the template which you can then apply attributes to for extra positioning. 
    Avoids class soup which I kind of hate
*/
.xy-col {
    --col : 1; 
    --row : auto;
    --start: auto; 
}

.xy-grid .xy-col {
    grid-column: var(--start) / span var(--col); 
    grid-row: var(--row) / span var(--row-span, 1); 
}


/**
 * EXPERIMENTAL - FLEX!
 */
 .xy-flex {
    display: flex;
    width: 100%;

    row-gap: var(--xy-row-gap);
    column-gap: var(--xy-col-gap);

 }
 
.xy-flex .xy-col {
    --width : calc(  (var(--col, 6) / var(--xy-grid-cols, 12)) * 100%  ); /* Calculate the width of the col as a percentage of the total */

    flex-basis: var(--width);
    width: var(--width);
}

.xy-col[data-xy-col="1"] { --col : 1; }
.xy-col[data-xy-col="2"] { --col : 2; }
.xy-col[data-xy-col="3"] { --col : 3; }
.xy-col[data-xy-col="4"] { --col : 4; }
.xy-col[data-xy-col="5"] { --col : 5; }
.xy-col[data-xy-col="6"] { --col : 6; }
.xy-col[data-xy-col="7"] { --col : 7; }
.xy-col[data-xy-col="8"] { --col : 8; }
.xy-col[data-xy-col="9"] { --col : 9; }
.xy-col[data-xy-col="10"] { --col : 10; }
.xy-col[data-xy-col="11"] { --col : 11; }
.xy-col[data-xy-col="12"] { --col : 12; }
.xy-col[data-xy-col="auto"] { --col : auto; }


.xy-col[data-xy-start=""] { --start : auto; }
.xy-col[data-xy-start="auto"] { --start : auto; }
.xy-col[data-xy-start="1"] { --start : 1; }
.xy-col[data-xy-start="2"] { --start : 2; }
.xy-col[data-xy-start="3"] { --start : 3; }
.xy-col[data-xy-start="4"] { --start : 4; }
.xy-col[data-xy-start="5"] { --start : 5; }
.xy-col[data-xy-start="6"] { --start : 6; }
.xy-col[data-xy-start="7"] { --start : 7; }
.xy-col[data-xy-start="8"] { --start : 8; }
.xy-col[data-xy-start="9"] { --start : 9; }
.xy-col[data-xy-start="10"] { --start : 10; }
.xy-col[data-xy-start="11"] { --start : 11; }
.xy-col[data-xy-start="12"] { --start : 12; }


.xy-col[data-xy-row=""] { --row : auto; }
.xy-col[data-xy-row="auto"] { --row : auto; }
.xy-col[data-xy-row="1"] { --row : 1; }
.xy-col[data-xy-row="2"] { --row : 2; }
.xy-col[data-xy-row="3"] { --row : 3; }
.xy-col[data-xy-row="4"] { --row : 4; }
.xy-col[data-xy-row="5"] { --row : 5; }
.xy-col[data-xy-row="6"] { --row : 6; }
.xy-col[data-xy-row="7"] { --row : 7; }
.xy-col[data-xy-row="8"] { --row : 8; }
.xy-col[data-xy-row="9"] { --row : 9; }
.xy-col[data-xy-row="10"] { --row : 10; }
.xy-col[data-xy-row="11"] { --row : 11; }
.xy-col[data-xy-row="12"] { --row : 12; }

.xy-col[data-xy-row-span=""] { --row-span : auto; }
.xy-col[data-xy-row-span="auto"] { --row-span : auto; }
.xy-col[data-xy-row-span="1"] { --row-span : 1; }
.xy-col[data-xy-row-span="2"] { --row-span : 2; }
.xy-col[data-xy-row-span="3"] { --row-span : 3; }
.xy-col[data-xy-row-span="4"] { --row-span : 4; }
.xy-col[data-xy-row-span="5"] { --row-span : 5; }
.xy-col[data-xy-row-span="6"] { --row-span : 6; }
.xy-col[data-xy-row-span="7"] { --row-span : 7; }
.xy-col[data-xy-row-span="8"] { --row-span : 8; }
.xy-col[data-xy-row-span="9"] { --row-span : 9; }
.xy-col[data-xy-row-span="10"] { --row-span : 10; }
.xy-col[data-xy-row-span="11"] { --row-span : 11; }
.xy-col[data-xy-row-span="12"] { --row-span : 12; }

/* Responsive mode */
.xy-col[data-xy-col*="xl-1"] { --col : 1; }
.xy-col[data-xy-col*="xl-2"] { --col : 2; }
.xy-col[data-xy-col*="xl-3"] { --col : 3; }
.xy-col[data-xy-col*="xl-4"] { --col : 4; }
.xy-col[data-xy-col*="xl-5"] { --col : 5; }
.xy-col[data-xy-col*="xl-6"] { --col : 6; }
.xy-col[data-xy-col*="xl-7"] { --col : 7; }
.xy-col[data-xy-col*="xl-8"] { --col : 8; }
.xy-col[data-xy-col*="xl-9"] { --col : 9; }
.xy-col[data-xy-col*="xl-10"] { --col : 10; }
.xy-col[data-xy-col*="xl-11"] { --col : 11; }
.xy-col[data-xy-col*="xl-12"] { --col : 12; }
.xy-col[data-xy-col*="xl-auto"] { --col : auto; }

.xy-col[data-xy-start*="xl-auto"] { --start : auto; }
.xy-col[data-xy-start*="xl-1"] { --start : 1; }
.xy-col[data-xy-start*="xl-2"] { --start : 2; }
.xy-col[data-xy-start*="xl-3"] { --start : 3; }
.xy-col[data-xy-start*="xl-4"] { --start : 4; }
.xy-col[data-xy-start*="xl-5"] { --start : 5; }
.xy-col[data-xy-start*="xl-6"] { --start : 6; }
.xy-col[data-xy-start*="xl-7"] { --start : 7; }
.xy-col[data-xy-start*="xl-8"] { --start : 8; }
.xy-col[data-xy-start*="xl-9"] { --start : 9; }
.xy-col[data-xy-start*="xl-10"] { --start : 10; }
.xy-col[data-xy-start*="xl-11"] { --start : 11; }
.xy-col[data-xy-start*="xl-12"] { --start : 12; }

.xy-col[data-xy-row*="xl-"] { --row : auto; }
.xy-col[data-xy-row*="xl-auto"] { --row : auto; }
.xy-col[data-xy-row*="xl-1"] { --row : 1; }
.xy-col[data-xy-row*="xl-2"] { --row : 2; }
.xy-col[data-xy-row*="xl-3"] { --row : 3; }
.xy-col[data-xy-row*="xl-4"] { --row : 4; }
.xy-col[data-xy-row*="xl-5"] { --row : 5; }
.xy-col[data-xy-row*="xl-6"] { --row : 6; }
.xy-col[data-xy-row*="xl-7"] { --row : 7; }
.xy-col[data-xy-row*="xl-8"] { --row : 8; }
.xy-col[data-xy-row*="xl-9"] { --row : 9; }
.xy-col[data-xy-row*="xl-10"] { --row : 10; }
.xy-col[data-xy-row*="xl-11"] { --row : 11; }
.xy-col[data-xy-row*="xl-12"] { --row : 12; }

.xy-col[data-xy-row-span*="xl-"] { --row-span : auto; }
.xy-col[data-xy-row-span*="xl-auto"] { --row-span : auto; }
.xy-col[data-xy-row-span*="xl-1"] { --row-span : 1; }
.xy-col[data-xy-row-span*="xl-2"] { --row-span : 2; }
.xy-col[data-xy-row-span*="xl-3"] { --row-span : 3; }
.xy-col[data-xy-row-span*="xl-4"] { --row-span : 4; }
.xy-col[data-xy-row-span*="xl-5"] { --row-span : 5; }
.xy-col[data-xy-row-span*="xl-6"] { --row-span : 6; }
.xy-col[data-xy-row-span*="xl-7"] { --row-span : 7; }
.xy-col[data-xy-row-span*="xl-8"] { --row-span : 8; }
.xy-col[data-xy-row-span*="xl-9"] { --row-span : 9; }
.xy-col[data-xy-row-span*="xl-10"] { --row-span : 10; }
.xy-col[data-xy-row-span*="xl-11"] { --row-span : 11; }
.xy-col[data-xy-row-span*="xl-12"] { --row-span : 12; }


.xy-indicator {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 9999;
    background-color: hotpink;
    color: white;
    padding: 0.5rem;
    border-radius: 0.25rem;
}

.xy-indicator span:not(.xl) {display: none;}

.xy-labels .block { position: relative; }
.xy-labels .block::before {
    content: attr(data-block-style);
    position: absolute;
    top: 0;
    left: 1rem;
    padding: 0.25rem 0.5rem;
    background-color: aquamarine;
    color: black;
    border-radius: 7px;
}

/* 
 * Responsiveness 
 */
 
/* start of desktop styles */
@media screen and (max-width: 1120px) {
    .xy-indicator span:not(.lg) {display: none;}
    .xy-indicator span.lg {display: block;}
    .xy-indicator { background-color: orangered; }

    /* start of large tablet styles */
    .xy-col[data-xy-col*="lg-auto"] { --col : auto; }
    .xy-col[data-xy-col*="lg-1"] { --col : 1; }
    .xy-col[data-xy-col*="lg-2"] { --col : 2; }
    .xy-col[data-xy-col*="lg-3"] { --col : 3; }
    .xy-col[data-xy-col*="lg-4"] { --col : 4; }
    .xy-col[data-xy-col*="lg-5"] { --col : 5; }
    .xy-col[data-xy-col*="lg-6"] { --col : 6; }
    .xy-col[data-xy-col*="lg-7"] { --col : 7; }
    .xy-col[data-xy-col*="lg-8"] { --col : 8; }
    .xy-col[data-xy-col*="lg-9"] { --col : 9; }
    .xy-col[data-xy-col*="lg-10"] { --col : 10; }
    .xy-col[data-xy-col*="lg-11"] { --col : 11; }
    .xy-col[data-xy-col*="lg-12"] { --col : 12; }


    .xy-col[data-xy-start*="lg-auto"] { --start : auto; }
    .xy-col[data-xy-start*="lg-1"] { --start : 1; }
    .xy-col[data-xy-start*="lg-2"] { --start : 2; }
    .xy-col[data-xy-start*="lg-3"] { --start : 3; }
    .xy-col[data-xy-start*="lg-4"] { --start : 4; }
    .xy-col[data-xy-start*="lg-5"] { --start : 5; }
    .xy-col[data-xy-start*="lg-6"] { --start : 6; }
    .xy-col[data-xy-start*="lg-7"] { --start : 7; }
    .xy-col[data-xy-start*="lg-8"] { --start : 8; }
    .xy-col[data-xy-start*="lg-9"] { --start : 9; }
    .xy-col[data-xy-start*="lg-10"] { --start : 10; }
    .xy-col[data-xy-start*="lg-11"] { --start : 11; }
    .xy-col[data-xy-start*="lg-12"] { --start : 12; }


    .xy-col[data-xy-row*="lg-auto"] { --row : auto; }
    .xy-col[data-xy-row*="lg-1"] { --row : 1; }
    .xy-col[data-xy-row*="lg-2"] { --row : 2; }
    .xy-col[data-xy-row*="lg-3"] { --row : 3; }
    .xy-col[data-xy-row*="lg-4"] { --row : 4; }
    .xy-col[data-xy-row*="lg-5"] { --row : 5; }
    .xy-col[data-xy-row*="lg-6"] { --row : 6; }
    .xy-col[data-xy-row*="lg-7"] { --row : 7; }
    .xy-col[data-xy-row*="lg-8"] { --row : 8; }
    .xy-col[data-xy-row*="lg-9"] { --row : 9; }
    .xy-col[data-xy-row*="lg-10"] { --row : 10; }
    .xy-col[data-xy-row*="lg-11"] { --row : 11; }
    .xy-col[data-xy-row*="lg-12"] { --row : 12; }

    .xy-col[data-xy-row-span*="lg-auto"] { --row-span : auto; }
    .xy-col[data-xy-row-span*="lg-1"] { --row-span : 1; }
    .xy-col[data-xy-row-span*="lg-2"] { --row-span : 2; }
    .xy-col[data-xy-row-span*="lg-3"] { --row-span : 3; }
    .xy-col[data-xy-row-span*="lg-4"] { --row-span : 4; }
    .xy-col[data-xy-row-span*="lg-5"] { --row-span : 5; }
    .xy-col[data-xy-row-span*="lg-6"] { --row-span : 6; }
    .xy-col[data-xy-row-span*="lg-7"] { --row-span : 7; }
    .xy-col[data-xy-row-span*="lg-8"] { --row-span : 8; }
    .xy-col[data-xy-row-span*="lg-9"] { --row-span : 9; }
    .xy-col[data-xy-row-span*="lg-10"] { --row-span : 10; }
    .xy-col[data-xy-row-span*="lg-11"] { --row-span : 11; }
    .xy-col[data-xy-row-span*="lg-12"] { --row-span : 12; }
}
    
@media screen and (max-width: 860px) {
    .xy-indicator span:not(.md) {display: none;}
    .xy-indicator span.md {display: block;}
    .xy-indicator { background-color: orchid; }

    /* start of medium tablet styles */
    .xy-col[data-xy-col*="md-auto"] { --col : auto; }
    .xy-col[data-xy-col*="md-1"] { --col : 1; }
    .xy-col[data-xy-col*="md-2"] { --col : 2; }
    .xy-col[data-xy-col*="md-3"] { --col : 3; }
    .xy-col[data-xy-col*="md-4"] { --col : 4; }
    .xy-col[data-xy-col*="md-5"] { --col : 5; }
    .xy-col[data-xy-col*="md-6"] { --col : 6; }
    .xy-col[data-xy-col*="md-7"] { --col : 7; }
    .xy-col[data-xy-col*="md-8"] { --col : 8; }
    .xy-col[data-xy-col*="md-9"] { --col : 9; }
    .xy-col[data-xy-col*="md-10"] { --col : 10; }
    .xy-col[data-xy-col*="md-11"] { --col : 11; }
    .xy-col[data-xy-col*="md-12"] { --col : 12; }


    .xy-col[data-xy-start*="md-auto"] { --start : auto; }
    .xy-col[data-xy-start*="md-1"] { --start : 1; }
    .xy-col[data-xy-start*="md-2"] { --start : 2; }
    .xy-col[data-xy-start*="md-3"] { --start : 3; }
    .xy-col[data-xy-start*="md-4"] { --start : 4; }
    .xy-col[data-xy-start*="md-5"] { --start : 5; }
    .xy-col[data-xy-start*="md-6"] { --start : 6; }
    .xy-col[data-xy-start*="md-7"] { --start : 7; }
    .xy-col[data-xy-start*="md-8"] { --start : 8; }
    .xy-col[data-xy-start*="md-9"] { --start : 9; }
    .xy-col[data-xy-start*="md-10"] { --start : 10; }
    .xy-col[data-xy-start*="md-11"] { --start : 11; }
    .xy-col[data-xy-start*="md-12"] { --start : 12; }


    .xy-col[data-xy-row*="md-auto"] { --row : auto; }
    .xy-col[data-xy-row*="md-1"] { --row : 1; }
    .xy-col[data-xy-row*="md-2"] { --row : 2; }
    .xy-col[data-xy-row*="md-3"] { --row : 3; }
    .xy-col[data-xy-row*="md-4"] { --row : 4; }
    .xy-col[data-xy-row*="md-5"] { --row : 5; }
    .xy-col[data-xy-row*="md-6"] { --row : 6; }
    .xy-col[data-xy-row*="md-7"] { --row : 7; }
    .xy-col[data-xy-row*="md-8"] { --row : 8; }
    .xy-col[data-xy-row*="md-9"] { --row : 9; }
    .xy-col[data-xy-row*="md-10"] { --row : 10; }
    .xy-col[data-xy-row*="md-11"] { --row : 11; }
    .xy-col[data-xy-row*="md-12"] { --row : 12; }

    .xy-col[data-xy-row-span*="md-auto"] { --row-span : auto; }
    .xy-col[data-xy-row-span*="md-1"] { --row-span : 1; }
    .xy-col[data-xy-row-span*="md-2"] { --row-span : 2; }
    .xy-col[data-xy-row-span*="md-3"] { --row-span : 3; }
    .xy-col[data-xy-row-span*="md-4"] { --row-span : 4; }
    .xy-col[data-xy-row-span*="md-5"] { --row-span : 5; }
    .xy-col[data-xy-row-span*="md-6"] { --row-span : 6; }
    .xy-col[data-xy-row-span*="md-7"] { --row-span : 7; }
    .xy-col[data-xy-row-span*="md-8"] { --row-span : 8; }
    .xy-col[data-xy-row-span*="md-9"] { --row-span : 9; }
    .xy-col[data-xy-row-span*="md-10"] { --row-span : 10; }
    .xy-col[data-xy-row-span*="md-11"] { --row-span : 11; }
    .xy-col[data-xy-row-span*="md-12"] { --row-span : 12; }
}

@media screen and (max-width: 479px) {
    .xy-indicator span:not(.sm) {display: none;}
    .xy-indicator span.sm {display: block;}
    .xy-indicator { background-color: lawngreen; }

    /* start of phone styles */
    /*:root { --xy-grid-cols : 12; }*/
    
    .xy-col[data-xy-col*="sm-auto"] { --col : auto; }
    .xy-col[data-xy-col*="sm-1"] { --col : 1; }
    .xy-col[data-xy-col*="sm-2"] { --col : 2; }
    .xy-col[data-xy-col*="sm-3"] { --col : 3; }
    .xy-col[data-xy-col*="sm-4"] { --col : 4; }
    .xy-col[data-xy-col*="sm-5"] { --col : 5; }
    .xy-col[data-xy-col*="sm-6"] { --col : 6; }
    .xy-col[data-xy-col*="sm-7"] { --col : 7; }
    .xy-col[data-xy-col*="sm-8"] { --col : 8; }
    .xy-col[data-xy-col*="sm-9"] { --col : 9; }
    .xy-col[data-xy-col*="sm-10"] { --col : 10; }
    .xy-col[data-xy-col*="sm-11"] { --col : 11; }
    .xy-col[data-xy-col*="sm-12"] { --col : 12; }


    .xy-col[data-xy-start*="sm-auto"] { --start : auto; }
    .xy-col[data-xy-start*="sm-1"] { --start : 1; }
    .xy-col[data-xy-start*="sm-2"] { --start : 2; }
    .xy-col[data-xy-start*="sm-3"] { --start : 3; }
    .xy-col[data-xy-start*="sm-4"] { --start : 4; }
    .xy-col[data-xy-start*="sm-5"] { --start : 5; }
    .xy-col[data-xy-start*="sm-6"] { --start : 6; }
    .xy-col[data-xy-start*="sm-7"] { --start : 7; }
    .xy-col[data-xy-start*="sm-8"] { --start : 8; }
    .xy-col[data-xy-start*="sm-9"] { --start : 9; }
    .xy-col[data-xy-start*="sm-10"] { --start : 10; }
    .xy-col[data-xy-start*="sm-11"] { --start : 11; }
    .xy-col[data-xy-start*="sm-12"] { --start : 12; }


    .xy-col[data-xy-row*="sm-auto"] { --row : auto; }
    .xy-col[data-xy-row*="sm-1"] { --row : 1; }
    .xy-col[data-xy-row*="sm-2"] { --row : 2; }
    .xy-col[data-xy-row*="sm-3"] { --row : 3; }
    .xy-col[data-xy-row*="sm-4"] { --row : 4; }
    .xy-col[data-xy-row*="sm-5"] { --row : 5; }
    .xy-col[data-xy-row*="sm-6"] { --row : 6; }
    .xy-col[data-xy-row*="sm-7"] { --row : 7; }
    .xy-col[data-xy-row*="sm-8"] { --row : 8; }
    .xy-col[data-xy-row*="sm-9"] { --row : 9; }
    .xy-col[data-xy-row*="sm-10"] { --row : 10; }
    .xy-col[data-xy-row*="sm-11"] { --row : 11; }
    .xy-col[data-xy-row*="sm-12"] { --row : 12; }

    .xy-col[data-xy-row-span*="sm-auto"] { --row-span : auto; }
    .xy-col[data-xy-row-span*="sm-1"] { --row-span : 1; }
    .xy-col[data-xy-row-span*="sm-2"] { --row-span : 2; }
    .xy-col[data-xy-row-span*="sm-3"] { --row-span : 3; }
    .xy-col[data-xy-row-span*="sm-4"] { --row-span : 4; }
    .xy-col[data-xy-row-span*="sm-5"] { --row-span : 5; }
    .xy-col[data-xy-row-span*="sm-6"] { --row-span : 6; }
    .xy-col[data-xy-row-span*="sm-7"] { --row-span : 7; }
    .xy-col[data-xy-row-span*="sm-8"] { --row-span : 8; }
    .xy-col[data-xy-row-span*="sm-9"] { --row-span : 9; }
    .xy-col[data-xy-row-span*="sm-10"] { --row-span : 10; }
    .xy-col[data-xy-row-span*="sm-11"] { --row-span : 11; }
    .xy-col[data-xy-row-span*="sm-12"] { --row-span : 12; }

}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/base.css?v=2.1 */
:root {
    /* Colors */
    --white : #ffffff;
	--black : #000000;
	--primary-dark : #313131;
	--primary-light : #E6E6E6;
	--secondary-dark : #917A4A;
	--secondary-light : #F1EADD;
	--warning : #C92D2D;
	--warning-light : rgba(201, 45, 45, 0.1);
	--success : #2DC98D;

    /* Fonts */
	--ff-halyard : "Halyard Display", serif;
	--ff-capitolium : capitolium-2, serif;
	--ff-sans : 'Source Sans Pro', sans-serif;
	--ff-serif : var(--ff-capitolium);
    --ff-mono : 'Space Mono', monospace;

	--fw-regular : 400;
	--fw-book : 400;
	--fw-light : 200;
	--fw-medium : 600;
	--fw-bold : 700;
	
    --ff-headings : var(--ff-serif);
    --ff-body : var(--ff-sans);

    /* Font Sizes */
	--base-font-size: clamp(16px, 1.1713vw, 1.1713vw); /*  16px @ 1366px width = 1.1713vw, clamp the base font for max flex  */
	--base-line-height : 1.375;

	--fs-base : var(--base-font-size); /* 16px @ 16px base */

	--fs-h1: 3.052rem; /* 48px @ 16px base */
	--fs-h2 : 2.441rem; /* 39px @ 16px base */
	--fs-h3 : 1.953rem; /* 31px @ 16px base */
	--fs-h4 : 1.563rem; /* 20px @ 16px base */
	--fs-h5 : 1.25rem; /* 13px @ 16px base */
	--fs-h6 : 1rem; /* 16px @ 16px base */
	--fs-s1 : 0.8rem; /* 13px @ 16px base */
	--fs-s2 : 0.64rem; /* 12px @ 16px base */

	/* Default */
	--body-text-color: var(--black, #000000);
	--body-bg-color: var(--white, #ffffff);

	/* Width */
	--max-width : 78rem;
}

html {
	scroll-behavior: smooth;
}

html, body {
    font-family: var(--ff-body);
    font-size: var(--base-font-size);
    color: var(--body-text-color);
    text-rendering: geometricPrecision;
    font-weight: var(--fw-book);
    line-height: var(--base-line-height);
    /* font-variant-ligatures: common-ligatures; */
    min-height: 100%;
}
body {
	/* transition: all 150ms ease; */
	background-color: var(--white);
	--text-color : var(--body-text-color);
	--base-background-color : var(--body-bg-color);
}
* {
	box-sizing: border-box;
}
.screen-reader-text { visibility: hidden; height: 0; overflow: hidden; display: block;}
.breadcrumbs-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    /* gap: 1rem; */
}
.breadcrumbs-list li:nth-child(1), .breadcrumbs-list li:nth-child(2) {
	line-break: normal;
	white-space: nowrap;
}

pre {
    white-space: pre-wrap;
}

/*
 * TYPE!
 */
h1,h2,h3,h4,h5,h6,p {
	margin-top: 0;
	margin-bottom: 0em;
}
h1,h2,h4,h5 { font-family: var(--ff-serif); font-weight: var(--fw-regular); }
h3,h6 { font-family: var(--ff-sans); font-weight: var(--fw-regular); }

h1, .h1 {
	font-size: var(--fs-h1);
	margin-bottom: 2.1rem;
	line-height: 1;
}
h2, .h2 {
	font-size: var(--fs-h2);
	line-height: 1;
	margin-bottom: 0.5em;
	font-weight: var(--fw-light);
}
h3, .h3 {
	font-size: var(--fs-h3);
	line-height: 1.1;
	margin-bottom: 0.5em;
}
h4, .h4 {
	font-size: var(--fs-h4);
	margin-bottom: 0.5em;
	line-height: 1.1;
}
h5, .h5 {
	font-size: var(--fs-h5);
	margin-bottom: 0.5em;
	line-height: 1.1;
}
h6, .h6 {
	font-size: var(--fs-h6);
	line-height: 1.1;
}
p, .p {
	font-size: var(--fs-base);
	line-height: var(--base-line-height);
	margin-bottom: 1rem;
	overflow: auto;
}
p.small, .small {
	font-size: var(--fs-s1);
}
p:empty {
	margin-bottom: 0;
}
.smaller {
	font-size: var(--fs-s2);
}
.bold {
	font-weight: var(--fw-bold);
}
a {
	text-decoration: none;
	color: inherit;
	transition: opacity 150ms ease;
	opacity: 1;
	cursor: pointer;
}
a:not(.btn):hover {
	opacity: 0.7;
}
.sans { font-family: var(--ff-sans); }
.serif { font-family: var(--ff-serif); }

.btn {
	background-color: var(--base-background-color, transparent);
	color: var(--text-color);
	border: 1px solid var(--text-color);
	padding-inline: 2rem;
	padding-block: 0.5rem;
	border-radius: 2rem;
	display: inline-block;
	transition: all 150ms ease;
	position: relative;
	text-align: center;
	cursor: pointer;
}
.btn:hover {
	background-color: var(--text-color);
	color: var(--base-background-color, white);
	/* box-shadow: 0px 0px 13px -5px var(--text-color, black); */
}
.btn.btn-secondary {
	color: var(--base-background-color, white);
	background-color: var(--text-color);
}

.btn.btn-secondary:hover {
    background-color: var(--base-background-color, white);
    color: var(--text-color);
}
.btn-align-center { text-align: center; }
.btn-align-left { text-align: left; }
.btn-align-right { text-align: right; }

.btn.align-center {
	margin-inline: auto;
}
.btn + .btn {
	margin-left: 1rem;
}
.btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

figure {
	margin: 0;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}
/*
p > img {
    margin-bottom: 1rem;
}*/

img.aligncenter, figure.aligncenter {
    margin-inline: auto;
    margin-bottom: 1rem;
}

img.alignright {
    float: right;
    display: inline;
    margin-left: 1rem;
}

img.alignleft {
    display: inline;
    float: left;
    margin-right: 1rem;
}
.wp-caption-text { 
	margin-top: 0.25rem;
	font-size: var(--fs-s1);
}

img[src*=".svg"] {
	width: 100%;
	height: auto;
}
img.full-bleed {
	max-width: calc(100% + var(--xy-gutter));
	width:  calc(100% + var(--xy-gutter));
}

.object-fit img {
	object-fit: cover;
	object-position: center;
	height: 100%;
}

.vh100 {
	min-height: 90vh;
}

.aspect-1-1 {
	object-fit: cover;
	aspect-ratio: 1 / 1;
	height: auto;
	width: 100%;
}
.aspect-16-9 {
	object-fit: cover;
	aspect-ratio: 16 / 9;
	height: auto;
	width: 100%;
}
.aspect-16-9 img { width: 100%; }


.text-center .text-wrapper {
	text-align: center;
}
.heading-group.text-center {
	text-align: center;
}
.text-center > .button-row {
	text-align: center;
}
.button-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}
.button-row .btn {
	min-width: fit-content;
}
.button-row .btn + .btn {
	margin-left: 0;
}

section.block {
	padding-inline: var(--xy-gutter);
}

/* Color */
.has-black-background-color {
	background-color: var(--black);
	--base-background-color: var(--black);
}
.has-black-color {
	color: var(--black);
	--text-color: var(--black);
}
.has-white-background-color {
	background-color: var(--white);
	--base-background-color: var(--white);
}
.has-white-color {
	color: var(--white);
	--text-color: var(--white);
}
.has-primary-dark-background-color {
	background-color: var(--primary-dark);
	--base-background-color: var(--primary-dark);
}
.has-primary-dark-color {
	color: var(--primary-dark);
	--text-color: var(--primary-dark);
}
.has-primary-light-background-color {
	background-color: var(--primary-light);
	--base-background-color: var(--primary-light);
}
.has-primary-light-color {
	color: var(--primary-light);
	--text-color: var(--primary-light);
}

.has-secondary-dark-background-color {
	background-color: var(--secondary-dark);
	--base-background-color: var(--secondary-dark);
}
.has-secondary-dark-color {
	color: var(--secondary-dark);
	--text-color: var(--secondary-dark);
}
.has-secondary-light-background-color {
	background-color: var(--secondary-light);
	--base-background-color: var(--secondary-light);
}
.has-secondary-light-color {
	color: var(--secondary-light);
	--text-color: var(--secondary-light);
}

.has-warning-background-color {
	background-color: var(--warning);
	--base-background-color: var(--warning);
}
.has-warning-color {
	color: var(--warning);
	--text-color: var(--warning);
}
.has-success-background-color {
	background-color: var(--success);
	--base-background-color: var(--success);
}
.has-success-color {
	color: var(--success);
	--text-color: var(--success);
}

.has-feature-black-background-color { --feature-color: var(--black); }
.has-feature-white-background-color { --feature-color: var(--white); }
.has-feature-primary-dark-background-color { --feature-color: var(--primary-dark); }
.has-feature-secondary-dark-background-color { --feature-color: var(--secondary-dark); }
.has-feature-primary-light-background-color { --feature-color: var(--primary-light); }
.has-feature-secondary-light-background-color { --feature-color: var(--secondary-light); }


.post-carousel .flickity-prev-next-button {
    bottom: -6rem;
    top: unset;
    right: var(--xy-gutter);
    color: var(--text-color);
    background: transparent;
    transition: all 150ms ease;
}

.post-carousel .flickity-prev-next-button:hover {
    background: transparent;
    opacity: 0.7;
}

.post-carousel .flickity-prev-next-button:focus {
    box-shadow: 0 0 0 1px var(--text-color);
    background-color: transparent;
}

.post-carousel .flickity-prev-next-button.next {
    right: var(--xy-gutter);
}

.post-carousel .flickity-prev-next-button.previous {
    right: calc(var(--xy-gutter) + 5rem);
    left: unset;
}

.post-carousel .card-text {
	max-height: 7rem;
	overflow: hidden;
}

.site-search-outer .search-form {
    font-size: var(--fs-h3);
    border-bottom: 1px solid currentColor;
    padding-bottom: 0.25rem;
    max-width: 32rem;
    margin: 30vh auto 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
}

.search-form input[type="submit"] {
    background-image: url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/icons/arrow-right.svg');
    width: 3rem;
    padding: 0.25rem;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
    cursor: pointer;
    color: transparent;
}

.search-form input[type="text"], 
.search-form input[type="search"] {
    background: none;
    border: none;
    color: currentColor;
    background-image: url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/icons/magnifier.svg');
    background-size: auto 70%;
    background-repeat: no-repeat;
    background-position: center left;
    padding: 0.5rem 0.5rem 0.5rem 3.5rem;
    max-width: 100%;
}

.search-form input[type="text"]:hover, .search-form input[type="text"]:focus {
    outline: none;
}

#crumbs a {
    opacity: 0.6;
    transition: all 150ms ease;
    display: inline;
}

div#crumbs a:hover {
    opacity: 1;
}

#crumbs span.spacer {
    opacity: 0.6;
    margin-inline: 0.75rem;
}

header .button-row {
    margin-top: 2rem;
    gap: 1rem;
}

div.BEECH_notifications {
	--bch-sn--accent : var(--secondary-light);
}

ul.in-page-nav-list {
    margin: 0;
    padding: 1.25rem 0;
    list-style: none;
    display: flex;
    gap: 1rem;
    justify-content: center;
    font-size: var(--fs-h6);
    font-family: var(--ff-headings);
    flex-wrap: wrap;
}

ul.in-page-nav-list .in-page-nav-item:not(:last-child) {
    border-right: 1px solid currentColor;
    padding-right: 1rem;
}

.gallery {
    display: flex;
    justify-content: flex-start;
    gap: 1rem;
	flex-wrap: wrap;
}
.gallery .gallery-item {
	--gallery-offset : calc( 100% - ( var(--gallery-cols) * 1rem - 1rem )  );
	flex-basis: calc( var(--gallery-offset) / var(--gallery-cols) );
}
.gallery-columns-1 { --gallery-cols : 1; }
.gallery-columns-2 { --gallery-cols : 2; }
.gallery-columns-3 { --gallery-cols : 3; }
.gallery-columns-4 { --gallery-cols : 4; }
.gallery-columns-5 { --gallery-cols : 5; }
.gallery-columns-6 { --gallery-cols : 6; }
.gallery-columns-7 { --gallery-cols : 7; }
.gallery-columns-8 { --gallery-cols : 8; }
.gallery-columns-9 { --gallery-cols : 9; }

.text-block__image_text .text-wrapper > .btn {
	margin-top: 1rem;
}


header.has-top-gradient {
    position: relative;
}

header.has-top-gradient::after {
    content: '';
    top: 0;
    width: 100%;
    left: 0;
    position: absolute;
    background: linear-gradient(180deg, rgb(0 0 0 / 60%) 0%, rgb(0 0 0 / 0%) 80%);
    height: 20vh;
    z-index: 0;
}

header.has-top-gradient:not(.has-slider) > div:not(.video-wrapper)  {
    position: relative;
    z-index: 1;
}

header img.video-poster {
	position: absolute;
	top: 0;

	width: 100%;
	height: 100%;
	object-fit: cover;

	z-index: 3;

}

header video[data-loaded="true"] + img.video-poster,
header iframe[data-loaded="true"] + img.video-poster {
	animation: 1s fadeOut linear normal 1 forwards;
	animation-delay: 500ms;
}



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

/** Events! **/
.block.text-block__upcoming-events {
	padding-block: 7rem;
}
.events-list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
.event-item {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 2rem;
	border-bottom: solid 1px color-mix(in srgb, currentColor, transparent 80%);
	padding-bottom: 1rem;
	--_highlight : var(--secondary-dark);
}
.event-item:hover .event-date,
.event-item.active .event-date { 
	background-color: var(--_highlight);
}
.event-date {
	border-radius: 0.125rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	padding: 0.25rem;
	transition: all 150ms ease;
}

.event-date .event-date__day {
	font-size: var(--fs-h4);
	font-weight: var(--fw-bold);
	line-height: 1;
}
.event-date .event-date__month {
	font-size: var(--fs-h6);
	text-transform: uppercase;
	line-height: 1;
}
.event-date .event-date__spacer {
	width: 1rem;
	border-top: 1px solid currentColor;
}
.events-image-wrap img {
	aspect-ratio: 3 / 4;
	object-fit: cover;
	transition: all 150ms ease;
}
.events-image-wrap {
	position: relative;
}

.event-image-with-index {
	--_event-index : 0;
	position: absolute;
	top: 0;
	left : 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: all 150ms ease;
}
.event-image-with-index.active {
	opacity: 1;
}
.event-image-with-index.active ~ img { opacity: 0;}


/** Post Prose Styles **/
.single-post .prose {
	h1,h2,h3,h4,h5,h6 { 
		color: var(--primary-dark);
	}

	p { overflow: initial;}

	h1:not(:first-child),
	h2:not(:first-child),
	h3:not(:first-child),
	h4:not(:first-child),
	h5:not(:first-child),
	h6:not(:first-child) {
		margin-top: 2.5rem;
	}

	img.aligncenter,
	figure.aligncenter {
		--_expand : 8rem;
		--_width : calc( 100% + var(--_expand) * 2 );
		max-width: var(--_width);
		width: var(--_width);
		translate: calc(var(--_expand) * -1) 0;
	}

	p > img,
	p > figure { 
		margin: 2rem 0 3.5rem;
	}
}

/** Gallery Shortcode **/
div.gallery {
	display: grid;
	grid-template-columns: repeat(var(--gallery-cols, 3), minmax(0, 1fr));
	gap: 0.75rem;
	margin: 2rem 0 3.5rem;
	padding: 0;
}

div.gallery img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 1 / 1;
}

div.gallery.gallery-style-expanded {
	--_expand : 8rem;
	--_width : calc( 100% + var(--_expand) * 2 );
	max-width: var(--_width);
	width: var(--_width);
	translate: calc(var(--_expand) * -1) 0;
}
div.gallery.gallery-style-expanded.gallery-columns-2 {
	--_expand : 4rem;
}
div.gallery .gallery-caption {
	margin-top: 0.25rem;
	display: none;
}
div.gallery figure.gallery-item { position: relative;	}


/* Lightbox container */
.lightbox {
  display: none;
  position: fixed;
  flex-direction: column;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  padding: 2rem;
}

/* Image inside the lightbox */
.lightbox-content {
  max-width: 90%;
  max-height: 90%;
  margin: auto;
  color: white;
}
.lightbox-content img {
  width: 100%;
  object-fit: contain;
  height: 100%;
}
.lightbox-figure-caption {
	margin-top: 0.5rem;
}

/* Close button */
.close-btn {
    position: absolute;
    top: 2rem;
    right: 2rem;
    color: white;
    font-size: 30px;
    cursor: pointer;
    padding: 0.25rem;
    background-color: var(--primary-dark);
    line-height: 1;
    display: block;
}
/* Navigation buttons */
.lightbox-prev,
.lightbox-next {

  top: 50%;
  transform: translateY(-50%);
  font-size: 40px;
  color: white;
  cursor: pointer;
  padding: 10px;
  /*background-color: rgba(0, 0, 0, 0.5);*/
  border: none;
  z-index: 1000;
}

.lightbox-prev {
  left: 10px;
  margin-right: 1rem;
}

.lightbox-next {
  right: 10px;
}
.lightbox-prev svg {
    rotate: 180deg;
}

/* Optional: Make buttons bigger when hovered */
.lightbox-prev:hover, 
.lightbox-next:hover {
  /*background-color: rgba(0, 0, 0, 0.7);*/
}

.lightbox-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;

  position: relative;
  width: 90%;
  padding: 0rem;
}
.lightbox-buttons {
	margin-left: auto;
	position: absolute;
	right: 0;
	bottom: 50%;
	transform: translateX(0%) translateY(50%);
}

.lightbox-dots {
	display: flex;
	flex-direction: row;
	gap: 0.25rem;
	justify-content: center;
	align-items: center;
	color: white;
	list-style: none;
	margin: 0;
	padding: 0;
	position: absolute;
	bottom: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(50%);
}
.lightbox-dots .dot {
	cursor: pointer;
	border-radius: 100%;
	height: 0.75rem;
	width: 0.75rem;
	background-color: white;
	transition: all 150ms ease;
	opacity: 0.4;
}
.lightbox-dots .dot.active {
	opacity: 1;}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/layout.css?v=2.1 */
/* Basic Block Dogs */
.block.text-block__image_text.image-inset {
    padding-block: 7rem;
}

.block.text-block__quote, .block.text-block__text, .block.images-block__carousel-gallery, .block.images-block__images, .block.cards-block__feature, .block.cards-block__image-cards, .block.text-block__tabs, .block.text-block__list-items, .block.text-block__para-list, .block.cards-block__article-list {
    padding-block: 8rem;
}

/* Image Block Dogs */
.block.image-full .image-wrapper img {
    max-width: calc(100% + var(--xy-gutter));
    width: calc(100% + var(--xy-gutter));
    height: 100%;
    object-fit: cover;
}

.block.image-full .image-wrapper:first-child {
    display: flex;
    justify-content: flex-end;
}

.quote-center .text-wrapper {
    text-align: center;
}

.block.images-block__full .image-wrapper {
    display: flex;
    justify-content: center;
}
.block.images-block__full img {
    max-width: calc(100% + var(--xy-gutter) * 2);
    width: calc(100% + var(--xy-gutter) * 2);
}

.block.images-block__full .video {
    width: calc(100% + var(--xy-gutter) * 2);
    max-width: calc(100% + var(--xy-gutter) * 2);
    height: calc( 100vw / ( 16 / 9) );
    aspect-ratio: 16 / 9;
    display: block;
}
.block.images-block__full {
    padding-block: 0;
}
.block.images-block__full .caption {
    /* transform: translate(0, -3rem); */
    position: absolute;
    bottom: 2rem;
}

.gallery-wrapper figure {
    position: relative;
}
.gallery-wrapper figure figcaption {
    opacity: 0;
    position: absolute;
    bottom: 0rem;
    left: 0.5rem;

    transition: all 150ms ease;
}
.gallery-wrapper figure:hover figcaption {
    opacity: 1;
    bottom: 0.5rem;
}

.gallery-wrapper .xy-grid {row-gap: var(--xy-col-gap);}

.gallery-carousel .carousel-cell {
    max-width: calc(100% - var(--xy-gutter));
    margin-right: calc(var(--xy-gutter) / 2);

}
.gallery-carousel .flickity-page-dots .dot {
    border-radius: 0;
    width: calc(100% / 12 - var(--xy-col-gap));
    height: 0.125rem;
    background-color: var(--text-color);
}
.gallery-carousel .flickity-page-dots {
    text-align: right;
    bottom: 0.25rem;
    width: calc(100% - var(--xy-gutter));
    z-index: 3;
}
section.block.images-block__carousel-gallery, .block.cards-block__article-list {
    padding-left: var(--xy-gutter);
    padding-right: 0;
}
.gallery-carousel .carousel-cell figcaption {
    opacity: 0;
    transition: all 250ms ease;
}
.gallery-carousel .carousel-cell.is-selected figcaption {
    opacity: 1;
}
.flickity-viewport {
    z-index: 1;
}

.gallery-caption {
    font-size: var(--fs-s1);
    margin-top: 1rem;
}

/* Cards */
.card .icon {
    max-width: 4rem;
    margin: 0rem auto 1rem;
}
.card .card-inner { height: 100%; }
.card.style-image-icon, .card.style-image-text {
    color: var(--white);
    position: relative;
    aspect-ratio: 4 / 5;
--text-color:
    var(--white);
    --base-background-color:
    var(--primary-dark);
}
.card.style-image-icon .card-image, .card.style-image-text .card-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}
.card.style-image-icon .card-image img, 
.card.style-image-text .card-image img {
    object-fit: cover;
    object-position: center;
    height: 100%;
}
.card.style-image-icon .card-inner,
.card.style-image-text .card-inner {
    display: flex;
}
.card.style-image-icon .card-content,
.card.style-image-text .card-content {
    margin-top: auto;
    position: relative;
    width: 100%;
    z-index: 1;
    padding: 1rem;
}

.card.style-image-icon .card-content { text-align: center; }
.card.style-image-text .icon { display: none; }

.card.style-image-icon p {
    font-style: italic;
}

.card.style-card .card-content {
    padding: 1.5rem;
}
.card.style-card .icon {
    margin-left: 0;
}
.card.style-icon-only .card-image { display: none; }
.card.style-icon-only .card-content {
    padding: 1rem;
    text-align: center;
}
.card.style-icon-only .card-inner {
    padding-top: 12rem;
    position: relative;
}
.card.style-icon-only .card-inner::after {
    content: '';
    position: absolute;
    top: 4rem;
    left: calc(50% - 1px);
    width: 2px;
    height: 6rem;
    background-color: currentColor;
    z-index: 1;
}

.card.style-underlined-icon .icon {
    margin-left: 0;
    margin-bottom: 1.5rem
}
.card.style-underlined-icon .icon + * {
    padding-top: 1rem;
    border-top: var(--text-color) solid 1px;

}
.card.style-lines, .card.style-lines-grid {
    text-align: center;
    border-top: var(--text-color) solid 1px;
    border-bottom: var(--text-color) solid 1px;
    padding-block: 2rem;
}
.card.style-lines p, .card.style-lines-grid p {
    font-style: italic;
}

.card-image img {
    aspect-ratio: 6 / 4;
    object-fit: cover;
}

/* Big Ol Feature */
.block.cards-block__feature {
    position: relative;
}
.block.cards-block__feature > * {
    position: relative;
    z-index: 1;
}
.block.cards-block__feature::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background-color: var(--feature-color);
    z-index: 0;
}



.cards-block__image-cards.style-image-icon .text-wrapper {display: flex;flex-direction: row;justify-content: space-between;align-items: center;}

.card.style-card {box-shadow: 3px 3px 11px -2px rgb(0 0 0 / 14%);}

.block.columns .text-wrapper, .block.columns .text-column {
    padding-right: 5vw;
}

.images-block__full .xy-col {
    position: relative;
}

.tab-content:not(.active) {
    display: none;
}

.tab-holder {
    border: solid 1px var(--text-color);
    padding: 1rem;
}

.tab-header__item a {
    display: flex;
    padding: 1rem;
    align-items: center;
    line-height: 1;
    justify-content: space-between;
}

.tab-header__item svg path {
    stroke: var(--text-color);
    transition: all 150ms ease;
}

.tab-header__item.active svg path,
.tab-header__item:hover svg path {
    stroke: var(--base-background-color);
}

.tab-header__item {
    border: solid 1px var(--text-color);
    margin-bottom: 1rem;
    transition: all 150ms ease;
    cursor: pointer;
}

.tab-header__item.active,
.tab-header__item:hover {
    background-color: var(--text-color);
    color: var(--base-background-color);
}

.tab-header__item:last-child {
    margin-bottom: 0;
}

.text-block__tabs .heading-group {
    margin-bottom: 2.5rem;
}

.faq-question {
    padding-block: 1rem;
    border-bottom: 1px solid var(--text-color);
    margin-bottom: 1rem;
    cursor: pointer;
}

.faq-answer {
    overflow: hidden;
    max-height: 0;
    transition: all 150ms ease;
}

.faq-answer > :first-child {
    margin-top: 0.5rem;
}

.faq-question h5 {
    margin-bottom: 0;
    position: relative;
    line-height: 1;
    padding-right: 2rem;
}
.faq-question h5::after,
.faq-question h5::before {
    content: '';
    position: absolute;
    transition: all 150ms ease;
}
.faq-question h5::after {
    height: var(--fs-h5);
    top: 0;
    right: calc(var(--fs-h5) / 2 - 1px);
    width: 1px;
    background-color: var(--text-color);
}
.faq-question h5::before {
    width: var(--fs-h5);
    border-bottom: solid 1px var(--text-color);
    right: 0;
    top: calc(var(--fs-h5) / 2 - 1px);
}
.faq-expanded .faq-question h5::before, .faq-expanded .faq-question h5::after { content: unset; }
.faq-wrapper.faq-grid, .faq-wrapper.faq-expanded {
    margin-top: 4rem;
}

.faq-item.open .faq-answer {
    max-height: var(--scroll-height, 30rem);
}
.faq-item.open .faq-question h5::after {
    transform: rotate(90deg);
}
.faq-item.open .faq-question h5::before {
    opacity: 0;
}

.faq-expanded .faq-item .faq-answer {
    max-height: unset;
}

.tab-header {
    margin: 0;
    padding: 0;
    list-style: none;
}

.vertical-spacer {
    padding: var(--fs-h5);
    display: block;
}

.para-list-row {
    border-bottom: solid 1px var(--text-color);
    padding-bottom: 4rem;
    margin-bottom: 4rem;
}


/* Posts */
.post-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.post-list .card {
    display: flex;
    /* height: 100%; */
    align-items: stretch;
    align-content: flex-start;
    justify-content: flex-start;
    flex-direction: column;
}
.post-list .card img {
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    object-position: top;
}
.post-list .card .card-content, .post-carousel .card .card-content {
    padding: 1.5rem;
    height: 100%;
}

.search-results .post-list .card {
    background-color: var(--primary-light); 
    --base-background-color : var(--primary-light);
}

.post-carousel .card .card-content {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    align-content: flex-start;
}

.post-carousel .card .card-content .btn {
    margin-top: auto;
}
.card .card-date {
    margin-bottom: 1em;
}
.card .card-title {
    margin-bottom: 1em;
}

.post-carousel .card .card-title {
    /* min-height: 4.8rem; */
    width: 100%;
}  

.card .card-content .btn {
    margin-top: 0.5rem;
}

section.block.post-block__post-grid {
    padding-top: 8rem;
    padding-bottom: 12rem;
}

.posts-navigation .nav-links {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 3rem;
}

.card.carousel-cell {
    width: calc( ( ((100vw - var(--xy-gutter) * 2 ) / 12 ) * var(--item-cols)) - var(--gap-modifier));
    display: inline-block;
    margin-right: var(--xy-col-gap);
    /* min-height: 40rem; */
    box-shadow: 3px 3px 11px -2px rgb(0 0 0 / 14%);
    margin-bottom: 1rem;
    height: max-content;
}

.card.carousel-cell:last-child {
    /* margin-right: var(--xy-gutter); */
}

.card.carousel-cell .card-content {
    min-height: 22rem;
}

.post-carousel {--gap-modifier:calc( (var(--grid-cols) - var(--item-cols)) * var(--xy-col-gap)/ var(--grid-cols)  );--item-cols: 4;--grid-cols: 12;}

.post-carousel .card img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    object-position: top;
    width: 100%;
}


.text-block__text .xy-grid {
    align-items: start;
    align-content: start;
}


.block.has-school-style {
	position: relative;
    overflow: hidden;
}
.block.has-school-style::after {
	content: '';
	position: absolute;
	right: -3rem;
	top: 0;
    z-index: 0;
}
.block.has-school-style > .xy-grid {
    position: relative;
    z-index: 1;
}


.text-block__image_text.image-full .text-wrapper {
	padding-block: 5rem;
}

.block.text-block__list-items.faq-list > .xy-grid {
    align-content: start;
    align-items: start;
}

.block.text-block__image_text.image-inset video.video {
    max-width: 100%;
}

.block.image-full .video {
    aspect-ratio: 16 / 9;
    height: calc( 50vw / ( 16 / 9) );
    max-width: calc(100% + var(--xy-gutter));
    width: calc(100% + var(--xy-gutter));
    object-fit: cover;
}

article.post p > iframe {
    display: block;
    margin-inline: auto;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/nav.css?v=2.1 */
nav img.logo, aside img.logo {
    max-height: 5.75rem;
    max-width: 9rem;
    margin: 0 auto 0 0;
    width: auto;
}

nav.nav-style_centred img.logo {
    margin-inline: auto;
}

.site-search-outer img.logo {
    max-height: 3.75rem;
    margin-right: auto;
}

nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.header-auxiliary-nav {
    height: 3.125rem;
    transform: translate(0px, 0vh);
}

.nav-header-utility ul, 
.nav-header-primary ul,
.nav-header-auxiliary ul,
.nav-footer-auxiliary ul {
    display: flex;
    flex-wrap: nowrap;
    gap: 2rem;
}
.nav-header-utility ul, .nav-header-auxiliary ul, .nav-footer-auxiliary ul {
    justify-content: flex-end;

}
.nav-header-primary ul {
    justify-content: center;
}

.nav-style_centred .nav-header-primary ul {
    justify-content: flex-start;
}

.header-auxiliary-nav {
    padding-block: 1rem;
    font-size: var(--fs-s1);
}
.header-auxiliary-nav p {
    margin-bottom: 0;
    opacity: 0.4;
}
/* Primary Nav */
.nav-header-primary, .nav-header-utility {
    padding-top: 1rem;
}

/* Header */
main > header:not(.header-alternative.has-image, .has-slider) {
    padding-top: 2rem;
    padding-bottom: 4rem;
}

main > header.header-alternative {
    padding-top: 0;
}

main > header.header-alternative.no-image {
    min-height: 35vh;
    display: flex;
    align-items: center;
    padding-top: 8rem;
}
header .vh100 {
    min-height: calc( 100vh - 2rem - 4rem - 3.125rem );
}


/* Footer */
footer > div:first-child {
    padding-top: 7rem;
    padding-bottom: 4rem;
}
footer > div:last-child {
    padding-block: 1rem;
}

footer .footer-logo img {
    margin-top: 3rem;
    max-width: 8rem;
}
footer h2 {
    margin-bottom: 2.5rem;
}
footer p {
    margin-bottom: 1.25rem;
}
footer .social {
    margin-block: 3rem 5rem;
}

.nav-footer > ul {
    display: grid;
    justify-content: start;
    align-items: start;
    justify-items: start;
    grid-template-columns: 1fr 1fr;
    column-gap: var(--xy-col-gap);
    row-gap: 3rem;
}
.nav-footer > ul > li {
    font-size: var(--fs-h5);
}
.nav-footer > ul > li .sub-menu {
    font-size: var(--fs-base);
    padding-top: 1.5rem;
}
.nav-footer .sub-menu li {
    margin-bottom: 1rem;
}

nav.header-alternative {
    padding-block: 1.25rem 1.25rem;
}



.mega-menu-wrapper ul {
    padding: 0;
    list-style: none;
    margin: 0;
}

.mega-menu-wrapper ul.menu {
    position: relative;
    overflow: auto;
}

ul.term-dates {
    font-size: var(--fs-s1);
}
ul.term-dates li > span { font-weight: var(--fw-bold); text-transform: uppercase; margin-right: 0.125rem; }

.mega-menu-wrapper {
    min-height: 0vh;
    max-height: 0vh;
    height: 100%;

    position: fixed;
    inset: 0 0 0 0;
    z-index: 50;
    display: none;
    overflow: hidden;

    transition: all 400ms ease;
}
.mega-menu-wrapper.opening, .mega-menu-wrapper.closing {
    display: block;
}
.mega-menu-wrapper.open {
    display: block;
    min-height: 100vh;
    max-height: 100vh;
}
.mega-menu-wrapper.closing {
    min-height: 0vh;
    max-height: 0vh;
}
.mega-menu-footer {
    border-top: solid rgba(255,255,255,0.2) 1px;
    padding-block: 2rem;
    margin-top: auto;
    height: 11rem;
}
.mega-menu-header {
    padding-top: 2rem;
    padding-bottom: 2rem;
    /*border-bottom: solid rgba(255,255,255,0.2) 1px;*/
    margin-bottom: 2rem;
    height: 8rem;
    position: relative;
}
.mega-menu-header:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;
    width: 0%;
    border-bottom: solid rgba(255,255,255,0.2) 1px;
    transition: width 300ms linear 400ms;
}
.open.closing .mega-menu-header:after {
    width: 0;
}
.open .mega-menu-header:after {
    width: 100%;
    animation-delay: 0;
}

.pull-right {
    margin-left: auto;
}
.mega-menu-inner {
    /* display: flex; */
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: stretch;
    justify-content: stretch;
    min-height: 100vh;
    min-height: 100svh;
    height: 100%;
}

#megaMenuMobile { display: none; }

.nav-mega {
    min-height: calc(100vh - 8rem - 12rem - 2rem - 0.75rem);
    margin-bottom: 1.5rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    position: relative;
    display: grid;
    align-items: start;
    gap: var(--xy-col-gap);
    grid-template-columns: repeat(3, 1fr);
}
.nav-mega .menu {
    height: calc(100vh - 8rem - 12rem - 2rem - 4rem);
}
.nav-mega .sub-menu {
    --item-base-height:
    calc( ( -1 * var(--fs-h4) * var(--base-line-height) ) - 1.25rem);
    display: none;
    position: absolute;
    top: 0;
    --offset : 25%;
    left: var(--offset);
    width: calc(100% - var(--offset));
    border-left: solid rgba(255,255,255,0.2) 1px;
    padding-left: 2rem;
    /* height: 100%; */
    /* height: var(--box-height); */
}
/*
.nav-mega li.active > a, .nav-mega li:hover > a {
    border-bottom: solid var(--text-color) 1px;
}*/
.nav-mega li.active > .sub-menu,
.nav-mega li:hover > .sub-menu {
    /* display: block; */
}

.nav-mega li {
    font-size: var(--fs-h4);
    font-family: var(--ff-serif);
    margin-bottom: 1.25rem;
    width: 100%;
    cursor: pointer;
}
.nav-mega .menu > li > .sub-menu {
    --offset: calc( (100% / 12) * 4);
}
.nav-mega .menu > li > .sub-menu .sub-menu {
    --offset: calc( (100% / 8) * 4);
}
.nav-mega .sub-menu .sub-menu .sub-menu {
    display: none !important;
}

.nav-mega .menu[data-menu-level="0"] > li {
    transition: 300ms all linear 500ms;
    transform: translate(-5vw, 0);
    opacity: 0;
}

.nav-mega .menu[data-menu-level="0"] > li:nth-child(2) { transition-delay: 550ms; }
.nav-mega .menu[data-menu-level="0"] > li:nth-child(3) { transition-delay: 600ms; }
.nav-mega .menu[data-menu-level="0"] > li:nth-child(4) { transition-delay: 650ms; }
.nav-mega .menu[data-menu-level="0"] > li:nth-child(5) { transition-delay: 700ms; }
.nav-mega .menu[data-menu-level="0"] > li:nth-child(6) { transition-delay: 750ms; }
.nav-mega .menu[data-menu-level="0"] > li:nth-child(7) { transition-delay: 800ms; }
.nav-mega .menu[data-menu-level="0"] > li:nth-child(8) { transition-delay: 850ms; }


.nav-mega .menu[data-menu-level="1"], 
.nav-mega .menu[data-menu-level="2"] {
    padding-left: 2rem;
    border-left: 1px solid rgba(255,255,255,0.2);
}
.nav-mega .menu[data-menu-level="1"][data-group-active=""], 
.nav-mega .menu[data-menu-level="2"][data-group-active=""] { 
    border-left-color: transparent;
}

.nav-mega .menu-item svg {
    margin-left: 1rem;
    opacity: 0;
    transition: all 150ms linear;
}
.nav-mega .menu-item {
    transition: 150ms all linear;
    opacity: 1;
    position: relative;
}
.nav-mega .menu-item.hidden {display: none; opacity: 0;  }
.nav-mega .menu-item.hidden.entering { display: block; }

.nav-mega .menu-item a span { position: relative; }
.nav-mega .menu-item a span::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 10%;
    border-bottom: solid 1px transparent;
    transition: all 150ms ease;
}
.nav-mega .menu-item:hover a span::before,
.nav-mega .menu-item.active a span::before {
    border-color: currentColor;
    width: 100%;
}
.nav-mega .menu-item:hover svg,
.nav-mega .menu-item.active svg {
    margin-left: 1.5rem;
    opacity: 1;
}

.open .nav-mega .menu[data-menu-level="0"] > li {
    transform: translate(0, 0);
    opacity: 1;
}

.open .nav-mega .menu > li a {
    display: flex;
    white-space: pre-wrap;
    align-items: center;
    position: relative;
}

.nav-mega .menu-item.no-children svg { display: none; }

/* Mobile Mega Menu */
#menu-mega-menu {
    overflow-y: scroll;
    overflow-x: hidden;
}
.nav-mega .item-toggle {
    border: none;
    background-color:transparent;
    padding: 0;
}

.mega-mobile-wrapper .nav-mega .menu-item {
    display: flex;
    flex-wrap: wrap;
}
.mega-mobile-wrapper .nav-mega .menu-item a {
    width: calc(100% - 3rem);
}
.mega-mobile-wrapper .nav-mega .menu-item > .item-toggle {
    display: none;
    width: 3rem;
    align-items: center;
    justify-content: flex-end;
}
.mega-mobile-wrapper .nav-mega .menu-item.menu-item-has-children > .item-toggle {
    display: flex;
}
.mega-mobile-wrapper .nav-mega .menu-item .sub-menu { width: 100%; transition: all 300ms ease; }

.mega-mobile-wrapper .nav-mega .menu-item .item-toggle svg {
    width: auto;
    margin-left: 0;
    opacity: 1;
    height: 0.5rem;
    color: var(--text-color);
    transition: all 150ms linear;
}
.item-toggle.open svg {
    transform: rotate(-180deg);
}

.mega-mobile-wrapper .nav-mega .menu-item .sub-menu.opening, 
.mega-mobile-wrapper .nav-mega .menu-item .sub-menu.open { display: block; }
.mega-mobile-wrapper .nav-mega .menu-item .sub-menu.opening { max-height: 0; overflow: hidden; }
.mega-mobile-wrapper .nav-mega .menu-item .sub-menu.open { max-height: 100vh; overflow: hidden; }
.mega-mobile-wrapper .nav-mega .menu-item .sub-menu.open.closing { max-height: 0; }


.nav-header-utility .menu-item-btn a, .site-search-outer .menu-item-btn a {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}
.nav-header-utility .menu-icon, .site-search-outer .menu-icon {
    margin-left: 0.5rem;
    display: block;
    height: 1rem;
    width: 1rem;
}
.mega-menu-inner .menu .btn-menu {
    display: none;
}
.header-primary-nav .menu .btn-close {
    display: none;
}
nav.header-auxiliary-nav {
    position: relative;
    z-index: 60;
    transition: all 150ms ease;
    overflow: hidden;
}

nav.header-auxiliary-nav + aside.mega-menu-wrapper .nav-mega .menu {
    /* height: var(--box-height); */
    /* --box-height:
    calc(100vh - 8rem - 12rem - 2rem - 4rem - 3.125rem); */
}
body[aria-menu-expanded="true"] { 
    position: fixed; 
    width: 100%;
}
body[aria-menu-expanded="true"] nav.header-auxiliary-nav {
    background-color: var(--primary-dark);
    color: var(--white);
    /* max-height: 0; */
    /* padding: 0; */
    /* transform: translate(0px, -6vh); */
    z-index: 1;
}
.mega-menu-wrapper .logo {
    transition: transform 150ms ease;
}
.nav-header-utility {
    transition: transform 150ms ease;
    transform: translate(0px, 0px);
}
nav.header-auxiliary-nav + aside.mega-menu-wrapper .nav-header-utility, 
nav.header-auxiliary-nav + aside.mega-menu-wrapper.open.closing .nav-header-utility,
nav.header-auxiliary-nav + aside.mega-menu-wrapper .logo, 
nav.header-auxiliary-nav + aside.mega-menu-wrapper.open.closing .logo {
    transform: translate(0px, 2.5rem);
}
nav.header-auxiliary-nav + aside.mega-menu-wrapper.open .nav-header-utility,
nav.header-auxiliary-nav + aside.mega-menu-wrapper.open .logo {
    transform: translate(0px, 0rem);
}

.has-secondary-dark-color nav.header-primary-nav, .has-primary-dark-color nav.header-primary-nav {
    color: white;
}

.site-search-outer {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: linear-gradient(0deg, var(--primary-dark) 0%, transparent 80%), url(/wp-content/uploads/2022/08/pexels-viktor-talashuk-2293046-scaled.jpg);
    color: var(--white);
    height: 100vh;
    backdrop-filter: blur(4px);
    z-index: 60;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    align-content: center;
    flex-wrap: nowrap;
    flex-direction: row;
    transition: all 350ms ease;
    transform: translate(0, 0);
    border-radius: 0;
    opacity: 1;
    overflow: hidden;
}
.site-search-outer.opening, .site-search-outer.closed.opening {
    display: flex;
}
.site-search-outer.closed {
    display: none;
    transform: translate(0vw, 0vh);
    /*border-radius: 100vw;*/
    opacity: 1;
    height: 0vh;
}
.site-search-outer.closing {
    height: 0vh;
}

.site-search-inner {
    width: 100%;
    padding-block: 5rem;
    padding-inline: var(--xy-gutter);
}

.site-search-nav {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
    align-content: center;
    transition: all 150ms ease 350ms;
    transform: translate(0, 0rem);
    opacity: 1;
}
.closed .site-search-nav {
    transform: translate(0, 2rem);
    opacity: 0;
}
.closed .search-form {
    transform: translate(0, 2rem);
    opacity: 0;
}
.site-search-outer .search-form {
    transition: all 150ms ease 550ms;
    transform: translate(0, 0rem);
    opacity: 1;
}

header .video-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

header video,
header iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

header.has-video {
    position: relative;
}

footer .social {
    margin: 2rem 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: flex-start;
}
footer .social a {
    /* background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/facebook.svg'); */
    /* background-size: contain; */
    /* background-repeat: no-repeat; */
    /* color: transparent; */
    /* width: 3rem; */
    /* height: 2rem; */
    /* display: block; */
}
/*
footer .social a.facebook { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/facebook.svg'); }
footer .social a.twitter { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/twitter.svg'); }
footer .social a.instagram { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/instagram.svg'); }
footer .social a.linkedin { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/linkedin.svg'); }
footer .social a.youtube { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/youtube.svg'); }
footer .social a.pinterest { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/pinterest.svg'); }
footer .social a.tumblr { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/tumblr.svg'); }
footer .social a.vimeo { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/vimeo.svg'); }
footer .social a.flickr { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/flickr.svg'); }
footer .social a.rss { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/rss.svg'); }
footer .social a.email { background-image:  url('https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/images/email.svg'); }
*/
footer .social a img {
    min-height: 1.75rem;
}

.footer-acknowledgement {
    margin-top: 2rem;
}
.footer-acknowledgement p { margin: 0;}

footer > .has-primary-dark-background-color:first-child, 
footer > .has-secondary-dark-background-color:first-child {
    color: var(--white);
    --text-color: var(--white);    
}
footer .has-primary-dark-background-color .social a img,
footer .has-secondary-dark-background-color .social a img {
    filter: invert();
}

header.has-slider {
    position: relative;
    /* padding-top: 2rem; */
    overflow: hidden;
}

header.has-slider .header-slider-wrapper {
    width: 100vw;
    /*height: 100vh;
    max-width: 100vh;*/
}

header.has-slider .header-slide {
    width: 100%;
}

header.has-slider > .xy-flex {
    position: absolute;
    margin-top: 2rem;
    z-index: 5;
}
header.has-slider .vh100 {
    --slider-height : calc(100vh - 5rem);
    min-height: var(--slider-height);
}
header.has-slider .header-slide {
    position: relative;
}

header.has-slider .header-slide .header-slider-image {
    z-index: -1;
    position: absolute;
    width: 100vw;
    height: var(--slider-height);
    object-fit: cover;
    object-position: center;
}
header.has-slider .header-slide .header-slider-image.header-slide-image-mobile {
    display: none;
}

.header-slide .text-wrapper {
    position: relative;
    z-index: 2;
    margin-top: auto;
    margin-inline: auto;
    padding-bottom: 5rem;
}
.header-slide::before {
    content: '';
    background: linear-gradient(0deg, var(--base-background-color) 0%, transparent 35%, transparent 80%, rgba(0,0,0, 0.5) 100%);
    position: absolute;
    inset: 0 0 0 0;
    z-index: 0;
}
header.has-slider .flickity-viewport {
    position: relative;
    z-index: 0;
}
header.has-slider .flickity-page-dots {
    position: absolute;
    z-index: 15;
    bottom: 2rem;
    color: currentColor;
}
header.has-slider .flickity-page-dots .dot {
    background-color: currentColor;
}
header.has-slider .flickity-prev-next-button {
    background: transparent;
    color: currentColor;
}
header.has-slider .flickity-prev-next-button.previous {
    left: var(--xy-gutter);
}
header.has-slider .flickity-prev-next-button.next {
    right: var(--xy-gutter);
}
header .btn {
    background-color: transparent;
}
header .btn:hover {
    background-color: var(--text-color);
    color: var(--base-background-color);
}
header .text-wrapper p {
    margin-bottom: 0;
}

header.text-left  .button-row {
    justify-content: flex-start;
}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/forms.css?v=2.1 */
form p:empty {
    display: none;
}
p:has(~ .gravity-theme) {
    margin-bottom: 0;
}
.gform_wrapper p:empty {
    display: none;
}
input[type="search" i]:enabled:read-write:-webkit-any(:focus, :hover)::-webkit-search-cancel-button {
    display: none;
    opacity: 0;
}
input[type="search"]:focus-visible {
    outline: transparent;
}

form:not(.search-form) input, form:not(.search-form) select, form:not(.search-form) textarea {
    border: solid 1.5px var(--black);
    border-radius: 0;
    accent-color: var(--primary-light);
    transition: all 150ms ease;
    font-size: var(--fs-base) !important;
    padding: 0.75rem !important;
}
form:not(.search-form) input:focus, form:not(.search-form) select:focus, form:not(.search-form) textarea:focus {
    border-color: var(--primary-light);
    outline: none;
}
.gfield_label { transition: color 150ms ease; }

.gfield_label:has( ~ .ginput_container input:focus, ~ .ginput_container select:focus, ~ .ginput_container textarea:focus ) {
    color: var(--primary-light);
}

textarea { display: block; }

.gfield {
    margin-bottom: 1rem;
}
.gform_wrapper.gravity-theme fieldset.gfield {
    margin-bottom: 1rem;
}
.gchoice { 
    display: flex; align-items: center; flex-wrap: nowrap; gap: 0.5rem; line-height: 1.2; margin-bottom: 0.5rem; 
}
.gchoice label {
    width: 100%;
}
.gchoice label, .gchoice input {
    cursor: pointer;
}
.gchoice br {
    display: none;
}

.ginput_complex br { display: none; }
.ginput_complex label {opacity: 0.9;font-size: var(--fs-s1) !important;}
.ginput_complex span {
    margin-bottom: 1rem !important;
}

body .gform_wrapper.gravity-theme .gfield_label {
    font-weight: var(--fw-book);
    font-size: var(--fs-base);
    margin-bottom: 0.5rem;
}

body .gform_wrapper.gravity-theme .gform_footer {
    padding: 0;
    margin: 1rem 0 0;
    display: block;
}
.gform_footer p:last-child {
    display: none;
}

form:not(.search-form) input[type*="submit"] {
    background-color: var(--black);
    color: var(--white);
    padding-inline: 2rem;
    padding-block: 0.5rem;
    border-radius: 2rem;
    transition: all 150ms ease;
    cursor: pointer;
    font-weight: var(--fw-book);
    min-width: 12rem;
    transition: all 150ms ease;
}
form:not(.search-form) input[type*="submit"]:hover {
    background-color: var(--primary-dark);
}

form input[type*="file"] {
    border: none;
    padding-left: 0 !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0 !important;
}
input[type="file" i]::-webkit-file-upload-button {
    border-radius: 2rem;
    border: solid 1px var(--black);
    padding-inline: 2rem;
    padding-block: 0.5rem;
    background-color: var(--white);
    margin-right: 1rem;
    cursor: pointer;
    transition: all 150ms ease;
}
input[type="file" i]::-webkit-file-upload-button:hover {
    color: var(--primary-light);
    border-color: var(--primary-light);
}

.ginput_container_consent {
    display: flex;
    align-items: flex-start;
    flex-wrap: nowrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}
.ginput_container_consent input { line-height: var(--base-line-height); margin-top: 0.25rem } 
.ginput_container_consent label { cursor: pointer; }

body .gform_wrapper .gfield_required {
    color: var(--black);
    opacity: 0.8;
    font-style: normal;
}
body .gform_wrapper .gfield_required .gfield_required_custom, 
body .gform_wrapper .gfield_required .gfield_required_text {
    font-style: normal;
}

body .gform_wrapper .gfield_validation_message, .gform_wrapper .validation_message {
    border-color: var(--warning);
    color: var(--warning);
    background-color: var(--warning-light);
}
body .gform_wrapper .gform_validation_errors {
    border-color: var(--warning);
    color: var(--warning);
    background-color: var(--warning-light);
    border-radius: 0;
    margin-bottom: 2rem;
    box-shadow: none;
}
body .gform_wrapper .gform_validation_errors h2 {
    font-family: var(--ff-sans);
    font-size: var(--fs-h6);
    line-height: var(--base-line-height);
}
.gform_wrapper .gfield_error [aria-invalid=true] {
    border-color: var(--warning) !important;
    color: var(--warning) !important;
}
.gform_wrapper .gfield_error .gfield_repeater_cell label, .gform_wrapper .gfield_error label, .gform_wrapper .gfield_error legend, .gform_wrapper .gfield_validation_message, .gform_wrapper .validation_message, .gform_wrapper [aria-invalid=true]+label, .gform_wrapper label+[aria-invalid=true] {
    color: var(--warning) !important;
}

form .gform_drop_area {
    background-color: transparent;
    border-radius: 1rem;
    border-width: 2px;
    border-style: dashed;
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    gap: 0rem;
}
form .gform_drop_area .gform_drop_instructions { margin-bottom: 0;}
form .gform_drop_area br { display: none; }

form .gform_drop_area .gform_button_select_files {
    background-color: transparent;
    border: none;
    font-weight: bold;
    cursor: pointer;
}

form:not(.search-form) input:not([type="checkbox"],[type="radio"]), 
form:not(.search-form) select, 
form:not(.search-form) textarea {
    opacity: 0.8;
}

body .gform_wrapper.gravity-theme .gfield_checkbox label, 
body .gform_wrapper.gravity-theme .gfield_radio label {
    font-size: var(--fs-base);
}


.custom-password-form {
    position: fixed;
    z-index: 999999;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(0,0,0,0.8);
    backdrop-filter: blur(3px);

    display: flex;
    align-items: center;
    justify-content: center;
}
.custom-password-form .inner {
    background-color: var(--white);
    padding: 1rem;
    border-radius: 1rem;
    max-width: 24rem;
    text-align: center;
}
.custom-password-form .post-password-form label {
    display: block;
    margin-bottom: 1rem;
}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/_tablet.css?v=2.1 */
@media screen and (max-width: 1040px) {
	.nav-header-utility li:not(.menu-item-btn) {
		display: none;
	}
}

@media screen and (max-width: 860px) {
    :root {
        --base-font-size : 16px;
        --xy-gutter : 2rem;

        --fs-h1: 2.441rem;
        --fs-h2: 1.953rem;
    }
    /* Global */
    h1 { margin-bottom: 1rem; }

    /* Nav */
    nav.header-auxiliary-nav { display: none; }

    nav.header-primary-nav.nav-style_centred .nav-inner .xy-col:first-child { display: none; }
    nav.header-primary-nav.nav-style_centred .nav-inner .xy-col:last-child { margin-left: auto; }
    nav.nav-style_centred img.logo {margin-left: 0;}


    nav.header-primary-nav.nav-style_left .nav-inner .xy-col:nth-child(2) { display: none; }
    nav.header-primary-nav.nav-style_left .nav-inner .xy-col:last-child { margin-left: auto; }

    header.header-alternative.has-image .text-wrapper {
        padding-block: 1rem;
    }


    #megaMenuMobile { display: block; }
    #megaMenu { display: none; }
    .nav-mega {display: block;overflow-x: hidden;overflow-y: scroll;} 

    header .vh100 {
        min-height: calc(100vh - 6rem);
        min-height: calc(100svh - 6rem);
    }



    footer .xy-grid:first-child .xy-col:first-child {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-content: flex-start;
        justify-content: flex-start;
        align-items: flex-start;

    }
    footer .xy-grid:first-child .xy-col > * {
        order: 2;
    }
    footer .xy-grid:first-child .xy-col > .footer-logo {
        order: 1;
    }
    footer .footer-logo img {
        margin-top: 0;
        margin-bottom: 3rem;
    }

    /* Mega Nav */
    .mega-menu-footer {
        --xy-row-gap : 0.25rem;
    }
    .mega-menu-footer .xy-col:nth-child(2) { --start: 1;}
    .mega-menu-footer .xy-col:last-child {
        --row-span : 2;
        --start: 7;
        --row: 1;
    }
    .mega-menu-footer p { margin-bottom: 0; }

    .nav-mega .sub-menu {position: static;width: 100%;left: 0;padding-left:  1rem;/* padding-top: 2rem; *//* margin-bottom: 4rem; */border-left: 0;}

    .nav-mega .sub-menu > :first-child {
        padding-top: 2rem;
    }

    .nav-mega .sub-menu > :last-child {
        margin-bottom: 1rem;
    }

    .nav-mega .sub-menu .sub-menu > :last-child {
        margin-bottom: 1rem;
    }

    .nav-mega .sub-menu .sub-menu > :first-child {
        padding-top: 1.5rem;
    }
    .nav-mega .sub-menu .sub-menu {padding-left:  0rem;margin-bottom: 0rem;opacity: 0.8;}
    .nav-mega .sub-menu .sub-menu li { font-size: var(--fs-h5); }

    .open .nav-mega .menu > li {
        font-size: var(--fs-h3);
    }

    .nav-header-utility .menu-item {
        display: none;
    }


    /* Blocks */
    .block.text-block__quote, .block.text-block__text, .block.images-block__carousel-gallery, .block.images-block__images, .block.cards-block__feature, .block.cards-block__image-cards, .block.text-block__tabs, .block.text-block__list-items, .block.text-block__para-list, .block.cards-block__article-list {
        padding-block: 5rem;
    }


    .block.cards-block__feature {
        padding-block: 7rem;
    }
    .block.cards-block__feature .image-wrapper img {
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }
    .block.cards-block__feature .text-wrapper {
        padding: 1rem;
    }

    .cards-block__image-cards.style-image-icon .heading-group { text-align: left;}
    .cards-block__image-cards.style-image-icon .button-row {
        text-align: right;
    }
    .cards-block__image-cards.style-image-icon .button-row .btn:not(:first-child) {
        margin-top: 1rem;
    }

    .card-wrapper + div .button-row {
        margin-top: 1rem;
        text-align: center;
    }
    .post-carousel {
        --item-cols: 6;
    }
    .post-carousel .flickity-prev-next-button {bottom: -5rem;}
    .card.carousel-cell .card-content {min-height: 22rem;}

    .gallery-wrapper .image-wrapper {/* max-height: 60vh; */}
    .gallery-wrapper figure figcaption { opacity: 1; bottom: 0.5rem; }


    .block.text-block__image_text.image-full .image-wrapper {justify-content: center;}
    .block.text-block__image_text.image-full .image-wrapper img {
        max-width: calc(100% + var(--xy-gutter)*2);
        width: calc(100% + var(--xy-gutter)*2);
    }
    .block.text-block__image_text.image-full.image-right .image-wrapper img {
        transform: translate(calc(var(--xy-gutter) * -1), 0);
    }
    .block.text-block__image_text.image-full.image-right .text-wrapper {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    .block.text-block__image_text.image-inset .text-wrapper {
        padding-top: 2rem;
        padding-bottom: 2rem;
        
    }
    .block.text-block__image_text.image-full {
        /* padding-top: 2rem; */
        padding-bottom: 4rem;
    }
    .block.text-block__image_text.image-inset {
        padding-block: 5rem;
    }
    .text-block__image_text.image-full .text-wrapper {
        padding-block: 2rem;
    }

    .cards-block__image-cards.style-lines .xy-grid.card-wrapper,
    .cards-block__image-cards.style-underlined-icon .xy-grid.card-wrapper {
        row-gap: 3rem;
    }

    .block.text-block__image_text.image-right .text-wrapper { --row: 2; }
    
    .gallery-carousel .flickity-page-dots {
        width: 50%;
        right: var(--xy-gutter);
        display: flex;
        flex-wrap: nowrap;
        gap: 0.25rem;
        bottom: 0.5rem;
    }
    .gallery-carousel .flickity-page-dots .dot {
        width: 100%;
        margin: 0rem;
    }

    .faq-wrapper.faq-grid, .faq-wrapper.faq-expanded {
        margin-top: 2rem;
        row-gap: 3rem;
    }
    .block.cards-block__article-list {
        padding-bottom: 6rem;
    }
    .block.image-full .video {
        height: calc( 100vw / ( 16 / 9) );
        max-width: 100vw;
        width: 100vw;
        /* align-self: center; */
    }

    .block.image-full .video.vimeo {
        max-width: 100%;
        height: auto;
    }
    .block.image-inset iframe.video {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }
    .block.text-block__upcoming-events > .xy-grid  > .xy-grid { row-gap: 3rem;}
    .block.text-block__upcoming-events .events-image-col { order: 2;}

    .single-post .prose img.aligncenter,
    div.gallery.gallery-style-expanded {
        --_expand: calc(var(--xy-gutter) * 1.5);
        translate: 0;
    }
    div.gallery.gallery-style-expanded.gallery-columns-2 {
        --_expand: calc(var(--xy-gutter) * 1);
    }
}
/* Import rule from: https://maitlandasc.catholic.edu.au/wp-content/themes/cso-master/css/_mobile.css?v=2.1 */
@media screen and (max-width: 750px) {


    /* Nav */
    .mega-menu-footer {height: 5rem;padding-block: 1rem;}
    .mega-menu-footer .xy-col:last-child { display: none; }
    .mega-menu-footer .xy-col:nth-child(2) { --start: auto; }

    .nav-mega { min-height: 0; }
    .mega-menu-inner .nav-mega ul.menu {min-height: calc(100vh - 16rem - 6rem - 2rem - 0.75rem);height: auto !important;}

    header.has-slider .header-slide .header-slider-image:has(~ .header-slide-image-mobile ) { display: none;}
    header.has-slider .header-slide .header-slider-image.header-slide-image-mobile { display: block; }


    .block.text-block__tabs .tab-wrapper {
        display: block;
    }
    .block.text-block__tabs .tab-header {
        display: flex;
        align-items: flex-end;
        align-content: flex-end;
        justify-content: flex-start;
        flex-wrap: nowrap;
        flex-direction: column;
        margin-bottom: 2rem;
    }
    .block.text-block__tabs .tab-header__item {
        margin-bottom: 0;
        /*font-size: var(--fs-s1);*/
        border-bottom: 0;
        width: 100%;
    }
    .block.text-block__tabs .tab-header__item:last-child {
        border-bottom: solid 1px var(--text-color);
    }
  
    .block.text-block__tabs .tab-header__item svg {
        display: none;
    }
}


@media screen and (max-width: 479px) {
    :root {
        --xy-gutter : 1rem;
    }
    
    /* Nav */
    /* Center nav on mobile */
    nav img.logo, aside img.logo {
        margin-inline: auto;
    }
    .header-primary-nav .nav-inner.xy-flex, .mega-menu-header {
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
    .nav-header-utility ul {
        justify-content: center;
    }
    .mega-menu-header:after { position: relative; }
    .mega-menu-header {
        height: auto;
        gap: var(--xy-row-gap);
        margin-bottom: 0;
        padding-block: 1.25rem;
    }
    .nav-mega {
        padding-top: 0;
        padding-bottom: 0;
    }
    .header-primary-nav .nav-inner.xy-flex { padding-inline:0;}

    nav.header-auxiliary-nav + aside.mega-menu-wrapper .nav-header-utility, nav.header-auxiliary-nav + aside.mega-menu-wrapper.open.closing .nav-header-utility, nav.header-auxiliary-nav + aside.mega-menu-wrapper .logo, nav.header-auxiliary-nav + aside.mega-menu-wrapper.open.closing .logo {
        transform: translate(0,0);
    }
    .nav-header-utility {
        padding-top: 0;
    }
    #menu-mega-menu {
        max-height: 55vh;
        max-height: 55svh;
    }


    .nav-footer-auxiliary ul { 
        justify-content: flex-start;
        flex-wrap: wrap;
        flex-direction: column;
        gap: 1rem;
     }
    footer .xy-grid { row-gap: 1.5rem; }
    footer .xy-grid:last-child { padding-block: 2rem; }
    ul.in-page-nav-list .in-page-nav-item:not(:last-child) {
        border-right: none;
    }

    .site-search-outer .search-form {
        max-width: 100%;
    }

    .site-search-outer .search-form > label {
        max-width: calc(100% - 3rem);
    }

    /* Blocks */
    .gallery-wrapper figure figcaption { display: none; }

    .post-carousel {
        --item-cols: 12;
    }
    
    .gallery {
        display: block;
    }
    .gallery figure {
        margin-bottom: 0rem;
    }
    .gallery img { margin-inline: auto; }
    .gallery-caption.wp-caption-text { margin-top: 0.25rem; text-align: center; }

    /* Header */
    .site > header.header-alternative.has-image > .xy-flex {
        flex-direction: column-reverse;
    }
    .site > header.header-alternative.has-image .image-wrapper {
        align-items: center;
        align-content: center;
        align-self: center;
        display: flex;
        justify-content: center;
    }
    .site > header.header-alternative.has-image img.full-bleed {
        max-width: 100vw;
        width: 100vw;
        aspect-ratio: auto;
    }
    .block.cards-block__feature {
        padding-block: 2rem;
    }

    .cards-block__image-cards.style-image-icon .text-wrapper {
        flex-direction: column;
    }
    .cards-block__image-cards.style-image-icon .text-wrapper .heading-group {
        text-align: center;
    }
    .cards-block__image-cards.style-image-icon .text-wrapper .button-row {
        margin-block: 1rem;
    }
    .gallery-carousel .flickity-page-dots { display: none; }

    .block.cards-block__feature > .xy-grid {
        row-gap: 0rem;
    }
    .block.cards-block__feature .text-wrapper {
        padding: 2rem 1rem;
    }

    .vertical-spacer { display: none; }

    .breadcrumbs-list {
        flex-direction: column;
        gap: 1rem;
    }
    .breadcrumbs-list .spacer {
        display: none;
    }

    .single-post .prose img.aligncenter,
    div.gallery.gallery-style-expanded,
    div.gallery.gallery-style-expanded.gallery-columns-2 {
        --_expand: 0rem;
    }
    div.gallery {
        --gallery-cols : 2;
    }
    .lightbox {
        padding: var(--xy-gutter);
    }
    .lightbox .lightbox-content {
        max-width: 100%;
        max-height: 100%;
    }

    .lightbox-dots { 
        transform: translateX(-50%) translateY(-50%);
    }
    .lightbox-buttons { 
        width: 100%;
        left: 0;
        display: flex;
        justify-content: space-between;
    }

    .lightbox-prev, .lightbox-next {
        transform: translateY(-25%);
        padding-block: 0;
    }
}/*!
Theme Name: Catholic Schools Office - Maitland Newcastle Theme
Theme URI: https://beech.agency/
Author: Beech Agency
Author URI: https://beech.agency/
Description: A theme for the Catholic Schools Office Maitland Newcastle's High Schools
Version: 2.3
Tested up to: 6.3
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: csomaster
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

csomaster is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

--------------------------------------------------------------*/