/* Shared typography for document pages and the shop's document dialog. */
.document{width:calc(100% - 48px);max-width:900px;margin:48px auto 64px;padding:44px 56px;background:#14151f;border:1px solid #292b3c;border-radius:24px}
.document-heading{text-align:center;margin:0 auto 28px;max-width:720px}
.document-heading .eyebrow{font-size:12px;letter-spacing:1.5px;color:#b7a0ff}
.document .document-heading h1{font-size:clamp(28px,3.5vw,38px);line-height:1.24;letter-spacing:-.7px;margin:0;text-wrap:balance;overflow-wrap:break-word}
.document .notice{font-size:14px;line-height:1.6;margin:0 0 28px}
.legal-document{max-width:76ch;margin:0 auto;font-size:16px;line-height:1.8;color:#cfccdd;text-align:left;overflow-wrap:break-word}
.legal-document>.legal-date,.legal-preview-content .legal-document>.legal-date{text-align:center;font-size:13px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;color:#aaa5bd;margin:0 0 32px}
.legal-section{margin:0;padding:28px 0;border-top:1px solid #2c2b3e}
.legal-section:first-of-type{border-top:0;padding-top:0}
.legal-section:last-child{padding-bottom:0}
.document .legal-section h2,.legal-preview-content .legal-section h2{font-size:20px;line-height:1.45;font-weight:650;letter-spacing:-.2px;color:#f1effa;text-align:left;text-wrap:balance;margin:0 0 14px}
.document .legal-section p,.legal-preview-content .legal-section p{font-size:16px;line-height:1.8;color:#cfccdd;text-align:left;margin:0 0 14px}
.legal-section p:last-child,.legal-preview-content .legal-section p:last-child{margin-bottom:0}
.legal-document a,.contact-grid a{color:#c8b5ff;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-document a:hover,.contact-grid a:hover{color:#e7dcff}
.document .contact-grid{display:grid;grid-template-columns:175px minmax(0,1fr);gap:0 28px;margin:32px 0 0;padding:0;border:0;font-size:16px;line-height:1.6}
.document .contact-grid dt,.document .contact-grid dd{margin:0;padding:15px 0;border-top:1px solid #292b3c}
.document .contact-grid dt{font-size:14px;color:#aaa5bd}
.document .contact-grid dd{overflow-wrap:anywhere;color:#cfccdd}
.contacts-intro{text-align:center;font-size:16px;line-height:1.75}
.contacts-intro p{margin:0 0 18px}
.contacts-intro .button{font-size:14px}
.legal-preview-box{width:min(900px,96vw);padding:36px 48px!important}
.legal-preview-box .modal-top{position:relative;display:block;text-align:center;padding:0 36px;margin-bottom:28px}
.legal-preview-box .modal-top .close{position:absolute;right:-12px;top:-12px}
.legal-preview-box .modal-top h3{font-size:clamp(25px,3.4vw,34px);line-height:1.3;letter-spacing:-.5px;text-wrap:balance;margin:14px 0 0}
.legal-preview-box .legal-preview-content{display:block;padding:0}
@media(max-width:600px){
  .document{width:calc(100% - 24px);margin:24px auto 36px;padding:28px 20px;border-radius:18px}
  .document-heading{margin-bottom:24px}
  .document .document-heading h1{font-size:28px}
  .document .legal-section h2,.legal-preview-content .legal-section h2{font-size:19px}
  .legal-section{padding:24px 0}
  .document .contact-grid{grid-template-columns:1fr;gap:0;margin-top:24px}
  .document .contact-grid dt{padding:16px 0 5px}
  .document .contact-grid dd{border-top:0;padding:0 0 16px}
  .legal-preview-box{padding:28px 20px!important}
  .legal-preview-box .modal-top{padding:0 24px}
  .legal-preview-box .modal-top .close{right:-8px;top:-14px}
}
