/* Mobile header and invitation preview polish. */
@media(max-width:850px){
  .m-menu{width:42px;height:42px;display:grid;place-items:center;padding:0;border:2px solid var(--ink);border-radius:50%;background:#fff;color:var(--ink);box-shadow:2px 2px var(--ink)}
  .m-menu>span{display:grid;gap:4px}
  .m-menu i{display:block;width:17px;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
  .m-menu[aria-expanded=true] i:first-child{transform:translateY(6px) rotate(45deg)}
  .m-menu[aria-expanded=true] i:nth-child(2){opacity:0}
  .m-menu[aria-expanded=true] i:last-child{transform:translateY(-6px) rotate(-45deg)}
  .m-header nav{left:0;right:0;width:100%;padding:18px 24px 24px;box-shadow:0 12px 18px #1d2c4520}
  body.menu-open{overflow:hidden}
}
@media(max-width:650px){
  .m-menu{margin-left:auto}
  .m-hero{padding:28px 0 35px}
  .m-home-hero{gap:4px}
  .m-home-hero .m-hero-copy{padding:24px 20px 27px;background:var(--yellow);border:2px solid var(--ink);border-radius:20px;box-shadow:5px 5px var(--ink)}
  .m-home-hero .m-badge{margin-bottom:9px}
  .m-home-hero h1{font-size:clamp(2.25rem,11vw,3.2rem);margin:.15em 0 .28em}
  .m-home-hero .m-lead{font-size:.94rem;line-height:1.5;color:#354967}
  .m-home-hero .m-actions{margin-top:18px;gap:10px}
  .m-home-hero .m-button{min-height:47px}
}
@media(max-width:650px){
  .m-header-inner{gap:12px;min-height:70px}
  .m-logo img{width:132px}
  .m-menu{order:2;margin-left:auto;width:42px;height:42px;border:1.5px solid #d9d3c9;border-radius:14px;background:#fffdf7;box-shadow:0 2px 5px #1d2c4512;color:var(--ink)}
  .m-menu>span{gap:4px}
  .m-menu i{width:17px;height:2px;border-radius:3px}
  .m-menu[aria-expanded=true]{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 3px 8px #1d2c4528}
  .m-language{order:3}
  .m-language summary{min-width:58px;height:40px;justify-content:center;gap:5px;padding:0 11px;border:1.5px solid #d9d3c9;border-radius:13px;background:#fffdf7;color:var(--ink);font-size:11px;box-shadow:0 2px 5px #1d2c4512}
  .m-lang-chevron{font-size:13px;color:#64748b;transition:transform .18s ease}
  .m-language[open] summary{border-color:#b8ad9e;box-shadow:0 0 0 3px #1d2c4509}
  .m-language ul{z-index:220;top:calc(100% + 8px);right:0;border:1.5px solid #e4ded4;border-radius:14px;box-shadow:0 12px 28px #1d2c4520}
}
@media(max-width:650px){
  .m-phone-frame{width:clamp(248px,76vw,290px)}
  .m-phone-frame:before{right:-7px}
  .m-phone-frame:after{left:12px;right:-7px;bottom:-7px}
}
@media(max-width:650px){
  /* Keep the decorative pink offset tucked close to the rotated phone. */
  .m-phone-frame:before{top:14px;bottom:8px;right:-4px;width:6px;border-radius:0 0 8px 0}
  .m-phone-frame:after{left:12px;right:-4px;bottom:8px;height:6px;border-radius:0 0 0 8px}
}
@media(max-width:650px){.m-phone-frame:before,.m-phone-frame:after{display:none}}
.m-phone-frame:before,.m-phone-frame:after{display:none!important}
@media(max-width:650px){.m-page-home .m-home-hero{row-gap:34px}}
@media(max-width:650px){
  .m-page .m-hero{width:100vw!important;margin-inline:calc(50% - 50vw)!important;padding-inline:16px!important}
}
@media(max-width:650px){
  .m-page:not(.m-page-home) .m-hero{position:relative;isolation:isolate;background:transparent!important;border:0!important;box-shadow:none!important}
  .m-page:not(.m-page-home) .m-hero:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background-color:var(--yellow);background-image:radial-gradient(var(--ink) 1.2px,transparent 1.2px);background-size:26px 26px;border-bottom:2px solid var(--ink)}
}
@media(max-width:850px){
  .m-header{position:sticky!important;top:0!important;z-index:300!important}
  .m-header-inner{position:relative}
}
@media(max-width:850px){.m-header{position:fixed!important;inset:0 0 auto!important;width:100%;transform:translateZ(0);-webkit-transform:translateZ(0)}body.m-page{padding-top:calc(var(--m-header-height, 74px) + 3px)}.m-header-inner{min-height:74px!important}.m-header nav{top:100%!important}}
