/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

@font-face {
    font-family: "Asfalto";
    src: url("assets/fonts/asfalto/hinted-Asfalto.eot");
    src: url("assets/fonts/asfalto/hinted-Asfalto.eot?#iefix") format("embedded-opentype"),
        url("assets/fonts/asfalto/hinted-Asfalto.woff2") format("woff2"),
        url("assets/fonts/asfalto/hinted-Asfalto.woff") format("woff"),
        url("assets/fonts/asfalto/hinted-Asfalto.ttf") format("truetype"),
        url("assets/fonts/asfalto/hinted-Asfalto.svg#Asfalto") format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Asfalto";
    src: url("assets/fonts/asfalto/hinted-Asfalto-Italic.eot");
    src: url("assets/fonts/asfalto/hinted-Asfalto-Italic.eot?#iefix") format("embedded-opentype"),
        url("assets/fonts/asfalto/hinted-Asfalto-Italic.woff2") format("woff2"),
        url("assets/fonts/asfalto/hinted-Asfalto-Italic.woff") format("woff"),
        url("assets/fonts/asfalto/hinted-Asfalto-Italic.ttf") format("truetype"),
        url("assets/fonts/asfalto/hinted-Asfalto-Italic.svg#Asfalto-Italic") format("svg");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* RAMS Drupal-style header port. */
:root {
    --rams-blue: #0056a7;
    --rams-orange: #ec8205;
    --rams-text: #474747;
    --rams-club-navy: #0a2237;
    --rams-white: #ffffff;
    --rams-menu-muted: #d3d3d3;
    --rams-background: #eaeaea;
}

html {
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
    font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.42857;
    color: var(--rams-text);
    background-color: var(--rams-background);
}
/*
h1, h2{
    font-family: 'Asfalto', sans-serif !important;
	font-size: calc((100vw - 640px) / 17.5 + 32px) !important;
    font-weight:normal !important;
}

h1, h2, h3, h4, h5, h6 {
	color:black !important
}
*/
h1, h2{
    font-family: 'Asfalto', sans-serif;
	font-size: calc((100vw - 640px) / 17.5 + 32px);
    font-weight:normal;
}

h1, h2, h3, h4, h5, h6 {
	color:black
}

p, ul, ol, li{
	font-size: calc((100vw - 640px) / 140 + 14px);
	line-height: 1.7em;
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #474747;
}

#navbar li{
    font-size:14px;
    text-transform: uppercase;
}

a {
    color: #0056a7;
}

a:hover, a:active, a:focus {
    color: #ec8205;
    text-decoration: none;
}

.skip-link, 
.screen-reader-text.skip-link,
.show-on-focus {
    display: none !important;
}

main#content{
    min-height:60vh;
}

main#content>.page-header{
    position:absolute;
    top:25%;
    margin:0 auto;
    font-size:3rem;
    width:100%;
    color:white;
    display:flex;
    flex-direction:column;
}
main#content>.page-header>.entry-title{
    width:unset;
    max-width:unset;
    color:white !important;
}

/* padding before each post */

#page-header + #content{
    padding-top: 6vw;
}

/* END padding before each post */

/* no padding before each post if full width handled by Elementor */

#page-header + .elementor>.elementor-element{
    padding-top:0;
}
#page-header + .elementor>.elementor-element>.elementor-element:last-child>.e-con-inner{
    padding-top:0;
    height:100%;
}
#page-header + .elementor>.elementor-element>.elementor-element:last-child>.e-con-inner>*{
    height:100%;
}
#page-header + .elementor>.elementor-element>.elementor-element:last-child>.e-con-inner>*>*{
    height:100%;
}

/* END no padding before each post if full width handled by Elementor */

.post-template-default .page-content{
    h1, h2, h3, h4, h5, h6{
        line-height: 1.7em;
        font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
        color: #474747;
	    font-size: 2rem;
    }
}

.wp-singular .elementor-2 .elementor-element a.elementor-button{
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 700;
	border-radius: 5px;
    padding: 0.5em 3em;
    font-size: 1.2rem;
	margin: 2em 0;
	display: inline-block;
}


.wp-singular #news-133 .elementor-element .elementor-widget-theme-post-title a:not(.elementor-button){
    font-family: "Asfalto", Sans-serif;
	font-weight: 500;
    font-size: 3rem;
    color: #0056a7;
}

.wp-singular .elementor-element .elementor-widget-theme-post-title a:not(.elementor-button){
	font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 700;
    font-size: 1.2rem;
    color: #0056a7;
}
.wp-singular .elementor-element .elementor-widget-theme-post-title a:not(.elementor-button):hover{
    color: #ec8205;
}
.wp-singular a.e-con.elementor-element{
    font-size:1rem;
    padding:0;
    color: #0056a7;
}
.wp-singular a.e-con.elementor-element:hover{
    color: #ec8205;
}

.wp-singular .elementor-heading-title{
    font-size: 1.2rem;
}

.wp-singular .elementor-element .elementor-widget-post-info li.elementor-icon-list-item {
    margin-inline: 1px;
}
.wp-singular .elementor-element .elementor-widget-post-info ul.elementor-inline-items {
    margin-inline: 0;
    font-size:0.7rem;
    padding-bottom:10px;
}

.wp-singular div.e-con-inner{
    gap: 0
}

.wp-singular .page-content {
	width: 1100px;
	max-width: 90%;
	margin: auto;
}

@media screen and (min-width: 1201px) {
    h1, h2, h3, h4, h5, h6 {
        font-size: 64px;
    }
	p{
	}
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Header shell */
header#navbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    width: 100%;
    max-width: 100%;
    min-height: 50px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.65) 0%,
        rgba(0, 0, 0, 0.28) 25%,
        rgba(0, 0, 0, 0.12) 39%,
        transparent 50%,
        transparent 100%
    );
}

body.admin-bar header#navbar {
    top: 32px;
}

@media screen and (max-width: 782px) {
    body.admin-bar header#navbar {
        top: 46px;
    }
}

/* Header media */
.rams-header-media {
    position: relative;
    width: 100%;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.rams-header-media--slider {
    height: 100.1vh;
    min-height: 0;
}

.rams-header-media--static {
    height: 65vh;
    min-height: 260px;
    max-height: 380px;
}

.rams-header-slider {
    position: absolute;
    top: 50px;
    right: 0;
    bottom: 0;
    left: 0;
}

.rams-header-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    background-repeat: no-repeat;
    background-position: 20% 0%;
    background-size: cover;
    animation: rams-header-crossfade 24s infinite;
}

.rams-header-slide:first-child {
    opacity: 1;
}

.rams-header-slide:nth-child(1) { animation-delay: 0s; }
.rams-header-slide:nth-child(2) { animation-delay: 4s; }
.rams-header-slide:nth-child(3) { animation-delay: 8s; }
.rams-header-slide:nth-child(4) { animation-delay: 12s; }
.rams-header-slide:nth-child(5) { animation-delay: 16s; }
.rams-header-slide:nth-child(6) { animation-delay: 20s; }

/* Match Drupal's slider crop breakpoints. */
@media screen and (min-width: 480px) {
    .rams-header-slide {
        background-position: 10% 0%;
    }
}

@media screen and (min-width: 600px) {
    .rams-header-slide {
        background-position: 0% 0%;
    }
}

@media screen and (min-width: 1024px) {
    .rams-header-slide {
        background-position: center top;
    }
}

@media screen and (max-width: 979px) and (orientation: portrait) {
    .rams-header-media--slider {
        height: 60vh !important;
        min-height: 0 !important;
    }
}

@keyframes rams-header-crossfade {
    0% {
        opacity: 0;
        z-index: 2;
    }

    4%,
    17% {
        opacity: 1;
        z-index: 2;
    }

    21%,
    100% {
        opacity: 1;
        z-index: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rams-header-slide {
        animation: none;
    }

    .rams-header-slide:first-child {
        opacity: 1;
    }
}




@media screen and (max-width: 979px) and (orientation: portrait) {
    .rams-header-media--slider {
        height: 60vh !important;
        min-height: 0 !important;
    }
}

header#navbar a {
    text-decoration: none;
    background-color: transparent;
}

header#navbar ul {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

header#navbar .nav > li {
    position: relative;
    display: block;
}

header#navbar .nav > li > a {
    position: relative;
    display: block;
    padding: 10px 15px;
    line-height: 20px;
}

header#navbar.navbar.container > .container {
    width: auto;
    margin: 0;
    padding: 0;
}

/* Slider caption */

#rams-home-header .rams-slider-caption{
    position: absolute;
    right: 7%;
    top: 33.3%;
    width: 36%;
    text-align: left;
    transform: translate(0%, -40%);
    left: auto;
    z-index: 100;
}
#rams-home-header .rams-slider-caption .headline-text h3{
    color:white;
    font-family: "Asfalto", "asfalto", "vinyl", sans-serif;
    font-size: calc((100vw - 480px) / 17.75 + 40px);
    font-weight:unset;
}
#rams-home-header .rams-slider-caption .headline-button a{
    background: transparent;
    color: #ffffff;
    text-transform: uppercase;
    border-radius: 5px;
    padding: 10px 30px;
    font-size: 2.2rem;
    font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
    display: inline-block;
    text-align: center;
    margin: 0.333em 0;
    transition: all 0.15s linear;
    border: 1px solid white;
    font-weight: bold;
}
#rams-home-header .rams-slider-caption .headline-button a:hover{
    text-decoration: none;
    background-color: #ec8205;
    color: #ffffff;
    border-color: #ec8205;
}

/* END Slider caption */

/* announcement headline */

/*


*/

#rams-home-header .rams-header-headline{
    position: absolute;
    font-size: 1vw;
    background: #0056a7 url(../img/back-notice-orange.jpg) center center no-repeat;
    background-size: cover;
    bottom:0;
    z-index:5;
    width:100%;
    padding: 1.5em 0;
}

#rams-home-header .rams-header-headline .content-capsule{
    display:flex;
    justify-content: space-between;
    align-items: center;
    width: 1300px;
    max-width: 90%;
    margin: 0 auto;
}

#rams-home-header .rams-header-headline .headline-text{
    flex:7 1 0;
}
#rams-home-header .rams-header-headline .headline-text h3{
    color:white;
    font-size: calc((100vw - 480px) / 39.04762 + 26px);
    font-weight: bold;
    text-transform: uppercase;
    margin: 0;
    gap:50px;
}

@media screen and (min-width: 1301px) {
    #rams-home-header .rams-header-headline .headline-text h3 {
        font-size: 47px;
    }
}

@media screen and (max-width: 479px) {
    #rams-home-header .rams-header-headline .headline-text h3 {
        font-size: 26px;
    }
}

#rams-home-header .rams-header-headline .headline-button{
    flex:3 1 0;
}

#rams-home-header .rams-header-headline .headline-button a{
    background: transparent;
    color: #ffffff;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
    transition: all 0.15s linear;
    border: 4px solid #ffffff;
    border-radius: 5px;
    font-size: 1.55em;
    padding: 0.35em 1.7em;
    font-weight: bold;
    font-style: italic;
}

#rams-home-header .rams-header-headline .headline-button a:hover{
    text-decoration: none;
    background-color: #ffffff;
    color: #ec8205;
    border-color: #ffffff;
}

/* END announcement headline */



/* Top club/domain menu */
header#navbar #club-menu {
    width: 100%;
    padding: 0;
    background-color: var(--rams-club-navy);
}

header#navbar #club-menu .navbar-nav {
    float: none;
    width: 1750px;
    max-width: 95%;
    margin: 0 auto;
    text-align: right;
}

header#navbar #club-menu .navbar-nav > li {
    display: inline-block;
    float: none;
}

header#navbar #club-menu .navbar-nav > li > a {
    color: var(--rams-menu-muted);
    font-size: 0.95em;
    padding-top: 15px;
    padding-bottom: 15px;
}

header#navbar #club-menu .navbar-nav > li > a:hover,
header#navbar #club-menu .navbar-nav > li > a:focus {
    color: var(--rams-white);
}

header#navbar #club-menu .current-menu-item > a,
#club-menu-mobile .current-menu-item{
    font-weight:bold;
}

/* Primary sport/site menu */
header#navbar #sport-menu {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 1750px;
    max-width: 95%;
    margin: 1em auto 0;
}

header#navbar #sport-menu .navbar-header {
    flex: 0 0 auto;
}

header#navbar #sport-menu .logo {
    display: block;
}

header#navbar #sport-menu .custom-logo {
    display: block;
    width: auto;
    height: auto;
    max-width: 20vw;
    max-height: 35vh;
}

header#navbar #sport-menu .custom-logo-link {
    display: block;
    margin-top: 30px;
    margin-bottom: 8px;
    padding-right: 15px;
}


header#navbar #navbar-collapse {
    flex: 1 1 auto;
}

header#navbar #navbar-collapse > nav > .navbar-nav {
    display: flex;
    flex-wrap: wrap;
    float: none;
    justify-content: flex-end;
    width: 100%;
    max-width: 1100px;
    margin: 0 0 0 auto;
    text-align: right;
}

header#navbar #navbar-collapse > nav > .navbar-nav > li > a {
    color: var(--rams-orange);
    font-weight: 400;
    white-space: nowrap;
    text-transform: uppercase;
    font-size: clamp(12.5px, calc((100vw - 1024px) / 133.95349 + 12.5px), 19px);
}

header#navbar #navbar-collapse > nav > .navbar-nav > li > a:hover,
header#navbar #navbar-collapse > nav > .navbar-nav > li > a:focus,
header#navbar #navbar-collapse > nav > .navbar-nav > li.active > a{
    color: var(--rams-white);
    background: transparent;
}

header#navbar #navbar-collapse > nav > .navbar-nav > li.current-menu-item > a,
header#navbar #navbar-collapse > nav > .navbar-nav > li.current_page_item > a,
header#navbar #navbar-collapse > nav > .navbar-nav > li.current-menu-ancestor > a {
    font-weight:bold;
}
header#navbar #sport-menu .navbar-nav>li.menu-item-has-children>a::after{
    color: var(--rams-orange);
    content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="12px" height="8px"><path fill-rule="evenodd" fill="rgb(236, 130, 5)" d="M0.002,-0.003 L6.000,4.328 L11.998,-0.003 L11.998,3.671 L6.000,8.003 L0.002,3.671 L0.002,-0.003 Z"/></svg>');
    display: block;
    width: 12px;
    height: 22px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

header#navbar #sport-menu .navbar-nav>li.menu-item-has-children>a:hover::after{
    content: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="12px" height="8px"><path fill-rule="evenodd" fill="rgb(255, 255, 255)" d="M0.002,-0.003 L6.000,4.328 L11.998,-0.003 L11.998,3.671 L6.000,8.003 L0.002,3.671 L0.002,-0.003 Z"/></svg>');
}

header#navbar #navbar-collapse > nav > .navbar-nav > li.dropdown > a,
header#navbar #navbar-collapse > nav > .navbar-nav > li.menu-item-has-children > a {
    padding-right: 1.3em;
}

/* Dropdowns */
header#navbar #navbar-collapse .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    min-width: 160px;
    margin: 0;
    padding: 0.5em 0;
    text-align: left;
    background-color: rgba(0, 0, 0, 0.9);
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

header#navbar #navbar-collapse li:hover > .sub-menu,
header#navbar #navbar-collapse li:focus-within > .sub-menu {
    display: block;
}

header#navbar #navbar-collapse .sub-menu a {
    display: block;
    padding: 8px 15px;
    color: var(--rams-orange);
    font-size: 14px;
    line-height: 20px;
    white-space: nowrap;
    text-transform: uppercase;
}

header#navbar #navbar-collapse .sub-menu a:hover,
header#navbar #navbar-collapse .sub-menu a:focus {
    color: var(--rams-white);
}

/* Mobile club menu inside drawer */
header#navbar #club-menu-mobile {
    display: none;
    width: 100%;
    padding: 0;
}

header#navbar #club-menu-mobile .navbar-nav {
    text-align: left;
}

header#navbar #club-menu-mobile .navbar-nav > li {
    float: none;
}

header#navbar #club-menu-mobile .navbar-nav > li > a {
    color: var(--rams-white);
    font-size: 0.85em;
    line-height: 2.2em;
}

/* Mobile toggle shell. Menu visibility is controlled by theme JavaScript. */
header#navbar .rams-menu-toggle {
    display: none;
    margin: 8px 0;
    padding: 9px 10px;
    cursor: pointer;
    background: transparent;
    border: none;
    border-radius: 4px;
}

header#navbar .rams-menu-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
    background-color: var(--rams-white);
}

header#navbar .rams-menu-toggle .icon-bar + .icon-bar {
    margin-top: 4px;
}

@media screen and (max-width: 1280px) {
    header#navbar .nav > li > a {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media screen and (max-width: 979px) {
    header#navbar #sport-menu .custom-logo-link {
        margin-top: 15px;
        padding-left: 30px;
        padding-right: 15px;
    }
}

@media screen and (max-width: 1024px) {
    header#navbar #sport-menu .navbar-header {
        float: none;
    }

    header#navbar #sport-menu .navbar-nav > li > a {
        padding-top: 5px;
        padding-bottom: 5px;
    }
}

@media screen and (max-width: 767px) {
    header#navbar #club-menu {
        display: none;
    }

    header#navbar #sport-menu {
        display: block;
        margin-top: 1em;
    }

    header#navbar #sport-menu .navbar-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-left: 0;
        margin-right: 0;
    }

    header#navbar #sport-menu .custom-logo {
        max-width: 20vw;
        max-height: 18vh;
    }

    header#navbar #sport-menu .custom-logo-link {
        margin-top: 15px;
        margin-right: -15px;
        margin-bottom: 8px;
        padding-left: 30px;
        padding-right: 15px;
    }

    header#navbar .rams-menu-toggle {
        display: block;
        margin-bottom:auto;
    }

    header#navbar #navbar-collapse {
        width: 100%;
        margin-top: 1em;
    }

    header#navbar #navbar-collapse > nav > .navbar-nav {
        display: block;
        max-width: none;
        margin: 0;
        text-align: left;
    }

    header#navbar #navbar-collapse > nav > .navbar-nav > li > a {
        font-size: 16px;
        line-height: 1.5;
    }

    header#navbar #navbar-collapse .sub-menu {
        position: static;
        display: block;
        padding: 0 0 0 1em;
        background: transparent;
    }

    header#navbar #club-menu-mobile {
        display: block;
        margin-top: 1em;
    }
	#navbar-collapse {
		display: none;
	}

    header#navbar #sport-menu.is-open #navbar-collapse {
    	display: block;
    }
    header#navbar #sport-menu.is-open {
        position:absolute;
        top: 0;
        width: 100%;
        max-width: unset;
        background: rgba(4, 16, 28, 0.9);
        padding: 0 10px 0 ;
    }
    header#navbar #sport-menu.is-open #club-menu-mobile{
        background-color: #0a2138;
    }
}

@media screen and (max-width: 767px) {
    .rams-header-media--slider {
        height: 100.1vh;
        min-height: 0;
    }

    #rams-home-header > #slider {
        top: 0;
    }

    .rams-header-media--static {
        height: 35vh;
        min-height: 220px;
        max-height: 320px;
    }
    
    #rams-home-header .banners_mobile_container{
        position: absolute;
        bottom: 0;
    }
    
    #rams-home-header .rams-slider-caption{
        left:0;
        width:100%;
        text-align:center;
        position:relative;
        transform:none;
    }
    #rams-home-header .rams-slider-caption .headline-button a{
        font-size: 22px;
        margin: 5px 0;
    }
    #rams-home-header .rams-header-headline{
        position:relative;
        text-align:center;
    }
    #rams-home-header .rams-header-headline .content-capsule{
        width:unset;
        flex-direction:column;
        gap:0;
    }
    #rams-home-header .rams-header-headline .headline-button{
        font-size:4vw;
    }
    
    #rams-home-header .rams-header-headline .headline-button a{
        border-width: 1px;
        font-size: 1.55em;
        margin: 1em 0;
    }
}

/* Keep the slider, caption and announcement in the same visual order as Drupal. */
#rams-home-header.rams-header-media--slider {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible;
}

#rams-home-header.rams-header-media--slider > #slider {
    top: 50px;
    right: 0;
    bottom: auto;
    left: 0;
    height: calc(100.1vh - 50px);
}

#rams-home-header:has(.rams-header-headline) > #slider {
    height: calc(82.1vh - 50px);
}

#rams-home-header .banners_mobile_container {
    position: static !important;
    width: 100%;
    padding-top: 100.1vh;
}

#rams-home-header:has(.rams-header-headline) .banners_mobile_container {
    padding-top: 82.1vh;
}

#rams-home-header .rams-slider-caption {
    position: absolute;
    top: 50%;
    right: 7%;
    bottom: auto;
    left: auto;
    width: 36%;
    margin: 0;
    padding: 0;
    text-align: left;
    transform: translate(0, -40%);
    z-index: 100;
}

#rams-home-header:has(.rams-header-headline) .rams-slider-caption {
    top: 41.05vh;
}

#rams-home-header .rams-slider-caption .headline-text,
#rams-home-header .rams-slider-caption .headline-text h3 {
    width: auto;
    margin: 0 0 10px;
}

#rams-home-header .rams-slider-caption .headline-text h3 {
    line-height: 1.1;
}

#rams-home-header .rams-header-headline {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    padding: 0;
}

#rams-home-header .rams-header-headline .content-capsule {
    box-sizing: border-box;
}

#rams-home-header .rams-header-headline .headline-text {
    flex: 0 1 auto;
    width: 65%;
    margin: 1.5em 0;
}

#rams-home-header .rams-header-headline .headline-text h3 {
    margin: 0;
    line-height: 1.1;
}

#rams-home-header .rams-header-headline .headline-button {
    display: flex;
    flex: 0 1 auto;
    align-items: center;
    justify-content: flex-end;
    width: 30%;
    min-height: 18vh;
    margin: 0;
    text-align: right;
}

@media screen and (max-width: 979px) {
    #rams-home-header .rams-slider-caption,
    #rams-home-header:has(.rams-header-headline) .rams-slider-caption {
        top: 0;
        right: 0;
        bottom: auto;
        left: 0;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        width: 100%;
        max-width: none;
        box-sizing: border-box;
        height: 82.1vh;
        padding: 10vw;
        text-align: center;
        transform: none;
        background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.65) 1%, transparent 63%, transparent 100%);
    }

    #rams-home-header:not(:has(.rams-header-headline)) .rams-slider-caption {
        height: 100.1vh;
    }

    #rams-home-header .rams-slider-caption .headline-text,
    #rams-home-header .rams-slider-caption .headline-text h3 {
        width: 100%;
    }

    #rams-home-header .rams-slider-caption .headline-text h3 {
        margin: 0 0 10px;
    }
}

@media screen and (max-width: 979px) and (orientation: portrait) {
    #rams-home-header.rams-header-media--slider > #slider {
        top: 50px;
        height: calc(60vh - 50px);
    }

    #rams-home-header .banners_mobile_container {
        padding-top: 60vh;
    }

    #rams-home-header:has(.rams-header-headline) .banners_mobile_container {
        padding-top: 60vh;
    }

    #rams-home-header .rams-slider-caption,
    #rams-home-header:has(.rams-header-headline) .rams-slider-caption,
    #rams-home-header:not(:has(.rams-header-headline)) .rams-slider-caption {
        height: 60vh;
    }
}

@media screen and (max-width: 767px) and (orientation: portrait) {
    #rams-home-header.rams-header-media--slider > #slider {
        top: 0;
        height: 60vh;
    }
}

@media screen and (max-width: 480px) {
    #rams-home-header .rams-header-headline {
        font-size: 4vw;
    }

    #rams-home-header .rams-header-headline .content-capsule {
        flex-wrap: wrap;
    }

    #rams-home-header .rams-header-headline .headline-text {
        width: 100%;
        margin-bottom: 0;
        text-align: center;
    }

    #rams-home-header .rams-header-headline .headline-button {
        width: 100%;
        text-align: center;
        justify-content: center;
    }

    #rams-home-header .rams-header-headline .headline-button a {
        border-width: 1px;
    }

    #rams-home-header .rams-slider-caption .headline-text h3 {
        font-size: 40px;
    }
}


/* Drupal-style promotional tiles for the Elementor rams-large-ads block. */
#rams-large-ads {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    gap: 0;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 1vw 5% 5vw;
}

#rams-large-ads > .e-con {
    box-sizing: border-box;
    display: flex;
    flex: 0 0 48%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 48%;
    max-width: 48%;
    min-width: 0;
    aspect-ratio: 734 / 453;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
}

#rams-large-ads > .e-con h2 {
    box-sizing: border-box;
    width: 50%;
    max-width: 50%;
    margin: 13% 7% 5.6%;
    padding: 0;
    color: #ffffff;
    font-family: "Asfalto", "asfalto", "vinyl", sans-serif;
    font-size: calc((100vw - 640px) / 19.62963 + 36px);
    font-weight: 500;
    line-height: 0.975em;
    text-transform: uppercase;
}

@media screen and (min-width: 1701px) {
    #rams-large-ads > .e-con h2 {
        font-size: 90px;
    }
}

@media screen and (max-width: 639px) {
    #rams-large-ads > .e-con h2 {
        font-size: 36px;
    }
}

#rams-large-ads > .e-con > .elementor-widget-button {
    flex: 0 0 auto;
    align-self: stretch;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    text-align: left;
}

#rams-large-ads > .e-con > .elementor-widget-button .elementor-button {
    display: inline-block;
    width: auto;
    margin: 1px 7%;
    padding: 0.55em 3em;
    color: #ffffff;
    font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: calc((100vw - 640px) / 106 + 10px);
    font-weight: 700;
    line-height: 1.42857;
    white-space: nowrap;
    text-align: center;
    text-transform: uppercase;
    background: transparent;
    border: 1px solid #ffffff;
    border-radius: calc((100vw - 640px) / 212 + 2px);
    transition: all 0.15s linear;
}

@media screen and (min-width: 1701px) {
    #rams-large-ads > .e-con > .elementor-widget-button .elementor-button {
        font-size: 20px;
        border-radius: 7px;
    }
}

@media screen and (max-width: 639px) {
    #rams-large-ads > .e-con > .elementor-widget-button .elementor-button {
        font-size: 10px;
        border-radius: 2px;
    }
}

#rams-large-ads > .e-con > .elementor-widget-button .elementor-button:hover,
#rams-large-ads > .e-con > .elementor-widget-button .elementor-button:focus {
    color: #ffffff;
    text-decoration: none;
    background-color: #ec8205;
    border-color: #ec8205;
}

@media screen and (max-width: 979px) {
    #rams-large-ads {
        flex-direction: column;
    }

    #rams-large-ads > .e-con {
        flex-basis: 100%;
        width: 100%;
        max-width: 100%;
        margin-bottom: 5vw;
    }
}

/* Homepage sport division tiles */
.f8-sports-block {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 0.7vw;
    background-color: #07141d;
}

.f8-sports-block .nope {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.f8-sports-block .sport-image {
    position: relative;
    width: 16.66667%;
    overflow: hidden;
    background-color: #000000;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    background-blend-mode: luminosity;
    transition: all 0.2s linear;
}

.f8-sports-block .sport-image::before {
    display: block;
    content: "";
    float: left;
    height: 0;
    padding-bottom: 195.1952%;
}

.f8-sports-block .sport-image:hover,
.f8-sports-block .sport-image:focus-within {
    background-blend-mode: normal;
}

.f8-sports-block .sport-image > a {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    opacity: 0.74;
    background-color: #07141d;
    transition: opacity 0.2s linear, background-color 0.2s linear;
}

.f8-sports-block .sport-image > a:hover,
.f8-sports-block .sport-image > a:focus {
    opacity: 1;
    background-color: transparent;
}

.f8-sports-block .sport-image span {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    width: 110%;
    padding: 0 10%;
    color: var(--rams-white);
    font-family: "Asfalto", "asfalto", "vinyl", sans-serif;
    font-size: 6.4em;
    line-height: 0.95;
    text-align: center;
    text-shadow: 0 0 21px #000000;
    text-transform: uppercase;
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 979px) {
    .f8-sports-block {
        flex-wrap: wrap;
        font-size: 1.4vw;
    }

    .f8-sports-block .sport-image {
        width: 33.33333%;
    }

    .f8-sports-block .sport-image > a {
        opacity: 1;
        background-color: rgba(7, 20, 29, 0.8);
    }

    .f8-sports-block .sport-image span {
        text-shadow: 0 0 3px #10346a;
    }
}
/* RAMS accordion */
.elementor-widget-n-accordion .e-n-accordion-item {
    border: 0;
    border-bottom: 1px solid #d7d7d7;
}

.elementor-widget-n-accordion .e-n-accordion-item:last-child {
    border: 0;
}

.elementor-widget-n-accordion .e-n-accordion-item > summary,
.elementor-widget-n-accordion .e-n-accordion-item > [role="region"] {
    border-left: 0;
    border-right: 0;
    border-top: 0;
}

.elementor-widget-n-accordion .e-n-accordion-item:last-child > summary,
.elementor-widget-n-accordion .e-n-accordion-item:last-child > [role="region"] {
    border: 0;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon svg {
    display: none;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-closed::before,
.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-opened::before {
    border-color: currentColor;
    border-style: solid;
    border-width: 0 2px 2px 0;
    content: "";
    display: block;
    height: 0.5em;
    width: 0.5em;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-closed::before {
    transform: rotate(-45deg);
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-opened::before {
    transform: rotate(45deg);
}
.elementor-widget-n-accordion .e-n-accordion-item summary{
    justify-content: space-between;
}
/* End RAMS accordion */

/* RAMS footer */
#site-footer.rams-site-footer {
    background: #030303;
    color: #fff;
    font-family: Montserrat, Arial, sans-serif;
    margin: 0;
    padding: 28px 0 18px;
    max-width:unset;
}
.rams-site-footer .b-footer-banners img.banner-left{
    max-height: 37px;
}
.rams-site-footer p{
    color:#fff;
}

.rams-site-footer__inner {
    margin: 0 auto;
    max-width: 1100px;
    text-align: center;
    width: 90%;
}

.rams-site-footer .block {
    margin: 0;
}

.rams-site-footer .block-title {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.rams-footer-nav .menu,
.rams-footer-nav .sub-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.rams-footer-nav > .menu {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.rams-footer-nav .menu > li {
    margin: 0;
    position: relative;
}

.rams-footer-nav .menu > li > a {
    color: #fff;
    display: block;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    padding: 8px 12px;
    text-decoration: none;
    text-transform: uppercase;
}

.rams-footer-nav .menu > li > a:hover,
.rams-footer-nav .menu > li > a:focus,
.rams-footer-nav .menu > li.current-menu-item > a,
.rams-footer-nav .menu > li.current-menu-ancestor > a {
    color: #f6a11a;
}

.rams-footer-nav .sub-menu {
    background: #111;
    bottom: 100%;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.35);
    display: none;
    left: 50%;
    min-width: 170px;
    position: absolute;
    transform: translateX(-50%);
    z-index: 20;
}

.rams-footer-nav .menu > li:hover > .sub-menu,
.rams-footer-nav .menu > li:focus-within > .sub-menu {
    display: block;
}

.rams-footer-nav .sub-menu a {
    color: #fff;
    display: block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    padding: 9px 12px;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

.rams-footer-nav .sub-menu a:hover,
.rams-footer-nav .sub-menu a:focus {
    background: #1b1b1b;
    color: #f6a11a;
}

.b-footer-banners {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    justify-content: center;
    padding: 16px 0 12px;
}

.b-footer-banners a {
    display: inline-flex;
}

.b-footer-banners .banner-left {
    display: block;
    height: auto;
    max-height: 64px;
    max-width: 180px;
    object-fit: contain;
    width: auto;
}

.rams-site-footer .copyright p {
    color: #d6d6d6;
    font-size: 12px;
    line-height: 1.5;
    margin: 0;
}

.rams-site-footer .copyright a {
    color: #d6d6d6;
    text-decoration: none;
}

.rams-site-footer .copyright a:hover,
.rams-site-footer .copyright a:focus {
    color: #f6a11a;
}

@media (max-width: 700px) {
    .rams-site-footer {
        padding-top: 22px;
    }

    .rams-footer-nav > .menu {
        row-gap: 2px;
    }

    .rams-footer-nav .menu > li > a {
        font-size: 12px;
        padding: 7px 9px;
    }

    .rams-footer-nav .sub-menu {
        bottom: auto;
        left: auto;
        position: static;
        transform: none;
    }

    .b-footer-banners {
        gap: 14px;
        padding-top: 14px;
    }

    .b-footer-banners .banner-left {
        max-height: 54px;
        max-width: 150px;
    }
}
/* End RAMS footer */

/* Resources flex box */

#rams_resources{
    gap: 20px;
    flex-wrap:wrap;
}
#rams_resources > div.e-flexbox-base{
    --rams-resource-color: #c72425;
    --rams-resource-icon: url('assets/img/icon-pdf.png');
    flex: 1;
    border: 1px solid #707070;
    padding: 0.6em 1em;
    position: relative;
    aspect-ratio: 1 / 1;
    max-width:230px;
    max-height:230px;
    min-width:200px;
    min-height:200px;
    overflow-y:auto;
}
#rams_resources > div.rams-resource--pdf{
    --rams-resource-color: #c72425;
    --rams-resource-icon: url('assets/img/icon-pdf.png');
}
#rams_resources > div.rams-resource--word{
    --rams-resource-color: #0056a7;
    --rams-resource-icon: url('assets/img/icon-docx.png');
}
#rams_resources > div.rams-resource--default{
    --rams-resource-color: #707070;
    --rams-resource-icon: none;
}
#rams_resources > div.e-flexbox-base > a {
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content: space-between;
    color: inherit;
    text-decoration: none;
}
#rams_resources > div.e-flexbox-base > a > div.e-div-block-base:first-child{
    background-image:var(--rams-resource-icon);
    background-repeat:no-repeat;
    height: 67px;
    min-height: 67px;
    width: 51px;
    align-self: end;
    position: relative;
    padding: 0;
    background-size:51px auto
}
#rams_resources > div.rams-resource--default > a > div.e-div-block-base:first-child{
    background-image:none;
    border: 2px solid var(--rams-resource-color);
    border-radius: 2px;
    box-sizing: border-box;
}
#rams_resources > div.rams-resource--default > a > div.e-div-block-base:first-child::before{
    content: "";
    position: absolute;
    top: -2px;
    right: -2px;
    border-top: 14px solid #ffffff;
    border-left: 14px solid var(--rams-resource-color);
}
#rams_resources > div.rams-resource--default > a > div.e-div-block-base:first-child::after{
    content: "FILE";
    position: absolute;
    right: 5px;
    bottom: 8px;
    color: var(--rams-resource-color);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}
#rams_resources > div.e-flexbox-base p{
    font-size:16px;
    font-weight:bold;
    margin:0;
}
#rams_resources > div.e-flexbox-base:hover{
    background-color: var(--rams-resource-color);
    color: #ffffff;
    border-color:transparent;
}

#rams_resources > div.e-flexbox-base:hover > a > div.e-div-block-base:first-child{
    background-position: right bottom;
}
#rams_resources > div.rams-resource--default:hover > a > div.e-div-block-base:first-child{
    border-color: #ffffff;
}
#rams_resources > div.rams-resource--default:hover > a > div.e-div-block-base:first-child::before{
    border-left-color: #ffffff;
}
#rams_resources > div.rams-resource--default:hover > a > div.e-div-block-base:first-child::after{
    color: #ffffff;
}
#rams_resources > div.e-flexbox-base:hover > a p{
    color: #ffffff;
}

/* End Resources flex box */
    

/* Sponsors custom loop */
.elementor-loop-container .Major.Club.Sponsors { display: none; }
.elementor-loop-container .Pinnacle.Soccer.Club.Sponsors { display: none; }
.elementor-loop-container .Major.Sponsors:not(.Club) { display: none; }
.elementor-loop-container .Platinum.Sponsors { display: none; }
.elementor-loop-container .Premier.League.Sponsors { display: none; }
.elementor-loop-container .Gold.Sponsors:not(.Umpire):not(.Coaches) { display: none; }
.elementor-loop-container .Junior.Gold.Sponsor { display: none; }
.elementor-loop-container .Gold.Umpire.Sponsors { display: none; }
.elementor-loop-container .Gold.Coaches.Sponsors { display: none; }
.elementor-loop-container .Silver.Sponsors:not(.Coaches) { display: none; }
.elementor-loop-container .Junior.Silver.Sponsor { display: none; }
.elementor-loop-container .Silver.Coaches.Sponsors { display: none; }
.elementor-loop-container .Bronze.Sponsors { display: none; }
.elementor-loop-container .Junior.Bronze.Sponsor { display: none; }
.elementor-loop-container .Apparel.Partners { display: none; }
.elementor-loop-container .BBQ.Sponsors { display: none; }
.elementor-loop-container .Minor.Sponsors { display: none; }
.elementor-loop-container .Referee.Sponsors:not(.Instructional) { display: none; }
.elementor-loop-container .Promo.Sponsors { display: none; }
.elementor-loop-container .Instructional.Referee.Sponsors { display: none; }


.elementor-loop-container > div:has(.Major.Club.Sponsors):nth-child(1 of :has(.Major.Club.Sponsors)) .Major.Club.Sponsors { display: block; }
.elementor-loop-container > div:has(.Pinnacle.Soccer.Club.Sponsors):nth-child(1 of :has(.Pinnacle.Soccer.Club.Sponsors)) .Pinnacle.Soccer.Club.Sponsors { display: block; }
.elementor-loop-container > div:has(.Major.Sponsors:not(.Club)):nth-child(1 of :has(.Major.Sponsors:not(.Club))) .Major.Sponsors:not(.Club) { display: block; }
.elementor-loop-container > div:has(.Platinum.Sponsors):nth-child(1 of :has(.Platinum.Sponsors)) .Platinum.Sponsors { display: block; }
.elementor-loop-container > div:has(.Premier.League.Sponsors):nth-child(1 of :has(.Premier.League.Sponsors)) .Premier.League.Sponsors { display: block; }
.elementor-loop-container > div:has(.Gold.Sponsors:not(.Umpire):not(.Coaches)):nth-child(1 of :has(.Gold.Sponsors:not(.Umpire):not(.Coaches))) .Gold.Sponsors:not(.Umpire):not(.Coaches) { display: block; }
.elementor-loop-container > div:has(.Junior.Gold.Sponsor):nth-child(1 of :has(.Junior.Gold.Sponsor)) .Junior.Gold.Sponsor { display: block; }
.elementor-loop-container > div:has(.Gold.Umpire.Sponsors):nth-child(1 of :has(.Gold.Umpire.Sponsors)) .Gold.Umpire.Sponsors { display: block; }
.elementor-loop-container > div:has(.Gold.Coaches.Sponsors):nth-child(1 of :has(.Gold.Coaches.Sponsors)) .Gold.Coaches.Sponsors { display: block; }
.elementor-loop-container > div:has(.Silver.Sponsors:not(.Coaches)):nth-child(1 of :has(.Silver.Sponsors:not(.Coaches))) .Silver.Sponsors:not(.Coaches) { display: block; }
.elementor-loop-container > div:has(.Junior.Silver.Sponsor):nth-child(1 of :has(.Junior.Silver.Sponsor)) .Junior.Silver.Sponsor { display: block; }
.elementor-loop-container > div:has(.Silver.Coaches.Sponsors):nth-child(1 of :has(.Silver.Coaches.Sponsors)) .Silver.Coaches.Sponsors { display: block; }
.elementor-loop-container > div:has(.Bronze.Sponsors):nth-child(1 of :has(.Bronze.Sponsors)) .Bronze.Sponsors { display: block; }
.elementor-loop-container > div:has(.Junior.Bronze.Sponsor):nth-child(1 of :has(.Junior.Bronze.Sponsor)) .Junior.Bronze.Sponsor { display: block; }
.elementor-loop-container > div:has(.Apparel.Partners):nth-child(1 of :has(.Apparel.Partners)) .Apparel.Partners { display: block; }
.elementor-loop-container > div:has(.BBQ.Sponsors):nth-child(1 of :has(.BBQ.Sponsors)) .BBQ.Sponsors { display: block; }
.elementor-loop-container > div:has(.Minor.Sponsors):nth-child(1 of :has(.Minor.Sponsors)) .Minor.Sponsors { display: block; }
.elementor-loop-container > div:has(.Referee.Sponsors:not(.Instructional)):nth-child(1 of :has(.Referee.Sponsors:not(.Instructional))) .Referee.Sponsors:not(.Instructional) { display: block; }
.elementor-loop-container > div:has(.Promo.Sponsors):nth-child(1 of :has(.Promo.Sponsors)) .Promo.Sponsors { display: block; }
.elementor-loop-container > div:has(.Instructional.Referee.Sponsors):nth-child(1 of :has(.Instructional.Referee.Sponsors)) .Instructional.Referee.Sponsors { display: block; }


/* End Sponsors custom loop */

/* RAMS Hall of Fame */
#block-views-hall-of-fame-seasons-block {
    margin-top: 1em;
    margin-bottom: 2em;
}

#block-views-hall-of-fame-seasons-block .block-title {
    margin: 0 0 0.75em;
    color: #000000;
    text-align: center;
    font-size: 1.25rem;
    line-height: 1.2;
    font-weight: 700;
}

#block-views-hall-of-fame-seasons-block .view-hall-of-fame-seasons {
    text-align: center;
}

#block-views-hall-of-fame-seasons-block .view-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 0.5em;
}

#block-views-hall-of-fame-seasons-block .views-row {
    display: inline-block;
    padding-left: 1em;
    margin-left: 1em;
    border-left: 1px solid #000000;
    line-height: 1.2;
}

#block-views-hall-of-fame-seasons-block .views-row:first-child,
#block-views-hall-of-fame-seasons-block .views-row.views-row-first {
    padding-left: 0;
    margin-left: 0;
    border-left: 0;
}

#block-views-hall-of-fame-seasons-block .views-row:only-child {
    display: none;
}

#block-views-hall-of-fame-seasons-block a {
    display: inline-block;
    color: #000000;
    text-decoration: none;
}

#block-views-hall-of-fame-seasons-block a:hover,
#block-views-hall-of-fame-seasons-block a:focus,
#block-views-hall-of-fame-seasons-block a.active {
    color: #0056a7;
    text-decoration: underline;
}

#block-views-hall-of-fame-seasons-block a.active {
    font-weight: 700;
}
.rams-hall-of-fame {
    width: 100%;
    margin: 2em auto;
}

.rams-hall-of-fame__year {
    margin: 0 0 3em;
}

.rams-hall-of-fame__year:last-child {
    margin-bottom: 0;
}

.rams-hall-of-fame__year-title {
    margin: 0 0 0.75em;
    color: #000000;
    text-align: center;
    font-size: 3rem;
    line-height: 1.1;
    font-weight: 700;
}

.rams-hall-of-fame .hall-of-fame {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 0.5em;
    row-gap: 0.75em;
}

.rams-hall-of-fame .division {
    display: block;
    min-height: 10em;
    border: 2px solid #ffffff;
    background-color: #f7f7f7;
    text-align: center;
    padding: 3em;
    font-size: 17px;
}

.rams-hall-of-fame .division-name {
    color: #000000;
    font-size: 30px;
    line-height: 1.15;
    font-weight: 700;
}

.rams-hall-of-fame .entries {
    margin-top: 1em;
}

.rams-hall-of-fame .entry-title {
    margin-bottom: 0.5em;
}

.rams-hall-of-fame .entry-title:last-child {
    margin-bottom: 0;
}

.rams-hall-of-fame .entry-title strong {
    display: block;
    color: #0056a7;
    font-weight: 700;
}

.rams-hall-of-fame .entry-title span {
    display: block;
    color: #000000;
}

.rams-hall-of-fame--empty {
    padding: 1em;
    border: 1px dashed #bdbdbd;
    background-color: #f7f7f7;
    color: #555555;
    text-align: center;
}

@media only screen and (max-width: 860px) {
    .rams-hall-of-fame__year-title {
        font-size: 2.25rem;
    }

    .rams-hall-of-fame .hall-of-fame {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rams-hall-of-fame .division {
        padding: 3em 1em;
    }
}

@media only screen and (max-width: 520px) {
    .rams-hall-of-fame__year-title {
        font-size: 2rem;
    }

    .rams-hall-of-fame .hall-of-fame {
        grid-template-columns: 1fr;
    }

    .rams-hall-of-fame .division {
        min-height: 0;
        padding: 2em 1em;
    }
}

/* Match the Drupal homepage newsletter form layout. */
#gform_wrapper_1 {
    width: min(1100px, 90vw) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

#gform_wrapper_1 .gform_fields {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    width: 100% !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
}

#gform_wrapper_1 .gfield--type-text,
#gform_wrapper_1 .gfield--type-email {
    box-sizing: border-box !important;
    flex: 0 0 48.5% !important;
    width: 48.5% !important;
    max-width: 485px !important;
    margin: 0 0 15px !important;
}

#gform_wrapper_1 .gfield--type-email {
    margin-left: 3% !important;
}

#gform_wrapper_1 .gfield--type-text > label,
#gform_wrapper_1 .gfield--type-email > label {
    display: none !important;
}

#gform_wrapper_1 .ginput_container_text,
#gform_wrapper_1 .ginput_container_email {
    width: 100% !important;
}

#gform_wrapper_1 input.large {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
    padding: 1em 2em !important;
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: clamp(12px, calc(1.07143vw + 5.14286px), 18px) !important;
    line-height: 1.42857 !important;
    letter-spacing: 0 !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    background: transparent !important;
    border: 2px solid #ffffff !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}

#gform_wrapper_1 input.large::placeholder {
    color: #999999 !important;
    opacity: 1 !important;
}

#gform_wrapper_1 input.large:focus {
    color: #ffffff !important;
    background: transparent !important;
    border-color: #ffffff !important;
    box-shadow: inset 0 0 5px rgba(255, 255, 255, 0.6), 0 0 1px rgba(255, 255, 255, 0.6) !important;
    outline: 0 !important;
    outline-offset: 0 !important;
}

#gform_wrapper_1 #field_1_4 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 15px !important;
}

#gform_wrapper_1 #field_1_4 .gfield_checkbox {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    width: 100% !important;
}

#gform_wrapper_1 #field_1_4 .gchoice {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 0 !important;
    white-space: nowrap !important;
}

#gform_wrapper_1 #field_1_4 .gchoice + .gchoice {
    margin: 0 0 0 3% !important;
}

#gform_wrapper_1 #field_1_4 .gfield-choice-input {
    position: static !important;
    display: block !important;
    flex: 0 0 13px !important;
    width: 13px !important;
    height: 1em !important;
    margin: 0 7px 0 0 !important;
    padding: 0 !important;
    appearance: auto !important;
    -webkit-appearance: checkbox !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    accent-color: auto !important;
}

#gform_wrapper_1 #field_1_4 .gfield-choice-input::before,
#gform_wrapper_1 #field_1_4 .gfield-choice-input::after {
    content: none !important;
    display: none !important;
}

#gform_wrapper_1 #field_1_4 label {
    display: block !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: clamp(12px, calc(1.07143vw + 5.14286px), 18px) !important;
    line-height: 1.42857 !important;
    letter-spacing: 0 !important;
}

#gform_wrapper_1 .gform_footer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 0 !important;
    width: 100% !important;
    margin-top: 0 !important;
}

/* Gravity Forms' Turnstile block is taller than Drupal's reCAPTCHA. */
#gform_wrapper_1 #gform_submit_button_1 {
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: 265px !important;
    min-width: 265px !important;
    height: auto !important;
    box-sizing: border-box !important;
    margin: 31px auto 0 !important;
    padding: 11px 66px !important;
    color: #ffffff !important;
    font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.42857 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    background: #0056a7 !important;
    border: 0 !important;
    border-radius: 5px !important;
}

@media screen and (max-width: 768px) {
    #gform_wrapper_1 #field_1_4 .gchoice {
        min-height: 20px !important;
    }
}

@media screen and (max-width: 640px) {
    #gform_wrapper_1 .gfield--type-text,
    #gform_wrapper_1 .gfield--type-email {
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: none !important;
    }

    #gform_wrapper_1 .gfield--type-email {
        margin-left: 0 !important;
    }

    #gform_wrapper_1 #field_1_4 .gfield_checkbox {
        flex-direction: column !important;
        align-items: center !important;
    }

    #gform_wrapper_1 #field_1_4 .gchoice + .gchoice {
        margin-top: 15px !important;
        margin-left: 0 !important;
    }
}
