/* ===============================
   Base styles (no color defined)
================================ */
.zigzag {
    display: flex;
    justify-content: center;
    padding: 2rem 0;
}
.zigzag p,
.zigzag li,
.zigzag h1,
.zigzag h2,
.zigzag h3,
.zigzag h5,
.zigzag h6 {
    margin: 0;
}
.zigzag h4{
    margin: 0;
    padding: .5rem 0;
}
.zigzag p,
.zigzag li{
    font-size:1rem;
}
.zigzag h1{
	font-size: 4rem;
}
.zigzag h2{
	font-size: 2rem;
}
.zigzag h3{
	font-size: 1.8rem;
}
.zigzag h4{
	font-size: 1.6rem;
}
.zigzag h5{
	font-size: 1.4rem;
}
.zigzag h6{
	font-size: 1.2rem;
}
.zigzag p a{
	color: var(--main_colour);
    text-decoration: none;	
}
/* ===============================
   Background-based color overrides
================================ */

/* LIGHT */
.zigzag.light {
    background-color: var(--white_tone);
    color: var(--main_colour);
}
.zigzag.light h2{
    font-size:2.2rem;
}
.zigzag.light h3{
    font-size:2.2rem;
    color: var(--main_colour);
}
.zigzag.medium p{
    color: var(--main_colour);
    font-size: 1.8rem;
}

.repeater_content h2 strong,
.repeater_content h3 strong,
.repeater_content h4 strong,
.repeater_content h5 strong,
.repeater_content h6 strong{
    color:var(--main_colour);
}


.zigzag.light h2,
.zigzag.light h3,
.zigzag.light h4,
.zigzag.light h5,
.zigzag.light h6,
.zigzag.medium li,
.zigzag.medium h1,
.zigzag.medium h2,
.zigzag.medium h3,
.zigzag.medium h4,
.zigzag.medium h5,
.zigzag.medium h6 {
    color: var(--main_colour);
}
.zigzag.light h1 strong,
.zigzag.light h2 strong,
.zigzag.light h3 strong,
.zigzag.light h4 strong,
.zigzag.light h5 strong,
.zigzag.light h6 strong,
.zigzag.medium p strong,
.zigzag.medium li strong,
.zigzag.medium h1 strong,
.zigzag.medium h2 strong,
.zigzag.medium h3 strong,
.zigzag.medium h4 strong,
.zigzag.medium h5 strong,
.zigzag.medium h6 strong {
    background: linear-gradient(var(--main_colour), var(--main_colour_darker));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}
.zigzag.light p,
.zigzag.light li{
    color: var(--black_tone);
}
/* MEDIUM */
.zigzag.medium {
    background-color: var(--light_grey_tone);
    color: var(--main_colour);
}
/* DARK */
.zigzag.dark {
    background-color: var(--main_colour);
    color: var(--white_tone);
}
.zigzag.dark h3 {
    font-size:2.2rem;
    color: var(--white_tone);
}
.zigzag.dark p{
    color: var(--white_tone);
    font-size: 1.8rem;
}

.zigzag.dark li,
.zigzag.dark h1,
.zigzag.dark h2,
.zigzag.dark h4,
.zigzag.dark h5,
.zigzag.dark h6,
.zigzag.darker p,
.zigzag.darker li,
.zigzag.darker h1,
.zigzag.darker h2,
.zigzag.darker h3,
.zigzag.darker h4,
.zigzag.darker h5,
.zigzag.darker h6 {
    color: var(--white_tone);
}
/* DARKER */
.zigzag.darker {
    background-color: var(--main_colour_darker);
    color: var(--white_tone);
}
.zigzag.dark h1 strong,
.zigzag.dark h2 strong,
.zigzag.dark h3 strong,
.zigzag.dark h4 strong,
.zigzag.dark h5 strong,
.zigzag.dark h6 strong,
.zigzag.darker p strong,
.zigzag.darker li strong,
.zigzag.darker h1 strong,
.zigzag.darker h2 strong,
.zigzag.darker h3 strong,
.zigzag.darker h4 strong,
.zigzag.darker h5 strong,
.zigzag.darker h6 strong {
    color: var(--secondary_colour);
}
/* ===============================
   Other styles (unchanged)
================================ */


.zigzag .order-right {
    flex-direction: row;
}
.zigzag .order-left {
    flex-direction: row-reverse;
}
.zigzag .repeater_content {
    display: flex;
}
.zigzag .repeater_content .front-zig {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.repeater_align {
    display: flex;
    justify-content: center;
    align-content: center;
    gap: 10rem;
}
.repeater_content {
    flex: 1;
}
.front-zag{
    flex:1;
}
.img_wrapper_zigzag {
    overflow: hidden;
    max-height: 40rem;
    flex: 1;
}
.img_wrapper_zigzag_imgtag {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 1rem;
}
@media (orientation: portrait) {
    .zigzag .order-left {
    flex-direction: column;
    align-items: center;
    }
    .zigzag .order-right,.zigzag .order-left {
		flex-direction: column;
	}
    .repeater_align {
        flex-direction: column;
        gap: 3rem;
    }
    .img_wrapper_zigzag {
        height: 20rem;
        flex: unset;
        object-fit: contain;
    }
    .order-left, .order-right {
        flex-direction: column;
    }
}