@charset "UTF-8";
:root {
    /*  ---  [Variables] --- */
    --gc-white: #f6f7f8;
/*    --gc-white: #E9E0D2;*/
    --gc-black: #242323;
    --gc-dgrey: #383736;
    --gc-lgrey: #717070;
    --gc-lgrey: #929190;
/*    --gc-lgrey: #b0b1b2;*/
    --gc-highl: #FA4B57;
    --gc-highl: #0088FF;
    --gc-lhighl: #3ea4fd;
    /* - */
    --gc-sanserif: "sofia-pro", "Sofia Pro", sans-serif;   
    --gc-serif: "Times", serif; 
/*    --gc-sanserif: "objektiv-mk1", sans-serif;  */
    font-size: .625em;
    --gc-xlight: 200;
    --gc-light: 300;
    --gc-regular: 400;
    --gc-medium: 500;
    --gc-bold: 600;
    --gc-lineh: 1.618;
    --gc-spacing: .08em;
    --gc-sphalf: .04em;
}

/* - FIXES - */

/**/
html {
    margin:0;
    padding:0;
}
html {
/*    -webkit-font-smoothing: subpixel-antialiased;*/
/*    -webkit-font-smoothing: none;*/
/*    -moz-font-smoothing: antialiased;*/
/*    -o-font-smoothing: antialiased;*/
/*    font-smoothing: antialiased;*/
}
* {
    margin:0;
    padding:0;
}
html {
/*  box-sizing: border-box;*/
}
*, *:before, *:after {
/*  box-sizing: inherit;*/
}
html,body {
/*    height:100%;*/
}
/*
.hover {
    -webkit-user-select: none;
    -webkit-touch-callout: none;        
}
*/
.unselectable  {
/*    -webkit-touch-callout: none;*/
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: default;
}

body {
    background-color: var(--gc-black);
/*    background-color: var(--gc-white);*/
	color: var(--gc-dgrey);
/*	font-weight: var(--gc-regular);*/
/*	font-size: 1.5625em;*/
    font-size: 1em;
    font-family: var(--gc-sanserif);
    font-weight: var(--gc-light);
    letter-spacing: var(--gc-spacing);
    line-height: var(--gc-lineh);
    text-decoration: none;
	text-align: center;
	direction: ltr;
	text-transform: none;
/*    word-spacing: -0.em;*/
    
/*    letter-spacing: -1px;*/
/*    line-height: var(--gc-lineh);*/
/*    line-height: 100%;*/
/*	font-style: normal;*/
/*	text-rendering: optimizeLegibility;*/
/*    text-rendering: geometricPrecision;*/
/*	font-feature-settings: "kern";*/
/*	-webkit-font-feature-settings: "kern";*/
/*	-moz-font-feature-settings: "kern";*/
/*	-moz-font-feature-settings: "kern=1";*/

}
.wf-loading {
    color: var(--gc-white);
    visibility: hidden;
/* styles to use when web fonts are loading */
}
 
.wf-active {
    visibility: visible;
    color: var(--gc-black);
/* styles to use when web fonts are active */
}
 
.wf-inactive {
    visibility: visible;
    color: var(--gc-black);
/* styles to use when web fonts are inactive */
}

.ltxt{
    color: var(--gc-lgrey);
}

.bg-white{
    background-color: var(--gc-white);
}
.bg-black{
    background-color: var(--gc-black);
}
/* - Links -*/
a { 
    color: inherit;
}
a:link {text-decoration: none;}
a:visited {}
a:hover {text-decoration: none;} 
a:active {}

/* --- Call to Action Buttons --- */
.cta {
    font-family: var(--gc-sanserif);
    font-weight: var(--gc-medium);
    padding: 8px 34px 12px 34px;
    display: inline-block;
/*    color: var(--gc-black);*/
    transform: scale3d(1, 1, 1);
    transition: all .2s ease-in-out;
    transition-property: background-color, transform;
}

.blackbg{
    border: 3px Solid var(--gc-white);
    color: var(--gc-white);
    background-color: rgba(246, 247, 248, 0);
}
.whitebg{
    border: 3px Solid var(--gc-dgrey);
    color: var(--gc-dgrey);
    background-color: rgba(246, 247, 248, 0);
}
.ctabtn:link {
    text-decoration: none;
}
.ctabtn:hover > .cta{
    transform: scale3d(1.025, 1.025, 1.025);
}
.ctabtn:hover > .blackbg{
    background-color: rgba(246, 247, 248, 1);
    color: var(--gc-black);
    color: var(--gc-highl);
}
.ctabtn:hover > .whitebg{
    background-color: rgba(56, 55, 54, 1);
    color: var(--gc-white);
    color: var(--gc-highl);
/*     border: 3px Solid var(--gc-highl);*/
/*    box-shadow: 0px 0px 1vw 0px rgba(0,136,255,1);*/
}



/* --- CSS Grid --- */
#container {
/*    grid-column-start: 2;*/
    display: grid;
    /* 10vw */
    grid-template-rows: 10vw auto auto auto;
    /* empty header | mast | page | footer |
    /*
    16vmax = mobile
    
    */
/*    calc(80vh - 8vmax)*/
    pointer-events: auto;
}
#empty-header{
}

/* ---------- HEADER ---------- */
#header {
    will-change: height; 
/*    transition: all 0.15s ease;*/
    display: grid;
    grid-template-columns: repeat(14, 1fr);
    grid-template-rows: auto;
    font-weight: var(--gc-medium);
    
    letter-spacing: -.01em;
    font-size: 250%;
    height: 10vw;
    position: fixed;
    width: 100%;
    z-index: 999;
    background-color: var(--gc-white);
    color: var(--gc-dgrey);
/*    background-color: var(--gc-black);*/
/*    color: var(--gc-white);*/
/*    transition: background 0.05s ease-in-out;*/
/*    transition-delay: 0.05s;*/
/*    transition: background 0.25s ease-in-out;*/
/*    transition: height 0.01s ease;*/
}
/*
[data-aos="header-aos"] {
    background-color: rgba(246, 247, 248, 0);
    transition-property: background;
}
[data-aos="header-aos"].aos-animate {
    background-color: rgba(246, 247, 248, 1);
}
*/
#h-shadow{
    will-change: top, opacity, height; 
/*    transition: all 0.15s ease;*/
    width: 100%;
    height: 4vh;
    position: fixed;
    top:10vw;
    z-index: 9999;
/*    background: rgb(36,35,35);*/
    background: linear-gradient(0deg, rgba(36,35,35,0) 0%, rgba(36,35,35,0.04) 100%);
/*    background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.1) 100%);*/
    opacity: 0;
/*    transition: opacity 0.1s ease-in-out;*/
    mix-blend-mode: multiply;
/*    transition: all 0.01s ease;*/
/*    transition-property: opacity top height;*/
    pointer-events: none;
}
/* [ABOUT] */
#about{
/*    transform: translateZ(0);*/
    grid-column: 1 / span 2;
    grid-row: 1 / span 1;
    align-self: center;
    justify-self: stretch;
/*    justify-self: left;*/
    text-align: center;
    
/*    mix-blend-mode: multiply;*/
/*    background-color: aquamarine;*/
}
#aboutclick{
/*    transform: translateZ(0);*/
/*    -moz-transition: all 0.15s ease;*/
/*    -webkit-transition: all 0.15s ease;*/
/*    -o-transition: all 0.15s ease;*/
    color: var(--gc-dgrey);
/*    color: var(--gc-white);*/
    transition: color .2s ease-in-out;
}
#aboutclick:link {
    text-decoration: none;
    
}
#aboutclick:hover {
    text-decoration: none;
    color: var(--gc-highl);
}
/* [GC LOGO] */
#logo{
/*    transform: translateZ(0);*/
    grid-column: 3 / span 10;
    grid-row: 1 / span 1;
    align-self: center;
    justify-self: center;  
/*    mix-blend-mode:multiply;*/
/*    background-color: aquamarine;*/
    height: auto;
    
}
#gclogo{
    will-change: width; 
    
/*    transition: all 0.15s ease;*/
/*    width: 35.5vmax;*/
/*    width: 40vw;*/
  /*  width: 60vw;  ok for mobile */
    
    width: 18.54vw; 
    height: auto;
    padding-top: 0.5vw;
    object-fit: contain;
/*    cursor: pointer;*/
/*    transition: width 0.01s ease;*/
}
/*
#gclogoclick svg * {
    transition: all 1s ease-in-out;
}
*/
#gclogoclick{
/*    transform: translateZ(0);*/
    cursor: pointer;
}
#gclogoclick svg * {
/*    transform: translateZ(0);*/
    transition: fill .2s ease-in-out;    
}
#gclogoclick:hover svg .bla {
    fill: #0088ff;
}
#gclogoclick:hover svg .gre {
    fill: #0088ff;
}

/*#gclogoclick:hover .bla{*/
/*    fill: var(--gc-highl);*/
/*    opacity: 0;*/
/*    fill: rgba(0,136,255,0.2);*/
   
/*}*/
/*#gclogoclick:hover .gre{*/
/*    fill: var(--gc-highl);*/
/*    opacity: 0.5;*/
/*    transition: opacity 0.2s ease-in-out;*/
/*     fill: rgba(0,136,255,1);*/
/*}*/

#gclogoclick{
    display: block;
}
/* [COPY R] */
#copyr{
/*    transform: translateZ(0);*/
    grid-column: 13 / span 2;
    grid-row: 1 / span 1;
    align-self: center;
    justify-self: content;
    text-align: center;
/*    background-color: aquamarine;*/
}
#yeardate{
/*    transform: translateZ(0);*/
    line-height:1;
    overflow:hidden;
    height:100%;
/*    transform: translate3d(0,0,0);*/
}
#arr{
/*    transform: translateZ(0);*/
    display: block;
    overflow: hidden;
    height:0em;
    will-change: height; 
    -moz-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
    transition-property: height;
    transition-delay: 0.025s;
/*    transform: translate3d(0,0,0);*/
    
}
/*
#yeardate:hover #arr{
    height:3em;
}
*/
.yearhoveron:hover #arr{
    height:3em;
}
.yearhoveroff:hover #arr{
    height:0em;
}
/* ---------- MAST ---------- */
#mast {
    background-color: #1e4e84;
    background-color: var(--gc-white);
    display: grid;
    grid-template-columns: 45% 55%;
    grid-template-rows: 100% 0%;
    overflow: hidden;
/*
    display: none;
}
*/
}
#masttext {
    grid-column: 1 / span 2;
    grid-row: 1 / span 1;
/*    display: none;*/
/*    background-color: antiquewhite;*/
    justify-self: center;
    align-self: center;
/*    text-align: center;*/
/*    white-space: nowrap;*/
    color: var(--gc-white);
    color: var(--gc-black);
/*    font-family: var(--gc-sanserif);*/
/*    font-weight: var(--gc-light);*/
/*    line-height: var(--gc-lineh);*/
/*        font-size: 1.8vmax;*/
/*    font-size: 1.8vw;*/
    font-size: 250%;
    z-index: 3;
}


#mastvideo {
    z-index: 1;
    grid-column: 1 / span 2;
    grid-row: 1 / span 1;
    align-self: stretch;
    justify-self: right;
    opacity: 1;
    
/*    height: 100px;*/
    width: 100%;
    display: inline-block;

/*    visibility: hidden;*/
/*    background-color: aquamarine;*/
}
#mastvideo > img{
    display: block;
}
#mastvideobg {
    grid-column: 1 / span 2;
    grid-row: 1 / span 1;
    align-self: stretch;
    justify-self: left; 
    z-index: 0;
}
.mvideo{    
/*    height: calc(100vmin - 130px - 10vmin);*/
    width: 100%;
/*	height: 100%;*/
/*    border-radius: 6px;*/
    object-fit: fill;
    display: block;
/*
    position: absolute; 
    right: 0; 
    bottom: 0;
    min-width: 100%; 
    min-height: 100%;
    width: auto; 
    height: auto; 
    z-index: -100;
    background-size: cover;
    overflow: hidden;
*/
}

/* ---------- PAGE ---------- */
#page {
/*    overflow: hidden;*/
    background-color: var(--gc-white);
/*    padding-top: calc(100vw/14);*/
    padding-bottom: calc(100vw/14);
/*    display: none;*/
}
.page-bg-black{
    background-color: var(--gc-black);
    
}

#portfolio-menu{
    display: grid;
    grid-template-columns: repeat(14, 1fr);
    grid-template-rows: auto; 
    letter-spacing: 0.01em;
/*    margin-top: 20px;*/
/*    -webkit-scroll-snap-type: mandatory;*/
/*    -webkit-scroll-snap-destination: 50% 50%;*/
    
/*
    use on extra large size.
    overflow: hidden;
    grid-row-gap: 8vh;
    grid-column-gap: 4vw;
    margin-top: 8vh;
    margin-left: 4vw;
    margin-right: 4vw;
*/
}
.p-box{
    z-index:1;
    grid-column: 2 / span 12;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto auto;

    /*    background-color: aqua;*/
/*    cursor: help;*/
    
/*    -webkit-scroll-snap-coordinate: 50% 50%;*/
/*    transform: scale3d(1, 1, 1);*/
/*    transition: all .2s ease-in-out;*/
/*    transition-property: background-color, transform;*/
/*    transform: scale3d(1, 1, 1);*/
/*    transition: transform .2s ease-in-out;*/
}
.p-box-last{
    margin-bottom: 14vh;
}
.p-hl{
/*
    grid-column: 1 / span 12;
    grid-row: 1 / span 1;
    z-index:10;
    display: block;
    width: auto;
    height: auto;
    border: 0vw Solid;
    box-shadow: 0px 0px 1.5vw 0px rgba(0,136,255,1);
    color: var(--gc-highl);
    opacity: 0;
    transition: opacity .2s ease-in-out;
    cursor: default;
*/
}
@keyframes lswipe {
    0%   {
        width: 0%;
        margin-left: 0%;
    }
    50%  {
        width: 100%;
        margin-left: 0%;
    }
    100%  {
        width: 0%;
        margin-left: 100%;
    }
}
@keyframes rswipe {
    0%   {
        width: 0%;
        margin-left: 100%;
    }
    50%  {
        width: 100%;
        margin-left: 0%;
    }
    100%  {
        width: 0%;
        margin-left: 0%;
    }
}
@keyframes swipeo {
    0%   {
        visibility: hidden;
    }
    49%  {
        visibility: hidden;
    }
    50%  {
        visibility: visible;
    }
    100%  {
        visibility: visible;
    }
}
.p-hl{
    grid-column: 1 / span 12;
    grid-row: 1 / span 1;
    z-index:10;
    display: block;
    width: 100%;
    margin-left: 0%;
    height: 100%; 
/*    background-color: var(--gc-highl);*/
    position: relative;
    align-self: stretch;
    justify-self: left;
/*    overflow: hidden;*/
    opacity: 1;
}

[data-aos="gcswipel"] {
/*	opacity: 1;*/
    animation-timing-function: ease-in-out;
    animation-fill-mode: forwards;

}
[data-aos="gcswipel"].aos-animate {
    animation-name: lswipe;
    animation-duration: 1.25s;
/*	opacity: 1;*/
}
[data-aos="gcswiper"] {
/*	opacity: 1;*/
    animation-timing-function: ease-in-out;
    animation-fill-mode: forwards;

}
[data-aos="gcswiper"].aos-animate {
    animation-name: rswipe;
    animation-duration: 1s;
/*	opacity: 1;*/
}

[data-aos="gcswipeo"] {
/*	opacity: 1;*/
    visibility: hidden;
    animation-timing-function: ease-in-out;
    animation-fill-mode: forwards;

}
[data-aos="gcswipeo"].aos-animate {
    animation-name: swipeo;
    animation-duration: 1s;
/*	opacity: 1;*/
}
/*
@media screen and (min-width: 768px) {
	[data-aos="gcswipe"] {
		transform: translateX(100px);
	}

	[data-aos="gcswipe"].aos-animate {
		transform: translateX(0);
	}
}
*/





.p-btn{
    grid-column: 2 / span 10;
    grid-row: 1 / span 1;
    z-index: 11;
/*    background-color: aqua;*/
    margin-top: 4vw;
    margin-bottom: 4vw;
/*     cursor: pointer;*/
}

/*.p-box:hover, .p-btn:hover ~ .p-box{*/
/*    z-index:888 !important;*/
/*    transform: scale3d(1.01, 1.01, 1.01);*/
/*}*/
/*.p-box:hover, .p-btn:hover ~ .p-pic{*/
/*    opacity: 0.3;*/
/*}*/
.p-btn:hover ~ .p-txt > .p-txt-h1{
    color: var(--gc-highl);
}
.p-btn:hover ~ .p-txt > .p-txt-h2{
    color: var(--gc-highl);
}
.p-btn:hover ~ .p-txt > .p-txt-p{
    color: var(--gc-lhighl);
}
/*.p-btn:has(.p-box):hover*/
/*
.p-btn:has(.p-box):hover {
    z-index:888 !important;
}
*/
/*
.p-box:hover .p-btn:hover > .p-box{
    
}
*/
/*
.p-btn:hover ~ .p-hl{
    opacity: 0.3;
}
*/

/*
.p-box:hover{
    z-index:888 !important;
}
.p-box:hover .p-hl{
    opacity: 0.3;
    border: 0.4vw Solid;
}
.p-box:active .p-hl{
    border: 0.4vw Solid;
    opacity: 0.7;
}
*/

.p-pic{
    grid-column-end: span 7;
    grid-row: 1 / span 1;
    z-index:3;
    overflow: hidden;
    align-self: center;
/*    justify-self: center;  */
/*    grid-column: 1 / span 2;*/
/*    grid-row: 1 / span 1;*/
}
.p-pic > img{
    width: 100%;
    height: auto;
    display: block;
}


p, h1, h2, h3, h4, h5, h6 {
    margin: 0em;
    padding: 0em;
    font-size: 1em;
}
b {
    font-weight: var(--gc-medium);
}
.p-txt{
    grid-column-end: span 4;
    grid-row: 1 / span 1;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr;
/*    grid-template-rows: 0.5fr 0.75fr 0.5fr 1fr 0.5fr;*/
    grid-template-rows: calc(100vw/14) calc(100vw/28) auto;
/*    calc(100vw/28)*/
/*    grid-row-gap: calc(100vw/56);*/
    text-align: left;
    justify-items: start;
    align-items: start;
    font-size: 250%;

/*    background-color: bisque;*/
    padding-top: 5.36vw;
/*    padding-bottom: 3.57vw;*/
    padding-right: 3.57vw;
/*    padding-right: 1.79vw;*/
/*    padding-right: 3.2vw;*/
/*    overflow: hidden;*/
}

/*1.61803398875*/
.p-txt-h1{
    line-height: 55%;
    align-self: start;
    margin-left: -4px;
    color: var(--gc-black);
    color: var(--gc-dgrey);
    transition: color .2s ease-in-out;
}
h1{
    font-weight: var(--gc-xlight);
/*    font-family: var(--gc-serif);*/

    font-size: 4vw;
}
.p-txt-h2{
    line-height: 55%;
    color: var(--gc-black);
    color: var(--gc-dgrey);
    transition: color .2s ease-in-out;
/*    margin-left: -3px;*/
}
h2{
    font-weight: var(--gc-medium);
    font-size: 2vw;
    line-height: 50%;
}
.p-txt-p{
    margin-top: -13px;
    margin-left: -1px;
    color: var(--gc-lgrey);
    transition: color .2s ease-in-out;
}
p{
    font-weight: var(--gc-light);
    font-size: 1.5vw;
}

.p-view{
    display: none;
    visibility: hidden;
    height: 0px;
}
.p-bg{
    grid-column-end: span 5;
    grid-row: 1 / span 1;
    z-index: 1;
/*    width: 100%;*/
/*    min-height: 20px;*/
/*    height: 100%;*/
}
/*right*/
.p-pic-r{
    grid-column-start: 1;
}
.p-txt-r{
    grid-column-start: 9;
}
.p-bg-r{
    grid-column-start: 8;
    background: rgb(255,255,255);
    background: linear-gradient(270deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 100%);
}
/*left*/
.p-pic-l{
    grid-column-start: 6;
}
.p-txt-l{
    grid-column-start: 2;
}
.p-bg-l{
    grid-column-start: 1;
    background: rgb(255,255,255);
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 100%);
}

/* ------------- ABOUT ---------------- */
#profile {
    -webkit-font-smoothing: antialiased;
    font-family: var(--gc-sanserif);
    font-weight: var(--gc-light);
    font-size: 250%;
    text-align: center;
    
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    grid-row-gap: 60px;
    
    padding-top: 10vh;
    padding-bottom: 10vh;
}

#services{
    justify-self: center; 
    display: grid;
    grid-template-columns: auto auto auto auto;
    grid-template-rows: auto auto;
    grid-gap:60px;
    
}
.services-text{
    font-family: var(--gc-sanserif);
    font-weight: var(--gc-light);
    font-size: 75%;
    text-align: center;
    color: #b6b7b8;  
}
.profile-gallery{
    justify-self: center; 
    display: grid;
    grid-template-columns: auto auto auto auto;
    grid-template-rows: auto auto;
/*    grid-gap: 2vw;*/
/*    padding-left: 60px;*/
/*    padding-right: 60px;*/
/*    max-width: 980px;*/
    width: 82vw;
}
.profile-img{
/*    justify-self: center;*/
/*    align-content: stretch;*/
/*    width: 50vw;*/
/*    width: 100%;*/
/*    height: auto;*/
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    overflow: hidden;
    justify-items: center;
    justify-content: center;
}
.imgy{
    z-index: 1;
/*    grid-column: 1 / span 1;*/
/*    grid-row: 1 / span 1;*/
/*    justify-self: center;*/
/*    align-content: stretch;*/
    display: block;
    width: 100%;
    height: auto;
    overflow: hidden;

}
.imgy img{
    width:100%;
    height: auto;
    display: block;
    overflow: hidden;
}
.texty{
    z-index: 200;
/*    grid-column: 1 / span 1;*/
/*    grid-row: 1 / span 1;*/
    font-weight: var(--gc-bold);
/*    justify-self: center;*/
/*    align-content: center;*/
/*    vertical-align: middle;*/
    background-color: #f6f7f8;
    color: var(--gc-black);
    position: absolute;
    width: 50%;
    height: 100%;
    margin-left: 25%;
    margin-top: 45%;
/*    display: block*/
/*    width: 200px;*/
/*    height: 100px;*/
/*    overflow: hidden;*/
/*    position: absolute;*/
    display: none;
/*    margin-top: 50%;*/
}
#p-consult {
    display: none;
}
/* ------------- FOOTER ---------------- */
#footer {
/*    -webkit-font-smoothing: antialiased;*/
    font-family: var(--gc-sanserif);
    font-size: 250%;
    text-align: center;
    
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto auto auto auto auto;
    grid-row-gap: 60px;

    padding-top: 7vh;
    padding-bottom: 3.5vh;
    border-top: 2px solid var(--gc-dgrey);
    
    background-color: var(--gc-black);
    background: linear-gradient(0deg, rgba(255,255,255,0) 75%, rgba(255,255,255,0.05) 100%);
    
	color: var(--gc-white);
}
#f-photo{
/*    transition: opacity 0.15s ease;*/
/*    grid-row: 1 / span 1;*/
    justify-self: center; 
    width: 160px;
    height: 160px;
    position: relative;
    overflow: hidden;
    border-radius: 50%;
/*    transform: scale(1);*/
/*    opacity: 1;*/
}
#f-photo img{
    width: 100%;
}
#f-copy{
/*    transition: opacity 0.15s ease;*/
    justify-self: center;
/*    max-width: 780px;*/
/*    min-width: 400px;*/
/*    width: 82vw;*/
    width: 48vw;
/*    background-color: darkslategray;*/
}
#f-copy > span{
    font-weight: var(--gc-bold);
    display: inline-block;
}
.f-p{
   font-weight: var(--gc-xlight); 
}
#f-ctabtn{
/*    transition: opacity 0.15s ease;*/
}
#f-consult{
    justify-self: center;
    max-width: 480px;
    width: 82vw;
    color: var(--gc-lgrey);
    display: none;
}
#f-contact{
/*    transition: opacity 0.15s ease;*/
    width: 80vw;
    max-width: 600px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    font-size: 65%;
    padding-top: 10px;
    grid-column-gap: 100px;
    grid-row-gap: 30px;
    justify-self: center;
    align-self: center;
}
.f-icon{
    width: 80px;
    height: 80px; 
    display: inline-block;
    z-index: 1;
    grid-column: 1 / span 1;
    grid-row: 1 / span 1;
    align-self: stretch;
    justify-self: center; 
    transition: translate;
}
.f-note{
    width: 24px;
    height: 24px; 
    z-index: 10;
    grid-column: 1 / span 1;
    grid-row: 1 / span 1;
    justify-self: center;
    margin-left: 80px;
    transform: scale(0);
    opacity: 0;
    transition: all .2s ease-in-out;
    transition-property: opacity, transform;
}
.f-note > img{
    display: block;
    width: 24px;
}


.f-contact-btn{
    justify-self: center;
    color: var(--gc-white);
    font-weight: var(--gc-bold);
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto auto;
    transform: scale3d(1, 1, 1);
    transition: transform .2s ease-in-out;
/*    background-color: brown;*/
/*    width: 80%;*/
}
.f-contact-btn > span{
    grid-column: 1 / span 1;
    grid-row: 2 / span 1;
    align-self: stretch;
    justify-self: center;
}
.f-contact-btn:hover {
    transform: scale3d(1.025, 1.025, 1.025);
}
.f-contact-btn:hover > .f-note{
    transform: scale(1);
    opacity: 1;
}
.f-email > .f-icon > img{
    padding-top: 4px;
    width: 80px;
}
.f-yt > .f-icon > img{
    padding-top: 12px;
    width: 68px;
}
.f-yt > .f-note{
    margin-left: 72px;
}
#f-tc{
    font-size: 13px;
    font-size: 50%;
    justify-self: center;
    width: 48vw;
    color: var(--gc-lgrey);

}  
#f-thank{
    font-size: 13px;
    font-size: 50%;
    justify-self: center;
    width: 75vw;
/*    padding-bottom: 10vh;*/
    color: var(--gc-lgrey);
    display: none;
}
/* ------------- SMALL MENU ---------------- */
#smallmenu{
    position: fixed;
    top: 0px;
    z-index: 998;
    width: 100%;
    height: 100vh;
    
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto 4vh 12vw;
    display: none;
    pointer-events: none;
}
#sm-empty{
    grid-column: 1 / span 1;
    grid-row: 1 / span 1; 
}
#sm-shadow{
    grid-column: 1 / span 1;
    grid-row: 2 / span 1;
    align-self: end;
    justify-self: stretch;
    
    height: 4vh;
    width: 100%;
    display: block;
 
    z-index: 997;
/*    background: rgb(36,35,35);*/
    background: linear-gradient(180deg, rgba(36,35,35,0) 0%, rgba(36,35,35,.04) 100%);
    mix-blend-mode: multiply;
    
}
#smallmenu-box{
    grid-column: 1 / span 1;
    grid-row: 3 / span 1;
    align-self: end;
    justify-self: stretch;
    
    height: 12vw;
    width: 100%;
    display: block;
    
    color: var(--gc-dgrey);
    font-weight: var(--gc-medium);
    letter-spacing: -.01em;
    font-size: 250%;
/*    line-height: 100%;*/
/*    vertical-align: middle;*/

    background-color: var(--gc-white);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 100%;
    pointer-events: auto;
}
#sm-about, #sm-copyr, #sm-contact{
/*    place-self: center;*/
/*    justify-items: center;*/
/*    align-items: baseline;*/
/*    line-height: 100%;*/
    align-self: center;
    justify-self: stretch;
    text-align: center;    
}

/* ---------------------------------------------- media sizes*/
@media (min-width:2000px) {
    body{
/*        padding-left: calc(100vw/14);*/
/*        padding-right: calc(100vw/14);*/
/*        background-color: var(--gc-white);*/
    }
    #page {
/*        margin-left: calc(100vw/14);*/
/*        margin-right: calc(100vw/14);*/
        
    }
    .p-box{
/*        grid-column: 3 / span 10;*/
/*        padding-left: calc(100vw/28);*/
/*        padding-right: calc(100vw/28);*/
    }
    #portfolio-menu{
/*        transform: scale(0.5, 0.5)*/
/*        margin-left: 10vw;*/
/*        margin-right: 10vw;    */
    }
    #header {
/*        font-size: calc(100% + 1vw);*/
/*        font-size: 2vw;*/
/*        width: calc(100vw - 100vw/6);*/
    }
    #h-shadow{
/*        width: calc(100vw - 100vw/6);*/
/*        right: 0%;*/
    }
    #about{
        grid-column: 3 / span 1;
    }
    #gclogo{
        grid-column: 5 / span 8;
/*        width: 22vw;*/
/*        padding-top: 18px;*/
    }
    #copyr{
        grid-column: 12 / span 1;
    }
    .p-txt{
    grid-column-end: span 5;
    grid-row: 1 / span 1;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr;
/*    grid-template-rows: 0.5fr 0.75fr 0.5fr 1fr 0.5fr;*/
    grid-template-rows: calc(100vw/21) calc(100vw/28) auto;
/*    calc(100vw/28)*/
/*    grid-row-gap: calc(100vw/56);*/
    text-align: left;
    justify-items: start;
    align-items: start;
    font-size: 250%;

/*    background-color: bisque;*/
/*    padding-top: 3.57vw;*/
    padding-right: 1.79vw;
    padding-left: 3.57vw;

    }
    .p-txt-p{
/*        background-color: beige;*/
    }
    .p-txt-l{
         grid-column-start: 1;
    }
    .p-txt-r{
        grid-column-start: 8;
    }
    
    h1{
        font-size: 3vw;
    }
    h2{
        font-size: 1.5vw;
    }
    p{
        font-size: 100%;
    }
    
/*
    .w-txt-h3{
        line-height: 100%;
    }
    .w-txt-p2{
        margin-top: 2.68vw;
    }
    h3{
        font-size: 1.5vw;
    }
    p2{
        font-size: 1.25vw;
    }
*/
    
}
@media (max-width:1320px) {
    #header {
/*        font-size: calc(100% + 1vw);*/
        font-size: 2vw;
    }
    #gclogo{
        width: 22vw;
/*        padding-top: 18px;*/
    }
}
/*
@media (orientation: landscape) and (max-width:1024px) {
    #gclogo{
        background-color: yellowgreen;
    }
}
*/
@media (max-width:1200px) {
    
    #page {
        padding-bottom: 0;
    }
    .p-box{
        grid-column: 1 / span 14;
    }
        .p-box-last{
        margin-bottom: 0vh;
    }
    .p-txt-h1{
    }
    h1{
/*        font-size: 5.2vw;*/
    }
    .p-txt-h2{
/*        margin-left: -1px;*/
    }
    h2{
/*        font-size: 2.5vw;*/
    }
    .p-txt-p{
/*        margin-top: 0px;*/
/*        margin-left: -1px;*/
    }
    p{
/*        font-size: 2vw;*/
        font-size: 1.7vw
    }

}
@media (max-width:1000px) {
    
    #yeardate:hover #arr{
        height:0em;
    }
    #page {
        overflow: hidden;
        background-color: var(--gc-white);
        padding-top: 0;
        padding-bottom: 0;
/*        padding-left: 7vw;*/
/*        padding-right: 7vw;*/
    }
    .p-box{
        grid-column: 1 / span 14;
        grid-template-rows: auto auto;
        cursor: default;
    }

    .p-box:hover .p-hl{
        opacity: 0;
        pointer-events: none;
    }
    .p-btn{
        grid-column: 2 / span 10;
        grid-row: 1 / span 2;
        z-index: 11;
        margin-top: 6vw;
        margin-bottom: 6vw;
/*        height: 75%;*/
/*        background-color: aqua;*/
    }
    .p-pic{
        grid-column: 1 / span 12;
        grid-row: 1 / span 1;
    }
    .p-pic-r{
        grid-column-start: 1;
    }
    .p-pic-l{
        grid-column-start: 1;
    }
    .p-txt{
        grid-column: 1 / span 12;
        grid-row: 2 /  span 1;
        grid-template-rows: calc(100vw/14) auto 100% 100%;
/*        padding-top: 4vw;*/
        padding-bottom: calc(100vw/12);
        padding-left: calc(100vw/4);
        padding-right: calc(100vw/4);
    }
    .w-txt{
        grid-column: 1 / span 12;
        grid-row: 2 /  span 1;
        grid-template-rows: calc(100vw/14) auto;
/*        padding-top: 4vw;*/
        padding-bottom: calc(100vw/12);
        padding-left: calc(100vw/8);
        padding-right: calc(100vw/8);
        
    }
    .p-txt-h1{
        display: none;
    }
    h1{
        font-size: 250%;
        display: block;
    }
    .p-txt-h2{
        grid-row: 1 / span 1;
        justify-self: center;
        text-align: center;
        margin-left: 0px;
    }
    h2{
        font-size: 125%;
        display: block;
    }
    .p-txt-p{
        grid-row: 2 / span 1;
        justify-self: center;
        text-align: center;
        padding-bottom: calc(100vw/24);
        padding-bottom: calc(100vw/48);
        display: block;
/*        background-color: antiquewhite;*/
    }
    p{
        font-size: 100%;
    }
    .p-view{
        grid-row: 3 / span 1;
        display: block;
        visibility: visible;
        height: 100%;
        justify-self: center;

    }

    .p-btn:hover ~ .p-txt > .p-txt-h1{
        color: var(--gc-black);
    }
    .p-btn:hover ~ .p-txt > .p-txt-h2{
        color: var(--gc-black);
    }
    .p-btn:hover ~ .p-txt > .p-txt-p{
        color: var(--gc-lgrey);
    }

    .p-btn:hover ~ .p-txt > .p-view > .ctabtn > .whitebg{
        background-color: rgba(56, 55, 54, 1);
        color: var(--gc-white);
        transform: scale3d(1.025, 1.025, 1.025);
    }
    
    .p-bg{
        grid-column: 1 / span 12;
        grid-row: 2 /  span 1;
        min-height: calc(100vh - 56.25vw - 24vw);
    }
    .p-bg-r, .p-bg-l{
        background: rgb(255,255,255);
        background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 100%);
    }
    #f-copy{
        width: 80vw;
    }
    #f-tc{
        width: 80vw;
    }
    .w-box-textbox{
        grid-column: 2 / span 12;
    }
}

@media (max-width:840px) {
    #container {
        grid-template-rows: 18vw auto auto auto;
    }
    #header {
/*      grid-template-columns: 0% auto 0%;*/
        height: 18vw;
    }
    #about{
        display: none;
    }
    #gclogo{
        width: 46vw; 
/*        padding-top: 10px;*/
/*        height: auto;*/
    }
    #copyr{
        display: none;
        overflow: hidden;
    }
    #h-shadow{
        top:18vw;
        opacity: 1;
        height: 3vh;
    }
    #smallmenu{
        display: grid;
    }  
  
    #page {
        padding-left: 7vw;
        padding-right: 7vw;
    }
    .p-box{
        grid-column: 1 / span 14;
/*        grid-template-rows: auto calc(auto + 100vh - 56.25vw - 24vw);*/
/*        grid-template-rows: auto calc(100vh - 56.25vw - 24vw);*/
         grid-template-rows: auto auto;
        cursor: default;
    }
    .p-box:hover .p-hl{
        opacity: 0;
        pointer-events: none;
    }
    .p-pic{
        grid-column: 1 / span 12;
        grid-row: 1 / span 1;
    }
    .p-pic-r{
        grid-column-start: 1;
    }
    .p-pic-l{
        grid-column-start: 1;
    }
    .p-txt{
        grid-column: 2 / span 11;
        grid-row: 2 /  span 1;
/*        grid-template-rows: calc(100vw/6) auto 53px 100%;*/
        grid-template-rows: calc(100vw/7) auto 100% 100%;
        padding-top: 4vw;
        padding-bottom: calc(100vw/12);
        padding-left: 0;
        padding-right: calc(100vw/12);
        margin-left:0vw;
    }
    .w-txt{
        grid-column: 2 / span 11;
        grid-row: 2 /  span 1;
/*        grid-template-rows: calc(100vw/6) auto 53px 100%;*/
        grid-template-rows: calc(100vw/7) auto;
        padding-top: 4vw;
        padding-bottom: calc(100vw/12);
        padding-left: 0;
        padding-right: calc(100vw/12);
        margin-left:0vw;
/*        text-align: center;*/
    }
    .p-txt-h1{
        display: none;
    }
    h1{
        font-size: 7vw;
    }
    .p-txt-h2{
        grid-row: 1 / span 1;
        justify-self: center;
        text-align: center;
        margin-left: 0px;
    }
    h2{
        font-size: 5.5vw;
    }
    .p-txt-p{
        grid-row: 2 / span 1;
        justify-self: center;
        text-align: center;
        padding-bottom: calc(100vw/48);
        display: block;
    }
    #smallmenu-box{
        font-size: 4.5vw;
    }
    p{
        font-size: 100%;
    }
    .p-view{
        grid-row: 3 / span 1;
        display: block;
        visibility: visible;
        height: 100%;
/*        font-size: 65%;*/
        justify-self: center;
    }
    .p-bg{
        grid-column: 1 / span 12;
        grid-row: 2 /  span 1;
        min-height: calc(100vh - 56.25vw - 24vw);
    }
    .p-bg-r, .p-bg-l{
        background: rgb(255,255,255);
        background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.5) 100%);
    }
    .w-txt-p{
/*         margin-top: 5.36vw;*/
    }
    .w-box-textbox{
        grid-template-rows: calc(100vw/7) auto;

    }
    #footer {
        padding-bottom: 14vh;
    }
}
@media (max-width:840px) and (orientation: landscape) {
    #container {
        grid-template-rows: 12vw auto auto auto;
    }
    #header {
        height: 12vw;
    }
    #gclogo{
        width: 34.5vw; 
    }
    #h-shadow{
        top: 12vw;
        height: 2vh;
    }
    #smallmenu{
        grid-template-rows: auto 2vh 6vw;
    }
    #sm-shadow{
        height: 2vh;
    }
    #smallmenu-box{
        height: 6vw;
        font-size: 2.75vw;
    }

}
@media (max-width:640px) {
    #container {
        grid-template-rows: 24vw auto auto auto;
    }
    #header {
        height: 24vw;
    }
    #gclogo{
        width: 60vw; 
/*        padding-top: 10px;*/
    }
    #h-shadow{
        top:24vw;
    }
    #page{
        padding-left: 0vw;
        padding-right: 0vw;
    }
    .p-txt{
        grid-column: 1 / span 12;
        grid-template-rows: calc(100vw/6) auto 100% 100%;
        padding-left: calc(100vw/24);
        padding-right: calc(100vw/24);
        padding-top: calc(100vw/8);
        padding-bottom: calc(100vw/6);
    }
    .w-txt{
        grid-column: 1 / span 12;
        grid-template-rows: calc(100vw/6) auto;
        padding-left: calc(100vw/24);
        padding-right: calc(100vw/24);
        padding-top: calc(100vw/8);
        padding-bottom: calc(100vw/6);
    }
    .p-txt-p{
        padding-bottom: calc(100vw/24);
    }
    h1{
       font-size: 9vw; /*  adjust size */
    }
    h2{
        font-size: 7vw;
    }

    p{
        font-size: 5.5vw;
    }
    .p-bg{
        grid-column: 1 / span 12;
        grid-row: 2 /  span 1;
        min-height: calc(100vmin - 56.25vw - 24vw);
    }
    .w-box-textbox{
        padding-top: 10.72vw;
        padding-bottom: 10.72vw;
    }
    #smallmenu-box{
        font-size: 5.5vw;
    }

}

@media (max-width:640px) and (orientation: landscape) {
    #container {
        grid-template-rows: 12vw auto auto auto;
    }
    #header {
        height: 12vw;
    }
    #gclogo{
        width: 34.5vw; 
    }
    #h-shadow{
        top: 12vw;
        height: 2vh;
    }
    #smallmenu{
        grid-template-rows: auto 2vh 6vw;
    }
    #sm-shadow{
        height: 2vh;
    }
    #smallmenu-box{
        height: 6vw;
        font-size: 2.75vw;
    }


}

@media (max-width:480px) {
    #smallmenu-box{
        grid-template-columns: 1fr 0.5fr 1fr;
    }
    #sm-copyr{
        visibility: hidden;
    }

}
