:root{color-scheme:light;--ink: #172536;--ink-soft: #405064;--paper: #f7f5f0;--surface: #fffdf9;--line: #d8d2c6;--accent: #9a7436;--accent-deep: #715121;--focus: #075e83;--serif: Iowan Old Style, Palatino Linotype, Book Antiqua, Georgia, serif;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--content-width: 74rem;--reading-width: 46rem;--space-1: clamp(.5rem, .45rem + .25vw, .75rem);--space-2: clamp(1rem, .8rem + 1vw, 1.5rem);--space-3: clamp(1.5rem, 1.15rem + 1.75vw, 2.5rem);--space-4: clamp(2.5rem, 1.8rem + 3.5vw, 5rem);--radius: .2rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:0;margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:clamp(1rem,.96rem + .2vw,1.125rem);line-height:1.65}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:.08em}a:hover{color:var(--accent-deep)}:focus-visible{outline:.18rem solid var(--focus);outline-offset:.22rem}.skip-link{position:fixed;z-index:10;top:.75rem;left:.75rem;padding:.65rem .9rem;transform:translateY(-160%);color:var(--surface);background:var(--ink);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.site-header,main,.site-footer{width:min(calc(100% - 2rem),var(--content-width));margin-inline:auto}.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding-block:var(--space-2);border-bottom:1px solid var(--line)}.wordmark{display:grid;color:var(--ink);line-height:1.05;text-decoration:none}.wordmark span{font-family:var(--serif);font-size:clamp(1.35rem,1.1rem + 1vw,1.7rem)}.wordmark small{margin-top:.35rem;color:var(--ink-soft);font-size:.62rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%}.menu-toggle{display:none}.site-header nav{width:100%}.site-header nav ul{display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin:0;padding:.25rem 0;list-style:none}.site-header nav a{color:var(--ink-soft);font-size:.86rem;font-weight:650;text-decoration:none;white-space:nowrap}.site-header nav a[aria-current=page]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:.14em}.header-contact{display:grid;place-items:center;min-height:2.85rem;padding:.55rem .75rem;border:1px solid var(--ink);color:var(--ink);font-size:.8rem;font-weight:750;text-decoration:none;white-space:nowrap}.header-contact:hover{border-color:var(--accent-deep);color:var(--surface);background:var(--accent-deep)}.js .menu-toggle{display:grid;place-items:center;width:100%;min-height:2.85rem;padding:0;border:1px solid var(--ink);border-radius:0;color:var(--ink);background:transparent;cursor:pointer}.js .menu-toggle:hover{border-color:var(--accent-deep);color:var(--accent-deep)}.js .menu-toggle i,.js .menu-toggle i:before,.js .menu-toggle i:after{display:block;width:1.05rem;height:1px;background:currentColor;content:"";transition:transform .16s ease,opacity .16s ease}.js .menu-toggle i{position:relative}.js .menu-toggle i:before,.js .menu-toggle i:after{position:absolute;top:50%;left:0}.js .menu-toggle i:before{transform:translateY(calc(-50% - .32rem))}.js .menu-toggle i:after{transform:translateY(calc(-50% + .32rem))}.js .menu-toggle[aria-expanded=true] i{background:transparent}.js .menu-toggle[aria-expanded=true] i:before{transform:translateY(-50%) rotate(45deg)}.js .menu-toggle[aria-expanded=true] i:after{transform:translateY(-50%) rotate(-45deg)}.js .site-header nav{display:none}.js .site-header nav[data-open=true]{display:block}.js .site-header nav ul{display:grid;gap:0;padding:.3rem 0 0}.js .site-header nav a{display:block;padding:.65rem 0;border-top:1px solid var(--line)}main{padding-block:var(--space-4)}.home-main{padding-top:clamp(1.5rem,1.1rem + 2vw,2.75rem)}article{width:min(100%,var(--reading-width))}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);font-family:var(--serif);font-weight:500;line-height:1.12;text-wrap:balance}h1{max-width:20ch;margin-bottom:var(--space-2);font-size:clamp(2.1rem,1.65rem + 2.35vw,3.9rem)}h2{margin-top:var(--space-4);margin-bottom:var(--space-2);font-size:clamp(1.65rem,1.35rem + 1.2vw,2.35rem)}h3{font-size:1.25rem}p+p{margin-top:var(--space-2)}.lead{max-width:40rem;color:var(--ink-soft);font-family:var(--serif);font-size:clamp(1.25rem,1.1rem + .8vw,1.65rem);line-height:1.5}.privacy-page{max-width:52rem}.privacy-page .privacy-version{margin-top:var(--space-2);color:var(--ink-soft);font-size:.88rem}.privacy-page h3{margin:var(--space-3) 0 var(--space-1);font-size:1.2rem}.privacy-page ul{padding-left:1.4rem}.privacy-page li+li{margin-top:.45rem}.privacy-page p,.privacy-page li{overflow-wrap:anywhere}.hero{display:grid;gap:var(--space-3);align-items:center}.hero h1{max-width:24ch;font-size:clamp(1.9rem,1.6rem + 1.55vw,3rem)}.hero-copy>p:first-child,.eyebrow{margin-bottom:.4rem;color:var(--accent-deep);font-size:.74rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.hero-copy>p:first-child{margin-bottom:.9rem}.hero-copy>.hero-eyebrow{display:table;padding:.35rem .7rem;border:1px solid var(--accent);color:var(--accent);font-size:.8rem;font-weight:650;letter-spacing:.025em;line-height:1.35;text-transform:none}.hero-copy>p:not(:first-child){max-width:39rem;color:var(--ink-soft);font-family:var(--serif);font-size:1.25rem}.button,.hero a{display:inline-flex;align-items:center;min-height:2.9rem;padding:.7rem 1rem;border:1px solid var(--ink);color:var(--surface);background:var(--ink);font-size:.9rem;font-weight:700;text-decoration:none}.button:hover,.hero a:hover{border-color:var(--accent-deep);color:var(--surface);background:var(--accent-deep)}.hero-portrait{display:block;width:min(100%,17.5rem);justify-self:center}.hero-portrait img{display:block;width:100%;height:auto;border:1px solid var(--line);background:var(--surface)}.rankings{max-width:58rem;margin-top:var(--space-4);padding-top:var(--space-2);border-top:1px solid var(--line)}.rankings h2,.services-section h2{margin-top:0}.ranking-intro{max-width:68ch}.about-closing{max-width:var(--reading-width);margin-top:var(--space-3)}.section-eyebrow{margin-bottom:.45rem;color:var(--accent-deep);font-size:.74rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.ranking-list{display:grid;gap:1px;border:1px solid var(--line);background:var(--line)}.ranking-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.2rem 1rem;padding:var(--space-2);background:var(--surface)}.ranking-card strong{font-family:var(--serif);font-size:clamp(1.45rem,1.2rem + 1vw,1.9rem);font-weight:500;line-height:1.15}.ranking-card span{color:var(--accent-deep);font-size:.9rem;font-weight:750}.ranking-card p{grid-column:1 / -1;margin:0;color:var(--ink-soft);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.rankings ul,article ul{padding-left:1.2rem}.rankings li+li,article li+li{margin-top:.45rem}.services-section,.home-summary{margin-top:var(--space-4)}.summary-cards,.summary-lists,.highlights,.service-sections{display:grid;gap:1px;border:1px solid var(--line);background:var(--line)}.summary-cards>section,.summary-lists>section,.highlights>div,.service-sections>section{padding:var(--space-2);background:var(--surface)}.summary-cards h2,.summary-lists h2{margin:0 0 .65rem;font-size:1.25rem}.service-sections h2{margin:0 0 1rem;padding-bottom:.65rem;border-bottom:1px solid var(--line);font-size:clamp(1.4rem,1.2rem + .65vw,1.7rem);font-weight:600;line-height:1.2}.summary-cards p,.summary-lists p,.summary-lists ul{margin:0;color:var(--ink-soft);font-size:.95rem}.summary-lists{margin-top:var(--space-2)}.summary-lists ul{padding-left:1.2rem}.highlights{width:min(100%,58rem);margin-top:var(--space-4)}.highlights strong{display:block;font-family:var(--serif);font-size:1.55rem;font-weight:500;line-height:1.15}.highlights span{display:block;margin-top:.4rem;color:var(--ink-soft);font-size:.9rem}.linkedin-link{margin-top:var(--space-2)}.linkedin-link a{color:var(--ink);font-weight:700;text-decoration-color:var(--accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.service-page{max-width:58rem}.service-sections{margin-top:var(--space-3)}.service-sections ul{margin:0;padding-left:1.2rem}.service-sections li+li{margin-top:.45rem}.service-list{display:grid;gap:1px;margin:0;padding:0;border:1px solid var(--line);background:var(--line);list-style:none}.service-list li{padding:var(--space-2);background:var(--surface)}.service-list a{font-family:var(--serif);font-size:1.3rem;text-decoration-color:var(--accent)}.service-list p{margin:.55rem 0 0;color:var(--ink-soft);font-size:.95rem}.contact-cta{display:grid;gap:.5rem;margin-top:var(--space-4);padding:var(--space-3);border-left:.25rem solid var(--accent);background:var(--surface)}.contact-cta p{margin:0;color:var(--ink-soft)}.contact-cta-title{color:var(--ink)!important;font-family:var(--serif);font-size:clamp(1.45rem,1.2rem + .8vw,1.95rem);line-height:1.2}.contact-cta-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:var(--space-1)}.contact-cta-actions a{display:inline-flex;align-items:center;min-height:2.8rem;padding:.55rem .8rem;border:1px solid var(--ink);font-weight:700;text-decoration:none}.contact-cta-actions a:first-child{color:var(--surface);background:var(--ink)}.contact-cta-actions a:hover{border-color:var(--accent-deep);color:var(--surface);background:var(--accent-deep)}.contact-intro{max-width:42rem;color:var(--ink-soft)}.contact-details{display:grid;gap:var(--space-2);margin-top:var(--space-3);font-style:normal}.contact-details section{padding:var(--space-2);border:1px solid var(--line);background:var(--surface)}.contact-label{margin-bottom:.35rem;color:var(--accent-deep);font-size:.74rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase}.contact-email,.contact-phone{display:inline-block;font-family:var(--serif);font-size:clamp(1.25rem,1.05rem + 1vw,1.65rem);text-decoration-color:var(--accent)}.contact-phone{font-weight:700}.contact-page{width:min(100%,58rem)}.contact-layout{display:grid;gap:var(--space-3);margin-top:var(--space-3)}.contact-layout .contact-details{margin-top:0;align-content:start}.contact-form-panel{padding:var(--space-3);border:1px solid var(--line);background:var(--surface)}.contact-form-panel h2{margin:0 0 var(--space-2)}.contact-form,.contact-form-grid{display:grid;gap:var(--space-2)}.contact-field{display:grid;gap:.4rem}.contact-field label{font-size:.9rem;font-weight:750}.contact-optional,.contact-help,.contact-privacy,.contact-required-note{color:var(--ink-soft);font-size:.85rem}.contact-help,.contact-privacy,.contact-required-note{margin:0}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:2.8rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:0;color:var(--ink);background:var(--paper);font:inherit}.contact-form textarea{min-height:10rem;resize:vertical}.contact-form input[aria-invalid=true],.contact-form select[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:#a12a24}.contact-field-error{margin:0;color:#8f241e;font-size:.85rem;font-weight:650}.contact-field-error[hidden]{display:none}.contact-error-summary,.contact-notice{margin-bottom:var(--space-2);padding:var(--space-1) var(--space-2);border-left:.25rem solid #a12a24;background:#fff3ef}.contact-notice{border-color:var(--accent);background:#f2ede4}.contact-error-summary p,.contact-error-summary ul{margin:0}.contact-error-summary ul{margin-top:.4rem;padding-left:1.2rem}.contact-submit{justify-self:start;min-height:2.9rem;padding:.7rem 1rem;border:1px solid var(--ink);border-radius:0;color:var(--surface);background:var(--ink);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.contact-submit:hover{border-color:var(--accent-deep);background:var(--accent-deep)}.contact-form-unavailable{margin:0;color:var(--ink-soft)}.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-footer{display:grid;gap:.3rem;padding-block:var(--space-3);border-top:1px solid var(--line);color:var(--ink-soft);font-size:.9rem}.site-footer p{margin:0}.site-footer strong{color:var(--ink)}.footer-legal{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line)}.footer-legal h2{margin:0 0 .45rem;font-family:var(--sans);font-size:.85rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.footer-legal p+p{margin-top:.2rem}.footer-bank-account{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}@media(max-width:39.999rem){.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.35rem}.wordmark{min-width:0}.wordmark span{font-size:clamp(1rem,5.2vw,1.35rem);white-space:nowrap}.wordmark small{font-size:clamp(.45rem,1.9vw,.62rem);letter-spacing:.1em;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:.3rem;width:auto}.header-contact{min-height:2.4rem;padding:.4rem .45rem;font-size:clamp(.7rem,3.1vw,.8rem)}.js .menu-toggle{width:2.4rem;height:2.4rem;min-height:2.4rem}.site-header nav{grid-column:1 / -1}}@media(min-width:40rem){.header-actions{display:block;width:auto}.header-contact{display:inline;min-height:0}.js .menu-toggle{display:none}.site-header nav{width:auto}.js .site-header nav,.js .site-header nav[data-open=true]{display:block}.site-header nav ul,.js .site-header nav ul{display:flex;flex-wrap:nowrap;gap:1.25rem;padding:.25rem 0}.js .site-header nav a{display:inline;padding:0;border:0}.service-list{grid-template-columns:repeat(2,1fr)}.ranking-list{grid-template-columns:repeat(3,1fr)}.ranking-card{grid-template-columns:1fr;align-content:start;min-height:10.5rem}.ranking-card span{order:-1}.contact-details,.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-cards{grid-template-columns:repeat(3,1fr)}.summary-lists,.highlights,.service-sections{grid-template-columns:repeat(2,1fr)}.service-sections>section:last-child:nth-child(odd){grid-column:span 2}}@media(min-width:56.25rem){.contact-layout{grid-template-columns:1fr}.contact-layout .contact-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:56.25rem){.hero{grid-template-columns:minmax(0,1.3fr) minmax(16rem,.7fr);gap:var(--space-4)}.hero-portrait{justify-self:end}.hero-copy>p:first-child{margin-bottom:1.1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
