/* roofcraft-section-cluster-hero */
.cluster-hero{position: relative;background: linear-gradient( 240deg, rgba(0,87,112,1) 0%, rgba(0,87,112,1) 30%, rgba(33,43,85,1) 50%, rgba(33,43,85,1) 100% );color: #fff;overflow: hidden;padding: 70px 0 120px 0;}.cluster-hero::before{content: "";position: absolute;top: 0;right: 30px;width: 360px;height: 360px;background: url("/wp-content/themes/roofcraft/assets/img/watermerk-boven.svg") no-repeat top right;background-size: contain;pointer-events: none;z-index: 1;}.cluster-hero::after{content: "";position: absolute;left: 0;right: 0;bottom: -1px;height: 71px;background: #fff;clip-path: polygon(0 100%, 100% 0, 100% 100%);z-index: 2;pointer-events: none;}.cluster-hero .container{position: relative;z-index: 3;}.cluster-hero .container{position: relative;z-index: 3;}.cluster-hero .cluster-hero-text{position: relative;}.cluster-hero .eyebrow{position: relative;color: #8fb4ff;}.cluster-hero h1{max-width: 800px;position: relative;color: #fff;font-family: var(--display);font-size: clamp(2rem, 3.6vw, 2.8rem);margin: 0 0 30px 0;}.cluster-hero .cluster-hero-intro{max-width: 820px;margin-top: 22px;margin-bottom: 0;background: rgba(255, 255, 255, 0.06);border-left: 4px solid var(--green);box-shadow: none;color: #d4e0f4;}.cluster-hero .cluster-hero-intro, .cluster-hero .cluster-hero-intro p{color: #d4e0f4;}.cluster-hero .cluster-hero-intro strong{color: #fff;}.cluster-hero .lede{color: #d4e0f4;max-width: 720px;}.cluster-hero .cluster-hero-cta{margin-top: 26px;margin-bottom: 0;}.cluster-hero.has-slider{padding: 64px 0 66px;min-height: 380px;display: flex;align-items: center;}.cluster-hero.has-slider::before{display: none;}.cluster-hero-slider{position: absolute;inset: 0;z-index: 0;overflow: hidden;}.cluster-hero-slider img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;opacity: 0;transform: scale(1.04);transition: opacity 1.4s ease, transform 12s linear;will-change: opacity, transform;}.cluster-hero-slider:not(.is-init) img:first-child, .cluster-hero-slider img.is-active{opacity: 1;transform: scale(1.0);}.cluster-hero-overlay{position: absolute;inset: 0;background: linear-gradient(100deg, rgba(8, 18, 38, .96) 0%, rgba(8, 18, 38, .86) 40%, rgba(8, 18, 38, .55) 78%, rgba(8, 18, 38, .35) 100%);z-index: 1;}.cluster-hero.has-slider .container{z-index: 2;}@media (max-width: 580px){.cluster-hero .cluster-hero-cta{gap: 10px;}.cluster-hero .cluster-hero-cta .btn{width: 100%;justify-content: center;}}@media (prefers-reduced-motion: reduce){.cluster-hero-slider img{transition: none;transform: none;}}.cluster-hero.has-media .cluster-hero-grid{display: grid;grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);gap: 56px;align-items: center;}.cluster-hero.has-media .cluster-hero-text{min-width: 0;}.cluster-hero.has-media .cluster-hero-media{min-width: 0;position: relative;}.cluster-hero:not(.has-media) .cluster-hero-grid{display: block;}.ch-caption-pill{position: absolute;left: 18px;bottom: 18px;background: rgba(255, 255, 255, 0.94);color: var(--ink);font-family: var(--font);font-weight: 600;font-size: 13px;letter-spacing: 0.01em;padding: 8px 14px;border-radius: 999px;box-shadow: var(--sh);backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px);z-index: 2;}.ch-mosaic{display: grid;grid-template-columns: 1.5fr 1fr;grid-template-rows: 1fr 1fr;gap: 12px;height: 400px;border-radius: var(--r);overflow: hidden;box-shadow: var(--sh-lg);background: var(--navy-2);}.ch-mosaic figure{position: relative;overflow: hidden;margin: 0;}.ch-mosaic-main{grid-row: 1 / 3;grid-column: 1 / 2;}.ch-mosaic-sub-1{grid-row: 1 / 2;grid-column: 2 / 3;}.ch-mosaic-sub-2{grid-row: 2 / 3;grid-column: 2 / 3;}.ch-mosaic img{width: 100%;height: 100%;object-fit: cover;display: block;}.ch-mosaic-main img{animation: ch-kenburns 14s ease-in-out infinite alternate;will-change: transform;}@keyframes ch-kenburns{0%{transform: scale(1) translate(0, 0);}100%{transform: scale(1.06) translate(-1.5%, -1%);}}.ch-single{position: relative;margin: 0;border-radius: var(--r);overflow: hidden;box-shadow: var(--sh-lg);aspect-ratio: 4 / 3;background: var(--navy-2);}.ch-single img{width: 100%;height: 100%;object-fit: cover;display: block;animation: ch-kenburns 16s ease-in-out infinite alternate;will-change: transform;}.ch-diagonal{position: relative;margin: 0;height: 420px;border-radius: var(--r);overflow: hidden;box-shadow: var(--sh-lg);background: linear-gradient(135deg, var(--blue-d) 0%, var(--navy-2) 100%);}.ch-diagonal img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;display: block;clip-path: polygon(18% 0, 100% 0, 100% 100%, 0 100%);}.ch-diagonal::before{content: '';position: absolute;inset: 0;background: linear-gradient(90deg, rgba(37, 99, 235, 0.30) 0%, transparent 35%);z-index: 1;pointer-events: none;}.ch-diagonal .ch-caption-pill{left: auto;right: 18px;}@media (max-width: 980px){.cluster-hero{padding: 44px 0 48px;}.cluster-hero.has-media .cluster-hero-grid{grid-template-columns: 1fr;gap: 32px;}.ch-mosaic{grid-template-columns: 1fr;grid-template-rows: 1fr;height: 260px;}.ch-mosaic-sub-1, .ch-mosaic-sub-2{display: none;}.ch-mosaic-main{grid-row: 1 / 2;grid-column: 1 / 2;}.ch-diagonal{height: 260px;}.ch-diagonal img{clip-path: none;}.ch-diagonal::before{display: none;}}@media (prefers-reduced-motion: reduce){.ch-mosaic-main img, .ch-single img{animation: none;transform: none;}}.cluster-hero-meta{margin-top: 22px;display: flex;gap: 6px 14px;align-items: center;font-size: 13.5px;color: #9db4d8;flex-wrap: wrap;}.cluster-hero-meta .chm-item{display: inline-flex;align-items: center;gap: 6px;}.cluster-hero-meta .chm-icon{font-size: 14px;line-height: 1;}.cluster-hero-meta .chm-sep{opacity: 0.5;}.cluster-hero-meta strong{color: #fff;font-weight: 700;}.quick-facts{display: grid;grid-template-columns: repeat(2, 1fr);gap: 16px;margin-top: 30px;}.quick-fact{background: rgba(255, 255, 255, 0.08);border: 1px solid rgba(255, 255, 255, 0.18);border-radius: var(--r-sm);padding: 18px 16px;text-align: center;backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}.quick-fact .icon-circle{width: 48px;height: 48px;margin: 0 auto 10px;border-radius: 50%;background: var(--blue);color: #fff;display: flex;align-items: center;justify-content: center;font-size: 20px;font-weight: 500;line-height: 1;letter-spacing: -0.01em;}.quick-fact h4, .quick-fact .quick-fact__label{font-size: 12.5px;color: var(--blue);margin: 0 0 4px;font-weight: 600;letter-spacing: 0.01em;text-transform: uppercase;}.quick-fact p{font-size: 14px;font-weight: 500;color: #d4e0f4;margin: 0;line-height: 1.5;}.quick-fact sup{font-weight: 400;}@media (max-width: 720px){.quick-facts{grid-template-columns: repeat(2, 1fr);}}@media (max-width:768px){.cluster-hero .container{padding-bottom:80px}.cluster-hero::before{width:200px;height:200px;right:15px;}}@media (max-width: 420px){.quick-facts{grid-template-columns: 1fr;}}@media (min-width: 981px){.cluster-hero{padding-top: 36px;}.cluster-hero.has-media .cluster-hero-grid{grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);gap: 44px;align-items: start;}.cluster-hero .hero-cta{margin-top: 22px;}.cluster-hero-media .quick-facts{grid-template-columns: repeat(2, 1fr);gap: 12px;margin-top: 16px;}.cluster-hero-media .quick-fact{padding: 12px 14px;text-align: left;}.cluster-hero-media .quick-fact .icon-circle{display: none;}}@media (max-width: 980px){.cluster-hero.has-media .cluster-hero-grid{display: flex;flex-direction: column;align-items: stretch;gap: 0;}.cluster-hero.has-media .cluster-hero-text, .cluster-hero.has-media .cluster-hero-media{display: contents;}.cluster-hero.has-media .eyebrow{align-self: flex-start;}.cluster-hero.has-media .quick-facts{order: 1;}.cluster-hero.has-media .cluster-hero-cta{order: 2;}.cluster-hero.has-media .ch-mosaic, .cluster-hero.has-media .ch-single, .cluster-hero.has-media .ch-diagonal{order: 3;margin-top: 32px;}}@media (max-width: 767px){.cluster-hero .quick-facts{grid-template-columns: repeat(2, 1fr);gap: 8px;margin-top: 16px;}.cluster-hero .quick-fact{padding: 10px 12px;text-align: left;}.cluster-hero .quick-fact .icon-circle{display: none;}.cluster-hero .quick-fact .quick-fact__label{margin: 0 0 2px;}.cluster-hero .quick-fact p{line-height: 1.35;}}@media (min-width: 768px){.cluster-hero:not(.has-media) .quick-facts{grid-template-columns: repeat(4, 1fr);gap: 12px;margin-top: 20px;}.cluster-hero:not(.has-media) .quick-fact{padding: 12px 14px;text-align: left;}.cluster-hero:not(.has-media) .quick-fact .icon-circle{display: none;}}.ch-caption-pill{max-width: calc(100% - 36px);line-height: 1.35;}.breadcrumb:has(+ .cluster-hero){background: var(--navy);border-bottom: 0;color: #9db4d8;padding-bottom: 16px;padding-top: 16px;}.breadcrumb:has(+ .cluster-hero) a{color: #9db4d8;}.breadcrumb:has(+ .cluster-hero) a:hover{color: #dbe7fb;}.breadcrumb:has(+ .cluster-hero) span{color: rgba(157, 180, 216, 0.5);}.breadcrumb:has(+ .cluster-hero) strong{color: #dbe7fb;}
/* roofcraft-section-subsidy-table */
.subsidy-table .subsidy-table-header{max-width:760px;margin-bottom:30px;text-align:left}.subsidy-table .subsidy-table-header h2{margin-bottom:10px;}.subsidy-table .subsidy-peildatum{font-size:.85rem;color:#b45309;background:#fef3c7;border-radius:8px;padding:.5rem .8rem;display:inline-block;margin-top:.5rem}.subsidy-table-wrap{overflow-x:auto;border-radius:5px;}.subsidy-table-tbl{width:100%;border-collapse:collapse;background:#fff;min-width:680px}.subsidy-table-tbl th,.subsidy-table-tbl td{padding:.75rem .9rem;text-align:left;border-bottom:1px solid var(--rc-border,#e5e7eb);font-size:.92rem;vertical-align:top}.subsidy-table-tbl thead th{background: var(--blue-l);color: var(--green);font-family: var(--display);font-size: .78rem;text-transform: uppercase;letter-spacing: .04em;font-weight: 700;}.subsidy-table-tbl tbody th{font-weight:700;color:#1f2937;white-space:nowrap}.subsidy-table-tbl tbody tr:nth-child(even) td,.subsidy-table-tbl tbody tr:nth-child(even) th{background:var(--rc-surface,#f8fafc)}.subsidy-table-tbl a{color:var(--blue-d,#006a9e);font-weight:600}.subsidy-table-disclaimer{margin-top:20px;max-width:820px;text-align:left;color:#64748b;font-size:.85rem;font-style:italic}
/* roofcraft-section-eav-table */
.eav-section{background: var(--surface);padding: 70px 0 100px;}.eav-section .header-row{display: grid;grid-template-columns: 3fr 2fr;gap: 48px;margin-bottom: 30px;align-items: end;}.eav-section .header-row--single{grid-template-columns: 1fr;}.eav-section .header-row h2{font-family: var(--display);font-weight: 700;color: var(--ink);}.eav-section .eyebrow{color: var(--green);letter-spacing: 0;}.eav-section .lede{color: var(--muted);margin-top: 15px;}@media (max-width: 768px){.eav-section .header-row{grid-template-columns: 1fr;}}.eav-table{width: 100%;table-layout: fixed;border-collapse: separate;border-spacing: 0;background: var(--card);border: 1px solid var(--line);border-radius: var(--r);overflow: hidden;}.eav-table th, .eav-table td{text-align: left;padding: 13px 18px;vertical-align: top;font-size: .94rem;border-right: 1px solid var(--line);border-bottom: 1px solid var(--line);}.eav-table thead th{background: var(--blue-l);color: var(--green);font-family: var(--display);font-size: .78rem;text-transform: uppercase;letter-spacing: .04em;font-weight: 700;}.eav-table th:first-child{width: 45%;}.eav-table tr > *:last-child{border-right: 0;}.eav-table tbody tr:last-child > *{border-bottom: 0;}.eav-table tbody tr:nth-child(even){background: #fbfdff;}.eav-table .attribute, .eav-table td:first-child{font-weight: 600;color: var(--ink);}.eav-table .value{color: var(--ink);font-weight: 500;}.eav-section--values-only .eav-table .value{font-weight: 500;}.eav-table th[scope="row"].entity{text-align: left;font-weight: 700;color: var(--rc-primary, #1F2D5C);white-space: nowrap;}.eav-section--cols3 .eav-table td.attribute{color: #475569;}.eav-table thead th{text-align: left;}@media (max-width: 767px){.eav-section{padding: 50px 0 70px;}}@media (max-width: 640px){.eav-table{display: table;table-layout: auto;overflow: hidden;}.eav-table th, .eav-table td{white-space: normal;overflow-wrap: break-word;padding: 11px 14px;}.eav-table th:first-child{width: auto;}.eav-table th[scope="row"].entity{white-space: normal;}.eav-section--cols3 .eav-table, .eav-section--cols3 .eav-table tbody, .eav-section--cols3 .eav-table tr, .eav-section--cols3 .eav-table th[scope="row"].entity, .eav-section--cols3 .eav-table td{display: block;width: auto;}.eav-section--cols3 .eav-table thead{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;}.eav-section--cols3 .eav-table tr{padding: 12px 14px;border-bottom: 1px solid var(--line);}.eav-section--cols3 .eav-table tbody tr:last-child{border-bottom: 0;}.eav-section--cols3 .eav-table tr > *{padding: 0;border: 0;}.eav-section--cols3 .eav-table th[scope="row"].entity{white-space: normal;margin-bottom: 2px;}.eav-section--cols3 .eav-table td.attribute, .eav-section--cols3 .eav-table td.value{display: inline;}.eav-section--cols3 .eav-table td.attribute::after{content: ": ";}}@media (max-width: 380px){.eav-table th, .eav-table td{padding: 10px;}.eav-table td.value{overflow-wrap: anywhere;}}
/* roofcraft-section-local-map */
.local-map .local-map-header{max-width:760px;margin-bottom:30px;text-align:left}.local-map .local-map-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.75rem;align-items:stretch}.local-map .local-map-visual{border-radius:14px;overflow:hidden;min-height:320px;box-shadow:0 6px 24px rgba(0,0,0,.08);background:var(--rc-surface,#f3f4f6)}.local-map .local-map-visual iframe{display:block;width:100%;height:100%;min-height:320px}.local-map .local-map-placeholder{display:flex;align-items:center;justify-content:center;height:100%;min-height:320px;color:#64748b;font-size:.95rem}.local-map .local-map-coverage{background:var(--rc-surface,#f8fafc);border:1px solid var(--rc-border,#e5e7eb);border-radius:14px;padding:1.5rem}.local-map .coverage-drive{font-size:1.05rem;line-height:1.5;margin:0 0 .9rem}.local-map .coverage-intro{color:#475569;margin:0 0 .9rem}.local-map .coverage-count{font-weight:600;margin:0 0 .5rem}.local-map .coverage-places{display:flex;flex-wrap:wrap;gap:.4rem .9rem;list-style:none;padding:0;margin:0 0 1.25rem}.local-map .coverage-places li{position:relative;padding-left:1.1rem;color:#334155;font-size:.95rem}.local-map .coverage-places li::before{content:"📍";position:absolute;left:0}.local-map .coverage-cta{display:inline-block}@media(max-width:820px){.local-map .local-map-grid{grid-template-columns:1fr}}
/* roofcraft-section-image-gallery */
.image-gallery{position: relative;overflow: hidden;padding: 80px 0 100px 0;background: var(--card);}.image-gallery::after{content: "";position: absolute;right: 0;bottom: 0;width: 380px;height: 380px;background: url("/wp-content/themes/roofcraft/assets/img/watermerk-onder.svg") no-repeat right bottom;background-size: contain;pointer-events: none;z-index: 0;}.image-gallery > .container{position: relative;z-index: 1;}.image-gallery-masonry{background: var(--surface);}.image-gallery-header{max-width: 760px;margin-bottom: 36px;}.image-gallery-header .eyebrow{display: inline-block;font-family: var(--font);font-weight: 700;font-size: 13px;letter-spacing: 0.08em;text-transform: uppercase;color: var(--blue);}.image-gallery-header h2{font-family: var(--display);font-weight: 700;font-size: 32px;line-height: 1.18;color: var(--ink);margin: 0 0 12px;}.image-gallery-intro{font-family: var(--font);font-size: 16px;line-height: 1.65;color: var(--muted);}.ig-filter{display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 22px;}.ig-chip{border: 1px solid var(--line);background: var(--card);color: var(--muted);padding: 7px 16px;border-radius: 999px;font-family: var(--font);font-weight: 600;font-size: 13px;cursor: pointer;transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;}.ig-chip:hover{border-color: var(--blue);color: var(--ink);}.ig-chip.is-active{background: var(--blue);color: #fff;border-color: var(--blue);}.ig-masonry{display: grid;grid-template-columns: repeat(3, 1fr);gap: 16px;}.ig-tile{position: relative;margin: 0;overflow: hidden;border-radius: 5px;aspect-ratio: 16 / 10;background: #13315c;cursor: zoom-in;box-shadow: var(--sh-sm);transition: transform 0.25s ease, box-shadow 0.25s ease;}.ig-tile.ig-span-2{grid-row: auto;}.ig-tile:hover{transform: translateY(-2px);box-shadow: var(--sh);}.ig-tile:focus-visible{outline: 3px solid var(--blue);outline-offset: 2px;}.ig-tile img{width: 100%;height: 100%;object-fit: cover;display: block;transition: transform 0.4s ease;}.ig-tile:hover img{transform: scale(1.06);}.ig-tile-caption{position: absolute;left: 0;right: 0;bottom: 0;padding: 30px 16px 14px;background: linear-gradient(transparent, rgba(8, 18, 38, 0.9));color: #fff;display: flex;flex-direction: column;gap: 2px;}.ig-tile-cat{align-self: flex-start;background: var(--blue);color: #fff;font-family: var(--font);font-size: 0.64rem;font-weight: 700;letter-spacing: 0.05em;text-transform: uppercase;padding: 3px 9px;border-radius: 999px;margin-bottom: 7px;}.ig-tile-title{font-family: var(--display);font-weight: 700;font-size: 0.95rem;color: #fff;}.ig-tile-sub{font-family: var(--font);font-size: 0.86rem;font-weight: 600;color: #cdd7e6;}.ig-tile[hidden]{display: none;}@media (max-width: 900px){.ig-masonry{grid-template-columns: repeat(2, 1fr);}}@media (max-width: 560px){.ig-masonry{grid-template-columns: 1fr;}}.ig-swiper-wrap{position: relative;}.ig-swiper{display: grid;grid-auto-flow: column;grid-auto-columns: 360px;gap: 18px;overflow-x: auto;overflow-y: hidden;scroll-snap-type: x mandatory;scrollbar-width: none;-ms-overflow-style: none;padding-bottom: 8px;scroll-padding-left: 0;}.ig-swiper::-webkit-scrollbar{display: none;}.ig-swiper:focus-visible{outline: 3px solid var(--blue);outline-offset: 4px;border-radius: 4px;}.ig-card{margin: 0;scroll-snap-align: start;display: flex;flex-direction: column;gap: 12px;}.ig-card-frame{aspect-ratio: 16 / 10;border-radius: 14px;overflow: hidden;background: #13315c;box-shadow: var(--sh-sm);}.ig-card-frame img{width: 100%;height: 100%;object-fit: cover;display: block;transition: transform 0.4s ease;}.ig-card:hover .ig-card-frame img{transform: scale(1.06);}.ig-card-caption{display: flex;flex-direction: column;gap: 2px;padding: 0 4px;}.ig-card-title{font-family: var(--display);font-weight: 700;font-size: 15px;color: var(--ink);}.ig-card-sub{font-family: var(--font);font-size: 13px;color: var(--muted);}.ig-swiper-progress{margin-top: 14px;height: 4px;background: var(--line);border-radius: 999px;overflow: hidden;}.ig-swiper-bar{display: block;height: 100%;width: 30%;background: var(--blue);border-radius: inherit;transform-origin: left;transition: width 0.18s ease;}.ig-swiper-arrow{position: absolute;top: calc(50% - 28px);transform: translateY(-50%);width: 44px;height: 44px;border-radius: 50%;border: 1px solid var(--line);background: rgba(255, 255, 255, 0.96);color: var(--navy);display: flex;align-items: center;justify-content: center;cursor: pointer;box-shadow: var(--sh);z-index: 3;opacity: 0;transition: opacity 0.18s ease, background 0.18s ease, color 0.18s ease;}.ig-swiper-prev{left: -8px;}.ig-swiper-next{right: -8px;}.ig-swiper-wrap:hover .ig-swiper-arrow{opacity: 1;}.ig-swiper-arrow:hover{background: var(--blue);color: #fff;border-color: var(--blue);}.ig-swiper-arrow:focus-visible{opacity: 1;outline: 3px solid var(--blue);outline-offset: 2px;}@media (max-width:768px){.image-gallery::after{width:250px;height:250px;}.image-gallery{padding: 50px 0 70px 0;}}@media (max-width: 720px){.ig-swiper{grid-auto-columns: 78vw;gap: 14px;}.ig-swiper-arrow{display: none;}}.ig-baw-list{display: flex;flex-direction: column;gap: 36px;}.ig-baw-frame{position: relative;aspect-ratio: 16 / 9;border-radius: var(--r);overflow: hidden;background: #13315c;box-shadow: var(--sh);user-select: none;touch-action: pan-y;}.ig-baw-frame img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;display: block;pointer-events: none;}.ig-baw-after-clip{position: absolute;inset: 0;width: 50%;overflow: hidden;will-change: width;}.ig-baw-after-clip img{width: calc(100% * (100 / var(--ig-baw-clip, 50)));max-width: none;}.ig-baw-label{position: absolute;top: 14px;padding: 5px 12px;background: rgba(8, 18, 38, 0.85);color: #fff;font-family: var(--font);font-weight: 700;font-size: 11.5px;letter-spacing: 0.06em;text-transform: uppercase;border-radius: 999px;pointer-events: none;z-index: 2;}.ig-baw-label-before{left: 14px;}.ig-baw-label-after{right: 14px;background: var(--blue);}.ig-baw-handle{position: absolute;top: 0;left: 50%;height: 100%;width: 44px;transform: translateX(-50%);background: transparent;border: 0;padding: 0;cursor: ew-resize;z-index: 3;display: flex;align-items: center;justify-content: center;}.ig-baw-handle-line{position: absolute;top: 0;bottom: 0;left: 50%;width: 3px;transform: translateX(-50%);background: #fff;box-shadow: 0 0 0 1px rgba(8, 18, 38, 0.18);}.ig-baw-handle-knob{position: relative;width: 44px;height: 44px;border-radius: 50%;background: #fff;color: var(--blue);box-shadow: 0 4px 12px rgba(8, 18, 38, 0.25);display: flex;align-items: center;justify-content: center;}.ig-baw-handle:focus-visible{outline: 3px solid var(--blue);outline-offset: 2px;}.ig-baw-caption{margin-top: 12px;font-family: var(--font);font-size: 14px;color: var(--muted);text-align: center;}.ig-lightbox{position: fixed;inset: 0;background: rgba(8, 18, 38, 0.94);display: none;align-items: center;justify-content: center;z-index: 9999;padding: 40px;}.ig-lightbox.is-open{display: flex;}.ig-lightbox-figure{margin: 0;max-width: min(1200px, 100%);max-height: 100%;display: flex;flex-direction: column;align-items: center;gap: 14px;}.ig-lightbox img{max-width: 100%;max-height: 78vh;object-fit: contain;border-radius: 6px;box-shadow: var(--sh-lg);}.ig-lightbox-caption{color: #cdd7e6;text-align: center;font-family: var(--font);font-size: 14px;line-height: 1.5;}.ig-lightbox-caption strong{color: #fff;font-weight: 700;display: block;font-family: var(--display);font-size: 16px;margin-bottom: 2px;}.ig-lightbox-close, .ig-lightbox-nav{position: absolute;background: rgba(255, 255, 255, 0.1);color: #fff;border: 1px solid rgba(255, 255, 255, 0.2);width: 44px;height: 44px;border-radius: 50%;cursor: pointer;display: flex;align-items: center;justify-content: center;font-size: 22px;line-height: 1;transition: background 0.18s ease;}.ig-lightbox-close:hover, .ig-lightbox-nav:hover{background: var(--blue);border-color: var(--blue);}.ig-lightbox-close{top: 24px;right: 24px;}.ig-lightbox-prev{left: 24px;}.ig-lightbox-next{right: 24px;}.ig-lightbox-prev, .ig-lightbox-next{top: calc(50% - 22px);}@media (prefers-reduced-motion: reduce){.ig-tile, .ig-tile img, .ig-card-frame img, .ig-tile-caption, .ig-swiper-bar{transition: none;}}
/* roofcraft-section-faq */
.faq{background: var(--surface);padding: 80px 0 100px;}.faq-grid{display: grid;grid-template-columns: 1fr 1.6fr;gap: 56px;align-items: start;}@media (max-width: 767px){.faq{padding: 50px 0 70px;}}@media (max-width: 880px){.faq-grid{grid-template-columns: 1fr;gap: 32px;}}.faq-intro .eyebrow{font-size: .7rem;font-weight: 700;letter-spacing: .08em;text-transform: uppercase;color: var(--blue);}.faq-intro h2{font-family: var(--display);color: var(--ink);margin-bottom: 14px;}.faq-intro .lede{color: var(--muted);margin-bottom: 32px;}.faq-cta{background: var(--navy);color: #fff;padding: 24px 26px;border-radius: var(--r);margin-top: 8px;box-shadow: var(--sh-sm);}.faq-cta h3, .faq-cta .faq-cta__title{font-family: var(--display);color: #fff;margin-bottom: 8px;font-size: 18px;}.faq-cta p{color: var(--blue-l);font-size: 13.5px;margin-bottom: 16px;}.faq-list{display: flex;flex-direction: column;gap: 10px;}.faq-item{background: var(--card);border: 1px solid var(--line);border-radius: var(--r-sm);box-shadow: var(--sh-sm);transition: border-color .25s ease, box-shadow .25s ease;overflow: hidden;}.faq-item:hover, .faq-item.active{border-color: var(--blue);}.faq-question{width: 100%;background: transparent;border: 0;padding: 20px;cursor: pointer;display: flex;justify-content: space-between;align-items: center;gap: 20px;font-family: var(--display);font-size: 15.5px;font-weight: 600;color: var(--ink);text-align: left;}.faq-question:focus-visible{outline: 2px solid var(--blue);outline-offset: -2px;}.faq-question::after{content: "+";color: var(--blue);font-size: 26px;font-weight: 600;transition: transform .3s ease;flex-shrink: 0;}.faq-item.active .faq-question::after{transform: rotate(45deg);}.faq-answer{max-height: 0;overflow: hidden;transition: max-height .45s ease;}.faq-answer-inner{padding: 0 20px 20px;}.faq-answer p{margin: 0 0 16px;color: var(--muted);line-height: 1.7;}.faq-answer p:last-child{margin-bottom: 0;}.faq-answer ul, .faq-answer ol{margin: 0 0 16px 20px;}.faq-answer li{margin-bottom: 8px;color: var(--muted);}.faq-item.active{box-shadow: 0 10px 24px rgba(0,0,0,.08);}
/* roofcraft-section-services-grid */
.services{background: var(--surface);padding: 80px 0 100px 0;}.services-header{text-align: left;margin-bottom: 48px;}.services-header .eyebrow{display: inline-flex;letter-spacing:0}.services-header h2{margin-bottom: 14px;}.services-header .lede{text-align: left;}.services-grid{display: grid;grid-template-columns: repeat(3, 1fr);gap: 20px;}@media (max-width: 767px){.services{padding:50px 0;}}@media (max-width: 980px){.services-grid{grid-template-columns: repeat(2, 1fr);}}@media (max-width: 580px){.services-grid{grid-template-columns: 1fr;}}.service-card{background: var(--card);border: 1px solid var(--line);border-radius: var(--r);overflow: hidden;transition: transform .2s, box-shadow .2s, border-color .2s;position: relative;display: flex;flex-direction: column;text-decoration: none;color: inherit;}.service-card:hover{transform: translateY(-5px);box-shadow: var(--sh);border-color: #d4e1f5;}.service-card.spearhead{border: 2px solid var(--blue);box-shadow: var(--sh);}.service-card.spearhead::after{content: 'Specialiteit';position: absolute;top: 14px;right: 14px;z-index: 3;background: var(--blue);color: #fff;font-size: 9px;text-transform: uppercase;letter-spacing: .1em;padding: 4px 9px;border-radius: 999px;font-weight: 700;}.service-card .ph{position: relative;aspect-ratio: 16 / 9;background: #13315c;overflow: hidden;}.service-card .ph img{width: 100%;height: 100%;object-fit: cover;transition: transform .35s;}.service-card:hover .ph img{transform: scale(1.05);}.service-card .ph .badge{position: absolute;top: 14px;left: 14px;z-index: 2;background: var(--blue);color: #fff;font-size: 10px;font-weight: 700;letter-spacing: .05em;text-transform: uppercase;padding: 5px 11px;border-radius: 999px;}.service-card .ph .badge.badge--dark{background: var(--navy);}.service-card .ph .badge.badge--spoed{background: var(--spoed);}.service-card .ph .badge.badge--green{background: var(--green);}.service-card .ph .badge.badge--blue{background: var(--blue);}.service-card.has-photo.spearhead{border: 1px solid var(--line);box-shadow: var(--sh-sm);}.service-card.has-photo.spearhead:hover{border-color: #d4e1f5;box-shadow: var(--sh);}.service-card.has-photo.spearhead::after{display: none;}.service-card .bd{padding: 22px 24px;display: flex;flex-direction: column;flex: 1;}.service-card .icon{width: 46px;height: 46px;border-radius: 12px;background: var(--blue-l);display: grid;place-items: center;position: relative;z-index: 2;margin-bottom: 12px;}.service-card .icon svg{width: 23px;height: 23px;stroke: var(--blue-d);fill: none;stroke-width: 1.9;stroke-linecap: round;stroke-linejoin: round;}.service-card.has-photo .icon{margin-top: -46px;border: 3px solid #fff;box-shadow: var(--sh-sm);background: var(--blue-l);}.service-card h3{font-size: 1.18rem;font-family: var(--display);margin-bottom: 7px;color: var(--ink);}.service-card .eav{color: var(--muted);font-size: .94rem;line-height: 1.6;margin-bottom: 14px;flex: 1;}.service-card .eav strong{color: var(--ink);}.service-card .arrow{color: var(--blue);font-weight: 600;font-size: .9rem;font-family: var(--display);display: inline-flex;align-items: center;gap: 6px;transition: gap .2s, color .2s;}.service-card:hover .arrow{gap: 10px;color: var(--blue-d);}.service-card{position: relative;}.service-card h3 .service-card-link{color: inherit;text-decoration: none;}.service-card h3 .service-card-link::after{content: "";position: absolute;inset: 0;z-index: 1;border-radius: inherit;}.service-card h3 .service-card-link:focus-visible{outline: none;}.service-card:focus-within{outline: 2px solid var(--blue);outline-offset: 3px;}
/* roofcraft-section-final-cta */
.final-cta{padding: 90px 0;}.final-cta .container{position: relative;overflow: hidden;background: var(--navy);color: #fff;border-radius: 24px;padding: 56px;text-align: center;box-shadow: var(--sh-lg);}.final-cta .container > *{position: relative;z-index: 2;}.final-cta h2{color: #fff;font-family: var(--display);font-size: clamp(1.8rem, 3vw, 2.5rem);margin-bottom: 22px;}.final-cta p{color: #cfe0f7;font-size: 1.1rem;max-width: 54ch;margin: 2px auto 26px;}.final-cta .cta-row{display: flex;gap: 14px;justify-content: center;flex-wrap: wrap;}@media (max-width: 980px){.final-cta{padding: 56px 0;}.final-cta .container{padding: 38px 22px;margin:0 26px;}.final-cta .cta-row{width: 100%;}}
/* roofcraft-forms */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 textarea, .wpcf7 select{width: 100%;padding: 13px 16px;border: 1px solid var(--line);border-radius: var(--radius-sm);font: inherit;font-size: 14px;margin-bottom: 12px;background: white;}.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus{outline: none;border-color: var(--blue);box-shadow: 0 0 0 3px rgba(37,99,235,.12);}.wpcf7 .wpcf7-submit{display: inline-flex;align-items: center;gap: 8px;padding: 13px 22px;background: var(--green);color: white;border-radius: 999px;font-weight: 700;font-family: var(--display);font-size: 14.5px;cursor: pointer;}.wpcf7 .wpcf7-submit:hover{background: var(--green-d);}.wpcf7-not-valid{border-color: var(--emergency) !important;}.wpcf7-response-output{border-radius: var(--radius-sm);padding: 12px 16px;}
