.ge-breadcrumb { margin: 1.25rem 0 1.75rem; font-size: .95rem; }
.ge-breadcrumb ol { display: flex; flex-wrap: wrap; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.ge-breadcrumb li + li::before { content: "/"; margin-right: .45rem; }
.ge-related { margin: 2rem 0; padding: 1rem 1.25rem; border: 1px solid #dcd4c6; }
.ge-contact-form { box-sizing: border-box; width: 100%; max-width: 48rem; margin: 1.25rem auto; padding: clamp(1rem, 3vw, 2rem); background: #f8f5ef; border: 1px solid #ded4c2; color: #202020; text-align: left; }
.ge-form-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: 1rem; }
.ge-contact-form label { display: block; font-weight: 600; margin-bottom: .85rem; }
.ge-contact-form input, .ge-contact-form textarea { display: block; width: 100%; box-sizing: border-box; margin-top: .35rem; padding: .65rem .75rem; border: 1px solid #9b9181; background: white; color: #202020; font: inherit; }
.ge-contact-form textarea { resize: vertical; }
.ge-contact-form input:focus, .ge-contact-form textarea:focus { outline: 2px solid #826339; outline-offset: 2px; }
.ge-contact-form button { border: 0; cursor: pointer; }
.ge-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.ge-result { padding-top: 4rem; padding-bottom: 4rem; }
.ge-result-card { background: #f8f5ef; border: 1px solid #ded4c2; padding: clamp(1rem, 5vw, 3rem); }
.ge-result-card a { display: inline-block; margin: .4rem; }
.ge-form-error { font: 1rem/1.6 system-ui, sans-serif; max-width: 40rem; margin: 4rem auto; padding: 1.5rem; background: #f8f5ef; color: #202020; }

img[loading="lazy"][width][height] { max-width: 100%; height: auto; }

body { --procounsel-text: #c3cce1; }
.sec-title .sec-title__title, .sec-title__title { color: #f5f6fa; }
.sec-title .sec-title__tagline, .sec-title__tagline { color: #e9c580; }
.main-slider-one__content { text-shadow: 0 2px 14px rgba(0,0,0,.9); }
.main-slider-one__item::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg,rgba(5,13,34,.56),rgba(5,13,34,.09)); z-index: 1; }
.main-slider-one__item > .container { position: relative; z-index: 2; }
main.hoc .content { color: #e2e7f1; }
main.hoc .content a { color: #eac784; }
main.hoc .ge-contact-form a, .ge-contact-form a { color: #62451c; text-decoration: underline; }
.ge-contact-form button { color: #1b1b1b; }
.team-card__image img { object-fit: cover; }
@media (max-width: 640px) {
 .ge-contact-form { padding: 1rem; }
 .main-slider-one__title { overflow-wrap: anywhere; }
}

/* Keep the main navigation readable over every slide. */
.main-header.sticky-header--normal {
  background: #0b1429;
}
.main-menu .ge-main-menu > li + li { margin-left: clamp(1.25rem, 2vw, 2.25rem); }
.main-menu .ge-main-menu a:focus-visible,
.mobile-nav__container .ge-main-menu a:focus-visible,
.ge-mobile-submenu-toggle:focus-visible {
  outline: 2px solid #e9c580;
  outline-offset: 4px;
}
.ge-menu-chevron {
  display: inline-block;
  width: .42em;
  height: .42em;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  margin: -.2em 0 0 .6em;
}
.main-menu .ge-main-menu li > ul.ge-menu-sublist {
  left: 0;
  min-width: 16rem;
  width: max-content;
  max-width: 21rem;
  padding: .45rem .75rem;
  background: #111d35;
  border-top: 2px solid #c7954a;
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
  transition-duration: 150ms;
}
.main-menu .ge-main-menu li:focus-within > ul.ge-menu-sublist {
  opacity: 1;
  visibility: visible;
  transform: none;
}
.main-menu .ge-main-menu li > ul.ge-menu-sublist > li > a {
  color: #f5f6fa;
  font-size: .95rem;
  line-height: 1.5;
  text-transform: none;
}
.main-menu .ge-main-menu li > ul.ge-menu-sublist > li > a:hover,
.main-menu .ge-main-menu li > ul.ge-menu-sublist > li > a:focus-visible { color: #e9c580; }
.mobile-nav__container .ge-menu-chevron { display: none; }
.mobile-nav__container .ge-main-menu > .dropdown { position: relative; }
.mobile-nav__container .ge-main-menu > .dropdown > a { padding-right: 3rem; }
.mobile-nav__container .ge-mobile-submenu-toggle {
  position: absolute;
  top: .2rem;
  right: 0;
  min-width: 2.6rem;
  min-height: 2.6rem;
  border: 1px solid #c7954a;
  border-radius: 3px;
  background: #1b2748;
  color: white;
}
.ge-mobile-submenu-toggle[aria-expanded="true"] i { transform: rotate(180deg); }

/* The text block stays within the dark portion of the image on all slides. */
.main-slider-one__item {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  min-height: clamp(34rem, 76vh, 47rem);
  padding: clamp(8rem, 16vh, 10.5rem) 0 clamp(4rem, 10vh, 6rem);
}
.main-slider-one__item::after {
  background: linear-gradient(90deg, rgba(5,13,34,.94) 0%, rgba(5,13,34,.85) 36%, rgba(5,13,34,.55) 69%, rgba(5,13,34,.28) 100%);
}
.main-slider-one__content { max-width: 43rem; overflow: visible; }
.main-slider-one .main-slider-one__title {
  display: block;
  font-size: clamp(2rem, 4.2vw, 3.75rem);
  line-height: 1.2;
  margin: 0 0 1rem;
  text-transform: none;
  text-wrap: balance;
}
.main-slider-one .main-slider-one__title::after { display: none; }
.main-slider-one .main-slider-one__text {
  font-size: clamp(1rem, 1.35vw, 1.2rem);
  line-height: 1.65;
  color: #f3f5fb;
  margin: 0 0 1.25rem;
  max-width: 37rem;
}
.main-slider-one .main-slider-one__title,
.main-slider-one .main-slider-one__text,
.main-slider-one .main-slider-one__btn {
  opacity: 1;
  transform: none;
  transition: none;
}
.main-slider-one .main-slider-one__btn .procounsel-btn { text-shadow: none; }
.main-slider-one .main-slider-one__btn .procounsel-btn i { font-style: normal; }
@media (max-width: 767px) {
  .main-slider-one__item {
    min-height: 29rem;
    padding: 7.2rem 0 4rem;
  }
  .main-slider-one__item::after { background: rgba(5,13,34,.78); }
  .main-slider-one .main-slider-one__title { font-size: clamp(1.7rem, 6vw, 2.35rem); }
  .main-slider-one__carousel.owl-carousel .owl-dots { bottom: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .main-slider-one .main-slider-one__bg { transition: none; transform: none; }
}

.mobile-nav__container .ge-main-menu li > a {
  height: auto;
  min-height: 46px;
  padding-block: .55rem;
  line-height: 1.45;
  font-size: .9rem;
  letter-spacing: 0;
}

/* Keep the original Georgian slogans readable over the original photography. */
.main-slider-one .main-slider-one__title {
  font-size: clamp(1.9rem, 3.4vw, 3.15rem);
  line-height: 1.23;
  text-wrap: initial;
  overflow-wrap: normal;
}
.main-slider-one__content { max-width: 48rem; }
.main-slider-one .main-slider-one__text { max-width: 41rem; }
.main-slider-one__item::after {
  background: linear-gradient(90deg, rgba(5,13,34,.87), rgba(5,13,34,.78) 42%, rgba(5,13,34,.36) 74%, rgba(5,13,34,.12));
}
@media (max-width: 767px) {
  .main-slider-one .main-slider-one__title { font-size: clamp(1.55rem, 5.4vw, 2rem); }
  .main-slider-one__item::after { background: rgba(5,13,34,.78); }
}

/* Display the contact photo in the flow so the address cannot cover it. */
.contact-one .contact-one__content { padding: 0; margin: 0; }
.contact-one .ge-contact-photo {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2 / 1;
  object-fit: cover;
  object-position: center;
}
.contact-one .contact-one__info__item { padding: 1rem; min-width: 0; }
.contact-one .contact-one__info__text { overflow-wrap: anywhere; }
.contact-one .sec-title { padding-left: 0; }
.contact-one .sec-title__title { font-size: clamp(1.65rem, 2.8vw, 2.5rem); line-height: 1.26; }
.contact-one .ge-home-contact .ge-contact-form { position: relative; margin: 0; max-width: none; }
@media (max-width: 1199px) { .contact-one .ge-home-contact { margin-top: 1.25rem; } }

/* Keep both photos within their own columns. */
.why-choose-one > .container-fluid { max-width: 96rem; padding-inline: clamp(1rem, 3vw, 3rem); }
.why-choose-one .why-choose-one__left,
.why-choose-one .why-choose-one__right { position: relative; display: block; }
.why-choose-one .why-choose-one__left img,
.why-choose-one .why-choose-one__right img {
  position: static;
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 0;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  transform: none;
}
.why-choose-one .why-choose-one__content { z-index: auto; padding-inline: clamp(0rem, 1.6vw, 1.5rem); }
.why-choose-one .sec-title__title { font-size: clamp(1.65rem, 2.65vw, 2.5rem); line-height: 1.25; overflow-wrap: anywhere; }
@media (max-width: 1199px) {
  .why-choose-one .ge-why-text { order: -1; }
  .why-choose-one .ge-why-photo { width: 50%; }
  .why-choose-one .why-choose-one__left img,
  .why-choose-one .why-choose-one__right img { aspect-ratio: 1 / 1; max-height: 22rem; }
}

/* Set a common portrait frame without resizing the original source files. */
.team-card__image > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 310 / 417;
  object-fit: cover;
  object-position: center top;
}
.ge-footer-copy {
  max-width: 34ch;
  margin-top: 1.15rem;
  color: #e4e9f4;
  font-size: .94rem;
  line-height: 1.72;
  font-weight: 400;
}
.ge-footer-copy p { margin: 0 0 .75rem; font: inherit; color: inherit; }
.ge-footer-copy p:last-child { margin-bottom: 0; }
.main-footer .footer-widget__links a { color: #d6def0; }

.ge-footer-bottom { width: 100%; margin-inline: auto; text-align: center; }
.ge-footer-bottom .main-footer__copyright { color: #e4e9f4; margin: 0 0 .55rem; }
.ge-footer-notice { color: #c3cce1; font-size: .9rem; line-height: 1.7; max-width: 78ch; margin: 0 auto; }
.main-footer .contact-one__info__text,
.main-footer .main-footer__contact__text { color: #d6def0; }

.main-menu .ge-main-menu > li + li { margin-left: clamp(.7rem, 1.35vw, 1.6rem); }
.main-menu .ge-main-menu > li > a { white-space: nowrap; font-size: clamp(.83rem, 1.04vw, 1rem); }
@media (min-width: 1200px) and (max-width: 1500px) {
  .main-header.sticky-header--normal .main-header__logo { margin-right: clamp(1.25rem, 2.6vw, 3rem); }
}

/* Let the shortcuts sit below the photograph instead of covering the slide. */
.ge-service-shortcuts.feature-one { margin: 0; padding: 0; background: #101b34; }
.ge-service-shortcuts .feature-one__inner { border-top: 0; }
.ge-service-shortcuts .feature-one__item {
  padding: 1.25rem clamp(.9rem, 2vw, 1.5rem);
  justify-content: flex-start !important;
  min-height: 5.5rem;
  gap: 1rem;
}
.ge-service-shortcuts .feature-one__item__icon { font-size: 2rem; }
.ge-service-shortcuts .feature-one__item__title { font-size: 1.05rem; line-height: 1.45; }
.ge-service-shortcuts .feature-one__item__title a { color: #f5f6fa; }
.ge-service-shortcuts .feature-one__item__title a:hover { color: #e9c580; }
.main-slider-one__carousel .owl-item { overflow: hidden; }
.main-slider-one__item { isolation: isolate; }
@media (max-width: 991px) {
  .ge-service-shortcuts .feature-one__item { min-height: 0; border-bottom: 1px solid #293652; }
}
.ge-case-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; }
.ge-case-card { background: #121e37; border: 1px solid #26324e; }
.ge-case-card a { display: flex; flex-direction: column; height: 100%; color: #f5f6fa; }
.ge-case-card a:hover h3 { color: #e9c580; }
.ge-case-card img { display: block; width: 100%; height: auto; aspect-ratio: 740 / 540; object-fit: cover; }
.ge-case-copy { padding: 1.2rem; display: flex; flex-direction: column; gap: .8rem; flex: 1; }
.ge-case-copy h3 { font-size: 1.2rem; line-height: 1.45; margin: 0; color: inherit; }
.ge-case-copy > span { margin-top: auto; color: #e9c580; font-size: .92rem; }
@media (max-width: 767px) { .ge-case-grid { grid-template-columns: 1fr; } }
.ge-contact-form { border-top: 4px solid #c7954a; padding: clamp(1rem,3vw,1.75rem); font-size: 1rem; }
.ge-contact-form .ge-form-title { margin: 0 0 1rem; color: #18243e; font-size: 1.45rem; line-height: 1.35; }
.ge-contact-form .ge-form-fields { gap: 0 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); }
.ge-contact-form .ge-form-fields label:last-child { grid-column: 1 / -1; }
.ge-contact-form label small { color: #615747; font-weight: 400; }
.ge-contact-form input { min-height: 44px; }
.ge-contact-form textarea { min-height: 7rem; }
.ge-contact-form .ge-form-privacy { color: #514637; font-size: .86rem; line-height: 1.65; margin: .75rem 0 1rem; }
.ge-contact-form .ge-form-submit {
  display: inline-flex; justify-content: center; align-items: center;
  min-height: 46px; padding: .65rem 1.2rem; background: #18243e; color: #fff;
  font: inherit; font-weight: 600; line-height: 1.35; border: 0; cursor: pointer;
}
.ge-contact-form .ge-form-submit:hover { background: #2b3b61; }
.ge-contact-form .ge-form-submit:focus-visible { outline: 2px solid #826339; outline-offset: 3px; }
.contact-one .contact-one__info__item { width: 100%; }
.contact-one .contact-one__info__item + .contact-one__info__item { border-top: 1px solid #293652; }
@media (max-width: 575px) {
  .ge-contact-form .ge-form-fields { grid-template-columns: 1fr; }
  .ge-contact-form .ge-form-submit { width: 100%; }
}

/* Clip the animated image and end every slide on the shortcut strip color. */
.main-slider-one,
.main-slider-one__carousel,
.main-slider-one__carousel .owl-stage-outer,
.main-slider-one__item { background-color: #101b34; }
.main-slider-one__carousel .owl-stage-outer,
.main-slider-one__item { overflow: hidden; }
.main-slider-one__item::after {
  inset: 0;
  background:
    linear-gradient(to top, #101b34 0%, rgba(16,27,52,.9) 3%, transparent 19%),
    linear-gradient(90deg, rgba(5,13,34,.87), rgba(5,13,34,.78) 42%, rgba(5,13,34,.36) 74%, rgba(5,13,34,.12));
}
@media (max-width: 767px) {
  .main-slider-one__item::after {
    background: linear-gradient(to top, #101b34, rgba(5,13,34,.78) 18%);
  }
}

/* Consultation form in the same navy and gold palette as the site. */
.ge-consultation-content { max-width: 48rem; margin-inline: auto; }
.ge-consultation-content > h1 { margin: 0 0 1rem; font-size: clamp(1.8rem, 3vw, 2.65rem); }
.ge-contact-form {
  --ge-field-bg: #0c162b;
  --ge-field-border: #42506b;
  --ge-form-ink: #f2f4fa;
  --ge-form-muted: #c4cce0;
  --ge-form-gold: #d7a753;
  padding: clamp(1.15rem, 3vw, 2rem);
  background: #141f37;
  border: 1px solid #364460;
  border-radius: .85rem;
  color: var(--ge-form-ink);
  color-scheme: dark;
  box-shadow: 0 .85rem 2.5rem rgba(1, 6, 16, .2);
}
.ge-contact-form .ge-form-heading { margin-bottom: 1.25rem; padding-bottom: .95rem; border-bottom: 1px solid #35415a; }
.ge-contact-form .ge-form-title { color: var(--ge-form-ink); margin: 0 0 .25rem; font-size: clamp(1.2rem, 2vw, 1.55rem); }
.ge-contact-form .ge-form-heading p { margin: 0; color: var(--ge-form-muted); font-size: .92rem; line-height: 1.55; }
.ge-contact-form label { color: var(--ge-form-ink); font-size: .94rem; line-height: 1.5; margin-bottom: 1rem; }
.ge-contact-form label small, .ge-contact-form .ge-form-privacy { color: var(--ge-form-muted); }
.ge-contact-form input, .ge-contact-form textarea {
  background: var(--ge-field-bg);
  color: var(--ge-form-ink);
  border-color: var(--ge-field-border);
  border-radius: .42rem;
  font-size: 1rem;
}
.ge-contact-form input:focus, .ge-contact-form textarea:focus {
  border-color: var(--ge-form-gold);
  outline: 2px solid var(--ge-form-gold);
  outline-offset: 2px;
}
.ge-contact-form .ge-form-submit {
  gap: .85rem;
  min-height: 48px;
  padding: .75rem 1.15rem;
  border-radius: .42rem;
  background: var(--ge-form-gold);
  color: #111b30;
}
.ge-contact-form .ge-form-submit:hover { background: #e7ba6c; }
.ge-contact-form .ge-form-submit:focus-visible { outline-color: #e7ba6c; }
main.hoc .ge-contact-form .ge-form-privacy a, .ge-contact-form .ge-form-privacy a { color: #e9c580; }
.ge-form-error { background: #141f37; color: #f2f4fa; border: 1px solid #364460; border-radius: .85rem; }
.ge-form-error a { color: #e9c580; }

/* Paint the first slide at its final height while the carousel initializes. */
.main-slider-one__carousel.owl-carousel:not(.owl-loaded) { display: block; }
.main-slider-one__carousel.owl-carousel:not(.owl-loaded) > .item:not(:first-child) { display: none; }
.ge-hero-image-1 { background-image: url(../images/backgrounds/slider-1-1.webp); }
.ge-hero-image-2 { background-image: url(../images/backgrounds/slider-1-2.webp); }
.ge-hero-image-3 { background-image: url(../images/backgrounds/slider-1-3.webp); }
@media (max-width: 767px) {
  .ge-hero-image-1 { background-image: url(../images/backgrounds/slider-1-1-mobile.webp); }
  .ge-hero-image-2 { background-image: url(../images/backgrounds/slider-1-2-mobile.webp); }
  .ge-hero-image-3 { background-image: url(../images/backgrounds/slider-1-3-mobile.webp); }
}
.ge-contact-icon { display: inline-block; width: 1.5rem; margin-right: .5rem; text-align: center; }

/* Use one shortcut strip on the homepage and all inner pages. */
.ge-shortcut-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ge-shortcut {
  display: flex; align-items: center; gap: .9rem; min-width: 0;
  min-height: 6rem; padding: 1.15rem clamp(.85rem, 2vw, 1.4rem);
  color: #f5f6fa; font-size: 1rem; line-height: 1.55;
}
.ge-shortcut + .ge-shortcut { border-inline-start: 1px solid #33405b; }
.ge-shortcut i { flex: none; color: #d7a753; font-size: 1.9rem; }
.ge-shortcut span { min-width: 0; overflow-wrap: anywhere; }
.ge-shortcut:hover { background: #182641; color: #e9c580; }
.ge-shortcut:focus-visible { outline: 2px solid #e9c580; outline-offset: -3px; }
@media (max-width: 767px) {
  .ge-shortcut-grid { grid-template-columns: minmax(0, 1fr); }
  .ge-shortcut { min-height: 0; padding-block: .9rem; }
  .ge-shortcut + .ge-shortcut { border-inline-start: 0; border-top: 1px solid #33405b; }
}
