/* Product footer: compact brand/contact column and clear navigation groups. */
.site-footer {
  background:#f0f5f1;
  border-top:1px solid #d3e1d8;
  color:var(--ink);
  display:block;
  font-size:inherit;
  margin-top:64px;
  padding:0;
}
.site-footer-inner { padding-block:64px 28px; }
.site-footer-main {
  display:grid;
  grid-template-columns:minmax(260px,1.65fr) repeat(4,minmax(0,1fr));
  align-items:start;
  gap:32px;
}
.site-footer-brand { max-width:320px; }
.site-footer-logo { display:inline-flex; align-items:center; gap:10px; color:var(--ink); font-size:1.25rem; font-weight:750; line-height:1.2; min-height:32px; }
.site-footer-logo img { width:28px; height:28px; }
.site-footer-brand>p { margin:16px 0 22px; color:var(--muted); font-size:.875rem; line-height:1.7; }
.site-footer-brand>p a { color:var(--ink); text-decoration:underline; text-decoration-color:#9fb8aa; text-underline-offset:3px; }
.site-footer-brand>p a:hover { color:var(--indigo-dark); text-decoration-color:currentColor; }
.site-footer-contact { display:block; margin:0; padding:0; border:0; }
.site-footer-contact h2 { margin:0; color:var(--ink); font-size:.875rem; font-weight:700; line-height:1.5; }
.site-footer-contact>p { margin:6px 0 10px; color:var(--muted); font-size:.8125rem; line-height:1.65; }
.site-footer-email { display:inline-flex; align-items:center; gap:9px; min-height:44px; max-width:100%; color:var(--indigo-dark); font-size:.875rem; font-weight:650; overflow-wrap:anywhere; }
.site-footer-email svg { flex:none; }
.site-footer-email:hover { text-decoration:underline; text-underline-offset:4px; }
.site-footer-contact-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.site-footer-contact-links a { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid #c7d9cd; border-radius:50%; color:var(--indigo-dark); background:transparent; transition:background-color .15s ease,border-color .15s ease; }
.site-footer-contact-links a:hover { background:#fff; border-color:var(--indigo-dark); }
.site-footer-contact-links a span { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.site-footer-contact-links a[hidden],
.site-footer-email[hidden] { display:none; }
.site-footer-contact-links svg { width:18px; height:18px; flex:none; }
.footer-threads-icon { fill:currentColor; stroke:none; }
.site-footer-column { display:flex; flex-direction:column; gap:0; }
.site-footer-column h2 { margin:6px 0 14px; color:var(--ink); font-size:.6875rem; line-height:1.5; letter-spacing:.065em; text-transform:uppercase; font-weight:750; }
.site-footer-column a { display:inline-flex; align-items:center; width:fit-content; min-height:44px; padding-block:8px; color:var(--muted); font-size:.8125rem; line-height:1.5; text-decoration:none; }
.site-footer-column a:hover { color:var(--indigo-dark); text-decoration:underline; text-underline-offset:4px; }
.site-footer-bottom { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:24px; margin-top:28px; padding-top:24px; border-top:1px solid #cfdfd3; font-size:.75rem; line-height:1.6; }
.site-footer-bottom .launch-badges { flex:none; width:min(362px,100%); margin:0; }
.site-footer-bottom p { margin:0; color:var(--muted); }
.site-footer-copyright { display:flex; flex-direction:column; gap:2px; }
.site-footer-legal { display:flex; flex-wrap:wrap; gap:20px; }
.site-footer-legal a { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); }
.site-footer-legal a:hover { color:var(--indigo-dark); text-decoration:underline; text-underline-offset:3px; }
.site-footer a:focus-visible { outline:2px solid var(--indigo-dark); outline-offset:4px; border-radius:4px; }
@media (max-width:1000px) {
  .site-footer-main { grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px 24px; }
  .site-footer-brand { grid-column:1 / -1; max-width:440px; }
}
@media (max-width:600px) {
  .site-footer { margin-top:48px; }
  .site-footer-inner { padding-block:40px 20px; }
  .site-footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 20px; }
  .site-footer-column h2 { margin-top:0; margin-bottom:10px; }
  .site-footer-bottom { align-items:flex-start; flex-direction:column; gap:8px; margin-top:24px; padding-top:20px; }
}
@media (prefers-reduced-motion:reduce) {
  .site-footer-contact-links a { transition:none; }
}


@font-face { font-family:Montserrat; font-style:normal; font-weight:100 900; font-display:swap; src:url("/assets/fonts/Montserrat-Variable.woff2") format("woff2"); }
[data-folderloom-public-header], .site-footer { --ink:#102b28; --muted:#4b655d; --indigo:#176b5d; --indigo-dark:#105347; font-family:Montserrat,sans-serif; font-size:16px; line-height:1.5; }
[data-folderloom-public-header] *, .site-footer * { box-sizing:border-box; }
[data-folderloom-public-header] a, .site-footer a { text-decoration:none; }
[data-folderloom-public-header] { position:sticky; top:0; z-index:40; background:#fff; border-bottom:1px solid #ccdcd4; }
[data-folderloom-public-header] .nav { width:min(1120px,calc(100% - 48px)); max-width:1120px; margin:0 auto; padding:12px 0; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:18px; position:static; background:transparent; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; }
[data-folderloom-public-header] .brand { display:inline-flex; align-items:center; gap:9px; color:#102b28; font-size:16px; font-weight:800; letter-spacing:-.03em; white-space:nowrap; }
[data-folderloom-public-header] .brand img { width:26px; height:26px; flex:none; }
[data-folderloom-public-header] .brand small { color:#55716c; font-size:9px; font-weight:650; letter-spacing:0; }
[data-folderloom-public-header] .nav-links, [data-folderloom-public-header] .nav-section-links { display:flex; align-items:center; gap:24px; margin:0; }
[data-folderloom-public-header] .nav-links a { display:inline-flex; align-items:center; min-height:44px; color:#55716c; font-size:.82rem; font-weight:650; }
[data-folderloom-public-header] .nav-links a:hover { color:#105347; }
[data-folderloom-public-header] .nav-actions { display:flex; grid-column:3; justify-self:end; }
[data-folderloom-public-header] .nav-cta { display:inline-flex; align-items:center; gap:7px; min-height:44px; padding:9px 14px; border-radius:8px; background:#176b5d; color:#fff; font-size:.82rem; font-weight:750; white-space:nowrap; border:0; box-shadow:none; }
[data-folderloom-public-header] .nav-cta:hover { background:#105347; }
[data-folderloom-public-header] .install-extension-icon { width:16px; height:16px; fill:currentColor; }
[data-folderloom-public-header] a:focus-visible { outline:2px solid #105347; outline-offset:4px; }
.site-footer { font-size:16px; }
.site-footer .site-footer-inner { width:min(1120px,calc(100% - 48px)); margin-inline:auto; }
.site-footer [id] { scroll-margin-top:88px; }
.site-footer .launch-badges { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.site-footer .launch-badges a { display:block; width:min(175px,100%); border-radius:10px; }
.site-footer .launch-badges img { display:block; width:100%; height:auto; }
.site-footer .unikorn-badge img { aspect-ratio:250 / 64; }
.site-footer .producthunt-badge img { aspect-ratio:250 / 54; }
@media(max-width:1000px) { [data-folderloom-public-header] .nav { grid-template-columns:minmax(0,1fr) auto auto; } [data-folderloom-public-header] .nav-section-links { display:none; } }
@media(max-width:700px) { [data-folderloom-public-header] .nav { width:calc(100% - 40px); padding:10px 0; gap:10px; } [data-folderloom-public-header] .brand small { display:none; } }
@media(max-width:560px) { [data-folderloom-public-header] .brand { font-size:.9rem; } [data-folderloom-public-header] .nav-cta { font-size:.77rem; padding:10px 12px; } [data-folderloom-public-header] .nav-cta>span:first-child { font-size:0; } [data-folderloom-public-header] .nav-cta>span:first-child::after { content:attr(data-mobile-label); font-size:.77rem; } .site-footer .site-footer-inner { width:calc(100% - 32px); } }
@media(max-width:480px) { [data-folderloom-public-header] .nav { width:calc(100% - 32px); padding-inline:0; gap:8px; } }

/* Match the guide article rail on static Privacy and Release pages. */
.policy-body .policy.shell,
.release-body .release-page.shell { box-sizing:border-box; width:min(1184px,100%); max-width:1184px; margin-inline:auto; padding-inline:32px; }
@media(max-width:800px) {
  .policy-body .policy.shell,
  .release-body .release-page.shell { max-width:784px; }
}
@media(max-width:520px) {
  .policy-body .policy.shell,
  .release-body .release-page.shell { padding-inline:20px; }
}

/* Compact, non-modal privacy bar; the landing remains usable while undecided. */
.cookie-panel { position:fixed; inset:auto 0 0; z-index:30; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px 24px; padding:14px max(16px,calc((100vw - 1180px)/2)) max(14px,env(safe-area-inset-bottom)); border-top:1px solid #d7e6df; background:#fff; color:var(--ink, #102b28); box-shadow:0 -12px 36px -18px rgb(16 43 40 / .35); max-height:min(60svh,360px); overflow-y:auto; }
.cookie-copy { display:grid; gap:4px; min-width:0; }
.cookie-heading { display:flex; align-items:center; gap:8px; color:var(--indigo-dark, #12655a); }
.cookie-heading svg { flex:none; width:18px; height:18px; }
.cookie-panel .cookie-heading h2 { margin:0; font-size:.9375rem; letter-spacing:-.01em; line-height:1.4; }
.cookie-panel p { margin:0; color:#49675f; font-size:.8125rem; line-height:1.5; }
.cookie-panel .cookie-detail summary { display:inline-flex; align-items:center; width:fit-content; min-height:28px; color:var(--indigo-dark, #12655a); font-size:.75rem; font-weight:650; line-height:1.4; cursor:pointer; }
.cookie-panel .cookie-detail summary:focus-visible { outline:2px solid var(--indigo-dark, #12655a); outline-offset:3px; border-radius:4px; }
.cookie-panel .cookie-detail p { margin:2px 0 0; font-size:.75rem; }
.cookie-panel a { color:var(--indigo-dark, #12655a); text-decoration:underline; text-underline-offset:3px; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:8px; margin:0; }
.cookie-actions button { min-height:44px; padding:8px 16px; border:1px solid #b9cec6; border-radius:8px; background:#fff; color:var(--indigo-dark, #12655a); font:650 13px/1.5 Montserrat,sans-serif; cursor:pointer; }
.cookie-actions button:hover { background:#e6f2eb; }
.cookie-actions [data-cookie-choice="accepted"] { background:#12655a; border-color:#12655a; color:#fff; }
.cookie-actions [data-cookie-choice="accepted"]:hover { background:#105347; }
@media (max-width:700px) { .cookie-panel { grid-template-columns:1fr; gap:8px; padding:10px 16px max(10px,env(safe-area-inset-bottom)); } .cookie-panel .cookie-detail summary { min-height:24px; } .cookie-actions { order:3; } .cookie-actions button { flex:1 1 0; } }

.cookie-panel { font-family:Montserrat,sans-serif; }
.cookie-panel[hidden],[data-cookie-preferences][hidden] { display:none; }
.cookie-panel :focus-visible,[data-cookie-preferences]:focus-visible { outline:2px solid #12655a; outline-offset:4px; }
.site-footer-legal [data-cookie-preferences] { min-height:44px; border:0; padding:8px 0; background:none; color:inherit; font:inherit; cursor:pointer; }
.site-footer-legal [data-cookie-preferences]:hover { text-decoration:underline; text-underline-offset:4px; }
