:root{--ct-pink:#FF6B9D;--ct-pink-mid:#FFD6E8;--ct-pink-light:#FFF0F7;--ct-pink-pale:#FFF8FC;--ct-gold:#3f124f;--ct-gold-dark:#CDA4DE;--ct-font:'Comic Relief','Nunito','Nunito','Trebuchet MS',sans-serif;--ct-body:'Nunito','Comic Relief',sans-serif;--ct-radius:20px;--ct-radius-sm:12px;--ct-shadow:0 8px 40px rgba(255, 107, 157, 0.12);--ct-shadow-card:0 4px 24px rgba(255, 107, 157, 0.10);--ct-shadow-hover:0 12px 48px rgba(255, 107, 157, 0.22);--ct-text:#2D1B2E;--ct-muted:#6B5565}.contact-page{overflow-x:hidden}.contact-container{max-width:1140px;margin:0 auto;padding:0 24px}.contact-section-header{text-align:center;margin-bottom:52px}.contact-section-tag{display:inline-flex;align-items:center;gap:6px;background:var(--ct-pink-light);color:var(--ct-pink);font-family:var(--ct-font);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:100px;border:1.5px solid var(--ct-pink-mid);margin-bottom:14px}.contact-section-title{font-family:var(--ct-font);font-size:clamp(26px, 3.5vw, 40px);font-weight:800;color:var(--ct-text);margin:0 0 10px;line-height:1.2}.contact-btn,.contact-hero__badge{display:inline-flex;font-weight:700;border-radius:100px}.contact-section-sub{font-family:var(--ct-body);font-size:16px;color:var(--ct-muted);max-width:520px;margin:0 auto;line-height:1.65}.contact-btn{align-items:center;gap:8px;font-family:var(--ct-font);font-size:15px;padding:14px 28px;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;border:2px solid transparent;line-height:1;white-space:nowrap;cursor:pointer}.contact-btn:hover{transform:translateY(-2px)}.contact-btn--gold{background:var(--ct-gold);color:#fff;box-shadow:0 2px 8px rgba(63,18,79,.3)}.contact-btn--gold:hover{background:var(--ct-gold-dark);box-shadow:0 4px 12px rgba(63,18,79,.4);color:#fff;text-decoration:none}.contact-btn--outline{background:0 0;color:var(--ct-pink);border-color:var(--ct-pink)}.contact-btn--outline:hover{background:var(--ct-pink-light);text-decoration:none;color:var(--ct-pink)}.contact-btn--lg{font-size:17px;padding:16px 36px}.contact-blob{position:absolute;border-radius:50%;pointer-events:none;z-index:0}.contact-hero{position:relative;background:linear-gradient(145deg,#fff0f7 0,#ffe8f4 45%,#fff8e1 100%);padding:100px 0 80px;overflow:hidden}.contact-blob--1{width:420px;height:420px;background:radial-gradient(circle,rgba(255,179,209,.4) 0,transparent 70%);top:-100px;right:-60px}.contact-blob--2{width:280px;height:280px;background:radial-gradient(circle,rgba(245,166,35,.12) 0,transparent 70%);bottom:-60px;left:80px}.contact-float{position:absolute;z-index:1;animation:6s ease-in-out infinite ctaFloat}.contact-float--1{width:130px;top:14%;left:4%;animation-delay:0s}.contact-float--2{width:90px;bottom:16%;right:6%;animation-delay:1.5s}@keyframes ctaFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}.contact-hero__inner{position:relative;z-index:2;text-align:center;max-width:680px;margin:0 auto}.contact-hero__badge{align-items:center;gap:6px;background:rgba(255,107,157,.1);color:var(--ct-pink);font-family:var(--ct-font);font-size:13px;padding:7px 16px;border:1.5px solid rgba(255,107,157,.25);margin-bottom:22px}.contact-hero__title{font-family:var(--ct-font);font-size:clamp(36px, 5.5vw, 60px);font-weight:900;color:var(--ct-text);line-height:1.12;margin:0 0 20px;letter-spacing:-.01em}.contact-hero__title-accent{color:var(--ct-pink);display:block}.contact-hero__sub{font-family:var(--ct-body);font-size:18px;color:var(--ct-muted);line-height:1.65;margin:0 0 32px}.contact-form-heading,.contact-pill{font-family:var(--ct-font);color:var(--ct-text)}.contact-hero__pills{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.contact-pill{display:inline-flex;align-items:center;gap:6px;background:#fff;font-size:13px;font-weight:700;padding:7px 16px;border-radius:100px;border:1.5px solid var(--ct-pink-mid);box-shadow:var(--ct-shadow-card)}.contact-pill svg{color:var(--ct-pink);flex-shrink:0}.contact-main{padding:80px 0 100px;background:#fff}.contact-main__grid{display:grid;grid-template-columns:1fr 380px;gap:64px;align-items:start}.contact-form-wrap{background:#fff}.contact-form-heading{font-size:clamp(22px, 3vw, 32px);font-weight:800;margin:0 0 8px}.contact-form-sub{font-family:var(--ct-body);font-size:15px;color:var(--ct-muted);margin:0 0 32px;line-height:1.6}.contact-form__row--2col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form__field{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.contact-form__label{font-family:var(--ct-font);font-size:13px;font-weight:700;color:var(--ct-text);letter-spacing:.02em}.contact-form__required{color:var(--ct-pink)}.contact-form__optional{font-weight:500;font-size:12px;color:#aaa}.contact-form__input,.contact-form__select,.contact-form__textarea{width:100%;color:var(--ct-text);background:var(--ct-pink-pale);outline:0;font-family:var(--ct-body);font-size:15px}.contact-form__input,.contact-form__textarea{padding:12px 16px;border:2px solid var(--ct-pink-mid);border-radius:var(--ct-radius-sm);transition:border-color .2s,box-shadow .2s,background .2s;box-sizing:border-box;-webkit-appearance:none;appearance:none}.contact-form__input::placeholder,.contact-form__textarea::placeholder{color:#c9a8b8}.contact-form__input:focus,.contact-form__textarea:focus{border-color:var(--ct-pink);background:#fff;box-shadow:0 0 0 3px rgba(255,107,157,.12)}.contact-form__textarea{resize:vertical;min-height:130px}.contact-form__select-wrap{position:relative}.contact-form__select{padding:12px 40px 12px 16px;border:2px solid var(--ct-pink-mid);border-radius:var(--ct-radius-sm);-webkit-appearance:none;appearance:none;cursor:pointer;transition:border-color .2s,box-shadow .2s}.contact-form__select:focus{border-color:var(--ct-pink);box-shadow:0 0 0 3px rgba(255,107,157,.12);background:#fff}.contact-form__chevron{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--ct-pink);pointer-events:none}.contact-form__error{font-family:var(--ct-body);font-size:12px;color:#e53935;font-weight:600;min-height:16px;display:block}.contact-form__field.has-error .contact-form__input,.contact-form__field.has-error .contact-form__textarea{border-color:#e53935;background:#fff5f5}.contact-form__field.has-error .contact-form__input:focus,.contact-form__field.has-error .contact-form__textarea:focus{box-shadow:0 0 0 3px rgba(229,57,53,.12)}.contact-form__hp{position:absolute;left:-9999px;top:-9999px;opacity:0;pointer-events:none}.contact-form__footer{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:8px}.contact-form__submit{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--ct-pink) 0,#e85c8e 100%);color:#fff;font-family:var(--ct-font);font-size:16px;font-weight:700;padding:14px 32px;border:none;border-radius:100px;cursor:pointer;box-shadow:0 4px 20px rgba(255,107,157,.35);transition:transform .2s,box-shadow .2s,opacity .2s;position:relative;overflow:hidden}.contact-form__submit:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(255,107,157,.45)}.contact-faq__item.is-open,.contact-info__card:hover,.contact-social-btn:hover{box-shadow:var(--ct-shadow-card)}.contact-form__submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.contact-form__submit-label{transition:opacity .2s}.contact-form__submit-icon{flex-shrink:0;transition:opacity .2s}.contact-form__submit-spinner{display:none;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:.7s linear infinite ctaSpin;flex-shrink:0}@keyframes ctaSpin{to{transform:rotate(360deg)}}.contact-form__submit.is-loading .contact-form__submit-spinner{display:block}.contact-faq__answer[hidden],.contact-form__error-box[hidden],.contact-form__submit.is-loading .contact-form__submit-icon,.contact-form__success[hidden]{display:none}.contact-form__privacy{font-family:var(--ct-body);font-size:12px;color:#aaa;margin:0;line-height:1.5;flex:1;min-width:160px}.contact-form__error-box,.contact-form__success{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border-radius:var(--ct-radius-sm);margin-top:20px;font-family:var(--ct-body);font-size:14px;line-height:1.55}.contact-form__success{background:linear-gradient(135deg,#f0fff4 0,#fff 60%);border:1.5px solid #a8e6c0;color:#2e7d32}.contact-form__success svg{color:#4caf50;flex-shrink:0;margin-top:2px}.contact-form__success strong{display:block;font-size:15px;margin-bottom:4px}.contact-form__success p{margin:0}.contact-form__error-box{background:linear-gradient(135deg,#fff5f5 0,#fff 60%);border:1.5px solid #ffcdd2;color:#c62828;align-items:center}.contact-form__error-box svg{color:#e53935;flex-shrink:0}.contact-info{display:flex;flex-direction:column;gap:16px;position:sticky;top:100px}.contact-info__card{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;border-radius:var(--ct-radius);border:1.5px solid var(--ct-pink-mid);background:var(--ct-pink-pale);transition:box-shadow .2s}.contact-info__icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-info__card--email .contact-info__icon-wrap{background:var(--ct-pink);color:#fff}.contact-info__card--location .contact-info__icon-wrap{background:#ffe8e8;color:#e53935}.contact-info__card--hours .contact-info__icon-wrap{background:var(--ct-gold-dark);color:#fff}.contact-info__content{display:flex;flex-direction:column;gap:2px}.contact-info__label{font-family:var(--ct-font);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9b7a88}.contact-info__value{font-family:var(--ct-font);font-size:16px;font-weight:800;color:var(--ct-text);text-decoration:none}.contact-faq__question,.contact-info__social-label,.contact-social-btn{font-weight:700;font-family:var(--ct-font)}.contact-faq__answer p,.contact-info__note,.contact-info__trust p{font-family:var(--ct-body);color:var(--ct-muted)}a.contact-info__value:hover{color:var(--ct-pink)}.contact-info__note{font-size:12px}.contact-info__social{padding:20px 22px;background:var(--ct-pink-light);border-radius:var(--ct-radius);border:1.5px solid var(--ct-pink-mid)}.contact-info__social-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#9b7a88;margin:0 0 12px}.contact-info__social-links{display:flex;flex-direction:column;gap:8px}.contact-social-btn{display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border-radius:100px;font-size:13px;text-decoration:none;transition:transform .2s,box-shadow .2s}.contact-social-btn:hover{transform:translateY(-1px);text-decoration:none}.contact-social-btn--instagram{background:linear-gradient(135deg,#f77737 0,#c13584 50%,#833ab4 100%);color:#fff}.contact-social-btn--facebook{background:#1877f2;color:#fff}.contact-info__trust{display:flex;align-items:flex-start;gap:12px;padding:18px 20px;background:linear-gradient(135deg,var(--ct-pink-light) 0,#fff8e1 100%);border-radius:var(--ct-radius);border:1.5px dashed var(--ct-pink-mid)}.contact-info__trust-icon{font-size:28px;flex-shrink:0;line-height:1;margin-top:2px}.contact-info__trust p{font-size:13px;line-height:1.6;margin:0;font-style:italic}.contact-faq{padding:90px 0;background:linear-gradient(180deg,var(--ct-pink-pale) 0,#fff0f7 100%)}.contact-faq__grid{display:flex;flex-direction:column;gap:12px;max-width:760px;margin:0 auto}.contact-faq__item{background:#fff;border-radius:var(--ct-radius);border:1.5px solid #ffe0ee;overflow:hidden;transition:box-shadow .2s}.contact-faq__item.is-open{border-color:var(--ct-pink)}.contact-faq__question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:0 0;border:none;cursor:pointer;text-align:left;font-size:16px;color:var(--ct-text);line-height:1.35;transition:color .2s;border-radius:0}.contact-faq__item.is-open .contact-faq__question{background:var(--secondary-color);color:#fff}.contact-faq__chevron{flex-shrink:0;color:var(--ct-pink);transition:transform .25s}.contact-faq__item.is-open .contact-faq__chevron{transform:rotate(180deg)}.contact-faq__answer{padding:0 22px 20px}.contact-faq__answer p{font-size:15px;line-height:1.7;margin:0;border-top:1px solid #ffe0ee;padding-top:16px}.contact-cta{position:relative;padding:110px 24px;background:linear-gradient(145deg,#fff0f7 0,#ffe8f4 50%,#fff8e1 100%);text-align:center;overflow:hidden}.contact-blob--cta-1{width:400px;height:400px;background:radial-gradient(circle,rgba(255,107,157,.15) 0,transparent 70%);top:-80px;left:-80px}.contact-blob--cta-2{width:300px;height:300px;background:radial-gradient(circle,rgba(245,166,35,.12) 0,transparent 70%);bottom:-60px;right:-60px}.contact-cta__inner{position:relative;z-index:2;max-width:580px;margin:0 auto}.contact-cta__emoji{font-size:56px;line-height:1;display:block;margin-bottom:16px;animation:2.5s ease-in-out infinite ctaBounce}@keyframes ctaBounce{0%,100%{transform:translateY(0) scale(1)}40%{transform:translateY(-14px) scale(1.05)}60%{transform:translateY(-6px) scale(1.02)}}.contact-cta__title{font-family:var(--ct-font);font-size:clamp(28px, 4.5vw, 46px);font-weight:900;color:var(--ct-text);line-height:1.15;margin:0 0 14px}.contact-cta__sub{font-family:var(--ct-body);font-size:16px;color:var(--ct-muted);line-height:1.7;margin:0 0 36px}.contact-cta__actions{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}@media (max-width:940px){.contact-main__grid{grid-template-columns:1fr;gap:48px}.contact-info{position:static;display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-info__trust{grid-column:span 2}}@media (max-width:700px){.contact-hero{padding:80px 0 60px}.contact-hero__title{font-size:clamp(30px, 8vw, 44px)}.contact-hero__sub{font-size:16px}.contact-float--1,.contact-float--2{display:none}.contact-form__row--2col,.contact-info{grid-template-columns:1fr}.contact-info__trust{grid-column:span 1}.contact-faq{padding:64px 0}.contact-cta{padding:80px 16px}.contact-cta__actions{flex-direction:column;align-items:stretch}.contact-btn--lg{text-align:center;justify-content:center}}@media (max-width:480px){.contact-form__footer{flex-direction:column;align-items:stretch}.contact-form__submit{width:100%;justify-content:center}.contact-hero__pills{gap:8px}}