/* MounCake / Inner catalogue visual refresh. Keep original catalogue content and interactions. */
.cakes-page {
  --catalog-text: #302523;
  --catalog-muted: #776862;
  --catalog-line: #eee3dd;
  --catalog-warm: #fff8f3;
  --catalog-soft: #fbf2ed;
  background: #fffdfb;
  color: var(--catalog-text);
}
.cakes-page .page-glow {display:none;}
.cakes-page .site-header {background:rgba(255,253,251,.97);}
.cakes-page .header-inner {max-width:1320px;}
.cakes-page .container {max-width:1260px;}
/* Consistent photographic introduction across all eight catalogues and fillings. */
.cakes-page .cakes-page-hero,
.cakes-page.small-desserts-page .small-desserts-hero,
.cakes-page.decor-page .decor-hero {
  position:relative;
  display:flex;
  align-items:center;
  min-height:294px;
  padding:40px 0 46px;
  margin:0;
  text-align:left;
  background:
    linear-gradient(90deg,rgba(255,250,246,.99) 0%,rgba(255,250,246,.98) 39%,rgba(255,247,241,.79) 59%,rgba(255,245,237,.14) 100%),
    url("../assets/img/home/hero-desktop-1920x760.webp") right 48% / cover no-repeat;
  border-top:0;
  border-bottom:1px solid #eedfd8;
}
.cakes-page .cakes-page-hero .container,
.cakes-page.decor-page .decor-hero .container {max-width:1260px; margin-inline:auto;}
.cakes-page .cakes-page-hero .eyebrow {
  display:inline-block;
  width:auto;
  margin:0 0 12px;
  padding:0;
  background:none;
  border:0;
  box-shadow:none;
  color:#b6435a;
  letter-spacing:.13em;
  font:800 11px/1.3 Inter,InterCustom,Arial,sans-serif;
  text-transform:uppercase;
}
.cakes-page .cakes-page-hero h1 {
  margin:0;
  max-width:680px;
  color:#342823;
  font:500 clamp(42px,4.1vw,62px)/1.04 Georgia,"Times New Roman",serif;
  letter-spacing:-.041em;
}
.cakes-page .cakes-page-hero p,
.cakes-page.decor-page .decor-hero p {
  margin:15px 0 0;
  max-width:530px;
  color:#615750;
  font:400 15px/1.55 Inter,InterCustom,Arial,sans-serif;
}
.catalog-crumbs {display:flex;align-items:center;gap:9px;margin:0 0 19px;color:#967b6d;font-size:11px;font-weight:600;}
.catalog-crumbs a {color:#a95354;text-decoration:none;}
.catalog-crumbs a:hover{text-decoration:underline;}
.catalog-crumbs span[aria-hidden]{font-size:14px;}
/* Functional sticky subsection navigation, including fillings.html (which has no cakes.css). */
.cakes-page .cake-category-nav,
.cakes-page .small-desserts-nav,
.cakes-page .decor-styles-nav {
  position:sticky;
  top:77px;
  z-index:46;
  padding:0;
  margin:0;
  border-top:0;
  border-bottom:1px solid var(--catalog-line);
  background:rgba(255,253,250,.96);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
.cakes-page .cake-category-nav .container,
.cakes-page .small-desserts-nav .container,
.cakes-page .decor-styles-nav .container {
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-start;
  max-width:1260px;
  min-height:65px;
  padding:10px 0;
  margin-inline:auto;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.cakes-page .cake-category-nav .container::-webkit-scrollbar,
.cakes-page .small-desserts-nav .container::-webkit-scrollbar,
.cakes-page .decor-styles-nav .container::-webkit-scrollbar {display:none;}
.cakes-page .cake-category-nav a,
.cakes-page .small-desserts-nav a,
.cakes-page .decor-styles-nav a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:37px;
  margin:0;
  padding:8px 15px;
  border:1px solid #eaded8;
  border-radius:999px;
  background:#fff;
  box-shadow:none;
  color:#66524d;
  font:700 12px/1.3 Inter,InterCustom,Arial,sans-serif;
  text-decoration:none;
  white-space:nowrap;
  transition:background .18s,border-color .18s,color .18s;
}
.cakes-page .cake-category-nav a:hover,
.cakes-page .cake-category-nav a[aria-current="location"],
.cakes-page .small-desserts-nav a:hover,
.cakes-page .small-desserts-nav a[aria-current="location"],
.cakes-page .decor-styles-nav a:hover,
.cakes-page .decor-styles-nav a[aria-current="location"] {
  color:#a43b54;
  border-color:#db9eaa;
  background:#fff1ee;
  transform:none;
}
/* Spacious product catalogue: comfortable text, consistent media, actionable cards. */
.cakes-page .cake-category,
.cakes-page .extra-dessert-category,
.cakes-page .tart-category {
  padding:53px 0 59px;
  margin:0;
  scroll-margin-top:155px;
  border-bottom:1px solid #f3ebe6;
  background:#fffdfb;
}
.cakes-page .cake-category:nth-of-type(even) {background:#fbf6f2;}
.cakes-page .cake-category-head {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:22px;
  margin:0 0 23px;
}
.cakes-page .cake-category-head h2 {
  margin:0;
  color:#342823;
  font:500 clamp(30px,3vw,43px)/1.12 Georgia,"Times New Roman",serif;
  letter-spacing:-.03em;
}
.cakes-page .cake-category-head p {
  max-width:490px;
  margin:0 0 4px;
  color:#776963;
  font-size:13px;
  line-height:1.55;
}
.cakes-page .cake-grid,
.open-catalog .cake-grid,
.mousse-catalog .cake-grid,
.pastries-page #mousse-pastries .cake-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:20px;
}
.open-catalog .cake-grid,.pastries-page #mousse-pastries .cake-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
.cakes-page .cake-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid #eee4df;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 25px rgba(86,55,48,.055);
  transition:box-shadow .2s, transform .2s;
}
.cakes-page .cake-card:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(86,55,48,.1);}
.cakes-page .cake-card-media {position:relative;aspect-ratio:1/1;min-height:0;overflow:hidden;background:#f7f0ea;}
.cakes-page .cake-card-media img {
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  transition:transform .35s;
}
.cakes-page .cake-card:hover .cake-card-media img{transform:scale(1.025);}
.cakes-page .cake-card-body{
  display:flex;
  flex:1;
  flex-direction:column;
  align-items:stretch;
  min-height:166px;
  padding:18px 18px 20px;
}
.cakes-page .cake-card-kicker{
  display:block;
  margin:0 0 9px;
  color:#ae4c5a;
  font-size:10px;
  line-height:1.25;
  font-weight:800;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.cakes-page .cake-card h3 {
  margin:0 0 9px;
  color:#352b27;
  font:600 21px/1.17 Georgia,"Times New Roman",serif;
  letter-spacing:-.012em;
  overflow-wrap:anywhere;
}
.cakes-page .cake-card p,
.cakes-page .cake-card .variant {
  margin:0 0 9px;
  color:#766a65;
  font-size:12.5px;
  line-height:1.55;
}
.cakes-page .cake-card p.variant+p.variant{margin-top:0;}
.cakes-page .cake-card p b{color:#4f3a35;}
.cakes-page .cake-card .extended-card-weight {color:#a7495b!important;font-size:12px!important;font-weight:700;}
.cake-order-link {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  align-self:stretch;
  gap:10px;
  min-height:38px;
  margin-top:auto;
  padding:10px 0 0;
  border-top:1px solid #f2e9e4;
  color:#b13e59;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
}
.cake-order-link:hover{color:#872b47;}
.cake-order-link span[aria-hidden]{display:grid;place-items:center;flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:#f9e8e6;font-size:16px;}
.cakes-page .cake-card-body>.tart-view-switch{margin-top:auto;margin-bottom:12px;}
.cakes-page .tart-card-body{min-height:0;}
.cakes-page .tart-view.is-active,
.cakes-page .tart-view:hover{border-color:#d2a6a5;background:#fff2ef;color:#a33d54;}
.cakes-page .tart-order-note,
.cakes-page .extended-order-note,
.cakes-page .decor-bottom {
  border:1px solid #ecd7d5;
  border-radius:16px;
  background:linear-gradient(115deg,#fff6f1,#fbe9e8);
  box-shadow:none;
}
.cakes-page .tart-order-note a,
.cakes-page .extended-order-note a,
.cakes-page .decor-bottom a,
.cakes-page .profiteroles-order>a,
.cakes-page .extra-order-link{
  border-radius:10px;
  border:0;
  background:#bb405c;
  color:#fff;
  box-shadow:none;
}
.cakes-page .tart-order-note a:hover,
.cakes-page .extended-order-note a:hover,
.cakes-page .decor-bottom a:hover,
.cakes-page .profiteroles-order>a:hover,
.cakes-page .extra-order-link:hover{background:#96344d;color:#fff;}
/* All original 23 recipe/ingredient illustrations are displayed without clipping. */
.fillings-page .fillings-main{padding:46px 0 75px;}
.fillings-page .filling-group{display:block;margin:0 0 58px;scroll-margin-top:153px;}
.fillings-page .filling-title{display:block;margin:0 0 22px;padding:0;border:0;background:none;border-radius:0;}
.fillings-page .filling-title h4{
  margin:0 0 8px;
  color:#342823;
  font:500 clamp(30px,3vw,42px)/1.1 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
}
.fillings-page .filling-title p{max-width:710px;margin:0;color:#796962;font-size:13px;line-height:1.55;}
.fillings-page .filling-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}
.fillings-page .catalog-item{
  min-width:0;
  overflow:hidden;
  border:1px solid #eee4df;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 25px rgba(86,55,48,.055);
  transition:transform .2s,box-shadow .2s;
}
.fillings-page .catalog-item:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(86,55,48,.1);}
.fillings-page .catalog-item>a{display:flex;flex-direction:column;height:100%;min-width:0;}
.fillings-page .catalog-item img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  object-fit:contain;
  object-position:center;
  background:#fcf8f4;
}
.fillings-page .catalog-card-info{display:flex;flex:1;flex-direction:column;align-items:stretch;min-height:142px;padding:15px 17px 17px;}
.fillings-page .catalog-card-info h3{margin:0 0 8px;color:#352b27;font:600 19px/1.2 Georgia,"Times New Roman",serif;}
.fillings-page .catalog-card-info p{flex:1;margin:0 0 12px;color:#766a65;font-size:12px;line-height:1.5;}
.fillings-page .catalog-card-info span{display:block;margin-top:auto;padding-top:11px;border-top:1px solid #f2e9e4;color:#b13e59;font-size:12px;font-weight:800;}
.fillings-page .catalog-card-info span::after{content:" ↗";}
/* Small desserts: keep assortment, original quantities, switcher and price lists. */
.small-desserts-page .profiteroles-gallery,
.small-desserts-page .extra-dessert-layout {gap:20px;}
.small-desserts-page .profiteroles-gallery figure,
.small-desserts-page .extra-dessert-photo,
.small-desserts-page .profiteroles-tastes,
.small-desserts-page .profiteroles-order,
.small-desserts-page .extra-dessert-detail,
.small-desserts-page .cookies-info {
  border-color:#eee3dd;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 25px rgba(86,55,48,.045);
}
.small-desserts-page .profiteroles-gallery img,
.small-desserts-page .extra-dessert-photo img{aspect-ratio:1/1;object-fit:cover;}
.small-desserts-page .profiteroles-gallery figcaption,
.small-desserts-page .extra-dessert-photo figcaption{color:#756660;}
.small-desserts-page .profiteroles-details h3,
.small-desserts-page .extra-dessert-detail h3{color:#382b27;font:600 26px/1.2 Georgia,"Times New Roman",serif;}
.small-desserts-page .profiteroles-tastes li,
.small-desserts-page .extra-tastes li{background:#fbf1ee;color:#674e4a;}
.small-desserts-page .profiteroles-order dl>div,
.small-desserts-page .extra-price-list>div{border-color:#f1e5df;}
.small-desserts-page .profiteroles-order dd,
.small-desserts-page .extra-price-list dd,
.small-desserts-page .cookies-info-item strong{color:#44312f;}
/* Decor: editorial gallery cards rather than a dense generic shop grid. */
.cakes-page.decor-page .decor-catalog{padding-top:47px;padding-bottom:75px;}
.cakes-page.decor-page .decor-intro{margin-bottom:26px;}
.cakes-page.decor-page .decor-intro h2{color:#342823;font:500 38px/1.12 Georgia,"Times New Roman",serif;}
.cakes-page.decor-page .decor-intro p{color:#766a65;font-size:13px;}
.cakes-page.decor-page .decor-intro>a{background:#f9e9e8;border-radius:10px;color:#a84358;}
.cakes-page.decor-page .decor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.cakes-page.decor-page .decor-card{border-color:#eee4df;border-radius:15px;box-shadow:0 8px 25px rgba(86,55,48,.055);}
.cakes-page.decor-page .decor-card-media{background:#fbf3ee;}
.cakes-page.decor-page .decor-main-image{width:100%;aspect-ratio:1/1;object-fit:cover;}
.cakes-page.decor-page .decor-card-body{padding:19px 20px 23px;}
.cakes-page.decor-page .decor-kicker{color:#b44b5e;}
.cakes-page.decor-page .decor-card h2{color:#342823;font-size:24px;line-height:1.18;}
.cakes-page.decor-page .decor-card p{color:#766a65;font-size:13px;}
.cakes-page.decor-page .decor-action{color:#a93b56;}
/* Full footer and useful mobile actions on all catalogue pages. */
.cakes-page .site-footer{margin-top:0;border-top:1px solid #f0e5df;}
.cakes-page .site-footer .container{max-width:1260px;}
.cakes-page .mobile-bottom{display:none;}
@media(max-width:1050px){
  .cakes-page .cakes-page-hero{min-height:260px;}
  .cakes-page .cake-grid,.mousse-catalog .cake-grid,.fillings-page .filling-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;}
  .open-catalog .cake-grid,.pastries-page #mousse-pastries .cake-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cakes-page.decor-page .decor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
  .cakes-page .cake-category-nav,.cakes-page .small-desserts-nav,.cakes-page .decor-styles-nav{top:72px;}
}
@media(max-width:760px){
  .cakes-page .container{width:calc(100% - 34px);}
  .cakes-page .header-inner{min-height:63px;}
  .cakes-page .cakes-page-hero,
  .cakes-page.small-desserts-page .small-desserts-hero,
  .cakes-page.decor-page .decor-hero{
    min-height:218px;
    padding:25px 0 29px;
    background:
      linear-gradient(90deg,rgba(255,250,246,.99) 0%,rgba(255,250,246,.96) 56%,rgba(255,248,241,.64) 100%),
      url("../assets/img/home/hero-desktop-1920x760.webp") 76% center / cover no-repeat;
  }
  .catalog-crumbs{margin-bottom:12px;font-size:10px;}
  .cakes-page .cakes-page-hero .eyebrow{font-size:9px;margin-bottom:8px;}
  .cakes-page .cakes-page-hero h1{font-size:clamp(36px,9.3vw,47px);}
  .cakes-page .cakes-page-hero p,.cakes-page.decor-page .decor-hero p{font-size:12px;line-height:1.55;margin-top:10px;max-width:380px;}
  .cakes-page .cake-category-nav,
  .cakes-page .small-desserts-nav,
  .cakes-page .decor-styles-nav{top:63px;}
  .cakes-page .cake-category-nav .container,
  .cakes-page .small-desserts-nav .container,
  .cakes-page .decor-styles-nav .container{min-height:56px;gap:7px;padding:9px 0;}
  .cakes-page .cake-category-nav a,
  .cakes-page .small-desserts-nav a,
  .cakes-page .decor-styles-nav a{min-height:34px;padding:8px 12px;font-size:11px;}
  .cakes-page .cake-category,
  .cakes-page .extra-dessert-category,
  .cakes-page .tart-category{padding:32px 0 39px;scroll-margin-top:123px;}
  .cakes-page .cake-category-head{display:block;margin-bottom:17px;}
  .cakes-page .cake-category-head h2{font-size:30px;}
  .cakes-page .cake-category-head p{font-size:12px;margin-top:9px;max-width:100%;}
  .cakes-page .cake-grid,.mousse-catalog .cake-grid,
  .open-catalog .cake-grid,.pastries-page #mousse-pastries .cake-grid,
  .fillings-page .filling-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
  .cakes-page .cake-card{
    display:flex;
    flex-direction:column;
    border-radius:13px;
    min-width:0;
  }
  .cakes-page .cake-card-media{aspect-ratio:1/1;min-height:0;}
  .cakes-page .cake-card-media img{aspect-ratio:1/1;min-height:0;}
  .cakes-page .cake-card-body{min-height:165px;padding:12px 12px 14px;}
  .cakes-page .cake-card-kicker{font-size:9px;letter-spacing:.045em;margin-bottom:6px;}
  .cakes-page .cake-card h3{font-size:17px;line-height:1.16;margin-bottom:7px;}
  .cakes-page .cake-card p,.cakes-page .cake-card .variant{font-size:11px;line-height:1.45;}
  .cake-order-link{font-size:10.5px;padding-top:8px;}
  .cake-order-link span[aria-hidden]{width:23px;height:23px;font-size:14px;}
  .cakes-page .tart-card-body{min-height:0;}
  .cakes-page .tart-view-switch{gap:5px;}
  .cakes-page .tart-view{gap:4px;padding:4px;font-size:10px;}
  .cakes-page .tart-view img{width:30px;height:30px;}
  .fillings-page .fillings-main{padding:27px 0 45px;}
  .fillings-page .filling-group{margin-bottom:34px;scroll-margin-top:122px;}
  .fillings-page .filling-title{margin-bottom:15px;}
  .fillings-page .filling-title h4{font-size:30px;}
  .fillings-page .filling-title p{font-size:12px;}
  .fillings-page .catalog-item img{aspect-ratio:1/1;object-fit:contain;}
  .fillings-page .catalog-card-info{padding:11px 12px 13px;min-height:150px;}
  .fillings-page .catalog-card-info h3{font-size:16px;line-height:1.18;}
  .fillings-page .catalog-card-info p{font-size:11px;line-height:1.45;}
  .fillings-page .catalog-card-info span{font-size:11px;}
  .small-desserts-page .profiteroles-details,.small-desserts-page .extra-dessert-layout{grid-template-columns:1fr;gap:13px;}
  .small-desserts-page .profiteroles-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
  .small-desserts-page .profiteroles-tastes,.small-desserts-page .profiteroles-order,.small-desserts-page .extra-dessert-detail{padding:17px;}
  .cakes-page.decor-page .decor-catalog{padding:30px 0 44px;}
  .cakes-page.decor-page .decor-intro h2{font-size:30px;}
  .cakes-page.decor-page .decor-grid{grid-template-columns:1fr;gap:15px;}
  .cakes-page.decor-page .decor-card h2{font-size:22px;}
  .cakes-page .mobile-bottom{
    position:fixed;left:0;right:0;bottom:0;z-index:110;
    display:grid;grid-template-columns:1fr 1fr;gap:8px;
    padding:9px 15px calc(9px + env(safe-area-inset-bottom));
    border-top:1px solid #eee1dc;background:rgba(255,253,251,.97);
    -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  }
  .cakes-page .mobile-bottom a{
    display:grid;place-items:center;min-height:39px;border-radius:9px;
    background:#f8eeeb;color:#5c3e3b;font-size:12px;font-weight:750;
  }
  .cakes-page .mobile-bottom a:last-child{background:#bb405c;color:#fff;}
  .cakes-page{padding-bottom:65px;}
}
@media(max-width:380px){
  .cakes-page .cake-card-body{padding:10px 10px 12px;}
  .cakes-page .cake-card h3{font-size:15px;}
  .cakes-page .cake-card p{font-size:10.5px;}
  .cakes-page .tart-view span{font-size:9px;}
}
@media(prefers-reduced-motion:reduce){
  .cakes-page .cake-card,.fillings-page .catalog-item,.cakes-page .cake-card-media img{transition:none;}
}
