/* Anton Legal Editorial V2 */
:root {
  --al-v2-bg: #f4f2ed;
  --al-v2-white: #ffffff;
  --al-v2-text: #111111;
  --al-v2-muted: #686a66;
  --al-v2-dark: #171a1c;
  --al-v2-accent: #295c45;
  --al-v2-accent-dark: #1f4735;
  --al-v2-line: rgba(17,17,17,.16);
  --al-v2-max: 1440px;
  --al-v2-pad: clamp(20px, 4.6vw, 72px);
  --al-v2-display: clamp(3.4rem, 8.6vw, 8.8rem);
}

body.al-v2 { background: var(--al-v2-bg); color: var(--al-v2-text); }
.al-v2-site-header { transition: background-color .35s ease, box-shadow .35s ease, transform .35s ease; }
.al-v2-site-header.is-scrolled { background: rgba(244,242,237,.93); box-shadow: 0 1px 0 rgba(17,17,17,.1); backdrop-filter: blur(16px); }

[data-reveal] { opacity: 1; transform: none; }
.al-motion-ready [data-reveal] { opacity: 0; transform: translate3d(0,24px,0); transition: opacity .72s cubic-bezier(.2,.75,.2,1), transform .72s cubic-bezier(.2,.75,.2,1); }
.al-motion-ready [data-reveal].is-visible { opacity: 1; transform: translate3d(0,0,0); }
[data-parallax] { transform: translate3d(0,var(--al-parallax-y,0),0); transition: transform .1s linear; }

.al-v2-kicker { display: flex; align-items: center; gap: 10px; text-transform: uppercase; letter-spacing: .16em; font-size: .7rem; color: var(--al-v2-muted); }
.al-v2-kicker::before { content: ''; width: 22px; height: 1px; background: currentColor; }
.al-v2-chip { display: inline-flex; min-height: 34px; align-items: center; padding: 0 12px; border: 1px solid var(--al-v2-line); border-radius: 999px; font-size: .72rem; letter-spacing: .04em; }
.al-v2-gridline { border-top: 1px solid var(--al-v2-line); }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  [data-reveal], [data-parallax] { opacity: 1 !important; transform: none !important; }
}

/* Home V2 */
.al-v2-home { overflow: clip; }
.al-v2-hero { padding: clamp(36px,5vw,76px) 0 clamp(56px,7vw,110px); }
.al-v2-hero__grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(360px,.72fr); gap:clamp(34px,6vw,96px); align-items:end; }
.al-v2-hero__copy h1 { margin:18px 0 0; max-width:970px; font-size:var(--al-v2-display); line-height:.84; letter-spacing:-.072em; font-weight:560; }
.al-v2-hero__bottom { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:32px; align-items:end; margin-top:clamp(42px,8vw,110px); padding-top:24px; border-top:1px solid var(--al-v2-line); }
.al-v2-hero__bottom>p { max-width:620px; margin:0; color:var(--al-v2-muted); font-size:clamp(1rem,1.4vw,1.18rem); }
.al-v2-hero__actions { display:flex; flex-wrap:wrap; gap:18px; align-items:center; justify-content:flex-end; }
.al-v2-hero__media { position:relative; min-height:680px; border-radius:2px; overflow:hidden; background:var(--al-v2-dark); }
.al-v2-hero__media img { width:100%; height:100%; min-height:680px; object-fit:cover; display:block; }
.al-v2-hero__media-meta { position:absolute; inset:auto 18px 18px 18px; display:flex; justify-content:space-between; gap:8px; }
.al-v2-hero__media .al-v2-chip { color:#fff; border-color:rgba(255,255,255,.35); background:rgba(23,26,28,.32); backdrop-filter:blur(10px); }

.al-v2-marquee { overflow:hidden; border-block:1px solid var(--al-v2-line); background:var(--al-v2-white); }
.al-v2-marquee__track { display:flex; width:max-content; align-items:center; gap:24px; padding:16px 0; font-size:clamp(1rem,1.8vw,1.45rem); letter-spacing:.08em; animation:alV2Marquee 28s linear infinite; }
.al-v2-marquee__track span { white-space:nowrap; font-weight:600; }
.al-v2-marquee__track i { color:var(--al-v2-accent); font-style:normal; }
@keyframes alV2Marquee { to { transform:translateX(-50%); } }

.al-v2-section-head { max-width:1040px; margin-bottom:clamp(40px,7vw,84px); }
.al-v2-section-head h2 { margin:18px 0 0; font-size:clamp(2.7rem,6vw,6.4rem); line-height:.9; letter-spacing:-.06em; font-weight:560; }
.al-v2-section-head--split { max-width:none; display:flex; align-items:end; justify-content:space-between; gap:40px; }
.al-v2-section-head--split>div { max-width:980px; }

.al-v2-problem-list { border-top:1px solid var(--al-v2-line); }
.al-v2-problem-row { display:grid; grid-template-columns:74px minmax(220px,.85fr) minmax(260px,1fr) 42px; gap:28px; align-items:center; min-height:130px; padding:24px 0; border-bottom:1px solid var(--al-v2-line); color:inherit; text-decoration:none; transition:padding .35s ease, color .35s ease, background .35s ease; }
.al-v2-problem-row:hover { padding-inline:22px; background:var(--al-v2-accent); color:#fff; }
.al-v2-problem-row__index { color:var(--al-v2-muted); font-size:.72rem; }
.al-v2-problem-row:hover .al-v2-problem-row__index { color:rgba(255,255,255,.55); }
.al-v2-problem-row h3 { margin:0; font-size:clamp(1.55rem,2.7vw,2.7rem); line-height:1; letter-spacing:-.045em; }
.al-v2-problem-row p { margin:0; color:var(--al-v2-muted); }
.al-v2-problem-row:hover p { color:rgba(255,255,255,.7); }
.al-v2-problem-row__arrow { font-size:1.3rem; transition:transform .25s ease; }
.al-v2-problem-row:hover .al-v2-problem-row__arrow { transform:translate(5px,-5px); }

.al-v2-about__grid { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(0,1fr); gap:clamp(50px,9vw,140px); align-items:stretch; }
.al-v2-about__media { min-height:620px; overflow:hidden; }
.al-v2-about__media img { width:100%; height:100%; object-fit:cover; filter:saturate(.76) contrast(1.03); }
.al-v2-about__copy h2 { margin:18px 0 0; font-size:clamp(3rem,6.3vw,6.7rem); line-height:.9; letter-spacing:-.062em; font-weight:540; }
.al-v2-about__lead { max-width:840px; margin:34px 0 0; color:rgba(255,255,255,.68); font-size:clamp(1.18rem,2vw,1.75rem); line-height:1.38; }
.al-v2-principles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:clamp(52px,7vw,90px) 0 38px; border-top:1px solid rgba(255,255,255,.16); }
.al-v2-principles>div { display:grid; grid-template-columns:42px 1fr; gap:14px; padding:24px 20px 24px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.al-v2-principles>div:nth-child(even) { padding-left:22px; border-left:1px solid rgba(255,255,255,.16); }
.al-v2-principles span { color:rgba(255,255,255,.4); font-size:.7rem; }
.al-v2-principles strong { font-weight:520; }

.al-v2-service-list { border-top:1px solid var(--al-v2-line); }
.al-v2-service-row { min-height:0; transform:none; display:grid; grid-template-columns:74px minmax(0,1fr) minmax(160px,.32fr); gap:30px; align-items:center; padding:28px 0; border-bottom:1px solid var(--al-v2-line); }
.al-v2-service-row__index { color:var(--al-v2-muted); font-size:.72rem; }
.al-v2-service-row__body { display:grid; grid-template-columns:minmax(210px,.8fr) minmax(260px,1fr); gap:36px; align-items:baseline; }
.al-v2-service-row h3 { margin:0; font-size:clamp(1.6rem,3vw,3rem); line-height:1; letter-spacing:-.05em; font-weight:540; }
.al-v2-service-row p { margin:0; max-width:600px; color:var(--al-v2-muted); }
.al-v2-service-row__link { display:flex; justify-content:flex-end; align-items:center; gap:18px; text-decoration:none; font-size:.86rem; font-weight:650; }
.al-v2-service-row__link b { display:grid; place-items:center; width:46px; height:46px; border:1px solid var(--al-v2-line); border-radius:50%; transition:background .25s ease,color .25s ease,transform .25s ease; }
.al-v2-service-row:hover .al-v2-service-row__link b { background:var(--al-v2-accent); color:#fff; transform:translate(3px,-3px); }

.al-v2-timeline { counter-reset:none; }
.al-v2-timeline li { grid-template-columns:90px minmax(0,1fr); padding:34px 0; }
.al-v2-timeline h3 { font-size:clamp(1.7rem,3.2vw,3.2rem); }
.al-v2-process__cta { margin-top:34px; display:flex; justify-content:flex-end; }

.al-v2-court__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.7fr); gap:clamp(44px,8vw,120px); align-items:stretch; }
.al-v2-court__copy { display:flex; flex-direction:column; justify-content:center; }
.al-v2-court__copy h2 { margin:18px 0 0; font-size:clamp(3rem,6.1vw,6.6rem); line-height:.9; letter-spacing:-.06em; font-weight:550; }
.al-v2-court__copy>p { max-width:760px; margin:30px 0 0; color:var(--al-v2-muted); font-size:1.08rem; }
.al-v2-court__form { margin:46px 0 28px; max-width:720px; }
.al-v2-court__form label { display:block; margin-bottom:10px; font-size:.75rem; text-transform:uppercase; letter-spacing:.11em; color:var(--al-v2-muted); }
.al-v2-court__form>div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }
.al-v2-court__form input { min-height:58px; width:100%; border:1px solid var(--al-v2-line); background:transparent; padding:0 18px; font:inherit; }
.al-v2-court__media { min-height:560px; overflow:hidden; }
.al-v2-court__media img { width:100%; height:100%; object-fit:cover; }

.al-v2-proof__grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(50px,10vw,150px); }
.al-v2-proof h2 { margin:18px 0 0; font-size:clamp(2.8rem,5.6vw,5.8rem); line-height:.92; letter-spacing:-.055em; }
.al-v2-proof__grid>div:last-child { display:flex; align-items:flex-end; }
.al-v2-proof__grid>div:last-child p { margin:0; color:rgba(255,255,255,.66); font-size:clamp(1.25rem,2.3vw,2rem); line-height:1.35; }

.al-v2-social__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--al-v2-line); border-left:1px solid var(--al-v2-line); }
.al-v2-social-card { min-height:340px; border-radius:0; padding:28px; border-right:1px solid var(--al-v2-line); border-bottom:1px solid var(--al-v2-line); display:flex; flex-direction:column; }
.al-v2-social-card__label { margin:0; text-transform:uppercase; letter-spacing:.11em; font-size:.7rem; color:var(--al-v2-muted); }
.al-v2-social-card h3 { margin:72px 0 0; font-size:clamp(1.55rem,2.6vw,2.4rem); line-height:1.04; letter-spacing:-.045em; }
.al-v2-social-card>p:not(.al-v2-social-card__label) { color:var(--al-v2-muted); }
.al-v2-social-card>a { margin-top:auto; text-decoration:none; font-weight:650; }

.al-v2-journal__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.al-v2-article-card__media { display:block; aspect-ratio:1.18/1; overflow:hidden; background:#d8d5cd; }
.al-v2-article-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.75,.2,1); }
.al-v2-article-card:hover .al-v2-article-card__media img { transform:scale(1.035); }
.al-v2-article-card__body { padding:22px 0 0; }
.al-v2-article-card__body>p { margin:0; color:var(--al-v2-muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.11em; }
.al-v2-article-card h3 { margin:18px 0 0; font-size:clamp(1.45rem,2.4vw,2.25rem); line-height:1.08; letter-spacing:-.04em; }
.al-v2-article-card h3 a { text-decoration:none; }
.al-v2-article-card__excerpt { margin:14px 0 24px; color:var(--al-v2-muted); }

.al-v2-cta { grid-template-columns:minmax(0,1fr) auto; }
.al-v2-cta h2 { margin:18px 0 0; font-size:clamp(3rem,6.3vw,6.6rem); line-height:.9; letter-spacing:-.06em; }
.al-v2-cta p { max-width:700px; color:rgba(255,255,255,.62); }

@media (max-width:1100px) {
  .al-v2-hero__grid { grid-template-columns:1fr minmax(300px,.65fr); gap:34px; }
  .al-v2-hero__copy h1 { font-size:clamp(3.5rem,8vw,6.5rem); }
  .al-v2-hero__bottom { grid-template-columns:1fr; }
  .al-v2-hero__actions { justify-content:flex-start; }
  .al-v2-about__grid,.al-v2-court__grid { gap:44px; }
  .al-v2-service-row__body { grid-template-columns:1fr; gap:10px; }
}
@media (max-width:820px) {
  .al-v2-hero__grid,.al-v2-about__grid,.al-v2-court__grid,.al-v2-proof__grid { grid-template-columns:1fr; }
  .al-v2-hero__media { min-height:520px; }
  .al-v2-hero__media img { min-height:520px; }
  .al-v2-problem-row { grid-template-columns:48px 1fr 32px; gap:16px; }
  .al-v2-problem-row p { grid-column:2/4; }
  .al-v2-service-row { grid-template-columns:48px 1fr; }
  .al-v2-service-row__link { grid-column:2; justify-content:flex-start; }
  .al-v2-social__grid,.al-v2-journal__grid { grid-template-columns:1fr; }
  .al-v2-section-head--split { align-items:flex-start; flex-direction:column; }
  .al-v2-cta { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .al-v2-hero { padding-top:24px; }
  .al-v2-hero__copy h1 { font-size:clamp(3.15rem,15vw,5.2rem); }
  .al-v2-hero__media { min-height:440px; }
  .al-v2-hero__media img { min-height:440px; }
  .al-v2-hero__media-meta { flex-direction:column; align-items:flex-start; }
  .al-v2-problem-row { min-height:0; padding:24px 0; }
  .al-v2-problem-row h3 { font-size:1.6rem; }
  .al-v2-principles { grid-template-columns:1fr; }
  .al-v2-principles>div:nth-child(even) { padding-left:0; border-left:0; }
  .al-v2-about__media,.al-v2-court__media { min-height:420px; }
  .al-v2-service-row { grid-template-columns:36px 1fr; gap:12px; }
  .al-v2-court__form>div { grid-template-columns:1fr; }
}

/* Shared editorial pages */
.al-v2-page-hero { padding:clamp(54px,7vw,108px) 0 clamp(64px,9vw,126px); }
.al-v2-page-hero__grid { display:grid; grid-template-columns:minmax(0,1.04fr) minmax(320px,.72fr); gap:clamp(44px,8vw,120px); align-items:end; }
.al-v2-page-hero h1 { margin:18px 0 0; font-size:clamp(3.7rem,8.3vw,8rem); line-height:.86; letter-spacing:-.068em; font-weight:550; }
.al-v2-page-hero__lead { max-width:790px; margin:34px 0 0; color:var(--al-v2-muted); font-size:clamp(1.1rem,1.9vw,1.55rem); line-height:1.45; }
.al-v2-page-hero__media { min-height:520px; }
.al-v2-editorial-media { overflow:hidden; background:#d9d5cc; }
.al-v2-editorial-media img { width:100%; height:100%; min-height:inherit; object-fit:cover; display:block; }
.al-v2-editorial-split { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(50px,10vw,150px); }
.al-v2-editorial-split h2 { margin:18px 0 0; font-size:clamp(2.8rem,5.6vw,5.7rem); line-height:.93; letter-spacing:-.055em; }
.al-v2-principle-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid rgba(255,255,255,.16); border-left:1px solid rgba(255,255,255,.16); }
.al-v2-principle-grid article { min-height:300px; padding:28px; border-right:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); }
.al-v2-principle-grid article span { color:rgba(255,255,255,.4); font-size:.7rem; }
.al-v2-principle-grid article h3 { margin:82px 0 0; font-size:clamp(1.4rem,2vw,2rem); }
.al-v2-principle-grid article p { color:rgba(255,255,255,.6); }
.al-v2-contact-list { border-top:1px solid var(--al-v2-line); }
.al-v2-contact-list article { display:grid; grid-template-columns:70px 140px minmax(0,1fr) auto; align-items:center; gap:24px; padding:30px 0; border-bottom:1px solid var(--al-v2-line); }
.al-v2-contact-list article>span { color:var(--al-v2-muted); font-size:.72rem; }
.al-v2-contact-list article>p { margin:0; color:var(--al-v2-muted); text-transform:uppercase; letter-spacing:.08em; font-size:.74rem; }
.al-v2-contact-list h2 { margin:0; font-size:clamp(1.5rem,3.4vw,3.5rem); line-height:1; letter-spacing:-.05em; }
.al-v2-prose { max-width:900px; font-size:1.05rem; }
.al-v2-page .al-service-hero,.al-v2-page .al-article-hero,.al-v2-page .al-court-hero { padding-top:clamp(60px,8vw,112px); }
.al-v2-page .al-service-hero h1,.al-v2-page .al-article-hero h1,.al-v2-page .al-court-hero h1 { font-size:clamp(3.4rem,7.8vw,7.6rem); line-height:.88; letter-spacing:-.064em; }
.al-v2-page .al-service-sections>section { padding-block:clamp(48px,7vw,86px); border-bottom:1px solid var(--al-v2-line); }
.al-v2-page .al-service-sections h2 { font-size:clamp(2.4rem,4.8vw,4.8rem); line-height:.94; letter-spacing:-.05em; }
.al-v2-page .al-court-panel,.al-v2-page .al-official-card { border-radius:0; }
.al-v2-page .al-official-card { min-height:340px; }
.al-v2-page .al-article-content { font-size:clamp(1.05rem,1.4vw,1.18rem); line-height:1.75; }
@media (max-width:900px) {
  .al-v2-page-hero__grid,.al-v2-editorial-split { grid-template-columns:1fr; }
  .al-v2-page-hero__media { min-height:460px; }
  .al-v2-principle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .al-v2-contact-list article { grid-template-columns:48px 1fr; }
  .al-v2-contact-list article>p,.al-v2-contact-list article>h2,.al-v2-contact-list article>a { grid-column:2; }
}
@media (max-width:520px) {
  .al-v2-page-hero { padding-top:34px; }
  .al-v2-page-hero h1 { font-size:clamp(3.2rem,15vw,5.4rem); }
  .al-v2-page-hero__media { min-height:380px; }
  .al-v2-principle-grid { grid-template-columns:1fr; }
}

/* V2 accessibility and responsive hardening */
.al-v2 a:focus-visible,.al-v2 button:focus-visible,.al-v2 input:focus-visible,.al-v2 select:focus-visible,.al-v2 textarea:focus-visible {
  outline:3px solid color-mix(in srgb,var(--al-v2-accent) 72%,white);
  outline-offset:3px;
}
.al-v2 .al-button,.al-v2 button,.al-v2 input,.al-v2 select { min-height:44px; }
.al-v2 img { max-width:100%; }
.al-v2-page,.al-v2-home { max-width:100%; }

@media (max-width:1024px) {
  .al-v2-hero__grid,.al-v2-page-hero__grid { gap:32px; }
  .al-v2-site-header .al-container { padding-inline:24px; }
  .al-v2-page-hero h1 { font-size:clamp(3.4rem,8vw,6.4rem); }
}
@media (max-width:768px) {
  .al-v2-hero__grid,.al-v2-page-hero__grid,.al-v2-editorial-split,.al-v2-about__grid,.al-v2-court__grid,.al-v2-proof__grid { grid-template-columns:minmax(0,1fr); }
  .al-v2-hero__media,.al-v2-page-hero__media { width:100%; min-width:0; }
  .al-v2-section-head--split { flex-direction:column; align-items:flex-start; }
  .al-v2-service-row__body { min-width:0; }
}
@media (max-width:420px) {
  .al-v2-site-header .al-container,.al-v2 .al-container { padding-inline:18px; }
  .al-v2-hero__copy h1,.al-v2-page-hero h1 { font-size:clamp(3rem,14vw,4.6rem); overflow-wrap:anywhere; }
  .al-v2-hero__bottom { margin-top:34px; }
  .al-v2-marquee__track { gap:16px; }
  .al-v2-problem-row { grid-template-columns:34px minmax(0,1fr) 26px; }
  .al-v2-problem-row p { grid-column:2/4; }
  .al-v2-service-row { grid-template-columns:32px minmax(0,1fr); }
  .al-v2-service-row__link span { display:none; }
  .al-v2-court__form>div { grid-template-columns:minmax(0,1fr); }
  .al-v2-contact-list article { grid-template-columns:34px minmax(0,1fr); }
}
@media (max-width:360px) {
  .al-v2-site-header .al-container,.al-v2 .al-container { padding-inline:14px; }
  .al-brand__name { font-size:.84rem; }
  .al-v2-hero__copy h1,.al-v2-page-hero h1 { font-size:clamp(2.8rem,15vw,4rem); }
  .al-v2-hero__media { min-height:390px; }
  .al-v2-hero__media img { min-height:390px; }
  .al-v2-chip { font-size:.64rem; padding-inline:9px; }
  .al-v2-service-row__index,.al-v2-problem-row__index { font-size:.64rem; }
}
