/* DeKosky Law — modern production theme */
:root{
  --navy:#07192d;
  --navy-2:#0d2948;
  --navy-3:#143a61;
  --blue:#2c8ed6;
  --blue-deep:#176eae;
  --blue-soft:#e8f3fb;
  --ink:#102033;
  --ink-soft:#34465a;
  --paper:#f6f8fb;
  --paper-2:#edf3f8;
  --white:#fff;
  --line:#d9e2eb;
  --line-strong:#c5d2de;
  --muted:#66778a;
  --shadow-sm:0 10px 30px rgba(7,25,45,.07);
  --shadow:0 24px 70px rgba(7,25,45,.12);
  --shadow-blue:0 22px 60px rgba(44,142,214,.14);
  --radius:20px;
  --radius-sm:12px;
  --max:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI Variable Text","Aptos","Segoe UI",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#cfe9fb;color:var(--navy)}
a{color:inherit;text-decoration:none}
a:hover{color:var(--blue-deep)}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
button.btn{-webkit-appearance:none;appearance:none}
.btn:focus-visible,.nav-cta:focus-visible,.menu-btn:focus-visible{outline:3px solid rgba(44,142,214,.28);outline-offset:3px}
.firm-name{font-variant-caps:small-caps;font-feature-settings:"smcp" 1;letter-spacing:.035em;font-size:1.035em}
.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:16px;top:16px;z-index:9999;background:#fff;padding:10px 14px;border:1px solid var(--navy);border-radius:8px;box-shadow:var(--shadow-sm)}
.container{width:min(calc(100% - 48px),var(--max));margin:0 auto}
.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--blue-deep)}
.display{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",ui-sans-serif,system-ui,sans-serif;font-weight:640;letter-spacing:-.055em;line-height:.96;margin:0}
.lede{font-size:1.16rem;color:#46596d;max-width:780px}
.small{font-size:.88rem;color:var(--muted)}
.rule{height:1px;background:var(--line)}

/* Header + brand */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%);border-bottom:1px solid rgba(7,25,45,.08);transition:box-shadow .22s ease,background .22s ease}
.site-header::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--navy) 0 38%,var(--blue) 38% 72%,#85c8f1 100%)}
.site-header.scrolled{background:rgba(255,255,255,.97);box-shadow:0 10px 32px rgba(7,25,45,.08)}
.nav{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:center;min-height:108px;gap:38px}
.brand{display:flex;align-items:center;line-height:0;padding:9px 0;align-self:center}
.brand-logo{height:52px;width:auto;max-width:190px;object-fit:contain}
.brand-icon{display:none;width:46px;height:46px;object-fit:contain}
.nav-links{display:grid;grid-template-columns:auto minmax(20px,1fr) auto auto;grid-template-areas:"about spacer meta cta" "practice practice practice practice";align-items:center;column-gap:24px;row-gap:6px;padding:12px 0 10px;color:#20354a}
.nav-about{grid-area:about;justify-self:start}
.nav-practice{grid-area:practice;display:flex;align-items:center;justify-content:space-between;gap:28px;min-width:0;border-top:1px solid rgba(7,25,45,.075);padding-top:10px}
.nav-meta{grid-area:meta;display:flex;align-items:center;justify-self:end;gap:26px}
.nav-links a{position:relative;font-size:.735rem;font-weight:735;line-height:1.2;white-space:nowrap;padding:6px 0;transition:color .18s ease}
.nav-links a.active{color:var(--blue-deep)}
.nav-links a:not(.nav-cta)::after{content:"";position:absolute;height:2px;background:var(--blue);left:50%;right:50%;bottom:0;transition:left .18s ease,right .18s ease}
.nav-links a.active:not(.nav-cta)::after,.nav-links a:not(.nav-cta):hover::after{left:0;right:0}
.nav-cta{grid-area:cta;display:inline-flex!important;align-items:center;justify-content:center;text-align:center;justify-self:end;min-width:96px;background:var(--navy);color:#fff!important;border:1px solid var(--navy);border-radius:999px;padding:10px 17px!important;box-shadow:0 7px 20px rgba(7,25,45,.12)}
.nav-cta:hover{background:var(--blue-deep);border-color:var(--blue-deep);transform:translateY(-1px)}
.nav-cta::after{display:none!important}
.menu-btn{display:none;border:1px solid var(--line);background:#fff;width:44px;height:44px;border-radius:12px;padding:0;font-size:1.35rem;color:var(--navy);cursor:pointer;box-shadow:var(--shadow-sm)}

/* Hero */
.hero{padding:106px 0 88px;border-bottom:1px solid var(--line);position:relative;overflow:hidden;background:radial-gradient(circle at 87% 20%,rgba(44,142,214,.14),transparent 31%),linear-gradient(180deg,#fff 0%,#f6f9fc 100%)}
.hero::before{content:"";position:absolute;width:560px;height:560px;right:-65px;top:-80px;background:url('dekosky-law-icon.png') center/contain no-repeat;opacity:.035;filter:saturate(.7);pointer-events:none}
.hero::after{content:"";position:absolute;left:0;bottom:0;width:42%;height:3px;background:linear-gradient(90deg,var(--navy),var(--blue),transparent)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(280px,.58fr);gap:86px;align-items:end;position:relative;z-index:1}
.hero h1{font-size:clamp(3.6rem,6.9vw,6.8rem);max-width:950px;color:var(--navy)}
.hero .lede{margin:30px 0 0;font-size:1.23rem;max-width:835px}
.hero-side{border:1px solid rgba(7,25,45,.09);border-radius:var(--radius);padding:28px;background:rgba(255,255,255,.66);box-shadow:var(--shadow-sm);backdrop-filter:blur(8px)}
.hero-side p{margin:0 0 22px;font-size:.95rem;color:#4b5e71}.hero-side p:last-child{margin-bottom:0}
.practice-inline{display:flex;flex-wrap:wrap;gap:9px;margin-top:34px}
.practice-inline a{border:1px solid var(--line);border-radius:999px;padding:8px 13px;background:rgba(255,255,255,.8);font-size:.8rem;font-weight:700;color:#2b4258;transition:.18s ease}
.practice-inline a:hover{background:var(--blue-soft);border-color:#b9d9ee;color:var(--blue-deep);transform:translateY(-1px)}
.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;vertical-align:middle;gap:9px;min-height:49px;padding:11px 20px;border:1px solid var(--navy);border-radius:12px;font-size:.83rem;font-weight:780;line-height:1.22;letter-spacing:.005em;white-space:normal;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;box-shadow:0 12px 28px rgba(7,25,45,.15)}
.btn-primary:hover{background:linear-gradient(135deg,var(--navy-2),var(--blue-deep));border-color:var(--blue-deep);color:#fff;box-shadow:var(--shadow-blue)}
.btn-secondary{background:rgba(255,255,255,.65)}.btn-secondary:hover{background:#fff;color:var(--navy);box-shadow:var(--shadow-sm)}

/* Sections */
.section{padding:94px 0}.section-tight{padding:64px 0}.section-dark{background:radial-gradient(circle at 88% 0%,rgba(44,142,214,.18),transparent 27%),linear-gradient(145deg,#06172a,#0b2541 65%,#0d2d4f);color:#fff}.section-dark .eyebrow{color:#7ec5f2}.section-dark .lede,.section-dark .small{color:#bdcad6}.section-paper2{background:linear-gradient(180deg,var(--paper-2),#f2f6fa)}
.section-head{display:grid;grid-template-columns:.74fr 1.26fr;gap:78px;align-items:start;margin-bottom:48px}.section-head h2{font-size:clamp(2.5rem,4.8vw,4.75rem);color:var(--navy)}.section-dark .section-head h2{color:#fff}
.section-head .copy{padding-top:10px}.section-head .copy p:first-child{margin-top:0}

/* Practice cards */
.practice-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.practice-card{position:relative;background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:292px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.practice-card::before{content:"";position:absolute;left:0;top:0;width:78px;height:4px;background:linear-gradient(90deg,var(--navy),var(--blue));transition:width .22s ease}
.practice-card::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-85px;bottom:-85px;background:rgba(44,142,214,.055);transition:transform .25s ease}
.practice-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#bfd1df;color:var(--ink)}.practice-card:hover::before{width:100%}.practice-card:hover::after{transform:scale(1.2)}
.practice-card.major{grid-column:span 6}.practice-card.minor{grid-column:span 4}
.practice-num{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:28px;padding:0 9px;border-radius:999px;background:var(--blue-soft);color:var(--blue-deep);font-size:.75rem;font-weight:850;letter-spacing:.06em}
.practice-card h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-weight:650;font-size:1.75rem;line-height:1.12;letter-spacing:-.035em;margin:25px 0 12px;color:var(--navy)}
.practice-card p{color:#566a7e;margin:0;font-size:.94rem}.arrow{position:relative;z-index:1;font-size:1.35rem;margin-top:24px;color:var(--blue-deep);font-weight:700}

.split{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.quote-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:50px;box-shadow:var(--shadow)}.quote-panel blockquote{font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(1.6rem,2.9vw,2.55rem);line-height:1.25;margin:0;color:var(--navy)}.quote-panel p{margin:24px 0 0;color:var(--muted)}
.prose h2,.prose h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-weight:650;letter-spacing:-.035em;color:var(--navy)}.prose h2{font-size:2.35rem;line-height:1.1}.prose h3{font-size:1.45rem}.prose p,.prose li{color:#4b5e71}.prose ul{padding-left:1.2rem}

/* Results */
.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.result{border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:24px;background:rgba(255,255,255,.035);min-height:175px;transition:transform .2s ease,background .2s ease}.result:hover{transform:translateY(-3px);background:rgba(255,255,255,.065)}.result .tag{text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:#7ec5f2;font-weight:850}.result h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-weight:560;font-size:1.32rem;line-height:1.3;margin:14px 0 0;letter-spacing:-.02em}.results-note{margin-top:30px;color:#aebdca;font-size:.8rem}
.section-dark .btn{border-color:rgba(255,255,255,.7);color:#fff;background:rgba(255,255,255,.04)}.section-dark .btn:hover{background:#fff;color:var(--navy);border-color:#fff}

/* Profile */
.profile-card{display:grid;grid-template-columns:300px minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;min-height:380px;max-width:1040px;margin-left:auto;margin-right:auto;box-shadow:var(--shadow-sm)}.portrait{position:relative;overflow:hidden;background:linear-gradient(145deg,#dce8f1,#b7cbd9);min-height:380px}.portrait::after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,rgba(7,25,45,.07));pointer-events:none}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}.portrait-fallback{position:absolute;inset:0;display:grid;place-items:center}.portrait-fallback span{display:grid;place-items:center;border:1px solid rgba(7,25,45,.28);border-radius:50%;width:120px;height:120px;font-family:"Iowan Old Style",Georgia,serif;font-size:1.7rem;letter-spacing:.08em;color:#244c69}.profile-copy{padding:48px}.profile-copy h2{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:2.9rem;font-weight:650;letter-spacing:-.045em;line-height:1;margin:10px 0 22px;color:var(--navy)}.profile-copy p{color:#4c6074}

/* Insights */
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.insight-card{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:16px;padding:25px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.insight-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:#bfd1df}.insight-card .meta{font-size:.69rem;letter-spacing:.13em;text-transform:uppercase;color:var(--blue-deep);font-weight:850}.insight-card h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-weight:650;font-size:1.38rem;line-height:1.25;letter-spacing:-.025em;margin:13px 0;color:var(--navy)}.insight-card p{font-size:.91rem;color:#5a6d80}.insight-card a{font-weight:800;font-size:.81rem;color:var(--blue-deep)}

/* Interior pages */
.page-hero{padding:84px 0 66px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 87% 10%,rgba(44,142,214,.11),transparent 28%),linear-gradient(180deg,#fff,#f5f8fb);position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;right:-110px;bottom:-185px;width:420px;height:420px;border:1px solid rgba(44,142,214,.14);border-radius:50%;box-shadow:0 0 0 54px rgba(44,142,214,.025),0 0 0 108px rgba(44,142,214,.02)}.page-hero h1{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-weight:650;font-size:clamp(3rem,5.8vw,5.6rem);line-height:.98;letter-spacing:-.055em;margin:8px 0 22px;max-width:1020px;color:var(--navy);position:relative;z-index:1}.page-hero .lede{max-width:860px;position:relative;z-index:1}.page-hero .eyebrow{position:relative;z-index:1}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:74px}.content-main{max-width:800px}.content-main h2{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:2.12rem;line-height:1.12;font-weight:650;letter-spacing:-.035em;margin:50px 0 18px;color:var(--navy)}.content-main h2:first-child{margin-top:0}.content-main h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:1.35rem;font-weight:650;letter-spacing:-.02em;margin:34px 0 12px;color:var(--navy)}.content-main p,.content-main li{color:#465b70}.content-main ul{padding-left:1.1rem}.sidebar{position:sticky;top:112px;align-self:start}.side-box{border:1px solid var(--line);background:#fff;padding:27px;margin-bottom:16px;border-radius:16px;box-shadow:var(--shadow-sm)}.side-box h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-weight:650;font-size:1.27rem;letter-spacing:-.025em;margin:0 0 14px;color:var(--navy)}.side-box ul{margin:0;padding:0;list-style:none}.side-box li+li{border-top:1px solid var(--line)}.side-box a{display:block;padding:10px 0;font-size:.87rem;font-weight:650}.side-box p{font-size:.9rem;color:#5a6d80}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:74px}.contact-form{background:#fff;border:1px solid var(--line);border-radius:20px;padding:38px;box-shadow:var(--shadow-sm)}.field{display:grid;gap:7px;margin-bottom:17px}.field label{font-size:.76rem;font-weight:800;letter-spacing:.04em;color:#2e455c}.field input,.field textarea,.field select{width:100%;border:1px solid #cbd7e1;background:#f9fbfd;padding:13px 14px;color:var(--ink);border-radius:10px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.field input:focus,.field textarea:focus,.field select:focus{border-color:#79b8e4;box-shadow:0 0 0 4px rgba(44,142,214,.10);background:#fff}.field textarea{min-height:150px;resize:vertical}.form-note{font-size:.79rem;color:var(--muted)}


/* Attorney/profile and contact detail refinements */
.attorney-profile-photo{width:min(100%,320px);min-height:0!important;aspect-ratio:3/4;margin:0 0 38px;border-radius:20px;box-shadow:var(--shadow-sm);border:1px solid var(--line)}
.attorney-profile-photo img{object-position:center 18%!important}
.credential-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0 8px}.credential-card{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fff}.credential-card strong{display:block;color:var(--navy);margin-bottom:4px}.credential-card span{font-size:.88rem;color:#596f84}
.contact-methods{display:grid;gap:12px;margin:24px 0}.contact-method{display:block;border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:#fff;box-shadow:var(--shadow-sm)}.contact-method .label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;font-weight:850;color:var(--blue-deep);margin-bottom:4px}.contact-method strong{font-size:1.04rem;color:var(--navy)}.contact-method:hover{border-color:#b9d9ee;background:var(--blue-soft)}

/* Articles */
.article{max-width:810px;margin:0 auto}.article h1{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:clamp(2.9rem,5.4vw,4.9rem);font-weight:650;line-height:1.01;letter-spacing:-.055em;margin:10px 0 24px;color:var(--navy)}.article .deck{font-size:1.22rem;color:#4d6277}.article h2{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:2rem;font-weight:650;letter-spacing:-.035em;margin:50px 0 14px;color:var(--navy)}.article h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:1.33rem;font-weight:650;margin:31px 0 10px;color:var(--navy)}.article p,.article li{color:#465b70}.article .article-meta{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;color:var(--blue-deep);font-weight:850}.article-callout{border-left:3px solid var(--blue);padding:15px 18px;margin:32px 0;background:var(--blue-soft);border-radius:0 12px 12px 0;font-size:1.02rem;color:#274761}

/* CTA + footer */
.cta-band{background:linear-gradient(115deg,var(--blue-deep),#1769a4 45%,var(--navy-2));color:#fff;padding:64px 0;position:relative;overflow:hidden}.cta-band::after{content:"";position:absolute;right:-80px;top:-170px;width:390px;height:390px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018)}.cta-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:50px;align-items:center;position:relative;z-index:1}.cta-grid h2{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:clamp(2.2rem,4vw,3.75rem);font-weight:640;letter-spacing:-.045em;line-height:1.04;margin:0}.cta-grid p{color:#d8e8f3}.cta-band .eyebrow{color:#c5e8ff}.cta-band .btn{border-color:#fff;color:#fff;background:rgba(255,255,255,.04)}.cta-band .btn:hover{background:#fff;color:var(--navy);box-shadow:0 14px 32px rgba(5,19,34,.16)}
.site-footer{background:#051525;color:#c7d4df;padding:60px 0 26px}.footer-grid{display:grid;grid-template-columns:1.25fr .78fr .78fr .82fr;gap:44px}.footer-brand-logo{width:64px;height:64px;object-fit:contain;margin-bottom:16px;border-radius:16px}.footer-legal-name{display:block;color:#fff;font-size:1rem;font-weight:760;letter-spacing:.01em}.footer-brand p{font-size:.87rem;max-width:350px;color:#aebdca}.footer-email{display:inline-block;margin-top:2px;font-size:.86rem;font-weight:720;color:#82c8f6}.footer-email:hover{color:#fff}.footer-col h3{font-size:.69rem;text-transform:uppercase;letter-spacing:.16em;color:#75b5df;margin:0 0 13px}.footer-col a{display:block;font-size:.85rem;padding:4px 0;color:#d5dfe7}.footer-col a:hover{color:#82c8f6}.footer-col .small{color:#91a4b4}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:22px;font-size:.75rem;color:#879aaa}

@media (max-width:1220px){.hero-grid,.section-head,.split,.content-grid,.contact-grid,.cta-grid{grid-template-columns:1fr}.hero-grid{gap:38px}.hero-side{max-width:720px}.practice-card.major{grid-column:span 12}.practice-card.minor{grid-column:span 6}.results-grid,.insight-grid{grid-template-columns:1fr 1fr}.sidebar{position:static}.profile-card{grid-template-columns:280px minmax(0,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:1140px){.nav{grid-template-columns:1fr auto;min-height:80px}.brand-logo{height:44px;max-width:180px}.menu-btn{display:grid;place-items:center}.nav-links{display:none;position:absolute;top:80px;left:18px;right:18px;background:rgba(255,255,255,.985);padding:12px 20px 20px;border:1px solid var(--line);border-radius:0 0 18px 18px;box-shadow:var(--shadow);grid-template:none}.nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav-about{order:1}.nav-practice{order:2;display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line);padding-top:0}.nav-meta{order:3;display:flex;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line)}.nav-cta{order:4;justify-self:stretch;width:100%;margin-top:10px}.nav-links a{font-size:.88rem;padding:13px 4px;white-space:normal}.nav-links a:not(.nav-cta)::after{display:none}}
@media (max-width:680px){.container{width:min(calc(100% - 30px),var(--max))}.nav{min-height:76px}.site-header::before{height:2px}.brand-logo{height:39px;max-width:181px}.menu-btn{width:41px;height:41px}.nav-links{top:76px}.hero{padding:70px 0 58px}.hero::before{width:360px;height:360px;right:-120px;top:10px}.hero h1{font-size:clamp(3rem,15vw,4.4rem)}.hero .lede{font-size:1.08rem}.section{padding:70px 0}.section-head{gap:24px;margin-bottom:34px}.practice-card.minor{grid-column:span 12}.practice-card{min-height:248px;padding:25px}.results-grid,.insight-grid,.profile-card,.footer-grid,.credential-grid{grid-template-columns:1fr}.profile-card{max-width:520px}.profile-card .portrait{min-height:0;aspect-ratio:4/5}.profile-copy{padding:34px}.footer-bottom{flex-direction:column}.page-hero{padding:61px 0 46px}.contact-form{padding:25px}.quote-panel{padding:31px}.cta-band{padding:54px 0}.attorney-profile-photo{width:min(82vw,300px);margin-left:auto;margin-right:auto}}
@media (max-width:430px){.brand-logo{display:none}.brand-icon{display:block}.practice-inline{gap:7px}.practice-inline a{font-size:.75rem;padding:7px 10px}.actions{align-items:stretch}.actions .btn{width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Attorney portrait refinement */
.portrait img[src$="aaron-dekosky.webp"]{
  object-position:center 24%;
  filter:saturate(.92) contrast(1.025);
}
.profile-card .portrait{
  background:linear-gradient(145deg,#d7e4ef,#afc5d7);
}
@media (max-width:760px){
  .portrait img[src$="aaron-dekosky.webp"]{object-position:center 18%}
}

/* About page */
.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.principle-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow-sm)}.principle-card span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--blue-soft);color:var(--blue-deep);font-size:.75rem;font-weight:850;letter-spacing:.08em}.principle-card h3{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",sans-serif;font-size:1.32rem;font-weight:680;letter-spacing:-.025em;color:var(--navy);margin:18px 0 10px}.principle-card p{color:#53687c;font-size:.92rem}
@media(max-width:900px){.principle-grid{grid-template-columns:1fr}}






















































































/* DEKOSKY HEADER ROW/COLUMN ENGINE v4 */
@media (min-width:1241px){
  .site-header .container.nav{width:min(calc(100% - 48px),1680px)!important;max-width:none!important;display:grid!important;grid-template-columns:var(--nav-logo-col,208px) minmax(0,1fr)!important;align-items:center!important;column-gap:var(--nav-main-gap,48px)!important}
  .site-header .nav-links{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:center!important;align-content:stretch!important;gap:0!important;width:100%!important;min-width:0!important;padding:10px 0!important}
  .site-header .nav-row{display:grid!important;grid-template-columns:var(--row-template,minmax(0,1fr))!important;grid-auto-flow:column!important;column-gap:var(--row-column-gap,24px)!important;align-items:center!important;justify-items:stretch!important;width:100%!important;min-width:0!important;flex:0 0 auto!important;padding-top:var(--row-pad-top,4px)!important;padding-bottom:var(--row-pad-bottom,4px)!important}
  .site-header .nav-row[hidden]{display:none!important}
  .site-header .nav-column{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:var(--col-justify,center)!important;gap:var(--row-link-gap,32px)!important;width:100%!important;min-width:0!important}
  .site-header .nav-column>a{flex:0 0 auto!important}
}
/* END DEKOSKY HEADER ROW/COLUMN ENGINE */


/* DEKOSKY TEXT-BLOCK IMAGE ENGINE v1 */
.text-image-block{--tib-gap:24px;--tib-image-width:220px;--tib-image-height:auto;--tib-opacity:1;--tib-image-z:1;--tib-text-z:2;--tib-x:0px;--tib-y:0px;--tib-radius:0px;--tib-fit:cover;--tib-position:50% 50%;--tib-blend:normal;--tib-top:0px;--tib-right:auto;--tib-bottom:auto;--tib-left:0px;--tib-min-height:0px;--tib-media-margin-top:0px;--tib-media-margin-right:0px;--tib-media-margin-bottom:0px;--tib-media-margin-left:0px;position:relative;isolation:isolate;max-width:100%;min-height:var(--tib-min-height);}
.text-image-block>.text-image-copy{position:relative;z-index:var(--tib-text-z);min-width:0}.text-image-block>.text-image-copy>:first-child{margin-top:0}.text-image-block>.text-image-copy>:last-child{margin-bottom:0}
.text-image-block>.text-image-media{position:relative;z-index:var(--tib-image-z);width:min(100%,var(--tib-image-width));max-width:100%;margin:var(--tib-media-margin-top) var(--tib-media-margin-right) var(--tib-media-margin-bottom) var(--tib-media-margin-left);padding:0;line-height:0;}
.text-image-block>.text-image-media img{display:block;width:100%;max-width:100%;height:var(--tib-image-height);object-fit:var(--tib-fit);object-position:var(--tib-position);opacity:var(--tib-opacity);border-radius:var(--tib-radius);transform:translate(var(--tib-x),var(--tib-y));mix-blend-mode:var(--tib-blend);}
.text-image-block>.text-image-media figcaption{line-height:1.4;margin-top:.5rem;color:inherit;opacity:.72;font-size:.8em}
.text-image-block[data-text-image-layout="stack-above"]{display:grid;gap:var(--tib-gap)}.text-image-block[data-text-image-layout="stack-above"]>.text-image-media{order:1}.text-image-block[data-text-image-layout="stack-above"]>.text-image-copy{order:2}
.text-image-block[data-text-image-layout="stack-below"]{display:grid;gap:var(--tib-gap)}.text-image-block[data-text-image-layout="stack-below"]>.text-image-media{order:2}.text-image-block[data-text-image-layout="stack-below"]>.text-image-copy{order:1}
.text-image-block[data-text-image-layout="inline-left"],.text-image-block[data-text-image-layout="inline-right"]{display:grid;grid-template-columns:minmax(0,var(--tib-image-width)) minmax(0,1fr);gap:var(--tib-gap);align-items:start}.text-image-block[data-text-image-layout="inline-right"]{grid-template-columns:minmax(0,1fr) minmax(0,var(--tib-image-width))}.text-image-block[data-text-image-layout="inline-right"]>.text-image-media{order:2}.text-image-block[data-text-image-layout="inline-right"]>.text-image-copy{order:1}
.text-image-block[data-text-image-layout="float-left"],.text-image-block[data-text-image-layout="float-right"]{display:block}.text-image-block[data-text-image-layout="float-left"]>.text-image-media{float:left;margin-right:var(--tib-gap);margin-bottom:var(--tib-gap)}.text-image-block[data-text-image-layout="float-right"]>.text-image-media{float:right;margin-left:var(--tib-gap);margin-bottom:var(--tib-gap)}.text-image-block[data-text-image-layout="float-left"]::after,.text-image-block[data-text-image-layout="float-right"]::after{content:"";display:block;clear:both}
.text-image-block[data-text-image-layout="background"],.text-image-block[data-text-image-layout="overlay"]{display:block;overflow:var(--tib-overflow,hidden)}.text-image-block[data-text-image-layout="background"]>.text-image-media,.text-image-block[data-text-image-layout="overlay"]>.text-image-media{position:absolute;top:var(--tib-top);right:var(--tib-right);bottom:var(--tib-bottom);left:var(--tib-left);width:var(--tib-image-width);max-width:none;pointer-events:none;margin:0}.text-image-block[data-text-image-layout="background"]>.text-image-media{width:auto}.text-image-block[data-text-image-layout="background"]>.text-image-media img{width:100%;height:100%;min-height:inherit}.text-image-block[data-text-image-layout="background"]>.text-image-copy,.text-image-block[data-text-image-layout="overlay"]>.text-image-copy{position:relative;z-index:var(--tib-text-z)}
@media(max-width:760px){.text-image-block[data-mobile-image="hide"]>.text-image-media{display:none}.text-image-block[data-mobile-image="stack-above"][data-text-image-layout="inline-left"],.text-image-block[data-mobile-image="stack-above"][data-text-image-layout="inline-right"],.text-image-block[data-mobile-image="stack-above"][data-text-image-layout="float-left"],.text-image-block[data-mobile-image="stack-above"][data-text-image-layout="float-right"]{display:grid;grid-template-columns:1fr;gap:var(--tib-gap)}.text-image-block[data-mobile-image="stack-above"]>.text-image-media{float:none!important;order:1!important;margin-left:0!important;margin-right:0!important}.text-image-block[data-mobile-image="stack-above"]>.text-image-copy{order:2!important}.text-image-block[data-mobile-image="stack-below"][data-text-image-layout="inline-left"],.text-image-block[data-mobile-image="stack-below"][data-text-image-layout="inline-right"],.text-image-block[data-mobile-image="stack-below"][data-text-image-layout="float-left"],.text-image-block[data-mobile-image="stack-below"][data-text-image-layout="float-right"]{display:grid;grid-template-columns:1fr;gap:var(--tib-gap)}.text-image-block[data-mobile-image="stack-below"]>.text-image-media{float:none!important;order:2!important;margin-left:0!important;margin-right:0!important}.text-image-block[data-mobile-image="stack-below"]>.text-image-copy{order:1!important}}
/* END DEKOSKY TEXT-BLOCK IMAGE ENGINE */

/* DEKOSKY MOBILE HEADER ENGINE v2
   Mobile/tablet header is deliberately kept in normal document flow so an expanded
   menu can never cover page content. Desktop row/column navigation begins at 1241px. */
@media (max-width:1240px){
  html,body{overflow-x:hidden!important}
  .site-header{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    z-index:1000!important;
    overflow:visible!important;
    height:auto!important;
    min-height:0!important;
  }
  .site-header .container.nav{
    width:min(calc(100% - 36px),var(--max))!important;
    max-width:none!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"brand toggle" "menu menu"!important;
    align-items:center!important;
    column-gap:16px!important;
    row-gap:0!important;
    min-height:80px!important;
    height:auto!important;
    position:relative!important;
    overflow:visible!important;
  }
  .site-header .brand{
    grid-area:brand!important;
    min-width:0!important;
    justify-self:start!important;
    align-self:center!important;
  }
  .site-header .brand-logo{height:44px!important;max-width:min(190px,65vw)!important;width:auto!important}
  .site-header .brand-icon{width:46px!important;height:46px!important}
  .site-header .menu-btn{
    grid-area:toggle!important;
    display:grid!important;
    place-items:center!important;
    justify-self:end!important;
    align-self:center!important;
    position:relative!important;
    inset:auto!important;
    z-index:2!important;
  }
  /* Override desktop/editor inline layout declarations. The closed menu occupies no space. */
  .site-header .nav-links{
    grid-area:menu!important;
    display:none!important;
    position:static!important;
    inset:auto!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0 0 16px!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    transform:none!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    overflow:visible!important;
  }
  /* Open menu grows the header in document flow and therefore pushes the page down. */
  .site-header .nav-links.open{
    display:flex!important;
    position:static!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    border-top:1px solid var(--line)!important;
  }
  .site-header .nav-row{
    display:block!important;
    position:static!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    padding:6px 0!important;
    margin:0!important;
    border:0!important;
  }
  .site-header .nav-row + .nav-row:not([hidden]){border-top:1px solid var(--line)!important}
  .site-header .nav-row[hidden]{display:none!important}
  .site-header .nav-column{
    display:flex!important;
    position:static!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    gap:0!important;
    margin:0!important;
    padding:0!important;
  }
  .site-header .nav-column:empty{display:none!important}
  .site-header .nav-links a:not(.nav-cta){
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:44px!important;
    padding:11px 4px!important;
    margin:0!important;
    font-size:.91rem!important;
    line-height:1.3!important;
    white-space:normal!important;
    text-align:left!important;
  }
  .site-header .nav-links a:not(.nav-cta)::after{display:none!important}
  .site-header .nav-cta{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    margin:8px 0 4px!important;
    padding:11px 16px!important;
    text-align:center!important;
  }
  .site-header + main,.site-header ~ main{margin-top:0!important}
}
@media (max-width:680px){
  .site-header .container.nav{width:min(calc(100% - 30px),var(--max))!important;min-height:76px!important}
  .site-header .brand-logo{height:39px!important;max-width:min(181px,66vw)!important}
  .site-header .menu-btn{width:41px!important;height:41px!important}
}
@media (max-width:430px){
  .site-header .brand-logo{display:none!important}
  .site-header .brand-icon{display:block!important}
}
/* END DEKOSKY MOBILE HEADER ENGINE */
