/* Serenity Farmhouse — sfn- (crème / encre / terracotta / sauge) */
:root{--paper:#faf6ee;--ink:#2b241c;--soft:#6b5f50;--terra:#9c4a32;--sage:#5c6b4f;--line:#e5dcc9;--band:#f0e7d6}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Georgia,'Times New Roman',serif}
img{max-width:100%;height:auto;display:block}
a{color:var(--terra)}a:hover{color:var(--sage)}
.sfn-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 5vw;border-bottom:1px solid var(--line);background:#fffdf8}
.sfn-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:700;letter-spacing:.02em}
.sfn-top nav ul{display:flex;flex-wrap:wrap;gap:14px;list-style:none;margin:0;padding:0;font-size:14.5px}
.sfn-top nav a{text-decoration:none;color:var(--soft)}.sfn-top nav a:hover{color:var(--terra)}
.sfn-hero-band{position:relative;height:300px;max-height:38vh}
.sfn-hero-band__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sfn-hero-band__voile{position:absolute;inset:0;background:rgba(41,29,20,.62)}
.sfn-hero-band__inner{position:relative;max-width:900px;margin:0 auto;padding:56px 5vw;color:#f6efe2;text-align:center}
.sfn-hero-band__inner h1{font-size:clamp(26px,3.6vw,42px);margin:0 0 10px;line-height:1.15}
.sfn-hero-band__inner p{margin:0 auto;max-width:62ch;font-size:17px}
.sfn-sec{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--sage);margin:34px 5vw 12px}
.sfn-gate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;margin:0 5vw 8px;padding:0}
.sfn-gate{background:#fffdf8;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.sfn-gate img{aspect-ratio:16/9;object-fit:cover;width:100%}
.sfn-gate div{padding:12px 14px 16px}.sfn-gate h3{margin:0 0 6px;font-size:18px}
.sfn-gate p{margin:0;font-size:14.5px;color:var(--soft)}
.sfn-flow{list-style:none;margin:10px 5vw 40px;padding:0;display:grid;gap:16px}
.sfn-card{display:grid;grid-template-columns:220px 1fr;gap:16px;background:#fffdf8;border:1px solid var(--line);border-radius:10px;padding:12px}
.sfn-card img{width:220px;aspect-ratio:8/5;object-fit:cover;border-radius:6px}
.sfn-card h3{margin:2px 0 6px;font-size:19px}
.sfn-card p{margin:0;font-size:15px;color:var(--soft)}
.sfn-date{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--sage);margin:0 0 4px}
.sfn-crumb{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:18px 5vw 0;padding:0;font-size:13.5px;color:var(--soft)}
.sfn-crumb li+li::before{content:'›';margin-right:8px;color:var(--terra)}
.sfn-sheet{max-width:820px;margin:26px auto 60px;padding:0 5vw}
.sfn-head h1{font-size:clamp(26px,3.4vw,38px);line-height:1.18;margin:6px 0 10px}
.sfn-stand{font-size:19px;color:var(--soft);font-style:italic;margin:0 0 6px}
.sfn-hero{margin:22px 0}.sfn-hero figcaption{font-size:13.5px;color:var(--soft);margin-top:8px}
.sfn-body{font-size:18px}.sfn-body h2{font-size:24px;margin:30px 0 10px;color:var(--ink)}
.sfn-body p{margin:0 0 16px}.sfn-body ul{margin:0 0 16px;padding-left:22px}
.sfn-related{border-top:1px solid var(--line);margin-top:26px;padding-top:14px}
.sfn-related ul{padding-left:20px}.sfn-related li{margin-bottom:8px}
.sfn-scope{background:var(--band);border-left:4px solid var(--sage);padding:14px 18px;border-radius:6px;margin:18px 0}
.sfn-scope p{margin:6px 0 0}
.sfn-foot{border-top:1px solid var(--line);background:#fffdf8;padding:22px 5vw 34px;text-align:center;font-size:14px;color:var(--soft)}
.sfn-foot p{margin:4px 0}
@media(max-width:760px){
.sfn-gate-grid{grid-template-columns:repeat(2,1fr)}
.sfn-card{grid-template-columns:1fr}.sfn-card img{width:100%}
.sfn-top{flex-direction:column;gap:8px}
}
@media(max-width:480px){.sfn-gate-grid{grid-template-columns:1fr}}
