/* Scoped reading layout for the privacy policy. */
body.privacyPage{background:#fff;color:#2f3a4c;background-image:none}
.privacyPage footer{background:#fff}.privacyPage .foot{border-color:#e5e7eb}
.privacyPage .policyWidth{width:min(1120px,calc(100% - 80px))}
.policyHero{background:#fff;padding:40px 0 52px;border-bottom:1px solid #e5e7eb}
.policyHero .breadcrumbs{margin-bottom:44px;font-size:13px;color:#626c79}
.policyHeroGrid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}
.policyEyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:600;letter-spacing:.18em;color:#626c79}
.policyEyebrow>span{width:28px;height:2px;background:#b4a582}
.policyHero h1{font-size:clamp(36px,4.2vw,58px);line-height:1.25;letter-spacing:-.04em;font-weight:600;margin:18px 0 0}
.policyPeriod{color:#a28c5e;padding-left:5px}
.policyIntro{font-size:13px;line-height:1.8;color:#707780;margin:0;max-width:none}
.policyLayout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:80px;padding-top:50px;padding-bottom:72px;align-items:start}
.policyContents{position:sticky;top:120px}
.policyIndexLabel{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;padding-bottom:16px;border-bottom:1px solid #2f3a4c}
.policyIndexLabel>span{font-size:10px;letter-spacing:.09em;font-weight:400;color:#626c79}
.policyContents nav{display:grid;margin-top:12px}
.policyContents nav a{display:grid;grid-template-columns:24px 1fr 14px;gap:8px;align-items:center;min-height:48px;font-size:13px;color:#596370;border-bottom:1px solid #f0f0ef;transition:color .15s}
.policyContents nav a>span:first-child{font-size:10px;color:#88764f;font-variant-numeric:tabular-nums}
.policyContents nav a>span:last-child{color:#949aa2;font-size:12px}
.policyContents nav a:hover{color:#2f3a4c;background:#faf9f6}
.policyBack{display:flex;justify-content:space-between;align-items:center;min-height:44px;margin-top:25px;font-size:12px;color:#626c79}
.policyClause{display:grid;grid-template-columns:36px minmax(0,1fr);gap:20px;padding:32px 0;border-bottom:1px solid #e5e7eb;scroll-margin-top:120px}
.policyClause:first-child{padding-top:0}
.policyNumber{font-size:12px;line-height:32px;color:#88764f;font-variant-numeric:tabular-nums;letter-spacing:.05em}
.privacyPage .policyClause h2{font-size:23px;font-weight:600;line-height:1.4;margin:0 0 16px;letter-spacing:.015em;color:#2f3a4c}
.policyClause p{font-size:15px;line-height:1.95;color:#596370;margin:0 0 12px}
.policyClause p:last-child{margin-bottom:0}
.policyClause p a{text-decoration:underline;text-decoration-color:#b4a582;text-underline-offset:5px;color:#2f3a4c}
.policyTop{display:flex;justify-content:flex-end;align-items:center;gap:14px;min-height:44px;font-size:12px;color:#626c79;margin-top:18px}
@media(max-width:900px){.policyLayout{gap:40px;grid-template-columns:200px minmax(0,1fr)}.policyHeroGrid{gap:16px}}
@media(max-width:700px){.privacyPage .policyWidth{width:calc(100% - 40px)}.policyHero{padding:25px 0 32px}.policyHero .breadcrumbs{margin-bottom:30px}.policyHeroGrid{grid-template-columns:1fr;gap:14px}.policyIntro{font-size:13px;max-width:none}.policyHero h1{font-size:38px}.policyLayout{display:block;padding-top:28px;padding-bottom:36px}.policyContents{position:static;margin-bottom:36px}.policyContents nav{grid-template-columns:1fr 1fr;column-gap:20px}.policyContents nav a{font-size:12px;gap:4px;grid-template-columns:20px 1fr 10px}.policyBack{display:none}.policyClause{grid-template-columns:25px minmax(0,1fr);gap:12px;padding:26px 0;scroll-margin-top:100px}.privacyPage .policyClause h2{font-size:21px;margin-bottom:12px}.policyClause p{font-size:15px;line-height:1.9}}

@media(prefers-reduced-motion:reduce){.policyContents nav a{transition:none}}
