/*
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800;900&family=Inter:wght@300;400;600&display=swap');
*/

@font-face {font-display: swap; font-family: 'Montserrat';font-style: normal;font-weight: 400 900;src: url('/assets/fonts/montserrat.woff2'), local("Montserrat") format('woff2');}
@font-face {font-display: swap; font-family: 'Inter';font-style: italic;font-weight: 100 900;src: url('/assets/fonts/inter.woff2'), local("Inter") format('woff2');}

:root {
    --primary: oklch(0.51 0.21 28.83); /* Broadcast Red */
    --primary-dark: oklch(0.45 0.17 17.22);
    --white: #ffffff;
    --off-white: #f1f1f1;
    --grey: #a4a4a4;
    --dark-grey: #71717a;
    --charcol: #3f3f46; 
    --black: #18181b;
}

@media (prefers-reduced-motion: reduce) {
*, ::before, ::after {animation-delay: -1ms !important;animation-duration: 1ms !important;animation-iteration-count: 1 !important;background-attachment: initial !important;scroll-behavior: auto !important;transition-delay: 0s !important;transition-duration: 0s !important;}
}

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
.sreen-reader-only {position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}
#skip a {position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}
#skip a:focus {position:static;width:auto;height:auto;}

:target {scroll-margin-top: 2rem;}

body {font-family: 'Inter',system-ui, arial, serif;color: var(--black);margin: 0;padding: 0;line-height: 1.7;}
h1,h2,h3,h4,h5,h6, .font-heading {margin: 0;padding: 0;font-weight: 900;line-height: 1;text-wrap:balance;font-family: 'Montserrat', sans-serif;text-transform: uppercase;}
h1 {font-size: clamp(2.75rem, 8vw, 6rem);letter-spacing: -0.05em;margin-bottom: 2rem;}
h1 span {color: var(--primary);}
h2 {font-size: 1.75rem;color:var(--white); margin-block: 2rem 1rem;}

hr {margin: 1.5rem;}
a {color: var(--prime-500);padding-inline: .2em; transition: all .5s ease-out;}
a:hover {text-decoration: none;}
p a:hover, ul a:hover {background: var(--prime);color: var(--black);padding-inline: .2rem;text-decoration: none;}
a:hover img {background: inherit;padding-inline: .2rem;box-sizing: border-box;}
p a[href^="https"]:after, li a[href^="https"]:after {content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1em' height='1em' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2318181b' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 6H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-6m-7 1l9-9m-5 0h5v5'/%3E%3C/svg%3E");padding: 0 0 0 .25em;}
:focus {outline:2px solid var(--white);}
a:focus img{outline:2px auto var(--white); outline-offset: 2px;}
sub {display: inline-block;max-width: 85ch;line-height: 1.3;}

.left {float:left;margin: auto;padding: 1rem;}
.right {float: right;margin: auto;padding: 1rem;corner-shape: squircle;border-radius: 4rem;}
.right-right {float: right;margin: auto;padding: 1rem;corner-shape: squircle;border-radius: 4rem;max-width:40%;}
.img-center {margin: 3rem auto;display: block;corner-shape: squircle;border-radius: 4rem;}
.youtube{display: block;width: 100%;max-width:70ch;aspect-ratio: 560 / 315;height: auto;}

article {container-type: inline-size;container-name: main-article;}
article h2:first-of-type:not(p + h2), article p:not(p + p)  {margin-block-start: 0;}
article ol, article ul {max-width: 70ch;margin: .5rem 0 1rem 0;}
article p {max-width:70ch;text-wrap:pretty;letter-spacing: 0.5px;}
img {max-width: 100%;height: auto;vertical-align: middle;font-style:italic;background-repeat:no-repeat;background-size:cover;shape-margin:1rem;}
blockquote {font-style: italic;margin: 0.25rem auto;padding: 0.25rem 2.5rem;position: relative;}
blockquote:before {content: "\201C";font-size: 5rem;position: absolute;left: -3px;top: -20px;color: var(--primary);}

/**************SYSTEM ERROR PAGE****************************************************/
.system-page, .system_page {padding:130px 10px; text-align:center;}
.system-page p, .system_page p {margin:2rem auto 4rem;}
.system_form {margin-inline: auto;max-width: 400px;text-align: left;}
.system_table {margin:auto;}
.system_page .big_letter {font-size: 5em;color: var(--dark-red);}
.system_svg{width:45px;height:45px;margin:0 auto 35px;display:block}
.system_table td:nth-child(1) {text-align: right;padding:.25rem;}
.system_table td:nth-child(2) {text-align: left;padding:.25rem;}


/**************     NAVIGATION     **********/
nav.main { position: fixed;width: 100%;top: 0;background-color: oklch(1 0 0 / 0.95);z-index: 3;backdrop-filter: blur(4px);box-shadow: 0 1px 2px 0px rgb(0 0 0 / 0.05);}
.nav-container {display: flex;justify-content: space-between;align-items: center;max-width: 1280px;margin-inline: auto;padding-inline: 1rem;}
.nav-container img {width: 175px;}
.nav-dropdown > [aria-haspopup]:after { content: "\25BE"; font-size: 1.3rem;line-height: 1;padding-inline: 4px;display: inline-block;transition: transform 0.2s ease;}
.nav-dropdown > [aria-expanded="true"]:after { transform: rotate(180deg); }
.selected > a:first-of-type, .selected > span:first-of-type, .side-nav .selected { color: var(--white); background-color: var(--primary-dark); }
.main ul {padding: 0; list-style-type: none; max-width: 1280px; display: flex; justify-content: flex-end; }
.main ul li {display: block; position: relative;}
.main ul li a, .main ul li span { text-decoration: none; display: block; padding: .625rem 1.25rem .5rem; font-size: .9rem;font-weight: 500; cursor: pointer;text-align: left; color: var(--black);transition: all .5s ease-out;text-transform: uppercase;border-bottom: 2px solid transparent;}
.main ul li a:hover, .main ul li span:hover, .main button:hover, .highlight a:hover, .mobile-menu-wrapper a:hover {background-color: var(--white-800);color: var(--primary);border-bottom: 2px solid var(--primary); }
.main button#mobile_btn:hover {     background-color: var(--primary);color: var(--white); }
/* Submenu Styling */
.main ul ul { position: absolute; z-index: 100; min-width: 220px; width: max-content;display: none; flex-direction: column;text-align: left; background: var(--white); box-shadow: 0 4px 12px rgba(0,0,0,0.15); border-radius: 0 0 8px 8px; overflow: hidden; left: 50%; transform: translateX(-50%); }
.main ul ul li { width: 100%; }
.main ul ul li a { color: var(--black); width: 100%; padding: 0.8rem 1.5rem; border: none; }
/* Mobile Styles */
.main button#mobile_btn {font-family: inherit;font-size: 1.3rem;font-weight: 500;cursor: pointer;display: none;padding: 1.435rem 1.25rem;color: inherit;background: none;border: none;align-items: center;gap: 8px;line-height: 1.45;}
.highlight a {background-color: var(--primary);color: var(--white)!important;}
.highlight a:hover {background-color: var(--primary-dark) !important;}
.mobile-menu-wrapper a {display:none;}
@media(max-width: 720px) {
    .nav-container {padding-inline: 1rem 0;}
    .mobile-menu-wrapper {display: flex;}
.main button#mobile_btn { display: flex; margin-left: auto; }
.main ul#main-menu { display: none; flex-direction: column; background: var(--white); position: absolute; top: 60px; right: 0; box-shadow: 0 4px 10px rgba(0,0,0,0.1); z-index: 10;}
.main ul#main-menu.mobilenav { display: flex; min-width: 350px;}
.main ul li { width: 100%; border-bottom: 1px solid var(--white); }
.main ul ul { position: static; left: 0; transform: none; width: 100%; box-shadow: none; border-radius: 0; background-color: var(--white); }
.main ul ul li a { padding-left: 2.5rem; box-sizing: border-box;}
}

/**********     HERO SECTION     *********/
.hero-section {display: flex;align-items: center;min-height: 750px;padding-inline: 10%;background: linear-gradient(to right, rgba(9, 9, 11, 0.95), rgba(9, 9, 11, 0.7)), url(/assets/images/hero-background.jpg);background-size: cover;background-position: center;}
@media (width < 640px) {
.hero-section {min-height: 800px;}
}
.hero-container {padding-top: 4rem;max-width: 64rem;}
.hero-container h1 {color: var(--white);}
.location-bubble {padding: 0.375rem 1rem;background-color: rgb(190 18 60 / 0.2);border: thin solid rgb(190 18 60 / 0.5);border-radius: 9999px;display: inline-flex;margin-block-end: 2rem;color: rgb(251 113 133);letter-spacing: clamp(.15rem, .6vw, .25rem);text-transform: uppercase;font-weight: bold;font-size: .7rem;}
.hero-container p {font-size: clamp(1.125rem, 2vw, 1.5rem);line-height: 1.4;color: var(--grey);font-weight: 300;max-width: 42ch;margin-bottom: 3rem;}

/**********     BUTTONS     *********/
.button-wrapper {display: flex;gap: 1.5rem;}
@media (width < 640px) {
    .button-wrapper {flex-direction: column;}
}
.large-btn {letter-spacing: 0.1em;text-transform: uppercase;font-weight:900;font-size: clamp(0.7rem, 2vw, 0.875rem);padding: 1.25em 2em;border-radius: 0.25rem;text-decoration: none;text-align:center;}
.large-btn:hover {background-color: var(--primary-dark);color:var(--white);border:thin solid var(--primary-dark);}
.red-btn {background-color: var(--primary);color: var(--white);border: thin solid transparent;}
.trans-btn {background-color: transparent;color: var(--white);border: thin solid var(--white);}

/**********     MARKET SECTION     *********/
.market-section {padding-block: 6rem;padding-inline: 5%;background-color: var(--off-white);}
.market-container {max-width: 80rem;margin-inline: auto;}
.market-head {text-align: center;margin-block-end:5rem;}
.market-head h2 {color:var(--primary);letter-spacing: 0.3em;font-weight: 700;font-size: 0.75rem;margin-block-start: 1rem;}
.market-head h3 {font-size: clamp(2.25rem, 6vw, 3.75rem);letter-spacing: -0.05em; margin-block-start: 1rem;}
.market-wrapper {margin-bottom: 6rem;}
.market-title {padding-bottom: 1rem;border-bottom: 3px solid var(--black);display: flex;justify-content: space-between;align-items: center;margin-block-end: 2rem;}
.market-title h4 {letter-spacing: -0.05em;font-style: italic;font-size: 1.875rem;}
.market-title .flag {letter-spacing: 0.1em;text-transform: uppercase;font-weight: 700;font-size: 0.75rem;padding: 0.25rem .5rem;}
.market-text {color: var(--black);letter-spacing: 0.1em;text-transform: uppercase;font-weight: 500;font-size: 0.75rem;margin-bottom: 2rem;}
.flag-red {color:var(--white);background-color:var(--primary);}
.flag-black {color:var(--white);background-color:var(--black);}
.station-container {display: flex;gap: 1rem;flex-wrap: wrap;justify-content: center;}
.station-card {flex: 1 1 0;min-width: 150px;max-width: 250px;padding: 2rem;border-bottom: 3px solid var(--primary);border-radius: 0.25rem;box-shadow: 0 8px 10px -6px rgb(0 0 0 / 46%);transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);text-decoration: none;}
.station-card:hover {transform: translateY(-10px);box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);}
.station-card > div {color: var(--primary);font-weight: 900;font-size: 1.25rem;margin-top: 0.5rem;}
.station-card-grey {background-color: var(--white);color: var(--dark-grey);}
.station-card-grey > div {color: var(--primary);}
.station-card-black {background-color:var(--black);color:var(--grey); }
.station-card-black > div {color:var(--primary);}
.station-card > p {letter-spacing: 0.1em;text-transform: uppercase;font-weight: 700;font-size: 0.75rem;margin: 0;}
@media (width < 904px) {
    .station-card  {max-width: 190px;}
}
@media (width < 719px) {
    .station-card  {max-width: 205px;}
}
@media (width < 535px) {
    .station-card  {max-width: 232px;}
}
@media (width < 400px) {
    .station-card  {max-width: 165px;}
}



/**********     DITITAL SECTION     **********/
.digital-section {padding: 6rem 7%;color: var(--grey);background-color: var(--black);}
.digital-container {max-width: 80rem;margin: auto;display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 4rem;align-items: center;}
@media (width < 1000px) {
    .digital-container {grid-template-columns: repeat(1, minmax(0, 1fr));}
}
.digital-container h2 {color: var(--primary);letter-spacing: 0.1em;text-transform: uppercase;font-weight: 700;font-size: 0.875rem;margin-block: 0 0.5rem;}
.digital-container h3 {font-size: clamp(2.75rem, 8vw, 3.75rem);color: var(--white);letter-spacing: -0.05em;text-transform: uppercase;margin-block: 0 2rem;}
.digital-container p {font-size: 1.125rem;margin-bottom: 2rem;}
.digital-services {display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 2rem;}
@media (width < 640px) {
    .digital-services {grid-template-columns: repeat(1, minmax(0, 1fr));}
}
.digital-items {border-left: 3px solid var(--primary);padding-left: 1rem;}
.digital-items h4 {letter-spacing: 0.1em;text-transform: uppercase;font-weight: 700;font-size: 0.75rem;margin-block: 0 0.25rem;color: var(--white);}
.digital-items p {font-size: 0.75rem;margin: 0;text-wrap-style: pretty;}
.digital-image-warpper {position:relative;}
.digital-flag {box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);color: var(--white);padding: 1.5rem;background-color: var(--primary);border-radius: .25rem;position: absolute;top: -1.5rem;right: -1.5em;}
.digital-flag-heading  {line-height: 1;text-transform: uppercase;font-weight: 900;font-size: 1.875rem;}
.digital-flag-text {letter-spacing: 0.1em;font-weight: 700;font-size: .65rem;text-transform: uppercase;}
/**********     OFFICE SECTION     **********/
.office-section {padding: 6rem 7%;background-color: var(--off-white);}
.office-container {max-width: 80rem;margin: auto;}
.office-head {text-align: center;margin-bottom: 4rem;}
.office-head h3 {font-size: clamp(2.75rem, 8vw, 3.75rem);letter-spacing: -0.05em;text-transform: uppercase;font-weight: 900;margin: 0;}
.office-head p {letter-spacing: 0.2em;color: var(--charcol);text-transform: uppercase;font-weight: 700;font-size: 0.75rem;margin-top: .9rem;}
.office-grid {display: flex;gap: 2rem;flex-wrap: wrap;justify-content: space-evenly;}
.office-card {width:200px; box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);padding: 3rem;background-color: var(--white);border-top: 8px solid var(--black);border-radius: 0.25rem;transition-property: all;transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);transition-duration: 150ms;}
.office-card:hover {box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);}
.office-card h4 {letter-spacing: -0.05em;font-weight: 900;font-size: 1.5rem;margin-bottom: 1rem;}
.office-card-text1 {color: var(--dark-grey);font-weight: 500;font-size: 0.875rem;margin-bottom: 1.5rem;}
.office-card-address {letter-spacing: 0.1em;line-height: 1.625;text-transform: uppercase;color: var(--charcol);font-size: 0.75rem;font-weight: 700;margin-block:0;}
/**********     CALL TO ACTION     **********/
.cta-section {color: var(--white);text-align: center;padding: 6rem 7%;background-color: var(--primary);}
.cta-container {max-width: 56rem;margin: auto;}
.cta-container h3 {font-size: clamp(2.75rem, 8vw, 4.5rem);line-height: 1;letter-spacing: -0.05em;text-transform: uppercase;margin-block: 0 2rem;color: var(--black);}
.cta-container p {font-size: clamp(1.125rem, 2vw, 1.5rem);line-height: 2rem;opacity: 0.9;font-weight: 300;max-width: 42rem;margin-block: 0 3rem;margin-inline: auto;}
.cta-btn {box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);color: var(--primary);letter-spacing: 0.1em;text-transform: uppercase;font-weight: 900;font-size: 0.875rem;padding: 1.25rem 2.5rem;background-color: var(--white);border-radius: 0.125rem;text-decoration: none;}
.cta-btn:hover {background-color: #ffdddd;box-shadow: none;}



.contact-section {color: var(--black);padding: 6rem 7%;background-color: var(--off-white);}
.contact-container {max-width: 56rem;margin: auto;}

/**********     FOOTER     **********/
footer {color: var(--grey);padding: 4rem 1.5rem;background-color: var(--black);}
.footer-container {max-width: 80rem;margin: auto;}
.footer-flex { display: flex;column-gap: 3rem;justify-content: space-between;margin-bottom: 4rem;}
@media only screen and (max-width: 850px) {
.footer-flex {flex-direction: column;}
}
footer a {color: inherit;text-decoration: none;}
footer a:focus {outline:2px solid var(--white);}
footer a:hover {background: inherit;color:var(--white);}
footer h2 {color: var(--primary);letter-spacing: 0.1em;text-transform: uppercase;font-weight: 700;font-size: .75rem;margin-bottom: 1.5rem;}
footer ul {letter-spacing: 0.1em;text-transform: uppercase;font-weight: 700;font-size: 0.75rem;line-height: 1rem;list-style: none;margin: 0;padding: 0;}
footer li {margin-top: 1rem;}
footer p {line-height: 1.625;font-size: 0.875rem;max-width: 20rem;margin-block-start: .75rem;}
.footer-nav {display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 3rem;}
@media only screen and (max-width: 540px) {
.footer-nav {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
.copyright {text-align: center;font-size: .7rem;font-style: italic;margin: 2rem auto;width: 90%;text-wrap-style: balance;text-transform: uppercase;letter-spacing: 0.1em;}
.social-icons {display: flex;column-gap: 20px;justify-content: center;}
.social-icon {width: 35px;height: auto; }
.social-round {border-radius:50%;}

/**********    FORM    **********/
form {max-width: 800px;margin-inline:auto;}
.form-w500 { max-width:500px;}
.form-center {margin-inline:auto;}
.form-flex {display: flex;column-gap: 2rem;flex-wrap: wrap;}
.form-flex > div {flex: 1 1 0;}
.form-flex-cs {display: flex;column-gap: 1rem;}
.form-flex-cs > div {flex: 1 1 0;}
@media only screen and (max-width: 700px) {
.form-flex {display: block;}
}
.form-note {font-size: .9rem;margin-inline: 1rem;font-style: italic;line-height: 1;margin-block-start: .25rem;color: #565656;}
label {display: block;font-size: .9rem;margin: 1rem 1rem .25rem;line-height: 1;}
label:has(+ input:required):after, label:has(+ textarea:required):after, label:has(+ select:required):after, .check-list legend:has(~ div > input:required):after {content: ' *';color: red;}
input[type=email], input[type=tel], input[type=text], input[type=file], input[type=password], input[type=date], input[type=number] {box-sizing: border-box;border: thin solid var(--grey);border-radius: .5rem;width: 100%;padding: .5rem;font-family: inherit;font-size: inherit;line-height:1;background-color:var(--white);}
textarea {display: block;box-sizing: border-box;border: thin solid var(--grey);border-radius: .5rem;width: 100%;padding: .5rem;font-family: inherit;font-size: inherit;line-height: inherit;field-sizing: content;min-height: 4.5rem;resize: block;}
input[type=checkbox] {margin: .625em .625em .625em 0}
select {box-sizing: border-box;border: thin solid var(--grey);border-radius: .5rem;width: 100%;padding: .65rem .5rem;font-family: inherit;font-size: inherit;line-height:1;background-color:var(--white);-webkit-appearance: none;appearance: none;}
input[type=submit] {background-color: var(--primary);color: var(--white);padding: .5em 1em;font-size: inherit;font-family: inherit;border: none;margin-block: 1rem;border-radius: .5rem;margin-inline-start: auto;display: block;}
input[type=submit]:hover {background: #efb494;color:var(--black);text-decoration: none;}
fieldset {margin-bottom: 2rem;border: solid thin var(--black);border-radius: 1rem;padding: .5rem 1rem 1rem;}
fieldset:last-of-type {margin-bottom: 0;}
legend {background: var(--primary);color: #fffdfd;padding: .25rem .75rem;font-weight: bold;letter-spacing: 2px;margin-inline-start: 1rem;border-radius: 1rem;width: fit-content;}
legend + p {font-style: italic;font-size: 1rem;margin: 0 0 1.5rem;}
formhr {margin-block-start: 1.75rem;}
.check-list > div {display: flex;gap: .5em;}
.check-list label {font-size: 1rem;margin-top: .625em;}
.radio-check, .check-list {margin: 1.05rem 0 0 0;padding: 0 1rem;border-radius: .5rem;border: thin solid var(--grey);}
.radio-check {flex: 1 1 auto;display: flex;gap: 1rem;}
.radio-check legend, .check-list legend {background: inherit;color: inherit;font-weight: inherit;letter-spacing: inherit;position: unset;padding: 0;line-height: 1;font-size: .9rem;margin-inline-start: -.5rem;color: var(--primary);background-color: var(--white);padding-inline: .5rem;}
.radio-check legend:has( input:required)::after, .check-list legend:has(+ input:required)::after {content: ' *';color: red;}
.check-list {column-count:2;padding-block: 1rem;}
@media only screen and (max-width:500px) { 
    input[type=submit] {width:100%;}
.check-list {column-count:1;}
}
.check-list > div {padding-left: 1rem;}
.radio-options {display:none;margin-inline-start: 2rem;min-width: 300px;width: fit-content;}
.radio-check > div {display: flex;align-items: center;padding-block: .67rem;;}
.radio-checklabel {margin: 0;padding: 0 1em 0 .25em;}
.radio-checkinput[type=radio] {margin: 0;}
input:user-invalid, select:user-invalid {background: #ffe0d8;}

.grecaptcha-badge {visibility: hidden;}
    .recapv3 {color:#555; display: flex;gap: 1rem;}
    .recapv3 div {font-size: 0.9em;line-height: 1;}