/* --------------------------------------------------- ROOTS ----------------------------------------------------*/ :root { --yellow-mid: #F7BF08; --yellow-bright: #fde28c; --black-mid: #39352A; --grey-mid: #898989; --grey-bright: #D5D5D5; --turquoise-bright: #BBD9D3; --white: #FFF; } /* --------------------------------------------------- BASICS ----------------------------------------------------*/ * { margin: 0; padding: 0; box-sizing: border-box; } /* --------------------------------------------------- LAYOUT ----------------------------------------------------*/ .menu { width: 100%; height: 70px; position: fixed; top: 0; right: 0; background-color: var(--yellow-mid); } .intro { width: 100%; margin: 70px 0 0 0; background-color: var(--yellow-mid); } .feature { width: 100%; background-color: var(--turquoise-bright); } .cta-top { width: 100%; color: var(--yellow-mid); background-color: var(--black-mid); } .content { width: 100%; margin: 70px 0 0 0; background-color: var(--white); } .content-index { width: 100%; background-color: var(--white); } .cta-bottom, .outro { width: 100%; background-color: var(--yellow-mid); } .footer { width: 100%; min-height: 300px; color: var(--grey-mid); background-color: var(--black-mid); } /* Desktop Styles */ @media only screen and (min-width: 961px) { .container-reader { width: 600px; margin: 0 auto; padding: 60px 20px 120px 20px; } .container-full { padding: 60px 80px 120px 80px; } .footer { padding: 40px 40px 0 40px; } } /* Mobile Styles */ @media only screen and (min-width: 600px) and (max-width: 960px) { .container-reader, .container-full { width: 600px; margin: 0 auto; padding: 60px 20px 120px 20px; } } @media only screen and (max-width: 960px) { .container-reader, .container-full, .footer { padding: 60px 20px 120px 20px; } } /* Mobile Styles*/ @media only screen and (max-width: 480px) { .menu { position: static; } .intro { margin: 0; } .content { margin: 0; } } /* --------------------------------------------------- CARDS ----------------------------------------------------*/ .card-deck, .card, .footer-card-deck { display: flex; } .card { max-width: 400px; color: var(--black-mid); } .cta-top .card, .outro .card { max-width: 600px; } .cta-top .card { color: var(--yellow-mid); } .footer-card p { margin: 0 0 2px 0; } .footer-card:nth-child(1), .footer-card:nth-child(2) { margin: 0 0 20px 0; } .card-gfx { margin: 0 0 20px 0; } /* Mobile Styles */ @media only screen and (max-width: 960px) { .card-deck, .card, .footer-card-deck { flex-direction: column; } .card { align-self: center; } .card:nth-child(2) { margin: 80px 0 80px 0; } .card-gfx, .card-text, .footer-card { text-align: center; } } /* Desktop Styles */ @media only screen and (min-width: 961px) { .card-deck, .footer-card-deck, .cta-top .card, .outro .card { flex-direction: row; } .card { flex-direction: column; } .card-deck { justify-content: space-evenly; } .card:nth-child(2) { margin: 0 40px 0 40px; } .card-gfx, .card-text { text-align: center; } .cta-top .card-gfx, .cta-top .card-text, .outro .card-gfx, .outro .card-text { text-align: left; } .cta-top .card-gfx, .outro .card-gfx { margin: 0 40px 0 0; } .footer-card-deck { justify-content: space-between; } .footer-card:nth-child(1), .footer-card:nth-child(2) { flex-grow: 1; } .footer-card:nth-child(3) { text-align: right; flex-grow: 10; } } /* --------------------------------------------------- TYPO ----------------------------------------------------*/ body { background-color: var(--white); font: 18px/1.5 "Noto Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; line-height: 1.5; font-weight: 400; word-wrap: break-word; color: var(--grey-mid); } h1, h2, h3, h4 { font-weight: 400; color: var(--black-mid); } h3 { margin: 0 0 20px 0; } p + h3 { margin: 60px 0 20px 0; } h4 { color: var(--grey-mid); } /* Desktop Styles */ @media only screen and (min-width: 481px) { body { font-size: 14px; } h1, h2{ font-size: 26px; } h3, h4 { font-size: 14px; } } /* Mobile Styles */ @media only screen and (max-width: 480px) { h1, h2 { font-size: 20px; } } /* --------------------------------------------------- LINKS ----------------------------------------------------*/ a, a:hover, a:focus { color: var(--grey-mid); text-decoration: none; } p a, p a:hover, p a:focus { font-weight: 700; } ol li p a, ol li p a:hover, ol li p a:focus { color: var(--grey-bright); } .footer a, .footer a:hover, .footer a:focus { font-weight: 400; } /* --------------------------------------------------- TYPO ELEMENTS ----------------------------------------------------*/ p { margin: 0 0 20px 0; } hr { height: 0; margin: 80px 0 20px 0; border-top: 1px solid var(--grey-bright); } blockquote { margin: 0; padding: 0 0 0 20px; font-style: italic; border-left: 1px solid var(--grey-bright); } strong { font-weight: 700; } strong, h1 strong, h2 strong, h3 strong { text-decoration: none; font-weight: 400; color: var(--black-mid); } .footer h3, .footer h4 { color: var(--yellow-mid); margin: 0 0 2px 0; } em { background: linear-gradient(transparent 66%, var(--yellow-bright) 66%); font-style: normal; } .intro em { background: linear-gradient(transparent 66%, var(--turquoise-bright) 66%); font-style: normal; } .footnote { color: var(--grey-bright); } ol { padding-inline-start: 20px; } /* --------------------------------------------------- BUTTONS ----------------------------------------------------*/ .btn-wrapper { margin: 40px 0 0 0; } .btn { -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0px; padding: 8px 30px; text-align: center; text-decoration: none; } .btn-color-yellow, .btn-color-yellow:visited, .btn-color-yellow:link, .btn-color-yellow:hover, .btn-color-yellow:active { font-weight: 700; background: var(--white); color: var(--yellow-mid); border: solid var(--yellow-mid) 5px; } .btn-color-yellow-black, .btn-color-yellow-black:visited, .btn-color-yellow-black:link, .btn-color-yellow-black:hover, .btn-color-yellow-black:active { font-weight: 700; background: var(--black-mid); color: var(--yellow-mid); border: solid var(--yellow-mid) 5px; } .btn-color-black, .btn-color-black:visited, .btn-color-black:link, .btn-color-black:hover, .btn-color-black:active { font-weight: 700; background: var(--yellow-mid); color: var(--black-mid); border: solid var(--black-mid) 5px; } /* --------------------------------------------------- MENU ----------------------------------------------------*/ .nav-list { margin: 0 0 40px 0; } .nav-bar { height: 70px; } .brand, .brand-index { position: absolute; padding: 12px 0 0 20px; float: left; line-height: 70px; } .brand-index { opacity: 0; } .nav-container { margin: 0 auto; } nav { float: right; } nav ul { list-style: none; margin: 0; padding: 0; } nav ul li { float: left; position: relative; } nav ul li a, nav ul li a:visited { display: block; padding: 0 20px; line-height: 70px; background: var(--yellow-mid); color: var(--black-mid); text-decoration: none; } nav ul li a:hover, nav ul li a:visited:hover { color: var(--black-mid); } nav ul li a:not(:only-child):after, nav ul li a:visited:not(:only-child):after { padding-left: 4px; content: ' ▾'; } nav ul li ul li { min-width: 150px; } nav ul li ul li a { padding: 15px; line-height: 20px; } .nav-dropdown { position: absolute; display: none; z-index: 1; } .nav-mobile { display: none; position: absolute; top: 0; right: 0; background: var(--yellow-mid); height: 70px; width: 70px; } /* Mobile Styles */ @media only screen and (max-width: 960px) { .nav-mobile { display: block; } nav { width: 100%; padding: 70px 0 15px; } nav ul { display: none; } nav ul li { float: none; } nav ul li a { padding: 15px; line-height: 20px; padding-left: 25%; } nav ul li ul li a { padding-left: 30%; } nav ul li:last-child a { padding-bottom: 60px; } nav ul li:last-child a { box-shadow: 0px 7px 15px -6px rgba(57,53,42,0.2); } .nav-dropdown { position: static; } } /* Desktop Styles */ @media screen and (min-width: 961px) { .nav-list { display: block !important; } } #nav-toggle { position: absolute; left: 18px; top: 22px; cursor: pointer; padding: 12px 35px 16px 0px; } #nav-toggle span, #nav-toggle span:before, #nav-toggle span:after { cursor: pointer; border-radius: 1px; height: 2px; width: 35px; background: var(--black-mid); position: absolute; display: block; content: ''; /* transition: all 300ms ease-in-out; */ } #nav-toggle span:before { top: -10px; } #nav-toggle span:after { bottom: -10px; } #nav-toggle.active span { background-color: transparent; } #nav-toggle.active span:before, #nav-toggle.active span:after { top: 0; } #nav-toggle.active span:before { transform: rotate(45deg); } #nav-toggle.active span:after { transform: rotate(-45deg); } /* --------------------------------------------------- GRAPHICS ----------------------------------------------------*/ .sign { margin: 0 0 20px 0; }