/*--------------------------------------------------
  Base Container Styles for All Variants
--------------------------------------------------*/
.is-style-callout,
.is-style-warning,
.is-style-error,
.is-style-info,
.is-style-note,
.is-style-notice,
.is-style-minimal {
  padding: 1.2rem 1rem 0.8rem;
  border-radius: 0.3rem;
  margin: 1.6em 0 1em;
  font-weight: 500;
}

/*--------------------------------------------------
  Variant Backgrounds
--------------------------------------------------*/
.is-style-callout  { background: #f8f9fa; } /* light gray */
.is-style-warning  { background: #fff4e6; } /* light orange */
.is-style-error    { background: #f8d7da; } /* light red */
.is-style-info     { background: #eef5ff; } /* light blue */
.is-style-note     { background: #e6f4ea; } /* light green */
.is-style-notice   { background: #fff3cd; } /* light yellow */
.is-style-minimal  { background: #fafafa; padding: 1rem; border-left: 4px solid #b8ad88; border-radius: 0; }

/*--------------------------------------------------
  Link Styles
--------------------------------------------------*/
.is-style-callout a { color: #ffd700; } /* gold on dark bg */
.is-style-warning a { color: #cc6200; }
.is-style-error a   { color: #842029; }
.is-style-info a    { color: #195c1b; }
.is-style-note a    { color: #711c46; }
.is-style-notice a  { color: #856404; }
.is-style-minimal a { color: #343a40; }

.is-style-callout a,
.is-style-warning a,
.is-style-error a,
.is-style-info a,
.is-style-note a,
.is-style-notice a,
.is-style-minimal a {
  mix-blend-mode: multiply;
  font-weight: 700;
}

/*--------------------------------------------------
  Enhanced Paragraph Styles (Conversion-Focused)
--------------------------------------------------*/

/* Highlight box with icon space */
.is-style-highlight-box {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #ffffff;
  padding: 24px 28px;
  border-radius: 12px;
  font-size: 17px;
  line-height: 1.6;
  margin: 1.5em 0;
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.25);
}

/* CTA Box - conversion optimized */
.is-style-cta-box {
  background: #f59e0b;
  color: #78350f;
  padding: 28px 32px;
  border-radius: 10px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  margin: 2em 0;
  border: 3px solid #fbbf24;
  box-shadow: 0 6px 16px rgba(245, 158, 11, 0.3);
}

/* Alert/Urgent style */
.is-style-urgent {
  background: #fef2f2;
  color: #991b1b;
  padding: 20px 24px;
  border-left: 5px solid #ef4444;
  border-radius: 6px;
  font-weight: 500;
  margin: 1.5em 0;
  position: relative;
}
.is-style-urgent:before {
  content: "⚠";
  font-size: 24px;
  margin-right: 12px;
  vertical-align: middle;
}

/* Success message */
.is-style-success-box {
  background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);
  color: #065f46;
  padding: 20px 24px;
  border-left: 5px solid #10b981;
  border-radius: 8px;
  margin: 1.5em 0;
  font-weight: 500;
}
.is-style-success-box:before {
  content: "✓";
  display: inline-block;
  width: 28px;
  height: 28px;
  background: #10b981;
  color: white;
  border-radius: 50%;
  text-align: center;
  line-height: 28px;
  margin-right: 12px;
  font-weight: bold;
}

/* Tip/Pro tip style */
.is-style-tip {
  background: #eff6ff;
  color: #1e3a8a;
  padding: 20px 24px 20px 60px;
  border-radius: 8px;
  border: 2px solid #93c5fd;
  margin: 1.5em 0;
  position: relative;
  font-weight: 500;
}
.is-style-tip:before {
  content: "💡";
  position: absolute;
  left: 20px;
  top: 20px;
  font-size: 24px;
}

/* Premium/Featured box */
.is-style-premium {
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
  color: #fbbf24;
  padding: 28px 32px;
  border-radius: 12px;
  border: 2px solid #fbbf24;
  margin: 2em 0;
  font-size: 17px;
  font-weight: 600;
  box-shadow: 0 10px 30px rgba(251, 191, 36, 0.2);
}

/* Stats/Numbers highlight */
.is-style-stats {
  background: #ffffff;
  color: #1e293b;
  padding: 32px;
  border-radius: 12px;
  border: 2px solid #e2e8f0;
  margin: 1.5em 0;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Testimonial snippet */
.is-style-testimonial-snippet {
  background: #f8fafc;
  color: #475569;
  padding: 24px 28px;
  border-left: 4px solid #3b82f6;
  border-radius: 6px;
  margin: 1.5em 0;
  font-style: italic;
  position: relative;
  padding-left: 48px;
}
.is-style-testimonial-snippet:before {
  content: """;
  position: absolute;
  left: 16px;
  top: 16px;
  font-size: 40px;
  color: #cbd5e1;
  line-height: 1;
  font-family: Georgia, serif;
}

/* Feature highlight */
.is-style-feature {
  background: #ffffff;
  color: #1e293b;
  padding: 24px;
  border-radius: 10px;
  border: 2px solid #e2e8f0;
  margin: 1.5em 0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.is-style-feature:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

/* Discount/Offer box */
.is-style-offer {
  background: linear-gradient(135deg, #ec4899 0%, #f43f5e 100%);
  color: #ffffff;
  padding: 28px 32px;
  border-radius: 12px;
  margin: 2em 0;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  box-shadow: 0 10px 25px rgba(236, 72, 153, 0.3);
  position: relative;
  overflow: hidden;
}
.is-style-offer:before {
  content: "";
  position: absolute;
  top: -50%;
  right: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);
  transform: rotate(45deg);
}

/* Clean bordered box */
.is-style-bordered {
  background: transparent;
  color: inherit;
  padding: 20px 24px;
  border: 2px solid #e2e8f0;
  border-radius: 8px;
  margin: 1.5em 0;
}

/* Dark mode style */
.is-style-dark {
  background: #0f172a;
  color: #e2e8f0;
  padding: 24px 28px;
  border-radius: 10px;
  margin: 1.5em 0;
  font-weight: 500;
}

/*--------------------------------------------------
  Numbered List Styles
--------------------------------------------------*/
.is-style-numbered {
  counter-reset: rowNumber;
  padding: 10px;
  list-style: none;
  margin-left: 0 !important;
}
.is-style-numbered li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  margin-bottom: 11px;
  padding: 6px 11px;
}
.is-style-numbered li:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}
.is-style-numbered li:before {
  float: left;
  background: #080808;
  border-radius: 100%;
  color: #fff;
  content: counter(rowNumber);
  counter-increment: rowNumber;
  display: inline-block;
  font-size: 0.9rem;
  font-weight: 700;
  left: -20px;
  line-height: 1;
  margin-right: 10px;
  padding: 8px 0;
  text-align: center;
  width: 30px;
}

/*--------------------------------------------------
  Checked & Cancel Card Lists
--------------------------------------------------*/
.is-style-checked,
.is-style-cancel {
  list-style: none;
  margin-left: 0 !important;
  padding: 0;
}

.is-style-checked li,
.is-style-cancel li {
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  margin-bottom: 16px;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  gap: 16px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  transition: box-shadow 0.2s ease;
}

.is-style-checked li:hover,
.is-style-cancel li:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.is-style-checked li:last-child,
.is-style-cancel li:last-child {
  margin-bottom: 0;
}

.is-style-checked li:before,
.is-style-cancel li:before {
  float: none;
  font-family: "md-icon";
  margin-right: 0;
  font-size: 28px;
  flex-shrink: 0;
  line-height: 1;
}

.is-style-checked li:before {
  content: "\e907";
  color: #10b981;
}

.is-style-cancel li:before {
  content: "\e927";
  color: #ef4444;
}

/*--------------------------------------------------
  Other Icon Lists (Standard Border Style)
--------------------------------------------------*/
.is-style-list-checkmark,
.is-style-list-cross,
.is-style-list,
.is-style-arrow-square-right {
  list-style: none;
  margin-left: 0 !important;
}

.is-style-list-checkmark li,
.is-style-list-cross li,
.is-style-list li,
.is-style-arrow-square-right li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  margin-bottom: 11px;
  padding: 6px 11px;
}

.is-style-list-checkmark li:last-child,
.is-style-list-cross li:last-child,
.is-style-list li:last-child,
.is-style-arrow-square-right li:last-child {
  border-bottom: 0;
  margin-bottom: 0;
}

.is-style-list-checkmark li:before,
.is-style-list-cross li:before,
.is-style-arrow-square-right li:before {
  float: left;
  font-family: "md-icon";
  margin-right: 0.5rem;
}

.is-style-list-checkmark li:before    { content: "\ea52"; color: #080808; }
.is-style-list-cross li:before        { content: "\e810"; color: #080808; }
.is-style-arrow-square-right li:before{ content: "\f33b"; color: #080808; }

/*--------------------------------------------------
  Heading Numbering Styles
--------------------------------------------------*/
h2.numbered, h2.is-style-numbered {
  counter-increment: h2;
  counter-reset: h3;
}
h2.numbered::before, h2.is-style-numbered::before {
  content: counter(h2);
}
h3.numbered, h3.is-style-numbered {
  counter-increment: h3;
  counter-reset: h4;
}
h3.numbered::before, h3.is-style-numbered::before {
  content: counter(h3);
}
.numbered::before,
.is-style-numbered::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #d0dad2;
  border-radius: 50px;
  color: #080808;
  height: 60px;
  width: 60px;
  line-height: 2;
  margin-left: -10px;
  margin-right: 15px;
}

/*--------------------------------------------------
  Heading Variation Styles
--------------------------------------------------*/
.is-style-h1 {  
  font-size: clamp(2.25rem, 1.6rem + 2vw, 3.25rem);  /* ~36px → 52px */  
}

.is-style-h2 {  
  font-size: clamp(1.875rem, 1.4rem + 1.4vw, 2.5rem);  /* ~30px → 40px */  
}

.is-style-h3 {  
  font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem);  /* ~24px → 32px */  
}

.is-style-label {  
  font-size: clamp(0.875rem, 0.8rem + 0.3vw, 1rem);  /* ~14px → 16px */  
}


/*--------------------------------------------------
  New Heading Styles
--------------------------------------------------*/

/* Underlined heading with gradient */
.is-style-underline-gradient {
  padding-bottom: 12px;
  position: relative;
  display: inline-block;
}
.is-style-underline-gradient:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, #3b82f6, #8b5cf6, #ec4899);
  border-radius: 2px;
}

/* Thick bottom border */
.is-style-thick-border {
  padding-bottom: 16px;
  border-bottom: 5px solid #080808;
  margin-bottom: 24px;
}

/* Badge style heading */
.is-style-badge {
  display: inline-block;
  background: #3b82f6;
  color: #ffffff !important;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 700;
}

/* Pill heading */
.is-style-pill {
  display: inline-block;
  background: #f1f5f9;
  color: #1e293b !important;
  padding: 10px 28px;
  border-radius: 50px;
  font-weight: 600;
  border: 2px solid #cbd5e1;
}

/* Side accent bar */
.is-style-accent-bar {
  padding-left: 20px;
  border-left: 6px solid #3b82f6;
  line-height: 1.3;
}

/* Background box */
.is-style-box-heading {
  background: #080808;
  color: #ffffff !important;
  padding: 16px 24px;
  border-radius: 8px;
  margin-bottom: 20px;
}

/* Gradient text */
.is-style-gradient-text {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 700;
}

/* Shadow text */
.is-style-shadow-text {
  text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
  font-weight: 700;
}

/* Dotted underline */
.is-style-dotted-underline {
  padding-bottom: 8px;
  border-bottom: 3px dotted #cbd5e1;
  margin-bottom: 20px;
}

/* Double line */
.is-style-double-line {
  padding-bottom: 12px;
  border-bottom: 4px double #080808;
  margin-bottom: 20px;
}

/* Ribbon style */
.is-style-ribbon {
  position: relative;
  display: inline-block;
  background: #ef4444;
  color: #ffffff !important;
  padding: 12px 28px 12px 20px;
  font-weight: 600;
  margin-left: 20px;
}
.is-style-ribbon:before {
  content: "";
  position: absolute;
  left: -20px;
  top: 0;
  width: 0;
  height: 0;
  border-top: 24px solid transparent;
  border-bottom: 24px solid transparent;
  border-right: 20px solid #ef4444;
}
.is-style-ribbon:after {
  content: "";
  position: absolute;
  right: -12px;
  top: 0;
  width: 0;
  height: 0;
  border-top: 24px solid #ef4444;
  border-bottom: 24px solid #ef4444;
  border-right: 12px solid transparent;
}

/* Small caps */
.is-style-small-caps {
  font-variant: small-caps;
  letter-spacing: 2px;
  font-weight: 700;
}

/* Highlighted */
.is-style-highlight {
  background: linear-gradient(180deg, transparent 60%, #fef08a 60%);
  display: inline;
  padding: 0 4px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* Sticker style */
.is-style-sticker {
  display: inline-block;
  background: #fbbf24;
  color: #78350f !important;
  padding: 14px 26px;
  border-radius: 12px;
  font-weight: 700;
  box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.1);
  transform: rotate(-2deg);
}

/* Outlined */
.is-style-outlined {
  display: inline-block;
  border: 3px solid #080808;
  padding: 10px 20px;
  border-radius: 6px;
  font-weight: 700;
}

/* Minimal line */
.is-style-minimal-line {
  padding-bottom: 8px;
  position: relative;
}
.is-style-minimal-line:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 3px;
  background: #080808;
}

/* Corner accent */
.is-style-corner-accent {
  position: relative;
  padding-left: 20px;
  padding-top: 8px;
}
.is-style-corner-accent:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 8px;
  height: 8px;
  border-left: 3px solid #3b82f6;
  border-top: 3px solid #3b82f6;
}

/* Brackets */
.is-style-brackets:before {
  content: "[ ";
  color: #64748b;
}
.is-style-brackets:after {
  content: " ]";
  color: #64748b;
}

/* Section number style */
.is-style-section {
  display: flex;
  align-items: center;
  gap: 16px;
  font-weight: 700;
}
.is-style-section:before {
  content: "§";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e2e8f0;
  color: #475569;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  font-size: 1.5em;
}

/* Glow effect */
.is-style-glow {
  text-shadow: 0 0 20px rgba(59, 130, 246, 0.6);
  color: #3b82f6 !important;
  font-weight: 700;
}

/*--------------------------------------------------
  Centered Heading Style
--------------------------------------------------*/
.is-style-centered-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
}
.is-style-centered-heading::before,
.is-style-centered-heading::after {
  content: "";
  flex-grow: 1;
  border-top: 2px dashed #ddd;
  height: 2px;
  margin: 0 10px;
}

/*--------------------------------------------------
  Colored & Card Styles
--------------------------------------------------*/
.is-style-colored {
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--aliceblue) !important;
  padding: var(--wp--preset--spacing--20);
}
.is-style-colored-green {
  background: var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--aliceblue) !important;
  padding: var(--wp--preset--spacing--20);
}
.wp-block-group.is-style-card,
.is-style-card {
  border-radius: 8px;
  border: 1px solid #ddd;
  margin-bottom: 1.5em;
}

/*--------------------------------------------------
  Figure Styles
--------------------------------------------------*/
figure.is-style-rounder img {
  border-radius: 10px;
}
figure.is-style-shadow img {
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2);
}
figure.is-style-shadow-round img,
.wp-block-group.is-style-shadow-round,
blockquote.is-style-shadow-round {
  border-radius: 10px;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2);
}

/*--------------------------------------------------
  Browser-Shot Style
--------------------------------------------------*/
.is-style-browser-shot,
.browser-shot {
  border-top: 2em solid rgba(230, 230, 230, 0.7);
  box-shadow: 0 0.1em 1em rgba(0, 0, 0, 0.2);
  position: relative;
  border-radius: 3px 3px 0 0;
  background: #fff;
}
.is-style-browser-shot:before,
.browser-shot:before {
  display: block;
  position: absolute;
  content: "";
  top: -1.25em;
  left: 1em;
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
  background-color: #f44;
  box-shadow: 0 0 0 2px #f44, 1.5em 0 0 2px #9b3, 3em 0 0 2px #fb5;
}

/*--------------------------------------------------
  Overlay Style
--------------------------------------------------*/
.is-style-overlay {
  position: relative;
  overflow: hidden;
  color: #fff;
}
.is-style-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
}
.is-style-overlay > .wp-block-group {
  position: relative;
  z-index: 2;
}

/*--------------------------------------------------
  Blockquote Styles
--------------------------------------------------*/

/* Original newstyle quote */
blockquote.wp-block-quote.is-style-newstyle {
  background: #fff2f2;
  border: 3px dashed #ffd2d2;
  border-radius: 20px;
  padding: 50px;
  position: relative;
  z-index: 5;
  font-size: 22px;
  line-height: 1.75;
}
blockquote.wp-block-quote.is-style-newstyle cite {
  font-size: 15px;
  font-style: normal;
}

/* Modern testimonial with accent bar */
blockquote.wp-block-quote.is-style-testimonial {
  background: #ffffff;
  border-left: 5px solid #3b82f6;
  border-radius: 8px;
  padding: 32px 40px;
  margin: 2em 0;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.07);
  font-size: 18px;
  line-height: 1.6;
  font-style: italic;
  color: #334155;
}
blockquote.wp-block-quote.is-style-testimonial p {
  margin-bottom: 16px;
}
blockquote.wp-block-quote.is-style-testimonial cite {
  display: block;
  font-style: normal;
  font-weight: 600;
  color: #3b82f6;
  margin-top: 16px;
  font-size: 16px;
}
blockquote.wp-block-quote.is-style-testimonial cite:before {
  content: "— ";
}

/* Gradient card quote */
blockquote.wp-block-quote.is-style-gradient {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #ffffff;
  border: none;
  border-radius: 16px;
  padding: 40px;
  margin: 2em 0;
  font-size: 20px;
  line-height: 1.7;
  box-shadow: 0 10px 30px rgba(102, 126, 234, 0.3);
}
blockquote.wp-block-quote.is-style-gradient p {
  color: #ffffff;
  margin-bottom: 16px;
}
blockquote.wp-block-quote.is-style-gradient cite {
  display: block;
  font-style: normal;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
  margin-top: 20px;
  font-size: 16px;
  border-top: 2px solid rgba(255, 255, 255, 0.3);
  padding-top: 16px;
}

/* Large quote marks style */
blockquote.wp-block-quote.is-style-large-quotes {
  background: #f8fafc;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  padding: 40px 50px 40px 80px;
  margin: 2em 0;
  position: relative;
  font-size: 19px;
  line-height: 1.7;
  color: #1e293b;
}
blockquote.wp-block-quote.is-style-large-quotes:before {
  content: """;
  position: absolute;
  left: 20px;
  top: 20px;
  font-size: 80px;
  line-height: 1;
  color: #cbd5e1;
  font-family: Georgia, serif;
}
blockquote.wp-block-quote.is-style-large-quotes cite {
  display: block;
  font-style: normal;
  font-weight: 600;
  color: #64748b;
  margin-top: 16px;
  font-size: 15px;
}

/* Minimal elegant style */
blockquote.wp-block-quote.is-style-elegant {
  background: transparent;
  border: none;
  border-top: 3px solid #080808;
  border-bottom: 3px solid #080808;
  padding: 32px 20px;
  margin: 2.5em 0;
  font-size: 22px;
  line-height: 1.6;
  font-style: italic;
  text-align: center;
  color: #1a1a1a;
}
blockquote.wp-block-quote.is-style-elegant p {
  margin-bottom: 20px;
}
blockquote.wp-block-quote.is-style-elegant cite {
  display: block;
  font-style: normal;
  font-weight: 600;
  color: #666;
  margin-top: 20px;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Bold color block */
blockquote.wp-block-quote.is-style-bold {
  background: #0f172a;
  color: #ffffff;
  border: none;
  border-radius: 0;
  padding: 48px 40px;
  margin: 2em 0;
  font-size: 24px;
  line-height: 1.5;
  font-weight: 600;
  position: relative;
  overflow: hidden;
}
blockquote.wp-block-quote.is-style-bold:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  background: linear-gradient(90deg, #f59e0b, #ef4444, #ec4899);
}
blockquote.wp-block-quote.is-style-bold p {
  color: #ffffff;
  margin-bottom: 20px;
}
blockquote.wp-block-quote.is-style-bold cite {
  display: block;
  font-style: normal;
  font-weight: 500;
  color: #94a3b8;
  margin-top: 20px;
  font-size: 16px;
}

/* Soft shadow card */
blockquote.wp-block-quote.is-style-soft-card {
  background: #ffffff;
  border: 1px solid #f1f5f9;
  border-radius: 16px;
  padding: 36px;
  margin: 2em 0;
  font-size: 18px;
  line-height: 1.7;
  color: #334155;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}
blockquote.wp-block-quote.is-style-soft-card p {
  margin-bottom: 16px;
}
blockquote.wp-block-quote.is-style-soft-card cite {
  display: flex;
  align-items: center;
  gap: 12px;
  font-style: normal;
  font-weight: 600;
  color: #64748b;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #e2e8f0;
  font-size: 15px;
}

/* Success/callout style */
blockquote.wp-block-quote.is-style-success {
  background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
  border-left: 6px solid #10b981;
  border-radius: 8px;
  padding: 28px 36px;
  margin: 2em 0;
  font-size: 17px;
  line-height: 1.6;
  color: #065f46;
}
blockquote.wp-block-quote.is-style-success p {
  margin-bottom: 12px;
  color: #065f46;
}
blockquote.wp-block-quote.is-style-success cite {
  display: block;
  font-style: normal;
  font-weight: 600;
  color: #047857;
  margin-top: 12px;
  font-size: 15px;
}

/*--------------------------------------------------
  Button Styles
--------------------------------------------------*/

/* Original link style button */
.is-style-link .wp-element-button {
  border: 0;
  background: transparent;
  color: #080808;
  text-decoration: underline !important;
}

/* Primary CTA button */
.is-style-primary .wp-element-button {
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: #ffffff;
  border: none;
  padding: 16px 32px;
  font-size: 18px;
  font-weight: 700;
  border-radius: 8px;
  box-shadow: 0 4px 14px rgba(59, 130, 246, 0.4);
  transition: all 0.3s ease;
  cursor: pointer;
}
.is-style-primary .wp-element-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(59, 130, 246, 0.5);
}

/* Secondary button */
.is-style-secondary .wp-element-button {
  background: #f1f5f9;
  color: #1e293b;
  border: 2px solid #cbd5e1;
  padding: 14px 28px;
  font-weight: 600;
  border-radius: 8px;
  transition: all 0.3s ease;
}
.is-style-secondary .wp-element-button:hover {
  background: #e2e8f0;
  border-color: #94a3b8;
}

/* Outline button */
.is-style-outline .wp-element-button {
  background: transparent;
  color: #3b82f6;
  border: 2px solid #3b82f6;
  padding: 14px 28px;
  font-weight: 600;
  border-radius: 8px;
  transition: all 0.3s ease;
}
.is-style-outline .wp-element-button:hover {
  background: #3b82f6;
  color: #ffffff;
}

/* Ghost button */
.is-style-ghost .wp-element-button {
  background: transparent;
  color: #64748b;
  border: 1px solid #cbd5e1;
  padding: 12px 24px;
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.3s ease;
}
.is-style-ghost .wp-element-button:hover {
  background: #f8fafc;
  color: #1e293b;
}

/* Gradient button */
.is-style-gradient-button .wp-element-button {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #ffffff;
  border: none;
  padding: 16px 32px;
  font-weight: 700;
  border-radius: 50px;
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
  transition: all 0.3s ease;
}
.is-style-gradient-button .wp-element-button:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(102, 126, 234, 0.5);
}

/* Success button */
.is-style-success-button .wp-element-button {
  background: #10b981;
  color: #ffffff;
  border: none;
  padding: 14px 28px;
  font-weight: 600;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
  transition: all 0.3s ease;
}
.is-style-success-button .wp-element-button:hover {
  background: #059669;
  transform: translateY(-2px);
}

/* Danger button */
.is-style-danger .wp-element-button {
  background: #ef4444;
  color: #ffffff;
  border: none;
  padding: 14px 28px;
  font-weight: 600;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3);
  transition: all 0.3s ease;
}
.is-style-danger .wp-element-button:hover {
  background: #dc2626;
  transform: translateY(-2px);
}

/* Warning button */
.is-style-warning-button .wp-element-button {
  background: #f59e0b;
  color: #78350f;
  border: none;
  padding: 14px 28px;
  font-weight: 700;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
  transition: all 0.3s ease;
}
.is-style-warning-button .wp-element-button:hover {
  background: #d97706;
  transform: translateY(-2px);
}

/* Large button */
.is-style-large .wp-element-button {
  padding: 20px 48px;
  font-size: 20px;
  font-weight: 700;
  border-radius: 12px;
}

/* Small button */
.is-style-small .wp-element-button {
  padding: 8px 16px;
  font-size: 14px;
  font-weight: 600;
  border-radius: 6px;
}

/* Pill button */
.is-style-pill-button .wp-element-button {
  background: #3b82f6;
  color: #ffffff;
  border: none;
  padding: 12px 32px;
  font-weight: 600;
  border-radius: 50px;
  transition: all 0.3s ease;
}
.is-style-pill-button .wp-element-button:hover {
  background: #2563eb;
  transform: scale(1.05);
}

/* 3D button */
.is-style-3d .wp-element-button {
  background: #3b82f6;
  color: #ffffff;
  border: none;
  padding: 14px 28px;
  font-weight: 700;
  border-radius: 8px;
  box-shadow: 0 6px 0 #1e40af, 0 8px 12px rgba(0, 0, 0, 0.2);
  transition: all 0.15s ease;
  position: relative;
  top: 0;
}
.is-style-3d .wp-element-button:hover {
  top: 2px;
  box-shadow: 0 4px 0 #1e40af, 0 6px 10px rgba(0, 0, 0, 0.2);
}
.is-style-3d .wp-element-button:active {
  top: 6px;
  box-shadow: 0 0 0 #1e40af, 0 2px 6px rgba(0, 0, 0, 0.2);
}

/* Arrow button */
.is-style-arrow .wp-element-button:after {
  content: " →";
  margin-left: 8px;
  transition: margin-left 0.3s ease;
}
.is-style-arrow .wp-element-button:hover:after {
  margin-left: 12px;
}

/* Dark button */
.is-style-dark-button .wp-element-button {
  background: #0f172a;
  color: #ffffff;
  border: none;
  padding: 14px 28px;
  font-weight: 600;
  border-radius: 8px;
  transition: all 0.3s ease;
}
.is-style-dark-button .wp-element-button:hover {
  background: #1e293b;
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
}

/* Minimal button */
.is-style-minimal .wp-element-button {
  background: transparent;
  color: #64748b;
  border: none;
  padding: 12px 24px;
  font-weight: 500;
  text-decoration: underline;
  transition: all 0.3s ease;
}
.is-style-minimal .wp-element-button:hover {
  color: #1e293b;
}

/*--------------------------------------------------
  Aside Positioning
--------------------------------------------------*/
@media (min-width: 1366px) {
  .is-style-aside,
  .is-style-aside-right {
    position: absolute;
    max-width: 200px;
    font-size: 14px;
    color: #555;
    text-align: left;
    margin-top: -10rem;
  }
  .is-style-aside  { left: 0; }
  .is-style-aside-right { right: 0; }
}