Link to article: Taylor's Workbench.
.box {
position: relative;
isolation: isolate;
contain: paint layout;
.title {
font-weight: 500;
font-size: .875em;
z-index: 3;
transition: all var(--_duration) var(--_timing) var(--_delay);
}
.title p, .title::after { transition: inherit; }
}
.feature {
padding: .5rem .625rem;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
grid-template-rows: min-content auto min-content;
column-gap: .75rem;
> * { grid-column: 1/2; }
}
.feature::after {
content: "->";
grid-row: 1 / 3;
grid-column: 2 / 3;
display: grid;
place-items: center;
font-size: 1.5em;
font-weight: 500;
}
.feature .feature-article {
display: flex;
align-items: baseline;
column-gap: .75ch;
row-gap: .5ex;
flex-wrap: wrap;
h2 { margin: 0; line-height: 1; }
}
.feature-subtitle {
font-size: .875em;
font-weight: 550;
flex-grow: 1;
}
.feature-blurb {
flex-grow: 1;
}
/*
.feature-blurb::after {
content: "->";
font-size: 2em;
font-style: normal;
font-weight: 500;
grid-column: 2 / 3;
grid-row-start: 1;
grid-row-end: span all;
display: grid;
place-items: center;
}*/
.feature-select {
grid-column: 1 / -1;
font-size: .75em;
font-style: italic;
text-align: end;
}
.feature1box, .feature2box, .feature3box, .feature4box {
--_duration: .625s;
transition: color var(--_duration) var(--_timing) var(--_delay);
h2 a { text-decoration: none; transition: color var(--_duration) var(--_timing) var(--_delay); }
}
.feature h2 a::after {
content: "";
position: absolute;
top: 0; left: 0;
width: 100%; height: 100%;
z-index: 3;
}
:is(.feature1box, .feature2box, .feature3box, .feature4box):is(:hover,:focus-within) {
color: black;
h2 a { color: inherit; transition-delay: 0s; transition-duration: calc(var(--_duration) * 1.5); }
h2 a::before { width: 100%; }
.title { --box-accent: var(--active); }
}
:is(.feature1box, .feature2box, .feature3box, .feature4box)::before,
:is(.feature1box, .feature2box, .feature3box, .feature4box)::after {
content: "";
position: absolute;
top: 0; left: 0;
width: 0; height: 100%;
pointer-events: none;
transition: width var(--_duration) var(--_timing) var(--_delay);
}
:is(.feature1box, .feature2box, .feature3box, .feature4box)::before {
backdrop-filter: invert(1) grayscale(1);
z-index: 1;
}
:is(.feature1box, .feature2box, .feature3box, .feature4box)::after {
background-color: var(--active);
mix-blend-mode: screen;
z-index: 2;
}
:is(.feature1box, .feature2box, .feature3box, .feature4box):is(:hover,:focus-within)::before,
:is(.feature1box, .feature2box, .feature3box, .feature4box):is(:hover,:focus-within)::after {
width: 100%;
}
/*---------------------------*/
.box.art {
justify-content: end;
.box-link-container {
display: contents;
> a {
position: absolute;
top: 0; left: 0;
width: 100%; height: 100%;
font-size: 0.01em;
opacity: 0.01;
z-index: 2;
}
}
}
.caption {
display: flex;
gap: .75rem;
justify-content: space-between;
align-items: center;
position: relative;
isolation: isolate;
padding: .375rem 0.625rem;
margin: 0.5rem;
background-color: #0009;
color: var(--light);
font-size: .875em;
font-weight: 500;
text-align: center;
> p { margin: 0; flex-grow: 1; }
}
.caption::after { content: "->"; }
.caption::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 0; height: 100%;
z-index: -1;
background-color: var(--active);
transition: width var(--_duration) var(--_timing) var(--_delay);
}
.box.art:is(:hover, :focus-within) .caption::before {
width: 100%;
}
.art-slider {
position: absolute;
overflow: hidden;
isolation: isolate;
top: 0; left: 0;
width: 100%; height: 100%;
z-index: -1;
pointer-events: none;
display: grid;
grid-template-areas: "stack";
--slide-persistence: 5s;
}
.art-slide {
grid-area: stack;
background-color: var(--light);
background-image: var(--artwork);
background-size: cover;
background-position: center;
position: relative;
visibility: visible;
animation-duration: calc(var(--slide-persistence)*3);
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
}
.s1 {
z-index: -1;
animation-name: art-slide1;
}
.s2 {
z-index: -2;
animation-name: art-slide2;
}
.s3 {
z-index: -3;
animation-name: art-slide3;
}
.s1re { z-index: -99; animation: none;}
@keyframes art-slide1 {
0% { visibility: visible; }
33.33%, 100% { visibility: hidden; }
}
@keyframes art-slide2 {
0% { visibility: visible; }
66.66%, 100% { visibility: hidden;; }
}
@keyframes art-slide3 {
0% { visibility: visible; }
100% { visibility: hidden; }
}
component:toggle-sidebar
fragment:front-page-gridcode
:scp-wiki:fragment:front-page-header
[info]
quikngruvn-sandbox
taylor-workbench-2
fragment:front-page-news-bulletin