@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700;800&family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600;1,700&family=Raleway:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box;margin:0;padding:0}
:root{--night:#10051c;--plum:#2a0e45;--pink:#e94f91;--cream:#fff2e4;--gold:#d89a37;--line:#d2943a}
html{scroll-behavior:smooth}
body{font-family:Raleway,Arial,sans-serif;color:var(--cream);min-height:100vh;overflow-x:hidden;position:relative}

/* sitewide magical outer background */
body.home-page{
  background:
    linear-gradient(rgba(13,5,29,.18), rgba(13,5,29,.24)),
    url("home-magical-bg.png") center center / cover fixed no-repeat,
    #120627;
}
body.sub-page{
  background:
    linear-gradient(rgba(12,5,28,.28), rgba(12,5,28,.34)),
    url("subpage-magical-bg.png") center center / cover fixed no-repeat,
    #100523;
}
body::before,
body::after{display:none}

/* soft ambient glow overlays to help the page feel integrated */
.page::before,
.page::after{content:"";position:fixed;pointer-events:none;z-index:-1}
.home-page .page::before{
  inset:0;
  background:
    radial-gradient(ellipse at top, rgba(255,197,113,.06), transparent 22%),
    radial-gradient(ellipse at 15% 18%, rgba(255,173,231,.06), transparent 18%),
    radial-gradient(ellipse at 84% 20%, rgba(210,151,255,.05), transparent 18%);
}
.sub-page .page::before{
  inset:0;
  background:
    radial-gradient(ellipse at top, rgba(255,197,113,.035), transparent 18%),
    radial-gradient(ellipse at 15% 18%, rgba(255,173,231,.03), transparent 16%),
    radial-gradient(ellipse at 84% 20%, rgba(210,151,255,.03), transparent 16%);
}
.page::after{display:none}
.page{width:min(1180px,96vw);margin:24px auto 36px;position:relative}
.art-panel{position:relative;isolation:isolate;border:1.5px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 18px 60px rgba(0,0,0,.40),inset 0 0 0 1px rgba(255,235,181,.45);background:#210c39;margin-bottom:20px}
.art-panel::before{content:"";position:absolute;inset:14px;border:1px solid rgba(216,154,55,.78);border-radius:20px;pointer-events:none;z-index:5}
.panel-img{display:block;width:100%;height:auto}
.sr-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.footer{text-align:center;color:rgba(255,242,228,.72);font-size:12px;letter-spacing:.16em;text-transform:uppercase;padding:26px}
.footer a{color:inherit}

/* magical glowing sitewide header band */
.nav-mask{
  position:absolute;left:0;right:0;top:0;height:16.8%;z-index:8;pointer-events:none;
  border-radius:24px 24px 0 0;
  background:
    radial-gradient(circle at 18% 26%, rgba(255,255,255,.05), transparent 22%),
    radial-gradient(circle at 82% 24%, rgba(255,221,157,.08), transparent 22%),
    radial-gradient(circle at 50% 50%, rgba(209,113,255,.10), transparent 32%),
    linear-gradient(180deg, rgba(30,8,49,.985) 0%, rgba(41,12,64,.975) 58%, rgba(49,16,74,.955) 100%);
  border-bottom:1px solid rgba(232,193,97,.54);
  box-shadow:
    inset 0 1px 0 rgba(255,239,195,.34),
    0 0 26px rgba(214,111,255,.20),
    0 10px 26px rgba(0,0,0,.18);
}
.nav-mask::before{
  content:"";position:absolute;left:14px;right:14px;top:0;height:2px;
  background:linear-gradient(90deg, rgba(0,0,0,0), rgba(255,211,137,.75), rgba(248,148,213,.8), rgba(255,211,137,.75), rgba(0,0,0,0));
  opacity:.9;filter:blur(.25px);
}
.nav-mask::after{
  content:"";position:absolute;inset:0;
  background-image:
    radial-gradient(circle,rgba(255,239,190,.8) 0 1px,transparent 1.45px),
    radial-gradient(circle,rgba(255,255,255,.45) 0 1px,transparent 1.35px);
  background-size:52px 52px,84px 84px;
  background-position:10px 12px,30px 24px;
  opacity:.14;
}
.crisp-nav{
  position:absolute;left:4.1%;right:4.1%;top:3.1%;min-height:54px;z-index:30;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  color:#fff4e9;text-shadow:0 1px 0 rgba(0,0,0,.55),0 0 10px rgba(255,226,175,.14);
}
.crisp-logo{
  font-family:'Cinzel',serif;color:#fff4e9;text-decoration:none;text-transform:uppercase;
  font-size:clamp(18px,2.15vw,35px);font-weight:800;letter-spacing:.045em;line-height:.92;min-width:max-content;
}
.crisp-logo span{display:block;color:#f05b97}
.crisp-links{display:flex;align-items:center;justify-content:center;gap:clamp(14px,2.2vw,38px);flex:1;transform:translateY(-1px)}
.crisp-links a{
  color:#fff8ef;text-decoration:none;text-transform:uppercase;font-size:clamp(10px,.92vw,15px);
  font-weight:900;letter-spacing:.115em;white-space:nowrap;padding:.5rem 0 .35rem;border-bottom:2px solid transparent;
}
.crisp-links a:hover,.crisp-links a:focus{color:#ffd57f;border-bottom-color:#ef5b9a;outline:none}

/* disable legacy image-map menu layers */
.nav,.hotspot{display:none!important}
.email-hotspot{position:absolute;right:15%;bottom:5%;width:20%;height:10%;border-radius:10px;text-indent:-9999px;overflow:hidden;z-index:35}

/* page-specific tuning */
.home-page .nav-mask{height:16.6%}
.sub-page .nav-mask{height:16.8%}

@media(max-width:900px){
  .page{width:100%;margin:0}
  .art-panel{border-radius:0;border-left:0;border-right:0;margin-bottom:0}
  .art-panel::before{inset:10px;border-radius:0}
  .nav-mask{left:0;right:0;top:0;height:23%!important;border-radius:0;background:
    radial-gradient(circle at 18% 26%, rgba(255,255,255,.06), transparent 22%),
    radial-gradient(circle at 82% 24%, rgba(255,221,157,.10), transparent 22%),
    linear-gradient(180deg, rgba(35,10,57,.96) 0%, rgba(52,18,78,.90) 68%, rgba(52,18,78,.72) 100%)}
  .crisp-nav{top:2.2%;left:4%;right:4%;flex-wrap:wrap;justify-content:center;gap:8px;min-height:0}
  .crisp-logo{width:100%;text-align:center;font-size:18px;line-height:.95}
  .crisp-logo span{display:inline;margin-left:.25rem}
  .crisp-links{order:3;width:100%;gap:10px;flex-wrap:wrap}
  .crisp-links a{font-size:9px;letter-spacing:.08em;padding:.25rem 0}
  .footer{padding:20px}
}
@media(max-width:560px){
  .nav-mask{height:28%!important}
  .crisp-links{gap:7px}
  .crisp-links a{font-size:8px}
  .art-panel::before{inset:7px}
  .footer{font-size:10px;padding:18px}
}


/* v8 Option C: desktop poster feel + mobile readable HTML flow */
.mobile-menu,
.mobile-copy,
.mobile-feature-cards{
  display:none;
}

.mobile-menu summary{
  list-style:none;
}
.mobile-menu summary::-webkit-details-marker{
  display:none;
}

/* Desktop: keep full menu and artwork-driven poster layout. */
@media(min-width:901px){
  .crisp-links{
    display:flex;
  }
}

/* Mobile: compact hamburger menu + HTML text content */
@media(max-width:900px){
  .crisp-nav{
    justify-content:space-between;
    align-items:center;
    flex-wrap:nowrap;
    top:1.2%;
    left:5%;
    right:5%;
  }

  .crisp-logo{
    width:auto;
    text-align:left;
    font-size:17px;
    line-height:.92;
  }

  .crisp-logo span{
    display:block;
    margin-left:0;
  }

  .crisp-links{
    display:none!important;
  }

  .mobile-menu{
    display:block;
    position:relative;
    z-index:80;
  }

  .mobile-menu summary{
    width:46px;
    height:42px;
    border:1px solid rgba(255,220,170,.68);
    border-radius:14px;
    background:linear-gradient(135deg,rgba(76,25,96,.84),rgba(25,6,42,.92));
    box-shadow:0 0 18px rgba(236,105,160,.24), inset 0 0 0 1px rgba(255,235,181,.16);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    cursor:pointer;
  }

  .mobile-menu summary span{
    width:22px;
    height:2px;
    background:#fff8ef;
    border-radius:99px;
    box-shadow:0 0 8px rgba(255,224,170,.5);
  }

  .mobile-menu-panel{
    position:absolute;
    right:0;
    top:52px;
    min-width:210px;
    padding:12px;
    border:1px solid rgba(255,220,170,.64);
    border-radius:18px;
    background:linear-gradient(180deg,rgba(27,7,48,.98),rgba(56,18,78,.96));
    box-shadow:0 16px 34px rgba(0,0,0,.34),0 0 26px rgba(236,105,160,.18);
  }

  .mobile-menu-panel a{
    display:block;
    color:#fff8ef;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:900;
    font-size:12px;
    padding:13px 12px;
    border-radius:12px;
  }

  .mobile-menu-panel a:hover,
  .mobile-menu-panel a:focus{
    background:rgba(255,255,255,.08);
    color:#ffd57f;
    outline:none;
  }

  .nav-mask{
    height:82px!important;
    min-height:82px;
  }

  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:82px!important;
  }

  .art-panel{
    overflow:hidden;
  }

  .home-page .art-panel:first-of-type .panel-img{
    height:68svh;
    min-height:460px;
    object-fit:cover;
    object-position:62% center;
  }

  .sub-page .art-panel .panel-img{
    height:58svh;
    min-height:390px;
    object-fit:cover;
    object-position:64% center;
  }

  .booking-page .art-panel .panel-img,
  body.sub-page .art-panel .panel-img[src*="booking"]{
    object-position:60% center;
  }

  .mobile-copy,
  .mobile-feature-cards{
    display:block;
    width:min(92vw,720px);
    margin:18px auto;
    border:1px solid rgba(216,154,55,.72);
    border-radius:24px;
    background:
      radial-gradient(circle at 16% 0%,rgba(255,215,152,.12),transparent 30%),
      radial-gradient(circle at 92% 8%,rgba(236,105,160,.16),transparent 28%),
      linear-gradient(180deg,rgba(32,8,54,.94),rgba(19,5,34,.96));
    box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.18);
    padding:26px 22px;
    text-align:center;
    position:relative;
    overflow:hidden;
  }

  .mobile-copy:before,
  .mobile-feature-cards:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-image:
      radial-gradient(circle,rgba(255,230,160,.9) 0 1px,transparent 1.55px),
      radial-gradient(circle,rgba(255,255,255,.52) 0 1px,transparent 1.45px);
    background-size:56px 56px,96px 96px;
    background-position:8px 12px,36px 22px;
    opacity:.18;
  }

  .mobile-copy > *,
  .mobile-feature-cards > *{
    position:relative;
    z-index:1;
  }

  .eyebrow{
    color:#ffd57f;
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:11px;
    font-weight:900;
    margin-bottom:10px;
  }

  .mobile-copy h1,
  .mobile-feature-cards h2{
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(36px,11vw,58px);
    line-height:.94;
    color:#fff2e4;
    text-shadow:0 2px 12px rgba(0,0,0,.34);
    margin-bottom:12px;
  }

  .mobile-copy h2{
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(30px,9vw,48px);
    line-height:1;
    color:#fff2e4;
    font-style:italic;
    margin-bottom:16px;
  }

  .mobile-copy h1 span,
  .mobile-copy h2 span{
    color:#f05b97;
  }

  .mobile-copy p{
    color:rgba(255,242,228,.92);
    font-size:15px;
    line-height:1.65;
    margin:0 auto 12px;
    max-width:560px;
  }

  .magic-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    margin-top:10px;
    padding:.85rem 1.4rem;
    border-radius:999px;
    color:#fff8ef;
    text-decoration:none;
    text-transform:uppercase;
    font-weight:900;
    letter-spacing:.1em;
    background:linear-gradient(135deg,#e7629a,#d84f91);
    border:1px solid rgba(255,220,170,.75);
    box-shadow:0 8px 20px rgba(0,0,0,.28),0 0 24px rgba(232,84,146,.32);
  }

  .feature-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin-top:18px;
  }

  .feature-grid article{
    border:1px solid rgba(216,154,55,.42);
    border-radius:22px;
    padding:14px 14px 18px;
    background:linear-gradient(180deg, rgba(95,35,126,.30), rgba(23,7,44,.52));
    box-shadow:0 12px 26px rgba(9,3,22,.22), inset 0 0 0 1px rgba(255,240,205,.06);
    overflow:hidden;
  }

  .feature-illustration{
    margin:-6px -6px 14px;
    border-radius:18px;
    overflow:hidden;
    border:1px solid rgba(255,218,164,.28);
    background:rgba(255,255,255,.04);
  }

  .feature-illustration img{
    display:block;
    width:100%;
    aspect-ratio:4 / 3;
    object-fit:cover;
  }

  .feature-grid h3{
    font-family:'Cormorant Garamond',serif;
    color:#fff2e4;
    font-size:24px;
    margin-bottom:6px;
  }

  .feature-grid p{
    color:rgba(255,242,228,.84);
    font-size:14px;
    line-height:1.5;
    margin:0;
  }

  /* The baked feature-strip artwork is kept for desktop, replaced by readable cards on mobile. */
  #features{
    display:none;
  }

  .footer{
    margin-top:8px;
  }
}

@media(max-width:560px){
  .home-page .art-panel:first-of-type .panel-img{
    height:62svh;
    min-height:410px;
    object-position:66% center;
  }

  .sub-page .art-panel .panel-img{
    height:54svh;
    min-height:350px;
    object-position:66% center;
  }

  .mobile-copy,
  .mobile-feature-cards{
    width:calc(100% - 24px);
    padding:24px 18px;
    border-radius:22px;
  }
}


/* v9 mobile refinement: prevent illustrated panels from cropping on phones */
@media(max-width:900px){
  .home-page .art-panel:first-of-type .panel-img,
  .sub-page .art-panel .panel-img{
    height:auto!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center top!important;
  }

  .home-page .art-panel:first-of-type,
  .sub-page .art-panel{
    background:rgba(18,5,31,.84);
  }
}

@media(max-width:560px){
  .home-page .art-panel:first-of-type .panel-img,
  .sub-page .art-panel .panel-img{
    height:auto!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center top!important;
  }
}


/* v10 fixed rich About page story content */
.about-story-page{
  width:min(1040px,92vw);
  margin:28px auto 34px;
  color:#fff2e4;
}

.about-kicker{
  width:max-content;
  max-width:100%;
  margin:0 auto 18px;
  padding:.72rem 1.25rem;
  border:1px solid rgba(216,154,55,.68);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(39,10,64,.86),rgba(83,25,95,.78));
  box-shadow:0 12px 32px rgba(0,0,0,.24),0 0 22px rgba(236,105,160,.14);
  color:#ffd57f;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:13px;
  text-align:center;
}

.story-section,
.about-card-grid article,
.maker-grid article,
.belief-grid article{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.64);
  border-radius:28px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,215,152,.13),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(236,105,160,.16),transparent 28%),
    linear-gradient(180deg,rgba(32,8,54,.94),rgba(17,5,31,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.16);
}

.story-section:before,
.about-card-grid article:before,
.maker-grid article:before,
.belief-grid article:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    radial-gradient(circle,rgba(255,230,160,.86) 0 1px,transparent 1.55px),
    radial-gradient(circle,rgba(255,255,255,.48) 0 1px,transparent 1.45px);
  background-size:56px 56px,96px 96px;
  background-position:8px 12px,36px 22px;
  opacity:.15;
}

.story-section > *,
.about-card-grid article > *,
.maker-grid article > *,
.belief-grid article > *{
  position:relative;
  z-index:1;
}

.story-section{
  padding:34px 36px;
  margin-bottom:22px;
  text-align:center;
}

.section-sparkle{
  color:#ffd57f;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-weight:900;
  font-size:13px;
  margin-bottom:12px;
}

.story-section h1,
.story-section h2{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  line-height:.98;
  text-shadow:0 2px 14px rgba(0,0,0,.34);
}

.story-section h1{
  font-size:clamp(46px,7vw,82px);
  margin-bottom:16px;
}

.story-section h2{
  font-size:clamp(38px,5vw,60px);
  margin-bottom:16px;
}

.story-section .lead{
  font-size:clamp(18px,2vw,23px);
  line-height:1.65;
  max-width:850px;
  margin:0 auto;
  color:rgba(255,242,228,.94);
}

.story-section p:not(.section-sparkle):not(.lead){
  font-size:17px;
  line-height:1.78;
  max-width:840px;
  margin:0 auto 14px;
  color:rgba(255,242,228,.9);
}

.story-section p:last-child{
  margin-bottom:0;
}

.about-card-grid,
.maker-grid,
.belief-grid{
  display:grid;
  gap:18px;
  margin:22px 0;
}

.about-card-grid{
  grid-template-columns:repeat(3,1fr);
}

.maker-grid{
  grid-template-columns:repeat(2,1fr);
}

.belief-grid{
  grid-template-columns:repeat(4,1fr);
}

.about-card-grid article,
.maker-grid article,
.belief-grid article{
  padding:26px 22px;
  text-align:center;
}

.card-icon,
.maker-icon{
  font-size:38px;
  line-height:1;
  margin-bottom:12px;
  filter:drop-shadow(0 0 10px rgba(255,213,126,.28));
}

.about-card-grid h3,
.maker-grid h3,
.belief-grid h3{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  font-size:clamp(24px,2.5vw,34px);
  line-height:1.05;
  margin-bottom:10px;
}

.about-card-grid p,
.maker-grid p,
.belief-grid p{
  color:rgba(255,242,228,.86);
  font-size:15px;
  line-height:1.58;
}

.maker-role{
  color:#ffd57f!important;
  font-weight:900;
  letter-spacing:.05em;
  margin-bottom:12px;
}

.maker-grid span{
  display:inline-flex;
  margin-top:16px;
  padding:.55rem .85rem;
  border-radius:999px;
  border:1px solid rgba(216,154,55,.5);
  color:#ffd57f;
  background:rgba(255,255,255,.045);
  font-weight:800;
  font-size:13px;
}

@media(max-width:900px){
  .about-story-page{
    width:calc(100% - 24px);
    margin:22px auto 28px;
  }

  .about-kicker{
    width:100%;
    font-size:11px;
    line-height:1.45;
    white-space:normal;
  }

  .story-section{
    padding:28px 20px;
    border-radius:24px;
  }

  .story-section h1{
    font-size:clamp(40px,12vw,58px);
  }

  .story-section h2{
    font-size:clamp(34px,10vw,48px);
  }

  .story-section .lead,
  .story-section p:not(.section-sparkle):not(.lead){
    font-size:15px;
    line-height:1.7;
  }

  .about-card-grid,
  .maker-grid,
  .belief-grid{
    grid-template-columns:1fr;
  }

  .about-card-grid article,
  .maker-grid article,
  .belief-grid article{
    padding:24px 20px;
    border-radius:24px;
  }
}

@media(min-width:901px) and (max-width:1100px){
  .belief-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* v11 selected About artwork panel */
.selected-about-art{
  width:min(1040px,92vw);
  margin:22px auto;
  border:1.5px solid rgba(216,154,55,.72);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.16);
  background:rgba(17,5,31,.96);
}

.selected-about-art img{
  display:block;
  width:100%;
  height:auto;
}

@media(max-width:900px){
  .selected-about-art{
    width:calc(100% - 24px);
    border-radius:24px;
  }
}


/* v12 replace emoji icons with matching magical illustrated icons */
.card-icon,
.maker-icon{
  font-size:0!important;
  line-height:0!important;
  margin-bottom:14px!important;
}

.card-icon img,
.maker-icon img{
  display:block;
  width:86px;
  height:86px;
  margin:0 auto;
  filter:drop-shadow(0 0 14px rgba(255,213,126,.28));
}

.maker-icon img{
  width:92px;
  height:92px;
}

.maker-badge:before{
  content:"✦";
  color:#ffd57f;
  margin-right:.4rem;
}

.maker-grid span.maker-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:16px;
  padding:.55rem .9rem;
  border-radius:999px;
  border:1px solid rgba(216,154,55,.5);
  color:#ffd57f;
  background:rgba(255,255,255,.045);
  font-weight:800;
  font-size:13px;
}

@media(max-width:900px){
  .card-icon img,
  .maker-icon img{
    width:78px;
    height:78px;
  }
}


/* v13 remove redundant top cards and use painterly art panels in remaining about cards */
.card-illustration{
  width:100%;
  margin:0 0 18px;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.45);
  box-shadow:0 12px 28px rgba(0,0,0,.26), inset 0 0 0 1px rgba(255,235,181,.12);
  background:linear-gradient(180deg,rgba(42,12,60,.95),rgba(22,7,36,.98));
}

.card-illustration img{
  display:block;
  width:100%;
  aspect-ratio: 4 / 3;
  object-fit:cover;
}

.maker-illustration img{
  aspect-ratio: 16 / 10;
}

.maker-grid article,
.belief-grid article{
  padding:18px 18px 24px;
}

.maker-grid h3,
.belief-grid h3{
  margin-top:2px;
}

/* disable old small icon sizing in these cards if present */
.maker-grid .maker-icon,
.belief-grid .card-icon,
.about-card-grid .card-icon{
  display:none;
}

@media(max-width:900px){
  .card-illustration{
    border-radius:18px;
    margin-bottom:14px;
  }
  .maker-grid article,
  .belief-grid article{
    padding:16px 16px 20px;
  }
}


/* v15 fix maker card artwork proportions */
.maker-grid .card-illustration{
  margin-left:auto;
  margin-right:auto;
}

.maker-grid .card-illustration img{
  display:block;
  width:100%;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
}


/* v16 Contact page */
.contact-page-content{
  width:min(1040px,92vw);
  margin:28px auto 34px;
  color:#fff2e4;
}

.contact-kicker{
  width:max-content;
  max-width:100%;
  margin:0 auto 18px;
  padding:.72rem 1.25rem;
  border:1px solid rgba(216,154,55,.68);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(39,10,64,.86),rgba(83,25,95,.78));
  box-shadow:0 12px 32px rgba(0,0,0,.24),0 0 22px rgba(236,105,160,.14);
  color:#ffd57f;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:13px;
  text-align:center;
}

.contact-hero-card,
.contact-method{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.64);
  border-radius:28px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,215,152,.13),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(236,105,160,.16),transparent 28%),
    linear-gradient(180deg,rgba(32,8,54,.94),rgba(17,5,31,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.16);
}

.contact-hero-card:before,
.contact-method:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    radial-gradient(circle,rgba(255,230,160,.86) 0 1px,transparent 1.55px),
    radial-gradient(circle,rgba(255,255,255,.48) 0 1px,transparent 1.45px);
  background-size:56px 56px,96px 96px;
  background-position:8px 12px,36px 22px;
  opacity:.15;
}

.contact-hero-card > *,
.contact-method > *{
  position:relative;
  z-index:1;
}

.contact-hero-card{
  text-align:center;
  padding:34px 36px;
  margin-bottom:22px;
}

.contact-hero-card h1{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  font-size:clamp(46px,7vw,82px);
  line-height:.98;
  text-shadow:0 2px 14px rgba(0,0,0,.34);
  margin-bottom:16px;
}

.contact-hero-card p:not(.section-sparkle){
  font-size:clamp(17px,2vw,22px);
  line-height:1.65;
  max-width:760px;
  margin:0 auto;
  color:rgba(255,242,228,.92);
}

.contact-method-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.contact-method{
  display:flex;
  align-items:center;
  gap:18px;
  padding:22px;
  min-height:118px;
}

.contact-icon{
  flex:0 0 62px;
  width:62px;
  height:62px;
  border-radius:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ffd57f;
  font-size:30px;
  font-weight:900;
  background:linear-gradient(135deg,rgba(236,105,160,.28),rgba(123,67,199,.34));
  border:1px solid rgba(216,154,55,.48);
  box-shadow:0 0 18px rgba(255,213,126,.16), inset 0 0 0 1px rgba(255,235,181,.12);
}

.contact-method h2{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  font-size:clamp(26px,3vw,36px);
  line-height:1;
  margin-bottom:8px;
}

.contact-method a{
  color:#ffd57f;
  font-weight:900;
  text-decoration:none;
  word-break:break-word;
}

.contact-method a:hover,
.contact-method a:focus{
  color:#fff2e4;
  text-decoration:underline;
  outline:none;
}

.progress-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.48rem .8rem;
  border-radius:999px;
  border:1px solid rgba(216,154,55,.5);
  color:#ffd57f;
  background:rgba(255,255,255,.045);
  font-weight:900;
  font-size:13px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

@media(max-width:900px){
  .contact-page-content{
    width:calc(100% - 24px);
    margin:22px auto 28px;
  }

  .contact-kicker{
    width:100%;
    font-size:11px;
    line-height:1.45;
    white-space:normal;
  }

  .contact-hero-card{
    padding:28px 20px;
    border-radius:24px;
  }

  .contact-hero-card h1{
    font-size:clamp(40px,12vw,58px);
  }

  .contact-hero-card p:not(.section-sparkle){
    font-size:15px;
    line-height:1.7;
  }

  .contact-method-grid{
    grid-template-columns:1fr;
  }

  .contact-method{
    border-radius:24px;
    padding:20px;
    min-height:104px;
  }
}

@media(max-width:520px){
  .contact-method{
    align-items:flex-start;
    gap:14px;
  }

  .contact-icon{
    flex-basis:52px;
    width:52px;
    height:52px;
    border-radius:16px;
    font-size:25px;
  }
}


/* v08 Theme category cards and category pages */
.theme-categories,
.category-content{
  width:min(1080px,92vw);
  margin:30px auto 36px;
  color:#fff2e4;
}

.theme-section-heading{
  text-align:center;
  margin:0 auto 22px;
  border:1px solid rgba(216,154,55,.62);
  border-radius:28px;
  padding:30px 24px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,215,152,.12),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(236,105,160,.15),transparent 28%),
    linear-gradient(180deg,rgba(32,8,54,.92),rgba(17,5,31,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,235,181,.14);
}

.theme-section-heading h2,
.category-intro-card h1,
.category-coming-soon h2{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  text-shadow:0 2px 14px rgba(0,0,0,.34);
}

.theme-section-heading h2{
  font-size:clamp(40px,6vw,72px);
  line-height:.96;
  margin-bottom:10px;
}

.theme-section-heading p:not(.section-sparkle){
  color:rgba(255,242,228,.88);
  font-size:17px;
  line-height:1.55;
}

.theme-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.theme-card{
  color:#fff2e4;
  text-decoration:none;
  display:block;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.64);
  border-radius:26px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,215,152,.11),transparent 30%),
    linear-gradient(180deg,rgba(32,8,54,.94),rgba(17,5,31,.98));
  box-shadow:0 18px 42px rgba(0,0,0,.30), inset 0 0 0 1px rgba(255,235,181,.12);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.theme-card:hover,
.theme-card:focus{
  transform:translateY(-4px);
  border-color:rgba(255,213,126,.9);
  box-shadow:0 24px 54px rgba(0,0,0,.38),0 0 28px rgba(236,105,160,.20);
  outline:none;
}

.theme-art{
  border-bottom:1px solid rgba(216,154,55,.42);
  background:#15072c;
}

.theme-art img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}

.theme-card-copy{
  padding:20px 18px 22px;
  text-align:center;
}

.theme-card-copy h3{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(28px,3vw,38px);
  line-height:1.02;
  margin-bottom:8px;
}

.theme-card-copy p{
  color:rgba(255,242,228,.84);
  font-size:14px;
  line-height:1.5;
  margin-bottom:14px;
}

.theme-card-copy span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffd57f;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:11px;
}

.category-hero-panel{
  max-height:none;
}

.category-hero-img{
  background:#15072c;
}

.category-kicker{
  width:max-content;
  max-width:100%;
  margin:0 auto 18px;
  padding:.72rem 1.25rem;
  border:1px solid rgba(216,154,55,.68);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(39,10,64,.86),rgba(83,25,95,.78));
  box-shadow:0 12px 32px rgba(0,0,0,.24),0 0 22px rgba(236,105,160,.14);
  color:#ffd57f;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:13px;
  text-align:center;
}

.category-intro-card,
.category-detail-grid article,
.category-coming-soon{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.64);
  border-radius:28px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,215,152,.13),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(236,105,160,.16),transparent 28%),
    linear-gradient(180deg,rgba(32,8,54,.94),rgba(17,5,31,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.16);
}

.category-intro-card{
  text-align:center;
  padding:34px 36px;
  margin-bottom:22px;
}

.category-intro-card h1{
  font-size:clamp(48px,7vw,86px);
  line-height:.94;
  margin-bottom:14px;
}

.category-intro-card .lead{
  font-size:clamp(18px,2vw,23px);
  line-height:1.6;
  max-width:820px;
  margin:0 auto 10px;
  color:rgba(255,242,228,.94);
}

.category-intro-card p:not(.lead){
  color:rgba(255,242,228,.84);
  line-height:1.65;
  max-width:720px;
  margin:0 auto 16px;
}

.category-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin:22px 0;
}

.category-detail-grid article,
.category-coming-soon{
  padding:26px 24px;
}

.category-detail-grid h2{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(28px,3vw,40px);
  line-height:1;
  margin-bottom:14px;
  color:#fff2e4;
  text-align:center;
}

.category-detail-grid ul{
  list-style:none;
  padding:0;
  margin:0;
}

.category-detail-grid li{
  color:rgba(255,242,228,.86);
  line-height:1.55;
  margin:.55rem 0;
  padding-left:1.35rem;
  position:relative;
}

.category-detail-grid li:before{
  content:"✦";
  color:#ffd57f;
  position:absolute;
  left:0;
}

.category-detail-grid p{
  color:rgba(255,242,228,.86);
  line-height:1.6;
  text-align:center;
}

.category-coming-soon{
  text-align:center;
}

.category-coming-soon h2{
  font-size:clamp(34px,5vw,56px);
  line-height:.98;
  margin-bottom:12px;
}

.category-coming-soon p:not(.section-sparkle){
  color:rgba(255,242,228,.86);
  max-width:760px;
  margin:0 auto 16px;
  line-height:1.65;
}

.category-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.ghost-button{
  background:linear-gradient(135deg,rgba(123,67,199,.35),rgba(47,13,72,.78));
}

@media(max-width:1000px){
  .theme-grid,
  .category-detail-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:900px){
  .theme-categories,
  .category-content{
    width:calc(100% - 24px);
    margin:22px auto 28px;
  }

  .theme-section-heading,
  .category-intro-card,
  .category-detail-grid article,
  .category-coming-soon{
    border-radius:24px;
  }

  .theme-section-heading{
    padding:28px 20px;
  }

  .theme-section-heading h2,
  .category-intro-card h1{
    font-size:clamp(40px,12vw,58px);
  }

  .category-detail-grid,
  .theme-grid{
    grid-template-columns:1fr;
  }

  .category-kicker{
    width:100%;
    font-size:11px;
    line-height:1.45;
    white-space:normal;
  }

  .category-hero-panel .category-hero-img{
    height:auto!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center top!important;
  }
}


/* v17 Amelia inspiration card */
.maker-grid-special{
  grid-template-columns:minmax(0,760px);
  justify-content:center;
}

.maker-grid-special article{
  max-width:760px;
  margin:0 auto;
}

@media(max-width:900px){
  .maker-grid-special{
    grid-template-columns:1fr;
  }
}


/* v18 character collection sections */
.character-collection-section{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.64);
  border-radius:28px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,215,152,.13),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(236,105,160,.16),transparent 28%),
    linear-gradient(180deg,rgba(32,8,54,.94),rgba(17,5,31,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.16);
  margin:22px 0;
  padding:24px;
}

.character-collection-section:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    radial-gradient(circle,rgba(255,230,160,.86) 0 1px,transparent 1.55px),
    radial-gradient(circle,rgba(255,255,255,.48) 0 1px,transparent 1.45px);
  background-size:56px 56px,96px 96px;
  background-position:8px 12px,36px 22px;
  opacity:.15;
}

.character-collection-section > *{
  position:relative;
  z-index:1;
}

.character-collection-copy{
  text-align:center;
  max-width:850px;
  margin:0 auto 18px;
}

.character-collection-copy h2{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  font-size:clamp(38px,5vw,60px);
  line-height:.98;
  margin-bottom:12px;
  text-shadow:0 2px 14px rgba(0,0,0,.34);
}

.character-collection-copy p:not(.section-sparkle){
  color:rgba(255,242,228,.88);
  font-size:16px;
  line-height:1.65;
  margin:0 auto;
}

.character-collection-art{
  border:1px solid rgba(216,154,55,.45);
  border-radius:22px;
  overflow:hidden;
  background:#fff1e5;
  box-shadow:0 14px 34px rgba(0,0,0,.30), inset 0 0 0 1px rgba(255,235,181,.12);
}

.character-collection-art img{
  display:block;
  width:100%;
  height:auto;
}

@media(max-width:900px){
  .character-collection-section{
    padding:16px;
    border-radius:24px;
  }
  .character-collection-art{
    border-radius:18px;
  }
  .character-collection-copy p:not(.section-sparkle){
    font-size:15px;
  }
}


/* v25 Storybook product architecture */
.product-architecture{
  margin:28px 0;
  padding:44px clamp(18px,4vw,46px);
  border:1px solid rgba(216,154,55,.58);
  border-radius:28px;
  background:
    radial-gradient(circle at 15% 8%, rgba(255,213,126,.12), transparent 28%),
    radial-gradient(circle at 85% 12%, rgba(236,105,160,.14), transparent 30%),
    linear-gradient(180deg,rgba(34,10,58,.94),rgba(22,6,40,.96));
  box-shadow:0 22px 58px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.16);
}

.product-tier-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin-top:26px;
}

.product-tier-card{
  display:grid;
  grid-template-rows:auto 1fr;
  overflow:hidden;
  border:1px solid rgba(216,154,55,.5);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,248,237,.10),rgba(255,248,237,.05));
  color:var(--cream);
  text-decoration:none;
  box-shadow:0 18px 42px rgba(0,0,0,.25);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}

.product-tier-card:hover,
.product-tier-card:focus{
  transform:translateY(-4px);
  border-color:rgba(255,213,126,.9);
  box-shadow:0 24px 54px rgba(0,0,0,.38),0 0 28px rgba(236,105,160,.2);
  outline:none;
}

.product-tier-art img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}

.product-tier-copy{
  padding:22px 22px 24px;
  text-align:center;
}

.product-tier-copy.no-art{
  display:flex;
  min-height:310px;
  flex-direction:column;
  justify-content:center;
  background:
    radial-gradient(circle at 20% 15%, rgba(255,213,126,.13), transparent 30%),
    radial-gradient(circle at 80% 10%, rgba(236,105,160,.18), transparent 34%);
}

.tier-label{
  color:#ffd57f!important;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:11px!important;
  margin-bottom:10px!important;
}

.product-tier-copy h3{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(30px,3.2vw,42px);
  line-height:1.02;
  margin-bottom:10px;
}

.product-tier-copy p{
  color:rgba(255,242,228,.86);
  line-height:1.55;
  margin-bottom:16px;
}

.product-tier-copy span{
  display:inline-flex;
  color:#ffd57f;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:11px;
}

.storybook-tier-section{
  margin:24px 0;
  padding:32px;
  border:1px solid rgba(216,154,55,.52);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,248,237,.97),rgba(255,239,246,.94));
  box-shadow:0 18px 44px rgba(0,0,0,.18);
  color:#2b173d;
}

.storybook-tier-section.with-art{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,440px);
  gap:26px;
  align-items:center;
}

.storybook-copy-block h2{
  font-family:'Cormorant Garamond',serif;
  color:#4e2474;
  font-size:clamp(36px,5vw,58px);
  line-height:1;
  margin-bottom:12px;
}

.storybook-copy-block p{
  color:#3c2a4d;
  line-height:1.7;
  font-size:16px;
}

.storybook-art-card{
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(216,154,55,.56);
  box-shadow:0 16px 34px rgba(53,20,73,.18);
}

.storybook-art-card img{
  display:block;
  width:100%;
  height:auto;
}

.premium-note{
  background:linear-gradient(135deg,rgba(255,248,237,.96),rgba(235,221,255,.94));
}

@media(max-width:900px){
  .product-tier-grid,
  .storybook-tier-section.with-art{
    grid-template-columns:1fr;
  }

  .product-architecture{
    border-radius:0;
    margin:0;
  }

  .product-tier-copy.no-art{
    min-height:230px;
  }
}


/* v26 revised keepsake architecture */
.two-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.keepsake-style-section .product-tier-card{min-height:100%;}
.keepsake-style-card .product-tier-art img{aspect-ratio:16/10;}
.home-story-teaser{margin:28px 0;padding:34px clamp(22px,5vw,60px);border:1px solid rgba(216,154,55,.58);border-radius:28px;background:linear-gradient(135deg,rgba(255,248,237,.96),rgba(238,220,255,.94));box-shadow:0 20px 52px rgba(0,0,0,.22);text-align:center;}
.home-story-teaser .storybook-copy-block{max-width:920px;margin:0 auto;}
.home-story-teaser .storybook-copy-block h2{font-size:clamp(38px,5.5vw,68px);}
.inline-product-nav{margin:24px 0;}
.inner-theme-section{margin-top:26px;}
.compact-grid{grid-template-columns:repeat(2,minmax(260px,1fr));max-width:980px;margin-inline:auto;}
.category-hero-img{object-position:center center;}
.storybook-keepsakes-page .category-hero-img{object-position:center center;}
.sculpted-keepsakes-page .category-hero-img{object-position:center center;}
@media(max-width:900px){.two-card-grid,.compact-grid{grid-template-columns:1fr}.keepsake-style-card .product-tier-art img{aspect-ratio:4/3}.home-story-teaser{border-radius:0;margin:0}}

/* v27 Phase C1A Storybook Keepsakes structure */
.storybook-section{margin:28px 0;padding:34px;border:1px solid rgba(216,154,55,.54);border-radius:28px;background:radial-gradient(circle at 12% 12%,rgba(255,213,126,.12),transparent 30%),linear-gradient(180deg,rgba(255,248,237,.97),rgba(255,239,246,.94));box-shadow:0 18px 44px rgba(0,0,0,.18);color:#2b173d}
.storybook-section .theme-section-heading h2,.storybook-feature-copy h2{font-family:'Cormorant Garamond',serif;color:#4e2474;font-size:clamp(36px,5vw,58px);line-height:1;margin-bottom:12px}
.storybook-section .theme-section-heading p,.storybook-feature-copy p{color:#3c2a4d}
.storybook-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.storybook-card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.storybook-mini-card{display:block;min-height:220px;padding:24px;border-radius:22px;border:1px solid rgba(216,154,55,.5);background:radial-gradient(circle at 18% 10%,rgba(255,213,126,.14),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,244,250,.86));color:#2b173d;text-decoration:none;box-shadow:0 14px 30px rgba(70,25,90,.13);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.storybook-mini-card:hover,.storybook-mini-card:focus{transform:translateY(-3px);border-color:rgba(216,154,55,.9);box-shadow:0 18px 40px rgba(70,25,90,.22);outline:none}
.storybook-mini-card h3{font-family:'Cormorant Garamond',serif;color:#4e2474;font-size:clamp(28px,3.2vw,38px);line-height:1;margin-bottom:10px}
.storybook-mini-card p{color:#3c2a4d;line-height:1.55;margin-bottom:14px}
.storybook-mini-card span{color:#c75a91;text-transform:uppercase;font-size:11px;letter-spacing:.12em;font-weight:900}
.storybook-mini-card.image-card{padding:0;overflow:hidden}
.storybook-mini-card.image-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.storybook-mini-card.image-card h3,.storybook-mini-card.image-card p,.storybook-mini-card.image-card span{margin-left:22px;margin-right:22px}
.storybook-mini-card.image-card h3{margin-top:20px}
.storybook-mini-card.image-card span{display:inline-block;margin-bottom:22px}
.storybook-section.with-art{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,460px);gap:28px;align-items:center}
.storybook-feature-art{overflow:hidden;border-radius:24px;border:1px solid rgba(216,154,55,.56);box-shadow:0 16px 34px rgba(53,20,73,.18)}
.storybook-feature-art img{display:block;width:100%;height:auto}
.storybook-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.storybook-benefit-grid article{padding:22px;border-radius:22px;background:rgba(255,255,255,.72);border:1px solid rgba(216,154,55,.38);box-shadow:0 12px 26px rgba(70,25,90,.10)}
.storybook-benefit-grid h3{color:#4e2474;font-family:'Cormorant Garamond',serif;font-size:28px;line-height:1;margin-bottom:8px}
.storybook-benefit-grid p{color:#3c2a4d;line-height:1.55}
.keepsakes-overview-grid{margin:28px 0}
@media(max-width:900px){.storybook-card-grid,.storybook-card-grid.two,.storybook-section.with-art,.storybook-benefit-grid{grid-template-columns:1fr}.storybook-section{border-radius:0;margin:0}}

/* v29 CTA cleanup */
html{scroll-behavior:smooth;}
#keepsake-styles{scroll-margin-top:24px;}


/* v33 Storybook header contrast + CMK style polish */
.storybook-page .cmk-magic-heading-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%, rgba(236,105,160,.34), transparent 28%),
    radial-gradient(circle at 88% 20%, rgba(255,213,126,.16), transparent 30%),
    radial-gradient(circle at 50% 110%, rgba(145,74,198,.32), transparent 42%),
    linear-gradient(135deg, rgba(33,7,51,.98), rgba(79,25,96,.96) 48%, rgba(34,8,58,.98));
  border:1px solid rgba(255,213,126,.78);
  box-shadow:
    0 24px 58px rgba(24,4,38,.38),
    inset 0 0 0 1px rgba(255,248,220,.14),
    inset 0 0 52px rgba(255,213,126,.08);
}

.storybook-page .cmk-magic-heading-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 72%, rgba(255,213,126,.18) 0 1px, transparent 2px),
    radial-gradient(circle at 26% 22%, rgba(255,255,255,.18) 0 1px, transparent 2px),
    radial-gradient(circle at 75% 18%, rgba(255,213,126,.22) 0 1px, transparent 2px),
    radial-gradient(circle at 86% 68%, rgba(255,255,255,.16) 0 1px, transparent 2px);
  background-size:120px 120px, 180px 180px, 150px 150px, 210px 210px;
  opacity:.95;
}

.storybook-page .cmk-magic-heading-section::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,213,126,.10), transparent 18%, transparent 82%, rgba(236,105,160,.12)),
    radial-gradient(ellipse at 10% 100%, rgba(255,213,126,.15), transparent 36%),
    radial-gradient(ellipse at 92% 100%, rgba(236,105,160,.18), transparent 38%);
  opacity:.9;
}

.storybook-page .cmk-magic-heading-section > *{
  position:relative;
  z-index:1;
}

.storybook-page .cmk-magic-heading-section .theme-section-heading{
  max-width:1120px;
  margin:0 auto 28px;
  padding:18px 14px 8px;
}

.storybook-page .cmk-magic-heading-section .section-sparkle{
  color:#ffe59f!important;
  text-shadow:0 0 14px rgba(255,213,126,.5);
  letter-spacing:.18em;
}

.storybook-page .cmk-magic-heading-section .theme-section-heading h2{
  color:#fff8e9!important;
  text-shadow:
    0 2px 0 rgba(50,14,67,.34),
    0 0 28px rgba(255,218,147,.22);
}

.storybook-page .cmk-magic-heading-section .theme-section-heading p{
  color:rgba(255,246,234,.92)!important;
  text-shadow:0 1px 12px rgba(30,0,45,.58);
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}

.storybook-page .cmk-magic-heading-section .storybook-mini-card{
  background:
    radial-gradient(circle at 18% 8%, rgba(255,213,126,.14), transparent 32%),
    linear-gradient(180deg, rgba(255,250,244,.96), rgba(255,239,247,.96));
  border-color:rgba(255,213,126,.55);
  box-shadow:0 18px 34px rgba(18,4,38,.28);
}


/* v34 CMK approved banner consistency system */
.cmk-approved-banner,
.storybook-page .cmk-approved-banner,
.sculpted-page .cmk-approved-banner{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 18%, rgba(236,105,160,.34), transparent 28%),
    radial-gradient(circle at 86% 16%, rgba(255,213,126,.18), transparent 30%),
    radial-gradient(circle at 50% 110%, rgba(145,74,198,.34), transparent 42%),
    linear-gradient(135deg, rgba(31,6,49,.98), rgba(79,25,96,.96) 50%, rgba(31,6,49,.98)) !important;
  border:1px solid rgba(255,213,126,.78) !important;
  box-shadow:
    0 24px 58px rgba(24,4,38,.38),
    inset 0 0 0 1px rgba(255,248,220,.14),
    inset 0 0 52px rgba(255,213,126,.08) !important;
  color:#fff8e9 !important;
}

.cmk-approved-banner::before,
.cmk-approved-intro-panel::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 72%, rgba(255,213,126,.20) 0 1px, transparent 2px),
    radial-gradient(circle at 26% 22%, rgba(255,255,255,.18) 0 1px, transparent 2px),
    radial-gradient(circle at 75% 18%, rgba(255,213,126,.24) 0 1px, transparent 2px),
    radial-gradient(circle at 86% 68%, rgba(255,255,255,.16) 0 1px, transparent 2px);
  background-size:120px 120px, 180px 180px, 150px 150px, 210px 210px;
  opacity:.9;
}

.cmk-approved-banner::after,
.cmk-approved-intro-panel::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,213,126,.10), transparent 18%, transparent 82%, rgba(236,105,160,.12)),
    radial-gradient(ellipse at 10% 100%, rgba(255,213,126,.15), transparent 36%),
    radial-gradient(ellipse at 92% 100%, rgba(236,105,160,.18), transparent 38%);
  opacity:.9;
}

.cmk-approved-banner > *,
.cmk-approved-intro-panel > *{
  position:relative;
  z-index:1;
}

.cmk-approved-banner .section-sparkle,
.cmk-approved-banner .category-kicker,
.cmk-approved-intro-panel .section-sparkle,
.cmk-approved-intro-panel .category-kicker{
  color:#ffe59f !important;
  text-shadow:0 0 14px rgba(255,213,126,.5) !important;
  letter-spacing:.18em;
}

.cmk-approved-banner h1,
.cmk-approved-banner h2,
.cmk-approved-banner .theme-section-heading h2,
.cmk-approved-banner .storybook-feature-copy h2,
.cmk-approved-intro-panel h1,
.cmk-approved-intro-panel h2{
  color:#fff8e9 !important;
  text-shadow:
    0 2px 0 rgba(50,14,67,.34),
    0 0 28px rgba(255,218,147,.22) !important;
}

.cmk-approved-banner p,
.cmk-approved-banner .theme-section-heading p,
.cmk-approved-banner .storybook-feature-copy p,
.cmk-approved-intro-panel p,
.cmk-approved-intro-panel .lead{
  color:rgba(255,246,234,.92) !important;
  text-shadow:0 1px 12px rgba(30,0,45,.58) !important;
}

.cmk-approved-banner .storybook-mini-card,
.cmk-approved-banner .storybook-benefit-grid article{
  background:
    radial-gradient(circle at 18% 8%, rgba(255,213,126,.14), transparent 32%),
    linear-gradient(180deg, rgba(255,250,244,.97), rgba(255,239,247,.97)) !important;
  border-color:rgba(255,213,126,.55) !important;
  box-shadow:0 18px 34px rgba(18,4,38,.28) !important;
  color:#2b173d !important;
}

.cmk-approved-banner .storybook-mini-card h3,
.cmk-approved-banner .storybook-benefit-grid h3{
  color:#4e2474 !important;
  text-shadow:none !important;
}

.cmk-approved-banner .storybook-mini-card p,
.cmk-approved-banner .storybook-benefit-grid p{
  color:#3c2a4d !important;
  text-shadow:none !important;
}

.cmk-approved-intro-panel{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 18%, rgba(236,105,160,.34), transparent 28%),
    radial-gradient(circle at 86% 16%, rgba(255,213,126,.18), transparent 30%),
    linear-gradient(135deg, rgba(31,6,49,.98), rgba(79,25,96,.96) 50%, rgba(31,6,49,.98)) !important;
  border:1px solid rgba(255,213,126,.78) !important;
  box-shadow:
    0 24px 58px rgba(24,4,38,.38),
    inset 0 0 0 1px rgba(255,248,220,.14),
    inset 0 0 52px rgba(255,213,126,.08) !important;
}

.cmk-approved-intro-panel .magic-button,
.cmk-approved-banner .magic-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:13px 22px;
  border-radius:999px;
  border:1px solid rgba(255,213,126,.72);
  background:linear-gradient(135deg, #ec69a0, #ffd57f);
  color:#2b173d !important;
  font-weight:900;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  box-shadow:0 12px 26px rgba(0,0,0,.22), 0 0 20px rgba(236,105,160,.18);
}

.cmk-approved-intro-panel .magic-button:hover,
.cmk-approved-banner .magic-button:hover{
  transform:translateY(-2px);
}

.cmk-crosslink-banner{
  text-align:center;
}

.cmk-crosslink-banner .storybook-feature-copy{
  max-width:900px;
  margin:0 auto;
}

.cmk-crosslink-banner .magic-button{
  margin-top:10px;
}

/* Fix any remaining default link color inside approved panels */
.cmk-approved-banner a:not(.storybook-mini-card),
.cmk-approved-intro-panel a{
  color:#ffe59f;
}

.cmk-approved-banner a.magic-button,
.cmk-approved-intro-panel a.magic-button{
  color:#2b173d !important;
}

/* Mobile readability */
@media(max-width:900px){
  .cmk-approved-banner,
  .cmk-approved-intro-panel{
    border-radius:0 !important;
  }
}


/* v35 corrected CMK banner system */
.cmk-section-banner,.cmk-intro-panel,.cmk-crosslink-panel{
  position:relative;overflow:hidden;border:1px solid rgba(255,213,126,.78)!important;
  background:
    radial-gradient(circle at 16% 18%,rgba(236,105,160,.34),transparent 28%),
    radial-gradient(circle at 86% 16%,rgba(255,213,126,.18),transparent 30%),
    radial-gradient(circle at 50% 110%,rgba(145,74,198,.34),transparent 42%),
    linear-gradient(135deg,rgba(31,6,49,.98),rgba(79,25,96,.96) 50%,rgba(31,6,49,.98))!important;
  box-shadow:0 22px 52px rgba(24,4,38,.30),inset 0 0 0 1px rgba(255,248,220,.14),inset 0 0 52px rgba(255,213,126,.08)!important;
  color:#fff8e9!important;
}
.cmk-section-banner{padding:34px 28px;margin:0 auto 26px;border-radius:28px;text-align:center;}
.cmk-intro-panel,.cmk-crosslink-panel{padding:38px 34px!important;border-radius:28px!important;text-align:center;}
.cmk-section-banner:before,.cmk-intro-panel:before,.cmk-crosslink-panel:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 14% 72%,rgba(255,213,126,.22) 0 1px,transparent 2px),
    radial-gradient(circle at 26% 22%,rgba(255,255,255,.18) 0 1px,transparent 2px),
    radial-gradient(circle at 75% 18%,rgba(255,213,126,.24) 0 1px,transparent 2px),
    radial-gradient(circle at 86% 68%,rgba(255,255,255,.16) 0 1px,transparent 2px);
  background-size:120px 120px,180px 180px,150px 150px,210px 210px;opacity:.95;
}
.cmk-section-banner:after,.cmk-intro-panel:after,.cmk-crosslink-panel:after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,213,126,.10),transparent 18%,transparent 82%,rgba(236,105,160,.12)),
  radial-gradient(ellipse at 10% 100%,rgba(255,213,126,.15),transparent 36%),
  radial-gradient(ellipse at 92% 100%,rgba(236,105,160,.18),transparent 38%);opacity:.88;
}
.cmk-section-banner>*,.cmk-intro-panel>*,.cmk-crosslink-panel>*{position:relative;z-index:1;}
.cmk-section-banner .theme-section-heading,.cmk-section-banner .storybook-feature-copy{margin:0 auto!important;max-width:1120px;}
.cmk-section-banner .section-sparkle,.cmk-intro-panel .section-sparkle,.cmk-crosslink-panel .section-sparkle{
  color:#ffe59f!important;text-shadow:0 0 14px rgba(255,213,126,.5)!important;letter-spacing:.18em;
}
.cmk-section-banner h1,.cmk-section-banner h2,.cmk-section-banner .theme-section-heading h2,.cmk-section-banner .storybook-feature-copy h2,
.cmk-intro-panel h1,.cmk-intro-panel h2,.cmk-crosslink-panel h1,.cmk-crosslink-panel h2{
  color:#fff8e9!important;text-shadow:0 2px 0 rgba(50,14,67,.34),0 0 28px rgba(255,218,147,.22)!important;
}
.cmk-section-banner p,.cmk-section-banner .theme-section-heading p,.cmk-section-banner .storybook-feature-copy p,
.cmk-intro-panel p,.cmk-intro-panel .lead,.cmk-crosslink-panel p{
  color:rgba(255,246,234,.93)!important;text-shadow:0 1px 12px rgba(30,0,45,.58)!important;
}
.storybook-card-grid .storybook-mini-card,.storybook-benefit-grid article{
  background:radial-gradient(circle at 18% 8%,rgba(255,213,126,.14),transparent 32%),linear-gradient(180deg,rgba(255,250,244,.97),rgba(255,239,247,.97))!important;
  border-color:rgba(216,154,55,.48)!important;box-shadow:0 14px 30px rgba(70,25,90,.13)!important;
}
.storybook-card-grid .storybook-mini-card h3,.storybook-benefit-grid article h3{color:#4e2474!important;text-shadow:none!important;}
.storybook-card-grid .storybook-mini-card p,.storybook-benefit-grid article p{color:#3c2a4d!important;text-shadow:none!important;}
.cmk-intro-panel .magic-button,.cmk-crosslink-panel .magic-button,.cmk-section-banner .magic-button{
  display:inline-flex;align-items:center;justify-content:center;margin-top:12px;padding:13px 24px;border-radius:999px;
  border:1px solid rgba(255,213,126,.75);background:linear-gradient(135deg,#ec69a0,#ffd57f);
  color:#2b173d!important;font-weight:900;text-decoration:none!important;text-transform:uppercase;letter-spacing:.08em;
  box-shadow:0 12px 26px rgba(0,0,0,.22),0 0 20px rgba(236,105,160,.18);
}
.cmk-intro-panel a:not(.magic-button),.cmk-crosslink-panel a:not(.magic-button),.cmk-section-banner a:not(.magic-button){color:#ffe59f!important;}
@media(max-width:900px){.cmk-section-banner,.cmk-intro-panel,.cmk-crosslink-panel{border-radius:0!important;padding:30px 20px!important;}}


/* v36 C1D character artwork + CTA polish */
.cmk-crosslink-panel{
  padding:30px 28px !important;
}

.cmk-crosslink-panel h2{
  font-size:clamp(42px,5vw,68px) !important;
}

.cmk-crosslink-panel p:not(.section-sparkle){
  max-width:1080px;
  margin-left:auto;
  margin-right:auto;
}

.small-magic-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:10px;
  padding:12px 22px;
  border-radius:999px;
  border:1px solid rgba(255,213,126,.75);
  background:linear-gradient(135deg,#ec69a0,#ffd57f);
  color:#2b173d !important;
  font-weight:900;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  box-shadow:0 12px 26px rgba(0,0,0,.18),0 0 20px rgba(236,105,160,.16);
}

.storybook-page #character-collections .storybook-mini-card.image-card img{
  object-position:center center;
}


/* v37 Storybook theme card art */
.theme-image-card{
  padding:0 !important;
  overflow:hidden;
  min-height:360px;
}
.theme-image-card img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  object-position:center center;
}
.theme-image-card h3,
.theme-image-card p,
.theme-image-card span{
  margin-left:22px;
  margin-right:22px;
}
.theme-image-card h3{
  margin-top:20px;
}
.theme-image-card span{
  display:inline-block;
  margin-bottom:22px;
}
.storybook-collection-page .category-hero-img{
  object-position:center center;
}
.storybook-collection-page .storybook-feature-art img{
  width:100%;
  display:block;
}
@media(max-width:900px){
  .theme-image-card{
    min-height:0;
  }
}


/* v38 flatback Storybook card art deployment */
.theme-image-card{
  padding:0 !important;
  overflow:hidden;
  min-height:360px;
}
.theme-image-card img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  object-position:center center;
}
.theme-image-card h3,
.theme-image-card p,
.theme-image-card span{
  margin-left:22px;
  margin-right:22px;
}
.theme-image-card h3{
  margin-top:20px;
}
.theme-image-card span{
  display:inline-block;
  margin-bottom:22px;
}
@media(max-width:900px){
  .theme-image-card{
    min-height:0;
  }
}


/* v40: top Storybook page uses atmospheric selector art; category pages show flatback collections */
.storybook-flatback-page .category-hero-img{
  object-position:center center;
}
.flatback-display-section{
  text-align:center;
}
.flatback-sheet-card{
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(216,154,55,.58);
  box-shadow:0 18px 44px rgba(0,0,0,.20);
  background:rgba(255,248,237,.92);
  margin-top:24px;
}
.flatback-sheet-card img{
  display:block;
  width:100%;
  height:auto;
}
.theme-image-card img{
  aspect-ratio:16/10;
  object-fit:cover;
  object-position:center center;
}


/* v44 category page hero art correction */
.storybook-flatback-page .category-hero-img{
  object-fit:cover;
  object-position:center center;
}


/* v45 translucent glass header/nav treatment */
.art-panel .crisp-nav,
.category-hero-panel .crisp-nav,
.crisp-nav{
  background:
    linear-gradient(135deg, rgba(31, 6, 49, .18), rgba(86, 28, 96, .22)) !important;
  border: 1px solid rgba(255, 213, 126, .55) !important;
  box-shadow:
    0 14px 34px rgba(20, 3, 34, .18),
    inset 0 0 0 1px rgba(255, 248, 220, .08) !important;
  backdrop-filter: blur(6px) saturate(1.15);
  -webkit-backdrop-filter: blur(6px) saturate(1.15);
}

.art-panel .nav-mask,
.category-hero-panel .nav-mask{
  background:
    linear-gradient(180deg, rgba(20, 3, 34, .16), rgba(20, 3, 34, .04) 70%, transparent) !important;
}

.crisp-logo,
.crisp-links a{
  text-shadow:
    0 2px 10px rgba(20, 3, 34, .72),
    0 0 14px rgba(255, 213, 126, .10);
}

.crisp-logo{
  color: #fff8e9 !important;
}

.crisp-logo span{
  color: #ff6fa8 !important;
}

.crisp-links a{
  color: #fff8e9 !important;
}

/* Make hover/focus feel magical without adding a heavy band back */
.crisp-links a:hover,
.crisp-links a:focus{
  color: #ffe59f !important;
  text-shadow:
    0 2px 10px rgba(20, 3, 34, .7),
    0 0 18px rgba(255, 213, 126, .32);
}

/* Mobile menu keeps readability while staying lighter than old solid slab */
.mobile-menu-panel{
  background: rgba(31, 6, 49, .88) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}


/* v46 home/header duplicate watermark fix
   Keep the translucent glass header, but prevent the hidden/oversized hero title
   from bleeding through behind the logo/nav. */
.art-panel .sr-copy,
.category-hero-panel .sr-copy{
  display:none !important;
}

.art-panel .crisp-nav,
.category-hero-panel .crisp-nav,
.crisp-nav{
  isolation:isolate;
}

.art-panel .crisp-nav::before,
.category-hero-panel .crisp-nav::before,
.crisp-nav::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:rgba(31, 6, 49, .10);
  border-radius:inherit;
}

/* v48 remove flatback intro block spacing fix */
.storybook-flatback-page .category-content{
  padding-top: 24px;
}
.storybook-flatback-page .flatback-display-section{
  margin-top: 0;
}

/* v49 remove remaining flatback heading blocks */
.storybook-flatback-page .flatback-display-section {
  margin-top: 0;
  padding-top: 0;
}
.storybook-flatback-page .flatback-sheet-card {
  margin-top: 0;
}
.storybook-flatback-page .category-content {
  gap: 24px;
}


/* v51 sculpted-specific detail pages */
.sculpted-detail-page .category-hero-img{
  object-position:center center;
}
.sculpted-detail-page .storybook-feature-art img{
  width:100%;
  display:block;
  border-radius:24px;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}
.sculpted-page #magical-themes .theme-image-card img{
  aspect-ratio:16/10;
  object-fit:cover;
  object-position:center center;
}
.sculpted-detail-intro{
  text-align:center;
}
.sculpted-art-showcase{
  align-items:center;
}


/* v52 sculpted detail pages use actual older sculpted collection art */
.sculpted-actual-art-section{
  background:linear-gradient(180deg,rgba(44,10,61,.94),rgba(22,5,37,.98)) !important;
  border:1px solid rgba(216,154,55,.68) !important;
  border-radius:28px;
  padding:28px;
  text-align:center;
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.sculpted-actual-heading{
  max-width:980px;
  margin:0 auto 24px;
}
.sculpted-actual-heading h2{
  color:#fff8e9 !important;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(42px,6vw,72px);
  line-height:.98;
  margin:8px 0 12px;
  text-shadow:0 2px 14px rgba(0,0,0,.28);
}
.sculpted-actual-heading p:not(.section-sparkle){
  color:#fff8e9 !important;
  opacity:.92;
  font-size:clamp(16px,2vw,21px);
  line-height:1.45;
}
.sculpted-actual-art-card{
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(255,213,126,.62);
  box-shadow:0 16px 38px rgba(0,0,0,.26);
  background:rgba(255,248,237,.96);
}
.sculpted-actual-art-card img{
  display:block;
  width:100%;
  height:auto;
}


/* v55 sculpted detail pages use enlarged card-preview art */
.sculpted-detail-page .category-hero-img{
  object-fit:cover;
  object-position:center center;
}
.sculpted-detail-page .sculpted-actual-art-card img,
.sculpted-detail-page .storybook-feature-art img{
  object-fit:cover;
  object-position:center center;
}


/* v59 Color Me Keepsake magical logo + banner polish */

/* Logo: add subtle gold enamel/keepsake sparkle without changing the mark structure */
.crisp-logo{
  position:relative;
  display:inline-block;
  color:#fff8e9 !important;
  letter-spacing:.035em;
  text-shadow:
    0 1px 0 rgba(255,213,126,.74),
    0 2px 0 rgba(96,42,92,.44),
    0 0 10px rgba(255,213,126,.38),
    0 0 22px rgba(255,121,174,.22),
    0 4px 14px rgba(14,3,28,.58) !important;
  -webkit-text-stroke:.35px rgba(255,213,126,.42);
}
.crisp-logo span{
  color:#ff6fa8 !important;
  text-shadow:
    0 1px 0 rgba(255,213,126,.68),
    0 0 11px rgba(255,213,126,.28),
    0 0 20px rgba(255,121,174,.38),
    0 4px 14px rgba(14,3,28,.58) !important;
  -webkit-text-stroke:.35px rgba(255,213,126,.36);
}
.crisp-logo::after{
  content:"✦";
  position:absolute;
  right:-1.05em;
  top:-.22em;
  font-size:.42em;
  color:#ffd57f;
  text-shadow:0 0 8px rgba(255,213,126,.9),0 0 18px rgba(255,121,174,.45);
  opacity:.92;
}

/* Header glass: a touch more jewel-like while staying translucent */
.crisp-nav{
  background:
    radial-gradient(circle at 16% 20%,rgba(255,213,126,.15),transparent 22%),
    radial-gradient(circle at 84% 18%,rgba(255,111,168,.16),transparent 25%),
    linear-gradient(135deg,rgba(35,7,55,.23),rgba(113,45,103,.24)) !important;
  border:1px solid rgba(255,213,126,.68) !important;
  box-shadow:
    0 13px 34px rgba(20,3,34,.20),
    inset 0 0 0 1px rgba(255,248,220,.10),
    inset 0 0 26px rgba(255,213,126,.06) !important;
}

/* Shared CMK banner upgrade: more enchanted purple depth, gold filigree, sparkles */
.cmk-section-banner,
.cmk-intro-panel,
.category-intro-card.cmk-intro-panel,
.cmk-crosslink-panel,
.sculpted-actual-art-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%,rgba(255,213,126,.16),transparent 16%),
    radial-gradient(circle at 82% 18%,rgba(255,121,174,.18),transparent 20%),
    radial-gradient(circle at 50% 115%,rgba(128,54,148,.30),transparent 45%),
    linear-gradient(145deg,rgba(64,16,82,.96),rgba(39,8,60,.98) 48%,rgba(16,4,34,.99)) !important;
  border:1px solid rgba(255,213,126,.76) !important;
  box-shadow:
    0 18px 42px rgba(52,13,75,.24),
    inset 0 0 0 1px rgba(255,248,220,.08),
    inset 0 0 44px rgba(255,213,126,.07),
    0 0 0 1px rgba(255,121,174,.08) !important;
}
.cmk-section-banner::before,
.cmk-intro-panel::before,
.category-intro-card.cmk-intro-panel::before,
.cmk-crosslink-panel::before,
.sculpted-actual-art-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 9% 22%,rgba(255,213,126,.75) 0 1.5px,transparent 2.5px),
    radial-gradient(circle at 24% 82%,rgba(255,121,174,.40) 0 1.2px,transparent 2.5px),
    radial-gradient(circle at 48% 16%,rgba(255,248,220,.50) 0 1.4px,transparent 2.6px),
    radial-gradient(circle at 75% 74%,rgba(255,213,126,.48) 0 1.3px,transparent 2.5px),
    radial-gradient(circle at 91% 30%,rgba(255,248,220,.45) 0 1.3px,transparent 2.5px);
  opacity:.65;
  mix-blend-mode:screen;
}
.cmk-section-banner::after,
.cmk-intro-panel::after,
.category-intro-card.cmk-intro-panel::after,
.cmk-crosslink-panel::after,
.sculpted-actual-art-section::after{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:inherit;
  pointer-events:none;
  border:1px solid rgba(255,213,126,.24);
  box-shadow:
    inset 0 0 18px rgba(255,213,126,.08),
    0 0 18px rgba(255,121,174,.08);
}

/* Typography inside the magical blocks */
.cmk-section-banner h1,
.cmk-section-banner h2,
.cmk-intro-panel h1,
.cmk-intro-panel h2,
.category-intro-card.cmk-intro-panel h1,
.category-intro-card.cmk-intro-panel h2,
.cmk-crosslink-panel h1,
.cmk-crosslink-panel h2,
.sculpted-actual-art-section h1,
.sculpted-actual-art-section h2{
  color:#fff8e9 !important;
  text-shadow:
    0 2px 0 rgba(83,34,88,.62),
    0 0 12px rgba(255,213,126,.18),
    0 0 28px rgba(255,121,174,.14) !important;
}
.cmk-section-banner p,
.cmk-intro-panel p,
.category-intro-card.cmk-intro-panel p,
.cmk-crosslink-panel p,
.sculpted-actual-art-section p{
  color:rgba(255,248,233,.92) !important;
}
.section-sparkle,
.category-kicker{
  color:#ffe18f !important;
  text-shadow:
    0 0 8px rgba(255,213,126,.42),
    0 0 18px rgba(255,121,174,.18) !important;
}

/* Add a small CMK ornamental flourish beneath major banner titles */
.cmk-section-banner h2::after,
.cmk-intro-panel h1::after,
.cmk-crosslink-panel h2::after,
.sculpted-actual-art-section h2::after{
  content:" ✦  ❤  ✦";
  display:block;
  margin:.16em auto 0;
  font-family:inherit;
  font-size:.23em;
  letter-spacing:.18em;
  color:#ffd57f;
  text-shadow:0 0 10px rgba(255,213,126,.7),0 0 16px rgba(255,121,174,.30);
}

/* Buttons: stronger enchanted enamel look */
.magic-button,
.ghost-button,
.cmk-crosslink-panel .magic-button{
  border:1px solid rgba(255,230,160,.72) !important;
  box-shadow:
    0 12px 28px rgba(32,6,48,.28),
    inset 0 1px 0 rgba(255,255,255,.30),
    0 0 20px rgba(255,213,126,.18) !important;
}
.magic-button:hover,
.magic-button:focus{
  transform:translateY(-2px);
  box-shadow:
    0 16px 34px rgba(32,6,48,.32),
    inset 0 1px 0 rgba(255,255,255,.34),
    0 0 28px rgba(255,213,126,.28) !important;
}

/* Keep text/card grids readable against richer banners */
.storybook-mini-card,
.theme-image-card{
  box-shadow:
    0 16px 34px rgba(37,8,56,.18),
    0 0 0 1px rgba(255,213,126,.08);
}


/* v60 stronger magical polish + correct banner targeting */
:root{
  --cmk-gold:#ffd678;
  --cmk-gold-soft:#fff0c7;
  --cmk-pink:#ff7ab4;
  --cmk-purple-deep:#2a0742;
  --cmk-purple-mid:#4d1769;
}

/* Give the logo a distinct enchanted plaque and richer gold sparkle */
.crisp-nav .crisp-logo{
  position:relative;
  isolation:isolate;
  padding:10px 14px 8px;
  border-radius:16px;
  background:
    radial-gradient(circle at 18% 24%, rgba(255,214,120,.18), transparent 28%),
    radial-gradient(circle at 82% 32%, rgba(255,122,180,.18), transparent 30%),
    linear-gradient(180deg, rgba(92,35,104,.42), rgba(49,12,76,.28));
  box-shadow:
    0 8px 20px rgba(22,4,40,.22),
    inset 0 0 0 1px rgba(255,214,120,.32),
    inset 0 0 20px rgba(255,255,255,.06);
  backdrop-filter: blur(3px);
}
.crisp-nav .crisp-logo::before{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:13px;
  z-index:-1;
  border:1px solid rgba(255,214,120,.34);
  box-shadow: inset 0 0 16px rgba(255,214,120,.08);
}
.crisp-nav .crisp-logo{
  color:var(--cmk-gold-soft)!important;
  text-shadow:
    0 1px 0 rgba(255,214,120,.92),
    0 2px 0 rgba(91,37,86,.45),
    0 0 12px rgba(255,214,120,.34),
    0 0 28px rgba(255,122,180,.18),
    0 6px 16px rgba(11,1,24,.44)!important;
  -webkit-text-stroke:.5px rgba(255,214,120,.42);
}
.crisp-nav .crisp-logo span{
  color:#ff77af!important;
  text-shadow:
    0 1px 0 rgba(255,214,120,.75),
    0 0 10px rgba(255,214,120,.24),
    0 0 22px rgba(255,122,180,.28),
    0 5px 14px rgba(11,1,24,.40)!important;
}
.crisp-nav .crisp-logo::after{
  content:"✦";
  position:absolute;
  right:10px;
  top:6px;
  font-size:18px;
  color:var(--cmk-gold);
  text-shadow:0 0 8px rgba(255,214,120,.95),0 0 18px rgba(255,122,180,.35);
}

/* Apply magical treatment to ALL relevant banner / intro blocks, including previously missed plain category-intro-card */
.cmk-section-banner,
.cmk-intro-panel,
.category-intro-card,
.category-intro-card.cmk-intro-panel,
.cmk-crosslink-panel,
.sculpted-actual-art-section{
  position:relative;
  overflow:hidden;
  border-radius:32px!important;
  background:
    radial-gradient(circle at 50% 52%, rgba(53,0,94,.92) 0%, rgba(39,4,74,.98) 30%, rgba(22,3,42,.99) 100%),
    linear-gradient(135deg, rgba(255,214,120,.10), rgba(255,122,180,.08));
  border:1px solid rgba(255,214,120,.82)!important;
  box-shadow:
    0 18px 48px rgba(34,7,52,.22),
    inset 0 0 0 1px rgba(255,255,255,.06),
    inset 0 0 32px rgba(255,214,120,.08),
    0 0 24px rgba(255,122,180,.05)!important;
}
.cmk-section-banner,
.cmk-intro-panel,
.category-intro-card,
.cmk-crosslink-panel{
  padding:42px 36px!important;
}
.cmk-section-banner::before,
.cmk-intro-panel::before,
.category-intro-card::before,
.cmk-crosslink-panel::before,
.sculpted-actual-art-section::before{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:26px;
  pointer-events:none;
  border:1px solid rgba(255,214,120,.22);
  box-shadow:
    inset 0 0 16px rgba(255,214,120,.10),
    inset 0 0 36px rgba(255,122,180,.06);
}
.cmk-section-banner::after,
.cmk-intro-panel::after,
.category-intro-card::after,
.cmk-crosslink-panel::after,
.sculpted-actual-art-section::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 8% 22%, rgba(255,214,120,.72) 0 2px, transparent 3px),
    radial-gradient(circle at 20% 76%, rgba(255,255,255,.30) 0 1.5px, transparent 3px),
    radial-gradient(circle at 50% 18%, rgba(255,214,120,.55) 0 2px, transparent 3px),
    radial-gradient(circle at 78% 80%, rgba(255,122,180,.40) 0 1.8px, transparent 3px),
    radial-gradient(circle at 92% 28%, rgba(255,214,120,.66) 0 2px, transparent 3px),
    radial-gradient(circle at 72% 18%, rgba(255,255,255,.22) 0 1.5px, transparent 3px),
    linear-gradient(180deg, rgba(255,214,120,.10), transparent 24%, transparent 76%, rgba(255,122,180,.06));
  opacity:.95;
}
.cmk-section-banner > *,
.cmk-intro-panel > *,
.category-intro-card > *,
.cmk-crosslink-panel > *,
.sculpted-actual-art-section > *{
  position:relative;
  z-index:1;
}
.cmk-section-banner h1,.cmk-section-banner h2,
.cmk-intro-panel h1,.cmk-intro-panel h2,
.category-intro-card h1,.category-intro-card h2,
.cmk-crosslink-panel h1,.cmk-crosslink-panel h2,
.sculpted-actual-art-section h1,.sculpted-actual-art-section h2{
  color:var(--cmk-gold-soft)!important;
  text-shadow:
    0 2px 0 rgba(80,29,87,.72),
    0 0 14px rgba(255,214,120,.12),
    0 0 28px rgba(255,122,180,.10)!important;
}
.cmk-section-banner p,.cmk-intro-panel p,.category-intro-card p,.cmk-crosslink-panel p,.sculpted-actual-art-section p,
.category-intro-card .lead{
  color:rgba(255,248,236,.94)!important;
}
.cmk-section-banner .section-sparkle,
.cmk-intro-panel .section-sparkle,
.category-intro-card .section-sparkle,
.cmk-crosslink-panel .section-sparkle,
.category-kicker{
  color:#ffe18f!important;
  text-shadow:0 0 8px rgba(255,214,120,.36),0 0 18px rgba(255,122,180,.18)!important;
}
.cmk-section-banner h2::after,
.cmk-intro-panel h1::after,
.category-intro-card h1::after,
.cmk-crosslink-panel h2::after,
.sculpted-actual-art-section h2::after{
  content:"✦  ♥  ✦";
  display:block;
  margin:.18em auto 0;
  font-size:.26em;
  letter-spacing:.24em;
  color:var(--cmk-gold);
  text-shadow:0 0 9px rgba(255,214,120,.8),0 0 16px rgba(255,122,180,.25);
}
.category-intro-card .magic-button,
.cmk-intro-panel .magic-button,
.cmk-crosslink-panel .magic-button,
.cmk-section-banner .magic-button{
  border:1px solid rgba(255,237,181,.76)!important;
  box-shadow:
    0 14px 28px rgba(31,8,46,.26),
    inset 0 1px 0 rgba(255,255,255,.34),
    0 0 22px rgba(255,214,120,.14)!important;
}
.category-intro-card a:not(.magic-button),
.cmk-intro-panel a:not(.magic-button),
.cmk-crosslink-panel a:not(.magic-button),
.cmk-section-banner a:not(.magic-button){
  color:#ffe59f!important;
}

/* Make storybook/sculpted page kickers and blocks more visually aligned with preview */
.storybook-page .category-kicker,
.sculpted-page .category-kicker,
.keepsakes-page .category-kicker{
  display:block;
  text-align:center;
  font-weight:700;
  letter-spacing:.18em;
  margin:0 0 14px;
}

/* stronger nav bar glass */
.crisp-nav{
  background:
    radial-gradient(circle at 18% 20%, rgba(255,214,120,.12), transparent 22%),
    radial-gradient(circle at 82% 34%, rgba(255,122,180,.14), transparent 28%),
    linear-gradient(145deg, rgba(63,15,86,.40), rgba(43,11,75,.24))!important;
  border:1px solid rgba(255,214,120,.74)!important;
  box-shadow:
    0 12px 30px rgba(18,5,35,.18),
    inset 0 0 0 1px rgba(255,255,255,.08),
    inset 0 0 26px rgba(255,214,120,.05)!important;
}

@media(max-width:900px){
  .cmk-section-banner,.cmk-intro-panel,.category-intro-card,.cmk-crosslink-panel{padding:30px 20px!important;border-radius:26px!important;}
  .cmk-section-banner::before,.cmk-intro-panel::before,.category-intro-card::before,.cmk-crosslink-panel::before{inset:10px;}
}


/* v61 refine magical parity + fix storybook kicker centering + improve crafted block */
.storybook-page .category-kicker,
.sculpted-page .category-kicker,
.keepsakes-page .category-kicker{
  display:table!important;
  margin:0 auto 18px!important;
  text-align:center;
}

/* Stronger preview-like magic for major heading blocks on home / keepsakes pages */
.product-architecture .theme-section-heading,
.keepsakes-page .category-intro-card,
.home-page .theme-section-heading{
  position:relative;
  overflow:hidden;
  border-radius:34px!important;
  padding:38px 30px!important;
  background:
    radial-gradient(circle at 50% 52%, rgba(58,4,99,.94) 0%, rgba(35,5,67,.98) 36%, rgba(20,3,40,.99) 100%),
    linear-gradient(145deg, rgba(255,214,120,.10), rgba(255,122,180,.08));
  border:1px solid rgba(255,214,120,.86)!important;
  box-shadow:
    0 18px 46px rgba(28,6,45,.26),
    inset 0 0 0 1px rgba(255,255,255,.06),
    inset 0 0 26px rgba(255,214,120,.07)!important;
}
.product-architecture .theme-section-heading::before,
.keepsakes-page .category-intro-card::before,
.home-page .theme-section-heading::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:28px;
  border:1px solid rgba(255,214,120,.22);
  box-shadow:inset 0 0 16px rgba(255,214,120,.10), inset 0 0 26px rgba(255,122,180,.05);
}
.product-architecture .theme-section-heading::after,
.home-page .theme-section-heading::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 24%, rgba(255,214,120,.75) 0 2.2px, transparent 3.3px),
    radial-gradient(circle at 26% 74%, rgba(255,255,255,.26) 0 1.5px, transparent 3px),
    radial-gradient(circle at 50% 17%, rgba(255,214,120,.60) 0 2px, transparent 3px),
    radial-gradient(circle at 77% 79%, rgba(255,122,180,.36) 0 1.8px, transparent 3px),
    radial-gradient(circle at 90% 26%, rgba(255,214,120,.70) 0 2.2px, transparent 3.2px),
    linear-gradient(180deg, rgba(255,214,120,.08), transparent 28%, transparent 72%, rgba(255,122,180,.05));
}
.product-architecture .theme-section-heading > *,
.home-page .theme-section-heading > *{position:relative;z-index:1;}
.product-architecture .theme-section-heading .section-sparkle,
.home-page .theme-section-heading .section-sparkle{color:#ffe18f!important; text-shadow:0 0 8px rgba(255,214,120,.55),0 0 16px rgba(255,122,180,.18)!important;}
.product-architecture .theme-section-heading h2,
.home-page .theme-section-heading h2{color:#fff7e8!important; text-shadow:0 2px 0 rgba(86,31,93,.62),0 0 14px rgba(255,214,120,.12)!important;}
.product-architecture .theme-section-heading h2::after,
.home-page .theme-section-heading h2::after{
  content:"✦  ♥  ✦";
  display:block;
  margin:.16em auto 0;
  font-size:.24em;
  letter-spacing:.22em;
  color:#ffd978;
  text-shadow:0 0 10px rgba(255,214,120,.75),0 0 16px rgba(255,122,180,.24);
}
.product-architecture .theme-section-heading p:not(.section-sparkle),
.home-page .theme-section-heading p:not(.section-sparkle){color:rgba(255,248,236,.94)!important;}

/* Crafted for Magical Memories: convert to a true magical statement block with better contrast and ambient art */
.home-story-teaser{
  position:relative;
  overflow:hidden;
  margin:34px 0!important;
  padding:38px clamp(18px,4vw,40px)!important;
  border:1px solid rgba(255,214,120,.86)!important;
  border-radius:34px!important;
  background:
    linear-gradient(180deg, rgba(20,4,38,.86), rgba(28,4,47,.88)),
    url('home-magical-bg.png') center/cover no-repeat!important;
  box-shadow:
    0 22px 52px rgba(27,6,45,.26),
    inset 0 0 0 1px rgba(255,255,255,.05)!important;
}
.home-story-teaser::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:28px;
  border:1px solid rgba(255,214,120,.24);
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
  box-shadow:
    inset 0 0 18px rgba(255,214,120,.08),
    inset 0 0 30px rgba(255,122,180,.05);
}
.home-story-teaser::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 8% 24%, rgba(255,214,120,.78) 0 2.1px, transparent 3.3px),
    radial-gradient(circle at 18% 68%, rgba(255,255,255,.26) 0 1.6px, transparent 3px),
    radial-gradient(circle at 50% 15%, rgba(255,214,120,.68) 0 2.3px, transparent 3.4px),
    radial-gradient(circle at 82% 22%, rgba(255,122,180,.40) 0 1.9px, transparent 3.1px),
    radial-gradient(circle at 92% 74%, rgba(255,214,120,.62) 0 2px, transparent 3.1px),
    linear-gradient(135deg, rgba(255,214,120,.05), transparent 22%, transparent 78%, rgba(255,122,180,.05));
}
.home-story-teaser .storybook-copy-block{
  position:relative;
  z-index:1;
  max-width:980px!important;
  margin:0 auto;
  padding:22px 16px;
}
.home-story-teaser .storybook-copy-block .section-sparkle{
  color:#ffe18f!important;
  text-shadow:0 0 8px rgba(255,214,120,.58),0 0 16px rgba(255,122,180,.24)!important;
}
.home-story-teaser .storybook-copy-block h2{
  color:#fff6e6!important;
  text-shadow:0 2px 0 rgba(82,28,91,.72),0 0 12px rgba(255,214,120,.14)!important;
  margin-bottom:14px;
}
.home-story-teaser .storybook-copy-block h2::after{
  content:"✦  ♥  ✦";
  display:block;
  margin:.16em auto 0;
  font-size:.22em;
  letter-spacing:.22em;
  color:#ffd978;
  text-shadow:0 0 10px rgba(255,214,120,.75),0 0 16px rgba(255,122,180,.24);
}
.home-story-teaser .storybook-copy-block p{
  color:rgba(255,248,236,.95)!important;
  max-width:1000px;
  margin-inline:auto;
}
.home-story-teaser .small-magic-button{
  border:1px solid rgba(255,237,181,.78)!important;
  box-shadow:0 14px 30px rgba(26,6,43,.28), inset 0 1px 0 rgba(255,255,255,.35), 0 0 22px rgba(255,214,120,.14)!important;
}

/* Add a small bit more enchanted polish to the main logo */
.crisp-nav .crisp-logo{
  border:1px solid rgba(255,214,120,.42);
  box-shadow:
    0 10px 24px rgba(19,4,36,.24),
    inset 0 0 0 1px rgba(255,255,255,.08),
    inset 0 0 18px rgba(255,214,120,.06)!important;
}
.crisp-nav .crisp-logo::after{
  font-size:20px!important;
  right:12px!important;
  top:4px!important;
}

@media(max-width:900px){
  .product-architecture .theme-section-heading,
  .home-page .theme-section-heading,
  .home-story-teaser{border-radius:26px!important;}
  .product-architecture .theme-section-heading::before,
  .home-page .theme-section-heading::before,
  .home-story-teaser::before{inset:10px;}
  .home-story-teaser{padding:28px 18px!important;}
}


/* v62 asset-driven magic polish: use real art assets, not just CSS */
.crisp-logo{
  width:clamp(190px, 24vw, 330px) !important;
  max-width:34vw !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  line-height:0 !important;
  text-shadow:none !important;
  -webkit-text-stroke:0 !important;
}
.crisp-logo::before,
.crisp-logo::after{
  display:none !important;
}
.cmk-logo-art{
  display:block;
  width:100%;
  height:auto;
  filter:
    drop-shadow(0 8px 16px rgba(12,2,28,.34))
    drop-shadow(0 0 8px rgba(255,214,120,.22));
}
.crisp-nav{
  align-items:center !important;
  gap:clamp(18px,3vw,42px) !important;
}

/* Art-backed panels for the exact banner/block look */
.asset-magic-panel,
.cmk-section-banner.asset-magic-panel,
.category-intro-card.asset-magic-panel,
.cmk-crosslink-panel.asset-magic-panel,
.product-architecture .theme-section-heading.asset-magic-panel,
.home-page .theme-section-heading.asset-magic-panel{
  position:relative !important;
  overflow:hidden !important;
  background:
    linear-gradient(180deg, rgba(18,0,33,.10), rgba(18,0,33,.10)),
    url('cmk-magic-banner-panel.svg') center/100% 100% no-repeat !important;
  border:0 !important;
  border-radius:34px !important;
  box-shadow:
    0 18px 44px rgba(22,3,40,.26),
    0 0 0 1px rgba(255,214,120,.52) !important;
  color:#fff6e6 !important;
}
.asset-magic-panel::before,
.asset-magic-panel::after{
  display:none !important;
}
.asset-magic-panel > *{
  position:relative;
  z-index:1;
}
.asset-magic-panel h1,
.asset-magic-panel h2,
.product-architecture .theme-section-heading.asset-magic-panel h2,
.home-page .theme-section-heading.asset-magic-panel h2{
  color:#fff7e8 !important;
  text-shadow:
    0 2px 0 rgba(85,29,92,.72),
    0 0 10px rgba(255,214,120,.15) !important;
}
.asset-magic-panel h1::after,
.asset-magic-panel h2::after,
.product-architecture .theme-section-heading.asset-magic-panel h2::after,
.home-page .theme-section-heading.asset-magic-panel h2::after{
  content:"✦  ♥  ✦" !important;
  display:block !important;
  margin:.16em auto 0 !important;
  font-size:.24em !important;
  letter-spacing:.22em !important;
  color:#ffd978 !important;
  text-shadow:0 0 10px rgba(255,214,120,.78),0 0 16px rgba(255,122,180,.24) !important;
}
.asset-magic-panel p,
.asset-magic-panel .lead,
.product-architecture .theme-section-heading.asset-magic-panel p:not(.section-sparkle),
.home-page .theme-section-heading.asset-magic-panel p:not(.section-sparkle){
  color:rgba(255,248,236,.96) !important;
}
.asset-magic-panel .section-sparkle{
  color:#ffe18f !important;
  text-shadow:0 0 9px rgba(255,214,120,.54),0 0 16px rgba(255,122,180,.22) !important;
}

/* Storybook page pill fixed: centered, not left-shifted */
.storybook-page .category-kicker,
.sculpted-page .category-kicker,
.keepsakes-page .category-kicker{
  display:table !important;
  width:auto !important;
  max-width:calc(100% - 32px) !important;
  margin:0 auto 18px !important;
  text-align:center !important;
}

/* Crafted block: real art-backed panel with contrast */
.home-story-teaser.asset-crafted-panel{
  position:relative !important;
  overflow:hidden !important;
  margin:34px 0 !important;
  padding:44px clamp(22px,5vw,64px) !important;
  border:0 !important;
  border-radius:34px !important;
  background:
    linear-gradient(180deg, rgba(15,0,29,.16), rgba(15,0,29,.16)),
    url('cmk-crafted-memories-panel.svg') center/100% 100% no-repeat !important;
  box-shadow:
    0 20px 52px rgba(22,3,40,.30),
    0 0 0 1px rgba(255,214,120,.55) !important;
}
.home-story-teaser.asset-crafted-panel::before,
.home-story-teaser.asset-crafted-panel::after{
  display:none !important;
}
.home-story-teaser.asset-crafted-panel .storybook-copy-block{
  position:relative !important;
  z-index:1 !important;
  max-width:1080px !important;
}
.home-story-teaser.asset-crafted-panel h2{
  color:#fff7e8 !important;
  text-shadow:0 2px 0 rgba(85,29,92,.72),0 0 12px rgba(255,214,120,.14) !important;
}
.home-story-teaser.asset-crafted-panel h2::after{
  content:"✦  ♥  ✦" !important;
  display:block !important;
  margin:.16em auto 0 !important;
  font-size:.22em !important;
  letter-spacing:.22em !important;
  color:#ffd978 !important;
}
.home-story-teaser.asset-crafted-panel p{
  color:rgba(255,248,236,.96) !important;
}
.home-story-teaser.asset-crafted-panel .section-sparkle{
  color:#ffe18f !important;
}

/* Buttons inside art panels */
.asset-magic-panel .magic-button,
.home-story-teaser.asset-crafted-panel .magic-button{
  border:1px solid rgba(255,237,181,.82) !important;
  box-shadow:
    0 14px 28px rgba(22,3,40,.30),
    inset 0 1px 0 rgba(255,255,255,.34),
    0 0 18px rgba(255,214,120,.14) !important;
}

/* prevent old pale home-story rules from winning */
.home-story-teaser .storybook-copy-block h2,
.home-story-teaser .storybook-copy-block p{
  color:inherit;
}

@media(max-width:900px){
  .crisp-logo{
    width:220px !important;
    max-width:72vw !important;
    margin:auto !important;
  }
  .crisp-nav{
    justify-content:center !important;
  }
  .asset-magic-panel,
  .home-story-teaser.asset-crafted-panel{
    border-radius:26px !important;
  }
}


/* v63 nav scale correction + richer approved-style panel assets */
.crisp-nav{
  top:2.65% !important;
  left:4.2% !important;
  right:4.2% !important;
  min-height:48px !important;
  gap:clamp(12px,1.8vw,26px) !important;
}
.crisp-logo{
  width:clamp(152px,17.25vw,240px) !important;
  max-width:24vw !important;
  flex:0 0 auto !important;
}
.cmk-logo-art{
  filter:
    drop-shadow(0 8px 18px rgba(12,2,28,.34))
    drop-shadow(0 0 10px rgba(255,214,120,.24))
    drop-shadow(0 0 22px rgba(255,122,180,.10));
}
.crisp-links{
  flex:1 1 auto !important;
  justify-content:flex-end !important;
  gap:clamp(10px,1.35vw,20px) !important;
}
.crisp-links a{
  font-size:clamp(9px,.78vw,12.5px) !important;
  letter-spacing:.108em !important;
  padding:.34rem 0 .24rem !important;
}
.nav-mask{
  height:15.8% !important;
}
.home-page .nav-mask,
.sub-page .nav-mask{
  height:15.8% !important;
}

/* keep art-backed panels crisp and centered */
.asset-magic-panel,
.home-story-teaser.asset-crafted-panel{
  background-size:100% 100% !important;
  background-position:center center !important;
}
.asset-magic-panel h2,
.home-story-teaser.asset-crafted-panel h2{
  max-width:15ch;
  margin-inline:auto;
}
.asset-magic-panel p:not(.section-sparkle),
.home-story-teaser.asset-crafted-panel p{
  max-width:860px;
  margin-inline:auto;
}

@media (max-width:1200px){
  .crisp-nav{
    left:3.8% !important;
    right:3.8% !important;
    gap:14px !important;
  }
  .crisp-logo{
    width:clamp(145px,16vw,215px) !important;
    max-width:22vw !important;
  }
  .crisp-links{
    gap:clamp(8px,1.1vw,16px) !important;
  }
  .crisp-links a{
    font-size:clamp(8.5px,.73vw,11.25px) !important;
    letter-spacing:.098em !important;
  }
}

@media(max-width:900px){
  .crisp-nav{
    top:1.45% !important;
    left:4.8% !important;
    right:4.8% !important;
    justify-content:space-between !important;
  }
  .crisp-logo{
    width:182px !important;
    max-width:60vw !important;
    margin:0 !important;
  }
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:78px !important;
    min-height:78px !important;
  }
  .mobile-menu summary{
    width:42px !important;
    height:38px !important;
    border-radius:12px !important;
  }
  .mobile-menu-panel{
    top:48px !important;
    min-width:200px !important;
  }
  .asset-magic-panel,
  .home-story-teaser.asset-crafted-panel{
    background-size:cover !important;
  }
}


/* v64 fix logo oversize + shift artwork closer to approved whimsical magical style */
.crisp-nav{
  top:2.4% !important;
  left:4.1% !important;
  right:4.1% !important;
  min-height:44px !important;
  gap:clamp(10px,1.4vw,18px) !important;
}
.crisp-logo{
  width:clamp(108px,12.2vw,164px) !important;
  max-width:16.5vw !important;
}
.crisp-links{
  gap:clamp(8px,1.05vw,14px) !important;
}
.crisp-links a{
  font-size:clamp(8px,.68vw,10.4px) !important;
  letter-spacing:.098em !important;
}
.cmk-logo-art{
  filter:
    drop-shadow(0 8px 18px rgba(12,2,28,.38))
    drop-shadow(0 0 14px rgba(255,214,120,.25)) !important;
}
.nav-mask,
.home-page .nav-mask,
.sub-page .nav-mask{
  height:14.8% !important;
}

.asset-magic-panel,
.home-story-teaser.asset-crafted-panel{
  background-size:cover !important;
  background-position:center center !important;
}

@media (max-width:1200px){
  .crisp-logo{
    width:clamp(102px,11.4vw,150px) !important;
    max-width:15vw !important;
  }
  .crisp-links a{
    font-size:clamp(7.6px,.64vw,9.8px) !important;
  }
}

@media(max-width:900px){
  .crisp-nav{
    top:1.25% !important;
    left:4.6% !important;
    right:4.6% !important;
  }
  .crisp-logo{
    width:146px !important;
    max-width:48vw !important;
  }
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:72px !important;
    min-height:72px !important;
  }
}


/* v65 reset: much smaller logo, cleaner top header band, richer approved-style panel art */
.nav-mask,
.home-page .nav-mask,
.sub-page .nav-mask{
  height:108px !important;
  min-height:108px !important;
  background:linear-gradient(180deg, rgba(44,11,68,.90), rgba(42,11,67,.82)) !important;
  border-bottom:1px solid rgba(216,154,55,.45) !important;
  backdrop-filter:blur(8px) saturate(105%) !important;
}
.crisp-nav{
  top:18px !important;
  left:4.2% !important;
  right:4.2% !important;
  min-height:58px !important;
  gap:26px !important;
  align-items:flex-start !important;
}
.crisp-logo{
  width:220px !important;
  max-width:220px !important;
  flex:0 0 220px !important;
  padding:0 !important;
}
.cmk-logo-art{
  filter:drop-shadow(0 4px 10px rgba(13,2,25,.28)) drop-shadow(0 0 8px rgba(255,214,120,.12)) !important;
}
.crisp-links{
  flex:1 1 auto !important;
  justify-content:center !important;
  gap:28px !important;
  padding-top:12px !important;
}
.crisp-links a{
  font-size:13px !important;
  letter-spacing:.09em !important;
  padding:.18rem 0 .12rem !important;
}
.crisp-links a::after{
  bottom:-2px !important;
}
.asset-magic-panel,
.home-story-teaser.asset-crafted-panel{
  background-size:100% 100% !important;
  background-position:center center !important;
}
.asset-magic-panel h2,
.home-story-teaser.asset-crafted-panel h2{
  max-width:15ch;
  margin-inline:auto;
}
.asset-magic-panel p:not(.section-sparkle),
.home-story-teaser.asset-crafted-panel p{
  max-width:860px;
  margin-inline:auto;
}
@media (max-width:1200px){
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:98px !important;
    min-height:98px !important;
  }
  .crisp-logo{
    width:188px !important;
    max-width:188px !important;
    flex-basis:188px !important;
  }
  .crisp-links{
    gap:20px !important;
  }
  .crisp-links a{
    font-size:11.5px !important;
  }
}
@media(max-width:900px){
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:76px !important;
    min-height:76px !important;
  }
  .crisp-nav{
    top:12px !important;
    left:4.6% !important;
    right:4.6% !important;
    min-height:48px !important;
    align-items:center !important;
  }
  .crisp-logo{
    width:152px !important;
    max-width:46vw !important;
    flex-basis:152px !important;
  }
  .crisp-links{
    display:none !important;
  }
  .mobile-menu summary{
    width:40px !important;
    height:36px !important;
    border-radius:12px !important;
    margin-top:2px !important;
  }
  .mobile-menu-panel{
    top:42px !important;
  }
}


/* v66 true reset: compact header/logo fit plus painterly banner assets */
.asset-magic-panel,
.cmk-section-banner.asset-magic-panel,
.category-intro-card.asset-magic-panel,
.cmk-crosslink-panel.asset-magic-panel,
.product-architecture .theme-section-heading.asset-magic-panel,
.home-page .theme-section-heading.asset-magic-panel{
  background:
    linear-gradient(180deg, rgba(18,0,33,.10), rgba(18,0,33,.10)),
    url('cmk-magic-banner-panel-v66.png') center/cover no-repeat !important;
}
.home-story-teaser.asset-crafted-panel{
  background:
    linear-gradient(180deg, rgba(15,0,29,.14), rgba(15,0,29,.14)),
    url('cmk-crafted-memories-panel-v66.png') center/cover no-repeat !important;
}
.nav-mask,
.home-page .nav-mask,
.sub-page .nav-mask{
  height:92px !important;
  min-height:92px !important;
  background:linear-gradient(180deg, rgba(41,10,64,.88), rgba(40,10,63,.78)) !important;
  border-bottom:1px solid rgba(216,154,55,.42) !important;
  backdrop-filter:blur(7px) saturate(102%) !important;
}
.crisp-nav{
  top:12px !important;
  left:4% !important;
  right:4% !important;
  min-height:52px !important;
  gap:24px !important;
  align-items:flex-start !important;
}
.crisp-logo{
  width:178px !important;
  max-width:178px !important;
  flex:0 0 178px !important;
  padding:0 !important;
}
.cmk-logo-art{
  display:block !important;
  width:100% !important;
  height:auto !important;
  filter:drop-shadow(0 3px 8px rgba(13,2,25,.20)) !important;
}
.crisp-links{
  flex:1 1 auto !important;
  justify-content:center !important;
  gap:30px !important;
  padding-top:6px !important;
}
.crisp-links a{
  font-size:12px !important;
  letter-spacing:.085em !important;
  padding:.12rem 0 .08rem !important;
}
.crisp-links a::after{ bottom:-2px !important; }
.mobile-menu summary{
  margin-top:2px !important;
}
@media (max-width:1200px){
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:84px !important;
    min-height:84px !important;
  }
  .crisp-nav{
    top:10px !important;
    min-height:48px !important;
  }
  .crisp-logo{
    width:156px !important;
    max-width:156px !important;
    flex-basis:156px !important;
  }
  .crisp-links{
    gap:22px !important;
    padding-top:5px !important;
  }
  .crisp-links a{
    font-size:10.8px !important;
  }
}
@media(max-width:900px){
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:70px !important;
    min-height:70px !important;
  }
  .crisp-nav{
    top:10px !important;
    left:4.6% !important;
    right:4.6% !important;
    min-height:40px !important;
    align-items:center !important;
  }
  .crisp-logo{
    width:132px !important;
    max-width:44vw !important;
    flex-basis:132px !important;
  }
  .crisp-links{ display:none !important; }
  .mobile-menu summary{
    width:38px !important;
    height:34px !important;
    border-radius:12px !important;
  }
  .mobile-menu-panel{ top:40px !important; }
}


/* v67 approved logo + header fill reset */
.nav-mask,
.home-page .nav-mask,
.sub-page .nav-mask{
  height:104px !important;
  min-height:104px !important;
  background:url('cmk-header-fill-v67.png') center center / cover no-repeat !important;
  border-bottom:1px solid rgba(216,154,55,.46) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,237,190,.20),
    0 10px 24px rgba(11,1,23,.12) !important;
  backdrop-filter:none !important;
}
.nav-mask::before,
.nav-mask::after,
.home-page .nav-mask::before,
.home-page .nav-mask::after,
.sub-page .nav-mask::before,
.sub-page .nav-mask::after,
.crisp-nav::before{
  display:none !important;
  content:none !important;
}
.crisp-nav{
  top:14px !important;
  left:3.8% !important;
  right:3.8% !important;
  min-height:76px !important;
  gap:26px !important;
  align-items:center !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.crisp-logo{
  width:auto !important;
  max-width:none !important;
  flex:0 0 380px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  min-width:0 !important;
}
.cmk-logo-art{
  width:auto !important;
  height:80px !important;
  max-width:100% !important;
  object-fit:contain !important;
  filter:
    drop-shadow(0 4px 8px rgba(16,2,28,.28))
    drop-shadow(0 0 10px rgba(255,210,120,.14)) !important;
}
.crisp-links{
  flex:1 1 auto !important;
  justify-content:center !important;
  gap:30px !important;
  padding-top:0 !important;
  transform:none !important;
}
.crisp-links a{
  font-size:12.5px !important;
  letter-spacing:.09em !important;
  color:#fff8ef !important;
  text-shadow:0 1px 3px rgba(19,3,31,.65),0 0 8px rgba(255,215,136,.10) !important;
}
@media (max-width:1200px){
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:92px !important;
    min-height:92px !important;
  }
  .crisp-nav{
    top:12px !important;
    min-height:66px !important;
  }
  .crisp-logo{
    flex-basis:320px !important;
  }
  .cmk-logo-art{
    height:68px !important;
  }
  .crisp-links{
    gap:22px !important;
  }
  .crisp-links a{
    font-size:11px !important;
  }
}
@media(max-width:900px){
  .nav-mask,
  .home-page .nav-mask,
  .sub-page .nav-mask{
    height:74px !important;
    min-height:74px !important;
  }
  .crisp-nav{
    top:8px !important;
    left:4.6% !important;
    right:4.6% !important;
    min-height:52px !important;
    gap:12px !important;
  }
  .crisp-logo{
    flex:0 1 auto !important;
    width:auto !important;
    max-width:62vw !important;
  }
  .cmk-logo-art{
    height:54px !important;
    max-width:62vw !important;
  }
  .crisp-links{ display:none !important; }
  .mobile-menu summary{
    margin-top:0 !important;
  }
  .mobile-menu-panel{
    top:38px !important;
  }
}


/* v68 cohesive homepage hero image reset */
.home-page .art-panel:first-of-type{
  border:none !important;
  background:transparent !important;
  box-shadow:0 18px 60px rgba(0,0,0,.30) !important;
}
.home-page .art-panel:first-of-type::before{
  display:none !important;
}
.home-page .art-panel:first-of-type .nav-mask{
  display:none !important;
}
.home-page .art-panel:first-of-type .crisp-nav{
  top:1.25% !important;
  left:3.4% !important;
  right:3.4% !important;
  min-height:9.5% !important;
  align-items:center !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  border-radius:0 !important;
  gap:18px !important;
}
.home-page .art-panel:first-of-type .crisp-logo{
  flex:0 0 31% !important;
  max-width:31% !important;
  width:auto !important;
  min-width:0 !important;
}
.home-page .art-panel:first-of-type .cmk-logo-art{
  opacity:0 !important;
  width:100% !important;
  height:100% !important;
  pointer-events:none !important;
}
.home-page .art-panel:first-of-type .crisp-links{
  flex:1 1 auto !important;
  justify-content:center !important;
  gap:clamp(18px,2vw,30px) !important;
  padding-top:0 !important;
}
.home-page .art-panel:first-of-type .crisp-links a{
  opacity:0 !important;
  color:transparent !important;
  text-shadow:none !important;
  border-bottom-color:transparent !important;
  padding:.35rem 0 !important;
}
.home-page .art-panel:first-of-type .crisp-links a:hover,
.home-page .art-panel:first-of-type .crisp-links a:focus{
  opacity:.06 !important;
  color:transparent !important;
  border-bottom-color:transparent !important;
}
.home-page .home-hero-cta{
  position:absolute;
  left:17.4%;
  bottom:12.1%;
  width:21.5%;
  height:6.6%;
  z-index:35;
  border-radius:18px;
  text-indent:-9999px;
  overflow:hidden;
}
.home-page .home-hero-cta:focus{
  outline:2px solid rgba(255,214,120,.85);
  outline-offset:2px;
}
@media(max-width:900px){
  .home-page .art-panel:first-of-type .crisp-nav{
    top:1.2% !important;
    left:4.2% !important;
    right:4.2% !important;
    min-height:8.5% !important;
    gap:10px !important;
  }
  .home-page .art-panel:first-of-type .crisp-logo{
    flex:0 1 48% !important;
    max-width:48% !important;
  }
  .home-page .art-panel:first-of-type .mobile-menu{
    margin-left:auto !important;
  }
  .home-page .art-panel:first-of-type .mobile-menu summary{
    background:rgba(48,13,71,.76) !important;
    border:1px solid rgba(216,154,55,.55) !important;
    box-shadow:0 6px 14px rgba(0,0,0,.22) !important;
  }
  .home-page .home-hero-cta{
    left:14.5%;
    bottom:12.5%;
    width:28%;
    height:7%;
  }
}


/* v69 fix homepage overlay + unify subpage top art header treatment */
/* Best-practice note in implementation: subpages use real visible HTML nav over art; homepage keeps the approved baked-in header art but uses aligned invisible hotspots only. */

/* HOME PAGE: fully remove visible overlay artifacts so the approved cohesive hero stays sharp */
.home-page .art-panel:first-of-type{
  position:relative;
}
.home-page .art-panel:first-of-type .nav-mask,
.home-page .art-panel:first-of-type .cmk-logo-art,
.home-page .art-panel:first-of-type .crisp-links a,
.home-page .art-panel:first-of-type .crisp-nav::before,
.home-page .art-panel:first-of-type .crisp-nav::after{
  display:none !important;
}
.home-page .art-panel:first-of-type .crisp-nav.home-baked-nav{
  position:absolute !important;
  inset:0 !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  min-height:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  gap:0 !important;
  z-index:32 !important;
}
.home-page .art-panel:first-of-type .crisp-logo{
  position:absolute !important;
  left:11.2% !important;
  top:4.2% !important;
  width:24.5% !important;
  height:10.6% !important;
  max-width:none !important;
  flex:none !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.home-page .art-panel:first-of-type .crisp-links{
  position:absolute !important;
  left:47.2% !important;
  right:5.2% !important;
  top:4.05% !important;
  height:7.9% !important;
  display:grid !important;
  grid-template-columns: 1fr 1.22fr 0.95fr 1.55fr 1fr !important;
  align-items:center !important;
  justify-items:center !important;
  gap:1.6% !important;
  padding:0 !important;
  transform:none !important;
}
.home-page .art-panel:first-of-type .crisp-links a{
  display:block !important;
  width:100% !important;
  height:100% !important;
  opacity:0 !important;
  color:transparent !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
  padding:0 !important;
  margin:0 !important;
  border:none !important;
}
.home-page .home-logo-hotspot{
  position:absolute;
  left:11.4%;
  top:4.3%;
  width:24.2%;
  height:10.4%;
  z-index:35;
  border-radius:18px;
  text-indent:-9999px;
  overflow:hidden;
}
.home-page .home-hero-cta{
  left:17.6% !important;
  bottom:12.3% !important;
  width:20.7% !important;
  height:6.1% !important;
}
.home-page .home-logo-hotspot:focus,
.home-page .home-hero-cta:focus,
.home-page .art-panel:first-of-type .crisp-links a:focus{
  outline:2px solid rgba(255,214,120,.92);
  outline-offset:2px;
}

/* SUBPAGES: give the top display art the same cohesive framed-header feeling, but with real visible HTML nav/logo for correct click behavior */
.sub-page .page > .art-panel:first-of-type,
.sub-page .page > .category-hero-panel:first-of-type{
  position:relative;
}
.sub-page .page > .art-panel:first-of-type .nav-mask,
.sub-page .page > .category-hero-panel:first-of-type .nav-mask{
  height:100px !important;
  min-height:100px !important;
  background:url('cmk-header-fill-v67.png') center center / cover no-repeat !important;
  border-bottom:1px solid rgba(216,154,55,.44) !important;
  box-shadow:inset 0 1px 0 rgba(255,237,190,.22) !important;
  backdrop-filter:none !important;
}
.sub-page .page > .art-panel:first-of-type .nav-mask::before,
.sub-page .page > .art-panel:first-of-type .nav-mask::after,
.sub-page .page > .category-hero-panel:first-of-type .nav-mask::before,
.sub-page .page > .category-hero-panel:first-of-type .nav-mask::after{
  display:none !important;
}
.sub-page .page > .art-panel:first-of-type .crisp-nav,
.sub-page .page > .category-hero-panel:first-of-type .crisp-nav{
  top:14px !important;
  left:3.8% !important;
  right:3.8% !important;
  min-height:70px !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  gap:24px !important;
  align-items:center !important;
}
.sub-page .page > .art-panel:first-of-type .crisp-logo,
.sub-page .page > .category-hero-panel:first-of-type .crisp-logo{
  flex:0 0 300px !important;
  width:auto !important;
  max-width:300px !important;
  min-width:0 !important;
}
.sub-page .page > .art-panel:first-of-type .cmk-logo-art,
.sub-page .page > .category-hero-panel:first-of-type .cmk-logo-art{
  height:64px !important;
  width:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  filter:drop-shadow(0 4px 10px rgba(16,2,28,.24)) !important;
}
.sub-page .page > .art-panel:first-of-type .crisp-links,
.sub-page .page > .category-hero-panel:first-of-type .crisp-links{
  flex:1 1 auto !important;
  justify-content:center !important;
  gap:28px !important;
  transform:none !important;
  padding-top:0 !important;
}
.sub-page .page > .art-panel:first-of-type .crisp-links a,
.sub-page .page > .category-hero-panel:first-of-type .crisp-links a{
  font-size:12px !important;
  letter-spacing:.09em !important;
  color:#fff8ef !important;
  text-shadow:0 1px 3px rgba(19,3,31,.65),0 0 8px rgba(255,215,136,.08) !important;
  padding:.18rem 0 .12rem !important;
}
.sub-page .page > .art-panel:first-of-type .crisp-links a:hover,
.sub-page .page > .art-panel:first-of-type .crisp-links a:focus,
.sub-page .page > .category-hero-panel:first-of-type .crisp-links a:hover,
.sub-page .page > .category-hero-panel:first-of-type .crisp-links a:focus{
  color:#ffd57f !important;
  border-bottom-color:#ef5b9a !important;
}

@media (max-width:1200px){
  .sub-page .page > .art-panel:first-of-type .nav-mask,
  .sub-page .page > .category-hero-panel:first-of-type .nav-mask{
    height:88px !important;
    min-height:88px !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-nav,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-nav{
    min-height:60px !important;
    top:12px !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-logo,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-logo{
    flex-basis:252px !important;
    max-width:252px !important;
  }
  .sub-page .page > .art-panel:first-of-type .cmk-logo-art,
  .sub-page .page > .category-hero-panel:first-of-type .cmk-logo-art{
    height:56px !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-links,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-links{
    gap:20px !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-links a,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-links a{
    font-size:10.8px !important;
  }
}
@media (max-width:900px){
  .home-page .art-panel:first-of-type .crisp-links{display:none !important;}
  .home-page .home-logo-hotspot{
    left:10.5%; top:3.8%; width:42%; height:11.4%;
  }
  .home-page .home-hero-cta{
    left:14.5% !important; bottom:12.6% !important; width:28% !important; height:7% !important;
  }
  .sub-page .page > .art-panel:first-of-type .nav-mask,
  .sub-page .page > .category-hero-panel:first-of-type .nav-mask{
    height:72px !important;
    min-height:72px !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-nav,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-nav{
    top:9px !important;
    left:4.6% !important;
    right:4.6% !important;
    min-height:48px !important;
    gap:12px !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-logo,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-logo{
    flex:0 1 auto !important;
    max-width:60vw !important;
  }
  .sub-page .page > .art-panel:first-of-type .cmk-logo-art,
  .sub-page .page > .category-hero-panel:first-of-type .cmk-logo-art{
    height:48px !important;
    max-width:60vw !important;
  }
  .sub-page .page > .art-panel:first-of-type .crisp-links,
  .sub-page .page > .category-hero-panel:first-of-type .crisp-links{display:none !important;}
}


/* v70 cohesive subpage hero refresh */
body.cohesive-subpage .page > .art-panel:first-of-type,
body.cohesive-subpage .page > .category-hero-panel:first-of-type{
  position:relative;
  border:none !important;
  background:transparent !important;
  box-shadow:0 18px 60px rgba(0,0,0,.30) !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type::before,
body.cohesive-subpage .page > .category-hero-panel:first-of-type::before{
  display:none !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type .panel-img,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .panel-img{
  display:block;
  width:100%;
  height:auto;
}
body.cohesive-subpage .page > .art-panel:first-of-type .nav-mask,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .nav-mask,
body.cohesive-subpage .page > .art-panel:first-of-type .cmk-logo-art,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .cmk-logo-art,
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-nav::before,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-nav::before,
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-nav::after,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-nav::after{
  display:none !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-nav.cohesive-baked-nav,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-nav.cohesive-baked-nav{
  position:absolute !important;
  inset:0 !important;
  min-height:0 !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  gap:0 !important;
  z-index:32 !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-logo,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-logo{
  position:absolute !important;
  left:3.6% !important;
  top:2.2% !important;
  width:31% !important;
  height:13.3% !important;
  max-width:none !important;
  flex:none !important;
  min-width:0 !important;
  display:block !important;
  opacity:0 !important;
  overflow:hidden !important;
  z-index:34 !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-links,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-links{
  position:absolute !important;
  left:39.2% !important;
  right:5.1% !important;
  top:2.85% !important;
  height:8.6% !important;
  display:grid !important;
  grid-template-columns: 1fr 1.28fr 0.95fr 1.7fr 1fr !important;
  align-items:center !important;
  justify-items:center !important;
  gap:1.6% !important;
  padding:0 !important;
  transform:none !important;
  z-index:34 !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-links a,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-links a{
  display:block !important;
  width:100% !important;
  height:100% !important;
  opacity:0 !important;
  color:transparent !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
  padding:0 !important;
  margin:0 !important;
  border:none !important;
}
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-logo:focus,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-logo:focus,
body.cohesive-subpage .page > .art-panel:first-of-type .crisp-links a:focus,
body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-links a:focus,
body.cohesive-subpage .email-hotspot:focus{
  outline:2px solid rgba(255,214,120,.92);
  outline-offset:2px;
}
/* booking page CTA alignment */
body.booking-page.cohesive-subpage .email-hotspot{
  right:auto !important;
  left:70.2% !important;
  bottom:8.1% !important;
  width:19.1% !important;
  height:7.0% !important;
  border-radius:14px !important;
  z-index:35 !important;
}
@media (max-width:900px){
  body.cohesive-subpage .page > .art-panel:first-of-type .crisp-links,
  body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-links{
    display:none !important;
  }
  body.cohesive-subpage .page > .art-panel:first-of-type .crisp-logo,
  body.cohesive-subpage .page > .category-hero-panel:first-of-type .crisp-logo{
    left:6.2% !important;
    top:3.4% !important;
    width:44% !important;
    height:12.6% !important;
  }
  body.cohesive-subpage .page > .art-panel:first-of-type .mobile-menu,
  body.cohesive-subpage .page > .category-hero-panel:first-of-type .mobile-menu{
    position:absolute !important;
    right:4.5% !important;
    top:3.2% !important;
    margin:0 !important;
    z-index:40 !important;
  }
  body.cohesive-subpage .page > .art-panel:first-of-type .mobile-menu summary,
  body.cohesive-subpage .page > .category-hero-panel:first-of-type .mobile-menu summary{
    background:rgba(48,13,71,.76) !important;
    border:1px solid rgba(216,154,55,.55) !important;
    box-shadow:0 6px 14px rgba(0,0,0,.22) !important;
  }
  body.cohesive-subpage .page > .art-panel:first-of-type .mobile-menu-panel,
  body.cohesive-subpage .page > .category-hero-panel:first-of-type .mobile-menu-panel{
    top:38px !important;
  }
  body.booking-page.cohesive-subpage .email-hotspot{
    left:65.8% !important;
    bottom:7.6% !important;
    width:24.6% !important;
    height:7.2% !important;
  }
}


/* v73: restore approved preview heroes with baked-in logo + real HTML menu bar */
body.restore-preview-html-menu .page > .art-panel:first-of-type,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type {
  position: relative;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .nav-mask,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .nav-mask,
body.restore-preview-html-menu .page > .art-panel:first-of-type .cmk-logo-art,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .cmk-logo-art,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav::before,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav::before,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav::after,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav::after,
body.restore-preview-html-menu .home-logo-hotspot {
  display: none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav {
  position: absolute !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  gap: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: auto !important;
  z-index: 35 !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-logo,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-logo {
  position: absolute !important;
  left: 4.2% !important;
  top: 4.0% !important;
  width: 28.5% !important;
  height: 12.8% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  z-index: 42 !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  pointer-events: auto !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links {
  position: absolute !important;
  left: 39.4% !important;
  right: 5.2% !important;
  top: 5.0% !important;
  height: 8.6% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-evenly !important;
  gap: clamp(10px, 1.2vw, 24px) !important;
  padding: 0 1.15rem !important;
  margin: 0 !important;
  background: linear-gradient(180deg, rgba(25, 6, 43, 0.82), rgba(39, 11, 62, 0.58)) !important;
  border: 1px solid rgba(238, 186, 98, 0.48) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 24px rgba(8, 0, 16, 0.28), inset 0 1px 0 rgba(255, 236, 199, 0.14) !important;
  backdrop-filter: blur(8px) !important;
  transform: none !important;
  z-index: 41 !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  opacity: 1 !important;
  color: #fff6ea !important;
  text-indent: 0 !important;
  overflow: visible !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-shadow: 0 1px 3px rgba(13, 2, 24, 0.72), 0 0 10px rgba(255, 220, 150, 0.12) !important;
  padding: 0.1rem 0.15rem 0.2rem !important;
  margin: 0 !important;
  border: none !important;
  border-bottom: 1px solid transparent !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:hover,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:focus,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:hover,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:focus {
  color: #ffd97b !important;
  border-bottom-color: #ef5b9a !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .mobile-menu,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .mobile-menu {
  display: none !important;
  position: absolute !important;
  right: 4.6% !important;
  top: 4.2% !important;
  margin: 0 !important;
  z-index: 43 !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-logo:focus,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-logo:focus,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:focus,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:focus,
body.restore-preview-html-menu .home-hero-cta:focus,
body.restore-preview-html-menu .email-hotspot:focus {
  outline: 2px solid rgba(255, 214, 120, 0.95) !important;
  outline-offset: 2px !important;
}
/* Keep the existing homepage CTA hotspot, but nudge it to the approved preview art. */
body.restore-preview-html-menu.home-page .home-hero-cta {
  left: 19.2% !important;
  bottom: 8.1% !important;
  width: 17.6% !important;
  height: 6.5% !important;
  z-index: 40 !important;
}
/* Keep the booking email CTA hotspot aligned with the preview booking art. */
body.restore-preview-html-menu.booking-page .email-hotspot {
  left: 71.2% !important;
  right: auto !important;
  bottom: 6.5% !important;
  width: 20.3% !important;
  height: 6.7% !important;
  border-radius: 12px !important;
  z-index: 40 !important;
}
@media (max-width: 1100px) {
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links {
    left: 38.6% !important;
    right: 4.4% !important;
    top: 4.7% !important;
    height: 8.7% !important;
    padding: 0 0.9rem !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a {
    font-size: 11px !important;
    letter-spacing: 0.06em !important;
  }
}
@media (max-width: 900px) {
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links {
    display: none !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .mobile-menu,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .mobile-menu {
    display: block !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .mobile-menu summary,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .mobile-menu summary {
    background: rgba(34, 9, 54, 0.76) !important;
    border: 1px solid rgba(238, 186, 98, 0.48) !important;
    box-shadow: 0 8px 18px rgba(8, 0, 16, 0.24) !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-logo,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-logo {
    left: 5.2% !important;
    top: 4.0% !important;
    width: 42% !important;
    height: 13.5% !important;
  }
  body.restore-preview-html-menu.home-page .home-hero-cta {
    left: 16.5% !important;
    bottom: 7.6% !important;
    width: 24% !important;
    height: 7.2% !important;
  }
  body.restore-preview-html-menu.booking-page .email-hotspot {
    left: 62.5% !important;
    bottom: 5.9% !important;
    width: 26% !important;
    height: 7.3% !important;
  }
}

/* v74 menu size/blur fix */
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links {
  overflow: hidden !important;
}


/* v75 rebuilt — corrected logo baked into heroes, no baked-in menu, HTML menu overlay */
.hero-logo-hitbox{
  position:absolute;
  top:2.2%;
  left:2.8%;
  width:34%;
  height:18%;
  z-index:30;
  border-radius:28px;
}
.hero-logo-hitbox:focus-visible{
  outline:2px solid #ffd98c;
  outline-offset:3px;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .nav-mask,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .nav-mask{
  display:none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav{
  position:absolute !important;
  top:2.8% !important;
  right:3.6% !important;
  left:auto !important;
  width:min(56%, 700px) !important;
  height:auto !important;
  min-height:auto !important;
  padding:10px 18px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:0 !important;
  border-radius:24px !important;
  background:rgba(36, 9, 78, 0.68) !important;
  border:1px solid rgba(239, 191, 97, 0.58) !important;
  box-shadow:0 10px 32px rgba(20, 5, 45, 0.35) !important;
  backdrop-filter:blur(5px) !important;
  -webkit-backdrop-filter:blur(5px) !important;
  z-index:25 !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav::before,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav::before,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav::after,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav::after{
  display:none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-logo,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-logo,
body.restore-preview-html-menu .page > .art-panel:first-of-type .cmk-logo-art,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .cmk-logo-art{
  display:none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(10px, 1.6vw, 26px) !important;
  position:static !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:6px 4px !important;
  color:#fff8ef !important;
  font-weight:700 !important;
  font-size:clamp(14px, 1.25vw, 17px) !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  text-shadow:0 1px 10px rgba(50,10,80,.55) !important;
  border:0 !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:hover,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:focus-visible,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:hover,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:focus-visible{
  color:#ffd98c !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .mobile-menu,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .mobile-menu{
  display:none !important;
}
.keepsakes-hero-copy{
  position:absolute;
  left:11.5%;
  top:32%;
  max-width:34%;
  z-index:16;
  color:#fff7ef;
  text-shadow:0 2px 14px rgba(30, 5, 56, 0.65);
}
.keepsakes-hero-copy h1{
  margin:0 0 10px;
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(34px, 4.1vw, 62px);
  line-height:1.02;
  color:#ffd8eb;
}
.keepsakes-hero-copy p{
  margin:0;
  font-size:clamp(16px, 1.45vw, 24px);
  line-height:1.45;
}
@media (max-width: 1100px){
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav{
    width:min(60%, 620px) !important;
    right:3% !important;
    top:2.5% !important;
    padding:8px 16px !important;
  }
  .hero-logo-hitbox{width:38%;height:18%;left:2.4%;}
  .keepsakes-hero-copy{left:9.5%; top:30%; max-width:38%;}
}
@media (max-width: 820px){
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links{
    display:none !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .mobile-menu,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .mobile-menu{
    display:block !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav{
    width:auto !important;
    right:3.5% !important;
    top:3% !important;
    padding:8px 10px !important;
  }
  .hero-logo-hitbox{top:2%; left:3%; width:46%; height:18%;}
  .keepsakes-hero-copy{
    position:static;
    max-width:none;
    margin:18px 22px 0;
    padding:18px 20px;
    background:rgba(49, 15, 84, 0.72);
    border:1px solid rgba(239,191,97,.35);
    border-radius:18px;
  }
}


/* v75 Phase 1 menu fix — restore visible HTML nav over hero art */
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav{
  display:flex !important;
  position:absolute !important;
  top:3.1% !important;
  right:4.2% !important;
  left:auto !important;
  bottom:auto !important;
  width:min(52%, 660px) !important;
  height:auto !important;
  min-height:48px !important;
  padding:7px 14px !important;
  justify-content:center !important;
  align-items:center !important;
  background:rgba(36, 9, 78, 0.72) !important;
  border:1px solid rgba(239, 191, 97, 0.58) !important;
  border-radius:18px !important;
  box-shadow:0 8px 24px rgba(20, 5, 45, 0.30) !important;
  backdrop-filter:blur(4px) !important;
  -webkit-backdrop-filter:blur(4px) !important;
  z-index:60 !important;
  overflow:visible !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav::before,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav::after,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav::before,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav::after{
  display:none !important;
  content:none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links{
  display:flex !important;
  position:static !important;
  width:100% !important;
  height:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  align-items:center !important;
  justify-content:space-evenly !important;
  gap:clamp(8px, 1.1vw, 18px) !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  transform:none !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a{
  display:inline-flex !important;
  opacity:1 !important;
  visibility:visible !important;
  color:#fff8ef !important;
  width:auto !important;
  height:auto !important;
  min-height:28px !important;
  text-indent:0 !important;
  overflow:visible !important;
  font-size:clamp(11px, .95vw, 14px) !important;
  line-height:1.1 !important;
  letter-spacing:.055em !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  padding:4px 2px !important;
  margin:0 !important;
  text-shadow:0 1px 8px rgba(32, 6, 60, .65) !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:hover,
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links a:focus-visible,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:hover,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links a:focus-visible{
  color:#ffd98c !important;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-logo,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-logo,
body.restore-preview-html-menu .page > .art-panel:first-of-type .cmk-logo-art,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .cmk-logo-art{
  display:none !important;
}
@media (max-width: 820px){
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav{
    top:3% !important;
    right:3.5% !important;
    width:auto !important;
    min-height:40px !important;
    padding:7px 9px !important;
    z-index:70 !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-links,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-links{
    display:none !important;
  }
  body.restore-preview-html-menu .page > .art-panel:first-of-type .mobile-menu,
  body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .mobile-menu{
    display:block !important;
  }
}


/* v76 Phase 2 batch hero updates */
body.restore-preview-html-menu.phase2-visible-logo .visible-hero-logo{
  position:absolute;
  top:2.2%;
  left:2.8%;
  width:min(31%, 430px);
  height:auto;
  z-index:62;
  display:block;
  border-radius:22px;
}
body.restore-preview-html-menu.phase2-visible-logo .visible-hero-logo img{
  display:block;
  width:100%;
  height:auto;
  filter:drop-shadow(0 8px 18px rgba(16, 2, 34, .42));
}
body.restore-preview-html-menu.phase2-visible-logo .hero-logo-hitbox{
  display:none !important;
}
body.restore-preview-html-menu.phase2-visible-logo .visible-hero-logo:focus-visible{
  outline:2px solid rgba(255, 217, 140, .95);
  outline-offset:3px;
}
body.restore-preview-html-menu .page > .art-panel:first-of-type .panel-img,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .panel-img{
  display:block;
  width:100%;
  height:auto;
}
@media (max-width: 820px){
  body.restore-preview-html-menu.phase2-visible-logo .visible-hero-logo{
    top:2.5%;
    left:3.2%;
    width:min(42%, 300px);
  }
}


/* v77 veil-and-vino restoration + lighter glass menu */
body.restore-preview-html-menu .page > .art-panel:first-of-type .crisp-nav.preview-menu-nav,
body.restore-preview-html-menu .page > .category-hero-panel:first-of-type .crisp-nav.preview-menu-nav{
  background: rgba(36, 9, 78, 0.34) !important;
  border: 1px solid rgba(239, 191, 97, 0.50) !important;
  box-shadow: 0 6px 18px rgba(20, 5, 45, 0.18) !important;
  backdrop-filter: blur(3px) !important;
  -webkit-backdrop-filter: blur(3px) !important;
}
body.restore-preview-html-menu.phase2-visible-logo.veil-vino-page .visible-hero-logo,
body.restore-preview-html-menu.phase2-visible-logo.storybook-flatback-page .visible-hero-logo{
  top: 2.4%;
  left: 2.8%;
  width: min(30%, 410px);
}
body.restore-preview-html-menu.phase2-visible-logo.veil-vino-page .visible-hero-logo img,
body.restore-preview-html-menu.phase2-visible-logo.storybook-flatback-page .visible-hero-logo img{
  filter: drop-shadow(0 7px 16px rgba(16, 2, 34, .38));
}
@media (max-width: 820px){
  body.restore-preview-html-menu.phase2-visible-logo.veil-vino-page .visible-hero-logo,
  body.restore-preview-html-menu.phase2-visible-logo.storybook-flatback-page .visible-hero-logo{
    top: 2.8%;
    left: 3%;
    width: min(42%, 290px);
  }
}


/* v80 rich section image replacements */
.generated-banner-section .generated-section-banner,
.generated-showcase-section{
  position: relative;
  width: 100%;
  margin: 2.2rem auto;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 18px 54px rgba(15, 3, 30, 0.30);
}
.generated-banner-section .generated-section-banner img,
.generated-showcase-section img{
  display: block;
  width: 100%;
  height: auto;
}
.generated-banner-section .cmk-section-banner{
  display: none !important;
}
.generated-pawpals-showcase{
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.generated-showcase-cta{
  position: absolute;
  display: block;
  z-index: 5;
  border-radius: 999px;
}
.generated-showcase-cta:focus-visible{
  outline: 3px solid rgba(255, 220, 140, 0.95);
  outline-offset: 3px;
}
.pawpals-book-cta{
  left: 40%;
  top: 49%;
  width: 20%;
  height: 7%;
}
@media (max-width: 800px){
  .generated-banner-section .generated-section-banner,
  .generated-showcase-section{
    border-radius: 18px;
    margin: 1.4rem auto;
  }
  .pawpals-book-cta{
    left: 34%;
    top: 48%;
    width: 32%;
    height: 8%;
  }
}


/* v81 storybook generated banner scaling + CTA visibility fixes */
.storybook-page .generated-banner-section{
  padding:0 !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  margin:28px 0 !important;
}
.storybook-page .generated-banner-section .generated-section-banner{
  width:min(100%, 1180px);
  margin:0 auto;
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 18px 54px rgba(15, 3, 30, 0.22);
}
.storybook-page .generated-banner-section .generated-section-banner img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto !important;
  object-fit:contain !important;
}
.storybook-page .category-intro-card.asset-magic-panel{
  max-width:1180px;
  margin:0 auto 28px;
  text-align:center;
  padding:42px 42px 36px;
}
.storybook-page .category-intro-card.asset-magic-panel p{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}
.storybook-page .category-intro-card .magic-button{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  margin:22px auto 0 !important;
  padding:14px 30px !important;
  min-height:50px;
  background:linear-gradient(135deg,#ff7ab4,#ffd57f) !important;
  border:1px solid rgba(255,237,181,.9) !important;
  color:#2b173d !important;
  text-decoration:none !important;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 14px 28px rgba(31,8,46,.26), inset 0 1px 0 rgba(255,255,255,.34), 0 0 22px rgba(255,214,120,.14) !important;
}
.storybook-page .category-intro-card .magic-button:hover,
.storybook-page .category-intro-card .magic-button:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 18px 34px rgba(31,8,46,.32), inset 0 1px 0 rgba(255,255,255,.34), 0 0 28px rgba(255,214,120,.22) !important;
}
@media (max-width: 900px){
  .storybook-page .generated-banner-section .generated-section-banner{
    width:100%;
    border-radius:22px;
  }
  .storybook-page .category-intro-card.asset-magic-panel{
    padding:30px 22px 28px;
  }
  .storybook-page .category-intro-card .magic-button{
    width:auto;
    max-width:100%;
    padding:13px 22px !important;
    font-size:.88rem;
  }
}


/* v82 sculpted keepsakes magical themes block cleanup */
.sculpted-page #magical-themes .theme-section-heading{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  margin: 0 auto !important;
  padding: 18px 24px 8px !important;
}
.sculpted-page #magical-themes .theme-section-heading h2,
.sculpted-page #magical-themes .theme-section-heading p,
.sculpted-page #magical-themes .theme-section-heading .section-sparkle{
  text-shadow:
    0 2px 12px rgba(22, 4, 40, 0.45),
    0 0 20px rgba(255, 214, 120, 0.08) !important;
}
.sculpted-page #magical-themes .cmk-section-banner.asset-magic-panel{
  padding: 30px 32px 18px !important;
}
@media (max-width: 900px){
  .sculpted-page #magical-themes .cmk-section-banner.asset-magic-panel{
    padding: 22px 18px 14px !important;
  }
  .sculpted-page #magical-themes .theme-section-heading{
    padding: 10px 8px 4px !important;
  }
}


/* v83 storybook flatback photo fit cleanup */
.storybook-flatback-page .flatback-sheet-card{
  padding: 0 !important;
  background: transparent !important;
  line-height: 0;
  overflow: hidden;
}
.storybook-flatback-page .flatback-sheet-card img,
.storybook-collection-page .storybook-feature-art img{
  display: block;
  width: 100% !important;
  max-width: none;
  height: auto !important;
}
.storybook-flatback-page .flatback-display-section,
.storybook-collection-page .storybook-section.with-art{
  align-items: stretch;
}


/* v84 storybook flatback full-bleed fix
   The cream/white frame was from the parent .storybook-section, not just the inner image card. */
.storybook-flatback-page .flatback-display-section.storybook-section{
  padding: 0 !important;
  margin: 0 auto 28px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
}
.storybook-flatback-page .flatback-sheet-card{
  padding: 0 !important;
  margin: 0 auto !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  line-height: 0 !important;
}
.storybook-flatback-page .flatback-sheet-card img{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 28px !important;
}
@media (max-width: 900px){
  .storybook-flatback-page .flatback-display-section.storybook-section{
    margin-bottom: 20px !important;
  }
  .storybook-flatback-page .flatback-sheet-card,
  .storybook-flatback-page .flatback-sheet-card img{
    border-radius: 20px !important;
  }
}


/* v86 REBUILT: unified homepage Why You'll Love It section across desktop and mobile */
.home-page #features{
  display:none !important;
}

.home-page .mobile-feature-cards{
  display:block !important;
  width:min(1200px,94vw);
  margin:24px auto 30px;
  border:1px solid rgba(216,154,55,.72);
  border-radius:28px;
  background:
    radial-gradient(circle at 16% 0%,rgba(255,215,152,.12),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(236,105,160,.16),transparent 28%),
    linear-gradient(180deg,rgba(32,8,54,.94),rgba(19,5,34,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,235,181,.18);
  padding:28px 26px 30px;
  text-align:center;
  position:relative;
  overflow:hidden;
}

.home-page .mobile-feature-cards:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    radial-gradient(circle,rgba(255,230,160,.9) 0 1px,transparent 1.55px),
    radial-gradient(circle,rgba(255,255,255,.52) 0 1px,transparent 1.45px);
  background-size:56px 56px,96px 96px;
  background-position:8px 12px,36px 22px;
  opacity:.18;
}

.home-page .mobile-feature-cards > *{
  position:relative;
  z-index:1;
}

.home-page .mobile-feature-cards h2{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(44px,5vw,72px);
  line-height:.95;
  color:#fff2e4;
  text-shadow:0 2px 12px rgba(0,0,0,.34);
  margin-bottom:16px;
}

.home-page .feature-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}

.home-page .feature-grid article{
  border:1px solid rgba(216,154,55,.42);
  border-radius:24px;
  padding:14px 14px 18px;
  background:linear-gradient(180deg, rgba(95,35,126,.30), rgba(23,7,44,.52));
  box-shadow:0 12px 26px rgba(9,3,22,.22), inset 0 0 0 1px rgba(255,240,205,.06);
  overflow:hidden;
}

.home-page .feature-illustration{
  margin:-6px -6px 14px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,218,164,.28);
  background:rgba(255,255,255,.04);
}

.home-page .feature-illustration img{
  display:block;
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
}

.home-page .feature-grid h3{
  font-family:'Cormorant Garamond',serif;
  color:#fff2e4;
  font-size:clamp(26px,2vw,34px);
  line-height:1;
  margin-bottom:8px;
}

.home-page .feature-grid p{
  color:rgba(255,242,228,.84);
  font-size:16px;
  line-height:1.58;
  margin:0;
}

@media (max-width:1150px){
  .home-page .feature-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:900px){
  .home-page .mobile-feature-cards{
    width:min(92vw,720px);
    margin:18px auto;
    border-radius:24px;
    padding:26px 22px;
  }

  .home-page .mobile-feature-cards h2{
    font-size:clamp(36px,11vw,58px);
    margin-bottom:12px;
  }

  .home-page .feature-grid{
    grid-template-columns:1fr;
    gap:14px;
  }

  .home-page .feature-grid h3{
    font-size:24px;
    margin-bottom:6px;
  }

  .home-page .feature-grid p{
    font-size:14px;
    line-height:1.5;
  }
}

@media (max-width:560px){
  .home-page .mobile-feature-cards{
    width:calc(100% - 24px);
    padding:24px 18px;
    border-radius:22px;
  }
}


/* v87 storybook enchanted best friends refresh */
.best-friends-highlight-panel{
  text-align:center;
}
.best-friends-highlight-panel .storybook-feature-copy{
  max-width:980px;
  margin:0 auto;
}
.best-friends-highlight-panel .lead{
  font-size:clamp(20px,2.2vw,28px) !important;
  line-height:1.55;
  margin-bottom:12px;
}
.best-friends-highlight-panel p:not(.section-sparkle):not(.lead){
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.best-friends-highlight-panel .cmk-button-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  margin-top:18px;
}
.best-friends-highlight-panel .magic-button.ghost-button{
  background:rgba(28,6,53,.28) !important;
}
@media (max-width: 900px){
  .best-friends-highlight-panel .cmk-button-row{
    flex-direction:column;
    align-items:center;
  }
  .best-friends-highlight-panel .magic-button{
    width:min(100%, 320px);
  }
}


/* v88 detached global menu refresh */
.page > .cmk-global-menu{
  position:relative;
  margin:0 auto 18px;
  padding:16px 20px;
  border-radius:28px;
  border:1.5px solid rgba(218,167,74,.95);
  background:
    radial-gradient(circle at 50% 0%, rgba(255,224,159,.14), transparent 34%),
    linear-gradient(180deg, rgba(67,24,108,.92) 0%, rgba(38,10,67,.92) 100%);
  box-shadow:0 16px 42px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,235,196,.28);
  overflow:hidden;
}
.page > .cmk-global-menu::before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(246,201,107,.58);
  border-radius:20px;
  pointer-events:none;
}
.page > .cmk-global-menu::after{
  content:"✦    ✦";
  position:absolute;
  left:50%;
  top:8px;
  transform:translateX(-50%);
  color:#f5d37a;
  font-size:18px;
  letter-spacing:10px;
  text-shadow:0 0 12px rgba(255,212,120,.42);
  pointer-events:none;
}
.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:relative !important;
  inset:auto !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  width:100%;
  min-height:0;
  margin:0;
  padding:8px 8px 4px;
  background:none !important;
  border:none !important;
  box-shadow:none !important;
  display:grid;
  grid-template-columns:minmax(220px, 300px) 1fr;
  align-items:center;
  gap:18px;
  z-index:2;
}
.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after{
  display:none !important;
  content:none !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:92px;
  padding:14px 16px;
  border-radius:22px;
  border:1px solid rgba(232,187,97,.65);
  background:linear-gradient(180deg, rgba(115,55,154,.28), rgba(49,17,83,.18));
  box-shadow:inset 0 0 26px rgba(255,217,145,.08);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo::after{
  display:none !important;
  content:none !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
  width:100%;
  max-width:238px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.24));
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  display:flex !important;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:14px 16px;
  border-radius:999px;
  border:1px solid rgba(232,187,97,.62);
  background:linear-gradient(180deg, rgba(87,33,132,.36), rgba(41,14,72,.24));
  box-shadow:inset 0 0 20px rgba(255,224,162,.06);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid transparent;
  color:#fff5d9 !important;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
  font-size:.92rem;
  white-space:nowrap;
  transition:all .2s ease;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,229,164,.1);
  border-color:rgba(245,212,120,.55);
  color:#fff7e8 !important;
  outline:none;
  box-shadow:0 0 0 3px rgba(255,214,128,.16);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  display:none;
  justify-self:end;
  margin-left:auto;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  list-style:none;
  cursor:pointer;
  width:56px;
  height:56px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  align-items:center;
  border-radius:18px;
  border:1px solid rgba(232,187,97,.62);
  background:linear-gradient(180deg, rgba(87,33,132,.36), rgba(41,14,72,.24));
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary::-webkit-details-marker{display:none;}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary span{
  width:24px;
  height:2px;
  border-radius:999px;
  background:#fff4d1;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  min-width:260px;
  padding:10px;
  border-radius:22px;
  border:1px solid rgba(232,187,97,.62);
  background:linear-gradient(180deg, rgba(67,24,108,.97), rgba(31,10,56,.97));
  box-shadow:0 16px 32px rgba(0,0,0,.28);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel a{
  display:block;
  padding:12px 14px;
  border-radius:14px;
  color:#fff5d9;
  text-decoration:none;
  font-weight:600;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel a:focus-visible{
  background:rgba(255,230,169,.1);
  outline:none;
}
/* ensure hero art no longer reserves or overlays baked html nav */
.page > .art-panel .nav-mask,
.page > .category-hero-panel .nav-mask,
.page > .art-panel .crisp-nav:not(.detached-nav),
.page > .category-hero-panel .crisp-nav:not(.detached-nav),
.page > .art-panel .hero-logo-hitbox,
.page > .category-hero-panel .hero-logo-hitbox{
  display:none !important;
}
.page > .art-panel,
.page > .category-hero-panel{
  margin-top:0;
}
@media (max-width: 980px){
  .page > .cmk-global-menu{padding:14px 14px 12px; margin-bottom:12px;}
  .page > .cmk-global-menu::before{inset:8px;}
  .page > .cmk-global-menu::after{top:7px; font-size:16px; letter-spacing:7px;}
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    grid-template-columns:1fr auto;
    gap:12px;
    padding-top:12px;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo{
    min-height:78px;
    padding:10px 14px;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
    display:none !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
    display:block;
    position:relative;
  }
}
@media (max-width: 640px){
  .page > .cmk-global-menu{
    border-radius:20px;
    margin-bottom:8px;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    grid-template-columns:1fr auto;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo{
    min-height:68px;
    border-radius:16px;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
    max-width:190px;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:50px;
    height:50px;
    border-radius:16px;
  }
}


/* v89 ornate detached menu refinement */
.page > .cmk-global-menu{
  margin:0 auto 6px;
  padding:12px 16px 10px;
  border-radius:30px;
  border:1.5px solid rgba(231,188,98,.96);
  background:
    radial-gradient(circle at 50% -10%, rgba(255,231,170,.18), transparent 34%),
    radial-gradient(circle at 18% 55%, rgba(255,204,124,.07), transparent 24%),
    radial-gradient(circle at 82% 45%, rgba(255,204,124,.06), transparent 22%),
    linear-gradient(180deg, rgba(65,24,109,.90) 0%, rgba(31,10,57,.93) 100%);
  box-shadow:0 10px 28px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,236,197,.25), inset 0 -8px 22px rgba(0,0,0,.12);
}
.page > .cmk-global-menu::before{
  inset:7px;
  border-radius:22px;
  border:1px solid rgba(243,208,120,.62);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.page > .cmk-global-menu::after{
  content:"❦  ♥  ❦";
  top:4px;
  font-size:19px;
  letter-spacing:8px;
  color:#f4d37c;
  text-shadow:0 0 12px rgba(255,218,126,.34);
}
.page > .cmk-global-menu .crisp-nav.detached-nav{
  display:block;
  padding:12px 8px 4px;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo,
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
  display:none !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  position:relative;
  justify-content:center;
  gap:12px;
  padding:12px 18px;
  min-height:66px;
  border-radius:999px;
  border:1px solid rgba(238,197,107,.66);
  background:
    radial-gradient(circle at 50% 0%, rgba(255,225,154,.11), transparent 36%),
    linear-gradient(180deg, rgba(95,36,141,.26), rgba(34,12,62,.18));
  box-shadow:inset 0 0 24px rgba(255,226,173,.07), inset 0 0 0 1px rgba(255,255,255,.04);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  color:rgba(244,211,124,.88);
  font-size:18px;
  text-shadow:0 0 10px rgba(255,218,126,.24);
  pointer-events:none;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before{
  content:"❧";
  left:16px;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  content:"❧";
  right:16px;
  transform:translateY(-50%) scaleX(-1);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  min-height:40px;
  padding:9px 15px;
  border-radius:999px;
  border:1px solid transparent;
  color:#fff5df !important;
  font-size:.9rem;
  letter-spacing:.095em;
  text-shadow:0 1px 0 rgba(0,0,0,.18);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,233,179,.10);
  border-color:rgba(245,212,120,.58);
  box-shadow:0 0 0 2px rgba(255,214,128,.10), inset 0 0 12px rgba(255,229,164,.08);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  margin:0 auto;
  display:none;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:54px;
  height:54px;
  border-radius:18px;
  border:1px solid rgba(238,197,107,.66);
  background:linear-gradient(180deg, rgba(95,36,141,.30), rgba(34,12,62,.18));
  box-shadow:inset 0 0 14px rgba(255,226,173,.06);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50%;
  transform:translateX(50%);
  top:calc(100% + 8px);
}
@media (max-width: 980px){
  .page > .cmk-global-menu{
    margin-bottom:4px;
    padding:10px 12px 8px;
  }
  .page > .cmk-global-menu::before{inset:6px;}
  .page > .cmk-global-menu::after{top:3px; font-size:17px; letter-spacing:7px;}
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    display:flex;
    justify-content:center;
    align-items:center;
    padding:10px 4px 2px;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{display:none !important;}
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{display:block; position:relative;}
}
@media (max-width: 640px){
  .page > .cmk-global-menu{
    margin-bottom:2px;
    border-radius:22px;
    padding:8px 10px 7px;
  }
  .page > .cmk-global-menu::before{border-radius:16px;}
  .page > .cmk-global-menu::after{font-size:15px; letter-spacing:6px;}
}

/* v90 ornate illustrated detached menu border using approved jewel-accent frame */
.page > .cmk-global-menu{
  position:relative;
  margin:0 auto 2px !important;
  padding:0 !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible;
}
.page > .cmk-global-menu::before{
  content:"" !important;
  position:absolute;
  inset:0;
  background:url('ornate_fantasy_frame_with_jewel_accents.png') center/100% 100% no-repeat !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  pointer-events:none;
}
.page > .cmk-global-menu::after{
  display:none !important;
  content:none !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  padding:26px 44px 20px !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  display:flex !important;
  justify-content:center;
  align-items:center;
  gap:12px;
  padding:10px 22px;
  min-height:64px;
  border-radius:999px;
  border:1px solid rgba(239, 199, 112, 0.42) !important;
  background:linear-gradient(180deg, rgba(68,24,106,0.16), rgba(24,10,50,0.10)) !important;
  box-shadow:inset 0 0 18px rgba(255,226,173,.05), 0 6px 18px rgba(10,4,24,.10) !important;
  backdrop-filter:blur(1.5px);
  -webkit-backdrop-filter:blur(1.5px);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  display:none !important;
  content:none !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  min-height:38px;
  padding:8px 15px;
  color:#fff6df !important;
  font-size:.9rem;
  letter-spacing:.095em;
  text-shadow:0 1px 2px rgba(20,7,42,.35);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,233,179,.09) !important;
  border-color:rgba(245,212,120,.46) !important;
  box-shadow:0 0 0 2px rgba(255,214,128,.10), inset 0 0 12px rgba(255,229,164,.06) !important;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  margin:0 auto;
  display:none;
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:54px;
  height:54px;
  border-radius:18px;
  border:1px solid rgba(238,197,107,.52) !important;
  background:linear-gradient(180deg, rgba(95,36,141,.20), rgba(34,12,62,.12)) !important;
  box-shadow:inset 0 0 14px rgba(255,226,173,.05);
}
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50%;
  transform:translateX(50%);
  top:calc(100% + 8px);
}
@media (max-width: 980px){
  .page > .cmk-global-menu{margin-bottom:1px !important;}
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    display:flex;
    justify-content:center;
    align-items:center;
    padding:18px 22px 16px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{display:none !important;}
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{display:block; position:relative;}
}
@media (max-width: 640px){
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    padding:13px 16px 12px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:48px;
    height:48px;
    border-radius:16px;
  }
}


/* v91 menu blur/overlay cleanup
   Remove all blur/frosted-glass effects from the detached menu and use a crisp frame layer. */
.page > .cmk-global-menu,
.page > .cmk-global-menu *,
.page > .cmk-global-menu::before,
.page > .cmk-global-menu::after,
.page > .cmk-global-menu .crisp-nav.detached-nav,
.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after,
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary,
.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu{
  position:relative !important;
  margin:0 auto 4px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  min-height:110px;
}

.page > .cmk-global-menu::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:url('luxurious_fantasy_ui_title_frame.png') center/100% 100% no-repeat !important;
  opacity:1 !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:relative !important;
  z-index:2 !important;
  display:block !important;
  width:100% !important;
  min-height:0 !important;
  margin:0 !important;
  padding:30px 50px 24px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo,
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
  display:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  min-height:56px !important;
  padding:6px 20px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  position:relative !important;
  z-index:4 !important;
  min-height:38px !important;
  padding:8px 15px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff7df !important;
  font-weight:800 !important;
  font-size:.92rem !important;
  letter-spacing:.095em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  text-shadow:0 2px 3px rgba(15,4,35,.45) !important;
  filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,233,179,.10) !important;
  border-color:rgba(245,212,120,.45) !important;
  box-shadow:0 0 0 2px rgba(255,214,128,.12) !important;
  outline:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  display:none !important;
  margin:0 auto !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:52px !important;
  height:52px !important;
  border-radius:16px !important;
  border:1px solid rgba(238,197,107,.58) !important;
  background:rgba(35,9,66,.22) !important;
  box-shadow:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50% !important;
  transform:translateX(50%) !important;
  top:calc(100% + 8px) !important;
  background:rgba(35,9,66,.96) !important;
  border:1px solid rgba(238,197,107,.58) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.28) !important;
}

@media (max-width:980px){
  .page > .cmk-global-menu{
    min-height:86px;
    margin-bottom:3px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    padding:18px 24px 16px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
    display:none !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
    display:block !important;
    position:relative !important;
  }
}

@media (max-width:640px){
  .page > .cmk-global-menu{
    min-height:72px;
    margin-bottom:2px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    padding:12px 18px 11px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:46px !important;
    height:46px !important;
  }
}


/* v92 correctly proportioned menu border replacement */
.page > .cmk-global-menu{
  position:relative !important;
  width:min(1180px,96vw) !important;
  min-height:168px !important;
  margin:0 auto -4px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.page > .cmk-global-menu::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:url('cmk-menu-border-v92.png') center center / contain no-repeat !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  opacity:1 !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  min-height:168px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
  padding:48px 150px 44px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo,
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
  display:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:16px !important;
  flex-wrap:wrap !important;
  width:100% !important;
  min-height:50px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  position:relative !important;
  z-index:4 !important;
  min-height:38px !important;
  padding:8px 14px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff8e8 !important;
  font-weight:850 !important;
  font-size:.9rem !important;
  letter-spacing:.095em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  text-shadow:0 2px 3px rgba(13,4,31,.58) !important;
  filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,235,184,.10) !important;
  border-color:rgba(245,212,120,.48) !important;
  box-shadow:0 0 0 2px rgba(255,214,128,.12) !important;
  outline:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  display:none !important;
  position:relative !important;
  z-index:4 !important;
  margin:0 auto !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:52px !important;
  height:52px !important;
  border-radius:16px !important;
  border:1px solid rgba(238,197,107,.58) !important;
  background:rgba(35,9,66,.22) !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50% !important;
  transform:translateX(50%) !important;
  top:calc(100% + 8px) !important;
  background:rgba(35,9,66,.96) !important;
  border:1px solid rgba(238,197,107,.58) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.28) !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (max-width:980px){
  .page > .cmk-global-menu{
    min-height:116px !important;
    margin-bottom:-2px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    min-height:116px !important;
    padding:32px 84px 30px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
    display:none !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
    display:block !important;
  }
}

@media (max-width:640px){
  .page > .cmk-global-menu{
    min-height:86px !important;
    margin-bottom:-1px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    min-height:86px !important;
    padding:20px 54px 18px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:46px !important;
    height:46px !important;
  }
}


/* v93 wider menu frame with safe text area */
.page > .cmk-global-menu{
  position:relative !important;
  width:min(1180px,96vw) !important;
  min-height:142px !important;
  margin:0 auto -6px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.page > .cmk-global-menu::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:url('cmk-menu-border-v93-wide-safe.png') center center / contain no-repeat !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  opacity:1 !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  min-height:142px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
  padding:42px 210px 40px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo,
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
  display:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:12px !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  min-height:48px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  position:relative !important;
  z-index:4 !important;
  min-height:36px !important;
  padding:7px 12px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff8e8 !important;
  font-weight:850 !important;
  font-size:.84rem !important;
  letter-spacing:.085em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  text-shadow:0 2px 3px rgba(13,4,31,.58) !important;
  filter:none !important;
  white-space:nowrap !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,235,184,.10) !important;
  border-color:rgba(245,212,120,.48) !important;
  box-shadow:0 0 0 2px rgba(255,214,128,.12) !important;
  outline:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  display:none !important;
  position:relative !important;
  z-index:4 !important;
  margin:0 auto !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:50px !important;
  height:50px !important;
  border-radius:16px !important;
  border:1px solid rgba(238,197,107,.58) !important;
  background:rgba(35,9,66,.22) !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50% !important;
  transform:translateX(50%) !important;
  top:calc(100% + 8px) !important;
  background:rgba(35,9,66,.96) !important;
  border:1px solid rgba(238,197,107,.58) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.28) !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (max-width:980px){
  .page > .cmk-global-menu{
    min-height:104px !important;
    margin-bottom:-4px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    min-height:104px !important;
    padding:28px 78px 26px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
    display:none !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
    display:block !important;
  }
}

@media (max-width:640px){
  .page > .cmk-global-menu{
    min-height:76px !important;
    margin-bottom:-2px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    min-height:76px !important;
    padding:16px 48px 14px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:44px !important;
    height:44px !important;
  }
}


/* v94 fixed wide menu frame: true menu aspect ratio, no overlap with ornaments */
.page > .cmk-global-menu{
  position:relative !important;
  width:min(1180px,96vw) !important;
  min-height:132px !important;
  margin:0 auto -8px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.page > .cmk-global-menu::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:url('cmk-menu-border-v94-wide-safe.png') center center / contain no-repeat !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  opacity:1 !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  min-height:132px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
  padding:44px 260px 40px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo,
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art{
  display:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  min-height:42px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  position:relative !important;
  z-index:4 !important;
  min-height:34px !important;
  padding:6px 10px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff8e8 !important;
  font-weight:850 !important;
  font-size:.80rem !important;
  letter-spacing:.075em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  text-shadow:0 2px 3px rgba(13,4,31,.66) !important;
  filter:none !important;
  white-space:nowrap !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,235,184,.10) !important;
  border-color:rgba(245,212,120,.48) !important;
  box-shadow:0 0 0 2px rgba(255,214,128,.12) !important;
  outline:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  display:none !important;
  position:relative !important;
  z-index:4 !important;
  margin:0 auto !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:48px !important;
  height:48px !important;
  border-radius:16px !important;
  border:1px solid rgba(238,197,107,.58) !important;
  background:rgba(35,9,66,.22) !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50% !important;
  transform:translateX(50%) !important;
  top:calc(100% + 8px) !important;
  background:rgba(35,9,66,.96) !important;
  border:1px solid rgba(238,197,107,.58) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.28) !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (max-width:980px){
  .page > .cmk-global-menu{
    min-height:86px !important;
    margin-bottom:-5px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    min-height:86px !important;
    padding:20px 64px 18px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
    display:none !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
    display:block !important;
  }
}

@media (max-width:640px){
  .page > .cmk-global-menu{
    min-height:70px !important;
    margin-bottom:-2px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    min-height:70px !important;
    padding:14px 42px 12px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:42px !important;
    height:42px !important;
  }
}


/* v95 regenerated menu border: single clean frame, hero-width, centered HTML nav */

.page > .cmk-global-menu{
  position:relative !important;
  width:min(1180px,96vw) !important;
  aspect-ratio:2188 / 453 !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 auto -2px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.page > .cmk-global-menu::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:url('cmk-menu-border-v95-clean.png') center center / 100% 100% no-repeat !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  opacity:1 !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  width:100% !important;
  min-height:0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 15.5% !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav::before,
.page > .cmk-global-menu .crisp-nav.detached-nav::after,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-logo,
.page > .cmk-global-menu .crisp-nav.detached-nav .cmk-logo-art,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::before,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links::after{
  display:none !important;
  content:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
  position:relative !important;
  z-index:3 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:clamp(10px, 1.4vw, 24px) !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  min-height:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a{
  position:relative !important;
  z-index:4 !important;
  min-height:34px !important;
  padding:6px 8px !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff8e8 !important;
  font-weight:850 !important;
  font-size:clamp(.76rem, .48rem + .55vw, 1rem) !important;
  letter-spacing:.075em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  text-shadow:0 2px 4px rgba(13,4,31,.66) !important;
  filter:none !important;
  white-space:nowrap !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:hover,
.page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links a:focus-visible{
  background:rgba(255,235,184,.10) !important;
  border-color:rgba(245,212,120,.48) !important;
  box-shadow:0 0 0 2px rgba(255,214,128,.12) !important;
  outline:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
  display:none !important;
  position:relative !important;
  z-index:4 !important;
  margin:0 auto !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
  width:48px !important;
  height:48px !important;
  border-radius:16px !important;
  border:1px solid rgba(238,197,107,.58) !important;
  background:rgba(35,9,66,.22) !important;
  box-shadow:none !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu-panel{
  right:50% !important;
  transform:translateX(50%) !important;
  top:calc(100% + 8px) !important;
  background:rgba(35,9,66,.96) !important;
  border:1px solid rgba(238,197,107,.58) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.28) !important;
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (max-width:980px){
  .page > .cmk-global-menu{
    aspect-ratio:1180 / 165 !important;
    margin-bottom:-3px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    padding:0 10.5% !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .crisp-links{
    display:none !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu{
    display:block !important;
  }
}

@media (max-width:640px){
  .page > .cmk-global-menu{
    aspect-ratio:auto !important;
    width:min(96vw, 680px) !important;
    min-height:72px !important;
    height:auto !important;
    margin-bottom:0 !important;
  }
  .page > .cmk-global-menu::before{
    background-size:contain !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav{
    padding:14px 42px 12px !important;
  }
  .page > .cmk-global-menu .crisp-nav.detached-nav .mobile-menu summary{
    width:42px !important;
    height:42px !important;
  }
}


/* v96 mobile hero hamburger menu relocation */
.hero-mobile-menu{display:none;}

@media (max-width: 900px){
  .page > .cmk-global-menu{
    display:none !important;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu{
    display:block !important;
    position:absolute;
    top:18px;
    right:18px;
    z-index:30;
    margin:0;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu summary,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu summary{
    width:56px;
    height:56px;
    border-radius:18px;
    border:1.5px solid rgba(233, 185, 89, 0.82);
    background:linear-gradient(180deg, rgba(58,18,96,0.92), rgba(33,11,58,0.92));
    box-shadow:0 10px 26px rgba(0,0,0,0.34), inset 0 0 0 1px rgba(255,226,165,0.16);
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:6px;
    cursor:pointer;
    padding:0;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu summary span,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu summary span{
    display:block;
    width:24px;
    height:3px;
    border-radius:999px;
    background:#fff3d1;
    box-shadow:0 0 10px rgba(255,215,134,0.25);
  }

  .page > .art-panel:first-of-type .hero-mobile-menu[open] summary,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu[open] summary{
    background:linear-gradient(180deg, rgba(77,27,122,0.96), rgba(41,14,69,0.96));
  }

  .page > .art-panel:first-of-type .hero-mobile-menu .mobile-menu-panel,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu .mobile-menu-panel{
    position:absolute;
    top:68px !important;
    right:0 !important;
    left:auto !important;
    min-width:220px;
    max-width:min(260px, calc(100vw - 36px));
    max-height:min(58vh, 360px);
    overflow:auto;
    border-radius:18px;
    border:1.5px solid rgba(233, 185, 89, 0.82);
    background:linear-gradient(180deg, rgba(44,13,75,0.97), rgba(30,8,51,0.97));
    box-shadow:0 16px 36px rgba(0,0,0,0.42);
    padding:10px;
    z-index:35;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu .mobile-menu-panel a,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu .mobile-menu-panel a{
    display:block;
    color:#fff6dc;
    text-decoration:none;
    font-weight:700;
    letter-spacing:0.06em;
    text-transform:uppercase;
    font-size:0.82rem;
    line-height:1.2;
    padding:12px 14px;
    border-radius:12px;
    margin:2px 0;
    background:transparent;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu .mobile-menu-panel a:hover,
  .page > .art-panel:first-of-type .hero-mobile-menu .mobile-menu-panel a:focus-visible,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu .mobile-menu-panel a:hover,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu .mobile-menu-panel a:focus-visible{
    background:rgba(255, 219, 150, 0.10);
    outline:none;
  }
}


/* v97 mobile hamburger dropdown stacking/clipping fix
   The dropdown was inside the hero card, whose overflow/stacking context could let the next content card cover it.
   Keep the button in the hero, but let the opened dropdown render above following sections. */
@media (max-width: 900px){
  .page > .art-panel:first-of-type,
  .page > .category-hero-panel:first-of-type{
    overflow:visible !important;
    z-index:1000 !important;
    isolation:auto !important;
  }

  .page > .art-panel:first-of-type .panel-img,
  .page > .category-hero-panel:first-of-type .panel-img,
  .page > .category-hero-panel:first-of-type .category-hero-img{
    border-radius:inherit;
    display:block;
    position:relative;
    z-index:1;
  }

  .page > .art-panel:first-of-type::before,
  .page > .category-hero-panel:first-of-type::before{
    z-index:2 !important;
    pointer-events:none;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu{
    z-index:5000 !important;
  }

  .page > .art-panel:first-of-type .hero-mobile-menu .mobile-menu-panel,
  .page > .category-hero-panel:first-of-type .hero-mobile-menu .mobile-menu-panel{
    z-index:6000 !important;
    max-height:min(72vh, 520px) !important;
    overflow:auto !important;
  }

  .page > .art-panel:first-of-type:has(.hero-mobile-menu[open]),
  .page > .category-hero-panel:first-of-type:has(.hero-mobile-menu[open]){
    z-index:7000 !important;
  }

  .page > .art-panel:first-of-type + *,
  .page > .category-hero-panel:first-of-type + *{
    position:relative;
    z-index:1;
  }
}
