/* =====================================================================
   KASIMI v2 — HEADER + FOOTER STYLES
   Append this to your existing kasimi-v2.css
   (or enqueue as a second stylesheet)
   ===================================================================== */

/* ========== TOP UTILITY BAR ========== */
.kasimi-v2 .topbar{
  background:var(--ink-deep);color:rgba(245,239,227,.8);
  font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  padding:10px 0;border-bottom:1px solid rgba(245,239,227,.08);
}
.kasimi-v2 .topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;}
.kasimi-v2 .topbar-left,.kasimi-v2 .topbar-right{display:flex;gap:24px;align-items:center;flex-wrap:wrap;}
.kasimi-v2 .topbar-item{display:inline-flex;align-items:center;gap:8px;}
.kasimi-v2 .topbar-item::before{
  content:"";width:13px;height:13px;background-color:currentColor;
  -webkit-mask:center/contain no-repeat;mask:center/contain no-repeat;flex-shrink:0;
}
.kasimi-v2 .topbar-loc::before{
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/><circle cx='12' cy='10' r='3'/></svg>");
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/><circle cx='12' cy='10' r='3'/></svg>");
}
.kasimi-v2 .topbar-hours::before{
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>");
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><polyline points='12 6 12 12 16 14'/></svg>");
}
.kasimi-v2 .topbar-phone::before{
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>");
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/></svg>");
}
.kasimi-v2 .topbar-wa::before{
  width:14px;height:14px;
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'><path d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 0 1-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 0 1-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 0 1 2.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0 0 12.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 0 0 5.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 0 0-3.48-8.413Z'/></svg>");
  mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'><path d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 0 1-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 0 1-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 0 1 2.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0 0 12.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 0 0 5.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 0 0-3.48-8.413Z'/></svg>");
}
.kasimi-v2 .topbar a{color:var(--brass-light);transition:opacity .2s;}
.kasimi-v2 .topbar a:hover{opacity:.7;}
@media (max-width:720px){.kasimi-v2 .topbar-left{display:none;}.kasimi-v2 .topbar-inner{justify-content:center;}}

/* ========== MAIN HEADER ========== */
.kasimi-v2 .site-header{
  background:var(--paper-soft);border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:40;backdrop-filter:saturate(180%) blur(10px);
}
.kasimi-v2 .site-header-inner{
  display:flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 0;
}
.kasimi-v2 .brand{display:flex;align-items:center;gap:14px;}
.kasimi-v2 .brand-mark{
  width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--brass-light);
  display:grid;place-items:center;font-family:var(--serif);font-size:1.3rem;font-weight:500;font-style:italic;
  border:1px solid var(--brass-deep);
}
.kasimi-v2 .brand-name{font-family:var(--serif);font-size:1.25rem;font-weight:500;letter-spacing:-.01em;color:var(--ink);line-height:1;}
.kasimi-v2 .brand-tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-deep);display:block;margin-top:4px;}

/* Nav */
.kasimi-v2 .nav{display:flex;align-items:center;gap:6px;}
.kasimi-v2 .nav > li{position:relative;list-style:none;}
.kasimi-v2 .nav > li > a{
  display:inline-flex;align-items:center;gap:6px;padding:10px 14px;font-size:.92rem;font-weight:500;
  color:var(--ink);border-radius:99px;transition:.2s;
}
.kasimi-v2 .nav > li > a:hover{background:var(--paper-warm);color:var(--ink-deep);}
.kasimi-v2 .nav .has-sub > a::after{content:"▾";font-size:.65rem;color:var(--brass-deep);margin-left:2px;}

/* Dropdown */
.kasimi-v2 .nav-sub{
  position:absolute;top:calc(100% + 8px);left:0;min-width:260px;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);padding:10px;opacity:0;visibility:hidden;transform:translateY(-4px);
  transition:.2s;list-style:none;margin:0;
}
.kasimi-v2 .nav .has-sub:hover > .nav-sub,
.kasimi-v2 .nav .has-sub:focus-within > .nav-sub{opacity:1;visibility:visible;transform:none;}
.kasimi-v2 .nav-sub li{list-style:none;}
.kasimi-v2 .nav-sub a{
  display:block;padding:10px 14px;border-radius:var(--radius);font-size:.92rem;color:var(--ink);transition:.15s;
}
.kasimi-v2 .nav-sub a:hover{background:var(--paper-warm);color:var(--brass-deep);}
.kasimi-v2 .nav-sub a small{
  display:block;font-family:var(--mono);font-size:.65rem;letter-spacing:.14em;
  color:var(--ink-soft);margin-top:2px;text-transform:uppercase;opacity:.7;
}

/* Inline icon helper (used inside buttons) */
.kasimi-v2 .ico{width:14px;height:14px;display:inline-block;vertical-align:middle;fill:currentColor;flex-shrink:0;}
.kasimi-v2 .ico-lg{width:18px;height:18px;}

/* Header CTAs */
.kasimi-v2 .header-ctas{display:flex;gap:10px;align-items:center;}
.kasimi-v2 .header-cta-wa{
  background:#25D366;color:#fff;padding:10px 16px;border-radius:99px;font-size:.85rem;font-weight:500;
  display:inline-flex;align-items:center;gap:8px;transition:.2s;
}
.kasimi-v2 .header-cta-wa:hover{background:#1FB855;}
.kasimi-v2 .header-cta-book{
  background:var(--ink);color:var(--paper);padding:10px 18px;border-radius:99px;font-size:.85rem;font-weight:500;transition:.2s;
}
.kasimi-v2 .header-cta-book:hover{background:var(--brass);color:var(--ink-deep);}

/* Mobile hamburger */
.kasimi-v2 .nav-toggle{display:none;flex-direction:column;gap:5px;padding:10px;}
.kasimi-v2 .nav-toggle span{width:22px;height:1.5px;background:var(--ink);display:block;transition:.2s;}

/* Mobile drawer */
.kasimi-v2 .nav-drawer{
  position:fixed;top:0;right:-100%;bottom:0;width:min(360px,88vw);
  background:var(--paper);box-shadow:var(--shadow-lg);z-index:60;
  padding:24px;transition:right .3s ease;overflow-y:auto;display:flex;flex-direction:column;gap:14px;
}
.kasimi-v2 .nav-drawer.open{right:0;}
.kasimi-v2 .nav-overlay{
  position:fixed;inset:0;background:rgba(6,21,35,.5);opacity:0;visibility:hidden;
  transition:.25s;z-index:55;backdrop-filter:blur(4px);
}
.kasimi-v2 .nav-overlay.open{opacity:1;visibility:visible;}
.kasimi-v2 .nav-drawer-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);}
.kasimi-v2 .nav-drawer-close{font-size:1.8rem;line-height:1;color:var(--ink);padding:4px 10px;}
.kasimi-v2 .nav-drawer-top{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;}
.kasimi-v2 .nav-drawer ul{list-style:none;padding:0;margin:0;}
.kasimi-v2 .nav-drawer > ul > li{border-bottom:1px solid var(--line);}
.kasimi-v2 .nav-drawer > ul > li > a,
.kasimi-v2 .nav-drawer details summary{
  display:block;padding:16px 0;font-family:var(--serif);font-size:1.15rem;font-weight:500;color:var(--ink);
  cursor:pointer;list-style:none;
}
.kasimi-v2 .nav-drawer details summary::-webkit-details-marker{display:none;}
.kasimi-v2 .nav-drawer details summary{display:flex;justify-content:space-between;align-items:center;}
.kasimi-v2 .nav-drawer details summary::after{content:"+";color:var(--brass-deep);font-weight:300;font-size:1.5rem;transition:.2s;}
.kasimi-v2 .nav-drawer details[open] summary::after{transform:rotate(45deg);}
.kasimi-v2 .nav-drawer details ul{padding:0 0 16px 0;}
.kasimi-v2 .nav-drawer details ul a{
  display:block;padding:8px 0;font-size:.95rem;color:var(--ink-soft);font-family:var(--sans);
}
.kasimi-v2 .nav-drawer details ul a:hover{color:var(--brass-deep);}

@media (max-width:1024px){
  .kasimi-v2 .nav,.kasimi-v2 .header-ctas{display:none;}
  .kasimi-v2 .nav-toggle{display:flex;}
  .kasimi-v2 .header-mobile-cta{display:inline-flex;}
}
@media (min-width:1025px){
  .kasimi-v2 .nav-toggle,.kasimi-v2 .nav-drawer,.kasimi-v2 .nav-overlay,.kasimi-v2 .header-mobile-cta{display:none;}
}
.kasimi-v2 .header-mobile-cta{
  background:#25D366;color:#fff;padding:8px 14px;border-radius:99px;font-size:.8rem;font-weight:500;
  margin-right:8px;
}

/* ---------- Mobile breathing room ---------- */
@media (max-width:1024px){
  .kasimi-v2 .site-header-inner{padding:14px 0;gap:14px;}
  .kasimi-v2 .brand{gap:10px;min-width:0;flex:1;}
  .kasimi-v2 .brand-mark{width:38px;height:38px;font-size:1.1rem;flex-shrink:0;}
  .kasimi-v2 .brand-name{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .kasimi-v2 .brand-tag{display:none;}             /* hide subtitle on mobile */
  .kasimi-v2 .header-mobile-cta{padding:7px 12px;font-size:.75rem;}
  .kasimi-v2 .nav-toggle{padding:8px 4px;}
  .kasimi-v2 .topbar{padding:8px 0;font-size:.68rem;letter-spacing:.12em;}
  .kasimi-v2 .topbar-right{gap:14px;}
}

@media (max-width:480px){
  .kasimi-v2 .brand-name{font-size:1rem;}
  .kasimi-v2 .header-mobile-cta{padding:6px 10px;font-size:.7rem;}
  .kasimi-v2 .header-mobile-cta span,
  .kasimi-v2 .header-mobile-cta::before{display:none;}    /* drop "Chat" label, keep icon-only on very narrow screens */
  .kasimi-v2 .wrap{padding:0 16px;}
}

/* ========== FOOTER ========== */
.kasimi-v2 .site-footer{
  background:var(--ink-deep);color:rgba(245,239,227,.78);padding:80px 0 0;position:relative;overflow:hidden;
  background-image:
    radial-gradient(ellipse at 80% 0%,rgba(201,169,97,.12),transparent 50%),
    radial-gradient(ellipse at 0% 100%,rgba(184,92,62,.08),transparent 50%),
    linear-gradient(160deg,#061523,#0B1F33);
  /* Break out of any constrained parent container — full bleed edge-to-edge */
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
.kasimi-v2 .site-footer::before{
  content:"";position:absolute;inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence baseFrequency='.85'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.25'/></svg>");
  mix-blend-mode:overlay;opacity:.22;pointer-events:none;
}
.kasimi-v2 .site-footer > *{position:relative;z-index:2;}

/* Footer CTA strip */
.kasimi-v2 .footer-cta{
  display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center;
  padding-bottom:64px;margin-bottom:56px;border-bottom:1px solid rgba(245,239,227,.15);
}
.kasimi-v2 .footer-cta h2{color:var(--paper);font-size:clamp(1.6rem,3vw,2.4rem);margin:0;}
.kasimi-v2 .footer-cta h2 em{color:var(--brass-light);font-style:italic;font-weight:300;}
.kasimi-v2 .footer-cta p{color:rgba(245,239,227,.7);margin:12px 0 0;max-width:46ch;}
.kasimi-v2 .footer-cta-actions{display:flex;flex-direction:column;gap:12px;}
@media (max-width:820px){.kasimi-v2 .footer-cta{grid-template-columns:1fr;gap:24px;padding-bottom:48px;}}

/* Footer columns */
.kasimi-v2 .footer-grid{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:48px;padding-bottom:56px;
}
@media (max-width:1080px){.kasimi-v2 .footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:40px 32px;}}
@media (max-width:640px){.kasimi-v2 .footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:440px){.kasimi-v2 .footer-grid{grid-template-columns:1fr;}}

.kasimi-v2 .footer-brand .brand-mark{background:var(--brass);color:var(--ink-deep);border-color:var(--brass);}
.kasimi-v2 .footer-brand .brand-name{color:var(--paper);}
.kasimi-v2 .footer-brand p{color:rgba(245,239,227,.65);font-size:.92rem;margin-top:18px;line-height:1.65;}
.kasimi-v2 .footer-brand .brand{margin-bottom:0;}

.kasimi-v2 .footer-col h4{
  font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--brass-light);font-weight:500;margin:0 0 22px;
}
.kasimi-v2 .footer-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;}
.kasimi-v2 .footer-col li a{
  color:rgba(245,239,227,.78);font-size:.95rem;transition:.2s;display:inline-flex;align-items:center;gap:6px;
}
.kasimi-v2 .footer-col li a:hover{color:var(--brass-light);transform:translateX(2px);}

.kasimi-v2 .footer-contact li{color:rgba(245,239,227,.78);font-size:.95rem;line-height:1.5;}
.kasimi-v2 .footer-contact .label{
  font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(245,239,227,.45);display:block;margin-bottom:4px;
}
.kasimi-v2 .footer-contact a{color:rgba(245,239,227,.92);}
.kasimi-v2 .footer-contact a:hover{color:var(--brass-light);}

.kasimi-v2 .footer-socials{display:flex;gap:10px;margin-top:18px;}
.kasimi-v2 .footer-socials a{
  width:38px;height:38px;border-radius:50%;border:1px solid rgba(245,239,227,.25);
  display:grid;place-items:center;color:var(--paper);transition:.2s;
}
.kasimi-v2 .footer-socials a:hover{background:var(--brass);color:var(--ink-deep);border-color:var(--brass);}
.kasimi-v2 .footer-socials svg{width:16px;height:16px;fill:currentColor;display:block;}

/* SEO tag cloud */
.kasimi-v2 .footer-seo{
  padding:36px 0;border-top:1px solid rgba(245,239,227,.12);border-bottom:1px solid rgba(245,239,227,.12);
}
.kasimi-v2 .footer-seo h5{
  font-family:var(--mono);font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(245,239,227,.45);font-weight:500;margin:0 0 16px;
}
.kasimi-v2 .footer-seo-cloud{display:flex;flex-wrap:wrap;gap:8px;}
.kasimi-v2 .footer-seo-cloud a{
  display:inline-block;padding:6px 12px;background:rgba(245,239,227,.06);border:1px solid rgba(245,239,227,.12);
  border-radius:99px;font-size:.78rem;color:rgba(245,239,227,.7);transition:.2s;
}
.kasimi-v2 .footer-seo-cloud a:hover{background:var(--brass);color:var(--ink-deep);border-color:var(--brass);}

/* Footer bottom bar */
.kasimi-v2 .footer-bottom{
  padding:24px 0;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;
  font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(245,239,227,.5);
}
.kasimi-v2 .footer-bottom-links{display:flex;gap:24px;flex-wrap:wrap;}
.kasimi-v2 .footer-bottom-links a:hover{color:var(--brass-light);}
