/*
Theme Name: Strijp Schilderwerken Refined
Theme URI: https://strijpschilderwerken.nl
Author: OpenAI
Description: Maatwerk one-page WordPress-thema voor Strijp Schilderwerken.
Version: 1.2.0
Text Domain: strijp-refined
*/
:root{--blue:#1b54a5;--blue2:#3479d1;--ink:#20242a;--muted:#707780;--surface:#f5f7fa;--radius:28px;--shadow:0 18px 50px rgba(27,84,165,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;background:#fff;line-height:1.6}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:100px 0}.surface{background:var(--surface)}h1,h2,h3{line-height:1.08;letter-spacing:-.035em;margin:0}h1{font-size:clamp(46px,7vw,82px)}h2{font-size:clamp(38px,5vw,58px)}h3{font-size:22px}.blue{color:var(--blue)}.lead{font-size:19px;color:var(--muted);max-width:690px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 24px;font-weight:700;transition:.25s}.btn-primary{background:var(--blue);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover{transform:translateY(-2px);background:#15498f}.btn-light{background:#fff;border:1px solid #dfe4ea}.site-header{position:fixed;z-index:100;top:0;left:0;right:0;padding:18px 0;transition:.25s}.site-header.scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);box-shadow:0 6px 24px rgba(0,0,0,.07)}.navrow{display:flex;align-items:center;justify-content:space-between}.logo{height:46px;width:auto}.nav{display:flex;gap:32px;align-items:center;font-weight:600}.menu-btn{display:none;border:0;background:#fff;border-radius:50%;width:44px;height:44px;font-size:22px}.hero{min-height:100vh;padding:130px 0 70px;background:radial-gradient(circle at 80% 20%,rgba(52,121,209,.18),transparent 34%),radial-gradient(circle at 10% 80%,rgba(27,84,165,.1),transparent 30%)}.hero-grid,.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.hero-image,.about-image{border-radius:38px;overflow:hidden;box-shadow:var(--shadow);position:relative}.hero-image img{width:100%;height:620px;object-fit:cover}.about-image img{width:100%;height:500px;object-fit:cover}.rating{margin-top:30px;color:var(--muted)}.stars{color:var(--blue);letter-spacing:2px}.pill{display:inline-block;padding:7px 13px;border-radius:999px;background:#edf3fb;color:var(--blue);font-weight:700;font-size:13px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.bullets{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;padding:0;list-style:none;margin:28px 0}.bullets li:before{content:'✓';color:var(--blue);font-weight:800;margin-right:9px}.video-wrap{border-radius:36px;overflow:hidden;box-shadow:var(--shadow);background:#000}.video-wrap video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}.card{background:#fff;border:1px solid #e8ebef;padding:28px;border-radius:26px;box-shadow:0 10px 30px rgba(0,0,0,.04);transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.icon{width:52px;height:52px;border-radius:17px;background:#edf3fb;color:var(--blue);display:grid;place-items:center;font-size:25px}.brand{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:42px}.stat{padding:28px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);border-radius:24px}.stat strong{font-size:42px;display:block}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:0;padding:10px 16px;border-radius:999px;cursor:pointer}.filter.active{background:var(--blue);color:#fff}.projects{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:250px;gap:18px;margin-top:40px}.project{position:relative;overflow:hidden;border-radius:25px}.project.tall{grid-row:span 2}.project img{width:100%;height:100%;object-fit:cover;transition:.4s}.project:hover img{transform:scale(1.04)}.project-info{position:absolute;left:0;right:0;bottom:0;padding:35px 20px 18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78))}.compare{position:relative;aspect-ratio:16/9;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);margin-top:45px;cursor:ew-resize}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.compare-before{overflow:hidden;position:absolute;inset:0;width:50%}.compare-before img{width:100vw;max-width:none}.handle{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff}.handle:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;background:#fff;color:var(--blue);display:grid;place-items:center;font-size:23px;box-shadow:0 5px 20px rgba(0,0,0,.2)}.testimonial{text-align:center;max-width:820px;margin:45px auto 0}.quote{font-size:25px;font-weight:600}.review-nav{display:flex;justify-content:center;gap:10px;margin-top:24px}.review-nav button{width:44px;height:44px;border-radius:50%;border:1px solid #ddd;background:#fff}.cta{padding:70px;border-radius:38px;text-align:center;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;box-shadow:var(--shadow)}.faq{max-width:900px;margin:40px auto 0}.faq-item{background:#fff;border-radius:20px;margin-bottom:12px;border:1px solid #e5e8ec;overflow:hidden}.faq-q{width:100%;padding:20px 24px;text-align:left;border:0;background:#fff;font-weight:750;font-size:17px;display:flex;justify-content:space-between}.faq-a{display:none;padding:0 24px 22px;color:var(--muted)}.faq-item.open .faq-a{display:block}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.contact-list{display:grid;gap:10px;margin:28px 0}.contact-card{padding:14px;border-radius:16px}.map{border:0;width:100%;aspect-ratio:16/9;border-radius:24px}.form{background:var(--surface);padding:34px;border-radius:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:14px}.field label{font-size:14px;font-weight:700}.field input,.field select,.field textarea{width:100%;margin-top:6px;border:1px solid #dce1e7;background:#fff;border-radius:15px;padding:13px 14px;font:inherit}.field textarea{min-height:120px}.footer{background:#15345f;color:#fff;padding:70px 0 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.footer-logo{background:#fff;border-radius:12px;padding:12px 16px;height:60px}.floating{position:fixed;z-index:90;right:25px;bottom:25px;border-radius:999px;background:var(--blue);color:#fff;padding:15px 19px;box-shadow:var(--shadow);font-weight:700}.reveal{opacity:0;transform:translateY(24px);transition:.7s}.reveal.visible{opacity:1;transform:none}.notice{padding:12px 16px;border-radius:12px;background:#e8f5e9;color:#246b2d;margin-bottom:18px}@media(max-width:850px){.nav{display:none}.nav.open{display:flex;position:absolute;top:78px;left:20px;right:20px;background:#fff;padding:18px;border-radius:20px;flex-direction:column;box-shadow:var(--shadow)}.menu-btn{display:block}.hero-grid,.two-col,.contact-grid{grid-template-columns:1fr}.hero-image img{height:480px}.cards,.projects{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.section{padding:75px 0}}@media(max-width:560px){.cards,.projects,.bullets,.form-grid{grid-template-columns:1fr}.projects{grid-auto-rows:250px}.project.tall{grid-row:span 1}.cta{padding:42px 22px}.hero-image img{height:430px}.floating{right:15px;bottom:15px}.container{width:min(100% - 26px,1180px)}}

/* Lovable-style animated hero background */
.hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,#fff 0%,#f8fbff 38%,#e8f2ff 72%,#dbeaff 100%)}
.hero:before{content:"";position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 78% 25%,rgba(62,132,225,.30),transparent 34%),radial-gradient(circle at 12% 86%,rgba(55,118,205,.16),transparent 31%)}
.hero-glow{position:absolute;z-index:-2;border-radius:50%;filter:blur(70px);pointer-events:none;opacity:.75;animation:heroFloat 10s ease-in-out infinite alternate}
.hero-glow-one{width:560px;height:560px;right:-180px;top:-170px;background:rgba(52,121,209,.24)}
.hero-glow-two{width:500px;height:500px;left:-180px;bottom:-190px;background:rgba(104,164,238,.20);animation-delay:-4s}
@keyframes heroFloat{from{transform:translate3d(-12px,-8px,0) scale(1)}to{transform:translate3d(22px,18px,0) scale(1.08)}}
.paint-trail{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}
.paint-cursor{position:absolute;left:0;top:0;z-index:5;pointer-events:none;width:22px;height:22px;border-radius:50%;background:rgba(25,91,184,.82);box-shadow:0 0 0 9px rgba(45,116,210,.10),0 0 38px 24px rgba(62,132,225,.28),0 0 100px 54px rgba(80,150,235,.18);filter:blur(.5px);mix-blend-mode:multiply;opacity:0;transition:opacity .18s ease,box-shadow .22s ease;will-change:transform;transform:translate3d(-100px,-100px,0)}
.paint-cursor:before{content:"";position:absolute;left:50%;top:50%;width:92px;height:92px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(46,116,209,.26) 0%,rgba(69,139,226,.14) 36%,rgba(69,139,226,0) 72%);filter:blur(10px)}
.paint-cursor.active{opacity:1}
.paint-dot{position:absolute;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle,rgba(31,101,194,.34) 0%,rgba(52,121,209,.23) 45%,rgba(52,121,209,0) 76%);filter:blur(7px);transform:translate(-50%,-50%) scale(1);opacity:.88;will-change:opacity,transform;transition:opacity .95s ease-out,transform .95s ease-out}
.paint-dot.fade{opacity:0;transform:translate(-50%,-50%) scale(.2)}
.hero .container{position:relative;z-index:3}

/* Reliable before/after interaction */
.compare,.compare *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.compare{touch-action:none;cursor:ew-resize}
.compare img{pointer-events:none}
.compare-dragging,.compare-dragging *{cursor:ew-resize!important;-webkit-user-select:none!important;user-select:none!important}
.compare-label{position:absolute;top:16px;z-index:4;padding:6px 12px;border-radius:999px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;pointer-events:none}
.compare-label-before{left:16px;background:rgba(0,0,0,.58);backdrop-filter:blur(8px)}
.compare-label-after{right:16px;background:var(--blue)}

/* File upload field */
.file-input{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.upload-box{margin-top:7px;display:flex;align-items:center;gap:14px;padding:18px;border:1.5px dashed #b9c8da;border-radius:17px;background:#fff;cursor:pointer;transition:.2s}
.upload-box:hover{border-color:var(--blue);background:#f7fbff}
.upload-box small{display:block;color:var(--muted);font-weight:400;margin-top:2px}
.upload-icon{width:42px;height:42px;border-radius:13px;background:#edf3fb;color:var(--blue);display:grid;place-items:center;font-size:25px;font-weight:800;flex:none}
.file-list{display:grid;gap:6px;margin-top:10px}
.file-item{padding:8px 11px;border-radius:10px;background:#edf3fb;color:#315b8d;font-size:13px;overflow-wrap:anywhere}
@media(max-width:850px){.paint-cursor,.paint-trail{display:none}}

/* Production hardening and accessibility */
.skip-link{position:fixed;left:12px;top:-100px;z-index:9999;background:#fff;color:#15345f;padding:10px 14px;border-radius:10px;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.notice-error{background:#fff0f0;color:#8b1e1e}
button,input,select,textarea{font:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.compare:focus-visible{outline:3px solid rgba(27,84,165,.45);outline-offset:3px}
.menu-btn{cursor:pointer}
.form button[disabled]{opacity:.65;cursor:wait}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-glow{animation:none}.paint-cursor,.paint-trail{display:none}.project img,.btn,.card{transition:none}}
