:root{--primary-color: #17385f;--secondary-color: #b48855;--accent-color: #d99d48;--text-color: #243044;--text-light: #667085;--bg-color: #f6f2ec;--card-bg: #fffaf2;--header-bg: rgba(255, 250, 242, .9);--footer-bg: #13263f;--footer-text: #fff8ed;--section-bg: #fbfaf8;--border-color: rgba(23, 56, 95, .14);--input-bg: #fffdf9;--modal-bg: #fffaf2;--box-shadow: 0 18px 50px rgba(19, 38, 63, .13);--soft-shadow: 0 10px 24px rgba(19, 38, 63, .11);--surface-gradient: linear-gradient(145deg, rgba(255, 255, 255, .88), rgba(244, 232, 213, .72));--radius: 8px}[data-theme=dark]{--primary-color: #e0bc83;--secondary-color: #d8aa68;--accent-color: #f0c67b;--text-color: #f4efe7;--text-light: #c8c0b6;--bg-color: #101418;--card-bg: #1b1a18;--header-bg: rgba(16, 18, 20, .9);--footer-bg: #0c0e10;--footer-text: #f4efe7;--section-bg: #121518;--border-color: rgba(224, 188, 131, .18);--input-bg: #141617;--modal-bg: #1b1a18;--box-shadow: 0 22px 60px rgba(0, 0, 0, .42);--soft-shadow: 0 12px 28px rgba(0, 0, 0, .34);--surface-gradient: linear-gradient(145deg, rgba(39, 35, 30, .95), rgba(22, 24, 25, .96))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Roboto,sans-serif;color:var(--text-color);background:var(--bg-color);line-height:1.6;transition:background-color .42s ease,color .42s ease}button,input,textarea{font:inherit}a{color:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Playfair Display,serif;color:var(--primary-color);line-height:1.12}.site-shell,.site-header,.section,.team-card,.service-card,.contact-form,.info-box,.modal-content,input,textarea{transition:background-color .42s ease,border-color .42s ease,box-shadow .42s ease,color .42s ease}.container{width:min(1120px,calc(100% - 40px));margin:0 auto}.section{scroll-margin-top:92px;padding:92px 0;background:var(--section-bg)}.section:nth-of-type(2n){background:linear-gradient(135deg,rgba(180,136,85,.08),transparent 36%),var(--card-bg)}.site-header{position:sticky;top:0;z-index:100;padding:12px 0;background:var(--header-bg);border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.header-grid{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:14px;min-width:0;text-decoration:none}.brand img{width:54px;height:54px;object-fit:contain;border-radius:50%;box-shadow:var(--soft-shadow)}.brand h1{margin:0;font-size:clamp(1.1rem,2vw,1.55rem);letter-spacing:0;white-space:nowrap}nav ul{display:flex;align-items:center;gap:8px;margin:0;padding:0;list-style:none}nav a{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;color:var(--text-color);text-decoration:none;font-weight:700;border-radius:999px}nav a:after{position:absolute;right:14px;bottom:8px;left:14px;height:2px;content:"";background:var(--secondary-color);transform:scaleX(0);transform-origin:center;transition:transform .26s ease}nav a:hover:after,nav a.active:after{transform:scaleX(1)}.menu-toggle{display:none;width:44px;height:44px;color:var(--primary-color);background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;box-shadow:var(--soft-shadow)}.theme-toggle{position:fixed;right:22px;bottom:22px;z-index:500;display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 18px;color:#fff8ed;cursor:pointer;background:linear-gradient(135deg,var(--primary-color),#25384c);border:1px solid rgba(216,170,104,.24);border-radius:999px;box-shadow:0 14px 36px #0000003d}.hero-section{position:relative;min-height:690px;display:grid;align-items:center;overflow:hidden;color:#fff8ed;background:#14100d url(/laws.jpg) center/cover no-repeat}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#130f0ce6,#241a129e 58%,#130f0cd1),radial-gradient(circle at 75% 20%,rgba(216,170,104,.2),transparent 30%)}.hero-grid{position:relative;z-index:1;display:grid;align-items:center}.hero-grid-clean{grid-template-columns:minmax(0,.9fr)}.hero-content{max-width:840px}.hero-content h2{margin-bottom:22px;color:#fff8ed;font-size:clamp(2.8rem,7vw,5.6rem)}.hero-content p{max-width:720px;margin-bottom:34px;color:#fff8ede6;font-size:clamp(1.05rem,2vw,1.28rem)}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.credential-strip{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;color:var(--accent-color);font-weight:700;background:#14100d6b;border:1px solid rgba(216,170,104,.44);border-radius:999px;box-shadow:0 12px 34px #00000042;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cta-button,.submit-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;color:#fff8ed;font-weight:700;text-decoration:none;cursor:pointer;background:linear-gradient(135deg,var(--secondary-color),var(--accent-color));border:0;border-radius:6px;box-shadow:0 14px 26px #b488554d}.section-title{position:relative;margin-bottom:58px;text-align:center;font-size:clamp(2rem,4vw,2.8rem)}.section-title:after{position:absolute;bottom:-18px;left:50%;width:86px;height:3px;content:"";background:var(--secondary-color);transform:translate(-50%)}.team-grid,.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.team-card,.service-card,.contact-form,.info-box{color:var(--text-color);background:var(--surface-gradient);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--box-shadow),inset 0 1px #fff8ed14}.team-card,.service-card{position:relative;overflow:hidden;text-align:left;cursor:pointer}.team-card:before,.service-card:before,.contact-form:before{position:absolute;inset:0 0 auto;height:4px;content:"";background:linear-gradient(90deg,var(--secondary-color),var(--accent-color))}.team-card:hover,.service-card:hover,.info-box:hover{border-color:#b4885580;box-shadow:0 24px 70px #13263f2e,inset 0 1px #fff8ed1f}[data-theme=dark] .team-card:hover,[data-theme=dark] .service-card:hover,[data-theme=dark] .info-box:hover{box-shadow:0 28px 78px #00000085,inset 0 1px #fff8ed14}.profile-card{min-height:410px;padding:0}.profile-photo{position:relative;display:block;height:245px;overflow:hidden;background:#b488551f}.profile-photo:after{position:absolute;inset:auto 0 0;height:45%;content:"";background:linear-gradient(180deg,transparent,rgba(18,16,14,.64))}.profile-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.04);transition:transform .36s ease}.profile-card:hover .profile-photo img{transform:scale(1.045)}.profile-copy{display:grid;gap:8px;padding:24px}.profile-copy h3,.service-card h3{margin-bottom:0;font-size:1.35rem}.profile-role{color:var(--secondary-color);font-weight:700}.profile-specialization,.service-card p{color:var(--text-light)}.profile-cta,.service-cta{display:inline-flex;width:fit-content;margin-top:8px;color:var(--secondary-color);font-weight:800;opacity:0;transform:translateY(6px);transition:opacity .24s ease,transform .24s ease}.profile-card:hover .profile-cta,.service-card:hover .service-cta,.profile-card:focus-visible .profile-cta,.service-card:focus-visible .service-cta{opacity:1;transform:translateY(0)}.service-card{min-height:248px;padding:32px 26px}.service-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;margin-bottom:20px;color:var(--accent-color);background:#b4885521;border:1px solid rgba(180,136,85,.22);border-radius:50%}.service-icon i{font-size:1.55rem}.services-section{background:linear-gradient(180deg,rgba(23,56,95,.035),transparent 34%),var(--section-bg)}.view-more{margin-top:34px;text-align:center}.view-more button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;color:var(--secondary-color);font-weight:700;cursor:pointer;background:transparent;border:1px solid var(--secondary-color);border-radius:999px}.view-more button:hover{color:#fff8ed;background:var(--secondary-color)}.contact-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);gap:30px}.contact-form{position:relative;padding:34px;overflow:hidden}.form-group{margin-bottom:20px}.floating-field{position:relative}.floating-field input,.floating-field textarea{width:100%;padding:22px 14px 10px;color:var(--text-color);background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;outline:0;transition:border-color .22s ease,box-shadow .22s ease,background-color .22s ease}.floating-field textarea{min-height:150px;resize:vertical}.floating-field label{position:absolute;top:16px;left:14px;color:var(--text-light);font-weight:700;pointer-events:none;transform-origin:left;transition:transform .2s ease,color .2s ease}.floating-field input:focus,.floating-field textarea:focus{border-color:var(--secondary-color);box-shadow:0 0 0 4px #b4885526}.floating-field input:focus+label,.floating-field input:not(:placeholder-shown)+label,.floating-field textarea:focus+label,.floating-field textarea:not(:placeholder-shown)+label{color:var(--secondary-color);transform:translateY(-11px) scale(.78)}.submit-button{width:100%}.form-status{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;margin-top:18px;padding:12px 16px;font-weight:800;border-radius:6px}.form-status.success{color:#174a2a;background:#52b78829;border:1px solid rgba(82,183,136,.42)}.form-status.error{color:#8a2d2d;background:#dc5a5a21;border:1px solid rgba(220,90,90,.36)}.form-status i{display:inline-grid;place-items:center;width:26px;height:26px;color:#fff8ed;background:#2f9d5b;border-radius:50%}.contact-info{display:grid;gap:18px;align-content:start}.info-box{display:flex;gap:18px;min-height:118px;padding:24px}.info-box>i{flex:0 0 auto;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--secondary-color);background:#b488551f;border:1px solid rgba(180,136,85,.2);border-radius:50%}.info-box h4{margin-bottom:6px;font-size:1.16rem}.info-box a{color:var(--secondary-color);font-weight:700;text-decoration:none}.info-box p{margin-bottom:0;color:var(--text-light)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:28px;background:#0c0a08c7;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.modal-content{position:relative;width:min(880px,100%);max-height:calc(100vh - 56px);padding:38px;overflow:auto;color:var(--text-color);background:var(--surface-gradient);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:0 30px 90px #0000005c,inset 0 1px #fff8ed14}.service-modal{width:min(680px,100%);text-align:center}.close{position:absolute;top:16px;right:16px;display:inline-grid;place-items:center;width:42px;height:42px;color:var(--text-light);cursor:pointer;background:#b4885514;border:1px solid var(--border-color);border-radius:50%}.close:hover{color:var(--secondary-color)}.modal-header{margin-bottom:28px;text-align:center}.modal-header h2{margin-bottom:6px;font-size:clamp(1.8rem,4vw,2.4rem)}.position{color:var(--secondary-color);font-style:italic;font-weight:700}.modal-body{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:30px;align-items:center}.modal-image img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--radius);box-shadow:var(--soft-shadow)}.modal-details{text-align:left}.modal-details p,.modal-bio{margin-bottom:16px;color:var(--text-light)}.modal-bio{font-size:1.03rem}.modal-details strong{color:var(--secondary-color)}.service-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;margin-bottom:22px;color:var(--accent-color);background:#b4885521;border:1px solid rgba(180,136,85,.28);border-radius:50%}.service-modal-icon i{font-size:1.9rem}footer{padding:62px 0 28px;color:var(--footer-text);background:var(--footer-bg)}footer h3{margin-bottom:18px;color:#fff8ed;font-size:1.45rem}.footer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(180px,.7fr) minmax(260px,1fr);gap:38px;margin-bottom:38px}.footer-about p,.footer-contact p{color:#fff8edc2}.social-links{display:flex;gap:12px}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:#fff8ed;text-decoration:none;background:#fff8ed1a;border-radius:50%;transition:transform .22s ease,background .22s ease}.social-links a:hover{background:var(--secondary-color);transform:translateY(-2px)}.footer-links ul{margin:0;padding:0;list-style:none}.footer-links li{margin-bottom:10px}.footer-links a{color:#fff8edc7;text-decoration:none}.footer-links a:hover{color:var(--secondary-color)}.footer-contact p{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}.footer-contact i{margin-top:4px}.footer-bottom{padding-top:26px;text-align:center;border-top:1px solid rgba(255,248,237,.12)}.footer-bottom p{margin-bottom:8px;color:#fff8edb8}.credits{font-size:.92rem}.credits i{color:#ef6f6c}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.profile-card:hover .profile-photo img{transform:none}}@media(max-width:960px){.section{padding:74px 0}.hero-section{min-height:auto;padding:96px 0 74px}.hero-grid-clean,.contact-grid,.footer-grid{grid-template-columns:1fr}.team-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.container{width:min(100% - 28px,1120px)}.header-grid{flex-wrap:wrap}.brand img{width:46px;height:46px}.menu-toggle{display:inline-grid;place-items:center}nav{display:none;flex-basis:100%}nav.open{display:block}nav ul{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding-top:12px}nav a{justify-content:center;background:var(--card-bg);border:1px solid var(--border-color)}.hero-content h2{font-size:clamp(2.45rem,13vw,4.4rem)}.hero-actions{align-items:stretch;flex-direction:column}.cta-button,.credential-strip{justify-content:center;width:100%}.team-grid,.service-grid{grid-template-columns:1fr}.profile-cta,.service-cta{opacity:1;transform:translateY(0)}.profile-card{min-height:auto}.profile-photo{height:285px}.contact-form{padding:24px}.modal{padding:16px}.modal-content{padding:28px 20px}.modal-body{grid-template-columns:1fr}.modal-image{max-width:300px;margin:0 auto}.theme-toggle{right:16px;bottom:16px;width:48px;padding:0;border-radius:50%}.theme-toggle span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}@media(max-width:420px){.brand h1{font-size:1rem}nav ul{grid-template-columns:1fr}.section-title{margin-bottom:46px}.info-box{flex-direction:column}}
