/*
Theme Name: Medicos Lite
Theme URI: https://starthemes.net/wordpress-themes/free-medical-wordpress-theme/
Author: Starthemes
Author URI: https://starthemes.net/
Description: Medicos is a fully responsive free medical WordPress theme that provides a nice and clean layout for doctors and medical or university websites. This theme creates every aspect of medical site presentation and looks. This theme has some page templates where you can easily create inner pages according to your requirement. The color combination and layout give proper justice to medical or relevant websites. This theme is well-coded for cross-browser compatibility and tested for all screen resolutions. By using this theme you can nicely present the look and feel of your website whether you have a dental clinic, pharmacy, eye clinic, or any other medical services. This theme comes with great features like a Nivo slider with 3 images in customizer also it has some homepage sections and color options. This theme is tested with the latest version of WordPress and many popular plugins like wocommerce, contact form 7 etc. This theme has comes with the homepage sections where you can display services, about, blogs and more.
Requires at least: 6.1
Tested up to: 6.6
Requires PHP: 7.0
Version: 1.1.1
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
Text Domain: medicos-lite
Tags: e-commerce, education, right-sidebar, custom-background, custom-header, custom-menu, featured-images, theme-options, threaded-comments, custom-logo, blog, full-width-template

Medicos Lite is based on Underscores theme(Underscores is distributed under the terms of the GNU GPL v2 or later).
Medicos Lite WordPress Theme has been created by Starthemes(starthemes.net), 2024.
Medicos Lite WordPress Theme is released under the terms of GNU GPL.
*/

body {
    margin: 0;
    padding: 0;
    -ms-word-wrap: break-word;
    word-wrap: break-word;
    font: 14px/22px 'Roboto';
    color: #848e9f;
	background-color:#ffffff;
}
*{ 
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box;
 }
*:before, *:after { 
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box;
}
img {
    margin: 0;
    padding: 0;
    border: none;
    max-width: 100%;
    height: auto;
    display: block;
}
section img {
    max-width: 100%;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
	font-family: 'Open Sans',Arial,Helvetica,sans-serif;
	line-height:normal;
	color:#122e53;;
	font-weight:700;
}
p {
    margin: 0;
    padding: 0;
}
a {
    color: #2c2c2c;
    transition: all 0.3s ease-in-out;
}
a:hover {
    text-decoration: none;
    color: #666;
}
ul {
    margin: 0 0 0 15px;
    padding: 0;
}
.clear {
    clear: both;
}
.center {
    text-align: center;
    margin-bottom: 40px;
}
pre {
    border: 1px solid #d1d1d1;
    font-size: 1rem;
    line-height: 1.3125;
    margin: 0 0 1.75em;
    max-width: 100%;
    overflow: auto;
    overflow-wrap: break-word;
    padding: 1.75em;
    white-space: pre-wrap;
}
.middle-align {
    margin: 0 auto;
    padding: 0;
}
.wp-caption {
    margin: 0;
    padding: 0;
    font-size: 13px;
    max-width: 100%;
}
.wp-caption-text {
    margin: 0;
    padding: 0;
}
.sticky {
    margin: 0;
    padding: 0;
}
.screen-reader-text,
.bypostauthor,
.gallery-caption {
    margin: 0;
    padding: 0;
}
.alignleft,
img.alignleft {
    display: inline;
    float: left;
    margin-right: 45px;
    margin-top: 4px;
    margin-bottom: 20px;
    padding: 0;
}
.alignright,
img.alignright {
    display: inline;
    float: right;
}
.aligncenter,
img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
}
.comment-list .comment-content ul {
    margin-left: 15px;
}
.comment-list .comment-content ul li {
    margin: 5px;
}
.main-container ol {
    list-style-position: outside;
}
.main-container ol li {
    margin: 5px 0;
}
.toggleMenu {
    display: none;
}
section {
    padding:0;
    position: relative;
}
h2.section-title {
    font-family: 'Open Sans',Arial,Helvetica,sans-serif;
    font-size: 40px;
    color: #122e53;
    font-style: normal;
    font-weight: 700;
    position: relative;
    padding-bottom: 20px;
    margin: 0 0 50px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.6px;
}
h2.section-title::after {
    content: '';
    background-color: #efa220;
    position: absolute;
    bottom: 0;
    margin: 0 auto;
    left: 0;
    width: 60px;
    height: 5px;
}
.main-container {
    margin: 50px 0 0;
    padding: 0;
}
.container {
    width: 1160px;
    margin: 0 auto;
    padding: 0;
    position: relative;
}
.align {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
a.main-button {
    font-family: 'Open Sans',Arial,Helvetica,sans-serif;
    font-size: 14px;
    font-weight: 700;
	text-transform: uppercase;
	color: #ffffff;
	background-color: #122e53;
	padding: 12px 30px;
	display: inline-block;
	border-radius: 6px;
}
/******************************
** Top Bar CSS
******************************/
.top-section{
	background-color: #efa220;
    position: relative;
    color: #ffffff;
    letter-spacing: 0.5px;
    padding: 10px 0;
}
.top-section a{
    color: #ffffff;
}
.top-section-left{
	flex: 3;
}
.top-section-left div{
	display: inline-block;
    position: relative;
}
.top-section-left div:not(:last-child){
    border-right: 1px solid;
    padding: 0 10px 0 0;
    margin-right: 10px;
}
.top-section-left div:not(:last-child) i{
    margin-right: 10px;
}
.top-section-left .social a{
    font-size: 12px;
    width: 26px;
    text-align: center;
    margin-right: 8px;
    display: inline-block;
}
.top-section-right{
	flex: 1;
    margin: -10px 0;
}
.tpbar-btn{
	text-align: right;
}
.tpbar-btn a{
	display: inline-block;
	text-align: center;
    background-color: #122e53;
    color: #ffffff;
    padding: 12px 20px;
    position: relative;
    font-weight: 700;
}

/******************************
** Header CSS
******************************/
.header{
    background-color: #ffffff;
    padding: 15px 0;
}
.custom-logo,
.site-title-desc{
    display: inline-block;
}
.custom-logo{
    margin-right: 10px;
}
h1.site-title{
    font-family: 'Open Sans',Arial,Helvetica,sans-serif;
    font-size: 42px;
    font-style: normal;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1;
}
h1.site-title a{
    color: #122e53;
	text-decoration: none;
}
p.site-description{
    color: #efa220;
}
.header-right{
    margin-left: auto;
}
.head-info:not(:first-child){
    margin-left: 20px;
}
.head-info .headinfo-icon{
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 25px;
    background-color: #efa220;
    color: #ffffff;
    margin-right: 20px;
    text-align: center;
}
.head-info .headinfo-text h6{
    font-size: 16px;
    margin-bottom: 6px;
    color: #efa220;
}
.head-info .headinfo-text h5{
    font-size: 18px;
    margin-bottom: 0;
    color: #122e53;
}

/******************************
** NavBar CSS
******************************/
#navbar{
    background-color: #122e53;
    position: relative;
}
.toggle{
    display: block;
}
.toggle a{
    width:auto; 
    color:#ffffff; 
    background:url(images/mobile_nav_right.png) no-repeat right center #0e2d45; 
    padding:10px 25px; 
    margin-top:5px; 
    font-size:16px; 
    text-align:left;
}
.toggle a:hover{
    color:#ffffff !important;
}
.sitenav{ 
    position:relative; 
    z-index:9999; 
}
.sitenav ul {
    margin:0;
    padding:0;
    font-family:'Open Sans',Arial,Helvetica,sans-serif;
    font-size:14px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:2px;
}
.sitenav ul li{
    display:inline-block;
    position:relative;
    line-height:normal;
}
.sitenav ul li a{
    padding:16px 20px;
    display:block;
    text-align:center;
    position:relative;
    transition:0.5s all;
	text-decoration: none;
}
.sitenav ul li a, 
.sitenav ul li.current_page_item ul li a{
    color:#ffffff;
}

.sitenav ul li.current_page_item a, 
.sitenav ul li a:hover, 
.sitenav ul li.current_page_item ul li a:hover{ 
    color:#ffffff;
    background-color: #efa220;
}

.sitenav ul li:hover ul li:hover, .sitenav ul li:hover ul li{
    background-color:inherit !important;
}

button.dropdown-toggle{
    display:none;
}

@media screen and (min-width: 1000px) {
    /* = Navigation 2nd level css
    -------------------------------------------------------------- */
    .sitenav ul li ul {
        color: #fff;
        opacity: 0;
        padding:0;
        position: absolute;
        right: 9999rem;
        top: calc(100% + 2rem);
        transition: opacity 0.15s linear, transform 0.15s linear, right 0s 0.15s;
        transform: translateY(0.6rem);
        width: 20rem;
        z-index: 1;
    }
    .sitenav ul li.menu-item-has-children:hover > ul,
    .sitenav ul li.menu-item-has-children:focus > ul,
    .sitenav ul li.menu-item-has-children.focus > ul {
        left: 0;
        opacity: 1;
        transform: translateY(0);
        transition: opacity 0.15s linear, transform 0.15s linear;
        background-color:#122e53;
        top:100%;
    }

    .sitenav ul li ul li{
        display:block; 
        position:relative; 
        float:none; 
        top:1px; 
        line-height:18px; 
        margin-left:0;
        margin-right:0; 
    }
    .sitenav ul li ul li a{
        display:block; 
        padding:10px; 
        position:relative; 
        top:0; 
        text-align:left;
    }

    /* = Navigation 3rd level css
    -------------------------------------------------------------- */
    .sitenav ul li:hover ul li:hover > ul,
    .sitenav ul li:hover ul li:focus > ul{
        display:block; 
        position:absolute; 
        left:200px; 
        top:-1px; 
        -moz-animation: fadeInRight .3s ease-in-out; 
        -webkit-animation: fadeInRight .3s ease-in-out; 
        animation:fadeInRight .3s ease-in-out; 
    }
    .sitenav ul li.menu-item-has-children.focus ul li.menu-item-has-children.focus ul {
        left:inherit !important; 
        top:-1px !important;
        right: -174px !important;
    }
}

/******************************
** Slider CSS
******************************/
#theme_slider {
    margin: 0 auto;
    padding: 0;
    position: relative;
    min-height: 500px;
}
#theme_slider .nivo-caption{
    padding: 20px;
}
#theme_slider .nivo-caption:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(18,46,83,0.8);
	z-index: -1;
}
#theme_slider .nivo-caption h2{
    font-family: 'Open Sans',Arial,Helvetica,sans-serif;
    font-size: 62px;
    color: #ffffff;
    font-style: normal;
    font-weight: 700;
    margin: 0 0 30px;
    text-transform: capitalize;
}
#theme_slider .nivo-caption h2 a{
    color: #ffffff;
}
#theme_slider .nivo-caption p{
    font-family: 'Open Sans',Arial,Helvetica,sans-serif;
    font-size: 16px;
    color: #ffffff;
    font-style: normal;
    font-weight: 400;
    margin: 0 0 30px;
}
#theme_slider .nivo-caption a.slide-button{
    display: inline-block;
    text-align: center;
    background-color: #efa220;
    color: #ffffff;
    position: relative;
    overflow: hidden;
    z-index: 1;
    padding: 16px 24px;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}
/******************************
** First Section CSS
******************************/
.features{
    position: relative;
    margin-top: -110px;
    z-index: 8;
    padding: 40px 0;
}
.feature-box{
    flex: 1;
    margin-bottom: 25px;
    position: relative;
    box-sizing: border-box;
    -webkit-transform: perspective(1px);
    transform: translateZ(0);
    background-color: #f8f8f8;
    -webkit-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
    border-radius: 10px;
}
.feature-box:not(:last-child){
    margin-right: 20px;
}
.feature-box .get-link{
    position: absolute;
    top:0;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    z-index: 1;
}
.feature-box:hover{
    cursor: pointer;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
    z-index: 99;
    box-shadow: 0 10px 30px 0 rgb(50 50 50 / 20%);
}
.feat-thumb{
    border-radius: 10px 10px 0 0;
    overflow: hidden;
}
.feat-thumb img{
    width: 100%;
}
.feat-content{
    padding: 32px 15px 16px;
    position: relative;
}
.feat-content h3{
    margin-bottom: 15px;
    position: relative;
    letter-spacing: 1px;
    font-size: 24px;
    text-transform: capitalize;
}
.feat-content a.feat-btn{
    position: absolute;
    bottom: 0;
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: translateY(50%);
    left: 30px;
    z-index: 2;
    visibility: visible;
    width: 30px;
    height: 30px;
    background-color: #122e53;
    border-radius: 50px;
    color: #ffffff;
    text-align: center;
    line-height: 30px;
}
.entry-title a,
.postmeta a,
.read-more a,
#sidebar a,
.nav-links a{
	text-decoration: none;
}

/******************************
** First Section CSS
******************************/
.about-us{
    padding: 60px 0;
    background-color: #f7f7f7;
}
.about-thumb,
.about-content{
    flex: 1;
}
.about-content{
    padding-left: 50px;
}
.about-content p{
    margin-bottom: 25px;
}

/* --------- Pages ------- */
.content-area {
    width: 1160px;
    margin: 0 auto;
    padding:0;
}
.site-main {
    width: 800px;
    margin: 0;
    padding: 0;
    float: left;
}
#sitefull {
    width: auto !important;
}
#nosidebar {
    width: 80%;
    margin: 0 auto;
    float: none;
    text-align: center;
}
#sidebar {
    width: 270px;
    margin: 0;
    padding: 0;
    float: right;
}
/* -------- Footer ------- */

.copyright-wrapper{ 
	margin:0; 
	text-align:center; 
	padding:15px 0; 
	color:#ffffff; 
	background-color:#08141e;
}
.copyright-wrapper a{ 
	color:#ffffff;
	text-decoration: none;
}
/* ------ Contact Form ------ */

.wpcf7 {
    margin: 0;
    padding: 0;
    font: 400 15px 'Roboto Slab';
    color: #2e2e2e;
}
.wpcf7 form {
    margin: 0;
    padding: 0;
}
.wpcf7 form span.last {
    float: none !important;
}
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form input[type="url"],
.wpcf7 form input[type="date"],
.wpcf7 form select,
.leftdiv input[type="text"],
.leftdiv input [type="url"],
.leftdiv input[type="email"],
.leftdiv input[type="tel"],
.wpcf7 form textarea,
.rightdiv textarea {
    width: 94%;
    background-color: #f8f8f8;
    border: 1px solid #e6e5e5;
    padding: 10px;
    margin-top: 15px;
    font: 400 14px 'Roboto Slab';
    color: #777777;
}
.wpcf7 form textarea,
.rightdiv textarea {
    height: 128px;
}
.wpcf7 form input[type="checkbox"],
.wpcf7 form input[type="radio"],
.wpcf7 form input[type="file"] {
    margin-top: 10px;
    padding: 0;
}
span.wpcf7-list-item {
    margin: 0 15px 0 0 !important;
}
.wpcf7 form input[type="submit"],
#contact input[type="submit"] {
    font: 400 15px 'Roboto Slab';
    margin: 25px 0 0 0;
    padding: 10px 30px;
    border: none;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -webkit-border-radius: 4px;
	border-radius: 4px;
    cursor: pointer;
    background-color: #000000;
	color:#ffffff;
}
.error_msg {
    padding: 10px;
    background: #ffd3ce;
    color: #e00;
    border: 1px #e00 solid;
    margin: 15px 0;
}
.success_msg {
    padding: 10px;
    background: #dcffc5;
    color: #070;
    border: 1px #070 solid;
    margin: 15px 0;
}
.spacer20 {
    height: 20px;
    clear: both;
}
.nav-links {
    display: table;
    clear: both;
    margin: 15px 0;
    width: 100%;
}
.nav-previous {
    float: left;
}
.nav-next {
    float: right;
}
.nav-links a,
.nav-links .page-numbers {
    background: #2e2e2e;
    color: #fff;
    padding: 5px 10px;
    display: inline-block;
}
.nav-links .current,
.nav-links a:hover {
    background: #feb62a;
	color:#ffffff !important;
}
h1.entry-title,
h1.page-title {
    padding-bottom: 20px;
    font-size: 30px;
}
h1.entry-title a,
h1.page-title a{
	color:#000000;
}
article.tag-sticky-2 {
    background: #f6f6f6;
    padding: 10px;
}
article img {
    height: auto;
}
article p {
    margin: 10px 0;
}
.post-date {
    display: inline;
}
.post-comment {
    display: inline;
}
.post-categories {
    display: inline;
}
.post-tags {
    display: inline;
}
.post-thumb, .postmeta{
	margin-top:10px;
}
form.search-form {
    margin-bottom: 15px;
    display: flex;
}
form.search-form label{
    width: 100%;
}
input.search-field,
.post-password-form input[type=password] {
    border: 1px #ccc solid;
    padding: 10px 20px;
	float: left;
    width: 100%;
}
input.search-submit,
.post-password-form input[type=submit] {
    border: none;
    color: #ffffff;
    padding: 4px 10px;
    cursor: pointer;
}
aside.widget {
    margin-bottom: 30px;
}
aside.widget ul {
    list-style: disc;
    margin-left:0;
}
.accordion-box h2.active {
    color: #ff8a00;
}
.webicon {
    font-size: 20px;
}
#sidebar ul li {
    margin: 5px 0;
	list-style:none;
	background:url(images/nav_right.png) no-repeat left center;
	padding:0 0 0 25px;
}
.comment-list,
ol.comment-list {
    list-style: none;
    margin-left: 0;
    margin-top: 20px;
    margin-bottom: 20px;
	padding-left:0;
}
.comment-list li.comment {
    margin-top: 20px;
}
.comment-list .comment-content h1,
.comment-list .comment-content h2,
.comment-list .comment-content h3,
.comment-list .comment-content h4,
.comment-list .comment-content h5,
.comment-list .comment-content h6 {
    margin-top: 15px;
}
h3.widget-title {
    font-size: 20px;
    border-bottom: 1px solid #cccccc;
    padding:10px 15px;
    margin-bottom: 15px;
	background-color:#feb62a;
	color:#ffffff;
}
.blog-post-repeat {
    border-bottom: 1px solid #cccccc;
    margin-bottom: 40px;
}
a.blogthumbs img {
    width: 100%;
}
#wp-calendar td {
    padding: 9px;
}
.textwidget select {
    border: 1px solid #ccc;
    height: 30px;
    width: 100%;
}
/*------- COMMENT STYLES --------*/

.comment-author.vcard {
    display: inline-block;
    margin-right: 15px;
}
.comment-author img {
    display: block;
}
.comment-meta {
    margin: 5px 0;
}
.comment-list ol.children li.comment {
    background-image: none;
    padding-left: 5px;
}
.hrule {
    border-top: 1px #dbdbdb solid;
    margin-top: 15px;
    padding-bottom: 15px;
}
ol.commentlist {
    list-style: none;
}
#commentform p {
    margin: 5px 0;
}
#commentform label {
    display: block;
}
#commentform input#email,
#commentform input#url,
#commentform input#author,
#commentform textarea,
#commentform input#eazycfc_captcha {
    max-width: 96%;
    border: 1px #ccc solid;
    padding: 5px 2%;
}
#commentform input#submit {
    font: 400 15px 'Roboto Slab';
    border: none;
    padding: 5px 10px;
    color: #fff;
    display: inline-block;
}
#commentform input#submit:hover {
    cursor: pointer;
}
.form-allowed-tags {
    display: none;
}
ul.errormsg {
    background: #ffe4e4;
}
ul.errormsg li {
    padding: 5px;
}
.entry-content table,
.comment-body table {
    border-collapse: collapse;
    margin: 10px 0;
}
.entry-content table td,
.entry-content table th,
.comment-body table td,
.comment-body table th {
    padding: 10px 5px;
    text-align: left;
}
.entry-content table th,
.comment-body table th {
    color: #676767;
    font: normal 18px 'Roboto Slab';
    border-bottom: 1px #888 solid;
}
.entry-content table td,
.comment-body table td {
    border-bottom: 1px #ccc solid;
}
.fvch-codeblock:hover .comment-form-url {
    display: block !important;
}
select{
	padding:10px;
	width:100%;
}
footer.entry-meta {
    clear: left;
}
p.form-submit input[type="submit"]{
	color:#ffffff !important;
}
input[type="submit"].search-submit{
	background-color:#000000;
	color:#ffffff;
	padding:11px 20px;
}

/* Accessibility */
/* 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: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#sitemain[tabindex="-1"]:focus {
  outline: 0;
}

/* Thêm vào cuối file style.css */
.posts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 30px;
}

/* Responsive */
@media (max-width: 1024px) {
    .posts-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .posts-grid {
        grid-template-columns: 1fr;
    }
}

/* Đảm bảo các bài viết con hiển thị đúng */
.posts-grid article {
    margin-bottom: 0;
    border-bottom: none;
    padding: 10px;
}

/* Style cho mỗi bài viết trong grid */
.posts-grid .blog-post-repeat {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.posts-grid .blog-post-repeat:hover {
    transform: translateY(-5px);
}

.posts-grid .post-thumb img {
    width: 100%;
    height: auto;
    display: block;
}

.posts-grid .entry-content {
    padding: 20px;
}

/* =Footer Columns
----------------------------------------------- */
.footer-columns {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    padding: 40px 0;
}

.footer-col {
    flex: 1;
    min-width: 250px;
}

.footer-col h3.widget-title {
    font-size: 18px;
    color: #ffffff;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #efa220;
}

.footer-col p {
    color: rgba(255,255,255,0.8);
    line-height: 1.6;
    margin-bottom: 15px;
}

.contact-info p {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.contact-info .icon {
    margin-right: 10px;
    color: #efa220;
}

.subscribe-form {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.subscribe-form input[type="email"] {
    padding: 12px 15px;
    border: none;
    background: rgba(255,255,255,0.1);
    color: #fff;
}

.subscribe-form input[type="email"]::placeholder {
    color: rgba(255,255,255,0.7);
}

.subscribe-form .main-button {
    padding: 12px 20px;
    text-align: center;
}

.footer-map {
    position: relative;
    padding-bottom: 75%;
    height: 0;
    overflow: hidden;
}

.footer-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* Responsive */
@media (max-width: 768px) {
    .footer-columns {
        flex-direction: column;
        gap: 40px;
    }
    
    .footer-col {
        flex: 1 1 100%;
    }
}