:root {
  --ink: #171717 !important;
  --forest: #242424 !important;
  --mint: #c7a56a !important;
  --paper: #f4f1eb !important;
  --line: rgba(23, 23, 23, .14) !important;
  --muted: #6f6a62 !important;
}

/* Privacyvriendelijke lokale typografie en rustige nummerloze kaarten */
body, button, input, textarea, select { font-family: Arial, Helvetica, sans-serif; }
.brand, .hero h1, .section h2, .service h3, .audience-list strong,
.process h3, .why-grid h3, .why aside p, .accordion summary,
.cookie b, .service-meta b { font-family: Arial, Helvetica, sans-serif; }
.service h3 { margin-top: 0; }
.process h3 { margin-top: 12px; }
.concept-box a { width: fit-content; }
.concept-box a:hover, .concept-box a:focus-visible { color: #fff; text-decoration: underline; }
.social-links { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 12px; }
.social-links a { color: #d8bc88; font-weight: 600; }

body { background: var(--paper); }
.skip { left: 1rem; top: -10rem; }
.skip:focus { top: 1rem; }
.topbar { background: rgba(19, 19, 19, .96); border-bottom-color: rgba(255,255,255,.1); }
.brand { letter-spacing: -.025em; font-size: 20px; }
.brand > span:last-child > span { color: #c7a56a; }
.brand-mark { border: 0; background: #c7a56a; color: #151515; transform: none; font-weight: 700; }
nav a:hover, .eyebrow, .hero h1 em, .hero-points li::before { color: #d8bc88; }
.nav-cta { border-color: #c7a56a; color: #ead6ad; }
.hero-shade { background: linear-gradient(90deg,rgba(12,12,12,.95) 0%,rgba(12,12,12,.78) 44%,rgba(12,12,12,.16) 80%),linear-gradient(0deg,rgba(12,12,12,.55),transparent 48%); }
.primary { background: #c7a56a; color: #151515; }
.primary:hover { background: #ddc18d; }
.eyebrow.dark, .audience-list b, .process li span { color: #8b6a35; }
.services { background: #222; }
.section-head > p { color: #c9c5bd; }
.service-grid { gap: 16px; }
.service { background: #2a2a2a; border: 1px solid #414141; margin: 0; min-height: 390px; border-radius: 2px; }
.service.featured { background: #e6dfd2; color: #171717; }
.featured .number { color: #8b6a35; }
.featured p { color: #575149; }
.tag { background: #fff; color: #68502e; }
.service-meta { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 4px 0 18px; padding: 12px 0; border-top: 1px solid rgba(199,165,106,.35); border-bottom: 1px solid rgba(199,165,106,.35); }
.service-meta b { color: #e1c58f; font: 600 16px 'Manrope'; }
.featured .service-meta b { color: #6e5228; }
.service-meta span { color: #aaa49a; font-size: 12px; white-space: nowrap; }
.featured .service-meta span { color: #6d675e; }
.price-disclaimer { max-width: 850px; margin: 30px 0 0; color: #aaa49a; font-size: 12px; }
.audience { background: #ece8e0; }
.why { background: #181818; }
.why-grid { border-top-color: #3c3934; }
.why-grid article+article { border-left-color: #3c3934; }
.why-grid span { color: #c7a56a; }
.why aside { background: #d8c29c; }
.why aside i { color: #74664f; }
.contact { background: #292724; }
.concept-box { border-left-color: #c7a56a; color: #d1ccc3; }
.concept-box b { color: #d8bc88; }
input:focus, textarea:focus { border-color: #8b6a35; }
footer { background: #141414; }
.footer-bottom { border-top-color: #34312c; }
.partners { background:#e4ddcf; display:grid; grid-template-columns:.85fr 1fr; gap:90px; }
.partners h2,.local-seo h2 { font-size:clamp(40px,5vw,68px); }
.partners>div>p { color:#58534b; max-width:540px; margin-bottom:30px; }
.partners ol { list-style:none; padding:0; margin:0; border-top:1px solid var(--line); }
.partners li { display:flex; gap:20px; padding:22px 0; border-bottom:1px solid var(--line); }
.partners li>span { color:#8b6a35; font-size:12px; }
.partners h3 { font:600 19px 'Manrope'; margin:0 0 4px; }
.partners li p { margin:0; color:#625d55; }
.local-seo { background:#f4f1eb; display:grid; grid-template-columns:.55fr 1fr; gap:80px; }
.local-seo .eyebrow { grid-column:1/-1; margin-bottom:-35px; }
.local-seo>div p { color:#5d5850; font-size:17px; }
.contact select { width:100%; background:transparent; border:0; border-bottom:1px solid #9ea7a3; padding:11px 0; border-radius:0; }
.hp { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.form-status { min-height:1.5em; margin:12px 0 0; font-size:13px; color:#785c2d; }
.cookie a { text-decoration:underline; }

@media (max-width: 900px) {
  nav { background: #171717; }
  .service-grid { gap: 12px; }
  .partners,.local-seo { grid-template-columns:1fr; gap:45px; }
  .local-seo .eyebrow { grid-column:auto; margin-bottom:-20px; }
}

@media (max-width: 580px) {
  .service { min-height: auto; padding: 28px 24px; }
  .service.featured { min-height: auto; }
  .service-meta { align-items: flex-start; flex-direction: column; gap: 2px; }
}

/* Refined visual system */
body { font-size: 16px; line-height: 1.65; letter-spacing: -.005em; }
.hero-photo { background-image: url('assets/hero-urus-realistic-v2.png'); background-position: center center; }
.hero-shade { background: linear-gradient(90deg,rgba(12,12,12,.94) 0%,rgba(12,12,12,.74) 38%,rgba(12,12,12,.22) 68%,rgba(12,12,12,.08) 100%),linear-gradient(0deg,rgba(12,12,12,.38),transparent 50%); }
.topbar { height: 78px; }
.hero-copy { max-width: 1240px; }
.hero h1,.section h2 { letter-spacing: -.052em; }
.hero .intro { max-width: 590px; line-height: 1.7; }
.section { padding-top: 104px; padding-bottom: 104px; }
.section-head { margin-bottom: 52px; gap: 60px; }
.section-head>p { line-height: 1.75; }

.service-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; align-items: stretch; }
.service,.service.featured { grid-column: auto; grid-row: auto; min-height: 430px; padding: 32px; justify-content: flex-start; border-color: #3d3d3d; border-radius: 1px; }
.service.featured { background: #e7e0d4; }
.service:has(.service-image) { min-height: 620px; }
.service-image { height: 220px; flex: 0 0 auto; margin: -32px -32px 26px; width: calc(100% + 64px); background-position: center; background-size: cover; border-bottom: 1px solid rgba(199,165,106,.35); }
.service-body { display: flex; flex: 1; flex-direction: column; min-height: 0; }
.image-rs6 { background-image: linear-gradient(180deg,transparent 62%,rgba(20,20,20,.34)),url('assets/service-complete-audi-rs6-2026-v2.png'); }
.image-g63 { background-image: linear-gradient(180deg,transparent 62%,rgba(20,20,20,.45)),url('assets/service-interior-g63-2026.png'); background-position: 55% center; }
.image-golf { background-image: linear-gradient(180deg,transparent 62%,rgba(20,20,20,.4)),url('assets/service-exterior-golf8r-2026.png'); }
.image-ferrari { background-image: linear-gradient(180deg,transparent 62%,rgba(20,20,20,.42)),url('assets/service-ozone-ferrari-296gts-2026-v2.png'); background-position: 54% center; }
.image-rs3 { background-image: linear-gradient(180deg,transparent 62%,rgba(20,20,20,.46)),url('assets/service-extras-audi-rs3-2026.png'); background-position: 50% center; }
.service .number { margin: 0 0 38px; color: #c7a56a; }
.service.featured .number { color: #8b6a35; }
.service h3 { font-size: 23px; line-height: 1.25; margin: 0 0 12px; letter-spacing: -.035em; }
.service p { font-size: 15px; line-height: 1.65; }
.service-meta { margin: 2px 0 20px; padding: 11px 0; }
.service-meta b { font-size: 15px; }
.service ul { margin: 22px 0 0; }
.service li { font-size: 14px; padding: 8px 0; }
.service a { margin-top: auto; padding-top: 24px; font-size: 14px; }
.service-note { padding-top: 24px; line-height: 1.5; }
.photo-card { justify-content: flex-end; }
.photo-card .number { margin-bottom: auto; }
.photo-card .card-photo { background-image: linear-gradient(180deg,rgba(15,15,15,.08) 0%,rgba(15,15,15,.42) 42%,rgba(15,15,15,.96) 100%),url('assets/hero-urus-realistic-v2.png'); background-position: 72% center; }
.photo-card h3,.photo-card p,.photo-card .service-meta { text-shadow: 0 1px 8px rgba(0,0,0,.65); }
.price-disclaimer { max-width: 760px; margin-top: 26px; line-height: 1.65; }

.statement { align-items: center; }
.audience-copy { padding-left: 74px; }
.audience-photo { background-image:linear-gradient(180deg,rgba(18,18,18,.04),rgba(18,18,18,.24)),url('assets/petitecleaning-locatie-final-v4.png'); background-position:center 52%; background-size:cover; }
.audience-list>div { padding: 18px 0; }
.process ol { margin-top: 12px; }
.process li { padding-top: 30px; }
.process h3 { margin-top: 44px; }
.why { gap: 64px; }
.why aside { min-height: 440px; }
.faq { gap: 72px; }
.accordion summary { padding: 22px 0; }
.contact { gap: 72px; }
.contact form { padding: 36px; }
footer { padding-top: 64px; }
.footer-top { padding-bottom: 48px; }

@media (max-width: 1000px) {
  .service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .service,.service.featured { min-height: 400px; }
}

@media (max-width: 900px) {
  .section { padding-top: 78px; padding-bottom: 78px; }
  .hero-photo { background-position: 61% center; }
  .audience-copy { padding-left: 24px; }
}

@media (max-width: 620px) {
  .service-grid { grid-template-columns: 1fr; }
  .service,.service.featured { min-height: auto; padding: 26px 22px; }
  .service:has(.service-image) { min-height: auto; }
  .service-image { height: 210px; margin: -26px -22px 24px; width: calc(100% + 44px); }
  .service .number { margin-bottom: 28px; }
  .photo-card { min-height: 420px; }
  .section-head { margin-bottom: 38px; }
}
