/** Shopify CDN: Minification failed

Line 389:19 Unexpected "__inner"

**/
/* fc-mobile-polish-v6.css — Cucina Modena final mobile premium polish
   Goal: competitor-grade mobile feel (Aesop/Glossier/SSENSE/Zalando parity).
   Loaded AFTER all other fc-mobile CSS, so wins specificity ties. */

/* ============================================
   GLOBAL (all viewports) — subtle premium base
   ============================================ */
html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  -webkit-tap-highlight-color:rgba(191,138,53,.08);
}
body{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
*,::before,::after{box-sizing:border-box}
img,video{max-width:100%;height:auto;display:block}
button,a{-webkit-tap-highlight-color:transparent}

/* Selection styling */
::selection{background:rgba(191,138,53,.22);color:#111}

/* Smooth momentum scroll on iOS */
.fc-carousel,.fc-prod-cat__grid,[class*="scroll-x"],[class*="horizontal"]{
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  scrollbar-width:none;
}
.fc-carousel::-webkit-scrollbar,
.fc-prod-cat__grid::-webkit-scrollbar,
[class*="scroll-x"]::-webkit-scrollbar{display:none}

/* ============================================
   MOBILE (<=640px) — the premium polish layer
   ============================================ */
@media (max-width:640px){

  /* --- Typography rhythm --- */
  :root{
    --fc-type-xs:11px;
    --fc-type-sm:13px;
    --fc-type-base:15px;
    --fc-type-lg:17px;
    --fc-type-xl:22px;
    --fc-type-2xl:28px;
    --fc-type-3xl:34px;
    --fc-sp-1:8px;
    --fc-sp-2:12px;
    --fc-sp-3:16px;
    --fc-sp-4:24px;
    --fc-sp-5:32px;
    --fc-sp-6:48px;
    --fc-radius:12px;
    --fc-radius-sm:8px;
    --fc-ease:cubic-bezier(.22,.61,.36,1);
  }

  body{font-size:var(--fc-type-base);line-height:1.55}

  h1,.h1{font-size:var(--fc-type-3xl)!important;line-height:1.12!important;letter-spacing:-.02em!important}
  h2,.h2{font-size:var(--fc-type-2xl)!important;line-height:1.18!important;letter-spacing:-.015em!important}
  h3,.h3{font-size:var(--fc-type-xl)!important;line-height:1.25!important;letter-spacing:-.01em!important}
  h4,.h4{font-size:var(--fc-type-lg)!important;line-height:1.35!important}
  p{font-size:var(--fc-type-base);line-height:1.6}
  small,.caption,[class*="caption"]{font-size:var(--fc-type-xs);letter-spacing:.04em;text-transform:uppercase}

  /* Pretty hyphenation prevents awkward word breaks */
  h1,h2,h3,p{
    -webkit-hyphens:auto;
    hyphens:auto;
    overflow-wrap:break-word;
    word-wrap:break-word;
  }

  /* --- Section rhythm — consistent vertical cadence --- */
  section,
  .shopify-section > section,
  .shopify-section > div{
    padding-left:16px;
    padding-right:16px;
  }
  .shopify-section + .shopify-section{
    margin-top:0;
  }
  section[class*="fc-"]:not(.fc-ticker):not(.fc-announ):not(.fc-header):not(.fc-footer){
    padding-top:var(--fc-sp-6);
    padding-bottom:var(--fc-sp-6);
  }

  /* --- Touch targets — WCAG 2.5.5 minimum 44×44 --- */
  button,
  a.button,
  .btn,
  [class*="button"]:not(.buttons-container):not([class*="group"]),
  input[type=submit],
  input[type=button],
  [role="button"]{
    min-height:48px;
    min-width:48px;
    padding:14px 20px;
    font-size:15px;
    font-weight:600;
    letter-spacing:.01em;
    border-radius:var(--fc-radius);
    transition:transform .18s var(--fc-ease),box-shadow .18s var(--fc-ease),background .18s var(--fc-ease);
    touch-action:manipulation;
  }
  button:active,
  a.button:active,
  .btn:active,
  [role="button"]:active{
    transform:scale(.97);
  }

  /* Primary CTA — premium gold gradient */
  .btn-primary,
  .fc-cta-primary,
  button[type="submit"],
  form[action^="/cart/add"] button[name="add"]{
    background:linear-gradient(180deg,#c89550 0%,#a97a38 100%)!important;
    color:#fff!important;
    box-shadow:0 2px 8px rgba(169,122,56,.25),0 0 0 0 rgba(191,138,53,.4)!important;
    border:none!important;
    letter-spacing:.02em!important;
    text-transform:none!important;
  }
  .btn-primary:active,
  form[action^="/cart/add"] button[name="add"]:active{
    box-shadow:0 1px 4px rgba(169,122,56,.3),0 0 0 4px rgba(191,138,53,.15)!important;
  }

  /* --- Header polish — compact, sticky, glassy --- */
  header.fc-header,
  .fc-header,
  .fc-head-v2,
  [class*="header-v2"]{
    position:sticky!important;
    top:0;
    z-index:90;
    backdrop-filter:saturate(180%) blur(14px);
    -webkit-backdrop-filter:saturate(180%) blur(14px);
    background:rgba(255,253,249,.92)!important;
    border-bottom:1px solid rgba(0,0,0,.06);
    min-height:54px;
    transition:transform .3s var(--fc-ease);
  }

  /* --- Hero — room to breathe, no cropped text --- */
  .fc-hero,.fc-hero4,.fc-hero2{
    padding:var(--fc-sp-5) 16px var(--fc-sp-6)!important;
    min-height:auto!important;
  }
  .fc-hero h1,.fc-hero4 h1,.fc-hero2 h1{
    max-width:100%;
    margin:0 auto var(--fc-sp-3);
  }
  .fc-hero p,.fc-hero4 p,.fc-hero2 p{
    max-width:44ch;
    margin-left:auto;
    margin-right:auto;
  }

  /* --- Product cards — Zalando/SSENSE tight 2-col --- */
  .fc-shop__grid,
  .fc-prod-cat__grid,
  .collection-grid,
  .grid[class*="product"],
  [class*="products"] .grid,
  .fc-collection__grid{
    display:grid!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:12px!important;
    padding:0 12px!important;
  }
  .fc-shop__card,
  .fc-prod-cat__card,
  .fc-product-card,
  .grid__item[class*="product"],
  .product-card-wrapper{
    border-radius:var(--fc-radius-sm);
    overflow:hidden;
    background:#fff;
    transition:transform .2s var(--fc-ease);
  }
  .fc-shop__card:active,
  .fc-prod-cat__card:active,
  .product-card-wrapper:active{
    transform:scale(.98);
  }
  .fc-shop__card img,
  .fc-prod-cat__card img,
  .product-card-wrapper img{
    aspect-ratio:1/1;
    object-fit:cover;
    border-radius:var(--fc-radius-sm) var(--fc-radius-sm) 0 0;
  }
  .fc-shop__card h3,.fc-shop__card .title,
  .fc-prod-cat__card h3,.fc-prod-cat__card .title,
  .product-card-wrapper .card__heading{
    font-size:14px!important;
    font-weight:500!important;
    line-height:1.3!important;
    margin:8px 10px 4px!important;
    letter-spacing:0!important;
    text-transform:none!important;
  }
  .fc-shop__price,
  .fc-prod-cat__price,
  .price__container,
  [class*="price"]{
    font-size:14px!important;
    font-weight:600!important;
    color:#111!important;
    padding:0 10px 10px!important;
  }

  /* --- Carousel nav — larger, thumbable --- */
  .fc-carousel{padding:0 16px}
  .fc-carousel__track{gap:12px;scroll-snap-type:x mandatory;padding-bottom:4px}
  .fc-carousel__track > *{scroll-snap-align:start;flex:0 0 78%;max-width:280px}

  /* --- Forms — iOS-native feel, no zoom on focus --- */
  input,select,textarea{
    font-size:16px!important; /* prevents iOS zoom */
    min-height:48px;
    padding:12px 14px;
    border-radius:var(--fc-radius-sm);
    border:1px solid rgba(0,0,0,.12);
    background:#fff;
    transition:border-color .15s var(--fc-ease),box-shadow .15s var(--fc-ease);
  }
  input:focus,select:focus,textarea:focus{
    outline:none;
    border-color:#bf8a35;
    box-shadow:0 0 0 3px rgba(191,138,53,.15);
  }

  /* --- FAQ accordion — smooth + larger tap --- */
  .fc-faq details,
  .fc-faq2 details,
  details{
    border-bottom:1px solid rgba(0,0,0,.08);
    transition:background .15s var(--fc-ease);
  }
  details summary{
    min-height:56px;
    padding:16px 40px 16px 4px;
    font-size:15px;
    font-weight:500;
    line-height:1.4;
    cursor:pointer;
    position:relative;
    list-style:none;
  }
  details summary::-webkit-details-marker{display:none}
  details summary::after{
    content:"+";
    position:absolute;
    right:4px;
    top:50%;
    transform:translateY(-50%);
    font-size:22px;
    font-weight:300;
    color:#bf8a35;
    transition:transform .2s var(--fc-ease);
  }
  details[open] summary::after{
    content:"−";
    transform:translateY(-50%) rotate(0);
  }
  details[open]{background:rgba(191,138,53,.03)}
  details > *:not(summary){
    padding:0 4px 16px;
    font-size:14px;
    line-height:1.6;
    color:#444;
  }

  /* --- Safe area (iPhone notch / home bar) --- */
  .fc-sticky-atc,
  .fc-sticky-atc__inner,
  footer.fc-footer,
  .fc-footer{
    padding-bottom:calc(env(safe-area-inset-bottom,0) + 8px)!important;
  }
  body.template-product{
    padding-bottom:calc(74px + env(safe-area-inset-bottom,0))!important;
  }

  /* --- Cart drawer mobile pass --- */
  #fc-dr, .fc-cart-drawer, .fc-dr{
    width:100%!important;
    max-width:100%!important;
    border-radius:16px 16px 0 0;
  }
  .fc-dr__header, [class*="cart-drawer__header"]{
    padding-top:calc(20px + env(safe-area-inset-top,0))!important;
  }

  /* --- Scroll reveal (progressive, no jank) --- */
  [data-reveal]{opacity:0;transform:translateY(12px);transition:opacity .5s var(--fc-ease),transform .5s var(--fc-ease)}
  [data-reveal].is-visible{opacity:1;transform:translateY(0)}

  /* --- Reduce motion respect --- */
  @media (prefers-reduced-motion:reduce){
    *,*::before,*::after{
      animation-duration:0.01ms!important;
      animation-iteration-count:1!important;
      transition-duration:0.01ms!important;
      scroll-behavior:auto!important;
    }
  }

  /* --- Skeleton / empty states --- */
  .is-loading,[data-loading]{
    background:linear-gradient(90deg,#f4f4f4 0%,#fafafa 50%,#f4f4f4 100%);
    background-size:200% 100%;
    animation:fcSkelly 1.2s ease-in-out infinite;
  }
  @keyframes fcSkelly{
    0%{background-position:200% 0}
    100%{background-position:-200% 0}
  }

  /* --- Image protection from layout shift --- */
  img[src]{background:#f6f4ef}
  img[loading="lazy"]{content-visibility:auto}

  /* --- Ticker polish — no cut off --- */
  .fc-ticker{
    font-size:12px;
    padding:8px 0;
    letter-spacing:.06em;
    text-transform:uppercase;
  }

  /* --- Announcement bar tightening --- */
  .fc-announ,[class*="announcement"]{
    font-size:12px;
    padding:6px 12px;
    letter-spacing:.04em;
  }

  /* --- USP/feature grid — 2×N never stacks to 1 --- */
  .fc-materials__grid,
  .fc-usp__grid,
  [class*="usp"][class*="grid"]{
    grid-template-columns:repeat(2,1fr)!important;
    gap:10px!important;
  }
  .fc-materials__card,
  .fc-usp__card{
    padding:14px 12px!important;
    min-height:auto!important;
  }
  .fc-materials__card h3,
  .fc-usp__card h3{
    font-size:13px!important;
    line-height:1.25!important;
  }

  /* --- Footer spacing --- */
  .fc-footer{
    padding-top:40px;
    font-size:13px;
  }
  .fc-footer h4,
  .fc-footer .h4{
    font-size:12px;
    letter-spacing:.1em;
    text-transform:uppercase;
    margin-bottom:12px;
  }
  .fc-footer a{
    display:inline-block;
    padding:6px 0;
    color:rgba(0,0,0,.7);
  }

  /* --- Storia split — image first then text on mobile --- */
  .fc-storia__inner,
  [class*="storia"]__inner{
    display:flex!important;
    flex-direction:column!important;
    gap:20px!important;
  }
  .fc-storia__img,
  [class*="storia"] img{
    order:-1;
    border-radius:var(--fc-radius);
    aspect-ratio:4/3;
    object-fit:cover;
  }

  /* --- Comparison tables — stack gracefully --- */
  .fc-vs__table,
  table[class*="compare"]{
    font-size:13px;
  }
  .fc-vs__table th,
  .fc-vs__table td{
    padding:10px 8px!important;
  }

  /* --- Sticky ATC refinement --- */
  .fc-sticky-atc,
  .fc-sa{
    box-shadow:0 -4px 20px rgba(0,0,0,.08)!important;
    border-top:1px solid rgba(0,0,0,.05)!important;
  }

  /* --- Image gallery: snap + dots --- */
  .fc-prod__gallery,
  .product__media-list,
  [class*="product"] [class*="gallery"]{
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .fc-prod__gallery > *,
  .product__media-list > *{
    scroll-snap-align:center;
  }

  /* --- Links — subtle underline on tap --- */
  a:not(.btn):not(.button){
    text-underline-offset:3px;
  }
}

/* ============================================
   TABLET (641-1024px) — in-between optimization
   ============================================ */
@media (min-width:641px) and (max-width:1024px){
  .fc-shop__grid,
  .fc-collection__grid{
    grid-template-columns:repeat(3,1fr)!important;
    gap:16px!important;
  }
  section[class*="fc-"]{
    padding-left:24px!important;
    padding-right:24px!important;
  }
}

/* ============================================
   HIGH-DPI — sharper borders + shadows
   ============================================ */
@media (min-resolution:2dppx),(-webkit-min-device-pixel-ratio:2){
  .fc-shop__card,
  .product-card-wrapper{
    border:.5px solid rgba(0,0,0,.06);
  }
}
