/*======================================================
                GÜLMEKKE MÜKERREM TURİZM
                PREMIUM STYLE
======================================================*/

:root{

--primary:#2F8F4E;
--primary-dark:#1F6D39;
--gold:#C8A64E;
--gold-light:#E8D39A;
--bg:#FAF8F3;
--white:#ffffff;
--text:#222;
--gray:#666;
--border:#ece8df;
--ink:#12261A;

--shadow:0 15px 45px rgba(0,0,0,.08);

--radius:20px;

--transition:.35s ease;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:"Poppins",sans-serif;

background:var(--bg);

color:var(--text);

overflow-x:hidden;

line-height:1.7;

}

img{

display:block;

width:100%;

}

a{

text-decoration:none;

color:inherit;

}

ul{

list-style:none;

}

.container{

width:min(92%,1300px);

margin:auto;

}

/*============================
        ARCH MOTIF
        (imzalık, görsel yerine)
============================*/

.arch-shape{

position:relative;

width:220px;

height:260px;

margin:auto;

border-radius:110px 110px 12px 12px;

background:linear-gradient(160deg,var(--primary),var(--primary-dark));

display:flex;

align-items:center;

justify-content:center;

box-shadow:0 30px 70px rgba(31,109,57,.28);

border:6px solid var(--gold);

}

.arch-shape::before{

content:"";

position:absolute;

inset:14px;

border-radius:95px 95px 6px 6px;

border:1.5px dashed rgba(255,255,255,.35);

}

.arch-shape i{

font-size:64px;

color:var(--gold-light);

}

.arch-shape.big{

width:280px;

height:330px;

border-radius:140px 140px 14px 14px;

}

.arch-shape.big::before{

border-radius:120px 120px 8px 8px;

}

.arch-shape.dark{

background:linear-gradient(160deg,#16281c,var(--ink));

border-color:var(--gold);

}

/*============================
        HEADER
============================*/

.header{

position:fixed;

width:100%;

top:0;

left:0;

z-index:999;

padding:22px 0;

transition:.4s;

backdrop-filter:blur(20px);

background:rgba(255,255,255,.55);

border-bottom:1px solid rgba(255,255,255,.4);

}

.navbar .container{

display:flex;

justify-content:space-between;

align-items:center;

}

.logo{

display:flex;

align-items:center;

gap:14px;

}

.logo-mark{

width:52px;

height:52px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(160deg,var(--primary),var(--primary-dark));

border:2px solid var(--gold);

color:var(--gold-light);

font-size:22px;

flex-shrink:0;

}

.logo-text{

font-family:"Playfair Display",serif;

font-weight:700;

font-size:22px;

color:var(--primary-dark);

line-height:1.1;

display:flex;

flex-direction:column;

}

.logo-text em{

font-style:normal;

font-size:12px;

letter-spacing:3px;

font-weight:500;

color:var(--gold);

font-family:"Poppins",sans-serif;

}

.navbar ul{

display:flex;

gap:38px;

}

.navbar ul li a{

font-weight:500;

transition:.3s;

position:relative;

}

.navbar ul li a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:2px;

background:var(--gold);

transition:.3s;

}

.navbar ul li a:hover::after{

width:100%;

}

.phone{

padding:13px 28px;

border-radius:50px;

background:var(--primary);

color:#fff;

font-weight:600;

}

/*============================
        HERO
============================*/

.hero{

height:100vh;

min-height:720px;

position:relative;

overflow:hidden;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

}

.hero-bg{

position:absolute;

inset:0;

z-index:-3;

background:

radial-gradient(circle at 20% 20%, rgba(200,166,78,.18), transparent 45%),
radial-gradient(circle at 82% 78%, rgba(47,143,78,.35), transparent 50%),
linear-gradient(160deg,#0d1912,#16281c 55%,#1F6D39);

}

.hero-bg::before{

content:"";

position:absolute;

inset:0;

opacity:.5;

background-image:

repeating-linear-gradient(45deg, rgba(200,166,78,.08) 0 2px, transparent 2px 42px),
repeating-linear-gradient(-45deg, rgba(200,166,78,.08) 0 2px, transparent 2px 42px);

}

.hero-arch{

position:absolute;

bottom:-40px;

left:50%;

transform:translateX(-50%);

opacity:.9;

z-index:-1;

}

.hero-arch .arch-shape{

width:340px;

height:420px;

border-radius:170px 170px 16px 16px;

background:linear-gradient(160deg,rgba(47,143,78,.55),rgba(13,25,18,.85));

}

.hero-arch .arch-shape::before{

border-radius:150px 150px 10px 10px;

}

.hero-arch i{

font-size:110px;

}

.hero-content{

max-width:900px;

padding:0 20px;

position:relative;

}

.hero span{

display:inline-block;

padding:10px 24px;

border-radius:30px;

background:rgba(255,255,255,.12);

backdrop-filter:blur(15px);

border:1px solid rgba(200,166,78,.4);

color:var(--gold-light);

font-weight:600;

letter-spacing:2px;

margin-bottom:30px;

}

.hero h1{

font-family:"Playfair Display",serif;

font-size:72px;

line-height:1.15;

margin-bottom:30px;

color:#fff;

}

.hero p{

font-size:20px;

color:rgba(255,255,255,.75);

margin-bottom:45px;

}

.buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn-primary{

background:linear-gradient(135deg,var(--primary),var(--primary-dark));

color:#fff;

padding:18px 42px;

border-radius:50px;

font-weight:600;

transition:.35s;

box-shadow:var(--shadow);

}

.btn-primary:hover{

transform:translateY(-6px);

}

.btn-outline{

padding:18px 42px;

border-radius:50px;

border:2px solid var(--gold);

color:var(--gold-light);

transition:.35s;

font-weight:600;

}

.btn-outline:hover{

background:var(--gold);

color:#16281c;

}

/*============================
        SECTION
============================*/

section{

padding:120px 0;

}

.section-title{

text-align:center;

margin-bottom:70px;

}

.section-title span{

color:var(--gold);

font-weight:700;

letter-spacing:2px;

}

.section-title h2{

font-size:50px;

margin-top:12px;

margin-bottom:20px;

font-family:"Playfair Display",serif;

}

.section-title p{

max-width:700px;

margin:auto;

color:#777;

}
/*======================================================
                    ABOUT
======================================================*/

.about{

background:#fff;

}

.about .container{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.about-visual{

position:relative;

}

.about-stat{

position:absolute;

right:0;

bottom:-10px;

background:#fff;

border:2px solid var(--gold);

border-radius:20px;

padding:22px 30px;

text-align:center;

box-shadow:var(--shadow);

}

.about-stat h3{

font-size:36px;

color:var(--primary);

font-family:"Playfair Display",serif;

}

.about-stat span{

font-size:13px;

color:#777;

font-weight:600;

}

.about-content span{

color:var(--gold);

font-weight:700;

letter-spacing:2px;

}

.about-content h2{

font-family:"Playfair Display",serif;

font-size:48px;

margin:20px 0;

line-height:1.2;

}

.about-content p{

margin-bottom:22px;

color:#666;

font-size:17px;

}

.about-features{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

margin-top:40px;

}

.about-features div{

display:flex;

align-items:center;

gap:12px;

font-weight:600;

}

.about-features i{

width:42px;

height:42px;

background:var(--primary);

color:#fff;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

}

/*======================================================
                    COUNTERS
======================================================*/

.counter-section{

background:linear-gradient(135deg,#2F8F4E,#206C39);

padding:90px 0;

}

.counter-section .container{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.counter-card{

background:rgba(255,255,255,.12);

backdrop-filter:blur(15px);

border:1px solid rgba(255,255,255,.25);

border-radius:25px;

padding:40px;

text-align:center;

transition:.4s;

}

.counter-card:hover{

transform:translateY(-10px);

background:rgba(255,255,255,.18);

}

.counter-card h2{

font-size:58px;

color:#fff;

margin-bottom:10px;

}

.counter-card span{

color:#fff;

font-size:18px;

}

/*======================================================
                    WHY US
======================================================*/

.why-us{

background:var(--bg);

}

.why-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.why-card{

background:#fff;

padding:45px;

border-radius:25px;

box-shadow:var(--shadow);

text-align:center;

transition:.4s;

position:relative;

overflow:hidden;

}

.why-card::before{

content:"";

position:absolute;

left:0;

top:0;

width:100%;

height:5px;

background:linear-gradient(90deg,var(--gold),var(--primary));

}

.why-card:hover{

transform:translateY(-12px);

}

.why-card i{

font-size:50px;

color:var(--gold);

margin-bottom:25px;

}

.why-card h3{

margin-bottom:18px;

font-size:24px;

}

.why-card p{

color:#777;

}

/*======================================================
                  PACKAGE CARDS
======================================================*/

.package-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.package-card{

background:#fff;

border-radius:30px;

padding:45px;

box-shadow:var(--shadow);

transition:.4s;

position:relative;

overflow:hidden;

}

.package-card:hover{

transform:translateY(-12px);

}

.package-card.active{

background:linear-gradient(180deg,#fff,#fdf8ec);

border:2px solid var(--gold);

}

.package-top{

text-align:center;

margin-bottom:35px;

}

.badge{

display:inline-block;

padding:8px 20px;

background:#eef7f0;

color:var(--primary);

border-radius:40px;

font-size:14px;

font-weight:600;

margin-bottom:20px;

}

.badge.gold{

background:var(--gold);

color:#fff;

}

.package-top h3{

font-size:28px;

margin-bottom:10px;

}

.package-top h1{

font-size:58px;

color:var(--primary);

}

.package-card ul{

display:flex;

flex-direction:column;

gap:18px;

margin:35px 0;

}

.package-card li{

display:flex;

gap:12px;

align-items:center;

}

.package-card i{

color:var(--primary);

}

.package-btn{

display:block;

text-align:center;

padding:18px;

background:var(--primary);

color:#fff;

border-radius:50px;

font-weight:600;

transition:.3s;

}

.package-btn:hover{

background:var(--gold);

}

/*======================================================
                    HAC
======================================================*/

.hajj{

background:var(--bg);

}

.hajj .container{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.hajj-right span{

color:var(--gold);

font-weight:700;

letter-spacing:2px;

}

.hajj-right h2{

font-family:"Playfair Display",serif;

font-size:44px;

margin:20px 0;

line-height:1.25;

}

.hajj-right p{

color:#666;

font-size:17px;

margin-bottom:30px;

}

.hajj-list{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

margin-bottom:36px;

}

.hajj-list div{

display:flex;

align-items:center;

gap:10px;

font-weight:600;

}

.hajj-list i{

color:var(--primary);

font-size:20px;

}

/*======================================================
                  SERVICES
======================================================*/

.service-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.service-card{

background:#fff;

padding:45px;

border-radius:25px;

text-align:center;

box-shadow:var(--shadow);

transition:.4s;

}

.service-card:hover{

transform:translateY(-12px);

}

.service-card i{

font-size:55px;

color:var(--gold);

margin-bottom:25px;

}

.service-card h3{

margin-bottom:15px;

font-size:24px;

}

.service-card p{

color:#777;

}
/*======================================================
              KUTSAL MEKANLAR (eski galeri)
======================================================*/

.gallery{

background:#fff;

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.gallery-item{

text-align:center;

padding:20px 0;

}

.gallery-item .arch-shape{

width:170px;

height:200px;

border-radius:85px 85px 10px 10px;

}

.gallery-item .arch-shape::before{

border-radius:72px 72px 6px 6px;

}

.gallery-item .arch-shape i{

font-size:48px;

}

.gallery-item h4{

margin-top:22px;

font-size:19px;

font-family:"Playfair Display",serif;

color:var(--primary-dark);

}

/*======================================================
                TESTIMONIALS
======================================================*/

.testimonials{

background:linear-gradient(135deg,#FAF8F3,#ffffff);

}

.testimonial-wrapper{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.testimonial-card{

background:white;

padding:45px;

border-radius:30px;

box-shadow:0 25px 60px rgba(0,0,0,.08);

transition:.4s;

}

.testimonial-card:hover{

transform:translateY(-12px);

}

.stars{

font-size:26px;

color:var(--gold);

margin-bottom:25px;

}

.testimonial-card p{

color:#666;

margin-bottom:25px;

line-height:1.8;

}

.testimonial-card h4{

font-size:20px;

color:var(--primary);

}

/*======================================================
                    BLOG
======================================================*/

.blog{

background:#fff;

}

.blog-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.blog-card{

background:#fff;

border-radius:25px;

overflow:hidden;

box-shadow:0 25px 60px rgba(0,0,0,.08);

transition:.4s;

}

.blog-card:hover{

transform:translateY(-12px);

}

.blog-cover{

height:180px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(150deg,var(--primary),var(--primary-dark));

position:relative;

overflow:hidden;

}

.blog-cover::before{

content:"";

position:absolute;

inset:0;

background-image:repeating-linear-gradient(45deg, rgba(200,166,78,.15) 0 2px, transparent 2px 36px);

}

.blog-cover i{

font-size:50px;

color:var(--gold-light);

position:relative;

}

.blog-content{

padding:35px;

}

.blog-content span{

color:var(--gold);

font-weight:600;

}

.blog-content h3{

font-size:28px;

margin:18px 0;

line-height:1.3;

}

.blog-content p{

color:#777;

margin-bottom:25px;

}

.blog-content a{

color:var(--primary);

font-weight:600;

}

/*======================================================
                    FAQ
======================================================*/

.faq{

background:#FAF8F3;

}

.faq-item{

background:white;

margin-bottom:20px;

border-radius:18px;

overflow:hidden;

box-shadow:0 15px 35px rgba(0,0,0,.06);

}

.faq-item button{

width:100%;

padding:24px;

background:none;

border:none;

font-size:19px;

font-weight:600;

cursor:pointer;

text-align:left;

}

.faq-item div{

padding:0 24px 24px;

color:#666;

line-height:1.8;

}

/*======================================================
                    CONTACT
======================================================*/

.contact{

background:#fff;

}

.contact-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

}

.contact-info{

display:flex;

flex-direction:column;

gap:25px;

}

.info-card{

display:flex;

align-items:flex-start;

gap:18px;

padding:30px;

background:#FAF8F3;

border-radius:20px;

transition:.35s;

}

.info-card:hover{

transform:translateX(8px);

}

.info-card i{

font-size:28px;

color:var(--gold);

margin-top:5px;

}

.contact-form{

display:flex;

flex-direction:column;

gap:20px;

}

.contact-form input,

.contact-form textarea{

padding:18px;

border:1px solid #ddd;

border-radius:15px;

font-size:16px;

font-family:Poppins;

outline:none;

transition:.3s;

}

.contact-form input:focus,

.contact-form textarea:focus{

border-color:var(--primary);

}

.contact-form button{

padding:18px;

background:var(--primary);

border:none;

border-radius:50px;

color:white;

font-size:18px;

cursor:pointer;

transition:.35s;

}

.contact-form button:hover{

background:var(--gold);

}

/*======================================================
                    MAP
======================================================*/

.map iframe{

width:100%;

height:450px;

border:0;

display:block;

}

/*======================================================
                    FOOTER
======================================================*/
.footer{
    background:#0d1b2a;
    color:#d7dde7;
    padding:80px 0 25px;
}

.footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.3fr;
    gap:60px;
}

.footer-logo{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:20px;
    color:#fff;
    text-decoration:none;
    font-size:28px;
    font-weight:700;
}

.footer-logo em{
    color:#d4af37;
    font-style:normal;
}

.footer-description{
    color:#a8b3c2;
    line-height:1.8;
    max-width:350px;
}

.footer h3{
    color:#fff;
    font-size:20px;
    margin-bottom:22px;
    position:relative;
}

.footer h3::after{
    content:"";
    width:45px;
    height:3px;
    background:#d4af37;
    display:block;
    margin-top:8px;
    border-radius:50px;
}

.footer ul{
    list-style:none;
    padding:0;
    margin:0;
}

.footer li{
    margin-bottom:14px;
}

.footer a{
    color:#b8c2cf;
    text-decoration:none;
    transition:.3s;
}

.footer a:hover{
    color:#d4af37;
    padding-left:5px;
}

.footer-contact li{
    display:flex;
    align-items:center;
    gap:12px;
}

.footer-contact i{
    width:18px;
    color:#d4af37;
}

.footer-bottom{
    border-top:1px solid rgba(255,255,255,.08);
    margin-top:60px;
    padding-top:25px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
    color:#9ca8b7;
    font-size:14px;
}

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

@media(max-width:650px){
    .footer-grid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .footer-bottom{
        text-align:center;
        justify-content:center;
    }
}