:root{--navy:#2f3448;--navy-dark:#24283a;--gold:#bca671;--gold-light:#d8c99d;--ink:#252833;--muted:#6f7280;--cream:#f6f2e9;--paper:#fff;--line:#ded9cc;--shadow:0 20px 60px rgba(32,35,48,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Segoe UI",Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 44px));margin:0 auto}.skip-link{position:fixed;top:-100px;left:15px;z-index:999;background:#fff;padding:10px 15px;border-radius:6px}.skip-link:focus{top:15px}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.06)}.site-header.compact{position:relative}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand img{width:265px;height:auto}.main-nav,.detail-nav{display:flex;align-items:center;gap:30px;font-size:14px}.main-nav>a,.detail-nav>a{position:relative;font-weight:600}.main-nav>a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);transition:.25s}.main-nav>a:hover:after{right:0}.language-switch{display:flex;gap:7px;align-items:center;margin-left:6px;font-size:12px}.language-switch a{opacity:.45}.language-switch a.active{opacity:1;color:var(--gold);font-weight:800}.menu-toggle{display:none;border:0;background:transparent;padding:7px}.menu-toggle span{display:block;width:26px;height:2px;background:var(--navy);margin:5px}.hero{position:relative;overflow:hidden;background:linear-gradient(118deg,var(--navy-dark) 0%,var(--navy) 62%,#42485f 100%);color:#fff;min-height:630px}.hero-noise{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(90deg,#000,transparent)}.hero:after{content:"";position:absolute;right:-170px;top:-260px;width:720px;height:720px;border:1px solid rgba(216,201,157,.23);border-radius:50%;box-shadow:0 0 0 85px rgba(216,201,157,.035),0 0 0 170px rgba(216,201,157,.025)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;min-height:630px;gap:40px}.hero-copy{padding:70px 0}.eyebrow{font-size:12px;letter-spacing:.32em;font-weight:800;color:var(--gold);text-transform:uppercase;margin-bottom:16px}.eyebrow.light{color:var(--gold-light)}.hero h1,.section h2,.detail-hero h1,.member-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.03em}.hero h1{font-size:clamp(48px,6vw,78px);line-height:1.02;margin:0 0 24px;max-width:760px}.hero-copy>p{max-width:690px;font-size:18px;color:rgba(255,255,255,.8);margin:0 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border-radius:2px;font-size:13px;font-weight:800;letter-spacing:.04em;transition:.25s;border:1px solid transparent;cursor:pointer}.btn-gold{background:var(--gold);color:#fff}.btn-gold:hover{background:#aa925b;transform:translateY(-2px)}.btn-outline{border-color:rgba(255,255,255,.45);color:#fff}.btn-outline:hover{background:#fff;color:var(--navy)}.btn.wide{width:100%;justify-content:space-between}.stats{display:flex;gap:46px;margin-top:54px}.stats div{display:flex;flex-direction:column}.stats strong{font-family:Georgia,serif;font-size:28px;color:var(--gold-light);font-weight:500}.stats span{font-size:9px;letter-spacing:.16em;color:rgba(255,255,255,.64)}.hero-art{align-self:stretch;display:flex;align-items:flex-end;justify-content:center;position:relative}.hero-art img{width:540px;max-height:580px;object-fit:contain;filter:drop-shadow(0 20px 30px rgba(0,0,0,.25))}.visual-band{height:175px;display:grid;grid-template-columns:1fr 1fr 1.5fr;overflow:hidden}.visual-panel{background-size:cover;background-position:center;position:relative}.visual-panel:after{content:"";position:absolute;inset:0;background:rgba(47,52,72,.12)}.visual-panel.books{background-image:url('../images/band-books.svg')}.visual-panel.justice{background-image:url('../images/band-justice.svg')}.visual-panel.city{background-image:url('../images/band-city.svg')}.section{padding:105px 0}.about{background:#fff}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}.about-image{position:relative}.about-image:before{content:"";position:absolute;left:-20px;bottom:-20px;width:65%;height:65%;border:1px solid var(--gold);z-index:0}.about-image img{position:relative;z-index:1;width:100%;aspect-ratio:1/1;object-fit:cover;box-shadow:var(--shadow)}.section h2{font-size:clamp(38px,4.5vw,58px);line-height:1.12;margin:0 0 26px}.rich-text p,.about-copy>p{color:var(--muted);font-size:16px}.section-links{display:flex;gap:30px;margin-top:35px}.section-links a{font-size:13px;font-weight:800;border-bottom:1px solid var(--gold);padding-bottom:6px}.section-links span{color:var(--gold)}.practice-section{background:var(--cream)}.section-heading{max-width:780px;margin-bottom:55px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading p{color:var(--muted);font-size:17px}.practice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.practice-card{min-height:270px;background:#fff;border:1px solid #e3ddcf;padding:30px 24px;display:flex;flex-direction:column;transition:.3s;position:relative;overflow:hidden}.practice-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:0;background:var(--gold);transition:.3s}.practice-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}.practice-card:hover:before{height:100%}.practice-icon{font-family:Georgia,serif;color:var(--gold);font-size:31px}.practice-card h3{font-family:Georgia,serif;font-size:21px;line-height:1.25;margin:20px 0 11px}.practice-card p{font-size:14px;color:var(--muted);margin:0 0 20px}.card-link{margin-top:auto;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--gold)}.team-section{background:#fff}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.team-card{border:1px solid var(--line);background:#fff;transition:.3s}.team-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.team-photo{display:block;background:linear-gradient(135deg,#f3eee3,#e5dcc9);overflow:hidden}.team-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:.45s}.team-card:hover .team-photo img{transform:scale(1.025)}.team-info{background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:18px 20px;min-height:92px}.team-info span{font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold-light)}.team-info h3{margin:3px 0 0;font-family:Georgia,serif;font-weight:500;font-size:18px}.team-info .mail{width:34px;height:34px;border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;border-radius:50%;color:var(--gold-light)}.contact-section{background:var(--navy);color:#fff;padding:105px 0 0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start;padding-bottom:90px}.contact-copy h2{font-family:Georgia,serif;font-size:clamp(38px,4.6vw,60px);line-height:1.08;font-weight:500;margin:0 0 22px}.contact-copy>p{color:rgba(255,255,255,.72);font-size:16px}.contact-details{display:grid;gap:20px;margin-top:42px}.contact-details>a,.contact-details>div{display:flex;gap:16px;align-items:flex-start;color:rgba(255,255,255,.9)}.contact-details>*>span{width:36px;height:36px;border:1px solid rgba(216,201,157,.5);display:grid;place-items:center;color:var(--gold-light);flex:0 0 36px}.contact-details small{display:block;font-size:9px;letter-spacing:.17em;color:var(--gold-light);margin-bottom:4px}.linkedin{display:inline-flex;margin-top:30px;border:1px solid rgba(255,255,255,.25);padding:9px 13px;font-size:12px}.contact-form-wrap{background:#fff;color:var(--ink);padding:38px 42px;box-shadow:0 30px 80px rgba(0,0,0,.2)}.form-heading p{color:var(--muted);margin-top:0}.contact-form{display:grid;gap:16px}.contact-form label>span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#555b68;display:block;margin-bottom:6px}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #d6d3ca;padding:12px 0;font:inherit;color:var(--ink);background:transparent;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.privacy-note{font-size:11px;color:#888;line-height:1.5;margin:0}.hp-field{position:absolute;left:-10000px}.alert{padding:13px 15px;margin-bottom:18px;font-size:13px}.alert.success{background:#edf8f1;color:#246841}.alert.error{background:#fff0f0;color:#9a2d2d}.alert ul{margin:0;padding-left:18px}.map-wrap{height:390px}.map-wrap iframe{width:100%;height:100%;border:0;filter:grayscale(1) contrast(.92)}.site-footer{background:#202433;color:rgba(255,255,255,.7);padding:32px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.footer-brand img{width:210px;filter:brightness(0) invert(1)}.footer-inner>div{display:flex;gap:18px}.admin-link{opacity:.25}.detail-page,.member-page{min-height:70vh}.detail-hero,.member-hero{background:linear-gradient(120deg,var(--navy-dark),var(--navy));color:#fff;padding:90px 0}.detail-hero .container{max-width:900px}.detail-icon{font-family:Georgia,serif;font-size:48px;color:var(--gold-light)}.detail-hero h1,.member-hero h1{font-size:clamp(44px,6vw,72px);margin:15px 0 20px}.detail-hero p,.member-hero p{font-size:19px;color:rgba(255,255,255,.75);max-width:780px}.detail-content{max-width:900px}.detail-image{width:100%;max-height:420px;object-fit:cover;margin-bottom:40px}.prose{font-family:Georgia,serif;font-size:20px;line-height:1.9;color:#444853;margin-bottom:35px}.member-hero-grid{display:grid;grid-template-columns:350px 1fr;gap:70px;align-items:center}.member-photo-large{background:var(--cream);border:1px solid rgba(216,201,157,.5)}.member-photo-large img{width:100%;aspect-ratio:4/5;object-fit:cover}.member-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px}.member-links a{border-bottom:1px solid var(--gold);font-size:13px}.member-details{display:grid;grid-template-columns:1fr 1fr;gap:24px}.member-detail-card{border:1px solid var(--line);padding:28px}.member-detail-card h2{font-size:23px;margin-bottom:14px}.member-detail-card p{color:var(--muted);margin:0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.reveal.delay{transition-delay:.12s}@media(max-width:1050px){.practice-grid{grid-template-columns:repeat(3,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr .55fr}.hero-art img{width:390px}.about-grid{gap:45px}.contact-grid{gap:45px}}@media(max-width:820px){.container{width:min(100% - 30px,1180px)}.nav-wrap{height:70px}.brand img{width:215px}.menu-toggle{display:block}.main-nav{position:fixed;inset:70px 0 0;background:#fff;display:flex;flex-direction:column;align-items:flex-start;padding:35px 25px;gap:22px;transform:translateX(100%);transition:.3s}.main-nav.open{transform:none}.main-nav>a{font-size:19px}.language-switch{margin:12px 0 0}.hero,.hero-grid{min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:80px 0}.hero-art{display:none}.stats{gap:25px;flex-wrap:wrap}.visual-band{height:120px}.about-grid{grid-template-columns:1fr}.about-image{max-width:600px}.practice-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}.contact-form-wrap{padding:30px}.member-hero-grid{grid-template-columns:260px 1fr;gap:35px}}@media(max-width:560px){.section{padding:75px 0}.hero-copy{padding:65px 0}.hero h1{font-size:46px}.hero-copy>p{font-size:16px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stats strong{font-size:24px}.visual-band{grid-template-columns:1fr 1fr}.visual-panel.city{display:none}.practice-grid,.team-grid,.member-details{grid-template-columns:1fr}.practice-card{min-height:230px}.form-row{grid-template-columns:1fr;gap:16px}.contact-form-wrap{padding:25px 20px}.contact-grid{padding-bottom:65px}.footer-inner{flex-direction:column;text-align:center}.footer-brand img{width:185px}.detail-nav{gap:14px;font-size:12px}.member-hero-grid{grid-template-columns:1fr}.member-photo-large{max-width:270px}.section-links{flex-direction:column;gap:15px}.about-image:before{display:none}}
