.block-contacts {background-color:#0a2a3b;color:#ffffff;}
.map-accordion {width:100%;background-color:#0a2a3b;background: linear-gradient(135deg, #1e4155 0%, #0a2a3b 100%);}
.map-toggle-btn2 {cursor: pointer;padding:16px 0;}
.btn-wrapper {
max-width:1280px;
margin:0 auto;
padding:0 24px;
display:flex;
align-items: center;
justify-content: space-between;
}

.btn-text {
display:flex;
align-items: center;
gap: 12px;
font-size:18px;
font-weight:600;
color:#ffffff;
}

.btn-icon {
width:22px;
height: 22px;
}

.arrow {
transition: transform 0.3s ease;
font-size:14px;
color:#ffaa70;
}

.map-toggle-btn2.active .arrow {
transform: rotate(180deg);
}

.map-content {
max-height: 0;
overflow: hidden;
transition: max-height 0.5s ease-out;
}

.map-content.open {
max-height: 520px;
transition: max-height 0.5s ease-in;
}

.block-yandex-map iframe {
width:100%;
height: 500px;
display:block;
}

@media (max-width:768px) {
.btn-wrapper {
padding:0 16px;
}
.btn-text {
font-size:16px;
}
}

.footer-container {
max-width:1280px;
margin:0 auto;
padding:46px 24px 40px;
}

.footer-grid {
display:grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
}

.footer-left {
display:flex;
flex-direction: column;
gap: 32px;
}

.header-leftblock-contacts {
font-size:32px;
font-weight:700;
color:#ffffff;
}

.text-contacts {
font-size:16px;
line-height: 1.5;
color:#ccdde5;
}

.form-contacts {
max-width:500px;
}

.form-fields {
display:flex;
gap: 16px;
flex-wrap: wrap;
}

.column-form {
flex: 1;
min-width:180px;
}

.column-form input {
width:100%;
padding:14px 16px;
border: 1px solid #3a5a6a;
border-radius: 12px;
background-color:#1e4155;
color:#ffffff;
font-size:16px;
transition: all 0.3s;
}

.column-form input::placeholder {
color:#8aaec0;
}

.column-form input:focus {
outline: none;
border-color:#ff7a2f;
background-color:#2a5068;
}

.column-form input.required {
border-color:#ff6b6b;
background-color:#3a2a2a;
}

.error {
color:#ff6b6b;
font-size:12px;
display:block;
margin-top: 5px;
}

.address-text {
font-size:13px;
color:#8aaec0;
line-height: 1.4;
margin:16px 0;
}

.bt-form-submit {
background: #ff7a2f;
color:#ffffff;
border: none;
padding:14px 32px;
border-radius: 40px;
font-size:16px;
font-weight:600;
cursor: pointer;
transition: all 0.3s;
width:auto;
min-width:200px;
}

.bt-form-submit:hover:not(:disabled) {
background: #e66a1f;
transform: translateY(-2px);
}

.bt-form-submit:disabled {
background: #5a6a7a;
cursor: not-allowed;
}

.callback-message {
margin-top: 16px;
}

.alert {
padding:12px 16px;
border-radius: 12px;
font-size:14px;
}

.alert-success {
background: #1e6a3e;
color:#ffffff;
}

.alert-danger {
background: #8b3a3a;
color:#ffffff;
}


.footer-right {
display:flex;
flex-direction: column;
gap: 24px;
}

.contact-item {
display:flex;
align-items: center;
gap: 14px;
padding:8px 0;
transition: transform 0.2s;
}

.contact-item:hover {
transform: translateX(5px);
}

.contact-icon {
width:32px;
height: 32px;
flex-shrink: 0;
display:flex;
align-items: center;
justify-content: center;
}

.contact-icon svg {
width:24px;
height: 24px;
}

.contact-link {
font-size:18px;
font-weight:500;
color:#ffaa70;
text-decoration: none;
transition: color 0.2s;
}

.contact-link:hover {
color:#ffc48a;
text-decoration: underline;
}

.contact-text {
font-size:16px;
color:#ccdde5;
}

.contacts-group {
background: rgba(255, 255, 255, 0.05);
border-radius: 20px;
padding:20px;
margin-bottom: 8px;
}

.contacts-group-title {
font-size:14px;
text-transform: uppercase;
letter-spacing: 1px;
color:#ffaa70;
margin-bottom: 16px;
font-weight:600;
}

.separator {
height: 1px;
background: linear-gradient(90deg, #3a5a6a, transparent);
margin:16px 0;
}

.link-address {
color:#ffaa70;
text-decoration: none;
font-weight:normal;
}

.link-address:hover {
text-decoration: underline;
}

@media (max-width:992px) {
.footer-grid {
grid-template-columns: 1fr;
gap: 40px;
}
.footer-container {
padding:30px 20px;
}
.contact-link {
font-size:16px;
}
}


.form-input {
width:100%;
padding:12px 16px;
border: 1px solid #e0e4e8;
border-radius: 12px;
font-size:16px;
font-family:inherit;
transition: all 0.3s ease;
background: #ffffff;
color:#1a2c3e;
}

.form-input:focus {
outline: none;
border-color:#ff7a2f;
box-shadow: 0 0 0 3px rgba(255, 122, 47, 0.1);
}

.form-input::placeholder {
color:#9aaebf;
}
.form-submit {
margin-top: 8px;
}
.submit-btn {
width:100%;
padding:14px 24px;
background: #ff7a2f;
color:#ffffff;
border: none;
border-radius: 40px;
font-size:16px;
font-weight:600;
cursor: pointer;
transition: all 0.3s ease;
font-family:inherit;
}

.submit-btn:hover {
background: #e66a1f;
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(255, 122, 47, 0.3);
}

.submit-btn:active {
transform: translateY(0);
}

.submit-btn:disabled {
background: #c0ccd6;
cursor: not-allowed;
transform: none;
box-shadow: none;
}

.form-message {
margin-top: 16px;
padding:12px;
border-radius: 12px;
font-size:14px;
text-align: center;
}

.form-message.success {
background: #e8f5e9;
color:#2e7d32;
border: 1px solid #a5d6a7;
}

.form-message.error {
background: #ffebee;
color:#c62828;
border: 1px solid #ef9a9a;
}
.tovarinput {
display:none;
}

@media (max-width:576px) {

.form-fields {
flex-direction: column;
gap: 12px;
}
.bt-form-submit {width:100%;}
.header-leftblock-contacts {font-size:26px;}
.contact-item {flex-wrap: wrap;}
.footer-right {gap:16px;}
}

@media (max-width:480px) {

.footer-left{gap: 28px;}

.contacts-group {
padding-top: 16px;
padding-bottom: 16px;
margin-bottom: 4px;
}
}

iframe {
    border-width:0px;
    overflow: hidden;
}
.block-reviews {
    background: #F5F5F5;
}
.reviews-header {
    display:flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 40px;
    gap: 20px;
}

.reviews-actions {
    display:flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
.yandex-rating {
    border-radius: 12px;
    padding-top: 4px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
.reviews-grid {
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.review-card {
    height: 100%;
}
.review-card__inner {
    background: white;
    border-radius: 20px;
    padding:24px;
    height: 100%;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border: 1px solid rgba(0,0,0,0.05);
    display:flex;
    flex-direction: column;
}
.review-card__inner:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}
.review-card__header {
    display:flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 16px;
}
.review-card__avatar {
    width:50px;
    height: auto;
    display:flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.review-card__avatar img {
    width:100%;
    height: 100%;
    object-fit: cover;
}
.review-card__info {
    flex: 1;
    font-size:18px;
    font-weight:700;
    color:#1a1a2e;
    margin-bottom: 4px;
}
.review-card__content {
    margin-bottom: 16px;
    flex: 1;
}
.review-card__content p {
    font-size:14px;
    line-height: 1.6;
    color:#444;
    margin:0;
}

@media (max-width:1024px) {
    .reviews-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width:768px) {
.reviews-header {
    flex-direction: column;
    text-align: center;
}
.reviews-actions {
    justify-content: center;
}
.reviews-grid {
    grid-template-columns: 1fr;
    gap: 16px;
}
.review-card__inner {
    padding:18px;
}
.review-card__name {
    font-size:16px;
}
}

@media (max-width:480px) {
.reviews-title {
    font-size:24px;
}
.review-card__avatar {
    width:40px;
    height: auto;
}
}

.banner-wrapper {
display:flex;
align-items: center;
justify-content: space-between;
gap: 40px;
flex-wrap: wrap;
margin-bottom: 30px;
}

.banner-content {
flex: 2;
min-width:240px;
}

.banner-icon {
display:inline-flex;
align-items: center;
justify-content: center;
width:48px;
height: 48px;
background: #fff5ed;
border-radius: 50%;
margin-top: -24px;
margin-bottom:15px;
}
.banner-action {

}

.btn-info {
display:inline-flex;
align-items: center;
gap: 10px;
padding:14px 32px;
background: #ff7a2f;
border: none;
border-radius: 40px;
font-size:16px;
font-weight:600;
color:#ffffff;
text-decoration: none;
transition: all 0.3s ease;
white-space: nowrap;
}

.btn-info:hover {
background: #e66a1f;
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(255, 122, 47, 0.3);
}

.btn-info svg {
    transition: transform 0.3s ease;
}
.btn-info:hover svg {
    transform: rotate(-90deg);
}

@media (max-width:768px) {
.banner-wrapper {
flex-direction: column;
align-items: flex-start;
gap: 15px;
}
.banner-content, .banner-action {
text-align: center;
margin:auto
}
.btn-info {
padding:12px 28px;
font-size:14px;
white-space: normal;
}
}
.post-card {
background: #F0F0F0;
border-radius: 16px;
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
overflow: hidden;
transition: transform 0.2s, box-shadow 0.2s;
display:flex;
flex-direction: column;
height: 100%;
}

.post-card:hover {
transform: translateY(-4px);
box-shadow: 0 12px 24px rgba(0,0,0,0.12);
}

.post-content {
flex: 1;
}
.category-tag {font-size:0.9rem;padding:4px 12px;}
.header-row-price2 {font-size:0.9rem;}
.post-card {
flex-direction: column;
height: 100%;
}
.post-content {
display:flex;
flex-direction: column;
height: 100%;
position: relative;
}
.post-content > a {
flex: 1;
display:flex;
flex-direction: column;
text-decoration: none;
}

.price-service {
margin-top: auto;
width:100%;
}
.header-row-price2 {
font-family:'Montserrat ExtraBold';
font-weight:800;
line-height: 18px;
text-align: center;
text-transform: uppercase;
color:#333;
}
.block-payment2{
margin-top: auto;
}
.bt-payment2 {
margin-top: 15px;
width:100%;
background: linear-gradient(95deg, #e67e22, #f39c12);
border: none;
padding:12px 9px;
font-weight:600;
font-size:1.1rem;
color:#ffffff;
cursor: pointer;
transition: 0.2s;
font-family:inherit;
box-shadow: 0 6px 14px rgba(230,126,34,0.25);
display:flex;
align-items: center;
justify-content: center;
gap: 10px;
text-transform: uppercase;
}
.bt-payment2:hover {
transform: scale(1.01);
background: linear-gradient(95deg, #f39c12, #e67e22);
box-shadow: 0 10px 20px rgba(230,126,34,0.35);
}
.partner-services {
background: #f8fafc;
}

.price-header {
align-items: center;
color:#FFFFFF;
}

.partner-grid {
display:grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 12px;
margin-bottom: 20px;
}

.partner-link {
display:flex;
align-items: center;
gap: 12px;
background: #ffffff;
padding:14px 18px;
border-radius: 16px;
text-decoration: none;
color:#1f2937;
font-weight:500;
transition: 0.2s;
border: 1px solid #e2e8f0;
}
.partner-link img{max-width:40px;max-height:40px;margin-top:5px;}
.partner-link span:first-child {
font-size:1.2rem;
}

.partner-link:hover {
background: #fff7ed;
border-color:#e67e22;
color:#e67e22;
transform: translateX(4px);
}

.partner-note {font-size:0.75rem;color:#64748b;text-align: center;margin-top: 16px;padding-top: 16px;border-bottom: 1px solid #e2e8f0;}

@media (max-width:640px) {
.partner-grid {
grid-template-columns: 1fr;
gap: 10px;
}
.partner-link {
padding:12px 16px;
}
}

@media (max-width:568px) {

.blog-grid {
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 7px;
}
}

@media (max-width:420px) {
.blog-grid {
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: 7px;
}
.star-icon {display:none;}
.category-tag {
padding:4px 6px;
}
.header-row-price2 {font-size:0.75rem;}
.bt-payment2 {
margin-top: 12px;
padding:10px 8px;
font-size:0.9rem;
}
.text-top-description-service {
font-size:11px;
line-height: 13px;
}
}
@media (max-width:300px) {
.blog-grid {
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: 7px;
}
}
.faq-accordion {border-radius: 12px;overflow: hidden;}
.faq-item {border-bottom: 1px solid #e0e0e0;background: #fff;}
.faq-item:last-child {border-bottom: none;}
.faq-question {background: none;border: none;width:100%;text-align: left;padding:18px 20px;font-size:1rem;font-family:'Montserrat';font-weight:600;color:#222;cursor: pointer;
display:flex;justify-content: space-between;align-items: center;transition: background 0.2s ease;}
.faq-question{outline: none !important;outline-color:transparent !important;outline-style: none !important;box-shadow: none !important;border-color:transparent !important;}
.faq-question:active,.faq-question:focus-visible,.faq-question:focus-visible:active,.faq-question:focus,.faq-question:focus-within {outline: 2px solid #ff6b00 !important;outline-style: solid !important;background-color:#fff5eb !important;}
.faq-question:hover {background-color:#f9f9f9;}
.faq-icon {font-size:1.5rem;font-weight:800;transition: transform 0.3s ease;color:#ff6b00;}
.faq-item.active .faq-icon {transform: rotate(45deg);}
.faq-answer {max-height: 0;overflow: hidden;transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);background-color:#fafafa;border-top: 0px solid transparent;}
.faq-item.active .faq-answer {max-height: 500px;border-top-width:1px;border-top-color:#e0e0e0;}
.faq-answer p,.faq-answer ul {padding:20px 20px 20px 20px;margin:0;line-height: 1.5;color:#444;}
.faq-answer ul {padding-left: 40px;margin-top: -10px;}
.faq-answer li {margin:8px 0;}
.faq-answer .faq-link {color:#ff6b00;text-decoration: none;font-weight:500;display:inline-flex;align-items: center;gap: 4px;}
.faq-answer .faq-link:hover {text-decoration: underline;}
.faq-answer .faq-link::after {content: "→";transition: transform 0.2s ease;}
.faq-answer .faq-link:hover::after {transform: translateX(3px);}
.video-container {padding-top: 20px;padding-bottom: 20px;text-align: center;}
.video-container video {border-radius: 20px;max-width:99%;display:block;aspect-ratio: 16 / 9;object-fit: cover;}
.swipe-gallery {
position: relative;
user-select: none;
touch-action: pan-y pinch-zoom;
}

.gallery-container {
overflow-x: auto;
scroll-snap-type: x mandatory;
scroll-behavior: smooth;
-webkit-overflow-scrolling: touch;
scrollbar-width:thin;
cursor: grab;
border-radius: 16px;
}

.gallery-container:active {
cursor: grabbing;
}

.gallery-container::-webkit-scrollbar {
height: 6px;
}

.gallery-container::-webkit-scrollbar-track {
background: #f0f0f0;
border-radius: 10px;
}

.gallery-container::-webkit-scrollbar-thumb {
background: #ff6b00;
border-radius: 10px;
}

.gallery-track {
display:flex;
gap: 16px;
padding:10px 0;
}

.gallery-slide {
flex: 0 0 85%;
scroll-snap-align: start;
border-radius: 20px;
overflow: hidden;
background: #f5f5f5;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
transition: transform 0.3s ease;
}

@media (min-width:768px) {
.gallery-slide {
flex: 0 0 45%;
}
}

@media (min-width:1024px) {
.gallery-slide {
flex: 0 0 32%;
}
}

.gallery-slide:hover {
transform: translateY(-5px);
}

.gallery-slide img {
width:100%;
aspect-ratio: 4 / 3;
object-fit: cover;
display:block;
cursor: pointer;
transition: transform 0.3s ease;
}

.gallery-slide:hover img {
transform: scale(1.02);
}

.slide-caption {
padding:12px 15px;
background: white;
font-size:0.9rem;
color:#333;
text-align: center;
font-weight:500;
}
.gallery-nav {
display:flex;
justify-content: center;
gap: 15px;
margin-top: 15px;
}

.nav-dot {
width:10px;
height: 10px;
border-radius: 50%;
background: #ccc;
cursor: pointer;
transition: all 0.3s ease;
border: none;
padding:0;
}

.nav-dot.active {
background: #ff6b00;
width:24px;
border-radius: 5px;
}

.lightbox {
display:none;
position: fixed;
top: 0;
left: 0;
width:100%;
height: 100%;
background: rgba(0, 0, 0, 0.95);
z-index: 1000;
cursor: pointer;
justify-content: center;
align-items: center;
flex-direction: column;
}

.lightbox.active {
display:flex;
}

.lightbox-img {
max-width:90%;
max-height: 85%;
object-fit: contain;
border-radius: 8px;
}

.close-lightbox {
position: absolute;
top: 20px;
right: 40px;
color:white;
font-size:48px;
font-weight:bold;
cursor: pointer;
background: none;
border: none;
}

.close-lightbox:hover {
color:#ff6b00;
}

.lightbox-caption {
color:white;
margin-top: 15px;
font-size:1rem;
text-align: center;
max-width:80%;
}

@media (max-width:768px) {
.gallery-nav {display:none;}
.gallery-slide {
flex: 0 0 90%;
}
}

.block-our-instructors {
background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
color:#ffffff;
}

.instructors-grid {
display:grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
margin-bottom: 40px;
}
.instructor-card {
background: rgba(255,255,255,0.05);
backdrop-filter: blur(10px);
border-radius: 24px;
overflow: hidden;
transition: all 0.3s ease;
border: 1px solid rgba(255,255,255,0.1);
display:flex;
flex-direction: column;
height: 100%;
}
.instructor-card:hover {
transform: translateY(-5px);
background: rgba(255,255,255,0.08);
border-color:rgba(255,255,255,0.2);
box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}
.instructor-card__image {
position: relative;
overflow: hidden;
flex-shrink: 0;
}
.instructor-card__image a {
display:block;
}
.instructor-card__image img {
width:100%;
height: 320px;
object-fit: cover;
transition: transform 0.5s ease;
}
.instructor-card:hover .instructor-card__image img {
transform: scale(1.05);
}
.instructor-card__badge {
position: absolute;
top: 16px;
right: 16px;
background: linear-gradient(135deg, #e63946 0%, #c1121f 100%);
padding:6px 14px;
border-radius: 20px;
font-size:12px;
font-weight:600;
letter-spacing: 0.5px;
}
.instructor-card__content {
padding:24px;
flex: 1;
display:flex;
flex-direction: column;
}
.instructor-name {
font-size:24px;
font-weight:700;
margin:0 0 6px 0;
color:#ffffff;
}
.instructor-position {
color:#FF9117;
font-weight:600;
margin-bottom: 16px;
letter-spacing: 0.5px;
}
.instructor-info {
margin-bottom: 20px;
}
.info-item {
display:flex;
align-items: center;
gap: 10px;
color:#FFFFFF;
}

.info-item svg {
flex-shrink: 0;
color:#FF9117;
}
.instructor-quote {
border-left: 3px solid #FF9117;
padding:16px;
border-radius: 12px;
margin-bottom: 20px;
position: relative;
    font-size:16px;
line-height: 1.6;
color:rgba(255,255,255,0.8);
font-style: italic;
}
.quote-icon {
position: absolute;
top: 12px;
right: 12px;
opacity: 0.2;
color:#FF9117;
}
.instructor-achievements {
margin-top: auto;
}
.achievements-title {
font-weight:600;
margin-bottom: 10px;
color:#FFFFFF;
}
.instructor-achievements ul {
margin:0;
padding-left: 20px;
}
.instructor-achievements li {
font-size:15px;
line-height: 1.5;
color:rgba(255,255,255,0.7);
margin-bottom: 8px;
}
.link-more {
display:inline-flex;
align-items: center;
gap: 8px;
color:#ffffff;
text-decoration: none;
font-size:14px;
transition: all 0.3s ease;
padding:8px 16px;
border: 1px solid #FF9117;
border-radius: 30px;
background: rgba(230,57,70,0.1);
}
.link-more:hover {
color:#FFFFFF;
background: rgba(230,57,70,0.2);
}
.link-more svg {
transition: transform 0.3s ease;
}
.link-more:hover svg {
transform: translateX(4px);
}
.text-center {
text-align: center;
}
@media (max-width:1024px) {
.instructors-grid {
    gap: 20px;
}
.instructor-card__image img {
    height: 260px;
}
.instructor-card__content {
    padding:20px;
}
}

@media (max-width:768px) {
.block-our-instructors p {text-align: center;}
.instructors-grid {grid-template-columns: 1fr;gap: 24px;}
.instructor-card {height: auto;max-width:100%;}
.instructor-card__image img {height: 260px;}
.instructor-card__content {padding:20px;}
}
@media (max-width:480px) {
.instructor-card__image img {height: 240px;}
.instructor-card__badge {padding:4px 10px;font-size:10px;top: 12px;right: 12px;}
.instructor-card__content {padding:16px;}
.instructor-achievements li {font-size:14px;}
}

.custom-modal {
display:none;
position: fixed;
top: 0;
left: 0;
width:100%;
height: 100%;
background-color:rgba(0, 0, 0, 0.6);
backdrop-filter: blur(4px);
z-index: 1000;
align-items: center;
justify-content: center;
font-family:system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

.custom-modal.show {
display:flex;
animation: fadeIn 0.2s ease;
}

@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}

.modal-container {
max-width:520px;
width:90%;
background: #ffffff;
border-radius: 31px;
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
animation: slideUp 0.25s ease-out;
overflow: hidden;
}

@keyframes slideUp {
from {
    opacity: 0;
    transform: translateY(30px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

.modal-header {display:flex;justify-content: space-between;align-items: center;padding:10px 9px 8px 22px;border-bottom: 1px solid #eef2f8;background: linear-gradient(180deg, #FDBB3C 0%, #F38000 100%);text-transform: uppercase;}

.modal-title {
font-size:20px;
font-weight:700;
color:#FFFFFF;
margin:0;
display:flex;
align-items: center;
gap: 10px;
}

.modal-title svg {
stroke: #FFFFFF;
}

.modal-close {
background: none;
border: none;
cursor: pointer;
padding:6px;
border-radius: 50%;
display:flex;
align-items: center;
justify-content: center;
transition: all 0.2s;
}

.modal-close:hover {
background: #f0f2f5;
transform: rotate(90deg);
}
.modal-body {
padding:20px;
max-height: 70vh;
overflow-y: auto;
color:#2c3f4f;
line-height: 1.5;
}

.modal-body p {
margin-bottom: 16px;
}

.selected-service {
background: #fff5ed;
border-radius: 16px;
padding:12px 16px;
margin-bottom: 20px;
font-size:14px;
border-left: 4px solid #ff7a2f;
}

.selected-service-label {
font-weight:600;
color:#ff7a2f;
margin-right: 8px;
}

.selected-service-value {
color:#1a2c3e;
}

.form-group {
margin-bottom: 16px;
}

.form-group label {
display:block;
margin-bottom: 6px;
font-weight:500;
color:#4a5b68;
font-size:14px;
}

.form-group input,
.form-group textarea {
width:100%;
padding:12px 16px;
border-radius: 16px;
border: 1px solid #e2e8f0;
font-size:16px;
font-family:inherit;
transition: all 0.3s;
}

.form-group input:focus,
.form-group textarea:focus {
outline: none;
border-color:#ff7a2f;
box-shadow: 0 0 0 3px rgba(255, 122, 47, 0.1);
}

.hidden-field {
display:none;
}

.submit-btn {
width:100%;
background: #ff7a2f;
background: linear-gradient(180deg, #FDBB3C 0%, #F38000 100%);
text-transform: uppercase;
font-family:'Montserrat Bold';
box-shadow: 0 4px 15px rgba(255, 107, 51, 0.3);
color:white;
border: none;
padding:14px;
border-radius: 40px;
font-weight:600;
font-size:16px;
cursor: pointer;
transition: all 0.3s;
}

.submit-btn:hover {
transform: translateY(-2px);
}

.submit-btn:disabled {
background: #ccc;
cursor: not-allowed;
transform: none;
}

.callback-message {
margin-top: 12px;
font-size:15px;
text-align: center;
}

.callback-message.success {
color:#27ae60;
}

.callback-message.error {
color:#e65a3a;
}

.contact-block-modal {
background: #f8fafc;
border-radius: 20px;
padding:16px;
text-align: center;
margin-top: 20px;
}

.contact-phone-modal {
font-size:24px;
font-weight:700;
color:#ff7a2f;
text-decoration: none;
display:inline-block;
margin:8px 0;
}

.contact-phone-modal:hover {
color:#e66a1f;
}

.modal-footer {
padding:16px 24px 18px;
border-top: 1px solid #eef2f8;
display:flex;
justify-content: flex-end;
gap: 12px;
}

.modal-footer .btn {
padding:10px 20px;
border-radius: 40px;
font-weight:500;
cursor: pointer;
border: none;
transition: 0.2s;
}

.btn-secondary {
background: #f0f2f5;
color:#1a2c3e;
}

.btn-secondary:hover {
background: #e4e8ec;
}
@media (max-width:568px) {
.modal-header {
padding:10px 8px 7px 22px;
}
.modal-body {
padding:20px;
}
.modal-title {
font-size:16px;
}
.form-group input,
.form-group textarea,.submit-btn {
width:95%;
}
.modal-title svg {
display:none;
}
}


.selected-service {
background: #fff5ed;
border-radius: 16px;
padding:12px 16px;
margin-bottom: 20px;
font-size:14px;
border-left: 4px solid #ff7a2f;
}
.selected-service-label {
font-weight:600;
color:#ff7a2f;
margin-right: 8px;
}
.selected-service-value {
color:#1a2c3e;
}
.form-group {
margin-bottom: 16px;
}
.form-group label {
display:block;
margin-bottom: 6px;
font-weight:500;
color:#4a5b68;
font-size:14px;
}
.form-group input,.form-group select {
width:100%;
padding:12px 16px;
border-radius: 16px;
border: 1px solid #e2e8f0;
font-size:16px;
font-family:inherit;
transition: all 0.3s;
}
.form-group input:focus {
outline: none;
border-color:#ff7a2f;
box-shadow: 0 0 0 3px rgba(255, 122, 47, 0.1);
}
.form-group input.required {
border-color:#e65a3a;
background-color:#fff5f0;
}
.error {
color:#e65a3a;
font-size:12px;
display:block;
margin-top: 5px;
}

.form-message {
margin-top: 12px;
font-size:13px;
text-align: center;
}
.form-message.success {
color:#27ae60;
}
.form-message.error {
color:#e65a3a;
}
.payment-info {
background: #f8fafc;
border-radius: 20px;
padding:20px;
margin-bottom: 20px;
text-align: center;
}
.payment-order-id {
font-size:14px;
color:#6c7a89;
margin-bottom: 8px;
}
.payment-order-id span {
color:#1a2c3e;
font-weight:600;
}
.payment-amount {
font-size:32px;
font-weight:800;
color:#ff7a2f;
margin:12px 0;
}
.pay-btn {
width:100%;
background: #2ecc71;
color:white;
border: none;
padding:14px;
border-radius: 40px;
font-weight:600;
font-size:16px;
cursor: pointer;
transition: all 0.3s;
}
.pay-btn:hover {
background: #27ae60;
transform: translateY(-2px);
}
.back-btn {
width:100%;
background: transparent;
border: 1px solid #e2e8f0;
padding:12px;
border-radius: 40px;
font-weight:500;
cursor: pointer;
transition: all 0.3s;
margin-top: 12px;
}
.back-btn:hover {
background: #f8fafc;
}
#SelectedServiceText {font-weight:600;}
.modal-container2 {
max-width:860px;
width:90%;
background: #ffffff;
border-radius: 32px;
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
animation: slideUp 0.25s ease-out;
overflow: hidden;
}
.certificate-grid {display:flex;gap: 30px;flex-wrap: wrap;}
.certificate-image {flex: 1;min-width:200px;text-align: center;}
.certificate-image img {max-width:100%;border-radius: 20px;box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);}
.certificate-form {flex: 1.5;min-width:240px;}
.form-group select:focus,.form-group input:focus {outline: none;border-color:#88a0b9;box-shadow: 0 0 0 3px rgba(136, 160, 185, 0.2);}
.form-group select.required,.form-group input.required {border-color:#e65a3a;background-color:#fff5f0;}
.cert-note {font-size:14px;color:#6c7a89;margin-bottom: 20px;padding:10px;background: #f8fafc;border-radius: 12px;text-align: center;}