/* DE Monthly Magazine System 2.0.0
   One stable class system for reusable WPBakery monthly magazine posts. */
.de-monthly{
  --de-accent:#40c3b1;--de-accent-soft:#eaf8f6;--de-secondary:#a1bfc7;--de-secondary-soft:#f0f6f8;
  --de-ink:#394244;--de-text:#62695a;--de-line:#e6e9e7;--de-paper:#fff;--de-warm:#faf9f7;
  --de-h1:clamp(32px, calc(27.543px + 1.1429vw), 44px);--de-h2:clamp(30px,2.25vw,40px);--de-h3:19px;--de-body:15px;--de-eyebrow:11px;
  --de-shell:1180px;--de-radius:10px;--de-ease:cubic-bezier(.22,1,.36,1);
  color:var(--de-text);font-family:Poppins,sans-serif;font-size:var(--de-body);line-height:1.72;background:#fff;
}
.de-monthly *{box-sizing:border-box}.de-monthly img{max-width:100%;height:auto}.de-monthly a{text-decoration:none}.de-monthly p{margin:0 0 18px}.de-monthly h1,.de-monthly h2,.de-monthly h3{color:var(--de-ink);font-family:inherit}.de-monthly h2{font-size:var(--de-h2);font-weight:500;letter-spacing:-.045em;line-height:1.04;margin:0 0 24px}.de-monthly h2 em{color:var(--de-accent);font-style:normal}.de-monthly h3{font-size:var(--de-h3);font-weight:500;line-height:1.32;margin:0 0 14px}.de-monthly .shell{width:min(calc(100% - 64px),var(--de-shell));margin:0 auto}.de-monthly .eyebrow{margin:0 0 13px;color:var(--de-accent);font-size:var(--de-eyebrow);font-weight:600;letter-spacing:.17em;line-height:1.4;text-transform:uppercase}.de-monthly section:not(.de-magazine-header){scroll-margin-top:110px}

/* Header */
.de-monthly .de-magazine-header{background:#fff;color:var(--de-ink);overflow:hidden;padding:clamp(38px,5vw,76px) 0 clamp(54px,7vw,96px)}
.de-monthly .de-magazine-header__shell{width:min(calc(100% - 64px),var(--de-shell));margin:0 auto}
.de-monthly .de-magazine-header__meta{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(18px,3vw,42px);align-items:center;animation:deMagazineMeta .6s var(--de-ease) both}
.de-monthly .de-magazine-header__label,.de-monthly .de-magazine-header__date{margin:0;color:var(--de-text);font-size:12px;line-height:1.3;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.de-monthly .de-magazine-header__date{letter-spacing:.08em;text-align:right}.de-monthly .de-magazine-header__rule{display:block;height:1px;background:var(--de-accent);transform-origin:left center;animation:deMagazineRule .7s .18s var(--de-ease) both}
.de-monthly .de-magazine-header__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);align-items:center;gap:clamp(48px,8vw,110px);margin-top:clamp(46px,7vw,88px)}
.de-monthly .de-magazine-header__copy{max-width:710px}.de-monthly .de-magazine-header__kicker{margin:0 0 17px;color:var(--de-text);font-size:var(--de-eyebrow);letter-spacing:.17em;text-transform:uppercase;animation:deMagazineLift .8s .28s var(--de-ease) both}
.de-monthly .de-magazine-header__title{margin:0;color:var(--de-ink);font-weight:500;letter-spacing:-.07em;animation:deMagazineLift .9s .35s var(--de-ease) both}
.de-monthly .de-magazine-header__title span,.de-monthly .de-magazine-header__title em{display:block}.de-monthly .de-magazine-header__title em{color:var(--de-accent);font-style:normal;}
.de-monthly .de-magazine-header__intro{max-width:570px;margin:28px 0 0;color:var(--de-text);font-size:clamp(14px,1.2vw,18px);line-height:1.68;animation:deMagazineLift .8s .54s var(--de-ease) both}
.de-monthly .de-magazine-header__visual{position:relative;margin:0;padding:0 26px 26px 0;animation:deMagazineVisual 1.25s .24s var(--de-ease) both}.de-monthly .de-magazine-header__frame{position:absolute;inset:-30px 0 0 54px;border:2px solid var(--de-secondary);pointer-events:none}.de-monthly .de-magazine-header__visual img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#f4f4f2}
@keyframes deMagazineMeta{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes deMagazineRule{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes deMagazineLift{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes deMagazineVisual{from{opacity:0;transform:translateY(14px) scale(1.045)}to{opacity:1;transform:none}}

/* Shared links/buttons */
.de-monthly .actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px}.de-monthly .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:43px;padding:10px 18px;border:1px solid var(--de-accent);border-radius:9px;font-size:13px;font-weight:500;line-height:1.3;transition:.2s ease}.de-monthly .btn-primary{background:var(--de-accent);color:#fff!important}.de-monthly .btn-primary:hover{filter:brightness(.96)}.de-monthly .btn-secondary{background:transparent;color:var(--de-ink)!important;border-color:var(--de-secondary)}.de-monthly .text-link{display:inline-flex;align-items:center;gap:7px;color:var(--de-ink)!important;font-size:13px;font-weight:500;border-bottom:1px solid var(--de-accent);padding-bottom:3px}

/* Monthly navigation: two independent groups */
.de-monthly .magazine-nav{padding:72px 0 82px;background:#fff}.de-monthly .magazine-nav__group + .magazine-nav__group{margin-top:66px}.de-monthly .magazine-nav__head{display:grid;grid-template-columns:minmax(0,.85fr) minmax(280px,1.15fr);gap:60px;align-items:end;margin-bottom:28px}.de-monthly .magazine-nav__head h2{margin-bottom:0}.de-monthly .magazine-nav__intro{max-width:590px;margin:0;color:var(--de-text)}
.de-monthly .offer-nav-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.de-monthly .offer-nav-card{position:relative;display:grid;grid-template-columns:1fr auto;gap:24px;min-height:170px;padding:26px 28px;border:1px solid var(--de-line);background:var(--de-accent-soft);color:var(--de-ink)!important;overflow:hidden}.de-monthly .offer-nav-card:nth-child(even){background:var(--de-secondary-soft)}.de-monthly .offer-nav-card__kicker{display:block;color:var(--de-accent);font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}.de-monthly .offer-nav-card strong{display:block;font-size:clamp(22px,2.4vw,31px);line-height:1.12;font-weight:500;letter-spacing:-.035em}.de-monthly .offer-nav-card small{display:block;margin-top:12px;color:var(--de-text);font-size:13px;line-height:1.5}.de-monthly .offer-nav-card__value{align-self:start;color:var(--de-accent);font-size:clamp(24px,3vw,38px);font-weight:500;line-height:1}.de-monthly .offer-nav-card__arrow{position:absolute;right:26px;bottom:21px;font-size:21px;color:var(--de-ink)}
.de-monthly .topic-nav{border-top:1px solid var(--de-line)}.de-monthly .topic-nav-row{position:relative;display:block!important;width:100%!important;min-width:0!important;padding:20px 58px 20px 54px;border-bottom:1px solid var(--de-line);color:var(--de-ink)!important}.de-monthly .topic-nav-row:hover{background:var(--de-warm)}.de-monthly .topic-nav-row__number{position:absolute;left:0;top:22px;width:34px;color:var(--de-accent);font-size:12px;font-weight:600}.de-monthly .topic-nav-row__copy{display:block!important;width:auto!important;min-width:0!important;max-width:none!important}.de-monthly .topic-nav-row strong{display:block!important;width:auto!important;max-width:none!important;font-size:18px;line-height:1.35;font-weight:500;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}.de-monthly .topic-nav-row small{display:block!important;width:auto!important;max-width:none!important;margin-top:3px;color:var(--de-text);font-size:13px;line-height:1.5;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}.de-monthly .topic-nav-row__arrow{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:21px;color:var(--de-text)}

/* Editorial blocks */
.de-monthly .editorial-section,.de-monthly .image-led-section{padding:86px 0}.de-monthly .editorial-section--soft{background:var(--de-secondary-soft)}.de-monthly .editorial-grid,.de-monthly .image-led-grid{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);gap:clamp(58px,8vw,112px);align-items:center}.de-monthly .editorial-grid--reverse,.de-monthly .editorial-section--reverse .editorial-grid{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}.de-monthly .editorial-section--reverse .editorial-copy{order:1}.de-monthly .editorial-section--reverse .editorial-media,.de-monthly .editorial-section--reverse .event-card{order:2}.de-monthly .editorial-copy{min-width:0}.de-monthly .editorial-copy>p:not(.eyebrow){max-width:680px}.de-monthly .editorial-media{position:relative;min-width:0;padding:20px 20px 0 0}.de-monthly .media-frame{position:relative}.de-monthly .media-frame:before{content:"";position:absolute;inset:-18px -18px 18px 18px;border:1px solid var(--de-secondary);z-index:0}.de-monthly .media-frame img{position:relative;z-index:1;display:block;width:100%;object-fit:cover;background:#f4f4f2}.de-monthly .media-frame--tall img{aspect-ratio:4/5}.de-monthly .media-frame--wide img{aspect-ratio:4/3}.de-monthly .vertical-label{position:absolute;left:-39px;bottom:24px;color:var(--de-text);font-size:9px;letter-spacing:.16em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg)}
.de-monthly .editorial-list{margin:30px 0 28px;border-top:1px solid var(--de-line)}.de-monthly .editorial-list-item{position:relative;display:block!important;min-height:68px;padding:18px 0 16px 48px;border-bottom:1px solid var(--de-line)}.de-monthly .editorial-list-item>span{position:absolute;left:0;top:19px;color:var(--de-accent);font-size:12px;font-weight:600}.de-monthly .editorial-list-item p{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0;font-size:14px;line-height:1.55;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}.de-monthly .editorial-list-item strong{font-weight:600;color:var(--de-ink)}

/* Offer panels */
.de-monthly .offer-section{padding:74px 0}.de-monthly .offer-panel{padding:clamp(30px,5vw,58px);background:var(--de-accent-soft);border-top:1px solid var(--de-accent);border-bottom:1px solid var(--de-accent)}.de-monthly .offer-panel--secondary{background:var(--de-secondary-soft);border-color:var(--de-secondary)}.de-monthly .offer-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:30px}.de-monthly .offer-mark{color:var(--de-accent);font-size:clamp(28px,4vw,52px);font-weight:500;letter-spacing:-.05em;line-height:1}.de-monthly .offer-content{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:clamp(42px,7vw,96px);align-items:start}.de-monthly .offer-validity{margin:8px 0 0;color:var(--de-text);font-size:12px;letter-spacing:.05em}.de-monthly .offer-copy{min-width:0}.de-monthly .offer-code{display:inline-flex;margin-top:8px;padding:5px 10px;border:1px solid var(--de-accent);font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--de-ink)}

/* Image-led */
.de-monthly .image-led-grid{grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}.de-monthly .image-led-copy{max-width:660px}.de-monthly .image-led-figure{position:relative;margin:0 18px 20px 0}.de-monthly .image-led-figure:after{content:"";position:absolute;inset:-20px -20px 20px 20px;border:1px solid var(--de-secondary);z-index:0}.de-monthly .image-led-figure img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.de-monthly .image-led-figure figcaption{position:relative;z-index:2;margin-top:12px;color:var(--de-text);font-size:10px;letter-spacing:.12em;text-transform:uppercase}

/* Event */
.de-monthly .event-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:30px 0}.de-monthly .event-details>div{display:grid;grid-template-columns:auto 1fr;gap:14px;padding-top:16px;border-top:1px solid var(--de-line)}.de-monthly .event-details span{color:var(--de-accent);font-size:26px;line-height:1}.de-monthly .event-details p{margin:0;font-size:13px;line-height:1.5}.de-monthly .event-card{min-height:430px;padding:28px;border:1px solid var(--de-secondary);background:var(--de-secondary-soft);display:flex;flex-direction:column;justify-content:space-between}.de-monthly .event-card-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.de-monthly .event-orbit{display:grid;place-items:center;min-height:210px;position:relative;border:1px solid var(--de-secondary);border-radius:50%}.de-monthly .event-orbit span{position:absolute;font-size:11px}.de-monthly .event-orbit span:nth-child(1){top:18%;left:14%}.de-monthly .event-orbit span:nth-child(2){right:12%;top:48%}.de-monthly .event-orbit span:nth-child(3){bottom:16%;left:29%}.de-monthly .event-card-foot{margin:0;color:var(--de-ink);font-size:28px;line-height:1.2;letter-spacing:-.03em}.de-monthly .event-card-foot em{color:var(--de-accent);font-style:normal}

/* Articles */
.de-monthly .articles-section{padding:84px 0}.de-monthly .split-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);gap:60px;align-items:end;margin-bottom:36px}.de-monthly .split-intro h2{margin-bottom:0}.de-monthly .intro-copy{max-width:560px;margin:0}.de-monthly .article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.de-monthly .article-card{min-height:245px;padding:24px;border-top:1px solid var(--de-accent);background:#fff;display:flex;flex-direction:column}.de-monthly .article-card--tint{background:var(--de-secondary-soft)}.de-monthly .article-card>span{display:block;margin-bottom:44px;color:var(--de-accent);font-size:10px;letter-spacing:.13em;text-transform:uppercase}.de-monthly .article-card h3{margin-bottom:24px}.de-monthly .article-card .text-link{margin-top:auto;align-self:flex-start}

/* FAQ */
.de-monthly .faq-section{padding:82px 0;background:var(--de-accent-soft)}.de-monthly .faq-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(52px,8vw,108px)}.de-monthly .faq-intro{max-width:420px}.de-monthly .faq-list{border-top:1px solid rgba(57,66,68,.18)}.de-monthly .faq-list details{border-bottom:1px solid rgba(57,66,68,.18)}.de-monthly .faq-list summary{cursor:pointer;list-style:none;padding:20px 36px 20px 0;color:var(--de-ink);font-size:15px;font-weight:500;position:relative}.de-monthly .faq-list summary::-webkit-details-marker{display:none}.de-monthly .faq-list summary:after{content:"+";position:absolute;right:4px;top:18px;color:var(--de-accent);font-size:20px;font-weight:300}.de-monthly .faq-list details[open] summary:after{content:"–"}.de-monthly .faq-list details p{max-width:680px;padding:0 36px 20px 0;margin:0;font-size:14px}

/* Price + professional close */
.de-monthly .price-section{padding:82px 0;background:#354043;color:#fff}.de-monthly .price-section h2,.de-monthly .price-section .eyebrow{color:#fff}.de-monthly .price-inner{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:72px;align-items:center}.de-monthly .price-placeholder{padding:26px;background:#fff;color:var(--de-text);border-radius:4px}.de-monthly .price-placeholder p{margin-bottom:14px}.de-monthly .price-placeholder code{display:block;margin-bottom:18px;color:var(--de-ink)}
.de-monthly .professional-section{padding:76px 0 82px;background:#fff}.de-monthly .professional-inner{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:32px;align-items:center;border-top:1px solid var(--de-line);padding-top:42px}.de-monthly .professional-mark img{width:48px;display:block}.de-monthly .professional-inner h2{font-size:clamp(30px,3.5vw,48px);margin-bottom:16px}.de-monthly .professional-inner p:not(.eyebrow){max-width:720px;margin-bottom:0}

/* Countdown */
.de-monthly .de-countdown{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px;padding-top:18px;border-top:1px solid rgba(57,66,68,.16)}.de-monthly .de-countdown-label{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--de-text)}.de-monthly .de-countdown-values{display:flex;align-items:flex-start;gap:22px}.de-monthly .de-countdown-values span{display:grid;gap:2px;text-align:center;min-width:42px}.de-monthly .de-countdown-values b{color:var(--de-ink);font-size:24px;font-weight:500;line-height:1}.de-monthly .de-countdown-values small{color:var(--de-text);font-size:9px;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:900px){
 .de-monthly .de-magazine-header__grid,.de-monthly .editorial-grid,.de-monthly .editorial-grid--reverse,.de-monthly .image-led-grid,.de-monthly .offer-content,.de-monthly .faq-grid,.de-monthly .price-inner{grid-template-columns:1fr}
 .de-monthly .de-magazine-header__visual{max-width:620px}.de-monthly .editorial-section--reverse .editorial-copy,.de-monthly .editorial-section--reverse .editorial-media,.de-monthly .editorial-section--reverse .event-card{order:initial}
 .de-monthly .magazine-nav__head,.de-monthly .split-intro{grid-template-columns:1fr;gap:20px;align-items:start}.de-monthly .article-grid{grid-template-columns:1fr}.de-monthly .professional-inner{grid-template-columns:54px 1fr}.de-monthly .professional-inner>.text-link{grid-column:2}.de-monthly .offer-nav-grid{grid-template-columns:1fr}.de-monthly .vertical-label{display:none}
}
@media(max-width:820px){
 .de-monthly .shell,.de-monthly .de-magazine-header__shell{width:calc(100% - 32px)}
 .de-monthly .de-magazine-header{padding:28px 0 56px}.de-monthly .de-magazine-header__meta{grid-template-columns:1fr auto;gap:12px}.de-monthly .de-magazine-header__rule{grid-column:1/-1;grid-row:2}.de-monthly .de-magazine-header__label,.de-monthly .de-magazine-header__date{font-size:9px;letter-spacing:.12em}.de-monthly .de-magazine-header__grid{gap:38px;margin-top:48px}.de-monthly .de-magazine-header__title{}.de-monthly .de-magazine-header__intro{margin-top:20px;font-size:14px}.de-monthly .de-magazine-header__visual{padding:0 13px 13px 0}.de-monthly .de-magazine-header__frame{inset:-14px 0 0 24px;border-width:1px}
 .de-monthly .magazine-nav,.de-monthly .editorial-section,.de-monthly .image-led-section,.de-monthly .articles-section,.de-monthly .faq-section,.de-monthly .price-section,.de-monthly .professional-section{padding:58px 0}.de-monthly .magazine-nav__group+.magazine-nav__group{margin-top:48px}
 .de-monthly .offer-nav-card{min-height:145px;padding:22px}.de-monthly .offer-nav-card strong{font-size:24px}.de-monthly .offer-nav-card__value{font-size:28px}
 .de-monthly .topic-nav-row{padding:18px 42px 18px 40px}.de-monthly .topic-nav-row__number{top:20px}.de-monthly .topic-nav-row strong{font-size:16px}.de-monthly .topic-nav-row small{font-size:12px}
 .de-monthly .editorial-media{padding:12px 12px 0 0}.de-monthly .media-frame:before{inset:-12px -12px 12px 12px}.de-monthly .offer-panel{padding:28px 22px}.de-monthly .offer-meta{margin-bottom:24px}.de-monthly .event-details{grid-template-columns:1fr}.de-monthly .event-card{min-height:340px}.de-monthly .professional-inner{grid-template-columns:1fr}.de-monthly .professional-inner>.text-link{grid-column:auto}.de-monthly .professional-mark{display:none}.de-monthly .de-countdown{align-items:flex-start;flex-direction:column}.de-monthly .de-countdown-values{gap:18px}
}
@media(prefers-reduced-motion:reduce){.de-monthly .de-magazine-header *,.de-monthly .de-magazine-header *::before,.de-monthly .de-magazine-header *::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
/* Structured 2x2 professional index */
.de-monthly .treatment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--de-line);border-left:1px solid var(--de-line);margin:30px 0 28px}.de-monthly .treatment-item{position:relative;display:block!important;min-width:0!important;min-height:138px;padding:24px 22px 22px 54px;border-right:1px solid var(--de-line);border-bottom:1px solid var(--de-line)}.de-monthly .treatment-item>span{position:absolute;left:20px;top:25px;color:var(--de-accent);font-size:12px;font-weight:600}.de-monthly .treatment-item p{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0;font-size:13px;line-height:1.55;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}.de-monthly .treatment-item strong{display:block;margin-bottom:5px;color:var(--de-ink);font-size:15px;font-weight:600;line-height:1.35;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
@media(max-width:820px){.de-monthly .treatment-grid{grid-template-columns:1fr}.de-monthly .treatment-item{min-height:0;padding:20px 18px 18px 48px}.de-monthly .treatment-item>span{left:16px;top:21px}}

/* 2.1 — Campaign Feature: reusable editorial campaign navigation */
.de-monthly .campaign-feature{padding:78px 0 88px;background:#fff}
.de-monthly .campaign-feature__head{display:grid;grid-template-columns:minmax(0,.88fr) minmax(320px,1.12fr);gap:64px;align-items:end;margin-bottom:42px}
.de-monthly .campaign-feature__head h2{margin:0}
.de-monthly .campaign-feature__intro{max-width:600px;margin:0;color:var(--de-text);line-height:1.75}
.de-monthly .campaign-feature__grid{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);gap:clamp(46px,7vw,92px);align-items:stretch}
.de-monthly .campaign-feature__visual{position:relative;margin:0;padding:0 20px 22px 0;min-height:440px}
.de-monthly .campaign-feature__frame{position:absolute;inset:-18px 0 0 34px;border:2px solid var(--de-secondary);pointer-events:none}
.de-monthly .campaign-feature__visual img{position:relative;z-index:1;width:100%;height:100%;min-height:440px;aspect-ratio:4/5;object-fit:cover;display:block;background:var(--de-secondary-soft)}
.de-monthly .campaign-feature__placeholder{position:relative;z-index:1;display:grid;place-items:center;min-height:440px;aspect-ratio:4/5;background:var(--de-secondary-soft);color:var(--de-text);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.de-monthly .campaign-feature__visual figcaption{position:absolute;z-index:2;left:-22px;bottom:40px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--de-text)}
.de-monthly .campaign-feature__items{display:flex;flex-direction:column;border-top:1px solid var(--de-line)}
.de-monthly .campaign-feature__item{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:20px;align-items:center;min-height:190px;padding:30px 40px 30px 0;border-bottom:1px solid var(--de-line);color:var(--de-ink)!important;background:transparent;transition:background .22s ease,padding-left .22s ease}
.de-monthly .campaign-feature__item:hover{background:var(--de-accent-soft);padding-left:18px}
.de-monthly .campaign-feature__number{align-self:start;padding-top:5px;color:var(--de-accent);font-size:12px;letter-spacing:.1em}
.de-monthly .campaign-feature__copy{min-width:0}
.de-monthly .campaign-feature__kicker{display:block;margin-bottom:12px;color:var(--de-accent);font-size:10px;line-height:1.3;letter-spacing:.16em;text-transform:uppercase}
.de-monthly .campaign-feature__copy strong{display:block;font-size:clamp(25px,2.5vw,36px);line-height:1.08;font-weight:500;letter-spacing:-.04em}
.de-monthly .campaign-feature__copy small{display:block;max-width:500px;margin-top:12px;color:var(--de-text);font-size:13px;line-height:1.6}
.de-monthly .campaign-feature__value{align-self:start;color:var(--de-accent);font-size:clamp(26px,3vw,42px);line-height:1;font-weight:500;white-space:nowrap}
.de-monthly .campaign-feature__arrow{position:absolute;right:4px;bottom:28px;font-size:20px;color:var(--de-ink)}
@media (max-width:900px){
 .de-monthly .campaign-feature__head{grid-template-columns:1fr;gap:18px}
 .de-monthly .campaign-feature__grid{grid-template-columns:1fr;gap:42px}
 .de-monthly .campaign-feature__visual{max-width:520px;min-height:0}
 .de-monthly .campaign-feature__visual img,.de-monthly .campaign-feature__placeholder{min-height:0}
}
@media (max-width:680px){
 .de-monthly .campaign-feature{padding:58px 0 64px}
 .de-monthly .campaign-feature__head{margin-bottom:30px}
 .de-monthly .campaign-feature__visual{padding:0 12px 14px 0}
 .de-monthly .campaign-feature__frame{inset:-12px 0 0 20px}
 .de-monthly .campaign-feature__visual figcaption{display:none}
 .de-monthly .campaign-feature__item{grid-template-columns:32px 1fr;gap:12px;min-height:0;padding:24px 34px 24px 0}
 .de-monthly .campaign-feature__item:hover{padding-left:0}
 .de-monthly .campaign-feature__value{grid-column:2;font-size:30px;margin-top:8px}
 .de-monthly .campaign-feature__arrow{right:2px;bottom:26px}
 .de-monthly .campaign-feature__copy strong{font-size:26px}
}

/* 2.2 — editor-safe generic components */
.de-monthly .editorial-grid--no-image{grid-template-columns:minmax(0,820px);justify-content:center}
.de-monthly .media-frame--square img{aspect-ratio:1/1;object-fit:cover}
.de-monthly .editorial-body p:first-child{margin-top:0}
.de-monthly .editorial-body p:last-child{margin-bottom:0}
@media (max-width:820px){.de-monthly .editorial-grid--no-image{grid-template-columns:1fr}}


/* 2.2.1 — Preserve editorial image architecture before a Media Library image is selected. */
.de-monthly .de-image-placeholder{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;
  width:100%;aspect-ratio:4/5;background:var(--de-secondary-soft);color:var(--de-muted);
  border:1px solid var(--de-line);font-size:11px;letter-spacing:.08em;text-transform:uppercase;text-align:center;padding:24px;
}
.de-monthly .media-frame--wide .de-image-placeholder{aspect-ratio:4/3}
.de-monthly .media-frame--square .de-image-placeholder{aspect-ratio:1/1}
.de-monthly .de-image-placeholder--hero{aspect-ratio:4/5;background:#f4f4f2}
@media (max-width:820px){.de-monthly .de-image-placeholder{font-size:10px}}

/* 2.3.0 — Unified editable image art-direction. Every Media Library image keeps a colored plate + offset line frame. */
.de-monthly .de-image-decor--mint{--de-image-plate:var(--de-accent-soft);--de-image-line:var(--de-accent)}
.de-monthly .de-image-decor--blue{--de-image-plate:#eef5f7;--de-image-line:#8faebc}
.de-monthly .de-image-decor--blush{--de-image-plate:#fbf1f2;--de-image-line:#d5aeb4}
.de-monthly .de-image-decor--neutral{--de-image-plate:#f3f4f2;--de-image-line:var(--de-secondary)}
.de-monthly .media-frame{isolation:isolate;padding:0 18px 18px 0}
.de-monthly .media-frame::before{inset:-18px 0 0 34px;border:1px solid var(--de-image-line,var(--de-secondary));z-index:0}
.de-monthly .media-frame::after{content:"";position:absolute;inset:18px -18px -18px 18px;background:var(--de-image-plate,var(--de-secondary-soft));z-index:-1}
.de-monthly .media-frame img,.de-monthly .media-frame .de-image-placeholder{z-index:2}
.de-monthly .de-magazine-header__visual{isolation:isolate}
.de-monthly .de-magazine-header__visual::after{content:"";position:absolute;inset:26px -22px -22px 32px;background:var(--de-image-plate,var(--de-secondary-soft));z-index:0}
.de-monthly .de-magazine-header__frame{border-color:var(--de-image-line,var(--de-secondary));z-index:1}
.de-monthly .de-magazine-header__visual img,.de-monthly .de-magazine-header__visual .de-image-placeholder{z-index:2}
.de-monthly .campaign-feature__visual{isolation:isolate;padding:0 20px 20px 0}
.de-monthly .campaign-feature__visual::after{content:"";position:absolute;inset:20px -18px -18px 22px;background:var(--de-image-plate,var(--de-accent-soft));z-index:0}
.de-monthly .campaign-feature__frame{border-color:var(--de-image-line,var(--de-secondary));z-index:1}
.de-monthly .campaign-feature__visual img,.de-monthly .campaign-feature__placeholder{position:relative;z-index:2}
.de-monthly .offer-panel--with-image{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:clamp(34px,5vw,72px);align-items:center}
.de-monthly .offer-section--right .offer-panel--with-image{grid-template-columns:minmax(0,1.28fr) minmax(250px,.72fr)}
.de-monthly .offer-media{position:relative;min-width:0;padding:14px 14px 0 0}
.de-monthly .offer-main{min-width:0}
@media(max-width:900px){.de-monthly .offer-panel--with-image,.de-monthly .offer-section--right .offer-panel--with-image{grid-template-columns:1fr}.de-monthly .offer-media{max-width:560px}.de-monthly .media-frame::after{inset:12px -12px -12px 12px}.de-monthly .de-magazine-header__visual::after{inset:16px -12px -12px 18px}.de-monthly .campaign-feature__visual::after{inset:12px -12px -12px 14px}}

/* 2.3.1 — Campaign editor/data integrity fix.
   The image must never make the campaign rows disappear or stretch the composition. */
.de-monthly .campaign-feature__grid{align-items:start}
.de-monthly .campaign-feature__visual{align-self:start;min-height:0}
.de-monthly .campaign-feature__visual img{height:auto;min-height:0;aspect-ratio:4/5;object-fit:cover}
.de-monthly .campaign-feature__items{min-width:0;width:100%}
.de-monthly .campaign-feature__copy{display:block!important;visibility:visible!important;opacity:1!important}
.de-monthly .campaign-feature__copy strong,.de-monthly .campaign-feature__copy small,.de-monthly .campaign-feature__kicker,.de-monthly .campaign-feature__value{visibility:visible!important;opacity:1!important}

/* 2.3.2 — Editorial rhythm & typography polish.
   Keeps the 2.3 image system intact; only tightens vertical spacing and heading rhythm. */
.de-monthly h2{
  line-height:1.075;
  letter-spacing:-.035em;
  margin-bottom:20px;
}
.de-monthly h3{line-height:1.22}

/* Magazine header: less empty space, calmer title leading. */
.de-monthly .de-magazine-header{
  padding:clamp(28px,3.4vw,48px) 0 clamp(38px,4.5vw,62px);
}
.de-monthly .de-magazine-header__grid{
  margin-top:clamp(32px,4.2vw,56px);
  gap:clamp(44px,6.5vw,92px);
}
.de-monthly .de-magazine-header__title{
  
  letter-spacing:-.045em;
}
.de-monthly .de-magazine-header__title em{}
.de-monthly .de-magazine-header__intro{margin-top:22px;line-height:1.62}

/* Campaign feature: read as one compact editorial composition. */
.de-monthly .campaign-feature{padding:52px 0 62px}
.de-monthly .campaign-feature__head{
  gap:clamp(36px,5vw,64px);
  margin-bottom:30px;
}
.de-monthly .campaign-feature__intro{line-height:1.65}
.de-monthly .campaign-feature__grid{
  grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);
  gap:clamp(42px,6vw,76px);
}
.de-monthly .campaign-feature__item{
  min-height:168px;
  padding-top:24px;
  padding-bottom:24px;
}
.de-monthly .campaign-feature__copy strong{line-height:1.12;letter-spacing:-.03em}
.de-monthly .campaign-feature__copy small{margin-top:9px;line-height:1.52}
.de-monthly .campaign-feature__kicker{margin-bottom:9px}

/* Navigation and article rhythm: prevent stacked component padding from creating blank bands. */
.de-monthly .magazine-nav{padding:54px 0 66px}
.de-monthly .magazine-nav__head{margin-bottom:24px}
.de-monthly .magazine-nav__group + .magazine-nav__group{margin-top:52px}
.de-monthly .editorial-section,.de-monthly .image-led-section{padding:72px 0}
.de-monthly .offer-section{padding:64px 0}

/* The first content blocks after the header should connect visually. */
.de-monthly .de-magazine-header + .campaign-feature{padding-top:42px}
.de-monthly .campaign-feature + .magazine-nav{padding-top:46px}

@media(max-width:900px){
  .de-monthly .de-magazine-header{padding:26px 0 46px}
  .de-monthly .de-magazine-header__grid{margin-top:38px;gap:40px}
  .de-monthly .campaign-feature{padding:48px 0 56px}
  .de-monthly .campaign-feature__head{margin-bottom:26px}
  .de-monthly .campaign-feature__grid{gap:36px}
  .de-monthly .magazine-nav{padding:50px 0 58px}
  .de-monthly .editorial-section,.de-monthly .image-led-section{padding:60px 0}
  .de-monthly .offer-section{padding:56px 0}
}
@media(max-width:680px){
  .de-monthly h2{line-height:1.08;letter-spacing:-.03em;margin-bottom:18px}
  .de-monthly .de-magazine-header{padding:22px 0 40px}
  .de-monthly .de-magazine-header__grid{margin-top:32px}
  .de-monthly .de-magazine-header__title{letter-spacing:-.04em}
  .de-monthly .campaign-feature{padding:42px 0 48px}
  .de-monthly .campaign-feature__head{margin-bottom:24px}
  .de-monthly .campaign-feature__item{padding-top:21px;padding-bottom:21px}
  .de-monthly .magazine-nav{padding:44px 0 50px}
  .de-monthly .editorial-section,.de-monthly .image-led-section{padding:52px 0}
  .de-monthly .offer-section{padding:50px 0}
}


/* 2.3.6 — final width, rhythm and typography correction.
   Keep the working component system intact; fix only shell/gutters, the hand-built
   WPBakery rows and the responsive editorial order. */

/* Hand-built WPBakery rows: slightly calmer desktop measure than the full 1180px shell. */
.de-monthly .campaign-nav-layout,
.de-monthly .editor-note-section{
  width:min(calc(100% - 64px),1120px) !important;
  max-width:1120px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Ildikó editorial note: restore hierarchy without changing the WPBakery structure. */
.de-monthly .editor-note-section{padding:58px 0 68px;align-items:start}
.de-monthly .editor-note-section .editor-note-photo{padding-top:4px}
.de-monthly .editor-note__lead{
  max-width:680px;
  margin:0 0 24px !important;
  color:var(--de-ink);
  font-size:clamp(18px,1.35vw,22px);
  line-height:1.55;
  letter-spacing:-.015em;
}
.de-monthly .editor-note__body-copy{max-width:760px;font-size:15px;line-height:1.72}
.de-monthly .editor-note__body-copy p{margin-bottom:16px}
.de-monthly .editor-note__signature{margin-top:24px;line-height:1.45}
.de-monthly .editor-note__signature strong{display:block;margin-bottom:2px;color:var(--de-ink);font-weight:600}

/* Desktop titles should read as editorial headings, not hero headlines. */
.de-monthly .magazine-nav__head h2{font-size:clamp(32px,2.45vw,42px)}
.de-monthly .editorial-copy h2{font-size:clamp(30px,2.2vw,38px)}
.de-monthly .faq-section h2,
.de-monthly .price-section h2{font-size:clamp(30px,2.25vw,40px)}
.de-monthly .professional-inner h2{font-size:clamp(28px,2.15vw,38px)}

@media (max-width:900px){
  /* Let source order create the intended alternating mobile rhythm:
     left-image block = image/copy; right-image block = copy/image. */
  .de-monthly .editorial-section--reverse .editorial-copy,
  .de-monthly .editorial-section--reverse .editorial-media,
  .de-monthly .editorial-section--reverse .event-card,
  .de-monthly .offer-section--right .offer-main,
  .de-monthly .offer-section--right .offer-media{
    order:initial !important;
  }

  .de-monthly .editorial-section .editorial-grid,
  .de-monthly .image-led-section .image-led-grid,
  .de-monthly .offer-section .offer-panel--with-image{
    grid-template-columns:minmax(0,1fr) !important;
  }
  .de-monthly .editorial-section .editorial-grid > *,
  .de-monthly .image-led-section .image-led-grid > *,
  .de-monthly .offer-section .offer-panel--with-image > *{
    min-width:0 !important;
    max-width:100%;
  }

  .de-monthly .campaign-nav-layout,
  .de-monthly .editor-note-section{
    width:calc(100% - 44px) !important;
    max-width:none !important;
    margin-left:22px !important;
    margin-right:22px !important;
  }

  /* WPBakery rows become one column without inheriting negative desktop gutters. */
  .de-monthly .campaign-nav-layout > .wpb_column,
  .de-monthly .campaign-nav-layout > .vc_column_container,
  .de-monthly .editor-note-section > .wpb_column,
  .de-monthly .editor-note-section > .vc_column_container{
    float:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  .de-monthly .campaign-nav-layout .vc_column-inner,
  .de-monthly .editor-note-section .vc_column-inner{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .de-monthly .campaign-nav-layout .wpb_wrapper,
  .de-monthly .editor-note-section .wpb_wrapper{
    min-width:0 !important;
    max-width:100% !important;
  }

  .de-monthly .campaign-nav-layout .campaign-nav-image,
  .de-monthly .editor-note-section .editor-note-photo{
    width:100% !important;
    max-width:360px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .de-monthly .editor-note-section .editor-note-photo{margin-bottom:30px !important}

  .de-monthly .editorial-media,
  .de-monthly .offer-media,
  .de-monthly .image-led-figure{
    justify-self:center;
    width:100%;
    max-width:520px;
  }
  .de-monthly .editorial-media .media-frame,
  .de-monthly .offer-media .media-frame{
    width:100%;
    max-width:360px;
    margin-left:auto;
    margin-right:auto;
  }
}

@media (max-width:820px){
  /* One consistent mobile gutter across every plugin component. */
  .de-monthly .shell,
  .de-monthly .de-magazine-header__shell{
    width:auto !important;
    max-width:none !important;
    margin-left:22px !important;
    margin-right:22px !important;
  }
  .de-monthly .editorial-section,
  .de-monthly .image-led-section,
  .de-monthly .faq-section,
  .de-monthly .price-section,
  .de-monthly .professional-section{
    overflow:hidden;
  }
  .de-monthly h2{font-size:30px;line-height:1.1;letter-spacing:-.028em}
  .de-monthly .magazine-nav__head h2,
  .de-monthly .editorial-copy h2,
  .de-monthly .faq-section h2,
  .de-monthly .price-section h2,
  .de-monthly .professional-inner h2{font-size:30px}
  .de-monthly .editor-note__lead{font-size:18px;line-height:1.55}
  .de-monthly .editor-note__body-copy{font-size:14px;line-height:1.68}
}

@media (max-width:680px){
  .de-monthly .campaign-nav-layout,
  .de-monthly .editor-note-section{
    width:calc(100% - 44px) !important;
    margin-left:22px !important;
    margin-right:22px !important;
  }
  .de-monthly .magazine-nav{padding:38px 0 44px}
  .de-monthly .editor-note-section{padding:42px 0 48px}
  .de-monthly .editorial-section,.de-monthly .image-led-section{padding:46px 0}
  .de-monthly .offer-section{padding:44px 0}
  .de-monthly .topic-nav-row{padding-left:38px;padding-right:34px}
  .de-monthly .topic-nav-row__number{width:28px}
  .de-monthly .topic-nav-row strong{font-size:15px}
  .de-monthly .topic-nav-row small{font-size:11px;line-height:1.45}
  .de-monthly .media-frame{padding-right:10px;padding-bottom:10px}
  .de-monthly .media-frame::before{inset:-10px 0 0 18px}
  .de-monthly .media-frame::after{inset:10px -8px -8px 10px}
}

/* 2.3.7 — visual QA correction: full-bleed offer backgrounds, restrained headings,
   dedicated editor-note geometry, and hard mobile overflow protection. */

/* Offer sections: colour belongs to the full-width section, not to a floating card. */
.de-monthly .offer-section{background:var(--de-accent-soft)}
.de-monthly .offer-section--mint{background:#eef7f4}
.de-monthly .offer-section--blush{background:#fbf1f2}
.de-monthly .offer-section--blue{background:#eef5f7}
.de-monthly .offer-section--neutral{background:#f7f6f3}
.de-monthly .offer-section .offer-panel{background:transparent;border-top:1px solid rgba(57,66,68,.14);border-bottom:1px solid rgba(57,66,68,.14)}

/* Calm the secondary hierarchy. Hero remains untouched. */
.de-monthly .campaign-feature__head h2{font-size:clamp(30px,2.2vw,38px)!important;line-height:1.06}
.de-monthly .offer-main h2{font-size:clamp(28px,2vw,34px)!important;line-height:1.08;letter-spacing:-.035em}
.de-monthly .editorial-copy h2{font-size:clamp(28px,2vw,34px)!important;line-height:1.08;letter-spacing:-.035em}
.de-monthly .magazine-nav__head h2{font-size:clamp(30px,2.15vw,38px)!important}
.de-monthly .faq-section h2,.de-monthly .price-section h2{font-size:clamp(28px,2vw,34px)!important}
.de-monthly .professional-inner h2{font-size:clamp(27px,1.9vw,32px)!important}

/* Ildikó: make this a true editorial note, not two WPBakery columns fighting each other. */
@media (min-width:901px){
  .de-monthly .editor-note-section{
    display:grid!important;
    grid-template-columns:minmax(240px,300px) minmax(0,1fr)!important;
    gap:clamp(42px,5vw,72px)!important;
    align-items:start!important;
  }
  .de-monthly .editor-note-section>.wpb_column,
  .de-monthly .editor-note-section>.vc_column_container{
    float:none!important;width:auto!important;max-width:none!important;min-width:0!important;
  }
  .de-monthly .editor-note-section .vc_column-inner{padding-left:0!important;padding-right:0!important}
  .de-monthly .editor-note-photo{width:100%!important;max-width:300px!important}
  .de-monthly .editor-note-copy{width:100%!important;min-width:0!important}
}
.de-monthly .editor-note-photo .wpb_single_image{position:relative!important;display:block!important;width:100%!important;max-width:100%!important;padding:14px 14px 0 0!important;margin:0!important}
.de-monthly .editor-note-photo .wpb_single_image:before{content:"";position:absolute;inset:-14px -14px 14px 14px;border:1px solid var(--de-secondary);z-index:0;pointer-events:none}
.de-monthly .editor-note-photo .vc_single_image-wrapper,.de-monthly .editor-note-photo img{position:relative;z-index:1;display:block;width:100%!important;height:auto!important}
.de-monthly .editor-note-copy,.de-monthly .editor-note-copy .wpb_wrapper,.de-monthly .editor-note__body-copy{min-width:0!important;max-width:100%!important}

/* Mobile: one gutter, no component may exceed it. */
@media (max-width:900px){
  .de-monthly{overflow-x:clip}
  .de-monthly .shell,
  .de-monthly .de-magazine-header__shell,
  .de-monthly .campaign-feature>.shell{
    width:calc(100% - 48px)!important;
    max-width:calc(100% - 48px)!important;
    margin-left:24px!important;
    margin-right:24px!important;
  }
  .de-monthly .editorial-section,
  .de-monthly .offer-section,
  .de-monthly .image-led-section,
  .de-monthly .campaign-feature,
  .de-monthly .magazine-nav,
  .de-monthly .faq-section,
  .de-monthly .price-section,
  .de-monthly .professional-section{overflow:clip!important}

  .de-monthly .editorial-grid,
  .de-monthly .editorial-grid--reverse,
  .de-monthly .offer-panel--with-image,
  .de-monthly .campaign-feature__grid{
    width:100%!important;max-width:100%!important;min-width:0!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .de-monthly .editorial-grid>*,
  .de-monthly .offer-panel--with-image>*,
  .de-monthly .campaign-feature__grid>*{
    width:100%!important;max-width:100%!important;min-width:0!important;
  }

  .de-monthly .editorial-media,.de-monthly .offer-media{
    width:100%!important;max-width:100%!important;min-width:0!important;
    padding:10px 0 8px!important;margin:0!important;justify-self:stretch!important;
  }
  .de-monthly .editorial-media .media-frame,.de-monthly .offer-media .media-frame{
    width:100%!important;max-width:100%!important;margin:0!important;
  }
  .de-monthly .media-frame:before{inset:-8px 0 8px 12px!important}
  .de-monthly .media-frame:after{inset:8px 0 -8px 12px!important}

  .de-monthly .editorial-copy,.de-monthly .offer-main,.de-monthly .offer-content,.de-monthly .offer-copy,
  .de-monthly .editorial-body,.de-monthly .treatment-grid{
    width:100%!important;max-width:100%!important;min-width:0!important;
    overflow-wrap:anywhere;
  }
  .de-monthly .offer-content{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
  .de-monthly .offer-panel{padding:30px 0!important;border-left:0!important;border-right:0!important}

  .de-monthly .editor-note-section{
    display:block!important;width:calc(100% - 48px)!important;max-width:calc(100% - 48px)!important;
    margin-left:24px!important;margin-right:24px!important;
  }
  .de-monthly .editor-note-section>.wpb_column,.de-monthly .editor-note-section>.vc_column_container{
    float:none!important;width:100%!important;max-width:100%!important;min-width:0!important;
  }
  .de-monthly .editor-note-section .vc_column-inner{padding-left:0!important;padding-right:0!important}
  .de-monthly .editor-note-photo{width:100%!important;max-width:300px!important;margin:0 0 28px!important}
  .de-monthly .editor-note-photo .wpb_single_image{padding:10px 0 8px 0!important}
  .de-monthly .editor-note-photo .wpb_single_image:before{inset:-8px 0 8px 12px!important}

  .de-monthly .campaign-feature__visual{width:100%!important;max-width:100%!important;padding:0 0 12px!important}
  .de-monthly .campaign-feature__visual::after{inset:10px 0 -10px 12px!important}
  .de-monthly .campaign-feature__frame{inset:-10px 0 0 14px!important}

  .de-monthly .editorial-copy h2,.de-monthly .offer-main h2{font-size:28px!important;line-height:1.1!important}
  .de-monthly .campaign-feature__head h2,.de-monthly .magazine-nav__head h2{font-size:29px!important;line-height:1.08!important}
  .de-monthly .faq-section h2,.de-monthly .price-section h2,.de-monthly .professional-inner h2{font-size:28px!important;line-height:1.1!important}
}

@media (max-width:480px){
  .de-monthly .shell,.de-monthly .de-magazine-header__shell,.de-monthly .campaign-feature>.shell{
    width:calc(100% - 40px)!important;max-width:calc(100% - 40px)!important;margin-left:20px!important;margin-right:20px!important;
  }
  .de-monthly .editor-note-section{width:calc(100% - 40px)!important;max-width:calc(100% - 40px)!important;margin-left:20px!important;margin-right:20px!important}
  .de-monthly .editorial-copy h2,.de-monthly .offer-main h2{font-size:26px!important}
  .de-monthly .campaign-feature__head h2,.de-monthly .magazine-nav__head h2{font-size:27px!important}
}

/* Approved layout-only pass.
   Keeps existing colour presets, image plates and offset line frames unchanged. */
@media (min-width:901px){
  .de-monthly .offer-panel--with-image{grid-template-columns:minmax(0,1fr) minmax(300px,.82fr)!important;gap:clamp(42px,6vw,86px)!important;align-items:start!important}
  .de-monthly .offer-section--right .offer-panel--with-image{grid-template-columns:minmax(300px,.82fr) minmax(0,1fr)!important}
  .de-monthly .offer-main .offer-content{display:block!important;width:100%!important}
  .de-monthly .offer-main .offer-copy{max-width:680px;margin-top:30px}
  .de-monthly .editor-note-section{display:grid!important;grid-template-columns:minmax(240px,1fr) minmax(0,2fr)!important;gap:clamp(42px,6vw,82px)!important;align-items:start!important}
  .de-monthly .editor-note-section>.wpb_column,.de-monthly .editor-note-section>.vc_column_container{float:none!important;width:auto!important;max-width:none!important;min-width:0!important}
}
.de-monthly .event-draw{max-width:680px;margin:24px 0 18px!important;padding:15px 18px;border-left:2px solid var(--de-accent);background:var(--de-accent-soft);color:var(--de-ink)}
.de-monthly .event-draw strong{display:block;margin-bottom:3px;color:var(--de-accent);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
@media (max-width:900px){
  .de-monthly .offer-panel--with-image,.de-monthly .offer-section--right .offer-panel--with-image{grid-template-columns:minmax(0,1fr)!important}
  .de-monthly .offer-main .offer-content{display:block!important}
  .de-monthly .editor-note-section{display:block!important;width:calc(100% - 40px)!important;max-width:calc(100% - 40px)!important;margin-left:20px!important;margin-right:20px!important}
  .de-monthly .editor-note-section>.wpb_column,.de-monthly .editor-note-section>.vc_column_container{float:none!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .de-monthly .editor-note-photo{margin:0 0 28px!important;max-width:100%!important}
}

/* 2.3.8 follow-up: override The7/WPBakery column widths inside the note grid. */
@media (min-width:901px){
  .de-monthly .editor-note-section>.editor-note-photo{
    grid-column:1!important;
    width:100%!important;
    flex:none!important;
  }
  .de-monthly .editor-note-section>.editor-note-copy{
    grid-column:2!important;
    width:100%!important;
    flex:none!important;
  }
}

/* 2.3.10 — explicit mobile art direction.
   Mobile order follows image_side/source order; desktop order never leaks into mobile. */
@media (max-width:900px){
  .de-monthly .editorial-section:not(.editorial-section--reverse) .editorial-media,
  .de-monthly .editorial-section:not(.editorial-section--reverse) .offer-media,
  .de-monthly .offer-section--left .offer-media,
  .de-monthly .editor-note-section>.editor-note-photo{
    order:1!important;
  }
  .de-monthly .editorial-section:not(.editorial-section--reverse) .editorial-copy,
  .de-monthly .offer-section--left .offer-main,
  .de-monthly .editor-note-section>.editor-note-copy{
    order:2!important;
  }
  .de-monthly .editorial-section--reverse .editorial-copy,
  .de-monthly .offer-section--right .offer-main,
  .de-monthly .editor-note-section>.editor-note-copy + *{
    order:1!important;
  }
  .de-monthly .editorial-section--reverse .editorial-media,
  .de-monthly .offer-section--right .offer-media,
  .de-monthly .editor-note-section>.editor-note-photo{
    order:2!important;
  }
}

/* 2.3.11 — mobile flow hardening.
   Use a real one-dimensional flow so The7/WPBakery desktop order rules cannot leak. */
@media (max-width:900px){
  .de-monthly .editorial-grid,
  .de-monthly .offer-panel--with-image{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .de-monthly .editorial-section:not(.editorial-section--reverse) .editorial-media,
  .de-monthly .offer-section--left .offer-media{order:1!important}
  .de-monthly .editorial-section:not(.editorial-section--reverse) .editorial-copy,
  .de-monthly .offer-section--left .offer-main{order:2!important}
  .de-monthly .editorial-section--reverse .editorial-copy,
  .de-monthly .offer-section--right .offer-main{order:1!important}
  .de-monthly .editorial-section--reverse .editorial-media,
  .de-monthly .offer-section--right .offer-media{order:2!important}
  .de-monthly .editorial-grid>* ,
  .de-monthly .offer-panel--with-image>*{
    flex:0 0 auto!important;
  }
}

/* 2.3.12 — final mobile editorial order.
   The header remains text → image; every magazine content block is image → text. */
@media (max-width:900px){
  .de-monthly .editorial-section .editorial-grid,
  .de-monthly .offer-panel--with-image{
    display:flex!important;
    flex-direction:column!important;
  }
  .de-monthly .editorial-section .editorial-media,
  .de-monthly .offer-panel--with-image .offer-media,
  .de-monthly .editor-note-section>.editor-note-photo{
    order:1!important;
  }
  .de-monthly .editorial-section .editorial-copy,
  .de-monthly .offer-panel--with-image .offer-main,
  .de-monthly .editor-note-section>.editor-note-copy{
    order:2!important;
  }
}

/* 2.5.4: one source of Hero typography; sizes come from page settings. */
.de-monthly .de-magazine-header__title{font-size:var(--de-h1,44px);line-height:1.12}
.de-monthly .de-magazine-header__title em{line-height:inherit}

/* 2.5.10: allow magazine-level H1 selection to control the hero. */
.de-monthly .de-magazine-header__title{font-size:var(--de-h1,50px)!important;line-height:1.12}
