*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#181818;background:#f7f4ee;line-height:1.55}.wrap{width:min(1180px,92%);margin:auto}a{color:inherit;text-decoration:none}header{position:sticky;top:0;z-index:50;background:rgba(12,12,12,.96);border-bottom:1px solid rgba(213,164,75,.2)}.nav{height:84px;display:flex;align-items:center;justify-content:space-between}.logo img{height:60px;width:auto;display:block}.nav nav{display:flex;align-items:center;gap:28px;color:#fff;font-size:14px}.nav nav>a:not(.btn):hover{color:#d9aa55}.menu{display:none;background:none;border:0;color:white;font-size:25px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;background:linear-gradient(135deg,#efc66c,#c88927);color:#111;font-weight:700;border:0;cursor:pointer}.btn.small{padding:11px 18px}.btn.black{background:#111;color:#fff}.btn.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65)}.hero{min-height:620px;position:relative;display:flex;align-items:center;background:#111;color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;background:url('assets/hero-team.jpg') center 42%/cover no-repeat;transform:scale(1.01)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.92) 0%,rgba(8,8,8,.72) 34%,rgba(8,8,8,.14) 67%,rgba(8,8,8,.25) 100%)}.hero-content{position:relative;padding:90px 0;max-width:650px;margin-left:max(4%,calc((100% - 1180px)/2))}.label{letter-spacing:.2em;font-size:12px;font-weight:800;color:#b7832d;margin:0 0 15px;text-transform:uppercase}.hero h1,.section h2,.cta h2{font-family:Georgia,serif;line-height:1.02;margin:0}.hero h1{font-size:clamp(46px,6vw,78px);max-width:680px}.hero h1 em{font-weight:400;color:#e3b45d}.lead{font-size:20px;max-width:620px}.sub{color:#ded6cb;max-width:570px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.expertise-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#111;color:#fff;border-top:1px solid #30291f;border-bottom:1px solid #30291f}.expertise-strip a{padding:27px 30px;border-right:1px solid #2b2b2b}.expertise-strip a:last-child{border-right:0}.expertise-strip span{color:#d7a446;font-size:12px}.expertise-strip strong{display:block;font-family:Georgia,serif;font-size:21px;margin:6px 0}.expertise-strip small{display:block;color:#ccc}.section{padding:88px 0}.section h2,.cta h2{font-size:clamp(36px,5vw,60px)}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.big{font-size:20px}.photo-card{position:relative;min-height:480px;overflow:hidden}.photo-card img{width:100%;height:480px;object-fit:cover;display:block}.photo-caption{position:absolute;right:0;bottom:0;background:rgba(247,244,238,.9);padding:28px 30px;font-family:Georgia,serif;font-size:27px;max-width:58%}.values{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.values span{border-top:1px solid #ddd;padding-top:12px}.values b{display:block;color:#a4711f}.services{background:#f7f4ee}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:35px}.service-grid article{background:#fff;border:1px solid #e4ded4;overflow:hidden}.service-grid article>img{width:100%;height:255px;object-fit:cover;display:block}.card-body{padding:27px}.card-body>b{color:#b7832d}.card-body h3{font-family:Georgia,serif;font-size:30px;margin:6px 0 10px}.card-body ul{padding-left:20px;color:#4d4d4d}.card-body a{color:#9b6512;font-weight:700}.dark{background:#121212;color:#fff}.dark .label{color:#e0af52}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.split p{color:#d6d6d6}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:35px}.steps>div{border-top:2px solid #d5a44b;padding:24px 12px 0 0}.steps i{font-style:normal;color:#a56d16;font-weight:800}.steps h3{font-family:Georgia,serif;font-size:24px}.cta{background:linear-gradient(135deg,#d9ab53,#f0d191);padding:62px 0}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.cta .label{color:#403019}.cta h2{max-width:820px}.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.details{display:grid;gap:18px;margin-top:30px}.details span{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.details a,.details strong{display:block;font-size:19px;text-transform:none;letter-spacing:0;margin-top:4px}.contact form{display:grid;gap:15px;background:#f6f2eb;padding:30px}.contact label{font-weight:700;font-size:14px}.contact input,.contact select,.contact textarea{width:100%;margin-top:7px;border:1px solid #d6d0c7;background:#fff;padding:13px;font:inherit}.contact small{color:#6d6d6d}footer{background:#0d0d0d;color:white;padding:45px 0 24px}.foot{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}.foot img{height:62px}.foot span,.foot a{display:block;color:#bbb}.foot>div:last-child{text-align:right}.copy{margin-top:28px;border-top:1px solid #262626;padding-top:18px;color:#777;font-size:13px}@media(max-width:900px){.nav nav{display:none;position:absolute;left:0;right:0;top:84px;background:#111;padding:24px 4%;flex-direction:column;align-items:flex-start}.nav nav.open{display:flex}.menu{display:block}.hero{min-height:690px}.hero-photo{background-position:60% center}.hero-overlay{background:linear-gradient(90deg,rgba(8,8,8,.92),rgba(8,8,8,.52))}.hero-content{margin-left:4%;padding:75px 0}.expertise-strip{grid-template-columns:1fr 1fr}.intro-grid,.split,.contact-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.cta-grid{grid-template-columns:1fr}.photo-caption{max-width:75%}}@media(max-width:600px){.logo img{height:52px}.hero h1{font-size:45px}.hero-photo{background-position:65% center;opacity:.65}.expertise-strip{grid-template-columns:1fr}.expertise-strip a{border-right:0;border-bottom:1px solid #2b2b2b}.values,.steps{grid-template-columns:1fr}.photo-card,.photo-card img{height:380px;min-height:380px}.photo-caption{font-size:22px;max-width:90%}.section{padding:65px 0}.foot{grid-template-columns:1fr;text-align:left}.foot>div:last-child{text-align:left}}

/* Mobile and footer refinements */
html,body{max-width:100%;overflow-x:hidden}img{max-width:100%} .foot{grid-template-columns: minmax(0,160px) 1fr auto;align-items:start}.foot img{width:160px;height:auto}.foot-contact{font-size:15px;line-height:1.8}.foot-contact address{font-style:normal;color:#bbb;font-size:14px;line-height:1.55;margin-top:12px}.photo-card img{object-position:center}.photo-caption{font-size:clamp(18px,2.1vw,27px)}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.nav{height:76px}.nav nav{top:76px}.logo img{height:auto;max-height:55px;max-width:min(65vw,245px);object-fit:contain}.hero{min-height:560px}.hero-content{margin:0 18px;padding:65px 0;max-width:calc(100% - 36px)}.hero h1{font-size:clamp(34px,9vw,45px);overflow-wrap:break-word}.lead{font-size:17px}.hero-photo{background-position:62% center}.section h2,.cta h2{font-size:clamp(32px,9vw,44px);line-height:1.12}.section{padding:52px 0}.intro-grid,.contact-grid,.split{gap:30px}.photo-card{height:auto;min-height:0;display:flex;flex-direction:column}.photo-card img{height:auto;max-height:480px;min-height:0;aspect-ratio:4/3;object-fit:cover}.photo-caption{position:static;max-width:none;padding:20px 18px;font-size:21px;background:#f7f4ee}.contact form{padding:20px 16px}.service-grid article>img{height:auto;aspect-ratio:16/10}.foot{grid-template-columns:1fr;gap:18px;text-align:left}.foot img{width:170px;height:auto}.foot>div:last-child{text-align:left}.foot-contact a,.foot-contact address{font-size:14px}.btn{max-width:100%}}
/* Additional small-screen safeguards */
@media(max-width:600px){.hero{min-height:0}.hero-content{padding:72px 0 65px}.hero-photo{background-position:68% center}.hero-overlay{background:linear-gradient(90deg,rgba(8,8,8,.9),rgba(8,8,8,.6))}.nav{gap:12px}.logo{min-width:0}.logo img{max-width:min(67vw,245px)}.card-body{padding:22px}.card-body h3{font-size:27px}.foot-contact address{overflow-wrap:anywhere}.contact-grid>*{min-width:0}}

.contact-direct{background:#f6f3ec;padding:clamp(22px,4vw,44px);border-radius:12px;align-self:start}.contact-direct h3{margin-top:0}.contact-direct .btn{display:inline-block;text-align:center;max-width:100%;white-space:normal}

/* ZOPTI brand slogan — clearly identifiable, responsive, restrained */
.hero-brand{margin-bottom:32px;padding-left:21px;border-left:3px solid #d5a44b}
.hero-brand-name{display:block;color:#fff;font-size:13px;letter-spacing:.19em;font-weight:750;margin-bottom:7px}
.hero-slogan{margin:0;color:#edc77c;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;font-size:clamp(23px,3.2vw,39px);line-height:1.22;letter-spacing:.01em;text-wrap:balance}
.slogan-dot{color:#fff}
.foot-brand b{display:block;font-size:17px;letter-spacing:.01em}
.foot-brand .foot-slogan{display:block;color:#d6af69;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(16px,1.7vw,20px);line-height:1.35;margin-top:9px}
.foot-contact a{overflow-wrap:anywhere}
.menu{cursor:pointer;min-width:44px;min-height:44px}
@media(max-width:600px){.hero-brand{margin-bottom:27px;padding-left:15px}.hero-brand-name{font-size:11px;letter-spacing:.15em}.hero-slogan{font-size:clamp(22px,6.4vw,29px)}.foot-brand .foot-slogan{font-size:18px}.hero-content{padding-top:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* New image includes its own text; show complete image without overlay. */
.photo-card{min-height:0;height:auto}.photo-card img{width:100%;height:auto;max-height:none;aspect-ratio:4/3;object-fit:contain;display:block}
@media(max-width:600px){.photo-card{height:auto;min-height:0}.photo-card img{height:auto;max-height:none;min-height:0;aspect-ratio:4/3;object-fit:contain}}

/* Foto bij Over ons: volledige afbeelding tonen op alle schermformaten */
.photo-card{height:auto!important;min-height:0!important;overflow:visible!important;align-self:center;width:100%}
.photo-card img{display:block;width:100%;height:auto!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;border-radius:inherit}

/* Definitive desktop image: no cropping or duplicate overlay */
.intro-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.photo-card{position:relative!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important}
.photo-card img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important}
.photo-card .photo-caption{display:none!important}
@media(max-width:900px){.intro-grid{grid-template-columns:minmax(0,1fr)!important}}
