@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");
:root { --text:#191919; --text-2:#5f5e5b; --text-3:#91918e; --line:#e9e9e7; --hover:rgba(55,53,47,.06); --gray:#f1f1ef; --yellow:#fbf3db; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--text); font:16px/1.7 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
a { color:var(--text); text-underline-offset:3px; }
a:focus-visible { outline:2px solid #2383e2; outline-offset:3px; border-radius:4px; }
.wrap { width:min(calc(100% - 32px),760px); margin:0 auto; }
.site-header { width:100%; max-width:none; height:56px; padding:0 max(16px,calc((100% - 1120px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--text); text-decoration:none; font-weight:700; letter-spacing:-.02em; }
.mark { width:24px; height:24px; display:grid; place-items:center; }
.mark img { display:block; width:100%; height:100%; }
.back { padding:6px 10px; border-radius:6px; color:var(--text-2); font-size:.9rem; text-decoration:none; }
.back:hover { background:var(--hover); color:var(--text); }
main { padding:64px 0 96px; }
.eyebrow { display:inline-block; margin:0 0 16px; padding:3px 9px; border-radius:4px; background:var(--gray); color:var(--text-2); font-size:.82rem; font-weight:500; }
h1 { margin:0; font-size:clamp(2.3rem,6vw,3.2rem); font-weight:700; line-height:1.1; letter-spacing:-.035em; }
.intro { margin:18px 0 8px; color:var(--text-2); font-size:1.1rem; }
.effective { margin:0 0 36px; color:var(--text-3); font-size:.9rem; }
.article { border-top:1px solid var(--line); }
.article section { padding:24px 0; border-bottom:1px solid var(--line); }
h2 { margin:0 0 8px; font-size:1.25rem; line-height:1.3; letter-spacing:-.02em; }
p { margin:0 0 12px; }
p:last-child { margin-bottom:0; }
ul { margin:8px 0 0; padding-left:22px; }
li { margin:6px 0; }
.article p, .article li { color:var(--text-2); }
.article strong { color:var(--text); }
.notice { margin-top:32px; padding:16px 18px; border-radius:8px; background:var(--yellow); color:var(--text-2); }
.notice strong { color:var(--text); }
.email { font-size:clamp(1.15rem,3vw,1.45rem); font-weight:600; overflow-wrap:anywhere; }
.site-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px 28px; padding:24px 0 44px; border-top:1px solid var(--line); color:var(--text-3); font-size:.86rem; }
.footer-links { display:flex; flex-wrap:wrap; gap:6px 16px; }
.footer-links a { color:var(--text-2); text-decoration:none; }
.footer-links a:hover, .footer-links a[aria-current] { color:var(--text); text-decoration:underline; }
@media(max-width:600px) { main { padding:44px 0 72px; } .site-footer { flex-direction:column; } }
