:root{
  --demma-page-bg:#0b0b0b;
  --demma-section-bg:#111111;
  --demma-section-alt:#202020;
  --demma-surface:#202020;
  --demma-text:#ffffff;
  --demma-muted:#c8c8c8;
  --demma-primary:#e61673;
  --demma-primary-hover:#e58ba3;
  --demma-secondary:#f39800;
  --demma-tertiary:#face17;
  --demma-border:#555555;
  --demma-button-bg:var(--demma-primary);
  --demma-button-text:#ffffff;
  --demma-header-bg:#090909;
  --demma-header-text:#ffffff;
  --demma-header-fixed-bg:#e61673;
  --demma-header-fixed-text:#ffffff;
  --demma-menu-link:#ffffff;
  --demma-menu-hover:#ffffff;
  --demma-menu-underline:#ffffff;
  --demma-menu-fixed-link:#ffffff;
  --demma-menu-fixed-hover:#ffffff;
  --demma-menu-fixed-underline:#ffffff;
  --demma-dropdown-bg:#1a1a1a;
  --demma-dropdown-hover-bg:#333333;
  --demma-dropdown-link:#ffffff;
  --demma-radius:6px;
  --demma-shadow-offset:7px;
  --demma-stripe-a:#ffffff;
  --demma-stripe-b:#ff8fc5;
  --demma-hero-accent:var(--demma-primary);
}

body.demma-preset-nightout{
  --demma-page-bg:#0b0b0b;--demma-section-bg:#111111;--demma-section-alt:#202020;
  --demma-surface:#202020;--demma-text:#ffffff;--demma-muted:#c8c8c8;
  --demma-primary:#e61673;--demma-primary-hover:#e58ba3;--demma-secondary:#f39800;
  --demma-tertiary:#face17;--demma-border:#555555;--demma-button-bg:#e61673;--demma-button-text:#ffffff;
  --demma-header-bg:transparent;--demma-header-text:#ffffff;--demma-header-fixed-bg:#080808;--demma-header-fixed-text:#ffffff;
  --demma-menu-link:#ffffff;--demma-menu-hover:#f2b8c0;--demma-menu-underline:#e61673;
  --demma-menu-fixed-link:#ffffff;--demma-menu-fixed-hover:#f2b8c0;--demma-menu-fixed-underline:#e61673;
  --demma-dropdown-bg:#1a1a1a;--demma-dropdown-hover-bg:#333333;--demma-dropdown-link:#ffffff;
  --demma-hero-accent:#f2b8c0;
  --demma-radius:6px;
}
body.demma-preset-manhole{
  --demma-page-bg:#070707;--demma-section-bg:#0a0a0a;--demma-section-alt:#1a1a1a;
  --demma-surface:#111111;--demma-text:#eeeeee;--demma-muted:#b8b8b8;
  --demma-primary:#b42b3f;--demma-primary-hover:#f2b8c0;--demma-secondary:#5a1620;
  --demma-tertiary:#d7d2c6;--demma-border:#333333;--demma-button-bg:#b42b3f;--demma-button-text:#ffffff;
  --demma-header-bg:#070707;--demma-header-text:#ffffff;--demma-header-fixed-bg:#5a1620;--demma-header-fixed-text:#ffffff;
  --demma-menu-link:#ffffff;--demma-menu-hover:#b42b3f;--demma-menu-underline:#ffffff;
  --demma-menu-fixed-link:#ffffff;--demma-menu-fixed-hover:#f2b8c0;--demma-menu-fixed-underline:#ffffff;
  --demma-dropdown-bg:#1a1a1a;--demma-dropdown-hover-bg:#5a1620;--demma-dropdown-link:#ffffff;
  --demma-hero-accent:#ff5c70;
  --demma-radius:2px;
}
body.demma-preset-kingkong-barbie{
  --demma-page-bg:#f15aa6;--demma-section-bg:#ff79b8;--demma-section-alt:#ffffff;
  --demma-surface:#ffffff;--demma-text:#111111;--demma-muted:#5c2140;
  --demma-primary:#111111;--demma-primary-hover:#2a2a2a;--demma-secondary:#ffffff;
  --demma-tertiary:#ffcf00;--demma-border:#111111;--demma-button-bg:#111111;--demma-button-text:#ffffff;
  --demma-header-bg:#f15aa6;--demma-header-text:#111111;--demma-header-fixed-bg:#ffffff;--demma-header-fixed-text:#111111;
  --demma-menu-link:#111111;--demma-menu-hover:#111111;--demma-menu-underline:#111111;
  --demma-menu-fixed-link:#111111;--demma-menu-fixed-hover:#111111;--demma-menu-fixed-underline:#f15aa6;
  --demma-dropdown-bg:#ffffff;--demma-dropdown-hover-bg:#f6d5e6;--demma-dropdown-link:#111111;
  --demma-hero-accent:#111111;
  --demma-radius:6px;--demma-stripe-a:#ffffff;--demma-stripe-b:#ff8fc5;
}
body.demma-preset-menthol-candy{
  --demma-page-bg:#9ce8cf;--demma-section-bg:#bdf3df;--demma-section-alt:#f4fff9;
  --demma-surface:#f4fff9;--demma-text:#13251f;--demma-muted:#41665a;
  --demma-primary:#ff2f92;--demma-primary-hover:#d9006e;--demma-secondary:#ffe135;
  --demma-tertiary:#ffffff;--demma-border:#ff2f92;--demma-button-bg:#ff2f92;--demma-button-text:#ffffff;
  --demma-header-bg:#9ce8cf;--demma-header-text:#13251f;--demma-header-fixed-bg:#ff2f92;--demma-header-fixed-text:#ffffff;
  --demma-menu-link:#13251f;--demma-menu-hover:#13251f;--demma-menu-underline:#ffe135;
  --demma-menu-fixed-link:#ffffff;--demma-menu-fixed-hover:#ffffff;--demma-menu-fixed-underline:#ffe135;
  --demma-dropdown-bg:#f4fff9;--demma-dropdown-hover-bg:#d8f8ea;--demma-dropdown-link:#13251f;
  --demma-hero-accent:#ff2f92;
  --demma-radius:6px;--demma-stripe-a:#ffffff;--demma-stripe-b:#c9f3e4;
}
body.demma-preset-boiler-room{
  --demma-page-bg:#050505;--demma-section-bg:#0d0d0d;--demma-section-alt:#171717;
  --demma-surface:#171717;--demma-text:#f4f4f4;--demma-muted:#a9a9a9;
  --demma-primary:#ad1b25;--demma-primary-hover:#d71b16;--demma-secondary:#641016;
  --demma-tertiary:#ffb000;--demma-border:#3a3a3a;--demma-button-bg:#ad1b25;--demma-button-text:#ffffff;
  --demma-header-bg:#000000;--demma-header-text:#ad1b25;--demma-header-fixed-bg:rgba(0,0,0,.9);--demma-header-fixed-text:#ad1b25;
  --demma-menu-link:#ad1b25;--demma-menu-hover:#d71b16;--demma-menu-underline:#ad1b25;
  --demma-menu-fixed-link:#ad1b25;--demma-menu-fixed-hover:#d71b16;--demma-menu-fixed-underline:#ad1b25;
  --demma-dropdown-bg:#0b0b0b;--demma-dropdown-hover-bg:#241012;--demma-dropdown-link:#ad1b25;
  --demma-hero-accent:#ffb000;
  --demma-radius:0;
}

/* Hero emphasis: DISCOVER + YOU only. */
body[class*="demma-preset-"] .hero-title .demma-hero-accent{
  color:var(--demma-hero-accent,var(--demma-primary))!important;
  font-style:italic!important;
}
body.demma-preset-color-yourself .hero-title .demma-hero-accent{
  color:var(--demma-primary)!important;
}

body{background:var(--demma-page-bg)!important;color:var(--demma-text)}
.page-content,.post-content,.single-post .content,.archive .content,.blog .content,.sidebar .widget{color:var(--demma-text);background-color:var(--demma-page-bg)}
.page-content p,.post-content p,.content-section p,.sidebar .widget p{color:var(--demma-text)}
h1,h2,h3,h4,h5,h6,.hero-title{color:var(--demma-text)}
body.demma-front-page .content-section:not([data-bg]){background-color:var(--demma-section-bg)!important;color:var(--demma-text)}
body.demma-front-page .content-section:not([data-bg]):nth-of-type(even){background-color:var(--demma-section-alt)!important}
body.demma-front-page .content-section:not([data-bg]) :is(h1,h2,h3,h4,h5,p){color:var(--demma-text)!important}
.content-section .card,.card,.basic-box,.basicBox,.dmBox,.BPBox,.sidebar .widget{
  background:var(--demma-surface)!important;color:var(--demma-text)!important;border-color:var(--demma-border)!important;border-radius:var(--demma-radius)
}
.button,.button.color1,.button.color2,button.color1,button.color2,input[type=submit],.wp-block-button__link{
  background:var(--demma-button-bg)!important;border-color:var(--demma-button-bg)!important;color:var(--demma-button-text)!important;
  border-radius:var(--demma-radius)!important;transition:.25s ease!important
}
.button:hover,.button.color1:hover,.button.color2:hover,button.color1:hover,button.color2:hover,input[type=submit]:hover,.wp-block-button__link:hover{
  background:var(--demma-primary-hover)!important;border-color:var(--demma-primary-hover)!important;color:var(--demma-button-text)!important;transform:translateY(-2px)
}
a,.color1,.read-more{color:var(--demma-primary)}a:hover,.read-more:hover{color:var(--demma-primary-hover)}
.bg-color1{background-color:var(--demma-primary)!important}.border-color1{border-color:var(--demma-primary)!important}
.basic-out-box,.BPOutBox{width:100%;box-sizing:border-box}.basic-box,.basicBox,.dmBox,.BPBox{width:100%;box-sizing:border-box}

/* Header and menu preset system. */
body[class*="demma-preset-"] :is(.navigation-bar,.header-top,.header-wrapper,.navigation-wrapper),
body[class*="demma-preset-"] :is(.navigation-bar,.header-top) .gridContainer{
  background-color:var(--demma-header-bg)!important;color:var(--demma-header-text)!important
}
body[class*="demma-preset-"] ul.dropdown-menu>li>a,
body[class*="demma-preset-"] :is(.navigation-bar,.header-top,.header-wrapper,.navigation-wrapper) a{color:var(--demma-menu-link)!important}
body[class*="demma-preset-"] ul.dropdown-menu>li:hover>a{color:var(--demma-menu-hover)!important}
body[class*="demma-preset-"] ul.dropdown-menu.active-line-bottom>.current_page_item>a,
body[class*="demma-preset-"] ul.dropdown-menu.active-line-bottom>.current-menu-item>a,
body[class*="demma-preset-"] ul.dropdown-menu.default>.current_page_item>a,
body[class*="demma-preset-"] ul.dropdown-menu.default>.current-menu-item>a{border-bottom-color:var(--demma-menu-underline)!important}
body[class*="demma-preset-"] ul.dropdown-menu.active-line-top>.current_page_item>a,
body[class*="demma-preset-"] ul.dropdown-menu.active-line-top>.current-menu-item>a{border-top-color:var(--demma-menu-underline)!important}
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav),
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) :is(.navigation-bar,.navigation-wrapper,.header-top,.gridContainer){
  background-color:var(--demma-header-fixed-bg)!important;color:var(--demma-header-fixed-text)!important
}
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu>li>a,
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) a{color:var(--demma-menu-fixed-link)!important}
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu>li:hover>a{color:var(--demma-menu-fixed-hover)!important}
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu.active-line-bottom>.current_page_item>a,
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu.active-line-bottom>.current-menu-item>a,
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu.default>.current_page_item>a,
body[class*="demma-preset-"] :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu.default>.current-menu-item>a{border-bottom-color:var(--demma-menu-fixed-underline)!important}
body[class*="demma-preset-"] .navigation-bar .sub-menu{background:var(--demma-dropdown-bg)!important;border-color:var(--demma-border)!important}
body[class*="demma-preset-"] .navigation-bar .sub-menu li a{background:var(--demma-dropdown-bg)!important;color:var(--demma-dropdown-link)!important}
body[class*="demma-preset-"] .navigation-bar .sub-menu li a:hover{background:var(--demma-dropdown-hover-bg)!important;color:var(--demma-dropdown-link)!important}
body[class*="demma-preset-"] .offcanvas_menu{background:var(--demma-header-fixed-bg)!important}
body[class*="demma-preset-"] .offcanvas_menu a{color:var(--demma-menu-fixed-link)!important}
body[class*="demma-preset-"] .offcanvas_menu li.current_page_item>a,
body[class*="demma-preset-"] .offcanvas_menu li.current-menu-item>a{color:var(--demma-menu-fixed-hover)!important;border-color:var(--demma-menu-fixed-underline)!important}

/* NIGHTOUT */
@keyframes demma-nightout-rainbow{0%{background-position:0 50%}50%{background-position:100% 50%}100%{background-position:0 50%}}
body.demma-preset-nightout .content-section h2,
body.demma-preset-nightout .basic-title{position:relative;padding-left:0;padding-bottom:12px}
body.demma-preset-nightout .content-section h2:before,
body.demma-preset-nightout .basic-title:before{content:none!important;display:none!important}
body.demma-preset-nightout .content-section h2:after,
body.demma-preset-nightout .basic-title:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,#ff2400,#e81d1d,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3);background-size:500% 100%;animation:demma-nightout-rainbow 18s ease infinite}


/* NIGHTOUT CTA: animated rainbow background */
@-webkit-keyframes demma-nightout-cta-rainbow{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}
@keyframes demma-nightout-cta-rainbow{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}

body.demma-preset-nightout .cta-blue-section{
  background-image:linear-gradient(
    120deg,
    #ff2400 0%,
    #ff006e 16%,
    #dd00f3 32%,
    #2b1de8 48%,
    #1ddde8 64%,
    #1de840 80%,
    #e8b71d 100%
  ) !important;
  background-size:400% 400% !important;
  -webkit-animation-name:demma-nightout-cta-rainbow !important;
  animation-name:demma-nightout-cta-rainbow !important;
  -webkit-animation-duration:8s !important;
  animation-duration:8s !important;
  -webkit-animation-timing-function:linear !important;
  animation-timing-function:linear !important;
  -webkit-animation-iteration-count:infinite !important;
  animation-iteration-count:infinite !important;
}

body.demma-preset-nightout .cta-blue-section h2{
  padding-bottom:0 !important;
}

body.demma-preset-nightout .cta-blue-section h2:after{
  content:none !important;
  display:none !important;
}

body.demma-preset-nightout .cta-blue-section :is(h1,h2,h3,h4,h5,h6,p){
  color:#ffffff !important;
}


/* NIGHTOUT CTA buttons */
body.demma-preset-nightout .cta-blue-section :is(
  .button,
  .button.color1,
  .button.color2,
  .wp-block-button__link,
  a.button
){
  background:#000000 !important;
  border-color:#000000 !important;
  color:#ffffff !important;
  transition:
    background-color .35s ease,
    border-color .35s ease,
    color .35s ease !important;
}

body.demma-preset-nightout .cta-blue-section :is(
  .button,
  .button.color1,
  .button.color2,
  .wp-block-button__link,
  a.button
):hover{
  background:#2b2b2b !important;
  border-color:#2b2b2b !important;
  color:#ffffff !important;
}

/* MANHOLE */
body.demma-preset-manhole .content-section h2,
body.demma-preset-manhole .basic-title{position:relative;display:inline-block;letter-spacing:.06em;padding-left:38px;padding-bottom:0}
body.demma-preset-manhole .content-section h2:before,
body.demma-preset-manhole .basic-title:before{content:"";position:absolute;left:5px;top:50%;width:16px;height:16px;border:2px solid var(--demma-primary);transform:translateY(-50%) rotate(45deg);box-shadow:0 0 12px rgba(180,43,63,.45)}
body.demma-preset-manhole :is(.text-center,.content-center,.content-center-sm,[style*="text-align: center"],[style*="text-align:center"]) :is(h2,.basic-title){padding-left:0;padding-bottom:34px}
body.demma-preset-manhole :is(.text-center,.content-center,.content-center-sm,[style*="text-align: center"],[style*="text-align:center"]) :is(h2,.basic-title):before{left:50%;top:auto;bottom:3px;transform:translateX(-50%) rotate(45deg)}
body.demma-preset-manhole :is(.text-right,.content-right,.content-right-sm,[style*="text-align: right"],[style*="text-align:right"]) :is(h2,.basic-title){padding-left:0;padding-right:38px}
body.demma-preset-manhole :is(.text-right,.content-right,.content-right-sm,[style*="text-align: right"],[style*="text-align:right"]) :is(h2,.basic-title):before{left:auto;right:5px;top:50%;bottom:auto;transform:translateY(-50%) rotate(45deg)}

/* KINGKONG-BARBIE */
body.demma-preset-kingkong-barbie .content-section h2{text-transform:uppercase;font-weight:900!important;text-shadow:3px 3px 0 #ffffff;letter-spacing:-.02em}
body.demma-preset-kingkong-barbie :is(.card,.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit]){
  position:relative!important;border-radius:6px!important;box-shadow:7px 7px 0 #f15aa6!important
}
body.demma-preset-kingkong-barbie .card{border:2px solid #111!important;background:#fff!important}
body.demma-preset-kingkong-barbie :is(.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit]){border:2px solid #111!important;background:#111!important;color:#fff!important}
body.demma-preset-kingkong-barbie :is(.card,.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit])::before,
body.demma-preset-kingkong-barbie :is(.card,.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit])::after{content:none!important;display:none!important}
body.demma-preset-kingkong-barbie .card img{display:block!important;width:calc(100% - 4px)!important;max-width:calc(100% - 4px)!important;height:auto!important;margin:2px 2px 0!important;border-radius:4px 4px 0 0!important}
body.demma-preset-kingkong-barbie :is(.button,.wp-block-button__link,input[type=submit]):hover{background:#2a2a2a!important;color:#fff!important;transform:translate(-1px,-1px)!important}
@keyframes demma-barbie-menu-bounce{0%,100%{transform:translateY(0)}45%{transform:translateY(-7px)}70%{transform:translateY(-2px)}}
body.demma-preset-kingkong-barbie ul.dropdown-menu>li>a:hover,
body.demma-preset-kingkong-barbie :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu>li>a:hover{animation:demma-barbie-menu-bounce .42s ease both}

/* MENTHOL-CANDY */
body.demma-preset-menthol-candy .content-section h2{display:inline-block;padding:.35em 1.25em!important;border-radius:6px!important;background:#ffe135!important;color:#13251f!important;box-shadow:7px 7px 0 #ff2f92}
body.demma-preset-menthol-candy :is(.card,.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit]){
  position:relative!important;border-radius:6px!important;box-shadow:7px 7px 0 #9ce8cf!important
}
body.demma-preset-menthol-candy .card{border:2px solid #ff2f92!important;background:#f4fff9!important}
body.demma-preset-menthol-candy :is(.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit]){border:0!important;background:#ff2f92!important;color:#fff!important}
body.demma-preset-menthol-candy :is(.card,.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit])::before,
body.demma-preset-menthol-candy :is(.card,.button,.button.color1,.button.color2,.wp-block-button__link,input[type=submit])::after{content:none!important;display:none!important}
body.demma-preset-menthol-candy .card img{display:block!important;width:calc(100% - 4px)!important;max-width:calc(100% - 4px)!important;height:auto!important;margin:2px 2px 0!important;border-radius:4px 4px 0 0!important}
body.demma-preset-menthol-candy :is(.button,.wp-block-button__link,input[type=submit]):hover{background:#d9006e!important;color:#fff!important;transform:translate(-1px,-1px)!important}
body.demma-preset-menthol-candy .cta-blue-section{background:#d8f8ea!important}

/* BOILER-ROOM */
body.demma-preset-boiler-room .content-section h2{position:relative;padding-left:0;text-transform:uppercase;letter-spacing:.08em;color:#ffffff!important;text-shadow:4px 3px 0 #ad1b25}
body.demma-preset-boiler-room .content-section h2:before{content:none!important;display:none!important}
body.demma-preset-boiler-room .card{border:1px solid var(--demma-border)!important;border-radius:0!important}
body.demma-preset-boiler-room .cta-blue-section{background:#ad1b25!important;color:#ffffff!important}
body.demma-preset-boiler-room .cta-blue-section :is(h1,h2,h3,h4,h5,p){color:#ffffff!important;text-shadow:3px 3px 0 #000000}
body.demma-preset-boiler-room .cta-blue-section :is(.button,.button.color1,.button.color2,.wp-block-button__link){background:#000000!important;border-color:#000000!important;color:#ffffff!important;text-shadow:none!important}
body.demma-preset-boiler-room .cta-blue-section :is(.button,.button.color1,.button.color2,.wp-block-button__link):hover{background:#ffffff!important;border-color:#ffffff!important;color:#000000!important}

body.demma-preset-color-yourself .cta-blue-section{background:var(--demma-primary)!important;color:var(--demma-button-text)!important}
body.demma-preset-color-yourself .cta-blue-section :is(h1,h2,h3,h4,h5,p){color:var(--demma-button-text)!important}

@media(max-width:767px){
  body.demma-preset-manhole .content-section h2,body.demma-preset-manhole .basic-title{padding-left:32px}
  body.demma-preset-manhole :is(.text-center,.content-center,.content-center-sm) :is(h2,.basic-title){padding-left:0;padding-bottom:30px}
  body.demma-preset-menthol-candy .content-section h2{padding-left:.8em!important;padding-right:.8em!important;max-width:calc(100% - 20px)}
}

/* =========================================================
 * DEMMA 0.6.2 refinements
 * ========================================================= */

/* Links and menu color changes should feel soft, not abrupt. */
body[class*="demma-preset-"] a,
body[class*="demma-preset-"] ul.dropdown-menu > li > a,
body[class*="demma-preset-"] .navigation-wrapper,
body[class*="demma-preset-"] .navigation-bar,
body[class*="demma-preset-"] .header-top {
  transition: color .28s ease, background-color .28s ease, border-color .28s ease, opacity .28s ease !important;
}

/* BARBIE / MENTHOL testimonial portraits must retain the original compact round treatment. */
body.demma-preset-kingkong-barbie :is(.testimonials-1,.testimonials-5) img.round.icon,
body.demma-preset-menthol-candy :is(.testimonials-1,.testimonials-5) img.round.icon {
  display:block !important;
  width:120px !important;
  height:120px !important;
  max-width:50% !important;
  margin:18px auto 12px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  object-fit:cover !important;
  box-shadow:none !important;
}

/* A short three-tap bounce for the playful presets. */
@keyframes demma-candy-menu-tap {
  0%,100% { transform:translateY(0); }
  18% { transform:translateY(-4px); }
  32% { transform:translateY(0); }
  48% { transform:translateY(-3px); }
  62% { transform:translateY(0); }
  76% { transform:translateY(-2px); }
  88% { transform:translateY(0); }
}
body.demma-preset-kingkong-barbie ul.dropdown-menu > li > a:hover,
body.demma-preset-kingkong-barbie :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu > li > a:hover,
body.demma-preset-menthol-candy ul.dropdown-menu > li > a:hover,
body.demma-preset-menthol-candy :is(.fixto-fixed,.coloured-nav) ul.dropdown-menu > li > a:hover {
  animation:demma-candy-menu-tap .52s ease-out both !important;
}

/* BOILER-ROOM: preserve the intended translucent fixed navigation layer. */
body.demma-preset-boiler-room :is(.fixto-fixed,.coloured-nav),
body.demma-preset-boiler-room :is(.fixto-fixed,.coloured-nav) :is(.navigation-bar,.navigation-wrapper,.header-wrapper,.header-top,.gridContainer),
body.demma-preset-boiler-room .fixto-fixed .navigation-wrapper,
body.demma-preset-boiler-room .coloured-nav .navigation-wrapper {
  background-color:rgba(0,0,0,.90) !important;
}

/* BOILER-ROOM hero buttons: rich red surface with readable white labels. */
body.demma-preset-boiler-room :is(.header-homepage,.header-content,.hero,.hero-content) :is(a.button,.button,.button.color1,.button.color2,.wp-block-button__link),
body.demma-preset-boiler-room .header-homepage a.button,
body.demma-preset-boiler-room .header-content a.button {
  background:#ad1b25 !important;
  border-color:#ad1b25 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
}
body.demma-preset-boiler-room :is(.header-homepage,.header-content,.hero,.hero-content) :is(a.button,.button,.button.color1,.button.color2,.wp-block-button__link):hover,
body.demma-preset-boiler-room .header-homepage a.button:hover,
body.demma-preset-boiler-room .header-content a.button:hover {
  background:#d71b16 !important;
  border-color:#d71b16 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* BOILER-ROOM fixed header transparency patch */
body.demma-preset-boiler-room .navigation-bar.fixto-fixed{
  background: rgba(0,0,0,.9)!important;
}
body.demma-preset-boiler-room .navigation-bar.fixto-fixed .navigation-wrapper,
body.demma-preset-boiler-room .navigation-bar.fixto-fixed .navigation-wrapper:before,
body.demma-preset-boiler-room .navigation-bar.fixto-fixed .navigation-wrapper:after,
body.demma-preset-boiler-room .navigation-bar.fixto-fixed:before,
body.demma-preset-boiler-room .navigation-bar.fixto-fixed:after{
  background: transparent!important;
}

/* =========================================================
   DEMMA 0.8.4 — SINGLE POST SYSTEM
   BEAREST PEAKで確定したsingle.php/content-single.phpの構造を基準にする。
   BPOutBox/BPBoxはレイアウト用。カードや左罫線を勝手に追加しない。
   ========================================================= */

@keyframes BP-rainbow-flow{0%{background-position:0% 50%}100%{background-position:200% 50%}}
:root{
  --bp-rainbow:radial-gradient(circle at center,#ff2e63 0%,#ff6b4a 22%,#ff3b6b 42%,#7a5cff 62%,#18d8ff 82%,#2ee66b 100%);
}

/* single.phpの外枠をテーマ既定カードから解放 */
body.single-post #page-content.post-page{
  background:var(--demma-page-bg)!important;
}
body.single-post #page-content.post-page .post-item{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}
body.single-post #page-content.post-page .post-content-single{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}
body.single-post #page-content.post-page .post-content-inner{
  color:var(--demma-text)!important;
  text-align:left!important;
}

/* BEAREST PEAKで確定した本文コンテナ寸法 */
body.single-post .BPOutBox{
  width:100%!important;
  height:auto!important;
  margin:0 0 20px!important;
  padding:0 20px!important;
  box-sizing:border-box!important;
  text-align:left!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.single-post .BPBox{
  width:100%!important;
  height:auto!important;
  margin:0 0 40px!important;
  padding:0 0 40px!important;
  box-sizing:border-box!important;
  text-align:left!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.single-post .BPOutBox p,
body.single-post .BPBox p{
  margin:12px 0!important;
  line-height:1.9!important;
  font-size:16px!important;
  font-weight:500!important;
  text-align:left!important;
  color:var(--demma-text)!important;
}
body.single-post .BPOutBox p+p,
body.single-post .BPBox p+p{margin-top:24px!important}
body.single-post .BPOutBox a,
body.single-post .BPBox a{
  color:var(--demma-link)!important;
  text-decoration:underline;
  text-underline-offset:.18em;
}
body.single-post .BPOutBox a:hover,
body.single-post .BPBox a:hover{color:var(--demma-link-hover)!important}
body.single-post .BPOutBox hr,
body.single-post .BPBox hr,
body.single-post .BPOutBox hr.wp-block-separator,
body.single-post .BPBox hr.wp-block-separator{
  display:block!important;clear:both!important;width:100%!important;height:0!important;
  margin:40px 0!important;padding:0!important;border:0!important;
  border-top:1px dashed color-mix(in srgb,var(--demma-text) 17%,transparent)!important;
  background:none!important;opacity:1!important;
}

/* H1/H2/H3/H4 — BEAREST PEAKで詰めた階層をそのまま使用 */
body.single-post :is(h1.BP-h1,h2.BP-title,h3.BP-subtitle,h4.BP-komidashi)::before,
body.single-post :is(h1.BP-h1,h2.BP-title,h3.BP-subtitle,h4.BP-komidashi)::after,
body.single-post :is(h1.BP-h1,h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) span::before,
body.single-post :is(h1.BP-h1,h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) span::after{content:none!important}

.BPOutBox .header-wrapper h1.hero-title.BP-h1,
.BPOutBox h2.BP-title{
  position:relative!important;
  
  font-size:38px!important;
  letter-spacing:.08em!important;
  color:var(--demma-text)!important;
  font-weight:900!important;
  display:table!important;
  padding:0!important;
  line-height:1.28!important;
  box-sizing:border-box!important;
  border:0!important;
  background:none!important;
  text-align:left!important;
}
.BPOutBox .header-wrapper h1.hero-title.BP-h1{margin:0 auto!important}
.BPOutBox h2.BP-title{margin:24px auto 40px!important}
:is(.BPOutBox,.BPBox) :is(h1.BP-h1,h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-text{position:relative;z-index:2}

.BPOutBox :is(.header-wrapper h1.BP-h1,h2.BP-title) .BP-mark{
  display:block!important;position:absolute;left:-12px;top:.04em;width:30px;height:30px;
  border:3px solid transparent;transform:rotate(45deg);transform-origin:center;
  box-sizing:border-box;pointer-events:none;z-index:1;
}
.BPBox h3.BP-subtitle{
  position:relative!important;
  font-size:28px!important;letter-spacing:.08em!important;color:var(--demma-text)!important;
  font-weight:800!important;padding-left:8px!important;line-height:1.38!important;
  margin:0 0 1.25em!important;box-sizing:border-box!important;text-align:left!important;
  border:0!important;background:none!important;
}
.BPBox h3.BP-subtitle .BP-mark{
  display:block!important;position:absolute;left:0;top:0;width:22px;height:22px;
  transform:rotate(45deg);box-sizing:border-box;pointer-events:none;z-index:1;
  -webkit-clip-path:polygon(50% 0,100% 100%,0 100%);clip-path:polygon(50% 0,100% 100%,0 100%);
}
.BPBox h4.BP-komidashi{
  position:relative!important;
  font-size:23px!important;font-weight:800!important;letter-spacing:.08em!important;
  color:var(--demma-muted)!important;padding-left:19px!important;line-height:1.38!important;
  margin:1.9em 0 1em!important;box-sizing:border-box!important;text-align:left!important;
  border:0!important;background:none!important;
}
.BPBox h4.BP-komidashi .BP-mark{
  display:block!important;position:absolute;left:0;top:.32em;width:12px;height:12px;
  border:2px solid var(--demma-primary)!important;background:transparent!important;
  transform:rotate(45deg);transform-origin:center;box-sizing:border-box;pointer-events:none;z-index:1;
}

/* MANHOLE = BEAREST PEAK。ここは既存完成版を忠実に維持 */
body.demma-preset-manhole :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title,#page-content h3.BP-subtitle){
  color:#eee!important;
  text-shadow:0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94)!important;
}
body.demma-preset-manhole :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title) .BP-mark{
  border:3px solid transparent!important;
  background:linear-gradient(#070707,#070707) padding-box,var(--bp-rainbow) border-box!important;
  background-size:100% 100%,200% 100%!important;animation:BP-rainbow-flow 6s linear infinite!important;
  box-shadow:0 0 14px rgba(255,255,255,.25)!important;
}
body.demma-preset-manhole #page-content h3.BP-subtitle .BP-mark{
  background-image:var(--bp-rainbow)!important;background-size:200% 100%!important;
  animation:BP-rainbow-flow 6s linear infinite!important;box-shadow:0 0 12px rgba(255,255,255,.25)!important;
}
body.demma-preset-manhole #page-content h4.BP-komidashi{color:#ccc!important}
body.demma-preset-manhole #page-content h4.BP-komidashi .BP-mark{border-color:#f08a9a!important}

/* PLAYPEN / NIGHTOUT */
body.demma-preset-nightout :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title,#page-content h3.BP-subtitle){
  color:#fff!important;text-shadow:3px 3px 0 #e61673,0 0 14px rgba(230,22,115,.28)!important;
}
body.demma-preset-nightout :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title) .BP-mark{border-color:#e61673!important;background:#090909!important;box-shadow:0 0 14px rgba(230,22,115,.45)!important}
body.demma-preset-nightout #page-content h3.BP-subtitle .BP-mark{background:#e61673!important}
body.demma-preset-nightout #page-content h4.BP-komidashi{color:#e8e8e8!important}

/* BOILER ROOM */
body.demma-preset-boiler-room :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title,#page-content h3.BP-subtitle){
  color:#fff!important;text-shadow:3px 3px 0 #ad1b25!important;
}
body.demma-preset-boiler-room :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title) .BP-mark{border-color:#ad1b25!important;background:#050505!important;box-shadow:0 0 12px rgba(173,27,37,.35)!important}
body.demma-preset-boiler-room #page-content h3.BP-subtitle .BP-mark{background:#ad1b25!important}
body.demma-preset-boiler-room #page-content h4.BP-komidashi{color:#cfcfcf!important}

/* graphic presets */
body.demma-preset-kingkong-barbie.single-post :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title,#page-content h3.BP-subtitle){color:#111!important;text-shadow:3px 3px 0 #f15aa6!important}
body.demma-preset-kingkong-barbie.single-post :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title) .BP-mark{border-color:#111!important;background:#fff!important;box-shadow:4px 4px 0 #f15aa6!important}
body.demma-preset-kingkong-barbie.single-post #page-content h3.BP-subtitle .BP-mark{background:#111!important}
body.demma-preset-menthol-candy.single-post :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title,#page-content h3.BP-subtitle){color:#13251f!important;text-shadow:2px 2px 0 #9ce8cf!important}
body.demma-preset-menthol-candy.single-post :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title) .BP-mark{border-color:#ff2f92!important;background:#f4fff9!important}
body.demma-preset-menthol-candy.single-post #page-content h3.BP-subtitle .BP-mark{background:#ff2f92!important}
body.demma-preset-color-yourself.single-post :is(.header-wrapper h1.BP-h1,#page-content h2.BP-title) .BP-mark{border-color:var(--demma-primary)!important;background:var(--demma-page-bg)!important}
body.demma-preset-color-yourself.single-post #page-content h3.BP-subtitle .BP-mark{background:var(--demma-primary)!important}

/* ========================================
   CAST / GALLERY — BEAREST PEAK STRUCTURE,
   preset-aware recolor
======================================== */

body .BPBox .gallery {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 32px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 32px 0 !important;
    clear: both !important;
}

body .BPBox .gallery::before,
body .BPBox .gallery::after {
    content: none !important;
    display: none !important;
}

body .BPBox .gallery > br {
    display: none !important;
}

body .BPBox .gallery-item {
    position: relative;
    float: none !important;
    clear: none !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    opacity: 1;
    transform: none;
}

body .BPBox .gallery-item.fade-up {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity .8s ease, transform .8s cubic-bezier(.22, 1, .36, 1);
    will-change: opacity, transform;
}

body .BPBox .gallery-item.fade-up.is-visible {
    opacity: 1;
    transform: translateY(0);
}

body .BPBox .gallery-item.fade-up:nth-of-type(1) { transition-delay: 0s; }
body .BPBox .gallery-item.fade-up:nth-of-type(2) { transition-delay: .18s; }
body .BPBox .gallery-item.fade-up:nth-of-type(3) { transition-delay: .36s; }
body .BPBox .gallery-item.fade-up:nth-of-type(4) { transition-delay: .54s; }
body .BPBox .gallery-item.fade-up:nth-of-type(5) { transition-delay: .72s; }
body .BPBox .gallery-item.fade-up:nth-of-type(6) { transition-delay: .9s; }

body .BPBox .gallery-icon {
    position: relative;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 10px;
    box-sizing: border-box !important;
    border: 2px solid transparent !important;
    background: var(--demma-gallery-frame-bg) border-box !important;
    box-shadow:
        0 0 0 1px var(--demma-gallery-frame-outline),
        0 0 18px var(--demma-gallery-frame-glow),
        inset 0 0 14px var(--demma-gallery-frame-inner-glow) !important;
}

body .BPBox .gallery-icon::before {
    content: "";
    position: absolute;
    inset: 5px;
    z-index: 2;
    border: 1px solid var(--demma-gallery-frame-inner-border);
    pointer-events: none;
}

body .BPBox .gallery-icon::after {
    content: "";
    position: absolute;
    inset: -5px;
    z-index: 3;
    pointer-events: none;
    background:
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) left top / 30px 2px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) left top / 2px 30px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) right top / 30px 2px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) right top / 2px 30px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) left bottom / 30px 2px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) left bottom / 2px 30px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) right bottom / 30px 2px no-repeat,
        linear-gradient(var(--demma-gallery-frame-corner), var(--demma-gallery-frame-corner)) right bottom / 2px 30px no-repeat;
}

body .BPBox .gallery-item img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

body .BPBox .gallery-caption {
    position: relative;
    margin: 14px 0 0 !important;
    padding: 10px 16px !important;
    color: var(--demma-gallery-caption-text) !important;
    font-family: "Zen Old Mincho", serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    line-height: 1.4 !important;
    text-align: center !important;
    border-top: 1px solid var(--demma-gallery-caption-border-strong) !important;
    border-bottom: 1px solid var(--demma-gallery-caption-border-soft) !important;
    background: var(--demma-gallery-caption-bg) !important;
}

body .BPBox .gallery-caption::before,
body .BPBox .gallery-caption::after,
body .BPBox .wp-caption-text::before,
body .BPBox .wp-caption-text::after {
    content: none !important;
    display: none !important;
}

@media (max-width: 768px) {
    body .BPBox .gallery {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 36px !important;
    }
    body .BPBox .gallery-item.fade-up { transform: translateY(36px); }
    body .BPBox .gallery-item.fade-up.is-visible { transform: translateY(0); }
    body .BPBox .gallery-caption { font-size: 17px !important; }
}

@media (prefers-reduced-motion: reduce) {
    body .BPBox .gallery-item.fade-up,
    body .BPBox .gallery-item.fade-up.is-visible {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* BEAREST PEAK table — structure is shared; preset changes color only */
body[class*="demma-preset-"]{
  --demma-table-head-1:#252525;
  --demma-table-head-2:#303030;
  --demma-table-content-odd:#1b1b1b;
  --demma-table-content-even:#202020;
  --demma-table-accent-odd:color-mix(in srgb,var(--demma-primary) 40%,#171717);
  --demma-table-accent-even:color-mix(in srgb,var(--demma-primary) 48%,#171717);

  --demma-gallery-frame-bg:linear-gradient(135deg,#6f4b0a,#f5d47a 22%,#8b5f0e 48%,#ffe8a2 72%,#7a5109);
  --demma-gallery-frame-outline:rgba(255,220,140,.45);
  --demma-gallery-frame-glow:rgba(218,165,32,.35);
  --demma-gallery-frame-inner-glow:rgba(255,224,130,.15);
  --demma-gallery-frame-inner-border:rgba(255,226,145,.85);
  --demma-gallery-frame-corner:#e8bd55;
  --demma-gallery-caption-text:#f3d787;
  --demma-gallery-caption-border-strong:rgba(232,189,85,.8);
  --demma-gallery-caption-border-soft:rgba(232,189,85,.45);
  --demma-gallery-caption-bg:linear-gradient(90deg,transparent,rgba(180,122,24,.18) 20%,rgba(220,176,74,.22) 50%,rgba(180,122,24,.18) 80%,transparent);
}
body.demma-preset-nightout{
  --demma-table-accent-odd:#4a1730;
  --demma-table-accent-even:#5a1c3a;
  --demma-gallery-frame-bg:linear-gradient(135deg,#16030f,#d62579 22%,#521033 48%,#ff9fcf 72%,#22030f);
  --demma-gallery-frame-outline:rgba(255,157,207,.34);
  --demma-gallery-frame-glow:rgba(230,22,115,.34);
  --demma-gallery-frame-inner-glow:rgba(255,192,221,.12);
  --demma-gallery-frame-inner-border:rgba(255,204,228,.82);
  --demma-gallery-frame-corner:#ff9fcf;
  --demma-gallery-caption-text:#ffe2f0;
  --demma-gallery-caption-border-strong:rgba(255,159,207,.78);
  --demma-gallery-caption-border-soft:rgba(255,159,207,.38);
  --demma-gallery-caption-bg:linear-gradient(90deg,transparent,rgba(112,18,70,.18) 20%,rgba(214,37,121,.22) 50%,rgba(112,18,70,.18) 80%,transparent);
}
body.demma-preset-manhole{
  --demma-table-accent-odd:#4b1d23;
  --demma-table-accent-even:#572228;
  --demma-gallery-frame-bg:linear-gradient(135deg,#202227,#80858d 20%,#40444b 46%,#c5a58d 72%,#292321);
  --demma-gallery-frame-outline:rgba(196,176,160,.26);
  --demma-gallery-frame-glow:rgba(180,43,63,.22);
  --demma-gallery-frame-inner-glow:rgba(255,255,255,.08);
  --demma-gallery-frame-inner-border:rgba(215,210,198,.62);
  --demma-gallery-frame-corner:#b48b75;
  --demma-gallery-caption-text:#e7ddd3;
  --demma-gallery-caption-border-strong:rgba(180,139,117,.72);
  --demma-gallery-caption-border-soft:rgba(180,139,117,.36);
  --demma-gallery-caption-bg:linear-gradient(90deg,transparent,rgba(90,22,32,.16) 20%,rgba(180,139,117,.20) 50%,rgba(90,22,32,.16) 80%,transparent);
}
body.demma-preset-boiler-room{
  --demma-table-accent-odd:#4b1116;
  --demma-table-accent-even:#5a151b;
  /* Black titanium: darker graphite base with pale titanium pinstripes and warmer graphite highlights. */
  --demma-gallery-frame-bg:linear-gradient(135deg,#000000 0%,#050505 20%,#4d4c51 44%,#101113 68%,#000000 100%);
  --demma-gallery-frame-outline:rgba(236,236,236,.28);
  --demma-gallery-frame-glow:rgba(77,76,81,.16);
  --demma-gallery-frame-inner-glow:rgba(77,76,81,.07);
  --demma-gallery-frame-inner-border:rgba(236,236,236,.56);
  --demma-gallery-frame-corner:#ececec;
  --demma-gallery-caption-text:#e2e3e5;
  --demma-gallery-caption-border-strong:rgba(236,236,236,.86);
  --demma-gallery-caption-border-soft:rgba(236,236,236,.44);
  --demma-gallery-caption-bg:linear-gradient(125deg,transparent,#111111 20%,#2c2f33 21%,#111111 23%,#000000 24%,#000000 76%,#111111 77%,#2c2f33 79%,#111111 80%,transparent);
}
body.demma-preset-kingkong-barbie{
  --demma-table-accent-odd:#8f285c;
  --demma-table-accent-even:#a6316b;
  --demma-table-content-odd:#1c1c1c;
  --demma-table-content-even:#232323;
  --demma-gallery-frame-bg:linear-gradient(135deg,#111111,#ffffff 22%,#f15aa6 48%,#ffffff 72%,#111111);
  --demma-gallery-frame-outline:rgba(17,17,17,.55);
  --demma-gallery-frame-glow:rgba(241,90,166,.24);
  --demma-gallery-frame-inner-glow:rgba(255,255,255,.16);
  --demma-gallery-frame-inner-border:rgba(17,17,17,.88);
  --demma-gallery-frame-corner:#111111;
  --demma-gallery-caption-text:#111111;
  --demma-gallery-caption-border-strong:rgba(17,17,17,.80);
  --demma-gallery-caption-border-soft:rgba(17,17,17,.42);
  --demma-gallery-caption-bg:linear-gradient(90deg,transparent,rgba(255,255,255,.50) 18%,rgba(241,90,166,.32) 50%,rgba(255,255,255,.50) 82%,transparent);
}
body.demma-preset-menthol-candy{
  --demma-table-accent-odd:#9b1d62;
  --demma-table-accent-even:#b12471;
  --demma-table-content-odd:#18342c;
  --demma-table-content-even:#1e3d34;
  --demma-gallery-frame-bg:linear-gradient(135deg,#ffffff,#cff6e7 22%,#ffe135 48%,#ff9fd1 72%,#ffffff);
  --demma-gallery-frame-outline:rgba(255,47,146,.34);
  --demma-gallery-frame-glow:rgba(156,232,207,.30);
  --demma-gallery-frame-inner-glow:rgba(255,255,255,.20);
  --demma-gallery-frame-inner-border:rgba(255,47,146,.70);
  --demma-gallery-frame-corner:#ff2f92;
  --demma-gallery-caption-text:#183127;
  --demma-gallery-caption-border-strong:rgba(255,47,146,.76);
  --demma-gallery-caption-border-soft:rgba(255,47,146,.34);
  --demma-gallery-caption-bg:linear-gradient(90deg,transparent,rgba(156,232,207,.36) 20%,rgba(255,225,53,.42) 50%,rgba(255,159,209,.34) 80%,transparent);
}
body.demma-preset-color-yourself{
  --demma-gallery-frame-bg:linear-gradient(135deg,
    color-mix(in srgb,var(--demma-primary) 22%,#111111),
    color-mix(in srgb,var(--demma-primary) 18%,#f2f2f2) 22%,
    color-mix(in srgb,var(--demma-primary) 38%,#1f1f1f) 48%,
    color-mix(in srgb,var(--demma-primary) 12%,#ffffff) 72%,
    color-mix(in srgb,var(--demma-primary) 28%,#111111));
  --demma-gallery-frame-outline:color-mix(in srgb,var(--demma-primary) 36%,rgba(255,255,255,.18));
  --demma-gallery-frame-glow:color-mix(in srgb,var(--demma-primary) 30%,transparent);
  --demma-gallery-frame-inner-glow:rgba(255,255,255,.10);
  --demma-gallery-frame-inner-border:color-mix(in srgb,var(--demma-primary) 48%,rgba(255,255,255,.55));
  --demma-gallery-frame-corner:color-mix(in srgb,var(--demma-primary) 60%,#f3f3f3);
  --demma-gallery-caption-text:color-mix(in srgb,var(--demma-primary) 12%,#ffffff);
  --demma-gallery-caption-border-strong:color-mix(in srgb,var(--demma-primary) 46%,rgba(255,255,255,.28));
  --demma-gallery-caption-border-soft:color-mix(in srgb,var(--demma-primary) 32%,rgba(255,255,255,.14));
  --demma-gallery-caption-bg:linear-gradient(90deg,transparent,color-mix(in srgb,var(--demma-primary) 22%,transparent) 20%,color-mix(in srgb,var(--demma-primary) 30%,rgba(255,255,255,.07)) 50%,color-mix(in srgb,var(--demma-primary) 22%,transparent) 80%,transparent);
}

body .BPBox .bp-table-wrap{width:100%;margin:24px 0 32px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:none;background:none}
body .BPBox .bp-table.bp-table-offering{width:100%;margin:0;border:none;border-collapse:collapse;border-spacing:0;table-layout:fixed;color:#f2f2f2;background:var(--demma-table-content-odd)}
body .BPBox .bp-table.bp-table-offering :is(thead,tbody,tr,th,td){border:none!important;outline:none;box-shadow:none}
body .BPBox .bp-table.bp-table-offering :is(th,td){padding:16px 18px;text-align:left;vertical-align:middle;line-height:1.8;word-break:break-word}
body .BPBox .bp-table.bp-table-offering thead th{background:var(--demma-table-head-1);color:#fff;font-weight:700;white-space:nowrap}
body .BPBox .bp-table.bp-table-offering thead th:nth-child(2){background:var(--demma-table-head-2)}
body .BPBox .bp-table.bp-table-offering tbody th,
body .BPBox .bp-table.bp-table-offering tbody td:nth-child(3){background:var(--demma-table-accent-odd);color:#fff;font-weight:700}
body .BPBox .bp-table.bp-table-offering tbody td:nth-child(2){background:var(--demma-table-content-odd);color:#f2f2f2}
/* BEAREST PEAK's alternating middle row: slightly lighter, never bright */
body .BPBox .bp-table.bp-table-offering tbody tr:nth-child(even) th,
body .BPBox .bp-table.bp-table-offering tbody tr:nth-child(even) td:nth-child(3){background:var(--demma-table-accent-even)}
body .BPBox .bp-table.bp-table-offering tbody tr:nth-child(even) td:nth-child(2){background:var(--demma-table-content-even)}
body .BPBox .bp-table.bp-table-offering :is(th,td):nth-child(1){width:24%}
body .BPBox .bp-table.bp-table-offering :is(th,td):nth-child(2){width:58%}
body .BPBox .bp-table.bp-table-offering :is(th,td):nth-child(3){width:18%}

body.single-post .bp-table.bp-table-timeline{width:100%;border-collapse:separate;border-spacing:0 18px;background:transparent}
body.single-post .bp-table.bp-table-timeline :is(th,td){border:none;vertical-align:middle}
body.single-post .bp-table.bp-table-timeline th{position:relative;width:115px;padding:0 34px 0 0;text-align:right;background:transparent}
body.single-post .bp-table.bp-table-timeline .bp-time{display:inline-block;color:var(--demma-text);font-size:.95rem;font-weight:700;line-height:1;letter-spacing:.03em;white-space:nowrap}
body.single-post .bp-table.bp-table-timeline th::before{content:"";position:absolute;top:50%;right:11px;z-index:2;width:12px;height:12px;background:var(--demma-primary);border:3px solid var(--demma-text);border-radius:50%;transform:translateY(-50%);box-sizing:border-box}
body.single-post .bp-table.bp-table-timeline th::after{content:"";position:absolute;top:50%;right:16px;bottom:-28px;width:2px;background:color-mix(in srgb,var(--demma-text) 45%,transparent)}
body.single-post .bp-table.bp-table-timeline tr:last-child th::after{display:none}
body.single-post .bp-table.bp-table-timeline td{position:relative;padding:16px 20px;color:var(--demma-text);background:color-mix(in srgb,var(--demma-primary) 48%,#151515);border-radius:4px;font-size:.95rem;line-height:1.34}
body.single-post .bp-table.bp-table-timeline td::before{content:"";position:absolute;top:50%;left:-11px;width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-right:11px solid color-mix(in srgb,var(--demma-primary) 48%,#151515);transform:translateY(-50%)}
body.single-post .bp-table.bp-table-timeline td strong{display:block;margin-bottom:8px;padding-bottom:5px;color:#fff;font-size:1.125rem;font-weight:700;line-height:1.3;border-bottom:1px solid rgba(238,238,238,.35)}

/* Sidebar — hierarchy first */
body.single-post .sidebar .widget{background:var(--demma-sidebar-bg,var(--demma-surface))!important;border:1px solid var(--demma-border)!important;color:var(--demma-muted)!important}
body.single-post .sidebar .widget :is(p,li,span){color:var(--demma-muted)!important}
body.single-post .sidebar .widget a{color:var(--demma-link)!important;font-weight:700!important;text-decoration:none!important}
body.single-post .sidebar .widget a:hover{color:var(--demma-link-hover)!important}
body.demma-preset-boiler-room .sidebar .widget{background:#050505!important;border-color:#222!important}
body.demma-preset-boiler-room .sidebar .widget :is(p,li,span){color:#9f9f9f!important}
body.demma-preset-boiler-room .sidebar .widget a{color:#e33a43!important;font-weight:800!important}

@media(max-width:768px){
  .BPOutBox .header-wrapper h1.hero-title.BP-h1{display:block!important;font-size:25px!important;padding-left:22px!important;margin:0!important}
  .BPOutBox .header-wrapper h1.hero-title.BP-h1 .BP-mark{left:8px;top:.1em;width:27px;height:27px}
  .BPOutBox h2.BP-title{display:block!important;font-size:22px!important;margin:18px 0 26px!important;padding-left:22px!important;text-align:left!important;line-height:1.35!important}
  .BPOutBox h2.BP-title .BP-mark{left:8px;top:.1em;width:26px;height:26px}
  .BPBox h3.BP-subtitle{font-size:19px!important}
  .BPBox h3.BP-subtitle .BP-mark{top:-.05em}
  .BPBox h4.BP-komidashi{font-size:17px!important}
  body.single-post .BPOutBox{padding:0!important}
  body.single-post .BPBox{padding:0 0 32px!important;margin:0 0 32px!important}
  body.single-post .BPBox :is(.gallery,.wp-block-gallery){grid-template-columns:minmax(0,1fr)!important;gap:36px!important}
  body .BPBox .bp-table.bp-table-offering{min-width:720px}
  body .BPBox .bp-table.bp-table-offering :is(th,td){padding:13px 14px;line-height:1.7}
  body.single-post .bp-table.bp-table-timeline{border-spacing:0 16px}
  body.single-post .bp-table.bp-table-timeline th{width:76px;padding-right:25px}
  body.single-post .bp-table.bp-table-timeline .bp-time{font-size:.82rem}
  body.single-post .bp-table.bp-table-timeline th::before{right:7px;width:11px;height:11px}
  body.single-post .bp-table.bp-table-timeline th::after{right:11.5px;bottom:-26px}
  body.single-post .bp-table.bp-table-timeline td{padding:14px 15px;font-size:.9rem;line-height:1.7}
  body.single-post .bp-table.bp-table-timeline td strong{font-size:.95rem}
}


/* =========================================================
   DEMMA 0.9.0 — CONTROLLED REBUILD
   Base: 0.8.4
   Keep 0.8.4 CAST / offering table / timeline untouched.
   Import only the 0.8.6 heading + sponsor improvements and
   the 0.8.7 BP-text shadow correction.
   ========================================================= */

/* Complete semantic tokens used by the single-post heading system. */
body[class*="demma-preset-"]{
  --demma-link:var(--demma-primary);
  --demma-link-hover:var(--demma-primary-hover);
  --demma-sidebar-bg:var(--demma-surface);
}

/* ---------- 0.8.6 heading treatment only ---------- */

/* NIGHTOUT / PLAYPEN */
body.demma-preset-nightout #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-nightout #page-content h2.BP-title{
  display:block!important;width:100%!important;margin:24px 0 40px!important;padding:0 0 14px!important;
  color:#fff!important;text-shadow:none!important
}
body.demma-preset-nightout #page-content h2.BP-title::after{
  content:""!important;display:block!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:2px!important;
  background:linear-gradient(90deg,#ff2400,#e81d1d,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3)!important;
  background-size:500% 100%!important;animation:demma-nightout-rainbow 18s ease infinite!important
}
body.demma-preset-nightout #page-content h3.BP-subtitle{
  padding:0 0 10px!important;color:#fff!important;text-shadow:none!important;border-bottom:1px solid rgba(255,255,255,.18)!important
}
body.demma-preset-nightout #page-content h3.BP-subtitle::after{
  content:""!important;display:block!important;position:absolute!important;left:0!important;bottom:-1px!important;width:92px!important;height:2px!important;
  background:linear-gradient(90deg,#ff2400,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3)!important
}
body.demma-preset-nightout #page-content h4.BP-komidashi{
  padding-left:14px!important;color:#f3f3f3!important;text-shadow:none!important;border-left:3px solid #e61673!important
}

/* MANHOLE / BEAREST PEAK */
body.demma-preset-manhole #page-content h2.BP-title{
  display:table!important;width:auto!important;margin:24px auto 40px!important;padding:0!important
}

/* KINGKONG-BARBIE */
body.demma-preset-kingkong-barbie.single-post #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-kingkong-barbie.single-post #page-content h2.BP-title{
  display:inline-block!important;width:auto!important;margin:24px 0 40px!important;padding:0!important;
  color:#111!important;text-transform:uppercase!important;font-weight:900!important;letter-spacing:-.02em!important;text-shadow:3px 3px 0 #fff!important
}
body.demma-preset-kingkong-barbie.single-post #page-content h3.BP-subtitle{
  display:inline-block!important;padding:.12em .42em!important;color:#111!important;background:#fff!important;border:2px solid #111!important;
  box-shadow:5px 5px 0 #f15aa6!important;text-shadow:none!important
}
body.demma-preset-kingkong-barbie.single-post #page-content h4.BP-komidashi{
  display:inline-block!important;padding:0 .25em .12em!important;color:#111!important;border-bottom:5px solid #ffcf00!important;text-shadow:none!important
}

/* MENTHOL-CANDY */
body.demma-preset-menthol-candy.single-post #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-menthol-candy.single-post #page-content h2.BP-title{
  display:inline-block!important;width:auto!important;margin:24px 0 40px!important;padding:.35em 1.25em!important;
  border-radius:6px!important;background:#ffe135!important;color:#13251f!important;box-shadow:7px 7px 0 #ff2f92!important;text-shadow:none!important
}
body.demma-preset-menthol-candy.single-post #page-content h3.BP-subtitle{
  display:inline-block!important;padding:.24em .7em!important;border-radius:6px!important;background:#f4fff9!important;color:#13251f!important;
  border:2px solid #ff2f92!important;box-shadow:4px 4px 0 #9ce8cf!important;text-shadow:none!important
}
body.demma-preset-menthol-candy.single-post #page-content h4.BP-komidashi{
  padding-left:12px!important;color:#13251f!important;border-left:4px solid #ff2f92!important;text-shadow:none!important
}

/* BOILER ROOM */
body.demma-preset-boiler-room #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-boiler-room #page-content h2.BP-title{
  display:block!important;width:100%!important;margin:24px 0 40px!important;padding:0!important;
  color:#fff!important;text-transform:uppercase!important;letter-spacing:.08em!important;text-shadow:4px 3px 0 #ad1b25!important
}
body.demma-preset-boiler-room #page-content h3.BP-subtitle{
  padding:0!important;color:#fff!important;text-transform:uppercase!important;letter-spacing:.07em!important;text-shadow:3px 2px 0 #ad1b25!important
}
body.demma-preset-boiler-room #page-content h4.BP-komidashi{
  padding:0!important;color:#f2f2f2!important;text-transform:uppercase!important;letter-spacing:.06em!important;text-shadow:2px 2px 0 #ad1b25!important
}

/* COLOR YOURSELF */
body.demma-preset-color-yourself.single-post #page-content h2.BP-title .BP-mark{border-color:var(--demma-primary)!important}
body.demma-preset-color-yourself.single-post #page-content h3.BP-subtitle .BP-mark{background:var(--demma-primary)!important}
body.demma-preset-color-yourself.single-post #page-content h4.BP-komidashi .BP-mark{border-color:var(--demma-primary)!important}

/* 0.8.6 H2 alignment improvement. */
@media (min-width:769px){
  .BPOutBox h2.BP-title{display:table!important;margin:32px auto 46px!important;text-align:center!important}
}
@media (max-width:768px){
  .BPOutBox h2.BP-title{display:block!important;margin:22px 0 30px!important;text-align:left!important}
  body.demma-preset-nightout #page-content h2.BP-title,
  body.demma-preset-boiler-room #page-content h2.BP-title{padding-left:0!important}
  body.demma-preset-menthol-candy.single-post #page-content h2.BP-title{padding:.35em .8em!important}
}

/* ---------- 0.12.0 sponsor treatment: count-aware percentage grid ---------- */

/* 協賛リスト全体 */
.BPBox .bp-sponsor-list{
  width:100% !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  justify-content:space-between !important;
  align-items:center !important;
  margin:28px auto 10px !important;
  padding:18px 0 !important;
  box-sizing:border-box !important;
}

/* 各ロゴ枠（見えない正方形の枠を作る） */
.BPBox .bp-sponsor-item{
  flex:1 1 0 !important;
  max-width:200px !important;
  aspect-ratio:1 / 1 !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
}

/* ロゴ本体（正方形枠の中で最大サイズを揃える） */
.BPBox .bp-sponsor-item img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:auto !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* Boiler Roomなど暗背景プリセット */
body:is(
  .demma-preset-manhole,
  .demma-preset-nightout,
  .demma-preset-boiler-room,
  .demma-preset-color-yourself
) .BPBox .bp-sponsor-item img{
  filter:grayscale(1) brightness(0) invert(1) !important;
}

/* 個別ロゴの縦位置補正リセット */
.BPBox :is(
  .bp-sponsor-bearclinic,
  .bp-sponsor-broadway,
  .bp-sponsor-nothosaur,
  .bp-sponsor-doubleh,
  .bp-sponsor-dengmang
) img{
  transform:none !important;
}

/* ---------- 0.9.3 span cleanup ----------
   BP-text is a structural wrapper only. Do not assign visual decoration
   (shadow, border, background, box-shadow, filter, transform, etc.) here.
   Heading appearance belongs to h1/h2/h3/h4 selectors.
--------------------------------------------------- */

/* NIGHTOUT / PLAYPEN — follow the front-page rainbow-line language */
body.demma-preset-nightout #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-nightout #page-content h2.BP-title{
  position:relative!important;display:table!important;width:auto!important;margin:32px auto 46px!important;padding:0 0 14px!important;
  color:#fff!important;text-align:center!important;text-shadow:none!important
}
body.demma-preset-nightout #page-content h2.BP-title::after{
  content:""!important;display:block!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:2px!important;
  background:linear-gradient(90deg,#ff2400,#e81d1d,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3)!important;
  background-size:500% 100%!important;animation:demma-nightout-rainbow 18s ease infinite!important
}
body.demma-preset-nightout #page-content h3.BP-subtitle{
  position:relative!important;padding:0 0 10px!important;color:#fff!important;text-shadow:none!important;border-bottom:1px solid rgba(255,255,255,.18)!important
}
body.demma-preset-nightout #page-content h3.BP-subtitle::after{
  content:""!important;display:block!important;position:absolute!important;left:0!important;bottom:-1px!important;width:92px!important;height:2px!important;
  background:linear-gradient(90deg,#ff2400,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3)!important
}
body.demma-preset-nightout #page-content h4.BP-komidashi{
  padding-left:14px!important;color:#f3f3f3!important;text-shadow:none!important;border-left:3px solid #e61673!important
}

/* MANHOLE / BEAREST PEAK — preserve the completed BP heading system */
body.demma-preset-manhole #page-content h2.BP-title{
  display:table!important;width:auto!important;margin:32px auto 46px!important;text-align:center!important;color:#eee!important;
  text-shadow:0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94)!important
}
body.demma-preset-manhole #page-content h3.BP-subtitle{
  color:#eee!important;text-shadow:0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94)!important
}
body.demma-preset-manhole #page-content h4.BP-komidashi{color:#ccc!important;text-shadow:none!important}

/* KINGKONG-BARBIE — front-page graphic treatment, scaled by hierarchy */
body.demma-preset-kingkong-barbie.single-post #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-kingkong-barbie.single-post #page-content h2.BP-title{
  display:table!important;width:auto!important;margin:32px auto 46px!important;padding:0!important;text-align:center!important;
  color:#111!important;text-transform:uppercase!important;font-weight:900!important;letter-spacing:-.02em!important;text-shadow:3px 3px 0 #fff!important
}
body.demma-preset-kingkong-barbie.single-post #page-content h3.BP-subtitle{
  display:inline-block!important;padding:.12em .42em!important;color:#111!important;background:#fff!important;border:2px solid #111!important;
  box-shadow:5px 5px 0 #f15aa6!important;text-shadow:none!important
}
body.demma-preset-kingkong-barbie.single-post #page-content h4.BP-komidashi{
  display:inline-block!important;padding:0 .25em .12em!important;color:#111!important;border-bottom:5px solid #ffcf00!important;text-shadow:none!important
}

/* MENTHOL-CANDY — front-page candy label treatment */
body.demma-preset-menthol-candy.single-post #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-menthol-candy.single-post #page-content h2.BP-title{
  display:table!important;width:auto!important;margin:32px auto 46px!important;padding:.35em 1.25em!important;text-align:center!important;
  border-radius:6px!important;background:#ffe135!important;color:#13251f!important;box-shadow:7px 7px 0 #ff2f92!important;text-shadow:none!important
}
body.demma-preset-menthol-candy.single-post #page-content h3.BP-subtitle{
  display:inline-block!important;padding:.24em .7em!important;border-radius:6px!important;background:#f4fff9!important;color:#13251f!important;
  border:2px solid #ff2f92!important;box-shadow:4px 4px 0 #9ce8cf!important;text-shadow:none!important
}
body.demma-preset-menthol-candy.single-post #page-content h4.BP-komidashi{
  padding-left:12px!important;color:#13251f!important;border-left:4px solid #ff2f92!important;text-shadow:none!important
}

/* BOILER ROOM — exactly the front-page white type + red offset shadow language.
   No BP diamond/triangle is added here. */
body.demma-preset-boiler-room #page-content :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-boiler-room #page-content h2.BP-title{
  display:table!important;width:auto!important;margin:32px auto 46px!important;padding:0!important;text-align:center!important;
  color:#fff!important;text-transform:uppercase!important;letter-spacing:.08em!important;text-shadow:4px 3px 0 #ad1b25!important
}
body.demma-preset-boiler-room #page-content h3.BP-subtitle{
  padding:0!important;color:#fff!important;text-transform:uppercase!important;letter-spacing:.07em!important;text-shadow:3px 2px 0 #ad1b25!important
}
body.demma-preset-boiler-room #page-content h4.BP-komidashi{
  padding:0!important;color:#f2f2f2!important;text-transform:uppercase!important;letter-spacing:.06em!important;text-shadow:2px 2px 0 #ad1b25!important
}

/* COLOR YOURSELF — keep BP geometry, use user-selected preset colour */
body.demma-preset-color-yourself.single-post #page-content h2.BP-title{display:table!important;width:auto!important;margin:32px auto 46px!important;text-align:center!important}
body.demma-preset-color-yourself.single-post #page-content h2.BP-title .BP-mark{border-color:var(--demma-primary)!important;background:var(--demma-page-bg)!important}
body.demma-preset-color-yourself.single-post #page-content h3.BP-subtitle .BP-mark{background:var(--demma-primary)!important}
body.demma-preset-color-yourself.single-post #page-content h4.BP-komidashi .BP-mark{border-color:var(--demma-primary)!important}

@media(max-width:768px){
  .BPOutBox h2.BP-title{display:block!important;width:100%!important;margin:22px 0 30px!important;text-align:left!important}
  body.demma-preset-nightout #page-content h2.BP-title,
  body.demma-preset-boiler-room #page-content h2.BP-title{padding-left:0!important}
  body.demma-preset-menthol-candy.single-post #page-content h2.BP-title{display:inline-block!important;width:auto!important;padding:.35em .8em!important}
  body.demma-preset-kingkong-barbie.single-post #page-content h2.BP-title{display:inline-block!important;width:auto!important}
}

/* ---------- 0.9.9 BPBox-scoped heading system ----------
   Heading presentation belongs to the BPBox component, not only single posts.
   This makes the same preset heading treatment available on posts and pages.
--------------------------------------------------- */

/* NIGHTOUT / PLAYPEN */
body.demma-preset-nightout .BPBox :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-nightout .BPBox h2.BP-title{position:relative!important;display:table!important;width:auto!important;margin:32px auto 46px!important;padding:0 0 14px!important;color:#fff!important;text-align:center!important;text-shadow:none!important}
body.demma-preset-nightout .BPBox h2.BP-title::after{content:""!important;display:block!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:2px!important;background:linear-gradient(90deg,#ff2400,#e81d1d,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3)!important;background-size:500% 100%!important;animation:demma-nightout-rainbow 18s ease infinite!important}
body.demma-preset-nightout .BPBox h3.BP-subtitle{position:relative!important;padding:0 0 10px!important;color:#fff!important;text-shadow:none!important;border-bottom:1px solid rgba(255,255,255,.18)!important}
body.demma-preset-nightout .BPBox h3.BP-subtitle::after{content:""!important;display:block!important;position:absolute!important;left:0!important;bottom:-1px!important;width:92px!important;height:2px!important;background:linear-gradient(90deg,#ff2400,#e8b71d,#1de840,#1ddde8,#2b1de8,#dd00f3)!important}
body.demma-preset-nightout .BPBox h4.BP-komidashi{padding-left:14px!important;color:#f3f3f3!important;text-shadow:none!important;border-left:3px solid #e61673!important}

/* MANHOLE / BEAREST PEAK */
body.demma-preset-manhole .BPBox h2.BP-title{display:table!important;width:auto!important;margin:32px auto 46px!important;text-align:center!important;color:#eee!important;text-shadow:0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94)!important}
body.demma-preset-manhole .BPBox h3.BP-subtitle{color:#eee!important;text-shadow:0 0 3px rgba(0,0,0,.94),0 0 3px rgba(0,0,0,.94)!important}
body.demma-preset-manhole .BPBox h4.BP-komidashi{color:#ccc!important;text-shadow:none!important}

/* KINGKONG-BARBIE */
body.demma-preset-kingkong-barbie .BPBox :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-kingkong-barbie .BPBox h2.BP-title{display:table!important;width:auto!important;margin:32px auto 46px!important;padding:0!important;text-align:center!important;color:#111!important;text-transform:uppercase!important;font-weight:900!important;letter-spacing:-.02em!important;text-shadow:3px 3px 0 #fff!important}
body.demma-preset-kingkong-barbie .BPBox h3.BP-subtitle{display:inline-block!important;padding:.12em .42em!important;color:#111!important;background:#fff!important;border:2px solid #111!important;box-shadow:5px 5px 0 #f15aa6!important;text-shadow:none!important}
body.demma-preset-kingkong-barbie .BPBox h4.BP-komidashi{display:inline-block!important;padding:0 .25em .12em!important;color:#111!important;border-bottom:5px solid #ffcf00!important;text-shadow:none!important}

/* MENTHOL-CANDY */
body.demma-preset-menthol-candy .BPBox :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-menthol-candy .BPBox h2.BP-title{display:table!important;width:auto!important;margin:32px auto 46px!important;padding:.35em 1.25em!important;text-align:center!important;border-radius:6px!important;background:#ffe135!important;color:#13251f!important;box-shadow:7px 7px 0 #ff2f92!important;text-shadow:none!important}
body.demma-preset-menthol-candy .BPBox h3.BP-subtitle{display:inline-block!important;padding:.24em .7em!important;border-radius:6px!important;background:#f4fff9!important;color:#13251f!important;border:2px solid #ff2f92!important;box-shadow:4px 4px 0 #9ce8cf!important;text-shadow:none!important}
body.demma-preset-menthol-candy .BPBox h4.BP-komidashi{padding-left:12px!important;color:#13251f!important;border-left:4px solid #ff2f92!important;text-shadow:none!important}

/* BOILER ROOM */
body.demma-preset-boiler-room .BPBox :is(h2.BP-title,h3.BP-subtitle,h4.BP-komidashi) .BP-mark{display:none!important}
body.demma-preset-boiler-room .BPBox h2.BP-title{display:table!important;width:auto!important;margin:32px auto 46px!important;padding:0!important;text-align:center!important;color:#fff!important;text-transform:uppercase!important;letter-spacing:.08em!important;text-shadow:4px 3px 0 #ad1b25!important}
body.demma-preset-boiler-room .BPBox h3.BP-subtitle{padding:0!important;color:#fff!important;text-transform:uppercase!important;letter-spacing:.07em!important;text-shadow:3px 2px 0 #ad1b25!important}
body.demma-preset-boiler-room .BPBox h4.BP-komidashi{padding:0!important;color:#f2f2f2!important;text-transform:uppercase!important;letter-spacing:.06em!important;text-shadow:2px 2px 0 #ad1b25!important}

/* COLOR YOURSELF */
body.demma-preset-color-yourself .BPBox h2.BP-title{display:table!important;width:auto!important;margin:32px auto 46px!important;text-align:center!important}
body.demma-preset-color-yourself .BPBox h2.BP-title .BP-mark{border-color:var(--demma-primary)!important;background:var(--demma-page-bg)!important}
body.demma-preset-color-yourself .BPBox h3.BP-subtitle .BP-mark{background:var(--demma-primary)!important}
body.demma-preset-color-yourself .BPBox h4.BP-komidashi .BP-mark{border-color:var(--demma-primary)!important}

/* ---------- 0.9.11 inline-span cleanup ----------
   Heading decoration stays on h3/h4 themselves.
   Only author-authored classless spans lose text-shadow.
--------------------------------------------------- */
body .BPBox h3.BP-subtitle span:not([class]),
body .BPBox h4.BP-komidashi span:not([class]){
  text-shadow:none!important;
}

@media(max-width:768px){
  body .BPBox h2.BP-title{display:block!important;width:100%!important;margin:22px 0 30px!important;text-align:left!important}
  body.demma-preset-nightout .BPBox h2.BP-title,
  body.demma-preset-boiler-room .BPBox h2.BP-title{padding-left:0!important}
  body.demma-preset-menthol-candy .BPBox h2.BP-title{display:inline-block!important;width:auto!important;padding:.35em .8em!important}
  body.demma-preset-kingkong-barbie .BPBox h2.BP-title{display:inline-block!important;width:auto!important}
}

/* ---------- 0.12.5 heading class size adjustment ---------- */
.BPOutBox .header-wrapper h1.hero-title.BP-h1{
  font-size:49pt!important;
}

.BPOutBox h2.BP-title{
  font-size:40pt!important;
}

.BPBox h3.BP-subtitle{
  font-size:30pt!important;
}

.BPBox h4.BP-komidashi{
  font-size:27pt!important;
}

@media(max-width:768px){
  .BPOutBox .header-wrapper h1.hero-title.BP-h1{
    font-size:39pt!important;
  }

  .BPOutBox h2.BP-title{
    font-size:30pt!important;
  }

  .BPBox h3.BP-subtitle{
    font-size:24pt!important;
  }

  .BPBox h4.BP-komidashi{
    font-size:22pt!important;
  }
}

/* ---------- 0.12.6 front-page Hero title ---------- */
body.demma-front-page .header-homepage h1.hero-title{
  font-weight:700!important;
}

/* ---------- 0.12.10 BPBox heading scope fix ----------
   H2-H4 typography must work inside BPBox on both posts and pages.
   Preset-specific decoration (NIGHTOUT underline, left border, etc.)
   remains controlled by each preset block above.
--------------------------------------------------- */

body .BPBox h2.BP-title{
  
  font-size:40pt!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  line-height:1.28!important;
}

body .BPBox h3.BP-subtitle{
  
  font-size:30pt!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  line-height:1.38!important;
}

body .BPBox h4.BP-komidashi{
  
  font-size:27pt!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  line-height:1.38!important;
}

@media(max-width:768px){
  body .BPBox h2.BP-title{
    font-size:30pt!important;
  }

  body .BPBox h3.BP-subtitle{
    font-size:24pt!important;
  }

  body .BPBox h4.BP-komidashi{
    font-size:22pt!important;
  }
}

/* ---------- 0.12.18 NIGHTOUT BP-mark animation REAL FIX ----------
   Root cause fixed:
   background: ... !important also makes background-position important,
   so a background-position keyframe cannot move it.
   The rainbow now animates via filter:hue-rotate(), which is independent
   of the background shorthand and therefore actually animates.
------------------------------------------------------------------- */

@-webkit-keyframes nightout-bp-rainbow-hue{
  0%   {-webkit-filter:hue-rotate(0deg);filter:hue-rotate(0deg);}
  100% {-webkit-filter:hue-rotate(360deg);filter:hue-rotate(360deg);}
}
@keyframes nightout-bp-rainbow-hue{
  0%   {-webkit-filter:hue-rotate(0deg);filter:hue-rotate(0deg);}
  100% {-webkit-filter:hue-rotate(360deg);filter:hue-rotate(360deg);}
}

/* Kill NIGHTOUT's old underline/pseudo decorations at the actual article scope. */
body.demma-preset-nightout #page-content .post-content-inner h2.BP-title::before,
body.demma-preset-nightout #page-content .post-content-inner h2.BP-title::after,
body.demma-preset-nightout #page-content .post-content-inner h2.BP-title span::before,
body.demma-preset-nightout #page-content .post-content-inner h2.BP-title span::after,
body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle::before,
body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle::after,
body.demma-preset-nightout #page-content .post-content-inner h4.BP-komidashi::before,
body.demma-preset-nightout #page-content .post-content-inner h4.BP-komidashi::after{
  content:none!important;
  display:none!important;
}

/* H2 — original rainbow diamond, animated by hue rotation */
body.demma-preset-nightout #page-content .post-content-inner h2.BP-title{
  position:relative!important;
  
  font-size:40pt!important;
  letter-spacing:.08em!important;
  color:#eee!important;
  font-weight:900!important;
  display:table!important;
  margin:24px auto 40px!important;
  padding-left:0!important;
  line-height:1.28!important;
  box-sizing:border-box!important;
  border:0!important;
  background:none!important;
  text-shadow:
    0 0 3px rgba(0,0,0,.94),
    0 0 3px rgba(0,0,0,.94),
    0 0 3px rgba(0,0,0,.94),
    0 0 3px rgba(0,0,0,.94)!important;
}

body.demma-preset-nightout #page-content .post-content-inner h2.BP-title .BP-text{
  position:relative!important;
  z-index:2!important;
}

body.demma-preset-nightout #page-content .post-content-inner h2.BP-title .BP-mark{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:-12px!important;
  top:.04em!important;
  width:30px!important;
  height:30px!important;
  border:3px solid transparent!important;
  transform:rotate(45deg)!important;
  transform-origin:center!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
  z-index:1!important;
  background:
    linear-gradient(#070707,#070707) padding-box,
    linear-gradient(90deg,#ff2e63,#ff7a3d,#ffd43b,#2ee66b,#18d8ff,#4d6bff,#b34dff,#ff2e63) border-box!important;
  box-shadow:0 0 14px rgba(255,255,255,.25)!important;
  -webkit-animation:nightout-bp-rainbow-hue 3s linear infinite!important;
  animation:nightout-bp-rainbow-hue 3s linear infinite!important;
  will-change:filter!important;
}

/* H3 — original rainbow triangle, same visible color animation */
body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle{
  position:relative!important;
  
  font-size:30pt!important;
  letter-spacing:.08em!important;
  color:#eee!important;
  font-weight:800!important;
  padding-left:8px!important;
  line-height:1.38!important;
  margin:0 0 1.25em!important;
  box-sizing:border-box!important;
  text-align:left!important;
  border:0!important;
  background:none!important;
  text-shadow:
    0 0 3px rgba(0,0,0,.94),
    0 0 3px rgba(0,0,0,.94),
    0 0 3px rgba(0,0,0,.94),
    0 0 3px rgba(0,0,0,.94)!important;
}

body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle .BP-text{
  position:relative!important;
  z-index:2!important;
}

body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle .BP-mark{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  width:22px!important;
  height:22px!important;
  background:linear-gradient(90deg,#ff2e63,#ff7a3d,#ffd43b,#2ee66b,#18d8ff,#4d6bff,#b34dff,#ff2e63)!important;
  transform:rotate(45deg)!important;
  box-sizing:border-box!important;
  -webkit-clip-path:polygon(50% 0,100% 100%,0 100%)!important;
  clip-path:polygon(50% 0,100% 100%,0 100%)!important;
  pointer-events:none!important;
  z-index:1!important;
  box-shadow:0 0 12px rgba(255,255,255,.25)!important;
  -webkit-animation:nightout-bp-rainbow-hue 3s linear infinite!important;
  animation:nightout-bp-rainbow-hue 3s linear infinite!important;
  will-change:filter!important;
}

/* H4 — static pink outline diamond */
body.demma-preset-nightout #page-content .post-content-inner h4.BP-komidashi{
  position:relative!important;
  
  font-size:27pt!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  color:#ccc!important;
  padding-left:19px!important;
  line-height:1.38!important;
  margin-top:1.9em!important;
  box-sizing:border-box!important;
  text-align:left!important;
  border:0!important;
  background:none!important;
  text-shadow:none!important;
}

body.demma-preset-nightout #page-content .post-content-inner h4.BP-komidashi .BP-text{
  position:relative!important;
  z-index:2!important;
}

body.demma-preset-nightout #page-content .post-content-inner h4.BP-komidashi .BP-mark{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  left:0!important;
  top:.32em!important;
  width:12px!important;
  height:12px!important;
  border:2px solid #f08a9a!important;
  background:transparent!important;
  transform:rotate(45deg)!important;
  transform-origin:center!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
  z-index:1!important;
  -webkit-animation:none!important;
  animation:none!important;
  -webkit-filter:none!important;
  filter:none!important;
}

@media(max-width:768px){
  body.demma-preset-nightout #page-content .post-content-inner h2.BP-title{
    font-size:30pt!important;
    display:block!important;
    margin:18px 0 26px!important;
    padding-left:22px!important;
    text-align:left!important;
    line-height:1.35!important;
  }

  body.demma-preset-nightout #page-content .post-content-inner h2.BP-title .BP-mark{
    left:8px!important;
    width:26px!important;
    height:26px!important;
    top:.10em!important;
  }

  body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle{
    font-size:24pt!important;
  }

  body.demma-preset-nightout #page-content .post-content-inner h3.BP-subtitle .BP-mark{
    top:-.05em!important;
  }

  body.demma-preset-nightout #page-content .post-content-inner h4.BP-komidashi{
    font-size:22pt!important;
  }
}

/* ---------- 0.12.24 heading font ----------
   Simple global heading rule requested by user.
------------------------------------------- */
h1,
h2,
h3,
h4,
h5 {
  font-family:"Zen Old Mincho",serif;
  font-style:normal;
}

/* ---------- 0.12.25 hero title size ----------
   Website H1 hero title size.
---------------------------------------------- */
h1.hero-title{
  font-size:68px!important;
}

