@font-face{font-family:SiteSans;src:url('/assets/sans.woff2') format('woff2');font-display:swap}@font-face{font-family:SiteSerif;src:url('/assets/serif.woff2') format('woff2');font-display:swap}
:root{color-scheme:light;--paper:#fafbf9;--ink:#203d34;--muted:#54655e;--sage:#e8eeea;--line:#d2dbd5;--serif:SiteSerif,Georgia,serif;--sans:SiteSans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 var(--sans)}a{color:inherit;text-underline-offset:5px}a:hover{color:#527562}a:focus-visible,summary:focus-visible{outline:3px solid #a64d35;outline-offset:5px}svg{width:24px;height:24px;flex-shrink:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(42px,5.8vw,76px);margin:0 0 26px}h2{font-size:clamp(32px,3.6vw,46px);margin:0 0 24px}h3{font-size:30px;margin:0 0 12px}p{margin:0 0 20px}small{font-size:14px;line-height:1.6}.quiet-note{font-size:14px;color:var(--muted)}.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:100}.skip:focus{top:8px}.site-header{position:sticky;top:0;background:var(--paper);z-index:30;border-bottom:1px solid var(--line)}.header-inner{max-width:1360px;margin:auto;min-height:96px;padding:16px 44px;display:flex;justify-content:space-between;align-items:center;gap:20px}.wordmark{font:500 36px/1 var(--serif);text-decoration:none;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:32px}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;background:var(--ink);color:white;border-radius:6px;padding:13px 24px;font:600 16px/1.5 var(--sans);text-decoration:none;min-height:50px}.button:hover{background:#345c4c;color:white}.text-link{display:inline-flex;gap:12px;align-items:center;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.text-link svg{width:20px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin:30px 0 20px}.tools-menu{position:relative}.tools-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;min-height:48px;font:500 16px var(--sans)}.tools-menu summary::-webkit-details-marker{display:none}.tools-menu summary svg{width:28px;height:28px}.tools-menu nav{position:absolute;right:0;top:calc(100% + 16px);background:white;border:1px solid var(--line);box-shadow:0 18px 50px #173b2924;border-radius:8px;width:340px;padding:14px;max-height:calc(100vh - 130px);overflow:auto}.tools-menu nav a{display:block;text-decoration:none;border-radius:4px;padding:11px 14px;font-size:16px;line-height:1.4}.tools-menu nav a:hover,.tools-menu nav a[aria-current]{background:var(--sage)}.menu-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:8px 14px 12px}main{max-width:1360px;margin:auto;padding:0 44px}.home-hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:75px;padding:76px 0 68px}.home-hero>div>p:not(.quiet-note){font-size:24px;line-height:1.5;max-width:650px}.tool-directory{padding:15px 30px;border-radius:16px;background:var(--sage)}.tool-directory>a{display:flex;gap:22px;align-items:center;padding:29px 0;text-decoration:none;border-bottom:1px solid #becdc3}.tool-directory>a:last-child{border:0}.tool-directory>a>svg:first-child{width:40px;height:40px}.tool-directory>a>svg:last-child{width:20px;margin-left:auto}.tool-directory strong{display:block;font:500 27px/1.1 var(--serif)}.tool-directory small{display:block;color:var(--muted);margin-top:8px}.section{padding:56px 0}.section-heading{margin-bottom:24px}.section-heading p{color:var(--muted)}.service-list>div{display:grid;grid-template-columns:62px 1fr 210px;gap:28px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line)}.service-list>div:first-child{border-top:1px solid var(--line)}.service-icon{display:flex;align-items:center;justify-content:center;width:62px;height:70px;border-radius:10px;background:var(--sage)}.service-icon svg{width:34px;height:34px}.service-list p{max-width:660px;margin-bottom:10px}.service-list small{color:var(--muted)}.service-list>div>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.price-overview{background:var(--sage);padding:42px;display:grid;grid-template-columns:1fr 1fr;gap:80px;margin:30px 0 60px;border-radius:10px}.price-overview p{max-width:510px}.price-feature{border-left:1px solid #b3c2b9;padding-left:42px;align-self:center}.price-feature>span{display:block;color:var(--muted);font-size:14px}.price-feature>strong{font:500 70px/1.4 var(--serif);display:block}.price-feature strong small{font:400 20px var(--sans)}.price-feature>small{display:block;color:var(--muted)}.professional-band{background:var(--ink);color:white;padding:48px;display:flex;gap:45px;align-items:center;justify-content:space-between;border-radius:10px}.professional-band p{max-width:650px;margin:0;color:#e2ebe6}.professional-band .button{background:white;color:var(--ink);flex-shrink:0;max-width:270px}.guide-teaser{display:flex;align-items:center;justify-content:space-between;gap:40px}.guide-teaser p{max-width:700px}.site-footer{max-width:1360px;margin:auto;padding:38px 44px;border-top:1px solid var(--line);display:flex;gap:30px;flex-wrap:wrap;justify-content:space-between}.site-footer .wordmark{font-size:30px}.site-footer p{margin-top:12px;color:var(--muted);font-size:14px}.site-footer nav{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;max-width:750px}.site-footer nav a{font-size:14px;text-decoration:none}.site-footer>small{flex-basis:100%;color:var(--muted)}.intro{max-width:900px;padding:72px 0 45px}.intro p{font-size:22px;color:var(--muted)}.pricing-ledger,.split-section{display:grid;grid-template-columns:1fr 1fr;gap:75px}.pricing-ledger{padding:35px 0 55px;border-block:1px solid var(--line)}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:32px 0}.plan{border:1px solid var(--line);padding:30px}.plan+.plan{border-left:0}.plan>strong{display:block;font:500 48px var(--serif);margin:20px 0}.plan strong small{font:400 14px var(--sans);display:block;margin-top:8px;color:var(--muted)}.plan p{min-height:100px}.inquiry-panel{padding:32px;background:var(--sage);border-radius:8px}.guide-list{list-style:none;padding:0;margin:0 0 50px}.guide-list>li{display:grid;grid-template-columns:50px 1fr 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--line);align-items:center}.guide-list a{text-decoration:none}.guide-list h3{font-size:27px}.guide-list p{font-size:16px;color:var(--muted);margin:0}.number{font:500 30px var(--serif);color:#738b7c}main>article{max-width:800px;margin:65px auto 85px}article h1{font-size:clamp(40px,5vw,60px);margin-top:20px}article h2{font-size:32px;margin:38px 0 18px}article p,article li{line-height:1.85}.deck{font-size:22px;color:var(--muted)}.byline{font-size:14px;color:var(--muted)}.contents{border-block:1px solid var(--line);padding:4px 0 15px;margin:32px 0}.contents h2{font-size:23px;margin:20px 0}.contents ol{padding-left:24px}.sources{border-top:1px solid var(--line);margin-top:40px;font-size:16px}section[id]{scroll-margin-top:120px}.all-guides{display:inline-block;margin-top:20px}
@media(max-width:1000px){.home-hero{gap:36px}.home-hero h1{font-size:60px}.service-list>div{grid-template-columns:52px 1fr 180px;gap:20px}.professional-band{flex-direction:column;align-items:flex-start}.professional-band .button{max-width:none}.price-overview{gap:35px}.tool-directory{padding:10px 22px}.tool-directory strong{font-size:24px}}
@media(max-width:720px){main{padding:0 22px}.header-inner{padding:15px 22px;min-height:82px}.wordmark{font-size:28px}.header-start{display:none}.header-actions{gap:0}.tools-menu nav{width:min(340px,calc(100vw - 44px));top:calc(100% + 14px)}.home-hero{grid-template-columns:1fr;gap:35px;padding:46px 0 25px}.home-hero h1{font-size:51px}.home-hero>div>p:not(.quiet-note){font-size:21px}.actions{gap:20px}.tool-directory>a{padding:22px 0}.section{padding:40px 0}.service-list>div{grid-template-columns:48px 1fr;gap:16px;align-items:start}.service-list>div>div:last-child{grid-column:2}.service-icon{width:48px;height:56px}.service-icon svg{width:28px;height:28px}.service-list h3{font-size:27px}.price-overview,.pricing-ledger,.split-section{grid-template-columns:1fr;gap:25px}.price-overview{padding:26px;margin-bottom:40px}.price-feature{border-left:0;border-top:1px solid #b3c2b9;padding:20px 0 0}.price-feature>strong{font-size:60px}.professional-band{padding:28px;gap:22px}.professional-band .button{font-size:14px}.guide-teaser{flex-direction:column;align-items:flex-start;gap:0}.site-footer{padding:30px 22px}.site-footer nav{gap:16px}.intro{padding:45px 0 25px}.intro p{font-size:20px}.plan-grid{grid-template-columns:1fr}.plan+.plan{border-left:1px solid var(--line);border-top:0}.plan p{min-height:0}.guide-list>li{grid-template-columns:32px 1fr;gap:16px}.guide-list p{grid-column:2}.guide-list h3{font-size:25px}main>article{margin:36px auto}h1{font-size:44px}.inquiry-panel{padding:24px}}
@media print{.site-header,.site-footer,.contents,.actions{display:none}body{background:white;color:black;font-size:12pt}main{padding:0}main>article{max-width:100%;margin:0}article h1{font-size:30pt}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* One semantic palette for every public page. Light preserves the original site. */
:root {
  color-scheme: dark;
  --paper: #101917;
  --ink: #edf3ed;
  --muted: #adbbb2;
  --sage: #1b2924;
  --line: #34473c;
  --button-bg: #c5dac7;
  --button-ink: #17251d;
  --button-hover: #d9eadb;
  --link-hover: #c5dac7;
  --menu-bg: #18241f;
  --band-bg: #20382c;
  --band-ink: #edf3ed;
  --focus: #e0bf83;
  --number: #a8c2af;
}
:root[data-theme="light"] {
  color-scheme: light;
  --paper: #fafbf9;
  --ink: #203d34;
  --muted: #54655e;
  --sage: #e8eeea;
  --line: #d2dbd5;
  --button-bg: #203d34;
  --button-ink: #fff;
  --button-hover: #345c4c;
  --link-hover: #345c4c;
  --menu-bg: #fff;
  --band-bg: #203d34;
  --band-ink: #fff;
  --focus: #a64d35;
  --number: #61796a;
}
a:hover { color: var(--link-hover) }
a:focus-visible, summary:focus-visible, button:focus-visible { outline: 3px solid var(--focus); outline-offset: 5px }
.button { background: var(--button-bg); color: var(--button-ink) }
.button:hover { background: var(--button-hover); color: var(--button-ink) }
.tools-menu nav { background: var(--menu-bg); box-shadow: 0 18px 50px #0003 }
.tool-directory>a, .price-feature { border-color: var(--line) }
.professional-band { background: var(--band-bg); color: var(--band-ink) }
.professional-band .button { background: #fafbf9; color: #203d34 }
.professional-band .button:hover { background: #e8eeea; color: #203d34 }
.number { color: var(--number) }
main p, main li, .inquiry-panel a { overflow-wrap: anywhere }
.split-section>* { min-width: 0 }
.skip { background: var(--menu-bg) }
.wordmark { display: inline-flex; align-items: center; gap: 14px; font-size: 32px }
.wordmark>span { display: inline-flex; align-items: baseline; gap: 12px }
.wordmark small { color: var(--muted); font: 500 15px/1 var(--sans); letter-spacing: .04em }
.brand-mark { width: 48px; height: 48px; object-fit: contain; flex-shrink: 0 }
.header-actions { gap: 22px }
.theme-toggle { width: 44px; height: 44px; padding: 10px; border: 1px solid transparent; border-radius: 50%; background: transparent; color: var(--ink); cursor: pointer; align-items: center; justify-content: center; flex-shrink: 0 }
.theme-toggle:not([hidden]) { display: inline-flex }
.theme-toggle:hover { background: var(--sage); border-color: var(--line) }
.theme-toggle svg { width: 24px; height: 24px }
.theme-moon, :root[data-theme="light"] .theme-sun { display: none }
:root[data-theme="light"] .theme-moon { display: block }
@media(max-width:720px) {
  .wordmark { font-size: 25px; gap: 8px }
  .wordmark>span { gap: 6px }
  .wordmark small { font-size: 11px }
  .brand-mark { width: 36px; height: 36px }
  .header-actions { gap: 10px }
  .tools-menu summary span { display: none }
  .tools-menu summary { justify-content: center; min-width: 36px }
  .site-footer .wordmark { font-size: 25px }
}
@media(max-width:360px) {
  .header-inner { padding-inline: 16px; gap: 8px }
  .wordmark { font-size: 22px }
  .wordmark>span { gap: 4px }
  .header-actions { gap: 4px }
}
@media print {
  :root, :root[data-theme="light"] { --paper: #fff; --ink: #000; --muted: #333; --sage: #fff; --line: #999; --number: #333 }
  .theme-toggle { display: none !important }
  .tool-directory, .price-overview, .service-icon, .professional-band, .inquiry-panel { background: transparent; color: #000 }
  .professional-band p, .quiet-note, .deck, .byline, .service-list small, .intro p { color: #333 }
}
