*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--pink:#FD3DB5;--black:#000000;--white:#ffffff}body{font-family:'Montserrat',sans-serif;background:var(--white);color:var(--black);overflow-x:hidden}header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:var(--white);box-shadow:0 4px 24px rgba(0,0,0,0.45)}.burger{display:flex;flex-direction:column;gap:6px;cursor:pointer;background:none;border:none;padding:4px;flex-shrink:0}.burger span{display:block;width:34px;height:3px;background:var(--black);border-radius:2px;transition:0.3s}.burger:hover span{background:var(--pink)}.logo-wrap{flex:1;display:flex;justify-content:center}.logo-wrap img{height:70px;width:auto;object-fit:contain}.insta-link{display:flex;align-items:center;flex-shrink:0;text-decoration:none;color:var(--pink);transition:opacity 0.2s}.insta-link:hover{opacity:0.75}.insta-link svg{width:42px;height:42px}.hero-banner{background:var(--black);padding:22px 32px;text-align:center}.hero-banner h1{font-size:clamp(18px,5vw,64px);font-weight:900;color:var(--white);text-transform:uppercase;letter-spacing:0.02em;line-height:1.1;white-space:nowrap}.hero-banner h1 span{color:var(--pink)}.pink-stripe{height:6px;background:var(--pink);display:block;font-size:0;line-height:0}@media (max-width:600px){header{padding:12px 16px}.logo-wrap img{height:50px}.insta-link svg{width:32px;height:32px}.burger span{width:26px}.hero-banner{padding:20px 16px}}.nav-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999;pointer-events:none}.nav-overlay-backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.55);opacity:0;transition:opacity 0.2s ease}.nav-overlay.open .nav-overlay-backdrop{opacity:1;pointer-events:all}.nav-sidebar{position:absolute;top:0;left:0;width:min(320px,85vw);height:100%;background:rgba(255,255,255,0.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-right:4px solid var(--pink);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:72px 36px 32px;overflow-y:auto;gap:0;transform:translateX(-100%);transition:transform 0.2s cubic-bezier(0.4,0,0.2,1);pointer-events:all}.nav-overlay.open .nav-sidebar{transform:translateX(0)}.nav-overlay.open{pointer-events:all}.nav-sidebar a{font-size:clamp(20px,5vw,28px);font-weight:600;color:var(--black);text-decoration:none;text-transform:uppercase;letter-spacing:0.06em;text-align:left;padding:11px 0;width:100%;border-bottom:1.5px solid rgba(0,0,0,0.1);transition:color 0.2s,padding-left 0.2s;opacity:0;transform:translateX(-24px);transition:color 0.1s,padding-left 0.1s,opacity 0.15s,transform 0.15s}.nav-overlay.open .nav-sidebar a:nth-child(1){opacity:1;transform:none;transition-delay:0.05s}.nav-overlay.open .nav-sidebar a:nth-child(2){opacity:1;transform:none;transition-delay:0.08s}.nav-overlay.open .nav-sidebar a:nth-child(3){opacity:1;transform:none;transition-delay:0.11s}.nav-overlay.open .nav-sidebar a:nth-child(4){opacity:1;transform:none;transition-delay:0.14s}.nav-overlay.open .nav-sidebar a:nth-child(5){opacity:1;transform:none;transition-delay:0.17s}.nav-sidebar a:last-child{border-bottom:none}.nav-sidebar a:hover{color:var(--pink);padding-left:8px}.nav-close{position:absolute;top:18px;right:18px;background:none;border:none;color:var(--black);font-size:38px;cursor:pointer;line-height:1;z-index:10;padding:4px 10px;transition:color 0.2s}.nav-close:hover{color:var(--pink)}.yesmama-header{background:var(--black);padding:22px 32px;text-align:center;border-bottom:4px solid var(--pink)}.yesmama-header h2{font-size:clamp(22px,5vw,52px);font-weight:900;color:var(--white);text-transform:uppercase;letter-spacing:0.02em;white-space:nowrap}.yesmama-header h2 span{color:var(--pink)}.yesmama-sub{background:var(--white);padding:28px 32px;text-align:left;box-shadow:0 4px 24px rgba(0,0,0,0.45)}.yesmama-sub p{font-family:'Montserrat',sans-serif;font-size:clamp(16px,3.5vw,26px);font-weight:600;color:var(--black);line-height:1.4}@media (max-width:480px){.yesmama-header{padding:16px 20px}.yesmama-sub{padding:20px 16px}}.history-header{background:var(--black);padding:22px 32px;text-align:center;border-bottom:4px solid var(--pink)}.history-header h2{font-size:clamp(22px,5vw,52px);font-weight:900;color:var(--white);text-transform:uppercase;letter-spacing:0.02em;white-space:nowrap}.history-header h2 span{color:var(--pink)}@media (max-width:480px){.history-header{padding:16px 20px}}.story-block{background:var(--white);padding:36px 28px 40px}.story-title{font-size:clamp(26px,6vw,52px);font-weight:900;color:var(--black);text-transform:uppercase;line-height:1.15;margin-bottom:24px}.story-title span{color:var(--pink)}.story-text{font-family:'Montserrat',sans-serif;font-size:clamp(15px,3vw,20px);font-weight:600;color:var(--black);line-height:1.3}.story-quote{font-family:'Montserrat',sans-serif;font-size:clamp(26px,6vw,52px);font-weight:900;color:var(--black);text-transform:uppercase;line-height:1.15;margin-top:16px}.full-photo{display:block;line-height:0;font-size:0}.full-photo img{width:100%;display:block}.nav-close:hover{color:var(--pink)}.cta-section{background:var(--white);padding:20px 28px 56px}.cta-title{font-size:clamp(24px,6vw,52px);font-weight:700;color:var(--black);text-transform:uppercase;line-height:1.15;margin-bottom:36px}.cta-title span{color:var(--pink)}.cta-btn{display:block;width:100%;max-width:420px;background:var(--pink);color:var(--white);font-family:'Montserrat',sans-serif;font-size:clamp(18px,4vw,28px);font-weight:900;text-transform:uppercase;text-decoration:none;text-align:center;padding:20px 32px;letter-spacing:0.04em;box-shadow:0 0 40px rgba(253,61,181,0.45);transition:box-shadow 0.2s,transform 0.2s}.cta-btn:hover{box-shadow:0 0 60px rgba(253,61,181,0.7);transform:scale(1.02)}@media (max-width:600px){.cta-section{padding:14px 20px 18px}.cta-btn{max-width:100%}}.carousel-section{display:block;background:var(--white);padding:0 0 2px;margin:0;font-size:0;line-height:0}.carousel{display:block;position:relative;width:100%;font-size:0;line-height:0}.car-track-wrap{display:block;width:100%;overflow:hidden;font-size:0;line-height:0}.car-dots{position:absolute;bottom:auto;top:3px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:10}.car-track{display:flex;transition:transform 0.45s cubic-bezier(.4,0,.2,1)}.car-slide{min-width:100%}.car-slide img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.car-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.12);border:none;color:rgba(255,255,255,0.45);font-size:52px;line-height:1;cursor:pointer;z-index:10;padding:4px 10px 8px;border-radius:4px;transition:background 0.2s,color 0.2s;user-select:none}.car-btn:hover{background:rgba(253,61,181,0.18);color:rgba(253,61,181,0.6)}.car-prev{left:0}.car-next{right:0}.car-dots{display:flex;justify-content:center;gap:8px;padding:14px 0 20px}.car-dot{width:8px;height:8px;border-radius:50%;background:#ddd;border:none;cursor:pointer;transition:background 0.2s,transform 0.2s;padding:0}.car-dot.active{background:var(--pink);transform:scale(1.25)}@media (max-width:600px){.car-btn{font-size:38px;padding:2px 7px 6px}.car-btn{font-size:38px;padding:2px 7px 6px}}.services-section{background:var(--white)}.serv-tabs{display:flex;border-bottom:3px solid var(--black)}.serv-tab{flex:1;background:var(--white);color:var(--black);font-family:'Montserrat',sans-serif;font-size:clamp(11px,2.5vw,16px);font-weight:900;text-transform:uppercase;letter-spacing:0.04em;padding:16px 4px;border:none;border-right:2px solid var(--black);cursor:pointer;transition:background .2s,color .2s}.serv-tab:last-child{border-right:none}.serv-tab.active,.serv-tab:hover{background:var(--pink);color:var(--white)}.serv-panel{display:none}.serv-panel.active{display:block}.serv-photo{position:relative;line-height:0}.serv-photo img{width:100%;height:auto;display:block}.serv-photo .cta-btn{position:absolute;left:50%;bottom:32px;transform:translateX(-50%);width:auto;min-width:240px;max-width:85%;margin:0;padding:22px 32px;font-size:clamp(18px,4vw,26px)}.serv-carousel-wrap{position:relative}.serv-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,0.45);color:#fff;border:none;font-size:2.8rem;font-weight:900;width:44px;height:64px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:background .2s;line-height:1}.serv-arrow:hover{background:var(--pink)}.serv-arrow-left{left:0;border-radius:0 4px 4px 0}.serv-arrow-right{right:0;border-radius:4px 0 0 4px}.price-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.72);z-index:1000;align-items:flex-end;justify-content:center;padding:0;overflow:hidden}.price-overlay.open{display:grid;grid-template-rows:1fr auto}.price-modal{position:relative;background:var(--white);width:100%;border-radius:18px 18px 0 0;padding:40px 20px 36px;max-height:85vh;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;animation:slideUp .28s ease;will-change:transform;transform-origin:bottom center;align-self:end}@keyframes slideUp{from{transform:translateY(100%)}to{transform:translateY(0)}}.price-modal-x{position:absolute;top:14px;right:18px;background:none;border:none;font-size:1.8rem;font-weight:900;color:var(--black);cursor:pointer;line-height:1;padding:4px 8px}.price-modal-x:hover{color:var(--pink)}.price-modal-title{font-family:'Montserrat',sans-serif;font-size:clamp(22px,5vw,34px);font-weight:900;text-transform:uppercase;border-bottom:4px solid var(--pink);padding-bottom:12px;margin-bottom:24px;color:var(--black)}.price-modal-title span{color:var(--pink)}.price-cat{font-family:'Montserrat',sans-serif;font-size:clamp(13px,2.5vw,16px);font-weight:900;text-transform:uppercase;color:var(--pink);letter-spacing:0.06em;margin:20px 0 4px}.price-note{font-family:'Montserrat',sans-serif;font-size:clamp(11px,2vw,13px);font-weight:500;color:#888;line-height:1.4;margin:0 0 10px;padding:8px 12px;background:#f7f7f7;border-left:3px solid var(--pink)}.price-list{list-style:none;padding:0;margin:0 0 8px}.price-list li{display:flex;justify-content:space-between;align-items:flex-start;font-family:'Montserrat',sans-serif;font-size:clamp(13px,2.5vw,16px);font-weight:600;padding:8px 0;border-bottom:1.5px solid #eee;gap:8px}.price-list li:last-child{border-bottom:none}.price-val{color:var(--black);font-weight:900;white-space:nowrap;margin-left:12px;font-size:clamp(14px,2.5vw,17px);flex-shrink:0}.price-modal-book{display:block;width:100%;background:var(--pink);color:var(--white);font-family:'Montserrat',sans-serif;font-size:clamp(16px,3vw,22px);font-weight:900;text-transform:uppercase;padding:18px;border:none;cursor:pointer;letter-spacing:0.04em;transition:background .2s;text-decoration:none;text-align:center;margin-top:20px}.price-modal-book:hover{background:var(--black)}.banner-stripe{background:var(--black);padding:22px 20px;text-align:center;border-bottom:7px solid var(--pink)}.banner-stripe h2{font-family:'Montserrat',sans-serif;font-size:clamp(20px,5.5vw,38px);font-weight:900;text-transform:uppercase;color:var(--white);letter-spacing:0.03em;margin:0;line-height:1.1}.banner-stripe h2 span{color:var(--pink)}.hiring-text{background:var(--white);padding:40px 28px 44px}.hiring-text p{font-family:'Montserrat',sans-serif;font-size:clamp(16px,4vw,22px);font-weight:700;color:var(--black);margin:0 0 20px;line-height:1.4}.hiring-text ul{list-style:none;padding:0;margin:0 0 28px}.hiring-text ul li{font-family:'Montserrat',sans-serif;font-size:clamp(15px,3.5vw,20px);font-weight:600;color:var(--black);padding:10px 0;border-bottom:1.5px solid #eee;display:flex;align-items:center;gap:10px}.hiring-text ul li:last-child{border-bottom:none}.hiring-text ul li::before{content:'';display:inline-block;width:10px;height:10px;min-width:10px;background:var(--pink);border-radius:50%}.hiring-text .send-label{font-family:'Montserrat',sans-serif;font-size:clamp(16px,4vw,22px);font-weight:700;color:var(--black);margin:0 0 20px;display:block}.map-section iframe{display:block;width:100%;height:400px;border:none}.map-cta{background:var(--white);padding:28px 24px 36px;text-align:center}.map-contacts{background:var(--white);padding:24px 28px 20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 24px rgba(0,0,0,0.45)}.map-address,.map-phone{font-family:Montserrat,sans-serif;font-size:clamp(15px,3.5vw,20px);font-weight:700;color:var(--black);text-decoration:none;display:flex;align-items:center;gap:8px;transition:color 0.15s}.map-address:hover,.map-phone:hover{color:var(--pink)}

/* ===== SCROLL ANIMATIONS ===== */
.anim-up {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(.22,1,.36,1), transform 0.7s cubic-bezier(.22,1,.36,1);
  will-change: opacity, transform;
}
.anim-up.visible {
  opacity: 1;
  transform: translateY(0);
}
.anim-up.anim-d1 { transition-delay: 0.08s; }
.anim-up.anim-d2 { transition-delay: 0.16s; }
.anim-up.anim-d3 { transition-delay: 0.24s; }

/* ===== HERO TEXT ENTRANCE ===== */
@keyframes heroSlideIn {
  from { opacity:0; transform: translateY(24px); }
  to   { opacity:1; transform: translateY(0); }
}
.hero-banner h1 {
  animation: heroSlideIn 0.9s cubic-bezier(.22,1,.36,1) 0.1s both;
}

/* ===== PINK STRIPE EXPAND ===== */
@keyframes stripeExpand {
  from { transform: scaleX(0); }
  to   { transform: scaleX(1); }
}
.pink-stripe {
  transform-origin: left;
  animation: stripeExpand 0.8s cubic-bezier(.22,1,.36,1) 0.3s both;
}

/* ===== HEADER ENTRANCE ===== */
@keyframes fadeDown {
  from { opacity:0; transform: translateY(-10px); }
  to   { opacity:1; transform: translateY(0); }
}
.logo-wrap  { animation: fadeDown 0.6s cubic-bezier(.22,1,.36,1) 0.1s both; }
.burger     { animation: fadeDown 0.6s cubic-bezier(.22,1,.36,1) 0.15s both; }
.insta-link { animation: fadeDown 0.6s cubic-bezier(.22,1,.36,1) 0.2s both; }

/* ===== CTA BUTTON PULSE ===== */
@keyframes ctaPulse {
  0%,100% { box-shadow: 0 0 40px rgba(253,61,181,0.45); }
  50%     { box-shadow: 0 0 70px rgba(253,61,181,0.75); }
}
.cta-btn {
  animation: ctaPulse 3s ease-in-out infinite;
}

/* ===== SECTION HEADER REVEAL ===== */
@keyframes headerReveal {
  from { opacity:0; transform: translateY(16px); }
  to   { opacity:1; transform: translateY(0); }
}
.history-header.visible h2,
.yesmama-header.visible h2,
.banner-stripe.visible h2 {
  animation: headerReveal 0.65s cubic-bezier(.22,1,.36,1) both;
}
.history-header h2,
.yesmama-header h2,
.banner-stripe h2 {
  opacity: 0;
}
.history-header.visible h2,
.yesmama-header.visible h2,
.banner-stripe.visible h2 {
  opacity: 1;
}

/* ===== HOVER EFFECTS ===== */
.serv-tab {
  transition: background 0.2s, color 0.2s, transform 0.15s !important;
}
.serv-tab:hover { transform: translateY(-2px); }

.map-address, .map-phone {
  transition: color 0.15s, transform 0.15s !important;
}
.map-address:hover, .map-phone:hover {
  transform: translateX(5px);
}
