@media (max-width:760px){
  html,body{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important;background:#f8f2e8!important}
  .desktop-build{display:none!important}
  .mobile-fallback{display:none!important}
  .mobile-v47-clean{display:block!important;width:100%!important;max-width:100vw!important;overflow:hidden!important;background:#f8f2e8!important;color:#0c513b!important}
  .mobile-v47-clean *{box-sizing:border-box}

  .mv47-header{position:relative;background:#fbf6ec;border-top:1px solid #c8a95a;border-bottom:1px solid #d8c494;padding:12px 14px 10px;min-height:0;z-index:3}
  .mv47-brand-row{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:10px;align-items:start}
  .mv47-brand{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:center;text-decoration:none;color:#0c513b;min-width:0}
  .mv47-brand>img{display:block;width:52px;height:52px;border-radius:50%;object-fit:cover}
  .mv47-brand-copy{display:grid;min-width:0;line-height:1}
  .mv47-brand-copy small{font:400 9px/1 Georgia,serif;letter-spacing:1.5px;margin-bottom:2px}
  .mv47-brand-copy b{font:700 clamp(18px,5.1vw,21px)/.98 Georgia,serif;white-space:nowrap;letter-spacing:-.3px}
  .mv47-brand-copy em{font:400 9.5px/1.2 Arial,sans-serif;color:#433c31;font-style:normal;margin-top:5px}
  .mv47-menu{display:grid;place-content:center;gap:4px;width:44px;height:44px;border:1px solid #bc923b;border-radius:9px;background:#fffaf0;padding:0;margin-top:0}
  .mv47-menu span{display:block;width:16px;height:2px;background:#0c513b;border-radius:2px}
  .mv47-nav{display:none;grid-template-columns:1fr 1fr;gap:5px;position:absolute;left:14px;right:14px;top:68px;padding:7px;background:#fffaf2;border:1px solid #d4bd7b;border-radius:8px;box-shadow:0 8px 20px #0002;z-index:20}
  .mv47-nav.open{display:grid}
  .mv47-nav a,.mv47-nav button{border:0;background:transparent;color:#0c513b;text-decoration:none;text-align:left;font:600 13px/1.2 Arial,sans-serif;padding:8px;border-radius:5px}
  .mv47-phone{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:10px;color:#0c513b;text-decoration:none;font:700 clamp(20px,5.7vw,23px)/1 Georgia,serif;letter-spacing:.2px}
  .mv47-phone-icon{display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px}
  .mv47-phone-icon svg{width:18px;height:18px;fill:#b48a2e}
  .mv47-hours{display:grid;gap:4px;margin-top:6px;color:#173f32;font-family:Arial,sans-serif}
  .mv47-hours>b{font-size:11.5px;line-height:1;font-weight:700}
  .mv47-hours>div{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:10px;line-height:1.15;color:#30382f}

  .mv47-hero{position:relative;height:205px;margin:0;background-image:linear-gradient(90deg,rgba(251,246,236,.93) 0%,rgba(251,246,236,.66) 34%,rgba(251,246,236,.05) 61%,rgba(251,246,236,0) 100%),url('assets/mobile_desktop/hero_ship.png');background-repeat:no-repeat;background-size:auto 103%;background-position:46% center;border-bottom:1px solid #d8c494;overflow:hidden}
  .mv47-hero-copy{position:absolute;z-index:2;left:14px;top:42px;width:58%;max-width:230px;color:#0c513b}
  .mv47-eyebrow{font:400 13px/1 Arial,sans-serif;letter-spacing:.2px;margin-bottom:5px}
  .mv47-hero h1{margin:0 0 10px;font:700 clamp(31px,9.4vw,39px)/.92 Georgia,serif;letter-spacing:-.7px}
  .mv47-hero p{margin:0 0 14px;font:400 13px/1.28 Georgia,serif;color:#213e32}
  .mv47-hero button{display:inline-flex;align-items:center;gap:8px;min-height:36px;border:1px solid #c99c3d;border-radius:6px;background:#07513b;color:#fff;padding:8px 11px 8px 12px;font:700 12px/1 Arial,sans-serif;box-shadow:0 2px 5px #0002}
  .mv47-hero button span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e0b646;color:#07513b;font-size:20px;line-height:1}

  .mv47-catalog{padding:16px 13px 12px;background:#fbf6ec}
  .mv47-catalog h2,.mv47-benefits h2{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 0 12px;color:#0c513b;text-align:center;font:700 clamp(18px,5.3vw,22px)/1 Georgia,serif;white-space:nowrap}
  .mv47-catalog h2>span,.mv47-benefits h2>span{display:block;height:1px;flex:1;max-width:40px;background:#c39a42}
  .mv47-cat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}
  .mv47-cat{border:0;padding:0;margin:0;border-radius:6px;overflow:hidden;background:#173f2d;box-shadow:0 2px 7px #32251128;min-width:0}
  .mv47-cat:nth-child(-n+3){grid-column:span 2;aspect-ratio:1/1.06}
  .mv47-cat:nth-child(n+4){grid-column:span 3;aspect-ratio:1.62/1}
  .mv47-cat img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center}.mv47-cat-mollusks{background:#102f27}.mv47-cat-mollusks img{object-fit:contain!important;object-position:center!important;transform:scale(.96)}

  .mv47-benefits{padding:0 12px 10px;background:#fbf6ec}
  .mv47-benefits h2{margin-bottom:10px;font-size:clamp(16px,4.7vw,20px)}
  .mv47-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;align-items:start}
  .mv47-benefit{display:grid;justify-items:center;align-content:start;gap:4px;min-width:0;text-align:center;color:#101d18}
  .mv47-benefit img{display:block;width:38px;height:38px;object-fit:contain}
  .mv47-benefit b{font:700 clamp(9px,2.7vw,11px)/1.16 Arial,sans-serif;overflow-wrap:normal;word-break:normal}

  .mv47-receipt{display:grid;grid-template-columns:42px minmax(0,1fr) 38px;align-items:center;gap:10px;width:calc(100% - 26px);min-height:50px;margin:0 13px 14px;padding:8px 10px;border:1px solid #c69b43;border-radius:7px;background:#fffaf2;color:#0c513b;text-align:left}
  .mv47-receipt-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid #d2ae5d;border-radius:4px;color:#c79d43;font-size:25px;line-height:1}
  .mv47-receipt-copy{display:grid;gap:3px;min-width:0}
  .mv47-receipt-copy>b{font:700 clamp(10px,3.2vw,13px)/1 Georgia,serif;color:#c39944;white-space:nowrap}
  .mv47-receipt-copy>span{font:400 11px/1.1 Arial,sans-serif;color:#273e34}
  .mv47-receipt em{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#07513b;color:#fff;font:700 15px/1 Arial,sans-serif;font-style:normal}

  .mv47-lower{display:grid;gap:10px;padding:0 13px 16px;background:#fbf6ec}
  .mv47-review,.mv47-island,.mv47-delivery{padding:13px;border:1px solid #dbcaa4;border-radius:7px;background:#fffaf2;color:#263b32}
  .mv47-review h2,.mv47-island h2,.mv47-delivery h2{margin:0 0 8px;font:700 18px/1.05 Georgia,serif;color:#0c513b}.mv47-review p,.mv47-island p,.mv47-delivery p{margin:4px 0;font:400 12px/1.4 Arial,sans-serif}.mv47-island{display:grid;grid-template-columns:1fr;gap:5px}.mv47-island p{margin:0}.mv47-island-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.mv47-review>a,.mv47-island a{color:#0c513b;font-weight:700;text-decoration:underline;text-underline-offset:2px}.mv47-delivery h3{margin:15px 0 7px;font:700 16px/1.1 Arial,sans-serif;color:#173f32}.mv47-stars{color:#b78c28;margin-top:6px}.mv47-review-arrows{display:flex;justify-content:flex-end;gap:6px}.mv47-review-arrows button{width:32px;height:32px;border:1px solid #c7a459;border-radius:50%;background:#fff;color:#0c513b;font-size:20px}.mv47-map{display:block;border-radius:7px;overflow:hidden}.mv47-map img{display:block;width:100%;height:auto}.mv47-footer{display:flex;align-items:center;gap:9px;padding:14px;background:#073e2f;color:#fff}.mv47-footer img{width:44px;height:44px;border-radius:50%}.mv47-footer span{display:grid;gap:3px}.mv47-footer b{font:700 14px/1 Georgia,serif}.mv47-footer small{font:400 9px/1 Arial,sans-serif}
}

@media (max-width:360px){
  .mv47-header{padding-left:11px;padding-right:11px;min-height:0}.mv47-brand{grid-template-columns:46px minmax(0,1fr);gap:8px}.mv47-brand>img{width:46px;height:46px}.mv47-brand-copy b{font-size:18px}.mv47-brand-copy em{font-size:8.7px}.mv47-phone{font-size:19px}.mv47-hours>div{gap:9px;font-size:9.6px}.mv47-hero{height:190px}.mv47-hero-copy{left:11px;top:35px;width:60%}.mv47-hero h1{font-size:30px}.mv47-hero p{font-size:12px}.mv47-catalog{padding-left:10px;padding-right:10px}.mv47-cat-grid{gap:6px}.mv47-benefits{padding-left:10px;padding-right:10px}.mv47-receipt{width:calc(100% - 20px);margin-left:10px;margin-right:10px;grid-template-columns:36px minmax(0,1fr) 32px;gap:7px}.mv47-receipt-icon{width:32px;height:32px}.mv47-receipt em{width:30px;height:30px}
}

@media (max-width:430px){.mv47-hero-copy{top:38px}.mv47-catalog{padding-top:14px}.mv47-catalog h2{font-size:19px}.mv47-benefits h2{font-size:18px}.mv47-lower{gap:9px}.mv47-map img{max-height:190px;object-fit:cover}.mv47-footer{padding-top:12px;padding-bottom:12px}}

/* v47 final pixel calibration against approved mobile reference */
@media (max-width:760px){
  .mv47-header{overflow:visible!important;padding-bottom:12px!important}
  .mv47-mast-cap{display:block;position:absolute;z-index:4;right:2.5%;bottom:-52px;width:52%;max-width:220px;height:auto;pointer-events:none;user-select:none}
  .mv47-hero{z-index:1;margin-top:0!important;height:230px!important;background-size:auto 102%!important;background-position:53% center!important;overflow:hidden!important}
  .mv47-hero-copy{top:52px!important}

  /* Exact approved benefit icons; never crop the wheel/anchor or other pictograms. */
  .mv47-benefit img{width:50px!important;height:50px!important;object-fit:contain!important;object-position:center!important;overflow:visible!important}
  .mv47-benefit{overflow:visible!important}
  .mv47-benefit-grid{overflow:visible!important;align-items:start!important}
  .mv47-benefits{overflow:visible!important;padding-top:2px!important}

  /* Live mollusks artwork must stay completely inside the home category card. */
  .mv47-cat-mollusks{overflow:hidden!important}
  .mv47-cat-mollusks img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important}

  /* Catalog tab/name guard for long category names on narrow phones. */
  #catalogModal .tabs button{max-width:170px!important;white-space:normal!important;line-height:1.15!important;text-align:center!important;overflow-wrap:anywhere!important}
  #catalogModal .product h3{overflow-wrap:anywhere!important;word-break:normal!important}
}
@media (max-width:430px){
  .mv47-mast-cap{right:1%;bottom:-48px;width:54%;max-width:210px}
  .mv47-hero{height:224px!important;background-position:54% center!important}
  .mv47-hero-copy{top:50px!important}
  .mv47-benefit img{width:46px!important;height:46px!important}
}
@media (max-width:360px){
  .mv47-mast-cap{bottom:-43px;width:55%}
  .mv47-hero{height:210px!important}
  .mv47-hero-copy{top:44px!important}
  .mv47-benefit img{width:42px!important;height:42px!important}
}

/* v47 ONE-PIECE MOBILE REFERENCE — final clean calibration.
   Desktop rules are untouched. This block replaces the previous mast overlay / independently-scaled hero. */
@media (max-width:760px){
  .mv47-mast-cap{display:none!important}
  .mv47-header{overflow:hidden!important;padding-bottom:10px!important}

  .mv47-hero.mv47-hero-onepiece{
    position:relative!important;
    display:block!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:none!important;
    border-bottom:1px solid #d8c494!important;
  }
  .mv47-hero-reference{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:none!important;
    object-fit:contain!important;
  }
  .mv47-hero-copy{display:none!important}
  .mv47-hero-hotspot{
    display:block!important;
    position:absolute!important;
    z-index:5!important;
    left:3.6%!important;
    bottom:8.3%!important;
    width:36.5%!important;
    height:14.8%!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    box-shadow:none!important;
    color:transparent!important;
    -webkit-tap-highlight-color:transparent!important;
  }

  .mv47-catalog{padding:16px 13px 12px!important}
  .mv47-cat-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}
  .mv47-cat{overflow:hidden!important;background:#102f27!important}
  .mv47-cat:nth-child(-n+3){grid-column:span 2!important;aspect-ratio:auto!important}
  .mv47-cat:nth-child(n+4){grid-column:span 3!important;aspect-ratio:auto!important}
  .mv47-cat img,
  .mv47-cat-mollusks img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }

  .mv47-benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:3px!important;align-items:start!important;overflow:visible!important}
  .mv47-benefit{display:block!important;min-width:0!important;overflow:visible!important;text-align:center!important}
  .mv47-benefit img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    object-fit:contain!important;
    overflow:visible!important;
  }
  .mv47-benefit b{display:none!important}
  .mv47-benefits{overflow:visible!important;padding:0 12px 10px!important}
}
@media (max-width:430px){
  .mv47-hero.mv47-hero-onepiece{height:auto!important}
}
@media (max-width:360px){
  .mv47-hero.mv47-hero-onepiece{height:auto!important}
}

/* v47 EXACT THREE-ZONE CALIBRATION
   Only: hero, captain categories, benefits. Desktop and everything below receipt are untouched. */
@media (max-width:760px){
  /* One continuous reference image includes the upper mast area + full hero.
     It overlaps into the bottom of the white header, so there is no separate mast overlay. */
  .mv47-exact-hero{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    margin-top:-10.798vw!important; /* 92px of 852px reference */
    padding:0!important;
    overflow:visible!important;
    background:none!important;
    border:0!important;
    z-index:2!important;
  }
  .mv47-exact-hero .mv47-hero-reference{
    display:block!important;width:100%!important;height:auto!important;max-width:none!important;
  }
  .mv47-exact-hero .mv47-hero-hotspot{
    position:absolute!important;
    left:3.45%!important;
    top:76.0%!important;
    width:36.8%!important;
    height:13.4%!important;
    border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;
    z-index:5!important;
  }

  /* Catalog is rendered from one exact slice so no card can gain white/green strips,
     no text (including ЖИВЫЕ МОЛЛЮСКИ) can escape its card, and 3+2 geometry is fixed. */
  .mv47-exact-catalog{
    position:relative!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fbf6ec!important;
    overflow:hidden!important;
  }
  .mv47-section-reference{display:block!important;width:100%!important;height:auto!important;max-width:none!important}
  .mv47-catalog-hotspots{position:absolute!important;inset:0!important;z-index:4!important}
  .mv47-catalog-hotspots button{position:absolute!important;border:0!important;background:transparent!important;padding:0!important;margin:0!important;-webkit-tap-highlight-color:transparent!important}
  .mv47-catalog-hotspots button:nth-child(1){left:3.4%;top:18.2%;width:27.0%;height:41.5%}
  .mv47-catalog-hotspots button:nth-child(2){left:32.1%;top:18.2%;width:31.5%;height:41.5%}
  .mv47-catalog-hotspots button:nth-child(3){left:65.5%;top:18.2%;width:29.2%;height:41.5%}
  .mv47-catalog-hotspots button:nth-child(4){left:3.4%;top:62.4%;width:43.5%;height:35.3%}
  .mv47-catalog-hotspots button:nth-child(5){left:49.0%;top:62.4%;width:45.5%;height:35.3%}

  /* Benefits is one exact reference slice: one heading only, no duplicate layer,
     full wheel/fish/thermometer/shield and intact captions. */
  .mv47-exact-benefits{
    position:relative!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fbf6ec!important;
    overflow:hidden!important;
  }
}

/* v47 mobile menu reliability fix — open the whole menu in normal document flow. */
@media (max-width:760px){
  .mv47-header{overflow:visible!important}
  .mv47-nav{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    width:100%!important;
    margin:9px 0 2px!important;
    padding:8px!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
    z-index:50!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .mv47-nav.open{display:grid!important}
  .mv47-nav a,.mv47-nav button{
    display:flex!important;align-items:center!important;
    min-height:38px!important;width:100%!important;
    padding:9px 10px!important;
    white-space:normal!important;overflow:visible!important;
  }
}
