@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Montserrat:wght@700;800;900&display=swap');
:root{--pink:#ff2f79;--purple:#7c35ff;--yellow:#ffd84d;--ink:#151324;--muted:#686579;--bg:#fff8fc;--white:#fff;--line:#ece7ef;--shadow:0 22px 60px rgba(34,20,55,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:white;line-height:1.6}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.narrow{width:min(850px,calc(100% - 40px))}
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.06)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;font-family:Montserrat}.brand .logo-icon{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,var(--pink),var(--purple));display:grid;place-items:center;font-size:23px;box-shadow:0 8px 22px rgba(124,53,255,.28)}.brand span:last-child{display:flex;flex-direction:column;line-height:.95}.brand b{font-size:22px;letter-spacing:1px}.brand small{font-size:11px;letter-spacing:3.2px;color:var(--pink);margin-top:5px}.menu{display:flex;align-items:center;gap:30px;font-weight:700}.menu a:hover{color:var(--pink)}.nav-cta{background:var(--ink);color:white!important;padding:11px 18px;border-radius:12px}.menu-btn{display:none;border:0;background:none;font-size:28px}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 20%,rgba(255,216,77,.23),transparent 25%),radial-gradient(circle at 18% 85%,rgba(124,53,255,.13),transparent 28%),linear-gradient(135deg,#fff 0,#fff6fb 55%,#f7f1ff 100%);padding:90px 0 95px}.hero:after{content:"";position:absolute;width:460px;height:460px;border:85px solid rgba(255,47,121,.055);border-radius:50%;right:-150px;top:-130px}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:65px}.eyebrow{text-transform:uppercase;letter-spacing:2.3px;font-size:12px;font-weight:900;color:var(--pink)}h1,h2,h3{font-family:Montserrat;margin-top:0;line-height:1.08}h1{font-size:clamp(48px,6vw,76px);letter-spacing:-3.5px;margin:15px 0 24px}h1 span{color:var(--pink)}h2{font-size:clamp(34px,4vw,50px);letter-spacing:-2px;margin:12px 0 15px}.hero-copy>p{font-size:19px;color:var(--muted);max-width:630px}.hero-actions{display:flex;gap:13px;margin:30px 0 22px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 22px;border-radius:13px;font-weight:800;border:2px solid var(--ink);transition:.2s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.primary{background:linear-gradient(135deg,var(--pink),#ff5d57);color:#fff;border-color:transparent;box-shadow:0 12px 30px rgba(255,47,121,.25)}.ghost{background:white}.full{width:100%}.trustline{display:flex;flex-wrap:wrap;gap:18px;color:#4b4756;font-size:14px;font-weight:700}
.booth-scene{height:490px;position:relative}.booth{position:absolute;width:260px;left:80px;top:5px;z-index:3}.ring{margin:auto;width:145px;height:145px;border-radius:50%;background:white;border:18px solid #171523;box-shadow:0 0 0 8px #fff,0 18px 45px rgba(0,0,0,.25);display:grid;place-items:center}.camera{width:35px;height:35px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#694dff,#111 70%);font-size:0}.screen{margin:-6px auto 0;background:#1f1c2d;color:white;width:190px;height:170px;border-radius:24px;padding:18px 12px;text-align:center;box-shadow:var(--shadow);border:8px solid white}.people{background:linear-gradient(135deg,#ff7db1,#8a67ff);border-radius:12px;height:85px;display:flex;align-items:center;justify-content:center;font-size:34px;gap:2px;margin-bottom:12px}.screen b{font-size:12px;letter-spacing:1px}.stand{width:28px;height:170px;background:#252233;margin:auto;position:relative}.stand:after{content:"";position:absolute;width:115px;height:18px;background:#252233;border-radius:50%;left:-44px;bottom:-8px}.photo-strip{position:absolute;right:25px;bottom:20px;background:white;border:10px solid white;border-bottom-width:26px;width:150px;transform:rotate(8deg);box-shadow:0 20px 45px rgba(37,20,57,.22);z-index:5}.photo-strip div{height:83px;background:linear-gradient(135deg,#ffe4ef,#e9dcff);display:grid;place-items:center;font-size:27px;margin-bottom:5px}.photo-strip small{position:absolute;bottom:-20px;left:8px;font-size:8px;font-weight:900;letter-spacing:.5px}.spark{position:absolute;font-size:30px;color:var(--yellow);z-index:2}.s1{right:50px;top:40px}.s2{left:20px;top:140px;color:var(--pink)}.s3{right:180px;bottom:20px;color:var(--purple)}
.quickfacts{background:var(--ink);color:#fff}.facts{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;padding:27px 0}.facts div{border-right:1px solid rgba(255,255,255,.12)}.facts div:last-child{border:0}.facts b{display:block;font-family:Montserrat;font-size:25px;color:var(--yellow)}.facts span{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#ddd7e9}
.section{padding:95px 0}.light{background:#fffafd}.section-head{text-align:center;max-width:720px;margin:0 auto 50px}.section-head p{color:var(--muted);font-size:17px}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.feature{border:1px solid var(--line);border-radius:22px;padding:27px;background:white;box-shadow:0 10px 35px rgba(30,21,45,.045)}.ico{width:55px;height:55px;border-radius:17px;background:#fff0f6;display:grid;place-items:center;font-size:26px;margin-bottom:18px}.feature h3{font-size:19px;margin-bottom:10px}.feature p{color:var(--muted);font-size:14px;margin:0}
.packages-section{background:linear-gradient(180deg,#fff,#faf7ff)}.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.package{position:relative;background:white;border:1px solid var(--line);border-radius:26px;padding:31px 28px 28px;box-shadow:var(--shadow);display:flex;flex-direction:column}.package.popular{border:2px solid var(--pink);transform:translateY(-13px)}.popular-label{position:absolute;left:50%;top:-16px;transform:translateX(-50%);background:var(--pink);color:white;padding:7px 16px;border-radius:99px;font-size:10px;font-weight:900;letter-spacing:1px;white-space:nowrap}.tag{font-size:10px;background:#f3efff;color:var(--purple);font-weight:900;border-radius:99px;padding:6px 10px}.package h3{font-size:23px;margin:17px 0 7px}.price{font:900 44px Montserrat;color:var(--ink)}.price sup{font-size:20px;vertical-align:top;margin-right:3px}.price small{font:600 13px "DM Sans";color:var(--muted)}.package ul{list-style:none;padding:0;margin:24px 0;flex:1;border-top:1px solid var(--line)}.package li{padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.package li::first-letter{color:var(--pink)}.note{text-align:center;color:var(--muted);font-size:13px;margin-top:27px}
.dark{background:var(--ink);color:white;position:relative;overflow:hidden}.dark:before{content:"";position:absolute;inset:auto -100px -190px auto;width:500px;height:500px;border-radius:50%;background:rgba(124,53,255,.15)}.white h2{color:#fff}.occasions{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}.occasions article{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);padding:28px;border-radius:22px}.occasions span{font-size:35px}.occasions h3{font-size:19px;margin:15px 0 8px}.occasions p{color:#c8c3d3;margin:0;font-size:14px}
.how-grid{display:grid;grid-template-columns:1fr .86fr;gap:85px;align-items:center}.steps{display:grid;gap:16px;margin-top:28px}.steps>div{display:flex;gap:17px;align-items:center}.steps b{width:45px;height:45px;background:var(--ink);color:white;border-radius:14px;display:grid;place-items:center;font:800 17px Montserrat;flex:0 0 45px}.steps span{display:flex;flex-direction:column}.steps small{color:var(--muted)}.template-card{background:linear-gradient(135deg,#fff0f6,#f2eaff);padding:40px;border-radius:30px;box-shadow:var(--shadow)}.mini-strip{display:flex;gap:8px;margin-bottom:28px}.mini-strip span{display:grid;place-items:center;background:white;border-radius:16px;font-size:44px;width:92px;height:92px;box-shadow:0 10px 25px rgba(60,35,90,.08)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.chips span{background:white;padding:8px 12px;border-radius:99px;font-size:12px;font-weight:800}
.faq-section{background:#fffafd}.faq{display:grid;gap:10px}.faq details{background:white;border:1px solid var(--line);border-radius:16px;padding:0 20px}.faq summary{cursor:pointer;font-weight:800;padding:19px 0;list-style:none}.faq summary:after{content:"+";float:right;color:var(--pink);font-size:22px}.faq details[open] summary:after{content:"–"}.faq p{color:var(--muted);margin:0 0 18px}
.contact-section{background:radial-gradient(circle at 85% 20%,rgba(255,216,77,.18),transparent 20%),linear-gradient(135deg,#191626,#2b1a42);color:white}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.contact-copy p{color:#c7c0d3;font-size:17px}.contact-points{display:grid;gap:8px;margin-top:25px;color:#eee9f5;font-weight:700}.contact-form{background:white;color:var(--ink);padding:32px;border-radius:26px;box-shadow:0 25px 70px rgba(0,0,0,.28)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{display:grid;gap:7px;font-size:12px;font-weight:800;margin-bottom:13px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #ddd7e3;border-radius:11px;padding:12px 13px;font:500 14px "DM Sans";outline:none;background:#fff}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(255,47,121,.09)}.consent{display:flex!important;grid-template-columns:18px 1fr;align-items:flex-start;font-weight:500!important;color:#5e5868}.consent input{width:16px;margin-top:3px}.hp{display:none!important}
footer{background:#0d0c13;color:#afa9ba;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:50px}.footer-brand{color:white;margin-bottom:15px}.footer-grid h4{color:white;margin:0 0 14px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid a:hover{color:white}.copyright{border-top:1px solid #26232e;margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px}
@media(max-width:900px){.menu-btn{display:block}.menu{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:18px 25px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.menu.open{display:flex}.hero{padding-top:65px}.hero-grid,.how-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:25px}.booth-scene{max-width:500px;width:100%;margin:auto}.features,.occasions{grid-template-columns:repeat(2,1fr)}.packages{grid-template-columns:1fr;max-width:610px;margin:auto}.package.popular{transform:none}.facts{grid-template-columns:repeat(2,1fr);row-gap:20px}.facts div:nth-child(2){border-right:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:560px){.container{width:min(100% - 28px,1160px)}.hero{padding:50px 0 65px}h1{font-size:44px;letter-spacing:-2.4px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.trustline{gap:8px 15px}.booth-scene{height:410px;transform:scale(.9);transform-origin:top center;margin-bottom:-40px}.booth{left:50%;transform:translateX(-60%)}.photo-strip{right:0}.section{padding:72px 0}.features,.occasions{grid-template-columns:1fr}.facts{padding:22px 0}.facts b{font-size:21px}.facts span{font-size:10px}.field-row{grid-template-columns:1fr}.contact-form{padding:22px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.copyright{flex-direction:column;gap:6px}}

/* Extra feestelijke photobooth fotografie */
.hero-photo-collage{position:relative;min-height:520px}.hero-photo-collage figure{margin:0;overflow:hidden;background:#fff;box-shadow:0 24px 55px rgba(32,18,55,.22)}.hero-photo-collage img{width:100%;height:100%;object-fit:cover;display:block}.hero-main-photo{position:absolute;inset:25px 70px 55px 0;border:10px solid #fff;border-radius:32px;transform:rotate(-2deg)}.hero-main-photo img{border-radius:22px}.photo-badge{position:absolute;left:20px;bottom:20px;background:#fff;color:var(--ink);padding:10px 15px;border-radius:999px;font-weight:900;box-shadow:0 8px 25px rgba(0,0,0,.18)}.hero-small-photo{position:absolute;width:175px;height:185px;border:8px solid #fff;border-radius:24px;right:0;z-index:4}.hero-small-photo img{border-radius:15px}.hero-small-photo.top{top:0;transform:rotate(6deg)}.hero-small-photo.bottom{bottom:5px;transform:rotate(-6deg)}.floating-strip{position:absolute;left:-28px;bottom:5px;z-index:6;background:#fff;padding:8px 8px 22px;transform:rotate(7deg);box-shadow:0 16px 35px rgba(25,17,40,.2)}.floating-strip div{width:68px;height:55px;display:grid;place-items:center;background:linear-gradient(135deg,#ffe1ee,#eee4ff);font-size:27px;margin-bottom:5px}.floating-strip small{position:absolute;bottom:5px;left:8px;font-size:6px;font-weight:900}.gallery-section{background:linear-gradient(180deg,#fff7fb,#fff)}.party-gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:260px 240px;gap:16px}.party-gallery figure{margin:0;position:relative;overflow:hidden;border-radius:24px;box-shadow:0 16px 35px rgba(40,20,60,.11)}.party-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s transform}.party-gallery figure:hover img{transform:scale(1.04)}.party-gallery figcaption{position:absolute;left:14px;bottom:14px;background:rgba(20,17,32,.78);backdrop-filter:blur(7px);color:#fff;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:800}.party-gallery .g-big{grid-row:1/3}.party-gallery .g-wide{grid-column:2/4}.occasions article{overflow:hidden}.occasion-photo{width:calc(100% + 56px);height:130px;object-fit:cover;margin:-28px -28px 18px;display:block}
@media(max-width:900px){.hero-photo-collage{min-height:500px;max-width:600px;margin:auto}.party-gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 220px 230px}.party-gallery .g-big{grid-column:1/3;grid-row:auto}.party-gallery .g-wide{grid-column:1/3}}
@media(max-width:560px){.hero-photo-collage{min-height:390px}.hero-main-photo{inset:20px 40px 40px 10px}.hero-small-photo{width:120px;height:130px}.hero-small-photo.top{right:-4px}.hero-small-photo.bottom{display:none}.floating-strip{left:0}.party-gallery{display:grid;grid-template-columns:1fr;grid-template-rows:none}.party-gallery .g-big,.party-gallery .g-wide{grid-column:auto}.party-gallery figure{height:240px}.party-gallery .g-big{height:300px}}

/* PartyPhotobooth logo */
.logo-brand{display:flex;align-items:center;line-height:0}
.site-logo{display:block;width:230px;max-height:68px;object-fit:contain;object-position:left center}
.footer-logo{display:block;width:280px;max-width:100%;height:auto;object-fit:contain;object-position:left center;border-radius:14px}
.footer-brand{margin-bottom:15px}
@media(max-width:560px){
  .site-logo{width:190px;max-height:62px}
  .nav{height:72px}
  .menu{top:72px}
  .footer-logo{width:240px}
}
