/**
Theme Name: Astra Child
Author: Khushal
Description: The astra child theme
Template: astra
*/

body, p, span, a, h1, h2, h3, h4, h5, h6, .fact-text { font-family: "Sora", sans-serif !important; }

/* Loader style for Elementor button */
#next-fact-day-button { border: none; font-size: 20px; font-weight: 600; text-transform: uppercase; padding: 0.5em 1.25em; color: white; border-radius: 0.15em; transition: 0.3s; cursor: pointer; position: relative; display: block; }
#next-fact-day-button::after { content: ''; display: block; width: 1.2em; height: 1.2em; position: absolute; left: calc(50% - 0.75em); top: calc(50% - 0.75em); border: 0.15em solid transparent; border-right-color: white; border-radius: 50%; animation: button-anim 0.7s linear infinite; opacity: 0; }
@keyframes button-anim { from { transform: rotate(0); } to { transform: rotate(360deg); } }
#next-fact-day-button.loading { color: transparent; }
#next-fact-day-button.loading::after { opacity: 1; }
#next-fact-button { border: none; font-size: 20px; font-weight: 600; text-transform: uppercase; padding: 0.5em 1.25em; color: white; border-radius: 0.15em; transition: 0.3s; cursor: pointer; position: relative; display: block; }
#next-fact-button::after { content: ''; display: block; width: 1.2em; height: 1.2em; position: absolute; left: calc(50% - 0.75em); top: calc(50% - 0.75em); border: 0.15em solid transparent; border-right-color: white; border-radius: 50%; animation: button-anim 0.7s linear infinite; opacity: 0; }
@keyframes button-anim { from { transform: rotate(0); } to { transform: rotate(360deg); } }
#next-fact-button.loading { color: transparent; }
#next-fact-button.loading::after { opacity: 1; }
/* Contact Form 7 Styling for Factoflex */
.wpcf7 form { max-width: 600px; margin: 0 auto; }
/* Labels */
.wpcf7 form label { font-size: 17px; color: #3B3627E0; display: block; margin-bottom: 6px; }
/* Input + Textarea fields */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="url"], .wpcf7 input[type="tel"], .wpcf7 textarea { padding: 12px 14px; background: #f8f8f8; border: 1px solid #dcdcdc; border-radius: 10px; outline: none; font-size: 17px; color: #333; transition: 0.2s ease; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border-color: #3B3627E0; background: #fff; }
/* Submit Button */
.wpcf7 input[type="submit"] { background: #3B3627E0; color: #fff; padding: 12px 26px; border: none; border-radius: 10px; font-size: 17px; cursor: pointer; transition: 0.25s ease; }
.wpcf7 input[type="submit"]:hover { background: #2d291f; }
/* Remove extra spacing */
.wpcf7 p { margin-bottom: 18px; }
/* CF7 output message box */
.wpcf7-response-output { /* width: 80%; */ margin-top: 20px !important; padding: 14px 18px !important; border-radius: 10px !important; font-size: 16px !important; line-height: 1.4; border: 1px solid #2d291f !important; }
/* Error message */
.wpcf7-response-output.wpcf7-validation-errors, .wpcf7-response-output.wpcf7-mailfailed, .wpcf7-response-output.wpcf7-aborted { background: #ffe5e5 !important; border: 1px solid #ff8a8a !important; color: #a30000 !important; }
/* Success message */ .wpcf7-response-output.wpcf7-mail-sent-ok { background: #e7ffe9 !important; border: 1px solid #6bd46b !important; color: #0e6f0e !important; }
/* Spam message */ .wpcf7-response-output.wpcf7-spam-blocked { background: #fff8e5 !important; border: 1px solid #ffd37b !important; color: #7f5b00 !important; }

