/* ADN-R0003-WC02 v001. Role-specific additions; source styles remain intact. */
@font-face{font-family:"Adin Condor";src:url("../fonts/adin-condor-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Adin Condor";src:url("../fonts/adin-condor-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
:root{--adn-reading:#2e4f3f;--adn-functional:#315344;--adn-header-current:0px;--adin-header-space:0px}
html{scroll-padding-top:var(--adn-anchor-offset,16px)}
body{font-family:Georgia,serif;font-weight:400;color:var(--adn-reading);font-synthesis:none;letter-spacing:-.1px}
body p,.approved-reading p,.estate-reading p,.repair-reading p,.metal-prices-intro>[data-source-paragraph],.why-point p,.discretion-note p{color:var(--adn-reading)}
body h1,body h2,.appointment-dialog h2{font-family:"Adin Condor",Arial,sans-serif;font-weight:400;color:var(--adn-functional);letter-spacing:0}
body h1{white-space:normal;overflow-wrap:break-word;text-wrap:balance}
body h3,.approved-reading h2,.estate-subheading,.service-section h3,.discretion-note h3,.why-point strong,.step strong,.visit-information-item strong,.appointment-field,.section-label,.eyebrow,.hero-eyebrow,.credential-title,.footer-trust-name{font-family:Georgia,serif;font-weight:700;color:var(--adn-reading);letter-spacing:0}
.approved-reading h2{font-size:19px;line-height:1.4}
.approved-reading p,.estate-reading p,.repair-reading p{font-size:18px;line-height:1.65;letter-spacing:-.1px}
.why-point p,.discretion-note p{line-height:1.65}
.offer-item strong,.related-link{font-family:Georgia,serif;font-weight:400;color:var(--adn-reading)}
.offer-item p{color:var(--adn-reading)}
body .phone-action,body .appointment-link,body .appointment-submit{font-family:"Adin Condor",Arial,sans-serif;font-weight:500;letter-spacing:0}
body .phone-action,body .appointment-link{color:var(--adn-functional);font-size:17px}
body .copy-link,body .all-prices-link,body .visit-route,body .service-link,.appointment-contact a{font-family:Georgia,serif;font-weight:400;color:var(--adn-reading)}
body [data-price-value]{font-family:"Adin Condor",Arial,sans-serif;font-weight:500;color:var(--adn-functional);letter-spacing:0}
.metal-price-table strong{font-family:Georgia,serif;font-weight:700}
.metal-price-group h2{font-family:Georgia,serif;font-weight:700;font-size:19px;color:var(--adn-reading)}
body [data-price-unavailable]{font-family:Georgia,serif;font-weight:400;color:var(--adn-reading)}
.footer-trust-person{font-weight:400}
.site-footer .footer-column h3{font-family:Georgia,serif;font-weight:700;color:var(--adn-reading)}
.site-footer .footer-main,.site-footer .footer-main a{color:var(--adn-reading)}
.site-footer .footer-bottom p{color:inherit}
.footer-brand-logo img{height:auto;object-fit:contain}
.appointment-dialog input,.appointment-dialog select{font-family:Georgia,serif;font-weight:400;min-width:0}
body :focus-visible{outline:2px solid #315344;outline-offset:4px}
body [id]{scroll-margin-top:0}
body #page-top{scroll-margin-top:0}
/* Shared header. AJ behaviour, ADN content; 1180px is an explicit trial. */
.adn-header{--header-unit:calc(13.00312px + .208117vw);position:fixed;inset:0 0 auto;z-index:100;display:grid;grid-template-columns:minmax(0,1fr);background:#fff;color:#315344;border-bottom:1px solid #dfe5e1;font-family:"Adin Condor",Arial,sans-serif;font-weight:400;letter-spacing:0;transition:none;overflow-anchor:none}
.adn-header *{box-sizing:border-box}
.adn-header .adn-brand{grid-column:1;grid-row:2;justify-self:center;padding:39px 24px 15px;display:block;line-height:0;max-width:none;width:auto;margin:0}
.adn-header .adn-brand img{display:block;width:105px;height:auto;max-width:none;aspect-ratio:101/32}
.adn-header .adn-actions{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:44px;padding:0 28px;background:#f5f7f7}
.adn-header button,.adn-header select{font-family:inherit;font-weight:400;color:inherit;cursor:pointer;border:0;border-radius:0;background:transparent;margin:0;box-shadow:none}
.adn-header .search-button,.adn-header .search-close,.adn-header .menu-button{width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;align-items:center;justify-content:center;flex:none;position:relative}
.adn-header .search-button,.adn-header .search-close{display:inline-flex}
.adn-header .search-button svg,.adn-header .search-close svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.adn-header .language{display:block;width:64px;min-width:64px;min-height:44px;padding:0 6px;font-size:16px;line-height:1.4}
.adn-header button:hover,.adn-header select:hover{background:#e7eeea}
.adn-header .menu-button{display:none}
.adn-header .menu-button span,.adn-header .menu-button span::before,.adn-header .menu-button span::after{display:block;position:absolute;width:22px;height:1px;background:currentColor;left:11px;top:21px;transform:none;content:""}
.adn-header .menu-button span::before{left:0;top:-7px}.adn-header .menu-button span::after{left:0;top:7px}
.adn-header .menu-button[aria-expanded=true] span{background:transparent}
.adn-header .menu-button[aria-expanded=true] span::before{top:0;transform:rotate(45deg)}
.adn-header .menu-button[aria-expanded=true] span::after{top:0;transform:rotate(-45deg)}
.adn-header .adn-navigation{grid-column:1;grid-row:3;min-width:0;display:block;border:0;background:transparent}
.adn-header .main-navigation{width:100%;max-width:calc(90 * var(--header-unit));min-height:0;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 30px 28px;font:400 calc(1.2 * var(--header-unit))/1.4 "Adin Condor",Arial,sans-serif;text-align:left}
.adn-header .main-navigation a{display:flex;align-items:center;min-height:44px;margin:0;padding:5px 0;font:inherit;letter-spacing:0;white-space:nowrap;text-transform:uppercase;color:#315344;text-decoration:none;border:0}
.adn-header .main-navigation .collection-nav-link{color:#315344}
.adn-header .main-navigation a:hover{text-decoration:underline;text-underline-offset:6px}
.adn-header :focus-visible{outline:2px solid #315344;outline-offset:3px}
.adn-header .site-search-panel{position:static;inset:auto;grid-column:1/-1;grid-row:4;width:100%;padding:12px 24px;border-top:1px solid #dfe5e1;background:#f5f7f7;max-height:var(--adn-panel-height,50dvh);overflow-y:auto}
.adn-header .site-search-panel[hidden]{display:none}
.adn-header .site-search-form{width:100%;max-width:760px;display:flex;align-items:center;gap:8px;margin:0 auto;padding:0}
.adn-header #site-search-input{flex:1;min-width:0;width:0;height:44px;padding:10px;border:1px solid #97aaa0;font:400 16px/1.4 Georgia,serif;color:#2e4f3f;background:#fff}
.adn-header #site-search-input::placeholder{color:#56675f;opacity:1}
.adn-header-space{height:var(--adn-expanded-height,0px);overflow-anchor:none}
@media(min-width:1441px){.adn-header{--header-unit:calc(10px + .416667vw)}}
@media(min-width:1180px){
 .adn-header.is-compact{grid-template-columns:80px minmax(0,1fr) auto;column-gap:16px;align-items:center;padding:10px 24px;background:#f5f7f7}
 .adn-header.is-compact .adn-brand{grid-column:1;grid-row:1;padding:0;justify-self:start}
 .adn-header.is-compact .adn-brand img{width:76px}
 .adn-header.is-compact .adn-navigation{grid-column:2;grid-row:1}
 .adn-header.is-compact .main-navigation{padding:0;gap:10px;font-size:14px;max-width:100%}
 .adn-header.is-compact .adn-actions{grid-column:3;grid-row:1;padding:0;gap:4px;background:transparent}
 .adn-header.is-compact .site-search-panel{grid-row:2;padding:12px 0 0}
}
@media(width < 1180px){
 .adn-header{grid-template-columns:auto minmax(0,1fr);gap:0 16px;padding:18px 24px;background:#f5f7f7}
 .adn-header .adn-brand{grid-column:1;grid-row:1;justify-self:start;align-self:center;padding:0}
 .adn-header .adn-brand img{width:101px}
 .adn-header .adn-actions{grid-column:2;grid-row:1;justify-self:end;padding:0;gap:4px;background:transparent}
 .adn-header .menu-button{display:inline-flex}
 .adn-header .adn-navigation{display:none;grid-column:1/-1;grid-row:2;max-height:var(--adn-panel-height,50dvh);overflow-y:auto;overscroll-behavior:contain}
 .adn-header .adn-navigation.is-open{display:block}
 .adn-header .main-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px;padding:16px 4px 4px;font-size:16px;max-width:none}
 .adn-header .main-navigation a{white-space:normal;padding:10px 0;overflow-wrap:break-word}
 .adn-header .site-search-panel{grid-row:3;padding:12px 0 0}
}
@media(width < 480px){
 .adn-header{grid-template-columns:76px minmax(0,1fr);gap:0 8px;padding:14px 12px}
 .adn-header .adn-brand img{width:76px}.adn-header .adn-actions{gap:2px}
}
/* R0014 v002: retain the shared single-row mobile header below 375px too. */
@media(max-height:450px){.adn-header{position:relative}.adn-header-space{display:none}.adn-header .adn-navigation,.adn-header .site-search-panel{max-height:none;overflow:visible}}
@media(max-width:560px){.approved-reading p,.estate-reading p,.repair-reading p{font-size:17px}.approved-reading h2,.metal-price-group h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Explicit overrides for stronger legacy component selectors. */
body .hero-copy h1,body .category-hero h1,body .service-hero h1,body .service-title{color:var(--adn-functional)}
body .why-discretion h3,body .step h3,body .visit-information h3,body .footer-trust .footer-trust-heading,body .credentials-eyebrow{font-family:Georgia,serif;font-weight:700;color:var(--adn-reading)}
body .why-discretion p,body .why-introduction{font-family:Georgia,serif;color:var(--adn-reading);line-height:1.65}
body .footer-trust .footer-trust-name{font-family:Georgia,serif;font-weight:700;color:var(--adn-reading)}
body .footer-trust .footer-trust-person{font-family:Georgia,serif;font-weight:400}
body .offer-item strong{font-family:Georgia,serif;font-weight:400;color:var(--adn-reading)}
body .why-point strong{font-family:Georgia,serif;font-weight:700;color:var(--adn-reading)}
body .appointment-field{font-family:Georgia,serif;font-weight:700;color:var(--adn-reading)}
body .site-footer .footer-bottom p{color:inherit}

@media(min-width:1180px) and (max-width:1279px){.adn-header:not(.is-compact) .main-navigation{font-size:16px;gap:10px;padding-inline:24px}}

/* v002: the first existing contact band stays beneath the compact header. */
.adn-contact-space{height:0;overflow-anchor:none}
body .contact-band.adn-contact-pinned{position:fixed;top:var(--adn-contact-top,0px);left:0;right:0;width:100%;z-index:99;margin:0;box-sizing:border-box}
/* v003: isolate the shared menu icon from the original homepage pseudo-elements. */
.adn-header .menu-button::before,.adn-header .menu-button::after{content:none;display:none}
.adn-header .menu-button span,.adn-header .menu-button span::before,.adn-header .menu-button span::after{margin:0;opacity:1;transition:none}

/* R0005: discreet, keyboard-accessible reference to the approved price explanation. */
body .price-context{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:0 10px;flex-basis:100%;margin:6px 0 0;font:400 14px/1.6 Georgia,serif;letter-spacing:0;text-transform:none;color:#315344}
body .price-context a{display:inline-block;min-height:32px;padding:5px 0;color:#315344;font:inherit;text-decoration:underline;text-underline-offset:3px}
body .metal-prices-status .price-context{justify-content:flex-start}
body .price-terms{margin-top:32px;padding-top:22px;border-top:1px solid #dfe5e1}
body .price-terms p{font-size:16px;line-height:1.65}
body .price-terms h2{font:700 19px/1.4 Georgia,serif;color:#2e4f3f}

/* R0006: quiet shared timing, stable numerals; no live announcement each second. */
body .price-timing{flex-basis:100%;width:100%;margin:6px 0 0;font:400 14px/1.6 Georgia,serif;color:#315344;letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}
body .price-timing span{display:block}
body .price-timing [data-price-next]{min-height:1.6em}
body .price-timing[hidden]{display:none}
body .adn-primary-contact{margin:0}

/* R0008: share each row with invisible, non-accessible status copies.
   Intrinsic wrapping reserves exactly the tallest supported text per row,
   using the real font and available width; status changes cannot grow the row. */
body .price-timing{display:grid;grid-template-columns:minmax(0,1fr)}
body .price-timing [data-price-calculated],body .price-timing .price-timing-reserve--calculated{grid-area:1/1}
body .price-timing [data-price-next],body .price-timing .price-timing-reserve--next{grid-area:2/1}
body .price-timing .price-timing-reserve{visibility:hidden;pointer-events:none;user-select:none}

/* R0009: the primary band always occupies one measured, stable flow slot. */
.adn-contact-space{position:relative;overflow-anchor:none}
body .adn-contact-space>.contact-band:not(.adn-contact-pinned){position:absolute;top:0;left:0;right:0;width:100%;box-sizing:border-box}
body .price-return{display:inline-block;min-height:32px;padding:5px 0;margin-top:4px;font:400 14px/1.6 Georgia,serif;color:#315344;text-decoration:underline;text-underline-offset:3px}

/* R0009 v003: one shared price grouping, matching the accepted homepage proof.
   Narrow cards use the small arrangement at their real available width. */
body .price-timing{font:400 13px/1.4 Georgia,serif;font-variant-numeric:tabular-nums;margin:0}
body .price-timing span{font:inherit;color:inherit;letter-spacing:0}
body .price-timing [data-price-next]{min-height:0}
body .adin-price-block{container:price-block / inline-size;display:block;color:#315344;text-align:center}
body #prijsblok-home-1{width:100%;padding:8px 0 4px}
body #prijsblok-juwelen,body #prijsblok-goud{padding-top:20px;padding-bottom:16px}
body .adin-price-block .price-summary{display:flex;justify-content:center;align-items:center;gap:12px 24px}
body .adin-price-block .price-summary[hidden]{display:none}
body .adin-price-block .price-quote{font:400 16px/1.6 Georgia,serif;white-space:nowrap;color:#315344}
body .adin-price-block .price-quote span{font:inherit;color:inherit}
body .adin-price-block .price-quote strong{font:500 20px/1.3 "Adin Condor",Georgia,serif}
body .adin-price-block .price-timing{width:max-content;max-width:100%;flex-basis:auto;text-align:center;grid-template-columns:max-content;gap:0;color:#315344;margin-inline:0}
body #prijzentabel>.price-timing{margin-inline:auto}
body .adin-price-block .price-timing[hidden]{display:none}
body .adin-price-block .price-links{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:4px 28px;margin-top:10px}
body .adin-price-block .price-links .all-prices-link,body .adin-price-block .price-links .price-link{margin:0;font-size:14px;line-height:1.6;max-width:100%;white-space:normal;text-align:center}
body .adin-price-block .price-links .price-context{flex-basis:auto;margin:0;justify-content:center}
body .adin-price-block .price-context a{padding:2px 0;min-height:28px}
@media(max-width:1179px){
 body .adin-price-block .price-summary{flex-direction:column;gap:10px}
 body .adin-price-block .price-timing{grid-template-columns:max-content max-content;gap:0 24px}
 body .adin-price-block .price-timing [data-price-next],body .adin-price-block .price-timing .price-timing-reserve--next{grid-area:1/2}
 /* Let the lower homepage card use the available width at middle sizes. */
 body .compact-prices-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "price" "copy";gap:1.5rem}
}
@container price-block (max-width:740px){
 body .adin-price-block .price-summary{flex-direction:column;gap:10px}
 body .adin-price-block .price-timing{grid-template-columns:max-content max-content;gap:0 24px}
 body .adin-price-block .price-timing [data-price-next],body .adin-price-block .price-timing .price-timing-reserve--next{grid-area:1/2}
}
@container price-block (max-width:560px){
 body .adin-price-block .price-quote{white-space:normal;text-align:center}
 body .adin-price-block .price-quote strong{display:block;margin-top:4px}
 body .adin-price-block .price-timing{width:100%;grid-template-columns:minmax(0,1fr);gap:2px}
 body .adin-price-block .price-timing [data-price-next],body .adin-price-block .price-timing .price-timing-reserve--next{grid-area:2/1}
 body .adin-price-block .price-links{flex-direction:column;align-items:center;gap:4px}
}

/* R0014 v003: equal footer stages align image centres and name starts.
   Individual widths preserve each native aspect ratio; the shared stage shrinks
   within narrow columns. Existing 720px stacking and separators are unchanged. */
body .footer-trust .footer-trust-logo-stage{display:flex;justify-content:center;align-items:center;width:128px;max-width:100%;height:96px;flex:0 0 96px}
body .footer-trust .footer-trust-logo{display:block;max-width:100%;max-height:100%;height:auto;object-fit:contain}
body .footer-trust .footer-trust-logo--amb{width:112px}
body .footer-trust .footer-trust-logo--kgso{width:128px}
body .footer-trust .footer-trust-logo--ars{width:80px}

/* R0014 v004: user's approval extends the AMB replacement to the upper
   homepage recognition band. Match footer logo sizes; remove legacy cropping. */
body .credentials-band .credential-logo-stage{width:128px;max-width:100%;height:96px;flex:0 0 96px;align-items:center;justify-content:center;overflow:visible}
body .credentials-band .credential-logo{display:block;max-width:100%;max-height:100%;height:auto;object-fit:contain;object-position:center}
body .credentials-band .credential-logo--amb{width:112px}
body .credentials-band .credential-logo--kgso{width:128px}
body .credentials-band .credential-logo--ars{width:80px}
