/* Navigation and footer refinements shared by every public template. */
.archive-page .page-heading .ll-hero__image{display:block;width:min(100%,36rem);max-height:18rem;object-fit:cover;margin:0 0 1.5rem;border-radius:var(--ll-radius)}
.archive-page .content-grid--featured .content-card--featured{border-color:var(--ll-blue);box-shadow:0 12px 32px #07111b12}
.archive-page__cta{display:flex;justify-content:center;margin-block:2.5rem 0}
.posts-index .archive-intro,.posts-index .archive-empty{max-width:850px;margin-inline:auto}
.posts-index .archive-intro{margin-bottom:1.5rem}
.ll-article-meta {display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;list-style:none;margin:0 0 1.5rem;padding:0;color:var(--ll-muted);font-size:.95rem;}
.ll-article-meta li {margin:0;}
.ll-article-meta time {font-variant-numeric:tabular-nums;}
.ll-article .entry-featured-image {margin:1.5rem 0 0;}
.ll-article .entry-featured-image figcaption {margin-top:.5rem;color:var(--ll-muted);font-size:.875rem;}
.ll-article-related {margin-top:clamp(2.5rem,6vw,4rem);padding-top:1.5rem;border-top:1px solid var(--ll-border);}
.ll-article-related h2 {margin:0 0 1.25rem;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;}
.site-header__inner {position: relative;flex-wrap: wrap;padding-block: .5rem;}
.site-branding,.header-actions {flex: none;}
.header-actions {margin-left: auto;}
.primary-navigation {flex: 1 1 auto;min-width: 0;}
.primary-menu {flex-wrap: wrap;justify-content: flex-end;}
.button {border-radius: 10px;}
.service-cta {max-width: 960px;margin: clamp(3rem,6vw,5rem) auto 0;padding: clamp(1.6rem,4vw,3rem);border: 1px solid var(--ll-border);border-radius: 16px;background: #eef4ff;}
.service-cta h2 {margin: 0 0 .6rem;font-size: clamp(1.75rem,3vw,2.4rem);line-height: 1.2;}
.service-cta p {max-width: 640px;margin: 0 0 1.4rem;color: var(--ll-muted);}
.service-content > p:first-child {color: var(--ll-muted);font-size: clamp(1.15rem,2vw,1.4rem);line-height: 1.55;}
.service-content > h2 {position:relative;padding-top:1.25rem;border-top:1px solid var(--ll-border);letter-spacing:-.035em;}
.service-content > h2::before {content:"";position:absolute;inset:-2px auto auto 0;width:3.5rem;height:3px;border-radius:3px;background:var(--ll-blue);}
.service-content > h2 + ul {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;list-style:none;padding:0;}
.service-content > h2 + ul li {min-width:0;margin:0;padding:1.15rem 1.25rem;border:1px solid var(--ll-border);border-radius:12px;background:#fff;line-height:1.5;}
.service-content > h2 + ul li::before {content:"";display:inline-block;width:.55rem;height:.55rem;margin-right:.7rem;border-radius:50%;background:var(--ll-blue);vertical-align:.1em;}
.service-content > h2 + p {margin-top:.75rem;}
.service-content > h2 + p + p {padding:1rem 1.25rem;border-left:3px solid var(--ll-blue);border-radius:0 10px 10px 0;background:#edf4ff;color:var(--ll-muted);}
@media (max-width:640px) {.service-content > h2 + ul {grid-template-columns:1fr;}}
.entry-content,.service-cta {overflow-wrap: anywhere;}
.primary-menu > li > a {display: inline-flex;align-items: center;min-height: 44px;font-size: .92rem;white-space: nowrap;}
.primary-menu li:hover > .sub-menu {display: block;}
.primary-menu li.is-closed > .sub-menu {display: none !important;}
.primary-menu .submenu-toggle {display: inline-grid;place-items: center;min-width: 44px;min-height: 44px;margin-left: .15rem;border: 0;border-radius: 6px;background: transparent;color: #203a60;cursor: pointer;}
.submenu-toggle__chevron {display:block;width:.62rem;height:.62rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.15rem) rotate(45deg);transition:transform .18s ease;}
.submenu-toggle[aria-expanded=true] .submenu-toggle__chevron {transform:translateY(.15rem) rotate(225deg);}
@media (prefers-reduced-motion: reduce) {.submenu-toggle__chevron {transition:none;}}
.language-switcher a {display: inline-flex;align-items: center;justify-content: center;min-width: 44px;min-height: 44px;}
.primary-menu a:focus-visible,.primary-menu .submenu-toggle:focus-visible {outline: 3px solid var(--focus-light,var(--ll-blue));outline-offset: 3px;}
.primary-menu .submenu-toggle:focus:not(:focus-visible) {outline:none;box-shadow:none;}
.primary-menu .current-menu-item > a,.primary-menu .current-menu-ancestor > a {color: #1d4fd0;}

@media (min-width: 1101px) {
	.primary-menu > li.ll-services-menu > .submenu-toggle {margin-left:0;border-color:transparent;background:transparent;}
	.primary-menu > li.ll-services-menu > .submenu-toggle:hover {background:var(--ll-paper);}
	html.js .primary-menu > li.ll-services-menu > .sub-menu {display:none !important;}
	.primary-menu > li.ll-services-menu {position: static;}
	.primary-menu > li.ll-services-menu > .sub-menu {
		left: 0;
		right: 0;
		top: calc(100% - 1px);
		width: 100%;
		min-width: 0;
		margin: 0;
		padding: 1.4rem;
		border-radius: 0 0 16px 16px;
		grid-template-columns: repeat(5,minmax(0,1fr));
		gap: 1.2rem;
	}
	.primary-menu > li.ll-services-menu:is(:hover,.is-open) > .sub-menu {display: grid;}
	.primary-menu > li.ll-services-menu > .sub-menu > li {position: static;}
	.primary-menu > li.ll-services-menu > .sub-menu > li > a {font-weight: 800;line-height: 1.25;white-space: normal;}
	.primary-menu > li.ll-services-menu > .sub-menu > li > .sub-menu {
		display: grid;
		position: static;
		min-width: 0;
		gap: .1rem;
		margin: .4rem 0 0;
		padding: 0;
		border: 0;
		box-shadow: none;
	}
	.primary-menu > li.ll-services-menu > .sub-menu > li > .sub-menu a {padding: .28rem 0;color: #43546b;font-size: .82rem;font-weight: 500;line-height: 1.35;}
	.primary-menu > li.ll-services-menu > .sub-menu .submenu-toggle {display: none;}
	.primary-menu > li.ll-services-menu > .sub-menu > li > .sub-menu .sub-menu {position: static;display: grid;gap: .1rem;margin: 0 0 .2rem .65rem;padding: 0;border: 0;box-shadow: none;}
}

.ll-mega-panel[hidden],.ll-mega-backdrop[hidden],.ll-mega-panel__view[hidden] {display:none !important;}
@media (min-width:1101px) {
	.ll-mega-backdrop {position:fixed;inset:0;background:#07111b8c;backdrop-filter:blur(4px);z-index:19;}
	.ll-mega-panel {position:absolute;z-index:21;top:calc(100% + .65rem);left:50%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1280px,calc(100% - 2rem));max-height:calc(100vh - 110px);transform:translateX(-50%);overflow:hidden;border:1px solid var(--ll-border);border-radius:18px;background:#fff;color:var(--ll-ink);box-shadow:0 22px 65px #07111b38;}
	.ll-mega-panel__heading {display:flex;align-items:center;gap:.75rem;padding:1.15rem 1.5rem;border-bottom:1px solid var(--ll-border);}
	.ll-mega-panel__title {margin:0;font-size:1rem;font-weight:800;line-height:1.35;}
	.ll-mega-panel__detail {margin:0;color:var(--ll-muted);font-size:.86rem;}
	.ll-mega-panel__close {display:grid;place-items:center;flex:none;width:44px;height:44px;margin-left:auto;border:0;border-radius:8px;background:transparent;color:var(--ll-muted);font-family:inherit;font-size:1.7rem;line-height:1;cursor:pointer;}
	.ll-mega-panel__close:hover {background:var(--ll-paper);color:var(--ll-ink);}
	.ll-mega-panel__body {display:grid;grid-template-columns:minmax(230px,26%) minmax(0,1fr);min-height:370px;overflow:hidden;}
	.ll-mega-panel__sidebar {display:grid;align-content:start;gap:.3rem;padding:1rem;border-right:1px solid var(--ll-border);background:#f5f7fb;overflow:auto;}
	.ll-mega-panel__category {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;width:100%;min-height:58px;padding:.65rem .8rem;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ll-ink);font-family:inherit;font-size:.9rem;font-weight:700;line-height:1.35;text-align:left;cursor:pointer;}
	.ll-mega-panel__category:is(:hover,[aria-pressed=true]) {border-color:var(--ll-border);background:#fff;color:var(--ll-blue);}
	.ll-mega-panel__number {display:grid;place-items:center;width:2rem;height:2rem;border-radius:7px;background:#e8effc;color:#1e40af;font-size:.75rem;font-weight:800;}
	.ll-mega-panel__category-arrow {font-size:1.35rem;font-weight:400;}
	.ll-mega-panel__content {min-width:0;padding:1.5rem 1.75rem 2rem;overflow:auto;}
	.ll-mega-panel__overview {display:inline-flex;align-items:center;min-height:42px;color:var(--ll-ink);font-size:1.35rem;font-weight:800;line-height:1.25;text-decoration:none;}
	.ll-mega-panel__overview::after {content:"→";margin-left:.65rem;color:var(--ll-blue);font-size:1rem;}
	.ll-mega-panel__overview:hover {color:var(--ll-blue);}
	.ll-mega-panel__summary {max-width:65ch;margin:.3rem 0 1.25rem;color:var(--ll-muted);font-size:.94rem;line-height:1.55;}
	.ll-mega-panel__links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;list-style:none;margin:0;padding:0;}
	.ll-mega-panel__link-card {min-width:0;padding:.8rem .9rem;border:1px solid transparent;border-radius:10px;}
	.ll-mega-panel__link-card:hover {border-color:#d7e2f3;background:#f0f4fc;}
	.ll-mega-panel__link {display:inline-flex;min-height:28px;align-items:center;color:var(--ll-ink);font-weight:750;line-height:1.3;text-decoration:none;}
	.ll-mega-panel__link:hover {color:var(--ll-blue);text-decoration:underline;}
	.ll-mega-panel__link-summary {margin:.15rem 0 0;color:var(--ll-muted);font-size:.8rem;line-height:1.45;}
	.ll-mega-panel__nested {display:flex;flex-wrap:wrap;gap:.1rem .75rem;list-style:none;margin:.65rem 0 0;padding:.65rem 0 0;border-top:1px solid var(--ll-border);}
	.ll-mega-panel__nested a {display:inline-flex;min-height:32px;align-items:center;color:#385474;font-size:.8rem;text-decoration:none;}
	.ll-mega-panel__nested a:hover {color:var(--ll-blue);text-decoration:underline;}
	.ll-mega-panel__footer {display:flex;align-items:center;gap:1rem;min-height:62px;padding:.65rem 1.5rem;border-top:1px solid var(--ll-border);background:#f9fbff;}
	.ll-mega-panel__footer p {margin:0;font-size:.85rem;font-weight:750;}
	.ll-mega-panel__footer p span {color:var(--ll-muted);font-weight:400;}
	.ll-mega-panel__cta {display:inline-flex;align-items:center;min-height:44px;margin-left:auto;color:var(--ll-blue);font-size:.9rem;font-weight:800;text-decoration:none;white-space:nowrap;}
	.ll-mega-panel__cta::after {content:"→";margin-left:.65rem;}
	.ll-mega-panel__cta:hover {text-decoration:underline;}
	.ll-mega-panel :focus-visible {outline:3px solid var(--ll-blue);outline-offset:2px;}
}
@media (max-width:1100px) {.ll-mega-panel,.ll-mega-backdrop {display:none !important;}}

@media (max-width: 1100px) {
	.site-header__inner {min-height: 72px;flex-wrap: wrap;padding-block: .5rem;}
	.site-branding {flex: none;max-width: 100%;}
	.menu-toggle {display: inline-flex;align-items: center;gap: .5rem;margin-left: auto;padding: .6rem;border: 1px solid #dce5f0;border-radius: 8px;background: #fff;color: #101827;cursor: pointer;}
	.menu-toggle__icon {display: inline-block;width: 1rem;height: .7rem;border-block: 2px solid currentColor;position: relative;}
	.menu-toggle__icon::after {content: "";position: absolute;left: 0;right: 0;top: 50%;border-top: 2px solid currentColor;transform: translateY(-50%);}
	.primary-navigation {display: none;position: absolute;inset-inline: 0;top: 100%;max-height: calc(100vh - 72px);overflow-y: auto;margin: 0;padding: 1rem;background: #fff;border: 1px solid #dce5f0;box-shadow: 0 18px 50px #07111b22;}
	.menu-toggle[aria-expanded=true] + .primary-navigation {display: block;}
	.primary-menu {display: grid;gap: 0;}
	.primary-menu li {display: grid;grid-template-columns: minmax(0,1fr) auto;align-items: start;}
	.primary-menu > li {border-bottom: 1px solid #e3ebf4;}
	.primary-menu > li > a {padding: .45rem .2rem;}
	.primary-menu .sub-menu {grid-column: 1 / -1;position: static;min-width: 0;margin: 0;padding: 0 0 .5rem 1rem;border: 0;box-shadow: none;}
	.primary-menu .sub-menu .sub-menu {padding-left: .8rem;}
	.primary-menu li:hover > .sub-menu {display: none;}
	.primary-menu li.is-open > .sub-menu,.primary-menu li:focus-within > .sub-menu {display: block;}
	.primary-menu .submenu-toggle {float: none;margin: .1rem;}
	.header-actions {display: none;}
	.mobile-nav-actions {display: flex;gap: .7rem;align-items: center;flex-wrap: wrap;padding-top: 1rem;}
}
@media (max-width: 1100px) {
	html:not(.js) .menu-toggle {display: none;}
	html:not(.js) .primary-navigation {display: block;position: static;max-height: none;overflow: visible;margin-left: auto;padding: 0;border: 0;box-shadow: none;}
	html:not(.js) .primary-menu .sub-menu {display: block;}
}

.site-footer--b .footer-main {grid-template-columns: minmax(0,1fr) auto;align-items: start;}
.site-footer--b .footer-main > .footer-nav--services,.site-footer--b .footer-main > .footer-nav--legal {display: none;}
.site-footer--b .footer-main > nav.footer-nav--company {display: block;}
.site-footer--b .footer-nav--company .footer-menu {display: flex;gap: 1.4rem;}
.site-footer .footer-brand .wordmark span {color: #fff;}
.site-footer .footer-brand .wordmark b {color: #84b1ff;}
.site-header .custom-logo-link,.site-footer .custom-logo-link{display:inline-flex;align-items:center;max-width:min(210px,100%)}
.site-header .custom-logo,.site-footer .custom-logo{display:block;width:auto;max-width:100%;max-height:56px;object-fit:contain}
.site-footer .custom-logo-link{padding:.4rem;border-radius:10px;background:#fff}
.site-footer .footer-menu a:hover {color: #fff;text-decoration: underline;}
.footer-social__list {display: flex;flex-wrap: wrap;gap: .25rem 1rem;list-style: none;margin: 1rem 0 0;padding: 0;}
.footer-social__list a {display: inline-flex;align-items: center;min-height: 44px;color: #dce7f6;font-size: .875rem;font-weight: 700;text-underline-offset: .2em;}
.footer-social__list a:hover {color: #fff;}
@media (max-width: 560px) {
	.site-footer--b .footer-main {grid-template-columns: 1fr;gap: 1.25rem;}
}

.ll-project-inquiry .button[disabled] {opacity: .7;cursor: progress;}
.ll-project-inquiry .form-field__error {margin: .35rem 0 0;color: var(--ll-ink);font-weight: 600;}
.ll-form-submit-message {margin-inline-start: .75rem;color: var(--ll-muted);}
.ll-form-submit-message:empty {display: none;}
@media (max-width: 560px) {
	.ll-form-submit-message:not(:empty) {display: block;margin: .5rem 0 0;}
}

/* Native Gutenberg patterns remain editable and retain readable markup without this theme. */
.ll-pattern-process,.ll-pattern-faq,.ll-pattern-dark,.ll-pattern-light {padding: clamp(1.5rem,4vw,3rem);border-radius: var(--ll-radius);}
.ll-pattern-process,.ll-pattern-light {border: 1px solid var(--ll-border);background: #fff;}
.ll-pattern-process h2,.ll-pattern-faq h2,.ll-pattern-dark h2,.ll-pattern-light h2 {margin-top: 0;}
.ll-pattern-process__steps {display: grid;grid-template-columns: repeat(5,minmax(0,1fr));gap: 1rem;margin: 2rem 0 0;padding-left: 1.5rem;}
.ll-pattern-process__steps li {min-width: 0;padding: .9rem;border: 1px solid var(--ll-border);border-radius: 12px;font-weight: 700;}
.ll-pattern-faq {border-top: 3px solid var(--ll-blue);background: #fff;}
.ll-pattern-faq h3 {margin: 1.7rem 0 .4rem;font-size: 1.2rem;}
.ll-pattern-faq h3 + p {margin-top: 0;color: var(--ll-muted);}
.ll-pattern-split {gap: 1.2rem;}
.ll-pattern-split > .wp-block-column {min-width: 0;padding: clamp(1.25rem,3vw,2rem);border: 1px solid var(--ll-border);border-radius: var(--ll-radius);background: #fff;}
.ll-pattern-split h2 {margin-top: 0;}
.ll-pattern-features .wp-block-columns {gap: 1.2rem;}
.ll-pattern-features .wp-block-column {min-width: 0;padding: clamp(1.25rem,3vw,2rem);border: 1px solid var(--ll-border);border-radius: var(--ll-radius);background: #fff;}
.ll-pattern-features h3 {margin-top: 0;font-size: 1.2rem;}
.ll-pattern-features .wp-block-column p {color: var(--ll-muted);}
.ll-pattern-dark {background: var(--ll-night);color: #fff;}
.ll-pattern-dark h2 {color: #fff;}
.ll-pattern-dark p {color: #d5e0ee;}
@media (max-width: 900px) {.ll-pattern-process__steps {grid-template-columns: repeat(2,minmax(0,1fr));}}
@media (max-width: 560px) {.ll-pattern-process__steps {grid-template-columns: 1fr;}}

.ll-cta-section {max-width: 1280px;margin: clamp(2rem,5vw,4rem) auto;padding: clamp(2rem,6vw,4rem);border-radius: var(--ll-radius);background: var(--ll-night);color: #fff;}
.ll-cta-section__inner {max-width: 800px;}
.ll-cta-section h2 {margin: 0 0 .65rem;color: inherit;font-size: clamp(2rem,4vw,3.4rem);line-height: 1.15;}
.ll-cta-section p {margin: 0 0 1.5rem;color: #d5e0ee;font-size: clamp(1rem,1.6vw,1.2rem);}
.ll-cta-section__button {display: inline-flex;min-height: 48px;align-items: center;justify-content: center;padding: .7rem 1.2rem;border-radius: 10px;background: var(--ll-blue);color: #fff;font-weight: 700;text-decoration: none;}
.ll-cta-section__button:hover {background: #1d4fd0;color: #fff;}
.ll-cta-section--light {border: 1px solid var(--ll-border);background: #fff;color: var(--ll-ink);}
.ll-cta-section--light p {color: var(--ll-muted);}
@media (max-width: 560px) {.ll-cta-section__button {width: 100%;}}

.ll-metrics {max-width: 1280px;margin: clamp(2rem,5vw,4rem) auto;padding: clamp(1.5rem,4vw,3rem);border: 1px solid var(--ll-border);border-radius: var(--ll-radius);background: #fff;}
.ll-metrics h2 {margin: 0 0 1.5rem;font-size: clamp(1.8rem,3vw,2.6rem);line-height: 1.2;}
.ll-metrics__list {display: grid;grid-template-columns: repeat(auto-fit,minmax(min(100%,220px),1fr));gap: 1rem;list-style: none;margin: 0;padding: 0;}
.ll-metrics__item {display: flex;flex-direction: column;gap: .3rem;min-width: 0;padding: 1.25rem;border: 1px solid var(--ll-border);border-radius: 12px;background: var(--ll-paper);}
.ll-metrics__value {color: var(--ll-blue);font-size: clamp(2rem,4vw,3rem);line-height: 1.1;overflow-wrap: anywhere;}
.ll-metrics__label {font-weight: 700;line-height: 1.35;}
.ll-metrics__context {color: var(--ll-muted);font-size: .875rem;line-height: 1.45;}
.ll-metrics__unit {font-weight: 700;color: var(--ll-ink);}
.ll-metrics__date,.ll-metrics__evidence {color: var(--ll-muted);font-size: .8125rem;line-height: 1.45;overflow-wrap: anywhere;}
.ll-testimonial{max-width:900px;margin:clamp(2rem,5vw,4rem) auto;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--ll-border);border-radius:var(--ll-radius);background:#fff;box-shadow:0 16px 40px #07111b0b}
.ll-testimonial blockquote{margin:0}
.ll-testimonial blockquote p{margin:0;color:var(--ll-ink);font-size:clamp(1.25rem,2.5vw,1.8rem);font-weight:650;line-height:1.45}
.ll-testimonial figcaption{display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--ll-border);color:var(--ll-muted);font-size:.95rem}
.ll-testimonial figcaption span{font-weight:750;color:var(--ll-ink)}
.ll-logo-strip{max-width:1280px;margin:clamp(2rem,5vw,4rem) auto;padding:clamp(1.5rem,4vw,3rem);border:1px solid var(--ll-border);border-radius:var(--ll-radius);background:#fff}
.ll-logo-strip h2{margin:0 0 1.5rem;font-size:clamp(1.6rem,3vw,2.3rem)}
.ll-logo-strip ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:1rem;list-style:none;margin:0;padding:0}
.ll-logo-strip li{min-width:0;padding:1rem;border:1px solid var(--ll-border);border-radius:12px;background:var(--ll-paper)}
.ll-logo-strip figure{display:grid;align-content:center;justify-items:center;gap:.8rem;min-height:118px;margin:0;text-align:center}
.ll-logo-strip__image{display:block;width:auto;max-width:100%;max-height:68px;object-fit:contain}
.ll-logo-strip figcaption{color:var(--ll-muted);font-size:.88rem;font-weight:700;line-height:1.3;overflow-wrap:anywhere}

/* Core owns hero content and links; this theme only supplies the four presentations. */
.ll-hero{width:100%;max-width:1280px;margin:0 auto clamp(2rem,5vw,4rem);overflow:hidden;border:1px solid var(--ll-border);border-radius:var(--ll-radius);background:#fff;color:var(--ll-ink)}
.ll-hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(1.5rem,5vw,4rem);padding:clamp(2rem,6vw,5.5rem)}
.ll-hero__copy{min-width:0}.ll-hero__eyebrow{margin:0 0 .7rem;color:var(--ll-blue);font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ll-hero h1,.ll-hero h2{margin:0 0 1.25rem;color:inherit;font-size:clamp(2.3rem,4.7vw,4.7rem);line-height:1.09;letter-spacing:-.045em;overflow-wrap:anywhere;hyphens:none}
.ll-hero__intro{max-width:700px;margin:0;color:var(--ll-muted);font-size:clamp(1.05rem,1.55vw,1.25rem);line-height:1.65}
.ll-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.ll-hero__action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.2rem;border:1px solid var(--ll-blue);border-radius:10px;background:var(--ll-blue);color:#fff;font-weight:750;text-align:center;text-decoration:none}
.ll-hero__action:hover{background:#1d4fd0;color:#fff}.ll-hero__action--secondary{border-color:var(--ll-border);background:transparent;color:var(--ll-ink)}
.ll-hero__action--secondary:hover{background:var(--ll-paper);color:var(--ll-ink)}
.ll-hero__visual{display:grid;place-items:center;width:100%;min-width:0;margin:0}.ll-hero__image{display:block;width:100%;height:auto;max-height:460px;object-fit:contain;border-radius:12px}
.ll-hero--service{background:var(--ll-paper)}.ll-hero--no-visual .ll-hero__inner{grid-template-columns:1fr}
.ll-service-page .ll-hero--service {margin:1.5rem auto clamp(2.5rem,5vw,4.5rem);border-color:#1d3658;border-radius:20px;background:radial-gradient(circle at 78% 45%,#1b3768 0,#102341 38%,var(--ll-night) 78%);color:#fff;}
.ll-service-page .ll-hero--service .ll-hero__inner {grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);padding:clamp(2rem,5vw,4.5rem);}
.ll-service-page .ll-hero--service .ll-hero__eyebrow {color:#9bd7ff;}
.ll-service-page .ll-hero--service .ll-hero__intro {color:#d5e0ee;}
.ll-service-page .ll-hero--service .ll-hero__action--secondary {border-color:#8296ad;color:#fff;}
.ll-service-page .ll-hero--service .ll-system-illustration {max-width:470px;}
.ll-service-page .service-content {padding-top:.25rem;}
.ll-service-page .service-content > h2:first-child {margin-top:0;}
.ll-service-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;margin:1.5rem 0 clamp(2rem,4vw,3rem);padding:clamp(2rem,4.5vw,4rem);border:1px solid #203b60;border-radius:20px;background:linear-gradient(120deg,#07111b,#142b4d);color:#fff}
.ll-service-hero__copy{min-width:0}.ll-service-hero__eyebrow{margin:0 0 1rem;color:#9bd7ff;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ll-service-hero h1{max-width:13ch;margin:0 0 1.2rem;font-size:clamp(2.5rem,4.5vw,4.4rem);line-height:1.07;letter-spacing:-.045em;overflow-wrap:anywhere}
.ll-service-hero__intro{max-width:56ch;margin:0;color:#d5e0ee;font-size:clamp(1.05rem,1.45vw,1.2rem);line-height:1.55}
.ll-service-hero__scope{min-width:0;padding:clamp(1.2rem,2.5vw,2rem);border:1px solid #dce5f0;border-radius:16px;background:#fff;color:var(--ll-ink);box-shadow:0 18px 42px #020b1b38}
.ll-service-hero__scope h2{margin:0 0 1rem;font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.25}
.ll-service-hero__scope ol{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}
.ll-service-hero__scope li{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.8rem;align-items:start;padding:.9rem 1rem;border:1px solid #e2e9f3;border-radius:10px;background:#f7faff}
.ll-service-hero__scope li span{color:var(--ll-blue);font-size:.8rem;font-weight:850;letter-spacing:.04em}
.ll-service-hero__scope li p{margin:0;line-height:1.45}
.ll-service-page .service-content:has(>.ll-service-editorial-grid){max-width:1100px;margin-inline:auto}
.ll-service-page .service-content>.ll-service-editorial-grid{max-width:1100px}
.ll-service-editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.ll-service-editorial-card{min-width:0;padding:clamp(1.4rem,2.5vw,2.2rem);border:1px solid var(--ll-border);border-radius:16px;background:#fff}
.ll-service-editorial-card h2{margin:0 0 1rem;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.2}
.ll-service-editorial-card p{margin:.65rem 0 0;color:var(--ll-muted);line-height:1.65}
.ll-service-editorial-card p+p{padding:.85rem 1rem;border-left:3px solid var(--ll-blue);border-radius:0 8px 8px 0;background:#edf4ff}
@media(max-width:800px){.ll-service-hero,.ll-service-editorial-grid{grid-template-columns:1fr}.ll-service-hero h1{max-width:none}}
@media(max-width:520px){.ll-service-hero{padding:1.5rem;border-radius:16px}.ll-service-hero__scope{padding:1rem}}
@media(max-width:800px){.ll-service-page .ll-hero--service .ll-hero__inner {grid-template-columns:1fr;}.ll-service-page .ll-hero--service .ll-hero__visual {width:min(100%,440px);}}
@media(max-width:520px){.ll-service-page .ll-hero--service {border-radius:16px;}}
.ll-hero--product .ll-hero__image{background:var(--ll-paper)}
.ll-hero--homepage,.ll-hero--project{border-color:var(--ll-navy);background:var(--ll-night);color:#fff}
.ll-hero--homepage .ll-hero__eyebrow,.ll-hero--project .ll-hero__eyebrow{color:#9bd7ff}
.ll-hero--homepage .ll-hero__intro,.ll-hero--project .ll-hero__intro{color:#d5e0ee}
.ll-hero--homepage .ll-hero__action--secondary,.ll-hero--project .ll-hero__action--secondary{border-color:#8296ad;color:#fff}
.ll-hero--homepage .ll-hero__action--secondary:hover,.ll-hero--project .ll-hero__action--secondary:hover{background:#ffffff1a;color:#fff}
.ll-hero--project .ll-hero__image{object-fit:cover;aspect-ratio:4/3}
@media(max-width:800px){.ll-hero__inner{grid-template-columns:1fr}.ll-hero__visual{max-width:520px;margin-inline:auto}}
@media(max-width:520px){.ll-hero__inner{padding:2rem 1.25rem}.ll-hero__actions{display:grid}.ll-hero__action{width:100%}.ll-hero h1,.ll-hero h2{font-size:clamp(2.2rem,10vw,3.2rem)}}

.ll-archive-filter {display: flex;flex-wrap: wrap;align-items: end;gap: .75rem;margin: 0 0 2rem;padding: 1rem;border: 1px solid var(--ll-border);border-radius: var(--ll-radius);background: #fff;}
.ll-archive-filter label {display: block;flex-basis: 100%;font-weight: 700;}
.ll-archive-filter select {min-width: min(100%,260px);min-height: 46px;padding: .55rem .75rem;border: 1px solid #64748b;border-radius: 8px;background: #fff;color: var(--ll-ink);}
.ll-archive-filter > a {display: inline-flex;align-items: center;min-height: 46px;padding-inline: .4rem;font-weight: 700;}
@media (max-width: 560px) {.ll-archive-filter select,.ll-archive-filter .button {width: 100%;}}
/* Corporate footer uses native menus and Core's approved public contact settings. */
.site-footer--a .footer-main{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.site-footer .footer-heading{margin:0 0 .75rem;color:#fff;font-size:.875rem;font-weight:750;letter-spacing:.035em}
.site-footer .footer-contact address{margin-top:.5rem;font-style:normal;font-size:.95rem;line-height:1.65}
.site-footer--b .footer-heading{display:none}
@media(max-width:560px){.site-footer--a .footer-main{grid-template-columns:1fr 1fr}.site-footer--a .footer-brand,.site-footer--a .footer-contact{grid-column:1/-1}}
.home .site-footer{margin-top:0}
/* Keep homepage anchors and focused controls clear of the active sticky header. */
.home .front-page :is([id],a,button,input,select,textarea,summary){scroll-margin-top:96px}
