/*
Theme Name: CELEN.ES Blog
Theme URI: https://celen.es/blog
Author: CELEN.ES
Author URI: https://celen.es
Description: CELEN.ES dijital davet ve anı platformu için mobil öncelikli, modern ve hafif WordPress blog teması.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: celenes-blog
Tags: blog, news, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/
:root {
  --ce-blue: #19bfe5;
  --ce-blue-dark: #087e99;
  --ce-blue-pale: #e8f9fd;
  --ce-ink: #101820;
  --ce-muted: #687782;
  --ce-line: #e3eef2;
  --ce-surface: #ffffff;
  --ce-soft: #f7fcfe;
  --ce-pink: #f6dce9;
  --ce-radius: 22px;
  --ce-shadow: 0 12px 34px rgba(8,126,153,.08);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0; color: var(--ce-ink); background: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px; line-height: 1.7; -webkit-font-smoothing: antialiased;
}
a { color: var(--ce-blue-dark); text-decoration: none; transition: color .18s ease, background .18s ease, border-color .18s ease; }
a:hover { color: #055d72; }
img { max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
button, input[type="submit"], .button, .wp-block-button__link {
  border: 0; border-radius: 999px; background: var(--ce-blue); color: #fff; padding: 12px 20px;
  font-weight: 800; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
button:hover, input[type="submit"]:hover, .button:hover, .wp-block-button__link:hover { background: var(--ce-blue-dark); color: #fff; transform: translateY(-1px); box-shadow: 0 8px 22px rgba(25,191,229,.22); }
:focus-visible { outline: 3px solid rgba(25,191,229,.42); outline-offset: 3px; }
.ce-container { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.ce-topline { height: 5px; background: linear-gradient(90deg, var(--ce-blue-dark), var(--ce-blue), #8be5f6); }
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.94); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(227,238,242,.9); }
.header-inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.site-branding { display: flex; align-items: center; gap: 12px; min-width: 0; }
.custom-logo-link { display: inline-flex; flex: 0 0 auto; }
.custom-logo { display: block; width: auto; max-width: 170px; max-height: 48px; object-fit: contain; }
.site-title { margin: 0; font-size: 24px; line-height: 1.1; font-weight: 950; letter-spacing: -.8px; }
.site-title a { color: var(--ce-ink); }
.site-description { margin: 4px 0 0; color: var(--ce-muted); font-size: 12px; line-height: 1.3; }
.header-actions { display: flex; align-items: center; gap: 12px; }
.ce-menu-toggle { display: none; width: 44px; height: 44px; padding: 0; align-items: center; justify-content: center; background: var(--ce-blue-pale); color: var(--ce-blue-dark); border: 1px solid #cceff7; box-shadow: none; font-size: 22px; }
.primary-navigation ul { display: flex; align-items: center; gap: 6px; list-style: none; padding: 0; margin: 0; }
.primary-navigation a { display: inline-flex; align-items: center; min-height: 42px; padding: 9px 14px; border-radius: 999px; color: var(--ce-ink); font-size: 14px; font-weight: 800; }
.primary-navigation a:hover, .primary-navigation .current-menu-item > a { background: var(--ce-blue-pale); color: var(--ce-blue-dark); }
.header-cta { display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; padding: 11px 18px; background: var(--ce-blue-pale); color: var(--ce-blue-dark); border: 1px solid #c9edf6; border-radius: 999px; font-weight: 900; font-size: 13px; }
.header-cta:hover { background: var(--ce-blue); color: #fff; }
.hero { position: relative; overflow: hidden; padding: 68px 0 58px; background: linear-gradient(120deg, #f4fcfe 0%, #fff 53%, #effbfe 100%); border-bottom: 1px solid var(--ce-line); }
.hero:before, .hero:after { content: ""; position: absolute; border-radius: 50%; pointer-events: none; }
.hero:before { width: 300px; height: 300px; right: -70px; top: -120px; background: rgba(25,191,229,.10); }
.hero:after { width: 170px; height: 170px; right: 15%; bottom: -120px; background: rgba(25,191,229,.08); }
.hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1.15fr) minmax(260px,.85fr); gap: 42px; align-items: center; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--ce-blue-dark); background: #fff; border: 1px solid #d6f2f8; border-radius: 999px; padding: 7px 12px; font-size: 12px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.hero h1 { max-width: 720px; margin: 18px 0 14px; font-size: clamp(34px, 5vw, 58px); line-height: 1.06; letter-spacing: -.055em; font-weight: 950; }
.hero p { max-width: 620px; margin: 0; color: var(--ce-muted); font-size: clamp(16px, 1.7vw, 19px); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.button-secondary { display: inline-flex; align-items: center; justify-content: center; border: 1px solid #d9edf2; border-radius: 999px; padding: 11px 18px; color: var(--ce-ink); font-weight: 850; background: #fff; }
.hero-art { min-height: 250px; display: grid; place-items: center; position: relative; }
.invite-stack { width: min(330px, 100%); aspect-ratio: 1.08 / 1; position: relative; }
.invite-card { position: absolute; width: 66%; height: 78%; border: 1px solid #d3f0f7; border-radius: 20px; background: rgba(255,255,255,.92); box-shadow: var(--ce-shadow); }
.invite-card.one { left: 4%; top: 12%; transform: rotate(-9deg); background: linear-gradient(160deg,#fff,#eafaff); }
.invite-card.two { right: 3%; top: 2%; transform: rotate(8deg); background: linear-gradient(160deg,#fff,#f6fcfe); }
.invite-card.three { left: 17%; top: 7%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 18px; transform: rotate(-1deg); }
.invite-heart { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; color: var(--ce-blue-dark); background: var(--ce-blue-pale); font-size: 22px; margin-bottom: 8px; }
.invite-card small { color: var(--ce-blue-dark); letter-spacing: .16em; font-size: 9px; font-weight: 900; }
.invite-card strong { display: block; font-size: clamp(16px,2vw,22px); line-height: 1.2; margin-top: 6px; }
.invite-card span { font-size: 10px; color: var(--ce-muted); margin-top: 8px; }
.section { padding: 54px 0; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 24px; }
.section-heading h2 { margin: 0; font-size: clamp(25px,3vw,34px); line-height: 1.15; font-weight: 950; letter-spacing: -.04em; }
.section-heading p { margin: 8px 0 0; color: var(--ce-muted); }
.post-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.post-card { overflow: hidden; border: 1px solid var(--ce-line); border-radius: var(--ce-radius); background: #fff; box-shadow: 0 5px 20px rgba(8,126,153,.035); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.post-card:hover { transform: translateY(-4px); border-color: #c4edf6; box-shadow: var(--ce-shadow); }
.post-card-image { display: block; aspect-ratio: 1.52 / 1; overflow: hidden; background: var(--ce-soft); }
.post-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.post-card:hover .post-card-image img { transform: scale(1.035); }
.post-card-placeholder { width: 100%; height: 100%; display: grid; place-items: center; color: var(--ce-blue-dark); background: radial-gradient(circle at 75% 20%,rgba(25,191,229,.18),transparent 35%),linear-gradient(135deg,#f6fcfe,#e9f9fd); font-size: 36px; }
.post-card-body { padding: 22px; }
.post-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--ce-muted); font-size: 12px; font-weight: 750; }
.post-category { background: var(--ce-blue-pale); color: var(--ce-blue-dark); border-radius: 999px; padding: 4px 9px; }
.post-card h2, .post-card h3 { margin: 12px 0 8px; font-size: 22px; line-height: 1.25; letter-spacing: -.035em; font-weight: 900; }
.post-card h2 a, .post-card h3 a { color: var(--ce-ink); }
.post-card p { margin: 0 0 14px; color: var(--ce-muted); font-size: 14px; }
.read-more { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 900; }
.content-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 38px; align-items: start; }
.content-main { min-width: 0; }
.sidebar { position: sticky; top: 110px; }
.widget { border: 1px solid var(--ce-line); border-radius: 18px; padding: 20px; margin-bottom: 18px; background: #fff; }
.widget-title { margin: 0 0 12px; font-size: 16px; font-weight: 900; }
.widget ul { margin: 0; padding-left: 18px; }
.widget li { margin: 7px 0; color: var(--ce-muted); }
.search-form { display: flex; gap: 8px; }
.search-form label { flex: 1; min-width: 0; }
.search-form input[type="search"] { width: 100%; min-height: 44px; padding: 10px 13px; border: 1px solid var(--ce-line); border-radius: 12px; outline: 0; }
.search-form input[type="search"]:focus { border-color: var(--ce-blue); box-shadow: 0 0 0 3px rgba(25,191,229,.12); }
.pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 38px; }
.pagination .page-numbers { min-width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--ce-line); border-radius: 50%; color: var(--ce-ink); font-weight: 800; }
.pagination .current, .pagination a:hover { color: #fff; background: var(--ce-blue); border-color: var(--ce-blue); }
.single-hero { padding: 42px 0 26px; }
.single-hero h1 { max-width: 900px; margin: 14px 0; font-size: clamp(32px,5vw,54px); line-height: 1.1; letter-spacing: -.05em; font-weight: 950; }
.single-featured { overflow: hidden; border-radius: 24px; margin-top: 26px; background: var(--ce-soft); }
.single-featured img { display: block; width: 100%; max-height: 620px; object-fit: cover; }
.entry-content { font-size: 18px; line-height: 1.85; overflow-wrap: anywhere; }
.entry-content > * { max-width: 820px; margin-left: auto; margin-right: auto; }
.entry-content > .alignwide { max-width: 1040px; }
.entry-content > .alignfull { max-width: none; }
.entry-content h2, .entry-content h3 { line-height: 1.2; margin-top: 1.7em; letter-spacing: -.035em; }
.entry-content p { margin-top: 0; margin-bottom: 1.35em; }
.entry-content img { border-radius: 14px; }
.entry-content blockquote { margin: 30px auto; padding: 18px 24px; border-left: 4px solid var(--ce-blue); background: var(--ce-soft); border-radius: 0 14px 14px 0; color: #41515a; }
.entry-content pre { overflow-x: auto; border-radius: 14px; padding: 18px; background: #101820; color: #eafaff; }
.entry-content table { width: 100%; border-collapse: collapse; }
.entry-content td, .entry-content th { border: 1px solid var(--ce-line); padding: 10px; }
.entry-footer { border-top: 1px solid var(--ce-line); margin-top: 35px; padding-top: 20px; color: var(--ce-muted); }
.author-box { display: flex; gap: 16px; padding: 22px; margin: 28px 0; border: 1px solid var(--ce-line); border-radius: 18px; background: var(--ce-soft); }
.author-avatar img { border-radius: 50%; }
.author-box h3 { margin: 0 0 5px; }
.author-box p { margin: 0; color: var(--ce-muted); }
.post-navigation { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 28px 0; }
.post-navigation a { display: block; padding: 16px; border: 1px solid var(--ce-line); border-radius: 16px; font-weight: 800; }
.comments-area { margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--ce-line); }
.comments-title { margin: 0 0 22px; font-size: 26px; font-weight: 950; }
.comment-list { list-style: none; padding: 0; margin: 0; }
.comment-list .comment { margin: 14px 0; padding: 18px; border: 1px solid var(--ce-line); border-radius: 16px; background: #fff; }
.comment-author { display: flex; align-items: center; gap: 10px; font-weight: 900; }
.comment-author .avatar { border-radius: 50%; }
.comment-meta { color: var(--ce-muted); font-size: 12px; }
.comment-content { margin-top: 12px; }
.comment-respond { padding: 22px; border-radius: 18px; background: var(--ce-soft); border: 1px solid var(--ce-line); }
.comment-respond label { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 850; }
.comment-respond input[type="text"], .comment-respond input[type="email"], .comment-respond input[type="url"], .comment-respond textarea { width: 100%; padding: 13px 14px; border: 1px solid #d9e8ed; border-radius: 12px; background: #fff; color: var(--ce-ink); }
.comment-respond textarea { min-height: 150px; resize: vertical; }
.comment-form { display: grid; gap: 14px; }
.comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 9px; font-size: 13px; color: var(--ce-muted); }
.comment-form-cookies-consent input { margin-top: 7px; }
.site-footer { margin-top: 40px; padding: 48px 0 22px; background: #f5fbfd; border-top: 1px solid var(--ce-line); }
.footer-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 30px; }
.footer-brand { font-size: 21px; font-weight: 950; letter-spacing: -.05em; }
.footer-title { margin: 0 0 12px; font-size: 14px; font-weight: 950; }
.footer-links { list-style: none; padding: 0; margin: 0; }
.footer-links li { margin: 7px 0; }
.footer-bottom { display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--ce-line); margin-top: 28px; padding-top: 18px; color: var(--ce-muted); font-size: 12px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.alignleft { float: left; margin: .5em 1.5em .5em 0; }
.alignright { float: right; margin: .5em 0 .5em 1.5em; }
.aligncenter { display: block; margin-inline: auto; }
.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { color: var(--ce-muted); font-size: 13px; }
.wp-block-image figcaption { color: var(--ce-muted); font-size: 13px; text-align: center; }
.wp-block-quote { border-left: 4px solid var(--ce-blue); padding-left: 18px; }
.wp-block-separator { border: 0; height: 1px; background: var(--ce-line); }
.wp-block-table { overflow-x: auto; }
.wp-block-code, .wp-block-preformatted { overflow-x: auto; }
.wp-block-search__input { min-width: 0; border: 1px solid var(--ce-line); border-radius: 12px; padding: 10px 12px; }
.wp-block-search__button { border-radius: 999px; }
.wp-block-tag-cloud a { display: inline-block; margin: 3px; padding: 5px 10px; background: var(--ce-blue-pale); border-radius: 999px; font-size: 12px !important; }
@media (max-width: 980px) {
  .header-inner { min-height: 72px; }
  .primary-navigation { display: none; position: absolute; top: 100%; left: 0; right: 0; padding: 12px 20px 18px; background: #fff; border-bottom: 1px solid var(--ce-line); box-shadow: 0 14px 28px rgba(8,126,153,.08); }
  .primary-navigation.is-open { display: block; }
  .primary-navigation ul { align-items: stretch; flex-direction: column; gap: 4px; }
  .primary-navigation a { display: flex; width: 100%; }
  .ce-menu-toggle { display: inline-flex; }
  .header-cta { display: none; }
  .hero-inner { grid-template-columns: 1fr; gap: 22px; }
  .hero-art { min-height: 210px; }
  .invite-stack { width: min(280px, 80%); }
  .post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
  .content-layout { grid-template-columns: 1fr; }
  .sidebar { position: static; }
}
@media (max-width: 620px) {
  .ce-container { width: min(100% - 28px, 1160px); }
  .header-inner { min-height: 66px; gap: 10px; }
  .site-title { font-size: 21px; }
  .site-description { font-size: 10px; }
  .custom-logo { max-width: 135px; max-height: 42px; }
  .header-actions { gap: 7px; }
  .ce-menu-toggle { width: 42px; height: 42px; }
  .hero { padding: 42px 0 34px; }
  .hero h1 { font-size: clamp(34px, 10vw, 44px); }
  .hero-art { min-height: 185px; }
  .invite-stack { width: min(250px, 85%); }
  .section { padding: 38px 0; }
  .section-heading { align-items: start; flex-direction: column; }
  .post-grid { grid-template-columns: 1fr; gap: 16px; }
  .post-card-body { padding: 18px; }
  .content-layout { gap: 22px; }
  .single-hero { padding: 30px 0 16px; }
  .entry-content { font-size: 16px; }
  .entry-content > .alignwide, .entry-content > .alignfull { width: 100%; }
  .footer-grid { grid-template-columns: 1fr; gap: 22px; }
  .footer-bottom { flex-direction: column; }
  .post-navigation { grid-template-columns: 1fr; }
  .author-box { padding: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
