/*
 * Domicill Divi Code Module library
 * Version: 0.6.0
 *
 * Safe by default: every visual rule is scoped to .dc-block or to an explicit
 * marker inserted by one of the paste-ready blocks. Loading this file alone
 * does not redesign existing Divi content.
 */

/* The legacy Theme Builder bars are not part of the approved header. */
#magma_topbar {
    display: none !important;
}

/* This fixed Theme Builder CTA was clipped off-screen and duplicated page CTAs. */
body #page-container .et_pb_button_3_tb_header_wrapper {
    display: none !important;
}

.dc-block,
.dc-block * { box-sizing: border-box; }

/* Viewport-wide blocks can overlap the browser scrollbar by a few pixels. */
html:has(.dc-block),
body:has(.dc-block) { overflow-x: clip; }

.dc-block {
    --dc-navy: #082b49;
    --dc-navy-dark: #051d31;
    --dc-blue: #397b9d;
    --dc-gold: #b68b56;
    --dc-gold-light: #d3b27d;
    --dc-cream: #f7f4ef;
    --dc-white: #fff;
    --dc-ink: #24303a;
    --dc-muted: #69747c;
    --dc-line: rgba(8, 43, 73, .13);
    --dc-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
    --dc-body: Lato, Arial, Helvetica, sans-serif;
    --dc-container: 1280px;
    --dc-radius: 16px;
    --dc-shadow: 0 18px 55px rgba(8, 43, 73, .11);
    --dc-ease: cubic-bezier(.22, 1, .36, 1);
    color: var(--dc-ink);
    font-family: var(--dc-body);
}

/* Explicit Divi module classes also receive the tokens without affecting other modules. */
:is(.dc-contact-native-form,.dc-newsletter-native-form) {
    --dc-navy: #082b49;
    --dc-gold: #b68b56;
    --dc-ink: #24303a;
    --dc-muted: #69747c;
    --dc-line: rgba(8, 43, 73, .13);
    --dc-body: Lato, Arial, Helvetica, sans-serif;
    --dc-shadow: 0 18px 55px rgba(8, 43, 73, .11);
}

.dc-full-bleed {
    position: relative;
    left: 50%;
    width: 100vw;
    max-width: 100vw;
    margin-left: -50vw;
}

.dc-container { width: min(calc(100% - 40px), var(--dc-container)); margin-inline: auto; }
.dc-eyebrow { margin: 0 0 12px; color: var(--dc-gold); font-size: 14px; font-weight: 700; line-height: 1.35; letter-spacing: .11em; text-transform: uppercase; }
.dc-title { margin: 0; color: var(--dc-navy); font-family: var(--dc-display); font-size: clamp(32px, 4vw, 38px); font-weight: 600; line-height: 1.02; letter-spacing: -.025em; }
.dc-title--light { color: var(--dc-white); }
.dc-rule::after { display: block; width: 38px; height: 1px; margin-top: 18px; background: var(--dc-gold); content: ""; }
.dc-lead { margin: 22px 0 0; color: var(--dc-muted); font-size: clamp(16px, 1.4vw, 19px); line-height: 1.75; }
.dc-lead--light { color: rgba(255,255,255,.84); }
.dc-btn { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; padding: 14px 24px; border: 1px solid var(--dc-gold); border-radius: 7px; background: var(--dc-gold); color: #fff !important; font-size: 12px; font-weight: 700; line-height: 1.2; letter-spacing: .035em; text-decoration: none !important; text-transform: uppercase; transition: transform .22s var(--dc-ease), background .22s ease, box-shadow .22s ease; }
.dc-btn:hover { background: var(--dc-gold-light); box-shadow: 0 12px 26px rgba(159,117,65,.24); transform: translateY(-2px); }
.dc-btn--navy { border-color: var(--dc-navy); background: var(--dc-navy); }
.dc-btn--ghost { border-color: rgba(255,255,255,.72); background: transparent; }
.dc-arrow { font-size: 18px; line-height: 1; }

/* Shared inner-page patterns */
.dc-page-hero { position: relative; min-height: clamp(520px,68vw,700px); overflow: hidden; background: var(--dc-navy-dark); isolation: isolate; }
.dc-page-hero__background { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 18%; }
.dc-page-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.88) 0%,rgba(3,20,34,.56) 48%,rgba(3,20,34,.16) 78%); content: ""; }
.dc-page-hero__layout { display: grid; min-height: inherit; grid-template-columns: minmax(0,650px) minmax(280px,1fr); gap: clamp(35px,7vw,100px); align-items: center; padding-block: clamp(72px,9vw,120px); }
.dc-page-hero__copy .dc-title { font-size: clamp(44px,4.25vw,48px); }
.dc-page-hero__copy .dc-lead { max-width: 590px; }
.dc-page-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.dc-page-hero__metrics { display: grid; justify-self: end; width: min(100%,390px); padding: 13px 34px; border: 1px solid rgba(255,255,255,.16); border-radius: 15px; background: rgba(5,38,65,.9); box-shadow: 0 28px 80px rgba(0,0,0,.3); }
.dc-page-metric { display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: center; padding: 19px 0; border-bottom: 1px solid rgba(255,255,255,.18); }
.dc-page-metric:last-child { border-bottom: 0; }
.dc-page-metric__icon { color: var(--dc-gold-light); font-size: 34px; text-align: center; }
.dc-page-metric strong { display: block; color: #fff; font-family: var(--dc-display); font-size: 29px; line-height: 1; }
.dc-page-metric span { color: rgba(255,255,255,.72); font-size: 12px; }

.dc-intro { padding: clamp(65px,8vw,105px) 0; background: #fff; }
.dc-intro__grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(360px,1.2fr); gap: clamp(45px,8vw,110px); align-items: center; }
.dc-intro__visual { min-height: 340px; border-radius: var(--dc-radius); background-position: center; background-size: cover; box-shadow: var(--dc-shadow); }

.dc-feature { padding: clamp(65px,8vw,105px) 0; background: #fff; }
.dc-feature--cream { background: var(--dc-cream); }
.dc-feature__grid { display: grid; grid-template-columns: minmax(320px,.9fr) minmax(0,1.1fr); gap: clamp(40px,7vw,90px); align-items: center; }
.dc-feature--reverse .dc-feature__media { order: 2; }
.dc-feature__media { overflow: hidden; min-height: 430px; border-radius: var(--dc-radius); box-shadow: var(--dc-shadow); }
.dc-feature__media img { display: block; width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.dc-feature__number { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; color: var(--dc-gold); font-family: var(--dc-display); font-size: 21px; }
.dc-feature__number::after { width: 35px; height: 1px; background: var(--dc-gold); content: ""; }
.dc-feature__subtitle { margin: 17px 0 0; color: var(--dc-gold); font-family: var(--dc-display); font-size: 22px; font-weight: 600; }
.dc-feature__copy { margin: 13px 0 0; color: var(--dc-muted); font-size: 15px; line-height: 1.7; }
.dc-feature__content .dc-btn { margin-top: 24px; }
.dc-benefits { display: grid; gap: 13px; margin: 24px 0 0; padding: 0; list-style: none; }
.dc-benefits li { position: relative; padding-left: 33px; color: var(--dc-ink); font-size: 14px; line-height: 1.55; list-style: none !important; }
.dc-benefits li::marker { content: ""; }
.dc-benefits li::before { position: absolute; top: .05em; left: 0; display: grid; width: 22px; height: 22px; border: 1px solid var(--dc-gold); border-radius: 50%; color: var(--dc-gold); content: "✓"; font-size: 12px; place-items: center; }
.dc-benefits--columns { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 35px; }

.dc-icon-section { padding: clamp(70px,8vw,105px) 0; background: #fff; }
.dc-icon-section__grid { display: grid; grid-template-columns: minmax(270px,.7fr) minmax(0,1.3fr); gap: clamp(40px,7vw,90px); align-items: center; }
.dc-icon-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.dc-icon-card { display: grid; min-height: 138px; padding: 20px 13px; border: 1px solid var(--dc-line); background: #fff; text-align: center; place-items: center; }
.dc-icon-card__icon { color: var(--dc-gold); font-size: 31px; line-height: 1; }
.dc-icon-card strong { color: var(--dc-navy); font-size: 12px; line-height: 1.4; }
.dc-icon-note { margin: 14px 0 0; color: var(--dc-muted); font-size: 12px; text-align: center; }

.dc-card-services { padding: clamp(70px,8vw,110px) 0; background: var(--dc-cream); }
.dc-card-services__head { max-width: 760px; margin-bottom: 42px; }
.dc-card-services__grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 16px; }
.dc-service-card { overflow: hidden; border: 1px solid var(--dc-line); border-radius: 10px; background: #fff; box-shadow: 0 12px 35px rgba(8,43,73,.07); }
.dc-service-card img { display: block; width: 100%; height: 210px; object-fit: cover; }
.dc-service-card__body { position: relative; padding: 38px 18px 24px; }
.dc-service-card__icon { position: absolute; top: -27px; left: 18px; display: grid; width: 54px; height: 54px; border: 1px solid var(--dc-line); border-radius: 50%; background: #fff; color: var(--dc-gold); font-size: 25px; place-items: center; }
.dc-service-card h3 { margin: 0 0 12px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 21px; line-height: 1.1; }
.dc-service-card p { min-height: 112px; margin: 0; color: var(--dc-muted); font-size: 13px; line-height: 1.65; }
.dc-service-card a { display: inline-flex; min-height: 44px; align-items: center; margin-top: 7px; color: var(--dc-gold) !important; font-size: 12px; font-weight: 700; text-decoration: none; }

.dc-process { padding: clamp(70px,8vw,110px) 0; background: var(--dc-cream); }
.dc-process__head { display: grid; grid-template-columns: .8fr 1.2fr; gap: 60px; align-items: end; margin-bottom: 45px; }
.dc-process__grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); }
.dc-process-step { min-height: 245px; padding: 0 24px; border-right: 1px solid var(--dc-line); }
.dc-process-step:last-child { border-right: 0; }
.dc-process-step__icon { display: grid; width: 52px; height: 52px; margin-bottom: 20px; border-radius: 50%; background: #fff; color: var(--dc-gold); font-size: 25px; box-shadow: 0 8px 24px rgba(8,43,73,.08); place-items: center; }
.dc-process-step h3 { margin: 0 0 10px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 23px; }
.dc-process-step p { margin: 0; color: var(--dc-muted); font-size: 13px; line-height: 1.65; }
.dc-process-step a { display: inline-block; margin-top: 15px; color: var(--dc-gold) !important; font-size: 12px; font-weight: 700; text-decoration: none; }

.dc-opportunity { padding: 28px 0 60px; background: var(--dc-cream); }
.dc-opportunity__card { display: grid; grid-template-columns: minmax(300px,.75fr) minmax(0,1.25fr); gap: 45px; align-items: center; padding: 28px; border-radius: var(--dc-radius); background: linear-gradient(120deg,var(--dc-navy),#0d4268); box-shadow: var(--dc-shadow); }
.dc-opportunity__card img { width: 100%; min-height: 260px; border-radius: 10px; object-fit: cover; }
.dc-opportunity__copy { padding: 20px 30px 20px 0; }
.dc-opportunity__copy .dc-title { font-size: clamp(34px,4vw,50px); }
.dc-opportunity__copy .dc-btn { margin-top: 24px; }

.dc-contact { padding: clamp(70px,8vw,105px) 0; background: #fff; }
.dc-contact__head { max-width: 760px; margin: 0 auto 42px; text-align: center; }
.dc-contact__layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: clamp(35px,6vw,80px); align-items: start; }
.dc-contact__form { padding: 30px; border: 1px solid var(--dc-line); border-radius: 12px; background: #fff; box-shadow: 0 15px 45px rgba(8,43,73,.07); }
.dc-contact__form .wpcf7-form { display: grid; gap: 16px; }
.dc-contact__form :is(input:not([type=submit]),textarea,select) { width: 100%; padding: 13px 14px; border: 1px solid var(--dc-line); border-radius: 5px; background: #fff; color: var(--dc-ink); }
.dc-contact__form input[type=submit] { min-height: 50px; padding: 12px 28px; border: 0; border-radius: 7px; background: var(--dc-gold); color: #fff; cursor: pointer; font-weight: 700; }
.dc-contact__aside { display: grid; gap: 18px; }
.dc-reasons { padding: 28px; border-radius: 12px; background: var(--dc-navy); color: #fff; }
.dc-reasons h3 { margin: 0 0 20px; color: #fff; font-family: var(--dc-display); font-size: 25px; }
.dc-reasons ul { display: grid; gap: 15px; margin: 0; padding: 0; list-style: none; }
.dc-reasons li { position: relative; padding-left: 27px; color: rgba(255,255,255,.83); font-size: 13px; line-height: 1.45; }
.dc-reasons li::before { position: absolute; left: 0; color: var(--dc-gold-light); content: "✓"; }
.dc-phone-card { padding: 22px; border: 1px solid var(--dc-line); border-radius: 12px; background: #fff; box-shadow: 0 12px 30px rgba(8,43,73,.08); }
.dc-phone-card__label { display: block; color: var(--dc-muted); font-size: 12px; }
.dc-phone-card a { display: block; margin-top: 4px; color: var(--dc-navy) !important; font-family: var(--dc-display); font-size: 28px; font-weight: 600; text-decoration: none; }
.dc-phone-card--overlap { position: relative; margin: -72px 24px 0; }

.dc-expertise { padding: clamp(70px,8vw,110px) 0; background: #fff; }
.dc-expertise__grid { display: grid; grid-template-columns: .85fr 1.1fr .65fr; gap: clamp(28px,5vw,65px); align-items: center; }
.dc-expertise__image { width: 100%; min-height: 430px; border-radius: var(--dc-radius); object-fit: cover; box-shadow: var(--dc-shadow); }
.dc-appointment { padding: 30px; border-radius: 13px; background: var(--dc-navy); color: #fff; }
.dc-appointment .dc-title { font-size: 34px; }
.dc-appointment .dc-lead { font-size: 14px; }
.dc-appointment__phone { display: block; margin: 22px 0; padding: 15px 0; border-block: 1px solid rgba(255,255,255,.2); color: #fff !important; font-family: var(--dc-display); font-size: 25px; text-decoration: none; }

/* Rentmeesterschap — approved compact editorial layout */
body:has(.dc-rent-hero) .dc-block { --dc-container: 1470px; }
.dc-rent-hero.dc-page-hero { min-height: clamp(540px,35vw,620px); }
.dc-rent-hero .dc-page-hero__background { object-position: center 48%; }
.dc-rent-hero.dc-page-hero::after { background: linear-gradient(90deg,rgba(3,20,34,.9) 0%,rgba(3,20,34,.68) 34%,rgba(3,20,34,.16) 69%,rgba(3,20,34,.06)); }
.dc-rent-hero .dc-page-hero__layout { position: relative; min-height: inherit; grid-template-columns: 1fr; padding-block: 58px 74px; }
.dc-rent-hero .dc-page-hero__copy { max-width: 570px; }
.dc-rent-hero .dc-page-hero__copy .dc-title { font-size: clamp(43px,4vw,56px); }
.dc-rent-hero .dc-page-hero__copy .dc-lead { max-width: 500px; margin-top: 20px; font-size: 16px; line-height: 1.65; }
.dc-rent-hero__scroll { position: absolute; bottom: 20px; left: 50%; display: inline-flex; align-items: center; gap: 8px; color: #fff !important; font-size: 11px; font-weight: 700; letter-spacing: .025em; text-decoration: none; text-transform: uppercase; transform: translateX(-50%); }
.dc-rent-hero__scroll span { color: var(--dc-gold-light); font-size: 15px; }

.dc-rent-feature { padding: 52px 0; background: #fff; }
.dc-rent-feature--cream { background: var(--dc-cream); }
.dc-rent-feature__grid { display: grid; grid-template-columns: minmax(420px,.92fr) minmax(0,1.08fr); gap: clamp(44px,6vw,82px); align-items: center; }
.dc-rent-feature--reverse .dc-rent-feature__media { order: 2; }
.dc-rent-feature__media { overflow: hidden; min-height: 390px; border-radius: 11px; box-shadow: var(--dc-shadow); }
.dc-rent-feature__media img { display: block; width: 100%; height: 390px; object-fit: cover; }
.dc-rent-feature:first-of-type .dc-rent-feature__media img { object-position: center; }
.dc-rent-feature__heading { display: grid; grid-template-columns: 70px 1fr; gap: 20px; align-items: start; margin-bottom: 22px; }
.dc-rent-feature__badge { display: grid; width: 62px; height: 62px; border: 1px solid var(--dc-line); border-radius: 50%; background: #fff; box-shadow: 0 8px 25px rgba(8,43,73,.08); place-items: center; }
.dc-rent-feature__badge svg { width: 34px; height: 34px; fill: none; stroke: var(--dc-gold); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5; }
.dc-rent-feature .dc-title { font-size: clamp(30px,2.8vw,40px); line-height: 1.08; }
.dc-rent-feature__content > p { margin: 0 0 13px; color: var(--dc-muted); font-size: 14px; line-height: 1.65; }
.dc-rent-feature__content > p strong { color: var(--dc-ink); }
.dc-rent-feature__content .dc-rent-feature__label { margin-top: 18px; color: var(--dc-ink); }
.dc-rent-perks { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 13px; }
.dc-rent-perk { display: grid; min-height: 128px; align-content: start; justify-items: center; gap: 10px; padding: 8px 15px; border-right: 1px solid var(--dc-line); text-align: center; }
.dc-rent-perk:last-child { border-right: 0; }
.dc-rent-perk span { display: grid; width: 48px; height: 48px; border-radius: 50%; background: #fbf4e8; color: var(--dc-gold); place-items: center; }
.dc-rent-perk span svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.dc-rent-perk strong { color: var(--dc-ink); font-size: 11px; line-height: 1.45; }

.dc-rent-contact-head { padding: 48px 0 34px; background: #fff; text-align: center; }
.dc-rent-contact-head__icon { display: grid; width: 62px; height: 62px; margin: 0 auto 14px; border: 1px solid var(--dc-line); border-radius: 50%; background: #fff; box-shadow: 0 8px 25px rgba(8,43,73,.08); color: var(--dc-gold); font-size: 30px; place-items: center; }
.dc-rent-contact-head .dc-title { font-size: clamp(32px,3vw,43px); }
.dc-rent-contact-head .dc-rule::after { margin-inline: auto; }
.dc-rent-contact-grid {
    --dc-navy: #082b49;
    --dc-gold: #b68b56;
    --dc-gold-light: #d3b27d;
    --dc-ink: #24303a;
    --dc-muted: #69747c;
    --dc-line: rgba(8,43,73,.13);
    --dc-body: Lato,Arial,Helvetica,sans-serif;
    --dc-display: "Cormorant Garamond",Georgia,"Times New Roman",serif;
    padding: 0 0 65px !important;
    background: #fff;
}
.dc-rent-contact-grid > .et_pb_row,
.dc-rent-contact-grid .dc-rent-contact-grid__row { display: grid !important; width: min(calc(100% - 40px),1470px) !important; max-width: 1470px !important; grid-template-columns: minmax(0,1fr) 340px; gap: clamp(38px,5vw,70px); align-items: start; margin: 0 auto !important; padding: 0 !important; }
.dc-rent-contact-grid :is(.et_pb_column,.et_pb_module) { width: auto !important; margin-right: 0 !important; }
.dc-rent-contact-grid .dc-contact-native-form { margin: 0 !important; padding: 0; background: transparent; }
.dc-rent-contact-grid .dc-contact-native-form .wpcf7-form { gap: 15px 24px; }
.dc-rent-contact-grid .dc-contact-native-form textarea { min-height: 118px; }
.dc-rent-contact-aside { display: grid; gap: 16px; }
.dc-rent-contact-aside .dc-reasons { padding: 27px; border-radius: 10px; }
.dc-rent-contact-aside .dc-reasons h3 { font-size: 23px; }
.dc-rent-contact-aside .dc-phone-card { display: grid; grid-template-columns: 48px 1fr; gap: 13px; padding: 18px; }
.dc-rent-contact-aside .dc-phone-card__icon { display: grid; width: 46px; height: 46px; border: 1px solid var(--dc-gold); border-radius: 50%; color: var(--dc-gold); font-size: 20px; place-items: center; }
.dc-rent-contact-aside .dc-phone-card strong { display: block; color: var(--dc-navy); font-size: 13px; }
.dc-rent-contact-aside .dc-phone-card a { margin-top: 3px; font-size: 21px; }

.dc-rent-closing.dc-closing { min-height: 205px; }
.dc-rent-closing .dc-closing__grid { min-height: 205px; padding-block: 32px; }
.dc-rent-closing .dc-title { font-size: clamp(31px,3vw,42px); }
.dc-rent-closing .dc-lead { max-width: 620px; margin-top: 13px; font-size: 13px; line-height: 1.55; }
.dc-rent-closing .dc-closing__actions { min-width: 310px; }

/* Updated Onze diensten render */
.dc-service-list { padding: clamp(30px,5vw,70px) 0; background: #fff; }
.dc-service-row { padding: clamp(45px,6vw,78px) 0; border-bottom: 1px solid var(--dc-line); }
.dc-service-row:nth-child(even) { background: var(--dc-cream); }
.dc-service-row__grid { display: grid; grid-template-columns: minmax(320px,.9fr) minmax(0,1.1fr); gap: clamp(42px,7vw,95px); align-items: center; }
.dc-service-row--reverse { background: var(--dc-cream); }
.dc-service-row--reverse .dc-service-row__media { order: 2; }
.dc-service-row__media { overflow: hidden; min-height: 420px; border-radius: 12px; box-shadow: var(--dc-shadow); }
.dc-service-row__media img { display: block; width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.dc-service-row__title { position: relative; margin: 0 0 25px; color: var(--dc-navy); font-family: var(--dc-display); font-size: clamp(32px,3.5vw,38px); line-height: 1.05; }
.dc-service-row__title::after { display: block; width: 36px; height: 1px; margin-top: 18px; background: var(--dc-gold); content: ""; }
.dc-service-row__copy { color: var(--dc-muted); font-size: 15px; line-height: 1.72; }
.dc-service-row__copy p { margin: 0 0 14px; }
.dc-service-row__copy .dc-benefits { margin-block: 18px 25px; }

/* Contact render */
.dc-offices { padding: clamp(70px,8vw,110px) 0; background: #fff; }
.dc-offices__intro { display: grid; grid-template-columns: .85fr 1.15fr; gap: 60px; align-items: end; margin-bottom: 42px; }
.dc-offices__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.dc-office-card { overflow: hidden; border: 1px solid var(--dc-line); border-radius: 12px; background: var(--dc-cream); box-shadow: 0 14px 40px rgba(8,43,73,.07); }
.dc-office-card__map { width: 100%; height: 300px; border: 0; background: #e9eef1; }
.dc-office-card__content { padding: 28px; }
.dc-office-card h3 { margin: 0 0 16px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 28px; }
.dc-office-card p { margin: 0 0 15px; color: var(--dc-muted); font-size: 14px; line-height: 1.75; }
.dc-office-card a:not(.dc-btn) { display: inline-flex; min-height: 44px; align-items: center; color: var(--dc-navy) !important; text-decoration: none; }
.dc-office-hours { display: grid; gap: 6px; margin-top: 19px; padding-top: 17px; border-top: 1px solid var(--dc-line); font-size: 12px; }
.dc-office-hours div { display: grid; grid-template-columns: 30px 1fr; gap: 12px; }
.dc-appointment-strip { display: grid; grid-template-columns: 54px 1fr auto; gap: 22px; align-items: center; margin-top: 24px; padding: 28px; border: 1px solid var(--dc-line); border-radius: 12px; background: var(--dc-cream); }
.dc-appointment-strip__icon { display: grid; width: 52px; height: 52px; border-radius: 50%; background: #fff; color: var(--dc-gold); font-size: 24px; place-items: center; }
.dc-appointment-strip h3 { margin: 0 0 5px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 25px; }
.dc-appointment-strip p { margin: 0; color: var(--dc-muted); font-size: 13px; }
.dc-contact-form-head { padding: clamp(65px,8vw,95px) 0 25px; background: #fff; }
.dc-contact-form-head .dc-lead { max-width: 720px; }
.dc-contact-native-form { font-family: var(--dc-body); }
/* CF7 Styler already owns the cf7m-row layout. Keep its structure intact. */
.dc-contact-native-form .wpcf7-form { display: block; }
.dc-contact-native-form label { color: var(--dc-navy); font-size: 13px; font-weight: 700; }
.dc-contact-native-form :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select) { width: 100%; margin-top: 7px; padding: 13px 14px; border: 1px solid var(--dc-line); border-radius: 4px; background: #fff; color: var(--dc-ink); }
.dc-contact-native-form textarea { min-height: 145px; resize: vertical; }
.dc-contact-native-form input[type=submit] { min-height: 50px; padding: 13px 26px; border: 0; border-radius: 7px; background: var(--dc-gold); color: #fff; cursor: pointer; font-size: 12px; font-weight: 700; text-transform: uppercase; }

/*
 * Native CF7 module card. This targets the class assigned in Divi and does not
 * change the CF7 form definition, field order or submission behaviour.
 */
.dc-contact-native-form.et_pb_module {
    padding: clamp(24px,3vw,40px) !important;
    border: 1px solid var(--dc-line);
    border-radius: 16px;
    background: #fff;
    box-shadow: var(--dc-shadow);
}
.dc-contact-native-form .wpcf7-form h3 {
    margin: 0 0 18px;
    color: var(--dc-navy);
    font-family: var(--dc-display);
    font-size: clamp(25px,2.2vw,32px);
    line-height: 1.05;
}
.dc-contact-native-form .wpcf7-form > .cf7m-row:last-of-type { margin-bottom: 0; }

/*
 * The live rentmeesterschap page currently has the contact Code Module and
 * CF7 Styler module as siblings in one Divi column. Recreate the intended
 * two-column presentation without requiring changes to generated CF7 HTML.
 */
body.page-id-15187 .et_pb_column:has(> .et_pb_code .dc-contact):has(> .dc-contact-native-form) {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) minmax(300px,380px);
    gap: clamp(36px,4vw,64px);
    align-items: start;
}
body.page-id-15187 .et_pb_column:has(> .et_pb_code .dc-contact):has(> .dc-contact-native-form) > .dc-contact-native-form {
    grid-column: 1;
    grid-row: 1;
    margin: 0 !important;
}
body.page-id-15187 .et_pb_column:has(> .et_pb_code .dc-contact):has(> .dc-contact-native-form) > .et_pb_code:has(.dc-contact) {
    grid-column: 2;
    grid-row: 1;
    margin: 0 !important;
}
body.page-id-15187 .et_pb_code:has(.dc-contact) .dc-contact {
    width: auto !important;
    max-width: 100% !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent;
}
body.page-id-15187 .et_pb_code:has(.dc-contact) .dc-contact > .dc-container {
    width: 100%;
    margin: 0;
}
body.page-id-15187 .et_pb_code:has(.dc-contact) .dc-contact__head {
    margin: 0 0 24px;
    text-align: left;
}
body.page-id-15187 .et_pb_code:has(.dc-contact) .dc-contact__head .dc-title {
    font-size: clamp(32px,3vw,42px);
}

/* Vacatures render */
.dc-values { padding: 32px 0; background: var(--dc-cream); }
.dc-values__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.dc-value { min-height: 185px; padding: 24px 30px; border-right: 1px solid var(--dc-line); text-align: center; }
.dc-value:last-child { border-right: 0; }
.dc-value__icon { display: block; margin-bottom: 14px; color: var(--dc-gold); font-size: 42px; line-height: 1; }
.dc-value strong { display: block; color: var(--dc-navy); font-size: 13px; line-height: 1.4; text-transform: uppercase; }
.dc-value p { margin: 10px 0 0; color: var(--dc-muted); font-size: 13px; line-height: 1.55; }
.dc-vacancy { padding: clamp(70px,8vw,110px) 0 45px; background: #fff; }
.dc-vacancy__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(42px,7vw,90px); align-items: center; }
.dc-vacancy__location { margin: 12px 0 25px; color: var(--dc-gold); font-size: 13px; font-weight: 700; }
.dc-vacancy__copy { color: var(--dc-muted); font-size: 15px; line-height: 1.75; }
.dc-vacancy__media img { display: block; width: 100%; min-height: 470px; border-radius: var(--dc-radius); object-fit: cover; box-shadow: var(--dc-shadow); }
.dc-vacancy-video { position: relative; overflow: hidden; height: clamp(420px,34vw,520px); margin: 0; border-radius: var(--dc-radius); background: var(--dc-navy-dark); box-shadow: var(--dc-shadow); }
.dc-vacancy-video video { display: block; width: 100%; height: 100%; border: 0; background: var(--dc-navy-dark); object-fit: cover; }
.dc-vacancy-video__label { position: absolute; top: 18px; left: 18px; margin: 0; padding: 8px 11px; border: 1px solid rgba(255,255,255,.24); border-radius: 5px; background: rgba(5,29,49,.78); color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .06em; line-height: 1; pointer-events: none; text-transform: uppercase; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.dc-vacancy__media .dc-btn { width: 100%; margin-top: 20px; }
.dc-spontaneous { padding: 28px 0 65px; background: #fff; }
.dc-spontaneous__card { display: grid; grid-template-columns: 64px 1fr auto; gap: 28px; align-items: center; padding: clamp(30px,5vw,55px); border-radius: var(--dc-radius); background: linear-gradient(120deg,var(--dc-navy-dark),var(--dc-navy)); box-shadow: var(--dc-shadow); }
.dc-spontaneous__icon { display: grid; width: 64px; height: 64px; border: 2px solid var(--dc-gold); border-radius: 50%; color: var(--dc-gold-light); font-size: 29px; place-items: center; }
.dc-spontaneous .dc-title { font-size: clamp(32px,4vw,48px); }
.dc-spontaneous .dc-lead { margin-top: 10px; }

/* Podcasts render */
.dc-editorial-hero { min-height: clamp(390px,48vw,520px); }
.dc-editorial-hero .dc-page-hero__layout { grid-template-columns: minmax(0,670px); }
.dc-editorial-hero .dc-page-hero__copy .dc-title { font-size: clamp(46px,5.4vw,69px); }
.dc-podcast-library { padding: clamp(58px,7vw,95px) 0; background: #fff; }
.dc-podcast-group + .dc-podcast-group { margin-top: 54px; }
.dc-podcast-group__head { margin-bottom: 18px; }
.dc-podcast-group__head h2 { position: relative; margin: 0; padding-left: 24px; color: var(--dc-navy); font-family: var(--dc-display); font-size: clamp(30px,3.2vw,43px); line-height: 1.05; }
.dc-podcast-group__head h2::before { position: absolute; top: .42em; left: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--dc-gold); content: ""; }
.dc-podcast-group__head p { margin: 8px 0 0 24px; color: var(--dc-muted); font-size: 13px; line-height: 1.6; }
.dc-podcast-row { display: grid; grid-template-columns: 160px minmax(0,1fr) minmax(300px,.7fr); gap: 28px; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--dc-line); }
.dc-podcast-row__cover { width: 160px; aspect-ratio: 1; border-radius: 8px; object-fit: cover; box-shadow: 0 10px 28px rgba(8,43,73,.12); }
.dc-podcast-row__heading { display: grid; grid-template-columns: 38px 1fr; gap: 12px; align-items: start; }
.dc-podcast-row__number { color: var(--dc-gold); font-family: var(--dc-display); font-size: 25px; font-weight: 700; line-height: 1.1; }
.dc-podcast-row h3 { margin: 0; color: var(--dc-navy); font-family: var(--dc-display); font-size: clamp(23px,2.2vw,31px); line-height: 1.12; }
.dc-podcast-row__meta { margin: 7px 0 0 50px; color: var(--dc-muted); font-size: 11px; line-height: 1.5; }
.dc-podcast-row__description { margin: 10px 0 0 50px; color: var(--dc-muted); font-size: 13px; line-height: 1.65; }
.dc-podcast-row__player audio { display: block; width: 100%; height: 42px; }
.dc-podcast-row__download { display: inline-flex; min-height: 40px; align-items: center; gap: 8px; margin-top: 12px; padding: 9px 15px; border: 1px solid var(--dc-gold); border-radius: 6px; color: var(--dc-gold) !important; font-size: 10px; font-weight: 700; text-decoration: none; text-transform: uppercase; }

/* Shared newsletter / existing Contact Form 7 module */
.dc-newsletter-head { padding: clamp(48px,6vw,72px) 0 26px; background: #fff; }
.dc-newsletter-head__card { display: grid; grid-template-columns: 78px 1fr; gap: 25px; align-items: center; padding: clamp(28px,4vw,45px); border-radius: 14px; background: linear-gradient(120deg,var(--dc-navy),#0d4268); box-shadow: var(--dc-shadow); }
.dc-newsletter-head__icon { display: grid; width: 72px; height: 72px; border: 2px solid var(--dc-gold); border-radius: 50%; color: var(--dc-gold-light); font-size: 31px; place-items: center; }
.dc-newsletter-head .dc-title { font-size: clamp(30px,3.3vw,43px); }
.dc-newsletter-head .dc-lead { margin-top: 9px; font-size: 14px; }
.dc-newsletter-native-form { width: min(calc(100% - 40px),1280px); margin: 0 auto clamp(60px,7vw,90px) !important; padding: 0 clamp(28px,4vw,45px) clamp(28px,4vw,45px) !important; border-radius: 0 0 14px 14px; background: linear-gradient(120deg,var(--dc-navy),#0d4268); color: #fff; font-family: var(--dc-body); box-shadow: var(--dc-shadow); }
.dc-newsletter-native-form .wpcf7-form { display: grid; grid-template-columns: minmax(220px,1fr) auto; gap: 14px 20px; align-items: end; }
.dc-newsletter-native-form .wpcf7-form > * { grid-column: 1/-1; }
.dc-newsletter-native-form .wpcf7-form > .cf7m-row:first-of-type { grid-row: 1; grid-column: 1; }
.dc-newsletter-native-form .wpcf7-form > .cf7m-row:has(input[type=submit]) { grid-row: 1; grid-column: 2; }
.dc-newsletter-native-form .wpcf7-form > :is(p,div) { margin: 0; }
.dc-newsletter-native-form label { color: rgba(255,255,255,.8); font-size: 12px; }
.dc-newsletter-native-form input:not([type=checkbox]):not([type=radio]):not([type=submit]) { width: 100%; min-height: 49px; margin-top: 6px; padding: 12px 14px; border: 0; border-radius: 5px; background: #fff; color: var(--dc-ink); }
.dc-newsletter-native-form input[type=submit] { min-height: 49px; padding: 12px 24px; border: 0; border-radius: 6px; background: var(--dc-gold); color: #fff; cursor: pointer; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.dc-newsletter-native-form .wpcf7-list-item { margin-left: 0; margin-right: 18px; }
.dc-newsletter-native-form .wpcf7-response-output,
.dc-newsletter-native-form .wpcf7-not-valid-tip { grid-column: 1/-1; color: #fff; }

/* On the live pages this class is on a Divi Section, not on the CF7 module.
   Give its row the card layout so Divi's nested 80%-width row cannot crush it. */
.dc-newsletter-native-form.et_pb_section {
    width: 100%;
    max-width: none;
    margin: 0 0 clamp(60px,7vw,90px) !important;
    padding: 0 !important;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}
.dc-newsletter-native-form.et_pb_section > .et_pb_row {
    box-sizing: border-box;
    width: min(calc(100% - 40px),1280px) !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: clamp(26px,4vw,45px) !important;
    border-radius: 14px;
    background: linear-gradient(120deg,var(--dc-navy),#0d4268);
    box-shadow: var(--dc-shadow);
}
.dc-newsletter-native-form.et_pb_section > .et_pb_row > .et_pb_column {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
}
.dc-newsletter-native-form.et_pb_section :is(.dvppl_cf7_styler,.wpcf7,.wpcf7-form) {
    width: 100%;
    min-width: 0;
}
/* The designed heading block already precedes the original CF7 section. */
body:has(.dc-newsletter-head) .dc-newsletter-native-form.et_pb_section .et_pb_text_0 { display: none !important; }

/* The zoekprofiel page still runs its original Select2 field. Select2 writes a
   400px inline width; contain it without changing the postcode integration. */
body.page-id-2161 .wpcf7-form-control-wrap,
body.page-id-2161 .wpcf7 .select2-container,
body.page-id-2161 .wpcf7 .select2-selection {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
}
body.page-id-2161 .wpcf7 .select2-container { width: 100% !important; }

/* Investeringstips render */
.dc-article-archive { padding: clamp(58px,7vw,95px) 0; background: #fff; }
.dc-article-archive__head { margin-bottom: 32px; }
.dc-article-archive__head .dc-title { position: relative; padding-left: 25px; font-size: clamp(34px,3.8vw,50px); }
.dc-article-archive__head .dc-title::before { position: absolute; top: .42em; left: 0; width: 9px; height: 9px; border-radius: 50%; background: var(--dc-blue); content: ""; }
.dc-article-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.dc-article-card { display: flex; overflow: hidden; min-height: 100%; flex-direction: column; border: 1px solid var(--dc-line); border-radius: 8px; background: #fff; box-shadow: 0 12px 35px rgba(8,43,73,.06); transition: box-shadow .25s ease, transform .25s var(--dc-ease); }
.dc-article-card:hover { box-shadow: var(--dc-shadow); transform: translateY(-5px); }
.dc-article-card__image { display: block; overflow: hidden; }
.dc-article-card__image img { display: block; width: 100%; height: 220px; object-fit: cover; transition: transform .55s var(--dc-ease); }
.dc-article-card:hover .dc-article-card__image img { transform: scale(1.035); }
.dc-article-card__body { display: flex; flex: 1; flex-direction: column; padding: 22px; }
.dc-article-card__date { color: var(--dc-muted); font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.dc-article-card h3 { margin: 9px 0 12px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 27px; line-height: 1.1; }
.dc-article-card__excerpt { margin: 0; color: var(--dc-muted); font-size: 13px; line-height: 1.65; }
.dc-article-card__more { margin-top: auto; padding-top: 22px; color: var(--dc-gold) !important; font-size: 11px; font-weight: 700; text-decoration: none; text-transform: uppercase; }

/* Projects render */
.dc-project-intro { padding: clamp(60px,7vw,95px) 0; background: #fff; }
.dc-project-intro__grid { display: grid; grid-template-columns: minmax(320px,1fr) minmax(0,1fr); gap: clamp(40px,7vw,90px); align-items: center; }
.dc-project-video { position: relative; overflow: hidden; aspect-ratio: 16/10; border-radius: 10px; background: #000; box-shadow: var(--dc-shadow); }
.dc-project-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.dc-project-intro__copy p { margin: 16px 0 0; color: var(--dc-muted); font-size: 14px; line-height: 1.7; }
.dc-project-usps { padding: 27px 0; background: linear-gradient(120deg,var(--dc-navy-dark),var(--dc-navy)); }
.dc-project-usps__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.dc-project-usp { display: grid; grid-template-columns: 66px 1fr; gap: 20px; align-items: center; padding: 15px 34px; border-right: 1px solid rgba(255,255,255,.18); }
.dc-project-usp:last-child { border-right: 0; }
.dc-project-usp__icon { display: grid; width: 60px; height: 60px; border: 2px solid var(--dc-gold); border-radius: 50%; color: var(--dc-gold-light); font-size: 27px; place-items: center; }
.dc-project-usp strong { display: block; color: #fff; font-family: var(--dc-display); font-size: 20px; line-height: 1.2; }
.dc-project-usp span { display: block; margin-top: 5px; color: rgba(255,255,255,.7); font-size: 11px; line-height: 1.45; }
.dc-project-references { padding: clamp(60px,7vw,95px) 0; background: #fff; }
.dc-reference-mosaic { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); grid-auto-rows: minmax(210px,auto); margin-top: 32px; }
.dc-reference-photo { overflow: hidden; min-height: 230px; }
.dc-reference-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.dc-reference-photo--wide { grid-column: span 2; }
.dc-reference-quote { display: flex; flex-direction: column; justify-content: center; padding: clamp(24px,3vw,38px); background: var(--dc-cream); }
.dc-reference-quote::before { color: var(--dc-gold); content: "“"; font-family: Georgia,serif; font-size: 52px; line-height: .6; }
.dc-reference-quote p { margin: 13px 0; color: var(--dc-ink); font-size: 13px; line-height: 1.7; }
.dc-reference-quote strong { color: var(--dc-gold); font-size: 12px; }
.dc-project-office { padding: 0 0 clamp(55px,7vw,90px); background: #fff; }
.dc-project-office__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px,6vw,80px); align-items: center; }
.dc-project-office__image { width: 100%; min-height: 420px; border-radius: 8px; object-fit: cover; box-shadow: var(--dc-shadow); }
.dc-project-office__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.dc-project-office__hours { margin-top: 22px; padding: 18px 22px; border-radius: 9px; background: var(--dc-cream); }
.dc-project-office__hours div { display: grid; grid-template-columns: 34px 1fr; gap: 14px; color: var(--dc-muted); font-size: 12px; line-height: 1.65; }
.dc-project-office__hours strong { color: var(--dc-gold); }
.dc-project-legal { padding: 0 0 clamp(55px,7vw,85px); background: #fff; }
.dc-project-legal__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(35px,7vw,90px); padding-top: 28px; border-top: 1px solid var(--dc-line); }
.dc-project-legal h3 { margin: 0 0 12px; color: var(--dc-navy); font-size: 13px; }
.dc-project-legal p { margin: 0; color: var(--dc-muted); font-size: 11px; line-height: 1.65; }
.dc-project-closing { position: relative; overflow: hidden; padding: clamp(45px,6vw,72px) 0; background: var(--dc-navy-dark); isolation: isolate; }
.dc-project-closing__background { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .25; }
.dc-project-closing::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.95),rgba(3,20,34,.7)); content: ""; }
.dc-project-closing__grid { display: grid; grid-template-columns: 1fr auto; gap: 35px; align-items: center; }
.dc-project-closing .dc-title { font-size: clamp(36px,4vw,52px); }

/* 01 Hero */
body:has(.dc-hero) .dc-block { --dc-container: 1470px; }
body:has(.dc-hero) :is(.dc-property-intro,.dc-split,.dc-services) .dc-title { font-size: clamp(32px,3vw,38px); }
.dc-hero { position: relative; min-height: clamp(690px,50vw,800px); overflow: hidden; background: var(--dc-navy-dark); isolation: isolate; }
.dc-hero__background { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; animation: dcHeroZoom 22s ease-in-out infinite alternate; }
.dc-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(3,20,34,.68), rgba(3,20,34,.25) 60%, rgba(3,20,34,.08)); content: ""; }
.dc-hero__layout { position: relative; display: grid; min-height: inherit; grid-template-columns: minmax(0,590px) minmax(250px,1fr); gap: clamp(40px,8vw,140px); align-items: center; padding-block: clamp(55px,6vw,85px); }
.dc-hero__card { padding: clamp(34px,4vw,50px); border: 1px solid rgba(255,255,255,.17); border-radius: 16px; background: rgba(5,29,49,.78); box-shadow: 0 28px 90px rgba(0,0,0,.32); -webkit-backdrop-filter: blur(22px) saturate(120%); backdrop-filter: blur(22px) saturate(120%); }
.dc-hero__card .dc-title { font-size: clamp(42px,3.6vw,52px); }
.dc-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.dc-hero__play { width: 28px; height: 28px; display: inline-grid; border-radius: 50%; background: var(--dc-gold); place-items: center; }
.dc-hero__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 34px; padding-top: 26px; border-top: 1px solid rgba(255,255,255,.17); }
.dc-hero__stat strong { display: block; color: #fff; font-family: var(--dc-display); font-size: 30px; line-height: 1; }
.dc-hero__stat span { display: block; margin-top: 7px; color: rgba(255,255,255,.7); font-size: 12px; line-height: 1.35; }
.dc-hero__trust { position: absolute; right: 0; bottom: clamp(34px,4vw,58px); }
.dc-hero-review { display: grid; min-width: 390px; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: hidden; border: 1px solid rgba(255,255,255,.55); border-radius: 10px; background: rgba(255,255,255,.95); box-shadow: 0 18px 50px rgba(3,20,34,.24); color: var(--dc-navy); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.dc-hero-review__item { display: grid; grid-template-columns: 36px 1fr; gap: 11px; align-items: center; padding: 17px 21px; }
.dc-hero-review__item + .dc-hero-review__item { border-left: 1px solid var(--dc-line); }
.dc-hero-review__icon { color: var(--dc-gold); font-size: 30px; line-height: 1; text-align: center; }
.dc-hero-review__icon--google { font-family: Arial,sans-serif; font-size: 28px; font-weight: 700; }
.dc-hero-review__label { display: block; margin-bottom: 2px; color: var(--dc-muted); font-size: 10px; line-height: 1.2; }
.dc-hero-review strong { display: block; color: var(--dc-navy); font-family: var(--dc-display); font-size: 20px; line-height: 1.05; }
.dc-trust-pill { display: flex; min-width: 185px; align-items: center; gap: 11px; padding: 13px 16px; border: 1px solid rgba(255,255,255,.4); border-radius: 8px; background: rgba(255,255,255,.94); box-shadow: var(--dc-shadow); color: var(--dc-navy); opacity: 0; transform: translateY(10px); transition: opacity .35s ease, transform .35s var(--dc-ease); }
.dc-trust-pill:nth-child(even) { margin-right: 38px; }
.dc-trust-pill.is-ready,
.dc-trust-pill--static { opacity: 1; transform: none; }
.dc-trust-pill__icon { width: 24px; color: var(--dc-gold); font-size: 21px; text-align: center; }
.dc-trust-pill__copy { display: grid; gap: 1px; }
.dc-trust-pill__label { color: var(--dc-muted); font-size: 10px; line-height: 1.15; }
.dc-trust-pill__value { font-family: var(--dc-display); font-size: 17px; line-height: 1.1; }
@keyframes dcHeroZoom { to { transform: scale(1.06); } }

/* 02 Property heading and existing cards */
body:has(.dc-property-anchor) {
    --dc-navy: #082b49;
    --dc-blue: #397b9d;
    --dc-gold: #b68b56;
    --dc-cream: #f7f4ef;
    --dc-muted: #69747c;
    --dc-line: rgba(8, 43, 73, .13);
    --dc-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
    --dc-body: Lato, Arial, Helvetica, sans-serif;
    --dc-shadow: 0 18px 55px rgba(8, 43, 73, .11);
    --dc-ease: cubic-bezier(.22, 1, .36, 1);
    --dc-radius: 12px;
    --dc-container: 1470px;
}
.dc-property-intro { padding: clamp(62px,7vw,90px) 0 30px; background: #fff; }
.dc-property-intro__row { display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: end; }
body:has(.dc-property-anchor) .magma_pand { overflow: hidden; margin: 0 !important; border: 1px solid var(--dc-line) !important; border-radius: var(--dc-radius) !important; background: #fff; box-shadow: var(--dc-shadow); transition: transform .25s var(--dc-ease), box-shadow .25s ease; }
body:has(.dc-property-anchor) .magma_pand:hover { box-shadow: 0 26px 65px rgba(8,43,73,.16); transform: translateY(-6px); }
body:has(.dc-property-anchor) .magma_pand .et_pb_row { width: 100%; padding-top: 0 !important; }
body:has(.dc-property-anchor) .magma_pand .magma_afbeelding { overflow: hidden; }
body:has(.dc-property-anchor) .magma_pand .magma_afbeelding img { width: 100%; height: clamp(220px, 22vw, 320px) !important; border-radius: 0 !important; object-fit: cover; transition: transform .6s var(--dc-ease); }
body:has(.dc-property-anchor) .magma_pand:hover .magma_afbeelding img { transform: scale(1.035); }
body:has(.dc-property-anchor) .magma_pand .magma_label { top: 14px; right: auto; left: 14px; padding: 7px 9px; border-radius: 4px; background: var(--dc-blue) !important; font-family: var(--dc-body); font-size: 11px; letter-spacing: .04em; }
body:has(.dc-property-anchor) .magma_pand .magma_type_pand,
body:has(.dc-property-anchor) .magma_pand .magma_locatie { margin-top: 18px; color: var(--dc-navy) !important; font-family: var(--dc-body); font-size: 14px; }
body:has(.dc-property-anchor) .magma_pand .magma_type_pand { padding-left: 18px; }
body:has(.dc-property-anchor) .magma_pand .magma_locatie { padding-right: 18px; color: var(--dc-muted) !important; }
body:has(.dc-property-anchor) .magma_pand .magma_omschrijving { padding-inline: 18px; color: var(--dc-muted); }
body:has(.dc-property-anchor) .magma_pand .magma_omschrijving p { -webkit-line-clamp: 3; line-clamp: 3; }
body:has(.dc-property-anchor) .magma_pand .magma_prijs { padding: 18px; color: var(--dc-gold); font-family: var(--dc-display); font-size: 24px; }
body:has(.dc-property-anchor) .magma_pand :is(.magma_oppervlakte,.magma_slaapkamers,.magma_badkamers) { margin: 0 6px 18px 0 !important; padding: 10px 12px !important; border-radius: 5px; background: var(--dc-cream); color: var(--dc-navy); font-size: 12px; }
body:has(.dc-property-anchor) .magma_pand .magma_oppervlakte { margin-left: 18px !important; }

/* The live property feed is a Toolset/Bootstrap card deck, not a Magma module. */
body:has(.dc-property-anchor) .toolset_divi_view { padding: 0 0 34px; }
body:has(.dc-property-anchor) .toolset_divi_view .js-wpv-view-layout { width: 100%; }
body:has(.dc-property-anchor) .toolset_divi_view .card-deck {
    display: grid !important;
    width: min(calc(100% - 40px),var(--dc-container));
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 30px;
    margin: 0 auto !important;
}
body:has(.dc-property-anchor) .toolset_divi_view .card-deck > [class*="col-"] {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body:has(.dc-property-anchor) .toolset_divi_view .card {
    position: relative;
    display: flex;
    overflow: hidden;
    width: 100%;
    height: 100%;
    min-height: 520px;
    flex-direction: column;
    margin: 0 !important;
    border: 1px solid var(--dc-line) !important;
    border-radius: var(--dc-radius) !important;
    background: #fff;
    box-shadow: var(--dc-shadow);
    color: var(--dc-ink) !important;
    text-decoration: none !important;
    transition: transform .25s var(--dc-ease),box-shadow .25s ease;
}
body:has(.dc-property-anchor) .toolset_divi_view .card:hover { box-shadow: 0 26px 65px rgba(8,43,73,.16); transform: translateY(-6px); }
body:has(.dc-property-anchor) .toolset_divi_view .card-img-top {
    display: block;
    width: 100%;
    height: 250px !important;
    flex: 0 0 250px;
    border-radius: 0 !important;
    background: var(--dc-cream);
    object-fit: cover;
}
body:has(.dc-property-anchor) .toolset_divi_view .card-body { flex: 1; padding: 20px 22px 8px !important; }
body:has(.dc-property-anchor) .toolset_divi_view .card-title { margin: 0 !important; color: var(--dc-navy) !important; font-family: var(--dc-body) !important; font-size: 14px !important; font-weight: 700; }
body:has(.dc-property-anchor) .toolset_divi_view .card-body .font-weight-bold { color: var(--dc-ink); font-size: 14px !important; }
body:has(.dc-property-anchor) .toolset_divi_view .magma-card-text {
    display: -webkit-box;
    overflow: hidden;
    min-height: 66px;
    margin: 18px 0 13px;
    color: var(--dc-muted);
    font-size: 13px;
    line-height: 1.7;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
body:has(.dc-property-anchor) .toolset_divi_view .card-body > .font-weight-bold { color: var(--dc-gold) !important; font-family: var(--dc-display); font-size: 24px !important; }
body:has(.dc-property-anchor) .toolset_divi_view .card-footer { padding: 10px 22px 20px !important; }
body:has(.dc-property-anchor) .toolset_divi_view .card-footer p { gap: 7px; margin: 0; }
body:has(.dc-property-anchor) .toolset_divi_view .card-footer .bs-icon { margin: 0 !important; padding: 9px 11px !important; border-radius: 5px !important; background: var(--dc-cream) !important; color: var(--dc-navy); font-size: 12px; }
body:has(.dc-property-anchor) .toolset_divi_view .card-footer .bs-icon i { margin-right: 7px !important; font-size: 14px !important; }

/* 03 Guide CTA */
.dc-guide { padding: 28px 0; background: #fff; }
.dc-guide__card { position: relative; display: grid; overflow: hidden; min-height: 260px; grid-template-columns: minmax(310px,.92fr) minmax(0,1.08fr); align-items: center; border-radius: 12px; background: linear-gradient(115deg,var(--dc-navy-dark),var(--dc-navy)); box-shadow: var(--dc-shadow); }
.dc-guide__image { display: block; width: 100%; height: 260px; min-height: 0; padding: 0 34px; object-fit: contain; object-position: center; }
.dc-guide__content { position: relative; z-index: 1; padding: 30px clamp(32px,4vw,58px); }
.dc-guide__content .dc-title { font-size: clamp(31px,3vw,40px); }
.dc-guide__content .dc-lead { margin-top: 14px; font-size: 14px; line-height: 1.6; }
.dc-guide__content .dc-btn { min-height: 45px; margin-top: 18px; padding: 11px 18px; }

/* 04 Generic split */
.dc-split { padding: clamp(55px,6vw,78px) 0; background: #fff; }
.dc-split--cream { background: var(--dc-cream); }
.dc-split__grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(42px,6vw,85px); align-items: center; }
.dc-split--reverse .dc-split__media { order: 2; }
.dc-split__media { overflow: hidden; min-height: 430px; border-radius: 12px; box-shadow: var(--dc-shadow); }
.dc-split__media img { display: block; width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.dc-split__content .dc-lead { max-width: 620px; }
.dc-split__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.dc-hours { width: min(100%,390px); margin-top: 25px; padding: 16px 20px; border-radius: 10px; background: var(--dc-cream); font-size: 15px; line-height: 1.7; }
.dc-hours div { display: grid; grid-template-columns: 35px 1fr 1fr; gap: 12px; }

/* 05 USP strip */
.dc-usps { padding: 22px 0; background: var(--dc-cream); }
.dc-usps__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.dc-usp { display: grid; min-height: 100%; grid-template-columns: 54px 1fr; gap: 16px; align-items: center; padding: 20px 24px; border-right: 1px solid var(--dc-line); }
.dc-usp:last-child { border-right: 0; }
.dc-usp svg { width: 50px; height: 50px; fill: none; stroke: var(--dc-gold); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.6; }
.dc-usp strong { color: var(--dc-navy); font-size: 16px; line-height: 1.45; }

/* 06 Services */
.dc-services { padding: clamp(60px,7vw,88px) 0; background: #fff; }
.dc-services__head { margin-bottom: 34px; }
.dc-services__layout { display: grid; grid-template-columns: minmax(270px,.78fr) minmax(0,1.22fr); gap: clamp(42px,7vw,95px); align-items: center; }
.dc-services__image { width: 100%; min-height: 420px; border-radius: 12px; object-fit: cover; }
.dc-services__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 34px; }
.dc-service { position: relative; padding: 25px 10px 25px 72px; border-bottom: 1px solid var(--dc-line); }
.dc-service svg { position: absolute; top: 23px; left: 0; width: 52px; height: 52px; fill: none; stroke: var(--dc-gold); stroke-width: 1.55; }
.dc-service h3 { margin: 0 0 7px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 24px; line-height: 1.1; }
.dc-service p { margin: 0 0 8px; color: var(--dc-muted); font-size: 14px; line-height: 1.6; }
.dc-service a { display: inline-flex; min-height: 44px; align-items: center; color: var(--dc-gold) !important; font-size: 13px; font-weight: 700; text-decoration: none; }

/* 07 Homepage credentials strip */
.dc-home-legal { padding: 38px 0; border-top: 1px solid var(--dc-line); background: #fff; }
.dc-home-legal__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(45px,8vw,120px); }
.dc-home-legal__item { display: grid; grid-template-columns: 72px 1fr; gap: 24px; align-items: start; }
.dc-home-legal__item svg { width: 64px; height: 64px; fill: none; stroke: var(--dc-gold); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.35; }
.dc-home-legal__item h3 { margin: 0 0 8px; color: var(--dc-navy); font-family: var(--dc-body); font-size: 13px; line-height: 1.4; }
.dc-home-legal__item p { margin: 0; color: var(--dc-muted); font-size: 11px; line-height: 1.65; }

/* 07 Trust band */
.dc-trust-band { position: relative; overflow: hidden; padding: clamp(45px,6vw,75px) 0; background: var(--dc-navy); }
.dc-trust-band__grid { display: grid; grid-template-columns: minmax(220px,.8fr) repeat(2,minmax(220px,1fr)); gap: 42px; align-items: center; }
.dc-trust-band__title { color: #fff; font-family: var(--dc-display); font-size: clamp(30px,3vw,36px); line-height: 1.08; }
.dc-trust-score { display: grid; grid-template-columns: auto 1fr; gap: 17px; align-items: center; color: #fff; opacity: 1; transition: opacity .35s ease; }
.dc-trust-score.is-ready { opacity: 1; }
.dc-trust-score__icon { color: var(--dc-gold-light); font-size: 45px; }
.dc-trust-score__value { display: block; font-family: var(--dc-display); font-size: clamp(42px,5vw,50px); line-height: 2; }
.dc-trust-score__label,
.dc-trust-score__count { display: block; color: rgba(255,255,255,.7); font-size: 18px; line-height: 1.45; }
.dc-trust-score__value[data-dc-trust="trustlocalScore"]:empty::before { content: "9,5/10"; }
.dc-trust-score__value[data-dc-trust="googleScore"]:empty::before { content: "4,4/5"; }
.dc-trust-score__count[data-dc-trust="trustlocalCount"]:empty::before { content: "59 reviews"; }
.dc-trust-score__count[data-dc-trust="googleCount"]:empty::before { content: "52 reviews"; }

/* 08 Closing CTA */
.dc-closing { position: relative; overflow: hidden; min-height: 430px; background: var(--dc-navy-dark); isolation: isolate; }
.dc-closing__background { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.dc-closing::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.94),rgba(3,20,34,.57)); content: ""; }
.dc-closing__grid { display: grid; min-height: 430px; grid-template-columns: minmax(0,1fr) auto; gap: 55px; align-items: center; padding-block: 65px; }
.dc-closing__copy { max-width: 680px; }
.dc-closing__actions { display: grid; gap: 12px; min-width: 300px; }

/* 09 Footer */
.dc-footer { padding: 62px 0 22px; background: linear-gradient(135deg,var(--dc-navy),#0d4268); color: rgba(255,255,255,.74); }
.dc-footer__grid { display: grid; grid-template-columns: 1.35fr repeat(4,1fr); gap: 40px; }
.dc-footer h3 { margin: 0 0 16px; color: #fff; font-family: var(--dc-body); font-size: 14px; }
.dc-footer p,
.dc-footer li,
.dc-footer a { color: rgba(255,255,255,.74) !important; font-size: 13px; line-height: 1.75; text-decoration: none; }
.dc-footer ul { margin: 0; padding: 0; list-style: none; }
.dc-footer a:hover { color: var(--dc-gold-light) !important; }
.dc-footer__bottom { margin-top: 42px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.55); font-size: 12px; text-align: center; }

/* Runtime */
.dc-video-modal { position: fixed; z-index: 2147483000; inset: 0; display: grid; padding: 5vw; place-items: center; background: rgba(2,12,21,.95); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s ease; }
.dc-video-modal.is-open { opacity: 1; visibility: visible; }
.dc-video-modal__dialog { position: relative; width: min(1200px,100%); }
.dc-video-modal__frame { position: relative; overflow: hidden; aspect-ratio: 16/9; border-radius: 12px; background: #000; box-shadow: 0 30px 100px rgba(0,0,0,.6); }
.dc-video-modal iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.dc-video-modal__close { position: absolute; right: 0; bottom: calc(100% + 14px); width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; background: rgba(255,255,255,.1); color: #fff; cursor: pointer; font-size: 25px; }
body.dc-modal-open { overflow: hidden; }

/* Referenties — approved editorial testimonials and project layout */
body:has(.dc-refs-hero) .dc-block { --dc-container: 1470px; }
.dc-refs-hero { position: relative; min-height: clamp(510px,34vw,650px); overflow: hidden; background: var(--dc-navy-dark); isolation: isolate; }
.dc-refs-hero__background { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 43%; }
.dc-refs-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.94) 0%,rgba(3,20,34,.76) 33%,rgba(3,20,34,.28) 62%,rgba(3,20,34,.04) 82%); content: ""; }
.dc-refs-hero__layout { display: flex; min-height: inherit; align-items: center; padding-block: 58px; }
.dc-refs-hero__copy { width: min(100%,660px); }
.dc-refs-hero .dc-title { font-size: clamp(46px,4.1vw,48px); line-height: 1.04; }
.dc-refs-hero .dc-lead { margin-top: 24px; font-size: 16px; line-height: 1.7; }

.dc-refs-ratings { padding: 0 0 54px; background: #fff; }
.dc-refs-ratings__card { display: grid; min-height: 185px; grid-template-columns: 1.1fr .85fr .85fr auto; gap: 0; align-items: center; padding: 28px 48px; border-radius: 0 0 12px 12px; background: #fbfaf8; box-shadow: 0 14px 38px rgba(8,43,73,.07); }
.dc-refs-ratings__card > h2 { margin: 0; color: var(--dc-navy); font-family: var(--dc-display); font-size: clamp(31px,2.6vw,42px); font-weight: 600; line-height: 1.12; }
.dc-refs-rating { display: grid; min-height: 95px; grid-template-columns: 62px 1fr; gap: 22px; align-items: start; padding: 0 36px; border-left: 1px solid var(--dc-line); }
.dc-refs-rating__mark { color: var(--dc-gold); font-size: 60px; line-height: .9; }
.dc-refs-rating__google { font-family: Arial,sans-serif; font-size: 0; font-weight: 800; line-height: 1; }
.dc-refs-rating__google::before { display: block; background: conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 42%,#fbbc05 0 66%,#ea4335 0 86%,#4285f4 0); background-clip: text; color: transparent; content: "G"; font-size: 55px; -webkit-background-clip: text; }
.dc-refs-rating strong { display: block; margin-top: -4px; color: var(--dc-navy); font-family: var(--dc-display); font-size: 39px; font-weight: 600; line-height: 1; }
.dc-refs-rating span:not(.dc-refs-rating__mark,.dc-refs-rating__google),
.dc-refs-rating small { display: block; color: var(--dc-muted); font-size: 12px; line-height: 1.4; }
.dc-refs-rating .dc-refs-rating__stars { color: var(--dc-gold) !important; font-size: 13px !important; letter-spacing: 3px; }
.dc-refs-ratings__link,
.dc-refs-outline-btn { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 14px; padding: 12px 24px; border: 1px solid var(--dc-gold); border-radius: 6px; color: var(--dc-navy) !important; font-size: 11px; font-weight: 700; letter-spacing: .025em; text-decoration: none !important; text-transform: uppercase; transition: background .2s ease,color .2s ease,transform .2s var(--dc-ease); }
.dc-refs-ratings__link:hover,
.dc-refs-outline-btn:hover { background: var(--dc-gold); color: #fff !important; transform: translateY(-2px); }

.dc-refs-testimonials { overflow: hidden; padding: 22px 0 58px; background: #fff; }
.dc-refs-section-head { display: grid; grid-template-columns: 1fr minmax(360px,.7fr); gap: clamp(45px,8vw,120px); align-items: end; margin-bottom: 38px; }
.dc-refs-section-head .dc-title,
.dc-refs-projects__head .dc-title { font-size: clamp(34px,3vw,38px); }
.dc-refs-section-head > p { margin: 0 0 9px; color: var(--dc-ink); font-size: 14px; line-height: 1.65; }
.dc-refs-testimonials__wrap { position: relative; }
.dc-refs-testimonials__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 42px; scroll-behavior: smooth; }
.dc-refs-quote { display: flex; min-height: 318px; flex-direction: column; margin: 0; padding: 28px 31px 24px; border: 1px solid rgba(8,43,73,.1); border-radius: 10px; background: #fff; box-shadow: 0 12px 32px rgba(8,43,73,.08); }
.dc-refs-quote__mark { height: 34px; color: var(--dc-gold); font-family: Georgia,serif; font-size: 54px; font-weight: 700; line-height: .9; }
.dc-refs-quote > p { flex: 1; margin: 8px 0 22px; color: var(--dc-ink); font-size: 14px; line-height: 1.65; }
.dc-refs-quote footer { display: grid; gap: 4px; }
.dc-refs-quote footer strong { color: var(--dc-navy); font-size: 13px; }
.dc-refs-quote footer strong::before { margin-right: 9px; color: var(--dc-gold); content: "—"; }
.dc-refs-quote footer span { color: var(--dc-muted); font-size: 11px; }
.dc-refs-dots { display: flex; gap: 8px; margin-top: 21px; }
.dc-refs-dots i { width: 10px; height: 10px; border-radius: 50%; background: #e7e4df; }
.dc-refs-quote:first-child .dc-refs-dots i:first-child,
.dc-refs-quote:nth-child(2) .dc-refs-dots i:first-child,
.dc-refs-quote:nth-child(3) .dc-refs-dots i:first-child { background: var(--dc-gold); }
.dc-refs-nav { position: absolute; z-index: 2; top: 50%; display: grid; width: 48px; height: 48px; border: 1px solid var(--dc-line); border-radius: 50%; background: #fff; box-shadow: 0 8px 25px rgba(8,43,73,.1); color: var(--dc-gold); cursor: pointer; font-family: Georgia,serif; font-size: 30px; line-height: 1; place-items: center; transform: translateY(-50%); }
.dc-refs-nav--prev { right: calc(100% + 22px); }
.dc-refs-nav--next { left: calc(100% + 22px); }

.dc-refs-projects { padding: 8px 0 68px; background: #fff; }
.dc-refs-projects__head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 32px; }
.dc-refs-projects__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 45px; }
.dc-refs-project { overflow: hidden; border: 1px solid rgba(8,43,73,.1); border-radius: 8px; background: #fff; box-shadow: 0 12px 32px rgba(8,43,73,.08); }
.dc-refs-project__media { position: relative; height: 225px; overflow: hidden; }
.dc-refs-project__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--dc-ease); }
.dc-refs-project:hover .dc-refs-project__media img { transform: scale(1.035); }
.dc-refs-project__media > span { position: absolute; top: 0; left: 0; padding: 10px 18px; border-radius: 0 0 6px 0; background: var(--dc-gold); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .035em; text-transform: uppercase; }
.dc-refs-project__body { padding: 22px 22px 18px; }
.dc-refs-project__body h3 { margin: 0 0 7px; color: var(--dc-navy); font-family: var(--dc-body); font-size: 17px; }
.dc-refs-project__body p { margin: 0; color: var(--dc-muted); font-size: 12px; }
.dc-refs-project__body p::first-letter { color: var(--dc-gold); }
.dc-refs-project__facts { display: grid; min-height: 49px; grid-template-columns: repeat(3,1fr); align-items: center; padding: 0 22px; background: var(--dc-cream); }
.dc-refs-project__facts span { color: var(--dc-muted); font-size: 11px; }

.dc-refs-closing { position: relative; min-height: 285px; overflow: hidden; background: var(--dc-navy-dark); isolation: isolate; }
.dc-refs-closing__background { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.dc-refs-closing::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.96) 0%,rgba(3,20,34,.76) 34%,rgba(3,20,34,.35) 60%,rgba(3,20,34,.88) 100%); content: ""; }
.dc-refs-closing__grid { display: grid; min-height: 285px; grid-template-columns: minmax(0,1fr) auto; gap: 70px; align-items: center; padding-block: 40px; }
.dc-refs-closing__copy { max-width: 600px; }
.dc-refs-closing .dc-title { font-size: clamp(35px,3.3vw,49px); }
.dc-refs-closing .dc-lead { margin-top: 20px; font-size: 14px; line-height: 1.65; }
.dc-refs-closing__actions { display: grid; min-width: 365px; gap: 13px; }

/* Over ons — team-led editorial page */
:is(.dc-about-hero,.dc-about-intro,.dc-about-values,.dc-about-team,.dc-about-story,.dc-about-cta) {
    --dc-navy: #082b49;
    --dc-navy-dark: #051d31;
    --dc-gold: #b68b56;
    --dc-gold-light: #d3b27d;
    --dc-cream: #f7f4ef;
    --dc-ink: #24303a;
    --dc-muted: #69747c;
    --dc-line: rgba(8,43,73,.13);
    --dc-display: "Cormorant Garamond",Georgia,"Times New Roman",serif;
    --dc-body: Lato,Arial,Helvetica,sans-serif;
    --dc-container: 1470px;
    --dc-shadow: 0 18px 55px rgba(8,43,73,.11);
    color: var(--dc-ink);
    font-family: var(--dc-body);
}
/* The deployed About blocks use dc-about-* typography classes, while the
   paste-ready local blocks use the shared dc-* classes. Support both. */
:is(.dc-about-hero,.dc-about-intro,.dc-about-values,.dc-about-team,.dc-about-story,.dc-about-cta),
:is(.dc-about-hero,.dc-about-intro,.dc-about-values,.dc-about-team,.dc-about-story,.dc-about-cta) * { box-sizing: border-box; }
.dc-about-container { width: min(calc(100% - 40px),var(--dc-container)); margin-inline: auto; }
.dc-about-eyebrow { margin: 0 0 12px; color: var(--dc-gold); font-size: 12px; font-weight: 700; line-height: 1.35; letter-spacing: .11em; text-transform: uppercase; }
.dc-about-title { margin: 0; color: var(--dc-navy); font-family: var(--dc-display); font-size: clamp(27px,2.25vw,32px); font-weight: 600; line-height: 1.16; letter-spacing: -.015em; }
.dc-about-intro .dc-title,
.dc-about-team .dc-title,
.dc-about-story .dc-title,
.dc-about-cta .dc-title { font-size: clamp(27px,2.25vw,32px); line-height: 1.16; letter-spacing: -.015em; }
.dc-about-title--light { color: #fff !important; }
.dc-about-lead { margin: 22px 0 0; color: var(--dc-muted); font-size: clamp(16px,1.4vw,19px); line-height: 1.75; }
:is(.dc-about-hero,.dc-about-cta) .dc-about-lead { color: rgba(255,255,255,.88) !important; }
.dc-about-btn { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; padding: 14px 24px; border: 1px solid var(--dc-gold); border-radius: 7px; background: var(--dc-gold); color: #fff !important; font-size: 12px; font-weight: 700; line-height: 1.2; letter-spacing: .035em; text-decoration: none !important; text-transform: uppercase; }
.dc-about-btn--ghost { border-color: rgba(255,255,255,.72); background: transparent; }
.dc-about-hero__copy .dc-about-title { font-size: clamp(42px,4vw,54px); line-height: 1.06; }
.dc-about-story__grid .dc-about-title { max-width: 460px; }
/* Old Divi sections remain below the new About blocks on the staging page.
   Hide only those two known legacy sections until they are removed in Builder. */
body.page-id-437 #main-content .et_pb_section_6:not(:has([class*="dc-about"])),
body.page-id-437 #main-content .et_pb_section_7:not(:has([class*="dc-about"])) { display: none !important; }
.dc-about-hero { position: relative; min-height: 650px; overflow: hidden; background: var(--dc-navy-dark); isolation: isolate; }
.dc-about-hero__image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 18%; }
.dc-about-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.91) 0%,rgba(3,20,34,.68) 38%,rgba(3,20,34,.18) 72%,rgba(3,20,34,.06)); content: ""; }
.dc-about-hero__layout { display: grid; min-height: 650px; grid-template-columns: minmax(0,600px) 1fr; align-items: center; padding-block: 70px; }
.dc-about-hero__copy { padding: 42px 0; }
.dc-about-hero__copy .dc-title { font-size: clamp(42px,4vw,48px); line-height: 1.06; }
.dc-about-hero__copy .dc-lead { max-width: 560px; }
.dc-about-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.dc-about-hero__facts { position: absolute; right: max(32px,calc((100vw - 1470px)/2)); bottom: 36px; display: grid; grid-template-columns: repeat(2,minmax(160px,1fr)); overflow: hidden; border: 1px solid rgba(255,255,255,.38); border-radius: 10px; background: rgba(255,255,255,.94); box-shadow: 0 18px 55px rgba(0,0,0,.2); }
.dc-about-hero__fact { padding: 17px 23px; }
.dc-about-hero__fact + .dc-about-hero__fact { border-left: 1px solid var(--dc-line); }
.dc-about-hero__fact strong { display: block; color: var(--dc-navy); font-family: var(--dc-display); font-size: 26px; line-height: 1; }
.dc-about-hero__fact span { display: block; margin-top: 5px; color: var(--dc-muted); font-size: 11px; }

.dc-about-intro { padding: 90px 0; background: #fff; }
.dc-about-intro__grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 85px; align-items: center; }
.dc-about-intro__copy { max-width: 610px; }
.dc-about-intro__text { margin-top: 25px; color: var(--dc-muted); font-size: 15px; line-height: 1.8; }
.dc-about-intro__text p { margin: 0 0 1.1em; }
.dc-about-intro__text p:last-child { margin-bottom: 0; }
.dc-about-intro__media { position: relative; min-height: 480px; }
.dc-about-intro__media img { position: absolute; right: 0; width: 82%; height: 100%; border-radius: 14px; object-fit: cover; object-position: center; box-shadow: var(--dc-shadow); }
.dc-about-intro__note { position: absolute; bottom: 38px; left: 0; width: 250px; padding: 25px; border-radius: 10px; background: var(--dc-navy); box-shadow: 0 18px 45px rgba(8,43,73,.24); color: #fff; }
.dc-about-intro__note strong { display: block; font-family: var(--dc-display); font-size: 25px; line-height: 1.1; }
.dc-about-intro__note span { display: block; margin-top: 9px; color: rgba(255,255,255,.72); font-size: 12px; line-height: 1.55; }

.dc-about-values { padding: 25px 0; background: var(--dc-cream); }
.dc-about-values__grid { display: grid; grid-template-columns: repeat(4,1fr); }
.dc-about-value { display: grid; grid-template-columns: 50px 1fr; gap: 15px; align-items: center; padding: 20px 28px; border-right: 1px solid var(--dc-line); }
.dc-about-value:last-child { border-right: 0; }
.dc-about-value svg { width: 42px; height: 42px; fill: none; stroke: var(--dc-gold); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5; }
.dc-about-value strong { display: block; color: var(--dc-navy); font-size: 13px; line-height: 1.4; }
.dc-about-value span { display: block; margin-top: 3px; color: var(--dc-muted); font-size: 11px; line-height: 1.4; }

.dc-about-team { padding: 92px 0 100px; background: #fff; }
.dc-about-team__head { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: end; margin-bottom: 45px; }
.dc-about-team__head > p { margin: 0; color: var(--dc-muted); font-size: 15px; line-height: 1.75; }
.dc-about-team__grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; }
.dc-about-person { overflow: hidden; border: 1px solid var(--dc-line); border-radius: 12px; background: #fff; box-shadow: 0 14px 38px rgba(8,43,73,.08); transition: transform .25s var(--dc-ease),box-shadow .25s ease; }
.dc-about-person:hover { box-shadow: 0 20px 46px rgba(8,43,73,.13); transform: translateY(-4px); }
.dc-about-person__photo { position: relative; height: 330px; overflow: hidden; background: var(--dc-cream); }
.dc-about-person__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 18%; }
.dc-about-person__photo--lara img { object-position: center; transform: scale(2.8) translate(-27%,5%); transform-origin: center 43%; }
.dc-about-person__biv { position: absolute; right: 14px; bottom: 14px; padding: 7px 10px; border-radius: 5px; background: rgba(255,255,255,.94); color: var(--dc-navy); font-size: 10px; font-weight: 700; letter-spacing: .04em; }
.dc-about-person__body { padding: 24px 22px 22px; }
.dc-about-person h3 { margin: 0; color: var(--dc-navy); font-family: var(--dc-display); font-size: 23px; line-height: 1.14; }
.dc-about-person__role { min-height: 62px; margin: 9px 0 17px; color: var(--dc-muted); font-size: 12px; line-height: 1.55; }
.dc-about-person__links { display: flex; gap: 8px; padding-top: 16px; border-top: 1px solid var(--dc-line); }
.dc-about-person__links a { display: grid; width: 44px; height: 44px; border: 1px solid var(--dc-line); border-radius: 50%; color: var(--dc-navy) !important; font-size: 15px; text-decoration: none !important; place-items: center; transition: .2s ease; }
.dc-about-person__links a:hover,.dc-about-person__links a:focus-visible { border-color: var(--dc-gold); background: var(--dc-gold); color: #fff !important; }

.dc-about-story { padding: 86px 0; background: var(--dc-navy); color: #fff; }
.dc-about-story__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: start; }
.dc-about-story__grid .dc-title { max-width: 460px; }
.dc-about-story__items { display: grid; grid-template-columns: repeat(3,1fr); }
.dc-about-story__item { padding: 8px 28px 10px; border-left: 1px solid rgba(255,255,255,.18); }
.dc-about-story__number { display: block; margin-bottom: 12px; color: var(--dc-gold-light); font-family: var(--dc-display); font-size: 32px; }
.dc-about-story__item strong { display: block; color: #fff; font-family: var(--dc-display); font-size: 20px; line-height: 1.2; }
.dc-about-story__item p { margin: 12px 0 0; color: rgba(255,255,255,.68); font-size: 12px; line-height: 1.65; }

.dc-about-cta { position: relative; min-height: 390px; overflow: hidden; background: var(--dc-navy-dark); isolation: isolate; }
.dc-about-cta__image { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.dc-about-cta::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg,rgba(3,20,34,.94),rgba(3,20,34,.68) 48%,rgba(3,20,34,.16)); content: ""; }
.dc-about-cta__grid { display: grid; min-height: 390px; grid-template-columns: minmax(0,670px) auto; gap: 70px; align-items: center; }
.dc-about-cta__copy p { max-width: 590px; margin: 17px 0 0; color: rgba(255,255,255,.76); font-size: 15px; line-height: 1.65; }
.dc-about-cta__actions { display: grid; min-width: 290px; gap: 11px; }

@media (max-width: 980px) {
    /* Keep long Divi menus reachable on short and narrow screens. */
    body #page-container .et-l--header .et_mobile_menu {
        max-height: calc(100vh - 145px);
        max-height: calc(100dvh - 145px);
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }
    body #page-container .et-l--header .et_mobile_menu li,
    body #page-container .et-l--header .et_mobile_menu li li {
        float: none !important;
        width: 100% !important;
        padding-left: 0 !important;
    }
    body #page-container .et-l--header .et_mobile_menu .sub-menu {
        position: static !important;
        width: 100% !important;
        padding: 0 !important;
    }
    body #page-container .et-l--header .et_mobile_menu .sub-menu a {
        width: 100% !important;
        padding-left: 30px !important;
    }
    .dc-hero__layout,
    .dc-page-hero__layout,
    .dc-intro__grid,
    .dc-feature__grid,
    .dc-icon-section__grid,
    .dc-process__head,
    .dc-opportunity__card,
    .dc-contact__layout,
    .dc-expertise__grid,
    .dc-service-row__grid,
    .dc-offices__intro,
    .dc-vacancy__grid,
    .dc-spontaneous__card,
    .dc-podcast-row,
    .dc-project-intro__grid,
    .dc-project-office__grid,
    .dc-project-closing__grid,
    .dc-home-legal__grid,
    .dc-guide__card,
    .dc-split__grid,
    .dc-services__layout,
    .dc-trust-band__grid,
    .dc-closing__grid { grid-template-columns: 1fr; }
    .dc-hero { min-height: auto; }
    .dc-hero__trust { position: static; grid-column: 1/-1; margin-top: 22px; }
    .dc-hero-review { width: min(100%,430px); min-width: 0; }
    .dc-trust-pill { min-width: 0; }
    .dc-trust-pill:nth-child(even) { margin-right: 0; }
    .dc-property-intro__row { grid-template-columns: 1fr; }
    body:has(.dc-property-anchor) .toolset_divi_view .card-deck { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-property-intro__row .dc-btn { justify-self: start; }
    .dc-split--reverse .dc-split__media { order: initial; }
    .dc-split__media { min-height: 400px; }
    .dc-usps__grid { grid-template-columns: repeat(2,1fr); }
    .dc-usp:nth-child(2) { border-right: 0; }
    .dc-usp:nth-child(-n+2) { border-bottom: 1px solid var(--dc-line); }
    .dc-closing__actions { min-width: 0; justify-self: start; }
    .dc-footer__grid { grid-template-columns: repeat(2,1fr); }
    .dc-page-hero__metrics { justify-self: start; }
    .dc-feature--reverse .dc-feature__media { order: initial; }
    .dc-card-services__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-process__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 0; }
    .dc-process-step:nth-child(even) { border-right: 0; }
    .dc-icon-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-expertise__image { min-height: 360px; }
    .dc-service-row--reverse .dc-service-row__media { order: initial; }
    .dc-values__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-value:nth-child(2) { border-right: 0; }
    .dc-value:nth-child(-n+2) { border-bottom: 1px solid var(--dc-line); }
    .dc-spontaneous__card .dc-btn { justify-self: start; }
    .dc-podcast-row { grid-template-columns: 130px 1fr; }
    .dc-podcast-row__cover { width: 130px; }
    .dc-podcast-row__player { grid-column: 2; }
    .dc-article-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-project-usps__grid { grid-template-columns: 1fr; }
    .dc-project-usp { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
    .dc-project-usp:last-child { border-bottom: 0; }
    .dc-reference-mosaic { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-rent-feature__grid,
    .dc-rent-contact-grid > .et_pb_row,
    .dc-rent-contact-grid .dc-rent-contact-grid__row { grid-template-columns: 1fr !important; }
    .dc-rent-feature--reverse .dc-rent-feature__media { order: initial; }
    .dc-rent-perks { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .dc-rent-perk:nth-child(2) { border-right: 0; }
    .dc-rent-perk:nth-child(-n+2) { border-bottom: 1px solid var(--dc-line); }
    .dc-refs-ratings__card { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 0; }
    .dc-refs-ratings__card > h2 { align-self: center; }
    .dc-refs-ratings__link { justify-self: start; }
    .dc-refs-section-head { grid-template-columns: 1fr; gap: 22px; }
    .dc-refs-testimonials__grid { gap: 20px; overflow-x: auto; grid-auto-columns: minmax(300px,44vw); grid-template-columns: none; grid-auto-flow: column; padding: 5px 2px 25px; scroll-snap-type: x mandatory; }
    .dc-refs-quote { scroll-snap-align: start; }
    .dc-refs-nav--prev { right: auto; left: 10px; }
    .dc-refs-nav--next { right: 10px; left: auto; }
    .dc-refs-projects__grid { gap: 20px; }
    .dc-refs-closing__grid { grid-template-columns: 1fr; gap: 25px; }
    .dc-refs-closing__actions { min-width: 0; justify-self: start; }
    .dc-about-hero,
    .dc-about-hero__layout { min-height: 620px; }
    .dc-about-hero__layout { grid-template-columns: 1fr; padding-bottom: 120px; }
    .dc-about-hero__copy { max-width: 590px; }
    .dc-about-hero__facts { right: 17px; bottom: 22px; left: 17px; }
    .dc-about-intro__grid,
    .dc-about-team__head,
    .dc-about-story__grid,
    .dc-about-cta__grid { grid-template-columns: 1fr; }
    .dc-about-intro__grid,
    .dc-about-story__grid { gap: 45px; }
    .dc-about-team__grid { grid-template-columns: repeat(2,1fr); }
    .dc-about-values__grid { grid-template-columns: repeat(2,1fr); }
    .dc-about-value:nth-child(2) { border-right: 0; }
    .dc-about-value:nth-child(-n+2) { border-bottom: 1px solid var(--dc-line); }
    .dc-about-cta__grid { gap: 30px; padding-block: 65px; }
    .dc-about-cta__actions { min-width: 0; justify-self: start; }
    body.page-id-15187 .et_pb_column:has(> .et_pb_code .dc-contact):has(> .dc-contact-native-form) {
        grid-template-columns: 1fr;
    }
    body.page-id-15187 .et_pb_column:has(> .et_pb_code .dc-contact):has(> .dc-contact-native-form) > .et_pb_code:has(.dc-contact) {
        grid-column: 1;
        grid-row: 1;
    }
    body.page-id-15187 .et_pb_column:has(> .et_pb_code .dc-contact):has(> .dc-contact-native-form) > .dc-contact-native-form {
        grid-column: 1;
        grid-row: 2;
    }
}

@media (max-width: 680px) {
    .dc-container { width: min(calc(100% - 28px),var(--dc-container)); }
    .dc-about-container { width: min(calc(100% - 28px),var(--dc-container)); }
    :is(.dc-page-hero,.dc-rent-hero,.dc-editorial-hero) .dc-page-hero__copy .dc-title,
    .dc-refs-hero .dc-title {
        font-size: clamp(33px,9vw,38px);
        line-height: 1.07;
        overflow-wrap: normal;
        word-break: normal;
    }
    .dc-hero__card .dc-title { font-size: clamp(36px,9.8vw,40px); }
    .dc-hero__card { padding: 28px 22px; border-radius: 18px; }
    .dc-hero__stats { grid-template-columns: 1fr; }
    .dc-hero-review { grid-template-columns: 1fr; }
    .dc-hero-review__item + .dc-hero-review__item { border-top: 1px solid var(--dc-line); border-left: 0; }
    .dc-trust-pill { padding: 11px; }
    .dc-guide__image { min-height: 220px; }
    body:has(.dc-property-anchor) .toolset_divi_view .card-deck { width: min(calc(100% - 28px),var(--dc-container)); grid-template-columns: 1fr; }
    .dc-services__grid { grid-template-columns: 1fr; }
    .dc-services__image { min-height: 330px; }
    .dc-trust-band__grid { gap: 28px; }
    .dc-footer__grid { grid-template-columns: 1fr; }
    .dc-page-hero__metrics { padding-inline: 22px; }
    .dc-feature__media { min-height: 340px; }
    .dc-benefits--columns { grid-template-columns: 1fr; }
    .dc-card-services__grid,
    .dc-process__grid { grid-template-columns: 1fr; }
    .dc-process-step { min-height: 0; padding: 0 0 28px; border-right: 0; border-bottom: 1px solid var(--dc-line); }
    .dc-process-step:last-child { border-bottom: 0; }
    .dc-opportunity__copy { padding: 10px 4px; }
    .dc-contact__form { padding: 20px; }
    .dc-offices__grid { grid-template-columns: 1fr; }
    .dc-appointment-strip { grid-template-columns: 48px 1fr; }
    .dc-appointment-strip .dc-btn { grid-column: 1/-1; }
    .dc-contact-native-form .wpcf7-form { display: block; }
    .dc-values__grid { grid-template-columns: 1fr; }
    .dc-value { border-right: 0; border-bottom: 1px solid var(--dc-line); }
    .dc-value:last-child { border-bottom: 0; }
    .dc-vacancy__media img { min-height: 340px; }
    .dc-vacancy-video { height: 340px; }
    .dc-newsletter-head__card { grid-template-columns: 1fr; }
    .dc-newsletter-head .dc-title { font-size: clamp(27px,7.5vw,32px); }
    .dc-newsletter-native-form.et_pb_section > .et_pb_row {
        width: min(calc(100% - 28px),1280px) !important;
        padding: 25px 22px !important;
    }
    .dc-newsletter-native-form.et_pb_section :is(.et_pb_module,.et_pb_module_inner,.dipe-cf7-container,.dipe-cf7,.cf7m-row,.cf7m-col) {
        max-width: 100%;
        min-width: 0;
    }
    .dc-newsletter-native-form.et_pb_section .wpcf7-form input[type=submit] { max-width: 100%; }
    .dc-newsletter-native-form .wpcf7-form { grid-template-columns: 1fr; }
    .dc-newsletter-native-form .wpcf7-form > .cf7m-row:first-of-type,
    .dc-newsletter-native-form .wpcf7-form > .cf7m-row:has(input[type=submit]) { grid-row: auto; grid-column: 1; }
    .dc-podcast-row { grid-template-columns: 92px 1fr; gap: 16px; }
    .dc-podcast-row__cover { width: 92px; }
    .dc-podcast-row__meta,
    .dc-podcast-row__description { margin-left: 0; }
    .dc-podcast-row__heading { grid-template-columns: 30px 1fr; gap: 8px; }
    .dc-podcast-row__number { font-size: 20px; }
    .dc-podcast-row__player { grid-column: 1/-1; }
    .dc-article-grid { grid-template-columns: 1fr; }
    .dc-reference-mosaic { grid-template-columns: 1fr; }
    .dc-reference-photo--wide { grid-column: auto; }
    .dc-project-legal__grid { grid-template-columns: 1fr; }
    .dc-home-legal__item { grid-template-columns: 46px 1fr; }
    .dc-home-legal__item svg { width: 40px; height: 40px; }
    .dc-rent-hero .dc-page-hero__layout { padding-block: 48px 70px; }
    .dc-rent-feature { padding: 38px 0; }
    .dc-rent-feature__media { min-height: 300px; }
    .dc-rent-feature__media img { height: 300px; }
    .dc-rent-feature__heading { grid-template-columns: 54px 1fr; gap: 14px; }
    .dc-rent-feature__badge { width: 52px; height: 52px; }
    .dc-rent-feature__badge svg { width: 28px; height: 28px; }
    .dc-rent-contact-grid > .et_pb_row,
    .dc-rent-contact-grid .dc-rent-contact-grid__row { width: min(calc(100% - 28px),1470px) !important; }
    .dc-rent-closing .dc-closing__actions { width: 100%; }
    .dc-refs-hero { min-height: 540px; }
    .dc-refs-hero__background { object-position: 62% center; }
    .dc-refs-hero::after { background: linear-gradient(90deg,rgba(3,20,34,.92),rgba(3,20,34,.52)); }
    .dc-refs-ratings { padding-bottom: 42px; }
    .dc-refs-ratings__card { grid-template-columns: 1fr; padding: 30px 24px; }
    .dc-refs-rating { padding: 22px 0; border-top: 1px solid var(--dc-line); border-left: 0; }
    .dc-refs-ratings__link { width: 100%; }
    .dc-refs-testimonials { padding-top: 6px; }
    .dc-refs-testimonials__grid { grid-auto-columns: calc(100vw - 56px); }
    .dc-refs-nav { top: auto; bottom: 4px; width: 42px; height: 42px; }
    .dc-refs-projects__head { align-items: flex-start; flex-direction: column; }
    .dc-refs-projects__grid { grid-template-columns: 1fr; }
    .dc-refs-project__media { height: 235px; }
    .dc-refs-closing__background { object-position: 58% center; }
    .dc-refs-closing::after { background: rgba(3,20,34,.78); }
    .dc-refs-closing__actions { width: 100%; }
    .dc-about-hero,
    .dc-about-hero__layout { min-height: 650px; }
    :is(.dc-about-intro,.dc-about-team,.dc-about-story,.dc-about-cta) :is(.dc-title,.dc-about-title) {
        font-size: clamp(25px,6.5vw,28px);
        line-height: 1.16;
    }
    .dc-about-hero__image { object-position: 59% center; }
    .dc-about-hero::after { background: linear-gradient(90deg,rgba(3,20,34,.93),rgba(3,20,34,.62)); }
    .dc-about-hero__layout { padding-block: 45px 150px; }
    .dc-about-hero__copy :is(.dc-title,.dc-about-title) { font-size: clamp(32px,8.3vw,36px); }
    .dc-about-hero__actions { align-items: stretch; flex-direction: column; }
    .dc-about-hero__actions :is(.dc-btn,.dc-about-btn) { width: 100%; }
    .dc-about-hero__facts { grid-template-columns: 1fr; }
    .dc-about-hero__fact + .dc-about-hero__fact { border-top: 1px solid var(--dc-line); border-left: 0; }
    .dc-about-intro { padding: 66px 0; }
    .dc-about-intro__grid { gap: 38px; }
    .dc-about-intro__media { min-height: 410px; }
    .dc-about-intro__media img { width: 92%; height: 355px; }
    .dc-about-intro__note { bottom: 0; width: 230px; }
    .dc-about-values__grid,
    .dc-about-team__grid,
    .dc-about-story__items { grid-template-columns: 1fr; }
    .dc-about-value { border-right: 0; border-bottom: 1px solid var(--dc-line); }
    .dc-about-value:last-child { border-bottom: 0; }
    .dc-about-team { padding: 68px 0; }
    .dc-about-team__head { gap: 22px; }
    .dc-about-person__photo { height: 390px; }
    .dc-about-person__role { min-height: 0; }
    .dc-about-story { padding: 66px 0; }
    .dc-about-story__items { gap: 25px; }
    .dc-about-story__item { padding: 0 0 24px 20px; }
    .dc-about-cta__actions { width: 100%; }
}

@media (max-width: 480px) {
    .dc-hero__actions,
    .dc-split__actions { align-items: stretch; flex-direction: column; }
    .dc-btn { width: 100%; }
    .dc-usps__grid { grid-template-columns: 1fr; }
    .dc-usp { border-right: 0; border-bottom: 1px solid var(--dc-line); }
    .dc-usp:last-child { border-bottom: 0; }
    .dc-rent-perks { grid-template-columns: 1fr; }
    .dc-rent-perk { min-height: 0; grid-template-columns: 48px 1fr; align-items: center; justify-items: start; padding: 13px 4px; border-right: 0; border-bottom: 1px solid var(--dc-line); text-align: left; }
    .dc-rent-perk:last-child { border-bottom: 0; }
    .dc-rent-hero .dc-page-hero__copy .dc-title { font-size: 36px; }
}

@media (prefers-reduced-motion: reduce) {
    .dc-block *,
    .dc-block::before,
    .dc-block::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
