
:root{--navy:#10335f;--deep:#0a274f;--blue:#2c78aa;--sky:#dceffa;--ice:#eef8fe;--white:#fff;--text:#173858;--muted:#4e657a;--line:#cde4f3;--gold:#b59566;--radius:18px;--shadow:0 17px 40px rgba(18,58,99,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;color:var(--text);background:var(--white);font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.64}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--deep)}h1,h2,.serif{font-family:Georgia,"Times New Roman","Noto Serif CJK SC",serif;line-height:1.12;font-weight:600}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #0679bd;outline-offset:4px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}img{max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}.container{width:min(1310px,calc(100% - 56px));margin-inline:auto}.skip{position:absolute;top:-100px;left:1rem;padding:12px 20px;background:var(--deep);color:white;z-index:1000}.skip:focus{top:1rem}.site-header{position:sticky;top:0;background:rgba(255,255,255,.98);z-index:50;border-bottom:1px solid #e4ecf2;box-shadow:0 2px 10px rgba(20,59,96,.03)}.header-inner{min-height:99px;display:flex;align-items:center;gap:35px;justify-content:space-between}.brand{display:flex;align-items:center;flex:none;max-width:240px}.brand img{display:block;width:184px;max-height:87px;object-fit:contain}.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(20px,3vw,43px);flex:1}.navlink{position:relative;text-decoration:none;color:var(--deep);font-weight:600;font-size:.95rem;white-space:nowrap}.navlink::after{content:"";position:absolute;left:0;right:100%;bottom:-10px;height:2px;background:#4da9db;transition:right .2s}.navlink:hover::after,.navlink[aria-current="page"]::after{right:0}.lang-switch{display:inline-flex;border:1px solid #98cae9;border-radius:40px;overflow:hidden;white-space:nowrap;flex:none}.lang-switch button{border:0;background:transparent;color:var(--deep);font-size:.9rem;font-weight:650;padding:7px 14px;line-height:1.25}.lang-switch button[aria-pressed="true"]{background:var(--deep);color:white;border-radius:40px}.mobile-menu-button{display:none;border:1px solid var(--line);background:white;color:var(--deep);padding:8px 10px;border-radius:9px}.mobile-menu-button svg{width:24px;height:24px}.mobile-nav{display:none}.icon{width:23px;height:23px;flex:none}.hero{position:relative;isolation:isolate;min-height:525px;background:linear-gradient(90deg,#def1ff 0%,#d4ebfa 54%,#b5daf4 100%);overflow:hidden}.hero-visual{position:absolute;inset:0 0 0 41%;background-image:url('court-and-scales.webp');background-size:cover;background-position:50% 50%;z-index:-2}.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#d9efff 0%,rgba(222,242,255,.99) 22%,rgba(223,242,254,.86) 40%,rgba(222,240,252,.07) 68%,transparent 100%)}.hero-content{padding-block:95px 87px;max-width:1310px}.hero-copy{max-width:630px}.eyebrow{font-size:.79rem;text-transform:uppercase;letter-spacing:.22em;font-weight:750;color:#327ba9;margin-bottom:19px}.hero h1{font-size:clamp(2.9rem,5vw,4.7rem);letter-spacing:-.04em;margin:0 0 21px;color:#0b2f60}.hero-lead{font-size:clamp(1.17rem,1.85vw,1.65rem);font-weight:400;line-height:1.48;max-width:580px;color:#163d69;margin-bottom:20px}.location-line{display:flex;align-items:center;gap:9px;font-size:1rem;font-weight:650;color:#19426c;margin:20px 0 28px}.location-line .icon{width:18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--deep);border-radius:12px;padding:13px 21px;background:var(--deep);color:white;font-weight:700;text-decoration:none;transition:background .2s,transform .2s;min-height:47px}.button:hover{background:#24568a;transform:translateY(-1px)}.button .icon{width:19px;height:19px}.button-secondary{background:transparent;color:var(--deep)}.button-secondary:hover{background:#e6f4ff}.section{padding:79px 0}.section-light{background:linear-gradient(180deg,#edf9ff,#dff1fd)}.section-title{text-align:center;margin:0 0 34px;font-size:clamp(2.05rem,3.2vw,3.1rem);letter-spacing:-.025em}.title-line{display:flex;align-items:center;justify-content:center;gap:26px}.title-line:before,.title-line:after{content:"";width:min(120px,16%);height:2px;background:#92cde9}.practice-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:13px}.practice-card{padding:24px 9px 22px;min-height:176px;border:1px solid #d4e9f7;background:rgba(255,255,255,.97);border-radius:15px;box-shadow:0 10px 25px rgba(9,48,89,.055);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-direction:column;text-align:center;color:var(--deep);transition:transform .2s,border-color .2s,box-shadow .2s;width:100%}.practice-card:hover,.practice-card[aria-expanded="true"]{transform:translateY(-3px);border-color:#5aabd9;box-shadow:0 15px 31px rgba(16,58,96,.13)}.practice-card svg{width:39px;height:39px;stroke:#14518a}.practice-title{font-size:.99rem;font-weight:750;line-height:1.33;min-height:43px;display:flex;align-items:center;justify-content:center}.card-accent{width:43px;height:3px;border-radius:10px;background:#7cc7f1}.practice-detail{margin-top:23px;padding:26px 28px;background:white;border:1px solid #bee0f2;border-left:4px solid #3c93c4;border-radius:15px;box-shadow:var(--shadow)}.practice-detail h3{font:600 1.5rem Georgia,"Times New Roman",serif;margin:0 0 9px}.practice-detail p{margin:0 0 15px;max-width:920px}.practice-detail .detail-action{font-size:.9rem;font-weight:750;text-decoration:underline;text-underline-offset:3px;color:#1b6699}.about-grid{display:grid;grid-template-columns:.8fr 1.45fr;gap:65px;align-items:start}.about-side{border-left:4px solid #4ea2d4;padding-left:22px}.about-side p{color:#3b668c;font-weight:700;letter-spacing:.06em;font-size:.78rem;text-transform:uppercase}.about h2,.contact h2,.privacy h1,.legal h1{font-size:clamp(2rem,3vw,2.9rem)}.about h2{margin:10px 0 0}.about-copy p{font-size:1.055rem;color:#344e67;margin-bottom:17px}.about-copy p:last-child{margin-bottom:0}.contact{background:#f6fbff}.contact-grid{display:grid;grid-template-columns: minmax(260px,.67fr) minmax(0,1.33fr);gap:40px;align-items:start}.contact-info{padding:15px 12px 0 0}.contact-info h2{margin:0 0 19px}.contact-info p{color:var(--muted)}.address{display:flex;gap:12px;align-items:flex-start;margin-top:28px;color:var(--deep);font-weight:700}.address svg{color:#3384b7;margin-top:2px}.form-card{background:white;border:1px solid #dbeaf5;border-radius:22px;padding:32px;box-shadow:0 20px 50px rgba(30,79,115,.065)}.form-heading{display:flex;gap:11px;align-items:center;margin-bottom:7px}.form-heading svg{color:#2f83b3;width:27px;height:27px}.form-heading h3{font-family:Georgia,"Times New Roman",serif;font-size:1.68rem;margin:0}.form-intro{font-size:.9rem;color:var(--muted);margin:0 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:.9rem;font-weight:700;color:var(--deep)}.field input,.field select{width:100%;border:1px solid #b8cddb;border-radius:10px;padding:12px 13px;background:white;color:#173857;min-height:48px}.field input:focus,.field select:focus{border-color:#2576ad}.full-row{grid-column:1/-1}.notice{padding:13px 16px;margin:4px 0 15px;background:#f0f8fe;border-radius:10px;border-left:3px solid #74b1d9;font-size:.84rem;color:#385a76}.notice a{color:#145f93;font-weight:700;text-underline-offset:3px}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.form-actions .button{white-space:nowrap}.status-message{font-size:.91rem;font-weight:600;color:#214f72;margin:10px 0;min-height:25px}.status-message[data-state="error"]{color:#a42626}.status-message[data-state="success"]{color:#176b4a}.service-unavailable{background:#fff8e8;color:#624d25;border:1px solid #e7cf92;border-radius:11px;padding:16px 17px;font-size:.93rem}.turnstile-slot{min-height:1px}.footer{background:linear-gradient(165deg,#e4f4ff 5%,#f5fbff 50%,#d6ecfb 100%);border-top:1px solid #cde2f2;padding:41px 0 26px}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand{display:flex;gap:12px;flex-direction:column}.footer-brand strong{font:600 1.7rem Georgia,serif;color:#0a2d5e}.footer-brand small,.footer-disclosures{color:#365878;font-size:.83rem}.footer-disclosures{text-align:right}.footer-disclosures p{margin:5px 0}.footer-links{display:flex;gap:17px;justify-content:flex-end;flex-wrap:wrap;margin:9px 0}.footer a{color:#245a8e;text-underline-offset:3px}.footer-copy{font-size:.79rem;color:#5c7287}.inner-hero{padding:60px 0 48px;background:linear-gradient(120deg,#dfedf9,#f7fcff)}.inner-hero h1{margin:0 0 12px}.inner-hero p{max-width:800px;color:#49627a;font-size:1.07rem;margin:0}.prose{max-width:925px;margin:0 auto;font-size:1rem}.prose h2{font-family:Georgia,serif;font-size:1.55rem;margin:29px 0 10px}.prose p,.prose li{color:#3b5369}.prose ul{padding-left:1.4rem}.prose a{color:#176a9e;font-weight:600}.policy-box{border:1px solid #d3e6f5;border-radius:18px;padding:25px;background:white;margin-top:30px}.policy-box h2{margin-top:0}.legal-statement{background:#edf7fe;padding:20px 25px;border-radius:13px;border-left:3px solid #6cb6df;margin:20px 0}.legal-statement strong{font-weight:700}.lang-switch button:hover{filter:brightness(.96)}[hidden]{display:none!important}html[data-lang="en"] [data-lang-only="zh"],html[data-lang="zh"] [data-lang-only="en"]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#services,#about,#contact{scroll-margin-top:110px}
@media(max-width:1260px){.practice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.practice-card{min-height:157px}.header-inner{gap:22px}.desktop-nav{gap:18px}.hero-visual{left:40%}.hero-copy{max-width:570px}}
@media(max-width:930px){.desktop-nav{display:none}.mobile-menu-button{display:flex}.header-inner{min-height:78px}.brand img{width:150px;max-height:65px}.header-right{display:flex;gap:12px;align-items:center}.mobile-nav[data-open="true"]{display:flex;flex-direction:column;padding:12px 26px 25px;gap:15px;border-top:1px solid var(--line)}.mobile-nav a{text-decoration:none;font-weight:650}.hero{min-height:490px}.hero-content{padding-block:80px}.hero-visual{left:32%;background-position:61% 50%}.hero::before{background:linear-gradient(90deg,#def1ff 0%,rgba(222,241,255,.98) 31%,rgba(222,241,255,.6) 70%,rgba(222,241,255,.05) 100%)}.about-grid{grid-template-columns:1fr;gap:20px}.about-side{border-left:3px solid #4ea2d4}.contact-grid{grid-template-columns:1fr;gap:25px}.footer-grid{align-items:flex-start}}
@media(max-width:650px){.container{width:min(100% - 34px,1310px)}.header-inner{min-height:75px;gap:10px}.brand img{width:126px;max-height:65px}.lang-switch button{padding:7px 10px;font-size:.77rem}.mobile-menu-button{padding:7px}.hero{min-height:unset}.hero-visual{inset:0 0 auto 0;height:255px;background-position:70% 46%}.hero::before{background:linear-gradient(180deg,rgba(213,236,251,.15) 0%,#deeffc 252px,#deeffc 100%)}.hero-content{padding-top:284px;padding-bottom:58px}.eyebrow{margin-bottom:10px}.hero h1{font-size:clamp(2.5rem,10vw,3.8rem);margin-bottom:16px}.hero-lead{font-size:1.16rem}.location-line{font-size:.95rem}.section{padding:55px 0}.section-title{font-size:2.1rem;margin-bottom:24px}.title-line{gap:10px}.title-line:before,.title-line:after{width:23px}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.practice-card{padding:19px 9px 17px;min-height:150px}.practice-card svg{width:35px;height:35px}.practice-title{font-size:.93rem;min-height:42px}.practice-detail{padding:20px}.about-copy p{font-size:1rem}.form-card{padding:22px 19px}.form-grid{grid-template-columns:1fr;gap:0}.form-heading h3{font-size:1.42rem}.footer-grid{flex-direction:column}.footer-disclosures{text-align:left}.footer-links{justify-content:flex-start}.inner-hero{padding:45px 0 36px}.contact-info{padding:0}.button{width:auto}}
@media(max-width:390px){.brand img{width:109px}.lang-switch button{padding:6px 7px}.header-right{gap:7px}.hero h1{font-size:2.45rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
