/* Shared visual language: forest, warm ivory and restrained brass. */
:root { --siesta-dark:#203e35; --siesta-deep:#162e27; --siesta-olive:#315448; --siesta-cream:#f7f7f2; --siesta-gold:#ba985e; --siesta-gold-light:#e2c99d; --siesta-text:#263d35; --surface-border:#e0e6df; }
html { scroll-behavior:smooth; scroll-padding-top:110px; }
body { font-size: .9375rem; line-height:1.65; letter-spacing:0; }
a, button, input, select { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid #ae8240 !important; outline-offset:4px; }
.skip-link { position:fixed; top:-80px; left:16px; z-index:2000; background:white; padding:12px 20px; color:var(--siesta-dark); }
.skip-link:focus { top:12px; }
.navbar-siesta { background:#fff; border-bottom:1px solid var(--surface-border); backdrop-filter:none; padding-block:14px !important; box-shadow:none !important; }
.navbar-siesta .navbar-brand .text-white { color:var(--siesta-dark) !important; }
.navbar-siesta .brand-logo-img { height:42px; border:0; box-shadow:none !important; }
.navbar-siesta .nav-link-siesta { color:#506159 !important; font-size:.8rem; padding:10px !important; letter-spacing:0; }
.navbar-siesta .nav-link-siesta:hover { background:#eff3ee; color:var(--siesta-dark) !important; }
.navbar-siesta .btn-outline-light { color:var(--siesta-dark); border-color:#cdd8d0; }
.navbar-siesta .btn-outline-light:hover { background:#edf2ec; }
.navbar-siesta .btn-outline-warning { color:#765924; border-color:#d6c19c; }
.navbar-siesta .navbar-toggler { filter:invert(1); }
.navbar-siesta .btn-gold-cta { padding:10px 16px; font-size:.78rem; }
.btn, .btn-gold-cta, .social-btn-instagram, .social-btn-phone { border-radius:8px !important; font-size:.875rem; font-weight:600; transition:background .18s, border-color .18s, box-shadow .18s; }
.btn-siesta { background:var(--siesta-dark); border:1px solid var(--siesta-dark); box-shadow:none; }
.btn-siesta:hover { background:var(--siesta-olive); transform:none; box-shadow:0 3px 10px #203e3515; }
.btn-siesta-outline { border-width:1px; }
.btn-gold-cta { background:#dfc69a; box-shadow:none; color:#243c32 !important; justify-content:center; padding:13px 22px; }
.btn-gold-cta:hover { background:#ead5b0; transform:none; filter:none; box-shadow:none; }
.card-custom { border:1px solid var(--surface-border) !important; border-radius:14px; box-shadow:0 4px 20px #203e3505 !important; }
main.container { padding-top:40px !important; padding-bottom:56px !important; }
main.container h2.font-serif-brand { font-family:inherit; letter-spacing:-.7px; font-size:1.8rem; }
main.container .text-siesta-gold { color:#876832 !important; }
main.container .loyalty-card .text-siesta-gold { color:var(--siesta-gold-light) !important; }
.form-control, .form-select, .input-group-text { min-height:46px; border-color:#d9e1da; border-radius:8px; font-size:.9rem; }
.form-control:focus, .form-select:focus { border-color:#698878; box-shadow:0 0 0 3px #203e3512; }
.form-label { margin-bottom:8px; }
.table { --bs-table-bg:transparent; --bs-table-border-color:#e6ebe5; font-size:.85rem; vertical-align:middle; }
.table > :not(caption) > * > * { padding:15px 16px; }
.table thead th { background:#f3f5f0; color:#607067; font-size:.72rem; font-weight:600; letter-spacing:.4px; white-space:nowrap; }
.dropdown-menu { padding:8px; border:1px solid var(--surface-border) !important; box-shadow:0 12px 35px #203e3514 !important; }
.dropdown-item { border-radius:6px; font-size:.85rem; }
.dropdown-item:active { background:var(--siesta-dark); }
.auth-shell { padding-block:20px 30px; }
.auth-shell .card { padding:36px !important; }
.auth-title { font-size:1.65rem; letter-spacing:-.6px; font-weight:600; margin:16px 0 10px; }
.auth-shell .btn { box-shadow:none !important; }
.hero-siesta { background:#f4f3ec; padding:88px 0 76px; color:var(--siesta-dark); }
.hero-siesta::before, .hero-siesta::after { display:none; }
.hero-badge { background:none; border:0; border-radius:0; padding:0; color:#6b776c; font-size:.68rem; font-weight:600; letter-spacing:1.7px; }
.brand-rule { width:26px; height:1px; background:#a38350; margin-right:6px; }
.hero-title { color:var(--siesta-dark); font-size:clamp(2.9rem,4.7vw,4.5rem); font-weight:500; line-height:1.13; letter-spacing:-1.8px; }
.hero-title em { color:#718371; font-weight:500; }
.hero-text { color:#68746b; font-size:1rem; font-weight:400; max-width:510px; line-height:1.9; }
.hero-actions { align-items:center; margin-top:30px; }
.hero-secondary { color:var(--siesta-dark); font-size:.82rem; font-weight:600; text-decoration:none; padding:12px 0; }
.hero-secondary i { margin-left:10px; }
.hero-details { display:flex; gap:24px; flex-wrap:wrap; border-top:1px solid #dce1d6; padding-top:24px; margin-top:40px; font-size:.72rem; color:#6b776c; max-width:490px; }
.hero-details i { margin-right:6px; }
.membership-display { background:#e9ece2; border:1px solid #dce2d4; padding:28px; border-radius:18px; }
.membership-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; color:#61705f; font-size:.57rem; letter-spacing:1.3px; margin-bottom:26px; }
.membership-heading i { font-size:1.15rem; }
.membership-card { background:var(--siesta-dark); color:#e1cfaa; border-radius:12px; padding:28px 24px 20px; box-shadow:0 18px 28px #203e3526; border:1px solid #52654d; }
.membership-brand { display:block; font-family:'Playfair Display',Georgia,serif; font-size:1.75rem; letter-spacing:4px; line-height:1.2; }
.membership-subtitle { font-size:.48rem; letter-spacing:3px; }
.membership-cup { font-size:2rem; }
.membership-label { margin:28px 0 16px; font-size:.5rem; letter-spacing:2px; color:#b6c6b7; }
.membership-stamps { display:flex; justify-content:space-between; gap:7px; }
.membership-stamps span { width:38px; height:38px; display:grid; place-items:center; border:1px solid #778a72; border-radius:50%; font-size:1rem; }
.membership-stamps .gift { background:#dfc69a; border-color:#dfc69a; color:var(--siesta-dark); }
.membership-bottom { display:flex; justify-content:space-between; gap:8px; padding-top:22px; margin-top:22px; border-top:1px solid #496154; font-size:.54rem; color:#bbccbd; }
.membership-caption { display:flex; align-items:center; gap:13px; margin-top:28px; }
.membership-caption strong { font-size:.9rem; font-weight:600; }
.membership-caption p { font-size:.69rem; color:#6b776c; margin:3px 0 0; }
.membership-gift { background:#f7f7f0; width:40px; height:40px; border-radius:50%; display:grid; place-items:center; }
.membership-link { display:flex; justify-content:space-between; border-top:1px solid #d3dbcc; padding-top:17px; margin-top:20px; font-size:.67rem; text-decoration:none; color:#53644f; }
.brand-strip { background:white; border-block:1px solid var(--surface-border); }
.brand-strip .container { display:flex; justify-content:space-between; gap:20px; padding-block:22px; color:#6a796e; font-size:.72rem; letter-spacing:.4px; }
.section-tag { color:#8c713e; font-size:.66rem; letter-spacing:2px; }
.section-title { font-size:clamp(1.9rem,3vw,2.6rem); font-weight:500; }
.section-desc { font-size:.95rem; color:#6c786e; max-width:680px; margin-inline:auto; }
#hikayemiz .section-desc { margin-left:0; }
.feature-card { border-radius:12px; box-shadow:none; padding:30px; border-color:var(--surface-border); }
.feature-card:hover { transform:none; box-shadow:none; border-color:#aebdac; }
.feature-card h4 { font-size:1.05rem; font-weight:600 !important; }
.feature-card p { font-size:.85rem; line-height:1.8; }
.feature-icon-wrapper { width:46px; height:46px; border-radius:10px; font-size:1.3rem; }
.feature-card .badge { background:#eef2e9 !important; color:#53664b !important; font-size:.65rem; }
.contact-info-card { box-shadow:none; border:1px solid var(--surface-border); border-radius:12px; }
.social-btn-instagram { background:var(--siesta-dark); }
.social-btn-instagram:hover { background:var(--siesta-olive); transform:none; box-shadow:none; }
.developer-credit { display:flex; align-items:center; justify-content:center; gap:12px; flex-shrink:0; }
.developer-credit-logo { position:relative; display:block; width:110px; height:82px; overflow:hidden; border-radius:10px; flex-shrink:0; background:#f5f7fa; }
.developer-credit-logo img { position:absolute; width:176px; height:176px; max-width:none; left:50%; top:50%; transform:translate(-50%,-50%); }
.developer-credit-text { display:flex; flex-direction:column; gap:3px; margin:0; font-size:.7rem; line-height:1.5; }
.developer-credit-text strong { font-size:.78rem; font-weight:600; }
.developer-credit-auth { margin-top:22px; color:#59636f; }
.footer-siesta .developer-credit { color:#cdd5d2; }
.footer-siesta .developer-credit-text strong { color:#fff; }
@media (min-width:768px) and (max-width:991px) { .footer-siesta .developer-credit { flex-direction:column; gap:6px; text-align:center; } }
@media (max-width:767px) { .footer-siesta .developer-credit { margin-block:16px; } }
.footer-siesta { background:var(--siesta-deep); }
.footer-siesta h6 { font-family:inherit; font-size:.7rem; font-weight:600; }
.footer-siesta .small { font-size:.76rem; line-height:1.9; }
body .loyalty-card { border-radius:16px; background:var(--siesta-dark); box-shadow:0 8px 24px #203e351a; }
body .stamp-slot.active, body .stamp-slot.free-cup.active { box-shadow:none; }
body .gold-reward-card { box-shadow:none; border-radius:14px; }
body .pulse-animation { animation:none; }
@media(min-width:1200px) { .container { max-width:1160px; } }
@media(max-width:1199px) { .navbar-siesta .navbar-brand { margin-right:6px; } .nav-link-siesta { font-size:.72rem !important; } }
@media(max-width:991px) { .navbar-collapse { padding-block:18px 8px; } .navbar-nav { align-items:stretch; } .hero-siesta { padding:54px 0; } .membership-display { max-width:480px; margin-inline:auto; } .hero-copy { text-align:center; } .hero-text { margin-inline:auto; } .hero-actions,.hero-details { justify-content:center; margin-inline:auto; } }
@media(max-width:575px) { .container { padding-inline:22px; } .hero-title { font-size:2.85rem; } .hero-badge { font-size:.54rem; letter-spacing:1.1px; } .hero-details { gap:15px; font-size:.65rem; } .membership-display { padding:20px; } .membership-card { padding:24px 18px 18px; } .membership-stamps span { width:32px; height:32px; font-size:.85rem; } .brand-strip .container { flex-direction:column; align-items:center; gap:8px; padding-block:18px; } .auth-shell .card { padding:24px !important; } main.container h2.font-serif-brand { font-size:1.5rem; } main.container > .d-flex > .d-flex { flex-wrap:wrap; } .btn { white-space:normal; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none !important; transition:none !important; } }
@media(max-width:575px) { .hero-siesta .row, #hikayemiz .row { --bs-gutter-x:1.5rem; } }
