/* SleekAlgo Global Slide-In Contact Form
   Namespaced under #sa-overlay so it never leaks into the rest of the theme. */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap');

#sa-overlay{position:fixed;inset:0;background:rgba(34,31,28,.42);z-index:99998;animation:sa-fade .2s ease}
#sa-overlay[hidden]{display:none !important}

#sa-panel{position:absolute;top:0;right:0;bottom:0;width:472px;max-width:100%;background:#faf7f1;
	border-left:1px solid #ddd4c3;box-shadow:-18px 0 46px rgba(34,31,28,.16);
	display:flex;flex-direction:column;animation:sa-slide .26s cubic-bezier(.22,.61,.36,1);font-family:'Manrope',sans-serif}

@keyframes sa-fade{from{opacity:0}to{opacity:1}}
@keyframes sa-slide{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){#sa-panel,#sa-overlay{animation:none !important}}

@media (max-width:640px){
	#sa-panel{width:100%;max-width:none}
}

.sa-panel-head{padding-top:26px; padding-bottom: 20px; padding-inline: clamp(24px, calc(19.455px + 0.758vw), 34px); border-bottom:1px solid #e8e1d3;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex:none}
.sa-eyebrow{font:500 10px 'Manrope',sans-serif;letter-spacing:1.2px;color:#b8352b;margin-bottom:9px;text-transform:uppercase}
.sa-heading{font:600 24px/1.22 'Space Grotesk',sans-serif;color:#221f1c;letter-spacing:-.4px}
#sa-close{width:38px;height:38px;border:1px solid #ddd4c3;border-radius:10px;background:#f6f2e9;color:#221f1c;
	font:400 16px 'Manrope',sans-serif;cursor:pointer;flex:none;display:flex;align-items:center;justify-content:center;transition:background .18s ease}
#sa-close:hover{background:#efe9de}

.sa-panel-body{flex:1;overflow-y:auto; padding-block:24px 34px; padding-inline: clamp(24px, calc(19.455px + 0.758vw), 34px);}
.sa-subtext{font:400 14.5px/1.65 'Manrope',sans-serif;color:#6b6660;margin:0 0 24px}

/* CTA buttons anywhere on the site via [sa_cta] */
.sa-cta-btn{border:0;padding:16px 28px;border-radius:30px;font:700 14.5px 'Manrope',sans-serif;cursor:pointer;min-height:48px;transition:background .18s ease}
.sa-cta-solid{background:#b8352b;color:#fff}
.sa-cta-solid:hover{background:#a02e25}
.sa-cta-dark{background:#221f1c;color:#faf7f1}
.sa-cta-dark:hover{background:#3b3733}
.sa-cta-outline{background:transparent;color:#221f1c;border:1px solid #221f1c;padding:15px 27px}
.sa-cta-outline:hover{background:#efe9de}
.sa-cta-ghost{background:transparent;color:#221f1c;border:1px solid #ddd4c3;padding:15px 27px}
.sa-cta-ghost:hover{background:#f6f2e9}

/* ----------------------------------------------------------------
   Fluent Forms field styling — brings FF's default markup in line
   with the approved design. Class names match Fluent Forms 4/5+.
   If a selector below doesn't visibly apply on your install, open
   devtools on a rendered field and swap in the class you see —
   see README.md step 7.
   ---------------------------------------------------------------- */
#sa-ff-mount .ff-el-form-control,
#sa-ff-mount select.ff-el-form-control,
#sa-ff-mount textarea.ff-el-form-control{
	width:100%;padding:13px 14px;border:1px solid #ddd4c3;border-radius:9px;background:#fff;
	font:400 14.5px 'Manrope',sans-serif;color:#221f1c;min-height:48px;box-shadow:none
}
#sa-ff-mount .ff-el-form-control:focus{border-color:#b8352b;box-shadow:0 0 0 3px rgba(184,53,43,.14);outline:none}
#sa-ff-mount textarea.ff-el-form-control{min-height:104px;line-height:1.6}
#sa-ff-mount .ff-el-is-error .ff-el-form-control{border-color:#b8352b}
#sa-ff-mount .ff-el-group{margin-bottom:20px}
#sa-ff-mount .ff-el-input--label label{font:600 12.5px 'Manrope',sans-serif;color:#221f1c;margin-bottom:8px;display:block}
#sa-ff-mount .ff-el-input--label label .ff_asterick{color:#b8352b}
#sa-ff-mount .error,
#sa-ff-mount .ff-el-form-control-error-message{font:500 12px 'Manrope',sans-serif;color:#b8352b;margin-top:7px}

#sa-ff-mount .ff-btn,
#sa-ff-mount .ff-btn-submit{
	width:100%;border:0;border-radius:30px;background:#b8352b;color:#fff;padding:16px 24px;min-height:52px;
	font:700 15px 'Manrope',sans-serif;cursor:pointer
}
#sa-ff-mount .ff-btn:hover,
#sa-ff-mount .ff-btn-submit:hover{background:#a02e25}
#sa-ff-mount .ff_submit_btn_wrapper{margin-top:4px}

#sa-ff-mount input[type="checkbox"]{width:17px;height:17px;accent-color:#b8352b;margin-right:9px;vertical-align:middle}
#sa-ff-mount .ff-el-form-check-label{font:400 13px/1.55 'Manrope',sans-serif;color:#6b6660}

#sa-ff-mount .ff-message-success,
#sa-ff-mount .ff_success_message{
	font:400 15px/1.7 'Manrope',sans-serif;color:#221f1c;padding: 0; border: none; box-shadow: none;
}
#sa-ff-mount .ff-message-success h1,
#sa-ff-mount .ff-message-success h2,
#sa-ff-mount .ff-message-success h3,
#sa-ff-mount .ff_success_message h1,
#sa-ff-mount .ff_success_message h2,
#sa-ff-mount .ff_success_message h3{
	font:600 24px/1.25 'Space Grotesk',sans-serif;color:#221f1c;letter-spacing:-.4px;margin:0 0 10px
}

button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid #b8352b;outline-offset:2px}

.success-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f9eeec;
    border: 1px solid #e8cdc9;
    display: flex;
    align-items: center;
    justify-content: center;
    font: 600 17px 'Manrope', sans-serif;
    color: #b8352b;
    margin-bottom: 22px;
}

.ff-message-success p {
	color: #5c5850;
}