/* Public information pages share the storefront shell. All rules are scoped. */
.cm-info { --cm-info-ink:#f0e7f6; --cm-info-muted:#baabc7; --cm-info-line:#bc94de26; }
.cm-info .cm-info-nav {
  display:flex; gap:26px; width:min(1320px,calc(100% - 80px)); margin:20px auto 0;
  padding:0; overflow-x:auto; scrollbar-width:thin; scrollbar-color:#76508e transparent;
  border-bottom:1px solid var(--cm-info-line);
}
.cm-info-nav a {
  position:relative; flex:0 0 auto; padding:17px 0; color:#b1a0bf; text-decoration:none;
  font:500 12px/1.5 Inter,sans-serif; white-space:nowrap; border-bottom:2px solid transparent;
}
.cm-info-nav a:hover { color:#f1dfff; }
.cm-info-nav a[aria-current="page"] { color:#dab3f7; border-bottom-color:#bf8de8; }
.cm-info main > .sm-components > .sm-section,
.cm-info main > .components > .sm-section,
.cm-info main > .sm-section { padding:64px 0 90px; }
.cm-info .sm-section > .container { width:min(1320px,calc(100% - 80px)); max-width:none; padding:0; }
.cm-info .sm-section > .sm-legal-wrap,
.cm-info .sm-section > .sm-privacy-wrap,
.cm-info .sm-section > .sm-refund-wrap,
.cm-info .sm-section > .sm-terms-wrap,
.cm-info .sm-section > .sm-terms-service-wrap,
.cm-info .sm-section > .cm-faq-wrap { width:min(1000px,calc(100% - 80px)); }
.cm-info .sm-page-heading { max-width:none; margin:0 0 44px; }
.cm-info .sm-page-heading h1,
.cm-info .cm-custom-heading h1 {
  max-width:100%; margin:16px 0 22px; color:var(--cm-info-ink);
  font:400 clamp(42px,5vw,70px)/1.08 Georgia,'Times New Roman',serif; letter-spacing:-.035em;
  text-wrap:balance; overflow-wrap:break-word;
}
.cm-info .sm-page-heading h1 em { color:#be8de8; font-weight:400; }
.cm-info .sm-page-heading p:not(.sm-eyebrow) { max-width:670px; margin:0; color:var(--cm-info-muted); font-size:16px; line-height:1.75; }
.cm-info .sm-page-heading .sm-eyebrow {
  display:flex; align-items:center; gap:12px; margin:0; color:#ba9ace;
  font:500 10px/1.6 ui-monospace,monospace; letter-spacing:.2em;
}
.cm-info .sm-eyebrow > span { width:auto; height:auto; background:none; }
.cm-info .sm-eyebrow > span:first-child:empty { width:6px; height:6px; border-radius:50%; background:#c391f0; box-shadow:0 0 18px #b479ea80; }
.cm-info .sm-privacy-heading-row { align-items:flex-end; gap:30px; }
.cm-info .sm-privacy-heading-row > div:first-child { min-width:0; }
.cm-info .sm-privacy-heading-row > .sm-language-toggle { flex:0 0 auto; margin-bottom:6px; }
.cm-info :is(a,button,summary):focus-visible { outline:2px solid #d4acf1; outline-offset:5px; }

/* Reviews use the same translucent, rounded surfaces as product cards. */
.cm-info .cm-review-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:36px; }
.cm-info .cm-review-count { flex:0 0 auto; display:grid; gap:8px; padding:18px 0 18px 32px; border-left:1px solid var(--cm-info-line); }
.cm-info .cm-review-count strong { color:#d9b9f3; font:400 52px/1 Georgia,serif; letter-spacing:-.05em; }
.cm-info .cm-review-count span { color:var(--cm-info-muted); font-size:12px; }
.cm-info .cm-review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.cm-info .cm-review-grid > * { min-width:0; }
.cm-info .sm-feedback-card {
  min-height:228px; height:100%; padding:27px; border:1px solid var(--cm-info-line); border-radius:23px;
  background:linear-gradient(145deg,#36204860,#17102050); box-shadow:none; overflow-wrap:anywhere;
}
.cm-info .sm-feedback-stars { color:#c69ce7; gap:5px; font-size:13px; }
.cm-info .cm-review-product { margin:18px 0 0; color:#e1d2ed; font-size:13px; font-weight:500; line-height:1.5; }
.cm-info .sm-feedback-card > p { margin:15px 0 25px; color:#c0b1cc; font-size:14px; line-height:1.8; }
.cm-info .sm-feedback-card > .cm-review-rating-only { color:#a28daf; font-size:13px; font-style:italic; }
.cm-info .sm-feedback-reply { padding:14px; margin:0 0 20px; background:#ae78d20b; border-color:#b084d5; border-radius:0 10px 10px 0; color:#bdaacb; }
.cm-info .sm-feedback-card footer { padding-top:17px; border-top:1px solid var(--cm-info-line); color:#a894b7; font-weight:400; font-size:11px; flex-wrap:wrap; }
.cm-info .sm-feedback-card footer i { color:#c19adc; }
.cm-info .sm-empty-state { border:1px solid var(--cm-info-line); border-radius:22px; padding:40px; background:#21172c80; color:var(--cm-info-muted); }

/* Existing bilingual legal copy remains in its original native disclosures. */
.cm-info .sm-policy-accordions { display:grid; gap:12px; counter-reset:policy-section; }
.cm-info .sm-policy-item { counter-increment:policy-section; border:1px solid var(--cm-info-line); border-radius:19px; background:linear-gradient(125deg,#36204838,#17102060); }
.cm-info .sm-policy-item[open] { border-color:#b98ad350; background:linear-gradient(125deg,#36204870,#17102080); }
.cm-info .sm-policy-item summary { justify-content:flex-start; gap:20px; min-height:77px; padding:23px 25px; color:#e6d9f0; font-size:16px; font-weight:500; line-height:1.5; }
.cm-info .sm-policy-item summary::before { content:counter(policy-section,decimal-leading-zero); flex:0 0 24px; color:#a381ba; font:11px/1.5 ui-monospace,monospace; letter-spacing:.08em; }
.cm-info .sm-policy-item summary > i { flex:0 0 auto; margin-left:auto; color:#b991d5; font-size:12px; }
.cm-info .sm-policy-item summary:focus-visible { outline-offset:-5px; border-radius:15px; }
.cm-info .sm-policy-item > div { padding:8px 26px 26px 69px; border-top:0; color:#bcaccb; font-size:14px; line-height:1.9; }
.cm-info .sm-policy-item p:first-child { margin-top:0; }
.cm-info .sm-policy-item ul,.cm-info .sm-policy-item ol { padding-left:20px; margin-top:0; }
.cm-info .sm-policy-item li + li { margin-top:8px; }
.cm-info .sm-policy-item a,.cm-info .sm-legal-content a { color:#d2abea; text-underline-offset:4px; text-decoration:underline; }
.cm-info .sm-legal-content { border-color:var(--cm-info-line); border-radius:24px; background:linear-gradient(145deg,#36204845,#17102080); color:var(--cm-info-muted); }
.cm-info .sm-legal-content :is(h1,h2,h3) { color:var(--cm-info-ink); font-family:Georgia,serif; font-weight:400; }
.cm-info .cm-info-help { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:36px; padding:26px 0; border-top:1px solid var(--cm-info-line); }
.cm-info .cm-info-help p { margin:0; color:var(--cm-info-muted); font-size:14px; line-height:1.7; }
.cm-info .cm-info-help a { flex:0 0 auto; display:inline-flex; align-items:center; gap:12px; padding:14px 20px; border:1px solid #c69ce744; border-radius:999px; color:#dbb6f6; background:#ac73d415; text-decoration:none; font-size:13px; }

/* Availability cards and editor-created information pages. */
.cm-info .sm-status-card { gap:22px; height:100%; padding:25px; border-color:var(--cm-info-line); border-radius:22px; background:linear-gradient(145deg,#36204860,#17102050); text-decoration:none; }
.cm-info .sm-status-card:hover { transform:translateY(-2px); border-color:#bb8edd70; }
.cm-info .sm-status-card h3 { color:#e6d7f1; font-size:16px; line-height:1.5; font-weight:500; }
.cm-info .sm-status-card .sm-status-dot { color:var(--status-color); font-size:10px; font-weight:500; letter-spacing:.06em; }
.cm-info .sm-status-card .sm-status-dot i { background:var(--status-color); }
.cm-info .sm-status-card > i { color:#b38bd0; font-size:13px; }
.cm-info .cm-custom-heading { width:min(1320px,calc(100% - 80px)); margin:0 auto; padding:65px 0 25px; }
@media(max-width:1050px) {
  .cm-info .cm-review-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cm-info .cm-info-nav { gap:22px; }
}
@media(max-width:640px) {
  .cm-info .cm-info-nav { width:calc(100% - 40px); margin-top:6px; gap:23px; }
  .cm-info .cm-info-nav a { font-size:11px; padding:14px 0; }
  .cm-info main > .sm-components > .sm-section,.cm-info main > .components > .sm-section,.cm-info main > .sm-section { padding:40px 0 60px; }
  .cm-info .sm-section > .container,.cm-info .cm-custom-heading { width:calc(100% - 40px); }
  .cm-info .sm-page-heading { margin-bottom:28px; }
  .cm-info .sm-page-heading h1,.cm-info .cm-custom-heading h1 { font-size:clamp(37px,10.2vw,48px); margin:14px 0 18px; }
  .cm-info .sm-page-heading p:not(.sm-eyebrow) { font-size:14px; line-height:1.75; }
  .cm-info .sm-privacy-heading-row { flex-wrap:wrap; gap:20px; }
  .cm-info .cm-review-intro { display:block; }
  .cm-info .cm-review-count { display:flex; align-items:baseline; gap:10px; padding:0; border:0; margin-top:24px; }
  .cm-info .cm-review-count strong { font-size:32px; }
  .cm-info .cm-review-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
  .cm-info .sm-feedback-card { padding:23px; min-height:200px; border-radius:20px; }
  .cm-info .sm-policy-item summary { gap:12px; padding:19px 17px; min-height:72px; font-size:14px; }
  .cm-info .sm-policy-item summary::before { flex-basis:20px; font-size:10px; }
  .cm-info .sm-policy-item > div { padding:8px 18px 22px; font-size:14px; }
  .cm-info .cm-info-help { align-items:flex-start; flex-direction:column; }
}
@media(prefers-reduced-motion:reduce) { .cm-info .sm-status-card,.cm-info .sm-policy-item summary i { transition:none; } }
