/*
Theme Name: AGT Group of Institutions
Theme URI: https://sekitechsolutions.com/demo/agt/demo-3/
Author: Antigravity
Author URI: 
Description: A custom WordPress theme converted from static HTML for AGT Group of Institutions.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: agt
*/

/* WordPress core styles */
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}
/* =============================================
   AGT Contact Form 7 - Matching HTML Design
   ============================================= */

/* Remove CF7's default paragraph and br injections */
.agt-contact-form .wpcf7-form-control-wrap,
.agt-contact-form p {
    display: block;
    margin: 0;
}

.agt-contact-form br {
    display: none;
}

/* Outer wrapper spacing */
.agt-contact-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Each field group */
.agt-field-group {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* Label */
.agt-label {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: #334155;
    margin-bottom: 4px;
}

/* All text inputs, email, tel, select */
.agt-contact-form input[type="text"],
.agt-contact-form input[type="email"],
.agt-contact-form input[type="tel"],
.agt-contact-form select {
    display: block !important;
    width: 100% !important;
    height: 40px !important;
    padding: 0 12px !important;
    font-size: 0.875rem !important;
    border: 1px solid #d1d5db !important;
    border-radius: 6px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    background-color: #ffffff !important;
    color: #111827 !important;
    outline: none !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s, box-shadow 0.2s !important;
    -webkit-appearance: none;
    appearance: none;
}

/* Textarea */
.agt-contact-form textarea,
.agt-contact-form textarea.wpcf7-textarea {
    display: block !important;
    width: 100% !important;
    min-height: 160px !important;
    height: 160px !important;
    padding: 12px !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
    border: 1px solid #d1d5db !important;
    border-radius: 6px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    background-color: #ffffff !important;
    color: #111827 !important;
    outline: none !important;
    box-sizing: border-box !important;
    resize: vertical !important;
    transition: border-color 0.2s, box-shadow 0.2s !important;
}

/* Select arrow */
.agt-contact-form select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    padding-right: 36px !important;
}

/* Focus states */
.agt-contact-form input[type="text"]:focus,
.agt-contact-form input[type="email"]:focus,
.agt-contact-form input[type="tel"]:focus,
.agt-contact-form select:focus,
.agt-contact-form textarea:focus {
    border-color: #c49a44 !important;
    box-shadow: 0 0 0 3px rgba(196, 154, 68, 0.2) !important;
    outline: none !important;
}

/* Placeholder color */
.agt-contact-form input::placeholder,
.agt-contact-form textarea::placeholder {
    color: #9ca3af !important;
}

/* CF7 span wrapper fix - must be block and full width */
.agt-contact-form .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
}

/* Textarea span wrapper fix */
.agt-contact-form .wpcf7-form-control-wrap.agtmessage {
    display: block !important;
    width: 100% !important;
}

/* 2-column grid for phone + course */
.agt-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.agt-contact-form textarea, 
.agt-contact-form textarea.wpcf7-textarea {
    height: 160px !important;
}
@media (max-width: 768px) {
    .agt-grid {
        grid-template-columns: 1fr;
    }
}

/* Submit button */
.agt-submit-wrap .wpcf7-submit {
    display: block !important;
    width: 100% !important;
    padding: 12px 16px !important;
    background-color: #c49a44 !important;
    color: #ffffff !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    border: none !important;
    border-radius: 6px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15) !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
}

.agt-submit-wrap .wpcf7-submit:hover {
    background-color: #a8823a !important;
}

.agt-submit-wrap .wpcf7-submit:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(196, 154, 68, 0.4) !important;
}

/* Loading/spinner state */
.agt-submit-wrap .wpcf7-submit:disabled {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}

/* CF7 validation error messages */
.agt-contact-form .wpcf7-not-valid-tip {
    color: #dc2626;
    font-size: 0.75rem;
    margin-top: 4px;
    display: block;
}

.agt-contact-form .wpcf7-not-valid {
    border-color: #dc2626 !important;
}

/* CF7 response output */
.agt-contact-form .wpcf7-response-output {
    margin-top: 16px !important;
    padding: 12px 16px !important;
    border-radius: 6px !important;
    font-size: 0.875rem !important;
    border: none !important;
}

.agt-contact-form .wpcf7-mail-sent-ok {
    background-color: #d1fae5 !important;
    color: #065f46 !important;
}

.agt-contact-form .wpcf7-validation-errors,
.agt-contact-form .wpcf7-mail-sent-ng {
    background-color: #fee2e2 !important;
    color: #991b1b !important;
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .agt-contact-form input[type="text"],
    .agt-contact-form input[type="email"],
    .agt-contact-form input[type="tel"],
    .agt-contact-form select,
    .agt-contact-form textarea {
        background-color: #1f2937 !important;
        border-color: #4b5563 !important;
        color: #f9fafb !important;
    }

    .agt-label {
        color: #f9fafb;
    }
}