/* Royal Visual Builder — front-end block styles */
.royal-block-section{ width:100%; }
.container-full{ width:100%; padding:0 24px; }

.royal-b-text.royal-b-width-narrow{ max-width:720px; margin-left:auto; margin-right:auto; }
.royal-b-text p:last-child{ margin-bottom:0; }

.royal-b-imgtext{ display:grid; grid-template-columns: 1fr 1fr; gap:50px; align-items:center; }
.royal-b-imgtext.is-reverse{ direction:rtl; }
.royal-b-imgtext.is-reverse > *{ direction:ltr; }
.royal-b-imgtext-media img{ border-radius: var(--radius); box-shadow: var(--shadow); width:100%; }
.royal-b-imgtext-body .btn{ margin-top:10px; }

.royal-b-columns{ display:grid; gap:24px; }
.royal-b-columns-2{ grid-template-columns: repeat(2,1fr); }
.royal-b-columns-3{ grid-template-columns: repeat(3,1fr); }
.royal-b-columns-4{ grid-template-columns: repeat(4,1fr); }
.royal-b-column{ background:#fff; border:1px solid var(--color-gray-200); border-radius: var(--radius); padding:28px 24px; text-align:center; }
.royal-b-column-icon{ font-size:2rem; margin-bottom:12px; }
.royal-b-column h3{ font-size:1.1rem; margin-bottom:.35em; }
.royal-b-column p{ color: var(--color-gray-600); font-size:.95rem; margin:0; }

.royal-b-gallery{ display:grid; gap:16px; }
.royal-b-gallery-2{ grid-template-columns: repeat(2,1fr); }
.royal-b-gallery-3{ grid-template-columns: repeat(3,1fr); }
.royal-b-gallery-4{ grid-template-columns: repeat(4,1fr); }
.royal-b-gallery-item img{ width:100%; height:220px; object-fit:cover; border-radius: var(--radius); }

.royal-b-video{ position:relative; }
.royal-b-video iframe{ width:100%; aspect-ratio:16/9; border-radius: var(--radius); border:0; }

.royal-b-cta{ text-align:center; max-width:680px; margin:0 auto; }
.royal-b-cta h2{ margin-bottom:.4em; }
.royal-b-cta p{ color: var(--color-gray-600); margin-bottom:1.6em; }

.royal-b-testimonial{ max-width:720px; margin:0 auto; text-align:center; padding:0; }
.royal-b-testimonial p{ font-size:1.3rem; font-style:italic; color: var(--color-navy); margin-bottom:.6em; }
.royal-b-testimonial cite{ font-style:normal; font-weight:600; color: var(--color-gold); }

@media (max-width: 782px){
	.royal-b-imgtext{ grid-template-columns:1fr; }
	.royal-b-imgtext.is-reverse{ direction:ltr; }
	.royal-b-columns-2, .royal-b-columns-3, .royal-b-columns-4{ grid-template-columns: 1fr; }
	.royal-b-gallery-2, .royal-b-gallery-3, .royal-b-gallery-4{ grid-template-columns: repeat(2,1fr); }
}
