/* ==========================================================================
   brand.css — Bemazal Photography design system
   Upload once, then every page uses these classes.
   Mobile-first, Hebrew RTL, 375px canvas.
   ========================================================================== */

body.bmg-active{
  --bg:#F7F2EB;        /* page background */
  --bg-2:#EFE6D9;      /* banded section / icon badge */
  --card:#FFFDF9;      /* card surface */
  --line:#E4D7C7;      /* borders, dividers */
  --ink:#2C241D;       /* primary text */
  --ink-2:#6A5D52;     /* secondary text */
  --kicker:#57382F;    /* eyebrow label */
  --accent:#B68D54;    /* accent marks */
  --accent-hi:#CDA56A; /* link hover */
  --brown:#866651;     /* buttons, icons, arrows */
  --muted:#AC998D;     /* pill outline */
  --dark:#1F1A16;      /* dark surface */
}

/* ---------- base ---------- */
.bm{font-family:'Heebo',system-ui,sans-serif;color:var(--ink);background:var(--bg);
  width:100%;max-width:none;margin:0 auto;position:relative;overflow:hidden}
.bm p{text-wrap:pretty}
.bm a{color:var(--accent);text-decoration:underline}
.bm a:hover{color:var(--accent-hi)}
.bm img{max-width:100%}

/* ---------- typography ---------- */
.bm h1{font-size:33px;font-weight:500;letter-spacing:-.5px;color:var(--ink);margin:22px 0 0}
.bm h2{font-size:30px;font-weight:500;color:var(--ink);margin:8px 0 0}
.bm h2.h2-wide{font-size:27px;line-height:1.35}
.bm h3{font-size:24px;font-weight:500;color:var(--ink);margin:0}
.bm .kicker{font-size:14px;letter-spacing:2.4px;color:var(--kicker);font-weight:400}
.bm .lead{font-size:18px;line-height:1.75;color:var(--ink-2);font-weight:300}
.bm .body{font-size:17px;line-height:1.7;color:var(--ink);font-weight:400}
.bm .caption{font-size:12px;line-height:1.75;color:var(--ink-2);font-weight:300;text-align:center}
.bm .rule{width:62px;height:1px;background:var(--accent);margin:15px auto 0}

/* ---------- sections ---------- */
.bm .sec{padding:56px 0 0;text-align:center}
.bm .sec--band{background:var(--bg-2);padding-bottom:48px}
.bm .pad{padding-left:22px;padding-right:22px}

/* ---------- buttons ---------- */
.bm .btn{display:flex;align-items:center;justify-content:center;height:52px;
  border-radius:8px;font-size:19px;font-weight:700;text-decoration:none;
  transition:background .35s ease,color .35s ease,border-color .35s ease}
.bm .btn:hover{text-decoration:none}

.bm .btn-primary{background:linear-gradient(90deg,#866651,#AC998D);color:#FFFFFF;border:0}
.bm .btn-primary:hover{color:#FFFFFF;filter:brightness(1.06)}

.bm .btn-outline{border:1.5px solid var(--brown);background:transparent;color:var(--brown)}
.bm .btn-outline:hover{background:var(--brown);color:#FFFFFF}

.bm .btn--hero{height:50px;border-radius:6px;font-size:18px}

/* attention button: border keeps running, fills on hover. Max ONE per page. */
@keyframes bm-dashrun{from{stroke-dashoffset:0}to{stroke-dashoffset:-728}}
.bm .btn-run{position:relative;background:transparent;color:var(--brown)}
.bm .btn-run:hover{background:var(--brown);color:#FFFFFF}
.bm .btn-run svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.bm .btn-run rect{width:calc(100% - 2px);height:calc(100% - 2px);fill:none;
  stroke:var(--brown);stroke-width:1.5;stroke-dasharray:68 296 68 296;
  animation:bm-dashrun 4.5s linear infinite;animation-play-state:paused}
.bm .btn-run span{position:relative}

.bm .cta-stack{display:flex;flex-direction:column;gap:6px;padding:32px 35px 0}

/* ---------- cards ---------- */
.bm .card{background:var(--card);border:1px solid var(--line);border-radius:10px;
  box-shadow:0 2px 10px rgba(87,56,47,.05);padding:30px 22px}
.bm .card-link{display:flex;align-items:center;gap:13px;padding:15px 14px;
  background:var(--card);border:1px solid var(--line);border-radius:10px;
  box-shadow:0 2px 10px rgba(87,56,47,.05);text-decoration:none;
  transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease}
.bm .card-link:hover{border-color:var(--accent);
  box-shadow:0 10px 24px rgba(87,56,47,.11);transform:translateY(-2px);text-decoration:none}
.bm .card-list{display:flex;flex-direction:column;gap:9px;margin:30px 22px 0}
.bm .card-link .name{flex:1;min-width:0;font-size:17px;font-weight:500;line-height:1.2;
  white-space:nowrap;color:var(--ink);text-align:right}
.bm .card-link .arrow{flex:none;font-size:15px;color:var(--brown)}

/* ---------- pill / eyebrow chip ---------- */
.bm .pill{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--muted);
  border-radius:999px;padding:8px 18px;font-size:14.5px;font-weight:500;color:var(--kicker)}

/* ---------- feature list ---------- */
.bm .feat{list-style:none;margin:28px 0 0;padding:0}
.bm .feat li{display:flex;align-items:flex-start;gap:12px;padding:14px 0;
  border-bottom:1px solid var(--line);font-size:17px;line-height:1.7;
  color:var(--ink);font-weight:400;text-align:right}
.bm .feat li:last-child{border-bottom:0}

/* ---------- icon badge ---------- */
.bm .ico-badge{flex:none;display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:10px;background:var(--bg-2);border:1px solid var(--line)}
.bm .ico{display:flex;align-items:center}

/* ---------- gallery ---------- */
.bm .gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:26px 22px 0}
.bm .gallery-grid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.bm .thumb-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px 22px 0}
.bm .thumb-grid img{width:100%;object-fit:cover;display:block}
.bm .thumb{position:relative}
.bm .thumb--active{outline:2px solid var(--accent);outline-offset:-2px}
.bm .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.bm .play i{width:40px;height:40px;border-radius:50%;background:rgba(255,253,249,.92);
  display:flex;align-items:center;justify-content:center;color:var(--ink);
  font-size:13px;font-style:normal;padding-left:3px}

/* ---------- hero ---------- */
.bm .hero-img{display:block;width:351px;height:460px;object-fit:cover;margin:15px auto 0;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 71%,rgba(0,0,0,.92) 80%,
    rgba(0,0,0,.55) 88%,rgba(0,0,0,.22) 94%,rgba(0,0,0,0) 100%);
  mask-image:linear-gradient(180deg,#000 0%,#000 71%,rgba(0,0,0,.92) 80%,
    rgba(0,0,0,.55) 88%,rgba(0,0,0,.22) 94%,rgba(0,0,0,0) 100%)}
.bm .hero-text{text-align:center;padding:22px 22px 0}

@keyframes bm-shine{0%{background-position:120% 0}100%{background-position:-40% 0}}
@keyframes bm-floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.bm .accent-wrap{animation:bm-floaty 5.5s ease-in-out infinite;margin:8px 0 0}
.bm .accent-word{display:inline-block;font-family:'Josefin Sans',sans-serif;font-style:italic;
  font-weight:300;font-size:46px;line-height:1.15;
  background:linear-gradient(100deg,#9C7845 0%,#B68D54 32%,#F2E0C0 48%,#CDA56A 60%,
    #B68D54 78%,#9C7845 100%);
  background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:bm-shine 5s ease-in-out infinite}

/* ---------- header ---------- */
.bm .site-head{height:89px;background:var(--card);display:flex;align-items:center;
  justify-content:space-between;padding:0 20px;box-shadow:0 1px 0 rgba(87,56,47,.05)}
.bm .burger{display:flex;flex-direction:column;gap:6px;width:26px}
.bm .burger span{display:block;height:3px;background:var(--ink)}

/* ---------- map section ---------- */
.bm .map-img{display:block;width:88%;max-width:330px;margin:10px auto 0}

/* ---------- carousel controls ---------- */
.bm .carousel-nav{display:flex;align-items:center;justify-content:center;gap:16px;padding:38px 0 0}
.bm .carousel-nav .nav-btn{width:46px;height:46px;border-radius:50%;
  border:1px solid var(--brown);display:flex;align-items:center;justify-content:center;
  color:var(--brown);font-size:19px}
.bm .dots{display:flex;align-items:center;gap:9px}
.bm .dots i{width:9px;height:9px;border-radius:50%;border:1px solid var(--accent-hi);display:block}
.bm .dots i.on{width:24px;border-radius:5px;background:var(--accent);border-color:var(--accent)}

/* ---------- SEO long-form block ---------- */
.bm .seo{background:var(--card);padding:56px 22px 40px;text-align:right}
.bm .seo h3{font-size:21px;font-weight:500;text-align:center;margin:52px 0 0}
.bm .seo-p{font-size:14px;line-height:1.85;color:var(--ink-2);font-weight:400;margin:26px 0 0;
  overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.bm .seo-p.open{-webkit-line-clamp:unset}
.bm .seo-more-wrap{display:flex;justify-content:center;margin:10px 0 0}
.bm .seo-more{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;
  color:var(--brown);cursor:pointer;border-bottom:1px solid var(--line);padding:0 0 3px}

/* ---------- accessibility ---------- */
@media (prefers-reduced-motion:reduce){
  .bm .accent-word,.bm .accent-wrap,.bm .btn-run rect{animation:none !important}
}
