slowtwitch-news/style.css

1333 lines
26 KiB
CSS

/*
Theme Name: Slowtwitch News Theme
Text Domain: Slowtwitch
Version: 1.0.0
Author: Ross Trottier
*/
/*
============================
CSS RESETS + GLOBALS
============================
*/
* {
box-sizing: border-box;
}
body {
margin: 0;
font-size: 1.25rem;
font-family: "Roboto", sans-serif;
line-height: 1.6;
overflow-anchor: none;
/* min-width: 320px; */
}
input, button, textarea, select {
font: inherit;
}
/*
============================
TYPOGRAPHY
============================
*/
h1 {
font-size: 3rem;
}
.st-site-title {
transform: scale(1, 1);
transition: transform 300ms;
transform-origin: top left;
width: 100%;
margin: 0;
}
.st-site-title__ball {
margin: 0;
width: 100%;
transform: scale(1, 1) translate(0%,0%);
transition: transform 300ms;
}
.st-site-title-link {
text-decoration: none;
}
.st-site-title-grid {
margin: 4rem 0;
display: grid;
grid-template-columns: 15% 85%;
align-items: center;
}
.st-title-scrolled {
transform: scale(0,0);
}
.st-title-scrolled__ball {
transform: scale(.85, .85) translate(0, -120px);
}
@media (min-width: 460px) {
.st-title-scrolled__ball {
transform: scale(.75, .75) translate(-10px, -145px);
}
}
@media (min-width: 590px) {
.st-title-scrolled__ball {
transform: scale(.75, .75) translate(-10px, -155px);
}
}
@media (min-width: 670px) {
.st-title-scrolled__ball {
transform: scale(.75, .75) translate(-10px, -160px);
}
}
@media (min-width: 725px) {
.st-title-scrolled__ball {
transform: scale(.75, .75) translate(-10px, -170px);
}
}
@media (min-width: 760px) {
.st-title-scrolled__ball {
transform: scale(.5, .5) translate(-50px, -270px);
}
}
@media (min-width: 960px) {
.st-title-scrolled__ball {
transform: scale(.45, .45) translate(-90px, -310px);
}
}
@media (min-width: 1025px) {
.st-title-scrolled__ball {
transform: scale(.45, .45) translate(-90px, -320px);
}
}
@media (min-width: 1100px) {
.st-title-scrolled__ball {
transform: scale(.45, .45) translate(-90px, -330px);
}
}
@media (min-width: 1150px) {
.st-title-scrolled__ball {
transform: scale(.45, .45) translate(-90px, -340px);
}
}
@media (min-width: 1200px) {
.st-title-scrolled__ball {
transform: scale(.4, .4) translate(-125px, -435px);
}
}
@media (min-width: 1275px) {
.st-title-scrolled__ball {
transform: scale(.4, .4) translate(-125px, -445px);
}
}
@media (min-width: 1350px) {
.st-title-scrolled__ball {
transform: scale(.4, .4) translate(-125px, -455px);
}
}
@media (min-width: 1350px) {
.st-title-scrolled__ball {
transform: scale(.4, .4) translate(-125px, -465px);
}
}
/*
============================
LAYOUT
============================
*/
.st-main-grid {
display: grid;
grid-template-columns: minmax(1em, 1fr) minmax(260px, 725px) minmax(1em, 1fr);
}
.st-main-grid > * {
grid-column: 2;
}
@media (min-width: 760px) {
.st-main-grid {
grid-template-columns: minmax(1em, 1fr) minmax(500px, 1400px) minmax(1em, 1fr);
}
}
/*
============================
SECTIONS
============================
*/
/* header bar */
.st-header {
position: sticky;
top: 0;
-webkit-transition: max-height 300ms;
-moz-transition: max-height 300ms;
-ms-transition: max-height 300ms;
-o-transition: max-height 300ms;
transition: max-height 300ms;
max-height: 400px;
}
.st-header-scrolled {
max-height: 80px;
background-color: rgba(255, 255, 255, 0.95);
}
.st-header-icon-bar {
width: 100%;
display: flex;
justify-content: flex-end;
color: black;
margin-top: 1em;
transition: margin 300ms;
}
.st-header-logo {
width: 100%;
}
.st-header-icon {
text-decoration: none;
cursor: pointer;
color: black;
margin-top: 3px;
}
.st-header-icon-bar__item {
transition: margin 300ms;
margin-left: calc((100% - (4 * 47px)) / (4 - 1));
}
.st-header-icon-bar__item .safari {
margin-left: calc((100% - (4 * 62px)) / (4 - 1));
}
@media (min-width: 760px) {
.st-header-icon-bar__item {
margin-left: 2em;
}
}
/** Safari */
@supports (-webkit-touch-callout: none) {
.st-header-icon-bar__item {
transition: margin 300ms;
margin-left: calc((100% - (4 * 62px)) / (4 - 1));
}
}
.st-icon-bar-sticky .st-header-icon-bar__item {
margin-left: .75em;
}
.st-icon-bar-sticky .sticky-hide {
display: none;
}
.st-icon-bar-sticky .st-open-nav,
.st-icon-bar-sticky .st-open-search {
border-radius: 20%;
padding: .1em .4em;
background: #fff;
box-shadow: 0 0 3px rgb(0 0 0 / 30%);
pointer-events: auto;
}
@media (min-width: 760px) {
.st-header-icon-bar {
margin-top: 1.5em;
}
.st-icon-bar-sticky {
justify-content: flex-end;
margin-top: 1em;
}
.st-icon-bar-sticky .st-open-nav {
margin-left: 1em;
}
.st-icon-bar-sticky .st-open-search {
margin-right: 0;
}
}
@media (min-width: 1200px) {
.st-nav-btn i,
.st-header-icon i{
font-size: 2rem;
}
.st-header-icon-bar a,
.st-header-icon {
font-size: 1.25rem;
}
.st-icon-bar-sticky .st-open-nav,
.st-icon-bar-sticky .st-open-search {
padding: .6em .8em;
}
.st-icon-bar-sticky {
margin-top: .5em;
}
.st-icon-bar-sticky .st-open-nav,
.st-icon-bar-sticky .st-open-search {
box-shadow: none;
background: none;
}
}
.st-desktop-nav-links {
display: none;
}
@media (min-width: 760px) {
.st-desktop-nav-links {
display: flex;
padding: 0;
align-self: center;
list-style: none;
margin: 0;
margin-right: auto;
transition: margin 300ms;
}
.st-desktop-nav-links li {
margin-right: 1em;
}
.st-desktop-nav-links li a {
text-decoration: none;
color: #0b4fa0;
}
.st-desktop-nav-links li a:hover {
color: #FFDB12;
}
.st-desktop-nav-links-scrolled {
margin-left: 80px;
}
}
@media (min-width: 1125px) {
.st-desktop-nav-links-scrolled {
margin-left: 100px;
}
}
/* nav */
.st-search-overlay,
.st-nav {
position: fixed;
background: #fff;
width: 100%;
top: 0;
right: 0;
bottom: 0;
left: -110%;
transform: translateX(0);
transition: transform ease-in-out 250ms;
grid-template-rows: minmax(2.25rem, 3rem) 1fr;
pointer-events: auto;
}
.st-nav-is-open,
.st-search-is-open {
transform: translateX(110%);
}
.st-nav-btn {
background: 0;
border: 0;
font-size: 1.25rem;
cursor: pointer;
}
.st-nav-links {
padding: 0;
margin-top: 0;
}
.st-nav-links,
.st-nav-links ul {
list-style: none;
}
.st-nav-links .menu-item a {
text-decoration: none;
cursor: pointer;
font-size: 2rem;
text-transform: uppercase;
margin-bottom: 1em;
letter-spacing: 1px;
color: #0b4fa0;
}
.st-nav-links .menu-item a:hover,
.st-nav-links .menu-item a:hover:active {
color: #d3d3d3;
}
.st-close-nav,
.st-close-search {
text-align: right;
font-size: 2rem;
height: 3rem;
}
.st-search-form {
margin-top: 2em;
}
.st-searchbar-container {
display: flex;
flex-direction: row;
justify-content: center;
}
.st-search-box {
outline: none;
border: none;
border-bottom: 2px solid #0b4fa0;
color: #0b4fa0;
}
.st-btn-search {
margin-left: 1em;
}
.st-btn-search i {
color: #0b4fa0;
font-size: 1.25em;
}
@media (min-width: 760px) {
.st-nav-is-open {
text-align: center;
}
.st-nav-links {
margin-top: 2.5em;
font-size: 2.5rem;
}
.st-search-form {
margin-top: 5em;
}
.st-search-box {
width: 500px;
}
}
@media (min-width: 1200px) {
.st-search-box {
width: 1000px;
}
}
/* footer */
.st-footer {
color: #0b4fa0;
background: rgba(0, 0, 0, 0.2);
display: grid;
grid-template-columns: minmax(1em, 1fr) minmax(130px, 500px) minmax(130px, 500px) minmax(1em, 1fr);
grid-template-areas:
"lpad socials partners rpad"
"lpad menu logo rpad"
"lpad copy copy rpad";
grid-auto-rows: max-content;
}
.st-footer-socials {
grid-area: socials;
display: flex;
flex-direction: column;
}
.st-footer-icon {
font-size: 1.5rem;
margin-top: 1.5em;
color: #0b4fa0;
}
.st-footer-icon:hover,
.st-footer-icon:active {
color: #FFDB12;
}
.st-footer-copyright {
grid-area: copy;
font-size: .6rem;
text-align: right;
color: white;
background: #0b4fa0;
padding: .2em .5em .2em;
margin-bottom: 0;
}
.st-footer-site-title {
grid-area: logo;
align-self: end;
}
.st-footer-site-title-img {
width: 100%;
}
.st-footer-partners {
grid-area: partners;
text-align: right;
}
.st-footer-partners__title {
margin-bottom: 0;
}
.st-footer-partners__list {
list-style: none;
margin-top: .2em;
}
.st-footer-partners__list-item {
font-size: .80rem;
}
.st-footer-partners__list-item a,
.st-footer-nav-links a {
text-decoration: none;
color: #0b4fa0;
}
.st-footer-partners__list-item a:hover,
.st-footer-partners__list-item a:active,
.st-footer-nav-links a:hover,
.st-footer-nav-links a:active {
color: #FFDB12;
}
.st-footer-menu {
grid-area: menu;
align-self: end;
}
.st-footer-nav-links {
list-style: none;
margin: 0;
padding: 0;
}
@media (min-width: 760px) {
.st-footer {
grid-template-columns: minmax(1em, 1fr) minmax(50px, 80px) repeat(2, minmax(130px, 660px)) minmax(1em, 1fr);
grid-template-areas:
"lpad socials empty partners rpad"
"lpad menu empty partners rpad"
"lpad logo logo logo rpad"
"lpad copy copy copy rpad";
align-items: end;
}
.st-footer-partners__list-item a:hover,
.st-footer-partners__list-item a:active,
.st-footer-nav-links a:hover,
.st-footer-nav-links a:active {
color: #FFDB12;
}
.st-footer-partners,
.st-footer-socials {
align-self: start;
margin-top: 3em;
}
.st-footer-partners__title {
margin: 0;
}
.st-footer-partners ul {
margin-bottom: 0;
}
.st-footer-site-title {
justify-self: center;
margin-top: 1em;
}
.st-footer-copyright {
font-size: 1rem;
}
.st-footer-partners__list-item {
font-size: 1.2rem;
}
.st-footer-icon {
font-size: 2rem;
margin-top: 0;
}
.st-footer-nav-links a {
font-size: 2rem;
}
}
/* article section */
.st-article-section,
.st-ad-section {
border-bottom: 1px #cec9c2 solid;
padding-bottom: 2em;
margin-bottom: 2em;
}
.st-article-section:last-of-type,
.st-ad-section:last-of-type {
border-bottom: none;
padding-bottom: 0;
}
.st-article-section-title {
display: flex;
justify-content: space-between;
margin-top: 0;
margin-bottom: .5em;
color: black;
font-weight: 800;
text-transform: uppercase;
}
.st-article-section-title > a {
text-decoration: none;
color: black;
}
.st-article-section-topper {
margin-bottom: 10px;
transition: margin 300ms;
}
@media (min-width: 760px) {
.st-article-section-topper-scrolled {
margin-bottom: 125px;
}
.st-article-section-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1em;
}
.st-article-section-grid__article-page {
grid-template-columns: repeat(3, 1fr);
}
.st-article-section-highlight,
.st-article-section-bottom {
grid-column: 1 / span 3;
}
.st-article-section-highlight {
display: flex;
flex-direction: column;
flex-wrap: wrap;
gap: 1em;
justify-self: flex-start;
align-content: flex-start;
}
.st-article-section-title {
width: 100%;
margin-bottom: 0;
}
.st-article-section {
border: none;
margin-bottom: 0;
}
.st-article-section-bottom {
grid-column: 1 / span 4;
display: flex;
flex-wrap: wrap;
gap: 1em;
}
.st-article-section-main-article__bottom {
display: none;
}
.st-article-section-wide {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1em;
}
.st-article-section-wide .st-article-section-title {
grid-column: 1 / span 2;
}
.st-ad-section__article-page {
position: -webkit-sticky;
position: sticky;
top: 85px;
left: 0;
align-self: start;
z-index: -1000;
}
}
@media (min-width: 1200px) {
.st-article-section-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-areas:
"article-main article-main article-main ad"
"article-main article-main article-main ad"
"article-secondary article-secondary article-secondary ad"
"article-secondary article-secondary article-secondary ad";
gap: 1em;
}
.st-article-section-highlight{
flex-direction: row;
grid-area: article-main;
padding-bottom: 0;
}
.st-article-section-bottom {
grid-area: article-secondary;
}
.st-article-section-wide {
grid-template-columns: repeat(4, 1fr);
}
.st-article-section-wide .st-article-section-title {
grid-column: 1 / span 4;
}
.st-article-section-title {
font-size: 2.6rem;
}
}
/* ad section */
.st-ad-section {
display: flex;
flex-direction: column;
justify-content: center;
}
.st-ad-section-long {
margin-bottom: 2em;
}
.st-ad-section-long-post-end a,
.st-ad-section-long-post-end img,
.st-ad-section-long-post-end video {
width: 100%;
height: auto;
margin-bottom: 1em;
}
.st-ad-section-long-post-end video,
.st-ad-section-long-post-end img,
.st-ad-section-long-post-end a {
margin-bottom: 0;
}
@media (min-width: 760px) {
.st-ad-section {
margin-top: 3.2em;
justify-content: space-between;
border-bottom: none;
padding-left: 1em;
padding-bottom: 0;
border-left: 1px #0b4fa0 solid;
margin-bottom: 0;
}
.st-ad-section__article-page {
grid-column: 3 / span 2;
border: 0;
padding-bottom: 3em;
justify-content: start;
gap: 1em;
}
.st-ad-section-long-post-end {
grid-column: 1 / span 4 !important;
}
}
@media (min-width: 1200px) {
.st-ad-section {
grid-area: ad;
}
.st-ad-section__article-page {
grid-column: 4 / span 1;
}
}
.st-ad-section img,
.st-ad-section a,
.st-ad-section video,
.st-ad-section-long img,
.st-ad-section-long a {
display: block;
width: 100%;
height: auto;
margin-bottom: 1em;
}
@media (min-width: 760px) {
.st-ad-section img,
.st-ad-section a,
.st-ad-section video,
.st-ad-section-long img,
.st-ad-section-long a {
margin-bottom: 0;
}
}
.st-ad-section-long-archive a,
.st-ad-section-long-archive img,
.st-ad-section-long-archive video {
width: 100%;
height: auto;
}
.slowt-in-content-ad img,
.local-in-content-ad img {
max-width: 100%;
height: auto;
}
.slowt-article-mid-roll a,
.slowt-article-mid-roll img {
width: 100%;
height: auto;
}
/*
============================
COMPONENTS
============================
*/
/* main article card */
.st-article-section-main-article__image-link img {
width: 100%;
object-fit: cover;
border-radius: 5px;
}
.st-article-section-main-article__category-link {
text-decoration: none;
color: #fff;
padding: .3em .75em;
background: #0b4fa0;
font-size: .8rem;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 600;
}
.st-article-section-main-article__title {
text-decoration: none;
color: #454545;
font-size: 1.2rem;
line-height: 1.2;
}
.st-article-section-main-article__title h3 {
margin: .25em 0;
}
.st-article-section-main-article__excerpt {
font-size: .75em;
margin: 0;
}
.st-article-section-main-article__author-link {
text-decoration: none;
color: #8b8680;
font-size: .5em;
}
.st-article-section-main-article__datetime {
color: #8b8680;
font-size: .5em;
}
@media (min-width: 760px) {
.st-article-section-main-article {
width: 100%;
}
.st-article-section-main-article__image-link img {
height: 500px;
}
.st-article-section-bottom .st-article-section-main-article {
width: 45%;
}
.st-article-section-bottom .st-article-section-sub-article-stack {
width: 50%;
}
}
@media (min-width: 1200px) {
.st-article-section-main-article,
.st-article-section-bottom .st-article-section-main-article {
width: 55%;
}
}
/* sub article card */
.st-article-section-sub-article,
.st-related-article {
display: flex;
flex-direction: row;
margin-top: 1em;
}
.st-article-section-sub-article__image-link img {
width: 160px;
height: auto;
aspect-ratio: 1.5;
object-fit: cover;
object-position: bottom right;
border-radius: 4px;
}
.st-article-section-sub-article__category-link {
text-decoration: none;
color: #fff;
padding: .3em .75em;
background: #0b4fa0;
font-size: .75rem;
text-transform: uppercase;
letter-spacing: 2px;
font-weight: 600;
}
.st-article-section-sub-article__text-container {
display: flex;
flex-direction: column;
align-items: flex-start;
margin-left: .5em;
}
.st-article-section-sub-article__title {
font-size: .75rem;
text-decoration: none;
color: #454545;
font-weight: 500;
}
.st-article-section-sub-article__title h3 {
margin-top: .2em;
}
@media (min-width: 760px) {
.st-article-section-sub-article-stack {
margin-top: 0;
}
.st-article-section-sub-article:first-of-type {
margin-top: 0;
}
.st-related-article {
flex-direction: column;
max-width: 160px;
}
}
@media (min-width: 1200px) {
.st-article-section-sub-article-stack,
.st-article-section-bottom .st-article-section-sub-article-stack {
width: 40%;
}
}
/* sub article wide card */
.st-article-section-wide-article {
display: flex;
flex-direction: column;
margin-top: 1em;
}
.st-article-section-wide-article__image-link img {
max-width: 100%;
height: auto;
aspect-ratio: 1.5;
object-fit: cover;
object-position: center;
border-radius: 5px;
}
.st-article-section-wide-article__category-link {
text-decoration: none;
color: #fff;
padding: .3em .75em;
background: #0b4fa0;
font-size: .8rem;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 600;
}
.st-article-section-wide-article__title {
text-decoration: none;
color: #454545;
font-size: 1.2rem;
line-height: 1.2;
}
.st-article-section-wide-article__title h3 {
margin: .25em 0;
}
.st-article-section-wide-article__excerpt {
font-size: .75em;
margin: 0;
}
.st-article-section-wide-article__author-link {
text-decoration: none;
color: #8b8680;
font-size: .5em;
}
/* chips */
.st-chip {
padding: .25em .75em;
font-size: 1rem;
text-decoration: none;
cursor: pointer;
border-radius: 15px;
color: white;
font-weight: 500;
letter-spacing: 1px;
}
@media (min-width: 1200px) {
.st-icon-bar-sticky .st-chip {
margin-top: auto;
margin-bottom: auto;
}
}
.st-chip-primary {
background: #0b4fa0;
}
.st-chip-secondary {
background: #FFDB12;
color: #454545;
}
.st-chip-secondary:hover,
.st-chip-secondary:active {
background: #0b4fa0;
color: #fff;
}
.st-chip-primary:hover,
.st-chip-primary:active {
background: #FFDB12;
color: #454545;
}
/* shop card */
.st-ad-section-shop-card,
.st-ad-section-classifieds-card {
background-color: #FFDB12;
margin-top: 1em;
border-radius: 5px;
padding: .3em .5em;
padding-bottom: 0;
flex-direction: column;
display: flex;
justify-content: center;
}
.st-ad-section-shop-card__title,
.st-ad-section-classifieds-card__title {
display: flex;
justify-content: space-between;
font-size: 1.5rem;
letter-spacing: 1px;
margin-top: 0;
}
.st-ad-section-shop-card-link,
.st-ad-section-classifieds-card-link {
text-decoration: none;
color: #414b4c;
}
.st-ad-section-shop-card__img,
.st-ad-section-classifieds-card__img {
max-width: 100%;
margin-bottom: 0;
}
.st-ad-section-classifieds-card {
background-color: #270BA1;
}
.st-ad-section-classifieds-card__title {
color: white;
}
/* breadcrumbs */
.breadcrumbs {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-wrap: wrap;
}
.breadcrumbs li {
margin-left: .25em;
}
.st-article .breadcrumbs li:nth-last-child(2),
.st-article .breadcrumbs li:nth-last-child(1) {
display: none;
}
.breadcrumbs li:first-child {
margin-left: 0;
}
.breadcrumbs li a {
text-decoration: none;
}
.breadcrumbs li a:visited {
color: inherit;
}
/* article */
.st-article__title {
font-size: 2rem;
margin-top: 0;
}
.st-article .img-responsive,
.st-article iframe {
max-width: 100%;
}
.st-article-section-related-articles {
display: flex;
flex-wrap: wrap;
gap: 1em;
margin-bottom: 2em;
}
@media (min-width: 760px) {
.st-article__title{
font-size: 2.5rem;
}
.st-article {
grid-column: 1 / span 2;
}
}
@media (min-width: 1200px) {
.st-article {
max-width: 850px;
margin: 0 auto;
grid-column: 1 / span 3;
}
.st-article__title{
font-size: 2.75rem;
}
}
/* Four oh Four */
.st-four-oh-four__title {
font-size: 2rem;
margin: 0;
}
.st-four-oh-four__subtitle {
font-size: 1.5rem;
}
.st-article-archive-article-featured .st-article-section-main-article__author-link,
.st-article-archive-article-featured__articles-page .st-article-section-main-article__author-link {
display: none;
}
@media (min-width: 760px) {
.st-article-section-four-oh-four,
.st-article-archives {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1em;
}
.st-article-archives .breadcrumbs,
.st-article-archives .pagination {
grid-column: 1/span 2;
}
.st-article-archive-article-featured {
grid-column: 1/span 2;
grid-row: 2/span 2;
}
.st-article-archive-article-featured img {
width: 100%;
}
.st-article-archive-article-featured .st-article-section-main-article__author-link {
display: initial;
}
.st-article-archive-article-featured__articles-page {
grid-column: 1/span 2;
grid-row: 1/span 2;
}
.st-article-archive-article-featured__articles-page img {
width: 100%;
}
.st-article-archive-article-featured__articles-page .st-article-section-main-article__author-link {
display: initial;
}
}
@media (min-width: 1200px) {
.st-four-oh-four__title {
font-size: 4rem;
}
.st-article-section-four-oh-four,
.st-article-archives {
grid-template-columns: repeat(4, 1fr);
}
.st-article-archives .breadcrumbs,
.st-article-archives .pagination {
grid-column: 1/span 4;
}
.st-article-archive-article-featured img {
height: 73.25%;
}
}
/* Pagination */
ul.page-numbers {
list-style: none;
margin: 0;
margin-bottom: .75em;
padding: 0;
display: flex;
justify-content: space-between;
}
.page-numbers li {
min-width: 40px;
display: flex;
justify-content: center;
background-color: #0b4fa0;
}
.page-numbers a {
text-decoration: none;
margin: 0;
}
.page-numbers a,
.page-numbers .dots,
.page-numbers .current {
padding: .25em .4em;
background-color: #0b4fa0;
}
.page-numbers .dots,
.page-numbers .current,
.st-nav-arrow,
a.page-numbers,
.page-numbers a:visited {
color: #fff;
}
@media (min-width: 760px) {
ul.page-numbers {
justify-content: center;
gap: 1em;
margin: 1em 0;
}
}
.discourse-comments-area {
margin: 1em;
}
@media (min-width: 760px) {
.discourse-comments-area {
grid-column: 1 / span 3;
}
}
@media (min-width: 1200px) {
.discourse-comments-area {
max-width: 850px;
margin: 1em auto;
}
}