:root{--ink:#0b3037;--ink-soft:#355158;--petrol:#073f42;--petrol-2:#0b5d5f;--ivory:#fbf8f1;--paper:#fffdf8;--mist:#eef6f3;--mint:#ccebdd;--mint-bright:#73d7b3;--coral:#f16b5e;--coral-dark:#a83a33;--cobalt:#1c4ee8;--amber:#f1ac2d;--line:#ccdad6;--line-strong:#9bb7b0;--white:#fff;--shadow-sm:0 2px 12px #08303714;--shadow-md:0 18px 50px #0830371f;--radius-sm:.65rem;--radius:1.05rem;--radius-lg:1.65rem;--content:76rem;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}.visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}html{scroll-behavior:smooth;background:var(--ivory);color:var(--ink)}body{min-width:19rem;font-family:var(--sans);background:var(--ivory);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.6}body:before{content:"";pointer-events:none;opacity:.025;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:var(--petrol-2);text-underline-offset:.18em;text-decoration-thickness:.08em}a:hover{color:var(--coral-dark)}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit}button,.button{touch-action:manipulation}:focus-visible{outline:3px solid var(--petrol);outline-offset:3px;box-shadow:0 0 0 6px var(--amber)}::selection{color:var(--ink);background:var(--mint-bright)}.skip-link{z-index:9999;color:var(--white);background:var(--ink);border-radius:.4rem;padding:.8rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.container{width:min(calc(100% - 2rem), var(--content));margin-inline:auto}.narrow{width:min(100% - 2rem,48rem);margin-inline:auto}.section{padding-block:clamp(4rem,8vw,7rem)}.section-sm{padding-block:clamp(2.8rem,6vw,4.5rem)}.section-mist{background:var(--mist)}.section-ink{color:var(--white);background:var(--ink)}.stack>*{margin-block:0}.stack>*+*{margin-block-start:var(--space,1rem)}.eyebrow{color:var(--petrol-2);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:.5rem;margin:0 0 .8rem;font-size:.78rem;font-weight:760;display:inline-flex}.eyebrow:before{content:"";background:var(--coral);border-radius:50%;width:.7rem;height:.7rem}.section-ink .eyebrow{color:var(--mint-bright)}.display{max-width:15ch;font-family:var(--serif);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(2.45rem,7vw,5.6rem);font-weight:500;line-height:.98}h1,h2,h3{color:inherit;letter-spacing:-.025em;text-wrap:balance;line-height:1.12}h1{font-size:clamp(2.4rem,6vw,4.8rem)}h2{font-family:var(--serif);margin:0 0 1.1rem;font-size:clamp(2rem,4vw,3.4rem);font-weight:500}h3{font-size:1.28rem}.lede{max-width:44rem;color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.28rem);line-height:1.62}.section-ink .lede{color:#d4e6e2}.muted{color:var(--ink-soft)}.small{font-size:.9rem}.caps{letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:780}.rule{border:0;border-block-start:1px solid var(--line)}.site-header{z-index:50;backdrop-filter:blur(18px);background:#fbf8f1ed;border-block-end:1px solid #073f4221;position:relative}.site-header-inner{justify-content:space-between;align-items:center;gap:1.5rem;min-height:4.8rem;display:flex}.brand{color:var(--ink);letter-spacing:-.045em;white-space:nowrap;align-items:center;gap:.55rem;font-size:1.45rem;font-weight:820;text-decoration:none;display:inline-flex}.brand-mark{aspect-ratio:1;background:var(--petrol);width:1.8rem;box-shadow:inset 0 0 0 .38rem var(--mint);border-radius:50%;position:relative;transform:rotate(-18deg)}.brand-mark:after{content:"";background:var(--coral);transform-origin:50% 105%;border-radius:99px;width:.28rem;height:1.15rem;position:absolute;top:-.2rem;left:50%;transform:translate(-50%)}.brand .four{color:var(--coral-dark)}.primary-nav{align-items:center;gap:clamp(.8rem,2.4vw,2rem);display:flex}.primary-nav a{color:var(--ink);font-size:.93rem;font-weight:650;text-decoration:none}.primary-nav a:hover{color:var(--petrol-2)}.nav-cta{border:1px solid var(--line-strong);background:var(--white);border-radius:999px;padding:.65rem 1rem}.mobile-nav{display:none}.mobile-nav summary{cursor:pointer;font-weight:720;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav-panel{border-block-end:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-md);gap:0;padding:.8rem 1rem 1.2rem;display:grid;position:absolute;inset:4.8rem 0 auto}.mobile-nav-panel a{border-block-end:1px solid var(--line);color:var(--ink);padding:.8rem;font-weight:700;text-decoration:none}.hero{padding-block:clamp(3.2rem,8vw,7.2rem) clamp(3rem,6vw,5rem);position:relative;overflow:hidden}.hero:after{content:"";right:max(-14rem, calc((100vw - var(--content)) / 2 - 10rem));z-index:0;background:radial-gradient(circle at 40% 40%,#73d7b370,#ccebdd29 55%,#0000 57%),repeating-radial-gradient(circle at 55% 52%,#0000 0 3.7rem,#073f4214 3.75rem 3.84rem);border-radius:48% 52% 56% 44%;width:45rem;height:45rem;position:absolute;top:-12rem;transform:rotate(-10deg)}.hero-grid{z-index:1;grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);align-items:center;gap:clamp(2rem,5vw,6rem);display:grid;position:relative}.hero .display strong{color:var(--coral-dark);font-weight:inherit}.hero-copy{--space:1.4rem}.hero-orbit{min-height:23rem;position:relative}.compass-orbit{aspect-ratio:1;width:min(25rem,84vw);box-shadow:var(--shadow-md);background:#fffdf8a6;border:1px solid #073f422e;border-radius:46% 54% 52% 48%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)rotate(9deg)}.compass-orbit:before,.compass-orbit:after{content:"";border:1px dashed #073f4240;border-radius:50%;position:absolute}.compass-orbit:before{inset:2rem}.compass-orbit:after{inset:5.2rem}.compass-needle{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:linear-gradient(var(--coral) 0 50%, var(--petrol) 50%);filter:drop-shadow(0 9px 14px #0b30373d);width:4.4rem;height:11.5rem;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)rotate(31deg)}.orbit-label{z-index:2;border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:.45rem;padding:.58rem .8rem;font-size:.82rem;font-weight:720;display:flex;position:absolute}.orbit-label i{background:var(--mint-bright);border-radius:50%;width:.62rem;height:.62rem}.orbit-label.one{top:2.3rem;left:0}.orbit-label.two{top:6.5rem;right:0}.orbit-label.three{bottom:1.8rem;left:1.4rem}.search-panel{z-index:4;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--white);max-width:58rem;box-shadow:var(--shadow-md);grid-template-columns:1.15fr 1fr auto;gap:.45rem;padding:.55rem;display:grid;position:relative}.search-field{border-radius:.75rem;grid-template-columns:auto 1fr;align-items:center;column-gap:.7rem;min-width:0;padding:.45rem .75rem;display:grid}.search-field+.search-field{border-inline-start:1px solid var(--line);border-radius:0}.search-field svg{width:1.25rem;color:var(--petrol-2);grid-row:span 2}.search-field label{color:var(--ink-soft);letter-spacing:.035em;font-size:.72rem;font-weight:780}.search-field input,.search-field select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:.12rem 1.5rem .12rem 0;font-weight:660}.search-field input:focus-visible,.search-field select:focus-visible{outline:3px solid var(--petrol);outline-offset:2px;box-shadow:0 0 0 5px var(--amber);border-radius:.2rem}.search-field select{cursor:pointer}.button{min-height:3rem;color:var(--white);background:var(--petrol);text-align:center;cursor:pointer;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;gap:.55rem;padding:.75rem 1.2rem;font-weight:760;text-decoration:none;transition:transform .18s,background .18s,box-shadow .18s;display:inline-flex}.button:hover{color:var(--white);background:var(--petrol-2);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.button-coral{background:var(--coral-dark)}.button-coral:hover{background:#812923}.button-light{border-color:var(--line-strong);color:var(--ink);background:var(--white)}.button-light:hover{color:var(--ink);background:var(--mist)}.text-link{align-items:center;gap:.35rem;font-weight:760;display:inline-flex}.quick-links{flex-wrap:wrap;gap:.55rem;margin:.8rem 0 0;padding:0;list-style:none;display:flex}.quick-links a{border:1px solid var(--line);color:var(--ink);background:#ffffff94;border-radius:999px;padding:.45rem .8rem;font-size:.86rem;font-weight:680;text-decoration:none;display:block}.quick-links a:hover{border-color:var(--petrol-2);background:var(--white)}.trust-strip{border:1px solid var(--line);border-radius:var(--radius);background:var(--mist);grid-template-columns:repeat(3,1fr);gap:0;display:grid;overflow:hidden}.trust-item{grid-template-columns:auto 1fr;gap:.7rem;padding:1.2rem;display:grid}.trust-item+.trust-item{border-inline-start:1px solid var(--line)}.trust-item strong{margin-block-end:.15rem;display:block}.trust-item p{color:var(--ink-soft);margin:0;font-size:.87rem;line-height:1.45}.trust-icon{width:2.2rem;height:2.2rem;color:var(--petrol);background:var(--mint);border-radius:50%;place-items:center;font-weight:820;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-sm);padding:clamp(1.2rem,3vw,1.7rem)}.card h3{margin-block:0 .5rem}.card p:last-child{margin-block-end:0}.feature-card{min-height:14rem;position:relative;overflow:hidden}.feature-card:after{content:attr(data-number);color:#073f4212;font-family:var(--serif);font-size:7.5rem;line-height:1;position:absolute;bottom:-.55rem;right:.8rem}.feature-icon{width:2.8rem;height:2.8rem;color:var(--ink);background:var(--mint);border-radius:.85rem;place-items:center;margin-block-end:1.6rem;font-size:1.25rem;display:grid}.life-card{min-height:10.5rem;color:var(--ink);flex-direction:column;justify-content:space-between;text-decoration:none;transition:border-color .18s,transform .18s;display:flex}.life-card:hover{border-color:var(--petrol-2);color:var(--ink);transform:translateY(-3px)}.life-card span{color:var(--ink-soft)}.stat-band{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.stat{padding:1.35rem}.stat+.stat{border-inline-start:1px solid var(--line)}.stat strong{font-family:var(--serif);font-size:2rem;font-weight:500;line-height:1.1;display:block}.stat span{color:var(--ink-soft);font-size:.82rem}.firm-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:1.25rem;display:grid}.firm-card h3{margin:0}.firm-card h3 a{color:var(--ink);text-decoration:none}.firm-card h3 a:hover{color:var(--petrol-2)}.firm-meta{color:var(--ink-soft);flex-wrap:wrap;gap:.35rem .8rem;margin:.45rem 0;font-size:.88rem;display:flex}.tags{flex-wrap:wrap;gap:.38rem;margin:.8rem 0 0;padding:0;list-style:none;display:flex}.tag{color:var(--petrol);background:var(--mist);border-radius:.35rem;padding:.25rem .52rem;font-size:.74rem;font-weight:690}.source-terms{border-block-start:1px solid var(--line);margin-block-start:1rem;padding-block-start:.9rem}.source-terms summary{width:fit-content;color:var(--petrol-2);cursor:pointer;font-weight:720}.source-terms dl{gap:.7rem;margin:.9rem 0 0;display:grid}.source-terms dl div{grid-template-columns:minmax(8rem,.45fr) 1fr;gap:.25rem 1rem;display:grid}.source-terms dt{font-weight:750}.source-terms dd{color:var(--ink-soft);margin:0}.quality-badge{color:#14513e;white-space:nowrap;background:#dff5e9;border-radius:999px;align-self:start;padding:.45rem .65rem;font-size:.74rem;font-weight:760}.quality-badge.partial{color:#714907;background:#fff0ca}.page-hero{border-block-end:1px solid var(--line);background:linear-gradient(135deg, var(--ivory), var(--mist));padding-block:clamp(3.5rem,8vw,6rem) clamp(2.5rem,5vw,4rem)}.page-hero h1{max-width:17ch;font-family:var(--serif);margin:0 0 1.1rem;font-weight:500}.breadcrumbs{color:var(--ink-soft);padding-block:1rem;font-size:.82rem}.breadcrumbs ol{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--line-strong);margin-inline-end:.35rem}.breadcrumbs a{color:inherit}.content{font-size:1.02rem}.content h2{margin-block-start:2.6rem;font-size:clamp(1.7rem,3vw,2.4rem)}.content h3{margin-block-start:2rem}.content li+li{margin-block-start:.48rem}.callout{border-inline-start:.35rem solid var(--coral);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--mist);padding:1.25rem 1.4rem}.data-note{border:1px solid var(--line);border-radius:var(--radius);background:var(--mist);grid-template-columns:auto 1fr;gap:.9rem;padding:1.1rem 1.25rem;display:grid}.data-note-mark{background:var(--mint);border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:850;display:grid}.data-note p{color:var(--ink-soft);margin:0;font-size:.9rem}.directory-layout{grid-template-columns:18rem minmax(0,1fr);align-items:start;gap:2rem;display:grid}.filters{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:1.1rem;position:sticky;top:1rem}.filter-group{gap:.35rem;margin-block-end:1rem;display:grid}.filter-group label{font-size:.78rem;font-weight:760}.filter-group input,.filter-group select{border:1px solid var(--line-strong);background:var(--paper);border-radius:.55rem;width:100%;min-height:2.8rem;padding:.55rem .7rem}.results{gap:.85rem;display:grid}.results-head{justify-content:space-between;align-items:end;gap:1rem;display:flex}.results-head h1,.results-head h2{margin:0}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;padding:3rem 1.2rem}.profile-hero{padding-block:2rem 3.5rem}.profile-card{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm);padding:clamp(1.4rem,4vw,2.3rem)}.profile-top{border-block-end:1px solid var(--line);grid-template-columns:1fr auto;gap:1.5rem;padding-block-end:1.4rem;display:grid}.profile-top h1{max-width:24ch;font-family:var(--serif);margin:.4rem 0 .7rem;font-size:clamp(2.2rem,5vw,4rem);font-weight:500}.sra-chip{color:#13533e;background:#dff5e9;border-radius:999px;align-self:start;padding:.5rem .75rem;font-size:.78rem;font-weight:760}.fact-grid{grid-template-columns:repeat(3,1fr);display:grid}.fact{padding:1.3rem}.fact+.fact{border-inline-start:1px solid var(--line)}.fact dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;margin-block-end:.45rem;font-size:.72rem;font-weight:790}.fact dd{margin:0}.profile-grid{grid-template-columns:minmax(0,1.45fr) minmax(17rem,.55fr);align-items:start;gap:1.5rem;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:1.4rem}.panel h2{margin-block-end:.85rem;font-size:1.75rem}.office-list{gap:.8rem;display:grid}.office{border:1px solid var(--line);background:var(--paper);border-radius:.8rem;padding:1rem}.office h3{margin:0 0 .35rem}.office address{color:var(--ink-soft);font-style:normal}.contact-list{flex-wrap:wrap;gap:.5rem;margin-block-start:.75rem;display:flex}.contact-list a{border:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere;border-radius:.5rem;padding:.4rem .6rem;font-size:.82rem;font-weight:680;text-decoration:none}.timeline{gap:0;padding:0;list-style:none;display:grid}.timeline li{padding:0 0 1.2rem 1.5rem;position:relative}.timeline li:before{content:"";background:var(--cobalt);border-radius:50%;width:.62rem;height:.62rem;position:absolute;top:.35rem;left:.25rem;box-shadow:0 0 0 .3rem #dbe4ff}.timeline li:not(:last-child):after{content:"";background:#aabceb;width:1px;position:absolute;top:.9rem;bottom:-.1rem;left:.52rem}.timeline time{color:var(--ink-soft);font-size:.78rem;display:block}.alpha-list{flex-wrap:wrap;gap:.4rem;margin:1.2rem 0;padding:0;list-style:none;display:flex}.alpha-list a{border:1px solid var(--line);width:2.3rem;height:2.3rem;color:var(--ink);background:var(--white);border-radius:.45rem;place-items:center;font-weight:730;text-decoration:none;display:grid}.link-list{columns:3 15rem;column-gap:2rem;margin:0;padding:0;list-style:none}.link-list li{break-inside:avoid;border-block-end:1px solid var(--line);padding:.38rem 0}.link-list a{color:var(--ink);justify-content:space-between;gap:.5rem;text-decoration:none;display:flex}.link-list small{color:var(--ink-soft)}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field{gap:.35rem;display:grid}.field.full{grid-column:1/-1}.field label{font-size:.85rem;font-weight:730}.field input,.field select,.field textarea{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:var(--white);border-radius:.55rem;padding:.75rem .8rem}.field textarea{resize:vertical;min-height:10rem}.field-help{color:var(--ink-soft);margin:0;font-size:.78rem}.honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.form-status{min-height:1.5rem;margin-block:1rem;font-weight:690}.comparison-table{border-collapse:collapse;border:1px solid var(--line);background:var(--white);width:100%;min-width:44rem}.comparison-table th,.comparison-table td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.8rem}.comparison-table thead th{color:var(--white);background:var(--petrol)}.comparison-table thead a{color:var(--white)}.comparison-table tbody th{background:var(--mist);width:12rem}.site-footer{border-block-start:1px solid var(--line);color:#d8e9e5;background:#062e34;padding-block:3.5rem 1.5rem}.site-footer .brand{color:var(--white)}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:2rem;display:grid}.footer-grid h2{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .65rem;font-size:.78rem;font-weight:780}.footer-grid ul{margin:0;padding:0;list-style:none}.footer-grid li+li{margin-block-start:.38rem}.footer-grid a{color:#d8e9e5;font-size:.88rem;text-decoration:none}.footer-grid a:hover{color:var(--white);text-decoration:underline}.footer-note{color:#aac3be;max-width:33rem;font-size:.83rem}.footer-bottom{color:#aac3be;border-block-start:1px solid #d8e9e52e;justify-content:space-between;gap:1rem;margin-block-start:2.5rem;padding-block-start:1rem;font-size:.78rem;display:flex}@media (width<=62rem){.primary-nav{display:none}.mobile-nav{display:block}.hero-grid{grid-template-columns:1fr}.hero-orbit{display:none}.directory-layout{grid-template-columns:1fr}.filters{position:static}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-intro{grid-column:1/-1}}@media (width<=46rem){.container,.narrow{width:min(calc(100% - 1.25rem), var(--content))}.search-panel{grid-template-columns:1fr}.search-field+.search-field{border-block-start:1px solid var(--line);border-inline-start:0;border-radius:0}.search-panel .button{width:100%}.trust-strip,.grid-2,.grid-3,.grid-4,.stat-band,.fact-grid,.form-grid,.profile-grid{grid-template-columns:1fr}.trust-item+.trust-item,.stat+.stat,.fact+.fact{border-block-start:1px solid var(--line);border-inline-start:0}.firm-card,.profile-top{grid-template-columns:1fr}.quality-badge,.sra-chip{justify-self:start}.results-head,.footer-bottom{flex-direction:column;align-items:start}.footer-grid{grid-template-columns:1fr 1fr}.footer-intro{grid-column:1/-1}.field.full{grid-column:auto}.link-list{columns:1}.source-terms dl div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.site-header,.site-footer,.button,.quick-links{display:none!important}body{color:#000;background:#fff}.card,.panel,.profile-card{box-shadow:none;border-color:#aaa}a{color:#000;text-decoration:none}a[href^=http]:after{content:" (" attr(href) ")";font-size:.75em}}
