:root{
    --walnut:#6b4327;
    --walnut-dark:#4a2d1a;
    --oak:#b08a5e;
    --charcoal:#1a1512;
    --canvas:#fbf9f6;
    --line:rgba(26,21,18,.12);
    --ease:cubic-bezier(0.25,1,0.5,1);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;font-size:17.5px;-webkit-text-size-adjust:100%;overflow-x:hidden;width:100%;}
body{
    background:var(--canvas);
    color:var(--charcoal);
    font-family:'Jost',sans-serif;
    font-weight:300;
    overflow-x:hidden;
    max-width:100vw;
    width:100%;
    overflow-wrap:break-word;
    word-break:break-word;
    position:relative;
}
body.nav-open{overflow:hidden;}
img{max-width:100%;height:auto;display:block;}
h1,h2,h3,h4,h5,p,span,a,li,div{overflow-wrap:break-word;}
/* Flex/grid children must be allowed to shrink & wrap their text instead of
   overflowing and visually overlapping neighbouring elements */
.contact-info-card,.feature-list li{min-width:0;}
.contact-info-card > div:last-child,
.feature-list li > span:last-child{min-width:0;flex:1 1 auto;}
.navbar-moytas .brand{min-width:0;}

h1,h2,h3,h4,.serif{
    font-family:'Cormorant Garamond',serif;
    font-weight:600;
    letter-spacing:.01em;
}
.tracking-wide{letter-spacing:.28em;}
.tracking-mid{letter-spacing:.14em;}
.text-walnut{color:var(--walnut);}
.bg-charcoal{background:var(--charcoal);}
.line-divider{width:64px;height:1px;background:var(--oak);transform:scaleX(0);transition:transform .9s var(--ease) .25s;}
.reveal.is-visible .line-divider{transform:scaleX(1);}
.btn-outline-charcoal{
    border:1px solid var(--charcoal);
    color:var(--charcoal);
    background:transparent;
    padding:.9rem 2.4rem;
    font-size:.72rem;
    letter-spacing:.22em;
    text-transform:uppercase;
    border-radius:0;
    transition:all .4s var(--ease);
    display:inline-block;
    text-decoration:none;
    line-height:1.2;
}
.btn-outline-charcoal:hover{background:var(--charcoal);color:var(--canvas);}
.btn-fill-oak{
    background:var(--walnut);
    color:#fff;
    padding:.9rem 2.4rem;
    font-size:.72rem;
    letter-spacing:.22em;
    text-transform:uppercase;
    border-radius:0;
    border:1px solid var(--walnut);
    transition:all .4s var(--ease);
    display:inline-block;
}
.btn-fill-oak:hover{background:transparent;color:var(--walnut);}
.navbar-moytas{
    position:fixed;top:0;left:0;right:0;z-index:1030;
    padding:1.6rem 0;
    background:linear-gradient(180deg,rgba(20,16,13,.6) 0%,rgba(20,16,13,.15) 70%,rgba(20,16,13,0) 100%);
    transition:all .5s var(--ease);
}
.navbar-moytas.scrolled{
    padding:.9rem 0;
    background:rgba(26,21,18,.92);
    backdrop-filter:blur(10px);
    box-shadow:0 8px 30px rgba(0,0,0,.18);
}
.navbar-moytas .brand{
    font-family:'Cormorant Garamond',serif;
    font-weight:700;
    font-size:1.6rem;
    letter-spacing:.1em;
    color:#fff;
    text-shadow:0 1px 6px rgba(0,0,0,.35);
}
.navbar-moytas .nav-link{
    color:rgba(255,255,255,.82);
    font-size:.86rem;
    font-weight:500;
    letter-spacing:.1em;
    text-transform:uppercase;
    padding:.5rem .9rem !important;
    transition:color .3s var(--ease);
}
.navbar-moytas .nav-link:hover,
.navbar-moytas .nav-link.active{color:var(--oak);}
.navbar-moytas .dropdown-toggle::after{
    vertical-align:.15em;
    margin-left:.4em;
    transition:transform .3s var(--ease);
}
.navbar-moytas .dropdown.show .dropdown-toggle::after{transform:rotate(180deg);}
.moy-dropdown-menu{
    background:rgba(26,21,18,.97);
    backdrop-filter:blur(10px);
    border:1px solid rgba(251,249,246,.1);
    border-radius:0;
    padding:.6rem 0;
    margin-top:.6rem;
    min-width:220px;
    max-width:calc(100vw - 2rem);
    box-shadow:0 20px 50px rgba(0,0,0,.35);
}
.moy-dropdown-menu .dropdown-item{
    color:rgba(251,249,246,.82);
    font-size:.76rem;
    font-weight:500;
    letter-spacing:.08em;
    text-transform:uppercase;
    padding:.7rem 1.6rem;
    background:transparent;
    transition:all .3s var(--ease);
}
.moy-dropdown-menu .dropdown-item:hover,
.moy-dropdown-menu .dropdown-item.active{
    background:rgba(176,138,94,.12);
    color:var(--oak);
}
.hero{
    position:relative;
    min-height:100vh;
    min-height:100svh;
    display:flex;
    align-items:center;
    background-color:var(--charcoal);
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}
.hero::before{
    content:'';
    position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(26,21,18,.55),rgba(26,21,18,.72));
}
.hero-content{color:#fbf9f6;position:relative;z-index:2;}
.hero .eyebrow{
    font-size:.72rem;
    letter-spacing:.4em;
    text-transform:uppercase;
    color:var(--oak);
}
.hero h1{
    font-size:clamp(2.6rem,6vw,5.4rem);
    line-height:1.05;
    margin:1.2rem 0 1.6rem;
}
.hero p.lead-text{
    font-size:1.05rem;
    font-weight:300;
    max-width:560px;
    color:rgba(251,249,246,.82);
    line-height:1.8;
}
.hero-sub{
    min-height:64vh;
}
.hero-sub h1{
    font-size:clamp(2.2rem,5vw,4.2rem);
}
.breadcrumb-moy{
    position:relative;z-index:2;
    font-size:.68rem;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:rgba(251,249,246,.72);
}
.breadcrumb-moy a{color:rgba(251,249,246,.72);text-decoration:none;transition:color .3s var(--ease);}
.breadcrumb-moy a:hover{color:var(--oak);}
.scroll-cue{
    position:absolute;
    bottom:2.4rem;
    left:50%;
    transform:translateX(-50%);
    color:rgba(251,249,246,.7);
    font-size:.65rem;
    letter-spacing:.3em;
    text-transform:uppercase;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:.6rem;
}
.scroll-cue .stick{
    width:1px;height:44px;
    background:rgba(251,249,246,.5);
    position:relative;
    overflow:hidden;
}
.scroll-cue .stick::after{
    content:'';
    position:absolute;top:-44px;left:0;
    width:100%;height:100%;
    background:var(--oak);
    animation:scrollLine 2.2s var(--ease) infinite;
}
@keyframes scrollLine{
    0%{top:-44px;}
    60%{top:44px;}
    100%{top:44px;}
}
@keyframes fadeInUp{
    0%{opacity:0;transform:translateY(28px);}
    100%{opacity:1;transform:translateY(0);}
}
.section-pad{padding:7.5rem 0;}
.section-pad-sm{padding:5rem 0;}
@media (max-width:991.98px){
    .sticky-media{position:relative;top:0;height:clamp(240px,50vw,360px);margin-bottom:2.4rem;}

    /* --- Mobil menü: sağdan açılan sabit panel (drawer) -----------------
       Konumu daima viewport'a (right:0) göre sabitlenir; sayfanın herhangi
       bir yerinde yatay taşma olsa bile panel ekranın dışına kaymaz ve
       yatay kaydırma gerektirmez. */
    .navbar-moytas .navbar-collapse{
        display:flex !important;
        flex-direction:column;
        align-items:stretch;
        justify-content:flex-start !important;
        position:fixed;
        top:0;
        right:0;
        bottom:0;
        left:auto;
        width:min(85vw,320px);
        max-width:320px;
        height:100vh;
        height:100dvh;
        margin:0;
        padding:1.2rem 1.3rem 2rem;
        background:rgba(20,16,13,.98);
        border-radius:0;
        border-left:1px solid rgba(251,249,246,.08);
        box-shadow:-14px 0 40px rgba(0,0,0,.4);
        overflow-y:auto;
        -webkit-overflow-scrolling:touch;
        z-index:1046;
        transform:translateX(100%);
        visibility:hidden;
        transition:transform .35s var(--ease),visibility 0s linear .35s;
        box-sizing:border-box;
    }
    .navbar-moytas .navbar-collapse.show{
        transform:translateX(0);
        visibility:visible;
        transition:transform .35s var(--ease);
    }
    .nav-drawer-head{
        display:flex;align-items:center;justify-content:space-between;
        padding-bottom:.9rem;margin-bottom:.6rem;
        border-bottom:1px solid rgba(251,249,246,.12);
    }
    .nav-drawer-title{
        color:#fbf9f6;font-family:'Cormorant Garamond',serif;font-size:1.05rem;
        letter-spacing:.08em;text-transform:uppercase;
    }
    .nav-drawer-close{
        background:transparent;border:1px solid rgba(251,249,246,.3);color:#fbf9f6;
        width:34px;height:34px;line-height:1;font-size:1.4rem;
        display:flex;align-items:center;justify-content:center;
        border-radius:50%;flex:0 0 auto;padding:0;
    }
    .navbar-moytas .nav-link{padding:.6rem .9rem !important;}
    .navbar-moytas .navbar-nav{gap:.15rem;}
    /* Bootstrap's dropdown is positioned via Popper against the fixed navbar,
       which makes it float as an absolute overlay on top of the rest of the
       menu / page content (the reported "texts overlapping" bug). Inside the
       mobile drawer we force it back into normal flow so it simply expands
       underneath "Urunler" instead of covering other links/text. */
    .navbar-moytas .navbar-collapse .dropdown-menu{
        position:static !important;
        inset:auto !important;
        transform:none !important;
        width:100%;
        max-width:100%;
        margin:.4rem 0 .6rem;
        background:rgba(251,249,246,.05);
        box-shadow:none;
        border:1px solid rgba(251,249,246,.08);
    }
    .navbar-moytas .navbar-collapse .dropdown-item{padding:.6rem 1.2rem;}

    .nav-overlay{
        display:none;
        position:fixed;
        inset:0;
        background:rgba(15,12,10,.55);
        z-index:1045;
        opacity:0;
        transition:opacity .35s var(--ease);
    }
    .nav-overlay.show{display:block;opacity:1;}
}
@media (min-width:992px){
    .nav-drawer-head,.nav-overlay{display:none !important;}
}
@media (max-width:767.98px){
    .section-pad{padding:4rem 0;}
    .section-pad-sm{padding:3rem 0;}
    .hero-sub{min-height:56vh;}
    .hero{text-align:left;padding:0 .5rem;}
    .hero h1{font-size:clamp(2.1rem,9vw,2.8rem);}
    .hero p.lead-text{font-size:.95rem;line-height:1.7;}
    .hero .d-flex.gap-3{flex-direction:column;gap:.9rem !important;}
    .hero .d-flex.gap-3 a{width:100%;text-align:center;}
    .btn-fill-oak,.btn-outline-charcoal{padding:.85rem 1.6rem;font-size:.68rem;}
    .sticky-media{position:relative;top:0;height:260px;margin-bottom:2rem;}
    .about-figure{height:clamp(220px,60vw,340px);}
    .feature-list li{font-size:.88rem;gap:.7rem;}
    .row.g-4.mt-3 .col-4{padding-top:.4rem;}
    .stat-num{font-size:1.4rem;}
    .stat-label{font-size:.62rem;}
    .category-card{padding:1.8rem 1.4rem;}
    .category-card .cat-thumb{height:170px;}
    .gallery-frame .carousel-item img{height:260px;}
    .gallery-frame.gallery-frame-lg .carousel-item img{height:300px;}
    .cta-strip h2{font-size:1.7rem !important;}
    .d-flex.flex-wrap.justify-content-center.gap-3{gap:.6rem !important;}
    .related-chip{font-size:.72rem;padding:.55rem 1.1rem;}
    .footer-line{flex-direction:column;align-items:flex-start;gap:.4rem;}
}
@media (max-width:420px){
    .hero h1{font-size:1.9rem;}
    .navbar-moytas .brand{font-size:1.25rem;letter-spacing:.04em;}
}
/* Extra-small phones (iPhone SE / older Android, ~320-390px) */
@media (max-width:400px){
    .navbar-moytas{padding:1.1rem 0;}
    .navbar-moytas .brand{font-size:1.05rem;}
    .navbar-toggler{padding:.3rem .5rem;}
    .container{padding-left:1rem;padding-right:1rem;}
    .hero .eyebrow{font-size:.62rem;letter-spacing:.22em;}
    .hero h1{font-size:1.7rem;margin:.9rem 0 1.1rem;}
    .breadcrumb-moy{font-size:.6rem;letter-spacing:.14em;}
    .row.g-4.mt-3{display:flex;flex-wrap:wrap;}
    .row.g-4.mt-3 .col-4{flex:0 0 50%;max-width:50%;margin-top:1rem;}
    .row.g-4.mt-3 .col-4:first-child{flex:0 0 100%;max-width:100%;margin-top:0;}
    .stat-num{font-size:1.6rem;}
    .category-card{padding:1.5rem 1.1rem;}
    .category-card .cat-thumb{height:150px;}
    .contact-info-card{gap:.9rem;}
    .contact-info-card .icon-wrap{width:40px;height:40px;min-width:40px;}
    .cta-strip h2{font-size:1.4rem !important;}
}
@media (hover:none){
    .gallery-frame .carousel-control-prev,
    .gallery-frame .carousel-control-next{opacity:.85;width:42px;height:42px;}
}
@media (max-width:575.98px){
    .gallery-frame .carousel-control-prev,
    .gallery-frame .carousel-control-next{opacity:.85;width:38px;height:38px;}
    .gallery-frame .carousel-control-prev{left:8px;}
    .gallery-frame .carousel-control-next{right:8px;}
}
/* --- Fluid heading overrides -----------------------------------------
   Several headings across Home/Category/Contact views carry a fixed
   inline font-size (e.g. style="font-size:2.6rem"). Inline styles beat
   normal CSS specificity, so on narrow phones those fixed sizes could
   run out of room and wrap awkwardly into overlapping neighbouring
   text/blocks. These scoped + !important rules convert them to fluid
   clamp() sizing without needing to touch every .cshtml file. */
#about h2.serif{font-size:clamp(1.7rem,4.4vw,2.6rem) !important;}
#kategoriler h2.serif{font-size:clamp(1.8rem,4.6vw,2.8rem) !important;}
.section-pad-sm.bg-white h2.serif{font-size:clamp(1.5rem,4vw,2.4rem) !important;}
.category-card .category-title{font-size:clamp(1.2rem,2.6vw,1.6rem) !important;}
.col-lg-5 h2.serif{font-size:clamp(1.5rem,3.6vw,2rem) !important;}
.contact-panel h2.serif{font-size:clamp(1.4rem,3.2vw,1.8rem) !important;}
.cta-strip h2.serif{font-size:clamp(1.5rem,4.2vw,2.6rem) !important;}

.eyebrow-sm{
    font-size:.7rem;
    letter-spacing:.32em;
    text-transform:uppercase;
    color:var(--walnut);
}
.about-figure{
    position:relative;
    overflow:hidden;
    height:clamp(280px,42vw,560px);
}
.about-figure img{
    width:100%;height:100%;object-fit:contain;object-position:center;
    background:var(--canvas);
    transition:transform 1s var(--ease);
}
.about-figure:hover img{transform:scale(1.06);}
.stat-block{border-top:1px solid var(--line);padding-top:1.2rem;}
.stat-num{
    font-family:'Cormorant Garamond',serif;
    font-size:2.6rem;
    font-weight:600;
    color:var(--walnut);
}
.stat-label{
    font-size:.68rem;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:rgba(26,21,18,.6);
}
.reveal{opacity:0;transform:translateY(42px) scale(.97);transition:opacity 1s var(--ease),transform 1s var(--ease);}
.reveal.is-visible{opacity:1;transform:translateY(0) scale(1);}

/* Scroll-linked media panel: image sticks on the left while info scrolls past on the right */
.sticky-media{
    position:sticky;
    top:120px;
    height:70vh;
    max-height:640px;
    overflow:hidden;
    border:1px solid var(--line);
}
.sticky-media img,
.sticky-media video{
    width:100%;height:100%;object-fit:contain;object-position:center;
    background:var(--canvas);
    transform:scale(1.12);
    opacity:0;
    transition:transform 1.4s var(--ease),opacity 1s var(--ease);
}
.sticky-media.is-visible img,
.sticky-media.is-visible video{transform:scale(1);opacity:1;}
.sticky-media-caption{
    position:absolute;left:0;right:0;bottom:0;
    padding:1.8rem 2rem;
    background:linear-gradient(0deg,rgba(20,16,13,.82) 0%,rgba(20,16,13,0) 100%);
}
.sticky-media-caption .eyebrow-sm{color:#e9dfd3;}
.sticky-media-caption .line-divider{background:var(--oak);}
.category-row{
    border-top:1px solid var(--line);
    padding:4.2rem 0;
}
.category-row:last-child{border-bottom:1px solid var(--line);}
.category-index{
    font-family:'Cormorant Garamond',serif;
    font-size:.95rem;
    color:var(--oak);
    letter-spacing:.1em;
}
.category-title{
    font-size:clamp(2rem,3vw,2.8rem);
    margin:.4rem 0 .6rem;
}
.category-sub{
    font-size:.92rem;
    color:rgba(26,21,18,.65);
    font-weight:300;
    max-width:340px;
}
.category-card{
    border:1px solid var(--line);
    padding:2.6rem 2.2rem;
    height:100%;
    transition:all .4s var(--ease);
    background:#fff;
}
.category-card:hover{
    transform:translateY(-10px);
    box-shadow:0 24px 50px rgba(26,21,18,.1);
    border-color:var(--oak);
}
.category-card .cat-thumb{
    height:220px;overflow:hidden;margin-bottom:1.6rem;
    position:relative;
}
.category-card .cat-thumb img,
.category-card .cat-thumb video{
    width:100%;height:100%;object-fit:contain;object-position:center;
    background:var(--canvas);
    transition:transform .8s var(--ease);
}
.category-card:hover .cat-thumb img,
.category-card:hover .cat-thumb video{transform:scale(1.08);}
.category-card .cat-link{
    font-size:.68rem;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:var(--walnut);
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    gap:.5rem;
}
/* Görsel henüz admin panelinden yüklenmediğinde gösterilen boş durum kutusu */
.media-placeholder{
    width:100%;height:100%;
    display:flex;align-items:center;justify-content:center;
    background:var(--canvas);
    color:rgba(26,21,18,.4);
    font-size:.82rem;
    letter-spacing:.05em;
    text-align:center;
    padding:1rem;
}
.gallery-frame{
    position:relative;
    overflow:hidden;
    border:1px solid var(--line);
}
/* "Örnek Görsel" rozeti: ürün kataloğundaki görsellerin temsili/örnek olduğunu belirtir */
.sample-badge{
    position:absolute;
    top:.9rem;
    left:.9rem;
    z-index:5;
    background:rgba(26,21,18,.72);
    color:#fbf9f6;
    font-size:.62rem;
    letter-spacing:.14em;
    text-transform:uppercase;
    padding:.4rem .7rem;
    border-radius:3px;
    pointer-events:none;
    backdrop-filter:blur(2px);
}
.cat-thumb .sample-badge{top:.7rem;left:.7rem;font-size:.58rem;padding:.32rem .6rem;}
.gallery-frame .carousel-item img,
.gallery-frame .carousel-item video{
    width:100%;
    height:clamp(260px,42vw,460px);
    object-fit:contain;
    object-position:center;
    background:var(--canvas);
    transition:transform .8s var(--ease);
}
.gallery-frame.gallery-frame-lg .carousel-item img,
.gallery-frame.gallery-frame-lg .carousel-item video{height:clamp(280px,52vw,600px);}
.gallery-frame:hover .carousel-item.active img,
.gallery-frame:hover .carousel-item.active video{transform:scale(1.05);}
.gallery-frame video{background:#000;}
/* Anahtar Teslim sayfasındaki tekil video: dikey/yüksek çözünürlüklü kaynaklarda bile
   sayfayı ele geçirmeyecek, diğer galeri çerçeveleriyle aynı ölçekte kalır. */
.showcase-video{
    display:block;
    width:100%;
    max-height:clamp(280px,52vw,600px);
    object-fit:contain;
    margin:0 auto;
    background:#000;
}
.gallery-frame .carousel-control-prev,
.gallery-frame .carousel-control-next{
    width:52px;height:52px;top:50%;transform:translateY(-50%);
    background:rgba(251,249,246,.9);
    opacity:0;
    transition:opacity .4s var(--ease);
}
.gallery-frame:hover .carousel-control-prev,
.gallery-frame:hover .carousel-control-next{opacity:1;}
.gallery-frame .carousel-control-prev{left:16px;}
.gallery-frame .carousel-control-next{right:16px;}
.gallery-frame .carousel-control-prev-icon,
.gallery-frame .carousel-control-next-icon{filter:invert(1) grayscale(1) brightness(0);width:1rem;height:1rem;}
.gallery-frame .carousel-indicators{margin-bottom:.6rem;}
.gallery-frame .carousel-indicators [data-bs-target]{
    width:6px;height:6px;border-radius:50%;
    background:rgba(251,249,246,.6);
    background-clip:content-box;
    box-sizing:content-box;
    border:none;
    margin:0 4px;
    padding:8px;
}
.gallery-frame .carousel-indicators .active{background:var(--oak);}
.feature-list{list-style:none;padding:0;margin:0;}
.feature-list li{
    padding:1.1rem 0;
    border-top:1px solid var(--line);
    display:flex;
    align-items:baseline;
    gap:1rem;
    font-size:.94rem;
    color:rgba(26,21,18,.78);
    transition:opacity 1s var(--ease),transform 1s var(--ease);
}
.feature-list li:last-child{border-bottom:1px solid var(--line);}
.feature-list li .num{
    font-family:'Cormorant Garamond',serif;
    color:var(--oak);
    font-size:1rem;
    min-width:28px;
}
.related-chip{
    border:1px solid var(--line);
    padding:.6rem 1.4rem;
    font-size:.68rem;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--charcoal);
    text-decoration:none;
    transition:all .4s var(--ease);
    display:inline-block;
}
.related-chip:hover{background:var(--charcoal);color:#fff;border-color:var(--charcoal);}
.cta-strip{
    background:var(--charcoal);
    color:var(--canvas);
    padding:6rem 0;
}
.cta-strip h2{color:#fff;}
footer.site-footer{
    background:var(--charcoal);
    color:rgba(251,249,246,.7);
    padding:5rem 0 2rem;
}
footer.site-footer a{
    color:rgba(251,249,246,.7);
    text-decoration:none;
    font-size:.85rem;
    transition:color .3s var(--ease);
}
footer.site-footer a:hover{color:var(--oak);}
footer .footer-title{
    color:#fff;
    font-size:.7rem;
    letter-spacing:.24em;
    text-transform:uppercase;
    margin-bottom:1.3rem;
}
.footer-brand{
    font-family:'Cormorant Garamond',serif;
    font-size:1.9rem;
    font-weight:700;
    color:#fff;
}
.footer-line{border-top:1px solid rgba(251,249,246,.12);margin-top:3.5rem;padding-top:1.6rem;}

/* Contact / İletişim page */
.contact-info-card{
    display:flex;
    align-items:flex-start;
    gap:1.2rem;
    padding:1.8rem 0;
    border-top:1px solid var(--line);
}
.contact-info-card:last-child{border-bottom:1px solid var(--line);}
.contact-info-card .icon-wrap{
    width:48px;height:48px;min-width:48px;
    border:1px solid var(--oak);
    display:flex;align-items:center;justify-content:center;
    color:var(--walnut);
}
.contact-info-card .icon-wrap svg{width:20px;height:20px;stroke:var(--walnut);}
.contact-info-card .label{
    font-size:.68rem;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:var(--oak);
    margin-bottom:.35rem;
}
.contact-info-card .value{
    font-size:1rem;
    color:var(--charcoal);
    line-height:1.7;
}
.contact-info-card .value a{color:var(--charcoal);text-decoration:none;transition:color .3s var(--ease);}
.contact-info-card .value a:hover{color:var(--walnut);}
.contact-panel{
    background:#fff;
    border:1px solid var(--line);
    padding:3rem;
}
@media (max-width:767.98px){.contact-panel{padding:2rem 1.4rem;}}
@media (max-width:400px){.contact-panel{padding:1.6rem 1.1rem;}}
.form-floating-moy{position:relative;margin-bottom:1.6rem;}
.form-control-moy{
    width:100%;
    border:none;
    border-bottom:1px solid var(--line);
    background:transparent;
    padding:.7rem .1rem;
    font-family:'Jost',sans-serif;
    font-weight:300;
    font-size:.95rem;
    color:var(--charcoal);
    border-radius:0;
    transition:border-color .3s var(--ease);
}
.form-control-moy:focus{
    outline:none;
    border-color:var(--walnut);
    box-shadow:none;
}
textarea.form-control-moy{resize:vertical;min-height:120px;}
.form-control-moy::placeholder{color:rgba(26,21,18,.4);}
/* KVKK onay kutusu */
.kvkk-check{
    display:flex;
    align-items:flex-start;
    gap:.6rem;
    margin:.4rem 0 1.4rem;
}
.kvkk-check input[type=checkbox]{
    margin-top:.28rem;
    width:16px;height:16px;
    accent-color:var(--walnut);
    flex:0 0 auto;
    cursor:pointer;
}
.kvkk-check label{
    font-size:.82rem;
    line-height:1.7;
    color:rgba(26,21,18,.72);
    cursor:pointer;
}
.kvkk-check a{color:var(--walnut);text-decoration:underline;}
.form-error-msg{
    display:none;
    color:#a4453a;
    font-size:.78rem;
    margin:-.9rem 0 1rem;
}
.contact-map-frame{
    border:1px solid var(--line);
    overflow:hidden;
    height:380px;
    filter:grayscale(.35) contrast(1.05);
}
.contact-map-frame iframe{width:100%;height:100%;border:0;display:block;}
@media (max-width:991.98px){.contact-map-frame{height:300px;margin-bottom:.5rem;}}
.social-inline{
    display:flex;
    gap:.9rem;
    margin-top:2rem;
}
.social-inline a{
    width:44px;height:44px;
    border:1px solid var(--line);
    display:flex;align-items:center;justify-content:center;
    color:var(--charcoal);
    transition:all .3s var(--ease);
}
.social-inline a:hover{border-color:var(--walnut);color:var(--walnut);background:rgba(176,138,94,.08);}
.social-inline a svg{width:18px;height:18px;}

/* --- Çerez bildirimi (cookie banner) ------------------------------- */
.cookie-banner{
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:1050;
    background:var(--charcoal);
    color:#fbf9f6;
    padding:1.1rem 1.4rem;
    padding-bottom:calc(1.1rem + env(safe-area-inset-bottom));
    display:none;
    align-items:center;
    justify-content:center;
    gap:1.4rem;
    flex-wrap:wrap;
    box-shadow:0 -8px 30px rgba(0,0,0,.18);
    max-width:100vw;
    box-sizing:border-box;
    max-height:80vh;
    overflow-y:auto;
}
.cookie-banner.is-visible{display:flex;}
.cookie-banner p{
    margin:0;
    font-size:.82rem;
    line-height:1.7;
    max-width:640px;
    color:rgba(251,249,246,.85);
}
.cookie-banner a{color:var(--oak);text-decoration:underline;}
.cookie-banner .cookie-actions{display:flex;gap:.7rem;flex:0 0 auto;}
.cookie-banner .btn-cookie{
    border:1px solid rgba(251,249,246,.35);
    background:transparent;
    color:#fbf9f6;
    font-size:.72rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    padding:.55rem 1.1rem;
    cursor:pointer;
    transition:.25s;
    white-space:nowrap;
}
.cookie-banner .btn-cookie.accept{background:var(--oak);border-color:var(--oak);color:var(--charcoal);}
.cookie-banner .btn-cookie:hover{opacity:.85;}
@media (max-width:767.98px){
    .cookie-banner{
        flex-direction:column;
        align-items:stretch;
        text-align:center;
        gap:.9rem;
        padding:1rem 1.1rem;
        padding-bottom:calc(1rem + env(safe-area-inset-bottom));
    }
    .cookie-banner p{max-width:100%;font-size:.8rem;}
    .cookie-banner .cookie-actions{width:100%;justify-content:center;}
    .cookie-banner .btn-cookie{flex:1 1 0;white-space:normal;}
}

/* --- Yasal metin sayfaları (KVKK / Gizlilik / Çerez) ---------------- */
.legal-content h2{font-size:1.5rem;margin-top:2.2rem;margin-bottom:.9rem;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p,.legal-content li{
    line-height:1.9;
    color:rgba(26,21,18,.78);
    font-size:.95rem;
}
.legal-content ul{padding-left:1.2rem;}
.legal-content table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.88rem;}
.legal-content table th,.legal-content table td{border:1px solid var(--line);padding:.6rem .8rem;text-align:left;vertical-align:top;}
.legal-content table th{background:#f5f1ea;}

/* --- Galeri bilgi notu: görsellerin temsili olduğunu belirtir ------- */
.gallery-note{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.6rem;
    flex-wrap:wrap;
    text-align:center;
    margin-top:1.4rem;
    font-size:.82rem;
    color:rgba(26,21,18,.6);
}
.gallery-note a{
    color:var(--walnut);
    text-decoration:underline;
    font-weight:400;
    white-space:nowrap;
}
