/* #region common basic */
html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: auto;
     -ms-text-size-adjust: auto;
         text-size-adjust: auto;
    scroll-behavior: smooth;
    height: 100%;
    --root-width: min(90%, 75rem); /* capped at 1200px normally */
    --std-column-gap: min(2.5vw, 33.333px);
    --std-row-gap: 1.5em;
    /*--text-scale: 1;*/
    /*scroll-snap-type: y mandatory;*/
    /*scroll-snap-type: y proximity;*/
}

:root {
    /*font-size: calc(1rem * var(--text-scale));*/
    accent-color: deeppink;
    --color-GreyDark: #424242;
    /*--color-CTA: #851DE2;*/
    --color-CTA: #C71585;
    --color-Hover: #C71585;
    --color-MarshLogo: #BBA289;
    --color-Gold: #E6C179;
    --color-PurpleLight: #AD7FAD;
    --color-PurpleDark: #7C4A7C;
}

body * {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

body {
    min-height: 100%;
    width: 100%;
    margin: 0 auto;
    overflow-x: hidden !important;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'Noto Sans', 'segoe ui', -apple-system, system-ui, Helvetica, Arial, sans-serif, 'apple color emoji', 'segoe ui emoji';
    color: var(--color-GreyDark);
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    background-color: black;
}

main {
    display: block;
}

div, section {
  border: 0;
}

section {
    margin: 0 auto;
    width: 100%;
    position: relative;
    padding: min(14vh,100px) 0;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}

body section:first-of-type {
    padding-top: 0;
}

p {
    line-height: 1.5;
    text-wrap: pretty;
}

a {
    /* background-color: initial; */
    text-decoration: none;
    color: black;
}

a:hover {
    color: var(--color-Hover);
}

b,
strong {
    font-weight: bolder;
}

pre {
    font-size: 1em
}

hr,
img {
    max-width: 100%;
    border-style: none;
    -o-object-fit: scale-down;
       object-fit: scale-down;
}

hr {
    display: inline-block;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    width: 15%;
    height: 0.25rem;
    text-align: left;
    overflow: visible;
}

ul {
    list-style-type: none;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.35;
    font-family: 'Noto Serif', Georgia, serif;
    font-weight: 500;
    font-optical-sizing: auto;
    font-style: normal;
    text-wrap: balance;
    /*@media screen and (width <= 767px) {
        & {
            text-wrap: pretty;
        }
    }*/
}

h1 {
    font-size: 3rem  /* 48px normally */
}

h2 {
    font-size: 2.625rem  /* 42px normally */
}

h3 {
    font-size: 2.25rem  /* 36px normally */
}

h4 {
    font-size: 1.875rem  /* 30px normally */
}

h5 {
    font-size: 1.5rem  /* 24px normally */
}

h6 {
    font-size: 1.25rem /* 20px normally */
}
/* #endregion common basic */

/* #region common less used */
abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
            text-decoration: underline dotted;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
    top: -.4em
}

sub {
    top: .4em;
    bottom: -.25em
}

sup {
    top: -.5em
}

small {
    font-size: 80%
}

details {
    display: block
}

summary {
    display: list-item
}

[hidden] {
    display: none
}

button,
input,
optgroup,
select,
textarea {
    font: inherit;
    color: inherit;
    font-size: 100%;
    line-height: 1.15;
    /*margin: 0;*/
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button {
    cursor: pointer;
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button;
    -moz-appearance: button;
         appearance: button;
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: .35em .75em .625em
}

textarea {
    overflow: auto;
    caret-color: var(--color-CTA)
}

[type=checkbox],
[type=radio] {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
         appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

input[type=email]:active,
input[type=email]:focus,
input[type=number]:active,
input[type=number]:focus,
input[type=password]:active,
input[type=password]:focus,
input[type=text]:active,
input[type=text]:focus,
textarea:active,
textarea:focus {
    outline: 0;
    border-color: deeppink;
    -webkit-box-shadow: 0 0 0 2px rgba(0, 123, 255, .25)inset;
            box-shadow: 0 0 0 2px rgba(0, 123, 255, .25)inset
}

input[type=email]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=text]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    opacity: .6;
    color: currentColor
}

input[type=email]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=text]::-moz-placeholder, textarea::-moz-placeholder {
    opacity: .6;
    color: currentColor
}

input[type=email]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=text]:-ms-input-placeholder, textarea:-ms-input-placeholder {
    opacity: .6;
    color: currentColor
}

input[type=email]::-ms-input-placeholder, input[type=number]::-ms-input-placeholder, input[type=password]::-ms-input-placeholder, input[type=text]::-ms-input-placeholder, textarea::-ms-input-placeholder {
    opacity: .6;
    color: currentColor
}

input[type=email]::placeholder,
input[type=number]::placeholder,
input[type=password]::placeholder,
input[type=text]::placeholder,
textarea::placeholder {
    opacity: .6;
    color: currentColor
}

.color-overlay,
.gradient-overlay {
    overflow: hidden;
    position: relative
}

.color-overlay>*,
.gradient-overlay>* {
    position: relative
}

.color-overlay:before,
.gradient-overlay:before {
    top: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute
}

.success-message, .error-message {
    margin-top: 10px;
    padding: 10px 15px;
    background-color: #fff;
    border-radius: 3px;
    font-size: 14px;
    text-align: center;
}

.success-message {
    color: #17832d
}

.error-message {
    color: #ff3a28
}

.sticky {
    top: 0;
    left: 0;
    right: 0;
    z-index: 1999;
    position: fixed !important
}

.collapsing {
    height: 0;
    position: relative;
    overflow: hidden;
    -webkit-transition: height 350ms ease;
    -o-transition: height 350ms ease;
    transition: height 350ms ease
}

.collapse:not(.show) {
    display: none
}
/*
.el-ib {
    display: inline-block;
    margin: 0 auto;
    padding: 0 auto
}*/

/* #endregion common less used */

/* #region common containers and components */
.container-root { /* ------ Root container of a section ------ */
    margin: 0 auto;
    width: var(--root-width);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
}

.container-row {
    margin-top: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-column-gap: var(--std-column-gap);
       -moz-column-gap: var(--std-column-gap);
            column-gap: var(--std-column-gap);
    row-gap: var(--std-row-gap);
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    /*overflow: hidden; Can't do this as it messes with box shadows */
}

.container-root > .container-row:first-of-type {
    margin-top: 0;
}

.container-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    row-gap: var(--std-row-gap);
}
/*
@media screen and (width <= 40rem) { /* 40rem=640px normally; was set at 540px before
    .container-row  {
        flex-direction: column;
        flex-wrap: nowrap;
    }
    /*.container-col  {
        align-items: center;
    }
}*/

.image-wrapper {
    display: inline-block;
    position: relative
}

.textbox-wrapper {
    margin-top: 1rem;
    margin-bottom: 1rem;
    & >* {
        margin-bottom: 1rem;
    }
    & h5 {
        margin-top: 1.67rem;
    }
    & div.icon-text-iconOnLeft {
        margin-top: 1rem;
    }
    & ul, & ol {
        list-style-position: outside;
        padding-left: 2rem;
        & li {
            padding-left: 1rem;
        }
    }
    & ul {
        list-style-type: unset;
    }
}

.icon-text-iconOnLeft, .icon-text-iconOnRight {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.icon-text-iconOnLeft {
    & span {
        display: inline-block;
        padding-left: 10px;
    }
}

.icon-text-iconOnRight {
    & span {
        display: inline-block;
        padding-right: 10px;
    }
}

.list-in-a-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    & li:not(:last-child) {
        margin-right: 1rem;
    }
    & svg {
        fill: #645F5F;
        min-width: 30px;
    }
    & svg:hover {
        fill: var(--color-Hover);
    }
}

.justify-content-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.signature {
    margin-top: 1rem;
    & p {
        font-family: "Dancing Script", handwriting, cursive;
        font-weight: 700;
        font-size: 1.5rem;
    }
}

/* #region move-to-top */
svg:not(:root).svg-inline {
    overflow: visible
}

.svg-inline {
    display: inline-block;
    margin: 0 auto;
    height: 1em;
    width: 1.25em;
    font-size: inherit;
    overflow: visible;
    vertical-align: middle;
}

.move-to-top {
    z-index: 99;
    bottom: 50px;
    right: 30px;
    width: 60px;
    height: 60px;
    background-color: #645F5FAA;
    color: white;
    overflow: hidden;
    cursor: pointer;
    border-radius: 50% 50% 50% 50%;
    border: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    &:hover {
        background-color: var(--color-Hover);
    }

}
.move-to-top.move-to-top-btn {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    opacity: 0;
    visibility: visible;
    position: fixed;
    pointer-events: none;
}

.move-to-top.move-to-top-btn.showBtn {
    -webkit-animation: fadeIn 1.5s;
            animation: fadeIn 1.5s;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.move-to-top.move-to-top-btn.fadeOut {
    -webkit-animation: fadeOut 1s;
            animation: fadeOut 1s;
}

@-webkit-keyframes fadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
/* #endregion move-to-top */

/* #region subscription form */
.subscription {
    margin-bottom: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    font-size: 14px;

    @media screen and (width < 320px) {
        & {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
            -webkit-box-align: start;
                -ms-flex-align: start;
                    align-items: flex-start;
            row-gap: 1em
        }
    }

    & .form-group {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        margin-right: 12px;
        width: 100%;

        & .form-control {
            height: 45px;
            width: 100%;
            padding-left: 15px;
            padding-right: 70px;
            border: 2px solid var(--color-CTA);
            border-radius: 5px;
            color: #171a21;
        }
    }

    & button {
        height: 45px;
        padding-left: 25px;
        padding-right: 25px;
        border: 0 solid;
        border-radius: 5px;
        background-color: var(--color-CTA);
        color: white;
        font-size: 14px;

        & span {
            margin: auto;
            text-wrap: nowrap;
        }
    }
}
/* #endregion subscription form */

/* #endregion common containers and components */

/* #region hero-navbar */
#row-navbar {
    padding: 10px 20px;
    background-color: white;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-radius: 0 0 10px 10px;
    gap: 16px;
    font-size: 16px;
    /*font-size: calc(16px * var(--text-scale));*/
}

#image-navbar-logo {
    width: 180px;
    aspect-ratio: 719/142;
    margin-right: 10px;
}

#list-navbar-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 10px;
       -moz-column-gap: 10px;
            column-gap: 10px;
    & a {
        text-decoration: none;
        border: 1px solid black;
        border-radius: 5px;
        padding: 4px 16px;
        color: black;
    }
    & a:hover {
        color: white;
        background-color: var(--color-Hover);
        border: none;
    }
    & a:visited, & a:active {
        text-decoration: none;
    }
}

#list-navbar-contacts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 8px;
    font-size: 14px;
    & svg {
        width: 16px;
        height: 16px;
    }    
}

/* #region media queries of navbar */
@media screen and (width <= 860px) { /* contacts wrap at 850, some buffer provided */
    #list-navbar-contacts {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        margin: auto;
        -webkit-column-gap: 20px;
           -moz-column-gap: 20px;
                column-gap: 20px;
    }
}

@media screen and (width <= 620px) {
    #list-navbar-links {
        font-size: 14px;
    }
    #image-navbar-logo {
        width: 160px;
    }
}

@media screen and (width <= 550px) { /* links wrap at 539px; some buffer provided */
    #row-navbar  {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

@media screen and (width <= 425px) { /* contacts font reduced further to keep them from overflowing/wrapping */
    #list-navbar-contacts {
        font-size: 12px;
    }
}

@media screen and (width <= 400px) { /* let contacts wrap */
    #list-navbar-contacts {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 0;
    }
}

@media screen and (width <= 300px) {
    #list-navbar-links {
        font-size: 12px;
    }
    #list-navbar-contacts {
        font-size: 10px;
    }
}

@media screen and (width <= 250px) {
    #row-navbar {
        padding: 2px;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: start;
        font-size: 10px;
    }
    #list-navbar-links {
        -webkit-column-gap: 5px;
           -moz-column-gap: 5px;
                column-gap: 5px;
    }
    #list-navbar-contacts {
        margin: 0;
    }
}
/* #endregion media queries of navbar */

/* #endregion hero-navbar */

/* #region section-footer */
#section-footer {
    padding-top: 3.75rem;
    padding-bottom: 3.125rem;
    background-color: #FEF6F5;
    border-top: solid 0.625rem #D9D9D9;
    & h5 {
        color: black;
    }
    & hr {
        background-color: #e5e7eb;
        width: 100%;
        height: 0.2rem;
    }
}

#row-footer-top {
    & .container-col {
        padding-top: 1.5rem;
        padding-bottom: 1rem;
        border-color: #42424255;
        border-style: solid;
        border-top-width: 1px;
        border-bottom-width: 1px;
    }
    & li {
        margin-bottom: 1rem;
    }
}

#footer-top-left {
    -webkit-box-flex: calc(22% - (var(--std-column-gap) * 0.667));
        -ms-flex: calc(22% - (var(--std-column-gap) * 0.667));
            flex: calc(22% - (var(--std-column-gap) * 0.667));
    min-width: 160px;
}

#footer-top-middle {
    -webkit-box-flex: calc(33% - (var(--std-column-gap) * 0.667));
        -ms-flex: calc(33% - (var(--std-column-gap) * 0.667));
            flex: calc(33% - (var(--std-column-gap) * 0.667));
    min-width: 265px;
    & li:last-child .icon-text-iconOnLeft {
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: start;
    }
    & ul svg {
        width: 20px;
        height: 20px;
    }
}

#footer-top-right {
    -webkit-box-flex: calc(45% - (var(--std-column-gap) * 0.667));
        -ms-flex: calc(45% - (var(--std-column-gap) * 0.667));
            flex: calc(45% - (var(--std-column-gap) * 0.667));
}

#image-footer-logo {
    height: 52px;
    aspect-ratio: 719/142;
}

#row-footer-bottom {
    margin-top: 0;
    padding-top: 2rem;
    border-top: 1px;
    & .container-col {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}

#footer-bottom-right {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}
/* #endregion section-footer */

/* #region Home-section-hero */
#home-section-hero {
    background-color: var(--color-GreyDark);
    background-image: url(./Resources/Home/Sola-flowers-bg.jpg);
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    background-blend-mode: multiply;
    & hr {
        background-color: #C71585;
    }
}

/* #region home-hero-heading */
#home-hero-heading {
    & p, & h4 {
        color: white;
    }
    & .container-col {
        min-width: 300px;
    }
}

.link-why-marsh {
    padding: 0 0 10px 0;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: white;
    font-weight: 500;
    :not(:hover) {
        color: white;
    }
    & svg {
        fill: white; 
    }
    &:hover {
        border-bottom-color: var(--color-Hover);
        & span {
            color: var(--color-Hover);
        }
        & svg {
            fill: var(--color-Hover);
        }
    }
}
/* #endregion home-hero-heading */

/* #region home-hero-3-images */
#home-hero-3-images {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-column-gap: 1.5vw;
       -moz-column-gap: 1.5vw;
            column-gap: 1.5vw;
    row-gap: 1rem;
    & img {
        -o-object-fit: cover;
           object-fit: cover;
        border-radius: 10px;
        width: 100%;
        height: 100%
    }
}

#wrapper-image-hero-bottom-left, #wrapper-image-hero-bottom-right {
    width: 25%;
}

#wrapper-image-hero-bottom-center {
    width: 50%;
}

#image-hero-bottom-right {
    -webkit-filter: sepia(11%);
            filter: sepia(11%)
}

@media screen and (width <= 600px) {
    #home-hero-3-images img {
        height: 250px
    }
}
/* #endregion home-hero-3-images */
/* #endregion Home-section-hero */

/* #region Home-section-why-marsh */
#section-why-marsh {
    background-color: var(--color-PurpleLight);
    background-image: url(./Resources/Home/wave.png);
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
}

/* #region why-marsh-heading */
#why-marsh-heading {
    & h3 {
        color: white;
        text-shadow: 2px 1px 0 black
    }
    & hr {
        background-color: var(--color-PurpleDark)
    }
}

#why-marsh-heading-left {
    min-width: 250px;
}

#why-marsh-heading-right {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (width <= 602px) {
    #why-marsh-heading {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
    #why-marsh-heading-right {
        -webkit-box-ordinal-group: 0;
            -ms-flex-order: -1;
                order: -1
    }
}

#image-why-marsh-heading {
    aspect-ratio: 1;
    max-width: 277px
}
/* #endregion why-marsh-heading */

/* #region why-marsh-is-great */
#why-marsh-is-great {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    & h4 {
        color: #AB8E6D;
        text-align: center;
    }
    & ul {
        padding-left: 1.5rem; /* to accommodate the marker */
        list-style-image: url("./Resources/check.svg");
    }
    & li {
        margin-bottom: 1rem;
    }
    & .container-col {
        min-width: 300px;
        padding: 30px 20px 20px 20px;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        background-color: white;
        -webkit-box-shadow: 0 0 30px 5px var(--color-PurpleDark);
                box-shadow: 0 0 30px 5px var(--color-PurpleDark);
        @media screen and (width >= 600px) {
            max-width: 377.781px;
        }
    }
}
/* #endregion why-marsh-is-great */

#curly-brace {
    margin-top: 0;
    row-gap: 0;
    border-bottom: 0.15rem solid lightgrey;
    text-align: center;
    & h4 {
        margin: 1rem auto;
        color: #AB8E6D;
    }
}

#image-curly-brace {
    -webkit-filter: opacity(70%);
            filter: opacity(70%)
}

/* #region what-it-means-for-you */
#what-it-means-for-you {
    margin-top: 1rem;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    & .container-col {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
}

.card-paid-and-heading-wrapper {
    padding: 25px 1em;
    background-color: var(--color-PurpleDark);
    width: 100%;
    border-radius: 5px;
    -webkit-box-shadow: 0 20px 5px -10px var(--color-PurpleLight);
            box-shadow: 0 20px 5px -10px var(--color-PurpleLight);
    color: lightpink;
    @media screen and (width >= 600px) {
        max-width: 377.781px;
    }
    & h5 {
        margin-top: 26px;
        text-align: center;
    }
}

.card-pair-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    -webkit-column-gap: 0.5rem;
       -moz-column-gap: 0.5rem;
            column-gap: 0.5rem;
}

.container-card {
    width: 150px;
    min-height: 182px;
    background: var(--color-PurpleLight);
    border-radius: 5px;
    padding: 4%;
    position: relative;
    -webkit-box-shadow: 0px 10px 8px rgba(0,0,0,0.6);
            box-shadow: 0px 10px 8px rgba(0,0,0,0.6);
    text-align: center;
    color: white;
    & ::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 20px;
        bottom: -20px;
        left: 0px;
        background-image: -o-radial-gradient(
            center bottom, 
            ellipse farthest-side, 
            var(--color-PurpleDark) 80%,
           rgba(0,0,0,0) 100%
        );
        background-image: radial-gradient(
            ellipse farthest-side at center bottom, 
            var(--color-PurpleDark) 80%,
           rgba(0,0,0,0) 100%
        );
    }
    & >* {
        margin: 20px auto
    }
    & img {
        display: block;
        height: 50px;
        -webkit-filter: brightness(0) invert(1);
                filter: brightness(0) invert(1)
    }
    font-size: 16px;
    @media screen and (width <= 600px) {
        font-size: 14px;
    }
}

/* #endregion what-it-means-for-you */

/* #endregion Home-section-why-marsh */

/* #region Home-section-sola */
#section-sola {
    background-image: -o-linear-gradient(45deg, #f4e2bd 0%, #e6bb72 100%);
    background-image: linear-gradient(45deg, #f4e2bd 0%, #e6bb72 100%);
    & h6 {
        color: #743b31
    }
}

.home-section-sola-frame-corner {
    bottom: 0;
    left: 0;
    position: absolute;
    -webkit-transform: rotateX(180deg) rotateY(180deg);
            transform: rotateX(180deg) rotateY(180deg);
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 500 500%22 preserveAspectRatio=%22none%22%3E%3Cg fill=%22%23e6c179%22%3E%3Cpath d=%22M499.002.0l.008 429.848c-12.13 4.048-24.19 8.035-36.072 12.026-14.499-58.642-34.095-148.59-115.9-197.241-81.664-48.505-204.646-58.7-283.266 26.784C102.74 374 131.964 463.948 194.145 490.152c14.335 6.063 30.42 8.752 48.04 8.847-17.85-.044-34.136-2.73-48.633-8.864-62.284-26.253-91.557-116.37-130.588-219.146-39.239-102.592-88.65-218.03-45.052-258.806C23.412 7.016 30.384 3.037 38.66.017L499.002.0z%22/%3E%3Cpath d=%22M349 245c82.486 49.024 100.389 137.96 115 197-111.721 37.236-206.02 74.661-268.877 48.091-62.647-26.383-92.99-116.345-132.249-219.632C142.084 184.39 266.724 196.163 349 245z%22 opacity=%22.807%22/%3E%3C/g%3E%3C/svg%3E");
    max-width: 100%;
    width: 250px;
    height: 250px;
    background-size: 250px 250px;
}

#row-sola > .container-col {
    min-width: 300px;
    max-width: 405.766px;
    z-index: 9;
}

#image-sola-pith {
    border: 1px solid black;
    border-radius: 10px;
    -webkit-box-shadow: -10px -10px 5px 0 var(--color-MarshLogo);
            box-shadow: -10px -10px 5px 0 var(--color-MarshLogo);
    -webkit-filter: brightness(105%);
            filter: brightness(105%);
}

#why-sola-flower-popular {
    border: 1px solid black;
    border-radius: 10px;
    -webkit-box-shadow: 10px 10px 10px var(--color-MarshLogo);
            box-shadow: 10px 10px 10px var(--color-MarshLogo);
    padding: 1.25rem;
    background-color: white;
    & ul {
        padding-left: 1.5rem; /* to accommodate the marker */
        list-style-image: url("./Resources/double-chevron.svg");
        font-size: 1.125rem
    }
    & li {
        margin-bottom: 1rem
    }
}
/* #endregion Home-section-sola */

/* #region Home-section-logistics */
#section-logistics {
    background-color: white;
}

.home-section-logistics-frame-corner {
    bottom: 0;
    right: 0;
    position: absolute;
    -webkit-transform: rotateX(180deg);
            transform: rotateX(180deg);
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 500 500%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M293.24 5e2c80.786.0 153.64-32.398 206.676-85.156.112-.111.112-138.364.0-414.76-276.41-.097-414.664-.097-414.76.0C32.842 52.957.0 127.054.0 207.244.0 368.93 131.288 5e2 293.24 5e2zm0-124.4c-93.133.0-168.633-75.375-168.633-168.355.0-92.98 75.5-168.355 168.634-168.355s168.634 75.375 168.634 168.355S386.375 375.6 293.241 375.6z%22 fill=%22%23f19483%22 fill-rule=%22nonzero%22/%3E%3C/svg%3E");
    max-width: 100%;
    width: 250px;
    height: 250px;
    background-size: 250px 250px;
}

.home-section-logistics-frame-top {
    top: 0;
    left: 0;
    right: 0;
    position: absolute;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1920 150%22 preserveAspectRatio=%22none%22%3E%3Cg fill=%22%23f19483%22 fill-rule=%22nonzero%22%3E%3Cpath d=%22M0 120l160-13.375C320 93.75 640 66.25 960 53.375 1280 40 16e2 40 1760 40h160V0H0v120z%22 opacity=%22.301%22/%3E%3Cpath d=%22M0 150l160-16.719c160-16.094 480-50.469 8e2-66.562C1280 50 16e2 50 1760 50h160V0H0v150z%22 opacity=%22.15%22/%3E%3Cpath d=%22M0 90l160-10.031c160-9.656 480-30.281 8e2-39.938C1280 30 16e2 30 1760 30h160V0H0v90z%22/%3E%3C/g%3E%3C/svg%3E");
    width: 100%;
    height: 150px;
    background-size: 100% 150px;
}

#logistics-heading {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    & h3 {
        text-wrap: unset;
    }
    & .container-col {
        @media screen and (width <= 685px) {
            & {
                max-width: 377.781px;
            }
        }
    }
}

#logistics-modes {
    & .container-col {
        row-gap: 1rem;
        min-width: 300px;
        z-index: 9;
        @media screen and (width >= 600px) {
            & {
                max-width: 377.781px;
            }
        }
    }
    & hr {
        background-color: #e5e7eb;
        width: 100%;
        height: 0.2rem;
    }
    & h5 {
        color: black;
    }
    & h4 {
        color: #949494;
    }
}
/* #endregion Home-section-logistics */

/* #region Products-section-hero */
#products-section-hero {
    background-color: #523a50;
    padding-bottom: max(14vh,180px);
    & .products-section-hero-frame-bottom {
        left: 0;
        right: 0;
        bottom: 0;
        position: absolute;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1920 150%22 preserveAspectRatio=%22none%22%3E%3Cg fill=%22currentcolor%22 fill-rule=%22nonzero%22%3E%3Cpath d=%22M0 71.455 40 86.62c40 15.165 120 45.494 2e2 40.47 80-5.402 160-45.209 240-55.635 80-10.425 160 10.426 240-5.023 80-14.88 160-66.06 240-55.635 80 10.426 160 80.562 240 85.964 80 5.024 160-55.635 240-80.94 80-24.927 160-15.45 240-5.024 53.333 6.95 133.333 35.574 240 85.87V150H0V71.455z%22 opacity=%22.203%22/%3E%3Cpath d=%22M0 88.735l40 11.829c40 11.828 120 35.485 2e2 31.567 80-4.214 160-35.264 240-43.396 80-8.132 160 8.132 240-3.918 80-11.606 160-51.527 240-43.395s160 62.838 240 67.052c80 3.918 160-43.395 240-63.134 80-19.443 160-12.05 240-3.918 53.333 5.421 133.333 27.747 240 66.978V150H0V88.735z%22/%3E%3C/g%3E%3C/svg%3E");
        width: 100%;
        height: 150px;
        background-size: 100% 150px;
      }
}

#products-hero-heading-left {
    -webkit-box-flex: 1.25;
        -ms-flex-positive: 1.25;
            flex-grow: 1.25;
    color: #F4EEF3;
    font-size: 1.25rem;
    @media screen and (width <= 950px) {
        & {
            font-size: 1rem;
        }
    }
    & ul {
        min-width: 237px;
        padding-left: 2.5rem; /* to accommodate the marker */
        list-style-image: url("./Resources/check-circle.svg");
    }
    & li {
        margin-bottom: 1rem;
        padding-left: 0.75rem;
    }
}

#products-hero-heading-right {
    padding-left: 5vw;
    & h3 {
        color: #FDC2B2;
        margin-bottom: 1rem;
    }
}
/* #endregion Products-section-hero */

/* #region Products-products-common */
.product-heading {
    color: #D9D9D9;
    & h5 {
        color: #D9D9D9;
    }
    & h1 {
        color: #f1dfbd;
    }
}

.product-heading-text {
    min-width: 318px;
    -webkit-box-flex: 0.9;
        -ms-flex-positive: 0.9;
            flex-grow: 0.9;
}

.product-heading-main-pic {
    min-width: 353.5px;
}

@media screen and (width <= 767px) {
    #sola-heading-pic {
        -webkit-box-ordinal-group: 0;
            -ms-flex-order: -1;
                order: -1
    }
}

.product-mid-heading {
    & h4 {
        color: white;
    }
}
/* #endregion Products-common */

/* #region Products-sola-flowers */
.product-individual-sola {
    -webkit-box-flex: calc(25% - (var(--std-column-gap) * 0.75));
        -ms-flex: calc(25% - (var(--std-column-gap) * 0.75));
            flex: calc(25% - (var(--std-column-gap) * 0.75));
    max-width: calc(25% - (var(--std-column-gap) * 0.75));
    @media screen and (width <= 767px) {
        & {
            -webkit-box-flex: calc(50% - (var(--std-column-gap) * 0.5));
                -ms-flex: calc(50% - (var(--std-column-gap) * 0.5));
                    flex: calc(50% - (var(--std-column-gap) * 0.5));
            max-width: calc(50% - (var(--std-column-gap) * 0.5));
        }
    }
    @media screen and (width < 360px) {
        & {
            -webkit-box-flex: 90%;
                -ms-flex: 90%;
                    flex: 90%;
            max-width: 90%;
        }
    }
}

#sola-flower-main-pic, #sola-flower-peony, #sola-flower-succulent, #sola-flower-camellia, #sola-flower-rose-cabbage, #sola-flower-star, #sola-flower-c1 {
    -webkit-filter: brightness(105%);
            filter: brightness(105%);
}

#sola-flower-electra {
    -webkit-filter: brightness(103%);
            filter: brightness(103%);
}

/* #endregion Products-sola-flowers */

/* #region Products-fillers */
#products-section-fillers {
    background-color: #251610;
    padding-top: max(14vh,180px);
    & .products-section-fillers-frame-top {
        top: 0;
        left: 0;
        right: 0;
        position: absolute;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1920 150%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M0 109.785l64-19.602c64-19.969 192-58.62 320-39.294 128 19.325 256 98.466 384 98.191 128 .275 256-78.866 384-88.345 128-9.846 256 49.05 384 53.927 128 5.245 256-44.448 320-68.65l64-24.571V0H0v109.785z%22 fill=%22currentcolor%22/%3E%3C/svg%3E");
        width: 100%;
        height: 150px;
        background-size: 100% 150px;
      }
}

#fillers-main-pic {
    -webkit-filter: brightness(125%);
            filter: brightness(125%);
}

#product-filler-set {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.product-individual-filler {
    -webkit-box-flex: calc(33.33% - (var(--std-column-gap) * 0.667));
        -ms-flex: calc(33.33% - (var(--std-column-gap) * 0.667));
            flex: calc(33.33% - (var(--std-column-gap) * 0.667));
    max-width: 300px;
    @media screen and (width <= 767px) {
        & {
            -webkit-box-flex: calc(50% - (var(--std-column-gap) * 0.5));
                -ms-flex: calc(50% - (var(--std-column-gap) * 0.5));
                    flex: calc(50% - (var(--std-column-gap) * 0.5));
            max-width: calc(50% - (var(--std-column-gap) * 0.5));
        }
    }
    @media screen and (width < 360px) {
        & {
            -webkit-box-flex: 90%;
                -ms-flex: 90%;
                    flex: 90%;
            max-width: 90%;
        }
    }
}

#filler-mushroom-sponge, #filler-buddha-nut, #filler-palm-leaves-yellow, #filler-woodapple-bel-cup, #filler-palm-leaves, #filler-pine-cone {
    -webkit-filter: brightness(110%);
            filter: brightness(110%);
}
/* #endregion Products-fillers */

/* #region About-section-hero */
#about-section-hero {
    background-color: #222629;
}

#about-hero-heading {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    overflow: hidden;
    & h3, & h4 {
        color: goldenrod;
    }
    & .container-col {
        min-width: 360px;
    }
}

#about-hero-heading-left {
    & p {
        color: #8A8D8F;
        font-size: calc(1.125 * 1rem);
    }
    & h5 {
        color: #86c232;
        padding-top: 1rem;
    }
    & div.icon-text-iconOnLeft {
        font-size: calc(1rem * 1.25);
        & svg {
            height: 1.5rem;
        }
    }
}

#icon-text-environment {
    color: #579F38;
}

#icon-text-society {
    color: #f0c776;
}

#icon-text-governance {
    color: #4394C7;
}

#about-hero-heading-right {
    border-radius: 10px 10px;
    background-image: url(./Resources/About/note-rough-edge.png);
    background-size: 100% 100%;
    background-position: top;
    background-repeat: no-repeat;
    background-blend-mode: normal;
    background-attachment: scroll;

    & #about-hero-heading-right-padding-wrapper { /* this is reqd because % padding takes width of parent */
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        padding: 40px 48px 48px 56px;
        row-gap: 1.5em;
    }
}
/* #endregion About-section-hero */

/* #region About-section-accreditations */
#about-section-accreditations {
    background-color: #FFFDD0;
}

#row-accreditations {
    & h5 {
        color: #210804;   
    }
    & .container-col {
        min-width: 360px;
        @media screen and (width < 360px) {
            & {
                min-width: 100%;
            }   
        }
    }
}

#image-about-accreditations {
    max-height: 12.5rem;
    margin: auto;
}
/* #endregion About-section-accreditations */

/* #region Legal-section-hero */
#legal-section-hero {
    background-color: #EAE7DC;;
}

.row-legal {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.col-legal {
    max-width: 80ch;
    text-align: justify;
    & h1 {
        margin: auto;
    }
    & hr {
        background-color: black;
        width: 100%;
        height: 1px;
    }
}
/* #endregion Legal-section-hero */

/*
html {
    font-size: clamp(14px,calc(100vw * 3/1000 + 12.2px),16px); /* m = 0.003, c = 12 
}
@media screen and (width >= 421px) {
    html {
        font-size: clamp(12px,calc(100vw * 1/90 + 7.33px),14px); /* m = 1/90, c = 7.33
    }

@media screen and (width >= 20rem) {
    html {
        --text-scale: 1.0;
    }
}
@media screen and (width >= 30rem) {
    html {
        --text-scale: 0.875;
    }
}
@media screen and (width >= 40rem) {
    html {
        --text-scale: 1.0;
    }
}
@media screen and (width >= 100rem) {
    html {
        --text-scale: 1.25;
    }
}
}*/