
/* V5.5: Mobile navigation / booking regression fixes. */
@media(max-width:420px){
  .header .head{gap:5px;min-width:0;}
  .header .wordmark{flex:1 1 auto;min-width:0;gap:7px;}
  .header .wordmark > span:last-child{min-width:0;}
  .header .wordmark b{font-size:.79rem;line-height:1.2;white-space:normal;overflow-wrap:normal;}
  .header .wordmark small{font-size:.54rem;line-height:1.3;white-space:normal;}
  .header .mark{flex:0 0 39px;width:39px;height:39px;}
  .header .head-actions{flex:0 0 auto;gap:3px;}
  .header .head-actions .lang{padding:6px 3px;font-size:.64rem;white-space:nowrap;}
  .header .menu-toggle{width:40px;height:40px;flex:0 0 40px;min-height:40px;}
}
@media(max-width:620px){
  .wa-fab{width:50px;height:50px;min-width:50px;padding:10px;min-height:50px;border-radius:999px;}
  .wa-fab span{display:none;}
  .wa-fab.is-hidden-near-hero{opacity:0;pointer-events:none;transform:translateY(15px);}
}
/* Restore consistent visual size after improving heading semantics. */
.post-body h2{font-size:inherit;}
.post-body h2{color:var(--primary);font-size:1.16rem;font-weight:750;margin:13px 0 17px;line-height:1.58;}
.grid2 .cardlink h2{font-size:clamp(1.25rem,2.1vw,1.55rem);line-height:1.5;}

/* Heading semantics: visually retain footer typography while using h2 sections. */
.footer h2{font-size:.91rem;margin-bottom:20px;line-height:1.4;color:inherit;}
