:root{--pf-bg:#fff;--pf-bg-soft:#f5f6f8;--pf-bg-alt:#fafbfc;--pf-fg:#0e1c2b;--pf-fg-muted:#4a5a6c;--pf-fg-subtle:#6b7785;--pf-rule:#e3e7ec;--pf-accent:#0d3a64;--pf-accent-hover:#082642;--pf-accent-fg:#fff;--pf-radius:6px;--pf-radius-lg:10px;--pf-shadow-sm:0 1px 2px #0e1c2b0a;--pf-shadow-md:0 4px 14px #0e1c2b0f;--pf-content:1100px;--pf-prose:720px;--pf-font-body:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--pf-font-display:"Iowan Old Style", "Palatino Linotype", Palatino, "Source Serif Pro", Georgia, serif}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--pf-bg);color:var(--pf-fg);font-family:var(--pf-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px;line-height:1.55}body{flex-direction:column;min-height:100vh;display:flex}a{color:var(--pf-accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}a:hover{color:var(--pf-accent-hover)}#app{display:contents}.site{flex-direction:column;min-height:100vh;display:flex}.site-header{background:var(--pf-bg);border-bottom:1px solid var(--pf-rule)}.site-header__inner{max-width:var(--pf-content);align-items:center;margin:0 auto;padding:1.25rem 1.5rem;display:flex}.brand{color:var(--pf-fg);align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand:hover{color:var(--pf-accent)}.brand__mark{background:var(--pf-accent);width:2.4rem;height:2rem;color:var(--pf-accent-fg);border-radius:var(--pf-radius);letter-spacing:.04em;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}.brand__name{font-family:var(--pf-font-display);letter-spacing:.005em;font-size:1.05rem;font-weight:600}.site-main{flex:1}.site-footer{background:var(--pf-bg-soft);border-top:1px solid var(--pf-rule);margin-top:5rem}.site-footer__inner{max-width:var(--pf-content);color:var(--pf-fg-muted);grid-template-columns:1.4fr 1fr 1.4fr;gap:2rem;margin:0 auto;padding:2.5rem 1.5rem;font-size:.92rem;display:grid}.site-footer__col{flex-direction:column;gap:.25rem;display:flex}.site-footer__col--address strong{color:var(--pf-fg);margin-bottom:.25rem}.site-footer__col--links{flex-direction:row;align-items:center;gap:1.5rem}.site-footer__col--links a{color:var(--pf-fg-muted)}.site-footer__col--copy{text-align:right;color:var(--pf-fg-subtle);align-self:end}@media (width<=720px){.site-footer__inner{grid-template-columns:1fr;gap:1.5rem}.site-footer__col--copy{text-align:left}}.section__inner{max-width:var(--pf-content);margin:0 auto;padding:4rem 1.5rem}.section__title{font-family:var(--pf-font-display);letter-spacing:-.005em;color:var(--pf-fg);margin:0 0 .75rem;font-size:clamp(1.6rem,2.4vw,2rem);font-weight:600}.section__lede{max-width:var(--pf-prose);color:var(--pf-fg-muted);margin:0 0 2.5rem;font-size:1.05rem}.hero{background:linear-gradient(180deg, #f5f8fb 0%, var(--pf-bg) 100%);border-bottom:1px solid var(--pf-rule)}.hero__inner{max-width:var(--pf-content);margin:0 auto;padding:5rem 1.5rem 4.5rem}.hero__eyebrow{color:var(--pf-accent);letter-spacing:.06em;text-transform:uppercase;background:#0d3a6414;border-radius:999px;margin:0 0 1rem;padding:.25rem .6rem;font-size:.78rem;font-weight:600;display:inline-block}.hero__title{font-family:var(--pf-font-display);letter-spacing:-.012em;max-width:22ch;color:var(--pf-fg);margin:0 0 1.25rem;font-size:clamp(2rem,4.5vw,3.1rem);font-weight:600;line-height:1.15}.hero__lede{color:var(--pf-fg-muted);max-width:60ch;margin:0;font-size:1.15rem;line-height:1.6}.products{background:var(--pf-bg)}.product-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:grid}.product-card{background:var(--pf-bg-alt);border:1px solid var(--pf-rule);border-radius:var(--pf-radius-lg);box-shadow:var(--pf-shadow-sm);flex-direction:column;gap:1rem;padding:1.75rem 1.5rem 1.5rem;transition:box-shadow .18s,transform .18s;display:flex}.product-card:hover{box-shadow:var(--pf-shadow-md);transform:translateY(-1px)}.product-card--coming-soon{opacity:.92}.product-card__header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.product-card__name{font-family:var(--pf-font-display);color:var(--pf-fg);margin:0;font-size:1.15rem;font-weight:600}.product-card__badge{letter-spacing:.05em;text-transform:uppercase;color:var(--pf-fg-muted);white-space:nowrap;background:#0e1c2b0f;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:600}.product-card__blurb{color:var(--pf-fg-muted);flex:1;margin:0;font-size:.97rem;line-height:1.55}.product-card__footer{border-top:1px solid var(--pf-rule);margin-top:auto;padding-top:.5rem}.product-card__link{color:var(--pf-accent);font-size:.93rem;font-weight:600;text-decoration:none}.product-card__link:hover{text-decoration:underline}.product-card__link--muted{color:var(--pf-fg-subtle);cursor:default}.contact{background:var(--pf-bg-soft);border-top:1px solid var(--pf-rule)}.contact__details{background:var(--pf-bg);border:1px solid var(--pf-rule);border-radius:var(--pf-radius-lg);box-shadow:var(--pf-shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem 3rem;padding:1.75rem;display:flex}.contact__address{color:var(--pf-fg-muted);flex-direction:column;gap:.15rem;font-size:.97rem;font-style:normal;display:flex}.contact__address strong{color:var(--pf-fg);font-size:1.02rem}.contact__cta{background:var(--pf-accent);color:var(--pf-accent-fg);border-radius:var(--pf-radius);align-items:center;padding:.85rem 1.4rem;font-size:1rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.contact__cta:hover{background:var(--pf-accent-hover);color:var(--pf-accent-fg)}.legal{max-width:var(--pf-prose);margin:0 auto;padding:4rem 1.5rem 3rem}.legal__header{border-bottom:1px solid var(--pf-rule);margin-bottom:2.5rem;padding-bottom:1.5rem}.legal__header h1{font-family:var(--pf-font-display);letter-spacing:-.005em;margin:0 0 .5rem;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:600}.legal__effective{color:var(--pf-fg-subtle);margin:0;font-size:.95rem}.legal__body h2{font-family:var(--pf-font-display);color:var(--pf-fg);margin:2.25rem 0 .75rem;font-size:1.2rem;font-weight:600}.legal__body p,.legal__body ul{color:var(--pf-fg);margin:0 0 1rem;font-size:1rem;line-height:1.65}.legal__body ul{padding-left:1.5rem}.legal__body li{margin-bottom:.4rem}
