/* ── Modal backdrop ─────────────────────────────────────────── */
.sf-gb__modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 99999;
    align-items: center;
    justify-content: center;
}

.sf-gb__modal[aria-hidden="false"] {
    display: flex;
}

.sf-gb__modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(28, 25, 23, .55);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    animation: sf-gb-fade-in .2s ease forwards;
}

/* ── Modal paneel ───────────────────────────────────────────── */
.sf-gb__modal-panel {
    position: relative;
    z-index: 1;
    background: #fff;
    border-radius: 10px;
	border: 2px solid #F4F5F8;
    padding: 2rem 2rem 2.25rem;
    width: min(520px, calc(100vw - 2rem));
    max-height: calc(100dvh - 3rem);
    overflow-y: auto;
    box-shadow:
        0 0 0 1px rgba(0,0,0,.06),
        0 20px 60px rgba(0,0,0,.18);
    animation: sf-gb-slide-up .22s cubic-bezier(.22,1,.36,1) forwards;
}

.sf-gb__modal-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 32px;
    height: 32px;
    border: 1px solid var(--sf-border);
    border-radius: 50%;
    background: transparent;
    color: var(--sf-ink-muted);
    font-size: .9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background .15s, color .15s;
    padding: 0;
    line-height: 1;
}

.sf-gb__modal-close:hover {
    background: var(--sf-surface);
    color: var(--sf-ink);
}

.sf-gb__modal-title {
    font-family: var(--sf-font-serif);
    font-size: 1.375rem;
    font-weight: 600;
    letter-spacing: -.02em;
    margin: 0 0 .25rem;
    color: var(--sf-ink);
}

.sf-gb__modal-sub {
    font-size: .875rem;
    color: var(--sf-ink-muted);
    margin: 0 0 1.5rem;
}

/* ── Notificaties ───────────────────────────────────────────── */
.sf-gb__notice {
    padding: .875rem 1rem;
    border-radius: var(--sf-radius-sm);
    font-size: .875rem;
    line-height: 1.5;
    margin-bottom: 1.25rem;
}

.sf-gb__notice--success {
    background: var(--sf-success-bg);
    color: var(--sf-success-ink);
    border: 1px solid #bbf7d0;
}

.sf-gb__notice--error {
    background: var(--sf-error-bg);
    color: var(--sf-error-ink);
    border: 1px solid #fecaca;
}
/* ── Formulier ──────────────────────────────────────────────── */
.sf-gb__form {
    display: flex;
    flex-direction: column;
    gap: 1.125rem;
}

.sf-gb__field {
    display: flex;
    flex-direction: column;
    gap: .4rem;
}

.sf-gb__label {
    font-size: .8125rem;
    font-weight: 500;
    color: var(--sf-ink);
    letter-spacing: .01em;
    display: flex;
    gap: .2rem;
}

.sf-gb__req {
    color: #dc2626;
    font-size: .9rem;
}

.sf-gb__input,
.sf-gb__textarea {
    font-family: var(--sf-font-body);
    font-size: .9375rem;
    color: var(--sf-ink);
    background: var(--sf-surface);
    border: 1px solid var(--sf-border);
    border-radius: var(--sf-radius-sm);
    padding: .625rem .875rem;
    width: 100%;
    box-sizing: border-box;
    outline: none;
    transition: border-color .15s, box-shadow .15s;
    -webkit-appearance: none;
}

.sf-gb__input:focus,
.sf-gb__textarea:focus {
    border-color: var(--sf-accent);
    box-shadow: 0 0 0 3px rgba(28, 25, 23, .08);
    background: #fff;
}

.sf-gb__textarea {
    resize: vertical;
    min-height: 120px;
    font-family: var(--sf-font-serif);
    line-height: 1.7;
	border: 1px solid #666;
    border-radius: 3px;
}
.sf-gb__list {
  column-count: 4;
  gap:   24px;
  list-style:   none;
  padding:      0;
}
@media only screen and (max-width: 678px) {
	.sf-gb__list {
  		column-count: 1!important;
	}
}	
@media only screen and (min-width: 679px)  and (max-width: 1024px){
	.sf-gb__list {
  		column-count: 3!important;
	}
}
.sf-gb__list li {
  break-inside: avoid;
	margin-bottom: 24px;
}
.sf-gb__entry .sf-gb__body{
	padding: 40px 30px;
	border: 2px solid #F4F5F8;
	border-radius: 10px;
}
.sf-gb__message p{
	margin-bottom: 0px;
}
.sf-gb__entry svg{
	margin-bottom: 20px;
}
.sf-gb__name{
	margin-top: 20px;
	color: #004176;
	font-weight: 600;
	font-size: 18px;
	display: inline-block;
}
.sf-gb__message{
	font-size: 16px;
	color: #4F4F4F;
}
.sf-gb__header{
	margin-top: 20px;
	margin-bottom: 20px;
}
.sf-gb__header .sf-gb__btn-open, .sf-gb__header .sf-gb__btn-open:focus{
	background-color: #0681CC;
	box-shadow: 0px 5px 15px 0px #25283933;
	border-radius: 100px;
	color: #fff;
	padding: 16px 40px;
	font-size: 16px;
	line-height: 24px;
	border: none;
	font-weight: 500!important;
}
.sf-gb__header .sf-gb__btn-open:hover{
	background-color: #004176;
}
@media only screen and (min-width: 769px) {
	.sf-fgastenboek-home .sf-gb__entry:nth-child(1) .sf-gb__body{
		margin-top: 4rem;
		display: inline-block;
	}
	.sf-fgastenboek-home .sf-gb__entry:nth-child(5) .sf-gb__body{
		margin-top: 10rem;
		display: inline-block;
	}
	.sf-fgastenboek-home .sf-gb__entry:nth-child(6) .sf-gb__body{
		margin-top: 14rem;
		display: inline-block;
	}
}
.sf-gb__modal-panel .sf-gb__modal-close:focus, .sf-gb__modal-panel .sf-gb__modal-close:hover, .sf-gb__modal-panel .sf-gb__modal-close:focus, .sf-gb__modal-panel .sf-gb__modal-close:hover, .sf-gb__modal-panel .sf-gb__modal-close:focus, .sf-gb__modal-panel .sf-gb__modal-close:hover, .sf-gb__modal-panel .sf-gb__modal-close{
	background: #FFF0!important;
	color: #000!important;
	border: none!important;
}
.sf-gb__btn-submit{
	background-color: #0681CC!important;
    box-shadow: 0px 5px 15px 0px #25283933!important;
    border-radius: 100px!important;
    color: #fff!important;
    padding: 16px 40px!important;
    font-size: 16px!important;
    line-height: 24px!important;
    border: none!important;
}
.sf-gb__btn-submit:hover{
    background-color: #004176!important;
}
/* .home .sf-gb__pagination{
	display: none;
} */
/* Paginering container */
.sf-gb__pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 32px;
    padding: 0;
}
 
/* Generieke link en span stijl */
.sf-gb__page-link,
.sf-gb__page-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 10px;
    border-radius: 6px;
    font-size: 0.9rem;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}
 
/* Klikbare paginanummers */
a.sf-gb__page-link {
    background-color: #f0f4f8;
    color: #004176;
    border: 1px solid #d0dce8;
    cursor: pointer;
}
 
a.sf-gb__page-link:hover,
a.sf-gb__page-link:focus-visible {
    background-color: #004176;
    color: #ffffff!important;
    border-color: #004176;
    outline: none;
}
 
/* Huidige pagina */
.sf-gb__page-link--current {
    background-color: #004176;
    color: #ffffff;
    border: 1px solid #004176;
    cursor: default;
}
 
/* Vorige / volgende pijl-knoppen */
.sf-gb__page-link--prev,
.sf-gb__page-link--next {
    font-size: 1rem;
}
 
/* Ellipsis (…) tussenelement */
.sf-gb__page-ellipsis {
    color: #6b7280;
    border: none;
    background: none;
    cursor: default;
    min-width: 24px;
    padding: 0 4px;
}