/** Shopify CDN: Minification failed

Line 902:16 Unexpected "{"
Line 902:25 Expected ":"
Line 908:16 Unexpected "{"
Line 908:25 Expected ":"
Line 912:16 Unexpected "{"
Line 912:25 Expected ":"
Line 915:16 Unexpected "{"
Line 915:25 Expected ":"
Line 921:16 Unexpected "{"
Line 921:25 Expected ":"
... and 104 more hidden warnings

**/
/* ==========================================================
   CEREMO – FULL BLEED HERO (OPTIMIERT + TRUST/FEEDBACK FIX)
   - Kein „zu schmal -> Wort pro Zeile“
   - Kein hartes Abschneiden durch overflow:hidden am Hero
   - Feedback wirkt natürlich, bleibt kompakt (mobile clamp),
     Autorzeile bleibt sichtbar
   ========================================================== */

/* HERO WRAPPER */
.c-hero{
  position:relative;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  min-height:var(--hero-min-height, 100vh);
  display:flex;
  align-items:center;              /* Desktop: vertikal mittig */
  color:var(--hero-text, #fff);
  overflow-x:clip;                 /* nur X clippen */
  overflow-y:visible;              /* Y NICHT verstecken (sonst wird Content abgeschnitten) */
}

/* Background Image */
.c-hero__media{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;                 /* nur Hintergrund clippen */
}

.c-hero__img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:var(--hero-img-pos, center);
  display:block;
}

/* Overlay */
.c-hero__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:var(--hero-overlay, #000);
  opacity:var(--hero-overlay-opacity, .2);
  pointer-events:none;
}

/* Content Wrapper */
.c-hero__inner{
  position:relative;
  z-index:2;
  width:100%;
  display:flex;
  justify-content:var(--hero-content-x, flex-start);
  padding:var(--hero-pad-y, 80px) var(--hero-pad-x, 60px);
}

.c-hero__content{
  width:100%;
  max-width: 500px; /* etwas breiter, damit Text nicht „schmal“ wirkt */
}

/* Typography */
.c-hero__kicker{
  color:var(--hero-kicker, var(--hero-text, #fff));
  margin:0 0 14px;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  opacity:.85;
}

.c-hero__title{
  margin:0 0 16px;
  font-weight:800;
  line-height:1.05;
  letter-spacing:.02em;
  font-size:clamp(34px, 4vw, 64px);
  text-transform:uppercase;
  color:white;
}

.c-hero__subtitle{
  color:var(--hero-sub, var(--hero-text, #fff));
  margin:0 0 24px;
  font-size:clamp(16px, 1.3vw, 20px);
  line-height:1.5;
  opacity:.92;
}

.c-hero__subtitle p{ margin:0; }

/* Button */
.c-hero__cta{ margin-top:6px; }

/* =========================================
   CEREMO HERO – Text Link CTA
   ========================================= */

.c-hero__btn{
  display:inline-block;
  padding:0;
  background:none;
  border:none;

  font-size:15px;
  font-weight:500;
  letter-spacing:.04em;
  text-transform:none;

  color:var(--hero-text, #fff);
  text-decoration:none;

  position:relative;
  transition:opacity .2s ease;
}

/* Underline */
.c-hero__btn::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:100%;
  height:1px;
  background:currentColor;
  transition:transform .3s ease;
  transform:scaleX(1);
  transform-origin:left;
}

/* Hover Effekt – subtil & premium */
.c-hero__btn:hover{
  opacity:.75;
}

.c-hero__btn:hover::after{
  transform:scaleX(.6);
}


/* Trust Row */
.c-hero__trust{
  margin-top:28px;
  font-size:14px;
  opacity:.95;
  max-width:100%;
}

.c-hero__trust-top{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.c-hero__stars{
  display:flex;
  gap:3px;
}

.c-hero__star{
  font-size:15px;
  line-height:1;
}

/* Feedback block */


.c-hero__trust-avatar{
  width:48px;
  height:48px;
  border-radius:50%;
  object-fit:cover;
  display:block;
}


/* ===== MOBILE ===== */
@media (max-width: 749px){

  .c-hero{
    min-height:var(--hero-min-height-mobile, 100vh);
    align-items:flex-start; /* wie Referenz: oben starten */
  }

  .c-hero__inner{
    padding:40px 20px;
  }

  .c-hero__content{
    max-width:520px; /* wichtig: breiter, damit Feedback nicht „Wort pro Zeile“ wird */
  }

  .c-hero__title{ font-size:34px; }
  .c-hero__subtitle{ font-size:16px; }

  .c-hero__trust-top{ font-size:12px; }



  .c-hero__trust-avatar{
    width:42px;
    height:42px;
  }

}

/* Dawn safe full bleed fix */
html, body{ overflow-x:clip; }

/* ===== TRUST / FEEDBACK (Avatar optional, ohne 48px-Bug) ===== */

.c-hero__trust-quote{
  margin-top:12px;
  display:grid;
  grid-template-columns:48px minmax(0, 1fr);
  gap:14px;
  align-items:start;
  max-width:100%;
}

/* Wenn KEIN Avatar da ist -> 1 Spalte */
.c-hero__trust-quote.c-hero__trust-quote--no-avatar{
  grid-template-columns: minmax(0, 1fr);
  gap:0;
}

.c-hero__trust-avatar{
  width:48px;
  height:48px;
  border-radius:50%;
  object-fit:cover;
  display:block;
}

.c-hero__trust-quote-text{
  min-width:0; /* wichtig fürs Wrapping in Grid */
}

.c-hero__trust-quote-p{
  margin:0;
  font-size:14px;
  line-height:1.45;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:auto;
}

/* Autor nicht umbrechen */
.c-hero__trust-quote-name{
  margin:8px 0 0;
  font-size:14px;
  opacity:.85;
  white-space:nowrap;
}

/* Mobile */
@media (max-width: 749px){
  .c-hero__trust-quote{
    grid-template-columns:42px minmax(0, 1fr);
    gap:10px;
  }

  .c-hero__trust-avatar{
    width:42px;
    height:42px;
  }

  /* kompakt, aber nicht „kaputt“ */
  .c-hero__trust-quote-p{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:5;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}

/* ==========================================================
   CEREMO | Image Grid (3 Cards)
   -> In assets/ceremo-sections.css einfügen
   ========================================================== */

.c-ig{
  width:100%;
}

.c-ig__inner{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--c-ig-gap, 20px);
  padding:var(--c-ig-gap, 20px); /* sorgt für gleichen Abstand zum Rand wie zwischen Cards */
}

.c-ig__card{
  position:relative;
  display:block;
  border-radius:var(--c-ig-radius, 0px);
  overflow:hidden;
  min-height:var(--c-ig-minh, 520px);
  text-decoration:none;
  transform:translateZ(0);
}

.c-ig__media{
  position:absolute;
  inset:0;
}

.c-ig__img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:var(--c-ig-pos, center);
}

.c-ig__placeholder{
  width:100%;
  height:100%;
  background:linear-gradient(135deg, rgba(0,0,0,.10), rgba(0,0,0,.25));
}

.c-ig__label{
  position:absolute;
  right:14px;
  bottom:12px;
  font-size:16px;
  font-weight:600;
  color:#fff;
  letter-spacing:.02em;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}

/* Hover: subtle premium zoom */
@media (hover:hover){
  .c-ig__card .c-ig__img{
    transition:transform .45s ease;
  }
  .c-ig__card:hover .c-ig__img{
    transform:scale(1.03);
  }
}

/* Mobile stacked */
@media (max-width: 749px){
  .c-ig__inner{
    grid-template-columns:1fr;
    padding:16px;
    gap:16px;
  }
  .c-ig__card{
    min-height:var(--c-ig-minh-m, 420px);
  }
  .c-ig__label{
    right:12px;
    bottom:10px;
    font-size:15px;
  }
}

/* ==========================================================
   CEREMO HEADER – Desktop like "More" + Mobile Image Drawer
   FIXES: left alignment + stable cart button
   -> In assets/ceremo-sections.css einfügen
   ========================================================== */

.c-header{ position:relative; z-index:40; background:#fff; }

/* Icon base */
.c-icon{ width:20px; height:20px; display:block; }

/* Visually hidden (a11y) */
.c-header__sr-only{
  position:absolute !important;
  width:1px; height:1px;
  padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0);
  white-space:nowrap; border:0;
}

/* ------------------------------------------
   Desktop layout
------------------------------------------- */
.c-header__desktop{ display:none !important; }

@media (min-width: 990px){
  .c-header__desktop{ display:block !important; padding:12px 0 10px; }
  .c-header__mobile{ display:none !important; }

  .c-header__desktop-inner{ width:100%; }

  .c-header__top{
    display:grid;
    grid-template-columns: 220px minmax(360px, 1fr) 170px;
    align-items:center;
    gap:18px;
    min-height:64px;
  }

  /* IMPORTANT: not centered */
  .c-header__logo{
    display:flex;
    align-items:center;
    justify-content:flex-start;
  }

  .c-header__logo-link{ display:inline-flex; align-items:center; }
  .c-header__logo-link img{ height:32px; width:auto; display:block; }
  .c-header__logo-text{ font-weight:800; letter-spacing:.06em; text-decoration:none; color:#111; }

  /* Search */
  .c-header__search{ width:100%; position:relative; }
  .c-header__search-form{
    position:relative;
    display:flex;
    align-items:center;
    border:1px solid rgba(17,17,17,.14);
    border-radius:10px;
    background:#fff;
    height:44px;
    overflow:visible;
  }

  .c-header__search-form:focus-within{
  border-color: rgba(17,17,17,.18);
  box-shadow: none;
}

.c-header__search-input:focus-visible{
  outline: none;
  box-shadow: none;
}


  .c-header__search-input{
    width:100%;
    height:44px;
    border:0;
    outline:0;
    padding:0 44px 0 12px;
    font-size:14px;
    color:#111;
    background:transparent;
    outline: none;
box-shadow: none;

  }

  .c-header__search-submit{
    position:absolute;
    right:0;
    top:0;
    width:44px;
    height:44px;
    border:0;
    background:transparent;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    color:#111;
  }

  /* Predictive dropdown */
  .c-header__suggest{
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    right:0;
    background:#fff;
    border:1px solid rgba(17,17,17,.10);
    border-radius:12px;
    box-shadow:0 18px 50px rgba(0,0,0,.10);
    overflow:hidden;
    z-index:80;
  }
  .c-header__suggest-inner{ padding:10px 10px 12px; }
  .c-header__suggest-title{
    font-size:12px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    opacity:.7;
    padding:8px 8px 6px;
  }
  .c-header__suggest-list{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:6px;
  }
  .c-header__suggest-link{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 10px;
    border-radius:10px;
    text-decoration:none;
    color:#111;
  }
  .c-header__suggest-link:hover{ background:rgba(0,0,0,.04); }
  .c-header__suggest-img{
    width:34px; height:34px;
    object-fit:cover;
    border-radius:8px;
    flex:0 0 auto;
  }
  .c-header__suggest-imgph{
    width:34px; height:34px;
    border-radius:8px;
    background:rgba(0,0,0,.08);
    flex:0 0 auto;
  }
  .c-header__suggest-name{
    font-size:13px;
    font-weight:600;
    line-height:1.2;
  }

  /* Icons */
  .c-header__icons{
    display:flex;
    justify-content:flex-end;
    gap:8px;
    align-items:center;
  }

  .c-header__icon{
    width:44px; height:44px;
    display:inline-flex;
    align-items:center; justify-content:center;
    border:0; background:transparent;
    border-radius:999px;
    cursor:pointer;
    color:#111;
    text-decoration:none;
    position:relative;
  }

  .c-header__icon:focus-visible{
    outline:2px solid rgba(17,17,17,.35);
    outline-offset:2px;
  }

  .c-header__cart-bubble{
    position:absolute;
    top:6px;
    right:6px;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    background:#111;
    color:#fff;
    font-size:11px;
    line-height:18px;
    text-align:center;
  }

  /* Menu row */
  .c-header__menu{ margin-top:10px; }

  .c-header__menu-list{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    gap:18px;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
  }

  .c-header__menu-link{
    display:inline-block;
    padding:8px 0;
    font-size:13px;
    font-weight:600;
    letter-spacing:.02em;
    color:#111;
    text-decoration:none;
    position:relative;
  }

  .c-header__menu-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:3px;
    width:100%;
    height:1px;
    background:currentColor;
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .25s ease;
    opacity:.65;
  }

  .c-header__menu-link:hover::after{ transform:scaleX(1); }
}

/* ------------------------------------------
   Mobile layout (Drawer)
------------------------------------------- */
.c-header__mobile{ display:block; }

.c-header__bar{
  display:grid;
  grid-template-columns:44px 1fr 96px;
  align-items:center;
  min-height:64px;
  gap:10px;
}

.c-header__icon{
  width:44px; height:44px;
  display:inline-flex;
  align-items:center; justify-content:center;
  border:0; background:transparent;
 
  cursor:pointer;
  color:#111;
  text-decoration:none;
  position:relative;
}

.c-header__icon:focus-visible{
  outline:2px solid rgba(17,17,17,.35);
  outline-offset:2px;
}

.c-header__burger-lines{
  width:18px; height:12px; position:relative; display:block;
}
.c-header__burger-lines::before,
.c-header__burger-lines::after{
  content:""; position:absolute; left:0; right:0; height:2px; background:currentColor; border-radius:2px;
}
.c-header__burger-lines::before{ top:1px; }
.c-header__burger-lines::after{ bottom:1px; }

/* Mobile logo stays like your current setup */
.c-header__logo{ display:flex; align-items:center; justify-content:center; }
.c-header__logo-link img{ height:28px; width:auto; display:block; }
.c-header__logo-text{ font-weight:700; letter-spacing:.06em; text-decoration:none; color:#111; }

.c-header__right{ display:flex; justify-content:flex-end; gap:6px; align-items:center; }

.c-header__cart-bubble{
  position:absolute;
  top:6px;
  right:6px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:11px;
  line-height:18px;
  text-align:center;
}

/* Overlay + Drawer */
.c-header__overlay{
  position:fixed; inset:0;
  background:rgba(0,0,0,.35);
  z-index:50;
}

.c-header__drawer{
  position:fixed;
  top:0; left:0; bottom:0;
  width:min(92vw, 420px);
  background:var(--c-h-bg, #f5f5f5);
  z-index:60;
  transform:translateX(-105%);
  transition:transform .28s ease;
  box-shadow:0 20px 60px rgba(0,0,0,.18);
  display:flex;
  flex-direction:column;
  outline:none;
}

.c-header__drawer.is-open{ transform:translateX(0); }

html.c-header-lock,
html.c-header-lock body{ overflow:hidden; }

/* Drawer head */
.c-header__drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 14px 12px;
}

.c-header__drawer-title{
  font-size:18px;
  font-weight:700;
  color:#111;
}

/* Banner */
.c-header__banner{
  margin:0 14px 12px;
  
  overflow:hidden;
  background:#eaeaea;
  text-decoration:none;
  color:#111;
  display:block;
}

.c-header__banner-media{ aspect-ratio: 16 / 7; background:#ddd; }
.c-header__banner-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.c-header__banner-ph{ width:100%; height:100%; background:linear-gradient(135deg, rgba(0,0,0,.08), rgba(0,0,0,.14)); }

.c-header__banner-content{
  padding:12px 14px 14px;
  background:rgba(255,255,255,.6);
  backdrop-filter:saturate(1.1) blur(6px);
}
.c-header__banner-kicker{ font-size:12px; opacity:.8; margin:0 0 2px; }
.c-header__banner-heading{ font-size:16px; font-weight:700; margin:0 0 6px; }
.c-header__banner-cta{ font-size:12px; font-weight:600; opacity:.9; }

/* List */
.c-header__nav{ padding:0 14px 14px; overflow:auto; -webkit-overflow-scrolling:touch; }
.c-header__list{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:10px; }

.c-header__row{
  display:grid;
  grid-template-columns:56px minmax(0, 1fr) 18px;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  
  background:#fff;
  text-decoration:none;
  color:#111;
}

.c-header__row:focus-visible{
  outline:2px solid rgba(17,17,17,.25);
  outline-offset:2px;
}

.c-header__thumb{
  width:56px; height:56px;
  
  overflow:hidden;
  background:#eee;
  display:block;
}
.c-header__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.c-header__thumb-ph{ width:100%; height:100%; display:block; background:linear-gradient(135deg, rgba(0,0,0,.08), rgba(0,0,0,.16)); }

.c-header__row-text{ min-width:0; display:flex; align-items:center; gap:10px; }
.c-header__label{
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.c-header__badge{
  font-size:11px;
  font-weight:800;
  padding:6px 8px;
  
  background:#d6f7a3;
  color:#111;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.c-header__chev{ font-size:20px; opacity:.5; }

.c-header__drawer-foot{
  padding:12px 14px 18px;
  margin-top:auto;
  font-size:12px;
  opacity:.75;
}

/* Dawn safe */
html, body{ overflow-x:clip; }

/* ==========================================================
   CEREMO | Announcement Bar (c-annbar)
   -> In assets/ceremo-sections.css einfügen
   ========================================================== */

.c-annbar{
  background:var(--annbar-bg, #043524);
  color:var(--annbar-text, #fff);
  font-size:13px;
  line-height:1.2;
}

.c-annbar__inner{
  padding-top:var(--annbar-pad-y, 10px);
  padding-bottom:var(--annbar-pad-y, 10px);
}

.c-annbar__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--annbar-gap, 24px);
}

.c-annbar__item{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
  white-space:nowrap;
}

.c-annbar__icon{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity:.95;
}
.c-annbar__icon svg{ width:18px; height:18px; display:block; }

.c-annbar__text{
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Mobile: one visible, fade between */
@media (max-width: 749px){
  .c-annbar__list{
    justify-content:center;
    position:relative;
    min-height:22px;
    touch-action:pan-y;
  }

  .c-annbar__item{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transition:opacity .45s ease;
    will-change:opacity;
  }

  .c-annbar__item.is-active{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }

  .c-annbar__item .c-annbar__text{
    max-width:calc(100% - 48px);
  }
}

/* ==========================================================
   CEREMO | Footer (Premium) — CSS (in <style> einfuegen)
   ========================================================== */

#ceremo-footer-{{ section.id }}.ceremo-footer{
  background: var(--cf-bg, #F4F0E6);
  color: var(--cf-text, #10211A);
  padding: var(--cf-pad-top, 56px) 0 var(--cf-pad-bottom, 56px);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__container{
  max-width: var(--cf-max, 1200px);
}

#ceremo-footer-{{ section.id }} a{ color: inherit; }

/* Head */
#ceremo-footer-{{ section.id }} .ceremo-footer__head{
  display: grid;
  gap: 14px;
  margin-bottom: 18px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__logo{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__logo img{
  display: block;
  height: 34px;
  width: auto;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__logo--text{
  font-weight: 700;
  letter-spacing: -0.02em;
  font-size: 16px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__titlewrap{
  max-width: 720px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__title{
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__subtitle{
  margin: 6px 0 0;
  font-size: 14px;
  opacity: .82;
  line-height: 1.45;
}

/* CTA Tile */
#ceremo-footer-{{ section.id }} .ceremo-footer__top{ margin-bottom: 26px; }

#ceremo-footer-{{ section.id }} .ceremo-footer__cta{
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 14px;
  align-items: center;
  width: 100%;
  text-decoration: none;
  padding: 16px 16px;
  border-radius: 16px;
  background: var(--cf-card, rgba(255,255,255,.55));
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
  min-height: 68px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 34px rgba(0,0,0,.08);
  background: rgba(255,255,255,.70);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta:focus-visible{
  outline: 2px solid color-mix(in srgb, var(--cf-accent, #043524) 35%, transparent);
  outline-offset: 3px;
  border-radius: 18px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-media{
  width: 52px;
  height: 52px;
  border-radius: 14px;
  overflow: hidden;
  background: rgba(0,0,0,.04);
  box-shadow: 0 8px 18px rgba(0,0,0,.06);
  flex: 0 0 auto;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-text{
  min-width: 0;
  display: grid;
  gap: 2px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-label{
  font-weight: 650;
  letter-spacing: -0.01em;
  line-height: 1.15;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-subtext{
  font-size: 13px;
  opacity: .78;
  line-height: 1.35;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-arrow{
  width: 22px;
  height: 22px;
  opacity: .9;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cta-arrow svg{
  width: 22px;
  height: 22px;
  display: block;
}

/* Middle / Menus */
#ceremo-footer-{{ section.id }} .ceremo-footer__middle{
  padding: 18px 0;
  border-top: 1px solid rgba(16,33,26,.10);
  border-bottom: 1px solid rgba(16,33,26,.10);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__cols{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__col{
  border-radius: 14px;
  background: rgba(255,255,255,.35);
  padding: 4px 10px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__summary{
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 6px;
  font-weight: 650;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__summary::-webkit-details-marker{ display: none; }

#ceremo-footer-{{ section.id }} .ceremo-footer__chev{
  width: 18px;
  height: 18px;
  opacity: .8;
  transition: transform .18s ease;
}

#ceremo-footer-{{ section.id }} details[open] .ceremo-footer__chev{ transform: rotate(180deg); }

#ceremo-footer-{{ section.id }} .ceremo-footer__chev svg{
  width: 18px;
  height: 18px;
  display: block;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__panel{ padding: 0 6px 10px 6px; }

#ceremo-footer-{{ section.id }} .ceremo-footer__links{
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__link{
  text-decoration: none;
  opacity: .86;
  font-size: 14px;
  line-height: 1.35;
  display: inline-block;
  padding: 4px 0;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__link:hover{
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 3px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__link:focus-visible{
  outline: 2px solid color-mix(in srgb, var(--cf-accent, #043524) 35%, transparent);
  outline-offset: 3px;
  border-radius: 10px;
}

/* Desktop: 3 columns */
@media (min-width: 990px){
  #ceremo-footer-{{ section.id }} .ceremo-footer__head{
    grid-template-columns: 220px 1fr;
    align-items: start;
    gap: 28px;
  }

  #ceremo-footer-{{ section.id }} .ceremo-footer__cols{
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
  }

  #ceremo-footer-{{ section.id }} .ceremo-footer__col{
    padding: 10px 14px 14px 14px;
    background: transparent;
    border-radius: 0;
  }

  #ceremo-footer-{{ section.id }} .ceremo-footer__summary{
    cursor: default;
    padding: 0 0 12px 0;
  }

  #ceremo-footer-{{ section.id }} .ceremo-footer__chev{ display: none; }

  #ceremo-footer-{{ section.id }} .ceremo-footer__panel{ padding: 0; }
}

/* Bottom */
#ceremo-footer-{{ section.id }} .ceremo-footer__bottom{
  padding-top: 22px;
  display: grid;
  gap: 16px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__legal{
  background: rgba(255,255,255,.35);
  border-radius: 14px;
  padding: 14px 14px;
  line-height: 1.55;
  font-size: 13px;
  opacity: .9;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__legal p{
  margin: 0 0 10px 0;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__legal p:last-child{
  margin-bottom: 0;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__legal a{
  text-decoration: underline;
  text-underline-offset: 3px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__meta{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__social{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  opacity: .9;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.35);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__social:hover{
  opacity: 1;
  background: rgba(255,255,255,.55);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__social:focus-visible{
  outline: 2px solid color-mix(in srgb, var(--cf-accent, #043524) 35%, transparent);
  outline-offset: 3px;
  border-radius: 999px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__social-ic{
  width: 16px;
  height: 16px;
  display: inline-flex;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__social-ic svg{
  width: 16px;
  height: 16px;
  display: block;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__copy{
  font-size: 13px;
  opacity: .78;
}

/* Payments */
#ceremo-footer-{{ section.id }} .ceremo-footer__payments{
  margin-top: 2px;
  padding-top: 14px;
  border-top: 1px solid rgba(16,33,26,.10);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__payments-title{
  font-size: 13px;
  font-weight: 650;
  opacity: .88;
  margin-bottom: 10px;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__payments-list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

#ceremo-footer-{{ section.id }} .ceremo-footer__payment{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  border-radius: 12px;
  background: rgba(255,255,255,.45);
  box-shadow: 0 8px 18px rgba(0,0,0,.05);
}

#ceremo-footer-{{ section.id }} .ceremo-footer__payment-ic{
  width: 42px;
  height: 20px;
  display: block;
}
