/*
Theme Name: Mai Hiệp Law Theme
Description: A modern, accessible WordPress theme for Mai Hiệp Law.
Version: 0.3.8
Text Domain: mai-hiep-law-theme
*/

:root {
  --mai-hiep-law-surface: var(--wp--preset--color--surface, #f4fafc);
  --mai-hiep-law-text: var(--wp--preset--color--text, #17212b);
  --mai-hiep-law-deep: var(--wp--preset--color--deep, #063b5c);
  --mai-hiep-law-action: var(--wp--preset--color--action, #007a5e);
  --mai-hiep-law-action-hover: color-mix(in srgb, var(--mai-hiep-law-action), #000 20%);
  --mai-hiep-law-focus: var(--wp--preset--color--focus, #ffbf47);
  --mai-hiep-law-muted: var(--wp--preset--color--muted, #52616b);
  --mai-hiep-law-border: #c8d8df;
}

html { scroll-behavior: smooth; }
body { background: var(--mai-hiep-law-surface); color: var(--mai-hiep-law-text); }
a { color: var(--wp--preset--color--brand, #006c9c); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--mai-hiep-law-focus);
  outline-offset: 3px;
}
.screen-reader-text:focus { clip: auto; height: auto; width: auto; left: 1rem; top: 1rem; z-index: 100000; padding: .75rem 1rem; background: #fff; color: var(--mai-hiep-law-text); }
.mai-hiep-law-site-header { position: sticky; top: 0; z-index: 20; background: rgba(244,250,252,.96); border-bottom: 1px solid var(--mai-hiep-law-border); backdrop-filter: blur(12px); }
.mai-hiep-law-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; max-width: 76rem; min-height: 4.5rem; margin: auto; padding: 0 1.25rem; }
.mai-hiep-law-brand { color: var(--mai-hiep-law-deep); font-weight: 800; text-decoration: none; letter-spacing: -.02em; white-space: nowrap; }
.mai-hiep-law-brand--logo { display: inline-flex; align-items: center; min-width: 0; }.mai-hiep-law-brand--logo img { display: block; width: auto; max-width: min(14rem, 28vw); height: auto; max-height: 3.2rem; object-fit: contain; object-position: left center; }
.mai-hiep-law-navigation { display: flex; min-width: 0; align-items: center; gap: 1.25rem; overflow: hidden; }.mai-hiep-law-navigation__menu, .mai-hiep-law-navigation__fallback { display: flex; align-items: center; gap: 1.25rem; margin: 0; padding: 0; list-style: none; }.mai-hiep-law-navigation__menu a, .mai-hiep-law-navigation__fallback a { display: inline-flex; align-items: center; min-height: 44px; color: var(--mai-hiep-law-deep); font-size: .93rem; font-weight: 700; text-decoration: none; }.mai-hiep-law-navigation__menu a:hover, .mai-hiep-law-navigation__fallback a:hover { color: #007a5e; }
.mai-hiep-law-navigation ul { flex-wrap: nowrap !important; }
.mai-hiep-law-navigation li:nth-child(n+5) { display: none; }
.mai-hiep-law-navigation .wp-block-navigation-item__content { min-height: 44px; display: inline-flex; align-items: center; }
.mai-hiep-law-cta, .wp-element-button { background: var(--mai-hiep-law-action); color: #fff; border-radius: .35rem; font-weight: 700; text-decoration: none; }
.mai-hiep-law-cta { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 2.75rem; padding: 0 .7rem 0 1rem; border-radius: 999px; box-shadow: 0 .4rem .9rem rgba(0, 122, 94, .18); white-space: nowrap; transition: transform .18s ease, box-shadow .18s ease; }
.mai-hiep-law-cta::after { display: grid; width: 1.45rem; height: 1.45rem; place-items: center; border-radius: 50%; content: '→'; background: rgba(255,255,255,.2); font-size: .95rem; }
.mai-hiep-law-cta:hover { transform: translateY(-1px); box-shadow: 0 .65rem 1.25rem rgba(0, 122, 94, .25); }
.mai-hiep-law-cta:hover, .wp-element-button:hover { background: var(--mai-hiep-law-action-hover); color: #fff; }
.mai-hiep-law-mobile-actions { display: none; }
.mai-hiep-law-hero { background: var(--mai-hiep-law-deep); color: #fff; border-radius: 0 0 2.5rem 2.5rem; }
.mai-hiep-law-hero a { color: inherit; }
.mai-hiep-law-meta { color: var(--mai-hiep-law-muted); font-size: .94rem; }
.wp-site-blocks main > .wp-block-post-title { max-width: 68rem; margin: 0 auto 2rem; padding: 0 1.5rem; color: #063b5c; font-size: clamp(2.15rem, 4vw, 4.25rem); letter-spacing: -.05em; }
.mai-hiep-law-empty { border: 1px dashed var(--mai-hiep-law-border); padding: 1.5rem; border-radius: .5rem; }
.mai-hiep-law-not-found { position: relative; overflow: hidden; padding: clamp(3.5rem, 8vw, 7.5rem) 1.25rem clamp(4.5rem, 9vw, 8.5rem); background: linear-gradient(145deg, #f4fafc 0%, #e8f5f2 52%, #f9fcfb 100%); }.mai-hiep-law-not-found::before { position: absolute; top: -15rem; right: -13rem; width: 38rem; height: 38rem; border: 1px solid rgba(0,122,94,.16); border-radius: 50%; box-shadow: 0 0 0 3rem rgba(0,122,94,.035), 0 0 0 7rem rgba(0,122,94,.02); content: ''; }.mai-hiep-law-not-found__shell { position: relative; display: grid; grid-template-columns: minmax(0,1.05fr) minmax(20rem,.95fr); gap: clamp(2rem,7vw,7rem); align-items:center; max-width: 76rem; margin: 0 auto; }.mai-hiep-law-not-found__copy { position: relative; z-index: 1; max-width: 39rem; }.mai-hiep-law-not-found__eyebrow { margin: 0 0 1.15rem; color: #007a5e; font-size: .72rem; font-weight: 800; letter-spacing: .16em; }.mai-hiep-law-not-found__eyebrow span { margin: 0 .3rem; color: #76bbb1; }.mai-hiep-law-not-found h1 { max-width: 10ch; margin: 0; color: #063b5c; font-size: clamp(3.2rem,6.2vw,6.2rem); line-height: .91; letter-spacing: -.075em; }.mai-hiep-law-not-found__lede { max-width: 34rem; margin: 1.5rem 0 0; color: #52616b; font-size: 1.07rem; line-height: 1.7; }.mai-hiep-law-not-found__actions { gap: .75rem; margin: 2.1rem 0 0; }.mai-hiep-law-not-found__actions .wp-block-button__link { display: inline-flex; min-height: 3.2rem; align-items: center; justify-content: center; gap: 1.05rem; padding: .65rem 1rem .65rem 1.3rem; border-radius: 999px; font-weight: 800; }.mai-hiep-law-not-found__home .wp-block-button__link { background: #007a5e; box-shadow: 0 .65rem 1.3rem rgba(0,122,94,.2); }.mai-hiep-law-not-found__home .wp-block-button__link:hover { background: #00614b; }.mai-hiep-law-not-found__home span { display: grid; width: 1.75rem; height: 1.75rem; place-items:center; border-radius: 50%; background: rgba(255,255,255,.2); }.mai-hiep-law-not-found__booking .wp-block-button__link { border: 1px solid #99bdbb; background: transparent; color: #174e5a; }.mai-hiep-law-not-found__booking .wp-block-button__link:hover { border-color: #007a5e; background: #fff; color: #007a5e; }.mai-hiep-law-not-found__art { position: relative; display: grid; min-height: clamp(19rem,32vw,27rem); place-items:center; overflow:hidden; border: 1px solid rgba(120,180,174,.38); border-radius: 1.45rem; background: linear-gradient(135deg,#073d58 0%,#095c70 65%,#0d7282 100%); box-shadow: 0 1.25rem 3.5rem rgba(6,59,92,.18); }.mai-hiep-law-not-found__art::before { position: absolute; top: 11%; left: 13%; width: 7.8rem; height: 7.8rem; border: 1px solid rgba(166,239,228,.48); border-radius: 50%; box-shadow: 0 0 0 1.8rem rgba(166,239,228,.08), 10rem 12rem 0 -2.8rem rgba(166,239,228,.35); content: ''; }.mai-hiep-law-not-found__art::after { position: absolute; right: -4rem; bottom: -5rem; width: 17rem; height: 17rem; border-radius: 50%; background: #7dd2d4; box-shadow: 0 0 0 2.6rem rgba(125,210,212,.15); content: ''; }.mai-hiep-law-not-found__number { position: relative; z-index: 1; margin: 0; color: #fff; font-size: clamp(6rem,14vw,12.5rem); font-weight: 800; line-height: .82; letter-spacing: -.1em; text-shadow: 0 .6rem 1.5rem rgba(0,31,47,.27); }.mai-hiep-law-not-found__art-note { position: absolute; z-index: 1; bottom: 1.6rem; left: 1.8rem; margin: 0; color: #d5f3ef; font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }.mai-hiep-law-not-found__search { grid-column: 1 / -1; width: min(100%,47rem); margin: clamp(.5rem,3vw,2rem) auto 0; padding: 1.2rem 1.25rem 1.25rem; border: 1px solid #d2e5e1; border-radius: .9rem; background: rgba(255,255,255,.78); box-shadow: 0 .75rem 2rem rgba(6,59,92,.07); }.mai-hiep-law-not-found__search > p { margin: 0 0 .7rem; color:#174e5a; font-size: .9rem; }.mai-hiep-law-not-found__search .wp-block-search__inside-wrapper { overflow:hidden; border: 1px solid #b9d2cf; border-radius: .6rem; background:#fff; }.mai-hiep-law-not-found__search .wp-block-search__input { min-height: 2.85rem; border: 0; padding: 0 .9rem; background: transparent; box-shadow:none; }.mai-hiep-law-not-found__search .wp-block-search__button { min-width: 3.1rem; margin: 0; border:0; border-radius:0; background:#007a5e; color:#fff; }.mai-hiep-law-not-found__search .wp-block-search__button:hover { background:#00614b; }
.mai-hiep-law-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1.25rem; }
.mai-hiep-law-card-grid > * { border: 1px solid var(--mai-hiep-law-border); background: #fff; padding: 1.25rem; border-radius: .5rem; }
.mai-hiep-law-home { overflow: hidden; background: #eef7f8; }
.mai-hiep-law-hero-shell { display: grid; grid-template-columns: minmax(0, 1fr) minmax(25rem, 1fr); max-width: 88rem; min-height: 39rem; margin: 1.5rem auto 0; overflow: hidden; border-radius: 1.5rem; background: #073d58; color: #fff; }
.mai-hiep-law-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(2.2rem, 6vw, 6rem); }
.mai-hiep-law-eyebrow { margin: 0 0 1.15rem; color: #208fb4; font-size: .72rem; font-weight: 800; letter-spacing: .16em; }
.mai-hiep-law-eyebrow span { margin: 0 .35rem; color: #72c4d7; }
.mai-hiep-law-hero-copy .mai-hiep-law-eyebrow, .mai-hiep-law-closing .mai-hiep-law-eyebrow { color: #83d7e4; }
.mai-hiep-law-hero-copy h1 { max-width: 13ch; margin: 0; font-size: clamp(3rem, 4.1vw, 4.35rem); line-height: 1; letter-spacing: -.055em; }
.mai-hiep-law-hero-lede { max-width: 32rem; margin: 1.7rem 0 0; color: #c9e0e6; font-size: 1.1rem; }
.mai-hiep-law-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem; margin-top: 2.2rem; }
.mai-hiep-law-primary-action { display: inline-flex; align-items: center; justify-content: center; gap: 1.2rem; min-height: 3.2rem; padding: .7rem 1.1rem .7rem 1.35rem; border-radius: .3rem; background: #7dd2d4; color: #063b5c; font-weight: 800; text-decoration: none; }
.mai-hiep-law-primary-action:hover { background: #c5f2ea; color: #063b5c; }
.mai-hiep-law-primary-action span { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; border-radius: 50%; background: #063b5c; color: #fff; }
.mai-hiep-law-text-action { color: #fff; font-weight: 700; text-decoration: none; }
.mai-hiep-law-text-action span { margin-left: .4rem; color: #83d7e4; }
.mai-hiep-law-hero-facts { display: flex; gap: clamp(1.1rem, 3vw, 2.8rem); margin: 3.8rem 0 0; }
.mai-hiep-law-hero-facts div { display: flex; gap: .5rem; align-items: center; }
.mai-hiep-law-hero-facts dt { font-size: 1.6rem; font-weight: 800; letter-spacing: -.06em; }
.mai-hiep-law-hero-facts dd { margin: 0; color: #a8c9d2; font-size: .74rem; line-height: 1.2; }
.mai-hiep-law-hero-media { position: relative; min-height: 24rem; background: #d9e7e5; }
.mai-hiep-law-hero-media > img { width: 100%; height: 100%; min-height: 39rem; object-fit: cover; object-position: center; filter: saturate(.76) contrast(.94); }
.mai-hiep-law-float-card { position: absolute; right: clamp(1rem, 4vw, 3rem); bottom: 2.3rem; display: grid; gap: .28rem; width: min(18rem, calc(100% - 2rem)); padding: 1rem 1rem 1rem 2.8rem; border: 1px solid rgba(255,255,255,.5); border-radius: .6rem; background: rgba(255,255,255,.92); box-shadow: 0 1rem 3rem rgba(0,39,55,.2); color: #063b5c; }
.mai-hiep-law-float-card small { color: #52616b; }
.mai-hiep-law-float-dot { position: absolute; top: 1.2rem; left: 1rem; width: .8rem; height: .8rem; border-radius: 50%; background: #007a5e; box-shadow: 0 0 0 .3rem #d9f4ea; }
.mai-hiep-law-trust-strip { display: flex; justify-content: space-between; gap: 1rem; max-width: 78rem; margin: 0 auto; padding: 1.55rem 1.5rem; border-bottom: 1px solid #c8d8df; }
.mai-hiep-law-trust-strip p { margin: 0; color: #31586a; font-weight: 700; }
.mai-hiep-law-trust-strip span { margin-right: .5rem; color: #007a5e; font-size: .75rem; }
.mai-hiep-law-section { max-width: 78rem; margin: auto; padding: clamp(4rem, 8vw, 7rem) 1.5rem; }
.mai-hiep-law-section-intro { display: grid; grid-template-areas: "eyebrow copy" "heading copy"; grid-template-columns: minmax(0, 1.08fr) minmax(17rem, .72fr); column-gap: clamp(2rem, 6vw, 6rem); row-gap: .85rem; align-items: end; max-width: 70rem; }
.mai-hiep-law-section-intro .mai-hiep-law-eyebrow { grid-area: eyebrow; margin-bottom: 0; }
.mai-hiep-law-section-intro h2 { grid-area: heading; max-width: 13ch; }
.mai-hiep-law-section-intro h2, .mai-hiep-law-process-copy h2, .mai-hiep-law-closing h2 { margin: 0; color: #063b5c; font-size: clamp(2.4rem, 4vw, 4.4rem); line-height: 1; letter-spacing: -.055em; }
.mai-hiep-law-section-intro > p:last-child { grid-area: copy; align-self: end; margin: 0 0 .35rem; color: #52616b; }
.mai-hiep-law-service-grid { display: grid; grid-template-columns: 1fr 1fr 1.14fr; gap: 1rem; margin-top: 2.6rem; }
.mai-hiep-law-service-card, .mai-hiep-law-service-image { min-height: 21rem; border-radius: .75rem; overflow: hidden; }
.mai-hiep-law-service-card { display: flex; flex-direction: column; padding: 1.6rem; }
.mai-hiep-law-service-card--blue { background: #075d7b; color: #fff; }.mai-hiep-law-service-card--sand { background: #e8d7ba; color: #163849; }
.mai-hiep-law-service-card--general { background: linear-gradient(180deg, rgba(4, 64, 87, .04) 0%, rgba(4, 57, 77, .82) 86%), url('https://images.unsplash.com/photo-1505751172876-fa1923c5c528?auto=format&fit=crop&w=900&q=82') center/cover; }
.mai-hiep-law-service-card--consultation { background: linear-gradient(180deg, rgba(244, 231, 202, .03) 0%, rgba(237, 218, 176, .8) 86%), url('https://images.unsplash.com/photo-1576091160550-2173dba999ef?auto=format&fit=crop&w=900&q=82') center/cover; }
.mai-hiep-law-service-card > span { font-size: .78rem; font-weight: 800; }.mai-hiep-law-service-card h3 { margin: auto 0 .8rem; font-size: 1.8rem; line-height: 1.05; }.mai-hiep-law-service-card p { margin: 0; max-width: 17rem; font-size: .92rem; }.mai-hiep-law-service-card a { display: flex; justify-content: space-between; margin-top: 1.7rem; color: inherit; font-weight: 800; text-decoration: none; }.mai-hiep-law-service-card a b { font-size: 1.35rem; }
.mai-hiep-law-service-image { position: relative; }.mai-hiep-law-service-image img { width: 100%; height: 100%; object-fit: cover; }.mai-hiep-law-service-image p { position: absolute; right: 1rem; bottom: 1rem; left: 1rem; margin: 0; padding: 1rem; border-radius: .3rem; background: rgba(6,59,92,.84); color: #fff; font-weight: 700; }
.mai-hiep-law-process { display: grid; grid-template-columns: .86fr 1.14fr; gap: clamp(2rem, 7vw, 7rem); align-items: center; }.mai-hiep-law-process-photo { min-height: 37rem; border-radius: .75rem; overflow: hidden; }.mai-hiep-law-process-photo img { width: 100%; height: 100%; min-height: 37rem; object-fit: cover; object-position: 53% center; }.mai-hiep-law-process-copy ol { display: grid; gap: 1rem; margin: 2.5rem 0; padding: 0; list-style: none; }.mai-hiep-law-process-copy li { display: grid; grid-template-columns: 2.8rem 1fr; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #c8d8df; }.mai-hiep-law-process-copy li > span { display: grid; width: 2.2rem; height: 2.2rem; place-items: center; border-radius: 50%; background: #d9f4ea; color: #007a5e; font-size: .75rem; font-weight: 800; }.mai-hiep-law-process-copy h3 { margin: 0; color: #063b5c; font-size: 1.1rem; }.mai-hiep-law-process-copy li p { margin: .25rem 0 0; color: #52616b; }
.mai-hiep-law-closing { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 3rem; max-width: 78rem; min-height: 22rem; margin: 0 auto clamp(3.5rem, 6vw, 6rem); padding: clamp(2.4rem, 5vw, 4.8rem); overflow: hidden; border-radius: 1.2rem; background: linear-gradient(118deg, #063b5c 0%, #0b5c73 58%, #0d7282 100%); }.mai-hiep-law-closing::before { position: absolute; top: -14rem; right: -8rem; width: 31rem; height: 31rem; border: 1px solid rgba(139, 228, 219, .28); border-radius: 50%; box-shadow: 0 0 0 2.8rem rgba(139, 228, 219, .06), 0 0 0 6rem rgba(139, 228, 219, .04); content: ''; }.mai-hiep-law-closing::after { position: absolute; right: 8%; bottom: 2.2rem; width: 6rem; height: 1px; content: ''; background: rgba(255,255,255,.42); }.mai-hiep-law-closing > * { position: relative; z-index: 1; }.mai-hiep-law-closing__copy { max-width: 44rem; }.mai-hiep-law-closing h2 { max-width: 16ch; color: #fff; font-size: clamp(2.5rem, 4.25vw, 4.6rem); }.mai-hiep-law-closing__note { max-width: 32rem; margin: 1.35rem 0 0; color: #c8e7e8; font-size: 1.02rem; }.mai-hiep-law-closing__action { display: grid; justify-items: start; gap: .85rem; min-width: 12rem; }.mai-hiep-law-closing__action > span { color: #9de4df; font-size: .7rem; font-weight: 800; letter-spacing: .15em; }.mai-hiep-law-closing .mai-hiep-law-primary-action { flex: 0 0 auto; min-height: 3.65rem; padding-right: .8rem; padding-left: 1.3rem; border-radius: 999px; background: #fff; box-shadow: 0 .85rem 1.8rem rgba(0, 35, 50, .2); color: #063b5c; }.mai-hiep-law-closing .mai-hiep-law-primary-action:hover { background: #dff4ef; color: #063b5c; }.mai-hiep-law-closing .mai-hiep-law-primary-action span { width: 2.15rem; height: 2.15rem; background: #007a5e; }
.mai-hiep-law-article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 2.6rem; }
.mai-hiep-law-article-slider { margin-top: 2.6rem; }.mai-hiep-law-article-slider__track { display: grid; grid-auto-columns: calc((100% - 2rem) / 3); grid-auto-flow: column; gap: 1rem; overflow-x: auto; padding: .2rem .1rem 1.1rem; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-color: #80a3b0 transparent; scrollbar-width: thin; }.mai-hiep-law-article-slider__track::-webkit-scrollbar { height: .45rem; }.mai-hiep-law-article-slider__track::-webkit-scrollbar-thumb { border-radius: 999px; background: #80a3b0; }.mai-hiep-law-article-slider__track .mai-hiep-law-article-card { scroll-snap-align: start; }.mai-hiep-law-article-slider__controls { display: flex; align-items: center; gap: .8rem; margin-top: .55rem; }.mai-hiep-law-slider-button { display: inline-grid; width: 2.8rem; height: 2.8rem; place-items: center; border: 1px solid #6d9aaa; border-radius: 50%; background: transparent; color: #063b5c; font-size: 1.25rem; line-height: 1; cursor: pointer; }.mai-hiep-law-slider-button:hover { border-color: #007a5e; background: #007a5e; color: #fff; }.mai-hiep-law-slider-button:disabled { cursor: not-allowed; border-color: #c8d8df; color: #9bb0b8; }.mai-hiep-law-article-slider__hint { color: #52616b; font-size: .88rem; font-weight: 700; }
.mai-hiep-law-article-slider { padding: 1.25rem; border: 1px solid #c7dce1; border-radius: 1.1rem; background: rgba(255,255,255,.52); }.mai-hiep-law-article-slider__bar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }.mai-hiep-law-article-slider__bar > p { margin: 0; color: #52616b; font-size: .86rem; font-weight: 700; }.mai-hiep-law-article-slider__bar strong { color: #007a5e; font-size: 1.1rem; }.mai-hiep-law-article-slider__bar span { margin: 0 .3rem; color: #8caab4; }.mai-hiep-law-article-slider .mai-hiep-law-article-slider__controls { margin: 0; }.mai-hiep-law-article-slider__track { grid-auto-columns: 100%; gap: 1.25rem; padding: 0; scrollbar-width: none; }.mai-hiep-law-article-slider__track::-webkit-scrollbar { display: none; }.mai-hiep-law-article-slide { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); grid-template-rows: repeat(2, minmax(12rem, 1fr)); gap: 1rem; min-height: 31rem; scroll-snap-align: start; }.mai-hiep-law-article-slider .mai-hiep-law-article-card { min-height: 0; scroll-snap-align: none; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured { position: relative; grid-row: 1 / span 2; border: 0; background: #063b5c; color: #fff; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__image { position: absolute; inset: 0; height: auto; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, rgba(6,31,45,.06) 20%, rgba(6,34,51,.92) 100%); }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__copy { position: relative; z-index: 1; display: flex; flex: 1; flex-direction: column; justify-content: flex-end; min-height: 100%; padding: 1.7rem; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__meta, .mai-hiep-law-article-slide .mai-hiep-law-article-card--featured h3, .mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__link, .mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__copy > p:not(.mai-hiep-law-article-card__meta) { margin-right: 0; margin-left: 0; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__meta { color: #8ee6dc; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured h3 { color: #fff; font-size: clamp(1.7rem, 2.2vw, 2.5rem); }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__copy > p:not(.mai-hiep-law-article-card__meta) { color: #d3e8ed; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__link { color: #fff; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) { display: grid; grid-template-columns: minmax(9rem, .75fr) minmax(0, 1fr); }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__image { height: auto; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__copy { display: flex; flex-direction: column; padding: 1.1rem; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__meta, .mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) h3, .mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__copy > p:not(.mai-hiep-law-article-card__meta), .mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__link { margin-right: 0; margin-left: 0; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) h3 { margin-top: .65rem; font-size: 1.2rem; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__copy > p:not(.mai-hiep-law-article-card__meta) { display: none; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__link { padding-top: .8rem; }
.mai-hiep-law-article-card { display: flex; flex-direction: column; min-height: 18rem; overflow: hidden; border: 1px solid #c8d8df; border-radius: .75rem; background: #fff; box-shadow: 0 .5rem 1.8rem rgba(6,59,92,.06); }.mai-hiep-law-article-card__image { display: block; height: 12rem; background: #d9e7e5; }.mai-hiep-law-article-card__image img { width: 100%; height: 100%; object-fit: cover; }.mai-hiep-law-article-card__meta, .mai-hiep-law-article-card h3, .mai-hiep-law-article-card > p:not(.mai-hiep-law-article-card__meta), .mai-hiep-law-article-card__link { margin-right: 1.6rem; margin-left: 1.6rem; }
.mai-hiep-law-article-card__meta { margin: 0; color: #007a5e; font-size: .74rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.mai-hiep-law-article-card__meta span { margin: 0 .3rem; color: #8aa3ad; }
.mai-hiep-law-article-card h3 { margin: 1.1rem 0 .8rem; color: #063b5c; font-size: 1.45rem; line-height: 1.15; }.mai-hiep-law-article-card h3 a { color: inherit; text-decoration: none; }.mai-hiep-law-article-card h3 a:hover { text-decoration: underline; }
.mai-hiep-law-article-card > p:not(.mai-hiep-law-article-card__meta) { margin: 0; color: #52616b; }.mai-hiep-law-article-card__link { display: inline-flex; gap: .55rem; margin-top: auto; padding-top: 1.5rem; color: #006c9c; font-weight: 800; text-decoration: none; }
.mai-hiep-law-article-single { max-width: 76rem; margin: 0 auto; }.mai-hiep-law-article-single .mai-hiep-law-article-hero { max-width: 76rem; margin: 0 auto 2.25rem; overflow: hidden; border-radius: .9rem; background: #d9e7e5; }.mai-hiep-law-article-single .mai-hiep-law-article-hero img { display: block; width: 100%; max-height: 31rem; object-fit: cover; }.mai-hiep-law-article-single .mai-hiep-law-article-single__date, .mai-hiep-law-article-single > .wp-block-post-title, .mai-hiep-law-article-single > .wp-block-post-content { max-width: 46rem; margin-right: auto; margin-left: auto; }.mai-hiep-law-article-single .mai-hiep-law-article-single__date { display: block; margin-bottom: .8rem; color: #007a5e; font-weight: 700; }.mai-hiep-law-article-single > .wp-block-post-title { margin-top: 0; margin-bottom: 1.7rem; padding: 0; text-align: left; }.mai-hiep-law-article-single > .wp-block-post-content { color: #364650; font-size: 1.1rem; }
.mai-hiep-law-page { max-width: 68rem; margin: 0 auto; }.mai-hiep-law-page__intro { max-width: 45rem; margin-bottom: 3rem; }.mai-hiep-law-page__eyebrow { margin: 0 0 .7rem; color: #007a5e; font-size: .76rem; font-weight: 800; letter-spacing: .13em; }.mai-hiep-law-page__intro h2 { margin: 0 0 1rem; color: #063b5c; font-size: clamp(2.1rem, 4vw, 3.7rem); line-height: 1.04; letter-spacing: -.045em; }.mai-hiep-law-page__intro > p:last-child { color: #52616b; font-size: 1.1rem; }
.mai-hiep-law-content-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 1.75rem 0 3rem; }.mai-hiep-law-content-card { padding: 1.4rem; border: 1px solid #c8d8df; border-radius: .65rem; background: #fff; }.mai-hiep-law-content-card h3 { margin: 0 0 .65rem; color: #063b5c; font-size: 1.25rem; }.mai-hiep-law-content-card p { margin: 0; color: #52616b; }
.mai-hiep-law-callout { margin: 2.5rem 0; padding: 1.6rem; border-left: .32rem solid #007a5e; border-radius: 0 .5rem .5rem 0; background: #e8f5f2; color: #17463a; }.mai-hiep-law-callout p { margin: 0; }.mai-hiep-law-faq { display: grid; gap: .85rem; margin: 1.8rem 0 3rem; }.mai-hiep-law-faq details { padding: 1.15rem 1.25rem; border: 1px solid #c8d8df; border-radius: .5rem; background: #fff; }.mai-hiep-law-faq summary { color: #063b5c; font-weight: 800; cursor: pointer; }.mai-hiep-law-faq details p { margin: 1rem 0 0; color: #52616b; }
.mai-hiep-law-service-list { display: grid; gap: 0; margin: 2rem 0 3rem; border-top: 1px solid #c8d8df; }.mai-hiep-law-service-list > div { display: grid; grid-template-columns: 9rem 1fr; gap: 1rem; padding: 1.2rem 0; border-bottom: 1px solid #c8d8df; }.mai-hiep-law-service-list strong { color: #063b5c; }.mai-hiep-law-service-list p { margin: 0; color: #52616b; }.mai-hiep-law-page__action { display: inline-flex; align-items: center; min-height: 3rem; padding: .5rem 1.15rem; border-radius: .35rem; background: #007a5e; color: #fff; font-weight: 800; text-decoration: none; }
.mai-hiep-law-footer { margin-top: 0; padding: clamp(3rem, 7vw, 6rem) max(1.25rem, calc((100vw - 76rem) / 2)); background: #063b5c; color: #d9edf2; }.mai-hiep-law-footer a { color: #fff; }.mai-hiep-law-footer__grid { display: grid; grid-template-columns: 1.35fr .78fr .85fr 1fr; gap: clamp(1.6rem, 4vw, 4rem); max-width: 76rem; margin: 0 auto; }.mai-hiep-law-footer__brand, .mai-hiep-law-footer__title { margin: 0 0 1rem; color: #88d8e5; font-size: .74rem; font-weight: 800; letter-spacing: .14em; }.mai-hiep-law-footer__intro > p:not(.mai-hiep-law-footer__brand), .mai-hiep-law-footer__column p { margin: 0; color: #d9edf2; line-height: 1.65; }.mai-hiep-law-footer__appointment { display: inline-flex; gap: .7rem; margin-top: 1.4rem; padding-bottom: .15rem; border-bottom: 1px solid #88d8e5; color: #fff; font-weight: 800; text-decoration: none; }.mai-hiep-law-footer__column { display: flex; flex-direction: column; align-items: flex-start; gap: .7rem; }.mai-hiep-law-footer__column .mai-hiep-law-footer__title { margin-bottom: .35rem; }.mai-hiep-law-footer__column a { font-weight: 700; text-decoration-color: rgba(255,255,255,.35); text-underline-offset: .22em; }.mai-hiep-law-footer__column strong { color: #fff; }.mai-hiep-law-footer__bottom { display: flex; justify-content: space-between; gap: 1.25rem; max-width: 76rem; margin: clamp(2rem, 5vw, 4rem) auto 0; padding-top: 1.25rem; border-top: 1px solid rgba(217,237,242,.3); color: #b8d3dc; font-size: .82rem; }.mai-hiep-law-footer__bottom p { margin: 0; }.mai-hiep-law-footer__bottom div { display: flex; gap: 1.1rem; }.mai-hiep-law-footer__bottom a { color: #d9edf2; }
.mai-hiep-law-footer__widgets { display: grid; grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1rem; max-width: 76rem; margin: 2.5rem auto 0; padding-top: 1.5rem; border-top: 1px solid rgba(217,237,242,.3); }.mai-hiep-law-footer__widget { color: #d9edf2; }.mai-hiep-law-footer__widget > :last-child { margin-bottom: 0; }.mai-hiep-law-footer__widget a { color: #fff; }
.mai-hiep-law-footer nav.mai-hiep-law-footer__column { display: flex !important; flex-direction: column; align-items: flex-start; gap: .7rem; }.mai-hiep-law-footer nav.mai-hiep-law-footer__column a { display: inline-block; }
.mai-hiep-law-footer__links { display: flex; flex-direction: column; align-items: flex-start; gap: .7rem; }
.mai-hiep-law-contact-map { display: grid; grid-template-columns: minmax(15rem, .7fr) minmax(0, 1.3fr); gap: clamp(1.25rem, 4vw, 3.5rem); align-items: center; max-width: 76rem; margin: clamp(2.5rem, 6vw, 5rem) auto 0; padding: clamp(1.25rem, 4vw, 2.5rem); border: 1px solid #d5e5e4; border-radius: 1.15rem; background: linear-gradient(135deg, #f4fbf9 0%, #fff 100%); box-shadow: 0 1rem 2.5rem rgba(6,59,92,.08); }.mai-hiep-law-contact-map__heading h2 { margin: .35rem 0 .8rem; color: #063b5c; font-size: clamp(1.75rem, 3.5vw, 3rem); letter-spacing: -.045em; }.mai-hiep-law-contact-map__heading > p:last-child { margin: 0; color: #52616b; line-height: 1.65; }.mai-hiep-law-contact-map__frame { min-height: 20rem; overflow: hidden; border: 1px solid #c1d9d7; border-radius: .85rem; background: #dbeceb; }.mai-hiep-law-contact-map__frame iframe { display: block; width: 100%; height: 100%; min-height: 20rem; border: 0; }
.mai-hiep-law-quick-contact { position: fixed; z-index: 60; right: 1.35rem; bottom: 1.35rem; display: grid; justify-items: end; gap: .8rem; }.mai-hiep-law-quick-contact__links { display: grid; gap: .65rem; justify-items: end; max-height: 0; overflow: hidden; opacity: 0; pointer-events: none; transform: translateY(.75rem); transition: max-height .25s ease, opacity .2s ease, transform .25s ease; }.mai-hiep-law-quick-contact.is-open .mai-hiep-law-quick-contact__links { max-height: 18rem; opacity: 1; pointer-events: auto; transform: translateY(0); }.mai-hiep-law-quick-contact__link, .mai-hiep-law-quick-contact__toggle { display: grid; width: 3.25rem; height: 3.25rem; place-items: center; border: 0; border-radius: 50%; box-shadow: 0 .65rem 1.4rem rgba(6,59,92,.22); color: #fff; cursor: pointer; text-decoration: none; }.mai-hiep-law-quick-contact__link { position: relative; transition: transform .18s ease, box-shadow .18s ease; }.mai-hiep-law-quick-contact__link:hover { transform: translateX(-.2rem) scale(1.06); box-shadow: 0 .9rem 1.7rem rgba(6,59,92,.28); }.mai-hiep-law-quick-contact__link--phone { background: #007a5e; }.mai-hiep-law-quick-contact__link--messenger { background: #1386f1; }.mai-hiep-law-quick-contact__link--map { background: #d94f43; }.mai-hiep-law-quick-contact__link--zalo { background: #0068ff; }.mai-hiep-law-quick-contact__link svg, .mai-hiep-law-quick-contact__toggle svg { width: 1.45rem; height: 1.45rem; fill: currentColor; }.mai-hiep-law-quick-contact__link--zalo svg { width: 1.55rem; height: 1.55rem; }.mai-hiep-law-quick-contact__icon-cutout { fill: none; stroke: #fff; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round; }.mai-hiep-law-quick-contact__link::after { position: absolute; right: calc(100% + .7rem); padding: .45rem .65rem; border-radius: .4rem; background: #063b5c; box-shadow: 0 .35rem 1rem rgba(6,59,92,.16); color: #fff; content: attr(data-tooltip); font-size: .76rem; font-weight: 800; opacity: 0; pointer-events: none; white-space: nowrap; transform: translateX(.35rem); transition: opacity .18s ease, transform .18s ease; }.mai-hiep-law-quick-contact__link:hover::after, .mai-hiep-law-quick-contact__link:focus-visible::after { opacity: 1; transform: translateX(0); }.mai-hiep-law-quick-contact__toggle { position: relative; background: linear-gradient(145deg, #063b5c, #0c7081); transition: transform .2s ease, background .2s ease; }.mai-hiep-law-quick-contact__toggle::after { position: absolute; inset: -.38rem; border: 1px solid rgba(0,122,94,.34); border-radius: 50%; content: ''; animation: mai-hiep-law-quick-contact-pulse 2.4s ease-out infinite; }.mai-hiep-law-quick-contact.is-open .mai-hiep-law-quick-contact__toggle { background: #bd3c2d; transform: rotate(8deg); }.mai-hiep-law-quick-contact.is-open .mai-hiep-law-quick-contact__toggle::after { animation: none; }.mai-hiep-law-quick-contact__toggle:hover { transform: translateY(-.15rem) scale(1.04); }
@keyframes mai-hiep-law-quick-contact-pulse { 0%, 100% { opacity: .2; transform: scale(.92); } 50% { opacity: .65; transform: scale(1.1); } }
@media (max-width: 48rem) {
  body { padding-bottom: calc(4.75rem + env(safe-area-inset-bottom)); }
  .mai-hiep-law-navigation { display: none; }
  .mai-hiep-law-mobile-actions { position: fixed; display: grid; grid-template-columns: repeat(3, 1fr); gap: .25rem; bottom: 0; left: 0; right: 0; z-index: 30; padding: .5rem max(.5rem, env(safe-area-inset-right)) calc(.5rem + env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left)); background: #fff; border-top: 1px solid var(--mai-hiep-law-border); }
  .mai-hiep-law-mobile-actions a { display: grid; place-items: center; min-height: 44px; text-align: center; color: var(--mai-hiep-law-deep); font-size: .85rem; font-weight: 700; text-decoration: none; }
  .mai-hiep-law-mobile-actions a:last-child { background: var(--mai-hiep-law-action); color: #fff; border-radius: .35rem; }
  .mai-hiep-law-hero-shell, .mai-hiep-law-section-intro, .mai-hiep-law-service-grid, .mai-hiep-law-process, .mai-hiep-law-article-grid, .mai-hiep-law-content-grid, .mai-hiep-law-footer__grid, .mai-hiep-law-contact-map { grid-template-columns: 1fr; }.mai-hiep-law-hero-shell { margin: 0; border-radius: 0; }.mai-hiep-law-hero-copy { min-height: 31rem; }.mai-hiep-law-hero-copy h1 { font-size: clamp(3rem, 15vw, 4.5rem); }.mai-hiep-law-hero-media > img { min-height: 29rem; }.mai-hiep-law-hero-facts { margin-top: 2.8rem; gap: 1rem; }.mai-hiep-law-hero-facts dt { font-size: 1.3rem; }.mai-hiep-law-trust-strip { overflow-x: auto; justify-content: flex-start; white-space: nowrap; }.mai-hiep-law-section { padding-right: 1rem; padding-left: 1rem; }.mai-hiep-law-section-intro { gap: 1rem; }.mai-hiep-law-service-card { min-height: 16rem; }.mai-hiep-law-service-image { min-height: 18rem; }.mai-hiep-law-process { gap: 2rem; }.mai-hiep-law-process-photo, .mai-hiep-law-process-photo img { min-height: 25rem; }.mai-hiep-law-closing { align-items: flex-start; flex-direction: column; min-height: 0; margin-right: 1rem; margin-left: 1rem; }.mai-hiep-law-closing__action { width: 100%; }.mai-hiep-law-closing .mai-hiep-law-primary-action { width: 100%; }.mai-hiep-law-page__intro { margin-bottom: 2rem; }.mai-hiep-law-service-list > div { grid-template-columns: 1fr; gap: .3rem; }.mai-hiep-law-footer__grid { gap: 2rem; }.mai-hiep-law-footer__bottom { align-items: flex-start; flex-direction: column; }.mai-hiep-law-footer__bottom div { flex-wrap: wrap; }.mai-hiep-law-article-slider__track { grid-auto-columns: minmax(17rem, 84vw); gap: .85rem; padding-bottom: .85rem; }.mai-hiep-law-article-slider__hint { flex: 1; text-align: center; }
  .mai-hiep-law-article-slider { padding: .75rem; }.mai-hiep-law-article-slider__bar { margin-bottom: .75rem; }.mai-hiep-law-article-slide { grid-template-columns: 1fr; grid-template-rows: repeat(3, minmax(12rem, auto)); min-height: 0; }.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured { grid-row: auto; min-height: 23rem; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) { min-height: 12rem; }.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__image { min-height: 12rem; }.mai-hiep-law-article-slider__track { grid-auto-columns: 100%; }
  .mai-hiep-law-quick-contact { right: 1rem; bottom: calc(5.75rem + env(safe-area-inset-bottom)); }.mai-hiep-law-quick-contact__link::after { display: none; }
}

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

/* A quiet editorial frame gives the article carousel a clear visual hierarchy. */
.mai-hiep-law-articles { position: relative; }
.mai-hiep-law-articles::before { position: absolute; z-index: 0; right: 0; bottom: 0; left: 0; height: 20rem; content: ''; background: linear-gradient(100deg, rgba(217,241,238,.72), rgba(232,244,242,.55) 56%, transparent 56%); }
.mai-hiep-law-articles > * { position: relative; z-index: 1; }
.mai-hiep-law-article-slider { position: relative; padding: clamp(1rem, 2vw, 1.5rem); border: 0; border-radius: 1.35rem; background: #fff; box-shadow: 0 1.3rem 3.5rem rgba(6, 59, 92, .12); }
.mai-hiep-law-article-slider::after { position: absolute; top: 0; right: 1.5rem; left: 1.5rem; height: 4px; border-radius: 99px; content: ''; background: linear-gradient(90deg, #83d7e4 0%, #007a5e 62%, #e8d7ba 100%); }
.mai-hiep-law-article-slider__bar { min-height: 3.5rem; padding: .35rem .25rem 0; }
.mai-hiep-law-article-slider__bar > p { display: inline-flex; align-items: center; gap: .15rem; padding: .35rem .65rem; border-radius: 99px; background: #edf7f6; color: #31586a; letter-spacing: .04em; text-transform: uppercase; }
.mai-hiep-law-article-slider__bar strong { margin-left: .15rem; }
.mai-hiep-law-slider-button { width: 3rem; height: 3rem; border-color: #c6dce0; background: #f8fbfb; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.mai-hiep-law-slider-button:hover { transform: translateY(-2px); }
.mai-hiep-law-article-slide { min-height: 33rem; gap: 1.15rem; }
.mai-hiep-law-article-slide .mai-hiep-law-article-card { overflow: hidden; border-radius: .85rem; }
.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured { box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__copy { padding: clamp(1.45rem, 3vw, 2.4rem); }
.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured h3 { max-width: 17ch; line-height: 1.02; }
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) { border: 1px solid #d9e7e8; background: #f9fcfc; box-shadow: 0 .45rem 1.5rem rgba(6, 59, 92, .06); transition: transform .2s ease, box-shadow .2s ease; }
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured):hover { transform: translateY(-3px); box-shadow: 0 .9rem 2rem rgba(6, 59, 92, .13); }
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__image { overflow: hidden; }
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) img { transition: transform .45s ease; }
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured):hover img { transform: scale(1.05); }
.mai-hiep-law-article-card__link { text-underline-offset: .28em; }

/* Legal identity: sober green, terracotta accents, and an editorial serif hierarchy. */
:root { --mai-hiep-law-surface: #f7f8f5; --mai-hiep-law-text: #1c2724; --mai-hiep-law-deep: #18332e; --mai-hiep-law-action: #a55a28; --mai-hiep-law-muted: #5d6863; --mai-hiep-law-border: #d5d9d2; }
body { background: #f7f8f5; }
.mai-hiep-law-site-header { background: rgba(247,248,245,.96); border-color: #d5d9d2; }
.mai-hiep-law-brand { font-family: Georgia, 'Times New Roman', serif; font-size: 1.12rem; letter-spacing: .06em; }
.mai-hiep-law-navigation__menu a:hover, .mai-hiep-law-navigation__fallback a:hover { color: #a55a28; }
.mai-hiep-law-cta { background: #a55a28; box-shadow: 0 .4rem .9rem rgba(112,54,23,.18); }
.mai-hiep-law-cta:hover { background: #7d3e1c; box-shadow: 0 .65rem 1.25rem rgba(112,54,23,.24); }
.mai-hiep-law-home { background: #f7f8f5; }
.mai-hiep-law-hero-shell { background: #18332e; border-radius: .5rem; }
.mai-hiep-law-hero-copy h1, .mai-hiep-law-section-intro h2, .mai-hiep-law-process-copy h2, .mai-hiep-law-closing h2 { font-family: Georgia, 'Times New Roman', serif; font-weight: 600; letter-spacing: 0; }
.mai-hiep-law-eyebrow, .mai-hiep-law-hero-copy .mai-hiep-law-eyebrow, .mai-hiep-law-closing .mai-hiep-law-eyebrow { color: #d8b15e; }
.mai-hiep-law-eyebrow span { color: #e5c779; }
.mai-hiep-law-hero-lede { color: #d8e0d8; }
.mai-hiep-law-primary-action { background: #d8b15e; color: #18332e; border-radius: .2rem; }
.mai-hiep-law-primary-action:hover { background: #eed28d; color: #18332e; }
.mai-hiep-law-primary-action span { background: #18332e; }
.mai-hiep-law-text-action span { color: #d8b15e; }
.mai-hiep-law-hero-facts dd { color: #c2d0c5; }
.mai-hiep-law-hero-media > img { filter: saturate(.55) contrast(.93); }
.mai-hiep-law-float-card { color: #18332e; border-radius: .25rem; }
.mai-hiep-law-float-dot { background: #a55a28; box-shadow: 0 0 0 .3rem #f3e1c7; }
.mai-hiep-law-trust-strip { border-color: #d5d9d2; }.mai-hiep-law-trust-strip p { color: #33453f; }.mai-hiep-law-trust-strip span { color: #a55a28; }
.mai-hiep-law-service-card, .mai-hiep-law-service-image, .mai-hiep-law-process-photo { border-radius: .35rem; }
.mai-hiep-law-service-card--general { background-image: linear-gradient(180deg, rgba(24,51,46,.04) 0%, rgba(24,51,46,.91) 86%), url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?auto=format&fit=crop&w=900&q=82'); }
.mai-hiep-law-service-card--consultation { background-image: linear-gradient(180deg, rgba(232,217,190,.03) 0%, rgba(215,177,105,.84) 86%), url('https://images.unsplash.com/photo-1521791055366-0d553872125f?auto=format&fit=crop&w=900&q=82'); }
.mai-hiep-law-service-card--sand { color: #283631; }.mai-hiep-law-service-image p { background: rgba(24,51,46,.92); border-radius: .2rem; }
.mai-hiep-law-process-copy li { border-color: #d5d9d2; }.mai-hiep-law-process-copy li > span { background: #f0e3c7; color: #8a4d24; }.mai-hiep-law-process-copy h3 { color: #18332e; }
.mai-hiep-law-closing { border-radius: .5rem; background: #18332e; }.mai-hiep-law-closing::before { border-color: rgba(216,177,94,.28); box-shadow: 0 0 0 2.8rem rgba(216,177,94,.06), 0 0 0 6rem rgba(216,177,94,.04); }.mai-hiep-law-closing__note { color: #d8e0d8; }.mai-hiep-law-closing__action > span { color: #d8b15e; }.mai-hiep-law-closing .mai-hiep-law-primary-action { color: #18332e; border-radius: .25rem; }.mai-hiep-law-closing .mai-hiep-law-primary-action:hover { background: #f0e3c7; }.mai-hiep-law-closing .mai-hiep-law-primary-action span { background: #a55a28; }
.mai-hiep-law-articles::before { background: linear-gradient(100deg, rgba(228,232,222,.78), rgba(240,227,199,.58) 56%, transparent 56%); }.mai-hiep-law-article-slider::after { background: #a55a28; }.mai-hiep-law-article-slider__bar > p { background: #f0e9dc; color: #33453f; }.mai-hiep-law-article-card--featured { background: #18332e !important; }.mai-hiep-law-article-card__meta { color: #b9c9bd; }
.mai-hiep-law-footer { background: #18332e; }.mai-hiep-law-footer__brand, .mai-hiep-law-footer__title { font-family: Georgia, 'Times New Roman', serif; }.mai-hiep-law-footer__appointment { color: #d8b15e; }

@media (max-width: 48rem) {
  .mai-hiep-law-header-inner { gap: .5rem; min-height: 4rem; padding-right: .75rem; padding-left: .75rem; }
  .mai-hiep-law-brand { min-width: 0; font-size: .9rem; letter-spacing: .04em; overflow: hidden; text-overflow: ellipsis; }
  .mai-hiep-law-cta { flex: 0 0 auto; min-height: 2.5rem; padding: 0 .55rem 0 .75rem; font-size: .82rem; }
  .mai-hiep-law-cta::after { width: 1.25rem; height: 1.25rem; }
}

/* Mai Hiep Law uses a clear Vietnamese sans-serif system, not an oversized editorial serif. */
body, button, input, select, textarea { font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif; }
.mai-hiep-law-brand { font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif; font-weight: 800; letter-spacing: .025em; }
.mai-hiep-law-hero-copy h1, .mai-hiep-law-section-intro h2, .mai-hiep-law-process-copy h2, .mai-hiep-law-closing h2,
.mai-hiep-law-doctor-directory__intro h1, .mai-hiep-law-doctor-profile h1, .wp-site-blocks main > .wp-block-post-title {
  font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.12;
}
.mai-hiep-law-hero-copy h1 { font-size: 3.65rem; max-width: 12ch; }
.mai-hiep-law-section-intro h2, .mai-hiep-law-process-copy h2, .mai-hiep-law-closing h2 { font-size: 3.15rem; max-width: 16ch; }
.mai-hiep-law-doctor-directory__intro h1, .mai-hiep-law-doctor-profile h1 { font-size: 3.25rem; }
.mai-hiep-law-doctor-directory { max-width: 76rem; margin: 0 auto; }
.mai-hiep-law-doctor-directory__intro { grid-template-columns: minmax(0, 1fr) minmax(18rem, .78fr); gap: 2.5rem; margin-bottom: 3rem; }
.mai-hiep-law-doctor-directory__intro > p { font-size: 1rem; }
.mai-hiep-law-doctor-directory__grid { gap: 1.25rem; }
.mai-hiep-law-doctor-card, .mai-hiep-law-doctor-card--lead { border-color: #d5d9d2; border-radius: .4rem; box-shadow: 0 .7rem 1.8rem rgba(24,51,46,.08); }
.mai-hiep-law-doctor-card--lead { background: #18332e; }
.mai-hiep-law-doctor-card__image { background: #d8ddd5; }
.mai-hiep-law-doctor-card__image img { object-position: center; filter: saturate(.75) contrast(.95); }
.mai-hiep-law-doctor-card__role, .mai-hiep-law-doctor-profile__role { color: #a55a28; }
.mai-hiep-law-doctor-card h2, .mai-hiep-law-doctor-directory h2 { font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif; font-weight: 700; letter-spacing: 0; }
.mai-hiep-law-doctor-tags span { border-color: #dbc9a5; border-radius: .25rem; background: #faf5e9; color: #70411f; }
.mai-hiep-law-doctor-card__link { color: #8a4d24; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__link { color: #f3d68d; }
.mai-hiep-law-process-photo, .mai-hiep-law-process-photo img { min-height: 31rem; }
.mai-hiep-law-process-photo, .mai-hiep-law-doctor-card__image { background: #d8ddd5 url('assets/images/legal-workspace.jpg') center/cover no-repeat; }
.mai-hiep-law-process-photo img { object-position: center; }
.mai-hiep-law-consultation-page { max-width: 76rem; margin: 0 auto; }
.mai-hiep-law-consultation-page__intro { max-width: 52rem; margin: 0 auto 2.4rem; text-align: center; }
.mai-hiep-law-consultation-page__intro h1 { margin: 0; color: #18332e; font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif; font-size: 3.25rem; font-weight: 700; letter-spacing: 0; line-height: 1.12; }
.mai-hiep-law-consultation-page__intro > p:last-child { max-width: 42rem; margin: 1rem auto 0; color: #5d6863; }
@media (max-width: 700px) {
  .mai-hiep-law-hero-copy h1 { font-size: 2.9rem; }
  .mai-hiep-law-section-intro h2, .mai-hiep-law-process-copy h2, .mai-hiep-law-closing h2, .mai-hiep-law-doctor-directory__intro h1, .mai-hiep-law-doctor-profile h1 { font-size: 2.35rem; }
  .mai-hiep-law-doctor-directory__intro { gap: 1rem; }
  .mai-hiep-law-consultation-page__intro h1 { font-size: 2.35rem; }
}

@media (max-width: 700px) {
  .mai-hiep-law-section-intro { grid-template-areas: "eyebrow" "heading" "copy"; grid-template-columns: 1fr; row-gap: 1rem; }
  .mai-hiep-law-section-intro > p:last-child { margin-bottom: 0; }
  .mai-hiep-law-articles::before { height: 55%; background: linear-gradient(180deg, rgba(217,241,238,.72), rgba(232,244,242,.5)); }
  .mai-hiep-law-article-slider { border-radius: 1rem; }
  .mai-hiep-law-article-slide { min-height: 0; gap: .85rem; }
  .mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__copy { padding: 1.3rem; }
}

/* Doctor pages use a warmer editorial layout so profiles feel personal, not like a generic directory. */
.mai-hiep-law-doctor-page { max-width: 76rem; margin: 0 auto; }
.mai-hiep-law-doctor-directory__intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(16rem, .72fr); gap: clamp(1.5rem, 6vw, 6rem); align-items: end; margin: 0 0 clamp(2rem, 5vw, 4.25rem); padding: 0 1.25rem; }
.mai-hiep-law-doctor-directory__intro h1, .mai-hiep-law-doctor-profile h1 { margin: 0; color: #063b5c; font-size: clamp(2.7rem, 5.4vw, 5.6rem); line-height: .95; letter-spacing: -.065em; }
.mai-hiep-law-doctor-directory__intro > p { max-width: 34rem; margin: 0 0 .35rem; color: #52616b; font-size: 1.06rem; line-height: 1.7; }
.mai-hiep-law-doctor-directory__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-auto-rows: 15.5rem; gap: clamp(1rem, 2vw, 1.6rem); padding: 0 1.25rem; }
.mai-hiep-law-doctor-card { display: grid; grid-column: span 5; grid-template-columns: minmax(8.5rem, .72fr) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); min-height: 11.25rem; overflow: hidden; border: 1px solid #d4e2e4; border-radius: 1.15rem; background: #fff; box-shadow: 0 .8rem 2.4rem rgba(6, 59, 92, .08); transition: transform .22s ease, box-shadow .22s ease; }
.mai-hiep-law-doctor-card:hover { transform: translateY(-5px); box-shadow: 0 1.25rem 2.8rem rgba(6, 59, 92, .15); }
.mai-hiep-law-doctor-card--lead { grid-column: span 7; grid-row: span 3; grid-template-columns: minmax(0, 1.08fr) minmax(17rem, .92fr); background: #073d58; }
.mai-hiep-law-doctor-card__image { display: block; min-width: 0; min-height: 0; height: 100%; overflow: hidden; background: #c5dde0; }
.mai-hiep-law-doctor-card__image img { display: block; width: 100%; min-height: 0; height: 100%; object-fit: cover; object-position: center 20%; transition: transform .5s ease; }
.mai-hiep-law-doctor-card:hover .mai-hiep-law-doctor-card__image img { transform: scale(1.045); }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image { min-height: 31rem; }
.mai-hiep-law-doctor-card__body { display: flex; flex: 1; min-width: 0; min-height: 0; flex-direction: column; padding: 1.45rem; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body { justify-content: flex-end; padding: clamp(1.6rem, 4vw, 3rem); color: #d5ebee; }
.mai-hiep-law-doctor-card__role { margin: 0 0 .6rem; color: #007a5e; font-size: .74rem; font-weight: 800; letter-spacing: .115em; text-transform: uppercase; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__role { color: #85ddd4; }
.mai-hiep-law-doctor-card h2 { margin: 0; color: #063b5c; font-size: clamp(1.5rem, 2vw, 2.15rem); line-height: 1.03; letter-spacing: -.045em; }
.mai-hiep-law-doctor-card--lead h2 { color: #fff; font-size: clamp(2.25rem, 3.8vw, 4rem); }
.mai-hiep-law-doctor-card h2 a { color: inherit; text-decoration: none; }
.mai-hiep-law-doctor-card__experience { margin: .7rem 0 1rem; color: #52616b; font-size: .92rem; font-weight: 700; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__experience { color: #c4e0e4; }
.mai-hiep-law-doctor-tags { display: flex; flex-wrap: wrap; gap: .45rem; }
.mai-hiep-law-doctor-tags span { display: inline-flex; align-items: center; min-height: 1.8rem; padding: .15rem .65rem; border: 1px solid #cde0e0; border-radius: 99px; background: #f2faf9; color: #176858; font-size: .76rem; font-weight: 700; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-tags span { border-color: rgba(159, 231, 225, .35); background: rgba(143, 224, 216, .12); color: #d8fbf6; }
.mai-hiep-law-doctor-card__link { display: inline-flex; gap: .55rem; margin-top: auto; padding-top: 1.3rem; color: #006c9c; font-weight: 800; text-decoration: none; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__link { color: #fff; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) { display: flex; grid-column: span 5; min-height: 0; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-card__image { flex: 0 0 42%; align-self: stretch; height: 100%; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-card__body { justify-content: center; padding: 1rem 1.15rem; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) h2 { font-size: 1.35rem; line-height: 1.08; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-card__experience { margin: .38rem 0 .6rem; font-size: .82rem; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-tags { gap: .3rem; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-tags span { min-height: 1.55rem; padding: .08rem .46rem; font-size: .68rem; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-tags span:nth-child(n+3) { display: none; }
.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-card__link { margin-top: .7rem; padding-top: 0; font-size: .88rem; }
.mai-hiep-law-doctor-profile { overflow: hidden; border-radius: 1.45rem; background: #fff; box-shadow: 0 1.25rem 3.5rem rgba(6, 59, 92, .1); }
.mai-hiep-law-doctor-profile__hero { display: grid; grid-template-columns: minmax(19rem, .88fr) minmax(0, 1.12fr); min-height: 41rem; background: linear-gradient(130deg, #edf8f6 0%, #f9fcfb 57%, #e6f1ef 100%); }
.mai-hiep-law-doctor-profile__portrait { position: relative; margin: 0; overflow: hidden; background: #b7d5d8; }
.mai-hiep-law-doctor-profile__portrait::after { position: absolute; inset: auto 0 0; height: 28%; content: ''; background: linear-gradient(transparent, rgba(5, 50, 69, .3)); }
.mai-hiep-law-doctor-profile__portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 17%; }
.mai-hiep-law-doctor-profile__intro { align-self: center; padding: clamp(2rem, 6vw, 6rem); }
.mai-hiep-law-doctor-profile__role { margin: 1.25rem 0 .65rem; color: #007a5e; font-size: 1.1rem; font-weight: 800; }
.mai-hiep-law-doctor-profile__lead { max-width: 38rem; margin: 1.1rem 0 1.8rem; color: #455c65; font-size: 1.1rem; line-height: 1.65; }
.mai-hiep-law-doctor-profile__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 0 0 1.5rem; }
.mai-hiep-law-doctor-profile__stats > div { padding: 1rem; border: 1px solid #cee2df; border-radius: .75rem; background: rgba(255,255,255,.68); }
.mai-hiep-law-doctor-profile__stats span, .mai-hiep-law-doctor-profile__label { display: block; margin-bottom: .35rem; color: #57727b; font-size: .73rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.mai-hiep-law-doctor-profile__stats strong { color: #063b5c; font-size: .96rem; line-height: 1.35; }
.mai-hiep-law-doctor-profile__cta { display: inline-flex; align-items: center; gap: .85rem; min-height: 3.25rem; padding: .55rem .65rem .55rem 1.15rem; border-radius: 99px; background: #007a5e; box-shadow: 0 .65rem 1.2rem rgba(0, 122, 94, .2); color: #fff; font-weight: 800; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.mai-hiep-law-doctor-profile__cta span { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border-radius: 50%; background: rgba(255,255,255,.2); }
.mai-hiep-law-doctor-profile__cta:hover { transform: translateY(-2px); box-shadow: 0 .9rem 1.5rem rgba(0, 122, 94, .26); color: #fff; }
.mai-hiep-law-doctor-profile__disclaimer { margin: 1rem 0 0; color: #70868d; font-size: .78rem; line-height: 1.5; }
.mai-hiep-law-doctor-profile__details { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr); gap: clamp(2rem, 6vw, 6rem); padding: clamp(2rem, 6vw, 5.5rem); border-top: 1px solid #dbe9e7; }
.mai-hiep-law-doctor-profile__about h2 { max-width: 15ch; margin: 0 0 1rem; color: #063b5c; font-size: clamp(2rem, 3.5vw, 3.35rem); line-height: 1; letter-spacing: -.055em; }
.mai-hiep-law-doctor-profile__about > p:not(.mai-hiep-law-page__eyebrow) { max-width: 39rem; color: #52616b; font-size: 1.06rem; line-height: 1.7; }
.mai-hiep-law-doctor-tags--large { margin-top: 1.5rem; }.mai-hiep-law-doctor-tags--large span { min-height: 2.15rem; padding-inline: .85rem; font-size: .82rem; }
.mai-hiep-law-doctor-profile__sidebar { display: grid; gap: .85rem; align-content: start; }
.mai-hiep-law-doctor-profile__sidebar section { padding: 1.25rem; border: 1px solid #d4e6e4; border-radius: .8rem; background: #f6fbfa; }
.mai-hiep-law-doctor-profile__sidebar p { margin: 0; color: #52616b; line-height: 1.65; }.mai-hiep-law-doctor-profile__sidebar .mai-hiep-law-doctor-profile__label { color: #007a5e; }
.mai-hiep-law-doctor-profile__sidebar ul { display: grid; gap: .45rem; margin: 0; padding: 0; list-style: none; color: #325962; font-weight: 700; }.mai-hiep-law-doctor-profile__sidebar li::before { margin-right: .5rem; content: '•'; color: #007a5e; }
.mai-hiep-law-doctor-profile__booking-note { border-left: 4px solid #e0b570 !important; background: #fffaf0 !important; }

@media (max-width: 700px) {
  .mai-hiep-law-doctor-directory__intro, .mai-hiep-law-doctor-profile__hero, .mai-hiep-law-doctor-profile__details { grid-template-columns: 1fr; }
  .mai-hiep-law-doctor-directory__intro { gap: 1rem; padding: 0 1rem; }.mai-hiep-law-doctor-directory__grid { grid-template-columns: 1fr; grid-auto-rows: auto; padding: 0 1rem; }.mai-hiep-law-doctor-card, .mai-hiep-law-doctor-card--lead { grid-column: auto; grid-row: auto; grid-template-columns: 1fr; }.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) { display: grid; }.mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-card__image { flex: auto; height: auto; }.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image { min-height: 27rem; }.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body { min-height: 19rem; }.mai-hiep-law-doctor-profile { border-radius: 0; }.mai-hiep-law-doctor-profile__hero { min-height: 0; }.mai-hiep-law-doctor-profile__portrait { min-height: 28rem; }.mai-hiep-law-doctor-profile__intro, .mai-hiep-law-doctor-profile__details { padding: 1.5rem; }.mai-hiep-law-doctor-profile__stats { grid-template-columns: 1fr; }.mai-hiep-law-doctor-profile__about h2 { max-width: 18ch; }
}

/* Keep the featured lawyer balanced on compact tablets instead of stacking a tall empty panel. */
@media (min-width: 561px) and (max-width: 700px) {
  .mai-hiep-law-doctor-directory__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); grid-auto-rows: 14rem; }
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead { display: grid; grid-column: span 7; grid-row: span 3; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; grid-template-rows: minmax(0, 1fr); min-height: 0; }
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image { grid-column: 1; grid-row: 1; min-height: 0; height: 100%; }
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body { grid-column: 2; grid-row: 1; min-height: 0; justify-content: center; padding: 1.5rem; }
  .mai-hiep-law-doctor-card--lead h2 { font-size: 2rem; }
  .mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) { display: flex; grid-column: span 5; }
  .mai-hiep-law-doctor-card:not(.mai-hiep-law-doctor-card--lead) .mai-hiep-law-doctor-card__image { flex: 0 0 42%; height: 100%; }
}

@media (max-width: 48rem) {
  .mai-hiep-law-article-single .mai-hiep-law-article-single__date,
  .mai-hiep-law-article-single > .wp-block-post-title,
  .mai-hiep-law-article-single > .wp-block-post-content { width: calc(100% - 2.5rem); margin-right: auto; margin-left: auto; }
  .mai-hiep-law-article-single > .wp-block-post-title { padding-right: 0; padding-left: 0; font-size: clamp(2rem, 10vw, 2.7rem); }
  .mai-hiep-law-article-single > .wp-block-post-content { overflow-wrap: anywhere; }
}

/* Keep the featured lawyer prominent without overpowering the directory. */
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body { padding: 2rem; }
.mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__role { margin-bottom: .4rem; }
.mai-hiep-law-doctor-card--lead h2 {
  font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif;
  font-size: 2.35rem;
  line-height: 1.1;
  letter-spacing: 0;
}

@media (max-width: 700px) {
  .mai-hiep-law-doctor-card--lead h2 { font-size: 1.9rem; }
}

/* A dedicated editorial layout for the law firm's practice-area page. */
.mai-hiep-law-practice { max-width: 76rem; margin: 0 auto; }
.mai-hiep-law-practice__hero { display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(22rem, .96fr); min-height: 35rem; overflow: hidden; border: 1px solid #d9ddd3; border-radius: 1.1rem; background: #f3f2ed; }
.mai-hiep-law-practice__hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(2rem, 5vw, 5.25rem); }
.mai-hiep-law-practice__eyebrow, .mai-hiep-law-practice__section-heading > p, .mai-hiep-law-practice__closing p { margin: 0; color: #a55a28; font-size: .72rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.mai-hiep-law-practice__eyebrow span { margin: 0 .35rem; color: #d2b875; }
.mai-hiep-law-practice__hero h1 { max-width: 10ch; margin: 1.15rem 0 1.35rem; color: #18332e; font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif; font-size: clamp(3rem, 5.2vw, 5rem); font-weight: 700; letter-spacing: -.06em; line-height: .97; }
.mai-hiep-law-practice__hero-copy > p:not(.mai-hiep-law-practice__eyebrow) { max-width: 30rem; margin: 0; color: #59665f; font-size: 1.06rem; line-height: 1.72; }
.mai-hiep-law-practice__action { display: inline-flex; align-items: center; gap: .9rem; min-height: 3.25rem; margin-top: 2rem; padding: .55rem .7rem .55rem 1.2rem; border-radius: .3rem; background: #a55a28; box-shadow: 0 .65rem 1.2rem rgba(126, 70, 30, .18); color: #fff; font-weight: 800; text-decoration: none; }
.mai-hiep-law-practice__action:hover { background: #7d3e1c; color: #fff; }
.mai-hiep-law-practice__action span { display: grid; width: 1.7rem; height: 1.7rem; place-items: center; border-radius: 50%; background: rgba(255, 255, 255, .18); }
.mai-hiep-law-practice__hero-image { position: relative; min-height: 25rem; margin: 0; overflow: hidden; background: #d7d9d0; }
.mai-hiep-law-practice__hero-image::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, rgba(18, 40, 34, .02) 45%, rgba(18, 40, 34, .7) 100%); }
.mai-hiep-law-practice__hero-image img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.75) contrast(.96); }
.mai-hiep-law-practice__hero-image figcaption { position: absolute; z-index: 1; right: 2rem; bottom: 1.8rem; left: 2rem; display: flex; align-items: center; gap: .8rem; color: #fff; font-size: .88rem; font-weight: 700; line-height: 1.45; }
.mai-hiep-law-practice__hero-image figcaption span { display: grid; flex: 0 0 auto; width: 2.3rem; height: 2.3rem; place-items: center; border: 1px solid rgba(255, 255, 255, .5); border-radius: 50%; font-size: .72rem; }
.mai-hiep-law-practice__areas { padding: clamp(4rem, 9vw, 7rem) 0; }
.mai-hiep-law-practice__section-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, .55fr); gap: 1.25rem 3rem; align-items: end; margin-bottom: 2.4rem; }
.mai-hiep-law-practice__section-heading > p { grid-column: 1 / -1; }
.mai-hiep-law-practice__section-heading h2, .mai-hiep-law-practice__method h2, .mai-hiep-law-practice__closing h2 { max-width: 14ch; margin: 0; color: #18332e; font-family: 'Be Vietnam Pro', ui-sans-serif, system-ui, sans-serif; font-size: clamp(2.35rem, 4vw, 4rem); font-weight: 700; letter-spacing: -.055em; line-height: 1; }
.mai-hiep-law-practice__section-heading > span { max-width: 22rem; padding-bottom: .35rem; color: #59665f; line-height: 1.6; }
.mai-hiep-law-practice__grid { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 1rem; }
.mai-hiep-law-practice-card { position: relative; display: flex; min-height: 29rem; overflow: hidden; border-radius: .75rem; isolation: isolate; }
.mai-hiep-law-practice-card img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(.93); }
.mai-hiep-law-practice-card__overlay { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, rgba(20, 42, 36, .06) 24%, rgba(20, 42, 36, .92) 100%); }
.mai-hiep-law-practice-card__content { display: flex; flex: 1; flex-direction: column; justify-content: flex-end; padding: 1.6rem; color: #fff; }
.mai-hiep-law-practice-card__content > p { margin: 0 0 auto; font-size: .69rem; font-weight: 800; letter-spacing: .12em; }
.mai-hiep-law-practice-card__content h3 { margin: 0 0 .8rem; color: inherit; font-size: clamp(1.6rem, 2.4vw, 2.2rem); line-height: 1.02; }
.mai-hiep-law-practice-card__content > span { font-size: .9rem; line-height: 1.6; }
.mai-hiep-law-practice-card__content ul { display: flex; flex-wrap: wrap; gap: .4rem; margin: 1.35rem 0 0; padding: 0; list-style: none; }
.mai-hiep-law-practice-card__content li { padding: .28rem .5rem; border: 1px solid rgba(255, 255, 255, .38); border-radius: .2rem; font-size: .72rem; font-weight: 700; }
.mai-hiep-law-practice-card--light { background: #f3eee3; }.mai-hiep-law-practice-card--light::after { position: absolute; z-index: -1; inset: 0; content: ''; background: linear-gradient(180deg, rgba(245, 238, 224, .05) 28%, rgba(245, 238, 224, .96) 85%); }
.mai-hiep-law-practice-card--light .mai-hiep-law-practice-card__content { color: #18332e; }.mai-hiep-law-practice-card--light .mai-hiep-law-practice-card__content li { border-color: #a9afa4; }
.mai-hiep-law-practice-card--sand { background: #a55a28; }.mai-hiep-law-practice-card--sand::after { position: absolute; z-index: -1; inset: 0; content: ''; background: linear-gradient(180deg, rgba(104, 51, 21, .08) 25%, rgba(104, 51, 21, .88) 100%); }
.mai-hiep-law-practice__method { display: grid; grid-template-columns: minmax(19rem, .82fr) minmax(0, 1.18fr); gap: clamp(2rem, 8vw, 8rem); align-items: center; padding: clamp(3.5rem, 7vw, 6rem); background: #e9ede5; }
.mai-hiep-law-practice__method figure { position: relative; min-height: 29rem; margin: 0; overflow: hidden; border-radius: .55rem; }.mai-hiep-law-practice__method figure::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, transparent 48%, rgba(20, 42, 36, .7) 100%); }.mai-hiep-law-practice__method img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.7); }.mai-hiep-law-practice__method figcaption { position: absolute; z-index: 1; right: 1.4rem; bottom: 1.3rem; left: 1.4rem; color: #fff; font-size: .85rem; font-weight: 700; line-height: 1.5; }
.mai-hiep-law-practice__method h2 { margin-top: .9rem; }.mai-hiep-law-practice__method ol { display: grid; gap: 1.1rem; margin: 2.1rem 0 0; padding: 0; list-style: none; }.mai-hiep-law-practice__method li { display: grid; grid-template-columns: 2.2rem 1fr; gap: .9rem; padding-bottom: 1rem; border-bottom: 1px solid #c9d1c5; }.mai-hiep-law-practice__method li > span { display: grid; width: 2rem; height: 2rem; place-items: center; border: 1px solid #a55a28; border-radius: 50%; color: #8a4d24; font-size: .7rem; font-weight: 800; }.mai-hiep-law-practice__method strong { color: #18332e; font-size: 1.02rem; }.mai-hiep-law-practice__method li p { margin: .25rem 0 0; color: #59665f; font-size: .92rem; line-height: 1.55; }
.mai-hiep-law-practice__closing { display: flex; align-items: center; justify-content: space-between; gap: 2rem; min-height: 18rem; padding: clamp(2rem, 5vw, 4.5rem); background: #18332e; }.mai-hiep-law-practice__closing p { color: #d8b15e; }.mai-hiep-law-practice__closing h2 { margin-top: .85rem; color: #fff; }.mai-hiep-law-practice__action--light { flex: 0 0 auto; margin: 0; background: #f5ead1; color: #18332e; box-shadow: none; }.mai-hiep-law-practice__action--light:hover { background: #fff; color: #18332e; }.mai-hiep-law-practice__action--light span { background: #a55a28; color: #fff; }
@media (max-width: 700px) { .mai-hiep-law-practice-page { padding-right: 0 !important; padding-left: 0 !important; }.mai-hiep-law-practice__hero, .mai-hiep-law-practice__method { grid-template-columns: 1fr; }.mai-hiep-law-practice__hero { border-right: 0; border-left: 0; border-radius: 0; }.mai-hiep-law-practice__hero-copy { padding: 3.25rem 1.3rem; }.mai-hiep-law-practice__hero h1 { font-size: clamp(2.8rem, 13vw, 4rem); }.mai-hiep-law-practice__hero-image { min-height: 25rem; }.mai-hiep-law-practice__areas { padding: 4rem 1.25rem; }.mai-hiep-law-practice__section-heading { grid-template-columns: 1fr; }.mai-hiep-law-practice__grid { grid-template-columns: 1fr; }.mai-hiep-law-practice-card { min-height: 24rem; }.mai-hiep-law-practice__method { gap: 2rem; padding: 1.25rem 1.25rem 3rem; }.mai-hiep-law-practice__method figure { min-height: 22rem; }.mai-hiep-law-practice__closing { align-items: flex-start; flex-direction: column; margin: 0; }.mai-hiep-law-practice__closing h2 { font-size: 2.5rem; } }

/* Featured lawyer: two locked columns keep the portrait and profile summary balanced. */
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead { display: grid; grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr) !important; grid-template-rows: minmax(0, 1fr); }
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image { grid-column: 1; grid-row: 1; align-self: stretch; width: auto; min-height: 0; height: auto; }
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image img { object-position: center 18%; }
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body { grid-column: 2; grid-row: 1; align-self: stretch; flex: 0 1 auto; min-height: 0; height: auto; box-sizing: border-box; justify-content: center; padding: clamp(1.6rem, 3vw, 2.25rem); }
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead h2 { margin-top: .1rem; }
@media (max-width: 560px) {
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead { grid-template-columns: 1fr !important; grid-template-rows: auto auto; }
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image { grid-column: 1; grid-row: 1; width: 100%; height: auto; min-height: 27rem; }
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body { grid-column: 1; grid-row: 2; height: auto; min-height: 19rem; justify-content: flex-start; }
}

/* The lead profile is larger, while sharing the same material and color language as the directory. */
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead {
  background: #fff;
  color: var(--mai-hiep-law-text);
}
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body {
  color: var(--mai-hiep-law-text);
}
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__role {
  color: #a55a28;
}
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead h2 {
  color: #18332e;
  font-size: clamp(1.9rem, 2.7vw, 2.7rem);
}
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__experience {
  color: #5d6863;
}
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-tags span {
  border-color: #dbc9a5;
  background: #faf5e9;
  color: #70411f;
}
.mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__link {
  color: #8a4d24;
}

/* Keep the knowledge hub inside the same readable content frame as the directory. */
.mai-hiep-law-knowledge-page {
  width: min(calc(100% - 2.5rem), 76rem);
  margin-right: auto;
  margin-left: auto;
}
.mai-hiep-law-article-slide {
  grid-template-rows: repeat(2, minmax(0, 1fr));
  min-height: 33rem;
}
.mai-hiep-law-article-slide .mai-hiep-law-article-card--featured .mai-hiep-law-article-card__copy {
  min-height: 0;
  height: 100%;
  box-sizing: border-box;
}
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) {
  min-height: 0;
  grid-template-columns: minmax(10rem, .72fr) minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
}
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__image {
  min-height: 0;
  height: 100%;
  align-self: stretch;
}
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) .mai-hiep-law-article-card__copy {
  min-width: 0;
  min-height: 0;
  align-self: stretch;
  justify-content: center;
  box-sizing: border-box;
}

@media (max-width: 560px) {
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__image {
    min-height: 23rem;
  }
  .mai-hiep-law-doctor-directory__grid .mai-hiep-law-doctor-card--lead .mai-hiep-law-doctor-card__body {
    min-height: 0;
    padding: 1.4rem;
  }
  .mai-hiep-law-knowledge-page {
    width: min(calc(100% - 2rem), 76rem);
  }
  .mai-hiep-law-article-slide > .mai-hiep-law-article-card:not(.mai-hiep-law-article-card--featured) {
    grid-template-columns: minmax(7.5rem, .72fr) minmax(0, 1fr);
    min-height: 10rem;
  }
}
