:root {
  --navy: #012c4e;
  --navy-deep: #002c4a;
  --blue: #1e3a8a;
  --gold: #ead292;
  --gold-dark: #b8924f;
  --ink: #0a0a0a;
  --text: #333333;
  --muted: #717182;
  --muted-2: #4a5565;
  --muted-3: #6a7282;
  --line: #e5e7eb;
  --soft: #f9fafb;
  --soft-2: #f3f4f6;
  --page: #fafafa;
  --white: #ffffff;
  --container: 1140px;
  --shadow: 0 10px 24px rgba(1, 44, 78, .08);
}

.language-switch { display: inline-flex; gap: 3px; padding: 3px; border: 1px solid rgba(255,255,255,.18); border-radius: 8px; }
.language-switch a { padding: 3px 6px; border-radius: 5px; font-size: 11px; }
.language-switch a.active { color: var(--navy); background: var(--gold); }
.contact-info { margin-top: 24px; padding: 24px; }
.contact-form { padding: 28px; }
.contact-form label { display: block; margin-bottom: 7px; font-weight: 600; }
.contact-form input,.contact-form textarea { width: 100%; padding: 12px 14px; border: 1px solid #d8dce1; border-radius: 7px; }
.contact-form textarea { min-height: 140px; resize: vertical; }
.form-status { margin-top: 12px; font-weight: 600; }

/* Premium dynamic home page */
.qx-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: #062f49;
}
.qx-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .15;
  background-image: linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to right, transparent, #000 55%);
}
.qx-hero-glow { position: absolute; width: 600px; height: 600px; right: -170px; top: -260px; border-radius: 50%; background: rgba(216,178,103,.14); filter: blur(3px); }
.qx-hero-grid { position: relative; min-height: 640px; display: grid; grid-template-columns: 1.05fr .95fr; gap: 80px; align-items: center; padding-block: 70px; }
.qx-kicker { display: inline-flex; align-items: center; gap: 10px; color: #e3c27f; font-size: 12px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.qx-kicker i { width: 28px; height: 1px; background: currentColor; }
.qx-kicker.dark { color: #9b7134; }
.qx-hero-copy h1 { max-width: 680px; margin-top: 23px; font: 500 clamp(48px,5vw,72px)/1.08 Merriweather,Georgia,serif; letter-spacing: -.035em; }
.qx-hero-copy > p { max-width: 610px; margin-top: 24px; color: rgba(255,255,255,.72); font-size: 18px; line-height: 1.75; }
.qx-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.qx-btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 16px; padding: 13px 22px; border-radius: 7px; font-weight: 700; transition: .2s ease; }
.qx-btn:hover { transform: translateY(-2px); }
.qx-btn-gold { color: #172018; background: #dfbd78; box-shadow: 0 15px 35px rgba(0,0,0,.18); }
.qx-btn-ghost { color: #fff; border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.04); }
.qx-btn-dark { color: #fff; background: #082f49; }
.qx-trust-line { display: flex; align-items: center; gap: 13px; margin-top: 34px; color: rgba(255,255,255,.65); font-size: 12px; }
.qx-trust-avatars { display: flex; }
.qx-trust-avatars b { width: 31px; height: 31px; display: grid; place-items: center; margin-left: -7px; border: 2px solid #062f49; border-radius: 50%; color: #092d43; background: #e3c27f; font-size: 9px; }
.qx-trust-avatars b:first-child { margin-left: 0; }
.qx-hero-visual { position: relative; height: 450px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 3px 80px 3px 3px; background: linear-gradient(145deg,#174b63,#08283c); box-shadow: 0 35px 80px rgba(0,0,0,.25); }
.qx-hero-visual::after { content: ""; position: absolute; width: 320px; height: 320px; border: 1px solid rgba(223,189,120,.25); border-radius: 50%; }
.qx-hero-visual > img { width: 100%; height: 100%; object-fit: cover; }
.qx-monogram { z-index: 1; color: rgba(223,189,120,.14); font: 700 150px/1 Georgia,serif; letter-spacing: -.08em; }
.qx-scales { position: absolute; z-index: 2; width: 180px; height: 100px; display: flex; justify-content: space-between; align-items: flex-end; border-top: 2px solid #dfbd78; }
.qx-scales::before { content: ""; position: absolute; left: 50%; top: -55px; width: 2px; height: 155px; background: #dfbd78; }
.qx-scales span { width: 62px; height: 30px; border-bottom: 2px solid #dfbd78; border-radius: 0 0 50% 50%; }
.qx-case-card { position: absolute; z-index: 4; left: -36px; bottom: 30px; width: 280px; display: flex; gap: 14px; align-items: center; padding: 18px; color: #172018; background: #fff; box-shadow: 0 18px 45px rgba(0,0,0,.25); }
.qx-case-card > span { color: #b0843e; font: 600 25px Georgia,serif; }
.qx-case-card small,.qx-case-card strong { display: block; }.qx-case-card small { color: #82908a; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }.qx-case-card strong { margin-top: 3px; font-size: 12px; }
.qx-hero-stats { position: relative; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.14); }
.qx-hero-stats > div { min-height: 112px; display: flex; flex-direction: column; justify-content: center; padding-left: 28px; border-right: 1px solid rgba(255,255,255,.14); }
.qx-hero-stats > div:first-child { padding-left: 0; }.qx-hero-stats > div:last-child { border: 0; }
.qx-hero-stats strong { color: #e3c27f; font: 500 31px Georgia,serif; }.qx-hero-stats span { margin-top: 5px; color: rgba(255,255,255,.58); font-size: 12px; }

.qx-section { padding: 105px 0; }
.qx-heading-row { display: grid; grid-template-columns: 1.15fr .85fr; gap: 90px; align-items: end; margin-bottom: 48px; }
.qx-heading-row h2,.qx-story-copy h2,.qx-centered-heading h2,.qx-proof-intro h2,.qx-faq-intro h2 { margin-top: 15px; color: #12252d; font: 500 clamp(34px,4vw,50px)/1.2 Merriweather,Georgia,serif; letter-spacing: -.025em; }
.qx-heading-row > p { color: #697875; font-size: 16px; line-height: 1.75; }
.qx-service-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #d9dfdc; border-left: 1px solid #d9dfdc; }
.qx-service-card { min-height: 310px; display: flex; flex-direction: column; padding: 29px; border-right: 1px solid #d9dfdc; border-bottom: 1px solid #d9dfdc; background: #fff; transition: .22s ease; }
.qx-service-card:hover { z-index: 2; color: #fff; background: #0b3b52; transform: translateY(-5px); box-shadow: 0 24px 55px rgba(8,47,73,.18); }
.qx-service-top { display: flex; justify-content: space-between; color: #a77d3d; font: 600 12px Georgia,serif; }.qx-service-top b { font-size: 17px; }
.qx-service-card h3 { margin-top: 43px; font: 500 21px Georgia,serif; }.qx-service-card p { margin-top: 14px; color: #71807b; line-height: 1.7; }.qx-service-card:hover p { color: rgba(255,255,255,.68); }
.qx-service-card > a { margin-top: auto; padding-top: 22px; color: #a77d3d; font-weight: 700; font-size: 12px; }.qx-service-card > a span { margin-left: 8px; }

.qx-story { overflow: hidden; background: #f1f3f1; }
.qx-story-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: center; }
.qx-story-visual { position: relative; min-height: 530px; display: flex; flex-direction: column; justify-content: center; padding: 60px; color: #fff; background: #0a354b; }
.qx-story-visual::before { content: ""; position: absolute; inset: 24px; border: 1px solid rgba(223,189,120,.27); }
.qx-story-visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.qx-story-number { position: relative; z-index: 1; color: #e3c27f; font: 500 105px/1 Georgia,serif; }.qx-story-number sup { font-size: 45px; }.qx-story-visual > p { position: relative; z-index: 1; max-width: 230px; margin-top: 14px; color: rgba(255,255,255,.72); line-height: 1.6; }
.qx-story-line { position: absolute; right: -50px; bottom: 52px; width: 150px; height: 3px; background: #dfbd78; }
.qx-story-copy .lead { margin-top: 23px; color: #66746f; font-size: 17px; line-height: 1.75; }
.qx-feature-list { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px 26px; margin-top: 33px; }
.qx-feature-list article { display: flex; gap: 12px; }.qx-feature-list article > span { width: 25px; height: 25px; display: grid; place-items: center; flex: none; border-radius: 50%; color: #0a354b; background: #e3c27f; font-size: 11px; }.qx-feature-list h3 { font-size: 14px; }.qx-feature-list p { margin-top: 5px; color: #77837f; font-size: 12px; line-height: 1.5; }
.qx-text-link { display: inline-block; margin-top: 32px; color: #936a2f; border-bottom: 1px solid currentColor; padding-bottom: 4px; font-weight: 700; font-size: 13px; }

.qx-team-section { background: #fff; }.qx-centered-heading { max-width: 720px; margin: 0 auto 48px; text-align: center; }.qx-centered-heading .qx-kicker { justify-content: center; }.qx-centered-heading p { margin-top: 16px; color: #71807b; font-size: 16px; }
.qx-team-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 25px; }.qx-team-card { overflow: hidden; background: #f7f8f7; border-bottom: 3px solid #d4ad65; transition: .2s; }.qx-team-card:hover { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(8,47,73,.12); }
.qx-team-photo { position: relative; height: 330px; display: grid; place-items: center; overflow: hidden; background: linear-gradient(145deg,#dfe5e2,#c8d3ce); }.qx-team-photo img { width: 100%; height: 100%; object-fit: cover; object-position: top; }.qx-team-photo > span { color: #71817b; font: 500 82px Georgia,serif; }.qx-team-photo b { position: absolute; right: 15px; bottom: 15px; padding: 7px 10px; color: #fff; background: #0a354b; font-size: 10px; }
.qx-team-info { padding: 23px; }.qx-team-info small { color: #a77d3d; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }.qx-team-info h3 { margin-top: 7px; font: 500 20px Georgia,serif; }.qx-team-info p { margin-top: 8px; color: #74807c; }.qx-center { margin-top: 38px; text-align: center; }

.qx-proof { color: #fff; background: #092f45; }.qx-proof-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 90px; }.qx-proof-intro { position: sticky; top: 30px; align-self: start; }.qx-proof-intro h2 { color: #fff; }.qx-proof-intro > p { margin-top: 20px; color: rgba(255,255,255,.63); font-size: 16px; line-height: 1.7; }
.qx-testimonial-stack { display: grid; gap: 15px; }.qx-quote { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 27px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.035); }.qx-quote-mark { color: #dfbd78; font: 70px/1 Georgia,serif; }.qx-stars { color: #dfbd78; letter-spacing: 3px; font-size: 12px; }.qx-quote blockquote { margin: 12px 0 17px; color: rgba(255,255,255,.82); font: 400 16px/1.7 Georgia,serif; }.qx-quote footer { display: flex; gap: 9px; align-items: baseline; }.qx-quote footer strong { font-size: 12px; }.qx-quote footer span { color: rgba(255,255,255,.45); font-size: 11px; }
.qx-faq { background: #fff; }.qx-faq-grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 90px; }.qx-faq-intro > p { margin-top: 17px; color: #74817d; font-size: 16px; line-height: 1.7; }

@media (max-width: 980px) {
  .qx-hero-grid,.qx-story-grid,.qx-proof-grid,.qx-faq-grid { grid-template-columns: 1fr; gap: 50px; }
  .qx-hero-grid { padding-top: 80px; }.qx-hero-visual { max-width: 650px; width: 100%; margin: auto; }
  .qx-service-grid,.qx-team-grid { grid-template-columns: repeat(2,1fr); }.qx-heading-row { grid-template-columns: 1fr; gap: 20px; }.qx-proof-intro { position: static; }
}
@media (max-width: 680px) {
  .qx-section { padding: 72px 0; }.qx-hero-grid { min-height: auto; gap: 45px; }.qx-hero-copy h1 { font-size: 43px; }.qx-hero-visual { height: 350px; }.qx-case-card { left: 12px; width: calc(100% - 24px); }
  .qx-hero-stats { grid-template-columns: repeat(2,1fr); }.qx-hero-stats > div { min-height: 90px; padding-left: 16px!important; border-bottom: 1px solid rgba(255,255,255,.14); }
  .qx-service-grid,.qx-team-grid,.qx-feature-list { grid-template-columns: 1fr; }.qx-story-visual { min-height: 390px; padding: 40px; }.qx-story-number { font-size: 80px; }.qx-proof-grid,.qx-faq-grid { gap: 42px; }.qx-quote { grid-template-columns: 35px 1fr; padding: 21px; }.qx-quote-mark { font-size: 48px; }
}

/* Premium inner pages: services and attorneys */
.qx-page-hero { position: relative; overflow: hidden; color: #fff; background: #062f49; }
.qx-page-hero-pattern { position: absolute; inset: 0; opacity: .15; background-image: linear-gradient(135deg,transparent 48%,rgba(255,255,255,.08) 49%,transparent 51%); background-size: 52px 52px; mask-image: linear-gradient(to right,#000,transparent 75%); }
.qx-page-hero::after { content:""; position:absolute; width:430px; height:430px; right:-100px; bottom:-270px; border:1px solid rgba(223,189,120,.25); border-radius:50%; box-shadow:0 0 0 70px rgba(223,189,120,.04),0 0 0 140px rgba(223,189,120,.025); }
.qx-page-hero-grid { position:relative; z-index:2; min-height:470px; display:grid; grid-template-columns:1.3fr .7fr; align-items:center; gap:100px; padding-block:75px; }
.qx-page-hero-copy h1 { max-width:720px; margin-top:20px; font:500 clamp(48px,5vw,70px)/1.1 Merriweather,Georgia,serif; letter-spacing:-.035em; }
.qx-page-hero-copy p { max-width:650px; margin:23px 0 31px; color:rgba(255,255,255,.7); font-size:18px; line-height:1.7; }
.qx-page-hero-aside { padding:35px 0 35px 40px; border-left:1px solid rgba(255,255,255,.17); }
.qx-large-index { color:#e3c27f; font:500 82px/1 Georgia,serif; }.qx-page-hero-aside p { max-width:260px; margin-top:13px; color:rgba(255,255,255,.75); line-height:1.55; }.qx-aside-rule { width:70px; height:2px; margin:24px 0; background:#d8b56f; }.qx-page-hero-aside small { color:rgba(255,255,255,.45); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }

.qx-practice-page,.qx-attorneys-page { background:#fff; }
.qx-practice-list { border-top:1px solid #d9dfdc; }
.qx-practice-row { min-height:175px; display:grid; grid-template-columns:55px 58px minmax(0,1fr) 48px; gap:25px; align-items:center; border-bottom:1px solid #d9dfdc; transition:.2s ease; }
.qx-practice-row:hover { padding-inline:22px; color:#fff; background:#0a354b; }.qx-practice-row:hover p { color:rgba(255,255,255,.64); }.qx-practice-row:hover .qx-practice-icon { color:#0a354b; background:#dfbd78; }
.qx-practice-number { color:#aa8143; font:500 15px Georgia,serif; }.qx-practice-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:50%; color:#aa8143; background:#f3eee4; font:500 22px Georgia,serif; transition:.2s; }.qx-practice-content h3 { font:500 24px Georgia,serif; }.qx-practice-content p { max-width:780px; margin-top:9px; color:#71807b; line-height:1.65; }.qx-practice-row > a { width:42px; height:42px; display:grid; place-items:center; border:1px solid #d7dedb; border-radius:50%; color:#a77d3d; }

.qx-featured-practice { overflow:hidden; color:#fff; background:#0a354b; }.qx-featured-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:90px; align-items:center; }.qx-featured-copy h2 { max-width:650px; margin-top:17px; font:500 clamp(36px,4vw,50px)/1.2 Merriweather,Georgia,serif; }.qx-featured-copy > p { max-width:670px; margin-top:22px; color:rgba(255,255,255,.68); font-size:17px; line-height:1.75; }
.qx-process-mini { display:grid; gap:0; margin-top:38px; border-top:1px solid rgba(255,255,255,.14); }.qx-process-mini > div { display:grid; grid-template-columns:52px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.14); }.qx-process-mini b { color:#dfbd78; font:500 13px Georgia,serif; }.qx-process-mini span { color:rgba(255,255,255,.78); }
.qx-featured-visual { position:relative; min-height:450px; display:flex; flex-direction:column; justify-content:flex-end; padding:46px; overflow:hidden; border:1px solid rgba(223,189,120,.25); background:linear-gradient(145deg,#164d63,#08283c); }.qx-featured-visual::before { content:""; position:absolute; width:330px; height:330px; top:-80px; right:-80px; border:1px solid rgba(223,189,120,.22); border-radius:50%; }.qx-featured-visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.qx-featured-symbol { position:relative; color:rgba(223,189,120,.35); font:500 150px/1 Georgia,serif; }.qx-featured-visual > span { position:relative; max-width:310px; color:#e8d3a6; font:400 21px/1.5 Georgia,serif; }
.qx-additional { background:#f2f4f2; }.qx-additional-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.qx-additional-grid article { min-height:210px; padding:26px; border:1px solid #dce2df; background:#fff; }.qx-additional-grid article > span { color:#a77d3d; float:right; }.qx-additional-grid h3 { margin-top:45px; font:500 19px Georgia,serif; }.qx-additional-grid p { margin-top:12px; color:#71807b; font-size:13px; line-height:1.65; }

.qx-attorney-list { display:grid; gap:32px; }.qx-attorney-profile { display:grid; grid-template-columns:360px minmax(0,1fr); min-height:390px; border:1px solid #dce2df; background:#f8f9f8; transition:.22s; }.qx-attorney-profile:nth-child(even) { grid-template-columns:minmax(0,1fr) 360px; }.qx-attorney-profile:nth-child(even) .qx-profile-photo { order:2; }.qx-attorney-profile:hover { transform:translateY(-5px); box-shadow:0 25px 55px rgba(8,47,73,.12); }
.qx-profile-photo { position:relative; min-height:390px; display:grid; place-items:center; overflow:hidden; color:#687975; background:linear-gradient(145deg,#dfe6e2,#c6d2cc); }.qx-profile-photo::after { content:""; position:absolute; inset:24px; border:1px solid rgba(255,255,255,.55); }.qx-profile-photo img { width:100%; height:100%; object-fit:cover; object-position:top; }.qx-profile-photo > span { font:500 92px Georgia,serif; }.qx-profile-photo b { position:absolute; z-index:2; left:20px; bottom:18px; color:#fff; font:500 14px Georgia,serif; }
.qx-profile-body { display:flex; flex-direction:column; justify-content:center; padding:50px 58px; }.qx-profile-body > small { color:#a77d3d; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }.qx-profile-body h2 { margin-top:9px; font:500 34px Georgia,serif; }.qx-profile-meta { display:flex; flex-wrap:wrap; gap:10px 26px; margin-top:18px; color:#53645e; font-size:13px; }.qx-profile-meta span+span::before { content:"•"; margin-right:26px; color:#b78c49; }.qx-profile-body > p { max-width:690px; margin-top:23px; color:#71807b; line-height:1.75; }.qx-profile-links { display:flex; gap:22px; margin-top:28px; }.qx-profile-links a { padding-bottom:4px; border-bottom:1px solid #b68b48; color:#916a30; font-size:12px; font-weight:700; }
.qx-attorney-success { padding:85px 0; color:#fff; background:#0a354b; }.qx-success-grid { display:grid; grid-template-columns:90px 1fr auto; gap:40px; align-items:center; }.qx-success-mark { color:#dfbd78; font:100px/1 Georgia,serif; }.qx-success-grid h2 { margin-top:12px; font:500 37px/1.25 Georgia,serif; }.qx-success-grid p { max-width:700px; margin-top:13px; color:rgba(255,255,255,.65); line-height:1.7; }

@media(max-width:900px){.qx-page-hero-grid,.qx-featured-grid{grid-template-columns:1fr;gap:45px}.qx-page-hero-aside{display:none}.qx-attorney-profile,.qx-attorney-profile:nth-child(even){grid-template-columns:290px 1fr}.qx-attorney-profile:nth-child(even) .qx-profile-photo{order:0}.qx-profile-body{padding:35px}.qx-success-grid{grid-template-columns:60px 1fr}.qx-success-grid .qx-btn{grid-column:2}.qx-additional-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.qx-page-hero-grid{min-height:410px;padding-block:65px}.qx-page-hero-copy h1{font-size:43px}.qx-practice-row{grid-template-columns:38px 1fr 40px;gap:15px;padding-block:25px}.qx-practice-icon{display:none}.qx-practice-row:hover{padding-inline:12px}.qx-practice-content h3{font-size:20px}.qx-featured-visual{min-height:360px;padding:30px}.qx-additional-grid{grid-template-columns:1fr}.qx-attorney-profile,.qx-attorney-profile:nth-child(even){grid-template-columns:1fr}.qx-profile-photo{min-height:330px}.qx-profile-body{padding:30px 24px}.qx-profile-body h2{font-size:28px}.qx-profile-meta{display:grid;gap:7px}.qx-profile-meta span+span::before{display:none}.qx-success-grid{grid-template-columns:1fr}.qx-success-mark{display:none}.qx-success-grid .qx-btn{grid-column:auto;justify-self:start}}

/* Premium blog */
.qx-featured-article{display:grid;grid-template-columns:1.05fr .95fr;min-height:470px;border:1px solid #dbe1de;background:#f7f8f7}.qx-article-visual{position:relative;min-height:470px;display:grid;place-items:center;overflow:hidden;color:#d7b56f;background:linear-gradient(145deg,#123f54,#082b40);font:600 110px Georgia,serif}.qx-article-visual img{width:100%;height:100%;object-fit:cover}.qx-article-visual b{position:absolute;left:24px;bottom:22px;padding:8px 12px;color:#14231d;background:#dfbd78;font:700 10px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}.qx-featured-article-copy{display:flex;flex-direction:column;justify-content:center;padding:55px}.qx-featured-article-copy time,.qx-journal-body time{color:#9b7134;font-size:11px;font-weight:700;letter-spacing:.08em}.qx-featured-article-copy h2{margin-top:15px;font:500 clamp(30px,3vw,42px)/1.25 Merriweather,Georgia,serif}.qx-featured-article-copy>p{margin-top:21px;color:#70807a;font-size:16px;line-height:1.75}.qx-reading-line{display:flex;align-items:center;gap:13px;margin-top:34px}.qx-reading-line span{width:55px;height:1px;background:#b58b49}.qx-reading-line small{color:#8c9994;text-transform:uppercase;letter-spacing:.1em}.qx-journal{background:#f1f3f1}.qx-journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.qx-journal-card{overflow:hidden;border:1px solid #dbe1de;background:#fff;transition:.22s}.qx-journal-card:hover{transform:translateY(-6px);box-shadow:0 25px 55px rgba(8,47,73,.12)}.qx-journal-image{position:relative;height:235px;display:grid;place-items:center;overflow:hidden;color:rgba(223,189,120,.45);background:#0a354b;font:500 75px Georgia,serif}.qx-journal-image img{width:100%;height:100%;object-fit:cover}.qx-journal-image small{position:absolute;left:17px;bottom:16px;padding:6px 9px;color:#14231d;background:#dfbd78;font:700 9px Arial,sans-serif;text-transform:uppercase}.qx-journal-body{position:relative;min-height:260px;padding:25px}.qx-journal-body h3{margin-top:12px;font:500 20px/1.4 Georgia,serif}.qx-journal-body p{margin-top:13px;color:#74817d;font-size:13px;line-height:1.65}.qx-article-arrow{position:absolute;right:22px;bottom:20px;color:#9b7134}.qx-empty{padding:60px;text-align:center;color:#71807b;border:1px solid #dbe1de;background:#fff}

/* Premium about */
.qx-about-mission{background:#fff}.qx-about-mission-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.qx-mission-art{position:relative;min-height:510px;display:flex;flex-direction:column;justify-content:flex-end;padding:48px;overflow:hidden;color:#fff;background:#0a354b}.qx-mission-art:before{content:"";position:absolute;inset:25px;border:1px solid rgba(223,189,120,.3)}.qx-mission-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.qx-mission-seal{position:relative;color:rgba(223,189,120,.22);font:600 130px Georgia,serif}.qx-mission-art>div{position:relative}.qx-mission-art b,.qx-mission-art small{display:block}.qx-mission-art b{color:#e4c47f;font:500 22px Georgia,serif}.qx-mission-art small{margin-top:7px;color:rgba(255,255,255,.55);letter-spacing:.1em;text-transform:uppercase}.qx-mission-copy h2{margin-top:16px;font:500 clamp(36px,4vw,50px)/1.2 Merriweather,Georgia,serif}.qx-mission-copy .lead{margin-top:23px;color:#65746f;font-size:18px;line-height:1.8}.qx-mission-copy blockquote{margin:35px 0 0;padding:25px 0 25px 26px;border-left:3px solid #dfbd78;color:#18333d;font:400 20px/1.65 Georgia,serif}.qx-about-stats{color:#fff;background:#092f45}.qx-about-stats .container{display:grid;grid-template-columns:repeat(4,1fr)}.qx-about-stats .container>div{min-height:145px;display:flex;flex-direction:column;justify-content:center;padding:25px;border-right:1px solid rgba(255,255,255,.13)}.qx-about-stats .container>div:last-child{border:0}.qx-about-stats strong{color:#dfbd78;font:500 36px Georgia,serif}.qx-about-stats span{margin-top:8px;color:rgba(255,255,255,.6);font-size:12px}.qx-values{background:#f1f3f1}.qx-value-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d8dfdc;border-left:1px solid #d8dfdc}.qx-value-grid article{min-height:300px;padding:32px;border-right:1px solid #d8dfdc;border-bottom:1px solid #d8dfdc;background:#fff}.qx-value-grid article>span{color:#a87e3d;font:500 13px Georgia,serif}.qx-value-grid h3{margin-top:55px;font:500 22px Georgia,serif}.qx-value-grid p{margin-top:15px;color:#71807b;line-height:1.75}.qx-about-team{color:#fff;background:#0a354b}.qx-about-team .qx-centered-heading h2{color:#fff}.qx-about-team .qx-team-card{color:#14231d}

/* Premium contact */
.qx-contact-symbol{display:block;color:#dfbd78;font-size:78px}.qx-contact-page{background:#fff}.qx-contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:45px;align-items:start}.qx-contact-details{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #dbe1de;border-left:1px solid #dbe1de}.qx-contact-detail{min-height:190px;padding:25px;border-right:1px solid #dbe1de;border-bottom:1px solid #dbe1de}.qx-contact-detail>span{float:right;color:#ad8445;font:500 12px Georgia,serif}.qx-contact-detail small{display:block;color:#8c9994;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.qx-contact-detail a,.qx-contact-detail p{display:block;margin-top:35px;color:#18343e;font:500 16px/1.55 Georgia,serif}.qx-contact-form{padding:40px;border:1px solid #d7dfdb;background:#f4f6f4;box-shadow:0 25px 60px rgba(8,47,73,.08)}.qx-form-head{display:flex;align-items:center;gap:17px;padding-bottom:27px;border-bottom:1px solid #d8dfdc}.qx-form-head>span{width:48px;height:48px;display:grid;place-items:center;flex:none;color:#18251f;background:#dfbd78;font-weight:800}.qx-form-head h3{font:500 22px Georgia,serif}.qx-form-head p{margin-top:5px;color:#78847f;font-size:12px}.qx-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:27px}.qx-field-full{grid-column:1/-1}.qx-field label{display:block;margin-bottom:7px;color:#51615b;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.qx-field input,.qx-field textarea{width:100%;padding:13px 14px;border:1px solid #ccd6d1;border-radius:0;color:#17251f;background:#fff;outline:none}.qx-field input:focus,.qx-field textarea:focus{border-color:#a87d3c;box-shadow:0 0 0 3px rgba(168,125,60,.1)}.qx-field textarea{min-height:135px;resize:vertical}.qx-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.qx-form-footer .form-status{color:#23604e;font-size:12px}.qx-contact-map{padding:0 0 105px;background:#fff}.qx-map-card{position:relative;min-height:390px;overflow:hidden;background:#0a354b}.qx-map-card>img{width:100%;height:390px;object-fit:cover}.qx-map-pattern{position:absolute;inset:0;display:grid;place-items:center;color:rgba(223,189,120,.14);font:600 150px Georgia,serif;background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1px);background-size:24px 24px}.qx-map-address{position:absolute;left:35px;bottom:35px;width:min(390px,calc(100% - 70px));padding:25px;color:#fff;background:#082c41;box-shadow:0 18px 45px rgba(0,0,0,.3)}.qx-map-address small,.qx-map-address strong{display:block}.qx-map-address small{color:#dfbd78;text-transform:uppercase;letter-spacing:.1em}.qx-map-address strong{margin-top:9px;font:500 17px/1.5 Georgia,serif}.qx-map-address a{display:inline-block;margin-top:17px;color:#dfbd78;font-size:12px;font-weight:700}

@media(max-width:900px){.qx-featured-article,.qx-about-mission-grid,.qx-contact-grid{grid-template-columns:1fr}.qx-journal-grid{grid-template-columns:repeat(2,1fr)}.qx-featured-article-copy{padding:38px}.qx-value-grid{grid-template-columns:1fr}.qx-contact-details{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.qx-journal-grid,.qx-contact-details,.qx-form-grid{grid-template-columns:1fr}.qx-featured-article{display:block}.qx-article-visual{min-height:330px}.qx-featured-article-copy{padding:30px 24px}.qx-about-mission-grid{gap:45px}.qx-mission-art{min-height:390px;padding:35px}.qx-about-stats .container{grid-template-columns:repeat(2,1fr)}.qx-about-stats .container>div{min-height:110px}.qx-contact-form{padding:28px 20px}.qx-field-full{grid-column:auto}.qx-form-footer{align-items:stretch;flex-direction:column}.qx-map-address{left:18px;bottom:18px;width:calc(100% - 36px)}.qx-contact-map{padding-bottom:72px}}

/* Dynamic blog detail */
.qx-featured-article,.qx-journal-card{color:inherit;text-decoration:none}.qx-detail-hero{position:relative;overflow:hidden;padding:75px 0 95px;color:#fff;background:#062f49}.qx-detail-hero .container{position:relative;z-index:2;max-width:980px}.qx-detail-back{display:inline-block;color:#dfbd78;font-size:12px;font-weight:700;letter-spacing:.04em}.qx-detail-meta{display:flex;gap:18px;align-items:center;margin-top:55px;color:rgba(255,255,255,.5);font-size:11px;text-transform:uppercase;letter-spacing:.09em}.qx-detail-meta span{padding:7px 10px;color:#17231e;background:#dfbd78;font-weight:800}.qx-detail-hero h1{max-width:900px;margin-top:22px;font:500 clamp(42px,5.5vw,70px)/1.13 Merriweather,Georgia,serif;letter-spacing:-.035em}.qx-detail-hero p{max-width:790px;margin-top:24px;color:rgba(255,255,255,.7);font-size:18px;line-height:1.75}.qx-detail-cover{position:relative;z-index:3;height:520px;margin-top:-50px;overflow:hidden;box-shadow:0 28px 65px rgba(8,47,73,.18)}.qx-detail-cover img{width:100%;height:100%;object-fit:cover}.qx-detail-layout{display:grid;grid-template-columns:190px minmax(0,760px);gap:70px;justify-content:center;padding-block:85px}.qx-detail-aside{position:sticky;top:25px;align-self:start;padding-top:7px}.qx-detail-aside>span{display:block;color:#b48948;font:600 42px Georgia,serif}.qx-detail-aside small{display:block;margin-top:8px;color:#7d8a85;text-transform:uppercase;letter-spacing:.1em}.qx-detail-aside>div{width:55px;height:1px;margin:24px 0;background:#c9d2ce}.qx-detail-aside a{color:#946b30;font-size:12px;font-weight:700}.qx-detail-content{color:#3f504a;font:400 18px/1.9 Georgia,serif}.qx-detail-content>p:first-child::first-letter{float:left;margin:8px 10px 0 0;color:#0a354b;font-size:62px;line-height:.8}.qx-detail-content>p+p{margin-top:25px}.qx-detail-notice{margin-top:45px;padding:25px 28px;border-left:3px solid #d8b46e;background:#f2f4f2}.qx-detail-notice strong{color:#936a30;font:700 11px Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}.qx-detail-notice p{margin-top:8px;color:#70807a;font:400 14px/1.7 Arial,sans-serif}.qx-related{background:#f1f3f1}
@media(max-width:800px){.qx-detail-cover{height:400px}.qx-detail-layout{grid-template-columns:1fr;gap:35px}.qx-detail-aside{position:static;display:flex;align-items:center;gap:14px;border-bottom:1px solid #dce2df;padding-bottom:22px}.qx-detail-aside>span{font-size:28px}.qx-detail-aside small{margin:0}.qx-detail-aside>div{flex:1;margin:0}.qx-detail-content{font-size:17px}}
@media(max-width:520px){.qx-detail-hero{padding:60px 0 75px}.qx-detail-meta{margin-top:38px}.qx-detail-hero h1{font-size:38px}.qx-detail-cover{height:285px;margin-top:-30px}.qx-detail-layout{padding-block:55px}.qx-detail-aside a{display:none}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, Arial, Helvetica, sans-serif;
  color: var(--ink);
  background: var(--page);
  -webkit-font-smoothing: antialiased;
}
body.menu-locked { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
ul { margin: 0; padding: 0; list-style: none; }
p, h1, h2, h3, h4 { margin: 0; }

.container { width: min(var(--container), calc(100% - 48px)); margin-inline: auto; }
.section { padding: 92px 0; }
.section-soft { background: rgba(236, 238, 242, .3); }
.section-white { background: #fff; }
.section-head { max-width: 760px; margin: 0 auto 52px; text-align: center; }
.section-head h2 { font-size: 36px; line-height: 1.2; font-weight: 400; color: #101828; }
.section-head h3 { font-size: 30px; line-height: 1.28; font-weight: 600; }
.section-head p { margin-top: 16px; color: var(--muted); font-size: 18px; line-height: 1.625; }
.eyebrow { font-size: 14px; letter-spacing: .05em; text-transform: uppercase; color: var(--gold-dark); font-weight: 600; }
.btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 999px; padding: 12px 24px; font-weight: 600; transition: .2s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-navy { background: var(--navy); color: #fff; }
.btn-gold { background: var(--gold); color: #101010; box-shadow: 0 10px 15px rgba(0,0,0,.10); }
.btn-dark { background: #030213; color: #fff; border-radius: 8px; }
.btn-outline { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.55); }
.btn img { width: 20px; height: 20px; object-fit: contain; }
.card { background: #fff; border: 1px solid rgba(0,0,0,.1); border-radius: 14px; }
.icon-box { width: 48px; height: 48px; border-radius: 10px; display: grid; place-items: center; background: rgba(3,2,19,.1); flex: 0 0 auto; }
.icon-box img { width: 24px; height: 24px; object-fit: contain; }

/* Header */
.site-header { height: 116px; background: #fff; position: relative; z-index: 50; }
.site-header .container { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 12px; min-width: 196px; }
.brand-mark { width: 40px; height: 40px; border-radius: 4px; background: var(--navy); display: grid; place-items: center; }
.brand-mark img { width: 24px; height: 24px; object-fit: contain; }
.brand-copy { display: flex; flex-direction: column; line-height: 1; }
.brand-title { font-family: Merriweather, Georgia, serif; color: var(--blue); font-size: 20px; line-height: 28px; font-weight: 400; }
.brand-sub { color: var(--muted-3); font-size: 12px; line-height: 16px; letter-spacing: .3px; }
.site-nav { display: flex; align-items: center; gap: 32px; }
.site-nav a { color: #364153; font-size: 16px; line-height: 24px; transition: color .2s; }
.site-nav a:hover, .site-nav a.active { color: var(--navy); }
.site-nav .consult-btn { color: #fff; background: var(--navy); border-radius: 50px; padding: 10px 20px; font-weight: 600; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 8px; background: var(--navy); padding: 11px; }
.menu-toggle span { display: block; height: 2px; background: #fff; margin: 5px 0; transition: .2s; }

/* Inner page hero */
.inner-hero { min-height: 415px; display: grid; place-items: center; background-image: linear-gradient(rgba(1,44,78,.80), rgba(1,44,78,.80)), var(--hero-image); background-size: cover; background-position: center; color: #fff; }
.inner-hero-content { width: min(809px, calc(100% - 48px)); text-align: center; }
.inner-hero h1 { font-size: 56px; line-height: 72px; font-weight: 500; }
.inner-hero p { margin-top: 24px; font-family: Arial, sans-serif; font-size: 18px; line-height: 29.25px; color: rgba(255,255,255,.9); }

/* Home */
.home-hero { min-height: 745px; background: var(--navy); color: #fff; position: relative; overflow: hidden; }
.home-hero-grid { min-height: 635px; display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: 72px; padding-top: 62px; }
.hero-badge { display: inline-flex; align-items: center; border: 1px solid rgba(234,210,146,.55); color: var(--gold); border-radius: 999px; padding: 8px 15px; font-size: 13px; margin-bottom: 24px; }
.home-hero h1 { font-size: clamp(48px, 4.4vw, 64px); line-height: 1.12; font-weight: 500; max-width: 650px; }
.home-hero .lead { font-size: 18px; line-height: 1.65; color: rgba(255,255,255,.82); max-width: 630px; margin-top: 24px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.home-hero-image { height: 470px; border-radius: 16px; overflow: hidden; box-shadow: 0 28px 70px rgba(0,0,0,.2); }
.home-hero-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-stats { min-height: 110px; border-top: 1px solid rgba(255,255,255,.16); display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; }
.hero-stat { text-align: center; border-right: 1px solid rgba(255,255,255,.16); }
.hero-stat:last-child { border-right: 0; }
.hero-stat strong { display: block; font-size: 30px; font-weight: 500; color: var(--gold); }
.hero-stat span { display: block; margin-top: 6px; color: rgba(255,255,255,.72); font-size: 14px; }
.trust-strip { background: #fff; padding: 55px 0; }
.trust-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 28px; }
.trust-item { display: flex; align-items: center; gap: 14px; }
.trust-item img { width: 42px; height: 42px; object-fit: contain; }
.trust-item strong { display: block; font-size: 15px; font-weight: 600; color: #101828; }
.trust-item span { display: block; color: var(--muted); font-size: 13px; margin-top: 4px; }
.home-practice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.service-card { min-height: 268px; padding: 28px 26px; display: flex; flex-direction: column; }
.service-card h3 { margin-top: 32px; font-size: 18px; font-weight: 500; }
.service-card p { color: var(--muted); font-size: 15px; line-height: 1.65; margin-top: 14px; }
.service-link { margin-top: auto; padding-top: 18px; color: var(--navy); font-size: 14px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; }
.service-link img { width: 18px; height: 18px; }
.home-about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 86px; align-items: center; }
.home-about-image { height: 520px; border-radius: 16px; overflow: hidden; }
.home-about-image img { width: 100%; height: 100%; object-fit: cover; }
.home-about-copy h2 { font-size: 44px; line-height: 1.2; font-weight: 400; margin-top: 14px; }
.home-about-copy > p { font-size: 18px; line-height: 1.65; color: var(--muted); margin-top: 22px; }
.check-list { display: grid; gap: 13px; margin: 26px 0 30px; }
.check-list li { display: flex; gap: 12px; align-items: flex-start; color: #4a5565; }
.check-list img { width: 20px; height: 20px; margin-top: 2px; }
.why-section { background: var(--navy); color: #fff; }
.why-section .section-head h2, .why-section .section-head p { color: #fff; }
.why-section .section-head p { opacity: .8; }
.why-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; }
.why-card { min-height: 285px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; padding: 30px 24px; background: rgba(255,255,255,.035); }
.why-card .icon-box { background: rgba(255,255,255,.10); }
.why-card h3 { font-size: 17px; margin-top: 32px; font-weight: 500; }
.why-card p { color: rgba(255,255,255,.72); margin-top: 14px; font-size: 14px; line-height: 1.65; }
.attorney-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.attorney-card { background: #fff; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.attorney-photo { height: 287px; overflow: hidden; background: var(--soft-2); }
.attorney-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.attorney-info { padding: 24px; }
.attorney-info h3 { color: #101828; font-size: 16px; font-weight: 500; }
.attorney-role { color: var(--gold-dark); font-size: 16px; margin-top: 7px; }
.attorney-specialty { color: var(--muted-2); font-size: 15px; margin-top: 18px; }
.attorney-years { color: var(--muted-3); font-size: 13px; margin-top: 10px; }
.attorney-contact { display: flex; gap: 12px; border-top: 1px solid var(--soft-2); margin-top: 16px; padding-top: 16px; }
.attorney-contact a { width: 34px; height: 34px; border-radius: 6px; display: grid; place-items: center; color: var(--navy); font-size: 13px; border: 1px solid #eef0f2; }
.center-action { text-align: center; margin-top: 38px; }
.testimonials { background: var(--soft); }
.testimonial-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.testimonial { padding: 28px; min-height: 300px; }
.stars { display: flex; gap: 3px; }
.stars img { width: 17px; height: 17px; }
.testimonial blockquote { margin: 22px 0 26px; color: var(--muted-2); font-size: 15px; line-height: 1.75; }
.testimonial-author { display: flex; align-items: center; gap: 12px; }
.testimonial-author img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.testimonial-author strong { display: block; font-size: 14px; }
.testimonial-author span { display: block; color: var(--muted); font-size: 12px; margin-top: 3px; }
.faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 90px; align-items: start; }
.faq-intro h2 { font-size: 42px; font-weight: 400; }
.faq-intro p { font-size: 18px; color: var(--muted); line-height: 1.6; margin: 16px 0 28px; }
.faq-list { border-top: 1px solid var(--line); }
.faq-item { border-bottom: 1px solid var(--line); }
.faq-question { width: 100%; border: 0; background: transparent; padding: 22px 0; text-align: left; display: flex; justify-content: space-between; gap: 20px; color: #101828; font-weight: 500; }
.faq-sign { font-size: 24px; line-height: 20px; color: var(--navy); }
.faq-answer { display: none; color: var(--muted); font-size: 15px; line-height: 1.65; padding: 0 42px 22px 0; }
.faq-item.open .faq-answer { display: block; }

/* CTA */
.contact-cta { background: var(--navy); color: #fff; padding: 76px 0 80px; }
.cta-main { width: min(848px, 100%); margin: auto; text-align: center; }
.cta-main h2 { font-size: 36px; line-height: 40px; font-weight: 400; }
.cta-main p { max-width: 672px; margin: 22px auto 30px; font-size: 18px; line-height: 1.45; color: rgba(255,255,255,.92); }
.cta-cards { margin: 62px auto 0; display: grid; grid-template-columns: repeat(3,240px); justify-content: center; gap: 24px; }
.cta-card { background: #fff; color: #1a1a1a; border-radius: 8px; min-height: 134px; display: grid; place-items: center; text-align: center; padding: 20px; }
.cta-card img { width: 24px; height: 24px; object-fit: contain; margin: 0 auto 10px; }
.cta-card span { display: block; font-size: 13px; }
.cta-card strong { display: block; font-size: 14px; font-weight: 400; margin-top: 6px; }

/* Footer */
.site-footer { background: var(--navy); color: #fff; padding: 64px 0 34px; }
.footer-grid { display: grid; grid-template-columns: 1.15fr .9fr .9fr 1.05fr; gap: 48px; min-height: 252px; }
.footer-brand .brand-title, .footer-brand .brand-sub { color: #fff; }
.footer-brand .brand-title { font-size: 18px; }
.footer-brand .brand-mark { background: var(--blue); }
.footer-desc { max-width: 266px; margin-top: 24px; font-size: 15px; line-height: 1.65; }
.socials { display: flex; gap: 12px; margin-top: 24px; }
.socials a { width: 40px; height: 40px; border-radius: 8px; background: #fff; display: grid; place-items: center; }
.socials img { width: 20px; height: 20px; object-fit: contain; }
.footer-col h4 { font-size: 16px; font-weight: 700; margin-bottom: 24px; }
.footer-col ul { display: grid; gap: 12px; }
.footer-col li, .footer-col a { font-size: 15px; line-height: 1.4; color: rgba(255,255,255,.95); }
.footer-contact li { display: flex; align-items: flex-start; gap: 12px; }
.footer-contact img { width: 20px; height: 20px; object-fit: contain; margin-top: 1px; }
.footer-bottom { border-top: 1px solid #1e2939; padding-top: 30px; display: flex; justify-content: space-between; gap: 24px; font-size: 13px; }
.footer-legal { display: flex; gap: 24px; }

/* About */
.mission-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 96px; align-items: center; }
.mission-copy h2 { font-size: 48px; line-height: 56px; font-weight: 400; }
.mission-copy p { margin-top: 20px; color: var(--muted); font-size: 18px; line-height: 29.25px; }
.mission-image { height: 523px; border-radius: 16px; overflow: hidden; }
.mission-image img { width: 100%; height: 100%; object-fit: cover; }
.stats-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; margin-bottom: 48px; }
.stat-card { min-height: 162px; display: grid; place-items: center; text-align: center; padding: 28px 18px; }
.stat-card strong { font-family: Arial, sans-serif; display: block; font-size: 36px; line-height: 40px; font-weight: 400; }
.stat-card span { display: block; color: var(--muted); margin-top: 14px; }
.focus-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.list-card { padding: 32px; }
.list-card h3 { font-size: 20px; font-weight: 500; margin-bottom: 28px; }
.bullet-list { display: grid; gap: 12px; }
.bullet-list li { display: flex; gap: 10px; color: var(--muted); line-height: 1.5; }
.bullet-list li::before { content: '•'; color: #030213; }
.principles-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; }
.principle-card { min-height: 289px; padding: 21px; }
.principle-card h3 { margin-top: 24px; font-size: 16px; font-weight: 400; }
.principle-card p { margin-top: 24px; color: var(--muted); font-size: 14px; line-height: 22.75px; }

/* Contact */
.contact-main { padding: 98px 0 92px; background: #fff; }
.contact-layout { display: grid; grid-template-columns: 373px 559px; justify-content: center; gap: 64px; align-items: start; }
.contact-intro h2, .message-card h2 { font-size: 18px; line-height: 26px; font-weight: 500; }
.contact-intro > p, .message-card > p { margin-top: 14px; color: #333; font-size: 16px; line-height: 26px; }
.contact-info-list { display: grid; gap: 16px; margin-top: 24px; }
.contact-info-card { padding: 20px; display: flex; gap: 16px; min-height: 110px; }
.contact-info-card .icon-box { width: 40px; height: 40px; background: #e6eaed; }
.contact-info-card .icon-box img { width: 20px; height: 20px; }
.contact-info-card h3 { font-size: 16px; font-weight: 400; }
.contact-info-card p { color: var(--muted); font-size: 14px; line-height: 20px; margin-top: 4px; }
.message-card { padding: 32px; }
.contact-form { display: grid; gap: 18px; margin-top: 28px; }
.form-group { display: grid; gap: 8px; }
.form-group label { font-family: Arial, sans-serif; font-size: 14px; }
.form-group input, .form-group textarea { border: 1px solid transparent; outline: none; background: #f3f3f5; border-radius: 8px; color: #333; padding: 9px 12px; font-size: 14px; }
.form-group input { height: 38px; }
.form-group textarea { min-height: 92px; resize: vertical; }
.form-group input:focus, .form-group textarea:focus { border-color: var(--navy); }
.form-status { min-height: 20px; font-size: 13px; color: var(--navy); }
.location-map { height: 422px; background: #f4f4f4; overflow: hidden; }
.location-map img { width: 100%; height: 100%; object-fit: cover; }

/* Attorneys */
.attorneys-lead { padding: 86px 0; background: #fff; }
.attorneys-six { grid-template-columns: repeat(3,1fr); row-gap: 28px; }
.credentials-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 32px; }
.credential-card { min-height: 364px; padding: 32px; }
.credential-card .icon-box { width: 56px; height: 56px; }
.credential-card .icon-box img { width: 28px; height: 28px; }
.credential-card h3 { margin-top: 46px; font-size: 16px; font-weight: 400; }
.credential-card p { margin-top: 40px; color: var(--muted); font-size: 16px; line-height: 26px; }
.success-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 24px; }
.success-copy h2 { font-size: 36px; font-weight: 400; color: #101828; margin-bottom: 38px; }
.success-copy p { color: var(--muted); font-size: 18px; line-height: 29.25px; margin-top: 22px; }
.success-image { height: 369px; border-radius: 16px; overflow: hidden; }
.success-image img { width: 100%; height: 100%; object-fit: cover; }

/* Practice */
.practice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.practice-card { min-height: 329px; padding: 24px; }
.practice-card h3 { font-size: 16px; font-weight: 400; margin-top: 38px; }
.practice-card p { margin-top: 38px; color: var(--muted); font-size: 16px; line-height: 26px; }
.feature-practice { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; }
.feature-practice-copy { padding: 48px; }
.feature-practice-copy h2 { font-size: 18px; font-weight: 400; margin-top: 24px; }
.feature-practice-copy > p { color: var(--muted); font-size: 18px; line-height: 29.25px; margin-top: 16px; }
.feature-practice-copy h3 { font-size: 16px; font-weight: 400; margin-top: 18px; }
.feature-practice .bullet-list { margin: 10px 0 28px; }
.feature-practice-image { min-height: 689px; }
.feature-practice-image img { width: 100%; height: 100%; object-fit: cover; }
.additional-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.additional-card { min-height: 74px; padding: 24px; display: flex; align-items: center; gap: 12px; }
.additional-card img { width: 20px; height: 20px; }
.how-head { max-width: 680px; margin: 0 auto 42px; text-align: center; }
.how-kicker { display: inline-flex; align-items: center; gap: 8px; font-size: 24px; }
.how-dot { width: 8px; height: 8px; border-radius: 50%; background: #000; }
.how-head h2 { margin-top: 22px; font-size: 48px; line-height: 56px; font-weight: 500; }
.how-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.how-card { text-align: center; padding: 42px 24px; }
.step-num { width: 60px; height: 60px; border-radius: 50%; display: grid; place-items: center; background: #000; color: #fff; font-size: 30px; font-weight: 600; margin: 0 auto; }
.how-card p { margin-top: 32px; font-size: 22px; line-height: 1.35; }

/* Blog */
.blog-main { padding: 108px 0 96px; background: #fff; }
.blog-layout { display: grid; grid-template-columns: 1fr 315px; gap: 56px; align-items: start; }
.blog-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 24px; }
.blog-card { overflow: hidden; }
.blog-card-image { height: 243px; overflow: hidden; background: #ececf0; }
.blog-card-image img { width: 100%; height: 100%; object-fit: cover; }
.blog-card-body { padding: 22px 24px 24px; min-height: 126px; }
.blog-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 12px; }
.blog-meta .category { color: #030213; }
.blog-card h3 { font-size: 16px; line-height: 24px; font-weight: 500; margin-top: 12px; }
.blog-card.hidden { display: none; }
.blog-sidebar { padding: 24px; position: sticky; top: 24px; }
.blog-sidebar h3 { font-size: 16px; font-weight: 400; }
.search-wrap { position: relative; margin-top: 16px; }
.search-wrap img { position: absolute; left: 12px; top: 9px; width: 18px; height: 18px; }
.search-wrap input, .newsletter input { width: 100%; height: 40px; border: 0; outline: 0; background: #f3f3f5; border-radius: 8px; padding: 8px 12px; color: #333; }
.search-wrap input { padding-left: 40px; }
.category-filter { margin-top: 42px; }
.category-filter h3 { margin-bottom: 14px; }
.category-btn { width: 100%; display: block; border: 0; background: transparent; border-radius: 8px; padding: 9px 12px; text-align: left; color: var(--muted); font-size: 14px; }
.category-btn:hover, .category-btn.active { background: #f3f3f5; color: #030213; }
.newsletter { border-top: 1px solid rgba(0,0,0,.1); margin-top: 32px; padding-top: 32px; }
.newsletter p { color: var(--muted); font-size: 14px; line-height: 20px; margin: 12px 0 18px; }
.newsletter .btn { width: 100%; border-radius: 8px; margin-top: 8px; }
.blog-feature-wrap { background: #f9fafb; padding: 108px 0; }
.blog-feature { display: grid; grid-template-columns: 1fr 1.05fr; overflow: hidden; }
.blog-feature-image { min-height: 357px; }
.blog-feature-image img { width: 100%; height: 100%; object-fit: cover; }
.blog-feature-copy { padding: 48px; }
.feature-badge { display: inline-block; border-radius: 999px; background: rgba(3,2,19,.1); padding: 5px 12px; font-size: 14px; }
.blog-feature-copy h2 { font-size: 18px; font-weight: 400; margin-top: 18px; }
.blog-feature-copy p { color: var(--muted); font-size: 18px; line-height: 29.25px; margin-top: 14px; }
.blog-feature-copy .btn { border-radius: 8px; margin-top: 22px; }

@media (max-width: 1199px) {
  .container { width: min(960px, calc(100% - 48px)); }
  .site-nav { gap: 19px; }
  .site-nav a { font-size: 14px; }
  .home-hero-grid { gap: 42px; }
  .why-grid, .principles-grid { grid-template-columns: repeat(2,1fr); }
  .footer-grid { gap: 28px; }
  .contact-layout { grid-template-columns: 340px 1fr; gap: 38px; }
  .mission-grid { gap: 56px; }
}

@media (max-width: 991px) {
  .site-header { height: 88px; }
  .brand-title { font-size: 18px; }
  .menu-toggle { display: block; }
  .site-nav { position: fixed; left: 0; right: 0; top: 88px; bottom: 0; background: #fff; flex-direction: column; align-items: stretch; padding: 30px 24px; gap: 0; transform: translateX(100%); transition: .25s ease; overflow-y: auto; }
  .site-header.nav-open .site-nav { transform: translateX(0); }
  .site-nav a { font-size: 18px; padding: 16px 4px; border-bottom: 1px solid var(--line); }
  .site-nav .consult-btn { margin-top: 18px; text-align: center; border-bottom: 0; }
  .site-header.nav-open .menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .site-header.nav-open .menu-toggle span:nth-child(2) { opacity: 0; }
  .site-header.nav-open .menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .inner-hero { min-height: 360px; }
  .inner-hero h1 { font-size: 48px; line-height: 1.15; }
  .home-hero { min-height: auto; }
  .home-hero-grid { grid-template-columns: 1fr; padding: 70px 0 58px; }
  .home-hero-copy { text-align: center; }
  .home-hero h1, .home-hero .lead { margin-left: auto; margin-right: auto; }
  .hero-actions { justify-content: center; }
  .home-hero-image { height: 430px; }
  .trust-grid { grid-template-columns: repeat(2,1fr); }
  .home-practice-grid, .attorney-grid, .attorneys-six, .credentials-grid, .practice-grid { grid-template-columns: repeat(2,1fr); }
  .home-about-grid, .mission-grid, .success-grid { grid-template-columns: 1fr; }
  .home-about-image, .mission-image { order: -1; height: 450px; }
  .testimonial-grid { grid-template-columns: 1fr; }
  .faq-layout { grid-template-columns: 1fr; gap: 48px; }
  .stats-grid { grid-template-columns: repeat(2,1fr); }
  .contact-layout { grid-template-columns: 1fr; }
  .contact-main .container { max-width: 720px; }
  .feature-practice { grid-template-columns: 1fr; }
  .feature-practice-image { min-height: 420px; order: -1; }
  .how-grid { gap: 10px; }
  .how-card p { font-size: 18px; }
  .blog-layout { grid-template-columns: 1fr; }
  .blog-sidebar { position: static; }
  .blog-feature { grid-template-columns: 1fr; }
  .blog-feature-image { min-height: 360px; }
  .footer-grid { grid-template-columns: repeat(2,1fr); row-gap: 52px; }
  .footer-bottom { margin-top: 32px; }
}

@media (max-width: 767px) {
  .container { width: min(100% - 32px, 620px); }
  .section { padding: 68px 0; }
  .section-head { margin-bottom: 38px; }
  .section-head h2 { font-size: 30px; }
  .section-head h3 { font-size: 27px; }
  .section-head p { font-size: 16px; }
  .inner-hero { min-height: 340px; }
  .inner-hero-content { width: calc(100% - 32px); }
  .inner-hero h1 { font-size: 40px; }
  .inner-hero p { font-size: 16px; line-height: 1.6; }
  .home-hero-grid { padding-top: 54px; }
  .home-hero h1 { font-size: 44px; }
  .home-hero .lead { font-size: 16px; }
  .home-hero-image { height: 360px; }
  .hero-stats { grid-template-columns: 1fr; padding: 15px 0; }
  .hero-stat { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); padding: 18px; }
  .hero-stat:last-child { border-bottom: 0; }
  .trust-grid { grid-template-columns: 1fr; }
  .home-practice-grid, .attorney-grid, .attorneys-six, .credentials-grid, .practice-grid, .why-grid, .principles-grid, .stats-grid, .focus-grid, .additional-grid { grid-template-columns: 1fr; }
  .home-about-copy h2, .mission-copy h2, .how-head h2 { font-size: 36px; line-height: 1.2; }
  .home-about-image, .mission-image { height: 360px; }
  .attorney-photo { height: 340px; }
  .cta-cards { grid-template-columns: 1fr; width: min(360px, 100%); margin-top: 42px; }
  .cta-main h2 { font-size: 30px; }
  .cta-main p { font-size: 16px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; }
  .footer-legal { flex-wrap: wrap; gap: 14px 20px; }
  .location-map { height: 320px; }
  .feature-practice-copy { padding: 30px 24px; }
  .how-kicker { font-size: 20px; }
  .how-grid { grid-template-columns: 1fr; }
  .how-card { padding: 25px 16px; }
  .blog-grid { grid-template-columns: 1fr; }
  .blog-feature-copy { padding: 30px 24px; }
  .success-copy h2 { font-size: 30px; }
}

@media (max-width: 479px) {
  .brand { min-width: 0; }
  .brand-mark { width: 36px; height: 36px; }
  .brand-title { font-size: 15px; line-height: 20px; }
  .brand-sub { font-size: 9px; }
  .home-hero h1 { font-size: 38px; }
  .home-hero-image { height: 290px; }
  .inner-hero { min-height: 310px; }
  .inner-hero h1 { font-size: 34px; }
  .service-card, .practice-card { min-height: auto; }
  .attorney-photo { height: 300px; }
  .mission-image, .home-about-image { height: 300px; }
  .message-card { padding: 24px 18px; }
  .feature-practice-image { min-height: 300px; }
  .blog-card-image { height: 220px; }
}
