/********************************************************************************************

    ████████╗██╗   ██╗██████╗  ██████╗  ██████╗ ██████╗  █████╗ ██████╗ ██╗  ██╗██╗   ██╗
    ╚══██╔══╝╚██╗ ██╔╝██╔══██╗██╔═══██╗██╔════╝ ██╔══██╗██╔══██╗██╔══██╗██║  ██║╚██╗ ██╔╝
       ██║    ╚████╔╝ ██████╔╝██║   ██║██║  ███╗██████╔╝███████║██████╔╝███████║ ╚████╔╝
       ██║     ╚██╔╝  ██╔═══╝ ██║   ██║██║   ██║██╔══██╗██╔══██║██╔═══╝ ██╔══██║  ╚██╔╝
       ██║      ██║   ██║     ╚██████╔╝╚██████╔╝██║  ██║██║  ██║██║     ██║  ██║   ██║
       ╚═╝      ╚═╝   ╚═╝      ╚═════╝  ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝     ╚═╝  ╚═╝   ╚═╝

 ********************************************************************************************/



    /* Global base stylings */

    .responsiville {
        font-family: var(--nvm-font-sans-serif);
        font-size: var(--nvm-base-font-size);
        line-height: var(--nvm-base-line-height);
        color: var(--nvm-color-text);
    }

    .text {
        line-height: var(--nvm-text-line-height);
    }

    .responsiville h1, .responsiville .h1, 
    .responsiville h2, .responsiville .h2, 
    .responsiville h3, .responsiville .h3, 
    .responsiville h4, .responsiville .h4,
    .responsiville h5, .responsiville .h5,
    .responsiville h6, .responsiville .h6 {
        font-family: var(--nvm-font-serif);
        font-weight: bold;
        text-wrap: balance;
        overflow-wrap: normal;
    }

  

    /*.responsiville h1, .responsiville .h1 {
        font-size: clamp(30px, 22.2px + 2.174vw, 50px);
    }

    .responsiville h2, .responsiville .h2 {
        font-size: clamp(25px, 18.4px + 1.848vw, 42px);
    }

    .responsiville h3, .responsiville .h3 {
        font-size: clamp(20px, 14.5px + 1.522vw, 34px);
    }

    .responsiville h4, .responsiville .h4, 
    .responsiville h5, .responsiville .h5,
    .responsiville h6, .responsiville .h6 {
        font-size: clamp(16px, 12.9px + 0.87vw, 24px);
    }*/

    .responsiville h1, .responsiville .h1, .responsiville .size-100 {
        font-size: clamp(48px, 32px + 4vw, 100px);
    }

    .responsiville h2, .responsiville .h2, .responsiville .size-80 {
        font-size: clamp(40px, 28px + 3vw, 80px);
    }

    .responsiville h3, .responsiville .h3, .responsiville .size-60 {
        font-size: clamp(32px, 24px + 2.4vw, 60px);
    }

    .responsiville h4, .responsiville .h4, .responsiville .size-40 {
        font-size: clamp(24px, 18px + 1.6vw, 40px);
    }

    .responsiville h5, .responsiville .h5, .responsiville .size-30 {
        font-size: clamp(20px, 16px + 1.2vw, 30px);
    }

    .responsiville h6, .responsiville .h6, .responsiville .size-20 {
        font-size: clamp(16px, 14px + 0.8vw, 20px);
    }



    /* Uppercase for (not only) Greek */

    .responsiville .uppercase {
        text-transform: uppercase;
    }



    /* Input fields */

    .responsiville input,
    .responsiville select,
    .responsiville textarea {
        color: var(--nvm-color-text);
    }



    /* Links, global */

    .responsiville a {
        color: var(--nvm-color-text-link);
    }

    .responsiville .text a {
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .responsiville .text a:hover {
        border-bottom-width: 1px;
        border-bottom-style: solid;
    }

    .responsiville .text .button,
    .responsiville .text .button:hover,
    .responsiville .text .gallery a,
    .responsiville .text .gallery a:hover,
    .responsiville .text .wp-caption a,
    .responsiville .text .wp-caption a:hover {
        border-bottom-width: 0;
    }



    /* Preformatted text and code */

    .responsiville pre {
        background: rgb(245, 245, 245);
        padding: 5px 10px;
        border: 1px dotted rgb(165, 165, 165);
    }

    .responsiville code {
        background: rgb(245, 245, 245);
        padding: 0 5px;
        border: 1px solid rgb(165, 165, 165);
        border-radius: 3px;
    }



    /* Blockquotes */

    .responsiville .text blockquote {
        font-family: var(--nvm-font-serif);
        font-weight: 700;
        font-style: italic;
        font-size: clamp(20px, 16px + 1.2vw, 30px);
        text-wrap: balance;
        color: var(--brand-color-blue);
    }


    .small .responsiville .text blockquote {
        padding: 40px;
    }

    .small .responsiville .text blockquote.with-icon {
        padding: 70px;
    }

    .tablet .responsiville .text blockquote {
        padding: 60px;
    }

    .tablet .responsiville .text blockquote.with-icon {
        padding: 90px;
    }

    .small .responsiville .text blockquote.shout {
        font-size: clamp(24px, 18px + 1.6vw, 40px);
        padding: 20px;
    }

    .tablet .responsiville .text blockquote.shout {
        padding: 30px;
    }

    blockquote.with-icon {
        position: relative;
    }

    blockquote.with-icon::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 125px;   /* adjust based on your SVG */
        height: 62px;
        background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 142 79'><g transform='matrix(1,0,0,1,8.2102,7.3933)'><path d='M0,0.817C15.589,0.817 15.589,13.289 31.179,13.289C46.767,13.289 46.767,0.817 62.356,0.817C77.946,0.817 77.946,13.289 93.537,13.289C109.129,13.289 109.129,0.817 124.719,0.817' fill='none' stroke='rgb(7,56,172)' stroke-width='1.63'/><path d='M62.356,17.697C66.194,17.697 69.056,18.465 71.436,19.607C73.823,20.753 75.738,22.282 77.691,23.844C79.636,25.4 81.619,26.988 84.104,28.181C86.596,29.377 89.58,30.17 93.537,30.17C97.494,30.17 100.479,29.377 102.972,28.181C105.456,26.988 107.439,25.4 109.384,23.844C111.337,22.282 113.252,20.753 115.64,19.607C117.934,18.506 120.677,17.755 124.311,17.702L124.311,33.225C120.556,33.277 117.692,34.053 115.286,35.208C112.802,36.4 110.819,37.989 108.874,39.545C106.921,41.107 105.006,42.637 102.618,43.783C100.239,44.925 97.376,45.692 93.537,45.692C89.699,45.692 86.836,44.925 84.457,43.783C82.069,42.637 80.154,41.107 78.201,39.545C76.257,37.989 74.273,36.401 71.789,35.208C69.296,34.012 66.312,33.22 62.356,33.22C58.399,33.22 55.415,34.012 52.923,35.208C50.439,36.401 48.456,37.989 46.512,39.545C44.559,41.107 42.644,42.637 40.257,43.783C37.878,44.925 35.016,45.692 31.179,45.692C27.341,45.692 24.478,44.925 22.099,43.783C19.711,42.637 17.796,41.107 15.844,39.545C13.899,37.989 11.916,36.401 9.433,35.208C7.026,34.053 4.163,33.277 0.408,33.225L0.408,17.702C4.042,17.755 6.785,18.505 9.079,19.607C11.467,20.753 13.381,22.282 15.334,23.844C17.279,25.4 19.261,26.988 21.745,28.181C24.238,29.377 27.222,30.17 31.179,30.17C35.135,30.17 38.118,29.377 40.61,28.181C43.094,26.988 45.078,25.4 47.023,23.844C48.975,22.282 50.889,20.753 53.276,19.607C55.655,18.465 58.518,17.697 62.356,17.697Z' fill='rgb(7,56,172)'/><path d='M0,50.1C15.589,50.1 15.589,62.573 31.179,62.573C46.767,62.573 46.767,50.1 62.356,50.1C77.946,50.1 77.946,62.573 93.537,62.573C109.129,62.573 109.129,50.1 124.719,50.1' fill='none' stroke='rgb(7,56,172)' stroke-width='1.63'/></g></svg>") no-repeat center;
        background-size: contain;
    }

    /* Paragraph's formats */

    .responsiville p.no-top-margin {
        margin-top: 0;
    }

    .responsiville p.half-top-margin {
        margin-top: calc(0.5 * var(--nvm-text-rhythm));
    }

    .paragraph-2 {
        font-size: 16px;
    }

    .text > *:not(script, style) + *:not(script, style) {
        margin-top: calc(0.5 * var(--nvm-text-rhythm));
    }

    /* Font style formats */

    .responsiville .nvm-sans-serif {
        font-family: var(--nvm-font-sans-serif);
    }

    .responsiville .nvm-serif {
        font-family: var(--nvm-font-serif);
    }
    
    .white-tag {
        font-family: var(--nvm-font-serif);
        font-size: 16px;
        font-style: italic;
        color: var(--brand-color-black);
        background: var(--brand-color-white);
        padding-inline: 4px;
        text-transform: uppercase;
        display: inline-block;
        margin-bottom: 5px;
    }

    /* Link style formats */

    .responsiville .text a.black-link {
        border-bottom-width: 0px;
        border-bottom-style: none;
        color: var(--brand-color-black);
    }

    .responsiville .text a.black-link:hover {
        color: var(--brand-color-blue);
    }


    /* Tables */

    .small .responsiville table {
        table-layout: fixed;
    }

    .tablet .responsiville table {
        table-layout: inherit;
    }