:root{--espresso:#211612;--brown:#563723;--warm:#77513a;--gold:#b28a27;--gold-light:#d1af60;--ivory:#f5f0e8;--sand:#ded2c0;--ink:#302019}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:"Futura Lt BT",Futura,Tahoma,sans-serif;font-size:16px;line-height:1.7}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:4;background:#fff;padding:.5rem 1rem}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.4rem,6vw,6rem);background:#fff;position:sticky;top:0;z-index:3;border-bottom:1px solid #dacbb9}.brand{display:flex;align-items:center;color:inherit;text-decoration:none}.logo{display:block;width:clamp(170px,18vw,250px);height:auto}nav{display:flex;gap:clamp(1rem,2.4vw,2.6rem)}nav a{color:var(--ink);text-decoration:none;font-size:.73rem;letter-spacing:.06em}nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:none;border:0;font-family:inherit;color:var(--ink)}.hero{min-height:calc(100vh - 88px);position:relative;overflow:hidden;color:var(--ivory);display:grid;align-items:center;padding:8rem clamp(1.4rem,12vw,12rem);background:radial-gradient(circle at 62% 45%,#79533b 0%,#4b2e20 31%,#211612 72%)}.hero::after{content:"";position:absolute;inset:1.2rem;border:1px solid rgba(210,176,96,.28);pointer-events:none}.hero-content{position:relative;z-index:1;max-width:43rem}.eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.22em;font-size:.68rem;font-weight:600;margin:0 0 1.25rem}.hero h1,h2,h3{font-family:"Felix Titling",Georgia,serif;font-weight:400}.hero h1{font-size:clamp(3.5rem,7.5vw,7rem);line-height:.85;letter-spacing:-.035em;margin:0}.hero h1 em{color:var(--gold-light);font-style:italic}.hero-copy{max-width:31rem;font-size:1rem;line-height:1.75;margin:2.3rem 0}.button{display:inline-flex;align-items:center;gap:1rem;padding:.92rem 1.25rem;text-decoration:none;font-size:.71rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{color:var(--ivory);border:1px solid rgba(255,255,255,.5)}.button-light:hover{background:rgba(255,255,255,.1)}.hero-lines{position:absolute;inset:0;background:radial-gradient(ellipse 53% 65% at 100% 100%,transparent 0 50%,rgba(211,176,94,.27) 50.1% 50.25%,transparent 50.35% 58%,rgba(211,176,94,.18) 58.1% 58.25%,transparent 58.35%);transform:rotate(-16deg) scale(1.2)}.section{padding:clamp(5rem,10vw,9rem) clamp(1.4rem,10vw,10rem)}.intro{display:grid;grid-template-columns:.65fr 1.35fr .95fr;gap:clamp(2rem,5vw,6rem);align-items:start}.section-label{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:#856c4e;padding-top:.65rem}.intro-copy h2,.practice h2,.profile h2,.contact h2,.locations h2,.awards h2{font-size:clamp(2.65rem,4.6vw,4.8rem);line-height:.95;letter-spacing:-.025em;margin:0 0 1.7rem}.intro-copy p{margin:0 0 1.25rem;max-width:38rem}.office-image{margin:0;position:relative}.office-image::before{content:"";position:absolute;inset:-.8rem .8rem .8rem -.8rem;border:1px solid var(--gold-light);z-index:-1}.office-image img{width:100%;display:block;min-height:310px;object-fit:cover}.locations{background:#fff;display:grid;grid-template-columns:.55fr 1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start}.locations-copy p{max-width:35rem}.city-list{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:2rem}.city-list span{border:1px solid #c9b69d;padding:.6rem .8rem;font-family:"Felix Titling",Georgia,serif;font-size:1.1rem}.city-list small{font:600 .55rem "Futura Lt BT",sans-serif;letter-spacing:.12em;color:var(--gold)}.building-image{grid-column:2;margin:0}.building-image img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}.building-image figcaption{font-size:.68rem;letter-spacing:.06em;margin-top:.65rem;color:#755e4c}.map-wrap{grid-column:3;height:100%;min-height:340px;border:1px solid #cfbea8}.map-wrap iframe{display:block;width:100%;height:100%;min-height:340px;border:0}.practice{background:#e9e0d4;display:grid;grid-template-columns:.65fr 1.35fr;gap:2rem}.practice-heading p{max-width:30rem;margin:0 0 3.5rem}.practice-grid{grid-column:2;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #c9b69d}.practice-grid article{padding:1.7rem 1.2rem 1.7rem 0;border-bottom:1px solid #c9b69d}.practice-grid article:nth-child(odd){border-right:1px solid #c9b69d;padding-right:1.7rem}.practice-grid article:nth-child(even){padding-left:1.7rem}.practice-grid span{font-size:.72rem;color:var(--gold);letter-spacing:.1em}.practice-grid h3{font-size:2.1rem;line-height:1;margin:1.25rem 0 .7rem}.practice-grid p{font-size:.88rem;line-height:1.65;margin:0}.profile{background:var(--espresso);color:var(--ivory);display:grid;grid-template-columns:minmax(250px,.85fr) 1.15fr;gap:clamp(3rem,7vw,9rem);align-items:center}.profile-image-wrap{height:100%;min-height:580px;position:relative}.profile-image-wrap::after{content:"";position:absolute;inset:1rem;border:1px solid rgba(210,176,96,.5);pointer-events:none}.profile-image{width:100%;height:100%;min-height:580px;object-fit:cover;object-position:50% center;filter:saturate(.72) sepia(.1)}.dark{margin-bottom:.7rem}.profile h2{color:var(--gold-light);margin-bottom:1.5rem}.profile-content>p:not(.eyebrow):not(.profile-note){max-width:43rem}.profile dl{margin:2.3rem 0 1.2rem;border-top:1px solid rgba(232,216,191,.25)}.profile dl div{padding:1rem 0;border-bottom:1px solid rgba(232,216,191,.25)}.profile dt{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-light);margin-bottom:.25rem}.profile dd{margin:0;font-size:.85rem;line-height:1.6}.teaching-history{margin-top:2.2rem}.teaching-history .eyebrow{margin-bottom:.65rem}.teaching-history ul{margin:0;padding-left:1.15rem;font-size:.84rem;line-height:1.7}.teaching-history li+li{margin-top:.45rem}.awards{background:#e9e0d4;display:grid;grid-template-columns:.65fr 1.35fr;gap:2rem}.awards-heading p{max-width:31rem;margin:0 0 2.7rem}.award-list{grid-column:2;margin:0;padding:0;list-style:none;border-top:1px solid #c9b69d}.award-list li{display:grid;grid-template-columns:5.8rem 1fr;gap:1rem;padding:1.35rem 0;border-bottom:1px solid #c9b69d}.award-list time{font:400 1.45rem/1 "Felix Titling",Georgia,serif;color:var(--gold)}.award-list h3{font-size:1.55rem;line-height:1.1;margin:0 0 .35rem}.award-list p{font-size:.82rem;line-height:1.55;margin:0}.contact{background:radial-gradient(circle at 43% 50%,#70482f,#3d251a 52%,#211612);padding:clamp(5rem,11vw,10rem) 1.4rem;text-align:center;color:var(--ivory);position:relative;overflow:hidden}.contact-inner{position:relative;max-width:42rem;margin:auto}.contact h2{font-size:clamp(3.7rem,6vw,6rem);margin-bottom:1rem}.contact-inner>p:not(.eyebrow):not(.contact-note){margin:0 auto 2rem}.button-gold{background:var(--gold);color:#271a12}.button-gold:hover{background:var(--gold-light)}.contact-note{font-size:.68rem;color:#dccbaf;margin:1.75rem 0 0}footer{padding:2.4rem clamp(1.4rem,6vw,6rem);display:grid;grid-template-columns:auto minmax(250px,1fr) auto;align-items:center;gap:2rem;background:#fff;color:var(--ink);border-top:1px solid #dacbb9}footer p,footer address{font-family:Tahoma,Arial,sans-serif;font-style:normal;font-size:.68rem;letter-spacing:.04em;margin:0;line-height:1.55}.footer-details{max-width:39rem}.footer-details p{font-weight:700;margin-bottom:.3rem}@media(max-width:760px){.topbar{height:72px;padding:0 1.3rem}.logo{width:178px}.menu-toggle{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}nav{display:none;position:absolute;top:72px;right:0;left:0;background:#fff;padding:1rem 1.3rem 1.4rem;flex-direction:column;border-bottom:1px solid #dacbb9;gap:1rem}nav.open{display:flex}.hero{min-height:680px;padding:6rem 1.7rem}.hero::after{inset:.7rem}.hero h1{font-size:clamp(3.35rem,15vw,5rem)}.section{padding:4.7rem 1.4rem}.intro,.practice,.locations,.awards{grid-template-columns:1fr;gap:1.8rem}.office-image{max-width:400px;margin:1rem auto 0;width:92%}.building-image,.map-wrap,.practice-grid,.award-list{grid-column:auto}.map-wrap,.map-wrap iframe{min-height:300px}.practice-grid{grid-template-columns:1fr}.practice-grid article:nth-child(odd),.practice-grid article:nth-child(even){border-right:0;padding-left:0;padding-right:0}.profile{grid-template-columns:1fr;padding:0 0 4.7rem;gap:3rem}.profile-image-wrap,.profile-image{min-height:460px}.profile-content{padding:0 1.4rem}footer{display:flex;flex-direction:column;align-items:flex-start;gap:1.4rem}}
