.home-container {
	box-sizing: border-box;
	margin-inline: auto;
	max-width: 1200px;
	padding-inline: 24px;
	width: 100%;
}

.home-section { margin: 0; padding: 64px 0; }
.home-section h2,
.home-contact h2 { font: 400 44px/1.15 "Instrument Serif", serif; letter-spacing: 0; margin: 0; }
.home-section h3 { font-family: "Instrument Serif", serif; font-weight: 400; letter-spacing: 0; }
.home-section p,
.home-section li,
.home-contact p { font-family: Inter, sans-serif; letter-spacing: 0; }
.home-eyebrow { color: #c5a55a; font: 600 16px/1.5 Inter, sans-serif !important; letter-spacing: .22em !important; margin: 0 0 20px; text-transform: uppercase; }
.home-rule { border: 0; border-top: 2px solid #c5a55a; margin: 28px auto; width: 52px; }
.home-rule--wide { margin-left: 0; width: 72px; }
.home-rule--short { margin: 22px 0; width: 36px; }
.home-section-heading { margin-bottom: 40px; max-width: 680px; }
.home-section-heading > p:last-child { color: #696969; font-size: 16px; line-height: 1.8; }
.home-section-heading--center { margin-inline: auto; text-align: center; }
.home-heading-row { align-items: end; margin-bottom: 52px; }
.home-heading-row > .wp-block-group { max-width: 680px; }
.home-heading-row p:not(.home-eyebrow) { color: #747474; line-height: 1.7; }

.home-hero { background: #0a1f44; color: #fff; height: 82vh; min-height: 760px; overflow: hidden; position: relative; }
.home-hero::after { background: linear-gradient(180deg, rgba(5,18,38,.34) 0%, rgba(5,18,38,.06) 42%, rgba(5,18,38,.58) 100%); content: ""; inset: 0; pointer-events: none; position: absolute; }
.home-hero__globe,
.home-hero__globe > div,
.home-hero__globe iframe { height: 100%; inset: 0; position: absolute; width: 100%; }
.home-hero__globe iframe { border: 0; pointer-events: none; }
.home-hero__content { left: 50%; margin: 0; max-width: 768px !important; padding: 0 24px; pointer-events: none; position: absolute; text-align: center; top: 50%; transform: translate(-50%, -50%); width: 100%; z-index: 2; }
.home-hero__content a,
.home-hero__content button { pointer-events: auto; }
.home-hero h1 { color: #fff; font: 400 64px/1.08 "Instrument Serif", serif; letter-spacing: 0; margin: 0 auto 24px; max-width: 768px; text-shadow: 0 2px 20px rgba(0,0,0,.45); }
.home-hero__content > p { color: rgba(255,255,255,.85); font: 300 19.2px/1.65 Inter, sans-serif; margin: 0 auto 40px; max-width: 640px; text-shadow: 0 1px 12px rgba(0,0,0,.5); }
.home-hero__buttons { gap: 16px; }
.home-hero .wp-block-button__link { border: 1px solid rgba(255,255,255,.5); border-radius: 0; font: 600 15px/1 Inter,sans-serif; letter-spacing: .12em; min-width: 0; padding: 20px 36px; text-transform: uppercase; transition: background-color 150ms cubic-bezier(.4,0,.2,1), border-color 150ms cubic-bezier(.4,0,.2,1), color 150ms cubic-bezier(.4,0,.2,1); white-space: nowrap; }
.home-hero .is-style-fill .wp-block-button__link { background: #b80000; border-color: #b80000; }
.home-hero .is-style-fill .wp-block-button__link:hover { background: #ff1a0a; border-color: #ff1a0a; }
.home-hero .is-style-outline .wp-block-button__link { background: transparent; color: #fff; }
.home-hero .is-style-outline .wp-block-button__link:hover { background: rgba(255,255,255,.1); }
.home-scroll { align-items: center; bottom: 32px; color: #fff; display: flex; flex-direction: column; gap: 4px; left: 50%; opacity: .4; position: absolute; transform: translateX(-50%); transition: opacity 150ms ease; z-index: 3; }
.home-scroll:hover { opacity: .7; }
.home-scroll span { background: #fff; height: 24px; width: 1px; }
.home-scroll:focus-visible,
.home-button .wp-block-button__link:focus-visible,
.home-card-link a:focus-visible,
.home-form button:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }

.home-intro { background: #f7f5f0; color: #1a1a1a; padding-bottom: 0; }
.home-intro h2 { font-size: 52px; line-height: 1.1; }
.home-intro__content { align-items: start !important; gap: 96px; }
.home-intro__content { padding-bottom: 80px; }
.home-intro__content > .wp-block-column { flex-basis: 528px; }
.home-intro__copy { border-left: 1px solid #d7d1c8; padding-left: 48px; }
.home-intro__copy p { color: #666; font-size: 18px; line-height: 1.8; margin: 0; }
.home-intro__copy p + p { margin-top: 24px; }
.home-button .wp-block-button__link { border-radius: 0; font: 600 12px/1 Inter,sans-serif; letter-spacing: .12em; padding: 18px 40px; text-transform: uppercase; transition: background-color 150ms cubic-bezier(.4,0,.2,1), border-color 150ms cubic-bezier(.4,0,.2,1), color 150ms cubic-bezier(.4,0,.2,1); }
.home-button--navy .wp-block-button__link { background: #0a1f44; color: #fff; }
.home-button--navy .wp-block-button__link:hover { background: #c5a55a; }
.home-button--outline .wp-block-button__link { background: transparent; border: 2px solid rgba(10,31,68,.25); color: #0a1f44; }
.home-button--outline .wp-block-button__link:hover { background: #0a1f44; border-color: #0a1f44; color: #fff; }
.home-button--red .wp-block-button__link { background: #b80000; color: #fff; }
.home-button--red .wp-block-button__link:hover { background: #ff1a0a; }
.home-stats { background: #0a1f44; box-shadow: 0 0 0 100vmax #0a1f44; clip-path: inset(0 -100vmax); margin-top: 0; padding-block: 48px; }
.home-stats > .wp-block-column { border-left: 1px solid rgba(255,255,255,.16); text-align: center; }
.home-stats > .wp-block-column:last-child { border-right: 1px solid rgba(255,255,255,.16); }
.home-stats h3 { color: #d9be7e; font-size: 42px; line-height: 1; margin: 0 0 10px; }
.home-stats p { color: rgba(255,255,255,.55); font-size: 10px; font-weight: 600; letter-spacing: .2em; margin: 0; text-transform: uppercase; }

.home-pathways { background: #fff; }
.home-card-grid { align-items: stretch !important; gap: 22px; }
.home-card { border: 1px solid #e8e4de; display: flex; flex-direction: column; overflow: hidden; transition: border-color 300ms ease, box-shadow 300ms ease, transform 300ms ease; }
.home-card figure { margin: 0; overflow: hidden; position: relative; }
.home-card figure img { display: block; height: 100%; object-fit: cover; width: 100%; }
.home-card figure > a { display: block; height: 100%; }
.home-pathway-card:hover { box-shadow: 0 12px 24px rgba(30,42,74,.08); transform: translateY(-4px); }
.home-pathway-card figure img { transition: transform 700ms ease; }
.home-pathway-card:hover figure img { transform: scale(1.04); }
.home-pathway-card figure { height: 220px; }
.home-pathway-card figcaption { background: rgba(10,31,68,.9); bottom: 0; color: #d9be7e; font: 600 10px/1.2 Inter,sans-serif; left: 0; letter-spacing: .16em; margin: 0; padding: 11px 15px; position: absolute; text-transform: uppercase; }
.home-card__body { display: flex; flex: 1; flex-direction: column; padding: 28px; }
.home-card__body h3 { color: #0a1f44; font-size: 27px; line-height: 1.15; margin: 0 0 16px; }
.home-card__body > p:not(.home-card-link):not(.home-tag):not(.home-category) { color: #747474; font-size: 13px; line-height: 1.7; }
.home-check-list { color: #5b5b5b; flex: 1; font-size: 12px; line-height: 1.6; list-style: none; margin: 12px 0 22px; padding: 0; }
.home-check-list li { border-top: 1px solid #ece9e4; padding: 12px 0 12px 22px; position: relative; }
.home-check-list li::before { color: #c5a55a; content: "✓"; left: 0; position: absolute; }
.home-check-list strong { color: #0a1f44; display: block; font-size: 12px; }
.home-card-link { font: 600 10px/1 Inter,sans-serif !important; letter-spacing: .16em !important; margin: auto 0 0; padding-top: 16px; text-transform: uppercase; }
.home-card-link a { color: #fd0100; text-decoration: none; }
.home-arrow { display: inline-block; margin-left: 6px; transition: transform 300ms ease; }
.home-card:hover .home-arrow,
.home-button:hover .home-arrow,
.home-heading-row a:hover .home-arrow { transform: translateX(4px); }
.home-section-cta { margin-top: 45px; }

.home-difference { background: #f7f5f0; }
.home-two-col { align-items: center !important; gap: 8%; }
.home-two-col > .wp-block-column:first-child { flex-basis: 47%; }
.home-two-col > .wp-block-column:last-child { flex-basis: 45%; }
.home-lead { color: #666; font-size: 16px; line-height: 1.75; }
.home-points { margin: 32px 0 36px; }
.home-points > .wp-block-group { border-top: 1px solid #d9d4cc; padding: 20px 0 18px 45px; position: relative; }
.home-points > .wp-block-group::before { color: #c5a55a; content: "✓"; font: 400 24px/1 Inter,sans-serif; left: 4px; position: absolute; top: 22px; }
.home-points h3 { color: #0a1f44; font: 500 17px/1.3 Inter,sans-serif; margin: 0 0 7px; }
.home-points p { color: #797979; font-size: 13px; line-height: 1.7; margin: 0; }
.home-team-photo figure { margin: 0; position: relative; }
.home-team-photo img { aspect-ratio: 4 / 3; display: block; object-fit: cover; object-position: top; width: 100%; }
.home-team-photo figcaption { background: #fff; bottom: -34px; box-shadow: 0 14px 38px rgba(10,31,68,.14); color: #c5a55a; font: 400 17px/1.5 Inter,sans-serif; left: -42px; margin: 0; padding: 24px 30px; position: absolute; text-align: center; }
.home-team-photo figcaption strong { color: #0a1f44; font-size: 14px; }

.home-team { background: #fff; }
.home-team .home-container { padding-inline: 0; }
.home-team .home-section-heading > p:last-child { max-width: 560px; }
.home-team-grid { gap: 32px; }
.home-person-card figure { aspect-ratio: 4 / 5; background: #ede9e2; height: auto; }
.home-person-card .home-card__body { padding: 26px 28px 30px; }
.home-person-card .home-card__body > p:not(.home-card-link):not(.home-person-title) { font-size: 14px; line-height: 1.55; }
.home-person-title,
.home-category { color: #c5a55a; font: 600 10px/1.2 Inter,sans-serif !important; letter-spacing: .18em !important; margin: 0 0 10px; text-transform: uppercase; }
.home-person-card h3 { font-size: 30px; margin-bottom: 12px; }
.home-person-card:hover { border-color: rgba(197,165,90,.5); box-shadow: 0 10px 15px rgba(0,0,0,.1); transform: translateY(-4px); }
.home-person-card figure img { object-position: top; transition: transform 500ms ease; }
.home-person-card:hover figure img { transform: scale(1.03); }
.home-person-card .home-card-link { border-top: 1px solid #f0ede8; padding-top: 16px; }
.home-person-card .home-card-link a { color: #0a1f44; transition: color 150ms ease; }
.home-person-card .home-card-link a:hover { color: #fd0100; }

.home-approach { background: #fff; color: #1a1a1a; }
.home-approach h2,
.home-approach h3 { color: #0a1f44; }
.home-approach .home-section-heading > p:last-child { color: #737373; max-width: 880px; }
.home-approach .home-section-heading { max-width: 880px; }
.home-approach-grid { gap: 20px; }
.home-approach-card { background: #f7f5f0; border: 1px solid #e5e0d8; padding: 32px 28px; }
.home-approach-card:last-child { border-right: 1px solid #e5e0d8; }
.home-check-icon { color: #c5a55a; font-size: 24px; margin: 0 0 30px; }
.home-approach-card h3 { font-size: 25px; line-height: 1.15; margin: 0; }
@media (min-width: 768px) {
	.home-approach-card h3 { min-height: 2.6em; }
}
.home-approach-card p:last-child { color: #737373; font-size: 13px; line-height: 1.8; }

.home-outcomes { background: #f7f5f0; }
.home-outcome-grid { gap: 25px; }
.home-content-card { background: #fff; }
.home-content-card figure { height: 240px; }
.home-outcome-grid .home-content-card figure { height: 160px; }
.home-tag { align-self: start; background: #0a1f44; color: #fff; font: 600 9px/1 Inter,sans-serif !important; letter-spacing: .15em !important; margin: 0 0 15px; padding: 7px 10px; text-transform: uppercase; }
.home-content-card .home-card__body { padding: 27px; }
.home-content-card h3 { font-size: 24px; }
.home-outcome-grid .home-content-card:hover { border-color: #0a1f44; box-shadow: 0 12px 24px rgba(30,42,74,.08); transform: translateY(-4px); }
.home-outcome-grid .home-content-card figure img { transition: transform 700ms ease; }
.home-outcome-grid .home-content-card:hover figure img { transform: scale(1.04); }
.home-outcome-grid .home-content-card h3 { transition: color 150ms ease; }
.home-outcome-grid .home-content-card:hover h3 { color: #fd0100; }

.home-reviews { background: #fff; }
.home-rating { color: #c5a55a; font-size: 18px; line-height: 1.35; margin: 0 0 30px; }
.home-rating strong { color: #0a1f44; font-size: 13px; }
.home-rating small { color: #999; font-size: 10px; }
.home-review-grid { gap: 22px; }
.home-review-card { background: #f7f5f0; padding: 36px 34px; }
.home-quote-mark { color: #c5a55a; font: 400 54px/1 "Instrument Serif",serif !important; margin: 0; }
.home-review-card blockquote { border: 0; margin: 0; padding: 0; }
.home-review-card blockquote > p { color: #4e4e4e; font: 400 14px/1.85 Inter,sans-serif; margin: 0 0 28px; }
.home-review-card cite { color: #0a1f44; font: 600 12px/1.7 Inter,sans-serif; }
.home-review-card cite span,
.home-review-card cite small { color: #888; font-size: 10px; font-style: normal; font-weight: 400; }

.home-knowledge { background: #f7f5f0; }
.home-article-grid { gap: 25px; }
.home-article-card figure { height: 192px; }
.home-article-card h3 { font-size: 23px; }
.home-article-card:hover { border-color: rgba(197,165,90,.5); box-shadow: 0 4px 6px rgba(0,0,0,.1); transform: translateY(-2px); }
.home-article-card figure img { transition: transform 500ms ease; }
.home-article-card:hover figure img { transform: scale(1.03); }
.home-article-card h3 { transition: color 150ms ease; }
.home-article-card:hover h3 { color: #fd0100; }

.home-faq { background: #fff; }
.home-faq__inner { margin-inline: auto; max-width: 880px; padding-inline: 0; }
.home-faq details { border-bottom: 1px solid #ddd9d2; margin-block-start: 0; }
.home-faq summary { color: #0a1f44; cursor: pointer; font: 600 17px/1.4 Inter,sans-serif; list-style: none; margin-inline: -8px; padding: 24px 48px 24px 8px; position: relative; transition: background-color 150ms ease; }
.home-faq summary:hover { background: rgba(247,245,240,.5); }
.home-faq summary:focus-visible { outline: 2px solid #0a1f44; outline-offset: 1px; }
.home-faq summary::-webkit-details-marker { display: none; }
.home-faq summary::after { color: #c5a55a; content: "+"; font: 300 28px/1 Inter,sans-serif; position: absolute; right: 4px; top: 21px; }
.home-faq details[open] summary::after { content: "−"; }
.home-faq details p { color: #737373; font-size: 14px; line-height: 1.8; margin: 0; padding: 0 48px 24px 0; }

.home-contact { background: linear-gradient(90deg, #0a1f44 0 50%, rgba(10,31,68,.78) 50% 100%), url("../images/home/statue.jpg") right center / 50% 100% no-repeat; color: #fff; margin: 0; padding: 80px 0; }
.home-contact__grid { align-items: center !important; gap: 9%; }
.home-contact__grid { min-height: 705px; }
.home-contact__copy { flex-basis: 45%; }
.home-contact h2 { color: #fff; font-size: 48px; }
.home-contact__copy > p:not(.home-eyebrow) { color: rgba(255,255,255,.64); font-size: 15px; line-height: 1.85; }
.home-contact .home-rule { margin-left: 0; }
.home-contact__stats { border-top: 1px solid rgba(255,255,255,.18); margin-top: 44px; padding-top: 30px; }
.home-contact__stats h3 { color: #d9be7e; font: 400 34px/1 "Instrument Serif",serif; margin: 0 0 7px; }
.home-contact__stats p { color: rgba(255,255,255,.45); font-size: 9px; font-weight: 600; letter-spacing: .18em; margin: 0; text-transform: uppercase; }
.home-contact__form-wrap { background: #fff; box-shadow: 0 20px 55px rgba(0,0,0,.2); color: #1a1a1a; flex-basis: 46%; padding: 42px; }
.home-form { display: grid; gap: 18px; }
.home-form__intro h3 { color: #0a1f44; font: 400 33px/1.1 "Instrument Serif",serif; margin: 0 0 10px; }
.home-form__intro p { color: #888; font-size: 12px; line-height: 1.6; margin: 0 0 8px; }
.home-form label { color: #888; display: grid; font: 600 9px/1.2 Inter,sans-serif; gap: 7px; letter-spacing: .18em; text-transform: uppercase; }
.home-form input,
.home-form select,
.home-form textarea { background: #f7f5f0; border: 1px solid #dfdcd7; border-radius: 0; box-sizing: border-box; color: #1a1a1a; font: 400 13px/1.4 Inter,sans-serif; letter-spacing: 0; padding: 12px 14px; text-transform: none; width: 100%; }
.home-form input:focus,
.home-form select:focus,
.home-form textarea:focus { border-color: #0a1f44; outline: 0; }
.home-form button { background: #b80000; border: 0; color: #fff; cursor: pointer; font: 600 12px/1 Inter,sans-serif; height: 52px; letter-spacing: .14em; padding: 17px; transition: background-color 150ms cubic-bezier(.4,0,.2,1); }
.home-form button:hover { background: #ff1a0a; }
.home-form__privacy { color: #aaa; font-size: 9px !important; line-height: 1.5; margin: -5px 0 0; text-align: center; }

.amlaw-reveal { opacity: 0; transform: translateY(20px); transition: opacity 650ms cubic-bezier(.25,.1,.25,1), transform 650ms cubic-bezier(.25,.1,.25,1); transition-delay: var(--amlaw-reveal-delay, 0ms); }
.amlaw-reveal.is-visible { opacity: 1; transform: none; }
.home-pathway-card.amlaw-reveal.is-visible:hover,
.home-person-card.amlaw-reveal.is-visible:hover,
.home-outcome-grid .home-content-card.amlaw-reveal.is-visible:hover { transform: translateY(-4px); }
.home-article-card.amlaw-reveal.is-visible:hover { transform: translateY(-2px); }
.home-hero__content.amlaw-reveal { transform: translate(-50%, calc(-50% + 22px)); }
.home-hero__content.amlaw-reveal.is-visible { transform: translate(-50%, -50%); }
.wp-site-blocks > main { margin-block-start: 0; }
body.home .wp-site-blocks > footer { margin-block-start: 0; }

body.admin-bar .amlaw-header { top: 32px; }

.home-contact { position: relative; }
.home-contact::after { background: rgba(197,165,90,.3); bottom: 0; content: ""; height: 1px; left: 50%; max-width: 1200px; position: absolute; transform: translateX(-50%); width: calc(100% - 48px); }

@media (prefers-reduced-motion: reduce) {
	.amlaw-reveal { opacity: 1; transform: none; transition: none; }
	.home-hero__content.amlaw-reveal { transform: translate(-50%, -50%); }
	.home-card figure img,
	.home-arrow { transition: none; }
}

@media (max-width: 1023px) {
	.home-container,
	.home-team .home-container { padding-inline: 16px; }
	.home-section { padding: 64px 0; }
	.home-pathway-grid,
	.home-team-grid,
	.home-outcome-grid,
	.home-review-grid,
	.home-article-grid { flex-wrap: wrap !important; gap: 32px; }
	body.home .home-pathway-grid > .wp-block-column,
	body.home .home-team-grid > .wp-block-column,
	body.home .home-outcome-grid > .wp-block-column,
	body.home .home-review-grid > .wp-block-column,
	body.home .home-article-grid > .wp-block-column { box-sizing: border-box; flex-basis: calc((100% - 64px) / 3) !important; flex-grow: 0; min-width: 0; }
	.home-approach-grid { flex-wrap: wrap !important; }
	body.home .home-approach-grid > .home-approach-card { border-bottom: 1px solid #e5e0d8; box-sizing: border-box; flex-basis: calc(50% - 10px) !important; flex-grow: 0; padding: 28px; }
	.home-approach-card:nth-child(2) { border-right: 1px solid #e5e0d8; }
	.home-contact__grid { gap: 5%; }
	.home-contact__form-wrap { padding: 32px; }
	.home-faq summary { margin-inline: 0; }
}

@media (max-width: 767px) {
	/* 7.3 — 44px touch targets for small card CTAs */
	.home-card-link a { align-items: center; display: inline-flex; min-height: 44px; }
	/* 7.3 — 9–10px labels raised to a 12px floor */
	.home-card-link,
	.home-stats p,
	.home-contact__stats p,
	.home-tag,
	.home-category,
	.home-person-title,
	.home-pathway-card figcaption,
	.home-form label,
	.home-form__privacy,
	.home-rating small,
	.home-review-card cite span,
	.home-review-card cite small { font-size: 12px !important; }
	.home-container,
	.home-faq__inner { padding-inline: 20px; }
	.home-section { padding: 72px 0; }
	.home-section h2,
	.home-contact h2 { font-size: 42px; }
	.home-hero { height: auto; min-height: 760px; }
	.home-hero__content { top: 50%; }
	.home-hero h1 { font-size: 52px; }
	.home-hero__content > p { font-size: 16.32px; line-height: 1.65; }
	.home-hero__buttons { align-items: stretch; flex-direction: column; }
	.home-hero .wp-block-button,
	.home-hero .wp-block-button__link { width: 100%; }
	.home-scroll { display: none; }
	.home-intro__content,
	.home-two-col,
	.home-contact__grid { gap: 48px; }
	.home-intro__content { padding-bottom: 48px; }
	.home-intro__content > .wp-block-column { flex-basis: auto; }
	.home-two-col > .wp-block-column { flex-basis: auto !important; }
	.home-intro__copy { border-left: 0; border-top: 1px solid #d7d1c8; padding: 30px 0 0; }
	.home-stats { display: grid !important; gap: 0; grid-template-columns: 1fr 1fr; margin-top: 60px; }
	.home-stats > .wp-block-column { border-bottom: 1px solid #d7d1c8; border-right: 0 !important; padding: 24px 10px; }
	.home-stats > .wp-block-column:nth-child(even) { border-right: 1px solid #d7d1c8 !important; }
	body.home .home-pathway-grid > .wp-block-column,
	body.home .home-team-grid > .wp-block-column,
	body.home .home-outcome-grid > .wp-block-column,
	body.home .home-review-grid > .wp-block-column,
	body.home .home-article-grid > .wp-block-column { flex-basis: 100% !important; flex-grow: 1; }
	.home-team-photo img { height: 520px; }
	.home-team-photo figcaption { bottom: -25px; left: 16px; right: 16px; }
	.home-team .home-container { padding-inline: 20px; }
	.home-person-card figure { height: 450px; }
	.home-heading-row { align-items: start; gap: 25px; }
	.home-heading-row .wp-block-buttons { justify-content: flex-start; }
	body.home .home-approach-grid > .home-approach-card { border-right: 1px solid #e5e0d8; flex-basis: 100% !important; flex-grow: 1; padding: 28px 24px; }
	.home-contact { background: #0a1f44; padding: 72px 0; }
	.home-contact__form-wrap { padding: 28px 22px; }
	.home-contact__stats { gap: 8px; }
	.home-contact__stats h3 { font-size: 29px; }
}

@media (max-width: 782px) {
	body.admin-bar .amlaw-header { top: 46px; }
}

@media (max-width: 400px) {
	/* 7.2 — keep hero CTA on one line without shrinking the font */
	.home-hero .wp-block-button__link { letter-spacing: .08em; }
}
