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

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

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



    :root, 
    .small {
        --red                     : 236,  28,  35;
        --red-light               : 255,  63,  69;
        --blue-light              :  84, 111, 196;
        --blue                    :  62,  89, 172;
        --blue-dark               :   3,  21,  33;
        --yellow                  : 252, 244, 160;
        --pink                    : 252, 179, 160;
        --white                   : 255, 255, 255;
        --green                   : 141, 172,  40;
        --gray-light-xx           : 242, 241, 236;
        --gray-light-x            : 217, 216, 212;
        --gray-light              : 174, 184, 191;
        --gray                    : 122, 133, 141;
        --gray-dark               :  60,  74,  83;
        --gray-dark-x             :   3,  21,  33;
        --black                   :   0,   0,   0;

        --color-red               : rgb(var(--red));
        --color-red-light         : rgb(var(--red-light));
        --color-blue-light        : rgb(var(--blue-light));
        --color-blue              : rgb(var(--blue));
        --color-blue-dark         : rgb(var(--blue-dark));
        --color-yellow            : rgb(var(--yellow));
        --color-pink              : rgb(var(--pink));
        --color-white             : rgb(var(--white));
        --color-green             : rgb(var(--green));
        --color-gray-light-xx     : rgb(var(--gray-light-xx));
        --color-gray-light-x      : rgb(var(--gray-light-x));
        --color-gray-light        : rgb(var(--gray-light));
        --color-gray              : rgb(var(--gray));
        --color-gray-dark         : rgb(var(--gray-dark));
        --color-gray-dark-x       : rgb(var(--gray-dark-x));
        --color-black             : rgb(var(--black));

        --color-text              : var(--color-gray-dark); 
        --color-text-link         : var(--color-red); 
        --color-text-selection    : var(--color-black); 
        --color-text-selection-bg : var(--color-pink); 
        --color-heading           : var(--color-black); 
    }



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

    ██╗   ██╗ █████╗ ██████╗ ██╗ █████╗ ██████╗ ██╗     ███████╗███████╗
    ██║   ██║██╔══██╗██╔══██╗██║██╔══██╗██╔══██╗██║     ██╔════╝██╔════╝
    ██║   ██║███████║██████╔╝██║███████║██████╔╝██║     █████╗  ███████╗
    ╚██╗ ██╔╝██╔══██║██╔══██╗██║██╔══██║██╔══██╗██║     ██╔══╝  ╚════██║
     ╚████╔╝ ██║  ██║██║  ██║██║██║  ██║██████╔╝███████╗███████╗███████║
      ╚═══╝  ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝╚═╝  ╚═╝╚═════╝ ╚══════╝╚══════╝╚══════╝
                                                                        
 ****************************************************************************/


   
    :root,
    .small {
        --font-scale          : 1.1;    /* How the headings font size scales up */
        
        --root-font-size      : 10px;   /* The root element, ie HTML, font size */
        --base-font-size      : 1.8rem; /* The body element base font size */
        --base-line-height    : 1.4;    /* The default line height of all elements */
        --text-line-height    : 1.4;    /* The line height of block text elements */
        --heading-line-height : 1.3;    /* The line height of heading elements */

        --text-rhythm         : 1.2rem;   /* Vertical margins between text elements */
        --grid-gutter         : 2.7rem;   /* Paddings between columns, the grid gutters */
        --grid-gutter-big     : 2rem; /* Paddings between columns, the grid gutters */
        --grid-gutter-small   : 0.8rem; /* Paddings between columns, the grid gutters */
        --vertical-rhythm     : 1.5rem;   /* Vertical margins between major grid sections */

        --panel-width         : 1755px; /* The width of the panel element */
        --panel-narrow-width  : 1600px; /* The width of the narrow panel element */
    }

    .tablet {
        --font-scale          : 1.125;  /* How the headings font size scales up */
        --base-font-size      : 1.5rem; /* The body element base font size */
        --base-line-height    : 1.5;    /* The default line height of all elements */
        --text-line-height    : 1.6;    /* The line height of block text elements */
        --heading-line-height : 1.25;   /* The line height of heading elements */

        --text-rhythm         : 1.8rem;   /* Vertical margins between text elements */
        --grid-gutter         : 3rem;   /* Paddings between columns, the grid gutters */
        --grid-gutter-big     : 5rem; /* Paddings between columns, the grid gutters */
        --grid-gutter-small   : 2.5rem; /* Paddings between columns, the grid gutters */
        --vertical-rhythm     : 2rem;   /* Vertical margins between major grid sections */
    }

    .laptop {
        --font-scale          : 1.15;   /* How the headings font size scales up */
        --base-font-size      : 1.6rem; /* The body element base font size */
        --base-line-height    : 1.5;    /* The default line height of all elements */
        --text-line-height    : 1.7;    /* The line height of block text elements */
        --heading-line-height : 1.2;    /* The line height of heading elements */

        --text-rhythm         : 2rem;     /* Vertical margins between text elements */
        --grid-gutter         : 5rem;  /* Paddings between columns, the grid gutters */
        --grid-gutter-big     : 18rem;   /* Paddings between columns, the grid gutters */
        --grid-gutter-small   : 5.5rem;   /* Paddings between columns, the grid gutters */
        --vertical-rhythm     : 3.25rem;  /* Vertical margins between major grid sections */
    }

    .large {
        --font-scale          : 1.15;   /* How the headings font size scales up */
        --base-font-size      : 1.6rem; /* The body element base font size */
        --base-line-height    : 1.5;    /* The default line height of all elements */
        --text-line-height    : 1.7;    /* The line height of block text elements */
        --heading-line-height : 1.2;    /* The line height of heading elements */

        --text-rhythm         : 2rem;     /* Vertical margins between text elements */
        --grid-gutter         : 7.75rem;  /* Paddings between columns, the grid gutters */
        --grid-gutter-big     : 18rem;   /* Paddings between columns, the grid gutters */
        --grid-gutter-small   : 5.5rem;   /* Paddings between columns, the grid gutters */
        --vertical-rhythm     : 4.25rem;  /* Vertical margins between major grid sections */
    }



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

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

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



    /* Columns and rows */

    [class*="column"] {
        padding-left: var(--grid-gutter);
        padding-right: var(--grid-gutter);
    }

    [class*="column"] .row {
        margin-left: calc(-1 * var(--grid-gutter)); 
        margin-right: calc(-1 * var(--grid-gutter)); 
    }



    /* The panel that restrains contents to a maximum width */

    .panel {
        max-width: var(--panel-width);
    }

    .panel-narrow {
        max-width: var(--panel-narrow-width);
    }

    .panel-full {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }



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

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

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


    @font-face {
        font-family: 'triplexserifbold';
        src: url('../fonts/triplexserifotcegr-bold-webfont.woff2') format('woff2'),
             url('../fonts/triplexserifotcegr-bold-webfont.woff') format('woff');
        font-weight: normal;
        font-style: normal;

    }

    @font-face {
        font-family: 'triplexseriflight';
        src: url('../fonts/triplexserifotcegr-light-webfont.woff2') format('woff2'),
             url('../fonts/triplexserifotcegr-light-webfont.woff') format('woff');
        font-weight: normal;
        font-style: normal;

    }

    @font-face {
        font-family: 'pf_bague_sans_prolight';
        src: url('../fonts/pfbaguesanspro-light_2-webfont.woff2') format('woff2'),
             url('../fonts/pfbaguesanspro-light_2-webfont.woff') format('woff');
        font-weight: normal;
        font-style: normal;

    }

    @font-face {
        font-family: 'pf_bague_sans_promedium';
        src: url('../fonts/pfbaguesanspro-medium_2-webfont.woff2') format('woff2'),
             url('../fonts/pfbaguesanspro-medium_2-webfont.woff') format('woff');
        font-weight: normal;
        font-style: normal;

    }


    /* Main fonts */

    :root,
    .small {
        --font-general: 'pf_bague_sans_prolight', serif;
        --font-headers: 'triplexserifbold', serif;
        --font-paragraph: 'triplexseriflight', Arial, sans-serif;
        --font-monospace: Consolas, 'Courier New', monospace;
        --font-icons: 'Responsiville icons';
        --font-serif: 'triplexseriflight', serif;
        --font-serif-normal: 'triplexseriflight', serif;
        --font-serif-bold: 'triplexserifbold', serif;
        --font-sans-serif: 'pf_bague_sans_prolight', serif;
        --font-sans-serif-normal: 'pf_bague_sans_prolight', serif;
        --font-sans-serif-bold: 'pf_bague_sans_promedium', serif;
    }



    /* Global base stylings */

    html {
        font-size: var(--root-font-size);
    }

    body {
        font-family: var(--font-paragraph);
        font-size: var(--base-font-size);
        color: var(--color-text);
    }

    h1, h2, h3, h4, h5, h6 {
        font-family: var(--font-headers);
        color: var(--color-heading);
    }

    h1 {
        font-size: 4rem;
    }

    .laptop h1 {
        font-size: 7rem;
    }

    h2 {
        font-size: calc(var(--base-font-size) * var(--font-scale) * var(--font-scale) * var(--font-scale) * var(--font-scale) * var(--font-scale));
    }

    h3 {
        font-size: calc(var(--base-font-size) * var(--font-scale) * var(--font-scale) * var(--font-scale) * var(--font-scale));
    }

    h4, h5, h6 {
        font-size: calc(var(--base-font-size) * var(--font-scale) * var(--font-scale) * var(--font-scale));
    }

    p {
        font-family: var(--font-sans-serif-normal);
        font-size: 1.8rem;
    }

    /* Uppercase (not only) Greek */

    .uppercase {
        text-transform: uppercase;
    }



    /* Input fields */

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


    /* Links, global */

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

    /* Links, inside text */

    .text a {
        border-bottom-style: none;
    }

    .text a:hover {
        border-bottom-style: none;
    }

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



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

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

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


    .imgloaded-not-yet {
        opacity: 0;
    }

    .imgloaded-complete {
        transition: opacity 0.5s ease-in-out;
    }