/* =========================================================================
 * Contact Us — the panel: the form on the left, the information block on the
 * right.
 *
 * The site's dark theme: a graphite page background with an ACF image under a
 * dim layer and a teal glow, and a panel in two parts — the form on a dark
 * surface (the fields of the shared form, cta-forms.css) and the information
 * block with a background photograph under a dark teal gradient, an Outfit
 * heading and teal accent lines. The section is marked data-tall
 * (--ms-scale = 1) and sizes are in px and clamp(). Nothing moves at rest;
 * link and field hover happen on an event. Narrow screens: the block with the
 * H1 on top, the form below.
 * ====================================================================== */

.lmx-ct-inner{position:relative;width:100%;min-height:100vh;background:#050708 !important;color:#fff;font-family:var(--lmx-ms-font,'Hanken Grotesk',Helvetica,Arial,sans-serif);padding:0 var(--lmx-section-padding-x);box-sizing:border-box;overflow:hidden;--ct-accent:#52C7C6;--ct-accent-hi:#83DAD9;--ct-line:rgba(255,255,255,.10);--ct-muted:rgba(255,255,255,.62)}
.lmx-ct-inner *{box-sizing:border-box;min-width:0}

/* --- page background: image under a dim layer plus the glow ----------------- */
.lmx-ct-bg{position:absolute;inset:0;z-index:0;pointer-events:none;background-color:#050708;background-position:center center;background-size:cover;background-repeat:no-repeat}
.lmx-ct-bg::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,8,.86) 0%,rgba(5,7,8,.78) 55%,rgba(5,7,8,.94) 100%)}
.lmx-ct-bg::after{content:'';position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 0%,rgba(82,199,198,.16),transparent 70%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,56px 56px,56px 56px;-webkit-mask-image:radial-gradient(75% 60% at 50% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(75% 60% at 50% 30%,#000 30%,transparent 100%)}

.lmx-ct-wrap{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:clamp(48px,6vw,88px) 0 clamp(64px,8vw,104px)}

/* --- panel ----------------------------------------------------------------- */
.lmx-ct-panel{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.95fr);align-items:stretch;border:1px solid var(--ct-line);border-radius:22px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(82,199,198,.06)}
.lmx-ct-form{grid-column:1;grid-row:1;padding:clamp(28px,4vw,56px) clamp(24px,4vw,56px);background:rgba(8,11,13,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.lmx-ct-info{grid-column:2;grid-row:1;position:relative;display:flex;min-height:100%;color:#fff;isolation:isolate}
.lmx-ct-info__bg{position:absolute;inset:0;z-index:0;background-color:#0b1c1f;background-position:center center;background-size:cover;background-repeat:no-repeat}
.lmx-ct-info__bg::after{content:'';position:absolute;inset:0;background:linear-gradient(200deg,rgba(4,33,31,.55) 0%,rgba(5,12,14,.86) 60%,rgba(5,7,8,.96) 100%)}
.lmx-ct-info__in{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:0;width:100%;padding:clamp(32px,4.5vw,64px) clamp(26px,3.6vw,52px)}
.lmx-ct-info__in::before{content:'';display:block;width:56px;height:2px;margin-bottom:26px;background:linear-gradient(90deg,var(--ct-accent),transparent)}

.lmx-ct-eyebrow{margin:0 0 14px !important;font-family:var(--lmx-ms-font) !important;font-weight:600;font-size:12px !important;letter-spacing:.34em;text-transform:uppercase;color:var(--ct-accent) !important;line-height:1.4 !important}
.lmx-ct-title{margin:0 !important;font-family:var(--lmx-ms-display,'Outfit','Poppins',sans-serif) !important;font-weight:300 !important;font-size:clamp(40px,4.4vw,62px) !important;line-height:1.02 !important;letter-spacing:-.02em;color:#fff !important;text-wrap:balance}
.lmx-ct-text{margin:22px 0 0 !important;max-width:26ch;font-family:var(--lmx-ms-font) !important;font-size:clamp(18px,1.6vw,22px) !important;line-height:1.45 !important;font-weight:400;color:rgba(255,255,255,.88) !important}

.lmx-ct-list{margin:36px 0 0;padding:28px 0 0;border-top:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column;gap:18px}
.lmx-ct-row{margin:0;display:flex;flex-direction:column;gap:6px}
.lmx-ct-dt{display:flex;align-items:center;gap:10px;margin:0;font-family:var(--lmx-ms-font);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ct-accent)}
.lmx-ct-ico{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid rgba(82,199,198,.45);border-radius:8px;color:var(--ct-accent);background:rgba(82,199,198,.08)}
.lmx-ct-ico svg{width:15px;height:15px}
.lmx-ct-dd{margin:0 0 0 38px}
.lmx-ct-link{color:#fff !important;font-family:var(--lmx-ms-font);font-size:18px;line-height:1.35;text-decoration:none !important;border-bottom:1px solid rgba(255,255,255,.28);transition:color .2s ease,border-color .2s ease;overflow-wrap:anywhere}
.lmx-ct-link:hover{color:var(--ct-accent-hi) !important;border-bottom-color:var(--ct-accent)}
.lmx-ct-link:focus-visible{outline:2px solid var(--ct-accent);outline-offset:3px}

.lmx-ct-form__title{margin:0 0 24px !important;font-family:var(--lmx-ms-display,'Outfit','Poppins',sans-serif) !important;font-weight:400 !important;font-size:26px !important;line-height:1.15 !important;color:#fff !important}

/* The shared form fields inside the panel: a 2-column grid, the message full width. */
.lmx-ct-form .lmx-form__fields{gap:20px 22px}
.lmx-ct-form .lmx-form .lmx-form__label{font-size:14px}

/* --- layout by width ------------------------------------------------------------ */
@media (max-width:1100px){
.lmx-ct-panel{grid-template-columns:minmax(0,1.2fr) minmax(300px,.9fr)}
}
@media (max-width:1024px){
.lmx-ct-inner{min-height:0;padding:84px var(--lmx-section-padding-x) 64px}
.lmx-ct-wrap{padding:0}
.lmx-ct-panel{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto}
.lmx-ct-info{grid-column:1;grid-row:1;min-height:360px}
.lmx-ct-form{grid-column:1;grid-row:2;padding:28px 24px 32px}
.lmx-ct-info__in{justify-content:flex-end;padding:40px 28px 34px}
.lmx-ct-text{max-width:none}
}
@media (max-width:640px){
.lmx-ct-inner{padding:76px var(--lmx-section-padding-x) 48px}
.lmx-ct-panel{border-radius:16px}
.lmx-ct-info{min-height:320px}
.lmx-ct-info__in{padding:34px 22px 28px}
.lmx-ct-title{font-size:36px !important}
.lmx-ct-text{font-size:17px !important;margin-top:16px !important}
.lmx-ct-list{margin-top:26px;padding-top:22px;gap:14px}
.lmx-ct-link{font-size:16px}
.lmx-ct-form{padding:24px 18px 28px}
}

@media (prefers-reduced-motion:reduce){
.lmx-ct-inner *{transition:none !important;animation:none !important}
}

/* Offices under the panel (markup printed by lmx_render_offices, data in inc/offices.php). */
.lmx-ct-offices{position:relative;z-index:1;margin:clamp(36px,4vw,56px) auto 0;max-width:1320px}
.lmx-ct-offices .lmx-offices__title{margin:0 0 22px;color:#fff;font-family:var(--lmx-display,"Outfit","Poppins",sans-serif);font-weight:400;font-size:clamp(22px,2.2vw,30px);line-height:1.2}
.lmx-ct-offices .lmx-offices__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 30px;margin:0;padding:0;list-style:none}
.lmx-ct-offices .lmx-offices__item{min-width:0;padding:20px 22px;border:1px solid var(--ct-line);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015))}
.lmx-ct-offices .lmx-offices__country{margin:0 0 10px;color:var(--lmx-teal,#52C7C6);font:600 11px/1.2 var(--lmx-font,"Hanken Grotesk",Helvetica,Arial,sans-serif);letter-spacing:.14em;text-transform:uppercase}
.lmx-ct-offices .lmx-offices__addr{margin:0 0 10px;color:rgba(255,255,255,.82);font:400 13.5px/1.55 var(--lmx-font,"Hanken Grotesk",Helvetica,Arial,sans-serif)}
.lmx-ct-offices .lmx-offices__contact{margin:0;font:400 13.5px/1.55 var(--lmx-font,"Hanken Grotesk",Helvetica,Arial,sans-serif)}
.lmx-ct-offices .lmx-offices__contact a{color:rgba(255,255,255,.82);text-decoration:none;transition:color .18s ease}
.lmx-ct-offices .lmx-offices__contact a:hover{color:var(--lmx-teal,#52C7C6)}
@media (max-width:1024px){.lmx-ct-offices .lmx-offices__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.lmx-ct-offices .lmx-offices__grid{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.lmx-ct-offices .lmx-offices__contact a{transition:none}}
