.hover-image-swap {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
}

.hover-image-swap img {
  display: block;
  width: 100%;
  height: auto;
  transition: opacity 0.3s ease;
  object-fit: cover;
}

.hover-image-swap .hover-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  object-fit: cover;
}

.hover-image-swap:hover .hover-img {
  opacity: 1;
}






/* Font Face */
@font-face {
    font-family: 'HW Topol Trial';
    font-weight: 300;
    font-style: normal;
    font-display: swap;
    src: url('https://files.cargocollective.com/c1253330/Topol-Light.woff2') format('woff2');
}

/* Hover Title */
.hover-title {
    display: inline;
    pointer-events: auto;
    cursor: pointer;
}
.hover-title:hover div { opacity: 0.5; }

/* Image Swap */
#img_wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}
#img_wrapper:hover > #first { display: none; }
#img_wrapper:hover > #second { display: block; }
#second { display: none; }
.img { position: relative; }

/* Miscellaneous */
#toolset { display: none; }
body { background-color: #fcfbf9; color: #000; }
a:active { opacity: 0.7; }
.page a.active { opacity: 1; }
i, em { font-style: italic; }
b, strong { font-weight: bolder; }
sub, sup {
    position: relative;
    vertical-align: baseline;
}
sub { top: 0.3em; }
sup { top: -0.4em; }
s { text-decoration: line-through; }
img {
    border: 0;
    padding: 0;
    border-radius: 0;
}
ul, ol {
    margin: 0;
    padding: 0 0 0 4.5rem;
}
ol > li { padding-left: 0.75rem; }
blockquote {
    margin: 0;
    padding: 0 0 0 2em;
}
hr {
    background: rgba(0, 0, 0, 0.4);
    border: 0;
    height: 0.75px;
}
.content img {
    float: none;
    margin-bottom: 0;
    vertical-align: bottom;
}
.gallery_image_caption {
    margin-top: 1em;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    font-weight: 500;
    color: rgba(0, 0, 0, 0.9);
    font-family: Diatype, Icons;
    line-height: 1.3;
    text-align: left;
}

/* Loading */
.loading[data-loading] {
    position: fixed;
    bottom: 8px;
    left: 8px;
}

/* Editor Styles */
[data-predefined-style="true"] bodycopy {
    font-size: 1.33rem;
    font-weight: 333;
    color: rgba(20, 20, 20, 0.9);
    letter-spacing: -0.009rem;
    font-family: "Favorit Variable", Icons;
    line-height: 1.30;
    font-style: normal;
    font-variation-settings: 'slnt' 0;
}
[data-predefined-style="true"] bodycopy a {
    color: rgba(235, 78, 39, 1);
    text-decoration: none;
}
[data-predefined-style="true"] bodycopy a:hover {
    text-decoration: line-through;
}
bodycopy a.image-link,
bodycopy a.icon-link,
bodycopy a.image-link:hover,
bodycopy a.icon-link:hover {
    border-bottom: 0;
    padding-bottom: 0;
    text-decoration: none;
}

/* Headers */
[data-predefined-style="true"] h1,
[data-predefined-style="true"] h1 a,
[data-predefined-style="true"] h1 a:hover {
    font-family: "HW Topol Trial", "Favorit Variable", system-ui, sans-serif, Icons;
    font-size: 4.6rem;
    line-height: 1.00;
    letter-spacing: 0.03rem;
    font-style: normal;
    font-weight: 400;
    padding: 0;
    margin: 0;
}
[data-predefined-style="true"] h1 a {
    color: #eb4e27;
    text-decoration: none;
}
[data-predefined-style="true"] h1 a:hover {
    color: rgba(235, 78, 39, 1);
    text-decoration: line-through;
    font-variation-settings: 'slnt' 0;
}
[data-predefined-style="true"] h2,
[data-predefined-style="true"] h2 a,
[data-predefined-style="true"] h2 a:hover {
    font-family: "HW Topol Trial", "Favorit Variable", system-ui, sans-serif, Icons;
    font-size: 3.6rem;
    line-height: 1.05;
    color: rgba(20, 20, 20, 0.9);
    letter-spacing: 0;
    font-style: normal;
    font-weight: 300;
    font-variation-settings: 'slnt' 0;
    padding: 0;
    margin: 0;
}
[data-predefined-style="true"] h2 a:hover {
    color: rgba(235, 78, 39, 1);
    text-decoration: line-through;
}

/* Small Text */
[data-predefined-style="true"] small {
    display: inline-block;
    font-size: 1.04rem;
    line-height: 1.35;
    font-family: "Favorit Variable", Icons;
    color: rgba(20, 20, 20, 0.9);
    letter-spacing: 0.010rem;
    font-style: normal;
    font-weight: 345;
    font-variation-settings: 'slnt' 0;
}

/* Layout Padding */
[data-css-preset] .content_padding {
    padding-top: 2rem /*!main_margin*/;
    padding-bottom: 2rem /*!main_margin*/;
    padding-left: 2rem /*!main_margin*/;
    padding-right: 2rem /*!main_margin*/;
}

/* Intro Overlay */
#intro-overlay {
    position: fixed;
    top: 0; 
    left: 0;
    width: 100vw; 
    height: 100vh;
    background: #fcfbf9;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    transition: opacity 0.8s ease;
}
#intro-overlay p {
    font-family: 'HW Topol Trial', sans-serif;
    font-weight: 300;
    font-size: 1.2rem;
    max-width: 320px;
    text-align: center;
    color: #000;
    margin: 0 1rem;
    line-height: 1.4;
}
#intro-overlay small {
    font-family: 'Favorit Variable', sans-serif;
    font-weight: 345;
    font-style: normal;
    font-size: 1.04rem;
    letter-spacing: 0.010rem;
    line-height: 1.35;
    margin-top: 1.5rem;
    color: rgba(20, 20, 20, 0.9);
    display: inline-block;    
}
.video-link + small,
.image-link + small,
a + small {
  display: block;
  margin-top: 0.60rem; /* adjust as needed */
  padding: 0;
  line-height: 1.35;
  vertical-align: top;
}

.video-link video {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1;
}
