.elementor-645 .elementor-element.elementor-element-2459b42{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6HeroIn{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-645 .elementor-element.elementor-element-a6HeroBtn .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-645 .elementor-element.elementor-element-3e6c0b4{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6WhatGrid{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6WhatCol{--display:flex;}.elementor-645 .elementor-element.elementor-element-e6bedf6{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6CardsWrap{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6CardsBand{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6CardsGrid{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Card1{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Card2{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Card3{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Card4{--display:flex;}.elementor-645 .elementor-element.elementor-element-82eb34f{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6CandHead{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Cand{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6CandCard{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6CandBtn .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-645 .elementor-element.elementor-element-c0ad252{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpWrap4{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpBand4{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpGrid4{--display:flex;}.elementor-645 .elementor-element.elementor-element-5973a72{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6ProcWrap{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6ProcGrid{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Step1{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Step2{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Step3{--display:flex;}.elementor-645 .elementor-element.elementor-element-52ae2aa{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpWrap6{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpBand6{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpGrid6{--display:flex;}.elementor-645 .elementor-element.elementor-element-9d914d2{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpWrap7{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6SpGrid7{--display:flex;}.elementor-645 .elementor-element.elementor-element-ead0110{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6FaqWrap{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6FaqBand{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6FaqList{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Faq1{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Faq2{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Faq3{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Faq4{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6Faq5{--display:flex;}.elementor-645 .elementor-element.elementor-element-ccfb21f{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6FindWrap{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6FindGrid{--display:flex;}.elementor-645 .elementor-element.elementor-element-a6FindInfo{--display:flex;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS *//* kit-proof: the Elementor kit styles bare <a> at 32px from .elementor-kit-5 a */
body a { font-size: inherit !important; line-height: inherit !important; font-weight: inherit !important; letter-spacing: inherit !important; font-family: inherit !important; }
body .gd-pill { font-size: 17px !important; line-height: 1.2 !important; font-weight: 400 !important; letter-spacing: 0.01em !important; }
body .gd-split__text a { font-size: 17px !important; line-height: 1.6 !important; }
body .gd-what__body a { font-size: 17px !important; line-height: 1.55 !important; }
body .gd-step a { font-size: 15.5px !important; line-height: 1.5 !important; }
body .gd-find__info a { font-size: 17px !important; line-height: 1.55 !important; }


  *, *::before, *::after { box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 150px; }
  body { margin: 0; font-family: Raleway, Helvetica, Arial, sans-serif; color: #0D4E6A; background: #fff; text-wrap: pretty; }
  h1, h2, h3, h4, h5, h6, p, ul, ol, figure, blockquote { margin: 0; }
  ul { padding: 0; list-style: none; }
  img, video, iframe { display: block; max-width: 100%; }
  a { color: inherit; text-decoration: none; }
  a:hover { color: #0D4E6A; }
  button { font: inherit; }

  .skip { position: absolute; left: -9999px; top: 0; z-index: 200; background: #FFE083; color: #0D4E6A; padding: 10px 18px; font-size: 13px; font-weight: 700; }
  .skip:focus { left: 8px; top: 8px; }

  /* ---------------- page atoms ---------------- */
  .gd-wrap { max-width: 1180px; margin-inline: auto; padding-inline: 24px; }
  .gd-band { display: block; background: #FFE083; padding: 44px 30px 52px; text-align: center; }
  .gd-band h2 { font-size: clamp(30px, 4.2vw, 56px); font-weight: 300; line-height: 1.12; color: #fff; }
  .gd-band p, .gd-band h4 { margin: 6px auto 0; max-width: 46ch; font-size: clamp(19px, 2.1vw, 28px); font-weight: 300; line-height: 1.24; color: #1B5C74; }
  .gd-pill { display: inline-flex; align-items: center; gap: 10px; border: 0; border-radius: 30px; background: #0D4E6A; color: #fff; padding: 15px 34px; font-family: inherit; font-size: 17px; font-weight: 400; letter-spacing: 0.01em; text-decoration: none; cursor: pointer; box-shadow: 0 8px 22px rgba(4,26,38,0.22); transition: background 0.18s cubic-bezier(.4,0,.2,1), transform 0.18s cubic-bezier(.4,0,.2,1), box-shadow 0.18s cubic-bezier(.4,0,.2,1); }
  .gd-pill:hover, .gd-pill:focus, .gd-pill:active { background: #0A3D54 !important; color: #fff; }
  .gd-pill:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(4,26,38,0.30); }
  .gd-pill:focus-visible { outline: 3px solid #FFE083; outline-offset: 3px; }
  .gd-pill svg { width: 13px; height: 13px; opacity: 0.85; transition: transform 0.18s cubic-bezier(.4,0,.2,1); }
  .gd-pill:hover svg { transform: translateX(3px); }
  .gd-mark { display: inline; background: #FFE083; box-shadow: 0 0 0 6px #FFE083; color: #0D4E6A; }

    /* ---------------- hero (re-used from the Dental Implants page) ---------------- */
  .gd-hero { position: relative; isolation: isolate; overflow: hidden; text-align: center; background: #FFE083 url("https://www.glodentalstudios.com/wp-content/uploads/2026/08/di134-a.webp") 50% 30% / cover no-repeat; }
  .gd-hero::before { content: ""; position: absolute; inset: 0; background: rgba(255,224,131,0.85); }
  .gd-hero__in { position: relative; max-width: 900px; margin-inline: auto; padding: 118px 24px 40px; display: flex; flex-direction: column; align-items: center; color: #0D4E6A; }
  .gd-hero h1 { max-width: 22ch; font-size: clamp(32px, 4.4vw, 56px); font-weight: 700; line-height: 1.14; letter-spacing: -0.4px; color: #0D4E6A; text-wrap: pretty; }
  .gd-hero__lede { max-width: 66ch; margin: 18px 0 0; font-size: clamp(15px, 1.25vw, 17px); font-weight: 400; line-height: 1.6; color: #0D4E6A; }
  .gd-hero__logo { display: block; width: 74px; height: auto; margin: 30px 0 0; filter: brightness(0) invert(1); opacity: 0.92; }
  .gd-hero__cta { margin: 26px 0 0; }
  /* hero CTA matches the Dental Implants pill exactly */
  .gd-hero__cta .gd-pill { border-radius: 999px; gap: 8px; padding: 12px 30px; font-size: 14px; font-weight: 600; letter-spacing: 0.42px; line-height: 1.2; }
  .gd-hero__cta .gd-pill svg { width: 12px; height: 12px; }
.gd-crumb { margin-top: 18px; color: rgba(13,78,106,0.86); }
  .gd-crumb a { color: #0D4E6A; text-decoration: underline; }
  .gd-crumb a:hover { color: #0D4E6A; opacity: 0.8; }

  /* ---------------- what is (navy 2-col — Dental Implants styling) ---------------- */
  .gd-what { background: #0D4E6A; color: #fff; padding: 74px 0; }
  .gd-what__grid { max-width: 1080px; display: grid; grid-template-columns: 1fr 1.25fr; gap: 68px; align-items: start; }
  .gd-what h2 { font-size: clamp(27px, 3vw, 37px); font-weight: 700; line-height: 1.2; letter-spacing: -0.4px; color: #fff; }
  .gd-what h2 span { color: #FFE083; }
  .gd-what__lede { font-size: 15px; font-weight: 700; line-height: 1.4; margin-bottom: 20px; color: #fff; }
  .gd-what__lede span { color: #FFE083; }
  .gd-what__body { display: block; margin-top: 0; }
  .gd-what__body p { font-size: 14.5px; line-height: 1.72; color: rgba(255,255,255,0.88); max-width: 56ch; }
  .gd-what__body p + p { margin-top: 16px; }

  /* ---------------- 2x2 card grids ---------------- */
  .gd-cards { background: #fff; padding: 84px 0 96px; }
  .gd-cards__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 62px 96px; margin-top: 62px; }
  .gd-card { text-align: center; }
  .gd-card h3 { display: inline-block; max-width: 24ch; background: #FFE083; padding: 5px 12px; font-size: 19px; font-weight: 700; line-height: 1.35; color: #0D4E6A; }
  .gd-card p { margin: 46px auto 0; max-width: 40ch; font-size: 17px; line-height: 1.72; color: #1B5C74; }
  .gd-cards--svc .gd-card p { margin-top: 26px; }

  /* ---------------- candidate ---------------- */
  .gd-cand__head { background: #0D4E6A; color: #fff; padding: 88px 24px 74px; text-align: center; }
  .gd-cand__head h2 { max-width: 24ch; margin-inline: auto; font-size: clamp(32px, 4.4vw, 58px); font-weight: 300; line-height: 1.1; color: #fff; }
  .gd-cand__head p { margin: 20px auto 0; font-size: clamp(19px, 2vw, 26px); font-weight: 300; color: #fff; }
  .gd-cand { position: relative; padding: 78px 24px 64px; background: url("https://www.glodentalstudios.com/wp-content/uploads/2026/08/ed161-31.webp") center / cover no-repeat; }
  .gd-cand::before { content: ""; position: absolute; inset: 0; background: rgba(13,78,106,0.87); }
  .gd-cand__card { position: relative; max-width: 1180px; margin-inline: auto; background: rgba(13,78,106,0.92); padding: 34px; display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
  .gd-cand__card p, .gd-cand__card li { font-size: 17px; line-height: 1.55; color: #fff; }
  .gd-cand__text { display: flex; flex-direction: column; gap: 22px; }
  .gd-cand__text ul { margin: 0; padding-left: 22px; list-style: disc outside; display: flex; flex-direction: column; gap: 2px; }
  .gd-cand__text li { display: list-item; }
  .gd-cand__card img { width: 100%; height: auto; display: block; }
  .gd-cand__cta { position: relative; margin-top: 58px; text-align: center; }
  .gd-cand__cta .gd-pill { background: rgba(13,78,106,0.86); }

  /* ---------------- cost / why / tech two-col ---------------- */
  .gd-split { background: #fff; padding: 0 0 96px; }
  .gd-split__grid { display: grid; grid-template-columns: minmax(0, 470px) minmax(0, 1fr); gap: 64px; align-items: start; margin-top: 44px; }
  .gd-split__grid img { width: 100%; height: auto; display: block; }
  .gd-split__text { display: flex; flex-direction: column; gap: 24px; }
  .gd-split__text p, .gd-split__text li { font-size: 17px; line-height: 1.6; color: #1B5C74; }
  .gd-split__text ul { margin: 0; padding-left: 22px; list-style: disc outside; display: flex; flex-direction: column; gap: 4px; }
  .gd-split__text li { display: list-item; }
  .gd-split__text h3 { font-size: 20px; font-weight: 700; color: #0D4E6A; }
  .gd-split__text a { color: #1B5C74; text-decoration: underline; }
  .gd-split__text a:hover { color: #0D4E6A; }
  .gd-split--rev .gd-split__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 470px); }

  /* ---------------- process ---------------- */
  .gd-proc { background: #0D4E6A; color: #fff; padding: 96px 0 104px; text-align: center; }
  .gd-proc h2 { max-width: 26ch; margin-inline: auto; font-size: clamp(32px, 4.4vw, 58px); font-weight: 300; line-height: 1.1; color: #fff; }
  .gd-proc__sub { margin: 18px auto 0; font-size: clamp(18px, 1.8vw, 22px); font-weight: 300; color: #fff; }
  .gd-proc__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 54px 96px; margin-top: 68px; text-align: left; }
  .gd-step { display: grid; grid-template-columns: auto 1fr; gap: 6px 16px; }
  .gd-step p.gd-step__n { grid-row: span 2; font-size: 54px; font-weight: 700; line-height: 0.9; color: #FFE083; }
  .gd-step h3 { align-self: center; font-size: 20px; font-weight: 700; line-height: 1.2; color: #fff; }
  .gd-step p { font-size: 15.5px; line-height: 1.5; color: #fff; }

  /* ---------------- 7. gallery mosaic ---------------- */
  .gal { position: relative; --gh: clamp(250px, 27vw, 400px); --ggap: 5px; background: #0D4E6A; padding-block: 0; }
  .gal__viewport { overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; scrollbar-width: none; }
  .gal__viewport::-webkit-scrollbar { display: none; }
  .gal__track { display: flex; gap: var(--ggap); height: var(--gh); width: max-content; }
  .gal__group { flex: 0 0 auto; display: flex; flex-direction: column; gap: var(--ggap); height: 100%; }
  .gal__row { display: flex; gap: var(--ggap); min-height: 0; }
  .gal__cell { min-width: 0; overflow: hidden; }
  .gal__cell img { width: 100%; height: 100%; object-fit: cover; cursor: zoom-in; transition: transform .18s cubic-bezier(.4,0,.2,1); }
  .gal__cell:hover img { transform: scale(1.03); }
  .gal__nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 46px; height: 46px; display: grid; place-items: center; border: 0; border-radius: 999px; background: rgba(6,32,45,.45); color: #fff; cursor: pointer; transition: background .18s cubic-bezier(.4,0,.2,1); }
  .gal__nav:hover { background: rgba(6,32,45,.68); }
  .gal__nav:focus-visible { outline: 3px solid #FFE083; outline-offset: 3px; }
  .gal__nav--prev { left: clamp(8px, 1.2vw, 20px); }
  .gal__nav--next { right: clamp(8px, 1.2vw, 20px); }
  .gal__nav[hidden] { display: none; }

  /* gallery lightbox */
  .glb { position: fixed; inset: 0; z-index: 120; display: grid; place-items: center; background: #1a5470; }
  .glb[hidden] { display: none; }
  .glb__fig { margin: 0; display: grid; place-items: center; width: 100%; height: 100%; padding: clamp(16px, 4vw, 58px); }
  .glb__fig img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; box-shadow: 0 28px 70px rgba(4,26,38,.42); }
  .glb__cap { position: absolute; bottom: clamp(14px, 2vw, 26px); left: 0; right: 0; text-align: center; color: rgba(255,255,255,0.86); font-size: 14px; }
  .glb__btn { position: absolute; border: 0; background: none; color: #fff; opacity: .86; cursor: pointer; transition: opacity .18s cubic-bezier(.4,0,.2,1); }
  .glb__btn:hover, .glb__btn:focus, .glb__btn:active { opacity: 1; background: transparent; }
  .glb__btn:focus-visible { outline: 3px solid #FFE083; outline-offset: 4px; }
  .glb__prev { top: 50%; transform: translateY(-50%); left: clamp(4px, 1.4vw, 26px); padding: 18px; }
  .glb__next { top: 50%; transform: translateY(-50%); right: clamp(4px, 1.4vw, 26px); padding: 18px; }
  .glb__close { top: clamp(12px, 1.6vw, 24px); right: clamp(12px, 1.6vw, 24px); padding: 10px; }
  @media (max-width: 640px) { .gal { --gh: clamp(200px, 46vw, 260px); } .gal__nav { width: 38px; height: 38px; } }

  /* ---------------- faq ---------------- */
  .gd-faq { background: #fff; padding: 0 0 92px; }
  .gd-faq__list { display: flex; flex-direction: column; gap: 56px; max-width: 1000px; margin: 56px auto 0; }
  .gd-faq h3 { font-size: 19px; font-weight: 700; color: #0D4E6A; }
  .gd-faq p { margin-top: 18px; max-width: 82ch; font-size: 17px; line-height: 1.85; color: #1B5C74; }

  /* ---------------- find us ---------------- */
  .gd-find__lede { margin: 22px auto 0; max-width: 74ch; font-size: 16px; line-height: 1.6; text-align: center; color: #fff; }
  .gd-find { background: #0D4E6A; color: #fff; padding: 84px 0 96px; }
  .gd-find h2 { font-size: clamp(34px, 4.4vw, 58px); font-weight: 300; text-align: center; color: #fff; }
  .gd-find__grid { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 1fr); gap: 56px; align-items: start; margin-top: 64px; }
  .gd-find iframe { width: 100%; aspect-ratio: 4 / 3; border: 0; display: block; }
  .gd-find__info p { font-size: 17px; line-height: 1.55; color: #fff; }
  .gd-find__info strong { font-weight: 700; }
  .gd-find__info a { color: #fff; text-decoration: underline; }
  .gd-find__hours { margin-top: 4px; }

  @media (max-width: 1120px) {
    .gd-what__grid, .gd-cand__card, .gd-split__grid, .gd-split--rev .gd-split__grid, .gd-find__grid { grid-template-columns: 1fr; }
    .gd-what h2 { max-width: none; }
  }
  @media (max-width: 767px) {
    .gd-hero__in { padding: 96px 18px 34px; }
    .gd-hero__cta { margin-top: 20px; }
    .gd-what, .gd-cards, .gd-proc, .gd-find { padding-left: 0; padding-right: 0; }
    .gd-cards__grid, .gd-proc__grid { grid-template-columns: 1fr; gap: 40px; }
    .gd-band { padding: 30px 18px 36px; }
  }

body .gd-hero__cta .gd-pill { font-size: 14px !important; font-weight: 600 !important; letter-spacing: 0.42px !important; line-height: 1.2 !important; }

body .gd-step p.gd-step__n { font-size: 54px !important; line-height: 0.9 !important; font-weight: 700 !important; color: #FFE083 !important; }

/* ===== GLO-A6645-SHIM START =====
   Page 162 native conversion. Design CSS above stays UNPREFIXED (bare * / html / body rules).
   Everything here is scoped to .elementor-645 and only fights Elementor defaults. */

/* 1. .e-con defaults. The design's plain <div>s are BLOCK flow (margins collapse, auto
      margins centre a full-width box). Elementor makes every container a flex column,
      which breaks both. Default to block, then re-assert the real flex/grid ones. */
.elementor-645 .e-con{--gap:0px;--row-gap:0px;--column-gap:0px;gap:0px;padding:0;display:block}
.elementor-645 .e-con.gd-hero__in{display:flex!important;flex-direction:column!important;align-items:center;position:relative;max-width:900px;margin-inline:auto;padding:118px 24px 40px}
.elementor-645 .e-con.gd-wrap{max-width:1180px;margin-inline:auto;padding-inline:24px}
.elementor-645 .e-con.gd-band{padding:44px 30px 52px}
.elementor-645 .e-con.gd-cand__head{padding:88px 24px 74px}
.elementor-645 .e-con.gd-cand{padding:78px 24px 64px;position:relative}
.elementor-645 .e-con.gd-cand__card{padding:34px;position:relative;max-width:1180px;margin-inline:auto}
@media(max-width:767px){
  .elementor-645 .e-con.gd-hero__in{padding:96px 18px 34px}
  .elementor-645 .e-con.gd-band{padding:30px 18px 36px}
}

/* 2. the real grids and flex columns */
.elementor-645 .e-con.gd-what__grid{display:grid!important;grid-template-columns:1fr 1.25fr;gap:68px;align-items:start;max-width:1080px}
.elementor-645 .e-con.gd-cards__grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:62px 96px;margin-top:62px}
.elementor-645 .e-con.gd-cand__card{display:grid!important;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.elementor-645 .e-con.gd-split__grid{display:grid!important;grid-template-columns:minmax(0,470px) minmax(0,1fr);gap:64px;align-items:start;margin-top:44px}
.elementor-645 .e-con.gd-split--rev .e-con.gd-split__grid{grid-template-columns:minmax(0,1fr) minmax(0,470px)}
.elementor-645 .e-con.gd-proc__grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px 96px;margin-top:68px;text-align:left}
.elementor-645 .e-con.gd-step{display:grid!important;grid-template-columns:auto 1fr;gap:6px 16px}
.elementor-645 .e-con.gd-faq__list{display:flex!important;flex-direction:column!important;gap:56px;max-width:1000px;margin:56px auto 0}
.elementor-645 .e-con.gd-find__grid{display:grid!important;grid-template-columns:minmax(0,560px) minmax(0,1fr);gap:56px;align-items:start;margin-top:64px}
@media(max-width:1120px){
  .elementor-645 .e-con.gd-what__grid,
  .elementor-645 .e-con.gd-cand__card,
  .elementor-645 .e-con.gd-split__grid,
  .elementor-645 .e-con.gd-split--rev .e-con.gd-split__grid,
  .elementor-645 .e-con.gd-find__grid{grid-template-columns:1fr}
}
@media(max-width:767px){
  .elementor-645 .e-con.gd-cards__grid,
  .elementor-645 .e-con.gd-proc__grid{grid-template-columns:1fr;gap:40px}
}

/* 3. THE WIDGET-CONTAINER INTERMEDIARY. A design class that lays out its own children
      (flex + gap) lands on the widget WRAPPER, but the <p>/<ul> children sit one level
      deeper inside .elementor-widget-container — so the flex has nothing to space.
      Push the layout down a level. */
.elementor-645 .gd-split__text > .elementor-widget-container{display:flex;flex-direction:column;gap:24px}
.elementor-645 .gd-cand__text > .elementor-widget-container{display:flex;flex-direction:column;gap:22px}

/* 4. `ch` caps re-measure against the element's own font-size, so the wrapper needs the
      inner tag's size or every cap comes out at the kit's 16px. */
.elementor-645 .gd-hero__lede{font-size:clamp(15px,1.25vw,17px)!important;max-width:66ch!important;margin:18px 0 0!important;width:100%}
.elementor-645 .gd-find__lede{font-size:16px!important;max-width:74ch!important;margin:22px auto 0!important;width:100%}
.elementor-645 .gd-faq__item p{max-width:82ch}

/* 5. headings — kit paints h1-h6 over the class */
.elementor-645 .gd-hero h1{max-width:22ch;margin-inline:auto;font-size:clamp(32px,4.4vw,56px)!important;font-weight:700!important;line-height:1.14!important;letter-spacing:-.4px!important;color:#0D4E6A!important}
.elementor-645 .gd-what__h h2{font-size:clamp(27px,3vw,37px)!important;font-weight:700!important;line-height:1.2!important;letter-spacing:-.4px!important;color:#fff!important}
.elementor-645 .gd-what__h span{color:#FFE083!important}
.elementor-645 .gd-band h2{font-size:clamp(30px,4.2vw,56px)!important;font-weight:300!important;line-height:1.12!important;color:#fff!important}
.elementor-645 .gd-band__sub h4{margin:6px auto 0;max-width:46ch;font-size:clamp(19px,2.1vw,28px)!important;font-weight:300!important;line-height:1.24!important;color:#1B5C74!important}
.elementor-645 .gd-band__sub{font-size:clamp(19px,2.1vw,28px)!important}
.elementor-645 .gd-card__h h3{display:inline-block;max-width:24ch;background:#FFE083;padding:5px 12px;font-size:19px!important;font-weight:700!important;line-height:1.35!important;color:#0D4E6A!important}
.elementor-645 .gd-card__h{font-size:19px!important}
.elementor-645 .gd-cand__head h2{max-width:24ch;margin-inline:auto;font-size:clamp(32px,4.4vw,58px)!important;font-weight:300!important;line-height:1.1!important;color:#fff!important}
.elementor-645 .gd-proc__h h2{max-width:26ch;margin-inline:auto;font-size:clamp(32px,4.4vw,58px)!important;font-weight:300!important;line-height:1.1!important;color:#fff!important}
.elementor-645 .gd-proc__h{font-size:clamp(32px,4.4vw,58px)!important}
.elementor-645 .gd-step h3{align-self:center;font-size:20px!important;font-weight:700!important;line-height:1.2!important;color:#fff!important}
.elementor-645 .gd-faq__item h3{font-size:19px!important;font-weight:700!important;color:#0D4E6A!important}
.elementor-645 .gd-find__h h2{font-size:clamp(34px,4.4vw,58px)!important;font-weight:300!important;text-align:center;color:#fff!important}

/* 6. text-editor: kit colour/size beats the wrapper class. Port the design's
      line-height where it has one; never invent one. */
.elementor-645 .elementor-widget-text-editor,
.elementor-645 .elementor-widget-text-editor :is(p,li,span,b,strong,div,a){color:inherit!important}
.elementor-645 .elementor-widget-text-editor p{margin:0}
.elementor-645 .gd-hero__lede p{font-size:clamp(15px,1.25vw,17px)!important;font-weight:400!important;line-height:1.6!important;color:#0D4E6A!important}
.elementor-645 .gd-crumb{margin-top:18px!important}
.elementor-645 .gd-crumb p{color:rgba(13,78,106,.86)!important}
.elementor-645 .gd-crumb a{color:#0D4E6A!important;font-size:inherit!important;text-decoration:underline}
.elementor-645 .gd-what__lede{margin-bottom:20px!important}
.elementor-645 .gd-what__lede p{font-size:15px!important;font-weight:700!important;line-height:1.4!important;color:#fff!important}
.elementor-645 .gd-what__lede span{color:#FFE083!important}
.elementor-645 .gd-what__body p{font-size:14.5px!important;line-height:1.72!important;color:rgba(255,255,255,.88)!important;max-width:56ch}
.elementor-645 .gd-what__body p+p{margin-top:16px!important}
.elementor-645 .gd-card__p{margin:46px auto 0!important;width:100%}
.elementor-645 .gd-card__p p{max-width:40ch;margin-inline:auto;font-size:17px!important;line-height:1.72!important;color:#1B5C74!important}
.elementor-645 .gd-cand__head p{margin:20px auto 0!important;font-size:clamp(19px,2vw,26px)!important;font-weight:300!important;color:#fff!important}
.elementor-645 .gd-cand__text :is(p,li){font-size:17px!important;line-height:1.55!important;color:#fff!important}
.elementor-645 .gd-cand__text ul{margin:0;padding-left:22px;list-style:disc outside;display:flex;flex-direction:column;gap:2px}
.elementor-645 .gd-cand__text li{display:list-item}
.elementor-645 .gd-split__text :is(p,li){font-size:17px!important;line-height:1.6!important;color:#1B5C74!important}
.elementor-645 .gd-split__text ul{margin:0;padding-left:22px;list-style:disc outside;display:flex;flex-direction:column;gap:4px}
.elementor-645 .gd-split__text li{display:list-item}
.elementor-645 .gd-split__text h3{font-size:20px!important;font-weight:700!important;color:#0D4E6A!important}
.elementor-645 .gd-split__text a{color:#1B5C74!important;text-decoration:underline}
.elementor-645 .gd-proc__sub{margin:18px auto 0!important;font-size:clamp(18px,1.8vw,22px)!important;width:100%}
.elementor-645 .gd-proc__sub p{font-size:clamp(18px,1.8vw,22px)!important;font-weight:300!important;color:#fff!important}
.elementor-645 .gd-step__n p{font-size:54px!important;font-weight:700!important;line-height:.9!important;color:#FFE083!important}
.elementor-645 .gd-step__n{grid-row:span 2}
.elementor-645 .gd-step__p p{font-size:15.5px!important;line-height:1.5!important;color:#fff!important}
.elementor-645 .gd-faq__item p{margin-top:18px!important;font-size:17px!important;line-height:1.85!important;color:#1B5C74!important}
.elementor-645 .gd-find__lede p{font-size:16px!important;line-height:1.6!important;text-align:center;color:#fff!important}
.elementor-645 .gd-find__info p{font-size:17px!important;line-height:1.55!important;color:#fff!important}
.elementor-645 .gd-find__info strong{font-weight:700!important}
.elementor-645 .gd-find__info a{color:#fff!important;text-decoration:underline}
.elementor-645 .gd-find__info .gd-find__hours{margin-top:4px!important}

/* 7. buttons — the design skin goes on the <a>, wrapper carries a6-pill* */
.elementor-645 .a6-pill,.elementor-645 .a6-pill-cand{width:auto!important;max-width:100%}
.elementor-645 .a6-pill{margin:26px 0 0!important}
.elementor-645 .a6-pill-cand{position:relative;margin-top:58px!important;text-align:center}
.elementor-645 :is(.a6-pill,.a6-pill-cand) .elementor-button{display:inline-flex!important;align-items:center;gap:10px;border:0;border-radius:30px!important;background:#0D4E6A!important;color:#fff!important;padding:15px 34px!important;font-size:17px!important;font-weight:400!important;line-height:normal!important;letter-spacing:.01em!important}
.elementor-645 .a6-pill .elementor-button{border-radius:999px!important;gap:8px;padding:12px 30px!important;font-size:14px!important;font-weight:600!important;letter-spacing:.42px!important;line-height:1.2!important}
.elementor-645 .a6-pill-cand .elementor-button{background:rgba(13,78,106,.86)!important}
.elementor-645 :is(.a6-pill,.a6-pill-cand) .elementor-button:hover{background:#0A3D54!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 12px 28px rgba(4,26,38,.30)}
.elementor-645 :is(.a6-pill,.a6-pill-cand) .elementor-button-content-wrapper{display:inline-flex;align-items:center;flex-direction:row}
.elementor-645 :is(.a6-pill,.a6-pill-cand) .elementor-button-text{order:1!important;flex-grow:0}
.elementor-645 :is(.a6-pill,.a6-pill-cand) .elementor-button-icon{display:inline-flex;align-items:center;margin:0;opacity:.85}
.elementor-645 .a6-pill-cand .elementor-button-icon svg{width:13px;height:13px}
.elementor-645 .a6-pill .elementor-button-icon svg{width:12px;height:12px}
@media(max-width:767px){.elementor-645 .a6-pill{margin-top:20px!important}}

/* 8. images */
.elementor-645 .gd-hero__logo{margin:30px 0 0!important;width:auto!important;line-height:0;font-size:0}
.elementor-645 .gd-hero__logo img{display:block;width:74px!important;height:auto!important;filter:brightness(0) invert(1);opacity:.92}
.elementor-645 .gd-cand__card .elementor-widget-image,
.elementor-645 .gd-split__grid .elementor-widget-image{width:100%!important;max-width:100%!important;line-height:0;font-size:0}
.elementor-645 .gd-cand__card img,.elementor-645 .gd-split__grid img{width:100%;height:auto;display:block}

/* 9. gallery + page script stay html widgets; kill the phantom text line box */
.elementor-645 .e-con.gal-wrap,.elementor-645 .e-con.tw-script-wrap{padding:0!important}
.elementor-645 .e-con.gal-wrap>.elementor-widget-html,
.elementor-645 .e-con.tw-script-wrap>.elementor-widget-html{position:static!important;width:100%!important;max-width:100%!important;font-size:0;line-height:0}
.elementor-645 .gd-find__map{width:100%!important;max-width:100%!important;line-height:0;font-size:0}
.elementor-645 .gd-find__map iframe{width:100%;aspect-ratio:4/3;border:0;display:block}
/* ===== GLO-A6645-SHIM END ===== */

/* ===== GLO-A6645-SHIM R2 START =====
   R2a: the .e-con{padding:0} reset (0,2,0) beats every design SECTION rule (0,1,0).
   I re-asserted the inner containers but forgot the sections themselves, so each one
   came up short by exactly its own padding (what -148, cards -180, proc -193, find -191). */
.elementor-645 .e-con.gd-what{padding:74px 0}
.elementor-645 .e-con.gd-cards{padding:84px 0 96px}
.elementor-645 .e-con.gd-split{padding:0 0 96px}
.elementor-645 .e-con.gd-proc{padding:96px 0 104px}
.elementor-645 .e-con.gd-faq{padding:0 0 92px}
.elementor-645 .e-con.gd-find{padding:84px 0 96px}
.elementor-645 .e-con.tw-pt84{padding-top:84px}
@media(max-width:767px){
  .elementor-645 .e-con.gd-what,.elementor-645 .e-con.gd-cards,
  .elementor-645 .e-con.gd-proc,.elementor-645 .e-con.gd-find{padding-left:0;padding-right:0}
}
/* ===== GLO-A6645-SHIM R2 END ===== */

/* ===== GLO-A6645-SHIM R3 START =====
   Every role where the design declares NO line-height inherits `normal`; the kit paints
   1.5 over it. Swept the whole page for that case rather than fixing one at a time.
   (cand__head p +9, proc__sub +7, faq h3 -15 over 5 items, find h2 -11.) */
.elementor-645 .gd-cand__head p{line-height:normal!important}
.elementor-645 .gd-proc__sub,.elementor-645 .gd-proc__sub p{line-height:normal!important}
.elementor-645 .gd-faq__item h3{line-height:normal!important}
.elementor-645 .gd-find__h h2{line-height:normal!important}
.elementor-645 .gd-split__text h3{line-height:normal!important}
/* ===== GLO-A6645-SHIM R3 END ===== */

/* ===== GLO-A6645-SHIM R4 START =====
   The two normal splits open with a .gd-band, so .gd-split__grid{margin-top:44px} is an
   internal margin. The REVERSED split has no band, so its grid is the first child and the
   44px margin collapses out through .gd-wrap and .gd-split (neither has a top border or
   padding) into a gap BEFORE the section. The design absorbs it; Elementor's block
   container did not, leaving a 43px gap. Section height is 627+96=723 either way. */
.elementor-645 .e-con.gd-split--rev .e-con.gd-split__grid{margin-top:0}
/* ===== GLO-A6645-SHIM R4 END ===== */

/* GLO-HEADINGFIX 20260905: .gd-band decks converted h4 -> p for heading hierarchy;
   re-assert the band deck style so the later .gd-faq p rule cannot claim it. */
.elementor-645 .gd-band p{margin:6px auto 0!important;max-width:46ch!important;font-size:clamp(19px,2.1vw,28px)!important;font-weight:300!important;line-height:1.24!important;color:#1B5C74!important;}

/* GLO-CANDGOLD START */
.elementor-645 .gd-cand__cta .elementor-button{background:#FFE083!important;background-color:#FFE083!important;color:#0D4E6A!important;border:0!important;}
.elementor-645 .gd-cand__cta .elementor-button .elementor-button-text{color:#0D4E6A!important;}
.elementor-645 .gd-cand__cta .elementor-button i,.elementor-645 .gd-cand__cta .elementor-button svg{color:#0D4E6A!important;fill:#0D4E6A!important;}
.elementor-645 .gd-cand__cta .elementor-button:hover,.elementor-645 .gd-cand__cta .elementor-button:focus,.elementor-645 .gd-cand__cta .elementor-button:active{background:#F2CE63!important;background-color:#F2CE63!important;color:#0D4E6A!important;}
.elementor-645 .gd-cand__cta .elementor-button:hover .elementor-button-text,.elementor-645 .gd-cand__cta .elementor-button:focus .elementor-button-text{color:#0D4E6A!important;}
.elementor-645 .gd-cand__cta .elementor-button:hover i,.elementor-645 .gd-cand__cta .elementor-button:hover svg{color:#0D4E6A!important;fill:#0D4E6A!important;}
/* GLO-CANDGOLD END *//* End custom CSS */