@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap');

:root{--navy:#152333;--navy2:#213448;--cream:#f8f6f1;--ivory:#eee9df;--gold:#b49b6d;--goldlight:#d8c9a6;--ink:#263343;--muted:#697583;--line:#deded9;--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;color:var(--ink);font-family:var(--sans);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.22em;font-weight:700;color:#9e8356;display:flex;align-items:center;gap:13px}
.eyebrow:before{content:'';width:26px;height:1px;background:currentColor}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);line-height:1.17;font-weight:500;letter-spacing:-.025em}
h2{font-size:clamp(31px,3.6vw,48px)}h3{font-size:24px}
.section{padding:100px 0}.section-heading{max-width:730px;margin-bottom:43px}.section-heading h2{margin:15px 0 16px}.section-heading p{color:var(--muted);margin:0;max-width:690px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:51px;padding:13px 23px;border:1px solid transparent;font-weight:700;font-size:13px;letter-spacing:.025em;transition:transform .2s,background .2s,color .2s,border-color .2s}
.button:hover{transform:translateY(-2px)}.button-gold{background:var(--goldlight);color:var(--navy)}.button-gold:hover{background:#ebdcb9}.button-outline{border-color:rgba(255,255,255,.46);color:#fff}.button-outline:hover{background:rgba(255,255,255,.09)}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:var(--navy2)}
.site-header{position:sticky;top:0;z-index:20;background:rgba(248,246,241,.96);border-bottom:1px solid #e7e4de;backdrop-filter:blur(14px)}
.topline{background:var(--navy);color:#d0d6db;font-size:11px;letter-spacing:.04em;text-align:center;padding:7px 15px}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:45px;height:45px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:21px;letter-spacing:-.08em;flex:none}.brand-name{font-family:var(--serif);font-size:21px;line-height:1.12;display:block;color:var(--navy)}.brand-sub{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:8.5px;font-weight:700;color:#9d8869;margin-top:7px}
.nav{display:flex;align-items:center;gap:28px}.nav a{font-size:12px;font-weight:700;color:#4c5661;white-space:nowrap}.nav a:hover{color:#a18555}.nav .nav-contact{border:1px solid #bca97f;padding:10px 15px;color:var(--navy)}
.hero{background:var(--navy);color:#fff;overflow:hidden;position:relative}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 78% 25%,rgba(181,154,108,.12),transparent 49%);pointer-events:none}
.hero-inner{position:relative;display:grid;grid-template-columns:1.07fr .93fr;min-height:630px;align-items:center;gap:64px;padding-block:73px 80px}
.hero .eyebrow{color:var(--goldlight)}.hero h1{font-size:clamp(44px,5vw,70px);margin:23px 0 27px;max-width:710px}.hero h1 em{font-style:normal;color:var(--goldlight)}.hero p{color:#c7d0d9;max-width:600px;font-size:16px;line-height:1.85;margin-bottom:34px}.hero-buttons{display:flex;gap:13px;flex-wrap:wrap}
.hero-art{position:relative;min-height:470px;border:1px solid rgba(216,201,166,.3);overflow:hidden;background:linear-gradient(145deg,#203348,#101d2b);padding:40px;box-shadow:16px 16px 0 rgba(255,255,255,.035)}
.art-arc{position:absolute;width:380px;height:380px;border:1px solid rgba(216,201,166,.3);border-radius:50%;top:18px;left:50%;transform:translateX(-50%)}.art-arc:after{content:'';position:absolute;inset:29px;border:1px solid rgba(216,201,166,.13);border-radius:50%}
.art-columns{position:absolute;bottom:70px;left:14%;width:72%;height:280px;display:flex;align-items:flex-end;justify-content:space-between;opacity:.84}.art-columns span{width:19%;height:100%;background:linear-gradient(90deg,#7d806e,#c3b48f 55%,#6c715f);position:relative;box-shadow:inset 0 5px 0 rgba(255,255,255,.08)}.art-columns span:before{content:'';position:absolute;top:-17px;left:-10%;width:120%;height:19px;background:#b9ac88}.art-columns span:after{content:'';position:absolute;bottom:-16px;left:-16%;width:132%;height:19px;background:#b9ac88}.art-foundation{position:absolute;bottom:41px;left:8%;width:84%;height:12px;background:#b7a984;box-shadow:0 15px 0 #786f5b}.art-motto{position:absolute;top:38px;right:28px;font-family:var(--serif);font-style:italic;color:var(--goldlight);font-size:14px;writing-mode:vertical-rl;opacity:.8}.art-bottom{position:absolute;bottom:16px;right:20px;font-size:10px;letter-spacing:.2em;color:#d3c4a6;text-transform:uppercase}
.stat-strip{background:#eae5da;border-bottom:1px solid #ddd4c4}.stat-inner{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px}.stat{padding-left:30px;border-left:1px solid #d2c8b8}.stat:first-child{padding-left:0;border:0}.stat strong{font-family:var(--serif);font-size:21px;display:block;color:var(--navy);font-weight:500}.stat span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#81796f;font-weight:700}
.practice{background:var(--cream)}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.practice-card{background:#fff;border:1px solid #e8e4dd;padding:31px 29px 32px;min-height:252px;transition:transform .2s,border-color .2s}.practice-card:hover{transform:translateY(-4px);border-color:#c8b896}.practice-index{font-size:12px;color:#b49b6d;font-weight:700;letter-spacing:.16em}.practice-card h3{margin:27px 0 12px;font-size:24px}.practice-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}
.about{background:var(--ivory)}.about-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:90px;align-items:center}.about-visual{min-height:520px;position:relative;background:linear-gradient(135deg,#c1b292,#e3d8c3);display:flex;align-items:flex-end;overflow:hidden}.about-visual:before{content:'';position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.6);border-radius:50%;top:-70px;left:-80px}.about-visual:after{content:'';position:absolute;inset:20px;border:1px solid rgba(255,255,255,.38);pointer-events:none}.about-initial{font-family:var(--serif);font-size:clamp(90px,14vw,205px);line-height:1;color:rgba(29,47,63,.18);position:absolute;left:9%;top:20%}.about-visual-card{position:relative;background:var(--navy);color:var(--white);padding:27px 33px;width:80%;margin:0 0 32px 32px}.about-visual-card small{color:var(--goldlight);letter-spacing:.18em;text-transform:uppercase;font-size:10px}.about-visual-card strong{font-family:var(--serif);font-size:29px;font-weight:500;display:block;margin:8px 0}.about-visual-card span{font-size:13px;color:#cbd4db}.about-copy h2{margin:17px 0 26px}.about-copy p{color:#67717b;margin-bottom:18px;font-size:15px;line-height:1.85}.about-copy .about-highlight{color:var(--navy);font-size:18px;font-family:var(--serif);line-height:1.55}.text-link{display:inline-flex;align-items:center;gap:12px;color:#82663b;font-weight:700;font-size:13px;text-decoration:underline;text-underline-offset:5px;margin-top:13px}
.process{background:#fff}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.process-item{border-top:1px solid #c3b08c;padding-top:25px}.process-number{font-family:var(--serif);font-size:36px;color:#aa9268}.process-item h3{font-size:23px;margin:18px 0 12px}.process-item p{font-size:14px;color:var(--muted);margin:0}
.registry{background:var(--cream)}.registry-panel{display:grid;grid-template-columns:.68fr 1.32fr;border:1px solid #e5e0d6;background:#fff}.registry-intro{background:var(--navy);padding:45px;color:#fff}.registry-intro .eyebrow{color:var(--goldlight)}.registry-intro h2{font-size:36px;margin:25px 0}.registry-intro p{color:#c5ced8;font-size:14px}.registry-data{padding:32px 42px;display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.field{padding:20px 0;border-bottom:1px solid #ebe8e1}.field:nth-last-child(-n+2){border-bottom:0}.field-wide{grid-column:span 2}.field label{display:block;color:#8c887f;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;margin-bottom:7px}.field strong{display:block;font-size:14px;color:var(--navy);line-height:1.5;overflow-wrap:anywhere}
.contact{background:#e7dfd0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.contact h2{margin:17px 0 22px}.contact p{color:#68717a;max-width:530px}.contact-details{display:grid;gap:17px;margin-top:30px}.contact-details a,.contact-details address{font-size:15px;font-style:normal}.contact-details small{display:block;text-transform:uppercase;letter-spacing:.15em;color:#997f57;font-weight:700;margin-bottom:3px;font-size:10px}.contact-card{background:var(--navy);padding:46px 45px;color:#fff;min-height:365px}.contact-card .eyebrow{color:var(--goldlight)}.contact-card h3{font-size:33px;margin:23px 0}.contact-card p{color:#c8d0d8}.contact-card .button{margin-top:10px}
.site-footer{background:#0c1825;color:#bfc8d0;padding:52px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:44px}.site-footer .brand-name{color:#fff}.site-footer .brand-mark{border-color:#9b895f}.site-footer p{font-size:12px;line-height:1.8;color:#99a8b6;margin-top:20px}.site-footer h4{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.14em;margin:5px 0 19px}.site-footer nav{display:grid;gap:9px}.site-footer nav a,.site-footer .footer-address{font-size:12px;color:#bec7cf}.site-footer nav a:hover{color:var(--goldlight)}.copyright{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.11);margin-top:45px;padding-top:18px;font-size:11px;color:#8897a6}
.inner-hero{background:var(--navy);padding:87px 0 80px;color:#fff}.inner-hero .eyebrow{color:var(--goldlight)}.inner-hero h1{font-size:clamp(42px,5vw,66px);margin:22px 0}.inner-hero p{color:#cbd3db;max-width:680px}.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:74px;align-items:start}.legal-nav{position:sticky;top:140px;display:grid;gap:4px}.legal-nav a{display:block;padding:11px 12px;border-left:2px solid #ded8cb;color:#727a82;font-size:13px}.legal-nav a:hover{border-color:var(--gold);color:var(--navy)}.legal-body section{margin-bottom:50px}.legal-body h2{font-size:32px;margin:0 0 20px}.legal-body h3{font-family:var(--sans);font-size:15px;font-weight:700;margin:25px 0 9px;letter-spacing:0}.legal-body p,.legal-body li{color:#626c76;font-size:14px;line-height:1.9}.legal-body ul{padding-left:22px}.legal-note{background:#efe9dc;border-left:3px solid #b49b6d;padding:20px 24px;margin-bottom:40px;font-size:13px;color:#525d68}
@media(max-width:1000px){.header-inner{flex-wrap:wrap;padding:17px 0}.nav{gap:18px;flex-wrap:wrap}.hero-inner{grid-template-columns:1fr;gap:30px}.hero-art{min-height:350px;max-width:640px;width:100%}.art-columns{height:200px}.about-grid,.contact-layout{grid-template-columns:1fr;gap:45px}.about-visual{min-height:380px}.registry-panel{grid-template-columns:1fr}.registry-intro{padding:32px}.footer-grid{grid-template-columns:1.2fr 1fr}.footer-grid>div:last-child{grid-column:span 2}.legal-layout{grid-template-columns:1fr;gap:36px}.legal-nav{position:static;display:flex;flex-wrap:wrap}.legal-nav a{border-left:0;border-bottom:2px solid #ded8cb}}
@media(max-width:680px){.container{width:min(100% - 30px,1180px)}.topline{font-size:10px}.brand-name{font-size:19px}.header-inner{gap:16px}.nav{width:100%;display:flex;gap:13px 22px}.nav a{font-size:11px}.nav .nav-contact{padding:7px 9px}.section{padding:65px 0}.section-heading{margin-bottom:28px}.hero-inner{min-height:auto;padding:64px 0}.hero h1{font-size:45px}.hero p{font-size:14px}.hero-buttons{flex-direction:column}.hero-buttons .button{width:100%}.hero-art{min-height:305px}.art-columns{height:160px;bottom:70px}.art-arc{width:280px;height:280px}.stat-inner{grid-template-columns:1fr;gap:12px}.stat{border-left:0;border-bottom:1px solid #d2c8b8;padding:0 0 13px}.stat:last-child{border:0}.practice-grid,.process-grid{grid-template-columns:1fr}.practice-card{min-height:auto}.about-visual-card{margin:0 0 22px 22px;width:calc(100% - 44px)}.registry-data{grid-template-columns:1fr;padding:20px 27px}.field,.field:nth-last-child(-n+2){border-bottom:1px solid #ebe8e1}.field:last-child{border:0}.field-wide{grid-column:auto}.contact-card{padding:30px}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-grid>div:last-child{grid-column:auto}.copyright{flex-direction:column;gap:5px}.inner-hero{padding:65px 0}.legal-body h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.practice-card{transition:none}}
