:root{--ink:#101828;--ink-2:#344054;--muted:#667085;--line:#e4e7ec;--paper:#fbfaf7;--card:#fff;--accent:#0e7490;--accent-ink:#155e75;--accent-soft:#e6f4f7;--max:1120px;--radius:14px;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--serif:ui-serif, "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}a{color:var(--accent-ink);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.12}h1{font-size:clamp(2.3rem,5.2vw,4rem)}h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}h3{font-size:1.2rem;font-family:var(--sans);font-weight:650}p{margin:0}.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);font-size:.8rem;font-weight:700}.lede{color:var(--ink-2);max-width:44ch;font-size:1.2rem}.btn{cursor:pointer;font-size:1rem;font-weight:650;font-family:var(--sans);border:1.5px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.85rem 1.25rem;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{color:#fff;background:#243044}.btn-primary:hover{background:var(--ink)}.btn-ghost{border-color:var(--line);color:var(--ink);background:0 0}.btn-ghost:hover{border-color:var(--ink)}section{padding:5rem 0}.section-head{gap:.75rem;max-width:60ch;margin-bottom:2.5rem;display:grid}.grid{gap:1.25rem;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);align-content:start;gap:.7rem;padding:1.6rem;display:grid}.card p{color:var(--ink-2)}.card .result{color:var(--ink);border-left:3px solid var(--accent);padding-left:.75rem;font-weight:600}.nav{z-index:10;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#fbfaf7d9;position:sticky;top:0}.nav .wrap{justify-content:space-between;align-items:center;height:64px;display:flex}.brand{color:var(--ink);font-family:"Archivo", var(--sans);align-items:center;gap:.6rem;display:flex}.brand-re{letter-spacing:-.06em;font-size:34px;font-weight:900;line-height:1}.brand-rest{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);margin-top:2px;font-size:15px;font-weight:400}@media (width<=720px){.brand-re{font-size:30px}.brand-rest{font-size:13px}}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-links a{color:var(--ink-2);font-size:.95rem;font-weight:550}.nav-links a.btn-primary{color:#fff}@media (width<=720px){.nav-links a:not(.btn){display:none}}.hero{padding:6rem 0 4rem}.hero .wrap{gap:1.6rem;display:grid}.hero h1{max-width:26ch}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.hero-proof{color:var(--muted);flex-wrap:wrap;gap:1.5rem;margin-top:1rem;font-size:.95rem;display:flex}.hero-proof strong{color:var(--ink)}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;padding:1.5rem 0;overflow:hidden}.marquee-label{text-align:center;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;font-size:.8rem}.marquee-track{gap:3rem;width:max-content;animation:40s linear infinite scroll;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-item{white-space:nowrap;font-family:var(--serif);color:var(--ink-2);opacity:.85;font-size:1.35rem}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.marquee-track{flex-wrap:wrap;justify-content:center;width:auto;animation:none}}.product{border-radius:var(--radius);background:var(--ink);color:#fff;gap:.9rem;padding:2rem;display:grid}.product .tag{color:#67e8f9;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;font-weight:700}.product h3{color:#fff;font-family:var(--serif);font-size:1.6rem}.product ul{color:#cbd5e1;gap:.3rem;margin:0;padding-left:1.1rem;display:grid}.testimonial{grid-template-rows:1fr auto;gap:1.25rem;margin:0}.quote{font-family:var(--serif);color:var(--ink);margin:0;font-size:1.15rem}.quote p{margin:0 0 .8rem}.quote p:last-child{margin-bottom:0}.grid-1{grid-template-columns:minmax(0,720px)}.who{align-items:center;gap:.8rem;margin:0;display:flex}.avatar{object-fit:cover;border-radius:50%;flex:none;width:48px;height:48px}.avatar-initials{background:var(--accent-soft);color:var(--accent-ink);letter-spacing:.02em;place-items:center;font-size:.95rem;font-weight:700;display:grid}.who-text{line-height:1.3;display:grid}.who-text strong{color:var(--ink);font-size:.98rem}.who-text span{color:var(--muted);font-size:.9rem}.post{border-top:1px solid var(--line);gap:.4rem;padding:1.4rem 0;display:grid}.post:last-child{border-bottom:1px solid var(--line)}.post time{color:var(--muted);font-size:.9rem}.post h3{font-family:var(--serif);font-size:1.35rem;font-weight:600}.prose{max-width:68ch;font-size:1.08rem}.prose h2{margin:2.2rem 0 .8rem;font-size:1.6rem}.prose h3{margin:1.6rem 0 .5rem}.prose p,.prose ul,.prose ol{color:var(--ink-2);margin:0 0 1.1rem}.prose table{border-collapse:collapse;width:100%;margin:1rem 0 1.5rem;font-size:.95rem}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);padding:.5rem .6rem}.prose code{background:var(--accent-soft);border-radius:4px;padding:.1rem .35rem;font-size:.92em}.prose blockquote{border-left:3px solid var(--accent);color:var(--ink-2);margin:1.2rem 0;padding-left:1rem}.contact{border-top:1px solid var(--line);background:#fff}.contact .wrap{grid-template-columns:1fr 1.2fr;align-items:start;gap:2.5rem;display:grid}@media (width<=800px){.contact .wrap{grid-template-columns:1fr}}form{gap:.9rem;display:grid}.row{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}@media (width<=520px){.row{grid-template-columns:1fr}}label{color:var(--ink-2);gap:.3rem;font-size:.9rem;font-weight:600;display:grid}input,textarea{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;width:100%;padding:.75rem .85rem}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-note{color:var(--muted);font-size:.9rem}.consent{color:var(--muted);cursor:pointer;grid-template-columns:auto 1fr;align-items:start;gap:.65rem;font-size:.85rem;font-weight:400;line-height:1.5}.consent input{width:1.05rem;height:1.05rem;accent-color:var(--accent);cursor:pointer;margin:.2rem 0 0}form .btn[disabled]{opacity:.45;cursor:not-allowed}.form-status{min-height:1.4em;font-weight:600}.form-status.ok{color:#047857}.form-status.err{color:#b42318}footer{color:var(--muted);padding:2.5rem 0;font-size:.9rem}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}form .btn{justify-self:start}.marquee{padding:2.25rem 0}.marquee-item{font-family:var(--sans);letter-spacing:-.01em;color:var(--ink);opacity:1;align-items:center;gap:.9rem;font-size:1.6rem;font-weight:700;display:inline-flex}.mq-mark{border-radius:12px;width:56px;height:56px}.mq-wordmark{width:auto;height:48px}.marquee-track{gap:5rem;animation-duration:60s}.products{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem;display:grid}.product{color:var(--ink);border:1px solid var(--line);background:#fff;gap:0;padding:0;display:grid;overflow:hidden}.product.has-shot{grid-column:1/-1;grid-template-columns:minmax(280px,.9fr) 1.4fr;align-items:center}@media (width<=800px){.product.has-shot{grid-template-columns:1fr}}.product-body{align-content:start;gap:.8rem;padding:2rem;display:grid}.product h3{color:var(--ink);font-family:var(--serif);font-size:1.45rem;font-weight:600}.product p{color:var(--ink-2)}.product a{color:var(--accent-ink)}.product-brand{align-items:center;gap:.7rem;min-height:44px;display:flex}.brand-mark{border-radius:10px;width:44px;height:44px}.brand-wordmark{width:auto;height:40px}.brand-name{letter-spacing:-.01em;font-size:1.25rem;font-weight:750}.product-shot{background:linear-gradient(135deg,#e6f4f7,#f1f5f9);align-items:center;height:100%;padding:1.5rem 0 1.5rem 1.5rem;display:flex}.product-shot img{border:1px solid var(--line);border-right:0;border-radius:10px 0 0 10px;box-shadow:0 10px 30px #10182826}.product.placeholder{border-style:dashed}.product.placeholder .product-body{opacity:.6}.built .card{gap:.45rem;padding:1.35rem 1.5rem}.built .card h3{font-size:1.08rem}.built .card p{font-size:.97rem}.problems{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0 3rem;margin:0;padding:0;list-style:none;display:grid}.problems li{border-bottom:1px solid var(--line)}.problems details{padding:.2rem 0}.problems summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 0;font-size:1.1rem;font-weight:700;list-style:none;display:flex}.problems summary::-webkit-details-marker{display:none}.problems summary:after{content:"+";background:var(--accent-soft);width:26px;height:26px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;font-size:1.1rem;font-weight:700;line-height:1;transition:transform .2s;display:grid}.problems details[open] summary:after{content:"−"}.problems summary:hover{color:var(--accent-ink)}.problems details p{color:var(--ink-2);margin:0;padding:0 2.5rem 1.1rem 0;font-size:.98rem;line-height:1.55}.about{border-top:1px solid var(--line);background:#fff}.about .wrap{grid-template-columns:1fr minmax(220px,340px);align-items:center;gap:3.5rem;display:grid}.about-photo{order:2}.about-body{order:1}@media (width<=800px){.about .wrap{grid-template-columns:1fr;gap:2rem}.about .about-photo{order:0;justify-self:start;max-width:220px}}.about-photo{aspect-ratio:1;background:var(--accent-soft);max-width:320px;box-shadow:0 0 0 1px var(--line), 0 12px 32px #1018281a;border-radius:50%;justify-self:center;position:relative;overflow:hidden}.about-photo img{object-fit:cover;object-position:center 20%;width:100%;height:100%}.about-photo-missing{color:var(--accent-ink);letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:none;position:absolute;inset:0}.about-photo.missing img{display:none}.about-photo.missing .about-photo-missing{display:flex}.about-body{gap:1rem;max-width:60ch;display:grid}.about-body p:not(.eyebrow){color:var(--ink-2);font-size:1.08rem}
