/* Warm expert: approved reference, built with native WordPress blocks. */
:root { --lt-ink:#08284c; --lt-blue:#007dab; --lt-cream:#fbf7f0; --lt-line:#ded5c8; --lt-sand:#f4eadc; }
.wp-site-blocks { padding:0; }
.lt-header { background:#fffdf9; border-bottom:1px solid #eee6dc; margin:0; padding-inline:0; }
.lt-header-inner { box-sizing:border-box; width:100%; max-width:1380px; padding:22px 32px; margin:auto; gap:30px; }
.lt-logo { flex-shrink:0; margin:0; }
.lt-logo img { display:block; width:245px; height:auto; }
.lt-header .wp-block-navigation { flex:1; min-width:0; font:500 16px/1.35 Arial,sans-serif; }
.lt-header .wp-block-navigation__container { width:100%; gap:20px; flex-wrap:nowrap !important; }
.lt-header .wp-block-navigation-item { flex:0 0 auto; }
.lt-header .wp-block-navigation-item__content { white-space:nowrap; }
.lt-header .wp-block-navigation-item:nth-child(2) { flex:0 1 auto; min-width:190px; max-width:none; }
.lt-header .wp-block-navigation-item:nth-child(2) .wp-block-navigation-item__content { white-space:normal; }
.lt-header .wp-block-navigation__responsive-container:not(.is-menu-open) { width:100%; }
.lt-header .wp-block-navigation a { color:var(--lt-ink); text-decoration:none; }
.lt-header .wp-block-navigation a:hover { color:var(--lt-blue); }
.lt-header .current-menu-item > a,.lt-header a[aria-current="page"] { font-weight:700; text-decoration:underline; text-decoration-color:var(--lt-blue); text-decoration-thickness:2px; text-underline-offset:12px; }
.lt-main { margin-top:0; padding-inline:32px; }
.lt-main > .wp-block-post-content { max-width:none; margin-inline:0; padding-inline:0; }
.lt-main h1,.lt-main h2,.lt-main h3 { color:var(--lt-ink); overflow-wrap:break-word; hyphens:auto; }
.lt-main h2 { font-size:34px; letter-spacing:-.04em; }
.lt-main h3 { font-size:25px; letter-spacing:-.03em; }
.lt-home { padding:0; }
.lt-home-content { max-width:1380px; margin:0 auto !important; padding-inline:0; background:var(--lt-cream); color:var(--lt-ink); font:18px/1.43 Arial,sans-serif; }
.lt-bio-copy,.lt-services,.lt-experience-aside { padding-inline:0; }
.lt-home-content > * { max-width:none !important; margin-top:0 !important; margin-bottom:0 !important; }
.lt-home-content p { margin-block:0 15px; }
.lt-home-content h2 { margin-block:0 12px; }
.lt-home-content h3 { margin-block:0 9px; }
.lt-home-content .wp-block-column { min-width:0; }
.lt-home-content .wp-block-group > * { max-width:none; }
.lt-home-content .wp-block-button__link { border:1px solid var(--lt-blue); border-radius:13px; background:var(--lt-blue); color:white; font:600 16px/1.2 Arial,sans-serif; padding:13px 22px; text-decoration:none; box-shadow:none; }
.lt-home-content .is-style-outline .wp-block-button__link { background:#fffaf3; color:var(--lt-blue); border-width:1px; }
.lt-home-content .wp-block-button__link:hover { background:#00668e; color:white; }
.lt-home-content .wp-block-buttons { margin:0; }
.lt-hero { position:relative; min-height:530px; padding:42px 46px; box-sizing:border-box; isolation:isolate; gap:0; overflow:hidden; }
.lt-hero > .wp-block-column:first-child { position:relative; z-index:2; flex:0 0 57%; }
.lt-hero > .wp-block-column:last-child { position:absolute; z-index:0; inset:0 0 0 auto; width:55%; margin:0; }
.lt-hero h1 { font:700 clamp(42px,4.3vw,64px)/.98 Georgia,serif; letter-spacing:-.055em; margin:13px 0 18px; text-wrap:balance; }
.lt-eyebrow { color:#006e9b; font:700 12px/1.4 Arial,sans-serif; letter-spacing:.16em; text-transform:uppercase; margin:0 !important; }
/* Keep articles readable while retaining the shared header/footer width. */
body.single-post .lt-article { box-sizing:border-box; max-width:860px; margin-inline:auto; }
body.single-post .lt-article > .wp-block-post-title { overflow-wrap:anywhere; }
.lt-hero p:not(.lt-eyebrow) { max-width:610px; font-size:18px; line-height:1.42; }
.lt-hero-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:21px !important; }
.lt-portrait { position:relative; height:100%; margin:0; }
.lt-portrait img { display:block; width:100%; height:100%; object-fit:cover; object-position:54% 35%; }
.lt-planning-image img { object-position:70% center; }
.lt-portrait::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--lt-cream) 0%,rgba(251,247,240,.98) 5%,rgba(251,247,240,.75) 15%,rgba(251,247,240,0) 35%); pointer-events:none; }
.lt-portrait figcaption { position:absolute; z-index:1; right:20px; top:125px; max-width:160px; font:12px/1.3 Arial,sans-serif; text-align:right; color:#08284c; text-shadow:0 0 8px #fff,0 0 6px #fff; }
.lt-proof { display:flex; gap:0; padding:20px 44px; background:#fffdf9; border-block:1px solid #eee7df; }
.lt-proof > .wp-block-column { padding:0 25px; border-right:1px solid var(--lt-line); display:flex; align-items:center; }
.lt-proof > .wp-block-column:first-child { padding-left:0; }
.lt-proof > .wp-block-column:last-child { padding-right:0; border:0; }
.lt-proof p { position:relative; min-height:60px; padding-left:78px; display:flex; flex-direction:column; justify-content:center; font-size:16px; line-height:1.35; margin:0; }
.lt-proof p::before,.lt-service::before,.lt-experience-aside::before { content:''; position:absolute; width:64px; height:64px; left:0; top:50%; transform:translateY(-50%); border-radius:50%; background:var(--lt-sand) var(--lt-icon) center/35px 35px no-repeat; }
.lt-proof-people { --lt-icon:url('people.svg'); }
.lt-proof-award { --lt-icon:url('award.svg'); }
.lt-proof-person,.lt-icon-person { --lt-icon:url('person.svg'); }
.lt-bio { gap:32px; padding:32px 42px; align-items:center !important; }
.lt-bio > .wp-block-column:first-child { flex:0 0 30%; }
.lt-bio-portrait { margin:0; }
.lt-bio-portrait img { display:block; width:100%; height:330px; object-fit:cover; object-position:center 30%; border-radius:3px; }
.lt-bio-copy p { font-size:17px; line-height:1.46; }
.lt-bio-copy p:last-child { margin-bottom:0; }
.lt-bio-copy p:first-of-type { font-size:17px; }
.lt-bio-copy p:first-of-type strong { font-weight:400; }
.lt-service-section { padding:32px 42px 26px; background:#fffcf7; }
.lt-service-section > h2 { margin-bottom:25px; }
.lt-services { display:grid; grid-template-columns:1fr 1fr; gap:0; }
.lt-service { position:relative; padding:22px 24px 24px 102px; margin:0 !important; border-bottom:1px solid var(--lt-line); }
.lt-service:nth-child(odd) { border-right:1px solid var(--lt-line); padding-left:87px; }
.lt-service:nth-child(even) { padding-left:110px; padding-right:0; }
.lt-service:nth-last-child(-n+2) { border-bottom:0; }
.lt-service::before { top:24px; transform:none; width:66px; height:66px; }
.lt-service:nth-child(even)::before { left:24px; }
.lt-service p { font-size:17px; line-height:1.45; }
.lt-service p:last-child { margin-bottom:0; }
.lt-service p:last-child a { font-weight:600; text-decoration:none; color:#007aa6; }
.lt-service h3 { font-size:25px; line-height:1.08; }
.lt-service-details { margin-block:0 13px; font-size:16px; }
.lt-service-details summary { color:#006a91; cursor:pointer; line-height:1.4; }
.lt-service-details[open] summary { margin-bottom:15px; }
.lt-service-details p { font-size:16px; }
.lt-service-details summary:focus-visible { outline:3px solid var(--lt-blue); outline-offset:4px; }
.lt-icon-document { --lt-icon:url('document.svg'); }
.lt-icon-search { --lt-icon:url('search.svg'); }
.lt-icon-medal { --lt-icon:url('medal.svg'); }
.lt-icon-people { --lt-icon:url('people.svg'); }
.lt-experience { padding:30px 44px; gap:36px; background:linear-gradient(110deg,#f5ecdf,#f7f0e6); }
.lt-experience > .wp-block-column:first-child { flex-basis:70%; }
.lt-experience > .wp-block-column:last-child { flex-basis:30%; border-left:1px solid #d8cbb9; padding-left:35px; }
.lt-experience h2 { font-size:31px; max-width:630px; }
.lt-experience p { font-size:17px; }
.lt-experience p:last-child { margin-bottom:0; }
.lt-experience-aside { position:relative; padding-top:78px; }
.lt-experience-aside::before { top:0; transform:none; background-color:#efe0c8; }
.lt-experience-aside h3 { font-size:24px; }
.lt-contact { position:relative; gap:34px; padding:25px 42px 25px 200px; background:#e3f0f6; }
.lt-contact::before { content:''; position:absolute; top:0; left:0; bottom:0; width:175px; background:url('clover.svg') left bottom/auto 100% no-repeat; opacity:.68; }
.lt-contact > .wp-block-column:first-child { flex-basis:66%; }
.lt-contact > .wp-block-column:last-child { flex-basis:34%; border-left:1px solid #bed3df; padding-left:25px; }
.lt-contact h2 { font-size:29px; }
.lt-contact p { font-size:16px; margin-bottom:9px; }
.lt-contact a { text-decoration:none; color:var(--lt-ink); }
.lt-contact .wp-block-buttons { margin-top:13px; }
.lt-contact .wp-block-button__link { font-size:14px; padding:11px 16px; }
.lt-contact-person,.lt-contact-phone,.lt-contact-mail { position:relative; padding-left:25px; }
.lt-contact-person::before,.lt-contact-phone::before,.lt-contact-mail::before { content:''; position:absolute; width:17px; height:19px; left:0; top:1px; background:center/contain no-repeat; }
.lt-contact-person::before { background-image:url('person.svg'); }
.lt-contact-phone::before { background-image:url('phone.svg'); }
.lt-contact-mail::before { background-image:url('mail.svg'); }
.lt-footer { background:#fffdf9; border-top:1px solid #eee6dc; margin-top:0; padding-inline:0; }
.lt-footer-inner { max-width:1380px; margin:auto; padding:20px 42px; box-sizing:border-box; color:var(--lt-ink); }
.lt-footer-inner > .wp-block-columns { max-width:none; gap:30px; align-items:center !important; }
.lt-footer-inner .wp-block-column { min-width:0; }
.lt-footer-inner .wp-block-column:nth-child(1) { flex-basis:26%; }
.lt-footer-inner .wp-block-column:nth-child(2) { flex-basis:22%; }
.lt-footer-inner .wp-block-column:nth-child(3) { flex-basis:26%; }
.lt-footer-inner .wp-block-column:nth-child(4) { flex-basis:26%; }
.lt-footer p { margin:0 0 3px; font:13px/1.45 Arial,sans-serif; }
.lt-footer a { color:var(--lt-ink); text-decoration:none; }
.lt-footer-logo { margin:0; }
.lt-footer-logo img { width:230px; max-width:100%; height:auto; }
.lt-policy-link { margin:0 !important; text-align:center; padding:4px 10px; font-size:13px; }
.lt-page { padding-block:56px 66px; line-height:1.65; }
.lt-page > h1 { font-size:clamp(2.2rem,5vw,3.5rem); line-height:1.08; margin-bottom:25px; }
.lt-page > h2 { margin-top:42px; }
.lt-page > h3 { margin-top:30px; }
.lt-page p,.lt-page li { max-width:760px; }
.lt-page ul,.lt-page ol { padding-left:25px; }
.lt-page li + li { margin-top:10px; }
.lt-article { padding-block:60px; min-height:50vh; }
a:focus-visible,button:focus-visible { outline:3px solid var(--lt-blue); outline-offset:5px; }
@media (max-width:1100px) {
 .lt-header-inner { padding-inline:28px; gap:25px; }
 .lt-logo img { width:210px; }
 .lt-header .wp-block-navigation__container { gap:14px; }
 .lt-hero { padding-inline:34px; }
 .lt-hero h1 { font-size:55px; }
 .lt-hero p:not(.lt-eyebrow) { font-size:17px; }
 .lt-portrait figcaption { top:auto; bottom:20px; }
 .lt-proof { padding-inline:30px; }
 .lt-proof > .wp-block-column { padding-inline:16px; }
 .lt-proof p { padding-left:64px; font-size:14px; }
 .lt-proof p::before { width:52px; height:52px; background-size:30px; }
 .lt-contact { padding-left:130px; padding-right:30px; }
 .lt-contact::before { width:110px; }
 .lt-contact > .wp-block-column:last-child { flex-basis:42%; padding-left:20px; }
 .lt-footer-inner { padding-inline:30px; }
}
@media (max-width:979px) {
 .lt-header .wp-block-navigation { flex:0 0 auto; }
 .lt-header .wp-block-navigation__responsive-container-open { display:flex !important; color:var(--lt-ink); }
 .lt-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none !important; }
 .lt-header .wp-block-navigation__responsive-container.is-menu-open { background:var(--lt-cream); padding:28px; }
 .lt-header .is-menu-open .wp-block-navigation-item { flex:0 0 auto; min-width:0; max-width:none; }
 .lt-header .is-menu-open .wp-block-navigation__container { width:auto; gap:25px; font-size:18px; flex-wrap:wrap !important; }
 .lt-header .is-menu-open .wp-block-navigation-item__content { white-space:normal; }
}
@media (max-width:781px) {
 .lt-header-inner { padding:15px 25px; }
 .lt-logo img { width:215px; }
 .lt-header .wp-block-navigation__responsive-container-open { display:flex !important; color:var(--lt-ink); }
 .lt-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none !important; }
 .lt-header .wp-block-navigation__responsive-container.is-menu-open { background:var(--lt-cream); padding:28px; }
 .lt-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { max-width:none; }
 .lt-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap:25px; font-size:18px; }
 .lt-home-content { font-size:16px; }
 .lt-main:not(.lt-home) { padding-inline:22px; }
 .lt-home-content h2 { font-size:28px; }
 .lt-hero { display:flex; flex-direction:column; padding:0; min-height:0; }
 .lt-hero > .wp-block-column:first-child { width:100%; box-sizing:border-box; padding:25px 26px 22px; }
 .lt-hero > .wp-block-column:last-child { position:relative; width:100%; }
 .lt-hero h1 { font-size:clamp(30px,9vw,52px); line-height:.99; letter-spacing:-.055em; text-wrap:initial; margin:11px 0 14px; }
 .lt-eyebrow { font-size:11px; letter-spacing:.13em; }
 .lt-hero p:not(.lt-eyebrow) { font-size:16px; line-height:1.37; }
 .lt-hero-actions { display:grid; grid-template-columns:1fr; gap:8px; margin-top:17px !important; }
 .lt-hero-actions .wp-block-button { width:100%; }
 .lt-hero-actions .wp-block-button__link { width:100%; box-sizing:border-box; font-size:15px; padding:11px 15px; border-radius:10px; }
 .lt-portrait { height:auto; }
 .lt-portrait img { height:260px; object-position:70% center; }
 .lt-portrait::after { display:none; }
 .lt-portrait figcaption { position:static; max-width:none; font:12px/1.4 Arial,sans-serif; text-shadow:none; text-align:center; padding:7px 10px; margin:0; background:#fffaf3; }
 .lt-proof { display:flex; flex-direction:column; padding:0 26px; }
 .lt-proof > .wp-block-column { width:100%; box-sizing:border-box; padding:12px 0 !important; border-right:0; border-bottom:1px solid var(--lt-line); }
 .lt-proof > .wp-block-column:last-child { border-bottom:0; }
 .lt-proof p { min-height:45px; padding-left:65px; font-size:15px; }
 .lt-proof p::before { width:46px; height:46px; background-size:28px; }
 .lt-bio { padding:27px 26px; gap:23px; }
 .lt-bio > .wp-block-column:first-child { display:block; width:100%; }
 .lt-bio-portrait img { height:300px; object-position:center 28%; }
 .lt-bio-copy p,.lt-bio-copy p:first-of-type { font-size:16px; line-height:1.42; }
 .lt-service-section { padding:26px; }
 .lt-service-section > h2 { margin-bottom:15px; }
 .lt-services { display:block; }
 .lt-service,.lt-service:nth-child(odd),.lt-service:nth-child(even) { padding:21px 0 21px 64px; border-right:0; border-bottom:1px solid var(--lt-line); }
 .lt-service:last-child { border-bottom:0; }
 .lt-service::before,.lt-service:nth-child(even)::before { width:46px; height:46px; background-size:28px; left:0; top:20px; }
 .lt-service h3 { font-size:23px; line-height:1.08; overflow-wrap:anywhere; }
 .lt-service p { font-size:16px; line-height:1.4; }
 .lt-experience { padding:27px 26px; gap:22px; }
 .lt-experience h2 { font-size:28px; }
 .lt-experience p { font-size:16px; }
 .lt-experience > .wp-block-column:last-child { border-left:0; border-top:1px solid #d8cbb9; padding:20px 0 0; }
 .lt-experience-aside { padding:0 0 0 62px; }
 .lt-experience-aside::before { width:46px; height:46px; background-size:28px; }
 .lt-experience-aside h3 { font-size:22px; }
 .lt-contact { padding:26px; gap:17px; }
 .lt-contact::before { display:none; }
 .lt-contact h2 { font-size:28px; }
 .lt-contact > .wp-block-column:last-child { border:0; padding:0; }
 .lt-contact .wp-block-buttons,.lt-contact .wp-block-button { width:100%; }
 .lt-contact .wp-block-button__link { width:100%; box-sizing:border-box; }
 .lt-footer-inner { padding:24px 26px; }
 .lt-footer-inner > .wp-block-columns { gap:10px; text-align:center; }
 .lt-footer-logo img { width:220px; margin:auto; }
 .lt-footer .lt-contact-phone,.lt-footer .lt-contact-mail { display:inline-block; }
 .lt-page { padding-block:35px 45px; }
 .lt-page > h1 { font-size:34px; overflow-wrap:anywhere; }
}
@media (max-width:359px) {
 .lt-header-inner { padding-inline:20px; }
 .lt-logo img { width:195px; }
 .lt-hero > .wp-block-column:first-child { padding-inline:20px; }
 .lt-hero h1 { font-size:30px; }
 .lt-proof,.lt-bio,.lt-service-section,.lt-experience,.lt-contact { padding-inline:20px; }
 .lt-service,.lt-service:nth-child(odd),.lt-service:nth-child(even) { padding-left:57px; }
 .lt-service h3 { font-size:21px; }
 .lt-service p { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; } }

/* Public contact form: CF7 handles submission; the theme only renders and styles it. */
.lt-contact-form { max-width:760px; padding:0 0 64px; box-sizing:border-box; }
.lt-contact-form h2 { font-size:clamp(28px,4vw,38px); }
.lt-contact-form .wpcf7 { margin-top:28px; }
.lt-contact-form .wpcf7 label { display:block; font-weight:600; }
.lt-contact-form .wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
.lt-contact-form .wpcf7 textarea { display:block; width:100%; max-width:100%; min-width:0; box-sizing:border-box; margin-top:8px; padding:12px 14px; border:1px solid #82919e; border-radius:8px; background:#fff; color:#08284c; font:inherit; font-weight:400; }
.lt-contact-form .wpcf7 textarea { min-height:160px; resize:vertical; }
.lt-contact-form .wpcf7 input:focus-visible,.lt-contact-form .wpcf7 textarea:focus-visible { outline:3px solid #007dab; outline-offset:3px; }
.lt-contact-form .wpcf7 input[type=submit] { appearance:none; border:0; border-radius:999px; padding:14px 28px; min-height:48px; background:#007dab; color:#fff; font:inherit; font-weight:600; cursor:pointer; }
.lt-contact-form .wpcf7 input[type=submit]:hover { background:#08284c; }
.lt-contact-form .wpcf7 input[type=submit]:disabled { opacity:.65; cursor:wait; }
.lt-contact-form .wpcf7 .wpcf7-not-valid-tip { color:#a11a1a; font-size:16px; margin-top:6px; font-weight:400; }
.lt-contact-form .wpcf7 .wpcf7-response-output { margin:24px 0 0; padding:14px; border-radius:8px; }
@media (max-width:781px) { .lt-contact-form { padding-bottom:45px; } }
.lt-page .wp-block-table { overflow-x:auto; }
.lt-page .wp-block-table th,.lt-page .wp-block-table td { padding:10px; overflow-wrap:anywhere; font-size:15px; }
.lt-form-privacy { font-size:15px; }
.lt-footer-meta { max-width:none !important; margin-top:22px !important; padding-top:16px; border-top:1px solid var(--lt-line); gap:12px 24px; }
.lt-footer .lt-footer-meta p { margin:0; font:14px/1.5 Arial,sans-serif; }
.lt-footer-copyright { color:#566777; }
.lt-footer-policy-links { gap:8px 24px; margin:0; }
.lt-footer-policy-links a { display:inline-block; padding-block:6px; text-decoration:underline; text-decoration-color:#bac4ca; text-underline-offset:4px; }
.lt-footer-policy-links a:hover { color:var(--lt-brand); text-decoration-color:currentColor; }
.lt-footer a:focus-visible { outline:2px solid var(--lt-brand); outline-offset:4px; border-radius:2px; }
@media (max-width:781px) {
 .lt-footer-meta { flex-direction:column; justify-content:center; text-align:center; margin-top:20px !important; gap:8px; }
 .lt-footer-policy-links { justify-content:center; }
}
/* 0.3.4: approved header, contact banner and footer design only. */
.lt-header,.lt-contact,.lt-footer { --lt-interface-font:"Segoe UI","Trebuchet MS",Arial,sans-serif; }
.lt-header { box-shadow:0 4px 14px rgba(8,40,76,.045); position:relative; z-index:3; }
.lt-header-inner { padding-block:20px; gap:24px; }
.lt-header .wp-block-navigation { font-family:var(--lt-interface-font); font-size:17px; font-weight:500; }
.lt-header .wp-block-navigation__container { gap:18px; }
.lt-header .wp-block-navigation .wp-block-navigation-item__content { color:#006e9b; }
.lt-header .wp-block-navigation .wp-block-navigation-item__content:hover { color:var(--lt-ink); }
.lt-header .wp-block-navigation-item:nth-child(2) .wp-block-navigation-item__content { white-space:nowrap; }
.lt-header .current-menu-item > a,.lt-header a[aria-current="page"] { color:#006e9b; text-underline-offset:13px; }
.lt-contact { background:linear-gradient(105deg,#e3f0f6,#eaf5fa); padding-block:30px; font-family:var(--lt-interface-font); }
.lt-contact h2 { font:700 32px/1.1 Georgia,serif; letter-spacing:-.035em; }
.lt-contact p { font-size:17px; line-height:1.5; }
.lt-contact .wp-block-column:last-child { border-color:#bfd7e3; }
.lt-contact .wp-block-button__link { font:600 16px/1.2 var(--lt-interface-font); background:var(--lt-blue); color:#fff; border-radius:12px; padding:13px 20px; }
.lt-contact .wp-block-button__link:hover { background:#00668e; color:#fff; }
.wp-site-blocks > footer.wp-block-template-part { margin-block-start:0; }
.lt-footer { border-top:0; background:transparent; }
.lt-footer-inner { --lt-footer-gutter:42px; padding:22px var(--lt-footer-gutter) 0; background:#fffdf9; }
.lt-footer-inner > .wp-block-columns > .wp-block-column { min-height:44px; display:flex; flex-direction:column; justify-content:center; }
.lt-footer-inner strong { font-weight:600; }
.lt-footer-inner > .wp-block-columns { gap:24px; margin-bottom:24px; }
.lt-footer-inner > .wp-block-columns > .wp-block-column + .wp-block-column { border-left:1px solid #d4dee3; padding-left:24px; }
.lt-footer p { font-family:var(--lt-interface-font); font-size:14px; line-height:1.5; }
.lt-footer a { color:#006e9b; }
.lt-footer a:hover { color:var(--lt-ink); }
.lt-footer-meta { position:relative; isolation:isolate; margin-top:0 !important; padding-block:10px; border-top:1px solid #d9e8ef; gap:8px 24px; }
.lt-footer-meta::before { content:""; position:absolute; z-index:-1; inset:-1px calc(-1 * var(--lt-footer-gutter)) 0; background:#e8f3f9; pointer-events:none; }
.lt-footer .lt-footer-meta p { font:14px/1.5 var(--lt-interface-font); }
.lt-footer-copyright { color:#315675; }
.lt-footer-policy-links { gap:0; }
.lt-footer .lt-policy-link { padding:0; }
.lt-footer-policy-links .lt-policy-link + .lt-policy-link { border-left:1px solid #9bbdce; margin-left:16px; padding-left:16px; }
.lt-footer-policy-links a { display:inline-flex; align-items:center; min-height:44px; padding-block:0; text-decoration:none; }
.lt-footer-policy-links a:hover { color:var(--lt-ink); text-decoration:underline; text-underline-offset:4px; }
.lt-footer a:focus-visible { outline-color:var(--lt-blue); }
@media (min-width:1100px) and (max-width:1279px) {
 .lt-header-inner { padding-inline:24px; gap:18px; }
 .lt-logo img { width:205px; }
 .lt-header .wp-block-navigation { font-size:16px; }
 .lt-header .wp-block-navigation__container { gap:12px; }
}
@media (max-width:1099px) {
 .lt-header .wp-block-navigation { flex:0 0 auto; }
 .lt-header .wp-block-navigation__responsive-container-open { display:flex !important; color:#006e9b; }
 .lt-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none !important; }
 .lt-header .wp-block-navigation__responsive-container.is-menu-open { background:var(--lt-cream); padding:28px; }
 .lt-header .is-menu-open .wp-block-navigation-item { flex:0 0 auto; min-width:0; max-width:none; }
 .lt-header .is-menu-open .wp-block-navigation__container { width:auto; gap:25px; font-size:18px; flex-wrap:wrap !important; }
 .lt-header .is-menu-open .wp-block-navigation-item__content { white-space:normal !important; }
}
@media (max-width:781px) {
 .lt-header-inner { padding-block:16px; }
 .lt-contact { padding:28px 26px; gap:20px; }
 .lt-contact h2 { font-size:29px; }
 .lt-contact p { font-size:16px; }
 .lt-contact .wp-block-column:last-child { border:0; }
 .lt-footer-inner { --lt-footer-gutter:26px; padding:24px var(--lt-footer-gutter) 0; }
 .lt-footer-inner > .wp-block-columns { gap:12px; margin-bottom:20px; }
 .lt-footer-inner > .wp-block-columns > .wp-block-column { min-height:0; }
 .lt-footer-inner > .wp-block-columns > .wp-block-column + .wp-block-column { border:0; padding-left:0; }
 .lt-footer .lt-contact-phone,.lt-footer .lt-contact-mail { display:table; margin-inline:auto; }
 .lt-footer-meta { flex-direction:column; margin-top:0 !important; padding-top:4px; padding-bottom:14px; gap:0; }
 .lt-footer-policy-links { order:-1; }
 .lt-footer .lt-footer-copyright { font-size:12px; }
}
/* Bounded page frame from the approved reference. */
body { padding-inline:28px; }
.wp-site-blocks { max-width:1380px; margin:28px auto; background:var(--lt-cream); border:1px solid #eee6dc; border-radius:14px; overflow:clip; box-shadow:0 10px 38px rgba(8,40,76,.09); }
@media (max-width:1100px) { .lt-footer-inner { --lt-footer-gutter:30px; } }
@media (max-width:781px) {
 body { padding-inline:10px; }
 .wp-site-blocks { margin-block:12px; border-radius:11px; box-shadow:0 4px 18px rgba(8,40,76,.07); }
 .lt-footer-inner { --lt-footer-gutter:26px; }
}
@media (max-width:359px) {
 body { padding-inline:6px; }
 .lt-header-inner { padding-inline:18px; gap:12px; }
 .lt-logo img { width:185px; }
}
/* Consistent footer lettering; the decorative separator is independent of tap targets. */
.lt-footer .lt-footer-inner p,.lt-footer .lt-footer-inner a,.lt-footer .lt-footer-inner strong { font:400 14px/1.5 var(--lt-interface-font); color:#006e9b; }
.lt-footer .lt-footer-inner a:hover { color:var(--lt-ink); }
.lt-footer .lt-footer-legal-links { display:flex; align-items:center; gap:16px; padding:0; margin:0; }
.lt-footer-legal-separator { display:block; flex:0 0 1px; width:1px; height:14px; background:#9bbdce; }
