/* 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: "Rubik", sans-serif; line-height: 1.6; } input, button, textarea, select { font: inherit; } /* ============================ TYPOGRAPHY ============================ */ h1 { font-size: 3rem; } .st-site-title { text-transform: uppercase; color: #0b4fa0; text-align: center; margin-top: 0; font-size: 3.3rem; transform: scale(1, 1); transition: transform 300ms; transform-origin: top left; } .st-title-scrolled { transform: scale(0,0); } @media (min-width: 760px) { .st-site-title { font-size: 6.9rem; } } @media (min-width: 1200px) { .st-site-title { font-size: 11rem; } } @media (min-width: 1400px) { .st-site-title { font-size: 13.3rem; } } /* ============================ 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; } .st-header-scrolled { pointer-events: none; } .st-header-icon-bar { width: 100%; display: flex; justify-content: space-between; color: black; margin-top: .25em; } .st-header-logo { width: 100%; } .st-header-icon { text-decoration: none; cursor: pointer; color: black; } .st-icon-bar-sticky a { display: none; } .st-icon-bar-sticky .st-open-nav { border-radius: 20%; padding: .1em .4em; background: #fff; box-shadow: 0 0 3px rgb(0 0 0 / 30%); margin-left: auto; pointer-events: auto; } .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%); margin-right: auto; pointer-events: auto; } /* nav */ .st-search-overlay, .st-nav { position: fixed; background: #fff; width: 100%; top: 0; right: 0; bottom: 0; left: -100%; 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(100%); } .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; } /* footer */ .st-footer { color: white; background: #0b4fa0; display: grid; grid-template-columns: minmax(1em, 1fr) minmax(130px, 250px) minmax(130px, 250px) 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; color: #fff; margin-top: 1.5em; color: #270BA1; } .st-footer-icon:hover, .st-footer-icon:active { color: #FFDB12; } .st-footer-copyright { grid-area: copy; font-size: .6rem; text-align: right; background: #270BA1; padding: .2em .5em .2em; margin-bottom: 0; } .st-footer-site-title { grid-area: logo; text-transform: uppercase; writing-mode: vertical-lr; align-self: end; justify-self: end; margin: 0; line-height: 1; color: #270BA1; } .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: #fff; } .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; } .st-footer-nav-links { list-style: none; margin: 0; padding: 0; } /* 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; } .st-article-section-title > a { text-decoration: none; color: black; } @media (min-width: 760px) { .st-article-section-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1em; } .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; } } @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; } } /* ad section */ .st-ad-section { display: flex; flex-direction: column; justify-content: center; } @media (min-width: 760px) { .st-ad-section { margin-top: 3.2em; justify-content: flex-start; border-bottom: none; padding-left: 1em; border-left: 1px #cec9c2 solid; margin-bottom: 0; } } @media (min-width: 1200px) { .st-ad-section { grid-area: ad; } } /* ============================ 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 { 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: .6rem; text-transform: uppercase; letter-spacing: 1px; 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; } } @media (min-width: 1200px) { .st-article-section-sub-article-stack, .st-article-section-bottom .st-article-section-sub-article-stack { width: 40%; } } /* chips */ .st-chip { padding: .25em .75em; font-size: 1rem; text-decoration: none; cursor: pointer; border-radius: 100px; color: white; font-weight: 500; letter-spacing: 1px; } .st-chip-primary { background: #0b4fa0; } .st-chip-secondary { background: #FFDB12; color: #454545; } .st-chip-secondary:hover, .st-chip-secondary:active { background: #270BA1; color: #fff; } .st-chip-primary:hover, .st-chip-primary:active { background: #FFF; 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; }