/*
Theme Name: Robert Trimble Law
Theme URI: https://roberttrimblelaw.com
Author: Revenue Riot
Description: A lightweight custom WordPress theme for Robert Trimble Law, featuring a Philadelphia-inspired navy and gold design.
Version: 1.0.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: robert-trimble-law
*/
:root{--navy:#10263d;--navy-dark:#091c2f;--gold:#d5aa62;--cream:#f8f7f4;--ink:#10263d;--muted:#526071}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Georgia,'Times New Roman',serif}a{color:inherit}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;left:-9999px}.screen-reader-text:focus{left:12px;top:12px;z-index:1000;background:#fff;padding:12px}.wrap{width:min(100% - 48px,1320px);margin:auto}
.site-header{background:#fff;position:relative;z-index:10;border-bottom:1px solid #e7e4df}.header-inner{min-height:105px;display:flex;align-items:center;gap:28px;justify-content:space-between}.brand{display:flex;align-items:center;gap:17px;text-decoration:none;flex-shrink:0}.brand-mark{font-size:47px;line-height:1;color:var(--navy);border-right:2px solid var(--gold);padding-right:17px}.brand-name{display:block;font-size:clamp(24px,2.3vw,38px);font-weight:700;letter-spacing:.02em;line-height:1;white-space:nowrap}.brand-sub{display:block;font-size:12px;font-weight:700;letter-spacing:.35em;text-align:center;margin-top:8px}.site-nav{display:flex;gap:clamp(14px,2.2vw,34px);align-items:center}.site-nav a{font-size:17px;text-decoration:none;white-space:nowrap}.site-nav a:hover,.site-nav .current-menu-item a{color:#a97830}.header-cta{display:inline-flex;align-items:center;gap:9px;background:var(--navy);color:#fff;text-decoration:none;padding:14px 20px;border-radius:6px;font-size:16px;font-weight:700;white-space:nowrap}.header-cta:hover{background:#204766}.menu-toggle{display:none;border:1px solid #d2d4d6;background:#fff;border-radius:5px;padding:10px 13px;color:var(--navy);font-size:22px;cursor:pointer}
.hero{min-height:465px;display:grid;grid-template-columns:55% 45%;overflow:hidden}.hero-copy{background:linear-gradient(90deg,rgba(8,28,46,.42),rgba(10,31,50,.08)),url('assets/philadelphia-skyline.png') 90% center/cover no-repeat,var(--navy);padding:65px max(30px,calc((100vw - 1320px)/2));padding-right:45px;display:flex;justify-content:center;flex-direction:column;color:#fff;position:relative;z-index:1}.hero-copy:after{content:'';position:absolute;right:-60px;top:0;bottom:0;width:120px;background:linear-gradient(90deg,rgba(16,38,61,.04),rgba(16,38,61,.92));transform:skewX(-7deg);z-index:-1;pointer-events:none}.hero h1{color:#fff;font-weight:700;font-size:clamp(45px,4.3vw,70px);line-height:1.03;letter-spacing:-.03em;margin:0 0 22px;max-width:760px}.gold-rule{width:105px;height:3px;background:var(--gold);margin:0 0 22px}.hero-sub{font-size:clamp(22px,2.15vw,32px);line-height:1.3;font-style:italic;max-width:500px;margin:0 0 30px}.gold-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;align-self:flex-start;background:linear-gradient(#e8c88f,#d4a75e);color:var(--navy-dark);font-size:22px;font-weight:700;text-decoration:none;padding:16px 32px;border-radius:4px;box-shadow:0 3px 6px #0002}.gold-button:hover{filter:brightness(1.06)}.hero-image{min-height:465px;background:#c6b29a url('assets/robert-portrait.png') center 31%/cover no-repeat}
.practice{background:var(--cream);padding:40px 0 55px;text-align:center}.section-ornament{color:#bb8b42;display:flex;gap:17px;justify-content:center;align-items:center;font-size:32px;margin-bottom:8px}.section-ornament:before,.section-ornament:after{content:'';width:175px;max-width:20vw;height:2px;background:var(--gold)}.practice h2{font-size:clamp(32px,3.7vw,54px);font-weight:700;line-height:1.14;margin:8px 0 28px}.practice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:23px}.practice-card{border:1.5px solid #c59648;border-radius:8px;min-height:145px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-decoration:none;transition:transform .2s,box-shadow .2s}.practice-card:hover{transform:translateY(-3px);box-shadow:0 7px 18px #10263d19}.practice-card svg{width:49px;height:49px;fill:none;stroke:var(--navy);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.practice-card span{font-size:clamp(19px,2vw,27px);font-weight:700}
.faq-preview{background:var(--cream);padding:15px 0 70px}.faq-grid{display:grid;grid-template-columns:30% 1fr;gap:42px}.faq-preview h2{font-size:clamp(32px,3vw,45px);line-height:1.08;margin:10px 0}.faq-list{border-left:2px solid var(--gold);padding-left:40px}.faq-list details{border-bottom:1px solid #c9cdd1;padding:17px 6px}.faq-list summary{cursor:pointer;font-size:20px;font-weight:700}.faq-list details p{font:16px/1.75 system-ui,sans-serif;color:#475566;margin:13px 0 0}.contact-band{background:var(--navy);color:#fff;text-align:center;padding:62px 20px}.contact-band h2{font-size:clamp(32px,3.5vw,48px);margin:0 0 15px}.contact-band p{font-size:20px;margin:0 0 28px}.contact-band .gold-button{align-self:auto}.site-footer{background:#081c2d;color:#dbe2e8;padding:35px 0;font:14px/1.7 system-ui,sans-serif}.footer-inner{display:flex;justify-content:space-between;gap:25px;align-items:start}.footer-inner a{color:#fff}.footer-legal{max-width:720px;color:#bfcad3}.footer-brand{font:22px Georgia,serif;color:#fff;margin-bottom:8px}
.page-hero{padding:72px 0 65px;background:linear-gradient(90deg,rgba(8,28,46,.93),rgba(8,28,46,.76)),url('assets/philadelphia-skyline.png') center/cover;color:#fff}.page-hero h1{font-size:clamp(40px,5vw,64px);margin:0 0 12px}.page-hero p{font-style:italic;font-size:23px;max-width:760px;margin:0}.page-content{padding:65px 0 85px;max-width:900px}.page-content h2{font-size:34px}.page-content p,.page-content li{font:18px/1.8 system-ui,sans-serif;color:#314256}.page-content a{color:#956a2c}.page-content .wp-block-button__link{background:var(--navy);color:#fff}.page-content details{padding:18px 0;border-bottom:1px solid #ddd}.page-content summary{cursor:pointer;font-weight:700;font-size:20px}.page-content :first-child{margin-top:0}
@media(max-width:1120px){.header-inner{flex-wrap:wrap;padding:17px 0}.site-nav{order:3;width:100%;justify-content:center}.hero-copy{padding-left:40px}.hero h1{font-size:clamp(38px,4.2vw,56px)}}
@media(max-width:760px){.wrap{width:min(100% - 32px,1320px)}.header-inner{min-height:82px;gap:12px}.brand-mark{font-size:35px;padding-right:11px}.brand-name{font-size:25px}.brand-sub{font-size:9px;letter-spacing:.26em}.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.site-nav{display:none;order:3;width:100%;align-items:stretch;flex-direction:column;gap:0;padding:10px 0}.site-nav.open{display:flex}.site-nav a{padding:12px 4px;border-top:1px solid #eee}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 25px 55px}.hero-copy:after{display:none}.hero h1{font-size:clamp(39px,9.6vw,58px)}.hero-image{min-height:360px;background-position:center 32%}.practice-grid{grid-template-columns:repeat(2,1fr);gap:12px}.practice-card{min-height:128px}.practice-card span{font-size:19px}.faq-grid{grid-template-columns:1fr;gap:15px}.faq-list{padding-left:20px}.footer-inner{flex-direction:column}.gold-button{font-size:19px;padding:15px 24px}}
@media(max-width:390px){.brand-name{font-size:21px}.brand-sub{font-size:8px}.brand-mark{font-size:29px}.practice-card span{font-size:17px}}

/* A single opaque skyline panel with a crisp diagonal edge. The earlier
   translucent pseudo-element caused the portrait to show through in a band. */
.hero-copy:after{content:none;display:none}
@media(min-width:761px){
  .hero-copy{
    width:calc(100% + 70px);
    margin-right:-70px;
    clip-path:polygon(0 0,100% 0,calc(100% - 70px) 100%,0 100%);
  }
}

/* Compact informational sections for the homepage. */
.welcome{background:#fff;padding:48px 0 46px}
.welcome-inner,.attorney-intro-inner{display:grid;grid-template-columns:42% 1fr;gap:65px;align-items:center}
.eyebrow{font:700 12px/1.5 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#a27739;margin:0 0 10px}
.welcome h2,.attorney-intro h2{font-size:clamp(31px,3vw,44px);line-height:1.12;margin:0}
.welcome-inner>p,.attorney-intro-inner p:not(.eyebrow){font:17px/1.75 system-ui,sans-serif;color:#37475a;margin:0}
.practice-card{padding:22px 18px;min-height:205px;gap:11px}
.practice-card small{font:14px/1.5 system-ui,sans-serif;color:#42556a;max-width:235px}
.attorney-intro{background:#fff;padding:58px 0;border-top:1px solid #e7e3dd}
.text-link{display:inline-block;margin-top:17px;color:#956a2c;font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}
@media(max-width:760px){
  .welcome,.attorney-intro{padding:40px 0}
  .welcome-inner,.attorney-intro-inner{grid-template-columns:1fr;gap:20px}
  .practice-card{min-height:210px;padding:16px 12px}
  .practice-card small{font-size:12px}
}
