.in-person-page{background:linear-gradient(135deg,#faf9f6,#f0ede6);min-height:100vh;margin:0;padding:0;position:relative;top:0;left:0;right:0}.ip-hero{position:relative;min-height:350px;width:100vw;max-width:100vw;overflow:hidden;box-sizing:border-box;text-align:center;border-bottom:3px solid #d61a61;display:flex;align-items:center;justify-content:center;flex-direction:column}.ip-hero-content{position:relative;z-index:2;max-width:900px;margin:0 auto;padding:2rem 1rem;box-sizing:border-box;width:100%}.ip-hero-title{font-family:Bodoni,serif;font-size:3.2rem;font-weight:800;color:#1a1a1a;margin:0;line-height:1.1;letter-spacing:-.5px}.ip-hero-subtitle{display:block;font-size:1.5rem;font-weight:400;font-style:italic;margin-top:.5rem;color:#666;font-family:Bodoni,serif}.ip-hero-divider{width:80px;height:4px;background-color:#d61a61;margin:1.2rem auto;border-radius:2px}.ip-hero-description{font-family:Lato,sans-serif;font-size:1.15rem;color:#444;margin:0 auto 1.2rem;max-width:550px;line-height:1.5}.ip-hero-cta{margin-top:0;font-size:1.1rem;padding:1rem 2.5rem;background-color:#d61a61;color:#fff;border:none;border-radius:5px;font-weight:700;cursor:pointer;box-shadow:0 10px 25px #d61a6140;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.ip-hero-cta:hover{transform:translateY(-3px);box-shadow:0 15px 35px #d61a6159;background-color:#c41556}.ip-breadcrumbs{padding:1rem 0;background:#f9f9f9;border-bottom:1px solid #e0e0e0;font-size:.9rem}.ip-breadcrumbs-inner{max-width:1200px;margin:0 auto;padding:0 2rem}.ip-breadcrumbs a{color:#666;text-decoration:none;transition:color .2s}.ip-breadcrumbs a:hover{color:#d61a61}.ip-breadcrumb-sep{margin:0 .5rem;color:#999}.ip-breadcrumb-current{color:#d61a61;font-weight:600}.ip-about-section{padding:3rem 2rem;background:#fff}.ip-about-content{max-width:900px;margin:0 auto;display:flex;gap:2.5rem;align-items:center}.ip-about-image img{width:280px;height:280px;border-radius:16px;object-fit:cover;border:3px solid #f3dbe6;box-shadow:0 8px 25px #00000014}.ip-about-text h2{font-family:Bodoni,serif;font-size:2.2rem;color:#2f2f2f;margin:0 0 1rem;font-weight:700}.ip-about-text p{color:#555;line-height:1.7;font-size:1.05rem;margin:0 0 .8rem}.ip-about-text p strong{color:#2f2f2f}.ip-about-text p em{color:#d61a61;font-style:italic}.ip-about-link{display:inline-block;margin-top:.5rem;color:#d61a61;font-weight:600;text-decoration:none;font-size:1rem;transition:color .2s}.ip-about-link:hover{color:#b81452;text-decoration:underline}.ip-about-toggle{display:inline-flex;align-items:center;gap:.35rem;margin-top:.25rem;padding:0;border:none;background:transparent;color:#d61a61;font-weight:700;font-size:.98rem;cursor:pointer;transition:color .2s ease}.ip-about-toggle:hover{color:#b81452}@media (max-width: 768px){.ip-hero{min-height:320px}.ip-hero-content{padding:1.65rem .75rem 1.85rem}.ip-hero-title{font-size:2.2rem;line-height:1.04}.ip-hero-subtitle{font-size:1.08rem;margin-top:.45rem}.ip-hero-divider{width:58px;height:3px;margin:.95rem auto}.ip-hero-description{font-size:.96rem;margin:0 auto 1rem;padding:0 .25rem;max-width:500px}.ip-hero-cta{font-size:.95rem;padding:.9rem 1.25rem;width:auto;min-width:250px;max-width:100%;letter-spacing:.05em}.ip-breadcrumbs{padding:.72rem 0;font-size:.82rem}.ip-breadcrumbs-inner{padding:0 1rem}.ip-breadcrumb-sep{margin:0 .32rem}.ip-about-content{flex-direction:column;text-align:center;gap:1.5rem}.ip-about-image img{width:200px;height:200px}.ip-about-text h2{font-size:1.8rem}}.testimonial-quote{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:3rem 2rem;text-align:center;border-top:1px solid #d61a61;border-bottom:1px solid #d61a61}.testimonial-quote blockquote{font-family:Lato,sans-serif;font-size:1.8rem;font-weight:400;color:#2f2f2f;margin:0 auto;max-width:800px;line-height:1.4;font-style:italic}.testimonial-actions{background:#fff;padding:1.35rem 1.5rem 2.2rem}.testimonial-actions__inner{max-width:720px;margin:0 auto;text-align:center}.testimonial-actions__reviews{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;color:#2f2f2f;text-decoration:none;font-size:.98rem;font-weight:600}.testimonial-actions__stars{color:#d61a61;letter-spacing:.08em}.testimonial-actions__button{margin-top:1rem}@media (max-width: 768px){.testimonial-quote{padding:2rem 1rem}.testimonial-quote blockquote{font-size:1.4rem;line-height:1.3}.testimonial-actions{padding:1rem 1rem 1.8rem}.testimonial-actions__reviews{flex-wrap:wrap}}.session-cta-btn{background:linear-gradient(135deg,#d61a61,#b81452);color:#fff;border:none;padding:1.2rem 2.5rem;border-radius:50px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1.1rem;font-family:Lato,sans-serif;box-shadow:0 4px 20px #d61a6166}.session-cta-btn:hover{transform:translateY(-3px);box-shadow:0 8px 30px #d61a6199}.button-primary{background:#d61a61!important;color:#fff!important;border:2px solid #d61a61!important;text-decoration:none!important}.button-primary:hover{background:#b81452!important;border-color:#b81452!important;text-decoration:none!important}.booking-section{padding:6rem 2rem;background:linear-gradient(135deg,#feeae6,#f8f0ec);text-align:center}.booking-section h2{font-family:Bodoni,serif;font-size:2.2rem;color:#2f2f2f;margin-bottom:1rem}.booking-subtitle{font-size:1.3rem;color:#666;margin-bottom:3rem}.calendly-wrapper{max-width:600px;margin:0 auto;border:1px solid rgba(214,26,97,.2);border-radius:8px;padding:20px;background:#ffffff4d;box-shadow:0 2px 8px #d61a611a}.calendly-inline-widget{width:100%!important;overflow:hidden!important}@media (min-width: 768px){.booking-options{max-width:600px}.booking-option{max-width:500px}}.booking-option:hover{transform:translateY(-5px);box-shadow:0 15px 40px #00000026}.booking-option.featured{border-color:#d4a373;transform:scale(1.05)}.booking-option.featured:hover{transform:scale(1.05) translateY(-5px)}.session-title{display:block;font-family:Bodoni,serif;font-size:1.8rem;color:#2f2f2f;margin-bottom:.5rem}.duration{color:#666;font-size:.9rem;margin-bottom:1rem}.price{font-family:Bodoni,serif;font-size:2.5rem;color:#d4a373;font-weight:700;margin:1rem 0}.price-note{color:#555;font-size:.95rem;margin-bottom:2rem;line-height:1.4}.session-button,.session-button-alt{display:block;width:calc(100% - 2rem);max-width:200px;margin:1rem auto 0;padding:1rem 1.5rem;background:linear-gradient(135deg,#d4a373,#c89660);color:#fff;border:none;border-radius:12px;font-weight:600;text-decoration:none;text-align:center;transition:all .3s ease;font-size:1rem;font-family:Lato,sans-serif;box-shadow:0 4px 15px #d4a37333}.session-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #d4a37366}.session-button-alt{background:#fff;color:#d61a61;border:2px solid #d61a61;box-shadow:0 4px 15px #d61a611a}.session-button-alt:hover{background:#d61a61;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #d61a614d}.section-label{padding:1.5rem 0 .75rem;margin-top:1.5rem;background:linear-gradient(135deg,#f8f6f2,#f3ede6);text-align:center;border-radius:0 0 40px 40px;box-shadow:0 2px 16px #d61a6114}.section-label h2{font-family:Bodoni,serif;font-size:2.2rem;color:#222;font-weight:700;margin:0;letter-spacing:.01em;text-align:center}.arrow-down-icon{display:block;width:28px;height:28px;margin:0 auto}.included-section{padding:.75rem 1.5rem;font-size:1rem;background:#fff}.included-section ul{list-style:none;padding:0;max-width:800px;margin:0 auto}.included-section li{display:flex;align-items:flex-start;gap:8px;font-size:1.1rem;padding:8px 0;position:relative;margin:0;line-height:1.3}.included-section li:not(:last-child):after{content:"";display:block;position:absolute;left:0;right:0;bottom:0;height:1px;background:#f3dbe6;opacity:.3}.included-section li span.emoji{font-size:1.1em;margin:0;min-width:22px;text-align:center}.included-section li span:last-child{line-height:1.3;padding:0;margin:0}.studio-section{padding:1rem;background:#faf9f6!important;text-align:center}.studio-content{max-width:700px;margin:0 auto;text-align:center}.studio-content h2{font-family:Bodoni,serif;font-size:2rem;color:#2f2f2f;margin-bottom:1rem;text-align:center}.location-details{margin:.5rem 0;text-align:left}.detail{display:flex;align-items:flex-start;margin:.5rem 0;gap:.5rem}.detail-icon{font-size:1.2rem;flex-shrink:0}.detail strong{display:block;color:#2f2f2f;font-size:1.1rem;margin-bottom:.2rem;font-weight:600;font-family:Bodoni,serif}.detail p{color:#555;line-height:1.2;margin:0;font-size:1.1rem}@media (max-width: 768px){.booking-section{padding:4rem 5px}.studio-content{grid-template-columns:1fr;gap:2rem}.booking-options{padding:0 5px;max-width:450px;margin:0 auto}.booking-option,.calendly-wrapper,.calendly-inline-widget{width:450px!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;overflow:hidden!important}.studio-info h2,.booking-section h2{font-size:2.5rem}.section-label{margin-top:2.5rem;padding-top:2.5rem}.included-section{margin-bottom:2.5rem}.faq-section h2{font-size:1.8rem}.faq-item summary{padding:1rem 1.2rem;font-size:.95rem}.faq-item p{padding:0 1.2rem 1rem;font-size:.95rem}}.faq-section{padding:3.5rem 0 2.5rem;background:#fff}.faq-section h2{font-family:Bodoni,serif;font-size:2.2rem;font-weight:700;text-align:center;margin-bottom:2rem;color:#2f2f2f}.faq-grid{max-width:700px;margin:0 auto}.faq-item{background:#fff;border-radius:12px;margin-bottom:1rem;box-shadow:0 5px 20px #00000014;overflow:hidden;border:1px solid #f3dbe6}.faq-item summary{padding:1.2rem 4.25rem 1.2rem 1.5rem;cursor:pointer;font-weight:600;color:#2f2f2f;transition:background .3s ease;outline:none;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:#d61a61;transition:transform .3s ease}.faq-item[open] summary:after{transform:translateY(-50%) rotate(45deg)}.faq-item summary:hover{background:#f9f6f2}.faq-item[open] summary{background:#f9f6f2}.faq-item p{padding:0 1.5rem 1.2rem;color:#666;margin:0;font-size:1rem;line-height:1.6}.faq-item a{color:#d4a373;text-decoration:none}.faq-item a:hover{text-decoration:underline}.price-section{text-align:center;margin-bottom:20px}.price{font-size:3rem;font-weight:800;color:#d61a61;font-family:Bodoni,serif;display:block;margin-bottom:10px}.price-description{font-size:1.2rem;color:#666;margin:0;font-weight:500}.booking-content{text-align:center;max-width:600px;margin:0 auto;padding:2rem}.booking-button{margin:20px auto!important}@media (max-width: 768px){.price{font-size:2.5rem}.price-description{font-size:1.1rem}.booking-content{padding:1rem}}.booking-cta-section{background:linear-gradient(135deg,#faf9f6,#f0ede6);padding:3rem 2rem;text-align:center;border-top:3px solid #d61a61;border-bottom:3px solid #d61a61}.booking-cta-content{max-width:600px;margin:0 auto}@media (min-width: 769px){.booking-cta-content{max-width:850px}}.studio-address{font-size:1rem;color:#666;margin:8px 0 0;font-weight:500}@media (max-width: 768px){.booking-cta-section{padding:2rem 1rem}.page-title-section h1{font-size:2.1rem!important;padding:1rem 2rem!important}}.group-dropdown-wrapper{margin-top:20px;text-align:center}.group-toggle-btn{background-color:transparent;border:2px solid #d61a61;border-radius:5px;padding:10px 20px;font-size:14px;font-weight:600;color:#d61a61;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.group-toggle-btn:hover{background-color:#fff5f8;border-color:#b81452}.group-options-container{margin-top:15px;padding:20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;border:2px solid rgba(214,26,97,.15);box-shadow:0 4px 12px #d61a6114;max-width:850px;margin-left:auto;margin-right:auto}.group-options-title{text-align:center;margin:0 0 15px;font-size:16px;font-weight:700;color:#2f2f2f;font-family:Bodoni,serif}.group-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;max-width:400px;margin:0 auto}.group-option-card{position:relative;display:block;padding:12px 16px;background-color:#fff;color:#2f2f2f;border:2px solid #d61a61;border-radius:8px;text-decoration:none;text-align:center;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.group-option-card:hover{background-color:#fff5f8;transform:translateY(-2px);box-shadow:0 4px 16px #d61a6133;border-color:#b81452}.group-badge{position:absolute;top:-6px;left:50%;transform:translate(-50%);background-color:#d61a61;color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:8px;text-transform:uppercase;white-space:nowrap}.group-people{font-size:16px;font-weight:700;margin-bottom:2px;margin-top:8px}.group-price{font-size:18px;color:#d61a61;font-weight:800;transition:color .3s ease}.group-per-person{font-size:11px;color:#666;transition:color .3s ease}@media (min-width: 769px){.group-options-grid{grid-template-columns:repeat(3,1fr);gap:20px;max-width:none}.group-option-card{padding:20px 24px}.group-badge{font-size:11px;padding:3px 10px;top:-8px;border-radius:10px}.group-people{font-size:20px;margin-top:10px}.group-price{font-size:26px}.group-per-person{font-size:13px}}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-top:2rem;width:100%}.pricing-card{background:#fff;border-radius:12px;padding:2rem 1.5rem;text-align:center;border:2px solid rgba(214,26,97,.15);transition:all .3s ease;position:relative;display:flex;flex-direction:column;justify-content:space-between;height:100%;box-shadow:0 4px 12px #0000000d}.pricing-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #d61a6126;border-color:#d61a61}.pricing-card.featured{background:linear-gradient(135deg,#fff5f1,#fff);border-color:#d61a61}.pricing-card.sold-out{background:linear-gradient(180deg,#fcfcfc,#f6f7f8);border-color:#59606b33}.pricing-card.sold-out:hover{transform:none;box-shadow:0 4px 12px #0000000d;border-color:#59606b40}.pricing-card h3{font-family:Bodoni,serif;font-size:1.5rem;color:#2f2f2f;margin:0 0 .5rem}.pricing-card .card-price{font-size:2.2rem;font-weight:800;color:#d61a61;font-family:Bodoni,serif;margin:.5rem 0}.pricing-card .per-person{font-size:.9rem;color:#666;margin-bottom:1.5rem;font-style:italic}.pricing-card .badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#d61a61;color:#fff;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.pricing-card .badge.badge-neutral{background:#6b7280}.pricing-card .availability-note{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 1rem}.pricing-card .availability-note.available{color:#187847}.pricing-card .availability-note.sold-out{color:#59606b}.pricing-card .btn-book{display:block;width:100%;padding:12px;background:#d61a61;color:#fff;border:none;border-radius:6px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;font-size:1rem}.pricing-card .btn-book:hover{background:#b81452;transform:translateY(-2px);box-shadow:0 4px 12px #d61a614d}.pricing-card .btn-book.secondary{background:transparent;color:#d61a61;border:2px solid #d61a61}.pricing-card .btn-book.sold-out{background:#6b7280}.pricing-card .btn-book.sold-out:hover{background:#59606b;transform:none;box-shadow:none}.pricing-card .btn-book.secondary:hover{background:#d61a61;color:#fff}@media (min-width: 1024px){.pricing-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.pricing-grid{gap:.75rem;margin-top:1rem}.pricing-card{padding:1rem;border-radius:10px}.pricing-card h3{font-size:1.2rem;margin:0 0 .25rem}.pricing-card .card-price{font-size:1.6rem;margin:.25rem 0}.pricing-card .per-person{font-size:.8rem;margin-bottom:.75rem}.pricing-card .badge{font-size:.65rem;padding:3px 8px;top:-8px}.pricing-card .btn-book{padding:10px;font-size:.9rem}}@media (max-width: 768px){.group-options-container{max-width:400px}}.appointment-banner{animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.appointment-banner{margin:1rem}}.ip-countdown-banner{background:linear-gradient(135deg,#d61a61,#b81452);color:#fff;padding:2.5rem 1.5rem;text-align:center}.ip-countdown-inner{max-width:640px;margin:0 auto}.ip-countdown-heading{font-family:Bodoni,serif;font-size:2rem;margin:0 0 .4rem;letter-spacing:.5px}.ip-countdown-sub{font-size:.95rem;opacity:.9;margin:0 0 1.5rem}.ip-countdown-grid{display:flex;justify-content:center;gap:1.5rem}.ip-countdown-unit{display:flex;flex-direction:column;align-items:center;min-width:64px}.ip-countdown-num{font-size:2.4rem;font-weight:800;line-height:1;background:#ffffff26;border-radius:10px;padding:.5rem .7rem;min-width:56px;display:inline-block}.ip-countdown-label{font-size:.72rem;text-transform:uppercase;letter-spacing:1.5px;margin-top:.4rem;opacity:.85}@media (max-width: 480px){.ip-countdown-heading{font-size:1.5rem}.ip-countdown-grid{gap:.8rem}.ip-countdown-num{font-size:1.8rem;min-width:48px;padding:.4rem .5rem}}
