.site-head {
--header-background-colour: #6f6cac;
}
html, body {
width: 100%;
min-width: 100%;
max-width: 100%;
}
svg {
display: block;
max-width: 100%;
height: auto;
}
h1 {
display: flex;
flex-direction: column;
align-items: center;
gap: 24px;
}
h1:after {
content: "";
height: 6px;
width: 88px;
background: #cf828b;
}
h2 {
font-size: clamp(32px, 19.143px + 2.571vw, 50px);
}
h3 {
font-size: clamp(24px, 12.571px + 2.286vw, 40px);
}
p:last-child {
margin-bottom: 0;
}
.site-head {
z-index: 15;
}
.hero-container {
--image--column: 1.4fr;
position: relative;
z-index: 12;
--background-color: #6f6cac;
--text-color: #ecdfc7;
}
.hero-container .hero__component {
grid-template-columns: 1fr;
background: none;
text-align: center;
}
.hero-container .hero__component .image {
z-index: 10;
}
.hero-container .hero__component .text {
padding-bottom: 0;
z-index: 5;
margin-left: auto;
margin-right: auto;
max-width: 700px;
padding: 0;
padding-left: 24px;
padding-right: 24px;
margin-top: 48px;
}
.hero-container:before {
content: "";
position: absolute;
width: 100%;
height: 100vmax;
background: var(--background-color);
bottom: 150px;
left: 0;
}
.hero-container h1, .hero-container h2, .hero-container h3 {
color: #282f5c;
}
.hero-container .divider__component {
top: auto;
bottom: 1px;
z-index: 5;
}
.hero-container .divider__component svg {
width: 100%;
height: 150px;
}
.writing-container {
margin-top: -150px;
--background-color: #bfb8d2;
position: relative;
z-index: 10;
padding: 246px clamp(24px, -66px + 18vw, 150px) 144px clamp(24px, -66px + 18vw, 150px);
background: var(--background-color);
}
.writing-container .writing-container--content {
max-width: 1140px;
margin-left: auto;
margin-right: auto;
}
.writing-container .writing-container--content h2 {
text-align: center;
}
.writing-container h2, .writing-container h3, .writing-container h4 {
color: #282f5c;
}
.writing-post + .writing-post {
margin-top: 24px;
}
.writing-category > hgroup p {
text-align: center;
text-transform: uppercase;
letter-spacing: 3px;
font-weight: bold;
font-size: clamp(17px, 14.857px + 0.429vw, 20px);
font-style: normal;
display: block;
color: #d37a7b;
line-height: 1.5;
}
.writing-divider {
display: flex;
justify-content: center;
}
.writing-divider svg {
width: 800px;
}
.writing-divider,
* + .writing-category {
margin-top: clamp(48px, 13.714px + 6.857vw, 96px);
}
.writing-categoy--disclosure {
display: flex;
flex-direction: column;
align-items: center;
}
.show-more-button--component {
background: #d37a7b;
margin-top: 24px;
}
.writing-categoy--disclosure--content {
max-height: 0;
overflow: hidden;
transition: max-height 0.3s ease-in-out;
}
.writing-category--posts {
padding: 24px clamp(0px, -17.143px + 3.429vw, 24px);
margin-top: 24px;
}
.writing-category--posts:hover .writing-post {
transform: scale(0.95);
}
.writing-post {
--threshold: 60%;
color: #282f5c;
display: flex;
flex-wrap: wrap;
column-gap: 24px;
row-gap: 24px;
position: relative;
background: #cdc8dc;
transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;
padding: 24px clamp(24px, 6.857px + 3.429vw, 48px);
border-radius: 24px;
}
.writing-post > :first-child {
flex-basis: 0;
flex-grow: 999;
min-width: var(--threshold);
}
.writing-post hgroup {
margin-bottom: 24px;
}
.writing-post hgroup p {
text-transform: uppercase;
letter-spacing: 3px;
font-weight: bold;
font-size: clamp(18px, 20.143px + -0.429vw, 15px);
font-style: normal;
display: block;
color: #d37a7b;
line-height: 1.5;
}
.writing-post hgroup h3 {
margin-bottom: 12px;
color: inherit;
}
.writing-post p {
text-align: left !important;
margin-bottom: 0;
}
.writing-post p + p {
margin-top: 12px;
}
.writing-post img {
--size: 160px;
filter: grayscale(1);
transition: filter 0.3s ease;
order: -1;
}
.writing-post button {
color: inherit;
font-size: clamp(24px, 12.571px + 2.286vw, 40px);
word-spacing: -0.3rem;
font-weight: 300;
line-height: 1.3;
text-align: left;
}
.writing-post button:before {
top: 0;
left: 0;
bottom: 0;
right: 0;
content: "";
position: absolute;
}
.writing-post:hover {
background: #6f6cac;
color: #ecdfc7;
transform: scale(1.04) !important;
}
.writing-post:hover img {
filter: grayscale(0);
}
.footer-container {
--background-color: #282f5c;
--color: #ecdfc7;
--button-color: #cf828b;
--heading-color: #cf828b;
position: relative;
z-index: 5;
background: var(--background-color);
color: var(--color);
}
.footer-container h2, .footer-container h3, .footer-container h4 {
color: var(--heading-color);
}
.footer-container .button {
background: var(--button-color);
}
.footer-container svg {
--duration: 15s;
width: clamp(500px, 392.857px + 21.429vw, 650px);
max-width: 100%;
margin-left: auto;
padding-left: 24px;
}
@keyframes wave {
0% {
transform: translate(3%, -2.25%);
}
100% {
transform: translate(-42.5%, 35%);
}
}
@keyframes wave-fade {
0% {
opacity: 0;
}
50% {
opacity: 1;
}
100% {
opacity: 0;
}
}
.footer-container svg .animated-wave {
animation: wave var(--duration) infinite linear, wave-fade var(--duration) infinite alternate ease-in-out;
}
.footer-container svg .animated-wave:first-child {
animation-delay: calc(var(--duration) / -2);
}
.footer-container .footer-container--content {
display: grid;
gap: 24px;
align-items: center;
}
@media (min-width: 1140px) {
.footer-container .footer-container--content {
grid-template-columns: 1fr minmax(auto, clamp(500px, 392.857px + 21.429vw, 650px));
}
}
.footer-container .footer-container--text {
max-width: 700px;
padding: clamp(24px, 6.857px + 3.429vw, 48px);
margin-left: auto;
margin-right: auto;
}
@media (min-width: 1140px) {
.footer-container .footer-container--text {
margin-top: 48px;
order: -1;
}
}
.footer-container .footer-container--text > * {
margin-bottom: 24px;
}
dialog {
--heading-spacing: clamp(24px, 15.429px + 1.714vw, 36px);
--padding: clamp(24px, 6.857px + 3.429vw, 48px);
animation: slide-left 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
margin: 0;
padding: 0;
inset: 0;
max-width: 100%;
width: 100%;
background: transparent;
min-height: 100%;
border: 0;
color: #523b58;
}
dialog[open] {
display: grid;
grid-template-columns: 1fr minmax(0, min(95%, 900px));
}
dialog .button {
background: #dd6249;
}
dialog hgroup {
margin-bottom: var(--heading-spacing);
}
dialog hgroup p {
margin-top: 12px;
text-transform: uppercase;
letter-spacing: 3px;
font-weight: bold;
font-size: 1.8rem;
font-style: normal;
line-height: 1.25;
margin-bottom: 0;
}
dialog hgroup h2 {
color: #282f5c;
}
.writing_dialog__backdrop {
position: relative;
}
.writing_dialog__backdrop button {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
outline: none;
}
.writing_dialog__content {
background: #fff;
max-width: 900px;
padding: var(--padding);
}
dialog::backdrop {
background: rgba(84, 81, 143, 0.7);
backdrop-filter: blur(25px);
animation: fade-in 0.3s ease-out;
}
[data-tab]:not(.active) {
display: none;
}
[data-tab-list] {
display: flex;
flex-wrap: wrap;
gap: 12px;
row-gap: 6px;
}
[data-tab-list] button {
margin-bottom: 0;
line-height: 1.1;
font-size: 1.8rem;
padding: 6px 12px;
border: 2px solid rgba(82, 59, 88, 0.25);
background: #e6dde8;
color: #523b58;
}
[data-tab-list] button[aria-selected=true] {
background: #dd6249;
color: #fff;
border-color: #dd6249;
}
.round-image, .writing_dialog__component figure img, .writing-post img {
--_size: var(--size,160px);
width: var(--_size);
height: var(--_size);
object-fit: cover;
border-radius: 50%;
display: block;
}
.writing_dialog__component {
color: #282f5c;
}
.writing_dialog__component hgroup h2 {
font-size: 5.9rem;
letter-spacing: 0.5px;
}
.writing_dialog__component hgroup p {
line-height: 1.7;
color: #cf828b;
}
.writing_dialog__component h3 {
color: #cf828b;
}
.writing_dialog__component figure {
float: left;
padding-right: 48px;
padding-bottom: 24px;
}
.writing_dialog__component figure img {
--size: 190px;
}
@media (max-width: 800px) {
.writing_dialog__component figure img {
--size: 140px;
}
}
.writing_dialog__component figure figcaption {
margin-top: 6px;
font-size: 1.3rem;
text-align: center;
}
.writing_dialog__component .tab-nav__component {
margin-top: 24px;
justify-content: flex-end;
}
.writing_dialog__component .tab-nav__component:not(:last-child) {
margin-bottom: 48px;
}
.writing_dialog__component .tab-nav__component button {
padding: 0;
line-height: 1.7;
font-weight: 300;
background: none;
color: inherit;
border: 0;
border-bottom: 3px solid rgba(76, 89, 124, 0.4);
border-radius: 0;
}
.writing_dialog__component .tab-nav__component button[aria-selected=true] {
font-weight: bold;
border-bottom-color: #cf828b;
}
.writing_dialog__component .close-popup-button__component {
margin-bottom: 24px;
}
.writing_dialog__component .close-popup-button__component button {
background: #cf828b;
}