@charset "UTF-8";

.gl-contact-page {
	--gl-contact-deep: #211452;
	--gl-contact-purple: #5b3df5;
	--gl-contact-soft: #f4f1ff;
	--gl-contact-border: #e6e1f1;
	background: #f7f8fc;
}

.gl-contact-hero {
	position: relative;
	overflow: hidden;
	padding: 30px 0 70px;
	background:
		radial-gradient(circle at 84% 22%, rgba(127, 99, 255, .25), transparent 31%),
		radial-gradient(circle at 11% 96%, rgba(91, 61, 245, .09), transparent 27%),
		linear-gradient(135deg, #fff 0%, #fdfcff 54%, #f0ebff 100%);
	border-bottom: 1px solid #e9e4f5;
}

.gl-contact-hero::after {
	content: "";
	position: absolute;
	right: -100px;
	top: -180px;
	width: 500px;
	height: 500px;
	border: 1px solid rgba(91, 61, 245, .12);
	border-radius: 50%;
	pointer-events: none;
}

.gl-contact-breadcrumb {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 42px;
	color: #756e86;
	font-size: .74rem;
}
.gl-contact-breadcrumb a:hover { color: var(--gl-contact-purple); }
.gl-contact-breadcrumb .gl-icon { width: 13px; height: 13px; }

.gl-contact-hero__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(440px, .85fr);
	align-items: center;
	gap: clamp(42px, 7vw, 84px);
}

.gl-contact-kicker {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 9px;
	color: var(--gl-contact-purple);
	font-size: .67rem;
	font-weight: 820;
	letter-spacing: .1em;
	line-height: 1.3;
	text-transform: uppercase;
}
.gl-contact-kicker > span { width: 20px; height: 2px; border-radius: 99px; background: currentColor; }
.gl-contact-hero h1 {
	max-width: 720px;
	margin: 0;
	color: #111827;
	font-size: clamp(3rem, 5.35vw, 4.85rem);
	font-weight: 850;
	letter-spacing: -.065em;
	line-height: 1;
}
.gl-contact-hero__copy > p:not(.gl-contact-kicker) {
	max-width: 670px;
	margin: 24px 0 0;
	color: #626a79;
	font-size: clamp(1rem, 1.5vw, 1.15rem);
	line-height: 1.72;
}
.gl-contact-trust { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.gl-contact-trust span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 12px;
	border: 1px solid #e4def4;
	border-radius: 999px;
	background: rgba(255, 255, 255, .72);
	color: #514b5e;
	font-size: .72rem;
	font-weight: 720;
	box-shadow: 0 4px 14px rgba(44, 31, 90, .04);
}
.gl-contact-trust .gl-icon { width: 15px; height: 15px; color: var(--gl-contact-purple); }

.gl-contact-hero__visual {
	position: relative;
	display: flex;
	min-width: 0;
	min-height: 430px;
	align-items: flex-end;
	isolation: isolate;
}
.gl-contact-hero__visual::before {
	content: "";
	position: absolute;
	z-index: -1;
	right: 6px;
	top: 28px;
	width: 310px;
	height: 310px;
	border-radius: 50%;
	background: radial-gradient(circle,rgba(255,255,255,.92),rgba(226,218,255,.44) 54%,transparent 72%);
	filter: blur(2px);
}
.gl-contact-hero__art {
	position: absolute;
	z-index: 1;
	right: -28px;
	top: -30px;
	width: 340px;
	height: auto;
	opacity: .84;
	filter: drop-shadow(0 22px 30px rgba(43,29,101,.13));
	pointer-events: none;
}

.gl-contact-hero__card {
	position: relative;
	z-index: 2;
	width: min(370px, 82%);
	overflow: hidden;
	padding: 30px;
	border: 1px solid rgba(255, 255, 255, .15);
	border-radius: 24px;
	background: linear-gradient(145deg, #26185d, #4930c9 70%, #6142f1);
	color: #fff;
	box-shadow: 0 24px 55px rgba(42, 28, 107, .22);
}
.gl-contact-hero__card::after {
	content: "";
	position: absolute;
	right: -42px;
	top: -46px;
	width: 150px;
	height: 150px;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 50%;
}
.gl-contact-hero__card > * { position: relative; z-index: 1; }
.gl-contact-hero__card-head { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 14px; }
.gl-contact-hero__card-head p { margin: 0 0 3px; color: #d7ceff; font-size: .64rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.gl-contact-hero__card h2 { margin: 0; color: #fff; font-size: 1.45rem; letter-spacing: -.035em; line-height: 1.28; }
.gl-contact-hero__card-details { display: grid; grid-template-columns: 1.2fr .8fr; gap: 12px; margin-top: 24px; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
.gl-contact-hero__card-details span { display: grid; gap: 3px; min-width: 0; }
.gl-contact-hero__card-details small { color: rgba(255,255,255,.58); font-size: .57rem; font-weight: 720; letter-spacing: .045em; text-transform: uppercase; }
.gl-contact-hero__card-details strong { color: #fff; font-size: .69rem; line-height: 1.4; }
.gl-contact-hero__card a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 46px; margin-top: 17px; padding: 10px 13px; border: 1px solid rgba(255,255,255,.25); border-radius: 11px; background: rgba(255,255,255,.1); color: #fff; font-size: .75rem; font-weight: 780; }
.gl-contact-hero__card a:hover { border-color: rgba(255,255,255,.45); background: rgba(255,255,255,.16); }
.gl-contact-hero__card a .gl-icon { width: 16px; height: 16px; }

.gl-contact-icon {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	flex: 0 0 auto;
	border-radius: 13px;
	background: var(--gl-contact-soft);
	color: var(--gl-contact-purple);
}
.gl-contact-icon .gl-icon { width: 21px; height: 21px; }
.gl-contact-icon--light { border: 1px solid rgba(255, 255, 255, .2); background: rgba(255, 255, 255, .12); color: #fff; }
.gl-contact-icon--gold { background: #fff5dd; color: #a96b08; }
.gl-contact-icon--green { background: #e7f7f1; color: #147b61; }

.gl-contact-paths { padding: 64px 0; background: #fff; }
.gl-contact-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 28px; }
.gl-contact-section-heading h2 { margin: 0; color: #171422; font-size: clamp(1.7rem, 3vw, 2.35rem); letter-spacing: -.045em; line-height: 1.12; }
.gl-contact-section-heading > p { max-width: 470px; margin: 0; color: #777182; font-size: .86rem; line-height: 1.65; }
.gl-contact-paths__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.gl-contact-paths article {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: 15px;
	min-width: 0;
	padding: 22px;
	border: 1px solid var(--gl-contact-border);
	border-radius: 18px;
	background: linear-gradient(145deg, #fff, #fdfcff);
	box-shadow: 0 10px 30px rgba(31, 25, 57, .045);
	transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.gl-contact-paths article:hover { transform: translateY(-3px); border-color: #d2c7f5; box-shadow: 0 16px 34px rgba(44, 32, 95, .08); }
.gl-contact-paths h3 { margin: 2px 0 6px; color: #2a2534; font-size: .98rem; letter-spacing: -.02em; }
.gl-contact-paths p { margin: 0; color: #747080; font-size: .76rem; line-height: 1.6; }
.gl-contact-paths article a { display: inline-flex; align-items: center; gap: 6px; margin-top: 11px; color: var(--gl-contact-purple); font-size: .7rem; font-weight: 780; }
.gl-contact-paths article a .gl-icon { width: 14px; height: 14px; }

.gl-contact-main { padding: 72px 0; background: #f7f8fc; scroll-margin-top: 95px; }
.gl-contact-main__grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; align-items: start; gap: 22px; }
.gl-contact-form-card,
.gl-contact-sidebar__card {
	border: 1px solid var(--gl-contact-border);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 15px 42px rgba(31, 24, 63, .065);
}
.gl-contact-form-card { padding: clamp(23px, 4vw, 38px); }
.gl-contact-form-card__head { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 15px; margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #ece9f2; }
.gl-contact-form-card__head h2 { margin: 0; color: #211d2c; font-size: clamp(1.55rem, 2.5vw, 2rem); letter-spacing: -.04em; }
.gl-contact-form-card__head p:last-child { margin: 6px 0 0; color: #787181; font-size: .8rem; }

.gl-contact-form { display: grid; gap: 19px; }
.gl-contact-form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.gl-contact-form label:not(.gl-contact-notice) { display: grid; gap: 7px; color: #3a3443; font-size: .76rem; font-weight: 760; }
.gl-contact-field { display: grid; gap: 7px; color: #3a3443; font-size: .76rem; font-weight: 760; }
.gl-contact-form input:not([type="checkbox"]),
.gl-contact-form select,
.gl-contact-form textarea {
	width: 100%;
	min-width: 0;
	padding: 12px 14px;
	border: 1px solid #dcd7e8;
	border-radius: 11px;
	outline: 0;
	background: #fdfdfe;
	color: #272330;
	font-size: .82rem;
	font-weight: 500;
	transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}
.gl-contact-form input:not([type="checkbox"]), .gl-contact-form select { min-height: 48px; }
.gl-contact-form textarea { resize: vertical; line-height: 1.6; }
.gl-contact-form input:focus,
.gl-contact-form select:focus,
.gl-contact-form textarea:focus { border-color: #8068f7; background: #fff; box-shadow: 0 0 0 4px rgba(91, 61, 245, .11); }
.gl-contact-form input::placeholder,
.gl-contact-form textarea::placeholder { color: #a19ba9; }
.gl-contact-form label > small { color: #888291; font-size: .66rem; font-weight: 500; line-height: 1.5; }
.gl-contact-select { position: relative; min-width: 0; }
.gl-contact-select__native { position: absolute!important; width: 1px!important; height: 1px!important; margin: -1px!important; padding: 0!important; overflow: hidden!important; clip: rect(0 0 0 0)!important; clip-path: inset(50%)!important; white-space: nowrap!important; border: 0!important; }
.gl-contact-select__trigger { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; width: 100%; min-height: 48px; padding: 11px 14px; border: 1px solid #dcd7e8; border-radius: 11px; background: linear-gradient(180deg,#fff,#fcfbfe); color: #2f2938; font-size: .82rem; font-weight: 560; text-align: left; cursor: pointer; box-shadow: 0 1px 2px rgba(38,28,67,.02); transition: border-color 180ms ease,box-shadow 180ms ease,background 180ms ease; }
.gl-contact-select__trigger.is-placeholder { color: #8d8795; }
.gl-contact-select__trigger > .gl-icon { width: 16px; height: 16px; color: #7465b8; transform: rotate(90deg); transition: transform 180ms ease; }
.gl-contact-select.is-open .gl-contact-select__trigger { border-color: #8068f7; background: #fff; box-shadow: 0 0 0 4px rgba(91,61,245,.11); }
.gl-contact-select.is-open .gl-contact-select__trigger > .gl-icon { transform: rotate(-90deg); }
.gl-contact-select__trigger.is-invalid { border-color: #d66a6a; box-shadow: 0 0 0 4px rgba(190,50,50,.09); }
.gl-contact-select__list { position: absolute; z-index: 20; top: calc(100% + 7px); left: 0; right: 0; display: grid; gap: 3px; padding: 7px; border: 1px solid #ddd6ef; border-radius: 13px; background: rgba(255,255,255,.98); box-shadow: 0 18px 42px rgba(34,24,72,.16); backdrop-filter: blur(12px); }
.gl-contact-select__list[hidden] { display: none; }
.gl-contact-select__list [role="option"] { width: 100%; min-height: 39px; padding: 9px 11px; border: 0; border-radius: 9px; background: transparent; color: #494151; font-size: .78rem; font-weight: 560; text-align: left; cursor: pointer; }
.gl-contact-select__list [role="option"]:hover,.gl-contact-select__list [role="option"]:focus-visible { outline: 0; background: #f3f0ff; color: #4d34ca; }
.gl-contact-select__list [role="option"][aria-selected="true"] { background: linear-gradient(135deg,#ede8ff,#f6f3ff); color: #4d34ca; font-weight: 760; }
.gl-contact-notice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 11px; min-height: 52px; padding: 12px 14px; border: 1px solid #e8e2f7; border-radius: 12px; background: #faf8ff; color: #6d6677; font-size: .7rem; line-height: 1.5; }
.gl-contact-notice input { width: 17px; height: 17px; margin: 0; accent-color: var(--gl-contact-purple); }
.gl-contact-notice a { color: var(--gl-contact-purple); font-weight: 750; text-decoration: underline; text-underline-offset: 2px; }
.gl-contact-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	width: max-content;
	min-height: 49px;
	padding: 12px 19px;
	border: 0;
	border-radius: 12px;
	background: linear-gradient(135deg, #6749fa, #4930c9);
	color: #fff;
	font-size: .78rem;
	font-weight: 800;
	box-shadow: 0 11px 25px rgba(73, 48, 201, .23);
	cursor: pointer;
	transition: transform 180ms ease, box-shadow 180ms ease;
}
.gl-contact-submit:hover { transform: translateY(-2px); box-shadow: 0 15px 30px rgba(73, 48, 201, .28); }
.gl-contact-submit .gl-icon { width: 17px; height: 17px; }
.gl-contact-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

.gl-contact-feedback { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 11px; margin-bottom: 23px; padding: 15px; border: 1px solid; border-radius: 13px; font-size: .75rem; }
.gl-contact-feedback > .gl-icon { width: 21px; height: 21px; margin-top: 1px; }
.gl-contact-feedback strong { display: block; color: inherit; }
.gl-contact-feedback p { margin: 3px 0 0; color: inherit; opacity: .8; }
.gl-contact-feedback--success { border-color: #bde6d7; background: #eefaf5; color: #12684f; }
.gl-contact-feedback--error { border-color: #f0c8c8; background: #fff5f5; color: #9c3333; }

.gl-contact-sidebar { display: grid; gap: 15px; }
.gl-contact-sidebar__card { padding: 24px; }
.gl-contact-sidebar__heading { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 12px; margin-bottom: 14px; }
.gl-contact-sidebar__heading h2,.gl-contact-sidebar__card h2 { margin: 0; color: #292432; font-size: 1.15rem; letter-spacing: -.03em; line-height: 1.25; }
.gl-contact-sidebar__card > p:not(.gl-contact-kicker) { margin: 0; color: #787181; font-size: .75rem; line-height: 1.6; }
.gl-contact-sidebar__card--email { overflow: hidden; border-color: transparent; background: linear-gradient(145deg, #251758, #4930c9 73%, #6142ef); color: #fff; }
.gl-contact-sidebar__card--email .gl-contact-kicker { margin: 0 0 10px; color: #d3caff; }
.gl-contact-sidebar__card--email h2 { color: #fff; }
.gl-contact-sidebar__card--email > p:not(.gl-contact-kicker) { color: rgba(255, 255, 255, .72); }
.gl-contact-sidebar__card--email > a { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 19px; padding: 11px 12px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 10px; background: rgba(255, 255, 255, .1); color: #fff; font-size: .72rem; font-weight: 750; overflow-wrap: anywhere; }
.gl-contact-sidebar__card--email > a:hover { background: rgba(255, 255, 255, .16); }
.gl-contact-sidebar__card--email > a .gl-icon { width: 15px; height: 15px; }
.gl-contact-sidebar ol { display: grid; gap: 13px; margin: 17px 0 0; padding: 0; list-style: none; }
.gl-contact-sidebar ol li { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 10px; }
.gl-contact-sidebar ol li > span { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 8px; background: var(--gl-contact-soft); color: var(--gl-contact-purple); font-size: .64rem; font-weight: 820; }
.gl-contact-sidebar ol p { margin: 2px 0 0; color: #6e6877; font-size: .72rem; line-height: 1.5; }
.gl-contact-sidebar__note { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 10px; padding: 15px; border: 1px solid #d9eee6; border-radius: 14px; background: #f2faf7; color: #376f60; }
.gl-contact-sidebar__note .gl-icon { width: 20px; height: 20px; }
.gl-contact-sidebar__note p { margin: 0; font-size: .69rem; line-height: 1.55; }
.gl-contact-sidebar__note strong { display: block; color: #1f594a; }

.gl-contact-faq { padding: 66px 0 78px; background: #fff; }
.gl-contact-faq__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.gl-contact-faq details { min-width: 0; padding: 19px 20px; border: 1px solid var(--gl-contact-border); border-radius: 15px; background: #fdfcff; }
.gl-contact-faq summary { color: #302a3b; font-size: .8rem; font-weight: 780; line-height: 1.45; cursor: pointer; }
.gl-contact-faq details[open] { border-color: #d5caf8; background: #faf8ff; }
.gl-contact-faq details p { margin: 12px 0 0; color: #746e7d; font-size: .72rem; line-height: 1.65; }

@media (max-width: 920px) {
	.gl-contact-hero__grid { grid-template-columns: minmax(0, 1fr) 390px; gap: 30px; }
	.gl-contact-hero__visual { min-height: 405px; }
	.gl-contact-hero__art { right: -8px; width: 290px; }
	.gl-contact-hero__card { width: 330px; }
	.gl-contact-main__grid { grid-template-columns: minmax(0, 1fr) 290px; }
	.gl-contact-paths__grid { grid-template-columns: 1fr; }
	.gl-contact-paths article { grid-template-columns: auto minmax(0, 1fr); }
}

@media (max-width: 760px) {
	.gl-contact-hero { padding-bottom: 48px; }
	.gl-contact-breadcrumb { margin-bottom: 30px; }
	.gl-contact-hero__grid,
	.gl-contact-main__grid { grid-template-columns: 1fr; }
	.gl-contact-hero__visual { width: 100%; max-width: 520px; min-height: 410px; }
	.gl-contact-hero__art { right: 0; width: 310px; }
	.gl-contact-hero__card { width: 355px; max-width: 100%; }
	.gl-contact-section-heading { align-items: start; flex-direction: column; }
	.gl-contact-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gl-contact-sidebar__note { grid-column: 1 / -1; }
	.gl-contact-faq__grid { grid-template-columns: 1fr; }
}

@media (max-width: 540px) {
	.gl-contact-hero h1 { font-size: clamp(2.65rem, 14vw, 4rem); }
	.gl-contact-trust { align-items: stretch; flex-direction: column; }
	.gl-contact-trust span { width: max-content; max-width: 100%; }
	.gl-contact-hero__visual { display: grid; min-height: 0; margin-top: 3px; }
	.gl-contact-hero__visual::before { right: -24px; top: 10px; width: 250px; height: 250px; }
	.gl-contact-hero__art { position: relative; top: auto; right: auto; justify-self: end; width: 250px; margin: 0 4px -72px 0; opacity: .72; }
	.gl-contact-hero__card { width: 100%; }
	.gl-contact-paths,
	.gl-contact-main,
	.gl-contact-faq { padding-block: 48px; }
	.gl-contact-form__row,
	.gl-contact-sidebar { grid-template-columns: 1fr; }
	.gl-contact-sidebar__note { grid-column: auto; }
	.gl-contact-form-card__head { grid-template-columns: 1fr; }
	.gl-contact-submit { width: 100%; }
}
