:root { --paper:#f8f3eb; --surface:#fffdf9; --ink:#20211f; --muted:#77756d; --terracotta:#af6757; --olive:#56634d; --line:#e5ddd2; --shadow:0 16px 48px rgba(67,52,36,.08); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height:1.7; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.2; background-image:radial-gradient(rgba(111,88,65,.14) .5px, transparent .6px); background-size:7px 7px; mix-blend-mode:multiply; }
a { color:inherit; }
.site-header { position:relative; z-index:1; max-width:1240px; margin:0 auto; padding:26px 34px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(181,162,142,.32); }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--terracotta); font-family:Georgia, "Times New Roman", serif; letter-spacing:.32em; font-size:15px; font-weight:700; }
.brand-mark { width:34px; height:25px; position:relative; display:inline-block; }
.brand-mark::before,.brand-mark::after { content:""; position:absolute; bottom:1px; width:17px; height:20px; background:#f4e3c8; border:2px solid var(--olive); border-bottom-width:3px; }
.brand-mark::before { left:0; transform:skewY(10deg); border-radius:7px 1px 3px 5px; }
.brand-mark::after { right:0; transform:skewY(-10deg); border-radius:1px 7px 5px 3px; }
.brand-mark span { position:absolute; z-index:2; top:-4px; left:12px; width:11px; height:11px; border-radius:50%; background:var(--terracotta); box-shadow:0 3px 9px rgba(175,103,87,.28); }
.brand-mark i,.brand-mark b { position:absolute; z-index:3; bottom:0; width:2px; height:20px; background:#fffaf0; }
.brand-mark i { left:16px; transform:rotate(6deg); }.brand-mark b { display:none; }
.header-note { color:var(--muted); font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
main { position:relative; z-index:1; }
.hero { max-width:1240px; margin:0 auto; padding:106px 34px 92px; }
.eyebrow,.section-label { color:var(--terracotta); font-size:11px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.eyebrow { display:flex; align-items:center; gap:10px; }.eyebrow span { width:29px; height:1px; background:var(--terracotta); }
h1,h2 { font-family:Georgia, "Times New Roman", serif; font-weight:500; letter-spacing:-.035em; }
h1 { margin:22px 0 23px; max-width:750px; font-size:clamp(53px,8vw,104px); line-height:.98; }.hero h1 em { color:var(--terracotta); font-style:italic; }
.hero-copy { max-width:650px; margin:0; color:#58564f; font-family:Georgia, "Times New Roman", serif; font-size:20px; line-height:1.55; }
.meta-row { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; color:var(--muted); font-size:12px; letter-spacing:.04em; }.dot { color:var(--terracotta); }
.content-layout { max-width:1240px; margin:0 auto; padding:0 34px 100px; display:grid; grid-template-columns:210px minmax(0,700px); gap:90px; align-items:start; }
.toc { position:sticky; top:26px; padding-top:6px; }.toc p { color:var(--terracotta); font-size:10px; font-weight:800; letter-spacing:.15em; }.toc a { display:block; padding:8px 0; color:var(--muted); font-size:13px; text-decoration:none; border-bottom:1px solid transparent; }.toc a:hover { color:var(--terracotta); }
.policy { min-width:0; }.policy section { scroll-margin-top:34px; padding:38px 0 24px; border-top:1px solid var(--line); }.policy section:first-child { border-top:0; padding-top:0; }.policy h2 { margin:5px 0 14px; font-size:36px; line-height:1.12; }.policy p { margin:0 0 17px; color:#545149; font-size:16px; }.policy ul { margin:5px 0 19px; padding-left:21px; color:#545149; }.policy li { padding:4px 0; }
.intro-card { display:flex; gap:20px; padding:25px 25px 22px; background:var(--olive); border-radius:8px; box-shadow:var(--shadow); }.intro-card h2,.intro-card p { color:#fffaf3; }.intro-card h2 { margin:0 0 8px; font-size:29px; }.intro-card p { margin:0; color:#eef0e7; font-size:15px; }.card-icon { flex:0 0 42px; width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#d59a82; color:#fff8ee; font-size:17px; }
.note { margin-top:25px; padding:20px 22px; background:#f2e5d8; border-left:3px solid var(--terracotta); color:#5b4c40; font-size:14px; }.note strong { display:inline-block; margin-bottom:5px; color:var(--terracotta); font-family:Georgia,serif; font-size:18px; font-weight:500; }
.policy-footer { display:flex; justify-content:space-between; gap:20px; padding:32px 0 0; color:var(--muted); font-family:Georgia,serif; font-size:13px; font-style:italic; border-top:1px solid var(--line); }
@media (max-width:800px) { .site-header { padding:22px 20px; }.header-note { display:none; }.hero { padding:74px 22px 66px; }.hero-copy { font-size:18px; }.content-layout { display:block; padding:0 22px 70px; }.toc { position:static; display:flex; gap:15px; overflow:auto; margin-bottom:35px; padding-bottom:12px; border-bottom:1px solid var(--line); }.toc p { display:none; }.toc a { flex:0 0 auto; padding:0; font-size:12px; }.policy h2 { font-size:31px; }.policy p { font-size:15px; }.intro-card { padding:20px; }.policy-footer { display:block; }.policy-footer span { display:block; margin-top:7px; } }
