/* PASS THAT HAZE / THE REEF V5.3 -- isolated pilot CSS, inherits production site typography. */
.reef-v5{--rv-g:#19683e;--rv-dark:#174d35;--rv-line:#dce7de;--rv-soft:#f5f8f5;color:#19271e;font-size:17px;line-height:1.55;padding-bottom:52px;font-family:inherit}
.reef-v5 *{box-sizing:border-box}
.reef-v5 :is(h1,h2,h3){font-family:'Staatliches',Impact,'Arial Narrow',sans-serif;font-weight:400;letter-spacing:0}
.reef-v5 a{text-decoration:none}.reef-v5 a:focus-visible,.reef-v5 button:focus-visible,.reef-v5 input:focus-visible,.reef-v5 summary:focus-visible{outline:3px solid var(--rv-g);outline-offset:3px}
.reef-v5-crumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:18px 0;font-size:13px;color:#65786a}.reef-v5-crumb span:last-child{color:#1c3224;font-weight:600}
.reef-v5-cover{margin:16px 0;border-radius:14px;overflow:hidden;background:transparent}.reef-v5-cover img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}
.reef-v5-heading{background:#f7faf8;border:1px solid var(--rv-line);border-radius:14px;padding:23px 29px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start}
.reef-v5-eyebrow{display:block;font-size:12px;letter-spacing:.09em;font-weight:800;color:#2b7247}
.reef-v5-heading h1{font-size:clamp(48px,5.8vw,82px);line-height:1.13;letter-spacing:-.035em;margin:7px 0 10px;color:#101e15;overflow-wrap:anywhere}
.reef-v5-address{font-size:17px;color:#3f5949;margin:0 0 15px;display:flex;align-items:center;gap:8px}.reef-v5-address .ph{color:var(--rv-g)}
.reef-v5-heading-right{display:grid;gap:13px;justify-items:end;align-self:start}
.reef-v5-logo{width:170px;height:116px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #dbe3dd;border-radius:11px;padding:9px;box-shadow:0 1px 3px #10231915}
.reef-v5-logo img{display:block;max-width:160px;max-height:100px;object-fit:contain;width:auto;height:auto}
.reef-v5-status{display:flex;align-items:center;justify-content:center;gap:7px;padding:6px 11px;border:1px solid #c5d9ca;border-radius:6px;font-size:13px;font-weight:700;white-space:nowrap;color:#236238;background:#e9f5ec}
.reef-v5-status.is-closed{background:#f4eee9;color:#81472f;border-color:#e9d3c4}.reef-v5-status.is-unknown{background:#f1f3f1;color:#55675a}
.reef-v5-links{display:flex;flex-wrap:wrap;gap:9px}.reef-v5-links a{font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:7px;border:1px solid #bfd2c3;padding:9px 14px;border-radius:7px;background:#fff;min-height:42px;color:#174c33}.reef-v5-links a.reef-v5-primary{color:#fff;background:var(--rv-g);border-color:var(--rv-g)}
.reef-v5-facilities{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:16px 0 23px}.reef-v5-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #d2e4d6;background:#f3f9f4;color:#275f3a;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:700;line-height:1.3}.reef-v5-chip .ph{font-size:19px}
.reef-v5-layout{display:grid;grid-template-columns:minmax(0,1.57fr) minmax(330px,.83fr);gap:22px;align-items:start}
.reef-v5-main,.reef-v5-side{min-width:0}.reef-v5-sticky{position:sticky;top:18px;display:grid;gap:14px}
.reef-v5-panel{border:1px solid var(--rv-line);border-radius:12px;background:#fff;padding:23px 26px;min-width:0}
.reef-v5-panel h2{font-size:25px;line-height:1.22;margin:0 0 13px}.reef-v5-panel p{margin-top:0}.reef-v5-about{margin-bottom:15px}.reef-v5-body{font-size:17px;line-height:1.65}.reef-v5-body p:last-child{margin-bottom:0}
.reef-v5-section-head{display:flex;justify-content:space-between;gap:16px;align-items:baseline;border-bottom:1px solid #e0e9e2;padding-bottom:12px}.reef-v5-section-head h2{margin:0}.reef-v5-section-head>span{color:#6b8071;font-size:13px;font-weight:600;white-space:nowrap}
/* Source-faithful, single-open menu accordion. Strictly scoped to the Reef pilot. */
/* V6.8.1: section heading typography follows PTH heading font; product rows retain the site body font. */
.reef-v5-menu-topline{display:flex;align-items:baseline;justify-content:space-between;gap:10px 18px;flex-wrap:wrap;margin:13px 0 14px}
.reef-v5-menu-help{color:#5e7465;font-size:13px;margin:0!important;flex:1 1 210px}
.reef-v5-pass-it-on{color:#176a43;font-size:12px;font-weight:800;letter-spacing:.035em;white-space:nowrap}
.reef-v5-categories{display:block;border:1px solid #d9e0db;border-radius:10px;overflow:hidden;background:#fff}
.reef-v5-category{border:0;border-radius:0;overflow:hidden;background:#fff}
.reef-v5-category+.reef-v5-category{border-top:1px solid #d9e0db}
.reef-v5-category summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px;padding:13px 14px;background:#fff;color:#26382d;transition:background .18s ease,color .18s ease}
.reef-v5-category summary::-webkit-details-marker{display:none}
.reef-v5-category summary::marker{content:''}
.reef-v5-category summary:focus-visible{outline:3px solid #54aa7a;outline-offset:-3px;position:relative;z-index:1}
.reef-v5-category:not([open]) summary:hover{background:#f2f8f3}
.reef-v5-category[open]>summary,.reef-v5-category[open]>summary:hover{background:#164d37;color:#fff}
.reef-v5-category-label{display:flex;align-items:center;gap:11px;min-width:0;flex:1}
.reef-v5-category-label::before{content:'';width:4px;height:22px;flex:none;border-radius:3px;background:#dfe7e0}
.reef-v5-category[open] .reef-v5-category-label::before{background:#91dbae}
.reef-v5-category-label strong{font-family:'Staatliches',Impact,'Arial Narrow',sans-serif;font-weight:400;font-size:20px;line-height:1.2;letter-spacing:.015em;overflow-wrap:anywhere;text-transform:uppercase}
.reef-v5-category-label small{flex:none;font-family:inherit;border-radius:16px;background:#edf4ee;color:#42694d;font-size:11px;font-weight:750;padding:3px 8px;font-variant-numeric:tabular-nums}
.reef-v5-category[open] .reef-v5-category-label small{background:#327151;color:#fff}
.reef-v5-plus{width:26px;height:26px;display:grid;place-items:center;flex:none;color:#164d37;font:bold 24px/1 Arial,sans-serif}
.reef-v5-plus::before{content:'+'}
.reef-v5-category[open] .reef-v5-plus{color:#fff}
.reef-v5-category[open] .reef-v5-plus::before{content:'−'}
.reef-v5-items{padding:6px 16px 8px;background:#e3f1e7;color:#203d2c}
/* V6.8.2: fixed price column, compact source amount under product name. */
.reef-v5-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:12px;row-gap:5px;padding:11px 4px;border-bottom:1px solid #cbdfcf;font-size:15px;line-height:1.35}
.reef-v5-item:last-child{border-bottom:0}
.reef-v5-item-name{display:block;min-width:0;overflow-wrap:break-word;word-break:normal}
.reef-v5-item-amount{display:block;margin-top:3px;font-size:11px;line-height:1.4;font-weight:400;color:#476a52;overflow-wrap:break-word}
.reef-v5-item-price{justify-self:end;min-width:0;max-width:100%;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:5px}
.reef-v5-item-price strong{color:#164d37;font-size:15px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.35}
.reef-v5-item-price small{font-size:11px;color:#476a52;line-height:1.35;overflow-wrap:break-word;white-space:normal}
.reef-v5-item-multiple{grid-template-columns:minmax(0,1fr);gap:5px}
.reef-v5-item-multiple .reef-v5-item-price{width:100%;align-items:stretch;justify-self:stretch;gap:3px}
.reef-v5-price-tier{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:baseline;width:100%;text-align:left}
.reef-v5-price-tier small{min-width:0;text-align:left}
.reef-v5-price-tier strong{text-align:right}
.reef-v5-unavailable{display:block;margin-top:3px;color:#5d7664;font-size:11px}
@media(max-width:440px){.reef-v5-category summary{min-height:52px;padding:12px 11px}.reef-v5-category-label strong{font-size:18px}.reef-v5-items{padding-inline:10px}}
.reef-v5-credit{font-size:10px;color:#829287;text-align:right;margin:18px 0 0!important}.reef-v5-credit a{color:#246d42;text-decoration:underline;text-underline-offset:2px;font-weight:700}
.reef-v5-news,.reef-v5-gallery{margin-top:15px}.reef-v5-news-list{display:grid;gap:0}.reef-v5-news-list a{display:grid;gap:4px;padding:13px 0;border-bottom:1px solid var(--rv-line)}.reef-v5-news-list a:last-child{border:0}.reef-v5-news-list strong{font-size:16px}.reef-v5-news-list small{font-size:13px;color:#6b786d}.reef-v5-gallery>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.reef-v5-gallery img{width:100%;height:150px;object-fit:cover;border-radius:8px}
.reef-v5-side-panel{padding:19px 20px}.reef-v5-side-panel h2{font-size:21px;display:flex;align-items:center;gap:9px;margin-bottom:14px}.reef-v5-side-panel h2 .ph{color:#26794a;font-size:20px}
.reef-v5-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:16px}.reef-v5-contact>div{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.reef-v5-contact small{font-size:13px;color:#697d6e}.reef-v5-contact strong,.reef-v5-contact a,.reef-v5-contact span{font-size:17px;line-height:1.45;font-weight:600;overflow-wrap:anywhere}.reef-v5-contact a{color:#1e6942}
.reef-v5-map{width:100%;height:218px;position:relative;border:1px solid #d8e3d9;border-radius:9px;overflow:hidden;background:#e9edea}.reef-v5-map-loading{display:grid;place-items:center;position:absolute;inset:0;color:#6b7d70;font-size:13px;pointer-events:none}
.reef-v5-map-marker{width:58px;height:58px;background:white;border:3px solid white;border-radius:50%;display:grid;place-items:center;box-shadow:0 2px 8px #0004}.reef-v5-map-marker img{width:42px;height:42px;object-fit:contain;display:block}

.reef-v5-hour{padding:9px 11px;display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid #edf1ed;font-size:16px}.reef-v5-hour:last-child{border-bottom:0}.reef-v5-hour span{color:#5d7061}.reef-v5-hour strong{white-space:nowrap;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.reef-v5-hour.is-today{background:#174d35;color:#fff;border-radius:6px;border-bottom:0}.reef-v5-hour.is-today span,.reef-v5-hour.is-today strong{color:#fff}
.reef-v5-near>div{display:grid}.reef-v5-near a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--rv-line)}.reef-v5-near a:last-child{border:0}.reef-v5-near a strong{font-size:16px}.reef-v5-near a small{display:block;color:#6e8274;font-size:13px}.reef-v5-near b{white-space:nowrap;font-size:14px;color:#1e6d40}
.reef-v5 .pth-social-share-trigger h2{font-family:'Staatliches',Impact,'Arial Narrow',sans-serif!important;font-weight:400!important;letter-spacing:0!important;font-size:clamp(24px,3vw,38px)!important}.reef-v5 .pth-social-share-arrow{display:none!important}
@media(max-width:1080px){.reef-v5{font-size:16px}.reef-v5-layout{grid-template-columns:minmax(0,1.4fr) minmax(290px,.9fr);gap:15px}.reef-v5-heading h1{font-size:clamp(44px,5.4vw,62px)}.reef-v5-address,.reef-v5-body,.reef-v5-contact strong,.reef-v5-contact a,.reef-v5-contact span{font-size:16px}.reef-v5-side-panel{padding:17px}.reef-v5-hour,.reef-v5-hour strong,.reef-v5-item,.reef-v5-item-price strong{font-size:16px}.reef-v5-map-marker{width:54px;height:54px}.reef-v5-map-marker img{width:40px;height:40px}}
@media(max-width:760px){.reef-v5{font-size:16px;width:min(calc(100% - 28px),650px)}.reef-v5-crumb{font-size:12px}.reef-v5-cover{margin-bottom:12px}.reef-v5-heading{padding:17px;gap:11px}.reef-v5-heading h1{font-size:clamp(40px,7vw,52px);line-height:1.08}.reef-v5-heading-right{gap:9px}.reef-v5-logo{width:112px;height:105px;padding:7px}.reef-v5-logo img{max-width:100%;max-height:91px}.reef-v5-status{font-size:11px;padding:5px 7px;white-space:normal;text-align:center}.reef-v5-facilities{margin:12px 0 17px;gap:6px}.reef-v5-chip{font-size:12.5px;padding:7px 9px}.reef-v5-layout{display:flex;flex-direction:column;gap:15px}.reef-v5-main,.reef-v5-side{width:100%}.reef-v5-sticky{position:static}.reef-v5-panel{padding:17px 16px}.reef-v5-panel h2{font-size:22px}.reef-v5-body,.reef-v5-item,.reef-v5-item-price strong{font-size:16px}.reef-v5-side-panel h2{font-size:21px}.reef-v5-contact{grid-template-columns:1fr 1fr}.reef-v5-contact strong,.reef-v5-contact a,.reef-v5-contact span{font-size:16px}.reef-v5-hour,.reef-v5-hour strong{font-size:15px}.reef-v5-map-marker{width:52px;height:52px}.reef-v5-map-marker img{width:38px;height:38px}.reef-v5-map{height:240px}.reef-v5-menu-help{font-size:13px}}
@media(max-width:440px){.reef-v5{width:calc(100% - 24px)}.reef-v5-heading{grid-template-columns:minmax(0,1fr) 88px;padding:15px 12px;gap:7px}.reef-v5-heading h1{font-size:clamp(37px,9.3vw,43px)}.reef-v5-eyebrow{font-size:10px}.reef-v5-address{font-size:16px}.reef-v5-logo{width:84px;height:91px;padding:5px}.reef-v5-logo img{max-width:100%;max-height:80px}.reef-v5-heading-right{gap:7px}.reef-v5-status{font-size:10px;max-width:160px}.reef-v5-links{gap:6px}.reef-v5-links a{padding:8px 10px;font-size:13px}.reef-v5-contact{gap:9px}.reef-v5-panel{padding:16px 13px}}
@media(prefers-reduced-motion:reduce){.reef-v5 *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* V5.3: Verified attribution is a loose inline text link below the shop name, never a chip. */
.reef-v5-verified{display:inline-flex;align-items:center;gap:7px;margin:0 0 10px;color:#167a3b;font-family:inherit;font-size:12px;font-weight:700;line-height:1.3;text-decoration:none!important}
.reef-v5-verified svg{display:block;flex:none;width:19px;height:19px}
.reef-v5-verified:hover span{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.reef-v5-verified{font-size:11px;gap:6px;margin-bottom:9px}.reef-v5-verified svg{width:18px;height:18px}}

/* V6: main content Nearby, readable admin-managed icons, consistent shared heading on real mobile. */
.reef-v5-main>.reef-v5-near{margin-top:15px}
.reef-v5 .pth-social-share-trigger h2,.reef-v5 .pth-social-share-trigger h2 *{font-family:'Staatliches',Impact,'Arial Narrow',sans-serif!important;font-weight:400!important}
.reef-v5-logo{box-shadow:none}
.reef-v5 .reef-v5-credit{font-size:10px}

/* V6.1 — behoud bestaande profiel- en faciliteiteniconen; menu-iconen zijn vervallen. */
.reef-v5 .reef-v5-side-panel h2 .ph{font-size:26px}
.reef-v5 .reef-v5-chip .ph{font-size:23px}
@media(max-width:760px){.reef-v5 .reef-v5-side-panel h2 .ph{font-size:25px}}

/* V6.5 -- only a single Google Maps route link below the shop map. */
.reef-v5-google-route{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:12px;padding:11px 17px;background:#19683e;border:1px solid #19683e;border-radius:8px;color:#fff!important;font-size:16px;font-weight:700;text-align:center;text-decoration:none!important;line-height:1.35;transition:background .15s ease}
.reef-v5-google-route:hover{background:#155333;color:#fff}
.reef-v5-google-route:focus-visible{outline:3px solid #111;outline-offset:3px}
@media(max-width:760px){.reef-v5-google-route{min-height:48px;font-size:16px}}

/* V6.7 universal icons, same sizing when replaced by PNG/WebP. */
.reef-v5 .reef-v5-ui-icon{display:inline-block;width:1em;height:1em;min-width:1em;object-fit:contain;vertical-align:-.1em;flex-shrink:0}
.reef-v5 .reef-v5-side-panel h2 .reef-v5-ui-icon{width:26px;height:26px;min-width:26px}
.reef-v5 .reef-v5-chip .reef-v5-ui-icon{width:23px;height:23px;min-width:23px}
.reef-v5 .reef-v5-address .reef-v5-ui-icon{width:1.15em;height:1.15em;min-width:1.15em}
.reef-v5 .reef-v5-status .reef-v5-ui-icon,.reef-v5 .reef-v5-links .reef-v5-ui-icon{width:1.1em;height:1.1em;min-width:1.1em}
.reef-v5 .reef-v5-verified .reef-v5-ui-icon{width:19px;height:19px;min-width:19px}
.reef-v5 .reef-v5-near h2 .reef-v5-ui-icon{width:1em;height:1em;min-width:1em}
/* Use the brand's original transparent pin in the MapLibre map, not the shop logo. */
.reef-v5 .reef-v5-map-marker{width:58px;height:72px;border:0;background:transparent;border-radius:0;box-shadow:none;display:block}
.reef-v5 .reef-v5-map-marker img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.2))}
@media(max-width:1080px){.reef-v5 .reef-v5-map-marker{width:54px;height:68px}}
@media(max-width:760px){.reef-v5 .reef-v5-map-marker{width:52px;height:66px}.reef-v5 .reef-v5-side-panel h2 .reef-v5-ui-icon{width:25px;height:25px;min-width:25px}}

/* V6.7.2: status is an information action beside Website, never above the shop logo. */
.reef-v5 .reef-v5-links{align-items:center}
.reef-v5 .reef-v5-links .reef-v5-status{min-height:42px;min-width:0;padding:9px 14px;font-size:14px;line-height:1.55;border-radius:7px;max-width:none;white-space:nowrap;text-align:center}
@media(max-width:760px){.reef-v5 .reef-v5-links .reef-v5-status{min-height:42px;padding:8px 10px;font-size:12px;white-space:nowrap;max-width:none}}

/* Match product-row typography at tablet and phone widths; preserve price alignment. */
@media(max-width:1080px){
  .reef-v5 .reef-v5-item{font-size:15px}
  .reef-v5 .reef-v5-item-price strong{font-size:15px}
}
@media(max-width:760px){
  .reef-v5 .reef-v5-items{padding:5px 12px 7px}
  .reef-v5 .reef-v5-item{font-size:14px;padding:10px 2px;column-gap:10px}
  .reef-v5 .reef-v5-item-price strong{font-size:14px}
  .reef-v5 .reef-v5-item-amount,.reef-v5 .reef-v5-item-price small{font-size:11px}
}
@media(max-width:360px){
  .reef-v5 .reef-v5-items{padding-inline:9px}
  .reef-v5 .reef-v5-item{column-gap:8px}
}
