.privacy-page { font-family:var(--sans); }
.privacy-page .site-header { position:relative; height:110px; padding:24px 6vw; border-bottom:1px solid #183b3026; }
.privacy-nav { display:flex; gap:28px; font:12px var(--mono); }
.privacy-nav a { color:var(--green); text-decoration:none; padding:12px 0; }
.privacy-hero { padding:70px 6vw 52px; max-width:1400px; margin:auto; }
.privacy-hero h1 { font:700 clamp(48px,7vw,96px)/1.02 var(--sans); letter-spacing:-.065em; margin:30px 0; color:var(--green); }
.privacy-hero h1 span { color:var(--chartreuse); }
.privacy-intro { font-size:18px; line-height:1.7; max-width:690px; }
.privacy-date { font:11px var(--mono); margin:30px 0 0; color:#4c5c4b; }
.notice-layout { max-width:1400px; margin:auto; padding:0 6vw 90px; display:grid; grid-template-columns:minmax(210px,1fr) minmax(0,2.5fr); gap:7vw; }
.notice-contents { position:sticky; top:30px; padding-top:26px; border-top:1px solid #183b3040; }
.notice-contents ol { padding:0; list-style:none; margin:20px 0; }
.notice-contents li { margin:0 0 8px; }
.notice-contents a { display:block; padding:7px 0; font-size:13px; line-height:1.5; color:var(--green); text-underline-offset:4px; text-decoration-color:#183b3050; }
.notice-section { scroll-margin-top:30px; border-top:1px solid #183b3040; padding:28px 0 34px; }
.notice-section h2 { margin:0 0 24px; font:600 clamp(23px,2.3vw,30px)/1.2 var(--sans); letter-spacing:-.035em; color:var(--green); }
.notice-section p { margin:0 0 18px; font-size:16px; line-height:1.8; max-width:75ch; overflow-wrap:anywhere; }
.notice-section p:last-child { margin-bottom:0; }
.notice-section a { color:var(--green); text-underline-offset:4px; }
.privacy-page a:focus-visible { outline:2px solid var(--chartreuse); outline-offset:5px; }
.skip-link { position:absolute; top:8px; left:8px; padding:14px; background:var(--green); color:var(--bone); z-index:10; transform:translateY(-180%); }
.skip-link:focus { transform:translateY(0); }
@media(max-width:800px){.notice-layout{grid-template-columns:1fr;gap:30px}.notice-contents{position:static}.notice-contents ol{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.privacy-hero{padding-top:44px}.privacy-intro{font-size:16px}}
@media(max-width:420px){.privacy-nav{gap:16px;font-size:11px}.privacy-page .site-header{height:90px}.notice-contents ol{grid-template-columns:1fr}.notice-section p{font-size:15px}.privacy-hero h1{font-size:49px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.grain,.site-header,footer,.notice-layout aside,.skip-link{display:none!important}.privacy-hero{padding:0}.privacy-hero h1{font-size:30pt}.notice-layout{display:block;padding:0}.notice-section{break-inside:auto;padding:15px 0}.notice-section h2{break-after:avoid}.notice-section p{font-size:11pt}body{background:white}}
