#cw-root{position:fixed;right:clamp(1rem,2vw,1.5rem);bottom:clamp(1rem,2vw,1.5rem);z-index:60;font-family:var(--sans)}#cw-launcher{display:none;align-items:center;gap:.5rem;background:var(--accent);color:var(--on-dark);border:0;cursor:pointer;padding:.7rem 1.05rem;border-radius:999px;font-family:var(--sans);font-size:var(--step--1);font-weight:600;box-shadow:0 14px 34px -12px #142c458c;transition:transform .2s var(--ease),background .2s var(--ease)}html.chat-js #cw-launcher{display:inline-flex}#cw-launcher:hover{transform:translateY(-2px);background:var(--accent-2)}#cw-root.cw-open #cw-launcher{display:none}#cw-launcher svg{flex:none}.cw-teaser{position:absolute;bottom:calc(100% + .6rem);right:0;width:min(290px,calc(100vw - 2rem));background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:.8rem 1.9rem .8rem .95rem;box-shadow:0 18px 44px -20px #142c4580;cursor:pointer;animation:cwTease .4s var(--ease)}.cw-teaser p{margin:0;font-size:var(--step--1);line-height:1.45;color:var(--ink)}.cw-teaser-x{position:absolute;top:.3rem;right:.45rem;background:transparent;border:0;font-size:1.15rem;line-height:1;color:var(--ink-soft);cursor:pointer;padding:0 .15rem}@keyframes cwTease{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}#cw-panel{display:none;width:min(336px,calc(100vw - 1.5rem));height:min(496px,calc(100dvh - 2rem));background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;flex-direction:column;box-shadow:0 30px 70px -28px #142c4599}#cw-root.cw-open #cw-panel{display:flex}.cw-head{background:var(--accent);color:var(--on-dark);padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between}.cw-title{font-family:var(--serif);font-size:var(--step-0);margin:0;color:#fff}.cw-sub{margin:.1rem 0 0;font-size:.72rem;color:#f6f1e8cc}#cw-close{background:transparent;border:0;color:var(--on-dark);font-size:1.6rem;line-height:1;cursor:pointer;padding:0 .25rem}#cw-close:hover{color:#fff}.cw-msgs{flex:1;overflow-y:auto;padding:.9rem;display:flex;flex-direction:column;gap:.5rem;background:var(--paper);scroll-behavior:smooth}.cw-row{display:flex;flex-direction:column;gap:.15rem;max-width:88%;animation:cwIn .34s var(--ease)}@keyframes cwIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.cw-row-bot{align-self:flex-start;align-items:flex-start}.cw-row-user{align-self:flex-end;align-items:flex-end}.cw-from{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);padding:0 .35rem}.cw-msg{padding:.55rem .8rem;border-radius:14px;font-size:var(--step--1);line-height:1.45;white-space:pre-wrap}.cw-bot{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-bottom-left-radius:4px}.cw-user{background:var(--accent);color:var(--on-dark);border-bottom-right-radius:4px}.cw-typing{display:inline-flex;gap:4px;align-items:center;min-height:1.1em}.cw-typing span{width:6px;height:6px;border-radius:50%;background:var(--ink-soft);display:inline-block;animation:cwDot 1.2s infinite ease-in-out}.cw-typing span:nth-child(2){animation-delay:.18s}.cw-typing span:nth-child(3){animation-delay:.36s}@keyframes cwDot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.cw-opts{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 .9rem}.cw-opts:not(:empty){padding-bottom:.55rem}.cw-chip{background:transparent;border:1px solid var(--accent);color:var(--accent);border-radius:999px;padding:.42rem .75rem;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s;font-family:var(--sans);text-align:left}.cw-chip:hover{background:var(--accent);color:var(--on-dark)}.cw-foot{display:flex;gap:.4rem;padding:.55rem;border-top:1px solid var(--line);background:var(--surface)}#cw-input{flex:1;font:inherit;font-size:var(--step--1);padding:.5rem .75rem;border:1px solid var(--line);border-radius:999px;background:var(--paper)}#cw-input:focus{outline:2px solid var(--accent);border-color:var(--accent)}.cw-foot button{background:var(--accent);color:var(--on-dark);border:0;border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.cw-disc{margin:0;padding:0 .9rem .65rem;font-size:.64rem;color:var(--ink-soft);background:var(--surface);text-align:center}@media(prefers-reduced-motion:reduce){#cw-launcher{transition:none}.cw-teaser,.cw-typing span,.cw-row{animation:none}.cw-msgs{scroll-behavior:auto}}:root{--accent: #1B3A5B;--accent-2: #142C45;--accent-soft: #B08344;--ink: #15212B;--ink-soft: #515B66;--paper: #FAF6EF;--paper-2: #F2EBDF;--surface: #FFFFFF;--line: #E7DFD1;--on-dark: #F6F1E8;--serif: "Lora", "Iowan Old Style", Palatino, Georgia, serif;--sans: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--step--1: clamp(.84rem, .81rem + .15vw, .94rem);--step-0: clamp(1rem, .96rem + .25vw, 1.13rem);--step-1: clamp(1.28rem, 1.12rem + .7vw, 1.6rem);--step-2: clamp(1.6rem, 1.3rem + 1.3vw, 2.25rem);--step-3: clamp(2.1rem, 1.6rem + 2.4vw, 3.4rem);--step-4: clamp(2.8rem, 1.9rem + 4.2vw, 5.6rem);--wrap: 74rem;--gap: clamp(1rem, .6rem + 1.6vw, 2rem);--section-y: clamp(4rem, 2.4rem + 6.5vw, 8rem);--radius: 3px;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--sans);font-size:var(--step-0);line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}h1{font-size:var(--step-4);margin:0 0 .3em}h2{font-size:var(--step-3);margin:0 0 .5em}h3{font-size:var(--step-1);margin:0 0 .4em;font-weight:600}p{margin:0 0 1em;max-width:64ch}img{max-width:100%;height:auto;display:block}.wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}.muted{color:var(--ink-soft)}.lede{font-size:var(--step-1);line-height:1.5;color:var(--ink);max-width:42ch;font-weight:400}.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.22em;font-size:var(--step--1);color:var(--accent-soft);font-weight:600;margin:0 0 1rem}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--ink);color:#fff;padding:.5rem 1rem;z-index:50}.btn{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;padding:.85rem 1.6rem;border-radius:var(--radius);font-family:var(--sans);font-size:var(--step--1);font-weight:600;letter-spacing:.02em;background:var(--accent);color:var(--on-dark);border:1.5px solid var(--accent);transition:transform .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease)}.btn:hover{transform:translateY(-2px);background:var(--accent-2);box-shadow:0 12px 28px -14px #142c4599}.btn-ghost{background:transparent;color:var(--accent)}.btn-ghost:hover{background:var(--accent);color:var(--on-dark)}.btn-light{background:var(--on-dark);color:var(--accent);border-color:var(--on-dark)}.btn-light:hover{background:#fff}.btn-ghost-light{background:transparent;color:var(--on-dark);border-color:#f6f1e880}.btn-ghost-light:hover{background:#f6f1e81f}.link-arrow{color:var(--accent);font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.link-arrow:hover{border-color:var(--accent)}.site-header{position:fixed;top:0;left:0;right:0;z-index:30;transition:background .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);border-bottom:1px solid transparent}.header-inner{display:flex;align-items:center;gap:var(--gap);padding:1.15rem 0}.brand{font-family:var(--serif);font-size:var(--step-0);font-weight:500;text-decoration:none;color:var(--ink);letter-spacing:-.01em;white-space:nowrap;transition:color .35s var(--ease)}.site-header nav{display:flex;gap:.85rem;margin-left:auto;flex-wrap:nowrap;align-items:center}.site-header nav a{text-decoration:none;font-size:var(--step--1);color:var(--ink-soft);letter-spacing:.01em;transition:color .2s}.site-header nav a:hover{color:var(--accent)}.cta-pill{text-decoration:none;background:var(--accent)!important;color:var(--on-dark)!important;padding:.5rem .95rem;margin-left:.35rem;border-radius:var(--radius);font-size:var(--step--1);font-weight:600;white-space:nowrap;transition:background .25s var(--ease)}.cta-pill:hover{background:var(--accent-2)!important}.site-header.over-hero .brand,.site-header.over-hero nav a{color:var(--on-dark)}.site-header.scrolled{background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(12px);border-bottom-color:var(--line);box-shadow:0 1px #00000005}.site-header.scrolled .brand{color:var(--ink)}.site-header.scrolled nav a{color:var(--ink-soft)}.site-header.scrolled nav a:hover{color:var(--accent)}.section{padding-block:var(--section-y)}.section+.section:not(.bare){border-top:1px solid var(--line)}.site-footer{border-top:1px solid var(--line);background:var(--accent-2);color:var(--on-dark);padding-block:var(--section-y) 1.75rem}.site-footer .footer-brand{font-family:var(--serif);font-size:var(--step-2);margin:0 0 .4rem;color:#fff;font-weight:400}.site-footer .muted{color:#f6f1e89e}.footer-inner{display:flex;justify-content:space-between;gap:var(--gap);flex-wrap:wrap}.footer-contact{display:flex;flex-direction:column;gap:.35rem}.footer-contact a{text-decoration:none;color:var(--on-dark);border-bottom:1px solid rgba(246,241,232,.3);width:fit-content}.footer-contact a:hover{border-color:var(--on-dark)}.fineprint{font-size:var(--step--1);margin-top:2.5rem;color:#f6f1e880}.page-hero{padding-block:calc(var(--section-y) + 4rem) 0}.page-hero h1{max-width:18ch}.page-hero .lede{margin-top:.75rem}.prose>*{max-width:65ch}.prose>*+*{margin-top:1.15em}.prose h2{font-size:var(--step-2);margin-top:1.7em}.prose ul{list-style:none;padding-left:0;margin:0;display:grid;gap:.6rem}.prose li{position:relative;padding-left:1.5rem}.prose li:before{content:"";position:absolute;left:.1rem;top:.6em;width:.5rem;height:.5rem;background:var(--accent-soft);border-radius:1px;transform:rotate(45deg)}.callout{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent-soft);border-radius:var(--radius);padding:1.2rem 1.4rem}.callout p:last-child{margin-bottom:0}.cta-band{background:var(--accent-2);color:var(--on-dark);text-align:center}.cta-band h2{color:#fff}.cta-band p{margin-inline:auto;color:#f6f1e8d1}.cta-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:1.25rem}.bg-surface{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.7rem 1.6rem;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.card:hover{transform:translateY(-3px);box-shadow:0 22px 50px -30px #142c4566}.card h3{color:var(--accent)}.nap{display:grid;gap:.5rem;font-size:var(--step-1);list-style:none;padding:0;margin:0}.nap a{color:var(--accent);text-decoration:none}.nap a:hover{text-decoration:underline}.field{display:grid;gap:.35rem;margin-bottom:1rem}.field label{font-size:var(--step--1);font-weight:600}.field input,.field textarea{font:inherit;padding:.7rem .85rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%}.field input:focus,.field textarea:focus{outline:2px solid var(--accent);border-color:var(--accent)}.rating-big{font-family:var(--serif);font-size:var(--step-4);line-height:1;color:var(--accent)}.reveal{opacity:1}html.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}html.js .reveal.in{opacity:1;transform:none}html.js [data-hero]>*{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}html.js [data-hero].in>*{opacity:1;transform:none}html.js [data-hero].in>*:nth-child(2){transition-delay:.08s}html.js [data-hero].in>*:nth-child(3){transition-delay:.16s}html.js [data-hero].in>*:nth-child(4){transition-delay:.24s}html.js [data-hero].in>*:nth-child(5){transition-delay:.32s}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;animation:none!important;transition:none!important}html.js .reveal,html.js [data-hero]>*{opacity:1!important;transform:none!important}}.nav-toggle{display:none}@media(max-width:1180px){html.nav-js .nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;margin-left:auto;padding:11px 9px;background:transparent;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.nav-toggle-bar{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease),opacity .2s var(--ease)}.site-header.over-hero:not(.scrolled) .nav-toggle-bar{background:var(--on-dark)}html.nav-js .nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}html.nav-js .nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(2){opacity:0}html.nav-js .nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}html.nav-js .site-header nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:.4rem 0 .85rem;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 26px 44px -30px #142c4580;max-height:70vh;max-height:calc(100dvh - 58px);overflow-y:auto}html.nav-js .site-header nav.open{display:flex}html.nav-js .site-header nav a{padding:.95rem clamp(1.25rem,5vw,2rem);font-size:var(--step-0);border-bottom:1px solid var(--line)}html.nav-js .site-header nav a,html.nav-js .site-header.over-hero nav a,html.nav-js .site-header.scrolled nav a{color:var(--ink)}html.nav-js .site-header nav a:hover{color:var(--accent)}html.nav-js .site-header nav .cta-pill{margin:.9rem clamp(1.25rem,5vw,2rem) .2rem;padding:.9rem 1.1rem;text-align:center;border-bottom:0}}@media(max-width:680px){.cards{grid-template-columns:1fr}}.nav-cta{display:none}@media(max-width:640px){.header-inner>.cta-pill{display:none}html.nav-js .site-header.nav-open .nav-cta{display:inline-flex;width:100%;justify-content:center;margin-top:.75rem;padding:1rem 1.5rem;font-size:var(--step-0)}html:not(.nav-js) .header-inner>.cta-pill{display:inline-flex}}:where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--accent);outline-offset:2px}a[href^="mailto:"]{overflow-wrap:anywhere}
