/*
FONTS

font-family: drummond-variable;
font-family: elza;
font-variation-settings: "wght" 500;

*/


/* VARIABLES */

:root {
  --default-font: elza;
  --default-font-size: 20px;
  --default-line-height: 1.5;

  --default-input-font: elza;
  --default-input-font-size: 20px;
  --dim-input-height: 62px;
  
  --button-input-font: elza;
  --button-font-size: 20px;
  --button-height: 20px;

  --col-primary: #DDD5C8;
  --col-accent: #F5F1E9;
  --col-burger: #000;
  --col-text: #000;
  --col-page-bg: #fff;
  --col-border: #000;
  --col-input: #000;
  --col-placeholder: #000;
  --col-input-bg: #fff;
  --col-button: #fff;
  --col-button-bg: #000;
  --col-link: #000;
  --col-link-hover: #000000;

  --col-error: #ff6633;
  --col-attention: #ff6633;
  --col-warning: #f5b00e;
  --col-missing: #ff6633;

  --col-primary-rgb: 0, 0, 0;
  --col-accent-rgb: 0, 0, 0;
  --col-button-rgb: 255, 255, 255;
  --col-link-rgb: 0,0,0;
  --col-link-hover-rgb: 0, 0, 0;
  --col-error-rgb: 255, 51, 0;
  --col-attention-rgb: 255, 51, 0;
  --col-warning-rgb: 245, 176, 14;
  --col-border-rgb: 190, 190, 190;
  --col-missing-rgb: 255, 51, 0;

  --dim-site-width: 1920px;
  --dim-site-inner-width: 1680px;
  --dim-site-inner-width-extra: 1740px;
  --dim-default-space: 100px;

  --vh: 1vh;


}

/* theme */


/*CORE HTML*/

p { margin-bottom: 40px; font-weight: 300}
p a:hover { color: #aaa;}
a.underline { text-decoration: underline}

p.larger { font-size: 30px; line-height: 1.33}
p.large { font-size: 46px; line-height: 1.2; font-weight: 500;}
.uc { text-transform: uppercase;}
/*p.shorter { max-width: 868; margin-left: auto; margin-right: auto}*/
/*p.shortest { max-width: 540px; margin-bottom: 20px}*/
/*p.short { max-width: 540px; margin-left: auto; margin-right: auto}*/

p.strong {font-size: 28px; font-weight: 500;}
p.light { font-size: 16px;  font-weight: 300; line-height: 1.9 }
p.medium { font-size: 20px; font-weight: 300;}
p.tight { margin-bottom: 10px;}
p.small { font-size: 16px; font-weight: 300}

p strong { font-weight: 500}

h1, h2 {font-size: 60px; font-weight: 200; color: #000; line-height: 1.2; margin-bottom: 30px;}

h3 {font-size: 40px; font-weight: 300; font-style: italic; color: #000; line-height: 1.33; margin-bottom: 0px; margin-top: 80px}
h4 {font-size: 30px; font-weight: 500; color: #000; line-height: 1.33; margin-bottom: 0px; margin-top: 10px}
h5 {font-size: 60px; font-weight: 300; color: #000; line-height: 1.2; margin-bottom: 90px;}
h6 {font-size: 24px; font-weight: 600; color: #000; line-height: 1.2; margin-bottom: 20px; font-family: elza; text-transform: uppercase;}


/*CONTAINERS*/

article { padding-top: 0px; }
section { max-width: var(--dim-site-inner-width-extra); padding: 0 30px;}

/*BUTTONS*/

a.btn { color: #fff; background: #000; line-height: 56px; font-size: 20px; display: table; margin: 0px auto; padding: 0 20px; letter-spacing: 1px; font-weight: 300; font-family: elza; text-transform: none; border-radius: 10px; border: 1px solid #000;}
a.btn:hover { background-color: #fff;color: #000; }
a.btn-white {background: #fff; color: #000; border: 1px solid #fff;}
a.btn-white:hover {background: #000; color: #fff; border: 1px solid #000;}

/*HEADER AND NAV*/


header { position: fixed; width: 100%; border-bottom: 1px solid #fff; display: block; top: 0; left: 0; z-index: 9; padding-top: 25px; background: #fff}
header div.header { display: flex; justify-content: space-between; gap: 0; max-width: var(--dim-site-inner-width-extra); margin: 0 auto; padding: 0 30px; align-items: center;}
header nav { display: flex; width: 100%; gap: 50px; justify-content: flex-end; align-items: center; flex: 1}
header nav > div { display: block;}
header nav > div a { display: block; line-height: 78px; border-bottom: 6px solid transparent;font-size: 14px; font-weight: 400;  text-transform: uppercase; color: #000}
header nav > div a.book-consultation { background: #000; color: #fff; line-height: 34px; padding: 0 15px; border-radius: 15px; text-transform: none; border: 1px solid #000}
header nav > div a.book-consultation:hover { border: 0; font-weight: 400; color: #000; background: #fff; border: 1px solid #000}
header nav > div:hover a { border-bottom: 6px solid #000; font-weight: 600}
header nav > div > div { position: fixed; left: 0; width: 100%; background: #F4F4F4; padding: 50px 20px; display: none; top: 109px}
header nav > div:hover > div { display: block;}
div.nav-grid { max-width: 1380px; display: flex; justify-content: space-between; gap: 1px; align-items: stretch; margin: 0 auto}
div.nav-grid > div { border-right: 1px solid #000; padding: 30px 20px; text-align: left; flex: 1; display: flex; justify-content: flex-start; gap: 10px; align-items: center; flex-direction: column}
div.nav-grid > div p { max-width: 274px; text-align: left; margin: 0; font-size: 20px; font-weight: 300; width: 100%}
div.nav-grid > div p strong { font-size: 1.4em; font-weight: 600}
div.nav-grid > div:last-child { border-right: 1px solid #f4f4f4}


header div.logo { width: 200px; }
header div.logo a { width: 100%; display: block}
header div.logo img { width: 100%; display: block}

header.attached.visible{ position: fixed; top: 0; left: 0; width: 100%; background: #fff; z-index: 99}
header.attached.visible nav { padding: 10px 30px;}
header.attached.visible div.logo { width: 220px;top: 12px;}

footer { padding: 40px 30px; display: block}
footer div.footer-row { max-width: var(--dim-site-inner-width-extra); padding: 0 30px; display: flex; justify-content: space-between; gap: 50px; align-items: flex-start;}
footer div.footer-row > div:first-child { flex: 1; display: flex; justify-content: flex-start; gap: 30px; flex-direction: column; align-items: flex-start; }
footer div.footer-row > div:first-child p { font-size: 16px}
footer div.footer-row div.logo {width: 200px;}
footer div.footer-row > div:last-child { width: 845px; }
footer div.footer-row > div:last-child > div { flex: 1}
div.footer-nav { display: flex; justify-content: flex-end; gap: 60px; }
div.footer-nav > * { height: 100%; margin:0; font-size: elza; font-size: 16px; color: #000; font-weight: 500; flex: 1}
footer p.cities { text-transform: uppercase; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; gap: 20px}
footer p.nav  a { display: block; margin-bottom: 10px; white-space: nowrap}
footer p.nav, footer p.nav a { font-size: 16px; color: #000; font-family: elza; }
footer p.disclaimer {font-size: 12px; padding-top: 50px}

/*ELEMENTS*/
.c-primary { color: var(--col-primary) !important}
.c-black { color: #000 !important}
.b-primary { background-color: var(--col-primary) !important}
.b-black { background-color: #000 !important}
.b-gray { background-color: #EBEBEB !important}
.b-yellow { background-color: #DDD5C8 !important}
.b-white { background-color: #fff !important}
.c-white { color: #fff !important}

.elza { font-family: elza !important;}
.drummond { font-family: drummond-variable !important;}

/*CONTENT*/


ul { list-style-position: inside;   text-align: center;}
ul li { font-size: 26px; font-weight: 300; font-family: elza; line-height: 1.5;}
ul li::marker { font-size: .7em; }
ul.smaller li { font-size: 16px;}

ol { list-style-position: inside;   text-align: left; margin-bottom: 30px;}
ol li { font-size: 26px; font-weight: 300; font-family: elza; line-height: 1.5;}
ol li::marker { font-size: .7em; }
ol.smaller li { font-size: 16px;}


#widget_trigger { position: fixed; bottom: 30px; right: 30px; z-index: 10; border-radius: 27px; background: #000; max-width: 140px; padding: 12px 25px;}
#widget_trigger > div.widget-options { position: relative; bottom: 0; right: 0; display: none; padding: 40px 0px 60px; z-index: 9;}
#widget_trigger > a, #widget_trigger > div.widget-options > a { display: block; font-size: 20px; font-family: elza; color: #fff; font-weight: 700; padding: 20px 40px; text-align: left; border-bottom: 1px solid rgba(255, 255, 255, 0.5);}
#widget_trigger > a { border: 0; padding: 0; z-index: 10;}
#widget_trigger > div.widget-options > a span { display: block; font-size: 15px; font-weight: 300; margin-top: 10px; }
#widget_trigger.open { border-radius: 37px; max-width: 330px; width: 100%;}
#widget_trigger.open > div.widget-options { display: block; }
#widget_trigger.open > a { position: absolute; right: 20px; top: 17px; font-size: 0; width: 21px; height: 21px;}
#widget_trigger.open > a:after { content:""; width:100%; height: 100%; background: url(/img/close.svg) no-repeat center center; background-size: contain; position: absolute; top: 0; left: 0}

div.calendly-inline-widget { position: absolute !important; right: -200vw !important; opacity: 0; width: 800px; top: 0;}
#widget_trigger.active div.calendly-inline-widget { position: relative !important; right: 0!important; opacity: 1;}

#widget_trigger.active { max-width: 800px; width: 100%; padding: 20px 0; height: 740px; max-height: 100vh}
#widget_trigger.active > div.widget-options { display: none;}

/*FORMS*/

div.registration { padding-top: 100px; display: none;}
div.registration div.title  { margin-bottom: 40px; font-weight: 600; font-size: 26px; text-transform: uppercase; text-align: center; font-family: elza; letter-spacing: 1;}
div.registration > p { font-size: 26px; text-align: center; margin-bottom: 30px; font-weight: 300;}
div.form { max-width: 600px; margin: 0 auto;}
div.form-row { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr; column-gap: 20px; row-gap: 20px; }
div.form-row div.field { grid-column: span 6; display: inline-grid}
div.form-row div.field.x1 { grid-column: span 1; }
div.form-row div.field.x2 { grid-column: span 2; }
div.form-row div.field.x3 { grid-column: span 3; }
div.form-row div.field.x4 { grid-column: span 4; }
div.form-row div.field.x6 { grid-column: span 6; }
div.form-row div.field.x8 { grid-column: span 8; }
div.form-row div.field.x9 { grid-column: span 9; }
div.form-row div.field.x12 { grid-column: span 12; }


input[type="text"], input[type="search"], input[type="tel"], input[type="number"], input[type="email"], input[type="password"] { transition:    color calc(infinity * 1s) step-end,    background-color calc(infinity * 1s) step-end;  background-color: transparent; border-radius: 20px; padding-left: 20px;}
textarea { font-family: var(--default-input-font)}
div.checkbox label:before { border-color: #000; }
div.checkbox input:checked + label:before { background-image: url(/lib/img/dark/checkmark.svg);}
div.checkbox label { color: #000; font-size: 16px; font-weight: 300; font-family: elza; margin-bottom: 50px}
div.checkbox label a  { color: #fff;}
form button[type="submit"], form button[type="button"] { width: 100%; font-weight: 400; text-transform: uppercase; border: 1px solid #000; border-radius: 20px; }
form button[type="submit"]:hover { border: 1px solid #333; color: #fff; background: #333; }
/*div.assessment-form form button[type="submit"] { text-transform: none; font-weight: 700; }*/

button#submit-arrow {border: 0; width: auto; height: 100%; position: absolute; padding: 0; margin: 0; right: 20px; top: 0; text-align: right; background: transparent; color: #000; font-size: 24px; font-family: elza; font-weight: 700;}

*::-webkit-input-placeholder {   text-align: center; }
*::-moz-placeholder  {   text-align: center; }
*:-ms-input-placeholder  {   text-align: center; }

div.reveal-response p { color: #000; font-size: 28px;}

.select2-container--default .select2-selection--single { background: transparent; border: 1px solid #000;}
.select2-container--default .select2-selection--single .select2-selection__placeholder { color: #000; width: 100%; text-align: center; display: block;  line-height: var(--dim-input-height);    min-height: var(--dim-input-height); text-transform: uppercase;}
.select2-container--default .select2-selection--single .select2-selection__rendered { color: #000; width: 100%; text-align: center; display: block; padding: 0 10px; padding-left: 25px;  line-height: var(--dim-input-height);    min-height: var(--dim-input-height); }
.select2-container--default .select2-search--dropdown .select2-search__field { background: fff; box-shadow: none; padding: 0 10px; line-height: 40px; color: #000; min-height: 40px}
.select2-container--default .select2-selection--single .select2-selection__arrow{    background: url(/img/arrow.svg) no-repeat center center !important; background-size: contain !important; width: 20px; right: 20px}
textarea { height: 160px}

div.video { width: 100%; height:0; padding-bottom: 56.25%; position: relative;}
div.video iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0}

/*ANIMATIONS*/

@keyframes bounce {
	0%  { transform: translateY(0px); }
	40%  { transform: translateY(20px); }
	100%  { transform: translateY(0px); }
}

@keyframes slide-in-top {
  0% { transform: translateY(-300px); opacity: 0;}
  100% {transform: translateY(0);opacity: 1;}
}

@keyframes slide-in-bottom {
  0% {transform: translateY(300px);opacity: 0;  }
  100% { transform: translateY(0);opacity: 1;  }
  }



/* Gallea OS */

section.padded {}
section.masthead {width: 100vw; margin: 0; padding: 0}
div.masthead {width: 100vw; height: calc(100 * var(--vh) - 134px); background: #ccc; margin: 0; padding: 0}

div.content {max-width: var(--dim-site-inner-width-extra); padding: 0 30px;}

div.caption-masthead {max-width: 1360px; width: 100%; position: absolute; bottom: 60px; text-align: center; transform: translateX(-50%); left: 50%; }
div.caption-masthead div.title {font-size: 30px; font-weight: 500; margin-bottom: 15px; }
div.caption-masthead p {font-size: 20px; font-weight: 300; margin-bottom: 40px; }

div.grid-1 { display: flex; justify-content: space-between; gap: 60px;}
div.grid-1 > div { flex: 1}
div.vgrid-1 { display: flex; justify-content: space-between; gap: 0; flex-direction: column; align-items: flex-start;}

div.grid-2 { display: flex; justify-content: space-between; gap: 20px;}
div.grid-2 > div { flex: 1}

div.table-1 {display: grid; gap: 0; grid-template-columns: 1fr 1fr 1fr; border: 1px solid #000; border-bottom: 0; border-right: 0; margin-bottom: 60px}
div.table-1 > div {padding: 50px 20px 50px 40px; text-align: left; border: 1px solid #000; border-top: 0; border-left: 0; font-size: 28px; font-weight: 300; line-height: 1.25;}
div.table-1 > div strong {font-size: 1.25em; font-weight: 500}

div.table-2 {display: grid; gap: 90px 170px; grid-template-columns: 1fr 1fr; margin-bottom: 100px}
div.table-2 > div {}

p.stat {font-size: 60px; font-weight: 200; color: #000; line-height: 1.2; margin-bottom: 30px;}


h2.short {max-width: 620px;}

div.separator {height: 1px; width: 100%; background: #000; margin: 100px auto;}

div.gos-content-1 {max-width: 1680px; margin: 0 auto; padding: 140px 0; width: 100%;}
div.gos-content-1 p, div.gos-content-2 p { font-size: 28px;font-weight: 300; font-family: elza;}
h1.gos {font-size: 280px; color: #2458F5; font-weight: 500; font-family: elza; line-height: 1.25; text-align: left; margin-bottom: 0; position: relative}
h1.gos small { position: relative; top: 35px}
h1.gos sup {transform: scale(0.3); transform-origin: left top; display: inline-block; }
h2.gos {font-size: 40px; color: #000; font-weight: 500; font-family: elza; line-height: 1.2; text-align: left; margin-bottom: 30px}
h3.gos {font-size: 60px; color: #000; font-weight: 200; font-family: elza; line-height: 1.2; text-align: left; margin-bottom: 40px; font-style: normal; margin-top: 0}
h4.gos {font-size: 40px; color: #000; font-weight: 500; font-family: elza; line-height: 1.2; text-align: left; margin-bottom: 80px}

div.gos-1 {font-size: 60px; color: #000; font-weight: 600; font-family: elza; line-height: 1.2; text-align: left; margin-bottom: 0px}
.gos-strong { font-weight: 500 !important;}
p.gos-large { font-size: 40px !important;}
h2.gos-strong { font-weight: 600;}
.b-gos { background-color: #EFFCFF !important}
.gos-blue { color: #2458F5 !important;}

.gos-short { max-width: 1380px; margin-left: 0; margin-right: auto}
.gos-shorter { max-width: 1080px; margin-left: 0; margin-right: auto}
.gos-shortish { max-width: 980px; margin-left: 0; margin-right: auto}
.gos-shortest { max-width: 800px; margin-left: 0; margin-right: auto}

div.gos-buttons { display: flex; justify-content: flex-start; gap: 60px; margin-top: 100px}
a.btn-gos {background: #2D61F5; line-height: 70px; border-radius: 20px; color: #fff; min-width: 280px; text-align: center; padding: 0 10px; display: table; font-size: 28px; font-weight: 300; font-family: elza;}

div.gos-grid-1 { display: flex; justify-content: space-between; gap: 100px; align-items: flex-end;}
div.gos-grid-1.for-ibm { align-items: center; margin-bottom: -40px}
div.gos-grid-1 > div:last-child { width: 280px; }
div.gos-grid-1 > div:first-child { flex: 1;}
div.gos-grid-1 + div.gos-grid-1 { margin-top: 60px;}

div.gos-grid-2 { display: grid; gap: 0; grid-template-columns: 5fr 8fr; gap: 0 0px; background: #F4F4F4; border: 1px solid #000; border-bottom: 0; margin-bottom: 100px}
div.gos-grid-2 > div { padding: 40px 20px; font-size: 28px; font-weight: 300; font-family: elza; text-align: left; border-bottom: 1px solid #000;}
div.gos-grid-2 > div:nth-child(odd) { font-size: 40px; color: #2458F5; font-weight: 500; padding-left: 30px}

div.gos-grid-3 { display: grid; gap: 0; grid-template-columns: 5fr 8fr; gap: 0 20px; margin-bottom: 100px}
div.gos-grid-3 > div:last-child { align-self: end}
div.gos-grid-3 a.btn-gos { margin: 0 0 0 auto}

div.gos-grid-4 { display: flex; justify-content: space-between; gap: 0;}
div.gos-grid-4 > div { width: 25%; display: flex; justify-content: space-between; gap: 0; flex-direction: column}
div.gos-grid-4 div.thumb { }
div.gos-grid-4 div.info { border: 1px solid #000; padding: 40px 30px; border-top: 0; border-left: 0; text-align: left; flex: 1}
div.gos-grid-4 > div:first-child div.info { border-left: 1px solid #000; }
div.gos-grid-4 div.info span { font-size: 64px; color: #2458F5; font-weight: 300; display: block; margin-bottom: 10px; font-family: elza; }

div.gos-grid-5 { display: flex; justify-content: space-between; gap: 0; background: #F4F4F4; border: 1px solid #000; border-left: 0; margin-top: 84px}
div.gos-grid-5 div { padding: 74px 10px; text-align: center; border-left: 1px solid #000; font-size: 40px; font-weight: 500; font-family: elza; flex: 1; line-height: 1.2; display: flex; justify-content: center; gap: 0; align-items: center;}

div.gos-grid-6 { display: flex; justify-content: space-between; gap: 20px; height: 100%; align-items: flex-start; flex-direction: column}

div.gos-content-2 {background-color: #EFFCFF !important; }
div.gos-content-2:after {content:""; display: block; position: absolute; bottom: -80px; width: 100%; left: 0; height: 80px; background-color: #EFFCFF !important; }
div.gos-content-2 > img { display: block; width: 100%; height: 100%; position: absolute; object-fit: contain; right: 0; bottom: 0}
div.gos-content-2 div.gos-content-1 { padding: 300px 0}
div.gos-content-2 a.btn-gos { margin-top: 80px}

div.gos-line { margin: 80px auto; height: 1px; display: block; width: 100%; background: #000}

div.gos-form { width: 100%; }
div.gos-form div.form { width: 100%; max-width: 100%}
div.gos-form-title {font-size: 130px; color: #2458F5; font-weight: 500; font-family: elza; line-height: 1.25; text-align: left; margin-bottom: 60px}
div.gos-form form button[type="submit"], div.gos-form form button[type="button"] { width: 280px; font-weight: 300; font-size: 28px; text-transform: initial; border: 0; background: #2D61F5; color: #fff; border-radius: 20px; line-height: 70px;}
div.gos-form form button[type="submit"]:hover { background: #000}
div.gos-form p.form-disclaimer { margin-top: 50px; font-size: 14px;  font-family: elza; }

div.gos-form div.reveal-response p {text-align: left;}

img.bg-image { position: absolute; top: 0; left: 0; object-fit: cover; object-position: center bottom; display: block; width: 100%; height: 100%}
img.bg-image-top { position: absolute; top: 0; left: 0; width: 100%; display: block;}
div.gos-ibm-masthead {min-height: 760px;}

div.gos-caption-1 { position: absolute; top: 0%; left: 0; width: 100%; z-index: 2; height: 100%; }
div.gos-caption-1 > div { height: 100%; }
div.gos-what {font-size: 28px; color: #fff; text-transform: uppercase;font-family: elza}
div.gos-when{font-size: 60px; color: #fff; font-weight: 600; font-family: elza; line-height: 1.2; text-align: left; font-style: normal; margin-top: 0; }


@media only screen and (max-width: 1900px) {
	div.gos-content-2 > img { display: block; width: auto; object-fit: initial; }

}
@media only screen and (max-width: 1720px) {
	div.caption-masthead {max-width: 100%; padding: 0 30px;}
	div.gos-content-1 {max-width: 100%; padding: 120px 30px; }
	h1.gos {font-size: 16vw; }
	h1.gos small { position: relative; top: 20px}
	div.gos-content-2 div.gos-content-1 { padding: 240px 30px}

}

@media only screen and (max-width: 1440px) {

		:root {
		  --default-font-size: 30px;

		  --default-input-font-size: 18px;
		  --dim-input-height: 48px;
		  --button-height: 48px;
		}
		a.btn { line-height: 48px; font-size: 16px; padding: 0 20px; }
		a.btn2 { line-height: 48px; font-size: 16px; padding: 0 20px; margin-top: 20px; min-width: 310px}

}

@media only screen and (max-width: 1080px) {

		div.gos-content-1 {padding: 100px 30px; }
		div.gos-content-1 p, div.gos-content-2 p { font-size: 22px;}
		h1.gos {font-size: 15vw; }
		h1.gos small { position: relative; top: 5px}
		h2.gos {font-size: 32px; margin-bottom: 30px}
		h3.gos {font-size: 48px; margin-bottom: 30px; }
		h4.gos {font-size: 32px; margin-bottom: 50px}

		div.gos-1 { font-size: 48px; }
		p.gos-large { font-size: 32px !important;}

		div.gos-buttons { gap: 20px; margin-top: 70px}
		a.btn-gos {line-height: 48px; border-radius: 12px; min-width: 200px; max-width: 45vw; font-size: 22px; }

		div.gos-grid-1 > div:last-child { width: 200px; }
		div.gos-grid-1 + div.gos-grid-1 { margin-top: 50px;}

		div.gos-grid-2 { grid-template-columns: 1fr 1fr; margin-bottom: 70px}
		div.gos-grid-2 > div { padding: 30px 10px; font-size: 22px; }
		div.gos-grid-2 > div:nth-child(odd) { font-size: 32px; padding-left: 20px}

		div.gos-grid-3 { grid-template-columns: 1fr 1fr; gap: 0 20px; margin-bottom: 70px}

		div.gos-grid-4 div.info { border: 1px solid #000; padding: 30px 10px; }
		div.gos-grid-4 div.info span { font-size: 40px; }

		div.gos-grid-5 { margin-top: 70px}
		div.gos-grid-5 div { padding: 40px 10px; font-size: 32px; }

		div.gos-content-2 div.gos-content-1 { padding: 150px 30px}
		div.gos-content-2 a.btn-gos { margin-top: 70px}
		div.gos-content-2:after {bottom: -40px; height: 40px; }

		div.gos-line { margin: 70px auto; }

		div.gos-form-title {font-size: 72px; margin-bottom: 40px}
		div.gos-form form button[type="submit"], div.gos-form form button[type="button"] { width: 200px; font-size: 22px; border-radius: 12px; line-height: 48px;}
		div.gos-form p.form-disclaimer { margin-top: 40px; font-size: 12px;  }

		div.gos-what {font-size: 18px; }
		div.gos-when{font-size: 48px; }


}

@media only screen and (max-width: 880px) {

	
		:root {
		  --default-font-size: 21px;

		  --default-input-font-size: 16px;
		  --dim-input-height: 48px;
		  --button-height: 48px;
		}


	
}

@media only screen and (max-width: 760px) {


		div.gos-content-1 {padding: 70px 30px; }
		div.gos-content-1 p, div.gos-content-2 p { font-size: 18px;}
		h1.gos {font-size: 14vw; }
		h2.gos {font-size: 22px; margin-bottom: 30px}
		h3.gos {font-size: 22px; margin-bottom: 30px; }
		h3.gos br { display: none;}
		h4.gos {font-size: 22px; margin-bottom: 40px}

		div.gos-1 { font-size: 20px; }
		p.gos-large { font-size: 22px !important;}

		div.gos-buttons { gap: 10px; margin-top: 40px}
		a.btn-gos {line-height: 36px; border-radius: 10px; min-width: 150px; font-size: 16px; }

		div.gos-grid-1 { flex-direction: column; align-items: flex-start; gap: 40px}
		div.gos-grid-1 > div:last-child { width: 100%; }
		div.gos-grid-1 + div.gos-grid-1 { margin-top: 50px;}
		div.gos-grid-1.for-ibm { align-items: flex-start; gap: 0; margin-bottom: -70px}
		div.gos-grid-1.for-ibm img { position: relative; left: -50px; margin-top: -20px}

		div.gos-grid-2 { grid-template-columns: 1fr; margin-bottom: 50px; gap: 0}
		div.gos-grid-2 > div { padding: 10px 10px; font-size: 18px; }
		div.gos-grid-2 > div:nth-child(odd) { font-size: 22px; padding-left: 10px; padding-bottom: 0; border-bottom: 0}

		div.gos-grid-3 { grid-template-columns: 1fr; gap: 20px; margin-bottom: 70px}
		div.gos-grid-3 a.btn-gos { margin: 0 auto 0 0}

		div.gos-grid-4 { flex-direction: column; gap: 20px}
		div.gos-grid-4 > div { width: 100%}
		div.gos-grid-4 div.info { border: 1px solid #000; padding: 30px 10px; }
		div.gos-grid-4 div.info span { font-size: 40px; }

		div.gos-grid-5 { margin-top: 40px; flex-direction: column; border: 1px solid #000; border-bottom: 0}
		div.gos-grid-5 div { padding: 30px 10px; font-size: 22px; border: 0; border-bottom: 1px solid #000 }

		div.gos-content-2 > img { object-fit: contain; height: auto; width: 100%; max-width: 9999px; right: auto; left: 0%; display: none;}
		div.gos-content-2 div.gos-content-1 { padding: 70px 30px}
		div.gos-content-2 a.btn-gos { margin-top: 40px}
		div.gos-content-2:after {display: none;}

		div.gos-line { margin: 40px auto; }

		div.gos-form-title {font-size: 48px; margin-bottom: 40px}
		div.gos-form form button[type="submit"], div.gos-form form button[type="button"] { width: 150px; font-size: 16px; border-radius: 10px; line-height: 36px; margin: 0 auto}
		div.gos-form p.form-disclaimer { margin-top: 30px; font-size: 12px;  }

		div.form-row div.field.x6 { grid-column: span 12}

		div.gos-ibm-masthead {min-height: 560px;}
 
 		div.gos-buttons { flex-direction: column;}
 		div.gos-grid-6 { gap: 10px}
		 div.gos-what {font-size: 14px}
		div.gos-when{font-size: 18px;}
		div.gos-caption-1 > div { padding: 20px 30px}
		div.gos-caption-1 p.gos-large { font-size: 14px !important}

}

@media only screen and (max-width: 600px) {
}

@media only screen and (max-width: 380px) {
}
