/* =============================================================================
   Parent Concern Generator — Frontend Stylesheet
   Version: 2.0.0
   Styled to match catomeridianny.com / meaghanburnett.com/specialedguide
   Palette: Deep navy headings · Steel blue accents · Warm white cards
   ============================================================================= */

/* ── GOOGLE FONTS (matches Divi Lato + source serif feel) ─────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;600;700;900&family=Merriweather:wght@400;700&display=swap');

/* ── ROOT VARIABLES ─────────────────────────────────────────────────────────── */
:root {
  /* Core palette — derived from #D5E0EB site theme */
  --pcg-navy:          #1e3a5f;   /* Deep navy — headings, section numbers        */
  --pcg-navy-mid:      #2d5282;   /* Mid navy — hover states, borders             */
  --pcg-steel:         #4a7baf;   /* Steel blue — primary buttons, links          */
  --pcg-steel-light:   #D5E0EB;   /* Site theme color — card accents, backgrounds */
  --pcg-steel-pale:    #eef3f8;   /* Very pale blue — section backgrounds         */
  --pcg-steel-border:  #b8cfe0;   /* Blue-tinted border                           */

  /* Neutrals */
  --pcg-bg:            #f4f6f8;
  --pcg-card:          #ffffff;
  --pcg-border:        #dde3ea;
  --pcg-text:          #2c3e50;
  --pcg-text-light:    #506070;
  --pcg-text-muted:    #8899aa;

  /* Callout colors — mirrors the guide page alert boxes */
  --pcg-alert-red:     #c0392b;
  --pcg-alert-red-bg:  #fdf3f2;
  --pcg-alert-red-border: #e74c3c;
  --pcg-info-blue:     #2471a3;
  --pcg-info-blue-bg:  #eaf2fb;
  --pcg-info-border:   #5dade2;
  --pcg-tip-green:     #1e8449;
  --pcg-tip-green-bg:  #eafaf1;
  --pcg-tip-border:    #52be80;
  --pcg-warn-amber:    #b7770d;
  --pcg-warn-bg:       #fef9e7;
  --pcg-warn-border:   #f4d03f;

  /* Typography */
  --pcg-font-body:     'Lato', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --pcg-font-heading:  'Lato', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --pcg-font-serif:    'Merriweather', Georgia, serif;

  /* Geometry */
  --pcg-radius-xs:     4px;
  --pcg-radius-sm:     8px;
  --pcg-radius:        12px;
  --pcg-radius-lg:     16px;
  --pcg-shadow-sm:     0 1px 4px rgba(30,58,95,.08);
  --pcg-shadow:        0 2px 12px rgba(30,58,95,.10);
  --pcg-shadow-md:     0 4px 20px rgba(30,58,95,.14);
}

/* ── RESET ──────────────────────────────────────────────────────────────────── */
#pcg-app, #pcg-app * { box-sizing: border-box; }

#pcg-app {
  font-family:  var(--pcg-font-body);
  font-size:    16px;
  line-height:  1.65;
  color:        var(--pcg-text);
  background:   var(--pcg-bg);
  padding:      28px 16px 56px;
  max-width:    880px;
  margin:       0 auto;
  -webkit-font-smoothing: antialiased;
}

/* ── SITE-STYLE BANNER ──────────────────────────────────────────────────────── */
.pcg-intro-banner {
  background:    var(--pcg-navy);
  border-radius: var(--pcg-radius);
  padding:       36px 32px;
  margin-bottom: 28px;
  box-shadow:    var(--pcg-shadow-md);
  position:      relative;
  overflow:      hidden;
}

/* Subtle diagonal stripe accent — matches guide page header feel */
.pcg-intro-banner::after {
  content:    '';
  position:   absolute;
  top: -60px; right: -60px;
  width:  200px;
  height: 200px;
  background: rgba(255,255,255,.04);
  border-radius: 50%;
  pointer-events: none;
}

.pcg-intro-banner .pcg-intro-icon { display: none; } /* Hide emoji icon — use text style */

.pcg-intro-text { width: 100%; }

.pcg-title {
  font-family:  var(--pcg-font-heading);
  font-size:    1.75rem;
  font-weight:  900;
  color:        #ffffff;
  margin:       0 0 6px;
  line-height:  1.2;
  letter-spacing: -.3px;
}

/* Sub-label above title — like "Special Education Parents | Parent Guide Series" */
.pcg-title::before {
  content:      'Special Education Parents | Parent Concern Tool';
  display:      block;
  font-size:    0.72rem;
  font-weight:  600;
  color:        var(--pcg-steel-light);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.pcg-subtitle {
  font-size:  1rem;
  color:      rgba(255,255,255,.85);
  margin:     0 0 16px;
  line-height: 1.6;
}

.pcg-disclaimer-small {
  font-size:    0.8rem;
  color:        rgba(255,255,255,.65);
  background:   rgba(255,255,255,.08);
  border-left:  3px solid var(--pcg-steel-light);
  padding:      10px 14px;
  border-radius: 0 var(--pcg-radius-xs) var(--pcg-radius-xs) 0;
  margin:       0;
  line-height:  1.5;
}

/* ── SECTION CARDS ──────────────────────────────────────────────────────────── */
.pcg-section {
  background:    var(--pcg-card);
  border:        1px solid var(--pcg-border);
  border-radius: var(--pcg-radius);
  padding:       24px 28px;
  margin-bottom: 18px;
  box-shadow:    var(--pcg-shadow-sm);
  transition:    box-shadow .2s ease, border-color .2s ease;
}

.pcg-section:focus-within {
  border-color: var(--pcg-steel-border);
  box-shadow:   var(--pcg-shadow);
}

.pcg-section-header {
  display:        flex;
  align-items:    center;
  gap:            14px;
  margin-bottom:  18px;
  padding-bottom: 14px;
  border-bottom:  2px solid var(--pcg-steel-pale);
}

.pcg-section-number {
  display:         inline-flex;
  align-items:     center;
  justify-content: center;
  width:           34px;
  height:          34px;
  background:      var(--pcg-navy);
  color:           #fff;
  font-family:     var(--pcg-font-heading);
  font-weight:     900;
  font-size:       0.9rem;
  border-radius:   50%;
  flex-shrink:     0;
  letter-spacing:  0;
}

.pcg-section-title {
  font-family: var(--pcg-font-heading);
  font-size:   1.05rem;
  font-weight: 700;
  color:       var(--pcg-navy);
  margin:      0;
  letter-spacing: -.1px;
}

.pcg-optional-tag {
  font-size:      0.7rem;
  font-weight:    700;
  background:     var(--pcg-steel-pale);
  color:          var(--pcg-steel);
  padding:        3px 9px;
  border-radius:  20px;
  vertical-align: middle;
  margin-left:    8px;
  letter-spacing: .5px;
  text-transform: uppercase;
}

.pcg-section-intro {
  font-size:    0.875rem;
  color:        var(--pcg-text-light);
  margin:       -10px 0 18px;
  font-style:   italic;
}

/* ── FIELDS GRID ────────────────────────────────────────────────────────────── */
.pcg-fields-grid {
  display:               grid;
  grid-template-columns: 1fr 1fr;
  gap:                   18px;
}

@media (max-width: 600px) {
  .pcg-fields-grid { grid-template-columns: 1fr; }
}

/* ── INDIVIDUAL FIELD ───────────────────────────────────────────────────────── */
.pcg-field {
  display:        flex;
  flex-direction: column;
  gap:            5px;
  margin-bottom:  20px;
}
.pcg-field:last-child { margin-bottom: 0; }

.pcg-label {
  font-family: var(--pcg-font-body);
  font-size:   0.875rem;
  font-weight: 700;
  color:       var(--pcg-navy);
  line-height: 1.3;
}

.pcg-required { color: var(--pcg-alert-red); margin-left: 2px; }

.pcg-helper {
  font-size:   0.78rem;
  color:       var(--pcg-text-muted);
  line-height: 1.45;
  font-style:  italic;
}

/* ── INPUTS ─────────────────────────────────────────────────────────────────── */
.pcg-input,
.pcg-select,
.pcg-textarea {
  width:         100%;
  padding:       10px 14px;
  font-family:   var(--pcg-font-body);
  font-size:     0.95rem;
  color:         var(--pcg-text);
  background:    #fff;
  border:        1.5px solid var(--pcg-border);
  border-radius: var(--pcg-radius-sm);
  transition:    border-color .2s ease, box-shadow .2s ease;
  outline:       none;
  -webkit-appearance: none;
  appearance:    none;
}

.pcg-input:focus,
.pcg-select:focus,
.pcg-textarea:focus {
  border-color: var(--pcg-steel);
  box-shadow:   0 0 0 3px rgba(74,123,175,.15);
}

.pcg-input::placeholder,
.pcg-textarea::placeholder { color: var(--pcg-text-muted); font-style: italic; }

.pcg-input.pcg-input-short { max-width: 130px; }

.pcg-select {
  background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%234a7baf' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:   no-repeat;
  background-position: right 14px center;
  padding-right:       40px;
  cursor:              pointer;
}

.pcg-textarea {
  resize:     vertical;
  min-height: 92px;
  line-height: 1.6;
}

/* ── CHECKBOXES ─────────────────────────────────────────────────────────────── */
.pcg-checkbox-grid {
  display:               grid;
  grid-template-columns: 1fr 1fr;
  gap:                   6px 14px;
  margin-top:            6px;
}

@media (max-width: 520px) {
  .pcg-checkbox-grid { grid-template-columns: 1fr; }
}

.pcg-checkbox-label {
  display:      flex;
  align-items:  flex-start;
  gap:          10px;
  font-size:    0.875rem;
  color:        var(--pcg-text);
  cursor:       pointer;
  padding:      7px 10px;
  border-radius: var(--pcg-radius-xs);
  border:       1px solid transparent;
  transition:   background .15s, border-color .15s;
  line-height:  1.45;
}

.pcg-checkbox-label:hover {
  background:   var(--pcg-steel-pale);
  border-color: var(--pcg-steel-border);
}

.pcg-checkbox {
  flex-shrink:  0;
  width:        17px;
  height:       17px;
  margin-top:   2px;
  accent-color: var(--pcg-steel);
  cursor:       pointer;
}

/* ── SUBMIT AREA ────────────────────────────────────────────────────────────── */
.pcg-submit-area {
  text-align: center;
  padding:    32px 0 8px;
}

.pcg-submit-note {
  font-size:  0.8rem;
  color:      var(--pcg-text-muted);
  margin-top: 10px;
  font-style: italic;
}

/* ── BUTTONS ────────────────────────────────────────────────────────────────── */
.pcg-btn {
  display:         inline-flex;
  align-items:     center;
  justify-content: center;
  gap:             8px;
  padding:         12px 24px;
  font-family:     var(--pcg-font-body);
  font-size:       0.92rem;
  font-weight:     700;
  letter-spacing:  .3px;
  border:          none;
  border-radius:   var(--pcg-radius-sm);
  cursor:          pointer;
  transition:      background .2s, transform .1s, box-shadow .2s, color .2s;
  text-decoration: none;
  white-space:     nowrap;
  line-height:     1;
}

.pcg-btn:focus-visible {
  outline:        3px solid var(--pcg-steel);
  outline-offset: 2px;
}

/* Primary — deep navy, matches site header */
.pcg-btn-primary {
  background:  var(--pcg-navy);
  color:       #fff;
  font-size:   1.05rem;
  padding:     15px 36px;
  box-shadow:  0 4px 16px rgba(30,58,95,.3);
  min-width:   280px;
  letter-spacing: .5px;
  text-transform: uppercase;
}

.pcg-btn-primary:hover:not(:disabled) {
  background: var(--pcg-navy-mid);
  transform:  translateY(-2px);
  box-shadow: 0 6px 20px rgba(30,58,95,.38);
}

.pcg-btn-primary:active { transform: translateY(0); }

.pcg-btn-primary:disabled {
  background: #7a95b2;
  cursor:     not-allowed;
  box-shadow: none;
  transform:  none;
}

/* Secondary — steel blue outline */
.pcg-btn-secondary {
  background:   var(--pcg-steel-pale);
  color:        var(--pcg-navy);
  border:       1.5px solid var(--pcg-steel-border);
  padding:      9px 18px;
  font-size:    0.85rem;
}

.pcg-btn-secondary:hover {
  background:  var(--pcg-steel);
  color:       #fff;
  border-color: var(--pcg-steel);
}

/* Ghost */
.pcg-btn-ghost {
  background:  transparent;
  color:       var(--pcg-text-light);
  border:      1.5px solid var(--pcg-border);
  padding:     9px 18px;
  font-size:   0.85rem;
}

.pcg-btn-ghost:hover {
  background: var(--pcg-steel-pale);
  color:      var(--pcg-navy);
}

/* ── SPINNER ────────────────────────────────────────────────────────────────── */
.pcg-spinner {
  display:       inline-block;
  width:         18px;
  height:        18px;
  border:        2.5px solid rgba(255,255,255,.35);
  border-top-color: #fff;
  border-radius: 50%;
  animation:     pcg-spin .7s linear infinite;
  flex-shrink:   0;
}

@keyframes pcg-spin { to { transform: rotate(360deg); } }

/* ── ERROR MESSAGE ──────────────────────────────────────────────────────────── */
.pcg-error-msg {
  background:   var(--pcg-alert-red-bg);
  border-left:  4px solid var(--pcg-alert-red-border);
  color:        var(--pcg-alert-red);
  padding:      14px 18px;
  border-radius: 0 var(--pcg-radius-sm) var(--pcg-radius-sm) 0;
  font-size:    0.9rem;
  font-weight:  600;
  margin-top:   18px;
}

/* =============================================================================
   RESULT OUTPUT — Purple/Pastel Card System (v1.1.0)
   ============================================================================= */

:root {
  --pcg-purple:        #7c3aed;
  --pcg-purple-mid:    #8b5cf6;
  --pcg-purple-light:  #a78bfa;
  --pcg-purple-bg:     #f5f3ff;
  --pcg-purple-border: #c4b5fd;
  --pcg-lavender:      #ede9fe;
  --pcg-violet-dark:   #4c1d95;
  --pcg-rose-bg:       #fdf4ff;
  --pcg-rose-border:   #e9d5ff;
}

/* ── Result wrap ── */
.pcg-result-wrap { display: flex; flex-direction: column; gap: 14px; }

/* ── Result section card base ── */
.pcg-rs {
  border-radius: 12px;
  border: 1.5px solid var(--pcg-purple-border);
  background: var(--pcg-purple-bg);
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(124,58,237,.08);
}

/* ── Section header bar ── */
.pcg-rs-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 18px;
  background: linear-gradient(135deg, #7c3aed 0%, #8b5cf6 100%);
  border-bottom: none;
}

.pcg-rs-icon { font-size: 18px; flex-shrink: 0; }

.pcg-rs-title {
  font-family: 'Lato', sans-serif;
  font-size: 0.95rem;
  font-weight: 900;
  color: #ffffff;
  margin: 0;
  letter-spacing: .1px;
}

/* ── Section body ── */
.pcg-rs-body {
  padding: 16px 20px 12px;
  font-size: 0.91rem;
  line-height: 1.7;
  color: var(--pcg-violet-dark);
}

.pcg-rs-para { margin: 0 0 10px; }
.pcg-rs-para:last-child { margin-bottom: 0; }

.pcg-rs-list {
  margin: 4px 0 10px;
  padding-left: 20px;
}
.pcg-rs-ol { list-style: decimal; }
.pcg-rs-list li { margin-bottom: 6px; line-height: 1.6; }

.pcg-rs-subheading {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--pcg-purple);
  margin: 12px 0 6px;
}

/* ── Related links bar ── */
.pcg-rs-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 10px 18px 14px;
  border-top: 1px solid var(--pcg-purple-border);
  background: var(--pcg-lavender);
}

.pcg-rs-links-label {
  font-size: 11px;
  font-weight: 700;
  color: var(--pcg-violet-dark);
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-right: 4px;
  flex-shrink: 0;
}

.pcg-rs-link {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  color: var(--pcg-purple);
  background: white;
  border: 1.5px solid var(--pcg-purple-border);
  border-radius: 20px;
  padding: 3px 12px;
  text-decoration: none;
  transition: background .15s, color .15s, border-color .15s;
  white-space: nowrap;
}
.pcg-rs-link:hover {
  background: var(--pcg-purple);
  color: white;
  border-color: var(--pcg-purple);
}

/* ── Card colour variants ── */
/* Impact — soft blue */
.pcg-rs-impact {
  border-color: #93c5fd;
  background: #eff6ff;
}
.pcg-rs-impact .pcg-rs-header {
  background: linear-gradient(135deg, #1d4ed8 0%, #3b82f6 100%);
}
.pcg-rs-impact .pcg-rs-body { color: #1e3a5f; }
.pcg-rs-impact .pcg-rs-links { background: #dbeafe; border-color: #93c5fd; }
.pcg-rs-impact .pcg-rs-links-label { color: #1e3a5f; }
.pcg-rs-impact .pcg-rs-link { color: #1d4ed8; border-color: #93c5fd; }
.pcg-rs-impact .pcg-rs-link:hover { background: #1d4ed8; color: white; border-color: #1d4ed8; }

/* Patterns — soft amber */
.pcg-rs-patterns {
  border-color: #fcd34d;
  background: #fffbeb;
}
.pcg-rs-patterns .pcg-rs-header {
  background: linear-gradient(135deg, #b45309 0%, #d97706 100%);
}
.pcg-rs-patterns .pcg-rs-body { color: #451a03; }
.pcg-rs-patterns .pcg-rs-links { background: #fef3c7; border-color: #fcd34d; }
.pcg-rs-patterns .pcg-rs-links-label { color: #451a03; }
.pcg-rs-patterns .pcg-rs-link { color: #b45309; border-color: #fcd34d; }
.pcg-rs-patterns .pcg-rs-link:hover { background: #b45309; color: white; border-color: #b45309; }

/* Questions — soft purple (brighter) */
.pcg-rs-questions {
  border-color: var(--pcg-purple-border);
  background: #faf5ff;
}
.pcg-rs-questions .pcg-rs-header {
  background: linear-gradient(135deg, #5b21b6 0%, #7c3aed 100%);
}
.pcg-rs-questions .pcg-rs-body { color: var(--pcg-violet-dark); }

/* Evaluations — soft teal */
.pcg-rs-evals {
  border-color: #5eead4;
  background: #f0fdfa;
}
.pcg-rs-evals .pcg-rs-header {
  background: linear-gradient(135deg, #0f766e 0%, #0d9488 100%);
}
.pcg-rs-evals .pcg-rs-body { color: #134e4a; }
.pcg-rs-evals .pcg-rs-links { background: #ccfbf1; border-color: #5eead4; }
.pcg-rs-evals .pcg-rs-links-label { color: #134e4a; }
.pcg-rs-evals .pcg-rs-link { color: #0f766e; border-color: #5eead4; }
.pcg-rs-evals .pcg-rs-link:hover { background: #0f766e; color: white; border-color: #0f766e; }

/* Supports — soft green */
.pcg-rs-supports {
  border-color: #86efac;
  background: #f0fdf4;
}
.pcg-rs-supports .pcg-rs-header {
  background: linear-gradient(135deg, #15803d 0%, #16a34a 100%);
}
.pcg-rs-supports .pcg-rs-body { color: #14532d; }
.pcg-rs-supports .pcg-rs-links { background: #dcfce7; border-color: #86efac; }
.pcg-rs-supports .pcg-rs-links-label { color: #14532d; }
.pcg-rs-supports .pcg-rs-link { color: #15803d; border-color: #86efac; }
.pcg-rs-supports .pcg-rs-link:hover { background: #15803d; color: white; border-color: #15803d; }

/* Docs — soft green (lighter) */
.pcg-rs-docs {
  border-color: #86efac;
  background: #f0fdf4;
}
.pcg-rs-docs .pcg-rs-header {
  background: linear-gradient(135deg, #166534 0%, #15803d 100%);
}
.pcg-rs-docs .pcg-rs-body { color: #14532d; }
.pcg-rs-docs .pcg-rs-links { background: #dcfce7; border-color: #86efac; }
.pcg-rs-docs .pcg-rs-links-label { color: #14532d; }
.pcg-rs-docs .pcg-rs-link { color: #166534; border-color: #86efac; }
.pcg-rs-docs .pcg-rs-link:hover { background: #166534; color: white; border-color: #166534; }

/* Meeting prep — navy/indigo */
.pcg-rs-meeting {
  border-color: #a5b4fc;
  background: #eef2ff;
}
.pcg-rs-meeting .pcg-rs-header {
  background: linear-gradient(135deg, #1e3a5f 0%, #3730a3 100%);
}
.pcg-rs-meeting .pcg-rs-body { color: #1e1b4b; }
.pcg-rs-meeting .pcg-rs-links { background: #e0e7ff; border-color: #a5b4fc; }
.pcg-rs-meeting .pcg-rs-links-label { color: #1e1b4b; }
.pcg-rs-meeting .pcg-rs-link { color: #3730a3; border-color: #a5b4fc; }
.pcg-rs-meeting .pcg-rs-link:hover { background: #3730a3; color: white; border-color: #3730a3; }

/* Disclaimer — amber */
.pcg-rs-disclaimer {
  border-color: #fcd34d;
  background: #fffbeb;
}
.pcg-rs-disclaimer .pcg-rs-header {
  background: linear-gradient(135deg, #92400e 0%, #b45309 100%);
}
.pcg-rs-disclaimer .pcg-rs-body {
  font-size: 0.84rem;
  color: #451a03;
  font-style: italic;
}

/* ── Cross-sell block ── */
.pcg-crosssell {
  margin-top: 28px;
  border-radius: 12px;
  background: linear-gradient(135deg, #1e3a5f 0%, #2d1b69 100%);
  padding: 0;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(30,58,95,.18);
}
.pcg-crosssell-inner {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  padding: 24px 28px;
}
.pcg-crosssell-icon {
  font-size: 32px;
  flex-shrink: 0;
  margin-top: 2px;
}
.pcg-crosssell-eyebrow {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--pcg-purple-light);
  margin-bottom: 5px;
}
.pcg-crosssell-title {
  font-family: 'Lato', sans-serif;
  font-size: 1.05rem;
  font-weight: 900;
  color: #ffffff;
  margin: 0 0 8px;
}
.pcg-crosssell-desc {
  font-size: 0.88rem;
  color: rgba(255,255,255,.85);
  line-height: 1.65;
  margin-bottom: 14px;
}
.pcg-crosssell-btn {
  display: inline-block;
  background: var(--pcg-purple);
  color: white;
  font-weight: 700;
  font-size: 0.88rem;
  padding: 10px 22px;
  border-radius: 8px;
  text-decoration: none;
  transition: background .2s;
  letter-spacing: .3px;
}
.pcg-crosssell-btn:hover { background: var(--pcg-purple-mid); }

/* ── Email / Mailchimp section ── */
.pcg-email-section {
  margin-top: 20px;
  border-radius: 12px;
  border: 1.5px solid var(--pcg-purple-border);
  background: var(--pcg-purple-bg);
  overflow: hidden;
}
.pcg-email-header {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px 22px 0;
}
.pcg-email-icon { font-size: 26px; flex-shrink: 0; margin-top: 2px; }
.pcg-email-title {
  font-family: 'Lato', sans-serif;
  font-size: 1rem;
  font-weight: 900;
  color: var(--pcg-violet-dark);
  margin: 0 0 4px;
}
.pcg-email-desc {
  font-size: 0.87rem;
  color: #5b21b6;
  line-height: 1.6;
  margin: 0;
}
.pcg-mc-wrap { padding: 14px 22px 20px; }

@media (max-width: 560px) {
  .pcg-crosssell-inner { flex-direction: column; gap: 10px; padding: 18px 20px; }
  .pcg-rs-links { flex-direction: column; align-items: flex-start; }
  .pcg-email-header { flex-direction: column; gap: 8px; }
}

/* ── Contact link inside error message ── */
.pcg-error-msg .pcg-contact-link {
  display: inline-block;
  margin-top: 8px;
  font-size: 0.87rem;
  font-weight: 700;
  color: var(--pcg-alert-red);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.pcg-error-msg .pcg-contact-link:hover { color: #922b21; }
