/*
Theme Name: ThuisOntzorgd
Theme URI: https://thuisontzorgd.nl/
Author: ThuisOntzorgd
Description: Maatwerk WordPress-thema voor ThuisOntzorgd.nl – zorg en ondersteuning thuis vinden, vergelijken en regelen.
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: thuisontzorgd
*/

:root{
  --to-primary:#123F42;
  --to-primary-2:#0b5559;
  --to-accent:#69B8AD;
  --to-accent-strong:#2E9A78;
  --to-sand:#F3EEE5;
  --to-bg:#FCFBF8;
  --to-text:#172524;
  --to-muted:#61716f;
  --to-border:#DDE5E1;
  --to-success:#2E7D32;
  --to-warning:#F59E0B;
  --to-danger:#EF4444;
  --to-white:#fff;
  --to-shadow:0 16px 48px rgba(18,63,66,.10);
  --to-radius:18px;
  --to-max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--to-bg);color:var(--to-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:18px;line-height:1.65}
a{color:var(--to-primary-2);text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%;height:auto}
.container{width:min(calc(100% - 36px),var(--to-max));margin-inline:auto}
.site-main{min-height:60vh}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(252,251,248,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,229,225,.9)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--to-primary)}
.brand-mark{width:42px;height:42px;display:block}
.brand-copy{display:flex;flex-direction:column;line-height:1.05}
.brand-name{font-weight:800;font-size:24px;letter-spacing:-.03em}
.brand-name span{color:var(--to-accent-strong)}
.brand-tag{font-size:12px;color:var(--to-primary-2);font-weight:600;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:24px;font-size:15px}
.main-nav a{text-decoration:none;color:var(--to-text);font-weight:600}.main-nav .menu-items{display:flex;align-items:center;gap:24px}.main-nav .menu-items>li{list-style:none}
.header-actions{display:flex;align-items:center;gap:12px}
.menu-toggle{display:none;background:none;border:0;font-size:28px;color:var(--to-primary);cursor:pointer}

/* Buttons */
.btn,.wp-element-button,button,input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:13px 18px;background:var(--to-primary);color:white;text-decoration:none;font-weight:750;cursor:pointer;transition:.2s ease;font-size:16px}
.btn:hover,.wp-element-button:hover,button:hover,input[type=submit]:hover{transform:translateY(-1px);background:var(--to-primary-2)}
.btn-accent{background:var(--to-accent-strong)}
.btn-secondary{background:white;color:var(--to-primary);border:1px solid var(--to-border)}
.btn-ghost{background:transparent;color:var(--to-primary);border:1px solid var(--to-border)}

/* Hero */
.hero{padding:56px 0 26px;background:linear-gradient(135deg,#fff 0%,#f8f3ea 58%,#edf7f4 100%)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:var(--to-primary-2);letter-spacing:.02em;text-transform:uppercase}
h1,h2,h3{line-height:1.08;letter-spacing:-.035em;color:var(--to-primary);margin:0 0 .5em}
h1{font-size:clamp(44px,5.4vw,68px);max-width:760px}
h2{font-size:clamp(32px,4vw,44px)}
h3{font-size:25px}
.lead{font-size:21px;color:#334846;max-width:720px}
.hero-visual{position:relative;min-height:460px;border-radius:28px;overflow:hidden;box-shadow:var(--to-shadow);background:linear-gradient(145deg,#dff0ec,#f4e7d4)}
.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(18,63,66,.15));pointer-events:none}
.hero-visual img{width:100%;height:100%;object-fit:cover;display:block}
.trust-float{position:absolute;left:24px;bottom:24px;z-index:2;background:rgba(255,255,255,.95);border-radius:16px;padding:16px 18px;box-shadow:var(--to-shadow);font-size:14px;width:min(290px,calc(100% - 48px))}
.trust-float div{display:flex;gap:9px;align-items:center;margin:5px 0}

/* Finder */
.finder-card{margin-top:30px;background:white;border:1px solid var(--to-border);border-radius:22px;padding:22px;box-shadow:var(--to-shadow);max-width:820px}
.segmented{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.segmented label{cursor:pointer}
.segmented input{position:absolute;opacity:0;pointer-events:none}
.segmented span{display:block;padding:9px 14px;border:1px solid var(--to-border);border-radius:10px;background:#f7f8f6;font-size:14px;font-weight:700}
.segmented input:checked + span{background:var(--to-primary);color:white;border-color:var(--to-primary)}
.finder-grid{display:grid;grid-template-columns:1.2fr .8fr auto;gap:10px;align-items:end}
.field label{display:block;font-size:13px;font-weight:800;margin-bottom:6px;color:#314542}
.field select,.field input,.archive-filter select,.archive-filter input,.form-control{width:100%;border:1px solid #cfd9d5;border-radius:10px;background:white;padding:13px 14px;font:inherit;font-size:16px;color:var(--to-text);min-height:49px}
.finder-help{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:15px}

/* Category strip */
.category-strip{background:white;border-top:1px solid var(--to-border);border-bottom:1px solid var(--to-border)}
.categories{display:grid;grid-template-columns:repeat(8,1fr)}
.category-link{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:20px 8px;min-height:118px;text-decoration:none;color:var(--to-text);border-right:1px solid #edf1ef;font-size:13px;font-weight:650}
.category-link:last-child{border-right:0}
.category-icon{font-size:26px;color:var(--to-primary)}

/* General sections */
.section{padding:72px 0}
.section.alt{background:#f4f7f5}
.section.sand{background:var(--to-sand)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.section-head p{max-width:680px;margin:0;color:var(--to-muted)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.info-card{background:white;border:1px solid var(--to-border);border-radius:var(--to-radius);padding:24px;box-shadow:0 8px 22px rgba(18,63,66,.04)}
.info-card .icon{width:48px;height:48px;border-radius:13px;background:#e6f5f1;display:grid;place-items:center;font-size:24px;margin-bottom:18px}

/* Provider cards */
.provider-list{display:grid;gap:16px}
.provider-card{background:white;border:1px solid var(--to-border);border-radius:18px;padding:22px;box-shadow:0 6px 20px rgba(18,63,66,.04)}
.provider-card-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.provider-title{display:flex;gap:16px;align-items:flex-start}
.provider-logo{width:72px;height:72px;border-radius:14px;border:1px solid var(--to-border);background:#fff;display:grid;place-items:center;overflow:hidden;font-weight:800;color:var(--to-primary);text-align:center;font-size:13px}
.provider-card h3{margin-bottom:5px}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;background:#eef5f2;font-size:12px;font-weight:800;color:#2d5e55}
.badge.success{background:#eaf5ea;color:#2E7D32}
.badge.warning{background:#fff4db;color:#8a5b00}
.provider-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.provider-meta span{font-size:12px;background:#f4f6f5;border-radius:999px;padding:5px 9px}
.provider-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px;border-top:1px solid #edf1ef;padding-top:16px}
.fact strong{display:block;font-size:14px;color:var(--to-primary)}
.fact span{font-size:13px;color:var(--to-muted)}
.rating{font-weight:800;color:#6b4a00}
.stars{color:#E9A000;letter-spacing:1px}

/* Archive */
.archive-hero{padding:48px 0 28px;background:linear-gradient(180deg,#eef6f3,var(--to-bg))}
.archive-layout{display:grid;grid-template-columns:280px 1fr;gap:26px;padding:24px 0 70px}
.archive-filter{background:white;border:1px solid var(--to-border);border-radius:16px;padding:18px;height:max-content;position:sticky;top:96px}
.archive-filter .field{margin-bottom:14px}
.result-count{color:var(--to-muted);margin-bottom:16px}
.pagination{margin-top:28px}

/* Single provider */
.provider-hero{padding:42px 0;background:#f0f6f3;border-bottom:1px solid var(--to-border)}
.provider-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}
.provider-main{padding:36px 0 72px}
.provider-grid{display:grid;grid-template-columns:1.45fr .65fr;gap:30px}
.content-card{background:white;border:1px solid var(--to-border);border-radius:18px;padding:25px;margin-bottom:18px}
.check-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.check-list li{display:flex;gap:10px}
.check{width:22px;height:22px;border-radius:50%;background:#eaf5ea;color:#2E7D32;display:grid;place-items:center;font-size:13px;font-weight:900;flex:0 0 auto}
.sticky-card{position:sticky;top:96px}

/* Footer */
.site-footer{background:var(--to-primary);color:#dceae6;padding:54px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:40px}
.site-footer h4{color:white;margin:0 0 14px}
.site-footer a{color:#e8f2ef;text-decoration:none}
.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:15px}
.footer-bottom{margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);font-size:13px;display:flex;justify-content:space-between;gap:20px}

.notice{padding:14px 16px;border-radius:12px;background:#eef7f5;border:1px solid #d3ebe5;font-size:14px}
.empty-state{text-align:center;padding:48px;background:white;border:1px dashed #bfcfca;border-radius:18px}

@media (max-width:980px){
 .main-nav,.header-actions .save-link{display:none}.menu-toggle{display:block}
 .main-nav.open{display:flex;position:absolute;left:0;right:0;top:78px;background:white;padding:18px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--to-border)}.main-nav.open .menu-items{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
 .hero-grid,.provider-grid{grid-template-columns:1fr}.hero-visual{min-height:360px}
 .categories{grid-template-columns:repeat(4,1fr)}
 .archive-layout{grid-template-columns:1fr}.archive-filter{position:static}
 .grid-3{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
 body{font-size:17px}.container{width:min(calc(100% - 24px),var(--to-max))}
 .header-inner{min-height:68px}.brand-name{font-size:20px}.brand-tag{font-size:10px}.brand-mark{width:36px;height:36px}
 .hero{padding-top:34px}.hero-grid{gap:26px}.hero-visual{min-height:290px;order:-1}.trust-float{display:none}
 .finder-grid{grid-template-columns:1fr}.finder-card{padding:16px}.finder-grid .btn{width:100%}
 .categories{grid-template-columns:repeat(3,1fr)}.category-link{min-height:100px;border-bottom:1px solid #edf1ef}
 .section{padding:52px 0}.section-head{align-items:flex-start;flex-direction:column}.grid-3{grid-template-columns:1fr}
 .provider-card-top,.provider-header{flex-direction:column}.provider-facts{grid-template-columns:1fr 1fr}.provider-card .btn{width:100%;margin-top:10px}
 .footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
}

/* Regional launch + contact */
.region-notice{background:#e8f4f1;border-bottom:1px solid var(--to-border)}
.region-notice-inner{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:15px 0;font-size:14px;color:#294744}
.region-notice-inner a{font-weight:800;white-space:nowrap}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.narrow-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:28px;max-width:980px}
.contact-form{display:grid;gap:18px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form textarea{width:100%;border:1px solid #cfd9d5;border-radius:10px;background:white;padding:13px 14px;font:inherit;font-size:16px;color:var(--to-text);resize:vertical}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--to-muted)}
.consent input{margin-top:5px}
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.success-notice{background:#eaf5ea;border-color:#c9e6c9;color:#245c27;margin-bottom:20px}
.error-notice{background:#fff0f0;border-color:#f3cccc;color:#8b2e2e;margin-bottom:20px}
.small-muted{font-size:14px;color:var(--to-muted)}
@media(max-width:800px){.grid-2,.narrow-grid,.form-grid{grid-template-columns:1fr}.region-notice-inner{align-items:flex-start;flex-direction:column;gap:6px}.region-notice-inner a{white-space:normal}}


/* Evidence, insurer matrix & source transparency */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.evidence-explainer{background:#fff}
.evidence-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:20px}
.evidence-card{border:1px solid var(--to-border);border-radius:15px;padding:18px;background:#fbfcfb;display:flex;flex-direction:column;align-items:flex-start}
.evidence-card h3{font-size:20px;margin:.25em 0 .5em}.evidence-card p{margin:.25em 0 .7em}.evidence-card small{display:block;color:var(--to-muted);margin-top:auto;padding-top:10px;line-height:1.45}
.evidence-kicker{font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;color:var(--to-primary-2)}
.source-table-wrap{overflow-x:auto}.source-table{width:100%;border-collapse:collapse;font-size:14px;min-width:680px}.source-table th{text-align:left;color:var(--to-primary);background:#f4f7f5;padding:11px 12px;border-bottom:1px solid var(--to-border)}.source-table td{padding:13px 12px;border-bottom:1px solid #e8eeeb;vertical-align:top}
.source-status{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;background:#f1f3f2;color:#52615f}.source-status.source-ok{background:#eaf5ea;color:#2E7D32}.source-status.source-no{background:#fff0f0;color:#9b3434}.source-status.source-neutral{background:#fff4db;color:#79551a}
@media(max-width:980px){.grid-4{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.grid-4,.evidence-grid{grid-template-columns:1fr}}
/* Temporary homepage */
.home .main-nav,.home .header-actions,.home .site-footer .footer-grid>div:not(:first-child){display:none!important}.home .site-header,.to-coming{background:#f7f6f0}.home .site-footer .footer-grid{display:block}.to-coming-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:7%;align-items:center;padding-top:90px;padding-bottom:110px}.to-coming-kicker{color:#287d67;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.to-coming-dot{display:inline-block;background:#2e9a78;border-radius:50%;height:9px;width:9px;margin-right:12px}.to-coming h1{font-size:clamp(54px,7vw,100px);line-height:1.06;letter-spacing:-.06em;color:#123f42;margin:27px 0}.to-coming h1 em{font-style:normal;color:#2e9a78}.to-coming-lead{font-size:clamp(22px,2.3vw,29px);line-height:1.4;font-weight:650;color:#123f42}.to-coming-description{font-size:17px;line-height:1.8;color:#506866;margin-top:22px}.to-coming-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:36px}.to-coming-button{display:inline-flex;gap:25px;background:#123f42;color:white!important;padding:17px 24px;border-radius:9px;font-weight:700;text-decoration:none}.to-coming-button:hover{background:#2e9a78}.to-coming-textlink,.to-coming-bottom-link{color:#123f42;text-decoration:underline;text-underline-offset:5px;font-weight:650}.to-coming-aside{background:#123f42;color:#e8f6f0;border-radius:24px;padding:46px 40px;box-shadow:0 25px 70px #123f4222}.to-coming-symbol{text-align:center;color:#e1f2e9}.to-coming-symbol svg{height:150px}.to-coming-aside-label,.to-coming-small{display:block;color:#8cd6bc;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;margin-top:18px}.to-coming-aside h2{color:white;font-size:38px;line-height:1.18;letter-spacing:-.04em;margin:14px 0}.to-coming-aside p{color:#d1e7e1;line-height:1.7}.to-coming-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.to-coming-chips span{border:1px solid #67938a;border-radius:25px;padding:7px 11px;font-size:12px}.to-coming-bottom{background:#e8eee8;padding:60px 0}.to-coming-bottom-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.to-coming-bottom .to-coming-small{color:#34836e}.to-coming-bottom h2{font-size:32px;color:#123f42;margin:12px 0}.to-coming-bottom p{color:#4e6661}.to-coming-bottom-link{white-space:nowrap}@media(max-width:850px){.to-coming-wrap{grid-template-columns:1fr;padding-top:65px;padding-bottom:75px;gap:45px}.to-coming-aside{padding:35px 28px}.to-coming-bottom-inner{align-items:flex-start;flex-direction:column}}
