/*
Theme Name: One Mahalle Theme
Theme URI: https://onemahalle.com/
Description: One Mahalle için bağımsız, hızlı ve Elementor gerektirmeyen özel WordPress teması.
Author: Allcom Media
Author URI: https://allcom.com.tr/
Update URI: https://hasancircioglu.com/updates/one-mahalle-theme
Version: 8.1.2
Text Domain: one-mahalle
Requires at least: 6.5
Requires PHP: 7.4
*/

:root {
  --om-red: #bd1a20;
  --om-red-dark: #96151a;
  --om-black: #000000;
  --om-black-soft: #141414;
  --om-green: #109848;
  --om-text: #111111;
  --om-muted: #6f6f6f;
  --om-white: #ffffff;
  --om-border: #ececec;
  --om-container: 1320px;
  --om-radius: 18px;
  --om-shadow: 0 10px 30px rgba(0,0,0,.08);
}

html { scroll-behavior: smooth; }
body { margin: 0; }

/* One Mahalle temel sıfırlamalar */
.page-title,
.entry-title { display: none !important; }

.site-content,
.content-area { padding: 0 !important; margin: 0 !important; }

/* One Mahalle genel yardımcı sınıfları */
.om-container { width: min(calc(100% - 40px), var(--om-container)); margin-inline: auto; }
.om-section { padding: 80px 0; }
.om-section--compact { padding: 52px 0; }

@media (max-width: 767px) {
  .om-container { width: min(calc(100% - 30px), var(--om-container)); }
  .om-section { padding: 56px 0; }
  .om-section--compact { padding: 38px 0; }
}


/* ==========================================
   ONE MAHALLE FOOTER
   ========================================== */
.om-footer {
  background: #ffffff;
  color: #5f5f5f;
  border-top: 1px solid #ececec;
  font-family: 'Inter', sans-serif;
}

.om-footer a {
  color: inherit;
  text-decoration: none;
}

.om-footer__main {
  padding: 66px 0 44px;
}

.om-footer__grid {
  display: grid;
  grid-template-columns: minmax(250px, 1.35fr) minmax(160px, .75fr) minmax(160px, .75fr) minmax(280px, 1.15fr);
  gap: 42px;
  align-items: start;
}

.om-footer__logo {
  display: inline-flex;
  margin-bottom: 18px;
}

.om-footer__logo img {
  width: auto;
  max-width: 210px;
  max-height: 78px;
  display: block;
}

.om-footer__brand-text {
  margin: 0 0 20px;
  max-width: 360px;
  color: #6f6f6f;
  font-size: 14px;
  line-height: 1.75;
}

.om-footer__social {
  display: flex;
  align-items: center;
  gap: 10px;
}

.om-footer__social a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid #e2e2e2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #161616;
  background: #ffffff;
  transition: .2s ease;
}

.om-footer__social a:hover {
  background: var(--om-red);
  border-color: var(--om-red);
  color: #fff;
  transform: translateY(-2px);
}

.om-footer__title {
  margin: 0 0 18px;
  color: #111111;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.om-footer__links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 11px;
}

.om-footer__links a {
  color: #676767;
  font-size: 14px;
  transition: .2s ease;
}

.om-footer__links a:hover {
  color: var(--om-red);
  padding-left: 4px;
}

.om-footer__contact {
  display: grid;
  gap: 14px;
}

.om-footer__contact-item {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 10px;
  align-items: start;
  color: #676767;
  font-size: 13.5px;
  line-height: 1.65;
}

.om-footer__contact-item .om-ui-icon {
  color: var(--om-red);
  margin-top: 4px;
}

.om-footer__contact-item strong {
  color: #111111;
  font-weight: 700;
}

.om-footer__bottom {
  border-top: 1px solid #ececec;
}

.om-footer__bottom-inner {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: 12.5px;
  color: #7a7a7a;
}

.om-footer__bottom-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.om-footer__bottom-links a:hover {
  color: var(--om-red);
}

.om-footer__credit {
  white-space: nowrap;
}

.om-footer__credit strong {
  color: #111111;
}

.om-mobile-actions {
  display: none;
}

@media (max-width: 1024px) {
  .om-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  body {
    padding-bottom: 64px;
  }

  .om-footer__main {
    padding: 48px 0 30px;
  }

  .om-footer__grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .om-footer__bottom-inner {
    padding: 20px 0;
    min-height: 0;
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .om-footer__credit {
    white-space: normal;
  }

  .om-mobile-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    height: 64px;
    background: #ffffff;
    border-top: 1px solid #e8e8e8;
    box-shadow: 0 -8px 28px rgba(0,0,0,.08);
  }

  .om-mobile-actions a {
    color: #111111;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 800;
  }

  .om-mobile-actions a + a {
    border-left: 1px solid #e8e8e8;
    background: var(--om-red);
  }
}


/* ==========================================
   WHITE CHROME OVERRIDES — v1.3.0
   ========================================== */
.om-footer{
  background:#fff;
  color:#626262;
  border-top:1px solid #ececec;
}
.om-footer__title{color:#111}
.om-footer__brand-text,
.om-footer__links a,
.om-footer__contact-item{color:#686868}
.om-footer__contact-item strong{color:#111}
.om-footer__social a{
  background:#fff;
  border-color:#e1e1e1;
  color:#111;
}
.om-footer__social a:hover{
  background:var(--om-red);
  border-color:var(--om-red);
  color:#fff;
}
.om-footer__links a:hover{color:var(--om-red)}
.om-footer__bottom{border-top:1px solid #ececec}
.om-footer__bottom-inner{color:#777}
.om-footer__bottom-links a:hover{color:var(--om-red)}
.om-footer__credit strong{color:#111}

@media(max-width:767px){
  .om-mobile-actions{
    background:#fff;
    border-top:1px solid #e8e8e8;
    box-shadow:0 -8px 28px rgba(0,0,0,.08);
  }
  .om-mobile-actions a{
    color:#111;
  }
  .om-mobile-actions a + a{
    color:#fff;
    background:var(--om-red);
    border-left:1px solid #e8e8e8;
  }
}


/* Footer WP menu locations — v1.3.1 */
.om-footer__legal-menu{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  list-style:none;
  padding:0;
  margin:0;
}
.om-footer__legal-menu li{
  margin:0;
  padding:0;
}
.om-footer__legal-menu a{
  color:inherit;
  text-decoration:none;
}
.om-footer__legal-menu a:hover{
  color:var(--om-red);
}

@media(max-width:767px){
  .om-footer__legal-menu{
    gap:10px 16px;
  }
}


/* Hakkımızda dedicated page template — v1.3.2 */
body.page .om-about{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}
body.page:has(.om-about) #content,
body.page:has(.om-about) .site-content,
body.page:has(.om-about) .content-area,
body.page:has(.om-about) .site-main{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}


/* Corporate pages: hard breakout from Hello/Elementor content width — v1.4.2 */
html, body{
  overflow-x:hidden;
}

body .om-corp,
body .om-corp-custom{
  position:relative !important;
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

body .om-corp > .om-corp-hero,
body .om-corp > .om-corp-wide-image,
body .om-corp > .om-corp-soft,
body .om-corp > .om-corp-dark,
body .om-corp > .om-corp-cta{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* Prevent theme wrappers from clipping breakout sections */
body.page #page,
body.page #content,
body.page .site-content,
body.page .content-area,
body.page .site-main{
  overflow:visible !important;
}
\n\n/* Managed page templates — v1.5.0: Elementor/Hello wrappers bypassed by template_include. */\nbody.om-managed-page #content,body.om-managed-page .site-content,body.om-managed-page .content-area,body.om-managed-page .site-main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}\nbody.om-managed-page .om-corp,body.om-managed-page .om-corp-custom,body.om-managed-page .om-home{width:100%!important;max-width:none!important;margin:0!important;left:auto!important;right:auto!important}\n

/* Standalone theme base */
html, body { width:100%; min-height:100%; }
body{
  margin:0;
  background:#fff;
  color:#111;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
img{max-width:100%;height:auto}
a{color:inherit}
#content{width:100%;max-width:none;margin:0;padding:0}
.om-site-main{width:100%;max-width:none;margin:0;padding:0}
.om-basic-page{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:72px 0}
.om-basic-page h1{font-size:clamp(38px,5vw,68px);line-height:1;margin:0 0 28px;letter-spacing:-.04em}
.om-basic-page .entry-content{font-size:17px;line-height:1.8;color:#555}
.om-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.om-post-card{border:1px solid #ececec;border-radius:18px;overflow:hidden;background:#fff}
.om-post-card__body{padding:22px}
.om-post-card h2{margin:0 0 10px;font-size:23px;line-height:1.2}
.om-post-card p{margin:0;color:#666;line-height:1.65}
@media(max-width:900px){.om-post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.om-post-grid{grid-template-columns:1fr}.om-basic-page{width:calc(100% - 28px);padding:54px 0}}


/* ==========================================
   ONE MAHALLE DESIGN SYSTEM — v1.6.0
   Kurumsal + Lezzet + genel sayfalarda ortak tipografi ve responsive ritim
   ========================================== */
:root{
  --om-content:1180px;
  --om-page-gutter:24px;
  --om-heading-weight:800;
  --om-body-size:16px;
  --om-body-line:1.72;
}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:var(--om-body-size);line-height:var(--om-body-line);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body h1,body h2,body h3,body h4{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:var(--om-heading-weight);text-wrap:balance}
body p{font-weight:400}

/* Lezzet sayfaları: tasarımı bozmadan hero tipografisini kurumsal ritme yaklaştır */
body .om-lezzet-page{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
body .om-lezzet-page .om-lezzet-section--hero h1,
body .om-lezzet-page .om-ck-hero h1{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-weight:800!important;
  font-size:clamp(42px,5vw,72px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}
body .om-lezzet-page h2{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:800}
body .om-lezzet-page h3{font-weight:750}

/* Genel WordPress sayfalarında dev başlık oluşmasını engelle */
.om-basic-page h1{font-size:clamp(38px,4.5vw,62px);font-weight:800;line-height:1.02;letter-spacing:-.04em}

/* Form ve linklerde iOS otomatik mavi renklerini bastır */
a[href^="tel:"],a[href^="mailto:"]{text-decoration:none;color:inherit}

@media(max-width:780px){
  :root{--om-page-gutter:14px;--om-body-size:15px}
  body .om-lezzet-page .om-lezzet-section--hero h1,
  body .om-lezzet-page .om-ck-hero h1{font-size:38px!important;line-height:1!important;letter-spacing:-.035em!important}
  .om-basic-page h1{font-size:38px}
}


/* Site-wide typography harmonization — v2.0.0 */
html,body{font-family:'Inter',Arial,sans-serif;color:#111;background:#fff}
body{font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body a[href^="tel:"],body a[href^="mailto:"]{-webkit-text-fill-color:currentColor}
.om-site-main{width:100%;max-width:none;margin:0;padding:0}
.om-basic-page{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:72px 0}
.om-basic-page>h1{font-size:clamp(38px,4.5vw,62px);line-height:1;letter-spacing:-.04em;font-weight:800;margin:0 0 28px}
@media(max-width:680px){.om-basic-page{width:calc(100% - 28px);padding:54px 0}.om-basic-page>h1{font-size:38px}}

/* One Mahalle v5 global design tokens */
body{font-family:var(--om-font-body,Inter),Arial,sans-serif}
body h1,body h2,body h3,body h4,body h5,body h6,.om-menu,.om-btn{font-family:var(--om-font-heading,Manrope),Arial,sans-serif}
.om-kicker,.omv4-kicker{font-family:var(--om-font-accent,"Barlow Condensed"),Arial,sans-serif}


/* v5.1 — logo controls + compact flow */
.om-logo img{height:var(--om-header-logo-h,42px)!important;max-height:none!important;width:auto!important}
.om-footer__logo img{width:var(--om-footer-logo-w,170px)!important;max-width:100%!important;height:auto!important}
@media(max-width:1024px){.om-logo img{height:var(--om-header-logo-mobile-h,36px)!important}}
.omv4-section:empty{display:none!important}
.omv4-page > .omv4-section + .omv4-section{margin-top:0!important}
.omv4-page > .omv4-cta{margin-top:0!important}


/* Lightweight inline icon system — Theme 6.0 */
.om-ui-icon{
  width:1.1em;
  height:1.1em;
  display:inline-block;
  flex:0 0 auto;
  vertical-align:-.12em;
}
.om-topbar .om-ui-icon{color:var(--om-red);width:14px;height:14px}
.om-footer__contact-item .om-ui-icon{width:17px;height:17px}
.om-social-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:1.65em;
  height:1.65em;
  padding:0 .22em;
  border-radius:999px;
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:-.02em;
}
.om-footer__social .om-social-mark{font-size:10px}
.om-mobile-actions .om-ui-icon{width:18px;height:18px}
.om-mobile-actions .om-social-mark{font-size:11px;min-width:20px;height:20px}


/* ==========================================
   ONE MAHALLE UI/UX NORMALIZATION — Theme 8.0
   ========================================== */
.leaflet-container img,
.leaflet-pane img,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow{
  max-width:none !important;
}
body{padding-bottom:0 !important}
.om-mobile-actions{display:none !important}

/* Global rhythm */
.om9-wrap,
.om-corp-wrap,
.om-common-hero > .omv4-wrap{
  width:min(var(--om-content,1180px), calc(100% - 80px)) !important;
  margin-inline:auto !important;
}
@media(max-width:767px){
  .om9-wrap,
  .om-corp-wrap,
  .om-common-hero > .omv4-wrap{
    width:calc(100% - 32px) !important;
  }
}

/* Header balance */
.om-header{box-shadow:0 4px 16px rgba(0,0,0,.05) !important}
.om-header-container{max-width:var(--om-content,1180px) !important;padding:16px 20px !important}
.om-nav .om-menu{gap:20px !important}
.om-nav .om-menu > li > a{font-size:15px !important;font-weight:600 !important}
.om-btn-cta{padding:12px 24px !important}

/* Hero / banner typography */
.om-common-hero,
.om-corp-hero,
.om9-home-slider,
.om9-taste-hero{position:relative}
.om-common-hero p,
.om-corp-hero p,
.om9-slide-copy p,
.om9-taste-hero p{max-width:620px !important;font-size:16px !important;line-height:1.68 !important}
.om-common-hero h1,
.om-corp-hero h1{font-size:clamp(42px,4.8vw,64px) !important;line-height:1.02 !important;letter-spacing:-.04em !important;margin-bottom:18px !important}
.om9-slide-copy h1,
.om9-slide-copy h2,
.om9-taste-hero h1{font-size:clamp(42px,5.4vw,74px) !important;line-height:.96 !important;letter-spacing:-.045em !important;margin:16px 0 14px !important}
.om9-kicker,
.om-common-hero__kicker,
.om-corp-kicker{margin-bottom:14px !important}
.om9-section-head p,
.om9-taste-intro p,
.om9-split > p,
.om9-split > div > p{font-size:16px !important;line-height:1.75 !important}

/* Homepage slide and taste page spacing */
.om9-home-slider{min-height:600px !important}
.om9-slide-copy{max-width:720px}
.om9-taste-hero{min-height:560px !important}
.om9-taste-hero .om9-wrap{padding-bottom:54px !important}

/* Lezzet banners more balanced */
.om9-taste-hero,
.om9-product-hero,
.om9-blog-hero{background-position:center center !important}
.om9-product-hero-grid,
.om9-blog-hero-grid,
.om9-taste-intro,
.om9-story-grid,
.om9-split{gap:48px !important}
.om9-blog-hero{padding:72px 0 !important}
.om9-blog-heading h1{font-size:clamp(40px,4.8vw,62px) !important;line-height:1.02 !important}
.om9-blog-heading > p{font-size:16px !important;line-height:1.7 !important}
.om9-blog-body{padding:64px 0 82px !important}
.om9-blog-reading > p,
.om9-blog-reading li{font-size:16px !important;line-height:1.84 !important}
.om9-blog-reading h2{font-size:clamp(28px,3.5vw,40px) !important;margin-top:42px !important}
.om9-blog-reading img{display:block;max-width:100%;height:auto;border-radius:18px;margin:26px 0}

/* Product / flavor pages */
.om9-cig-spin{animation:none !important}
.om9-cig-stage{padding:78px 0 !important}
.om9-flavor-tabs{max-width:760px !important}
.om9-flavor-btn{min-height:44px !important}
.om9-product-copy h1{font-size:clamp(40px,5vw,64px) !important;line-height:1.02 !important}

/* Remove extra visual noise */
.om9-values,
.om9-two-lines,
.om9-three-list,
.om9-process,
.om-bp-map-layout,
.om-bp-branch,
.om-footer,
.om-footer__bottom{border-color:#ece7df !important}

/* Generic content scale */
.om-basic-page{width:min(var(--om-content,1180px), calc(100% - 80px)) !important;padding:64px 0 !important}
.om-basic-page h1,
.om-basic-page > h1{font-size:clamp(36px,4vw,54px) !important;line-height:1.04 !important}
.om-basic-page .entry-content{font-size:16px !important;line-height:1.78 !important}

/* Responsive tightening */
@media(max-width:900px){
  .om9-home-slider{min-height:540px !important}
  .om9-slide-copy h1,
  .om9-slide-copy h2,
  .om9-taste-hero h1{font-size:48px !important}
  .om-common-hero h1,
  .om-corp-hero h1,
  .om9-product-copy h1,
  .om9-blog-heading h1{font-size:44px !important}
}
@media(max-width:640px){
  .om-header-container{padding:14px 16px !important}
  .om9-home-slider{min-height:500px !important}
  .om9-slide-copy h1,
  .om9-slide-copy h2,
  .om9-taste-hero h1,
  .om-common-hero h1,
  .om-corp-hero h1,
  .om9-product-copy h1,
  .om9-blog-heading h1{font-size:38px !important}
  .om9-slide-copy p,
  .om9-taste-hero p,
  .om-common-hero p,
  .om-corp-hero p{font-size:15px !important}
  .om-basic-page{width:calc(100% - 32px) !important;padding:54px 0 !important}
}
