/* Ilagan Core block styles ("quiet authority"). Uses theme presets when present, fallbacks otherwise.
   Blocks read --il-fg / --il-muted / --il-rule, so they work on limestone pages and on jade bands. */

:root{--il-ink:var(--wp--preset--color--ink,#222624);--il-jade:var(--wp--preset--color--jade,#0f3d35);--il-accent:var(--wp--preset--color--vermilion,#b5391f);--il-serif:var(--wp--preset--font-family--serif,Georgia,serif);--il-sans:var(--wp--preset--font-family--sans,system-ui,sans-serif);--il-fg:var(--il-ink);--il-muted:var(--wp--preset--color--muted,#5c605d);--il-rule:var(--wp--preset--color--line,#d8d5cd);--il-link:var(--il-jade)}
.il-on-jade{--il-fg:#f3f2ee;--il-muted:#bcc9c4;--il-rule:rgba(243,242,238,.22);--il-link:#f3f2ee}

/* Practice index: § number, name, summary, starting fee, on hairline rows. The whole row links. */
.il-index{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--il-rule)}
.il-index__item{position:relative;display:grid;grid-template-columns:3.25rem minmax(0,1fr);gap:.4rem 1rem;padding:1.75rem 0;border-top:1px solid var(--il-rule)}
.il-index__item:first-child{border-top-color:var(--il-fg)}
@media (min-width:900px){.il-index__item{grid-template-columns:6rem minmax(0,1.1fr) minmax(0,1fr) 12rem;align-items:baseline}}
.il-index__num{font-family:var(--il-serif);font-weight:400;font-size:1.75rem;line-height:1;color:var(--il-jade);white-space:nowrap}
.il-on-jade .il-index__num{color:#bcc9c4}
.il-index__name{margin:0;font-family:var(--il-serif);font-weight:400;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.25rem);line-height:1.1;letter-spacing:-.015em;color:var(--il-fg)}
.il-index__name a{color:inherit;text-decoration:none}
.il-index__name a::after{content:"";position:absolute;inset:0}
.il-index__item:hover .il-index__name a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em}
.il-index__item:focus-within{outline:2px solid var(--il-accent);outline-offset:4px}
.il-index__name a:focus-visible{outline:none}
.il-index__summary{grid-column:2;margin:0;color:var(--il-muted);max-width:46ch}
.il-index__fee{grid-column:2;margin:0;font-size:.875rem;font-weight:500;color:var(--il-fg)}
@media (min-width:900px){.il-index__summary{grid-column:3}.il-index__fee{grid-column:4;text-align:right}}

/* Section mark on practice pages. */
.il-section-mark{margin:0;font-family:var(--il-serif);font-weight:400;font-size:clamp(1.75rem,1.4rem + 1vw,2.5rem);line-height:1;color:#bcc9c4}

/* Lawyers: black-and-white portraits, serif names. */
.il-lawyers{display:grid;gap:3rem 1.5rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none}
@media (min-width:900px){.il-lawyers{grid-template-columns:repeat(3,minmax(0,1fr));gap:3.5rem 2.5rem}}
.il-lawyer{position:relative}
.il-lawyer__photo{margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:2px;background:#d8d5cd;box-shadow:0 0 0 1px rgba(34,38,36,.1)}
.il-lawyers .il-lawyer__photo img{display:block;width:100%;height:100%;object-fit:cover}
.il-lawyer__name{margin:1.1rem 0 0;font-family:var(--il-serif);font-weight:400;font-size:clamp(1.375rem,1.2rem + .6vw,1.75rem);line-height:1.15;color:var(--il-fg)}
.il-lawyer__name a{color:inherit;text-decoration:none}
.il-lawyer__name a::after{content:"";position:absolute;inset:0}
.il-lawyer:hover .il-lawyer__name a{text-decoration:underline;text-decoration-thickness:1px}
.il-lawyer:focus-within{outline:2px solid var(--il-accent);outline-offset:6px}
.il-lawyer__name a:focus-visible{outline:none}
.il-lawyer__role{margin:.3rem 0 0;font-size:.9375rem;font-weight:500;color:var(--il-fg)}
.il-lawyer__areas{margin:.25rem 0 0;font-size:.875rem;color:var(--il-muted)}
.il-lawyer__more{margin:.75rem 0 0;font-size:.875rem;font-weight:500;color:var(--il-jade);text-decoration:underline;text-decoration-color:var(--il-rule);text-underline-offset:.35em}
.il-lawyer:hover .il-lawyer__more{text-decoration-color:currentColor}

/* Lawyer profile facts and practice facts. */
.il-profile__photo{margin:0 0 2rem;aspect-ratio:4/5;overflow:hidden;border-radius:2px;box-shadow:0 0 0 1px rgba(34,38,36,.1)}
.il-profile__photo img{display:block;width:100%;height:100%;object-fit:cover}
.il-facts{margin:0}
.il-facts>div{padding:.9rem 0;border-top:1px solid var(--il-rule)}
.il-facts>div:first-child{border-top-color:var(--il-fg)}
.il-facts dt{font-size:.8125rem;font-weight:500;color:var(--il-muted)}
.il-facts dd{margin:.2rem 0 0;color:var(--il-fg)}
.il-facts a{color:var(--il-link)}
.il-practice{display:grid;gap:2.5rem}
.il-practice__part{padding-top:1.25rem;border-top:1px solid var(--il-fg)}
.il-practice__heading{margin:0 0 1rem;font-size:1.75rem !important;font-weight:400}
.il-practice__from{margin:0 0 .75rem;font-family:var(--il-serif);font-weight:400;font-size:2rem;line-height:1.1;color:var(--il-jade)}
.il-ticks{margin:0;padding:0;list-style:none}
.il-ticks li{position:relative;padding:.55rem 0 .55rem 1.5rem;border-bottom:1px solid var(--il-rule)}
.il-ticks li::before{content:"";position:absolute;left:0;top:1.15rem;width:7px;height:7px;background:var(--il-jade)}

/* Case notes: hairline cards, usually on jade. */
.il-cases{display:grid;gap:2.5rem 2.5rem;grid-template-columns:1fr;margin:0;padding:0;list-style:none}
@media (min-width:782px){.il-cases{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.il-cases{grid-template-columns:repeat(3,minmax(0,1fr))}}
.il-case{padding-top:1.25rem;border-top:1px solid var(--il-rule);color:var(--il-fg)}
.il-case__meta{margin:0 0 .75rem;font-size:.8125rem;font-weight:500;color:var(--il-muted)}
.il-case__title{margin:0;font-family:var(--il-sans);font-weight:600;font-size:1.0625rem;line-height:1.35;color:var(--il-fg)}
.il-case__outcome{margin:.6rem 0 0;font-family:var(--il-serif);font-weight:400;font-size:1.5rem;line-height:1.25;letter-spacing:-.01em}
.il-case__note{margin-top:.75rem;font-size:.9375rem;color:var(--il-muted)}
.il-case__note p{margin:0}

/* Guides. */
.il-guides{display:grid;gap:2.5rem;grid-template-columns:1fr;margin:0;padding:0;list-style:none}
@media (min-width:782px){.il-guides{grid-template-columns:repeat(3,minmax(0,1fr))}}
.il-lawyer-page .il-guides{grid-template-columns:1fr}
.il-guides__heading{margin:0 0 1.5rem}
.il-lawyer-page .il-guides__heading{margin-top:3rem;font-size:1.75rem !important;font-weight:400}
.il-guide{position:relative;padding-top:1.25rem;border-top:1px solid var(--il-fg)}
.il-guide__practice{margin:0 0 .6rem;font-size:.8125rem;font-weight:500;color:var(--il-jade)}
.il-guide__title{margin:0;font-family:var(--il-serif);font-weight:400;font-size:1.5rem;line-height:1.2;color:var(--il-fg)}
.il-guide__title a{color:inherit;text-decoration:none}
.il-guide__title a::after{content:"";position:absolute;inset:0}
.il-guide:hover .il-guide__title a{text-decoration:underline;text-decoration-thickness:1px}
.il-guide:focus-within{outline:2px solid var(--il-accent);outline-offset:6px}
.il-guide__title a:focus-visible{outline:none}
.il-guide__summary{margin:.6rem 0 0;color:var(--il-muted)}
.il-guide__by{display:flex;flex-wrap:wrap;gap:.2rem .7rem;margin:.9rem 0 0;font-size:.8125rem;color:var(--il-muted)}
.il-guide__by>span:first-child{font-weight:500;color:var(--il-fg)}
.il-guide__by>span+span::before{content:"";display:inline-block;width:1px;height:.8em;margin-right:.7rem;background:currentColor;opacity:.5;vertical-align:-.05em}

/* Guide byline. */
.il-byline{display:flex;align-items:center;gap:.9rem;padding:1rem 0;border-block:1px solid var(--il-rule)}
.il-byline__photo{width:3rem;height:3rem;border-radius:50%;object-fit:cover;flex:none}
.il-byline__text{margin:0;display:flex;flex-direction:column;font-size:.9375rem}
.il-byline__name{font-weight:500;color:var(--il-fg)}
.il-byline__detail{color:var(--il-muted)}
.il-byline__detail a{color:inherit}

/* Forms (plugin fallback when Fluent Forms is off). */
.il-form__grid{display:grid;gap:1.25rem}
@media (min-width:600px){.il-form__grid{grid-template-columns:1fr 1fr}.il-form__field--wide,.il-form__actions{grid-column:1/-1}}
.il-form__field{display:flex;flex-direction:column;gap:.4rem;margin:0;min-width:0}
.il-form__field label{font-size:.9375rem;font-weight:500;color:var(--il-fg)}
.il-form__req{color:var(--il-accent)}
.il-form input,.il-form select,.il-form textarea{box-sizing:border-box;font:inherit;width:100%;padding:.85rem 1rem;border:1px solid #8a8e8a;border-radius:2px;background:#fff;color:#222624}
.il-form input:focus-visible,.il-form select:focus-visible,.il-form textarea:focus-visible{outline:2px solid var(--il-jade);outline-offset:1px}
.il-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin:0}
.il-form__submit{cursor:pointer;border:0}
.il-form__hint{font-size:.875rem;color:var(--il-muted)}
.il-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.il-form__notice{padding:1rem 1.25rem;border-left:3px solid var(--il-jade);margin:0 0 1.5rem;background:#fff;color:#222624}
.il-form__notice--error{border-left-color:var(--il-accent)}
.il-editor-empty{padding:1rem;border:1px dashed currentColor;opacity:.7}
