/* ===== KUTLAMA KULTURU REHBERI — styles.css ===== */

/* ---------- Reset & Base ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:70px;font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;color:#2c2117;background:#faf6f0;line-height:1.75;overflow-x:hidden}

/* ---------- Skip Link ---------- */
.skip-link{position:absolute;top:-100%;left:1rem;background:#5a3e28;color:#fff;padding:.5rem 1rem;z-index:10000;border-radius:0 0 .25rem .25rem;font-size:.875rem;text-decoration:none}
.skip-link:focus{top:0}

/* ---------- Decorative Pattern ---------- */
.deco-pattern{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.03}

/* ---------- Layout ---------- */
.page-wrap{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
.container{max-width:960px;margin:0 auto;padding:0 1.25rem}
.container-wide{max-width:1100px;margin:0 auto;padding:0 1.25rem}

/* ---------- Typography ---------- */
h1,h2,h3,h4{font-weight:700;color:#3b2714;line-height:1.3}
h1{font-size:2rem;margin-bottom:1rem}
h2{font-size:1.55rem;margin-bottom:.75rem}
h3{font-size:1.2rem;margin-bottom:.5rem}
p{margin-bottom:1rem}
a{color:#7a4e2d;text-decoration:underline;text-underline-offset:2px}
a:hover{color:#5a3518}
a:focus-visible{outline:2px solid #c48d5e;outline-offset:2px;border-radius:2px}
ul,ol{padding-left:1.25rem;margin-bottom:1rem}
li{margin-bottom:.35rem}

/* ---------- Header ---------- */
.site-header{background:linear-gradient(135deg,#3b2714 0%,#5a3e28 100%);color:#f5ebe0;padding:.75rem 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 12px rgba(59,39,20,.25)}
.header-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
.site-logo{font-size:1.15rem;font-weight:700;color:#f5ebe0;text-decoration:none;letter-spacing:.02em;white-space:nowrap}
.site-logo:hover{color:#e8cfa8}

/* ---------- Nav ---------- */
.main-nav{display:flex;align-items:center}
.nav-toggle{display:none;background:none;border:none;color:#f5ebe0;cursor:pointer;padding:.4rem;width:36px;height:36px;position:relative}
.nav-toggle:focus-visible{outline:2px solid #c48d5e;outline-offset:2px}

/* Hamburger / X icon */
.nav-icon{display:block;width:22px;height:2px;background:#f5ebe0;position:relative;transition:background .2s}
.nav-icon::before,.nav-icon::after{content:'';position:absolute;left:0;width:22px;height:2px;background:#f5ebe0;transition:transform .3s,top .3s}
.nav-icon::before{top:-7px}
.nav-icon::after{top:7px}
.nav-toggle[aria-expanded="true"] .nav-icon{background:transparent}
.nav-toggle[aria-expanded="true"] .nav-icon::before{top:0;transform:rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-icon::after{top:0;transform:rotate(-45deg)}

.nav-list{display:flex;list-style:none;gap:.1rem;padding:0;margin:0;flex-wrap:wrap}
.nav-list a{color:#e8d5bf;text-decoration:none;padding:.35rem .6rem;border-radius:.25rem;font-size:.82rem;transition:background .2s,color .2s;white-space:nowrap}
.nav-list a:hover,.nav-list a:focus-visible{background:rgba(255,255,255,.12);color:#fff}

/* Active nav state */
.nav-list a.active{background:rgba(255,255,255,.18);color:#fff;font-weight:600}

@media(max-width:860px){
  .nav-toggle{display:flex;align-items:center;justify-content:center}
  .header-inner{position:relative}
  .nav-list{display:none;flex-direction:column;position:absolute;top:100%;right:0;left:0;background:#3b2714;padding:.5rem 0;border-radius:0 0 .5rem .5rem;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:200}
  .nav-list.open{display:flex}
  .nav-list li{border-bottom:1px solid rgba(255,255,255,.07)}
  .nav-list li:last-child{border-bottom:none}
  .nav-list a{padding:.7rem 1.25rem;font-size:.95rem;display:block}
  .nav-list a.active{background:rgba(255,255,255,.12)}
}

/* ---------- Hero ---------- */
.hero{background:linear-gradient(170deg,#5a3e28 0%,#7a5a3a 40%,#c48d5e 100%);color:#faf6f0;padding:4rem 0 3.5rem;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-40%;right:-20%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(244,218,178,.15) 0%,transparent 70%);pointer-events:none}
.hero h1{color:#faf6f0;font-size:2.25rem;margin-bottom:.75rem}
.hero .subtitle{font-size:1.1rem;opacity:.9;max-width:600px;margin:0 auto 1.5rem}

/* ---------- Sections ---------- */
.section{padding:3rem 0}
.section:nth-child(even){background:#f3ece2}
.section-header{text-align:center;margin-bottom:2rem}
.section-header p{max-width:640px;margin:0 auto;color:#6b5240}

/* ---------- Cream Panels ---------- */
.panel{background:#fffbf5;border:1px solid #e8d5bf;border-radius:.5rem;padding:1.5rem;margin-bottom:1.25rem;box-shadow:0 1px 4px rgba(59,39,20,.06);transition:box-shadow .25s}
.panel:hover{box-shadow:0 3px 12px rgba(59,39,20,.1)}
.panel h3{color:#5a3518}

/* ---------- Content with Image ---------- */
.content-with-image{display:flex;gap:1.5rem;align-items:flex-start;margin-bottom:1.25rem}
.content-with-image .panel{margin-bottom:0;flex:1}
.content-with-image img{width:280px;max-width:38%;height:auto;border-radius:.5rem;object-fit:cover;border:1px solid #e8d5bf;background:#e8d5bf}
.content-with-image.image-right{flex-direction:row}
.content-with-image.image-left{flex-direction:row-reverse}
@media(max-width:640px){
  .content-with-image,
  .content-with-image.image-left,
  .content-with-image.image-right{flex-direction:column}
  .content-with-image img{max-width:100%;width:100%;max-height:220px}
}

/* ---------- Kutlama Stili Secici ---------- */
.secici-wrap{max-width:700px;margin:0 auto}
.secici-buttons{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:1.5rem}
.secici-btn{background:#e8d5bf;border:2px solid transparent;color:#3b2714;padding:.55rem 1.2rem;border-radius:2rem;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .25s}
.secici-btn:hover{background:#d4b896}
.secici-btn:focus-visible{outline:2px solid #c48d5e;outline-offset:2px}
.secici-btn[aria-pressed="true"]{background:#5a3e28;color:#faf6f0;border-color:#c48d5e}
.secici-result{background:#fffbf5;border:1px solid #e8d5bf;border-radius:.5rem;padding:1.5rem;min-height:120px;transition:opacity .3s}
.secici-result[hidden]{display:none}
.secici-result h3{margin-bottom:.75rem}
.secici-result dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem .75rem}
.secici-result dt{font-weight:600;color:#5a3518}
.secici-result dd{margin:0}

/* ---------- FAQ / Accordion ---------- */
.faq-list{max-width:740px;margin:0 auto}
.faq-item{border:1px solid #e8d5bf;border-radius:.5rem;margin-bottom:.6rem;overflow:hidden}
.faq-question{width:100%;background:#fffbf5;border:none;padding:1rem 1.25rem;text-align:left;font-size:1rem;font-weight:600;color:#3b2714;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s}
.faq-question:hover{background:#f3ece2}
.faq-question:focus-visible{outline:2px solid #c48d5e;outline-offset:-2px}
.faq-icon{font-size:1.2rem;transition:transform .3s;flex-shrink:0;margin-left:.75rem}
.faq-question[aria-expanded="true"] .faq-icon{transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s ease;padding:0 1.25rem}
.faq-answer.open{max-height:600px;padding:1rem 1.25rem}

/* ---------- Footer ---------- */
.site-footer{background:#3b2714;color:#d4b896;padding:2rem 0;font-size:.85rem}
.footer-inner{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;align-items:flex-start}
.footer-col{min-width:180px}
.footer-col h4{color:#e8d5bf;margin-bottom:.5rem;font-size:.95rem}
.footer-col a{color:#d4b896;text-decoration:none}
.footer-col a:hover{color:#f5ebe0;text-decoration:underline}
.footer-col ul{list-style:none;padding:0}
.footer-col li{margin-bottom:.3rem}
.footer-bottom{text-align:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);color:#a8896e;font-size:.8rem}

/* ---------- Contact Page ---------- */
.contact-info-section{margin-bottom:2.5rem}
.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}

/* ---------- Form Standalone ---------- */
.form-section{max-width:640px;margin:0 auto}
.form-section h2{text-align:center;margin-bottom:1.5rem}

/* ---------- Forms ---------- */
.form-group{margin-bottom:1.1rem}
.form-group label{display:block;font-weight:600;margin-bottom:.3rem;color:#3b2714;font-size:.9rem}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:.6rem .8rem;border:1px solid #d4b896;border-radius:.35rem;background:#fffbf5;font-size:.95rem;color:#2c2117;font-family:inherit;transition:border-color .2s,box-shadow .2s}
.form-group input:focus,.form-group textarea:focus{border-color:#c48d5e;box-shadow:0 0 0 3px rgba(196,141,94,.2);outline:none}
.form-group textarea{resize:vertical;min-height:110px}
.form-group .field-error{color:#b5361c;font-size:.8rem;margin-top:.2rem;display:none}
.form-group.has-error input,.form-group.has-error textarea{border-color:#b5361c}
.form-group.has-error .field-error{display:block}
.form-consent{display:flex;gap:.5rem;align-items:flex-start;margin-bottom:1.25rem}
.form-consent input[type="checkbox"]{margin-top:.25rem;accent-color:#5a3e28;width:1.1rem;height:1.1rem;flex-shrink:0}
.form-consent label{font-size:.85rem;font-weight:400;color:#4a3828}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.btn-submit{display:block;width:100%;background:linear-gradient(135deg,#5a3e28,#7a5a3a);color:#faf6f0;border:none;padding:.7rem 2rem;border-radius:.35rem;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s,box-shadow .2s}
.btn-submit:hover{opacity:.9;box-shadow:0 2px 8px rgba(59,39,20,.2)}
.btn-submit:focus-visible{outline:2px solid #c48d5e;outline-offset:2px}
.btn-submit:disabled{opacity:.5;cursor:not-allowed}
.form-feedback{margin-top:1rem;padding:.85rem 1rem;border-radius:.35rem;font-size:.9rem;display:none}
.form-feedback.success{display:block;background:#e6f4e6;color:#1e6e1e;border:1px solid #a3d9a3}
.form-feedback.error{display:block;background:#fde8e8;color:#b5361c;border:1px solid #f0b8b8}

/* ---------- Legal Pages ---------- */
.legal-content{max-width:760px;margin:0 auto;padding:2.5rem 1.25rem}
.legal-content h1{margin-bottom:1.5rem}
.legal-content h2{margin-top:2rem}
.legal-content h3{margin-top:1.5rem}

/* ---------- Sitemap Page ---------- */
.sitemap-list{list-style:none;padding:0}
.sitemap-list li{margin-bottom:.5rem}
.sitemap-list a{font-size:1.05rem}

/* ---------- 404 ---------- */
.error-page{text-align:center;padding:5rem 1.25rem}
.error-page h1{font-size:4rem;color:#c48d5e}
.error-page p{font-size:1.15rem;margin-bottom:1.5rem}
.error-page a{display:inline-block;background:#5a3e28;color:#faf6f0;padding:.6rem 1.5rem;border-radius:.35rem;text-decoration:none;font-weight:600}
.error-page a:hover{background:#7a5a3a}

/* ---------- Cookie Banner ---------- */
.cookie-banner{position:fixed;bottom:0;left:0;width:100%;background:#3b2714;color:#e8d5bf;padding:1.25rem;z-index:9999;box-shadow:0 -2px 20px rgba(0,0,0,.3);transform:translateY(100%);transition:transform .35s ease}
.cookie-banner.visible{transform:translateY(0)}
.cookie-banner[hidden]{display:none}
.cookie-inner{max-width:960px;margin:0 auto}
.cookie-text{font-size:.88rem;margin-bottom:1rem;line-height:1.6}
.cookie-text a{color:#e8cfa8}
.cookie-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}
.cookie-btn{padding:.5rem 1.2rem;border:none;border-radius:.3rem;font-size:.88rem;font-weight:600;cursor:pointer;transition:opacity .2s}
.cookie-btn:focus-visible{outline:2px solid #c48d5e;outline-offset:2px}
.cookie-accept{background:#c48d5e;color:#fff}
.cookie-reject{background:#8b7360;color:#fff}
.cookie-settings-btn{background:transparent;color:#e8d5bf;border:1px solid #8b7360;text-decoration:none}
.cookie-settings-panel{display:none;margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.15)}
.cookie-settings-panel.open{display:block}
.cookie-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.45rem 0;font-size:.85rem}
.cookie-toggle-row span{flex:1}
.cookie-toggle-row em{font-style:normal;color:#a8896e;font-size:.8rem;margin-left:.5rem}
.cookie-switch{position:relative;width:42px;height:22px;flex-shrink:0;margin-left:.75rem}
.cookie-switch input{opacity:0;width:0;height:0;position:absolute}
.cookie-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#6b5240;border-radius:22px;transition:background .2s}
.cookie-switch .slider::before{content:'';position:absolute;height:16px;width:16px;left:3px;bottom:3px;background:#d4b896;border-radius:50%;transition:transform .2s}
.cookie-switch input:checked+.slider{background:#c48d5e}
.cookie-switch input:checked+.slider::before{transform:translateX(20px)}
.cookie-switch input:disabled+.slider{opacity:.5;cursor:not-allowed}
.cookie-switch input:focus-visible+.slider{box-shadow:0 0 0 2px #c48d5e}
.cookie-save{margin-top:.75rem;background:#c48d5e;color:#fff;padding:.45rem 1rem;border:none;border-radius:.3rem;font-size:.85rem;font-weight:600;cursor:pointer}
.cookie-reopen{display:inline-block;background:none;border:1px solid #c48d5e;color:#c48d5e;padding:.4rem .9rem;border-radius:.3rem;font-size:.85rem;cursor:pointer;font-weight:600;transition:background .2s,color .2s}
.cookie-reopen:hover{background:#c48d5e;color:#fff}

/* ---------- Animations ---------- */
.fade-in{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.fade-in.visible{opacity:1;transform:translateY(0)}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .fade-in{opacity:1;transform:none}
  .cookie-banner{transition:none}
}

/* ---------- Print ---------- */
@media print{
  .site-header,.site-footer,.cookie-banner,.secici-wrap{display:none}
  body{font-size:12pt;color:#000;background:#fff}
  a{color:#000;text-decoration:underline}
}
