:root {
  --lp-ink: #102721;
  --lp-ink-deep: #081a16;
  --lp-green: #174d40;
  --lp-green-bright: #286b59;
  --lp-sage: #8da79d;
  --lp-gold: #b58b52;
  --lp-gold-light: #e0c69c;
  --lp-sand: #eee8dd;
  --lp-paper: #f8f6f1;
  --lp-white: #fff;
  --lp-text: #344640;
  --lp-muted: #6d7975;
  --lp-line: #d8ddd8;
  --lp-danger: #93433d;
  --lp-shadow: 0 28px 80px rgba(8, 26, 22, .13);
  --lp-container: 1260px;
  --lp-font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --lp-serif: var(--lp-font-stack);
  --lp-sans: var(--lp-font-stack);
  --lp-ui-sans: var(--lp-font-stack);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--lp-text); background: var(--lp-paper); font-family: var(--lp-sans) !important; font-size: 16px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
body.admin-bar .lp-header { top: 32px; }
img { display: block; max-width: 100%; height: auto; }
a { color: var(--lp-green); text-underline-offset: 4px; }
a:hover { color: var(--lp-gold); }
button, input, textarea, select { font: inherit; font-family: var(--lp-font-stack) !important; }
button, a { -webkit-tap-highlight-color: transparent; }
h1, h2, h3, h4, h5, h6 { font-family: var(--lp-serif) !important; }
.section-content,
.section-content h1,
.section-content h2,
.section-content h3,
.section-content h4,
.section-content h5,
.section-content h6,
.section-content .button,
.section-content label,
.lp-button,
.nav > li > a,
.mobile-sidebar-levels-2 .nav > li > ul > li > a,
.lp-nav__list a { font-family: var(--lp-font-stack) !important; }
h1 { font-size: clamp(3.7rem, 7.4vw, 7.4rem); }
h2 { font-size: clamp(2.7rem, 5vw, 5.2rem); }
h3 { font-size: clamp(1.35rem, 2vw, 1.75rem); }
h1 em, h2 em { color: var(--lp-gold); font-weight: 400; }
p { margin: 0 0 1.25em; }
ul, ol { padding-left: 1.3rem; }
:focus-visible { outline: 3px solid var(--lp-gold); outline-offset: 4px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.lp-container { width: min(calc(100% - 64px), var(--lp-container)); margin-inline: auto; }
.lp-skip-link { position: fixed; top: -100px; left: 20px; z-index: 10000; padding: 12px 18px; color: #fff; background: var(--lp-ink); }
.lp-skip-link:focus { top: 20px; }

/* Header */
.lp-topbar { color: rgba(255,255,255,.72); background: var(--lp-ink-deep); font-size: .68rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.lp-topbar__inner { min-height: 32px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.lp-topbar__inner span:last-child { display: flex; align-items: center; gap: 9px; }
.lp-topbar__inner i { width: 6px; height: 6px; background: #68c294; border-radius: 50%; box-shadow: 0 0 0 4px rgba(104,194,148,.12); }
.lp-header { position: sticky; top: 0; z-index: 1000; background: var(--lp-paper); border-bottom: 1px solid rgba(16,39,33,.11); backdrop-filter: none; -webkit-backdrop-filter: none; }
.lp-header__inner { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.lp-brand { display: inline-flex; align-items: center; gap: 13px; color: var(--lp-ink); text-decoration: none; }
.lp-brand:hover { color: var(--lp-ink); }
.lp-brand__mark { width: 46px; height: 46px; display: grid; place-items: center; color: #fff; background: var(--lp-green); border: 1px solid var(--lp-gold); border-radius: 3px 18px 3px 3px; font-family: var(--lp-serif); font-size: 1.05rem; font-weight: 700; letter-spacing: -.08em; }
.lp-brand__text { display: grid; line-height: 1.05; }
.lp-brand__text strong { font-size: .94rem; letter-spacing: .16em; }
.lp-brand__text small { margin-top: 6px; color: var(--lp-muted); font-size: .59rem; letter-spacing: .16em; text-transform: uppercase; }
.lp-nav { display: flex; align-items: center; gap: 30px; }
.lp-nav__list { display: flex; align-items: center; gap: 27px; margin: 0; padding: 0; list-style: none; }
.lp-nav__list a { position: relative; color: var(--lp-ink); font-size: .81rem; font-weight: 700; text-decoration: none; }
.lp-nav__list a::after { position: absolute; right: 0; bottom: -9px; left: 0; height: 1px; background: var(--lp-gold); content: ""; transform: scaleX(0); transform-origin: right; transition: transform .25s ease; }
.lp-nav__list a:hover::after, .lp-nav__list .current-menu-item > a::after { transform: scaleX(1); transform-origin: left; }
.lp-nav-toggle { display: none; width: 46px; height: 46px; padding: 0; border: 1px solid var(--lp-line); border-radius: 50%; background: transparent; }
.lp-nav-toggle__lines, .lp-nav-toggle__lines::before, .lp-nav-toggle__lines::after { display: block; width: 20px; height: 1px; margin: auto; background: var(--lp-ink); content: ""; transition: .2s ease; }
.lp-nav-toggle__lines::before { transform: translateY(-7px); }
.lp-nav-toggle__lines::after { transform: translateY(6px); }
.lp-nav-toggle[aria-expanded="true"] .lp-nav-toggle__lines { background: transparent; }
.lp-nav-toggle[aria-expanded="true"] .lp-nav-toggle__lines::before { transform: translateY(0) rotate(45deg); }
.lp-nav-toggle[aria-expanded="true"] .lp-nav-toggle__lines::after { transform: translateY(-1px) rotate(-45deg); }

/* Flatsome shell: keep Header Builder placement and style its header details. */
#header #top-bar .html_topbar_left,
#header #top-bar .html_topbar_right { color: rgba(255,255,255,.72); font-size: 11px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
#header #top-bar .html_topbar_right { display: inline-flex; align-items: center; gap: 9px; }
#header #top-bar .html_topbar_right::before { display: block; flex: 0 0 6px; width: 6px; height: 6px; border-radius: 50%; background: #68c294; box-shadow: 0 0 0 4px rgba(104,194,148,.12); content: ""; }
#header .header-main { height: 98px; border-bottom: 1px solid rgba(16,39,33,.11); background: var(--lp-paper); backdrop-filter: none; -webkit-backdrop-filter: none; }
#header .header-main .header-inner { min-height: 78px; }
#header .stuck .header-main { height: 78px !important; }
#header #logo > a.lp-logo-text { display: inline-flex; min-height: 46px; align-items: center; gap: 13px; width: auto; color: var(--lp-ink); white-space: nowrap; }
#header #logo .lp-logo-mark { display: grid; flex: 0 0 46px; width: 46px; height: 46px; place-items: center; border: 1px solid var(--lp-gold); border-radius: 3px 18px 3px 3px; color: #fff; background: var(--lp-green); font-size: 17px; letter-spacing: -.08em; }
#header #logo .lp-logo-copy { display: flex; flex-direction: column; line-height: 1.05; }
#header #logo .lp-logo-name { font-size: 15px; letter-spacing: .16em; text-transform: uppercase; }
#header #logo .lp-logo-copy .logo-tagline { width: auto; margin: 6px 0 0; color: var(--lp-muted); font-size: 9.5px; font-style: normal; line-height: 1.05; letter-spacing: .16em; text-transform: uppercase; white-space: nowrap; }
#header #logo > a.lp-logo-image .logo-tagline { display: block; font-size: 14.4px; }
#header .header-nav-main > li.menu-item > a.nav-top-link { padding-top: 14px; padding-bottom: 14px; color: var(--lp-ink); font-size: 16px; }
#header .header-nav-main.nav-line-bottom > li.menu-item > a::before { height: 1px; background-color: var(--lp-gold); }
#header .header-button-1 .button.primary,
#main-menu .header-button-1 .button.primary { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 8px; border-color: var(--lp-green); color: #fff; background-color: var(--lp-green); }
#header .header-button-1 .button.primary > i.icon-angle-right::before,
#main-menu .header-button-1 .button.primary > i.icon-angle-right::before { content: "↗"; font-family: var(--lp-font-stack); font-size: 17px; }
#header .header-button-1 .button.primary:hover,
#main-menu .header-button-1 .button.primary:hover { border-color: var(--lp-green-bright); color: #fff; background-color: var(--lp-green-bright); }
#header .mobile-nav .nav-icon .button.primary { border-color: var(--lp-green); color: #fff; background-color: var(--lp-green); }

@media (max-width: 849px) {
  #header #logo > a.lp-logo-text { min-height: 40px; }
  #header #logo .lp-logo-mark { flex-basis: 40px; width: 40px; height: 40px; }
}

/* Shared controls */
.lp-button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 12px; padding: 0 25px; border: 1px solid var(--lp-green); border-radius: 2px; color: #fff; background: var(--lp-green); font-size: .78rem; font-weight: 800; letter-spacing: .05em; text-decoration: none; transition: transform .25s ease, box-shadow .25s ease, background .25s ease; }
.lp-button:hover { color: #fff; background: var(--lp-green-bright); box-shadow: 0 14px 30px rgba(16,39,33,.18); transform: translateY(-2px); }
.lp-button--small { min-height: 44px; padding-inline: 19px; }
.lp-button--light { color: var(--lp-ink); background: #fff; border-color: #fff; }
.lp-button--light:hover { color: var(--lp-ink); background: var(--lp-gold-light); border-color: var(--lp-gold-light); }
.lp-button--glass { color: #fff; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.42); backdrop-filter: blur(12px); }
.lp-button--glass:hover { color: #fff; background: rgba(255,255,255,.16); }
.lp-button-row { display: flex; flex-wrap: wrap; gap: 12px; margin: 34px 0 0; }
.lp-eyebrow, .lp-index-label { margin: 0 0 20px; color: var(--lp-gold); font-family: var(--lp-ui-sans); font-size: .72rem; font-weight: 700; letter-spacing: .13em; line-height: 1.5; }
.lp-eyebrow--light { color: var(--lp-gold-light); }
.lp-index-label { color: var(--lp-green); }
.lp-muted { color: var(--lp-muted); font-size: .88rem; }
.lp-arrow-link { display: inline-flex; align-items: center; gap: 18px; color: var(--lp-ink); font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.lp-arrow-link b { width: 43px; height: 43px; display: grid; place-items: center; border: 1px solid rgba(16,39,33,.28); border-radius: 50%; font-size: 1.1rem; font-weight: 400; transition: .25s ease; }
.lp-arrow-link:hover { color: var(--lp-green); }
.lp-arrow-link:hover b { color: #fff; background: var(--lp-green); border-color: var(--lp-green); transform: rotate(45deg); }
.lp-arrow-link--light { color: #fff; }
.lp-arrow-link--light b { border-color: rgba(255,255,255,.35); }
.lp-arrow-link--light:hover { color: var(--lp-gold-light); }
.lp-arrow-link--light:hover b { color: var(--lp-ink); background: #fff; border-color: #fff; }
.lp-visual { position: relative; margin: 0; overflow: hidden; background: #dfe4df; }
.lp-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.lp-visual:hover img { transform: scale(1.018); }

/* Stats and general sections */
.lp-stats { position: relative; z-index: 5; background: #fff; border-bottom: 1px solid var(--lp-line); }
.lp-stats__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.lp-stats__grid > div { min-height: 170px; display: flex; flex-direction: column; justify-content: center; padding: 30px 38px; border-right: 1px solid var(--lp-line); }
.lp-stats__grid > div:first-child { border-left: 1px solid var(--lp-line); }
.lp-stats--v2 .lp-stats__grid > div > span { order: 2; margin-top: 13px; color: var(--lp-muted); font-size: .67rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.lp-stats strong { color: var(--lp-ink); font-family: var(--lp-serif); font-size: clamp(2.7rem, 4vw, 4.4rem); font-weight: 400; line-height: .9; }
.lp-stats strong small { margin-left: 7px; color: var(--lp-gold); font-family: var(--lp-sans); font-size: .66rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.lp-section { padding: 130px 0; }
.lp-section--sand { background: var(--lp-sand); }
.lp-section--ink { color: rgba(255,255,255,.7); background: var(--lp-ink); }
.lp-section-action { display: flex; justify-content: flex-end; margin-top: 48px; }
.lp-prose { max-width: 820px; }
.lp-prose > *:first-child { margin-top: 0; }
.lp-prose > *:last-child { margin-bottom: 0; }
.lp-prose h2, .lp-prose h3 { margin-top: 1.6em; }
.lp-prose--article p, .lp-prose--article li { color: #465853; }
.lp-prose--lead { font-size: 1.08rem; }
.lp-prose--article { max-width: 800px; font-size: 1.08rem; }
.lp-prose--article h2 { font-size: clamp(2rem, 4vw, 3.4rem); }
.lp-prose--article h3 { font-size: 1.75rem; }

/* Homepage content */
.lp-home-story__grid { display: grid; grid-template-columns: 1.06fr .94fr; align-items: center; gap: clamp(60px, 9vw, 140px); }
.lp-home-story__visual { min-height: 650px; }
.lp-home-story__content { padding: 30px 0; }
.lp-home-story__content h2 { margin-bottom: 38px; }
.lp-home-story__content .lp-arrow-link { margin-top: 28px; }
.lp-masterplan-visual { aspect-ratio: 1.8; margin-bottom: 22px; border: 1px solid rgba(16,39,33,.12); }
.lp-feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.lp-feature-grid article { min-height: 250px; padding: 34px 30px; border: 1px solid rgba(255,255,255,.15); border-right: 0; }
.lp-feature-grid article:last-child { border-right: 1px solid rgba(255,255,255,.15); }
.lp-feature-grid article > span { display: block; margin-bottom: 65px; color: var(--lp-gold); font-family: var(--lp-serif); font-size: 1.45rem; }
.lp-feature-grid p { margin: 0; color: rgba(255,255,255,.6); font-size: .86rem; }
.lp-feature-grid--light { margin-top: 46px; border-top: 1px solid rgba(16,39,33,.18); }
.lp-feature-grid--light article { min-height: 220px; border-color: rgba(16,39,33,.18); border-top: 0; }
.lp-feature-grid--light article:last-child { border-right-color: rgba(16,39,33,.18); }
.lp-feature-grid--light p { color: var(--lp-muted); }
.lp-legal-preview { background: #fff; }
.lp-progress-preview { color: #fff; background: var(--lp-ink); }
.lp-progress-preview h2, .lp-progress-preview h3 { color: #fff; }
.lp-progress-preview__grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: stretch; gap: clamp(60px, 8vw, 120px); }
.lp-progress-preview:not(.lp-progress-preview--v2) .lp-progress-preview__visual { min-height: 720px; }
.lp-progress-preview .lp-index-label { color: var(--lp-gold-light); }
.lp-timeline--stacked { margin: 50px 0 28px; }
.lp-timeline--stacked .lp-timeline__item { display: grid; grid-template-columns: 78px 1fr; gap: 24px; padding: 22px 0; border-top: 1px solid rgba(255,255,255,.14); }
.lp-timeline--stacked time { color: var(--lp-gold-light); font-size: .66rem; font-weight: 800; letter-spacing: .08em; }
.lp-timeline--stacked h3 { margin-bottom: 8px; font-family: var(--lp-sans); font-size: 1.02rem; font-weight: 700; letter-spacing: -.02em; }
.lp-timeline--stacked h3 a { color: #fff; text-decoration: none; }
.lp-timeline--stacked p { margin: 0; color: rgba(255,255,255,.55); font-size: .8rem; line-height: 1.55; }
.lp-news-preview { background: var(--lp-paper); }
.lp-news-featured-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.lp-news-featured { display: grid; grid-template-columns: .95fr 1.05fr; background: #fff; border: 1px solid var(--lp-line); }
.lp-news-featured__image { min-height: 330px; overflow: hidden; }
.lp-news-featured__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.lp-news-featured:hover .lp-news-featured__image img { transform: scale(1.03); }
.lp-news-featured > div { padding: 34px; }
.lp-news-featured time, .lp-news-card time { color: var(--lp-gold); font-size: .68rem; font-weight: 800; letter-spacing: .12em; }
.lp-news-featured h2, .lp-news-featured h3 { margin: 18px 0; font-size: clamp(1.6rem, 2.4vw, 2.25rem); }
.lp-news-featured h2 a, .lp-news-featured h3 a { color: var(--lp-ink); text-decoration: none; }
.lp-news-featured p { margin: 0; color: var(--lp-muted); font-size: .85rem; }

/* Homepage v2 — translated from the AI art-direction concept */
.lp-stats--v2 .lp-stats__grid > div { position: relative; min-height: 120px; display: grid; grid-template-columns: 42px 1fr; grid-template-rows: auto auto; align-content: center; column-gap: 15px; padding-inline: 27px; }
.lp-stats--v2 i { grid-row: 1 / span 2; align-self: center; color: var(--lp-gold); font-family: var(--lp-serif); font-size: 2.3rem; font-style: normal; line-height: 1; }
.lp-stats--v2 strong { font-size: clamp(2.35rem, 3.4vw, 3.6rem); }
.lp-stats--v2 span { margin-top: 7px; }
.lp-stats--v3 { position: relative; overflow: hidden; background-color: #fbfaf6; background-image: radial-gradient(rgba(181,139,82,.06) .65px, transparent .65px); background-size: 6px 6px; border: 0; }
.lp-stats--v3 .lp-stats__grid { position: relative; z-index: 2; display: flex; flex-wrap: wrap; }
.lp-stats--v3 .lp-stats__grid > div { border: 0; }
.lp-stats--v3 .lp-stat { position: relative; }
.lp-stats--v3 .lp-stat + .lp-stat::before { position: absolute; top: 50%; left: 0; width: 10px; height: 32px; background: radial-gradient(circle at 50% 4px, rgba(181,139,82,.55) 0 1.4px, transparent 1.7px), radial-gradient(circle at 50% 50%, #fbfaf6 0 2.2px, var(--lp-gold) 2.4px 3.3px, transparent 3.6px), radial-gradient(circle at 50% calc(100% - 4px), rgba(181,139,82,.55) 0 1.4px, transparent 1.7px); content: ""; pointer-events: none; transform: translate(-50%, -50%); }
.lp-stat__icon { width: 58px; height: 58px; display: grid; flex: 0 0 58px; place-items: center; color: var(--lp-gold); }
.lp-stat__icon img { width: 100%; height: 100%; object-fit: contain; }
.lp-stat__content { min-width: 0; }
.lp-stats__botanical { position: absolute; top: 10px; bottom: 0; z-index: 1; width: 105px; height: 140px; color: var(--lp-sage); fill: none; opacity: .22; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.15; }
.lp-stats__botanical--left { left: -34px; }
.lp-stats__botanical--right { right: -34px; transform: scaleX(-1); }
.lp-home-v2-story { background: #fbfaf7; }
.lp-home-v2-story__visual { box-shadow: var(--lp-shadow); }
.lp-home-principle { display: flex; min-height: 76px; align-items: center; padding: 23px 0; border-bottom: 1px solid var(--lp-line); }
.lp-home-principle:first-child { border-top: 1px solid var(--lp-line); }
.lp-home-principle__number { width: 30px; height: 30px; display: grid; flex: 0 0 30px; place-items: center; color: var(--lp-gold); border: 1px solid rgba(181,139,82,.55); border-radius: 50%; font-family: var(--lp-serif); font-size: .75rem; }
.lp-home-v2-project__visual { box-shadow: 0 24px 60px rgba(8,26,22,.1); }
.lp-home-v2-project__facts { border-top: 1px solid rgba(16,39,33,.18); border-left: 1px solid rgba(16,39,33,.18); }
.lp-home-v2-project__facts > .col { min-width: 0 ;}
.lp-home-v2-project__facts > .col > .col-inner { min-height: 112px; display: flex; flex-direction: column; justify-content: space-between; padding: 17px; border-right: 1px solid rgba(16,39,33,.18); border-bottom: 1px solid rgba(16,39,33,.18); }
.lp-project-fact__number { color: var(--lp-gold); font-family: var(--lp-serif); }
.lp-home-infra { background: #fff; }
.lp-home-infra__grid { padding: 0; }
.home .lp-home-infra__cards > .col { min-width: 0; }
.lp-infra-card > .col-inner { position: relative; padding-bottom: 25px; border-bottom: 1px solid var(--lp-line); }
.lp-infra-card__image { position: relative; margin: 0 0 22px; overflow: hidden; background: #dfe4df; }
.lp-infra-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.lp-infra-card:hover .lp-infra-card__image img { transform: scale(1.025); }
.lp-infra-card__number { color: var(--lp-gold); font-family: var(--lp-serif); }
.lp-legal-preview--v2 { background: #edf2ee; }
.lp-legal-preview--v2 .lp-document-card { background: rgba(255,255,255,.86); }
.lp-legal-preview--v2 .lp-document-card { min-height: 315px; padding: 25px; }
.lp-legal-preview--v2 .lp-document-card__topline { margin-bottom: 26px; }
.lp-legal-preview--v2 .lp-document-card__title { font-size: 1.38rem; }
.lp-progress-preview--v2 { color: var(--lp-text); background: var(--lp-paper); }
.lp-progress-preview--v2 .lp-index-label { color: var(--lp-green); }
.lp-progress-preview--v2 .lp-progress-preview__grid { grid-template-columns: 1.05fr .95fr; align-items: center; }
.lp-progress-preview--v2 .lp-progress-preview__visual { box-shadow: var(--lp-shadow); }
.lp-progress-preview--v2 .lp-timeline--stacked { margin: 32px 0 22px; }
.lp-progress-preview--v2 .lp-timeline--stacked .lp-timeline__item { padding: 15px 0; }
.lp-progress-preview--v2 .lp-timeline--stacked .lp-timeline__item { border-color: var(--lp-line); }
.lp-progress-preview--v2 .lp-timeline--stacked time { color: var(--lp-gold); }
.lp-progress-preview--v2 .lp-timeline--stacked h3 a { color: var(--lp-ink); }
.lp-progress-preview--v2 .lp-timeline--stacked p { color: var(--lp-muted); }
.lp-news-preview--v2 { background: #fbfaf7; }
.lp-news-preview--v2 .lp-news-featured__image { min-height: 230px; }
.lp-news-preview--v2 .lp-news-featured > div { padding: 27px; }
.lp-cta--image { position: relative; overflow: hidden; background: var(--lp-green); }
.lp-cta--image .lp-cta__media, .lp-cta--image .lp-cta__shade { position: absolute; inset: 0; }
.lp-cta--image .lp-cta__media img { width: 100%; height: 100%; object-fit: cover; object-position: center 63%; }
.lp-cta--image .lp-cta__shade { background: linear-gradient(90deg, rgba(11,67,52,.96), rgba(11,67,52,.83) 55%, rgba(11,67,52,.48)); }
.lp-cta--image .lp-cta__inner { position: relative; z-index: 2; }
.lp-cta--image .lp-cta__inner > div > p:last-child { max-width: 640px; margin: 22px 0 0; color: rgba(255,255,255,.72); }

/* Legal cards */
.lp-document-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.lp-document-card { position: relative; display: flex; min-height: 360px; flex-direction: column; padding: 30px; overflow: hidden; background: var(--lp-paper); border: 1px solid var(--lp-line); transition: color .3s ease, background .3s ease, transform .3s ease; }
.lp-document-card::before { position: absolute; top: 0; right: 0; width: 48px; height: 48px; border-bottom: 1px solid var(--lp-line); border-left: 1px solid var(--lp-line); content: "↗"; display: grid; place-items: center; color: var(--lp-gold); transition: .3s ease; }
.lp-document-card:hover { color: rgba(255,255,255,.75); background: var(--lp-ink); border-color: var(--lp-ink); transform: translateY(-5px); }
.lp-document-card:hover::before { color: #fff; border-color: rgba(255,255,255,.18); }
.lp-document-card__topline { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-right: 40px; margin-bottom: 38px; }
.lp-document-card__topline time { color: var(--lp-muted); font-size: .68rem; font-weight: 700; }
.lp-document-card:hover .lp-document-card__topline time { color: rgba(255,255,255,.5); }
.lp-document-card__title { max-width: 90%; font-size: 1.55rem; line-height: 1.08; }
.lp-document-card__title a { color: var(--lp-ink); text-decoration: none; }
.lp-document-card:hover .lp-document-card__title a { color: #fff; }
.lp-document-card p { margin: 0 0 6px; color: var(--lp-muted); font-size: .78rem; }
.lp-document-card:hover p { color: rgba(255,255,255,.58); }
.lp-document-card__note { margin-top: 13px !important; padding-top: 14px; border-top: 1px solid var(--lp-line); }
.lp-document-card:hover .lp-document-card__note { border-color: rgba(255,255,255,.15); }
.lp-document-card__actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 24px; }
.lp-document-card__actions .lp-text-link { color: var(--lp-green); font-size: .72rem; font-weight: 800; text-decoration: none; }
.lp-document-card:hover .lp-text-link { color: var(--lp-gold-light); }
.lp-status { display: inline-flex; width: fit-content; align-items: center; min-height: 27px; padding: 0 10px; border-radius: 999px; font-size: .6rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.lp-status--verified { color: #17503c; background: #d9eee4; }
.lp-status--reference { color: #71501b; background: #f2e6cc; }
.lp-status--awaiting { color: #813b35; background: #f3deda; }
.lp-status--internal { color: #4e5351; background: #e3e5e4; }
.lp-legend { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }

/* Editorial heroes */
.lp-editorial-hero { position: relative; min-height: 680px; display: flex; align-items: flex-end; overflow: hidden; color: #fff; background: var(--lp-ink); }
.lp-editorial-hero__media, .lp-editorial-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.lp-editorial-hero__media { object-fit: cover; }
.lp-editorial-hero__shade { background: linear-gradient(90deg, rgba(5,19,16,.88), rgba(5,19,16,.48) 55%, rgba(5,19,16,.12)), linear-gradient(0deg, rgba(5,19,16,.62), transparent 55%); }
.lp-editorial-hero__content { position: relative; z-index: 2; padding-block: 120px 90px; }
.lp-editorial-hero__content h1 { max-width: 970px; color: #fff; font-size: clamp(4rem, 8vw, 8rem); }
.lp-editorial-hero__content > p:last-child { max-width: 680px; color: rgba(255,255,255,.73); font-size: 1.06rem; }
.lp-editorial-hero--legal .lp-editorial-hero__media, .lp-editorial-hero--legal-detail .lp-editorial-hero__media { object-position: center; }
.lp-editorial-hero--about .lp-editorial-hero__media, .lp-editorial-hero--news .lp-editorial-hero__media { object-position: center 48%; }
.lp-editorial-hero--progress .lp-editorial-hero__media { object-position: center; }
.lp-editorial-hero--compact { min-height: 560px; }
.lp-editorial-hero--compact .lp-editorial-hero__content { padding-block: 100px 75px; }
.lp-editorial-hero--compact .lp-editorial-hero__content h1 { max-width: 1020px; font-size: clamp(3.2rem, 6vw, 6rem); }

/* About */
.lp-company-strip { margin-top: 90px; border-block: 1px solid var(--lp-line); }
.lp-company-strip > .col { padding: 0 !important; }
.lp-company-strip > .col > .col-inner { min-height: 140px; display: flex; flex-direction: column; justify-content: center; padding: 24px 32px; border-right: 1px solid var(--lp-line); }
.lp-company-strip > .col:first-child > .col-inner { padding-left: 0; }
.lp-company-strip > .col:last-child > .col-inner { border: 0; }
.lp-values__grid { border-top: 1px solid rgba(255,255,255,.18); }
.lp-value-card { flex: 1 1 0; min-height: 330px; padding: 38px; border-right: 1px solid rgba(255,255,255,.18); }
.lp-value-card:last-child { border: 0; }
.lp-value-card__number { display: block; margin: 0 0 85px; color: var(--lp-gold-light); font-family: var(--lp-serif); font-size: 1.5rem; }
.lp-about-commitment__image { min-height: 580px; }
.lp-about-commitment__image img { height: 100%; object-fit: cover; }

/* Archives */
.lp-legal-library__intro { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 100px; margin-bottom: 70px; }
.lp-legal-library__intro > div:last-child > p { color: var(--lp-muted); }
.lp-document-grid--library { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pagination { margin-top: 50px; }
.nav-links { display: flex; gap: 8px; }
.page-numbers { min-width: 42px; min-height: 42px; display: grid; place-items: center; border: 1px solid var(--lp-line); color: var(--lp-ink); text-decoration: none; }
.page-numbers.current, .page-numbers:hover { color: #fff; background: var(--lp-green); border-color: var(--lp-green); }
.lp-progress-journal__heading { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; margin-bottom: 50px; }
.lp-progress-journal__heading > p:last-child { max-width: 500px; color: var(--lp-muted); }
.lp-progress-list { border-top: 1px solid var(--lp-ink); }
.lp-progress-entry { display: grid; grid-template-columns: 70px 130px minmax(0, 1fr) 54px; align-items: center; gap: 28px; padding: 38px 0; border-bottom: 1px solid var(--lp-line); }
.lp-progress-entry__number { color: var(--lp-gold); font-family: var(--lp-serif); font-size: 1.55rem; }
.lp-progress-entry time { color: var(--lp-muted); font-size: .68rem; font-weight: 800; letter-spacing: .1em; }
.lp-progress-entry h2 { margin: 0 0 9px; font-size: clamp(1.6rem, 3vw, 2.5rem); }
.lp-progress-entry h2 a { color: var(--lp-ink); text-decoration: none; }
.lp-progress-entry p { max-width: 720px; margin: 0; color: var(--lp-muted); font-size: .88rem; }
.lp-entry-arrow { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid var(--lp-line); border-radius: 50%; color: var(--lp-ink); text-decoration: none; transition: .2s ease; }
.lp-progress-entry:hover .lp-entry-arrow { color: #fff; background: var(--lp-green); border-color: var(--lp-green); transform: rotate(45deg); }
.lp-news-featured-grid--archive { grid-template-columns: 1fr; }
.lp-news-featured-grid--archive .lp-news-featured { grid-template-columns: .8fr 1.2fr; }
.lp-news-featured-grid--archive .lp-news-featured__image { min-height: 460px; }
.lp-news-featured-grid--archive .lp-news-featured > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(40px, 7vw, 90px); }
.lp-news-featured-grid--archive .lp-arrow-link { margin-top: 32px; }

/* Contact */
.lp-contact-stage { min-height: 820px; display: grid; grid-template-columns: 1.05fr .95fr; background: #fff; }
.lp-contact-stage__visual { position: relative; min-height: 820px; display: flex; align-items: flex-end; overflow: hidden; color: #fff; }
.lp-contact-stage__visual > img, .lp-contact-stage__shade { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lp-contact-stage__shade { background: linear-gradient(0deg, rgba(5,19,16,.85), rgba(5,19,16,.12) 75%), linear-gradient(90deg, rgba(5,19,16,.42), transparent); }
.lp-contact-stage__copy { position: relative; z-index: 2; max-width: 760px; padding: clamp(50px, 7vw, 100px); }
.lp-contact-stage__copy h1 { color: #fff; font-size: clamp(3.4rem, 6.4vw, 6.8rem); }
.lp-contact-stage__copy > p:last-child { max-width: 600px; color: rgba(255,255,255,.72); }
.lp-contact-stage__form { display: grid; place-items: center; padding: 70px clamp(30px, 6vw, 90px); }
.lp-contact-stage__form-inner { width: min(100%, 600px); }
.lp-contact-stage__form h2 { font-size: clamp(2.7rem, 4vw, 4.3rem); }
.lp-contact-card { padding-top: 20px; }
.lp-contact-form { display: grid; gap: 20px; }
.lp-contact-form label { display: grid; gap: 8px; color: var(--lp-ink); font-size: .72rem; font-weight: 800; letter-spacing: .04em; }
.lp-contact-form input[type="text"], .lp-contact-form input[type="email"], .lp-contact-form input[type="tel"], .lp-contact-form textarea { width: 100%; min-height: 54px; padding: 13px 14px; color: var(--lp-text); background: transparent; border: 0; border-bottom: 1px solid #aeb8b3; border-radius: 0; outline: none; }
.lp-contact-form input:focus, .lp-contact-form textarea:focus { border-color: var(--lp-green); box-shadow: 0 1px 0 var(--lp-green); }
.lp-contact-form textarea { resize: vertical; }
.lp-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.lp-consent { grid-template-columns: auto 1fr !important; align-items: start; color: var(--lp-muted) !important; font-weight: 500 !important; letter-spacing: 0 !important; }
.lp-consent input { width: 17px; height: 17px; margin-top: 4px; accent-color: var(--lp-green); }
.lp-consent a { color: var(--lp-green); }
.lp-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.lp-alert { margin-bottom: 20px; padding: 14px 16px; font-size: .88rem; }
.lp-alert--success { color: #174b39; background: #dff1e7; }
.lp-alert--error { color: #7a2929; background: #f8e3e1; }
.lp-contact-info { background: var(--lp-ink); }
.lp-contact-info .lp-container { display: grid; grid-template-columns: 1fr .65fr 1.35fr .9fr; }
.lp-contact-info .lp-container > div { min-height: 190px; display: flex; flex-direction: column; justify-content: center; padding: 28px 34px; border-right: 1px solid rgba(255,255,255,.13); }
.lp-contact-info .lp-container > div:first-child { border-left: 1px solid rgba(255,255,255,.13); }
.lp-contact-info span { color: rgba(255,255,255,.46); }
.lp-contact-info strong { margin-top: 11px; color: #fff; font-family: var(--lp-serif); font-size: 1rem; font-weight: 500; line-height: 1.45; }

/* Batch D contact content uses Builder section/row/column controls. */
.lp-contact-builder .lp-contact-stage--builder { min-height: 0; display: flex; grid-template-columns: none; background: #fff; }
.lp-contact-builder .lp-contact-stage--builder > .lp-contact-stage__visual { min-height: 0; display: block; padding: 0; }
.lp-contact-builder .lp-contact-stage__banner { width: 100%; }
.lp-contact-builder .lp-contact-stage__banner-copy h1 { color: #fff; font-size: clamp(2.75rem, 4.5vw, 5rem); line-height: 1.05; }
.lp-contact-builder .lp-contact-stage__title--accent { font-style: italic; }
.lp-contact-builder .lp-contact-stage__banner-copy .lp-contact-stage__description { max-width: 600px; color: rgba(255,255,255,.72); }
.lp-contact-builder .lp-contact-stage--builder > .lp-contact-stage__form { min-height: 0; display: flex; align-items: center; justify-content: center; padding: 48px clamp(24px, 4vw, 64px); }
.lp-contact-builder .lp-contact-stage__form-inner { width: min(100%, 560px); margin-inline: auto; }
.lp-contact-builder .lp-contact-stage__form-inner .section-title-container { width: 100%; max-width: none; margin: 0 0 10px; padding: 0; }
.lp-contact-builder .lp-contact-stage__form-inner .section-title { border: 0; }
.lp-contact-builder .lp-contact-stage__form-inner .section-title > b { display: none; }
.lp-contact-builder .lp-contact-stage__form-inner .section-title-main { display: block; margin: 0; padding: 0; border: 0; font-size: clamp(1.8rem, 2.5vw, 2.4rem); line-height: 1.12; }
.lp-contact-builder .lp-contact-form { gap: 16px; }
.lp-contact-builder .lp-contact-form label { gap: 6px; font-size: .76rem; }
.lp-contact-builder .lp-contact-form input[type="text"],
.lp-contact-builder .lp-contact-form input[type="email"],
.lp-contact-builder .lp-contact-form input[type="tel"],
.lp-contact-builder .lp-contact-form textarea { min-height: 48px; padding: 10px 13px; background: #fbfcfb; border: 1px solid #d6dfda; border-radius: 3px; }
.lp-contact-builder .lp-contact-form textarea { min-height: 82px; }
.lp-contact-builder .lp-consent { font-size: .76rem; line-height: 1.5; }
.lp-contact-info--builder .lp-container { display: flex; grid-template-columns: none; }
.lp-contact-info--builder .lp-container > .col { min-height: 0; display: flex; flex-direction: column; justify-content: center; padding: 0; }

/* Single content */
.lp-content-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 100px; align-items: start; }
.lp-meta-panel { position: sticky; top: 160px; padding: 32px; background: #fff; border: 1px solid var(--lp-line); box-shadow: 0 16px 50px rgba(8,26,22,.06); }
.lp-meta-panel dl { margin: 24px 0 0; }
.lp-meta-panel dl div { padding: 15px 0; border-bottom: 1px solid var(--lp-line); }
.lp-meta-panel dt { color: var(--lp-muted); font-size: .63rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.lp-meta-panel dd { margin: 5px 0 0; color: var(--lp-ink); font-family: var(--lp-serif); font-size: 1.05rem; }
.lp-meta-panel .lp-button { width: 100%; margin-top: 26px; }
.lp-meta-panel__back { display: block; margin-top: 22px; color: var(--lp-muted); font-size: .72rem; text-align: center; text-decoration: none; }
.lp-document-disclaimer { margin-top: 42px !important; padding: 24px; color: var(--lp-muted) !important; background: var(--lp-sand); border-left: 3px solid var(--lp-gold); font-size: .86rem; }
.lp-article-back { margin-top: 70px; padding-top: 28px; border-top: 1px solid var(--lp-line); }

/* CTA and footer */
.lp-cta { color: #fff; background: var(--lp-green); }
.lp-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.lp-footer { color: rgba(255,255,255,.62); background: var(--lp-ink-deep); }
.lp-footer__statement { position: relative; min-height: 470px; display: flex; flex-direction: column; justify-content: center; padding-block: 80px; border-bottom: 1px solid rgba(255,255,255,.12); }
.lp-footer__statement h2 { max-width: 900px; margin: 0; color: #fff; font-size: clamp(3.2rem, 6vw, 6rem); }
.lp-footer__circle-link { position: absolute; right: 0; bottom: 85px; width: 138px; height: 138px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; color: #fff; background: var(--lp-green); border: 1px solid rgba(255,255,255,.24); border-radius: 50%; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; transition: .25s ease; }
.lp-footer__circle-link b { font-size: 1.2rem; font-weight: 400; }
.lp-footer__circle-link:hover { color: var(--lp-ink); background: var(--lp-gold-light); transform: rotate(4deg); }
.lp-footer__circle-link--light { position: static; flex: 0 0 auto; color: var(--lp-ink); background: #fff; border-color: #fff; }
.lp-footer__grid { display: grid; grid-template-columns: 1.25fr .75fr 1fr; gap: 80px; padding-block: 75px; }
.lp-brand--footer { margin-bottom: 24px; color: #fff; }
.lp-brand--footer:hover { color: #fff; }
.lp-brand--footer .lp-brand__text small { color: rgba(255,255,255,.45); }
.lp-footer h3 { color: #fff; font-family: var(--lp-sans); font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.lp-footer p { font-size: .82rem; }
.lp-footer ul { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.lp-footer a { text-decoration: none; }
.lp-footer a:hover { color: #fa7015; }
.lp-footer__bottom { border-top: 1px solid rgba(255,255,255,.1); }
.lp-footer__bottom .lp-container { min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.lp-footer__bottom p { margin: 0; font-size: .67rem; letter-spacing: .04em; }
.lp-footer__bottom a { font-size: .67rem; }
.lp-error-page { min-height: 70vh; display: grid; place-items: center; padding: 100px 0; text-align: center; }

@media (max-width: 1100px) {
  .lp-nav-toggle { display: block; }
  .lp-nav { position: absolute; top: 100%; right: 32px; left: 32px; display: none; align-items: stretch; flex-direction: column; gap: 22px; padding: 30px; background: #fff; border: 1px solid var(--lp-line); box-shadow: var(--lp-shadow); }
  .lp-nav.is-open { display: flex; }
  .lp-nav__list { align-items: stretch; flex-direction: column; gap: 18px; }
  .lp-nav .lp-button { width: 100%; }
  .lp-stat__icon { width: 40px; height: 40px; flex-basis: 40px; }
  .lp-stats--v3 .lp-stat__content > span { white-space: normal; }
  .lp-home-story__grid, .lp-progress-preview__grid { gap: 60px; }
  .lp-document-grid { grid-template-columns: 1fr 1fr; }
  .lp-news-featured { grid-template-columns: 1fr; }
  .lp-news-featured__image { min-height: 280px; }
  .lp-contact-stage { grid-template-columns: 1fr; }
  .lp-contact-stage__visual { min-height: 680px; }
  .lp-contact-info .lp-container { grid-template-columns: 1fr 1fr; }
  .lp-contact-info .lp-container > div { border-bottom: 1px solid rgba(255,255,255,.13); }
}

@media (max-width: 780px) {
  body.admin-bar .lp-header { top: 46px; }
  .lp-container { width: min(calc(100% - 32px), var(--lp-container)); }
  .lp-topbar__inner span:first-child { display: none; }
  .lp-topbar__inner { justify-content: flex-end; }
  .lp-header__inner { min-height: 76px; }
  .lp-brand__mark { width: 40px; height: 40px; }
  .lp-nav { right: 16px; left: 16px; }
  .lp-stats__grid { grid-template-columns: 1fr 1fr; }
  .lp-stats__grid > div { min-height: 125px; padding: 24px 18px; border-bottom: 1px solid var(--lp-line); }
  .lp-stats__grid > div:nth-child(2n) { border-right: 1px solid var(--lp-line); }
  .lp-stats strong { font-size: 2.7rem; }
  .lp-stats--v2 .lp-stats__grid > div { grid-template-columns: 34px 1fr; column-gap: 10px; padding-inline: 13px; }
  .lp-stats--v2 i { font-size: 1.65rem; }
  .lp-stats--v2 strong { font-size: 2.2rem; }
  .lp-stats--v2 span { font-size: .56rem; letter-spacing: .08em; }
  .lp-stats--v3 .lp-container { width: 100%; }
  .lp-stats--v3 .lp-stat + .lp-stat::before { display: none; }
  .lp-stat__icon { width: 34px; height: 34px; flex-basis: 34px; }
  .lp-stats__botanical { display: none; }
  .lp-section { padding: 86px 0; }
  .lp-legal-library__intro, .lp-progress-journal__heading { grid-template-columns: 1fr; gap: 28px; }
  .lp-home-story__grid, .lp-progress-preview__grid { grid-template-columns: 1fr; gap: 45px; }
  .lp-progress-preview--v2 .lp-progress-preview__content { order: 1; }
  .lp-progress-preview--v2 .lp-progress-preview__visual { order: 2; }
  .lp-home-story__visual, .lp-about-commitment .lp-visual { min-height: 440px; }
  .lp-feature-grid { grid-template-columns: 1fr; }
  .lp-feature-grid article { min-height: 200px; border-right: 1px solid rgba(16,39,33,.18); border-bottom: 0; }
  .lp-feature-grid article:last-child { border-bottom: 1px solid rgba(16,39,33,.18); }
  .lp-feature-grid article > span { margin-bottom: 34px; }
  .lp-value-card { min-height: 200px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .lp-value-card:last-child { border-bottom: 0; }
  .lp-document-grid, .lp-document-grid--library, .lp-news-featured-grid { grid-template-columns: 1fr; }
  .lp-news-featured-grid--archive .lp-news-featured { grid-template-columns: 1fr; }
  .lp-news-featured-grid--archive .lp-news-featured__image { min-height: 260px; }
  .lp-news-featured-grid--archive .lp-news-featured > div { padding: 30px; }
  .lp-editorial-hero { min-height: 650px; }
  .lp-editorial-hero__content { padding-block: 90px 70px; }
  .lp-editorial-hero__content h1 { font-size: clamp(3.5rem, 16vw, 5.3rem); }
  .lp-editorial-hero__shade { background: linear-gradient(0deg, rgba(5,19,16,.94), rgba(5,19,16,.25) 85%); }
  .lp-company-strip { margin-top: 50px; }
  .lp-company-strip > .col > .col-inner { min-height: auto; padding: 24px 0; border-right: 0; border-bottom: 1px solid var(--lp-line); }
  .lp-company-strip > .col:last-child > .col-inner { border-bottom: 0; }
  .lp-about-commitment__image { min-height: 440px; }
  .lp-progress-entry { grid-template-columns: 45px 1fr 44px; gap: 16px; padding: 28px 0; }
  .lp-progress-entry time { grid-column: 2; grid-row: 1; }
  .lp-progress-entry > div:nth-of-type(2) { grid-column: 2; }
  .lp-progress-entry__number { grid-row: 1 / span 2; }
  .lp-entry-arrow { grid-column: 3; grid-row: 1 / span 2; width: 42px; height: 42px; }
  .lp-contact-stage__visual { min-height: 650px; }
  .lp-contact-stage__copy { padding: 50px 24px 70px; }
  .lp-contact-stage__form { padding: 70px 20px; }
  .lp-form-grid { grid-template-columns: 1fr; }
  .lp-contact-info .lp-container { grid-template-columns: 1fr; }
  .lp-contact-info .lp-container > div { min-height: auto; padding: 26px 0; border-right: 0; }
  .lp-contact-info .lp-container > div:first-child { border-left: 0; }
  .lp-content-layout { grid-template-columns: 1fr; gap: 50px; }
  .lp-meta-panel { position: static; }
  .lp-cta__inner { align-items: flex-start; flex-direction: column; }
  .lp-footer__statement { min-height: 500px; justify-content: flex-start; padding-top: 80px; }
  .lp-footer__circle-link { right: auto; bottom: 65px; left: 0; width: 112px; height: 112px; }
  .lp-footer__circle-link--light { position: static; }
  .lp-footer__grid { grid-template-columns: 1fr; gap: 40px; padding-block: 58px; }
  .lp-footer__bottom .lp-container { align-items: flex-start; flex-direction: column; justify-content: center; padding-block: 20px; }
}

@media (max-width: 480px) {
  .lp-button-row { align-items: stretch; flex-direction: column; }
  .lp-button-row .lp-button { width: 100%; }
  .lp-stats__grid > div { padding-inline: 12px; }
  .lp-stats strong { font-size: 2.25rem; }
  .lp-stats--v2 .lp-stats__grid > div { display: flex; align-items: flex-start; }
  .lp-stats--v2 i { display: none; }
  .lp-stats--v2 strong { font-size: 2.15rem; }
  .lp-document-card { min-height: 330px; padding: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Flatsome UX Builder content keeps the existing Land Phat visual language. */
.lp-hero.banner { overflow: hidden; }
.lp-hero .button.lp-button--light,
.lp-hero .button.lp-button--light span { color: var(--lp-ink); }

.lp-cta--image.banner { overflow: hidden; }

.row.lp-container {
  width: min(calc(100% - 64px), var(--lp-container));
  max-width: var(--lp-container);
  margin-right: auto;
  margin-left: auto;
}

.lp-stats--v3 .lp-stats__grid > .col {
  min-width: 0;
  min-height: 0;
}
.lp-stats--v3:not(.lp-builder-preset--stats) .lp-stats__grid > .col {
  display: block;
  padding: 0 !important;
}
.lp-stats--v3 .lp-stat .col-inner {
  min-height: 0;
  display: flex;
  align-items: center;
  gap: 22px;
}
.lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat .col-inner {
  height: 150px;
  padding: 26px 32px;
}

.lp-home-v2-story__grid > .col,
.lp-home-v2-project__grid > .col {
  min-width: 0;
}
.lp-progress-preview__grid > .col {
  min-width: 0;
  padding: 0;
}
.lp-home-v2-story__grid > .col > .col-inner,
.lp-home-v2-project__grid > .col > .col-inner,
.lp-progress-preview__grid > .col > .col-inner { width: 100%; }

.lp-home-infra__grid { padding: 0; }
.lp-legal-preview--v2 .row.lp-container > .col,
.lp-news-preview--v2 .row.lp-container > .col { padding: 0; }
.lp-news-featured-grid--ux { margin-top: 0; }

/* Dynamic Builder elements expose only whitelisted layout controls. */
.lp-document-grid.lp-document-grid--columns-1 { grid-template-columns: minmax(0, 1fr); }
.lp-document-grid.lp-document-grid--columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lp-document-grid.lp-document-grid--columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lp-document-grid.lp-document-grid--columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.lp-news-featured-grid.lp-news-featured-grid--columns-1 { grid-template-columns: minmax(0, 1fr); }
.lp-news-featured-grid.lp-news-featured-grid--columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lp-news-featured-grid.lp-news-featured-grid--columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lp-news-featured-grid.lp-news-featured-grid--columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

@media (max-width: 849px) {
  .lp-document-grid.lp-document-grid--columns-md-1,
  .lp-news-featured-grid.lp-news-featured-grid--columns-md-1 { grid-template-columns: minmax(0, 1fr); }
  .lp-document-grid.lp-document-grid--columns-md-2,
  .lp-news-featured-grid.lp-news-featured-grid--columns-md-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lp-document-grid.lp-document-grid--columns-md-3,
  .lp-news-featured-grid.lp-news-featured-grid--columns-md-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lp-document-grid.lp-document-grid--columns-md-4,
  .lp-news-featured-grid.lp-news-featured-grid--columns-md-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 549px) {
  .lp-document-grid.lp-document-grid--columns-sm-1,
  .lp-news-featured-grid.lp-news-featured-grid--columns-sm-1 { grid-template-columns: minmax(0, 1fr); }
  .lp-document-grid.lp-document-grid--columns-sm-2,
  .lp-news-featured-grid.lp-news-featured-grid--columns-sm-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lp-document-grid.lp-document-grid--columns-sm-3,
  .lp-news-featured-grid.lp-news-featured-grid--columns-sm-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lp-document-grid.lp-document-grid--columns-sm-4,
  .lp-news-featured-grid.lp-news-featured-grid--columns-sm-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 849px) {
  .row.lp-container { width: calc(100% - 32px); }
  .lp-stats--v3:not(.lp-builder-preset--stats) .row.lp-container { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
  .lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat .col-inner { height: 125px; padding-inline: 18px; }
}

@media (max-width: 480px) {
  .lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat .col-inner { gap: 12px; padding-inline: 12px; }
  .lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat__icon { width: 42px; height: 42px; flex-basis: 42px; }
}

@media (max-width: 780px) {
  .home .lp-legal-preview--v2 .lp-document-card {
    min-height: 280px;
    padding: 20px;
  }
  .home .lp-legal-preview--v2 .lp-document-card__topline {
    margin-bottom: 18px;
  }
  .home .lp-legal-preview--v2 .lp-document-card__title {
    font-size: 1.18rem;
    line-height: 1.18;
  }
  .home .lp-document-card__actions {
    padding-top: 18px;
  }
  .home .lp-progress-preview--v2 .lp-timeline--stacked {
    margin: 24px 0 18px;
  }
  .home .lp-progress-preview--v2 .lp-timeline--stacked .lp-timeline__item {
    padding: 12px 0;
  }
  .home .lp-news-preview--v2 .lp-news-featured-grid {
    gap: 22px;
  }
  .home .lp-news-preview--v2 .lp-news-featured__image {
    min-height: 200px;
  }
  .home .lp-news-preview--v2 .lp-news-featured > div {
    padding: 22px;
  }
  .lp-footer__grid {
    gap: 28px;
    padding-block: 42px;
  }
  .lp-footer__bottom .lp-container {
    padding-block: 16px;
  }
}

@media (max-width: 480px) {
  .home .lp-legal-preview--v2 .lp-document-card {
    min-height: 260px;
    padding: 19px;
  }
}

/* Native UX Builder homepage elements. */
/* Flatsome defaults Title/Button elements to uppercase; keep editor-entered casing. */
.section-content .section-title-main,
.section-content .button,
.lp-hero .section-title-main,
.lp-home-heading__line .section-title-main,
.lp-builder-preset .section-title-main { text-transform: none; }

.lp-home-heading__line.section-title-container {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.lp-home-heading__line .section-title {
  border-bottom: 0;
}

.lp-home-heading__line .section-title > b {
  display: none;
}

.lp-home-heading__line .section-title-main {
  display: block;
  margin: 0;
  padding: 0;
  border-bottom: 0;
}
.lp-home-heading__line h1,
.lp-home-heading__line h2 { margin: 0; }
.lp-home-heading__line--accent h1,
.lp-home-heading__line--accent h2 { color: var(--lp-gold); font-style: italic; font-weight: 400; }
.lp-home-heading__line--end { margin-bottom: 28px; }

/* Archive Builder heroes follow the homepage scale without replacing native controls. */
.lp-legal-archive-builder__hero .section-bg::after,
.lp-progress-archive-builder__hero .section-bg::after,
.lp-news-archive-builder__hero .section-bg::after {
  position: absolute;
  inset: 0 auto 0 0;
  z-index: 1;
  width: 72%;
  background: linear-gradient(90deg, rgba(5,19,16,.28), rgba(5,19,16,.12) 72%, transparent 100%);
  content: "";
  pointer-events: none;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, #000 50%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, #000 50%, transparent 100%);
}
.lp-legal-archive-builder__hero .section-content,
.lp-progress-archive-builder__hero .section-content,
.lp-news-archive-builder__hero .section-content { z-index: 2; }
.lp-legal-archive-builder__hero .lp-home-heading__line h1,
.lp-progress-archive-builder__hero .lp-home-heading__line h1,
.lp-news-archive-builder__hero .lp-home-heading__line h1 {
  max-width: 720px;
  color: #fff;
  font-size: clamp(3rem, 5vw, 4.65rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -.045em;
  text-align: left;
}
.lp-legal-archive-builder__hero .lp-prose--lead,
.lp-progress-archive-builder__hero .lp-prose--lead,
.lp-news-archive-builder__hero .lp-prose--lead {
  max-width: 560px;
  margin-top: 12px;
  color: rgba(255,255,255,.9);
  font-size: 1rem;
  line-height: 1.65;
}
@media (max-width: 549px) {
  .lp-legal-archive-builder__hero .section-bg::after,
  .lp-progress-archive-builder__hero .section-bg::after,
  .lp-news-archive-builder__hero .section-bg::after {
    width: 100%;
    mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, #000 50%, transparent 100%);
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, #000 50%, transparent 100%);
  }
  .lp-legal-archive-builder__hero .lp-home-heading__line h1,
  .lp-progress-archive-builder__hero .lp-home-heading__line h1,
  .lp-news-archive-builder__hero .lp-home-heading__line h1 {
    font-size: clamp(2.35rem, 10vw, 3.1rem);
    text-wrap: balance;
  }
  .lp-legal-archive-builder__hero .lp-prose--lead,
  .lp-progress-archive-builder__hero .lp-prose--lead,
  .lp-news-archive-builder__hero .lp-prose--lead {
    font-size: .88rem;
    line-height: 1.55;
  }
}

/* Bring progress archive typography closer to the homepage, within this page only. */
.lp-progress-archive-builder__hero .lp-eyebrow {
  margin-bottom: 14px;
  font-size: 1rem;
  letter-spacing: .08em;
}
.lp-progress-archive-builder__hero .lp-home-heading__line--accent h1 {
  color: var(--lp-gold-light);
  font-weight: 500;
}
.lp-progress-archive-builder__hero .lp-progress-archive-builder__text-box { max-width: 960px; text-align: left; }
.lp-progress-archive-builder__hero .lp-progress-archive-builder__eyebrow {
  margin-bottom: 14px;
  color: #a9cbbd;
  font-size: 1rem;
  letter-spacing: .08em;
}
.lp-progress-archive-builder__hero .lp-home-heading__line h1 {
  max-width: 900px;
  color: #fff;
  font-size: clamp(3.5rem, 7vw, 5.25rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -.045em;
  text-align: left;
  text-wrap: balance;
}
.lp-progress-archive-builder__hero .lp-heading-accent {
  color: var(--lp-gold-light);
  font-style: italic;
  font-weight: 500;
}
.lp-progress-archive-builder__hero .lp-home-heading__line--accent h1 {
  color: var(--lp-gold-light);
  font-style: italic;
  font-weight: 500;
}
.lp-progress-archive-builder__hero .lp-progress-archive-builder__lead {
  max-width: 560px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.9);
  font-size: 1.125rem;
  font-style: italic;
  line-height: 1.65;
}
.lp-progress-archive-builder__hero .lp-prose--lead,
.lp-progress-archive-builder__content .lp-progress-archive-builder__intro {
  font-size: 1.125rem;
  line-height: 1.7;
}
.lp-progress-archive-builder__content .lp-index-label {
  margin-bottom: 16px;
  font-size: 1rem;
  letter-spacing: .08em;
}
.lp-progress-archive-builder__content .lp-home-heading__line h2 {
  font-size: clamp(2.4rem, 4vw, 3.5rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -.045em;
}
.lp-progress-archive-builder__content .lp-home-heading__line--accent h2 {
  color: var(--lp-gold);
  font-weight: 500;
}
.post-type-archive-lp_progress .lp-progress-entry p {
  font-size: 1rem;
  line-height: 1.6;
}
.post-type-archive-lp_progress .lp-progress-entry__meta time {
  font-size: .8125rem;
  letter-spacing: 0;
}
.post-type-archive-lp_progress .lp-progress-badge {
  font-size: .75rem;
}
@media (max-width: 549px) {
  .lp-progress-archive-builder__hero .lp-home-heading__line h1 {
    font-size: 2.75rem;
    line-height: 1.03;
  }
  .lp-progress-archive-builder__hero .lp-progress-archive-builder__lead {
    font-size: 1rem;
    line-height: 1.55;
  }
  .lp-progress-archive-builder__hero .lp-prose--lead,
  .lp-progress-archive-builder__content .lp-progress-archive-builder__intro {
    font-size: 1rem;
  }
}

.lp-hero .lp-hero-title.section-title-container,
.lp-home-v2-story__title.section-title-container,
.lp-home-v2-project__title.section-title-container,
.lp-section-heading__title.section-title-container,
.lp-progress-preview__title.section-title-container,
.lp-cta-title.section-title-container,
.lp-infra-card__title.section-title-container {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.lp-hero .section-title > b,
.lp-home-v2-story__title .section-title > b,
.lp-home-v2-project__title .section-title > b,
.lp-section-heading__title .section-title > b,
.lp-progress-preview__title .section-title > b,
.lp-cta-title .section-title > b,
.lp-infra-card__title .section-title > b,
.lp-stat__value .section-title > b { display: none; }

.lp-hero .section-title-main,
.lp-home-v2-story__title .section-title-main,
.lp-home-v2-project__title .section-title-main,
.lp-section-heading__title .section-title-main,
.lp-progress-preview__title .section-title-main,
.lp-cta-title .section-title-main,
.lp-infra-card__title .section-title-main,
.lp-stat__value .section-title-main { display: block; padding: 0; }

.lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat__icon:not([data-lp-builder-width]) { width: 58px !important; height: 58px !important; flex: 0 0 58px; margin: 0; }
.lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat__icon .img-inner { height: 100%; padding-top: 0 !important; }
.lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat__icon img { width: 100%; height: 100%; object-fit: contain; }
.lp-stats--v3.lp-builder-preset--stats .lp-stat__icon,
.lp-stats--v3 .lp-stat__icon[data-lp-builder-width] { width: auto; height: auto; flex: 0 0 auto; margin: 0; }
.lp-stats--v3.lp-builder-preset--stats .lp-stat__icon .img-inner,
.lp-stats--v3 .lp-stat__icon[data-lp-builder-width] .img-inner { height: auto; }
.lp-stats--v3.lp-builder-preset--stats .lp-stat__icon img,
.lp-stats--v3 .lp-stat__icon[data-lp-builder-width] img { width: 100%; height: auto; object-fit: contain; }
.lp-stat__value.section-title-container {
  width: auto;
  max-width: none;
  margin-top: 0;
  margin-right: 0;
  margin-left: 0;
  padding: 0;
}

.lp-arrow-button.button::after { width: 43px; height: 43px; display: inline-grid; place-items: center; margin-left: 18px; border: 1px solid rgba(16,39,33,.28); border-radius: 50%; content: "↗"; font-size: 1.1rem; font-weight: 400; transition: .25s ease; }
.lp-arrow-button.button:hover::after { color: #fff; background: var(--lp-green); border-color: var(--lp-green); transform: rotate(45deg); }

.lp-home-infra__cards > .col > .col-inner { padding: 0; }
.lp-infra-card__image .img-inner { min-height: 0; }

@media (max-width: 480px) {
  .lp-stats--v3:not(.lp-builder-preset--stats) .lp-stat__icon:not([data-lp-builder-width]) { width: 42px !important; height: 42px !important; flex-basis: 42px; }
}

/* About page (Page 5) refinements. */
body.page-id-5 .lp-about-intro .section-title > b,
body.page-id-5 .lp-values .section-title > b,
body.page-id-5 .lp-about-commitment .section-title > b,
body.page-id-5 .lp-about-cta .section-title > b { display: none; }

body.page-id-5 .lp-about-intro .section-title-main,
body.page-id-5 .lp-values .section-title-main,
body.page-id-5 .lp-about-commitment .section-title-main,
body.page-id-5 .lp-about-cta .section-title-main { border: 0; padding-bottom: 0; }

body.page-id-5 .lp-about-intro .section-title,
body.page-id-5 .lp-values .section-title,
body.page-id-5 .lp-about-commitment .section-title,
body.page-id-5 .lp-about-cta .section-title { border-bottom: 0 !important; }

body.page-id-5 .lp-about-intro__heading h2,
body.page-id-5 .lp-values__heading h2,
body.page-id-5 .lp-about-commitment__heading h2,
body.page-id-5 .lp-about-cta__heading h2 {
  font-family: "Iowan Old Style", Baskerville, "Times New Roman", serif !important;
  font-size: 48px !important;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.025em;
}

body.page-id-5 .lp-about-intro__subheading h3,
body.page-id-5 .lp-company-fact__value h3,
body.page-id-5 .lp-value-card__title h3 {
  font-family: "Iowan Old Style", Baskerville, "Times New Roman", serif !important;
  font-size: 22px !important;
  font-weight: 500;
  line-height: 1.3;
}

body.page-id-5 .lp-prose--large,
body.page-id-5 .lp-values .lp-section-heading__description,
body.page-id-5 .lp-values .lp-value-card__description,
body.page-id-5 .lp-about-commitment__description {
  font-size: 18px;
  line-height: 1.65;
}
body.page-id-5 .lp-about-intro .lp-prose--large {
  font-size: 16px;
  line-height: 1.7;
}

body.page-id-5 .lp-values .lp-values__heading h2,
body.page-id-5 .lp-values .lp-value-card__title h3 { color: #fff !important; }
body.page-id-5 .lp-values .lp-section-heading__description,
body.page-id-5 .lp-values .lp-value-card__description { color: rgba(255,255,255,.9) !important; }
body.page-id-5 .lp-values .lp-value-card__number { margin-bottom: 34px; }
body.page-id-5 .lp-about-cta .lp-about-cta__heading h2 { color: #fff !important; }
body.page-id-5 .lp-about-cta__heading .section-title-center { justify-content: center; }
body.page-id-5 .lp-about-cta__description {
  max-width: 620px;
  margin: 18px auto 0;
  color: rgba(255,255,255,.84);
  font-size: 18px;
  line-height: 1.6;
}
body.page-id-5 .lp-about-cta__button { margin-top: 26px; }
body.page-id-5 .lp-values__grid { border: 0; }
body.page-id-5 .lp-values .lp-value-card {
  min-height: 300px;
  padding: 32px;
  border: 0;
  border-radius: 0;
  background: rgba(255,255,255,.08);
}
body.page-id-5 .lp-about-commitment__image { min-height: 0; }

@media (min-width: 551px) and (max-width: 780px) {
  body.page-id-5 .lp-about-intro__heading h2,
  body.page-id-5 .lp-values__heading h2,
  body.page-id-5 .lp-about-commitment__heading h2,
  body.page-id-5 .lp-about-cta__heading h2 { font-size: 40px !important; }
}

@media (max-width: 780px) {
  body.page-id-5 .lp-about-intro,
  body.page-id-5 .lp-values,
  body.page-id-5 .lp-about-commitment { padding-block: 86px !important; }
  body.page-id-5 .lp-about-cta { padding-block: 56px !important; }
  body.page-id-5 .lp-values .lp-value-card { min-height: 220px; padding: 26px; }
  body.page-id-5 .lp-prose--large,
  body.page-id-5 .lp-values .lp-section-heading__description,
  body.page-id-5 .lp-values .lp-value-card__description,
  body.page-id-5 .lp-about-commitment__description,
  body.page-id-5 .lp-about-cta__description { font-size: 16px; }
}

@media (max-width: 550px) {
  body.page-id-5 .lp-about-intro__heading h2,
  body.page-id-5 .lp-values__heading h2,
  body.page-id-5 .lp-about-commitment__heading h2,
  body.page-id-5 .lp-about-cta__heading h2 { font-size: 34px !important; }
  body.page-id-5 .lp-about-intro__subheading h3,
  body.page-id-5 .lp-company-fact__value h3,
  body.page-id-5 .lp-value-card__title h3 { font-size: 21px !important; }
  body.page-id-5 .lp-values .lp-value-card { min-height: 200px; padding: 22px; }
}

/* QA: search, footer, and recovery pages. */
.lp-search-page { padding: clamp(44px, 7vw, 96px) 0; background: #fff; }
.lp-search-page__inner { max-width: 1060px; }
.lp-search-page__header { max-width: 830px; margin-bottom: 38px; }
.lp-search-page__header h1 { margin: 8px 0 18px; overflow-wrap: anywhere; color: var(--lp-ink); font-size: clamp(2.2rem, 5vw, 4.6rem); line-height: 1.14; }
.lp-search-page__header > p:not(.lp-index-label) { color: var(--lp-muted); }
.lp-search-form { max-width: 720px; margin-top: 28px; }
.lp-search-form label { display: block; margin-bottom: 8px; color: var(--lp-ink); font-size: .85rem; font-weight: 700; }
.lp-search-form__controls { display: flex; gap: 10px; }
.lp-search-form input { min-width: 0; min-height: 50px; flex: 1; margin: 0; padding: 10px 14px; border: 1px solid var(--lp-line); background: #fff; }
.lp-search-form button { min-height: 50px; margin: 0; padding: 0 24px; border: 1px solid var(--lp-green); color: #fff; background: var(--lp-green); font-weight: 700; cursor: pointer; }
.lp-search-page__count { margin: 0 0 14px; color: var(--lp-muted); font-size: .86rem; }
.lp-search-results { display: grid; gap: 16px; }
.lp-search-result { padding: clamp(22px, 3vw, 36px); border: 1px solid var(--lp-line); background: var(--lp-paper); }
.lp-search-result__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; color: var(--lp-muted); font-size: .78rem; font-weight: 700; }
.lp-search-result h2 { margin: 14px 0 10px; color: var(--lp-ink); font-size: clamp(1.35rem, 2.5vw, 2.1rem); line-height: 1.3; }
.lp-search-result h2 a { color: inherit; text-decoration: none; }
.lp-search-result p { margin-bottom: 12px; color: var(--lp-text); }
.lp-search-empty { padding: clamp(24px, 4vw, 48px); background: var(--lp-paper); border: 1px solid var(--lp-line); }
.lp-search-empty h2 { margin: 0 0 12px; font-size: clamp(1.5rem, 3vw, 2.3rem); }
.lp-search-empty nav { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.lp-legal-filters { display: grid; grid-template-columns: minmax(220px, 2fr) minmax(160px, 1fr) minmax(150px, 1fr) auto; align-items: end; gap: 12px; margin: 0 0 14px; }
.lp-legal-filters label { display: grid; gap: 6px; color: var(--lp-ink); font-size: .8rem; font-weight: 700; }
.lp-legal-filters input, .lp-legal-filters select { width: 100%; min-height: 48px; margin: 0; padding: 8px 12px; border: 1px solid var(--lp-line); color: var(--lp-ink); background: #fff; }
.lp-legal-filters button { min-height: 48px; margin: 0; padding: 0 18px; border: 1px solid var(--lp-green); color: #fff; background: var(--lp-green); font-weight: 700; cursor: pointer; }
.lp-legal-filters__count { margin-bottom: 20px; color: var(--lp-muted); font-size: .84rem; }
.lp-footer-cta-block.section { padding-block: clamp(34px, 4.4vw, 60px) !important; border-top: 1px solid rgba(214,169,75,.45); border-bottom: 1px solid rgba(255,255,255,.12); }
.lp-footer-cta-block .lp-cta-title h2 { font-size: clamp(2rem, 3.8vw, 3.25rem); line-height: 1.12; }
.lp-footer-cta-block .lp-cta-title .section-title,
.lp-footer-cta-block .lp-cta-title .section-title-main { border: 0; box-shadow: none; }
.lp-footer-cta-block .lp-cta-title .section-title > b { display: none; }
.lp-footer-cta-block .lp-eyebrow { font-size: 18px; }
.lp-footer-cta-block .lp-container > .col:last-child { border-left: 1px solid rgba(255,255,255,.16); }
.lp-footer-cta-block .lp-container > .col:last-child .col-inner { display: flex; min-height: 86px; align-items: center; justify-content: flex-end; }
.lp-footer-cta-block .button.lp-footer__circle-link--light,
.lp-footer-cta-block .button.lp-footer__circle-link--light span { color: var(--lp-ink) !important; }
.lp-footer-cta-block .button.lp-footer__circle-link--light { min-height: 52px; margin: 0; padding-inline: 25px; border-color: var(--lp-gold-light) !important; background: var(--lp-gold-light) !important; font-size: 18px; font-weight: 700; }
.lp-footer-cta-block .button.lp-footer__circle-link--light:hover { border-color: var(--lp-gold-light) !important; background: var(--lp-gold-light) !important; }
.lp-footer-cta-block .button.lp-footer__circle-link--light:focus-visible { outline: 3px solid var(--lp-gold-light); outline-offset: 4px; }
.lp-footer-block.section { border-top: 0; background-image: linear-gradient(115deg, rgba(19,54,44,.48), transparent 42%, rgba(19,54,44,.18)); }
.lp-footer-block .lp-footer-builder__grid { padding-block: clamp(38px, 5vw, 64px) clamp(30px, 4vw, 48px); }
.lp-footer-block .lp-footer-builder__grid > .col { padding-bottom: 0; }
.lp-footer-block .lp-footer-builder__grid > .col:nth-child(n+2) .col-inner { min-height: 100%; padding-left: 26px; border-left: 1px solid rgba(214,169,75,.26); }
.lp-footer-block .lp-footer-builder__grid .lp-footer__heading { margin-bottom: 19px; color: #fff; font-size: 18px; font-weight: 750; letter-spacing: .08em; line-height: 1.4; text-transform: uppercase; }
.lp-footer-block .lp-footer-builder__grid .text:not(.lp-footer__heading) { color: rgba(255,255,255,.78); font-size: 18px; line-height: 1.85; }
.lp-footer-block .lp-footer-builder__grid .text:not(.lp-footer__heading) p { margin-bottom: 14px; font-size: inherit; }
.lp-footer-block .lp-footer-builder__grid > .col p { margin-bottom: 14px; font-size: 18px; line-height: 1.85; }
.lp-footer-block .lp-footer-builder__grid .text:not(.lp-footer__heading) a { color: rgba(255,255,255,.76); text-decoration: none; transition: color .2s ease; }
.lp-footer-block .lp-footer-builder__grid .text:not(.lp-footer__heading) a:hover { color: var(--lp-gold-light); }
.lp-footer-block .lp-footer-builder__grid .text:not(.lp-footer__heading) a:focus-visible { outline: 2px solid var(--lp-gold-light); outline-offset: 3px; }
.lp-footer-block .lp-footer-builder__grid > .col:first-child .lp-footer-builder__brand-wrap,
.lp-footer-block .lp-footer-builder__grid > .col:nth-child(n+2) .lp-footer__heading { min-height: 72px; margin-bottom: 0; }
.lp-footer-block .lp-footer-builder__grid .lp-arrow-button.button { display: inline-flex; min-height: 56px; align-items: center; justify-content: center; margin: 10px 0 0; padding: 6px 10px 6px 22px; border: 1px solid var(--lp-gold-light) !important; border-radius: 999px; color: var(--lp-ink) !important; background: var(--lp-gold-light) !important; font-size: 18px; font-weight: 800; letter-spacing: .01em; line-height: 1.3; text-decoration: none; transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.lp-footer-block .lp-footer-builder__grid .lp-arrow-button.button span { color: var(--lp-ink) !important; }
.lp-footer-block .lp-footer-builder__grid .lp-arrow-button.button::after { width: 40px; height: 40px; margin-left: 18px; border-color: var(--lp-green); color: #fff; background: var(--lp-green); }
.lp-footer-block .lp-footer-builder__grid .lp-arrow-button.button:hover { border-color: #fff !important; color: var(--lp-ink) !important; background: #fff !important; box-shadow: 0 8px 22px rgba(0,0,0,.18); transform: translateY(-1px); }
.lp-footer-block .lp-footer-builder__grid .lp-arrow-button.button:focus-visible { outline: 3px solid var(--lp-gold-light); outline-offset: 4px; }
.lp-footer-block .lp-footer-builder__bottom { border-top: 1px solid rgba(255,255,255,.12); }
.lp-footer-block .lp-footer-builder__bottom > .col { padding-bottom: 0; }
.lp-footer-block .lp-footer-builder__bottom .text { padding-block: 15px; color: rgba(255,255,255,.55); font-size: 18px; line-height: 1.6; letter-spacing: .025em; }
.lp-footer-block .lp-footer-builder__bottom .text p { font-size: inherit; }
.lp-footer-block .lp-footer-builder__bottom p { font-size: 18px; }
.lp-footer-block .lp-footer-builder__bottom .text a { color: rgba(255,255,255,.72); text-decoration: none; }
.lp-footer-block .lp-footer-builder__bottom .text a:hover { color: var(--lp-gold-light); }
.lp-footer-builder__brand { display: inline-flex !important; flex-direction: column; align-items: flex-start; gap: 5px; color: #fff !important; line-height: 1.2; text-decoration: none; }
.lp-footer-builder__brand strong { display: block; color: #fff; font-size: 18px; }
.lp-footer-builder__brand small { display: block; color: rgba(255,255,255,.75); font-size: 18px; }
.lp-footer-builder__brand-image { max-width: 210px; height: auto; }
.lp-error-page__links { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px 28px; }
.lp-error-page__links .lp-button { margin: 0; }
.lp-heading-accent { color: var(--lp-gold); font-style: italic; font-weight: 400; }

@media (max-width: 549px) {
  .lp-search-form__controls { flex-direction: column; }
  .lp-search-form button { width: 100%; }
  .lp-legal-filters { grid-template-columns: 1fr; }
  .lp-legal-filters button { width: 100%; }
  .lp-footer-cta-block .lp-cta-title h2 { font-size: clamp(2rem, 8vw, 2.8rem); }
}
@media (min-width: 550px) and (max-width: 900px) {
  .lp-legal-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Progress evidence and compact article details. */
.lp-progress-badge { display: inline-flex; align-items: center; width: max-content; max-width: 100%; padding: 6px 10px; color: #174d40; background: #e5f1ed; border: 1px solid #b9d4c9; border-radius: 2px; font-size: .67rem; font-weight: 800; line-height: 1.35; letter-spacing: .04em; text-transform: uppercase; }
.lp-progress-badge--notice { color: #604314; background: #f7efd9; border-color: #dfca8c; }
.lp-progress-badge--plan { color: #62492c; background: #f5eee3; border-color: #dbc9af; }
.lp-progress-entry__meta, .lp-timeline__meta { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.lp-progress-entry__meta time { color: var(--lp-muted); font-size: .72rem; font-weight: 700; letter-spacing: 0; }
.lp-progress-source { display: inline-block; margin-top: 10px; color: var(--lp-green); font-size: .76rem; font-weight: 700; line-height: 1.45; text-decoration: underline; text-underline-offset: 3px; }
.lp-progress-preview--v2 .lp-timeline__meta time { color: var(--lp-muted); }
.lp-editorial-hero--article { min-height: 390px; }
.lp-editorial-hero--article .lp-editorial-hero__content { padding-block: 75px 65px; }
.lp-editorial-hero--article .lp-editorial-hero__content h1 { font-size: clamp(2.65rem, 5vw, 4.8rem); }
.lp-editorial-hero--article .lp-progress-badge { vertical-align: middle; }
.lp-section--article { padding-block: 64px 82px; }
.lp-article-summary { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; margin-bottom: 32px; padding: 18px 22px; background: var(--lp-sand); border-left: 3px solid var(--lp-gold); color: var(--lp-ink); font-size: .85rem; }
.lp-article-summary .lp-progress-source { margin: 0; }
.lp-related-content { margin-top: 42px; padding-top: 28px; border-top: 1px solid var(--lp-line); }
.lp-related-content h2 { font-size: clamp(1.5rem, 3vw, 2.2rem); }
.lp-related-content ul { padding-left: 20px; }
.lp-related-content li { margin: 10px 0; }
.lp-related-content a { color: var(--lp-green); }
.lp-meta-panel__file-note { margin-top: 24px; padding: 15px; background: var(--lp-sand); color: var(--lp-ink); font-size: .8rem; }
.lp-contact-form .lp-field-error { display: block; color: #9d3030; font-size: .75rem; font-weight: 600; letter-spacing: 0; line-height: 1.4; }
.lp-contact-form .lp-field-error[hidden], .lp-form-error-summary[hidden] { display: none; }
.lp-contact-form [aria-invalid="true"] { border-bottom: 2px solid #a32d2d !important; }
.lp-contact-form .lp-consent [aria-invalid="true"] { outline: 2px solid #a32d2d; outline-offset: 3px; }
.lp-form-error-summary { margin: 0; padding: 12px 16px; color: #7a2929; background: #f8e3e1; font-size: .82rem; }
.lp-contact-card { scroll-margin-top: 110px; }
.lp-policy-updated { margin: 0 0 20px; color: var(--lp-muted); font-size: .82rem; }
.lp-policy-nav { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px 20px; margin-bottom: 34px; padding: 18px 20px; background: var(--lp-sand); }
.lp-policy-nav strong { margin-right: 8px; color: var(--lp-ink); }
.lp-policy-nav a { color: var(--lp-green); font-size: .83rem; }
.lp-prose h2[id] { scroll-margin-top: 100px; }
.lp-policy-request { margin-top: 46px; padding: 28px; background: var(--lp-sand); }
.lp-policy-request h2 { margin-top: 0; }
.lp-project-anchor-links a[aria-current="location"] { color: var(--lp-green) !important; border-bottom: 2px solid var(--lp-green); }

/* Project page: Flatsome Title uses the global sans font, and Section margin
   only controls margin-bottom. Keep layout and breakpoints in Builder. */
.page-id-6 .lp-project-facts.section { position: relative; z-index: 2; }
.page-id-6 .lp-project-facts .row.lp-container { border: 1px solid rgba(255,255,255,.28); background: rgba(8,32,27,.86); }
.page-id-6 .lp-project-facts .col { border-right: 1px solid rgba(255,255,255,.18); }
.page-id-6 .lp-project-facts .col:last-child { border-right: 0; }
.page-id-6 .lp-project-facts .col-inner > p { margin-bottom: 16px; color: rgba(255,255,255,.88); font-size: 16px; font-weight: 650; letter-spacing: .015em; line-height: 1.4; text-transform: uppercase; }
.page-id-6 .lp-project-facts .section-title-container { margin: 0; }
.page-id-6 .lp-project-facts .section-title { border: 0; color: #fff; font-size: clamp(1.85rem, 2.55vw, 2.5rem); font-weight: 700; line-height: 1.1; }
.page-id-6 .lp-project-facts .section-title > b { display: none; }
.page-id-6 .lp-project-facts .section-title-main { padding: 0; border: 0; }

/* UX Builder retains these Section colors, but its public output omits them. */
.page-id-6 .lp-project-overview.section,
.page-id-6 .lp-project-infrastructure.section,
.page-id-6 .lp-project-legal-builder.section { background-color: #f8f6f1; }
.page-id-6 .lp-project-masterplan.section { background-color: var(--lp-sand); }
.page-id-6 .lp-project-progress-builder.section { background-color: var(--lp-ink); }

.page-id-6 .lp-project-anchor-nav.section { border-bottom: 1px solid var(--lp-line); background: #fff; }
.page-id-6 .lp-project-anchor-nav .row { min-height: 64px; align-items: center; }
.page-id-6 .lp-project-anchor-nav .col { padding-bottom: 0; }
.page-id-6 .lp-project-anchor-links.stack { gap: 25px; }
.page-id-6 .lp-project-anchor-links .button { margin: 0; padding: 0; color: var(--lp-ink); font-size: 16px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.page-id-6 .lp-project-overview,
.page-id-6 .lp-project-masterplan,
.page-id-6 .lp-project-infrastructure,
.page-id-6 .lp-project-progress-builder,
.page-id-6 .lp-project-legal-builder { scroll-margin-top: 80px; }

.page-id-6 .lp-project-overview .section-title,
.page-id-6 .lp-project-masterplan .section-title,
.page-id-6 .lp-project-infrastructure .section-title,
.page-id-6 .lp-project-progress-builder .section-title,
.page-id-6 .lp-project-legal-builder .section-title { display: block; margin: 0; border: 0; font-size: 3rem; font-weight: 650; line-height: 1.12; letter-spacing: -.035em; }
.page-id-6 .lp-project-overview .section-title-main,
.page-id-6 .lp-project-masterplan .section-title-main,
.page-id-6 .lp-project-infrastructure .section-title-main,
.page-id-6 .lp-project-progress-builder .section-title-main,
.page-id-6 .lp-project-legal-builder .section-title-main { font-size: 100% !important; }
.page-id-6 .lp-project-overview .section-title,
.page-id-6 .lp-project-masterplan .section-title,
.page-id-6 .lp-project-infrastructure .section-title,
.page-id-6 .lp-project-legal-builder .section-title { color: var(--lp-ink); }
.page-id-6 .lp-project-overview .lp-home-heading__line ~ .lp-home-heading__line .section-title,
.page-id-6 .lp-project-masterplan .lp-home-heading__line ~ .lp-home-heading__line .section-title,
.page-id-6 .lp-project-infrastructure .lp-home-heading__line ~ .lp-home-heading__line .section-title,
.page-id-6 .lp-project-progress-builder .lp-home-heading__line ~ .lp-home-heading__line .section-title,
.page-id-6 .lp-project-legal-builder .lp-home-heading__line ~ .lp-home-heading__line .section-title { font-style: italic; }
.page-id-6 .lp-project-overview .lp-index-label,
.page-id-6 .lp-project-masterplan .lp-index-label,
.page-id-6 .lp-project-infrastructure .lp-index-label,
.page-id-6 .lp-project-progress-builder .lp-eyebrow,
.page-id-6 .lp-project-legal-builder .lp-index-label { margin-bottom: 24px; color: var(--lp-green); font-size: 16px; font-weight: 700; letter-spacing: .08em; line-height: 1.5; text-transform: uppercase; }
.page-id-6 .lp-project-progress-builder .lp-eyebrow { color: var(--lp-gold-light); }
.page-id-6 .lp-project-overview .lp-prose,
.page-id-6 .lp-project-masterplan .lp-project-checklist-item,
.page-id-6 .lp-project-infrastructure__description,
.page-id-6 .lp-project-infrastructure__detail,
.page-id-6 .lp-project-legal-builder .text:not(.lp-index-label) { color: var(--lp-text); font-size: 18px; line-height: 1.7; }
.page-id-6 .lp-project-legal-builder .col-inner > p { color: var(--lp-text); font-size: 18px; line-height: 1.7; }
.page-id-6 .lp-project-overview .lp-prose + .lp-prose { margin-top: 28px; }
.page-id-6 .lp-project-overview .col:last-child { padding-left: 42px; }

.page-id-6 .lp-project-masterplan .lp-project-checklist-item { position: relative; margin: 0; padding: 18px 0 18px 29px; }
.page-id-6 .lp-project-masterplan .lp-project-checklist-item::before { position: absolute; top: 28px; left: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--lp-gold); content: ""; }
.page-id-6 .lp-project-masterplan .button.is-link { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 12px; margin-top: 26px; padding: 0 24px; border: 1px solid var(--lp-green); color: #fff; background-color: var(--lp-green); font-size: 17px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; transition: background-color .2s ease, border-color .2s ease; }
.page-id-6 .lp-project-masterplan .button.is-link::after { content: "↗"; font-size: 1rem; line-height: 1; }
.page-id-6 .lp-project-masterplan .button.is-link:hover { border-color: var(--lp-green-bright); color: #fff; background-color: var(--lp-green-bright); }
.page-id-6 .lp-project-masterplan .button.is-link:focus-visible { outline: 3px solid var(--lp-gold); outline-offset: 4px; }
.page-id-6 .lp-project-masterplan .img { padding-bottom: 0; background: transparent; }
.page-id-6 .lp-project-masterplan .img img { display: block; }

.page-id-6 .lp-project-infrastructure__intro { margin-bottom: 70px; }
.page-id-6 .lp-project-infrastructure__description { max-width: 360px; margin-left: auto; }
.page-id-6 .lp-project-infrastructure__grid,
.page-id-6 .lp-project-infrastructure__grid > .col,
.page-id-6 .lp-project-infrastructure__grid > .col > .col-inner { border: 0 !important; box-shadow: none !important; }
.page-id-6 .lp-project-infrastructure__grid > .col { min-height: 255px; }
.page-id-6 .lp-project-infrastructure__number { margin-bottom: 38px; color: var(--lp-gold); font-size: 16px; font-weight: 700; }
.page-id-6 .lp-project-infrastructure__grid .section-title { border: 0 !important; box-shadow: none !important; color: #555; font-size: 1.35rem; font-weight: 700; line-height: 1.3; letter-spacing: 0; }
.page-id-6 .lp-project-infrastructure__grid .section-title > b { display: none; }
.page-id-6 .lp-project-infrastructure__grid .section-title-main { padding: 0; border: 0 !important; box-shadow: none !important; }
.page-id-6 .lp-project-infrastructure__detail { margin-top: 14px; }

.page-id-6 .lp-project-progress-builder .section-title { color: #fff; }
.page-id-6 .lp-project-progress-builder .section-bg-overlay { background-color: rgba(5,19,16,.94) !important; }
.page-id-6 .lp-project-progress-builder .lp-timeline--ux { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 62px 0 0; border-top: 1px solid rgba(255,255,255,.23); border-left: 1px solid rgba(255,255,255,.23); }
.page-id-6 .lp-project-progress-builder .lp-timeline__item { display: flex; min-width: 0; min-height: 245px; flex-direction: column; gap: 30px; padding: 30px 25px; border: 0; border-right: 1px solid rgba(255,255,255,.23); border-bottom: 1px solid rgba(255,255,255,.23); }
.page-id-6 .lp-project-progress-builder .lp-timeline__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.page-id-6 .lp-project-progress-builder .lp-timeline__index { color: var(--lp-gold-light); font-family: var(--lp-serif); font-size: 1.05rem; line-height: 1; }
.page-id-6 .lp-project-progress-builder .lp-progress-badge { padding: 4px 8px; color: #f6d98a; background: rgba(214,169,75,.12); border: 1px solid rgba(214,169,75,.44); border-radius: 999px; font-size: 12px; font-weight: 800; letter-spacing: .06em; line-height: 1.35; }
.page-id-6 .lp-project-progress-builder .lp-progress-badge--notice { color: #f7e4ae; background: rgba(247,228,174,.12); border-color: rgba(247,228,174,.46); }
.page-id-6 .lp-project-progress-builder .lp-progress-badge--plan { color: #f1c878; background: rgba(241,200,120,.12); border-color: rgba(241,200,120,.46); }
.page-id-6 .lp-project-progress-builder .lp-timeline__date { color: rgba(255,255,255,.68); font-size: 12px; font-weight: 700; letter-spacing: .04em; line-height: 1.35; }
.page-id-6 .lp-project-progress-builder .lp-timeline__date--missing { color: rgba(255,255,255,.48); font-style: italic; font-weight: 500; }
.page-id-6 .lp-project-progress-builder .lp-timeline__item h3 { color: #fff; font-size: 1.35rem; font-weight: 700; line-height: 1.3; letter-spacing: 0; }
.page-id-6 .lp-project-progress-builder .lp-timeline__item p { color: rgba(255,255,255,.88); font-size: 18px; line-height: 1.7; }

@media (min-width: 850px) {
  .page-id-6 .lp-project-progress-builder .lp-timeline--count-5 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .page-id-6 .lp-project-progress-builder .lp-timeline--count-5 .lp-timeline__item { grid-column: span 2; }
  .page-id-6 .lp-project-progress-builder .lp-timeline--count-5 .lp-timeline__item:nth-child(n+4) { grid-column: span 3; }
}

.page-id-6 .lp-project-legal-builder .img { background: #e8f0ec; }
.page-id-6 .lp-project-legal-builder .img img { display: block; width: 100%; aspect-ratio: 1.15; object-fit: cover; }
.page-id-6 .lp-project-legal-builder .col:last-child { padding-left: 55px; }
.page-id-6 .lp-project-legal-builder .text:not(.lp-index-label) { margin-top: 28px; }
.page-id-6 .lp-project-legal-builder .button { margin-top: 14px; min-height: 48px; padding: 0 24px; font-size: 17px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }

@media (max-width: 849px) {
  .page-id-6 .lp-project-overview.section,
  .page-id-6 .lp-project-masterplan.section,
  .page-id-6 .lp-project-infrastructure.section,
  .page-id-6 .lp-project-progress-builder.section,
  .page-id-6 .lp-project-legal-builder.section { padding-top: 78px !important; padding-bottom: 86px !important; }
  .page-id-6 .lp-project-overview .col:last-child,
  .page-id-6 .lp-project-legal-builder .col:last-child { padding-left: 15px; }
  .page-id-6 .lp-project-infrastructure__description { max-width: none; margin: 30px 0 0; }
  .page-id-6 .lp-project-progress-builder .lp-timeline--ux { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-id-6 .lp-project-overview .section-title,
  .page-id-6 .lp-project-masterplan .section-title,
  .page-id-6 .lp-project-infrastructure .section-title,
  .page-id-6 .lp-project-progress-builder .section-title,
  .page-id-6 .lp-project-legal-builder .section-title { font-size: 2.5rem; }
}
@media (max-width: 549px) {
  .page-id-6 .lp-project-facts .row.lp-container { width: calc(100% - 28px); }
  .page-id-6 .lp-project-facts .col { border-bottom: 1px solid rgba(255,255,255,.18); }
  .page-id-6 .lp-project-facts .col:nth-child(2) { border-right: 0; }
  .page-id-6 .lp-project-facts .col:nth-last-child(-n+2) { border-bottom: 0; }
  .page-id-6 .lp-project-facts .col-inner > p { margin-bottom: 8px; font-size: 16px; }
  .page-id-6 .lp-project-facts .section-title { font-size: clamp(1.45rem, 7vw, 1.8rem); }
  .page-id-6 .lp-project-anchor-links.stack { gap: 8px; }
  .page-id-6 .lp-project-anchor-links.stack > a { font-size: 16px; }
  .page-id-6 .lp-project-overview.section,
  .page-id-6 .lp-project-masterplan.section,
  .page-id-6 .lp-project-infrastructure.section,
  .page-id-6 .lp-project-progress-builder.section,
  .page-id-6 .lp-project-legal-builder.section { padding-top: 64px !important; padding-bottom: 70px !important; }
  .page-id-6 .lp-project-overview .section-title,
  .page-id-6 .lp-project-masterplan .section-title,
  .page-id-6 .lp-project-infrastructure .section-title,
  .page-id-6 .lp-project-progress-builder .section-title,
  .page-id-6 .lp-project-legal-builder .section-title { font-size: 2.125rem; line-height: 1.12; }
  .page-id-6 .lp-project-overview .lp-prose,
  .page-id-6 .lp-project-masterplan .lp-project-checklist-item,
  .page-id-6 .lp-project-infrastructure__description,
  .page-id-6 .lp-project-infrastructure__detail,
  .page-id-6 .lp-project-legal-builder .text:not(.lp-index-label),
  .page-id-6 .lp-project-legal-builder .col-inner > p,
  .page-id-6 .lp-project-progress-builder .lp-timeline__item p { font-size: 16px; }
  .page-id-6 .lp-project-masterplan .img { margin-top: 28px; padding-bottom: 0; background: transparent; }
  .page-id-6 .lp-project-infrastructure__intro { margin-bottom: 38px; }
  .page-id-6 .lp-project-infrastructure__grid > .col { min-height: 205px; }
  .page-id-6 .lp-project-infrastructure__number { margin-bottom: 25px; }
  .page-id-6 .lp-project-progress-builder .lp-timeline--ux { grid-template-columns: 1fr; margin-top: 42px; }
  .page-id-6 .lp-project-progress-builder .lp-timeline__item { min-height: 0; gap: 20px; padding: 26px 23px; }
  .page-id-6 .lp-project-progress-builder .lp-timeline__meta { align-items: flex-start; }
  .page-id-6 .lp-project-masterplan .button.is-link,
  .page-id-6 .lp-project-legal-builder .button { font-size: 16px; }
  .page-id-6 .lp-project-legal-builder .img img { aspect-ratio: 1.3; }
}
.lp-home-progress-shortcut.section { background: var(--lp-sand); border-bottom: 1px solid var(--lp-line); }
.lp-home-progress-shortcut .col-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 22px; }
.lp-home-progress-shortcut .col-inner > .text { flex: 1 1 260px; }
.lp-home-progress-shortcut p { margin: 0; color: var(--lp-ink); font-size: .82rem; }
.lp-home-progress-shortcut .button { margin: 0; }
.lp-footer-cta-block .lp-container > .col:last-child { text-align: right; }
@media (max-width: 849px) {
  .lp-footer-cta-block .lp-eyebrow,
  .lp-footer-cta-block .button.lp-footer__circle-link--light,
  .lp-footer-block .lp-footer-builder__grid .lp-footer__heading,
  .lp-footer-block .lp-footer-builder__grid .text:not(.lp-footer__heading),
  .lp-footer-block .lp-footer-builder__grid > .col p,
  .lp-footer-block .lp-footer-builder__grid .lp-arrow-button,
  .lp-footer-block .lp-footer-builder__bottom .text,
  .lp-footer-block .lp-footer-builder__bottom p,
  .lp-footer-builder__brand strong,
  .lp-footer-builder__brand small { font-size: 16px; }
  .lp-footer-cta-block.section { padding-block: 34px !important; }
  .lp-footer-cta-block .lp-container > .col:last-child { margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
  .lp-footer-cta-block .lp-container > .col:last-child .col-inner { min-height: 0; justify-content: flex-start; }
  .lp-footer-cta-block .lp-container > .col:last-child { text-align: left; }
  .lp-footer-block .lp-footer-builder__grid > .col:nth-child(n+2) .col-inner { min-height: 0; padding: 18px 0 0; border-top: 1px solid rgba(214,169,75,.2); border-left: 0; }
  .lp-footer-block .lp-footer-builder__grid > .col:not(:first-child) { margin-top: 20px; }
  .lp-footer-block .lp-footer-builder__grid .lp-arrow-button.button { width: 100%; max-width: 360px; }
  .lp-footer-block .lp-footer-builder__grid > .col:first-child .lp-footer-builder__brand-wrap { min-height: 0; margin-bottom: 18px; }
  .lp-footer-block .lp-footer-builder__grid > .col:nth-child(n+2) .lp-footer__heading { min-height: 0; margin-bottom: 19px; }
}
@media (max-width: 549px) {
  .lp-footer-cta-block.section { padding-block: 30px !important; }
  .lp-footer-block .lp-footer-builder__grid { padding-block: 32px 26px; }
  .lp-footer-block .lp-footer-builder__grid > .col:nth-child(n+2) .col-inner { padding-left: 0; }
  .lp-footer-block .lp-footer-builder__grid > .col:not(:first-child) { margin-top: 8px; }
  .lp-footer-block .lp-footer-builder__bottom .text { padding-block: 12px; }
  .lp-project-anchor-links.stack { display: flex; flex-direction: row !important; flex-wrap: nowrap; gap: 8px; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; }
  .lp-project-anchor-links.stack > a { flex: 0 0 auto; min-height: 42px; margin: 0; padding-inline: 13px; white-space: nowrap; }
  .lp-contact-builder .lp-contact-stage__banner.banner { height: 520px !important; padding-top: 520px !important; }
  .lp-editorial-hero--policy { min-height: 340px; }
  .lp-editorial-hero--policy .lp-editorial-hero__content { padding-block: 65px 45px; }
  .lp-editorial-hero--policy .lp-editorial-hero__content h1 { font-size: clamp(2.4rem, 12vw, 3.5rem); }
}
@media (max-width: 480px) {
  .lp-editorial-hero--article { min-height: 300px; }
  .lp-editorial-hero--article .lp-editorial-hero__content { padding-block: 60px 48px; }
  .lp-editorial-hero--article .lp-editorial-hero__content h1 { font-size: clamp(2.1rem, 9vw, 3.3rem); }
  .lp-progress-entry { grid-template-columns: 35px minmax(0, 1fr); }
  .lp-progress-entry__number { grid-row: 1 / span 3; }
  .lp-progress-entry__meta { grid-column: 2; }
  .lp-progress-entry > div:nth-of-type(3) { grid-column: 2; }
  .lp-progress-entry .lp-entry-arrow { grid-column: 2; grid-row: auto; }
}

/* Make Flatsome's floating back-to-top control easier to spot and tap. */
#top-link.back-to-top {
  width: 48px;
  height: 48px;
  min-height: 48px;
  padding: 0;
  border: 1px solid #f07818;
  background-color: #f07818;
  color: #fff;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .24);
}
#top-link.back-to-top:hover,
#top-link.back-to-top:focus-visible {
  border-color: #d95d0a;
  background-color: #d95d0a;
  color: #fff;
}
#top-link.back-to-top:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}
@media (max-width: 849px) {
  #top-link.back-to-top {
    width: 46px;
    height: 46px;
    min-height: 46px;
  }
}
