:root{--pink:#e91e8c;--pink-dark:#cb1677;--ink:#111;--muted:#6d6d73;--surface:#fff;--dark:#242424;--font:'Poppins',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;font-family:var(--font);color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(1180px,calc(100% - 44px));margin-inline:auto}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1180px)/2));position:sticky;top:0;background:rgba(255,255,255,.97);z-index:50;box-shadow:0 2px 16px #0000000b}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.7px}.brand-mark{width:39px;height:39px;display:grid;place-items:center;border:3px solid var(--pink);border-radius:50%;font-size:26px;color:var(--pink);line-height:1;position:relative}.brand-mark span{font-size:12px;position:absolute;right:3px;top:1px}.brand-name{font-size:20px}.brand-name b{display:block;font-size:10px;letter-spacing:4px;color:var(--pink);margin-top:-3px}.main-nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.main-nav a:not(.nav-cta):hover,.footer a:hover{color:var(--pink)}.nav-cta,.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;background:var(--pink);color:#fff;border:0;border-radius:999px;padding:14px 29px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.nav-cta{padding:11px 25px}.button:hover,.nav-cta:hover{background:var(--pink-dark);transform:translateY(-2px)}.menu-toggle{display:none;background:none;border:0;font-size:27px}.hero{min-height:680px;min-height:calc(100vh - 78px);display:flex;align-items:center;position:relative;color:#fff;overflow:hidden;background:#242124}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background-image:url('media/section-1-background.jpg');background-size:cover;background-position:center 42%;transform:scale(1.02)}.hero-shade{background:linear-gradient(90deg,rgba(14,13,18,.9) 0%,rgba(18,15,22,.68) 53%,rgba(20,16,22,.28) 100%)}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr .6fr;gap:50px;align-items:center;padding-top:80px;padding-bottom:100px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.tags span{border:1px solid #e91e8c8c;background:#e91e8c2b;color:#fff;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:600}.hero h1{font-size:clamp(58px,8.5vw,112px);line-height:.98;letter-spacing:-5px;margin:0 0 25px;font-weight:800}.hero h1 em{font-style:normal;color:var(--pink)}.hero-copy>p{font-size:17px;line-height:1.8;color:#ffffffd9;max-width:510px;margin:0 0 30px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px}.text-link{font-size:14px;font-weight:600;color:#fff}.text-link span{font-size:24px;vertical-align:-2px;margin-left:5px}.text-link:hover{color:var(--pink)}.hero-stats{display:flex;flex-direction:column;align-items:flex-end;gap:15px}.hero-stats div{padding:22px 25px;background:#ffffff18;border:1px solid #ffffff40;border-radius:17px;backdrop-filter:blur(9px);text-align:right;max-width:100%}.hero-stats strong{display:block;color:var(--pink);font-size:clamp(22px,2.7vw,36px);line-height:1.2}.hero-stats span{display:block;font-size:12px;color:#ffffffbd;margin-top:7px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;text-align:center;letter-spacing:4px;font-size:10px;font-weight:600;padding:15px;background:#e91e8c}.gallery-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#181818}.gallery-strip img{width:100%;height:220px;object-fit:cover;filter:saturate(.9);transition:filter .3s}.gallery-strip img:hover{filter:saturate(1.2)}.section{padding:100px 0}.section-heading{text-align:center;max-width:760px;margin:0 auto 55px}.eyebrow{display:block;color:var(--pink);font-size:11px;font-weight:700;letter-spacing:2.6px;margin-bottom:12px}.section-heading h2,.booking-intro h2{font-size:clamp(32px,4vw,46px);line-height:1.15;letter-spacing:-1.5px;margin:0 0 16px}.section-heading>p{color:var(--muted);line-height:1.85;font-size:15px;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.feature-card{min-height:270px;border-radius:17px;overflow:hidden;padding:25px;display:flex;flex-direction:column;justify-content:space-between;position:relative;color:#fff;background:#292929}.feature-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#111d 0%,transparent 85%)}.feature-card>*{position:relative;z-index:1}.feature-card h3{font-size:20px;margin:0 0 8px}.feature-card p{font-size:12px;line-height:1.8;margin:0;color:#ffffffc9}.feature-photo{grid-column:span 2;background:linear-gradient(0deg,#15111bd9,#16131c28),url('media/gallery-slide-2.jpg') center/cover}.feature-pink{background:linear-gradient(145deg,#ee2a98,#b20e66)}.feature-dark{background:linear-gradient(145deg,#333,#121212)}.feature-gallery{grid-column:span 2;background:linear-gradient(0deg,#10151be8,#10151b35),url('media/gallery-slide-4.jpg') center/cover}.feature-album{background:linear-gradient(0deg,#101010d9,#10101024),url('media/gallery-slide-5.jpg') center/cover}.feature-360{background:linear-gradient(135deg,#28202a,#101010)}.card-icon{font-size:31px;color:#ff4eae;margin-bottom:22px}.feature-pink .card-icon,.feature-pink p{color:#fff}.feature-album strong,.feature-360 strong{display:block;color:var(--pink);font-size:44px;line-height:1.1;margin-bottom:18px}.pricing{position:relative;padding:100px 0;background:#242124 url('media/gallery-slide-4.jpg') center/cover fixed;color:#fff}.pricing-shade{position:absolute;inset:0;background:#151218e8}.pricing-inner{position:relative}.light h2{color:#fff}.light>p{color:#ffffffa8}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.price-card{border:1px solid #ffffff24;background:#ffffff0b;border-radius:18px;padding:32px 29px;display:flex;flex-direction:column;position:relative;gap:17px}.price-card.popular{background:#fff;color:#151515;border:2px solid var(--pink);box-shadow:0 0 40px #e91e8c30;transform:translateY(-10px)}.popular-label{position:absolute;top:-14px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--pink);color:white;border-radius:999px;padding:6px 17px;font-size:10px;font-weight:700}.duration{font-size:12px;font-weight:700;color:var(--pink);margin:0}.price-card h3{font-size:23px;margin:0}.price{font-size:49px;line-height:1;font-weight:800;color:var(--pink);letter-spacing:-2px}.price-description{font-size:12px;line-height:1.8;color:#ffffffa6;margin:0;min-height:66px}.popular .price-description{color:#707078}.price-card ul{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:10px}.price-card li{font-size:12px;color:#ffffffd1}.price-card li:before{content:'✓';color:var(--pink);font-weight:800;margin-right:10px}.popular li{color:#333}.price-card .button{width:100%;margin-top:auto}.button-outline{background:#ffffff12;border:1px solid #ffffff40}.button-outline:hover{background:var(--pink)}.booking{position:relative;padding:100px 0;background:#28232b url('media/gallery-slide-5.jpg') center/cover fixed;color:white}.booking-shade{position:absolute;inset:0;background:linear-gradient(90deg,#15131bc9,#15131b88)}.booking-inner{position:relative;display:grid;grid-template-columns:1fr 440px;gap:70px;align-items:center}.booking-intro h2{font-size:clamp(42px,5vw,60px);margin-bottom:20px}.booking-intro>p{max-width:430px;color:#ffffffc2;font-size:15px;line-height:1.9;margin-bottom:28px}.contact-link{display:block;margin-top:12px;font-size:14px;font-weight:600}.contact-link:hover{color:var(--pink)}.form-card{background:#fffffffa;color:#141414;border-radius:19px;padding:32px;box-shadow:0 25px 80px #0003}.form-card h2{font-size:28px;letter-spacing:-.7px;line-height:1.2;margin:0 0 23px}.form-row{margin-bottom:14px}.form-row label{display:block;font-size:11px;font-weight:700;margin-bottom:6px;color:#48484e}.form-row input,.form-row textarea,.form-row select{width:100%;font:inherit;font-size:12px;color:#222;background:#f6f6f8;border:1px solid #e3e3e8;border-radius:10px;padding:13px 14px;outline:none}.form-row input:focus,.form-row textarea:focus,.form-row select:focus{border-color:var(--pink);box-shadow:0 0 0 3px #e91e8c1c}.form-row textarea{resize:vertical}.submit-button{width:100%;margin-top:3px}.submit-button span{font-size:18px}.form-note{font-size:10px;color:#85858b;line-height:1.6;margin:12px 0 0}.form-status{font-size:12px;line-height:1.6;margin:10px 0 0;color:#26764a}.form-status.error{color:#ba2345}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.footer{background:#242424;color:#fff;padding:65px 0}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:60px}.brand-footer{margin-bottom:17px}.brand-footer .brand-name{color:white}.footer p,.footer small{font-size:12px;color:#ffffff8a;line-height:1.8}.footer small{display:block;margin-top:30px}.footer h3{font-size:12px;text-transform:uppercase;letter-spacing:1.6px;color:#ffffff7d;margin:5px 0 20px}.footer-grid>div:nth-child(2) a,.footer-grid>div:nth-child(3) a{display:block;font-size:12px;color:#ffffffc9;margin-bottom:12px}.footer-grid>div:nth-child(3) p{margin-top:16px}.footer a:hover{color:#ff55b0}
@media(max-width:900px){.hero-inner{grid-template-columns:1fr}.hero-stats{display:none}.hero-copy{max-width:680px}.feature-grid{grid-template-columns:repeat(2,1fr)}.price-grid{gap:14px}.price-card{padding:27px 20px}.booking-inner{grid-template-columns:1fr 420px;gap:35px}.main-nav{gap:20px}}
@media(max-width:680px){.site-header{height:68px;padding-inline:20px}.brand-name{font-size:17px}.brand-mark{width:35px;height:35px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:68px;background:#fff;padding:22px;box-shadow:0 15px 20px #00000012;align-items:stretch;gap:18px;flex-direction:column}.main-nav.open{display:flex}.main-nav a{padding:5px 0}.main-nav .nav-cta{align-self:flex-start;padding:11px 25px}.hero{min-height:640px;min-height:calc(90vh - 68px)}.hero-inner{padding-top:70px;padding-bottom:90px}.hero h1{font-size:clamp(56px,15vw,86px);letter-spacing:-3px}.hero-copy>p{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.gallery-strip{grid-template-columns:repeat(3,1fr)}.gallery-strip img{height:130px}.wrap{width:min(100% - 36px,1180px)}.section,.pricing,.booking{padding:72px 0}.section-heading{margin-bottom:35px}.section-heading h2{font-size:32px}.section-heading>p{font-size:13px}.feature-grid{grid-template-columns:1fr 1fr;gap:10px}.feature-card{min-height:250px;padding:18px}.feature-card h3{font-size:16px}.feature-card p{font-size:11px}.feature-photo,.feature-gallery{grid-column:span 2}.feature-album strong,.feature-360 strong{font-size:35px}.price-grid{grid-template-columns:1fr;gap:26px}.price-card.popular{transform:none;margin-top:6px}.price-description{min-height:0}.booking-inner{grid-template-columns:1fr;gap:32px}.booking-intro h2{font-size:43px}.form-card{padding:25px 20px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:span 2}.footer{padding:48px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Original Instabooth brand and event media */
.brand-logo{width:210px;max-height:58px;object-fit:contain;object-position:left center}.brand-footer .brand-logo{width:220px}.gallery-strip{grid-template-columns:repeat(6,1fr)}.gallery-strip img{height:190px}.feature-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.feature-pink:after,.feature-360:after{background:linear-gradient(0deg,rgba(10,8,14,.94),rgba(10,8,14,.1))}.feature-pink,.feature-360{background:#1b1420}.feature-card .feature-video{z-index:0}.feature-card .card-icon,.feature-card>div:not(.feature-video){z-index:2}.feature-360 strong{color:#ff5fb2}.footer .brand-logo{filter:none}
@media(max-width:900px){.gallery-strip{grid-template-columns:repeat(3,1fr)}.gallery-strip img{height:170px}}
@media(max-width:680px){.brand-logo{width:170px;max-height:48px}.gallery-strip img{height:115px}}

/* Responsive photo carousel and subtle hover motion */
.gallery-carousel{position:relative;background:#17141a;overflow:hidden;padding-bottom:36px}
.carousel-viewport{overflow:hidden;width:100%}
.carousel-track{display:flex;transition:transform .65s cubic-bezier(.22,.61,.36,1);will-change:transform}
.carousel-slide{flex:0 0 25%;aspect-ratio:1.13;overflow:hidden;background:#252025}
.carousel-slide img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .55s ease;filter:saturate(.95)}
.carousel-slide:hover img{transform:scale(1.065);filter:saturate(1.12)}
.carousel-arrow{position:absolute;top:calc(50% - 18px);transform:translateY(-50%);z-index:3;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;border:1px solid #ffffffa6;background:#18121baf;color:#fff;font-size:22px;cursor:pointer;transition:background .2s,transform .2s}
.carousel-arrow:hover{background:var(--pink);transform:translateY(-50%) scale(1.08)}
.carousel-prev{left:18px}.carousel-next{right:18px}
.carousel-dots{position:absolute;bottom:11px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:9px}
.carousel-dot{height:9px;width:9px;border:0;border-radius:99px;background:#ffffff72;cursor:pointer;padding:0;transition:width .25s,background .25s}
.carousel-dot[aria-current="true"]{width:25px;background:var(--pink)}
.feature-card{isolation:isolate}
.feature-card.feature-photo,.feature-card.feature-gallery,.feature-card.feature-album{background-image:none}
.feature-card.feature-photo::before,.feature-card.feature-gallery::before,.feature-card.feature-album::before{content:"";position:absolute;inset:0;z-index:-1;background-position:center;background-size:cover;transition:transform .55s ease}
.feature-card.feature-photo::before{background-image:linear-gradient(0deg,#15111bd9,#16131c28),url('media/gallery-slide-2.jpg')}
.feature-card.feature-gallery::before{background-image:linear-gradient(0deg,#10151be8,#10151b35),url('media/gallery-slide-4.jpg')}
.feature-card.feature-album::before{background-image:linear-gradient(0deg,#101010d9,#10101024),url('media/gallery-slide-5.jpg')}
.feature-card:hover::before{transform:scale(1.065)}
.feature-card .feature-video{transition:transform .55s ease}
.feature-card:hover .feature-video{transform:scale(1.065)}
.feature-card.feature-dark{transition:background .55s ease}
.feature-card.feature-dark:hover{background:#4c3445}
@media(max-width:900px){.carousel-slide{flex-basis:33.333333%}}
@media(max-width:680px){.carousel-slide{flex-basis:75%;aspect-ratio:1.12}.carousel-arrow{width:37px;height:37px}.carousel-prev{left:9px}.carousel-next{right:9px}}
@media(prefers-reduced-motion:reduce){.carousel-track,.carousel-slide img,.feature-card::before,.feature-video{transition:none!important}}

/* Single outlined gallery link in header */
.site-header .main-nav{display:flex;align-items:center;gap:0}
.site-header .main-nav .event-gallery-link{display:inline-flex;align-items:center;justify-content:center;text-align:center;border:1px solid #111;border-radius:0;background:transparent;color:#111;padding:11px 17px;font-size:12px;font-weight:600;letter-spacing:.25px;line-height:1.35;transition:background-color .2s ease,color .2s ease}
.site-header .main-nav .event-gallery-link:hover,.site-header .main-nav .event-gallery-link:focus-visible{background:#111;color:#fff}
@media(max-width:680px){.site-header .main-nav{display:flex;position:static;flex-direction:row;align-items:center;box-shadow:none;background:transparent;padding:0}.site-header .main-nav .event-gallery-link{font-size:9px;padding:9px 10px;max-width:190px}.site-header .brand-logo{max-width:145px}}

/* Header: gallery, contact details and booking call to action */
.site-header{gap:20px}
.site-header .main-nav{gap:18px;flex-wrap:nowrap;margin-left:auto}
.site-header .main-nav .nav-contact{display:flex;flex-direction:column;gap:3px;align-items:flex-start;white-space:nowrap}
.site-header .main-nav .nav-contact a{font-size:12px;font-weight:600;line-height:1.5;color:#171717}
.site-header .main-nav .nav-contact a:hover{color:var(--pink)}
.site-header .main-nav .nav-cta{background:var(--pink);color:#fff;border-radius:999px;padding:12px 23px;white-space:nowrap;font-size:13px}
.site-header .main-nav .nav-cta:hover{background:var(--pink-dark);color:#fff}
@media(max-width:1050px){.site-header{padding-inline:20px}.site-header .main-nav{gap:12px}.site-header .main-nav .event-gallery-link{padding:9px 11px;font-size:10px}.site-header .main-nav .nav-contact a{font-size:11px}.site-header .main-nav .nav-cta{padding:10px 16px}}
@media(max-width:760px){.site-header{height:auto;min-height:76px;flex-wrap:wrap;justify-content:center;padding:12px 16px;gap:12px}.site-header .main-nav{position:static;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-left:0;padding:0;box-shadow:none;background:transparent}.site-header .main-nav .nav-contact{align-items:center}.site-header .main-nav .event-gallery-link{max-width:none;font-size:10px}.site-header .brand-logo{max-width:170px}.site-header .main-nav .nav-cta{padding:10px 16px}}
@media(max-width:420px){.site-header .main-nav{gap:10px}.site-header .main-nav .nav-contact{order:3;width:100%;flex-direction:row;justify-content:center;flex-wrap:wrap;column-gap:14px}.site-header .main-nav .nav-contact a{font-size:10px}}

/* Responsive contact menu: gallery remains visible at every width. */
.site-header .main-nav{display:flex;align-items:center;gap:20px;flex-wrap:nowrap;margin-left:auto;min-width:0}
.site-header .main-nav .event-gallery-link{border-radius:6px;flex-shrink:0}
.site-header .main-nav .nav-collapsible{display:flex;align-items:center;gap:34px}
.site-header .main-nav .nav-contact{display:flex;flex-direction:column;align-items:flex-start;gap:4px;white-space:nowrap}
.site-header .main-nav .nav-cta{margin-left:4px}
.site-header .main-nav .menu-toggle{display:none}
@media(max-width:1100px){
  .site-header{position:relative;display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:12px;padding:12px 20px;min-height:76px;height:auto}
  .site-header .brand-logo{width:180px;max-width:100%;height:auto}
  .site-header .main-nav{display:flex;position:static;flex-direction:row;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:nowrap;margin-left:auto;padding:0;background:transparent;box-shadow:none;width:auto;min-width:0}
  .site-header .main-nav .event-gallery-link{display:inline-flex;font-size:10px;padding:9px 12px;max-width:none}
  .site-header .main-nav .menu-toggle{display:inline-flex;justify-content:center;align-items:center;flex-shrink:0;width:42px;height:42px;border:1px solid #222;border-radius:6px;background:white;color:#111;font-size:22px;line-height:1;cursor:pointer}
  .site-header .main-nav .menu-toggle:hover,.site-header .main-nav .menu-toggle:focus-visible{background:#f7f7f7}
  .site-header .main-nav .nav-collapsible{display:none;position:absolute;top:100%;right:16px;z-index:100;width:min(310px,calc(100vw - 32px));padding:22px;background:#fff;border:1px solid #e5e5e5;border-radius:10px;box-shadow:0 12px 32px #0002;flex-direction:column;align-items:stretch;gap:22px}
  .site-header .main-nav .nav-collapsible.open{display:flex}
  .site-header .main-nav .nav-collapsible .nav-contact{display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:auto;order:initial}
  .site-header .main-nav .nav-collapsible .nav-contact a{font-size:13px}
  .site-header .main-nav .nav-collapsible .nav-cta{display:block;text-align:center;margin:0;padding:13px 20px;font-size:13px}
}
@media(max-width:520px){
  .site-header{padding:12px 10px;gap:5px}
  .site-header .brand-logo{width:118px;max-height:46px}
  .site-header .main-nav{gap:7px}
  .site-header .main-nav .event-gallery-link{font-size:8px;padding:8px 7px;max-width:155px;line-height:1.2}
  .site-header .main-nav .menu-toggle{width:36px;height:36px;font-size:19px}
}
@media(max-width:355px){.site-header .brand-logo{width:90px}.site-header .main-nav .event-gallery-link{max-width:137px;font-size:7px}}
