/* Static fallback styles so the baked homepage renders correctly
   even before the SPA stylesheet loads. Mirrors the design tokens. */
.fw-root{font-family:'Source Sans 3',system-ui,sans-serif;background:#F5F0E8;color:#2C2416;line-height:1.75;font-size:17px;margin:0;}
.fw-root *{box-sizing:border-box;}
.fw-root h1,.fw-root h2,.fw-root h3,.fw-root h4{font-family:'Lora',Georgia,serif;font-weight:400;color:#2C2416;line-height:1.15;margin:0;}
.fw-root a{color:#4A5E3E;text-decoration:none;}
.fw-root a:hover{text-decoration:underline;}
.fw-root .fw-container{max-width:1152px;margin:0 auto;padding-left:1rem;padding-right:1rem;}
.fw-root .fw-banner{background:#F5F0E8;border-bottom:1px solid #D4CBBC;padding:.75rem 1rem;text-align:center;font-size:.875rem;color:#2C2416;font-family:'Lora',Georgia,serif;}
.fw-root .fw-nav{background:#EDE7DB;border-bottom:1px solid #D4CBBC;position:sticky;top:0;z-index:50;}
.fw-root .fw-nav-inner{display:flex;align-items:center;justify-content:space-between;height:80px;max-width:1152px;margin:0 auto;padding-left:1rem;padding-right:1rem;}
.fw-root .fw-logo{height:48px;width:auto;max-width:320px;object-fit:contain;}
.fw-root .fw-nav-links{display:none;align-items:center;gap:2rem;font-family:'Lora',Georgia,serif;font-size:17px;color:#2C2416;}
.fw-root .fw-nav-links a{color:#2C2416;}
.fw-root .fw-btn{display:inline-block;background:#4A5E3E;color:#F5F0E8;padding:10px 20px;border-radius:2px;font-family:'Source Sans 3',sans-serif;font-weight:600;font-size:14px;letter-spacing:.04em;border:none;cursor:pointer;text-decoration:none;}
.fw-root .fw-btn:hover{background:#3B4D31;text-decoration:none;}
.fw-root .fw-section{padding:96px 0;}
.fw-root .fw-card-bg{background:#EDE7DB;}
.fw-root .fw-border-y{border-top:1px solid #D4CBBC;border-bottom:1px solid #D4CBBC;}
.fw-root .fw-badge{font-size:13px;font-weight:600;color:#7A6F60;text-transform:uppercase;letter-spacing:.08em;}
.fw-root .fw-h1{font-size:38px;font-weight:500;}
.fw-root .fw-h2{font-size:38px;}
.fw-root .fw-h3{font-size:20px;}
.fw-root .fw-muted{color:#7A6F60;}
.fw-root .fw-card{background:#F5F0E8;border:1px solid #D4CBBC;border-radius:3px;padding:32px;}
.fw-root .fw-grid-3{display:grid;grid-template-columns:1fr;gap:32px;}
.fw-root .fw-grid-2{display:grid;grid-template-columns:1fr;gap:64px;}
.fw-root .fw-grid-4{display:grid;grid-template-columns:1fr;gap:32px;}
.fw-root .fw-center{text-align:center;}
.fw-root .fw-list{list-style:none;padding:0;margin:0;}
.fw-root .fw-list li{display:flex;align-items:start;margin-bottom:12px;color:#2C2416;}
.fw-root .fw-list li::before{content:"\2714";color:#4A5E3E;margin-right:12px;margin-top:4px;font-size:12px;}
.fw-root .fw-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:40px;}
.fw-root .fw-blend{object-fit:contain;mix-blend-mode:multiply;}
.fw-root .fw-logos img{height:48px;max-width:160px;object-fit:contain;mix-blend-mode:multiply;opacity:.8;}
.fw-root .fw-hero-img{width:100%;max-width:400px;height:auto;object-fit:contain;mix-blend-mode:multiply;}
.fw-root .fw-quote{font-family:'Lora',Georgia,serif;font-size:34px;}
.fw-root .fw-footer{background:#2C2416;color:#D4CBBC;font-family:'Source Sans 3',sans-serif;font-size:14px;padding:64px 1rem;}
.fw-root .fw-footer a{color:#F5F0E8;}
.fw-root .fw-footer-grid{display:grid;grid-template-columns:1fr;gap:48px;max-width:1152px;margin:0 auto;}
.fw-root .fw-footer h4{color:#F5F0E8;font-family:'Lora',Georgia,serif;font-size:16px;margin-bottom:16px;}
.fw-root .fw-footer ul{list-style:none;padding:0;margin:0;}
.fw-root .fw-footer li{margin-bottom:8px;}
.fw-root .fw-footer-bottom{max-width:1152px;margin:48px auto 0;padding-top:32px;border-top:1px solid rgba(212,203,188,.2);display:flex;flex-direction:column;gap:16px;align-items:center;}
@media(min-width:768px){
  .fw-root .fw-nav-links{display:flex;}
  .fw-root .fw-grid-3{grid-template-columns:repeat(3,1fr);}
  .fw-root .fw-grid-4{grid-template-columns:repeat(4,1fr);}
  .fw-root .fw-grid-2{grid-template-columns:1fr 1fr;}
  .fw-root .fw-footer-grid{grid-template-columns:repeat(4,1fr);}
  .fw-root .fw-footer-bottom{flex-direction:row;justify-content:space-between;}
  .fw-root .fw-section{padding:128px 0;}
}
