/* One centred grid for every public website panel. */
.premium-site { --page-gutter: clamp(16px, 4vw, 64px); --panel-padding: 30px; }
.premium-site :is(.content-width, .premium-hero, .site-header) {
  width: min(var(--page-width), calc(100% - var(--page-gutter) * 2));
  margin-inline: auto;
}
.premium-site .premium-hero { padding-top: 132px; }
.premium-site .hero-inner { max-width: none; padding: 24px var(--panel-padding); }
.premium-site :is(.hero-inner, .editorial-heading, .perspective-strip, .mission-line, .claims-section, .faq-section, .callback-copy, .contact-section-new, .privacy-note-new, .insurance-note)::before { inset: 0; }
.premium-site .hero-inner h1 { margin-block: 18px; }
.premium-site .hero-actions .button { min-width: 230px; }
.premium-site .protection-launchpad { margin-top: 30px; }
.premium-site .launchpad-label { margin-inline: 0; }
.premium-site .protection-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.premium-site .protection-card {
  min-width: 0; min-height: 144px; padding: 20px;
  flex-direction: column; align-items: center; justify-content: center;
  gap: 10px; text-align: center;
}
.premium-site .protection-card > span:nth-child(2) { width: auto; }
.premium-site .protection-card small { margin-bottom: 5px; }
.premium-site .card-arrow { position: absolute; right: 16px; top: 16px; margin: 0; }
.premium-site .perspective-strip { padding: 36px var(--panel-padding); margin-top: 24px; }
.premium-site .perspective-copy { min-width: 0; }
.premium-site .editorial-heading { padding: 28px var(--panel-padding); gap: 40px; }
.premium-site .editorial-heading > * { min-width: 0; }
.premium-site .chapter-navigation { justify-content: center; }
.premium-site .insurance-chapter { padding: var(--panel-padding); gap: 36px; margin-bottom: 24px; }
.premium-site .chapter-copy, .premium-site .chapter-reverse .chapter-copy { min-width: 0; padding: 12px 0; }
.premium-site .mission-line { padding: 24px var(--panel-padding); margin-top: 24px; }
.premium-site :is(.claims-section, .faq-section) {
  margin-top: var(--section-space);
  padding: var(--panel-padding);
  gap: 40px;
}
.premium-site .workspace-story { padding: var(--panel-padding); gap: 40px; }
.premium-site .workspace-preview, .premium-site .workspace-preview:hover { transform: none; }
.premium-site .callback-section { align-items: start; gap: 24px; }
.premium-site .callback-copy { padding: var(--panel-padding); }
.premium-site .callback-section .surface { padding: var(--panel-padding); }
.premium-site .contact-section-new { padding: 36px var(--panel-padding); gap: 36px; }
.premium-site .privacy-note-new { margin-top: 24px; padding: 24px var(--panel-padding); }
.premium-site .insurance-note { padding: 18px 22px; max-width: none; }
.premium-site .site-footer { padding-inline: max(var(--page-gutter), calc((100% - var(--page-width)) / 2)); gap: 24px; flex-wrap: wrap; }
@media (max-width: 1000px) {
  .premium-site .site-header .menu-toggle { display: block; margin-left: auto; min-height: 44px; min-width: 44px; }
  .premium-site .site-header nav {
    display: none; position: absolute; top: calc(100% + 10px); left: 0; right: 0;
    flex-direction: column; align-items: stretch; gap: 8px; margin: 0; padding: 16px;
    border: 1px solid #4798a66b; border-radius: 15px;
    background: linear-gradient(135deg, #d2f4eefa, #c4e8f5fa);
    box-shadow: inset 0 1px 0 #f0ffffa3, 0 15px 40px #215c7733;
  }
  .premium-site .site-header nav.open { display: flex; }
  .premium-site .nav-button.portal-link { margin-left: 0; justify-content: flex-start; }
  .premium-site .nav-button.portal-link > span { margin-left: auto; }
}
@media (max-width: 800px) {
  .premium-site { --panel-padding: 24px; }
  .premium-site .premium-hero { padding-top: 120px; }
  .premium-site .protection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .premium-site .perspective-strip { flex-wrap: wrap; justify-content: center; gap: 24px; }
  .premium-site .perspective-copy { flex-basis: 100%; border-left: 0; border-top: 1px solid var(--day-edge); padding: 24px 0 0; text-align: center; }
  .premium-site .perspective-copy .eyebrow { justify-content: center; }
  .premium-site :is(.claims-section, .faq-section) { gap: 28px; }
  .premium-site .insurance-chapter { gap: 24px; }
  .premium-site .workspace-story { gap: 28px; }
}
@media (max-width: 520px) {
  .premium-site { --panel-padding: 20px; }
  .premium-site .hero-inner { padding: 22px 18px; }
  .premium-site .hero-kicker { text-align: center; }
  .premium-site .hero-actions { padding: 0; }
  .premium-site .hero-actions .button { min-width: 0; min-height: 64px; padding: 12px 14px; gap: 12px; font-size: 13.5px; }
  .premium-site .protection-grid { gap: 12px; }
  .premium-site .protection-card { min-height: 148px; padding: 16px 10px; }
  .premium-site .launchpad-label { justify-content: center; }
  .premium-site .hero-base { justify-content: center; text-align: center; }
  .premium-site .perspective-strip { display: flex; padding: 28px var(--panel-padding); }
  .premium-site .perspective-copy { margin-top: 0; }
  .premium-site .chapter-navigation { gap: 12px; }
  .premium-site .insurance-chapter { padding: 14px; }
  .premium-site .chapter-copy, .premium-site .chapter-reverse .chapter-copy { padding: 4px; }
  .premium-site .editorial-heading { padding: 24px var(--panel-padding); gap: 20px; }
  .premium-site .mission-line { gap: 12px; }
  .premium-site .contact-section-new { gap: 26px; }
  .premium-site .site-footer { justify-items: center; text-align: center; }
  .premium-site .site-footer > small { margin-left: 0; }
  .premium-site .site-footer > a:last-child { text-align: center; }
}
