:root {
    --ss-color-primary: #3F3733;
    --ss-color-secondary: #746E6C;
    --ss-color-gray: #F0F0F0;
    --ss-font-secondary: 'Fahkwang', sans-serif;
    --ss-btn-font-size: clamp(14px, 1.5vw, 18px);
    --ss-font-size-h1: clamp(1.75rem, 1.0527rem + 1.7459vw, 2.875rem);
    --ss-font-size-h2: clamp(1.5625rem, 0.9427rem + 1.5519vw, 2.5625rem);
    --ss-font-size-h3: clamp(1.375rem, 1.2201rem + 0.388vw, 1.625rem);
    --ss-font-size-h4: clamp(1.125rem, 1.0475rem + 0.194vw, 1.25rem);
}

html, body {
    color: var(--ss-color-primary);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--ss-font-secondary);
    font-weight: 400;
    letter-spacing: normal;
    text-shadow: none;
}

h1, .has-h-1-font-size {
    font-size: var(--ss-font-size-h1);
    line-height: 115%;
}

h2, .has-h-2-font-size {
    font-size: var(--ss-font-size-h2);
    line-height: 115%;
}
h3, .has-h-3-font-size {
    font-size: var(--ss-font-size-h3);
    line-height: 130%;
}

h4, .has-h-4-font-size {
    font-size: var(--ss-font-size-h4);
    line-height: 140%;
}

/* Page intro */
#page-intro {
    padding-top: 140px;
    margin-bottom: 90px;
}

.offer #page-intro {
    display: none;
}

@media (min-width: 992px) {
    #page-intro {
        padding-top: 134px;
    }
}

@media (min-width: 1200px) {
    #page-intro {
        padding-top: 151px;
    }
}

@media (min-width: 1400px) {
    #page-intro {
        padding-top: 181px;
    }
}

#page-intro .breadcrumbs .breadcrumb,
#page-intro .breadcrumbs {
    margin: 0px 0px clamp(24px, 4vw, 48px);
    font-size: 0.875rem;
    color: var(--ss-color-primary);
}

#page-intro .breadcrumbs a {
    color: var(--ss-color-primary);
    text-decoration: none;
}

#page-intro .breadcrumbs a:hover {
    text-decoration: underline;
}

#page-intro .page-title {
    margin: 0 0 clamp(24px, 4vw, 48px);
}

#page-intro .featured-image {
    overflow: hidden;
    border-radius: 16px;
    aspect-ratio: 2.3 / 1;
    max-height: 600px;
    width: 100%;
}

#page-intro .featured-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* End: Page intro */

/* Hero */
#header > div.main-part > div.brand {
    scale: none;
    margin: 0;
}

#header > div.main-part > div {
    scale: none;
    margin-top: none !important;
    margin-left: auto;
}

#header .mobile-part .brand img {
    margin: 15px 20px;
}

#header .mobile-part.bg .brand:before {
    display: none;
}

#slider .widgets .widget .asariplug_sengine {
    background-color: #fff !important;
    color: var(--ss-color-primary) !important;
    border-radius: 16px;
    padding: clamp(20px, 4vw, 60px) clamp(16px, 3vw, 48px);
}
@media (min-width: 768px) {
    #slider .widgets .widget + .widget {
        margin-top: 0 !important;
    }
}
#slider .widgets .widget .asariplug_sengine label {
    font-size: 14px;
}
#slider .widgets .widget .asariplug_sengine .rynek-pierwotny,
#slider .widgets .widget .asariplug_sengine .rynek-wtorny {
    font-size: 14px;
    display: flex;
    align-items: center;
}
#slider .widgets .textwidget.custom-html-widget {
    width: 100%;
    text-align: left;
    padding-left: 0;
    padding-right: 0;
}
/* End: Hero */

/* Button */
.btn-primary:not(.wp-block-button),
.wp-block-buttons > .wp-block-button.is-style-fill > .wp-element-button,
:is(#slider .widgets, #slider + .widgets) .asariplug_sengine :is(input[type='submit'], .f_location_locality_mapTrigger, .f_location_locality_mapSelected), #cookie-bar .button,
.link-contact {
    display: inline-block;
    background-color: var(--ss-color-primary);
    color: #fff;
    border: none;
    font-family: var(--ss-font-secondary);
    font-size: var(--ss-btn-font-size);
    padding: 6px clamp(24px, 3vw, 32px) !important;
    border-radius: 4px;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    transition: color 0.15s ease;
    text-transform: uppercase;
    text-align: center;

    &:hover {
        color: transparent;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='19' viewBox='0 0 20 19' fill='none'%3E%3Cg clip-path='url(%23clip0_195_729)'%3E%3Cpath d='M19.7709 8.97464C19.7706 8.97442 19.7704 8.97416 19.7702 8.97394L15.688 5.11456C15.3821 4.82544 14.8875 4.82652 14.5831 5.11708C14.2787 5.40761 14.2799 5.87753 14.5857 6.16668L17.3265 8.75781H0.78125C0.349766 8.75781 0 9.09009 0 9.5C0 9.90991 0.349766 10.2422 0.78125 10.2422H17.3264L14.5857 12.8333C14.2799 13.1225 14.2788 13.5924 14.5831 13.8829C14.8875 14.1735 15.3822 14.1745 15.688 13.8854L19.7702 10.0261C19.7704 10.0258 19.7706 10.0256 19.7709 10.0254C20.0769 9.73523 20.0759 9.2638 19.7709 8.97464Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_195_729'%3E%3Crect width='20' height='19' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
    }
}

.btn-secondary, .btn-filter input,
.wp-block-buttons > .wp-block-button.is-style-outline > .wp-element-button,
.link-offer.btn.btn-primary,
.link-offers {
    display: inline-block;
    font-family: var(--ss-font-secondary);
    font-size: var(--ss-btn-font-size);
    padding: 6px clamp(24px, 3vw, 32px) !important;
    color: var(--ss-color-primary);
    background-color: transparent;
    border-radius: 4px;
    box-shadow: none;
    border: 1px solid var(--ss-color-primary);
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    transition: color 0.15s ease;
    text-transform: uppercase;
    text-align: center;

    &:hover {
        color: transparent !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='19' viewBox='0 0 20 19' fill='none'%3E%3Cg clip-path='url(%23clip0_195_749)'%3E%3Cpath d='M19.7709 8.97464C19.7706 8.97442 19.7704 8.97416 19.7702 8.97394L15.688 5.11456C15.3821 4.82544 14.8875 4.82652 14.5831 5.11708C14.2787 5.40761 14.2799 5.87753 14.5857 6.16668L17.3265 8.75781H0.78125C0.349766 8.75781 0 9.09009 0 9.5C0 9.90991 0.349766 10.2422 0.78125 10.2422H17.3264L14.5857 12.8333C14.2799 13.1225 14.2788 13.5924 14.5831 13.8829C14.8875 14.1735 15.3822 14.1745 15.688 13.8854L19.7702 10.0261C19.7704 10.0258 19.7706 10.0256 19.7709 10.0254C20.0769 9.73523 20.0759 9.2638 19.7709 8.97464Z' fill='%233F3733'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_195_749'%3E%3Crect width='20' height='19' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") !important;
    }
}

.btn-white{
    font-family: var(--ss-font-secondary);
    font-size: var(--ss-btn-font-size);
    padding: 6px clamp(24px, 3vw, 32px) !important;
    color: #fff;
    background-color: transparent;
    border-radius: 4px;
    box-shadow: none;
    border: 1px solid #fff;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    transition: color 0.15s ease;

     &:hover {
        color: transparent;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='19' viewBox='0 0 20 19' fill='none'%3E%3Cg clip-path='url(%23clip0_195_729)'%3E%3Cpath d='M19.7709 8.97464C19.7706 8.97442 19.7704 8.97416 19.7702 8.97394L15.688 5.11456C15.3821 4.82544 14.8875 4.82652 14.5831 5.11708C14.2787 5.40761 14.2799 5.87753 14.5857 6.16668L17.3265 8.75781H0.78125C0.349766 8.75781 0 9.09009 0 9.5C0 9.90991 0.349766 10.2422 0.78125 10.2422H17.3264L14.5857 12.8333C14.2799 13.1225 14.2788 13.5924 14.5831 13.8829C14.8875 14.1735 15.3822 14.1745 15.688 13.8854L19.7702 10.0261C19.7704 10.0258 19.7706 10.0256 19.7709 10.0254C20.0769 9.73523 20.0759 9.2638 19.7709 8.97464Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_195_729'%3E%3Crect width='20' height='19' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
    }
}

#slider .widgets :is(input:not([type='checkbox']), select, .asariplug_sengine_checkselect_label, .asariplug_sengine_dictionarySliderRange_container) {
    border-radius: 4px;
    box-shadow: none;
    border: 1px solid var(--ss-color-primary);
    text-transform: capitalize;
    letter-spacing: normal;
    font-size: 1rem;
}

#slider .widgets .asariplug_common_box {
    padding: 0px 8px;
}

@media (min-width: 700px) {
    #slider .widgets .asariplug_common_box:has(input[name="advancedButton"]) {
        padding-right: 24px;
    }
}
/* End: Button */

/* Input */
input::placeholder {
    color: var(--ss-color-primary);
}
input:focus::placeholder {
    color: var(--ss-color-secondary);
}
/* End: Input */

/* Checkbox */
input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 1px solid var(--ss-color-primary) !important;
    border-radius: 4px !important;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    background-size: 14px;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease;
    vertical-align: middle;
    margin: 0 8px 0 0;
    padding: 0 !important;
}

input[type="checkbox"]:checked,
:is(#slider .widgets, #slider + .widgets) input[type="checkbox"]:checked {
    background-color: var(--ss-color-primary) !important;
    border-color: var(--ss-color-primary) !important;
}

input[type="checkbox"]:focus-visible {
    outline: 2px solid var(--ss-color-secondary) !important;
    outline-offset: 2px !important;
}

/* Zgody RODO w formularzach (wtyczka asariplug, np. .clausule.data-processing) */
.form-group.clausule {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.form-group.clausule input[type="checkbox"] {
    flex-shrink: 0;
    margin: 2px 0 0;
}

.form-group.clausule label {
    margin: 0;
}
/* End: Checkbox */

/* Widgety */
#top-bar .widget .widget-social {
    li a {
        background-color: var(--ss-color-primary);
        color: #fff;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 9999px;
        font-size: 1rem;
        transition: all .15s ease;

        &:hover {
            background-color: var(--ss-color-secondary);
        }
    }
}

#top-bar .widget .asariplug_widget_basket a {
    flex-direction: row-reverse;

    .asariplug_basket_num {
        display: none;
    }
}

.widget-offers.boxes {
    margin-block-start: 0;
}

.widget-posts .post {
    background-color: transparent;
    
    a {
        display: block;
        overflow: hidden;
        background-color: transparent;
        border: 1px solid rgba(63, 55, 51, 0.40);
        border-radius: 16px;

        &:hover {
            box-shadow: 0 6px 13px 0 #00000012, 0 13px 13px -13px #00000006;
        }

        &:hover .inner {
            background-color: var(--ss-color-gray);
        }
    }

    .inner, a {
        transition: all 0.3s ease;
    }

    .location, .params {
        display: none;
    }

    .name {
        margin: 0;
        font-size: var(--ss-font-size-h4);
        font-family: var(--ss-font-secondary);
        line-height: 1.4;
    }
}

#post-cta {
    margin-top: 90px;
}

#related-posts {
    margin-top: 90px;
    
    h2 {
        margin-bottom: 48px;
    }

    .widget-posts {

    }
}

.widget-team.boxes:not(.cols-1) {
    h2 {
        display: none;
    }

    .holder {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }

    .holder .person .inner {
        background-color: var(--ss-color-gray);
        border-radius: 16px;
        overflow: hidden;
        padding: clamp(24px, 3vw, 40px) clamp(16px, 2vw, 32px);
    }

    .holder .person .inner .image {
        width: clamp(100px, 20vw, 150px);
        height: clamp(100px, 20vw, 150px);
        overflow: hidden;
        border-radius: 9999px;

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }

    .holder .person .inner .info {
        margin-top: 24px;

        .title > .name {
            font-size: var(--ss-font-size-h3);
            font-family: var(--ss-font-secondary);
            line-height: 1.3;
        }

        .section:has(.title) {
            padding-bottom: 16px;
            margin-bottom: 16px;
            border-bottom: 1px solid #3F373340;
        }
        
        ul.links {
            font-family: var(--ss-font-secondary);

            a {
                transition: opacity 0.2s ease;
            }

            a:hover {
                opacity: 0.65;
            }
        }
        
        .section:last-of-type .links {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-top: clamp(24px, 2vw, 32px);
            flex-wrap: wrap;

            .link-contact, .link-offers {
                flex-shrink: 0;
                flex-grow: 1;
            }
        }
    }

    @media (max-width: 900px) {
        .holder {
            grid-template-columns: repeat(2, 1fr);
            gap: 16px;
        }
    }
    @media (max-width: 600px) {
        .holder {
            grid-template-columns: repeat(1, 1fr);
            gap: 16px;
        }
    }
}

.widget-offers.rows .property {
    .inner .info .section:first-of-type {
        display: flex;
    }
    
    .inner .info dl.params {
        margin-top: 20px;
    }
}

/* End: Widgety */

/* Stopka */
#footer {
    background-color: #fff;
    color: var(--ss-color-primary);
}

#footer a {
    color: var(--ss-color-primary);
}

#footer .widgets {
    display: flex;
    gap: 24px 32px;
}

#footer .widgets > :is(.widget, .section) {
    flex-basis: auto;
}

#footer .footer-top {
    background-color: var(--ss-color-gray);
    padding: 21px 0;
}

#footer #footer-row-top {
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

#footer .widget.footer-top-right {
    display: flex;
    align-items: center;
    gap: 26px;

    h3, h4 {
        margin: 0;
    }
}

#footer #footer-row-top .section {
    display: flex;
    align-items: center;
    gap: 16px 24px;
    flex-wrap: wrap;
}

#footer #footer-row-top .section-right {
    justify-content: flex-end;
}

#footer #footer-row-top .widget img {
    max-width: clamp(160px, 20vw, 220px);
    height: auto;
}

#footer #footer-row-top .widget p {
    margin: 0;
}

#footer .widgets ul[class*='widget-social'] {
    gap: 16px;
    font-size: 20px;
}

#footer .widgets ul[class*='widget-social'] a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: unset;
    padding: 0;
    border-radius: 9999px;
    color: #fff;
    background-color: var(--ss-color-primary);
    opacity: 1;
    transition: all 0.15s ease;
}

#footer .widgets ul[class*='widget-social'] a:hover,
#footer .widgets ul[class*='widget-social'] a:focus,
#footer .widgets ul[class*='widget-social'] a:active {
    background-color: var(--ss-color-secondary);
    color: #fff;
    opacity: 1;
}

#footer #footer-row-columns {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: start;
    gap: 24px;
    padding: 40px 0;
}

#footer #footer-row-columns .footer-column {
    display: flex;
    flex-direction: column;
    gap: 30px;
    min-width: 0;
}

#footer #footer-row-columns .widget > :is(h2, h3, h4) {
    margin: 0 0 10px;
    font-size: 1rem;
    font-family: Poppins;
    font-weight: 700;
    line-height: 1.6;
    color: var(--ss-color-primary);
}

#footer #footer-row-columns .widget ul {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-height: none;
    overflow: visible;
}

#footer #footer-row-columns .widget :is(p, li, a) {
    line-height: 1.6;
    margin: 0;
}

#footer #footer-row-columns .widget ul > li > a {
    overflow: visible;
    text-overflow: unset;
    white-space: normal;
}

#footer #footer-row-bar {
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: clamp(32px, 5vw, 64px);
    padding-top: 24px;
    border-top: 1px solid rgba(63, 55, 51, 0.15);
    font-size: 0.875rem;
}

#footer #footer-row-bar .section {
    display: flex;
    align-items: center;
    gap: 8px 16px;
    flex-wrap: wrap;
}

#footer #footer-row-bar .section-right {
    justify-content: flex-end;
}

#footer #footer-row-bar :is(p, .widget) {
    margin: 0;
}

#footer #footer-row-bar a {
    display: inline;
}

#footer .widgets .widget:has(> .widget-aboutus) > h3 {
    display: none;
}

#footer .widgets .widget .widget-aboutus {
    .name {
        margin-bottom: 10px !important;
    }

    .address {
        margin-bottom: 30px;
    }
}

@media (max-width: 991px) {
    #footer #footer-row-columns {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    #footer #footer-row-top,
    #footer #footer-row-bar {
        flex-direction: column;
        align-items: flex-start;
    }

    #footer #footer-row-top .section-right,
    #footer #footer-row-bar .section-right {
        justify-content: flex-start;
    }

    #footer #footer-row-columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 479px) {
    #footer #footer-row-columns {
        grid-template-columns: minmax(0, 1fr);
    }
}

#footer #footer-row-bottom {
    padding: 16px 0;
    border-top: 1px solid rgba(63, 55, 51, 0.15);
}

#footer #footer-row-bottom > .width-1 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 16px;
}

#footer #footer-row-bottom .section {
    display: flex;
    align-items: center;
    gap: 8px;
}

#footer #footer-row-bottom p {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

#footer #footer-row-bottom img {
    height: 28px;
    width: auto;
}

/* End: Stopka */

.wp-block-cover, .wp-block-cover-image {
    border-radius: 16px;
    aspect-ratio: 4/2;
}

.widget-posts {
    margin-block-start: 0;
}

@media (min-width: 782px) {
   .wp-block-cover, .wp-block-cover-image {
        aspect-ratio: 4/5.28;
   } 
}

.posts-loop {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;

    @media(max-width: 1000px) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    @media(max-width: 600px) {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .post {
        display: flex;
        flex-direction: column;
        overflow: hidden;
        background-color: transparent;
        border: 1px solid rgba(63, 55, 51, 0.40);
        border-radius: 16px;
        cursor: pointer;
        transition: background-color 0.3s ease;

        &:hover {
            background-color: var(--ss-color-gray);
        }

        .image {
            position: relative;
            padding-bottom: 65%;

            @media (min-width: 768px) {
                width: 100%;
                min-height: 340px;
            }
        }

        .image img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .text {
            padding: clamp(20px, 2vw, 32px);
        }

        .text .title {
            margin: 0;
            font-size: var(--ss-font-size-h4);
            font-family: var(--ss-font-secondary);
            line-height: 1.4;
        }

        .post-btn {
            margin-top: clamp(24px, 4vw, 52px);
        }
    }
}

.pagination-nav {
    --ss-pagination-arrow-size: 50px;
    --ss-pagination-item-size: 40px;
    --ss-pagination-current-size: 64px;

    margin-top: clamp(32px, 5vw, 64px);

    .pagination {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-end;
        gap: 6px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .pagination li {
        display: flex;
        float: unset;
        margin: 0;
        padding: 0;
        list-style: none;

        &::before,
        &::marker {
            content: none;
        }
    }

    .pagination :is(a, span).page-numbers {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        min-width: var(--ss-pagination-item-size);
        height: var(--ss-pagination-item-size);
        margin: 0;
        padding: 0 4px;
        border: 1px solid transparent;
        border-radius: 50%;
        background-color: transparent;
        color: var(--ss-color-primary);
        font-size: 1rem;
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        text-decoration: none;
        transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    }

    .pagination a.page-numbers:not(.prev, .next):hover {
        background-color: var(--ss-color-gray);
    }

    .pagination span.page-numbers.current {
        min-width: var(--ss-pagination-current-size);
        height: var(--ss-pagination-current-size);
        border-color: var(--ss-color-primary);
    }

    .pagination span.page-numbers.dots {
        color: var(--ss-color-secondary);
        letter-spacing: 2px;
    }

    .pagination li.pagination-arrow:first-child {
        margin-right: clamp(8px, 2vw, 20px);
    }

    .pagination li.pagination-arrow:last-child {
        margin-left: clamp(8px, 2vw, 20px);
    }

    .pagination :is(a, span).page-numbers:is(.prev, .next) {
        min-width: var(--ss-pagination-arrow-size);
        width: var(--ss-pagination-arrow-size);
        height: var(--ss-pagination-arrow-size);
        padding: 0;
        border-radius: 0;
        background-color: rgba(63, 55, 51, 0.40);
        color: #fff;
    }

    .pagination a.page-numbers:is(.prev, .next):hover {
        background-color: var(--ss-color-primary);
    }

    .pagination span.page-numbers:is(.prev, .next).disabled {
        opacity: 0.4;
        pointer-events: none;
    }

    .screen-reader-text {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        border: 0;
        clip-path: inset(50%);
        white-space: nowrap;
    }
}

@media (max-width: 575px) {
    .pagination-nav {
        --ss-pagination-arrow-size: 40px;
        --ss-pagination-item-size: 34px;
        --ss-pagination-current-size: 48px;
    }
}

/* Table of contents (Easy Table of Contents plugin) */
body div#ez-toc-container {
    display: block;
    position: static;
    width: 100%;
    max-width: 100%;
    margin-bottom: clamp(24px, 4vw, 40px);
    padding: 0;
    border: none;
    border-radius: 0;
    background: none transparent;
    box-shadow: none;
    color: var(--ss-color-primary);
    font-family: var(--ss-font-secondary);

    .ez-toc-title-container,
    .ez-toc-title-toggle {
        display: none;
    }

    nav {
        padding: 0;
    }

    ul.ez-toc-list {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    ul.ez-toc-list li {
        margin: 0 0 clamp(10px, 1.5vw, 18px);
        padding: 0;
        overflow: visible;
        list-style: none;

        &::marker {
            content: none;
        }

        &:last-child {
            margin-bottom: 0;
        }
    }

    ul.ez-toc-list ul {
        margin: clamp(10px, 1.5vw, 18px) 0 0;
        padding-left: 1.5em;
    }

    ul.ez-toc-list a.ez-toc-link {
        display: flex;
        align-items: baseline;
        gap: 0.4em;
        box-shadow: none;
        color: var(--ss-color-primary);
        font-family: var(--ss-font-secondary);
        font-size: var(--ss-font-size-h4);
        font-weight: 400;
        line-height: 1.4;
        text-decoration: none;
        text-shadow: none;
        transition: color 0.2s ease;

        &::before {
            float: none;
            flex: 0 0 auto;
            margin: 0;
            min-width: 0;
            font-variant-numeric: tabular-nums;
            color: var(--ss-color-primary);
        }

        &:visited {
            color: var(--ss-color-primary);
        }

        &:is(:hover, :focus-visible) {
            color: var(--ss-color-secondary);
        }
    }

    ul.ez-toc-list ul a.ez-toc-link {
        font-size: calc(var(--ss-font-size-h4) * 0.9);
    }
}

#offices h2 {
    margin-bottom: 48px;
}