/* Shared styles for About / Contact / Privacy / Terms. Tokens match the landing pages. */
/* Keep [hidden] working on elements that set their own display (e.g. .pg-form is flex) */
[hidden]{display:none !important}
.pg-wrap{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4cqw,56px);box-sizing:border-box}
.pg-hero{padding:clamp(40px,5cqw,72px) 0 clamp(40px,4.4cqw,64px);border-bottom:1px solid #efebe1}
.pg-eyebrow{margin:0 0 16px;font-size:14px;font-weight:500;color:#6f7460;letter-spacing:.01em}
.pg-title{margin:0;max-width:14em;font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(40px,4.6cqw,66px);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.pg-lede{margin:22px 0 0;max-width:40em;font-size:clamp(17px,1.35cqw,19px);line-height:1.6;color:#4a4e3f}
.pg-meta{margin:18px 0 0;font-size:14px;color:#6f7460}
.pg-section{padding:clamp(56px,6.4cqw,96px) 0}
.pg-section-tight{padding-top:clamp(40px,4.4cqw,64px)}
.pg-section-white{background:#FFFFFF;border-top:1px solid #e5e2d8;border-bottom:1px solid #e5e2d8}
.pg-h2{margin:0;font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(30px,3cqw,42px);line-height:1.12;letter-spacing:-.02em}
.pg-h3{margin:0;font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(23px,1.9cqw,27px);line-height:1.25}
.pg-split{display:flex;flex-wrap:wrap;gap:24px 72px}
.pg-split-head{flex:1 1 300px;max-width:400px}
.pg-split .pg-prose{flex:1.6 1 460px}
.pg-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:40px}
.pg-card{padding:28px;border:1px solid #e5e2d8;border-radius:20px;background:#FFFCF5}
.pg-card h3{margin:0;font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:20px;line-height:1.3}
.pg-card p{margin:10px 0 0;font-size:15.5px;line-height:1.6;color:#4a4e3f}
.pg-cta-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.pg-cta{padding:clamp(28px,3cqw,44px);border-radius:24px;background:#E9E0CF}
.pg-cta:last-child{background:#6f7460;color:#FFFCF5}
.pg-cta p{margin:12px 0 26px;max-width:34em;font-size:16px;line-height:1.6;color:inherit;opacity:.88}
.pg-btn{display:inline-flex;align-items:center;justify-content:center;height:54px;padding:0 30px;border:0;border-radius:999px;background:#6f7460;color:#FFFCF5;font:500 15.5px/1 'Inter',system-ui,sans-serif;text-decoration:none;white-space:nowrap;cursor:pointer;box-sizing:border-box}
.pg-btn:hover{background:#4a4e3f}
.pg-btn:disabled{opacity:.6;cursor:default}
.pg-btn-ghost,.pg-btn-ghost:hover{background:#FFFCF5;color:#1a1a1a}

/* Prose (legal + about) */
.pg-prose{min-width:0;max-width:70ch;font-size:16.5px;line-height:1.7;color:#4a4e3f}
.pg-prose > :first-child{margin-top:0}
.pg-prose h2{margin:56px 0 0;padding-top:4px;font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(24px,2cqw,29px);line-height:1.25;color:#1a1a1a;scroll-margin-top:96px}
.pg-prose h3{margin:28px 0 0;font-size:16.5px;font-weight:600;color:#1a1a1a}
.pg-prose p{margin:14px 0 0}
.pg-prose ul{margin:14px 0 0;padding-left:1.2em}
.pg-prose li{margin-top:8px;padding-left:4px}
.pg-prose li::marker{color:#8A8E75}
.pg-prose strong{color:#1a1a1a;font-weight:600}
.pg-prose a,.pg-small a,.pg-contact-list a{color:#1a1a1a;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.pg-notice{margin:18px 0 0;padding:16px 20px;border-radius:14px;background:#F3EEE3;border:1px solid #e5e2d8;font-size:15.5px;line-height:1.6;color:#4a4e3f}
.pg-notice strong{display:block;color:#1a1a1a;font-weight:600}

/* Legal layout with sticky contents */
.pg-legal{display:flex;flex-wrap:wrap;align-items:flex-start;gap:40px 80px}
.pg-toc{flex:0 1 260px;position:sticky;top:104px;font-size:14.5px}
.pg-toc p{margin:0 0 12px;font-weight:600;color:#1a1a1a}
.pg-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.pg-toc a{color:#6f7460;text-decoration:none;line-height:1.4}
.pg-toc a:hover{color:#1a1a1a}
.pg-legal .pg-prose{flex:1 1 520px}
@media (max-width:899.98px){
  .pg-toc{position:static;flex-basis:100%;padding:20px;border:1px solid #e5e2d8;border-radius:16px;background:#FFFFFF}
  .pg-toc ol{display:block;columns:2;column-gap:24px}
  .pg-toc li{margin-bottom:8px;break-inside:avoid}
}
@media (max-width:520px){.pg-toc ol{columns:1}}

/* Contact */
.pg-contact{display:flex;flex-wrap:wrap;align-items:flex-start;gap:48px 80px}
.pg-contact-info{flex:1 1 320px;max-width:440px}
.pg-contact-info .pg-notice{margin-top:0}
.pg-contact-list{margin:32px 0 0;display:flex;flex-direction:column;gap:22px}
.pg-contact-list dt{font-size:14px;font-weight:600;color:#1a1a1a}
.pg-contact-list dd{margin:4px 0 0;font-size:16px;line-height:1.55;color:#4a4e3f}
.pg-small{margin:28px 0 0;font-size:14.5px;line-height:1.6;color:#6f7460}
.pg-form,.pg-form-done{flex:1.4 1 440px;min-width:0;padding:clamp(24px,3cqw,40px);background:#FFFFFF;border:1px solid #e5e2d8;border-radius:24px;box-sizing:border-box}
.pg-form{display:flex;flex-direction:column;gap:20px}
.pg-form .pg-small{margin:0}
.pg-form .pg-btn{align-self:flex-start}
.pg-form-done p{margin:12px 0 0;color:#4a4e3f}
.pg-form-done:focus{outline:none}
.pg-field{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;border:0}
.pg-field > span,.pg-field legend{padding:0;font-size:14px;font-weight:500;color:#1a1a1a}
.pg-field legend{margin-bottom:8px}
.pg-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}
.pg-field input,.pg-field textarea{width:100%;box-sizing:border-box;padding:14px 16px;border:1px solid #D5C7AD;border-radius:12px;background:#FFFCF5;font:16px/1.5 'Inter',system-ui,sans-serif;color:#1a1a1a}
.pg-field textarea{resize:vertical;min-height:150px}
.pg-field input:focus,.pg-field textarea:focus{outline:2px solid #8A8E75;outline-offset:1px;border-color:#8A8E75}
.pg-chips{display:flex;flex-wrap:wrap;gap:10px}
.pg-chips label{position:relative}
.pg-chips input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pg-chips span{display:inline-flex;align-items:center;height:42px;padding:0 18px;border:1px solid #D5C7AD;border-radius:999px;font-size:14.5px;color:#4a4e3f;background:#FFFCF5}
.pg-chips input:checked + span{background:#6f7460;border-color:#6f7460;color:#FFFCF5}
.pg-chips input:focus-visible + span{outline:2px solid #8A8E75;outline-offset:2px}
.pg-form-error{margin:0;padding:12px 16px;border-radius:12px;background:#FBEDE8;color:#8a3a22;font-size:14.5px}

/* Unfilled business details: visible on purpose until confirmed by the client */
mark.dd-todo{background:#FFE79A;color:#1a1a1a;padding:0 4px;border-radius:4px}
