/* Berke's visual system. Content and component ownership remain in Gutenberg. */
:root {

  --berke-section-space: clamp(3rem, 5.5vw, 5rem);
}

/* One heading policy, including the higher-specificity inherited article rules. */
body .berke-practice-template.berke-article-template .berke-practice-template__article h2,
body .berke-post-template__article .entry-content h2 {

  border: 0;
  padding-bottom: 0;
  margin-bottom: 1.25rem;
}
main p { text-wrap: pretty; }
.container { padding-block: var(--berke-section-space); }

/* Keep the approved header appearance; smoothly fit links above mobile width. */
@media (min-width: 64.001rem) {
  .header-menu > li {
    min-height: 3rem;
    padding-block: .75rem;
    padding-inline: clamp(.5rem, calc(.5rem + (100vw - 64rem) / 16), 1.625rem);
  }
}

/* Real Florida imagery and Bill's portrait remain the opening composition. */
.home-hero { background: var(--secondary); color: var(--white); }
.home-hero__inner { min-height: 34rem; padding-block: 4rem; }
.home-hero__content { max-width: 47rem; width: 60%; }
.home-hero__visual::after {
  background: linear-gradient(90deg, #0b2d47 0%, rgb(11 45 71 / 94%) 30%, rgb(11 45 71 / 76%) 54%, rgb(11 45 71 / 22%) 100%);
}
.home-hero__content h1 { color: var(--white); margin-bottom: 1.5rem; }
.home-hero__content > p:first-child { color: var(--accent); margin-bottom: 1.25rem; }
.home-hero__content > p:not(:first-child) { max-width: 54ch;  margin-bottom: 2rem; }
.home-hero__attorney { height: 94%; max-width: 42%; right: max(2rem, calc((100vw - var(--container-width)) / 2 + 4rem)); }
.berke-practice-banner__background img { filter: none; }
.berke-practice-banner__background::after { background: rgb(11 45 71 / 48%); }
.berke-practice-banner__inner { min-height: 34rem; padding-block: 4rem 2rem; }
.berke-practice-banner { min-height: 34rem; }
.berke-practice-banner__description {  max-width: 55ch; }

/* Shared CTA treatment, with visible hover and keyboard feedback. */
:is(a.btn, .case-review :is(#gform_wrapper_1, #gform_wrapper_2) button.btn) {
  border-radius: .1875rem;
  box-shadow: none;
  min-height: 3.375rem;
  padding: 1rem 1.75rem;
}
:is(a.btn, .case-review :is(#gform_wrapper_1, #gform_wrapper_2) button.btn)::before { content: none; }
.practice-slider .slider-arrow:hover { color: var(--secondary); }
.berke-post-summary h2 a:hover { text-decoration: underline; text-underline-offset: .15em; }

/* Specific reasons, open spacing, and a separate neutral badge panel. */
.why-us__layout { grid-template-columns: minmax(0, 1.75fr) minmax(20rem, 1fr); gap: clamp(2rem, 4vw, 4rem); }
.why-us h2 { text-align: left; margin-bottom: 2.25rem; }
.why-us__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 2.5rem; }
.why-us__item { text-align: left; border-top: 1px solid var(--line); padding-top: 1.5rem; }
.why-us__item h3 {  min-height: 0;  margin: 1rem 0 .75rem; }
.why-us__item > img, .why-us__item .berke-why-icon { margin-inline: 0; }
.recognition { margin-top: 2.5rem; padding: 1.75rem; background: var(--gray); }
.recognition h2 {  margin: 0 0 1.5rem; }
.recognition__badges { gap: 1rem; }
.case-review { padding: 2rem; border-top: 4px solid var(--primary); }
.why-us .case-review h2 {  text-align: left; border: 0; padding-bottom: 0; margin-bottom: 1rem; }
.case-review > p { text-align: left; }
.case-review .gform_wrapper :is(input[type="text"], input[type="email"], input[type="tel"], textarea) { border-radius: 2px; }
.case-review .gform_wrapper .gform_fields { row-gap: 1rem; }

/* Reviews keep the approved live widget; grid layouts can wrap during resize. */
.testimonials .trustindex-reviews .ti-widget[data-layout-category="grid"] .ti-reviews-container-wrapper { min-width: 0; flex-wrap: wrap; }
.testimonials .trustindex-reviews .ti-widget[data-layout-category="grid"] .ti-reviews-container-wrapper > :is(.ti-column, .ti-review-item) { min-width: 0; max-width: 100%; }
.testimonials .container { padding-block: 3.5rem; }

/* Proof stays factual and readable. Practice results retain their two lines. */
section.settlements > .container { padding-block: 3.5rem; }
.settlements__type {  color: var(--white); }
.settlements__item { padding-inline: 1.25rem; }
.case-results-disclaimer {  opacity: .85; }
.berke-practice-results .container { padding-block: 1rem; }

/* A neutral editorial introduction, followed by an unornamented biography. */
.attorney-profile--color { background: var(--gray); }
.attorney-profile--color .attorney-profile__layout { max-width: var(--container-width); }
.attorney-profile--color .attorney-profile__copy { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr); column-gap: 4rem; max-width: none; }
.attorney-profile--color .attorney-profile__copy > h2 { grid-column: 1; grid-row: 1 / span 8; }
.attorney-profile--color .attorney-profile__copy > :not(h2) { grid-column: 2; }
.attorney-profile--color .attorney-profile__copy > p { max-width: 75ch;  }
.attorney-profile--color .attorney-profile__copy h2 { max-width: 30ch; text-align: left; }
.berke-credentials { background: var(--white); color: var(--text); }
.berke-credentials__backdrop, .berke-credentials::before, .berke-credentials__portrait::before, .berke-credentials__portrait::after { display: none; }
.berke-credentials__heading { text-align: left; margin-bottom: 3rem; }
.berke-credentials__title { color: var(--secondary); }
.berke-credentials__layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1fr); gap: 3rem; align-items: start; }
.berke-credentials__portrait { grid-column: 1; grid-row: 1; align-self: start; background: var(--gray); border-bottom: 4px solid var(--primary); }
.berke-credentials__column { gap: 2rem; }
.berke-credentials__column--right { text-align: left; }
.berke-credentials__fact,
.berke-credentials__column--right .berke-credentials__fact { border: 0; border-top: 1px solid var(--line); padding: 1.25rem 0 0; }
.berke-credentials__label { color: var(--secondary); }
.berke-credentials__detail { color: var(--text);  }
.berke-credentials__portrait img { mask-image: none; }
.berke-credentials__portrait figcaption { position: static; margin: 0; padding: 1.25rem; background: var(--secondary); text-align: left; }
.berke-credentials__name {   color: white; }
.berke-credentials__promise {   color: white; }
.berke-credentials__footer { align-items: flex-start; padding-top: 2.5rem; }

/* Portrait practice photography, with a quiet frame and an aligned caption. */
.practice-card { border: 0; border-image: none; min-height: 0; height: auto; aspect-ratio: 4 / 5; }
.practice-card__content { padding: 1.5rem; border-bottom: 4px solid var(--primary); }
.pas .container { align-items: flex-start; }
.pas .container > :is(h2,p) { text-align: left; max-width: 65ch; width: auto; }
.practice-slider .slider-arrows { justify-content: flex-start; }

/* Long educational content shares a readable measure and calmer section rhythm. */
.case-worth { background: var(--white); }
.case-worth__background, .case-worth::before { display: none; }
.case-worth__content { max-width: 64rem; }
.case-process { background: var(--gray); }
.case-process__layout { grid-template-columns: minmax(0, .85fr) minmax(0, 1.65fr); gap: 4rem; }
.case-process__intro { position: static; }
.case-process__stages { gap: 2.5rem; }
.case-process__stage { padding-top: 1.5rem; border-top: 1px solid #cbd4da; }
.protect-claim { background: var(--gray); color: var(--text); }
.protect-claim__art, .protect-claim__vertical { display: none; }
.protect-claim__intro { text-align: left; max-width: 60rem; margin-inline: 0; }
.protect-claim__intro h2, .protect-claim__step h3 { color: var(--secondary); }
.protect-claim__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 3rem; }
.protect-claim__step, .protect-claim__step:nth-child(4), .protect-claim__step:last-child { grid-column: auto; padding: 1.5rem 0 0; border: 0; border-top: 1px solid #cbd4da; background: transparent; color: var(--text); text-align: left; }
.protect-claim__step { min-height: 0; }
.protect-claim__step::before, .protect-claim__step::after { display: none; }
.protect-claim__number { position: static; color: var(--secondary); opacity: 1; margin-bottom: .75rem; }
.protect-claim__guide { text-align: left; }
.office-location__heading::before, .office-location__heading::after, .home-faq__heading::before, .home-faq__heading::after { display: none; }
.office-location__heading, .home-faq__heading { display: block; }
.office-location__heading h2, .home-faq__heading h2 { text-align: left; }
.office-location__intro { max-width: 65ch; margin-inline: 0; text-align: left; }
.home-faq__list { max-width: none; }
.home-faq__item, .home-faq__question { border-radius: 0; }
.home-faq__item { border-top: 1px solid var(--line); }
.home-faq__item[open] { box-shadow: none; }
.home-faq__item + .home-faq__item { margin-top: 0; }
.home-faq__question { background: var(--white); color: var(--secondary); min-height: 4.5rem; padding: 1.25rem 0; }
.home-faq__question h3 { color: var(--secondary);  }
.home-faq__icon { color: var(--secondary); }
.home-faq__question:focus-visible { outline-color: var(--secondary); }
.home-faq__answer { padding: .25rem 0 1.5rem; max-width: 80ch; }

/* Retain the practice template, with a consistent article and sidebar grid. */
.berke-practice-template .berke-practice-template__toc ul { background: var(--secondary); }
.berke-practice-template__sidebar-form .case-review h2 {  text-align: left; }
.berke-practice-template__sidebar-form .case-review > p { text-align: left; }
body .berke-practice-template.berke-article-template .berke-practice-template__article .entry-content > h2:not(:first-child),
body .berke-post-template .berke-practice-template__article .entry-content > h2:not(:first-child) { margin-top: 3rem; }

/* Native archives use compact editorial cards, with readable linked titles. */
.berke-news__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 2rem; }
/* The blog archive displays one post per row at every viewport size. */
body.blog .berke-news__grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
body.blog .berke-news-card {
  width: 100%; max-width: none; min-width: 0; box-sizing: border-box;
  border: 1px solid var(--line); border-inline-start: 4px solid var(--primary);
  border-radius: .5rem; padding: 2rem; background: var(--white);
}
body.blog .berke-news .berke-news-card__title {
  width: 100%; max-width: none; text-wrap: wrap;
}
body.blog .berke-news-card__excerpt { max-width: none; }
@media (max-width: 47.99rem) {
  body.blog .berke-news-card { padding: 1.25rem; }
}
.berke-news-card { display: flex; flex-direction: column; border: 0; border-top: 1px solid var(--line); padding: 1.25rem 0 0; }
.berke-news-card__date { min-width: 0; border: 0; padding: 0; margin-bottom: .75rem; }
body .berke-news .berke-news-card__title { margin-bottom: 1.25rem; }
.berke-news .berke-news-card__title a:is(:hover, :focus-visible) { text-decoration: underline; text-underline-offset: .15em; }
.berke-news-card__image { height: auto; aspect-ratio: 5 / 3; margin-top: auto; }

@media (max-width: 64rem) {
  .attorney-profile--color .attorney-profile__copy { display: block; }
  .why-us__layout { grid-template-columns: minmax(0, 1fr); }
  .why-us .case-review { max-width: 42rem; width: 100%; }
  .berke-credentials__layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
  .berke-credentials__portrait { grid-column: 1 / -1; grid-row: 1; width: min(22rem, 100%); justify-self: start; }
  .case-process__layout { grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
}
@media (max-width: 47.99rem) {
  .home-hero { padding-top: 20rem; }
  .home-hero__visual, .home-hero__background, .home-hero__background img { height: 22rem; }
  .home-hero__visual { mask-image: linear-gradient(#000 65%, transparent); -webkit-mask-image: linear-gradient(#000 65%, transparent); }
  .home-hero__visual::after { display: block; background: rgb(11 45 71 / 25%); }
  .home-hero__attorney { height: 21rem; width: auto; max-width: 80%; top: 0; right: auto; left: 50%; }
  .home-hero__inner { min-height: 0; padding-block: 1.5rem 3rem; }
  .home-hero__content { width: 100%; max-width: none; text-align: left; }
  .home-hero__content .btn { margin-inline: 0; }
  .berke-practice-banner, .berke-practice-banner__inner { min-height: 0; }
  .berke-practice-banner__inner { padding-top: 0; }
  .why-us h2 { margin-bottom: 1.75rem; }
  .why-us__grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .why-us__item { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: .5rem 1rem; }
  .why-us__item .berke-why-icon { grid-row: 1 / 3; }
  .why-us__item h3 { margin: 0; align-self: end; }
  .why-us__item p { grid-column: 2;  }
  .recognition { padding: 1.5rem; }
  .recognition__badges:has(> li:nth-child(3):last-child) { grid-template-columns: minmax(0, 1fr); }
  .case-review { padding: 1.5rem; }
  .berke-credentials__layout, .protect-claim__steps { grid-template-columns: minmax(0, 1fr); }
  .berke-credentials__portrait { width: min(20rem, 100%); }
  .berke-credentials__heading { margin-bottom: 2rem; }
  .case-process__stages { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 39.99rem) { .berke-news__grid { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) {
  .practice-card::before, .practice-card__image, .practice-card__reveal { transition: none; }
}

/* Non-practice pages: one contained grid, with Baggett's proof / service /
   attorney / consultation hierarchy adapted to Berke's authored content.
   The approved practice template and header retain their existing geometry. */
main:not(.berke-practice-template) .grid-container {
  width: 100%; min-width: 0; max-width: var(--container-width);
  padding-inline: 2rem;
  margin-inline: auto;
}
main:not(.berke-practice-template) .container { padding-block: 4rem; }
main:not(.berke-practice-template) h2 { text-align: left; }

/* The city and attorney remain visible together, with a concise opening. */
.home .home-hero__inner { min-height: 32rem; padding-block: 3.5rem; }
.home .home-hero__content { width: 61%; max-width: 44rem; }
.home .home-hero__content > p:not(:first-child) {  max-width: 52ch; }
.home .home-hero__attorney { right: max(1.5rem, calc((100vw - 77.5rem) / 2)); height: 95%; }
.home section.settlements > .container { padding-block: 2.5rem; align-items: flex-start; }
.home .settlements h2 { margin-bottom: .75rem; }
.home .settlements > .container > p { margin-bottom: 1.25rem; text-align: left; }
.home .settlements-row { margin-block: .5rem 1.25rem; }
.home .settlements-row .slider-arrows { margin-top: 1.25rem; }
.home section.settlements > .container > .case-results-disclaimer { margin: .875rem 0 0; }
.home .settlements__type {  text-align: center; }
.home .settlements__item { min-height: 0; padding-block: .5rem; }
.home .case-results-disclaimer {  margin-bottom: 0; }

/* A compact reasons-and-consultation grid with a real badge row. */
.home .why-us__layout { grid-template-columns: minmax(0, 1fr) 25rem; gap: 3rem; align-items: start; }
.home .why-us__grid { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
.home .why-us__item { display: grid; grid-template-columns: 6rem minmax(0, 1fr); column-gap: 1.25rem; padding-top: 1.25rem; text-align: left; }
.home .why-us__item .berke-why-icon { grid-column: 1; grid-row: 1 / 3; }
.home .why-us__item h3 { grid-column: 2; margin: 0 0 .5rem; align-self: end;  }
.home .why-us__item p { grid-column: 2; margin: 0;  }
.home .recognition { margin-top: 2rem; padding: 1.5rem; }
.home .recognition h2 {  margin-bottom: 1.25rem; }
.home .why-us .case-review { padding: 2rem 1.75rem; }

/* The introduction uses complete text columns, without an empty title column. */
.home .attorney-profile--color .attorney-profile__copy { display: block; columns: 2; column-gap: 3rem; }
.home .attorney-profile--color .attorney-profile__copy > h2 { column-span: all; max-width: 25ch; margin-bottom: 1.5rem; }
.home .attorney-profile--color .attorney-profile__copy > p { break-inside: avoid;  margin-bottom: 1.25rem; }
.home .attorney-profile--color .attorney-profile__copy > .btn { margin-top: .5rem; }
.home .pas { background: white; }
.home .pas .container > h2 { margin-bottom: 1rem; }
.home .pas .container > p { margin-bottom: 1.5rem; }
.home .pas .container > .btn { margin-top: .5rem; }
.practice-card__content { padding: 1.25rem; }

/* Attorney credentials read as one portrait and a structured fact list. */
.home .berke-credentials { background: var(--gray); }
.home .berke-credentials__heading { margin-bottom: 2rem; }
.home .berke-credentials__layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; }
.home .berke-credentials__portrait { margin: 0; max-width: 21rem; }
.home .berke-credentials__portrait img { max-height: 25rem; width: 100%; object-fit: contain; object-position: bottom; }
.home .berke-credentials__column { gap: 1.5rem; }
.home .berke-credentials__footer { padding-top: 1.75rem; }
.home .testimonials { background: white; }
.home .testimonials h2 { margin-bottom: 1.75rem; }

/* Supporting guidance: real content determines height. */
.home .case-worth { background: var(--gray); }
.home .case-worth__content { max-width: none; }
.home .case-worth__content h2 { max-width: 28ch; }
.home .case-worth__content > p { max-width: 80ch; }
.home .case-worth__content ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem 3rem; max-width: 65rem; padding-left: 1.25rem; }
.home .case-worth__content li { margin: 0; }
.home .case-process { background: white; }
.home .case-process__layout { grid-template-columns: minmax(0, .8fr) minmax(0, 1.65fr); gap: 3rem; }
.home .case-process__stages { gap: 2rem; }
.home .case-process__stage { padding-top: 1.25rem; }
.home .case-process__icon { margin-bottom: 1rem; }
.home .california-laws__layout { grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); gap: 3rem; align-items: end; }
.home .california-laws__portrait { position: static; width: 100%; max-width: 23rem; height: auto; max-height: 35rem; margin: 0; object-fit: contain; object-position: bottom; justify-self: end; }
.home .california-laws__layout > picture { align-self: end; }
.home .california-laws__content h2 { max-width: 26ch; }
.home .california-laws__content .btn { margin-top: .25rem; }
.home .protect-claim { background: var(--gray); }
.home .protect-claim__intro { margin-bottom: 2rem; max-width: 52rem; }
.home .protect-claim__steps { display: block; }
.home .protect-claim__step { display: grid; grid-template-columns: 3rem 16rem minmax(0,1fr); gap: 1.5rem; min-height: 0; padding: 1.5rem 0; align-items: start; }
.home .protect-claim__step h3 { margin: 0; text-wrap: initial;  }
.home .protect-claim__number { margin: 0; text-align: left; }
.home .protect-claim__step p { margin: 0;  }
.home .protect-claim__guide { margin: 0; border-top: 1px solid #cbd4da; padding-top: 1.5rem; max-width: none;  }
.home .office-location__heading { margin-bottom: 1rem; }
.home .office-location__intro { max-width: 60rem; }
.home .office-location__layout { gap: 3rem; grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); }
.home .office-location__map iframe { height: 20rem; }
.home .home-faq { background: var(--gray); }
.home .home-faq .container { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.65fr); gap: 3rem; align-items: start; }
.home .home-faq__heading { margin: 0; }
.home .home-faq__question { background: transparent; padding-block: 1.125rem; }

/* Internal pages share a compact, left-aligned masthead and content grid. */
.internal-banner .about-banner__content.container { min-height: 17rem; align-items: flex-start; gap: 1.25rem; padding-block: 3rem; }
.internal-banner .about-banner__title { text-align: left;  max-width: 26ch; text-wrap: initial; }
.internal-banner .about-banner__description { text-align: left; max-width: 65ch;  }
.berke-content-page { padding-block: 3rem; }
.berke-content-page > .wp-block-group__inner-container { max-width: 54rem; }
/* Legal pages use the complete standard content container. */
:is(.page-id-1136, .page-id-1135, .page-id-1103) .berke-content-page > .wp-block-group__inner-container { width: 100%; max-width: none; }
.berke-content-page h2 {  margin: 2.5rem 0 1rem; }
.berke-content-page :is(h3,h4) { margin: 2rem 0 1rem; }
.berke-content-page .wp-block-image { margin-block: 2rem; }
.berke-content-page .wp-block-image img { display: block; height: auto; max-width: 100%; }
.page-id-1081 .berke-content-page > .wp-block-group__inner-container { max-width: none; }
.page-id-1081 .berke-content-page ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 3rem; list-style: none; padding: 0; }
.page-id-1081 .berke-content-page li { padding: 1.75rem 0; border-top: 1px solid var(--line); margin: 0;  }
.page-id-1081 .berke-content-page li > strong:first-child { display: block; margin-bottom: .75rem; color: var(--secondary);  }
.page-id-1081 .berke-content-page .wp-block-image { max-width: 40rem; }

/* Biography: photograph sits beside the opening copy, never below a tall void. */
.about-story { background: white; color: var(--text); }
.about-story__layout { grid-template-columns: minmax(0, .8fr) minmax(0, 1.7fr); gap: 3rem; align-items: start; }
.about-story__copy { padding-block: 0; max-width: none; }
.about-story__copy h2 { color: var(--secondary);  margin-bottom: 1.5rem; text-wrap: initial; }
.about-story__copy .about-story__label { color: var(--muted);  }
.about-story__copy p a:not(.btn) { color: var(--secondary); }
.about-story__portrait { align-self: start; background: var(--gray); border-bottom: 4px solid var(--primary); max-width: 23rem; }
.about-story__portrait::before { display: none; }
.about-story__portrait img { position: static; transform: none; max-width: 100%; width: 100%; }

/* Editorial listings: image, date, title and source excerpt in a consistent card. */
.berke-news { grid-template-columns: minmax(0,1fr) 22.5rem; gap: 3rem; padding-block: 3rem; }
.berke-news__grid { gap: 2.5rem 1.5rem; }
.berke-news-card { border: 0; padding: 0; }
.berke-news-card__image { order: -1; margin: 0 0 1.25rem; aspect-ratio: 5 / 3; height: auto; }
.berke-news-card__date {  margin-bottom: .5rem; }
body .berke-news .berke-news-card__title {  margin-bottom: .75rem; }
.berke-news-card__excerpt {  margin: 0 0 1rem; }
.berke-news-card__read {   color: var(--secondary); text-underline-offset: .2em; }
.berke-news__categories { padding: 1.5rem; }

/* Consultation pages use the same column widths and field rhythm. */
.contact-page { background: white; padding-block: 3.5rem; }
main .contact-page__layout.container { padding-block: 0; grid-template-columns: minmax(0,1fr) 25rem; gap: 3rem; }
.contact-page__copy > p { margin-bottom: 1.25rem; }
.contact-page__details { margin-block: 2rem; gap: 1.5rem; }
.contact-page__form { padding: 2rem 1.75rem; }
.contact-page__form > h2 {  text-align: left; }
.contact-page__map iframe { height: 20rem; }

@media (min-width: 48rem) {
  .contact-page__copy { grid-column: 1; grid-row: 1; }
  .contact-page__form { grid-column: 2; grid-row: 1; }
}

@media (max-width: 64rem) {
  .home .why-us__layout, main .contact-page__layout.container { grid-template-columns: minmax(0,1fr) 22rem; gap: 2rem; }
  .home .why-us__item { grid-template-columns: 5rem minmax(0,1fr); gap: 1rem; }
  .home .why-us__item .berke-why-icon { transform: scale(.8); transform-origin: left top; }
  .home .berke-credentials__layout { grid-template-columns: minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr); gap: 1.5rem; }
  .home .berke-credentials__portrait { grid-column: 1; width: 100%; }
  .home .case-process__layout, .home .home-faq .container { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .home .california-laws__layout { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); gap: 2rem; }
  .home .protect-claim__step { grid-template-columns: 2.5rem 12rem minmax(0,1fr); gap: 1rem; }
  .berke-news { grid-template-columns: minmax(0,1fr); gap: 3rem; }
  .berke-news__sidebar { display: grid; grid-template-columns: minmax(0,1fr); gap: 2rem; align-items: start; }
  .about-story__layout { grid-template-columns: minmax(0,.8fr) minmax(0,1.7fr); gap: 2rem; }
  .about-story__portrait { grid-row: 1; }
  .about-story__copy { grid-column: 2; grid-row: 1; }
}
@media (max-width: 47.99rem) {
  main:not(.berke-practice-template) .grid-container { padding-inline: 1rem; }
  main:not(.berke-practice-template) .container { padding-block: 2.75rem; }
  .home .home-hero__inner { min-height: 0; padding-block: 1rem 2.5rem; }
  .home .home-hero__content { width: 100%; max-width: none; }
  .home .home-hero__attorney { height: 21rem; right: auto; }
  .home .why-us__layout, .home .berke-credentials__layout, .home .california-laws__layout, .home .office-location__layout, .about-story__layout, main .contact-page__layout.container { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .home .why-us .case-review { max-width: none; }
  .home .recognition__badges:has(> li:nth-child(3):last-child) { grid-template-columns: repeat(3,minmax(0,1fr)); gap: .5rem; }
  .home .recognition__badges img { max-width: 100%; height: auto; }
  .home .attorney-profile--color .attorney-profile__copy { columns: auto; }
  .home .attorney-profile--color .attorney-profile__copy > h2 { max-width: none; }
  .home .berke-credentials__portrait { max-width: 20rem; }
  .home .case-worth__content ul { grid-template-columns: minmax(0,1fr); }
  .home .california-laws__portrait { max-height: 22rem; max-width: 18rem; justify-self: center; }
  .home .protect-claim__step { grid-template-columns: 2rem minmax(0,1fr); gap: .5rem 1rem; padding-block: 1.25rem; }
  .home .protect-claim__step p { grid-column: 2; }
  .home .protect-claim__guide { padding-top: 1.25rem; }
  .internal-banner .about-banner__content.container { min-height: 0; padding-block: 2.5rem; }
  .about-story__portrait { grid-column: 1; grid-row: 1; max-width: 18rem; justify-self: start; }
  .about-story__copy { grid-column: 1; grid-row: 2; padding: 0; }
  .berke-news__sidebar { grid-template-columns: minmax(0,1fr); }
  .page-id-1081 .berke-content-page ul { grid-template-columns: minmax(0,1fr); }
  .contact-page__copy { grid-column: 1; grid-row: 1; }
  .contact-page__form { grid-column: 1; grid-row: 2; }
}

/* Restore local Berke's contact-page dimensions without narrowing its grid. */
body main#main .contact-page { background: var(--gray); padding-block: 64px; }
body main#main .contact-page > .contact-page__layout.container {
  width: 100%; max-width: 1440px; margin-inline: auto; padding: 0 32px;
  display: grid; grid-template-columns: minmax(0,3fr) minmax(0,2fr);
  align-items: start; gap: 50px;
}
body main#main .contact-page__copy { grid-column: 1; grid-row: 1; }
body main#main .contact-page__copy > h1 { margin: 0 0 30px;
}
body main#main .contact-page__copy p { color: #000; }
body main#main .contact-page__copy > p { margin: 0 0 28px; }
body main#main .contact-page__details {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px 24px; margin-block: 32px;
}
body main#main .contact-page__details p { margin: 0; }
body main#main .contact-page__details > :last-child { grid-column: 1 / -1; }
body main#main .contact-page__details strong {
  display: block;   margin-bottom: 8px;
}
body main#main .contact-page__map iframe { display: block; width: 100%; height: 400px; border: 0; }
body main#main .contact-page__form {
  grid-column: 2; grid-row: 1; min-width: 0; padding: 50px 30px; border: 0;
}
body main#main .contact-page__form > h2 { text-align: center;
  border: 0; padding-bottom: 0; margin: 0 0 20px;
}
body main#main .contact-page__form > p { text-align: center; margin: 0 0 30px; color: #fff;
}
body main#main .contact-page__form .gform_wrapper .gform_fields { row-gap: 20px; }
body main#main .contact-page__form .gform_wrapper :is(input[type="text"],input[type="email"],input[type="tel"],textarea) {
  border-radius: 0; padding: 22px 12px;
}
body main#main .contact-page__form .gform_wrapper .gform_footer { margin: 20px 0 0; padding: 0; }
body main#main .contact-page__form #gform_wrapper_1 button.btn {
  width: 100%; padding: 15px 30px; border-radius: 5px;
}
@media(max-width:1000px) {
  body main#main .contact-page > .contact-page__layout.container { gap: 32px; }
  body main#main .contact-page__form { padding: 40px 24px; }
  body main#main .contact-page__details { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:768px) {
  body main#main .contact-page > .contact-page__layout.container { grid-template-columns: minmax(0,1fr); gap: 50px; }
  body main#main .contact-page__form { grid-column: 1; grid-row: 1; padding: 50px 16px; }
  body main#main .contact-page__copy { grid-column: 1; grid-row: 2; }
  body main#main .contact-page__copy > h1 { margin-bottom: 20px; }
}
@media(max-width:767px) {
  body main#main .contact-page > .contact-page__layout.container { padding-inline: 16px; }
}
@media(max-width:750px) {
  body main#main .contact-page__form #gform_wrapper_1 button.btn { padding-inline: 20px; }
}

/* Practice directory: square photo tiles with a high-contrast navy copy panel. */
.practice-grid .practice-card {
 display: flex; flex-direction: column; align-items: stretch;
 height: 100%; min-height: 0; aspect-ratio: auto;
 border: 0; border-radius: 0;
 background: var(--secondary); color: var(--white);
}
.practice-grid .practice-card::before { content: none; }
.practice-grid .practice-card .practice-card__image {
 position: static; z-index: auto; display: block; flex: none;
 width: 100%; height: auto; aspect-ratio: 8 / 5;
 object-fit: cover; transform: none; transition: none;
}
.practice-grid .practice-card__content {
 flex: 1; width: 100%; min-width: 0; box-sizing: border-box;
 padding: 1.25rem; border: 0; background: var(--secondary);
}
.practice-grid .practice-card__title { color: var(--white); text-wrap: balance; }
.practice-grid .practice-card__description { color: var(--white); text-wrap: pretty; }
.practice-grid .practice-card__reveal { display: block; opacity: 1; transition: none; }
.practice-grid .practice-card__reveal > div { overflow: visible; }
.practice-grid .practice-card:focus-visible { outline: 3px solid var(--secondary); outline-offset: 3px; }
