/*
Theme Name: Korfez Catering
Theme URI: https://korfezcatering.com.tr/
Author: Korfez Catering
Author URI: https://korfezcatering.com.tr/
Description: Kocaeli Körfez bölgesinde hizmet veren catering ve toplu yemek organizasyonu firması için özel olarak tasarlanmış, taze ve organik lezzet vurgusu taşıyan WordPress teması. Hero slider, hizmet kartları, galeri ve iletişim formu içerir.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: korfez-catering
Tags: food-and-drink, restaurant, custom-menu, featured-images, footer-widgets, translation-ready
*/

/* =========================================================
   DESIGN TOKENS
   Palette: derin çam yeşili + pirinç altını + fildişi kağıt + is renk vurgu
   ========================================================= */
:root{
  --forest: #16332B;
  --forest-light: #234A3C;
  --forest-pale: #E7EEE9;
  --gold: #B8873B;
  --gold-light: #D9AA5F;
  --rust: #8C3B2E;
  --paper: #FBF8F1;
  --cream: #F3EEE0;
  --charcoal: #22201C;
  --muted: #6B6459;
  --line: #DFD6BF;
  --radius: 2px;
  --container: 1180px;
  --font-display: 'Fraunces', Georgia, serif;
  --font-body: 'Work Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--charcoal);
  background:var(--paper);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4{ font-family:var(--font-display); font-weight:600; line-height:1.15; margin:0 0 .5em; color:var(--forest); }
p{ margin:0 0 1.1em; }
.container{ max-width:var(--container); margin:0 auto; padding:0 28px; }
.btn{
  display:inline-flex; align-items:center; gap:.5em;
  padding:14px 30px;
  background:var(--rust);
  color:#fff;
  font-family:var(--font-body);
  font-weight:600;
  font-size:.92rem;
  letter-spacing:.03em;
  border-radius:var(--radius);
  border:1px solid var(--rust);
  cursor:pointer;
  transition:.25s ease;
}
.btn:hover{ background:transparent; color:var(--rust); }
.btn-outline{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,.6); }
.btn-outline:hover{ background:#fff; color:var(--forest); border-color:#fff; }
.eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--font-body);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.75rem;
  font-weight:600;
  color:var(--gold);
  margin-bottom:14px;
}
.eyebrow::before{
  content:"";
  width:26px; height:1px;
  background:var(--gold);
  display:inline-block;
}

/* Signature laurel divider - taze/organik motifi */
.laurel-divider{ display:flex; align-items:center; justify-content:center; gap:14px; margin:0 auto 34px; opacity:.85; }
.laurel-divider svg{ width:120px; height:22px; }

/* =========================================================
   TOP BAR
   ========================================================= */
.topbar{
  background:var(--forest);
  color:rgba(255,255,255,.85);
  font-size:.82rem;
}
.topbar .container{
  display:flex; justify-content:space-between; align-items:center;
  padding-top:9px; padding-bottom:9px;
  flex-wrap:wrap; gap:8px;
}
.topbar a{ color:#fff; }
.topbar-contacts{ display:flex; gap:22px; flex-wrap:wrap; }
.topbar-contacts span{ display:inline-flex; align-items:center; gap:7px; }
.topbar-social a{ margin-left:14px; opacity:.85; }
.topbar-social a:hover{ opacity:1; color:var(--gold-light); }

/* =========================================================
   HEADER / NAV
   ========================================================= */
.site-header{
  background:var(--paper);
  border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:100;
}
.header-inner{ display:flex; align-items:center; justify-content:space-between; padding:16px 0; gap:24px; }
.site-branding{ display:flex; align-items:center; gap:12px; }
.site-branding img{ max-height:56px; width:auto; }
.site-title{ font-family:var(--font-display); font-size:1.5rem; margin:0; color:var(--forest); }
.site-title span{ color:var(--gold); }

.main-nav ul{ display:flex; gap:6px; align-items:center; }
.main-nav li{ position:relative; }
.main-nav a{
  display:block; padding:12px 16px;
  font-size:.86rem; font-weight:600; letter-spacing:.03em; text-transform:uppercase;
  color:var(--forest);
}
.main-nav a:hover, .main-nav .current-menu-item > a{ color:var(--gold); }
.main-nav .sub-menu{
  position:absolute; top:100%; left:0; min-width:230px;
  background:#fff; border:1px solid var(--line); box-shadow:0 12px 24px rgba(22,51,43,.1);
  display:none; padding:8px 0; z-index:10;
}
.main-nav li:hover > .sub-menu{ display:block; }
.main-nav .sub-menu a{ text-transform:none; padding:10px 20px; font-weight:500; }
.main-nav .menu-item-has-children > a::after{ content:" ▾"; font-size:.7em; }

.menu-toggle{ display:none; background:none; border:1px solid var(--forest); padding:10px 14px; cursor:pointer; }
.menu-toggle span{ display:block; width:22px; height:2px; background:var(--forest); margin:4px 0; }

/* Arama */
.search-toggle{
	background:none; border:1px solid var(--line); border-radius:50%;
	width:42px; height:42px; display:flex; align-items:center; justify-content:center;
	color:var(--forest); cursor:pointer; margin-left:8px; flex-shrink:0; transition:.2s ease;
}
.search-toggle:hover{ background:var(--forest); color:#fff; border-color:var(--forest); }
.site-search-box{
	max-height:0; overflow:hidden; background:var(--cream); border-bottom:1px solid transparent;
	transition:max-height .25s ease, border-color .25s ease;
}
.site-search-box.is-open{ max-height:90px; border-bottom-color:var(--line); }
.site-search-form{
	max-width:var(--container); margin:0 auto; padding:16px 28px;
	display:flex; gap:10px; align-items:center;
}
.site-search-form input[type="search"]{
	flex:1; padding:12px 16px; border:1px solid var(--line); border-radius:var(--radius);
	font-family:var(--font-body); font-size:.95rem; background:#fff;
}
.site-search-form input[type="search"]:focus{ outline:2px solid var(--gold); outline-offset:1px; }
.site-search-form button{
	background:var(--rust); color:#fff; border:none; border-radius:var(--radius);
	width:44px; height:44px; display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0;
}
.site-search-form button:hover{ background:var(--forest); }

@media(max-width: 900px){
  .menu-toggle{ display:block; }
  .main-nav{ display:none; width:100%; }
  .main-nav.is-open{ display:block; }
  .header-inner{ flex-wrap:wrap; }
  .main-nav ul{ flex-direction:column; align-items:stretch; }
  .main-nav .sub-menu{ position:static; display:block; border:none; box-shadow:none; padding-left:14px; }
  .topbar-contacts{ display:none; }
}

/* =========================================================
   HERO SLIDER
   ========================================================= */
.hero-slider{ position:relative; height:78vh; min-height:520px; overflow:hidden; background:var(--forest); }
.hero-slide{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  opacity:0; transition:opacity 1.1s ease;
  display:flex; align-items:center;
}
.hero-slide.is-active{ opacity:1; }
.hero-slide::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(22,51,43,.82) 0%, rgba(22,51,43,.45) 55%, rgba(22,51,43,.2) 100%);
}
.hero-slide .hero-content{ position:relative; z-index:2; color:#fff; max-width:640px; }
.hero-slide .eyebrow{ color:var(--gold-light); }
.hero-slide h2{ color:#fff; font-size:clamp(2.1rem, 4.4vw, 3.6rem); margin-bottom:.3em; }
.hero-slide h2 em{ color:var(--gold-light); font-style:italic; }
.hero-slide p{ color:rgba(255,255,255,.88); font-size:1.08rem; max-width:480px; }
.hero-actions{ display:flex; gap:14px; margin-top:18px; flex-wrap:wrap; }

.hero-dots{ position:absolute; bottom:26px; left:50%; transform:translateX(-50%); z-index:3; display:flex; gap:10px; }
.hero-dots button{
  width:34px; height:3px; border:none; background:rgba(255,255,255,.4); cursor:pointer; padding:0;
}
.hero-dots button.is-active{ background:var(--gold-light); }

/* =========================================================
   INTRO / BIZ KIMIZ CARDS
   ========================================================= */
.section{ padding:88px 0; }
.section-alt{ background:var(--cream); }
.section-header{ text-align:center; max-width:640px; margin:0 auto 50px; }
.section-header h2{ font-size:clamp(1.7rem, 3vw, 2.4rem); }
.section-header p{ color:var(--muted); }

.feature-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
.feature-card{
  background:#fff; border:1px solid var(--line); padding:40px 32px;
  text-align:center; transition:.25s ease;
}
.feature-card:hover{ border-color:var(--gold); transform:translateY(-4px); box-shadow:0 18px 30px rgba(22,51,43,.08); }
.feature-icon{
  width:64px; height:64px; margin:0 auto 20px;
  border-radius:50%; background:var(--forest-pale);
  display:flex; align-items:center; justify-content:center;
}
.feature-icon svg{ width:30px; height:30px; stroke:var(--forest); }
.feature-card h3{ font-size:1.2rem; }
.feature-card p{ color:var(--muted); font-size:.96rem; margin-bottom:0; }

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

/* =========================================================
   ABOUT SPLIT
   ========================================================= */
.about-split{ display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; align-items:center; }
.about-media{ position:relative; }
.about-media .frame{
  border:8px solid #fff; outline:1px solid var(--line);
  box-shadow:0 24px 44px rgba(22,51,43,.14);
  aspect-ratio: 4/5; overflow:hidden; background:var(--forest-pale);
}
.about-media .frame img{ width:100%; height:100%; object-fit:cover; }
.about-badge{
  position:absolute; bottom:-22px; right:-22px;
  background:var(--forest); color:#fff; padding:22px 26px;
  text-align:center; box-shadow:0 14px 26px rgba(22,51,43,.25);
}
.about-badge strong{ display:block; font-family:var(--font-display); font-size:1.9rem; color:var(--gold-light); }
.about-badge span{ font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; }

.about-copy h2{ font-size:clamp(1.7rem,3vw,2.5rem); }
.mission-vision{ display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:26px; }
.mv-box{ border-left:2px solid var(--gold); padding-left:18px; }
.mv-box h4{ font-size:1rem; text-transform:uppercase; letter-spacing:.06em; color:var(--forest); }
.mv-box p{ color:var(--muted); font-size:.94rem; margin-bottom:0; }

@media(max-width:860px){
  .about-split{ grid-template-columns:1fr; }
  .mission-vision{ grid-template-columns:1fr; }
  .about-badge{ right:14px; }
}

/* =========================================================
   SERVICES
   ========================================================= */
.services-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.service-card{
  position:relative; overflow:hidden; background:var(--forest);
  min-height:380px; display:flex; align-items:flex-end;
}
.service-card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.55; transition:.4s ease; }
.service-card:hover img{ opacity:.35; transform:scale(1.06); }
.service-card::before{ content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(22,51,43,.95) 10%, rgba(22,51,43,.15) 75%); }
.service-body{ position:relative; z-index:2; padding:30px 28px; color:#fff; }
.service-num{ font-family:var(--font-display); font-size:.8rem; color:var(--gold-light); letter-spacing:.12em; }
.service-body h3{ color:#fff; font-size:1.35rem; margin:8px 0 10px; }
.service-body p{ color:rgba(255,255,255,.82); font-size:.92rem; margin-bottom:14px; }
.service-link{ font-size:.82rem; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:var(--gold-light); border-bottom:1px solid var(--gold-light); padding-bottom:2px; }

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

/* =========================================================
   CTA STRIP
   ========================================================= */
.cta-strip{
  background:var(--forest);
  color:#fff;
  padding:60px 0;
  background-image:radial-gradient(circle at 85% 20%, rgba(184,135,59,.18), transparent 55%);
}
.cta-inner{ display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; }
.cta-inner h2{ color:#fff; margin:0; font-size:clamp(1.5rem,2.6vw,2.1rem); }
.cta-inner p{ color:rgba(255,255,255,.78); margin:6px 0 0; }

/* =========================================================
   GALLERY (Referanslar / Menüler)
   ========================================================= */
.gallery-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.gallery-grid a{ display:block; overflow:hidden; aspect-ratio:1/1; background:var(--forest-pale); position:relative; }
.gallery-grid img{ width:100%; height:100%; object-fit:cover; transition:.4s ease; }
.gallery-grid a:hover img{ transform:scale(1.08); }
@media(max-width:860px){ .gallery-grid{ grid-template-columns:repeat(2,1fr); } }

/* =========================================================
   PAGE HEADER (iç sayfalar için)
   ========================================================= */
.page-hero{
  background:var(--forest);
  background-image:linear-gradient(160deg, var(--forest) 0%, var(--forest-light) 100%);
  padding:70px 0 50px;
  color:#fff;
  text-align:center;
}
.page-hero h1{ color:#fff; font-size:clamp(1.9rem,3.6vw,2.8rem); margin-bottom:10px; }
.breadcrumbs{ font-size:.85rem; color:rgba(255,255,255,.7); }
.breadcrumbs a{ color:var(--gold-light); }

.entry-content{ max-width:820px; margin:0 auto; }
.entry-content h2,.entry-content h3{ margin-top:1.3em; }
.entry-content img{ margin:1.2em 0; }

/* WordPress blok içerikleri (Galeri, Görsel, Liste vb.) — herhangi bir sayfada kullanılırsa düzgün görünsün */
.entry-content .wp-block-gallery,
.kmt-accordion-body .wp-block-gallery{
	display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:1.2em 0; padding:0; list-style:none;
}
.entry-content .wp-block-image,
.kmt-accordion-body .wp-block-image{ margin:1.2em 0; }
.entry-content .wp-block-gallery figure,
.kmt-accordion-body .wp-block-gallery figure{ margin:0; }
.entry-content .wp-block-gallery img,
.kmt-accordion-body .wp-block-gallery img{ width:100%; height:100%; object-fit:cover; border-radius:4px; display:block; }
.entry-content img, .kmt-accordion-body img{ border-radius:4px; max-width:100%; height:auto; }
.entry-content figcaption, .kmt-accordion-body figcaption{ font-size:.82rem; color:var(--muted); margin-top:8px; text-align:center; }
.entry-content ul, .kmt-accordion-body ul{ list-style:disc; padding-left:22px; margin-bottom:1.1em; }
.entry-content ol, .kmt-accordion-body ol{ padding-left:22px; margin-bottom:1.1em; }
.entry-content li, .kmt-accordion-body li{ margin-bottom:6px; }
.entry-content table{ width:100%; border-collapse:collapse; margin:1.4em 0; font-size:.94rem; }
.entry-content table th, .entry-content table td{ border:1px solid var(--line); padding:10px 14px; text-align:left; }
.entry-content table th{ background:var(--forest); color:#fff; font-weight:600; }
.entry-content table tr:nth-child(even){ background:var(--cream); }
@media(max-width:700px){
	.entry-content .wp-block-gallery, .kmt-accordion-body .wp-block-gallery{ grid-template-columns:repeat(2,1fr); }
}

/* =========================================================
   AKORDİYON (Menülerimiz / Referanslarımız)
   ========================================================= */
.kmt-accordion-container{ max-width:820px; }
.kmt-accordion{ margin-top:10px; }
.kmt-accordion-item{
	border:1px solid var(--line); border-radius:4px; margin-bottom:16px;
	overflow:hidden; background:#fff;
}
.kmt-accordion-item summary{
	cursor:pointer; padding:20px 24px; list-style:none;
	display:flex; align-items:center; justify-content:space-between; gap:14px;
	font-family:var(--font-display); font-size:1.2rem; font-weight:600; color:var(--forest);
	background:var(--cream); transition:.2s ease;
}
.kmt-accordion-item summary::-webkit-details-marker{ display:none; }
.kmt-accordion-item summary::marker{ content:""; }
.kmt-accordion-item summary:hover{ background:var(--forest-pale); }
.kmt-accordion-item[open] summary{ background:var(--forest); color:#fff; }
.kmt-accordion-icon{
	flex-shrink:0; width:30px; height:30px; border-radius:50%; background:var(--gold);
	color:#fff; display:flex; align-items:center; justify-content:center; font-size:1.3rem; line-height:1;
	transition:transform .25s ease;
}
.kmt-accordion-item[open] .kmt-accordion-icon{ transform:rotate(45deg); }
.kmt-accordion-body{ padding:26px 24px; }
.kmt-accordion-body > *:last-child{ margin-bottom:0; }
.kmt-accordion-intro{ margin-bottom:18px; }

/* Kategori içindeki tek tek ürün/firma kartları (yan yana, tıklanınca açılır) */
.kmt-menu-grid{
	display:grid; grid-template-columns:repeat(auto-fill, minmax(170px, 1fr)); gap:18px;
}
.kmt-menu-item{
	border:1px solid var(--line); border-radius:6px; overflow:hidden; background:var(--paper);
	transition:box-shadow .2s ease, transform .2s ease;
}
.kmt-menu-item:hover{ box-shadow:0 10px 20px rgba(22,51,43,.1); transform:translateY(-2px); }
.kmt-menu-item summary{ cursor:pointer; list-style:none; display:block; }
.kmt-menu-item summary::-webkit-details-marker{ display:none; }
.kmt-menu-item summary::marker{ content:""; }
.kmt-menu-item-thumb{
	width:100%; aspect-ratio:1/1; background:var(--forest-pale); overflow:hidden;
}
.kmt-menu-item-thumb img{ width:100%; height:100%; object-fit:cover; display:block; margin:0; }
.kmt-menu-item-placeholder{
	width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:2rem;
}
.kmt-menu-item-name{
	padding:12px 14px; font-weight:600; color:var(--forest); font-size:.92rem;
	display:flex; align-items:center; justify-content:space-between; gap:8px;
}
.kmt-menu-item-plus{
	flex-shrink:0; color:var(--gold); font-size:1.15rem; line-height:1; transition:transform .2s ease;
}
.kmt-menu-item[open] .kmt-menu-item-plus{ transform:rotate(45deg); }
.kmt-menu-item[open]{ border-color:var(--gold); }
.kmt-menu-item-body{
	padding:0 14px 14px; font-size:.86rem; color:var(--muted); line-height:1.55;
}
.kmt-menu-item-body p{ margin-bottom:0; }
@media(max-width:480px){
	.kmt-menu-grid{ grid-template-columns:repeat(2, 1fr); }
}

.kmt-accordion-empty{
	background:var(--cream); border:1px dashed var(--line); border-radius:4px; padding:30px;
}
.kmt-accordion-empty ol{ padding-left:22px; }
.kmt-accordion-empty li{ margin-bottom:8px; color:var(--muted); }
.korfez-size-hint{ color:var(--gold); font-size:.82rem; background:rgba(184,135,59,.1); padding:8px 12px; border-radius:4px; display:inline-block; }

/* =========================================================
   REFERANSLAR IZGARASI (akordiyon değil — düz, yan yana kartlar)
   ========================================================= */
.kmt-ref-intro{ margin-bottom:30px; }
.kmt-ref-grid{
	display:grid; grid-template-columns:repeat(6, 1fr); gap:22px;
}
.kmt-ref-card{
	background:#fff; border:1px solid var(--line); border-radius:8px; padding:22px 16px;
	text-align:center; transition:.25s ease;
}
.kmt-ref-card:hover{ border-color:var(--gold); box-shadow:0 14px 26px rgba(22,51,43,.1); transform:translateY(-4px); }
.kmt-ref-thumb{
	width:100%; aspect-ratio:1/1; border-radius:6px; overflow:hidden;
	background:var(--forest-pale); display:flex; align-items:center; justify-content:center; margin-bottom:12px;
}
.kmt-ref-thumb img{ width:100%; height:100%; object-fit:contain; padding:10px; display:block; }
.kmt-ref-thumb a{ display:block; width:100%; height:100%; }
.kmt-ref-placeholder{ font-size:1.8rem; }
.kmt-ref-name{ font-weight:600; color:var(--forest); font-size:.92rem; }
.kmt-ref-desc{ font-size:.8rem; color:var(--muted); margin-top:4px; }
.kmt-ref-desc p{ margin-bottom:0; }

@media(max-width:1000px){ .kmt-ref-grid{ grid-template-columns:repeat(4, 1fr); } }
@media(max-width:700px){ .kmt-ref-grid{ grid-template-columns:repeat(3, 1fr); gap:14px; } }
@media(max-width:480px){ .kmt-ref-grid{ grid-template-columns:repeat(2, 1fr); } }

/* =========================================================
   BLOG IZGARASI
   ========================================================= */
.kmt-blog-grid{
	display:grid; grid-template-columns:repeat(3, 1fr); gap:30px;
}
.kmt-blog-card{
	display:block; background:#fff; border:1px solid var(--line); border-radius:8px;
	overflow:hidden; transition:.25s ease;
}
.kmt-blog-card:hover{ box-shadow:0 16px 28px rgba(22,51,43,.12); transform:translateY(-4px); border-color:var(--gold); }
.kmt-blog-card-thumb{ aspect-ratio:16/10; overflow:hidden; background:var(--forest-pale); }
.kmt-blog-card-thumb img{ width:100%; height:100%; object-fit:cover; }
.kmt-blog-card-body{ padding:22px; }
.kmt-blog-card-date{ font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; color:var(--gold); font-weight:600; }
.kmt-blog-card-body h2{ font-size:1.15rem; margin:8px 0 10px; }
.kmt-blog-card-body p{ font-size:.9rem; color:var(--muted); margin-bottom:12px; }

@media(max-width:900px){ .kmt-blog-grid{ grid-template-columns:repeat(2, 1fr); } }
@media(max-width:600px){ .kmt-blog-grid{ grid-template-columns:1fr; } }

.kmt-pagination{ margin-top:40px; display:flex; justify-content:center; gap:8px; }
.kmt-pagination .page-numbers{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:38px; height:38px; padding:0 10px; border:1px solid var(--line); border-radius:4px;
	color:var(--forest); font-size:.9rem; font-weight:600;
}
.kmt-pagination .page-numbers.current{ background:var(--forest); color:#fff; border-color:var(--forest); }
.kmt-pagination .page-numbers:hover{ border-color:var(--gold); color:var(--gold); }

/* =========================================================
   SIDEBAR (Hakkımızda / İletişim kutuları - tüm sayfalarda)
   ========================================================= */
.with-sidebar{ display:grid; grid-template-columns:2fr 1fr; gap:56px; align-items:start; }
.widget-box{ background:var(--cream); border:1px solid var(--line); padding:30px; margin-bottom:26px; }
.widget-box h3{ font-size:1.1rem; margin-bottom:14px; position:relative; padding-bottom:10px; }
.widget-box h3::after{ content:""; position:absolute; left:0; bottom:0; width:36px; height:2px; background:var(--gold); }
.widget-box p{ color:var(--muted); font-size:.94rem; }
.contact-list li{ display:flex; gap:10px; margin-bottom:12px; font-size:.92rem; color:var(--charcoal); }
.contact-list strong{ color:var(--forest); }
.widget-box iframe{ width:100%; height:220px; border:0; margin-top:6px; }
@media(max-width:900px){ .with-sidebar{ grid-template-columns:1fr; } }

/* =========================================================
   CONTACT FORM
   ========================================================= */
.contact-form-wrap{ background:#fff; border:1px solid var(--line); padding:40px; }
.form-row{ margin-bottom:18px; }
.form-row label{ display:block; font-size:.82rem; font-weight:600; text-transform:uppercase; letter-spacing:.04em; margin-bottom:8px; color:var(--forest); }
.form-row input, .form-row textarea{
  width:100%; padding:13px 14px; border:1px solid var(--line); background:var(--paper);
  font-family:var(--font-body); font-size:.96rem; border-radius:var(--radius);
}
.form-row input:focus, .form-row textarea:focus{ outline:2px solid var(--gold); outline-offset:1px; }
.form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
@media(max-width:640px){ .form-grid{ grid-template-columns:1fr; } }
.form-msg{ padding:14px 16px; margin-bottom:20px; font-size:.92rem; }
.form-msg.success{ background:var(--forest-pale); color:var(--forest); border:1px solid var(--forest); }
.form-msg.error{ background:#fbe9e6; color:var(--rust); border:1px solid var(--rust); }

/* =========================================================
   FOOTER
   ========================================================= */
.site-footer{ background:var(--forest); color:rgba(255,255,255,.75); padding-top:70px; }
.footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:40px; padding-bottom:50px; border-bottom:1px solid rgba(255,255,255,.12); }
.footer-col h4{ color:#fff; font-size:1rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:18px; }
.footer-col p, .footer-col li{ font-size:.9rem; line-height:1.8; color:rgba(255,255,255,.68); }
.footer-col a:hover{ color:var(--gold-light); }
.footer-logo{ max-height:46px; margin-bottom:16px; }
.footer-social{ display:flex; gap:10px; margin-top:16px; }
.footer-social a{ width:36px; height:36px; border:1px solid rgba(255,255,255,.25); display:flex; align-items:center; justify-content:center; border-radius:50%; }
.footer-social a:hover{ background:var(--gold); border-color:var(--gold); }
.footer-bottom{ display:flex; justify-content:space-between; padding:22px 0; font-size:.82rem; color:rgba(255,255,255,.55); flex-wrap:wrap; gap:8px; }
.footer-service-area{
	border-top:1px solid rgba(255,255,255,.12); padding:18px 0; font-size:.82rem; color:rgba(255,255,255,.6); line-height:1.6;
}
.footer-service-area strong{ color:rgba(255,255,255,.85); }
@media(max-width:900px){ .footer-grid{ grid-template-columns:1fr 1fr; } }
@media(max-width:560px){ .footer-grid{ grid-template-columns:1fr; } }

/* Accessibility */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:2px solid var(--gold); outline-offset:2px;
}
@media (prefers-reduced-motion: reduce){
  *{ animation:none !important; transition:none !important; }
}

/* =========================================================
   ANİMASYONLAR — kaydırınca beliren öğeler, hero giriş efekti,
   sayaç animasyonu, buton/kart hover zenginleştirmeleri
   ========================================================= */
.reveal{
	opacity:0; transform:translateY(28px);
	transition:opacity .7s cubic-bezier(.22,.8,.32,1), transform .7s cubic-bezier(.22,.8,.32,1);
}
.reveal.is-visible{ opacity:1; transform:translateY(0); }

.hero-content{ animation: korfezHeroIn 1s cubic-bezier(.22,.8,.32,1) both; }
.hero-content .eyebrow{ animation: korfezHeroIn .8s cubic-bezier(.22,.8,.32,1) both .1s; }
.hero-content h2{ animation: korfezHeroIn .9s cubic-bezier(.22,.8,.32,1) both .18s; }
.hero-content p{ animation: korfezHeroIn .9s cubic-bezier(.22,.8,.32,1) both .26s; }
.hero-actions{ animation: korfezHeroIn .9s cubic-bezier(.22,.8,.32,1) both .34s; }

@keyframes korfezHeroIn{
	from{ opacity:0; transform:translateY(22px); }
	to{ opacity:1; transform:translateY(0); }
}

.laurel-divider svg{ animation: korfezLaurelIn 1s ease both; }
@keyframes korfezLaurelIn{
	from{ opacity:0; transform:scaleX(.7); }
	to{ opacity:.85; transform:scaleX(1); }
}

/* Buton hover'ına hafif kabarma efekti */
.btn{ position:relative; overflow:hidden; }
.btn::after{
	content:""; position:absolute; inset:0; background:rgba(255,255,255,.18);
	transform:scaleX(0); transform-origin:left; transition:transform .35s ease; pointer-events:none;
}
.btn:hover::after{ transform:scaleX(1); }

/* Kartlarda hover'da ikon hafif döner/büyür */
.feature-card{ transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.feature-card:hover .feature-icon{ transform:scale(1.1) rotate(-4deg); }
.feature-icon{ transition:transform .3s ease; }

/* CTA şeridinde hafif nefes alan arka plan parıltısı */
.cta-strip{ position:relative; overflow:hidden; }
.cta-strip::before{
	content:""; position:absolute; width:340px; height:340px; border-radius:50%;
	background:radial-gradient(circle, rgba(184,135,59,.25), transparent 70%);
	top:-120px; right:-80px; animation: korfezPulse 6s ease-in-out infinite;
}
@keyframes korfezPulse{
	0%,100%{ transform:scale(1); opacity:.7; }
	50%{ transform:scale(1.25); opacity:1; }
}

/* Logo/rozet sayaç animasyonu bittiğinde küçük vurgulama */
.about-badge strong{ display:inline-block; }
