/*
Theme Name: FYVO Multilingual Care
Theme URI: https://fyvo.nl
Author: FYVO
Description: Custom multilingual FYVO theme for a Dutch movement and rehabilitation practice. Dutch, English, Turkish, Arabic and Persian with RTL support.
Version: 2.0.0
Text Domain: fyvo
*/
:root{
  --navy:#071d3b;--navy-deep:#03152b;--blue:#176b87;--blue-2:#2d8ba6;--sky:#eef7fb;--ice:#f7fbfd;
  --cream:#fbfaf7;--bronze:#9c6c46;--bronze-2:#c79a68;--ink:#17384c;--muted:#6c8191;--line:#dbe7ee;
  --white:#fff;--shadow:0 28px 80px rgba(7,29,59,.12);--shadow-soft:0 14px 42px rgba(7,29,59,.075);
  --radius-xl:34px;--radius-lg:26px;--radius-md:20px;--ease:cubic-bezier(.2,.75,.25,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.68;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.rtl{font-family:Tahoma,Arial,sans-serif}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input,textarea,select{font:inherit}.wrap{width:min(calc(100% - 44px),1200px);margin-inline:auto}.skip-link{position:fixed;left:12px;top:-80px;z-index:999;background:#fff;color:var(--navy);padding:10px 14px;border-radius:10px;box-shadow:var(--shadow-soft)}.skip-link:focus{top:12px}

/* Header */
.topbar{background:var(--navy-deep);color:#d9e6ee;font-size:12px}.topbar .wrap{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:18px}.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.86);backdrop-filter:saturate(155%) blur(20px);border-bottom:1px solid rgba(219,231,238,.76);transition:box-shadow .28s var(--ease),background .28s var(--ease)}.admin-bar .site-header{top:32px}.site-header.scrolled{background:rgba(255,255,255,.94);box-shadow:0 12px 34px rgba(7,29,59,.075)}.navrow{min-height:82px;display:flex;align-items:center;gap:22px}.brand{flex:0 0 auto}.brand img{width:118px;height:64px;object-fit:contain;transition:transform .3s var(--ease)}.brand:hover img{transform:translateY(-1px) scale(1.015)}.mainnav{display:flex;align-items:center;gap:20px;margin-inline-start:auto}.mainnav a{position:relative;font-size:13px;font-weight:780;color:var(--navy);padding:29px 0 27px}.mainnav a:after{content:"";position:absolute;left:50%;right:50%;bottom:19px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--bronze));transition:left .25s var(--ease),right .25s var(--ease)}.mainnav a:hover:after,.mainnav a:focus-visible:after{left:0;right:0}.mainnav a:hover{color:var(--blue)}.lang-switch{display:flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.82);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.lang-switch a{font-size:10px;font-weight:900;color:#688094;padding:6px 8px;border-radius:999px;transition:.2s}.lang-switch a:hover{color:var(--navy);background:#f0f6fa}.lang-switch a.current{background:var(--navy);color:#fff}.mobile-toggle{display:none;border:0;background:transparent;color:var(--navy);font-size:24px;cursor:pointer}.header-cta{white-space:nowrap}.smart-strip{background:linear-gradient(90deg,#eff8fc 0,#fffaf4 50%,#eff8fc 100%);background-size:200% 100%;animation:stripShift 12s linear infinite;border-top:1px solid rgba(219,231,238,.7);border-bottom:1px solid rgba(219,231,238,.7);text-align:center}.smart-strip a{min-height:36px;padding:7px 12px;display:inline-flex;align-items:center;gap:9px;color:var(--navy);font-size:12px;font-weight:850}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--bronze);box-shadow:0 0 0 0 rgba(156,108,70,.34);animation:pulse 2.3s infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(156,108,70,0)}}@keyframes stripShift{to{background-position:200% 0}}

/* Type */
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:10px;line-height:1.4;font-weight:900;text-transform:uppercase;letter-spacing:.18em;color:var(--blue)}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor;opacity:.55}h1,h2{font-family:Georgia,"Times New Roman",serif;color:var(--navy);font-weight:500}body.rtl h1,body.rtl h2{font-family:Tahoma,Arial,sans-serif;font-weight:700}h1{font-size:clamp(50px,6.2vw,88px);line-height:.98;letter-spacing:-.05em;margin:16px 0 24px}body.rtl h1{letter-spacing:0}h2{font-size:clamp(36px,4.4vw,58px);line-height:1.05;letter-spacing:-.035em;margin:0 0 18px}body.rtl h2{letter-spacing:0}.lead{font-size:18px;color:var(--muted);max-width:680px}.quote{font-family:Georgia,"Times New Roman",serif;color:var(--bronze);font-style:italic;font-size:22px;line-height:1.4;margin:24px 0}.actions{display:flex;gap:11px;flex-wrap:wrap;align-items:center;margin-top:26px}.btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 20px;border-radius:999px;border:1px solid transparent;font-size:13px;font-weight:850;cursor:pointer;overflow:hidden;transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease),background .22s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--navy),#0c4763);color:#fff;box-shadow:0 14px 30px rgba(7,29,59,.18)}.btn-primary:hover{box-shadow:0 18px 38px rgba(7,29,59,.24)}.btn-outline{background:rgba(255,255,255,.8);border-color:#9db9ce;color:var(--navy);backdrop-filter:blur(10px)}.btn-outline:hover{border-color:var(--blue);background:#fff}.btn-light{background:#fff;color:var(--navy);box-shadow:0 12px 28px rgba(1,20,39,.16)}.btn-ghost{border-color:rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.05)}.btn-glow:after{content:"";position:absolute;z-index:-1;inset:-2px;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.35) 45%,transparent 70%);transform:translateX(-120%) skewX(-18deg);animation:buttonShine 4.8s ease-in-out infinite}@keyframes buttonShine{0%,55%{transform:translateX(-120%) skewX(-18deg)}80%,100%{transform:translateX(130%) skewX(-18deg)}}.btn-glass{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.42);color:#fff;backdrop-filter:blur(12px)}.btn-glass:hover{background:rgba(255,255,255,.2)}

/* Cinematic hero */
.hero-cinematic{position:relative;min-height:calc(100svh - 152px);height:min(820px,calc(100svh - 86px));overflow:hidden;background:var(--navy-deep);color:#fff}.hero-media{position:absolute;inset:-4%;will-change:transform;transform:scale(1.025)}.hero-video,.hero-slides,.hero-slide,.hero-slide img{width:100%;height:100%;object-fit:cover}.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;margin:0;opacity:0;animation:heroCrossfade 18s infinite}.hero-slide img{filter:saturate(.88) contrast(1.02);transform:scale(1.055);animation:heroKenBurns 18s infinite}.hero-slide-1{animation-delay:0s}.hero-slide-2{animation-delay:6s}.hero-slide-3{animation-delay:12s}.hero-slide-2 img{animation-delay:6s}.hero-slide-3 img{animation-delay:12s}@keyframes heroCrossfade{0%{opacity:0}7%{opacity:1}30%{opacity:1}39%{opacity:0}100%{opacity:0}}@keyframes heroKenBurns{0%{transform:scale(1.04) translate3d(0,0,0)}35%{transform:scale(1.11) translate3d(-1.5%,-1%,0)}100%{transform:scale(1.08)}}.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,21,43,.88) 0%,rgba(3,21,43,.68) 42%,rgba(3,21,43,.2) 72%,rgba(3,21,43,.3) 100%),linear-gradient(180deg,rgba(3,21,43,.05),rgba(3,21,43,.3))}.hero-aurora{position:absolute;border-radius:50%;filter:blur(60px);opacity:.18;mix-blend-mode:screen;animation:auroraFloat 12s ease-in-out infinite alternate}.hero-aurora-a{width:430px;height:430px;right:7%;top:-100px;background:#48b0cb}.hero-aurora-b{width:320px;height:320px;right:31%;bottom:-150px;background:#c69663;animation-delay:-4s}@keyframes auroraFloat{to{transform:translate3d(38px,28px,0) scale(1.12)}}.hero-cinematic-inner{position:relative;z-index:3;height:100%;display:flex;align-items:center;padding:54px 0 84px}.hero-copy{max-width:760px}.hero-copy h1{color:#fff;text-shadow:0 8px 40px rgba(0,0,0,.28);max-width:900px}.hero-lead{color:rgba(255,255,255,.84);max-width:650px;font-size:19px}.hero-actions{margin-top:30px}.hero-trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.hero-trust span{font-size:12px;border:1px solid rgba(255,255,255,.24);background:rgba(3,21,43,.18);backdrop-filter:blur(10px);border-radius:999px;padding:8px 11px;color:#fff}.hero-floating-note{position:absolute;z-index:4;right:22px;bottom:28px;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(3,21,43,.28);backdrop-filter:blur(16px);color:#fff;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:13px}.rtl .hero-floating-note{right:auto;left:22px}.hero-note-mark{width:24px;height:1px;background:var(--bronze-2)}.scroll-cue{position:absolute;z-index:5;left:50%;bottom:20px;transform:translateX(-50%);width:34px;height:52px;border:1px solid rgba(255,255,255,.42);border-radius:999px;display:grid;place-items:start center;padding-top:9px}.scroll-cue span{width:5px;height:5px;border-radius:50%;background:#fff;animation:scrollDot 1.8s infinite}@keyframes scrollDot{0%{transform:translateY(0);opacity:0}30%{opacity:1}80%{transform:translateY(24px);opacity:0}100%{opacity:0}}

/* Sections */
.section{padding:94px 0;position:relative}.soft{background:var(--ice)}.cream{background:var(--cream)}.section-head{display:grid;grid-template-columns:1fr .86fr;gap:48px;align-items:end;margin-bottom:40px}.section-head p{margin:0;color:var(--muted);max-width:580px}.center-action{text-align:center;margin-top:30px}

/* Problem navigator: editorial bento */
.quick-section{background:linear-gradient(180deg,#fff 0,#f8fbfd 100%);overflow:hidden}.quick-section:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;left:-260px;top:80px;background:radial-gradient(circle,rgba(23,107,135,.08),transparent 66%);pointer-events:none}.problem-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.problem-card{--mx:50%;--my:50%;position:relative;isolation:isolate;min-height:150px;border:1px solid var(--line);border-radius:24px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(160deg,rgba(255,255,255,.96),rgba(246,251,253,.98));overflow:hidden;transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease)}.problem-card:before,.spotlight-card:before,.location:before,.side-card:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(45,139,166,.14),transparent 43%);opacity:0;transition:opacity .25s}.problem-card:hover:before,.spotlight-card:hover:before,.location:hover:before,.side-card:hover:before{opacity:1}.problem-card:hover{transform:translateY(-5px);border-color:#a9c9d8;box-shadow:0 22px 48px rgba(7,29,59,.09)}.problem-card:nth-child(1),.problem-card:nth-child(2),.problem-card:nth-child(3){grid-column:span 4}.problem-card:nth-child(4),.problem-card:nth-child(5),.problem-card:nth-child(6){grid-column:span 4}.problem-card>span{font-size:10px;font-weight:900;letter-spacing:.16em;color:#8ca3b4}.problem-card strong{font-size:18px;line-height:1.25;color:var(--navy);max-width:270px}.problem-card em{display:flex;justify-content:space-between;align-items:center;font-style:normal;font-size:12px;font-weight:850;color:var(--blue)}.problem-card em b{display:grid;place-items:center;width:34px;height:34px;border:1px solid #c5d9e4;border-radius:50%;font-size:16px;transition:transform .25s var(--ease),background .25s}.problem-card:hover em b{transform:rotate(-45deg);background:#e8f4f8}.problem-card.accent{background:linear-gradient(145deg,var(--navy),#0c516c);border-color:transparent;box-shadow:0 18px 46px rgba(7,29,59,.16)}.problem-card.accent:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-60px;top:-70px;border:1px solid rgba(255,255,255,.22)}.problem-card.accent span,.problem-card.accent strong,.problem-card.accent em{color:#fff}.problem-card.accent em b{border-color:rgba(255,255,255,.32)}.quick-note{margin-top:18px;padding:16px 18px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.78);display:flex;justify-content:space-between;align-items:center;gap:20px;color:#60798b;font-size:13px;box-shadow:0 10px 30px rgba(7,29,59,.035)}.quick-note a{flex:0 0 auto;color:var(--blue);font-weight:900}.quick-note a:hover{text-decoration:underline}

/* Treatment bento */
.services-section{background:#fff}.treatment-bento{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;grid-auto-flow:dense}.service-card{--mx:50%;--my:50%;position:relative;isolation:isolate;min-height:390px;border:1px solid var(--line);border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 10px 34px rgba(7,29,59,.055);transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease)}.service-card-wide{grid-column:span 2}.service-media{height:190px;position:relative;overflow:hidden}.service-card-wide .service-media{height:230px}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease),filter .65s var(--ease);filter:saturate(.92)}.service-image-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(3,21,43,.14));pointer-events:none}.service-content{padding:20px 21px 22px}.service-card h3{font-size:19px;line-height:1.25;color:var(--navy);margin:7px 0 8px}.service-card p{font-size:13px;color:var(--muted);margin:0 0 16px}.num{font-size:10px;color:#8aa2b4;font-weight:900;letter-spacing:.16em}.textlink{display:inline-flex;gap:7px;align-items:center;color:var(--blue);font-size:12px;font-weight:900}.textlink span{transition:transform .25s var(--ease)}.service-card:hover{transform:translateY(-6px);border-color:#b4ceda;box-shadow:0 24px 58px rgba(7,29,59,.11)}.service-card:hover .service-media img{transform:scale(1.055);filter:saturate(1.04)}.service-card:hover .textlink span{transform:translate(2px,-2px)}.service-card.is-linked{border-color:var(--bronze);box-shadow:0 0 0 3px rgba(156,108,70,.14),0 26px 70px rgba(7,29,59,.14);transform:translateY(-5px)}.service-card.is-linked:after{content:"";position:absolute;inset:-2px;border-radius:28px;padding:2px;background:conic-gradient(from var(--beam-angle),transparent 0 72%,var(--bronze-2) 80%,var(--blue-2) 88%,transparent 96%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:borderBeam 2.1s linear infinite;pointer-events:none}@property --beam-angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes borderBeam{to{--beam-angle:360deg}}

/* Editorial feature sections */
.feature-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:62px;align-items:center}.feature-image,.photo,.treatment-image{position:relative;overflow:hidden;border-radius:32px;box-shadow:var(--shadow)}.feature-image{height:480px}.feature-image img,.photo img,.treatment-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.feature-image:hover img,.photo:hover img,.treatment-image:hover img{transform:scale(1.025)}.feature-corner-line{position:absolute;inset:22px;border:1px solid rgba(255,255,255,.35);border-radius:22px;pointer-events:none}.accident-feature{background:linear-gradient(135deg,#fffaf5 0%,#f1f8fb 100%);overflow:hidden}.accident-feature:after{content:"WAD";position:absolute;right:-10px;bottom:-70px;font:500 clamp(110px,17vw,250px)/1 Georgia,serif;color:rgba(7,29,59,.035);letter-spacing:-.06em;pointer-events:none}.rtl .accident-feature:after{right:auto;left:-10px}.feature-copy{max-width:570px}.feature-copy p{color:var(--muted)}.medical-note{margin:20px 0;padding:15px 16px;border-inline-start:3px solid var(--bronze);background:rgba(255,255,255,.72);border-radius:12px;color:#5e7381;font-size:12.5px}.hydro-feature{background:radial-gradient(circle at 15% 20%,rgba(45,139,166,.22),transparent 28%),linear-gradient(135deg,var(--navy-deep),#0d536e);color:#fff;overflow:hidden}.hydro-feature h2{color:#fff}.hydro-feature p{color:#c7dae5}.hydro-feature .eyebrow{color:#b6dce8}.hydro-feature .feature-image{box-shadow:0 28px 80px rgba(0,0,0,.24)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}.photo{height:520px}.about-feature{overflow:hidden}.about-feature:before{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(156,108,70,.12);border-radius:50%;right:-220px;top:50px}.rtl .about-feature:before{right:auto;left:-220px}

/* Process / why */
.method-section{background:#fff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{position:relative;padding:26px 25px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(155deg,#fff,#f8fbfd);min-height:235px}.step:after{content:"";position:absolute;top:49px;left:calc(100% + 1px);width:22px;height:1px;background:#b9ced9}.step:last-child:after{display:none}.rtl .step:after{left:auto;right:calc(100% + 1px)}.bubble{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e8f4f8,#fff);border:1px solid #cfe1ea;color:var(--navy);font-family:Georgia,serif;font-size:22px;box-shadow:0 8px 22px rgba(7,29,59,.06)}.step h3,.why-card h3{color:var(--navy);margin:16px 0 7px}.step p,.why-card p{font-size:13.5px;color:var(--muted);margin-bottom:0}.why-section{background:var(--ice)}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.why-card{--mx:50%;--my:50%;position:relative;isolation:isolate;padding:27px;border-radius:24px;background:rgba(255,255,255,.88);border:1px solid var(--line);min-height:215px;overflow:hidden;box-shadow:0 10px 30px rgba(7,29,59,.04);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.why-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(7,29,59,.075)}.why-card>span{font-size:10px;color:var(--bronze);font-weight:900;letter-spacing:.15em}

/* Generic pages */
.page-hero{position:relative;padding:86px 0 62px;background:radial-gradient(circle at 85% 0,rgba(45,139,166,.10),transparent 32%),linear-gradient(135deg,#fff,#f5fafc);overflow:hidden}.page-hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(23,107,135,.08);border-radius:50%;right:-160px;bottom:-250px}.rtl .page-hero:after{right:auto;left:-160px}.page-hero .wrap{max-width:930px}.page-hero h1{font-size:clamp(48px,5.7vw,76px);margin-bottom:20px}.page-hero p{max-width:760px;color:var(--muted);font-size:18px}.breadcrumbs{display:flex;gap:9px;align-items:center;color:#7890a0;font-size:12px;margin-bottom:22px}.services:not(.treatment-bento){display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.services:not(.treatment-bento) .service-card{min-height:400px}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.location{--mx:50%;--my:50%;position:relative;isolation:isolate;padding:30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(150deg,#fff,#f7fbfd);overflow:hidden;transition:transform .25s,box-shadow .25s}.location:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}.location strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:25px;color:var(--navy);margin-bottom:7px}.location span{color:var(--muted)}.location small{display:block;color:var(--blue);font-weight:850;margin-top:12px}.faq{max-width:900px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{position:relative;padding-inline-end:36px;cursor:pointer;font-weight:850;color:var(--navy);font-size:17px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;inset-inline-end:5px;top:-1px;font-size:24px;font-weight:400;color:var(--blue);transition:transform .25s}.faq details[open] summary:after{transform:rotate(45deg)}.faq p{color:var(--muted);max-width:780px}.privacy-copy{max-width:850px;color:var(--muted)}

/* Treatment detail */
.treatment-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:48px;align-items:start}.treatment-image{height:500px}.content-block{padding:28px 0;border-bottom:1px solid var(--line)}.content-block h2{font-size:30px}.content-block p{color:var(--muted);max-width:760px}.important-block{margin-top:22px;padding:24px;border:1px solid #ecd4ba;border-radius:20px;background:#fff9f3}.important-block h2{font-size:23px;margin-bottom:10px}.important-block p{margin-bottom:0}.side-card{--mx:50%;--my:50%;position:sticky;top:128px;isolation:isolate;padding:24px;border:1px solid var(--line);border-radius:24px;background:rgba(247,251,253,.92);backdrop-filter:blur(12px);overflow:hidden}.side-card h3{color:var(--navy);margin-top:0}.side-card>a:not(.textlink){display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px;color:#526f82}.side-card>a:not(.textlink):hover{color:var(--blue)}

/* Contact / footer */
.contact-band{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 20%,rgba(45,139,166,.24),transparent 25%),linear-gradient(135deg,#06294e,#0b526f);color:#fff;padding:82px 0}.contact-band:after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-220px;top:-230px}.contact-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.contact-band h2{color:#fff}.contact-band p{color:#c7d9e3;max-width:650px}.contact-box{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.075);backdrop-filter:blur(12px);padding:26px;border-radius:22px}.contact-box small{display:block;color:#abc6d6;text-transform:uppercase;letter-spacing:.12em;margin-top:10px}.contact-box a{font-weight:850;display:block}.site-footer{background:#031a36;color:#a9becc;padding:46px 0 28px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:40px}.footer-logo{width:102px;height:68px;object-fit:contain}.site-footer h4{color:#fff;margin:0 0 12px}.site-footer p,.site-footer a{font-size:13px;color:#a9becc}.site-footer a{display:block;margin:6px 0}.site-footer a:hover{color:#fff}.fineprint{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;color:#7893a5}.mobile-contact-dock{display:none}

/* Motion */
.reveal{opacity:1;filter:none;transform:none}.motion-ready .reveal{opacity:0;filter:blur(7px);transform:translateY(22px) scale(.99);transition:opacity .75s var(--ease),transform .75s var(--ease),filter .75s var(--ease)}.motion-ready .reveal.in-view{opacity:1;filter:blur(0);transform:none}

/* Responsive */
@media(max-width:1100px){.mainnav{gap:14px}.mainnav a{font-size:12px}.header-cta{display:none}.problem-card:nth-child(n){grid-column:span 6}.treatment-bento{grid-template-columns:repeat(2,1fr)}.service-card-wide{grid-column:span 1}.services:not(.treatment-bento){grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(3,1fr)}.page-werkwijze .steps{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:900px){.topbar{display:none}.site-header{top:0}.admin-bar .site-header{top:46px}.navrow{min-height:76px;gap:12px}.brand img{width:98px;height:58px}.mobile-toggle{display:block;order:4;margin-inline-start:2px}.mainnav{position:absolute;display:none;left:16px;right:16px;top:calc(100% + 10px);padding:14px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px}.mobile-open .mainnav{display:flex}.mainnav a{padding:12px 10px;border-radius:12px}.mainnav a:after{display:none}.mainnav a:hover{background:#f3f8fb}.lang-switch{margin-inline-start:auto}.smart-strip a{font-size:11px}.hero-cinematic{min-height:720px;height:78svh}.hero-scrim{background:linear-gradient(90deg,rgba(3,21,43,.86),rgba(3,21,43,.55) 64%,rgba(3,21,43,.4))}.hero-copy{max-width:650px}.hero-floating-note{display:none}.section-head,.feature-grid,.split,.contact-grid,.treatment-grid{grid-template-columns:1fr}.section-head{gap:16px}.feature-image,.photo{height:420px}.feature-copy{max-width:none}.why-grid{grid-template-columns:1fr}.treatment-grid{gap:26px}.side-card{position:static}.step:after{display:none}}
@media(max-width:650px){body{padding-bottom:62px}.wrap{width:min(calc(100% - 26px),1200px)}.site-header{background:rgba(255,255,255,.94)}.navrow{min-height:72px}.brand img{width:86px;height:52px}.lang-switch a{font-size:8px;padding:5px 6px}.smart-strip a{font-size:10px;min-height:34px}.hero-cinematic{height:710px;min-height:710px}.hero-media{inset:-2%}.hero-scrim{background:linear-gradient(180deg,rgba(3,21,43,.44) 0%,rgba(3,21,43,.78) 48%,rgba(3,21,43,.93) 100%)}.hero-cinematic-inner{align-items:flex-end;padding-bottom:86px}.hero-copy h1{font-size:47px}.hero-lead{font-size:16px}.hero-actions{gap:8px}.hero-actions .btn{width:100%}.hero-trust{gap:6px}.hero-trust span{font-size:10px;padding:6px 8px}.scroll-cue{bottom:14px}.section{padding:66px 0}.section-head{margin-bottom:28px}.problem-grid{grid-template-columns:1fr}.problem-card:nth-child(n){grid-column:auto;min-height:124px}.problem-card strong{font-size:16px}.quick-note{align-items:flex-start;flex-direction:column}.treatment-bento,.services:not(.treatment-bento),.steps,.location-grid,.footer-grid{grid-template-columns:1fr}.service-card,.services:not(.treatment-bento) .service-card{min-height:auto}.service-media,.service-card-wide .service-media{height:210px}.feature-image,.photo,.treatment-image{height:330px}.feature-grid{gap:34px}.accident-feature:after{font-size:100px}.page-hero{padding:60px 0 44px}.page-hero h1{font-size:46px}.page-hero p{font-size:16px}.contact-band{padding:62px 0}.mobile-contact-dock{position:fixed;z-index:95;bottom:0;left:0;right:0;display:grid;grid-template-columns:1.2fr .8fr;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(7,29,59,.10);padding:8px 10px calc(8px + env(safe-area-inset-bottom))}.mobile-contact-dock a{min-height:44px;display:grid;place-items:center;font-size:12px;font-weight:900}.mobile-contact-dock a:first-child{background:var(--navy);color:#fff;border-radius:999px}.mobile-contact-dock a:last-child{color:var(--navy)}.quote{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.smart-strip,.pulse-dot,.hero-slide,.hero-slide img,.hero-aurora,.scroll-cue span,.btn-glow:after,.service-card.is-linked:after{animation:none!important}.reveal{opacity:1;filter:none;transform:none;transition:none}.service-card,.problem-card,.why-card,.btn,.feature-image img,.photo img{transition:none}.hero-slide{opacity:0}.hero-slide-1{opacity:1}}


/* FYVO 1.3 — brand intro, animated problem-to-treatment handoff and Utrecht map */
.brand-about{position:relative;overflow:hidden}.brand-about:before{content:"FYVO";position:absolute;inset-inline-end:-.04em;top:-.24em;font-family:Georgia,serif;font-size:clamp(150px,23vw,360px);font-weight:700;color:rgba(7,44,92,.025);letter-spacing:-.08em;pointer-events:none}.brand-about-copy{position:relative;z-index:1}.brand-about-photo{position:relative}.brand-about-photo:after{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(155,108,69,.28);border-radius:inherit;z-index:-1}
.problem-card.is-sending{transform:translateY(-7px) scale(1.015);border-color:rgba(155,108,69,.7);box-shadow:0 18px 45px rgba(7,44,92,.13)}
.fyvo-beam-layer{position:absolute;inset:0 0 auto 0;width:100%;height:var(--beam-h,100vh);pointer-events:none;z-index:32;overflow:visible}.fyvo-match-path{fill:none;stroke:url(#fyvo-beam-gradient);stroke-width:2.25;filter:drop-shadow(0 0 7px rgba(41,111,179,.32));stroke-linecap:round}.fyvo-match-orb{fill:#fff;stroke:#9b6c45;stroke-width:3;filter:drop-shadow(0 0 10px rgba(155,108,69,.55))}
.service-card.is-linked{transform:translateY(-8px) scale(1.035);z-index:4;border-color:rgba(155,108,69,.72)!important;box-shadow:0 28px 70px rgba(7,44,92,.20)!important}.service-card.is-linked:before{opacity:1!important}.service-card.is-linked .service-content h3{color:var(--blue)}
.map-section{background:linear-gradient(180deg,#fff 0%,#f4f9fc 100%);overflow:hidden}.map-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:22px;align-items:stretch}.map-location-list{display:grid;gap:14px}.map-location-card{position:relative;display:grid;grid-template-columns:18px 1fr;gap:14px;padding:24px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 8px 30px rgba(7,44,92,.055);transition:.35s ease}.map-location-card:hover,.map-location-card.is-active{transform:translateY(-3px);border-color:rgba(41,111,179,.42);box-shadow:0 18px 42px rgba(7,44,92,.11)}.map-pin-dot{width:11px;height:11px;margin-top:8px;border-radius:50%;background:var(--bronze);box-shadow:0 0 0 7px rgba(155,108,69,.10)}.map-location-card strong{display:block;font-family:Georgia,serif;color:var(--navy);font-size:22px}.map-location-card p{margin:4px 0;color:var(--muted);font-size:14px}.map-location-card small{display:block;color:var(--blue);font-weight:800;margin-bottom:12px}.map-location-card a{color:var(--navy);font-size:13px;font-weight:900}.fyvo-map-shell{position:relative;min-height:460px;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:0 18px 55px rgba(7,44,92,.10);background:#eaf2f7}.fyvo-map{position:absolute;inset:0;z-index:2}.map-fallback{position:absolute;inset:0;display:grid;place-items:center;font-family:Georgia,serif;color:var(--navy);font-size:28px;background:radial-gradient(circle at 30% 30%,#f5fbff,#dbeaf4)}.leaflet-control-attribution{font-size:9px!important}.fyvo-map .leaflet-popup-content-wrapper{border-radius:14px;box-shadow:0 12px 34px rgba(7,44,92,.14)}
@media(max-width:900px){.map-layout{grid-template-columns:1fr}.fyvo-map-shell{min-height:390px}.service-card.is-linked{transform:translateY(-5px) scale(1.018)}}
@media(max-width:640px){.fyvo-beam-layer{display:none}.map-location-card{padding:19px}.fyvo-map-shell{min-height:330px}.brand-about-photo:after{display:none}}
@media(prefers-reduced-motion:reduce){.problem-card.is-sending,.service-card.is-linked,.map-location-card{transition:none}.fyvo-beam-layer{display:none}}

/* =========================================================
   FYVO 1.4 — visual help navigator + editorial calm journey
   Rebuild of the two homepage sections approved in the mockup.
   ========================================================= */

/* ---------- How can we help? ---------- */
.help-visual-section{
  position:relative;
  overflow:hidden;
  padding:24px 0 36px;
  background:
    radial-gradient(circle at 46% 18%, rgba(193,216,231,.48), transparent 28%),
    linear-gradient(180deg,#f9fbfc 0%,#f5f1ec 72%,#fbfaf7 100%);
}
.help-visual-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.88),transparent 24%,transparent 76%,rgba(255,255,255,.65));
}
.help-visual-wrap{position:relative;z-index:1}
.help-stage{
  position:relative;
  min-height:760px;
  border-radius:34px;
  overflow:hidden;
  background:
    radial-gradient(circle at 52% 18%,rgba(222,235,244,.92),rgba(244,241,236,.55) 42%,rgba(255,255,255,.88) 78%),
    #f8f6f2;
  box-shadow:0 20px 70px rgba(6,44,90,.085), inset 0 0 0 1px rgba(255,255,255,.68);
  isolation:isolate;
}
.help-stage:before{
  content:"";
  position:absolute;
  width:540px;height:540px;
  left:50%;top:46%;transform:translate(-50%,-50%);
  border:1px solid rgba(107,151,183,.18);
  border-radius:50%;
  box-shadow:0 0 0 48px rgba(255,255,255,.13),0 0 0 100px rgba(255,255,255,.10);
  z-index:0;
}
.help-copy-panel{
  position:absolute;
  z-index:7;
  left:36px;
  top:78px;
  width:265px;
}
[dir="rtl"] .help-copy-panel{left:auto;right:36px}
.help-copy-panel h2{
  margin:8px 0 18px;
  font-size:clamp(52px,5.1vw,82px);
  line-height:.92;
  letter-spacing:-.052em;
  max-width:290px;
}
.help-copy-panel h2::first-line{color:var(--navy)}
.help-copy-panel p{margin:0;color:#516c7f;font-size:15px;line-height:1.65;max-width:245px}
.help-hand-note{
  margin-top:50px;
  max-width:230px;
  color:var(--bronze);
  font-family:Georgia,serif;
  font-size:14px;
  line-height:1.55;
  font-style:italic;
  transform:rotate(-2deg);
}
.help-hand-note span{display:inline-block;margin-inline-end:8px;font-size:24px;transform:rotate(14deg)}

.help-person{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:-2px;
  width:min(29%,340px);
  height:auto;
  aspect-ratio:257 / 560;
  transform:translateX(-50%);
  overflow:hidden;
  border-radius:48% 48% 10px 10px / 23% 23% 8px 8px;
  filter:saturate(.78) contrast(.98);
}
[dir="rtl"] .help-person{left:50%;right:auto}
.help-person:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 62%,rgba(247,243,238,.18) 84%,rgba(247,243,238,.55));
  pointer-events:none;
}
.help-person img{width:100%;height:100%;object-fit:fill;object-position:center center;display:block}

.body-hotspot{
  position:absolute;
  z-index:5;
  width:28px;height:28px;
  margin:-14px 0 0 -14px;
  border-radius:50%;
  background:rgba(255,255,255,.95);
  border:3px solid rgba(171,113,73,.82);
  box-shadow:0 0 0 12px rgba(205,147,105,.13),0 0 24px rgba(179,117,73,.34);
  transition:.28s ease;
}
.body-hotspot:after{content:"";position:absolute;inset:-16px;border:1px solid rgba(255,255,255,.55);border-radius:50%}
.body-hotspot.is-active{transform:scale(1.22);box-shadow:0 0 0 15px rgba(47,120,185,.12),0 0 30px rgba(47,120,185,.45);border-color:#5c98c7}
/* Hotspots calibrated to the bundled FYVO rear-body image (257×560).
   The desktop image preserves that exact aspect ratio, so these percentage coordinates stay locked to the anatomy. */
.hotspot-neck{left:38.1%;top:30.0%}
.hotspot-shoulder{left:19.5%;top:41.1%}
.hotspot-back{left:38.1%;top:59.1%}
.hotspot-hip{left:38.1%;top:76.1%}
.hotspot-pelvis{left:50.6%;top:87.9%}
.hotspot-leg{left:76%;top:89.5%}

.help-concern{
  --hx:50%;--hy:50%;
  position:absolute;
  z-index:6;
  display:grid;
  grid-template-columns:68px minmax(0,1fr) 36px;
  align-items:center;
  gap:13px;
  width:285px;
  min-height:94px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.80);
  border-radius:18px;
  background:rgba(255,255,255,.91);
  backdrop-filter:blur(18px);
  color:var(--navy);
  box-shadow:0 15px 40px rgba(6,44,90,.09), inset 0 1px 0 rgba(255,255,255,.72);
  transition:transform .35s var(--ease),border-color .35s ease,box-shadow .35s ease,background .35s ease;
  overflow:hidden;
}
.help-concern:before{
  content:"";
  position:absolute;inset:0;
  opacity:0;
  background:radial-gradient(220px circle at var(--hx) var(--hy),rgba(114,162,199,.15),transparent 66%);
  transition:.25s ease;
  pointer-events:none;
}
.help-concern:hover,.help-concern:focus-visible,.help-concern.is-sending{
  transform:translateY(-6px) scale(1.018);
  border-color:rgba(155,108,69,.45);
  background:rgba(255,255,255,.97);
  box-shadow:0 22px 52px rgba(6,44,90,.14);
  outline:none;
}
.help-concern:hover:before,.help-concern:focus-visible:before{opacity:1}
.help-concern img{width:68px;height:68px;object-fit:cover;border-radius:12px;filter:saturate(.8)}
.help-concern-copy{min-width:0}.help-concern-copy strong{display:block;font-size:14px;line-height:1.3}.help-concern-copy small{display:block;margin-top:4px;color:#667e91;font-size:11px}
.help-arrow{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;border:1px solid #cbd9e3;background:#fff;color:var(--navy);font-size:17px;box-shadow:0 4px 12px rgba(7,44,92,.08);transition:.25s ease}
.help-concern:hover .help-arrow{transform:translateX(3px);background:var(--navy);color:#fff;border-color:var(--navy)}
[dir="rtl"] .help-concern:hover .help-arrow{transform:translateX(-3px)}

.concern-a{left:24%;top:70px}.concern-b{right:5.2%;top:150px}.concern-c{left:23.5%;top:270px}.concern-d{right:4.5%;top:325px}.concern-e{right:6.5%;top:510px}.concern-f{left:28%;top:485px}
[dir="rtl"] .concern-a{left:auto;right:24%}[dir="rtl"] .concern-b{right:auto;left:5.2%}[dir="rtl"] .concern-c{left:auto;right:23.5%}[dir="rtl"] .concern-d{right:auto;left:4.5%}[dir="rtl"] .concern-e{right:auto;left:6.5%}[dir="rtl"] .concern-f{left:auto;right:28%}

.help-connectors{position:absolute;z-index:4;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.help-connectors path{fill:none;stroke:rgba(255,255,255,.92);stroke-width:1.5;filter:drop-shadow(0 0 3px rgba(122,91,70,.25));transition:stroke .25s ease,stroke-width .25s ease,filter .25s ease}
.help-connectors path.is-active{stroke:#b98563;stroke-width:2.2;filter:drop-shadow(0 0 7px rgba(185,133,99,.38))}
.help-connectors circle{fill:#b98563;stroke:#fff;stroke-width:2}

.help-bottom-message{
  position:absolute;z-index:7;left:35px;right:35px;bottom:24px;
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  padding-top:18px;border-top:1px solid rgba(7,44,92,.10);
  color:#61798b;font-size:12px;
}
.help-bottom-message>span{font-family:Georgia,serif;color:var(--bronze);font-style:italic;font-size:17px}
.help-bottom-message a{color:var(--navy);font-weight:900;white-space:nowrap}.help-bottom-message b{font-size:17px}

/* ---------- Calm / clarity / plan editorial ---------- */
.journey-editorial-section{padding:22px 0 86px;background:linear-gradient(180deg,#fbfaf7,#f8f5f1)}
.journey-shell{position:relative}
.journey-visual{
  position:relative;
  min-height:720px;
  overflow:hidden;
  border-radius:30px;
  background:#d9e4ea;
  box-shadow:0 24px 70px rgba(6,44,90,.10);
}
.journey-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%;filter:saturate(.78) contrast(.94)}
.journey-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(250,249,246,.98) 0%,rgba(250,249,246,.93) 38%,rgba(250,249,246,.25) 67%,rgba(250,249,246,.10) 100%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.10) 52%,rgba(247,245,241,.76) 80%,rgba(247,245,241,.97));
}
[dir="rtl"] .journey-overlay{background:linear-gradient(270deg,rgba(250,249,246,.98) 0%,rgba(250,249,246,.93) 38%,rgba(250,249,246,.25) 67%,rgba(250,249,246,.10) 100%),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.10) 52%,rgba(247,245,241,.76) 80%,rgba(247,245,241,.97))}
.journey-heading{position:absolute;z-index:3;top:48px;left:50px;width:min(52%,610px)}
[dir="rtl"] .journey-heading{left:auto;right:50px}
.journey-heading h2{margin:8px 0 15px;font-size:clamp(50px,5.6vw,78px);line-height:.96;letter-spacing:-.052em;max-width:620px}
.journey-heading p{margin:0;max-width:520px;color:#51697b;font-size:16px;line-height:1.65}
.journey-quote{position:absolute;z-index:3;top:76px;right:44px;width:250px;margin:0;font-family:Georgia,serif;font-size:22px;line-height:1.4;color:#17394f;font-style:italic;text-align:left}
[dir="rtl"] .journey-quote{right:auto;left:44px;text-align:right}
.journey-quote:after{content:"";display:block;width:120px;height:1px;background:var(--bronze);margin-top:12px;opacity:.65}
.journey-quote span{display:block;margin-top:8px;font-family:inherit;font-size:12px;letter-spacing:.15em;color:var(--bronze);font-style:normal}

.journey-cards{
  position:absolute;z-index:5;
  left:22px;right:22px;bottom:22px;
  display:grid;grid-template-columns:repeat(5,1fr);gap:8px;
}
.journey-card{
  position:relative;
  min-height:198px;
  padding:25px 21px 20px;
  border:1px solid rgba(255,255,255,.74);
  border-radius:18px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  box-shadow:0 13px 40px rgba(6,44,90,.07);
  overflow:hidden;
  transition:.32s var(--ease);
}
.journey-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.72),transparent 46%);pointer-events:none}
.journey-card:hover{transform:translateY(-7px);background:rgba(255,255,255,.92);box-shadow:0 20px 52px rgba(6,44,90,.12)}
.journey-index{position:absolute;left:15px;bottom:14px;color:#b27f5c;font-size:10px;letter-spacing:.08em}
[dir="rtl"] .journey-index{left:auto;right:15px}
.journey-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:16px;border-radius:50%;background:#f8efe8;color:#9f6b47;font-size:24px;box-shadow:inset 0 0 0 1px rgba(159,107,71,.08)}
.journey-card h3{position:relative;margin:0 0 6px;color:var(--navy);font-family:Georgia,serif;font-size:18px;line-height:1.2}.journey-card p{position:relative;margin:0;color:#6c8192;font-size:12.5px;line-height:1.55}
.journey-rail{position:absolute;z-index:4;left:9%;right:9%;bottom:215px;height:42px;pointer-events:none}
.journey-rail span{position:absolute;left:0;right:0;top:20px;height:1.5px;background:linear-gradient(90deg,transparent,#b67d57 10%,#d8ae8d 50%,#b67d57 90%,transparent);transform:skewY(-1deg)}
.journey-rail i{position:absolute;top:15px;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid #b67d57;box-shadow:0 0 0 4px rgba(182,125,87,.08)}
.journey-rail i:nth-of-type(1){left:9%}.journey-rail i:nth-of-type(2){left:29%}.journey-rail i:nth-of-type(3){left:49%}.journey-rail i:nth-of-type(4){left:69%}.journey-rail i:nth-of-type(5){left:89%}

.journey-footer-row{display:grid;grid-template-columns:1fr auto 1fr;gap:26px;align-items:center;padding:26px 16px 0}
.journey-contact-mini{display:flex;gap:24px;flex-wrap:wrap}
.journey-contact-mini a{display:grid;grid-template-columns:28px auto;column-gap:9px;align-items:center;color:var(--navy)}
.journey-contact-mini a>span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #d9b18f;color:#a66f47}
.journey-contact-mini small{font-size:10px;color:#718799;line-height:1}.journey-contact-mini strong{font-size:11px;line-height:1.3;font-weight:800}
.journey-cta{min-width:260px;box-shadow:0 14px 32px rgba(6,44,90,.18)}
.journey-signoff{justify-self:end;max-width:220px;color:var(--bronze);font-family:Georgia,serif;font-size:16px;font-style:italic;text-align:right}
[dir="rtl"] .journey-signoff{justify-self:start;text-align:left}

/* Keep the treatment handoff visible and polished after the new navigator. */
.help-concern.is-sending{z-index:12}
.service-card.is-linked{animation:fyvo-linked-pulse 1.1s ease both}
@keyframes fyvo-linked-pulse{0%{box-shadow:0 0 0 0 rgba(155,108,69,.0)}35%{box-shadow:0 0 0 10px rgba(155,108,69,.10),0 30px 80px rgba(7,44,92,.20)}100%{box-shadow:0 28px 70px rgba(7,44,92,.20)}}

@media(max-width:1180px){
  .help-stage{min-height:830px}.help-person{width:min(32%,365px);height:auto}.help-copy-panel{left:28px;top:58px;width:235px}[dir="rtl"] .help-copy-panel{left:auto;right:28px}
  .help-copy-panel h2{font-size:56px}.help-concern{width:250px;grid-template-columns:58px minmax(0,1fr) 32px}.help-concern img{width:58px;height:58px}
  .concern-a{left:23%;top:70px}.concern-b{right:3%;top:165px}.concern-c{left:21%;top:280px}.concern-d{right:2.5%;top:335px}.concern-e{right:4%;top:530px}.concern-f{left:24%;top:510px}
  .journey-heading{width:58%}.journey-quote{width:210px;font-size:19px}.journey-card{padding:22px 16px 18px}.journey-card h3{font-size:16px}
}

@media(max-width:980px){
  .help-visual-section{padding-top:12px}.help-stage{min-height:auto;padding:36px 24px 28px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.help-stage:before,.help-connectors,.body-hotspot{display:none}
  .help-copy-panel,.help-person,.help-concern,.help-bottom-message{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;transform:none!important}
  .help-copy-panel{grid-column:1/-1;padding:0 4px}.help-copy-panel h2{font-size:56px;max-width:620px}.help-copy-panel p{max-width:620px}.help-hand-note{margin-top:18px;max-width:500px}
  .help-person{grid-column:1/-1;height:430px;border-radius:26px;margin:6px 0 10px}.help-person img{object-position:center 42%}
  .help-concern{min-height:92px}.help-bottom-message{grid-column:1/-1;margin-top:12px;padding-top:18px}
  .journey-visual{min-height:auto;padding:38px 22px 20px}.journey-bg,.journey-overlay{position:absolute}.journey-heading,.journey-quote,.journey-cards,.journey-rail{position:relative;left:auto!important;right:auto!important;top:auto;bottom:auto;width:auto}
  .journey-heading{z-index:3;max-width:650px}.journey-heading h2{font-size:55px}.journey-quote{z-index:3;margin-top:28px;max-width:420px}.journey-rail{display:none}.journey-cards{z-index:5;margin-top:240px;grid-template-columns:repeat(2,1fr);gap:10px}.journey-card:last-child{grid-column:1/-1}.journey-footer-row{grid-template-columns:1fr auto;}.journey-signoff{display:none}
}

@media(max-width:650px){
  .help-stage{border-radius:24px;padding:28px 14px 20px;grid-template-columns:1fr}.help-copy-panel{grid-column:auto}.help-copy-panel h2{font-size:46px}.help-person{grid-column:auto;height:340px}.help-concern{grid-template-columns:58px minmax(0,1fr) 31px;width:100%!important}.help-bottom-message{grid-column:auto;flex-direction:column;align-items:flex-start;gap:9px}.help-bottom-message>span{font-size:15px}
  .journey-editorial-section{padding:12px 0 66px}.journey-visual{border-radius:24px;padding:30px 14px 16px}.journey-heading h2{font-size:45px}.journey-heading p{font-size:14px}.journey-quote{margin-top:22px;font-size:18px;width:85%}.journey-cards{margin-top:210px;grid-template-columns:1fr}.journey-card:last-child{grid-column:auto}.journey-card{min-height:150px;padding:18px 16px 18px 76px}.journey-icon{position:absolute;left:16px;top:20px;width:44px;height:44px}[dir="rtl"] .journey-card{padding:18px 76px 18px 16px}[dir="rtl"] .journey-icon{left:auto;right:16px}.journey-index{bottom:9px}.journey-footer-row{grid-template-columns:1fr;gap:18px;padding:22px 4px 0}.journey-contact-mini{gap:12px;flex-direction:column}.journey-cta{width:100%;min-width:0}.journey-signoff{display:block;justify-self:start;text-align:left}[dir="rtl"] .journey-signoff{text-align:right}
}

@media(prefers-reduced-motion:reduce){
  .help-concern,.body-hotspot,.journey-card{transition:none}.service-card.is-linked{animation:none}.journey-card:hover,.help-concern:hover{transform:none}
}


/* ===== FYVO v1.7 precision QA: hero, map, mobile ===== */
:root{--header-safe:118px}
.hero-cinematic{
  min-height:clamp(650px,calc(100svh - 118px),820px);
  height:auto;
  isolation:isolate;
}
.hero-media{inset:-2.5%;transform:scale(1.018);backface-visibility:hidden}
.hero-video,.hero-slide img{object-position:center 38%}
.hero-scrim{
  background:
    linear-gradient(90deg,rgba(3,21,43,.91) 0%,rgba(3,21,43,.72) 38%,rgba(3,21,43,.30) 67%,rgba(3,21,43,.18) 100%),
    linear-gradient(180deg,rgba(3,21,43,.08) 0%,rgba(3,21,43,.12) 58%,rgba(3,21,43,.58) 100%);
}
.hero-cinematic-inner{min-height:inherit;height:auto;padding:clamp(64px,8vh,96px) 0 96px}
.hero-copy{width:min(760px,72vw)}
.hero-copy h1{text-wrap:balance}
.hero-lead{text-wrap:pretty}
.hero-actions .btn{min-width:190px}
.hero-trust span{box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.scroll-cue{bottom:24px}

/* Map: make the two-location choice visually clear and keyboard friendly. */
.map-layout{grid-template-columns:minmax(300px,.74fr) minmax(0,1.26fr);gap:26px}
.map-location-card{cursor:pointer;outline:none;isolation:isolate}
.map-location-card:focus-visible{border-color:var(--blue);box-shadow:0 0 0 4px rgba(41,111,179,.13),0 18px 42px rgba(7,44,92,.11)}
.map-location-card.is-active:after{content:"";position:absolute;inset:8px;border:1px solid rgba(155,108,69,.25);border-radius:16px;pointer-events:none}
.fyvo-map-shell{min-height:480px}
.fyvo-map{background:#eaf2f7}
.fyvo-map .leaflet-marker-icon{filter:drop-shadow(0 5px 8px rgba(7,44,92,.22))}
.map-fallback{z-index:3}.fyvo-map-shell.map-ready .map-fallback{display:none}

/* Mobile/tablet QA: prevent overlap, accidental clipping, and dense controls. */
@media(max-width:900px){
  :root{--header-safe:76px}
  .lang-switch{max-width:190px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;white-space:nowrap}
  .lang-switch::-webkit-scrollbar{display:none}
  .mainnav{max-height:min(70svh,520px);overflow:auto;overscroll-behavior:contain}
  .hero-cinematic{min-height:clamp(620px,82svh,760px)}
  .hero-media{inset:0;transform:none!important}
  .hero-video,.hero-slide img{object-position:62% 38%}
  .hero-cinematic-inner{align-items:flex-end;padding:74px 0 92px}
  .hero-copy{width:min(690px,92%)}
  .hero-copy h1{max-width:12ch}
  .map-layout{grid-template-columns:1fr}
  .map-location-list{grid-template-columns:1fr 1fr}
  .fyvo-map-shell{min-height:390px}
}
@media(max-width:650px){
  :root{--header-safe:72px}
  html,body{overflow-x:hidden}
  .navrow{gap:7px}
  .brand{flex:0 0 auto}.brand img{width:82px;height:50px}
  .lang-switch{max-width:150px;margin-inline-start:auto}
  .lang-switch a{min-width:26px;text-align:center}
  .mobile-toggle{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center}
  .smart-strip{overflow:hidden}.smart-strip a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-inline:14px}
  .hero-cinematic{min-height:660px;height:auto}
  .hero-video,.hero-slide img{object-position:64% 34%}
  .hero-scrim{background:linear-gradient(180deg,rgba(3,21,43,.25) 0%,rgba(3,21,43,.56) 34%,rgba(3,21,43,.95) 78%,rgba(3,21,43,.98) 100%)}
  .hero-cinematic-inner{min-height:660px;padding:52px 0 84px;align-items:flex-end}
  .hero-copy{width:100%}
  .hero-copy h1{font-size:clamp(42px,12.6vw,54px);line-height:.96;max-width:10.6ch;margin-bottom:18px}
  .hero-lead{font-size:15.5px;line-height:1.55;max-width:36ch}
  .hero-actions{margin-top:22px}.hero-actions .btn{min-width:0;width:100%}
  .hero-trust{margin-top:18px}.hero-trust span{font-size:9.5px}
  .scroll-cue{display:none}
  .help-person{height:min(88vw,360px)}
  .help-person img{object-position:center 42%}
  .journey-visual{overflow:hidden}
  .journey-bg{object-position:58% center}
  .map-location-list{grid-template-columns:1fr}
  .map-location-card{min-height:150px;padding:18px 18px 17px}
  .fyvo-map-shell{min-height:310px;border-radius:22px}
  .mobile-contact-dock{padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .site-footer{padding-bottom:88px}
}
@media(max-width:380px){
  .wrap{width:min(calc(100% - 20px),1200px)}
  .brand img{width:74px}
  .lang-switch{max-width:136px}.lang-switch a{padding:5px 5px}
  .hero-cinematic,.hero-cinematic-inner{min-height:640px}
  .hero-copy h1{font-size:41px}
  .hero-lead{font-size:14.5px}
  .help-copy-panel h2,.journey-heading h2{font-size:40px}
}
@media(prefers-reduced-motion:reduce){
  .hero-media{transform:none!important}
  .map-location-card:hover{transform:none}
}

/* =========================================================
   FYVO 1.7 — location showcase redesign only
   Based on the approved Utrecht locations reference.
   No other site section is intentionally altered by this block.
   ========================================================= */
.location-showcase{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 18%,rgba(211,232,241,.42),transparent 24%),
    radial-gradient(circle at 87% 14%,rgba(215,179,139,.12),transparent 20%),
    linear-gradient(180deg,#fdfbf7 0%,#fbfaf7 100%);
  padding-top:82px;
  padding-bottom:74px;
}
.location-showcase:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.4),transparent 24%,transparent 76%,rgba(255,255,255,.32));
}
.location-showcase>.wrap{position:relative;z-index:1}
.location-showcase-head{text-align:center;max-width:980px;margin:0 auto 34px}
.location-kicker{display:inline-flex;align-items:center;justify-content:center;gap:18px;color:var(--bronze);font-size:12px;font-weight:850;letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px}
.location-kicker i{display:block;width:58px;height:1px;background:linear-gradient(90deg,transparent,var(--bronze))}
.location-kicker i:last-child{background:linear-gradient(90deg,var(--bronze),transparent)}
.location-showcase-head h2{font-size:clamp(45px,5.3vw,69px);margin:0 0 12px;letter-spacing:-.042em}
.location-showcase-head p{max-width:900px;margin:0 auto;color:#526a7d;font-size:17px;line-height:1.55}

.location-showcase-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:26px;align-items:stretch}
.location-showcase .location-map-panel{min-height:494px;border-radius:25px;border:1px solid rgba(198,181,157,.45);box-shadow:0 18px 54px rgba(65,52,36,.10);background:#e9f0ea;overflow:hidden}
.location-showcase .fyvo-map{z-index:2}
.location-showcase .leaflet-container{font-family:inherit;background:#edf2ed}
.location-showcase .leaflet-control-zoom{border:0!important;box-shadow:0 10px 28px rgba(7,29,59,.12)!important;border-radius:14px!important;overflow:hidden;margin:16px!important}
.location-showcase .leaflet-control-zoom a{width:40px;height:40px;line-height:39px;border:0!important;color:var(--navy);font-size:22px;background:rgba(255,255,255,.94)}
.location-showcase .leaflet-control-zoom a:hover{background:#fff;color:var(--bronze)}
.location-showcase .leaflet-control-attribution{background:rgba(255,255,255,.78)!important;color:#607489!important}
.location-showcase .leaflet-popup-content-wrapper{border-radius:16px;box-shadow:0 16px 40px rgba(7,29,59,.16)}
.location-showcase .leaflet-popup-content{margin:14px 16px;line-height:1.4;color:var(--navy)}

.map-floating-badge{position:absolute;z-index:5;inset-inline-start:20px;top:20px;display:flex;align-items:center;gap:11px;padding:12px 17px;border-radius:18px;background:rgba(255,255,255,.93);box-shadow:0 12px 34px rgba(7,29,59,.11);backdrop-filter:blur(12px);color:var(--navy);pointer-events:none}
.map-badge-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:#f5eee5;color:var(--bronze);font-size:24px}
.map-floating-badge strong{font-size:14px;line-height:1.25;max-width:118px}
.map-script-note{position:absolute;z-index:5;inset-inline-start:28px;bottom:24px;max-width:190px;color:#0d3152;font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-style:italic;font-size:22px;line-height:1.08;transform:rotate(-4deg);text-shadow:0 1px 0 rgba(255,255,255,.7);pointer-events:none}
.map-script-note span{display:block;width:90px;height:2px;background:var(--bronze);margin:9px 0 0 58px;transform:rotate(-7deg);border-radius:9px}
[dir="rtl"] .map-script-note span{margin-left:0;margin-right:58px}
.map-reset-view{position:absolute;z-index:6;inset-inline-end:18px;bottom:18px;width:44px;height:44px;border:1px solid rgba(255,255,255,.92);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:var(--navy);box-shadow:0 10px 28px rgba(7,29,59,.14);cursor:pointer;font-size:21px;transition:transform .25s var(--ease),box-shadow .25s var(--ease),color .25s var(--ease)}
.map-reset-view:hover,.map-reset-view:focus-visible{transform:translateY(-2px) rotate(-8deg);box-shadow:0 14px 32px rgba(7,29,59,.18);color:var(--bronze)}

.fyvo-map-marker-wrap{background:transparent!important;border:0!important}
.fyvo-map-marker{position:relative;width:34px;height:42px;filter:drop-shadow(0 7px 9px rgba(7,29,59,.20));transition:transform .25s var(--ease)}
.fyvo-map-marker:before{content:"";position:absolute;left:4px;top:2px;width:26px;height:26px;border-radius:50% 50% 50% 5px;background:#aa7a43;transform:rotate(-45deg);border:2px solid #fff;box-shadow:0 0 0 4px rgba(170,122,67,.13)}
.fyvo-map-marker:after{content:"";position:absolute;left:13px;top:11px;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.32)}
.fyvo-map-marker.is-active{transform:scale(1.24) translateY(-2px)}
.fyvo-map-marker.is-active:before{background:var(--bronze);box-shadow:0 0 0 7px rgba(156,108,70,.18),0 0 0 12px rgba(255,255,255,.34)}
.fyvo-map-marker.is-hover{transform:scale(1.13)}

.location-card-stack{display:grid;gap:16px;align-content:stretch}
.location-showcase .map-location-card{position:relative;display:grid;grid-template-columns:184px minmax(0,1fr);gap:0;min-height:238px;padding:0;border:1px solid rgba(222,224,222,.88);border-radius:22px;background:rgba(255,255,255,.90);overflow:hidden;box-shadow:0 12px 34px rgba(45,49,45,.07);transform:none;transition:border-color .3s var(--ease),box-shadow .3s var(--ease),transform .3s var(--ease),background .3s var(--ease)}
.location-showcase .map-location-card:hover,.location-showcase .map-location-card.is-hovered{transform:translateY(-2px);border-color:rgba(156,108,70,.38);box-shadow:0 17px 40px rgba(48,42,35,.10)}
.location-showcase .map-location-card.is-active{transform:translateY(-2px);border-color:#ad7a3f;box-shadow:0 18px 46px rgba(101,72,39,.14),inset 0 0 0 1px rgba(173,122,63,.45);background:#fffdf9}
.location-showcase .map-location-card.is-active:before{content:"";position:absolute;z-index:4;inset:-1px;border-radius:22px;pointer-events:none;background:linear-gradient(110deg,transparent 12%,rgba(203,158,108,.28) 42%,transparent 62%);transform:translateX(-120%);animation:locationCardSweep 1.15s var(--ease) both}
@keyframes locationCardSweep{to{transform:translateX(120%)}}
.location-card-photo{position:relative;min-height:100%;overflow:hidden;background:linear-gradient(145deg,#edf3ef,#dce8e4)}
.location-card-photo:after{content:"";position:absolute;inset:0;box-shadow:inset -18px 0 30px rgba(255,255,255,.14);pointer-events:none}
[dir="rtl"] .location-card-photo:after{box-shadow:inset 18px 0 30px rgba(255,255,255,.14)}
.location-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease),filter .4s var(--ease);filter:saturate(.88) contrast(.98)}
.location-showcase .map-location-card:hover .location-card-photo img,.location-showcase .map-location-card.is-active .location-card-photo img{transform:scale(1.035);filter:saturate(.98)}
.location-card-content{position:relative;padding:26px 25px 22px;min-width:0}
.location-card-label{display:block;color:#af7a43;font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;margin-bottom:7px}
.location-selected-badge{position:absolute;top:10px;inset-inline-end:10px;padding:7px 13px;border-radius:999px;background:linear-gradient(135deg,#b9854c,#9d6d3a);color:#fff;font-size:10px;font-weight:850;box-shadow:0 8px 20px rgba(121,80,38,.18);opacity:0;transform:translateY(-5px) scale(.92);transition:.25s var(--ease)}
.map-location-card.is-active .location-selected-badge{opacity:1;transform:none}
.location-card-content h3{margin:0;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:29px;line-height:1.05;letter-spacing:-.025em;padding-inline-end:80px}
body.rtl .location-card-content h3{font-family:Tahoma,Arial,sans-serif;font-weight:700;letter-spacing:0}
.location-address{margin:5px 0 9px;color:#163956;font-size:17px;line-height:1.35}
.location-appointment{margin:0 0 16px;color:#36576c;font-size:13px;font-weight:650;display:flex;align-items:center;gap:8px}
.location-appointment span{color:var(--bronze);font-size:17px}
.location-card-actions{display:flex;gap:9px;flex-wrap:wrap}
.location-action{min-height:44px;border:1px solid #dec5a9;border-radius:12px;padding:9px 12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--navy);font-size:12px;font-weight:850;cursor:pointer;transition:transform .22s var(--ease),background .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease)}
.location-action span{font-size:16px;line-height:1}.location-action b{font-size:18px;line-height:1;font-weight:500;margin-inline-start:2px}
.location-action:hover,.location-action:focus-visible{transform:translateY(-2px);border-color:#c9a983;box-shadow:0 8px 22px rgba(90,68,46,.10)}
.location-action-primary{background:linear-gradient(135deg,#b78145,#9c6c36);border-color:#a97945;color:#fff}
.location-action-primary:hover,.location-action-primary:focus-visible{background:linear-gradient(135deg,#c08b50,#9d6932);color:#fff}
.location-action-whatsapp{background:#eaf9f6;border-color:#bee8df}
.location-action-whatsapp:hover,.location-action-whatsapp:focus-visible{background:#ddf5ef;border-color:#a8ded3}

.location-trust-strip{margin-top:25px;display:grid;grid-template-columns:minmax(360px,1.65fr) repeat(3,minmax(160px,.95fr)) minmax(150px,.75fr);gap:0;align-items:stretch;border:1px solid rgba(220,218,212,.9);border-radius:22px;background:rgba(255,255,255,.91);box-shadow:0 13px 38px rgba(63,53,42,.075);overflow:hidden}
.location-profile-block{display:grid;grid-template-columns:154px 1fr;gap:18px;align-items:center;padding:12px 22px 12px 12px;border-inline-end:1px solid #e7e1d9}
.location-profile-photo{height:138px;border-radius:17px;overflow:hidden;background:#e7f1ee}
.location-profile-photo img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9)}
.location-profile-copy blockquote{margin:0;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.4}
body.rtl .location-profile-copy blockquote{font-family:Tahoma,Arial,sans-serif}
.location-profile-copy small{display:block;margin-top:13px;color:var(--bronze);font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.location-value-item{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:start;padding:24px 18px;border-inline-end:1px solid #e7e1d9;transition:background .25s var(--ease)}
.location-value-item:hover{background:#fffaf5}
.location-value-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#f3eee7;color:#a8753e;font-size:22px}
.location-value-item strong{display:block;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:15px;line-height:1.15;margin-bottom:9px}
body.rtl .location-value-item strong{font-family:Tahoma,Arial,sans-serif}
.location-value-item p{margin:0;color:#6b7d8b;font-size:11px;line-height:1.45}
.location-strip-logo{padding:20px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.location-strip-logo img{width:115px;height:62px;object-fit:contain;margin-bottom:11px}
.location-strip-logo span{display:block;color:#b68a61;font-size:9px;line-height:1.45;letter-spacing:.17em;text-transform:uppercase}

@media(max-width:1120px){
  .location-showcase-grid{grid-template-columns:1fr}
  .location-showcase .location-map-panel{min-height:460px}
  .location-card-stack{grid-template-columns:1fr 1fr}
  .location-showcase .map-location-card{grid-template-columns:145px 1fr;min-height:224px}
  .location-card-content{padding:22px 18px 18px}
  .location-card-content h3{font-size:24px;padding-inline-end:64px}
  .location-card-actions{gap:7px}.location-action{font-size:11px;padding:8px 9px}
  .location-trust-strip{grid-template-columns:1.5fr 1fr 1fr}
  .location-profile-block{grid-column:span 2}.location-strip-logo{grid-column:auto}.location-value-item:nth-of-type(3){border-inline-end:0}
}
@media(max-width:820px){
  .location-showcase{padding-top:66px;padding-bottom:64px}
  .location-showcase-head p{font-size:15px}
  .location-card-stack{grid-template-columns:1fr}
  .location-showcase .map-location-card{grid-template-columns:170px 1fr}
  .location-trust-strip{grid-template-columns:1fr 1fr}
  .location-profile-block{grid-column:1/-1;border-inline-end:0;border-bottom:1px solid #e7e1d9}
  .location-value-item{border-bottom:1px solid #e7e1d9}
  .location-value-item:nth-of-type(3){border-inline-end:1px solid #e7e1d9}
  .location-strip-logo{border-inline-start:0}
}
@media(max-width:560px){
  .location-showcase{padding-top:58px;padding-bottom:58px}
  .location-kicker{gap:10px;font-size:10px}.location-kicker i{width:34px}
  .location-showcase-head{margin-bottom:25px}.location-showcase-head h2{font-size:43px}.location-showcase-head p{font-size:14px;line-height:1.6}
  .location-showcase .location-map-panel{min-height:390px;border-radius:20px}
  .map-floating-badge{top:13px;inset-inline-start:13px;padding:9px 12px}.map-badge-icon{width:32px;height:32px;font-size:19px}.map-floating-badge strong{font-size:11px;max-width:95px}
  .map-script-note{inset-inline-start:18px;bottom:18px;font-size:17px;max-width:145px}.map-script-note span{width:72px;margin-inline-start:42px}
  .map-reset-view{width:40px;height:40px;inset-inline-end:13px;bottom:13px}
  .location-showcase .map-location-card{grid-template-columns:1fr;min-height:0;border-radius:19px}
  .location-card-photo{height:175px;min-height:0}.location-card-photo:after{box-shadow:inset 0 -16px 28px rgba(255,255,255,.08)}
  .location-card-content{padding:20px}.location-card-content h3{font-size:26px;padding-inline-end:84px}.location-address{font-size:15px}
  .location-card-actions{display:grid;grid-template-columns:1fr 1fr}.location-action-primary{grid-column:1/-1}
  .location-trust-strip{grid-template-columns:1fr;border-radius:19px}
  .location-profile-block{grid-template-columns:105px 1fr;padding:11px}.location-profile-photo{height:116px}.location-profile-copy blockquote{font-size:15px}.location-profile-copy small{font-size:8px;margin-top:10px}
  .location-value-item{border-inline-end:0!important;border-bottom:1px solid #e7e1d9;padding:18px}
  .location-strip-logo{padding:24px 18px}.location-strip-logo img{width:110px}
}
@media(prefers-reduced-motion:reduce){
  .location-showcase .map-location-card.is-active:before{animation:none;display:none}
  .location-showcase .map-location-card,.location-card-photo img,.location-action,.map-reset-view,.fyvo-map-marker{transition:none!important}
}


/* =========================================================
   FYVO 1.8 — production readability, accessibility & device QA
   Keeps the approved visual design while improving legibility,
   touch targets, contrast, keyboard focus and map controls.
   ========================================================= */
:root{--muted:#5e7383}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:17px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:where(a,button,select,input,textarea,[tabindex]):focus-visible{outline:3px solid #2d7fa5;outline-offset:3px}
#content:focus{outline:none}
.mainnav a{font-size:15px;padding-inline:6px}
.topbar{font-size:13px}
.eyebrow{font-size:12px;letter-spacing:.15em}
.btn{min-height:50px;font-size:15px;padding-inline:22px}
.smart-strip a{min-height:44px;font-size:14px}
.hero-lead{font-size:20px;line-height:1.65}
.hero-trust span{font-size:14px;padding:8px 12px}
.lang-switch a{min-width:40px;min-height:40px;display:grid;place-items:center;font-size:12px;padding:7px}
.mobile-toggle{min-width:48px;min-height:48px}
.lang-select-mobile,.lang-select-label{display:none}
.service-card h3{font-size:21px}
.service-card p{font-size:15.5px;line-height:1.65}
.num{font-size:12px;color:#647d8f}
.textlink{min-height:44px;padding:9px 2px;font-size:15px}
.help-concern-copy strong{font-size:16px;line-height:1.4}.help-concern-copy small{font-size:14px;color:#566f80}
.help-bottom-message a{min-height:44px;display:inline-flex;align-items:center;font-size:15px}
.problem-card p,.quick-note{font-size:15px}
.page-hero p{font-size:18px;line-height:1.7}
.breadcrumbs{font-size:14px}
.faq summary{font-size:18px;line-height:1.5;min-height:48px;display:flex;align-items:center}
.faq p,.privacy-copy,.content-block p,.contact-band p{font-size:17px;line-height:1.72}
.side-card>a:not(.textlink){min-height:44px;display:flex;align-items:center;font-size:15px}
.contact-box small{font-size:13px;color:#c2d5df}.contact-box a{font-size:17px;padding-block:3px}
.site-footer p,.site-footer a{font-size:15px;line-height:1.6}.fineprint{font-size:13px;color:#93a9b8}
.journey-heading p{font-size:17px}.journey-card p{font-size:15px;line-height:1.62}.journey-card h3{font-size:19px}.journey-index{font-size:12px}.journey-contact-mini small{font-size:13px}.journey-contact-mini strong{font-size:15px}.journey-contact-mini a{min-height:48px}
.location-showcase-head p{font-size:17px;line-height:1.7}.location-kicker{font-size:12px;color:#8d5f31}.location-card-label{font-size:12px;color:#8d5f31}.location-selected-badge{font-size:12px}.location-address{font-size:18px}.location-appointment{font-size:15px}.location-action{min-height:48px;font-size:14px;padding:10px 14px}.location-profile-copy small{font-size:12px;color:#8d5f31}.location-value-item strong{font-size:17px;line-height:1.3}.location-value-item p{font-size:15px;line-height:1.6;color:#5b7080}.location-strip-logo span{font-size:11px;color:#8d5f31}.location-profile-copy blockquote{font-size:18px;line-height:1.55}
.map-floating-badge strong{font-size:13px}.map-reset-view{min-width:48px;min-height:48px}.leaflet-control-zoom a{width:44px!important;height:44px!important;line-height:44px!important;font-size:24px!important}.leaflet-control-attribution{font-size:12px!important;line-height:1.35}.fyvo-map-marker-wrap{width:44px!important;height:52px!important}.fyvo-map-marker{width:34px;height:42px}.fyvo-map-marker:after{width:10px;height:10px}

@media(max-width:1100px){.mainnav a{font-size:14px}}
@media(max-width:900px){
  .mainnav a{font-size:16px;min-height:48px;display:flex;align-items:center}
  .mobile-toggle{display:grid;place-items:center}
}
@media(max-width:650px){
  body{font-size:17px}
  .lang-switch{display:none}
  .lang-select-label{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .lang-select-mobile{display:block;margin-inline-start:auto;min-width:70px;min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font-size:15px;font-weight:800;padding:7px 30px 7px 10px}
  [dir="rtl"] .lang-select-mobile{padding:7px 10px 7px 30px}
  .mobile-toggle{flex-basis:48px;width:48px;height:48px;font-size:26px}
  .smart-strip a{font-size:14px;min-height:44px}
  .hero-lead{font-size:17px;line-height:1.65}
  .hero-trust span{font-size:13px;padding:7px 9px}
  .hero-actions .btn{font-size:16px;min-height:52px}
  .section{padding:70px 0}
  .help-copy-panel p,.journey-heading p{font-size:16px;line-height:1.7}
  .help-concern-copy strong{font-size:16px}.help-concern-copy small{font-size:14px}
  .service-card p{font-size:16px}.textlink{font-size:16px}
  .page-hero p{font-size:17px}
  .mobile-contact-dock a{min-height:52px;font-size:15px}
  .location-showcase-head p{font-size:16px}.location-kicker{font-size:12px}
  .location-card-content h3{font-size:27px}.location-address{font-size:17px}.location-appointment{font-size:15px}
  .location-action{min-height:50px;font-size:14px}
  .location-profile-copy blockquote{font-size:17px}.location-profile-copy small{font-size:12px}
  .location-value-item strong{font-size:17px}.location-value-item p{font-size:15px}.location-strip-logo span{font-size:11px}
}
@media(max-width:380px){
  .navrow{gap:6px}.brand img{width:72px}.lang-select-mobile{min-width:64px;padding-inline:8px 26px;font-size:14px}
  .hero-lead{font-size:16.5px}
}
@media(prefers-contrast:more){
  :root{--muted:#465d6e;--line:#b7cbd6}
  .btn-outline,.location-action{border-width:2px}.hero-scrim{background:linear-gradient(90deg,rgba(3,21,43,.96),rgba(3,21,43,.80) 50%,rgba(3,21,43,.45))}
}

@media(max-width:900px){.page-werkwijze .steps{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:650px){.page-werkwijze .steps{grid-template-columns:1fr!important}}

/* Final 1.8 header/reflow refinements after 320px–1920px QA. */
.topbar{font-size:14px}
.eyebrow{font-size:13px}
.lang-switch a{min-width:44px;min-height:44px;font-size:13px}
.scroll-cue{width:44px;height:56px}
.journey-contact-mini{max-width:100%;min-width:0}
.journey-contact-mini a{min-width:0;max-width:100%}
.journey-contact-mini small,.journey-contact-mini strong{min-width:0;overflow-wrap:anywhere;word-break:break-word}
@media(max-width:1280px){.header-cta{display:none}}
@media(max-width:1180px){
  .navrow{gap:12px}
  .brand img{width:98px;height:58px}
  .mobile-toggle{display:grid;place-items:center;order:4;margin-inline-start:2px}
  .mainnav{position:absolute;display:none;left:16px;right:16px;top:calc(100% + 10px);padding:14px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px;max-height:min(70svh,560px);overflow:auto;overscroll-behavior:contain}
  .mobile-open .mainnav{display:flex}
  .mainnav a{font-size:16px;min-height:48px;display:flex;align-items:center;padding:12px 10px;border-radius:12px}
  .mainnav a:after{display:none}
  .mainnav a:hover,.mainnav a:focus-visible{background:#f3f8fb}
  .lang-switch{margin-inline-start:auto}
}
@media(max-width:650px){.hero-trust span{font-size:14px}.journey-contact-mini strong{font-size:14px}.journey-contact-mini small{font-size:13px}}

/* =========================================================
   FYVO 1.9 — functional polish: clearer journey, robust map,
   optional third location and four-column footer.
   ========================================================= */

/* Make the five-step line read as a process, not decoration. */
.journey-rail{
  left:22px;
  right:22px;
  bottom:221px;
  height:56px;
}
.journey-rail span{
  left:5%;right:5%;top:28px;height:2px;
  background:linear-gradient(90deg,rgba(182,125,87,.18),#b67d57 12%,#d5a57e 50%,#b67d57 88%,rgba(182,125,87,.18));
  transform:none;
  border-radius:999px;
}
.journey-rail span:after{
  content:"";position:absolute;right:-1px;top:-4px;width:9px;height:9px;
  border-top:2px solid #b67d57;border-right:2px solid #b67d57;transform:rotate(45deg);
}
[dir="rtl"] .journey-rail span:after{right:auto;left:-1px;transform:rotate(-135deg)}
.journey-rail i{
  top:21px;width:15px;height:15px;border-width:2px;
  box-shadow:0 0 0 5px rgba(255,255,255,.86),0 0 0 8px rgba(182,125,87,.08);
}
.journey-rail i:before{
  content:attr(data-step);position:absolute;left:50%;top:-25px;transform:translateX(-50%);
  min-width:28px;padding:2px 6px;border-radius:999px;background:rgba(255,255,255,.92);
  color:#9d6b48;font-size:10px;font-style:normal;font-weight:900;letter-spacing:.08em;text-align:center;
  box-shadow:0 5px 14px rgba(73,50,31,.08);
}
.journey-rail i:after{
  content:"";position:absolute;left:50%;top:13px;width:1px;height:15px;background:linear-gradient(#b67d57,rgba(182,125,87,.12));
}
.journey-card{border-top-color:rgba(182,125,87,.34)}
.journey-card h3{font-size:19px;line-height:1.22}
.journey-card p{font-size:14px;line-height:1.62;color:#526b7d}

/* The approved source image contains typography on the right. Wash it out,
   then place FYVO's own quote in a readable glass card so texts never overlap. */
.journey-overlay{
  background:
    linear-gradient(90deg,rgba(250,249,246,.985) 0%,rgba(250,249,246,.94) 39%,rgba(250,249,246,.38) 57%,rgba(250,249,246,.78) 72%,rgba(250,249,246,.94) 100%),
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.14) 52%,rgba(247,245,241,.78) 80%,rgba(247,245,241,.98));
}
[dir="rtl"] .journey-overlay{
  background:
    linear-gradient(270deg,rgba(250,249,246,.985) 0%,rgba(250,249,246,.94) 39%,rgba(250,249,246,.38) 57%,rgba(250,249,246,.78) 72%,rgba(250,249,246,.94) 100%),
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.14) 52%,rgba(247,245,241,.78) 80%,rgba(247,245,241,.98));
}
.journey-quote{
  top:55px;right:34px;width:285px;padding:18px 19px;margin:0;
  border:1px solid rgba(255,255,255,.82);border-radius:18px;
  background:rgba(255,255,255,.88);backdrop-filter:blur(18px);
  box-shadow:0 14px 34px rgba(6,44,90,.10);
  font-size:19px;line-height:1.48;
}
[dir="rtl"] .journey-quote{right:auto;left:34px}
.journey-quote:after{width:90px}

/* Footer now also has a dedicated locations column. */
.footer-grid{grid-template-columns:1.25fr .9fr .9fr 1.25fr;gap:34px}
.footer-locations a{line-height:1.45;margin-bottom:10px}

/* With a third clinic the map automatically grows with the card stack. */
.location-showcase-grid{align-items:stretch}
.location-showcase .location-map-panel{height:100%;min-height:520px}
.location-card-stack{align-content:start}

@media(max-width:1100px){
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .journey-quote{width:235px;font-size:17px}
}
@media(max-width:980px){
  .journey-rail{display:none}
  .journey-quote{width:auto;max-width:520px;background:rgba(255,255,255,.92)}
}
@media(max-width:650px){
  .footer-grid{grid-template-columns:1fr}
  .journey-card h3{font-size:19px}.journey-card p{font-size:15px}
}
.map-tile-warning-text{position:absolute;z-index:8;left:50%;bottom:16px;transform:translateX(-50%);max-width:75%;padding:9px 13px;border-radius:12px;background:rgba(255,255,255,.94);color:var(--navy);font-size:12px;font-weight:750;box-shadow:0 8px 24px rgba(7,29,59,.12);text-align:center}

/* =========================================================
   FYVO 1.10 — three-location + final responsive polish
   ========================================================= */
/* Three clinic cards: equal, readable and stable from desktop to mobile. */
@media (min-width:1121px){
  .locations-count-3 .location-showcase-grid{
    grid-template-columns:minmax(0,1.08fr) minmax(520px,.92fr);
  }
  .locations-count-3 .location-map-panel{min-height:760px}
  .locations-count-3 .location-card-stack .map-location-card{min-height:224px}
}
@media (min-width:821px) and (max-width:1120px){
  .locations-count-3 .location-card-stack>.map-location-card:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:820px){
  .locations-count-3 .location-card-stack>.map-location-card:last-child:nth-child(odd){grid-column:auto}
}
@media(max-width:560px){
  .location-card-actions{grid-template-columns:1fr!important}
  .location-action-primary{grid-column:auto!important}
  .location-action{width:100%}
}

