@media (max-width:640px) {
  .shipping-bar { min-height:32px; }
  .main-nav a[href*="instagram"],.main-nav .nav-cta { display:none; }
  .hero { gap:16px; margin-bottom:34px; }
  .hero-copy { padding-top:16px; }
  .hero .eyebrow,.hero-actions .text-link { display:none; }
  .hero h1 { max-width:340px; margin-bottom:12px; font-size:clamp(38px,11.5vw,46px); line-height:1.02; }
  .hero-text { display:-webkit-box; overflow:hidden; max-width:360px; margin-bottom:18px; font-size:14px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
  .hero-actions { display:block; }
  .hero-actions .button { min-height:48px; }
  .hero-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:16px; padding:0; font-size:10px; line-height:1.35; }
  .hero-notes span { display:flex; align-items:center; min-height:43px; padding:8px 9px; border:1px solid var(--line); border-radius:10px; background:var(--white); }
  .hero-notes b { margin-right:5px; color:var(--rose-dark); }
  .hero-visual { min-height:174px; border-radius:16px; }
  .gift-large { width:128px; height:110px; }
  .gift-bow:before,.gift-bow:after { top:-17px; width:40px; height:24px; border-width:6px; }
  .gift-label { padding:4px 6px; font-size:9px; }
  .intro-section { display:block; width:min(100% - 32px,640px); margin:0 auto 43px; padding:22px 20px; border:1px solid var(--line); border-radius:16px; background:var(--blush); text-align:left; }
  .intro-section .eyebrow { margin-bottom:8px; font-size:9px; letter-spacing:.11em; }
  .intro-section h2 { margin-bottom:8px; font-size:27px; line-height:1.08; }
  .intro-section > p:last-child { margin:0; font-size:13px; line-height:1.55; }
  .catalog-section { margin-bottom:44px; }
  .catalog-section .section-heading { width:100%; margin-bottom:16px; padding-bottom:13px; border-bottom:1px solid var(--line); }
  .catalog-section .section-heading .eyebrow { display:block; margin-bottom:6px; font-size:9px; }
  .catalog-section .section-heading > .text-link { display:none; }
  .catalog-section .section-heading h2 { font-size:30px; }
  .product-category { display:block; }
  .product-info p { margin-bottom:9px; -webkit-line-clamp:2; }
  .empty-catalog { min-height:0; padding:0; border:0; border-radius:0; background:transparent; text-align:left; }
  .empty-catalog h3 { margin:0; font-family:"Manrope",sans-serif; color:var(--muted); font-size:13px; font-weight:600; letter-spacing:0; }
  .empty-catalog p,.empty-catalog .button,.empty-title-desktop { display:none; }
  .empty-title-mobile { display:inline; }
  .occasion-section { display:grid; width:min(100% - 32px,640px); margin:0 auto 44px; gap:9px; }
  .occasion-card { min-height:0; border-radius:16px; }
  .occasion-card-main { display:block; padding:25px 22px; }
  .occasion-card-main .eyebrow { margin-bottom:10px; font-size:9px; }
  .occasion-card-main h3 { margin-bottom:16px; font-size:29px; line-height:1.08; }
  .occasion-card-main .text-link { font-size:13px; }
  .occasion-card-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:17px; background:var(--blush); }
  .occasion-card-list span { padding:9px 4px; border-radius:9px; font-size:10px; }
  .custom-gift-section { width:min(100% - 32px,640px); margin:0 auto 44px; padding:25px 20px; border:1px solid var(--line); box-shadow:none; }
  .custom-gift-section .eyebrow { display:block; margin-bottom:8px; font-size:9px; }
  .custom-gift-section h2 { margin-bottom:10px; font-size:29px; line-height:1.08; }
  .custom-gift-section p:not(.eyebrow) { display:-webkit-box; overflow:hidden; margin-bottom:18px; font-size:13px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
  .custom-gift-section .button { min-height:47px; }
  .steps-section { width:min(100% - 32px,640px); margin:0 auto 42px; padding:24px 20px 8px; border:1px solid var(--line); border-radius:16px; background:#fff8fa; }
  .steps-section .section-heading { margin-bottom:7px; }
  .steps-section .section-heading .eyebrow { display:block; margin-bottom:7px; font-size:9px; }
  .steps-section .section-heading h2 { font-size:29px; }
  .steps-list { grid-template-columns:1fr; gap:0; }
  .steps-list li { display:grid; grid-template-columns:32px minmax(0,1fr); column-gap:12px; min-height:0; padding:16px 0; border:0; border-top:1px solid var(--line); border-radius:0; text-align:left; }
  .steps-list span { position:static; grid-row:span 2; display:grid; place-items:center; width:30px; height:30px; margin:0; border-radius:50%; background:var(--rose-pale); color:var(--rose-dark); font-size:9px; }
  .steps-list h3 { margin:2px 0 3px; font-family:"Manrope",sans-serif; font-size:15px; font-weight:700; letter-spacing:-.02em; }
  .steps-list p { display:block; grid-column:2; margin:0; color:var(--muted); font-size:12px; line-height:1.45; }
  .cta-section { display:none; }
  .site-footer { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:13px; padding:22px 0 24px; text-align:left; }
  .site-footer .footer-brand { display:flex; align-items:center; gap:10px; }
  .brand-footer { padding:5px 8px; border:1px solid var(--line); border-radius:8px; background:#fff; }
  .brand-footer img { width:47px; }
  .footer-wordmark { display:block; font-family:"DM Serif Display",serif; font-size:25px; letter-spacing:-.04em; }
  .footer-message { display:grid; grid-column:1/-1; gap:4px; padding-top:13px; border-top:1px solid var(--line); }
  .footer-message > span { color:var(--rose-dark); font-size:9px; font-weight:700; letter-spacing:.11em; }
  .site-footer .footer-message p { display:block; max-width:none; margin:0; color:var(--muted); font-size:12px; }
  .footer-instagram { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 11px; border:1px solid #eac8d4; border-radius:10px; color:var(--ink); font-size:12px; font-weight:700; }
  .footer-legal { display:flex!important; grid-column:1/-1; justify-content:space-between; margin-top:0; padding-top:12px; border-top:1px solid var(--line); }
  .footer-legal > span { display:block; color:#895a6d; font-size:9px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
  .site-footer small { padding-top:0; color:#895a6d; font-size:9px; }
  .whatsapp-bubble { width:56px; min-height:56px; padding:5px; border-radius:17px; }
  .whatsapp-bubble .whatsapp-copy { display:none; }
  .whatsapp-icon { width:44px; height:44px; }
  .cart-custom p { display:none; }
}

@media (min-width:641px) { .empty-title-mobile { display:none; } }
