/* V15 — Desktop Atelier Tightening Pass
   Keeps the V14 mobile rescue exactly where it works, then tightens desktop into a polished commerce surface.
   Goal: no huge slab, no empty white margins, tighter header, tighter product runways, clearer buying scan path. */
:root{
  --cc-v15-ink:#12070D;
  --cc-v15-soft:#FFF4FA;
  --cc-v15-blush:#F9D2E7;
  --cc-v15-pink:#E95A96;
  --cc-v15-hot:#FF4FA9;
  --cc-v15-wine:#462636;
  --cc-v15-max:1260px;
}

@media (min-width:821px){
  html{background:#12070D;}
  body.liquid-breath{
    background:
      radial-gradient(circle at 14% 0%, rgba(255,244,250,.18), transparent 24%),
      radial-gradient(circle at 88% 2%, rgba(233,90,150,.24), transparent 24%),
      linear-gradient(135deg,#12070D 0%,#25101d 31%,#F9D2E7 64%,#FFF4FA 100%) !important;
  }
  .page-shell{
    width:100%;
    overflow-x:hidden;
  }

  /* Desktop header: compact atelier console, not a billboard. */
  .site-header.statement-header,
  .statement-header{
    width:min(calc(100% - 48px), var(--cc-v15-max)) !important;
    max-width:var(--cc-v15-max) !important;
    margin:18px auto 14px !important;
    padding:14px 16px !important;
    border:2px solid rgba(255,244,250,.30) !important;
    border-radius:30px !important;
    display:grid !important;
    grid-template-columns:minmax(190px,240px) minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    column-gap:18px !important;
    row-gap:8px !important;
    background:
      radial-gradient(circle at 10% 8%, rgba(255,244,250,.22), transparent 20%),
      radial-gradient(circle at 94% 15%, rgba(233,90,150,.32), transparent 22%),
      linear-gradient(135deg,rgba(18,7,13,.98),rgba(45,16,31,.98) 52%,rgba(91,37,58,.94)) !important;
    box-shadow:0 18px 48px rgba(18,7,13,.26), inset 0 1px 0 rgba(255,255,255,.10) !important;
    overflow:hidden !important;
  }
  .statement-header::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.26;
    background:
      radial-gradient(circle at 12% 38%, rgba(255,255,255,.82) 0 1px, transparent 2.4px),
      radial-gradient(circle at 62% 16%, rgba(255,244,250,.78) 0 1px, transparent 2.2px),
      linear-gradient(110deg, transparent 0 43%, rgba(255,255,255,.16) 49%, transparent 57%);
    background-size:132px 84px,160px 100px,100% 100%;
    z-index:0;
  }
  .statement-header > *{position:relative;z-index:1;}
  .hero-wordmark{
    grid-column:1;
    grid-row:1 / span 2;
    width:100% !important;
    max-width:238px !important;
    height:auto !important;
    margin:0 !important;
    padding:8px 10px !important;
    border:1px solid rgba(255,244,250,.48) !important;
    border-radius:22px !important;
    background:
      radial-gradient(circle at 16% 5%, rgba(255,255,255,.58), transparent 32%),
      linear-gradient(135deg,rgba(255,244,250,.20),rgba(249,210,231,.08) 52%,rgba(18,7,13,.18)) !important;
    box-shadow:0 9px 22px rgba(18,7,13,.24), inset 0 1px 0 rgba(255,255,255,.26) !important;
    backdrop-filter:blur(12px) saturate(1.18);
  }
  .hero-wordmark img{
    width:100% !important;
    max-width:214px !important;
    max-height:54px !important;
    object-fit:contain !important;
    filter:drop-shadow(0 4px 7px rgba(18,7,13,.50)) drop-shadow(0 0 10px rgba(255,244,250,.16)) !important;
  }
  .header-subtitle{
    position:absolute !important;
    left:18px !important;
    bottom:10px !important;
    margin:0 !important;
    padding:.25rem .48rem !important;
    border-radius:999px !important;
    background:rgba(18,7,13,.50) !important;
    border:1px solid rgba(255,244,250,.16) !important;
    color:#FFF4FA !important;
    font-size:.56rem !important;
    line-height:1 !important;
    letter-spacing:.11em !important;
    text-shadow:none !important;
  }
  .statement-nav,
  .site-nav.statement-nav{
    grid-column:2;
    grid-row:1;
    justify-self:end;
    width:auto !important;
    max-width:100% !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:7px !important;
    margin:0 !important;
    padding:0 !important;
  }
  .statement-nav a{
    min-height:34px !important;
    padding:8px 12px !important;
    border-radius:999px !important;
    border:1px solid rgba(255,244,250,.25) !important;
    background:rgba(255,255,255,.10) !important;
    color:#FFF4FA !important;
    font-size:.76rem !important;
    font-weight:950 !important;
    letter-spacing:.03em !important;
    box-shadow:none !important;
    text-decoration:none !important;
    text-shadow:none !important;
  }
  .statement-nav a:hover,.statement-nav a:focus-visible{
    background:#FFF4FA !important;
    color:#12070D !important;
    outline:2px solid #E95A96 !important;
    outline-offset:2px !important;
  }
  .statement-nav a::after{display:none !important;}

  /* Compact language rail: visible, but no chunky desktop pill wall. */
  .language-switcher{
    grid-column:2;
    grid-row:2;
    justify-self:end;
    width:auto !important;
    max-width:100% !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:5px !important;
    margin:0 !important;
    padding:6px 7px !important;
    border:1px solid rgba(255,244,250,.22) !important;
    border-radius:18px !important;
    background:rgba(18,7,13,.38) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
    backdrop-filter:blur(12px) saturate(1.18) !important;
  }
  .language-switcher-label{
    color:#FFF4FA !important;
    background:rgba(233,90,150,.78) !important;
    border:1px solid rgba(255,244,250,.20) !important;
    border-radius:999px !important;
    padding:.32rem .50rem !important;
    font-size:.56rem !important;
    letter-spacing:.10em !important;
    margin:0 !important;
  }
  .language-switcher a{
    min-height:26px !important;
    padding:.29rem .48rem !important;
    font-size:.62rem !important;
    line-height:1 !important;
    color:#12070D !important;
    background:rgba(255,244,250,.93) !important;
    border:1px solid rgba(18,7,13,.18) !important;
    box-shadow:none !important;
  }

  /* Tighter global content canvas. */
  .surface-wide,
  .home-shell-centered,
  .home-shell,
  .statement-main > .section,
  .product-detail-main{
    width:min(calc(100% - 48px), var(--cc-v15-max)) !important;
    max-width:var(--cc-v15-max) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .home-shell-centered,
  .home-shell{
    padding:0 !important;
  }
  .statement-main,
  .main-flow{padding-top:0 !important;}
  .section{padding-top:24px !important;padding-bottom:24px !important;}
  .dark-band.statement-band,
  .statement-band{
    margin:18px auto !important;
    padding:24px !important;
    border-radius:30px !important;
  }

  /* Desktop hero becomes a tight editorial split. */
  .hero-stack,
  .hero-stack.text-card{
    margin:12px auto 18px !important;
    padding:30px !important;
    border-radius:34px !important;
    min-height:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.02fr) minmax(310px,.74fr) !important;
    grid-template-rows:auto auto auto auto auto auto !important;
    column-gap:28px !important;
    row-gap:10px !important;
    align-items:center !important;
    background:
      radial-gradient(circle at 10% 6%, rgba(255,255,255,.88), transparent 22%),
      radial-gradient(circle at 98% 2%, rgba(233,90,150,.34), transparent 24%),
      linear-gradient(135deg,rgba(255,244,250,.96),rgba(249,210,231,.82) 55%,rgba(255,255,255,.94)) !important;
    box-shadow:0 18px 50px rgba(91,37,58,.17), inset 0 1px 0 rgba(255,255,255,.62) !important;
  }
  .hero-stack > :not(.hero-visual-card){grid-column:1;}
  .hero-visual-card,
  .hero-visual-centered{
    grid-column:2 !important;
    grid-row:1 / -1 !important;
    align-self:stretch !important;
    justify-self:stretch !important;
    margin:0 !important;
    max-width:none !important;
    min-height:380px !important;
    border-radius:30px !important;
  }
  .hero-kicker{font-size:.74rem !important;letter-spacing:.16em !important;color:#9F195B !important;margin:0 !important;}
  .hero-title,
  .hero-title-centered{
    font-size:clamp(3.1rem,5.3vw,5.9rem) !important;
    line-height:.88 !important;
    margin:.10rem 0 !important;
    text-align:left !important;
    max-width:760px !important;
  }
  .hero-title-accent{display:block;font-size:.46em;line-height:1.04;margin-top:.18em;}
  .hero-text,
  .hero-text-centered,
  .hero-overdrive-note{
    max-width:670px !important;
    text-align:left !important;
    margin:.1rem 0 !important;
    color:#12070D !important;
    font-size:clamp(1rem,1.1vw,1.12rem) !important;
    line-height:1.38 !important;
  }
  .hero-actions,
  .hero-actions-centered{
    justify-content:flex-start !important;
    gap:10px !important;
    margin-top:7px !important;
  }
  .feature-chips,
  .feature-chips-centered{
    justify-content:flex-start !important;
    gap:7px !important;
    margin-top:2px !important;
  }

  /* CTA punch without oversized desktop bricks. */
  .cta-slab,.ghost-slab,.cta-wow,.small-slab{
    min-height:42px !important;
    padding:.78rem 1.05rem !important;
    border-radius:16px !important;
    border-width:2px !important;
    box-shadow:3px 3px 0 #12070D !important;
    font-size:.86rem !important;
    line-height:1 !important;
  }
  .hero-actions .cta-slab,.hero-actions .ghost-slab{
    min-height:48px !important;
    padding:.92rem 1.24rem !important;
    font-size:.94rem !important;
  }

  /* Product grid: showroom surfaces, but tighter density. */
  .best-grid,
  .catalog-grid-premium.shop-surface-grid,
  .catalog-grid-premium{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
    align-items:stretch !important;
  }
  .product-card.product-surface,
  .product-card.product-showroom-surface{
    grid-template-columns:minmax(180px,.82fr) minmax(0,1.18fr) !important;
    min-height:248px !important;
    border-width:2px !important;
    border-radius:28px !important;
    box-shadow:5px 5px 0 #12070D,0 18px 40px rgba(91,37,58,.16) !important;
  }
  .product-card.product-surface::after{inset:8px !important;border-radius:22px !important;}
  .product-card.product-surface .product-stage,
  .product-card.product-surface .product-runway-stage{
    min-height:248px !important;
    padding:18px !important;
    border-right-width:2px !important;
  }
  .product-card.product-surface .product-stage img{
    width:min(100%,300px) !important;
    max-height:218px !important;
  }
  .product-card.product-surface .product-body,
  .product-surface-body,
  .product-showroom-body{
    padding:17px 18px !important;
    gap:.48rem !important;
    justify-content:center !important;
  }
  .product-status-row,
  .surface-topline{gap:5px !important;}
  .product-card.product-surface .status-tag,
  .surface-mini-tag,
  .surface-availability{
    font-size:.55rem !important;
    padding:.30rem .42rem !important;
    border-width:1px !important;
    box-shadow:1px 1px 0 #12070D !important;
  }
  .product-card.product-surface .product-body h3{
    font-size:clamp(1.22rem,1.5vw,1.72rem) !important;
    line-height:1 !important;
    margin:.05rem 0 !important;
  }
  .product-card.product-surface .product-body p{
    font-size:.86rem !important;
    line-height:1.26 !important;
    margin:.02rem 0 !important;
    color:#12070D !important;
  }
  .surface-facts{gap:4px 8px !important;margin:.06rem 0 !important;}
  .surface-facts li{font-size:.60rem !important;padding-left:.70rem !important;}
  .product-card.product-surface .price-row{
    padding-top:.50rem !important;
    margin-top:.08rem !important;
  }
  .product-card.product-surface .price-row span{font-size:.60rem !important;color:#7b244b !important;}
  .product-card.product-surface .price-row strong{font-size:clamp(1.55rem,2.2vw,2.25rem) !important;}
  .product-surface-actions{gap:7px !important;margin-top:.08rem !important;}
  .product-surface-actions .cta-slab,.product-surface-actions .ghost-slab{
    min-height:40px !important;
    padding:.68rem .78rem !important;
    font-size:.78rem !important;
    border-radius:14px !important;
  }
  .surface-note{font-size:.64rem !important;margin:0 !important;color:#5B253A !important;}
  .surface-corner-badge{font-size:.56rem !important;padding:.28rem .42rem !important;}
  .surface-tap-hint{font-size:.58rem !important;}

  /* Product detail pages: tighter, more like a product room. */
  .product-detail-main{padding:16px 0 34px !important;}
  .product-detail-surface{
    grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr) !important;
    border-width:3px !important;
    border-radius:34px !important;
    box-shadow:8px 8px 0 #12070D,0 26px 58px rgba(91,37,58,.22) !important;
  }
  .product-detail-media{
    min-height:clamp(430px,40vw,560px) !important;
    padding:30px !important;
    border-right-width:3px !important;
  }
  .product-detail-media img{max-height:500px !important;}
  .product-detail-copy{padding:34px 38px !important;gap:.78rem !important;}
  .product-detail-copy .ornament-title{font-size:clamp(2.6rem,4.3vw,5rem) !important;line-height:.90 !important;}
  .product-detail-lede{font-size:1.06rem !important;line-height:1.38 !important;color:#12070D !important;}
  .product-price-panel{padding:.82rem 1rem !important;border-width:2px !important;border-radius:20px !important;}
  .product-price-panel strong{font-size:clamp(2rem,3.4vw,3.45rem) !important;}

  /* Supporting panels: tighter but still decorative. */
  .split-intro,.split-intro-center{margin-bottom:14px !important;}
  .section-lede,.section-lede-center{max-width:680px !important;line-height:1.38 !important;}
  .comment-grid,.giving-org-grid{gap:14px !important;}
  .love-note-card,.proof-card,.giving-org-card,.panel,.option-card{
    border-width:2px !important;
    border-radius:24px !important;
    box-shadow:4px 4px 0 #12070D !important;
  }
  .footer-grid-tight,.footer-grid{width:min(calc(100% - 48px),var(--cc-v15-max)) !important;gap:18px !important;}
}

@media (min-width:1280px){
  .best-grid,
  .catalog-grid-premium.shop-surface-grid,
  .catalog-grid-premium{gap:18px !important;}
  .product-card.product-surface .product-stage img{max-height:232px !important;}
}
