// $Id: site.less 24990 2020-07-02 16:01:42Z efolley $ @import "/assets/less/breakpoints.less"; @import "/assets/less/colors.less"; @import "/assets/less/fonts.less"; @import "/assets/less/mixins.less"; //// SITE COLORS @text-color: #242e42; @blue: #2f4fb4; @orange: #ff8d07; @pale-yellow: #feffe6; @pale-gray: #cddde5; @paler-gray: #ebf1f4; //// TYPOGRAPHY /* nunito-sans-regular - latin */ @font-face { font-family: 'Nunito Sans'; font-style: normal; font-weight: 400; src: local(''), url('/assets/webfonts/nunito-sans-v11-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/webfonts/nunito-sans-v11-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ } /* nunito-sans-700 - latin */ @font-face { font-family: 'Nunito Sans'; font-style: normal; font-weight: 700; src: local(''), url('/assets/webfonts/nunito-sans-v11-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/webfonts/nunito-sans-v11-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ } /* oswald-regular - latin */ @font-face { font-family: 'Oswald'; font-style: normal; font-weight: 400; src: local(''), url('/assets/webfonts/oswald-v47-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/webfonts/oswald-v47-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ } /* oswald-700 - latin */ @font-face { font-family: 'Oswald'; font-style: normal; font-weight: 700; src: local(''), url('/assets/webfonts/oswald-v47-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('/assets/webfonts/oswald-v47-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ } @nunito: 'Nunito Sans', sans-serif; @oswald: 'Oswald', sans-serif; @text-font: @nunito; @header-font: @oswald; @font-size: 16px; @line-height: 1.5; @baseline: @font-size * @line-height; /* =============================================== GLOBAL ELEMENTS =============================================== */ div.preview-notice-v2 { display: none; } body.is-preview div.preview-notice-v2 { display: flex; } body:after { display: none; } html { font-family: @text-font; font-size: @font-size; color: @text-color; } input, textarea, select, button { font-size: inherit; font-family: inherit; } h1, h2, h3 { color: @text-color; font-family: @header-font; text-transform: uppercase; } h4, h5, h6 { color: @text-color; font-family: @header-font; } h1.page-title { font-size: 3rem; } a { color: @blue; } /* =============================================== VANILLA THEME OVERRIDES =============================================== */ //// ADDTOCALENDAR .addtocalendar { width: 100%; } .atc-style-blue .atcb-link, .atc-style-blue .atcb-link:hover, .atc-style-blue .atcb-link:active, .atc-style-blue .atcb-link:focus { padding: .5rem 1rem; border: 1px solid @orange; text-align: center; font-weight: bold; line-height: 1; background: @orange; .border-radius(5px); .box-shadow(none); } .atc-style-blue .atcb-item, .atc-style-blue .atcb-item-link { margin: 0; } //// BUTTONS button, a.button { background: @orange; border-color: @orange; color: @white; &.orange {} &.blue { background: @blue; border-color: @blue; color: @white; } &.pale-gray { background: @pale-gray; border-color: @pale-gray; color: @text-color; } } .primary-form .button-wrapper button { font-size: 1.5rem; padding: 1rem 2rem; } button:disabled, .button:disabled, button[aria-disabled="true"], .button[aria-disabled="true"] { opacity: 0.8; cursor: not-allowed; } //// BUTTON AMOUNTS body.layout-show-button-amounts form#contribution-form { .amounts { .simple-amount, .label-amount { label { background: @blue; color: @white; .border-radius; } input[name="amount"]:checked ~ label { background: @orange; color: @text-color; } } .simple-amount-other { background-color: @blue; color: @white; &.checked { background-color: @orange; color: @text-color; } } } } /* =============================================== PRINT STYLES =============================================== */ @media print { body { font-size: 12pt; background: none; } div, .preview-notice-v2 { display: none; } .page-container, #middle, #middle .sizer, #middle .sizer .container, #content, #content .story-content { display: block; margin: 0; padding: 0; border: 0; height: auto; width: auto; background: none; box-shadow: none; } #content .story-content div { display: block; } } /* =============================================== MAIN STRUCTURE =============================================== */ //// CONTAINERS .sizer, .like-sizer { max-width: 1160px; padding: 0 20px; margin: 0 auto; } .story-content { .contain-floats(); } //// TOP ALERT #alert-bar { background-color: @orange; } //// TOP #top { padding: 1rem 0; .container { display: flex; justify-content: space-between; align-items: center; } .logo { img { display: block; } } .sub-form { h3 { margin-bottom: .25rem; color: @blue; } input, button { height: 2.25rem; } input[name="email"] { max-width: 200px; } input[name="zip"] { max-width: 100px; } } } @media @sm-md { #top { .logo { max-width: 70%; } .sub-form { display: none; } } } //// MENU TOGGLE #menu-toggle { text-align: right; font-size: 2rem; a { color: @blue; text-decoration: none; } button { color: @blue; background: transparent; border: 0; padding: .5rem; } span { margin-right: .5rem; } .fas { transition: all 1s; } } @media @lg-up { #menu-toggle { display: none; } } @media @sm-only { #menu-toggle { span { display: none; } } } //// TOP NAV #topnav { a[href=""], a[href="#"] { cursor: default; } } @media @lg-up { #topnav { .sizer { > ul { display: flex; justify-content: space-between; > li { margin: 0; display: block; flex-grow: 1; position: relative; transition: background .2s; &:hover { background: @blue; a { color: @white; } } > a { padding: 0 10px; display: block; color: @text-color; line-height: 3rem; font-weight: bold; text-align: center; text-decoration: none; text-transform: uppercase; } } } .level2 { width: 250px; position: absolute; top: 3rem; left: -9999px; display: none; // fix for iOS z-index: 99999; ul { background: @dark-gray; li { a { color: @white; display: block; padding: 5px 10px; text-decoration: none; &:hover { background: @darker-gray; } } } } } > ul > li:hover .level2 { left: 0; display: block; // fix for iOS } ul ul ul { display: none; } } } } @media @sm-md { #topnav { > .sizer { padding: 0; > ul { display: none; width: 100%; > li { margin: 0; width: 100%; height: auto; display: block; border-top: 1px solid @white; > a { display: block; width: 100%; color: @white; background: @blue; text-align: left; height: auto; line-height: 1; padding: .5rem; i { display: none; } i.fa-search { display: unset; } } > div.subnav { float: right; padding: 4px 10px; color: @white; width: auto; background: none; i { font-size: 1rem; } } } } .level2 { display: none; > ul { > li { > a { line-height: 1; display: block; padding: .5rem .5rem .5rem 1.5rem; background: @blue; color: @white; border-top: 1px solid @white; border-bottom: none; text-decoration: none; } } } } .level3 { display: none; } } } } //// MIDDLE #middle { min-height: 200px; } body:not(.homepage) { #middle { padding: 2rem 0; } } body.is-story:not(.layout-no-sidebar) { #middle { .container { display: flex; } #content { width: 65%; margin-right: 5%; } #sidebar { width: 30%; } } } @media @sm-md { body.is-story:not(.layout-no-sidebar) { #middle { #content { width:100%; margin-right: 0; } #sidebar { display: none; } } } } .tools-wrapper { padding: .75rem 0; margin: 0; background-color: @paler-gray; box-shadow: -1px 10px 6px -3px rgba(187,187,187,0.4) inset; .bc-wrapper { margin: 0; text-transform: uppercase; font-weight: bold; font-family: @oswald; } } #sidebar { .news { margin-bottom: 3rem; .source { font-style: italic; } .readmore a { background: @orange; border-color: @orange; color: @white; padding: .5rem 1rem; border-radius: 5px; font-weight: bold; } } } //// BOTTOM SUBSCRIBE #bottom-subscribe { background-color: @paler-gray; padding: 2rem 0; .container { display: flex; justify-content: center; } h3 { margin-bottom: .25rem; color: @blue; span { color: @text-color; } } p { margin-bottom: .25rem; } input, button { height: 2.25rem; } input[name="email"] { width: 400px; } input[name="zip"] { width: 200px; } .form-item { margin-right: .5rem; } } @media @sm-only { #bottom-subscribe { input[name="email"], input[name="zip"], button { width: 100%; max-width: none; } .form-item { width: 100%; max-width: none; } } } //// BOTTOM #bottom { padding: 2rem 0; .logo { margin-bottom: 1.5rem; } .grouper { display: flex; //justify-content: space-between; align-items: center; margin-bottom: 1.5rem; } .social-icons { margin-right: 1rem; a { height: 3rem; width: 3rem; .fab { font-size: 2rem; line-height: 3rem; } } } } /* =============================================== HOMEPAGE =============================================== */ body.homepage { #middle { > .sizer { max-width: none; padding: 0; } } } //// HERO body.homepage .hero { padding: 2rem 0 0; background-color: @paler-gray; box-shadow: -1px 10px 6px -3px rgba(187,187,187,0.4) inset; .sizer { max-width: 1400px; padding: 0; } .img { margin: 0; } img { display: block; } } //// SUPPORT body.homepage .support { padding: 2rem 0; background-color: @pale-yellow; //color: @white; h2 { font-size: 2.5rem; //color: @white; } p { font-size: 1.5rem; font-weight: bold; } .buttons { display: flex; gap: 1rem; } a.button { border-color: @blue; background-color: @blue; color: @white; font-weight: normal; } .buttonize { margin-bottom: 0; } } body.homepage .support.no-media { padding: 1rem 0; .card { max-width: 940px; margin: 0 auto; h2 { text-align: center; } .buttons { justify-content: center; } } } //// PROGRAMS body.homepage .prog-heading { padding: 2rem 0; text-align: center; h2 { margin-bottom: 0; font-size: 3rem; span { color: @blue; } } } body.homepage .program { > .sizer { max-width: 1920px; padding: 0; } .card { .card-content-inner { padding: 1rem 2rem; } h2 { font-size: 2.25rem; } } } @media @lg-up { body.homepage .program { .card { .card-content-inner { max-width: 570px; } } .card.reversed-up { .card-content-inner { margin-left: auto; } } } } body.homepage .prog-discovery, body.homepage .prog-workforce, body.homepage .prog-covid { //background-color: @paler-gray; } //// HIGHLIGHTS body.homepage .highlights { padding: 2rem 0; background-color: @paler-gray; h3 { color: @orange; } .leadin-card { background-color: @white; .card-media { margin-bottom: 0; } .card-content { padding: 1rem 3rem; } h3.title { text-transform: none; color: @text-color; font-size: 1.5rem; } } .listed-item { text-align: right; text-transform: uppercase; } } //// BOARD MESSAGE body.homepage .board-msg { padding: 2rem 0; background-color: @pale-yellow; //color: @white; h2 { font-size: 2.5rem; //color: @white; } p { font-size: 1rem; font-weight: bold; } a.button { border-color: @blue; background-color: @blue; color: @white; } } //// SPONSORS body.homepage .sponsors { padding: 2rem 0; h2 { font-size: 2.25rem; text-align: center; margin-bottom: 3rem; } h3 { font-size: 1.5rem; text-align: center; color: @blue; } img { max-width: 250px; } .auto-block-grid > div { margin-top: 1rem; margin-bottom: 1rem; } .gold-sponsors, .silver-sponsors { margin-bottom: 3rem; } }