/*
Theme Name: Lincoln Square Law Child
Theme URI: https://lincolnsquarelaw.com/
Template: lincoln-square-law
Author: Mohamed Law Office, LLC
Author URI: https://lincolnsquarelaw.com/
Description: Child theme for Lincoln Square Law. Make all customizations here — CSS overrides, template overrides, and custom functions — so the parent theme can be updated safely without losing your changes.
Version: 3.6.82
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lincoln-square-law-child
*/

/* =========================================================================
   Add your CSS customizations below. They load AFTER the parent stylesheet,
   so anything here overrides the parent. A few safe, ready-to-use examples
   are included and commented out.
   ========================================================================= */

/* Example: swap the brand accent brass to a deeper tone site-wide
*/

/* Example: tighten hero height on very large screens
@media (min-width: 1400px) { .hero .wrap { padding-block: 84px; } }
*/

/* Example: make the top utility bar a touch taller
.topbar .wrap { min-height: 46px; }
*/

/* Add child-theme CSS overrides below. Parent uses the content-library brand system:
   --display (Fraunces), --serif/--ui (Inter), --legal (Source Serif 4); brand hex #14273D / #B08442 / #3D5A73. */

/* =========================================================================
   v3.6.82 — Neighborhood pages (/service-areas/ and its child pages):
   spacing and link visibility. Scoped to .lsl-area (added to the page content
   in v3.6.95) and to the page-id-1063 / parent-pageid-1063 body classes.
   1) Removes the stacked gap between the intro and the first section.
   2) Body copy at line-height 1.6 with consistent paragraph, list and
      heading spacing. Left-aligned, normal word spacing.
   3) Links in the navy closing box were slate on navy (about 2:1).
      Now brass #D6B26E, underlined (7.5:1 on #14273D).
   4) Wide tables scroll sideways on phones instead of squeezing.
   ========================================================================= */
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) > header.hero{
  margin-bottom:0 !important; padding-bottom:0 !important; min-height:0 !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) > header.hero > .wrap{
  padding-block:clamp(1.75rem,5vw,3rem) clamp(.75rem,2.5vw,1.5rem) !important;
  min-height:0 !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) > header.hero .dek{
  line-height:1.5 !important; margin-bottom:0 !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) > .article{
  margin-top:0 !important; padding-top:0 !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) > .article > :first-child{
  margin-top:1.25rem !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article :is(p, li, td, th){
  line-height:1.6 !important; text-align:left !important;
  word-spacing:normal !important; letter-spacing:normal !important; hyphens:manual;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article p{
  margin:0 0 1em !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article :is(ul, ol){
  margin:0 0 1.1em !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article li + li{
  margin-top:.45em !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article h2{
  margin:2em 0 .6em !important; line-height:1.25 !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article h3{
  margin:1.5em 0 .45em !important; line-height:1.3 !important;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article > :is(p, ul, ol){
  max-width:72ch;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article table{
  display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article-cta:not([style]) a:not(.btn){
  color:#D6B26E !important; text-decoration:underline !important; text-underline-offset:2px;
}
:is(.lsl-area, body.page-id-1063 .lsl-content, body.parent-pageid-1063 .lsl-content) .article-cta :is(h3, p){
  margin-bottom:.75em !important;
}

/* =========================================================================
   v3.6.81 — Resource download form: visible text on the navy card.
   Replaces the v3.6.80 rules, which did not take effect on the live site.
   The wrapper .lsl-gate-fix is now added by functions.php around the parent's
   [lsl_resource_gate] output on every page, so no content change is needed.
   Every text element inside the card is set light, except form controls and
   the submit button, which keep their own colors. Links are brass and underlined.
   Contrast on #14273D: text #F3EEE3 13.1:1, links #D6B26E 7.5:1.
   Placeholder #6B6B6B on white 5.3:1 (WCAG 2.2 SC 1.4.3 covers placeholders).
   ========================================================================= */
html body .lsl-gate-fix :is(h1,h2,h3,h4,h5,h6,p,span,small,strong,em,b,i,li,dt,dd,label,legend,figcaption,div):not(button):not(button *):not(.btn):not(.btn *){
  color:#F3EEE3 !important;
  opacity:1 !important;
}
html body .lsl-gate-fix a:not(.btn),
html body .lsl-gate-fix a:not(.btn) *{
  color:#D6B26E !important;
  text-decoration:underline !important;
  text-underline-offset:2px;
  opacity:1 !important;
}
html body .lsl-gate-fix input::placeholder,
html body .lsl-gate-fix textarea::placeholder{
  color:#6B6B6B !important;
  opacity:1 !important;
}

/* =========================================================================
   v3.6.20 — Content, SEO, and editorial-hold release. Parent theme changes only.
   ========================================================================= */

/* =========================================================================
   v3.6.19 — Approved forms and booking release. All changes are in the parent
   theme and content; no child override was added or changed.
   ========================================================================= */

/* =========================================================================
   v3.6.18 — Approved UX/functionality release.
   Parent theme: public search/comments disabled; existing resource-topic
   navigation and legal-page corrections are retained. WXR + parent migration:
   canonical page-qualified anchors and stable semantic contact targets.
   Existing v3.6.15 child visual overrides remain intentionally unchanged.
   ========================================================================= */

/* =========================================================================
   v3.6.16 — Post-deploy content-layer fixes (no child-CSS change this release).
   Fixes live in the WXR content, not styling:
   1) Resources pages wrapped in a Custom-HTML block so WordPress skips wpautop
      (wpautop was splitting each <a class="res-card"> gateway card).
   2) Book a Consultation: empty right column now carries the canonical
      [lsl_intake] shortcode (same designed form as the Contact page).
   The v3.6.15 overrides below are unchanged and still apply.
   ========================================================================= */

/* =========================================================================
   v3.6.15 — APPROVED targeted fixes (child overrides load after the parent).
   1) Headshots: circles kept, unified to 2px Giddings Brass, centered face
      crop, and forced fill so the Business frame never shows a navy gap.
   2) Header lockup: one authoritative .site-brand img rule that wins over the
      parent's 14 scattered declarations, with aspect-ratio + object-fit pinned
      together. Visually identical to the approved v3.6.14 header; not fragile.
   ========================================================================= */

/* ---- Item 1 — founder / headshot frames (Home, Individuals, About, Business) */
.attorney-card .portrait,
.lsla-mark,
.lslh-counsel .port{
  border:2px solid #B08442 !important;   /* Giddings Brass */
  border-radius:50% !important;          /* circle (approved) */
  overflow:hidden !important;
  padding:0 !important;
  background:#F3EEE3;                     /* parchment behind — never a navy gap */
  display:block !important;              /* drop flex centering that fought the fill */
}
.attorney-card .portrait > picture,
.lsla-mark > picture,
.lslh-counsel .port > picture{ display:block; width:100%; height:100%; }
.attorney-card .portrait img,
.lsla-mark img,
.lslh-counsel .port img,
.founder-portrait-image{
  display:block; width:100%; height:100%;
  object-fit:cover; object-position:50% 16%; margin:0;
}

/* ---- Item 2 — single authoritative brand-lockup sizing (matches approved sizes) */
.site-brand img{
  display:block;
  width:360px; max-width:min(44vw,360px);
  height:auto; aspect-ratio:757.81/136;
  object-fit:contain; object-position:left center;
  image-rendering:auto;
}
@media(max-width:840px){ .site-brand img{ width:252px; max-width:calc(100vw - 112px); } }
@media(max-width:620px){ .site-brand img{ width:242px; max-width:calc(100vw - 108px); } }
