@font-face {
    font-family: 'rockness';
    src: url('../fonts/rockness.woff2') format('woff2'),
         url('../fonts/rockness.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

/* Normalise CSS */
html{line-height:1.4;-webkit-text-size-adjust:100%}main{display:block}h1{font-size:2rem;margin:.67rem 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1rem}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1rem}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25rem}sup{top:-.5rem}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
fieldset{padding:.35rem .75rem .625rem}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* Framework */
html, body {min-width:320px;color:#FFF;font-size:16px;font-weight:400;font-family: "freight-display-pro", serif;line-height:1.4;position:relative;display:block;overflow-x:hidden;min-height:100vh;margin:0;padding:0;border:0;background-color:#141C30;}
* {box-sizing:border-box;outline-color: #FFECBA;}
img {display:block;max-width:100%;}
p:first-child {margin-top:0;}
p:last-child {margin-bottom:0;}
h1,h2,h3,h4,h5 {margin:0;}
a {color:inherit;text-decoration: none;}
body[data-input-method="mouse"] * {outline:none !important;}

section img {width:100%;}
section, footer, header {display:block;}
section > .container, header > .container, footer > .container {margin:auto;display:block;position:relative;}
section > .container.full, header > .container.full, footer > .container.full {max-width:2200px;}
section > .container.main, header > .container.main, footer > .container.main {width:min(2000px, calc(100% - 40px));padding:0px 20px;}
section > .container.narrow, header > .container.narrow, footer > .container.narrow {width:min(1500px, calc(100% - 160px));padding: 0px 20px;}

ul.pagination{display:flex;flex-direction:row;align-items:center;justify-content:center;margin:20px 0 60px 0;padding:0;}
ul.pagination li{margin:0;padding:0;list-style:none;}
ul.pagination li a{display:block;padding:0 6px;color:#FFF;text-decoration:none;font-size:1.5rem;font-weight:600;}

.skip-to-content {display:block;position:absolute;top:-9999px;outline:none;width:100%;background-color:#FFECBA;color:#000000;font-weight:500;text-align: center;font-size:18px;left:0;right:0;padding:10px;}
.skip-to-content:focus {top:0;position:relative;}

header {height:66px;z-index:5;position:relative;}
header .wrapper {display:grid;grid-template-columns: 200px 1fr;gap:40px;border-bottom:1px solid #FFECBA;padding:10px 0px;}
header .navigation > ul {list-style: none;height:100%;align-items:center;padding:0;margin:0;display:flex;flex-direction: row;flex-wrap: nowrap;gap:20px;justify-content: right;}
header .navigation > ul a, header .navigation > ul button {appearance:none;background-color:transparent;border:0;display:block;padding:8px 20px;font-size:18px;color:#FFF;font-weight:500;}
header .navigation > ul > li:last-child a {background-color:#FFECBA;color:#000000;border-radius:10px;}
header .navigation li {position:relative;}
header .navigation > ul li.has-submenu button {padding:8px 40px 8px 20px;background-image:url('../core/SubMenuIcon.svg');background-position: calc(100% - 10px) center;background-repeat: no-repeat;background-size:auto 10px;}
header .navigation > ul li.has-submenu.open .sub-nav-menu {display:block;}
header .sub-nav-menu {position:absolute;z-index:10;width:200px;display:none;margin-left:calc(50% - (200px / 2));}
header .sub-nav-menu::before {content:'';display:block;height:20px;width:20px;background-color:#1F322F;margin:auto;transform:rotate(45deg);}
header .sub-nav-menu .container {padding:30px 20px;width:100%;background-color:#1F322F;list-style: none;margin:0;font-size:18px;display:block;margin-top:-11px;}

.header-media {margin-top:-66px;display:grid;align-items: center;min-height:66px;}
.header-media .image {grid-column: 1;grid-row:1;display:block;z-index:0;height:100%;position:relative;}
.header-media img {opacity: 0.3;width:100%;object-fit: cover;height:100%;width:100%;}
.header-media .text-overlay {padding:86px 20px 40px 20px;display:flex;gap:10px;flex-direction:column;align-items:center;justify-content:center;height:100%;grid-column:1;grid-row:1;z-index:1;width:100%;max-width:700px;margin:auto;text-align: center;}
.header-media h1 {font-size:60px;font-weight:400;font-family:'brandon-grotesque';line-height:130%;}
.header-media .text-content {font-size:22px;font-weight:500;}

footer .main-contents {margin-top:20px;display:grid;grid-template-columns: repeat(3, 1fr);gap:40px;row-gap:20px;border-top:1px solid #FFECBA;border-bottom:1px solid #FFECBA;padding:40px 0px;}
footer .footer-heading {grid-column: span 3;font-size:50px;font-family: 'rockness';-webkit-font-smoothing: antialiased;font-weight:400;color:#FFECBA;}
footer .address-block, footer .telephone {font-size:20px;font-weight:700;}
footer .social-heading, footer .page-heading {font-size:20px;font-weight:700;margin-bottom:20px;}
footer .social-heading {color:#FFECBA;}
footer .page-heading {margin-bottom:10px;}
footer .social-icons {display:flex;flex-direction: row;gap:20px;}
footer .social-icon {display:block;width:30px;height:30px;background-repeat: no-repeat;background-position: center;background-size:contain;border-radius:7px;}
footer .social-icon.instagram {background-image:url('../core/Social-Instagram.svg');}
footer .social-icon.x {background-image:url('../core/Social-X.svg');}
footer .social-icon.facebook {background-image:url('../core/Social-Facebook.svg');}
footer .footer-page-list {list-style: none;padding:0;margin:0;display:flex;flex-direction: column;}
footer .footer-page-list a {font-size:20px;font-weight:500;padding:5px 0px;display:inline-block;position:relative;}
footer .footer-page-list a::after {content:'';display:block;width:0;height:1px;background-color:#FFECBA;transition:width .25s ease-in-out;position:absolute;bottom:0;left:0;}
footer .footer-page-list a:hover::after {width:100%;cursor: pointer;}
footer .copyright-line {padding:15px 0px;justify-content:center;display:flex;flex-direction: row;gap:20px;font-size:15px;font-weight:500;}
footer .copyright-line a {display:inline-block;}
footer .copyright-line .sep {height:20px;width:1px;background-color:#FFECBA;display:inline-block;}

/* Mobile Nav */
.mobile-nav-panel {display:none;position:absolute;right:0;top:0;width:100%;max-width:360px;}
.mobile-nav-panel.open {display:block;}
.mobile-nav-panel .main-panel, .mobile-nav-panel .sub-panel {position:absolute;width:100%;min-height:100vh;top:0;right:0;background-color:rgba(20, 27, 47, 0.95);border-left:1px solid #FFECBA;display:flex;flex-direction: column;align-items: center; gap:10px;padding:20px 40px 60px 40px;z-index:100;}
.mobile-nav-panel .sub-panel {display:none;z-index:101;}
.mobile-nav-panel .sub-panel.open {display:flex;}
.mobile-nav-panel .sub-panel .panel-nav {justify-content: start;}
.mobile-nav-panel .main-panel .buttons {flex-direction: column;gap:10px;flex-wrap: unset;width:220px;text-align: center;margin-top:10px;}
.mobile-nav-panel .mobile-nav {list-style: none;width:100%;}
.mobile-nav-panel .mobile-nav ul{padding:0;margin:0;list-style:none;}
.mobile-nav-panel .mobile-nav li {border-bottom:1px solid #707070;}
.mobile-nav-panel .mobile-nav li a, .mobile-nav-panel .mobile-nav li button {appearance: none;display:block;border:0;color:#FFF;background-color:transparent;padding:0;text-align: left;text-decoration: none;font-weight: 600;font-size:20px;padding:15px 0px 6px 0px;width:100%;}
.mobile-nav-panel .mobile-nav li:hover {cursor: pointer;border-bottom:1px solid #FFECBA;}
.mobile-nav-panel .mobile-nav li a:hover, .mobile-nav-panel .mobile-nav li button:hover {cursor: pointer;}
.mobile-nav-panel .panel-nav {width:100%;display:flex;flex-direction: row;justify-content: end;font-size:20px;}
.mobile-nav-panel .close-button {appearance: none;border:0;background-color:transparent;padding:5px 35px 5px 10px;color:#FFF;position:relative;border:1px solid transparent;border-radius:5px;}
.mobile-nav-panel .close-button::after {content:'';position:absolute;top:0;bottom:0;right:0;height:100%;aspect-ratio: 1/1;display:block;background-image:url('../core/close.svg');background-position: center;background-repeat: no-repeat;background-size:contain;filter:invert(1);}
.mobile-nav-panel .close-button:hover {border:1px solid #FFECBA;cursor: pointer;}
.mobile-nav-panel .back-button {appearance: none;border:0;background-color:transparent;padding:5px 10px 5px 30px;color:#FFF;position:relative;border:1px solid transparent;border-radius:5px;}
.mobile-nav-panel .back-button::before {content:'';position:absolute;top:0;bottom:0;left:0;height:100%;aspect-ratio: 1/1;display:block;background-image:url('../core/caret.svg');background-position: center;background-repeat: no-repeat;background-size:auto 50%;filter:brightness(0) invert(1);}
.mobile-nav-panel .back-button:hover {border:1px solid #FFECBA;cursor: pointer;}

.mobile-nav-button {display:none;}
.mobile-nav-button button {position:absolute;border-radius:2px;top:15px;right:20px;height:45px;width:45px;appearance: none;background-image:url('../core/menu.svg');background-repeat: no-repeat;background-position: center;background-size:contain;background-color:transparent;border:none;filter:invert(1);}
.mobile-nav-button button:hover, body[data-input-method="keyboard"] .mobile-nav-button button:focus {cursor: pointer;}


@media (max-width:1920px)
{
    section > .container.main, header > .container.main, footer > .container.main {width:min(1600px, calc(100% - 40px));}
    section > .container.narrow, header > .container.narrow, footer > .container.narrow {width:min(1366px, calc(100% - 160px));}
}

@media (max-width:1200px)
{
    header .navigation {display: none;}
    .mobile-nav-button {display:block;}
}

@media (max-width:1100px)
{
    .header-media h1 {font-size:40px;}
    .header-media .text-content {font-size:20px;}
    .header-media[data-content="true"] {height:75vh;}
}

@media (max-width:920px)
{
    footer .main-contents {grid-template-columns: repeat(2, 1fr);}
    footer .footer-heading {grid-column: span 2;}
}

@media (max-width:720px)
{
    section > .container.main, header > .container.main, footer > .container.main {width:100%;}
    section > .container.narrow, header > .container.narrow, footer > .container.narrow {width:100%;}

    footer .copyright-line .sep {display:none;}
    footer .copyright-line {flex-direction: column;}
}

@media (max-width:580px)
{
    footer .main-contents {grid-template-columns: 1fr;text-align:center;}
    footer .footer-heading {grid-column: 1;}
    footer .social-icons {justify-content: center;}
    footer .copyright-line {text-align:center;}
}

@media (max-width:450px)
{
    footer .footer-heading {font-size:40px;}
}