/* polish-pages: privacy, terms — load after polish-base.
   (The about page no longer loads this file: its styles live inline in about.html.) */
:root{
--x-i:color-mix(in srgb,var(--earth) 50%,var(--charcoal)); /* AA text */
--x-m:color-mix(in srgb,var(--earth) 78%,var(--charcoal));
--x-g1:color-mix(in srgb,var(--gold) 58%,var(--charcoal));
--x-l:#c8906a73;
--x-ed:color-mix(in srgb,var(--sand) 70%,var(--white));
--x-w:#D4B599;
--x-c:color-mix(in srgb,var(--white) 50%,#fff);
--x-sh:0 1px 2px #0000000a,0 12px 32px -14px color-mix(in srgb,var(--moss) 22%,#0000);
--x-sh2:0 2px 4px #0000000d,0 22px 44px -18px color-mix(in srgb,var(--moss) 36%,#0000);
--x-b:0 1px 2px #0003,0 12px 26px -12px #0009;
--x-h:linear-gradient(90deg,#0000,var(--gold),#0000);
--x-e:.28s cubic-bezier(.22,.61,.36,1);
}

/* Contact button (legal pages) */
.contact-box a{min-height:46px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;letter-spacing:.12em;transition:var(--x-e);transition-property:transform,box-shadow,background,border-color,color;background:#FFFDF9;box-shadow:var(--x-b)}
.contact-box a:hover{background:#fff;transform:translateY(-2px);box-shadow:0 2px 4px #0003,0 18px 32px -14px #000a}
:is(.contact-box a):focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* ══ LEGAL: paper card on tinted page ══ */
body:has(.policy-section){background:radial-gradient(90% 460px at 50% 0%,color-mix(in srgb,var(--moss-pale) 45%,#0000),#0000),var(--cream)}
.page-wrap{position:relative;margin:3.5rem auto 5rem;background:var(--x-c);border:1px solid var(--x-ed);border-radius:28px;box-shadow:var(--x-sh2)}
.page-wrap::before,.contact-box::before{content:'';position:absolute;inset:0 14% auto;height:1px;background:var(--x-h);opacity:.75}
.page-eyebrow{color:var(--x-g1);font-size:.66rem;margin-bottom:.9rem}
.page-title{font-size:clamp(2.2rem,4.2vw,3.1rem);line-height:1.1;margin-bottom:.9rem}
.page-date{font-size:.76rem;color:var(--x-m);border-image:linear-gradient(90deg,var(--x-w),#0000) 1}
.page-intro{padding:1.4rem 1.7rem;font-size:1.08rem;line-height:1.8;font-weight:400;color:var(--charcoal);border-left:2px solid var(--gold);border-radius:2px 16px 16px 2px;background:color-mix(in srgb,var(--moss-pale) 26%,var(--x-c))}
.policy-section h2{align-items:baseline;font-size:clamp(1.3rem,2.2vw,1.55rem);line-height:1.3;gap:.85rem;margin-bottom:1rem}
.policy-section h2 span.num{width:32px;height:32px;font:500 1rem 'Playfair Display',serif;background:color-mix(in srgb,var(--moss-pale) 55%,var(--x-c));border:1px solid var(--x-l);box-shadow:var(--x-sh)}
.policy-section p,.policy-section ul li{font-size:1.0625rem;line-height:1.8;font-weight:400;color:var(--x-i)}
.policy-section p{margin-bottom:.9rem}
.policy-section ul{gap:.55rem;margin:.6rem 0 1rem}
.policy-section ul li{padding-left:1.5rem}
.policy-section ul li::before{content:'';top:.74em;left:.3rem;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.policy-section strong{color:var(--charcoal);font-weight:600}
.highlight-box{margin-top:1.1rem;padding:1.15rem 1.4rem;border:1px solid var(--x-ed);border-left:2px solid var(--gold);border-radius:2px 14px 14px 2px;background:color-mix(in srgb,var(--moss-pale) 50%,var(--x-c));box-shadow:var(--x-sh)}
.highlight-box p{margin:0;font-size:.96rem;line-height:1.75;color:color-mix(in srgb,var(--moss) 85%,var(--charcoal))}
.divider{position:relative;margin:2.6rem 0;background:linear-gradient(90deg,#0000,var(--x-w) 20% 80%,#0000)}
.divider::after{content:'';position:absolute;left:50%;top:50%;width:5px;height:5px;background:var(--gold);transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 5px var(--x-c)}
.contact-box{position:relative;overflow:hidden;margin-top:3rem;padding:2.5rem 2rem;border-radius:20px;background:radial-gradient(70% 120% at 100% 0%,#e8bc7e29,#0000 60%),linear-gradient(145deg,color-mix(in srgb,var(--moss) 62%,var(--charcoal)),var(--charcoal));box-shadow:inset 0 1px #ffffff14,var(--x-sh2)}
.contact-box h3{font-size:1.45rem;text-wrap:balance}
.contact-box p{font-size:.88rem;color:#ffffffc2;font-weight:400;margin-bottom:1.4rem}
.contact-box a{padding:0 1.8rem;border-radius:999px;color:var(--gold-deep);font-size:.72rem;text-transform:uppercase}
@media (min-width:901px){.page-wrap{padding:3.6rem 4.4rem 3.4rem}}
@media (max-width:900px){
.page-wrap{width:calc(100% - 24px);margin:1.5rem auto 3rem;padding:2.3rem 1.35rem 2rem;border-radius:20px}
.page-title{font-size:clamp(1.95rem,8vw,2.4rem)}
.contact-box{margin-top:2.4rem;padding:2.1rem 1.25rem}
}
