/* Additional native editor sections of Ateliér 21. Original hero, prices and booking remain native. */
#smpls-editor-content .ae-section {
    --ae-canvas: #191c1a;
    --ae-surface: #222622;
    --ae-ink: #f2ecdf;
    --ae-muted: #b8baaf;
    --ae-accent: #bda463;
    --ae-line: #f2ecdf2b;
    padding: 96px 0;
    background: var(--ae-canvas);
    color: var(--ae-ink);
}
.ae-section *, .ae-section *::before { box-sizing: border-box; }
#smpls-editor-content .ae-section > .container { width: 88%; max-width: 1440px; margin: 0 auto; padding: 0; }
#smpls-editor-content .ae-section .smpls-box { min-width: 0; background: transparent; box-shadow: none; border-radius: 0; }
.ae-section .smpls-box-content { min-width: 0; }
#smpls-editor-content .ae-section h2 { margin: 0; color: var(--ae-ink); font: 400 clamp(42px, 4.5vw, 66px)/1.08 var(--smplsFontFamilyHeading), serif; letter-spacing: 0; text-wrap: balance; }
#smpls-editor-content .ae-section h3 { margin: 0; color: var(--ae-ink); font: 400 clamp(29px, 2.8vw, 40px)/1.15 var(--smplsFontFamilyHeading), serif; letter-spacing: 0; }
#smpls-editor-content .ae-section p { margin: 0; font: 400 15px/1.8 var(--smplsFontFamilyParagraph), sans-serif; color: var(--ae-muted); }
.ae-section .ae-section-head > .smpls-box-content { display: flex; flex-direction: column; gap: 24px; margin-bottom: 44px; max-width: 790px; }
#smpls-editor-content .ae-section .ae-eyebrow p { color: var(--ae-accent); font-size: 10px; font-weight: 600; letter-spacing: .16em; line-height: 1.8; }
#smpls-editor-content .ae-section .ae-lead p { font-size: 17px; }
#smpls-editor-content .ae-section .ae-fineprint p { margin-top: 26px; font-size: 11px; line-height: 1.8; }
.ae-section .ae-services-grid > .smpls-box-content, .ae-section .ae-reviews-grid > .smpls-box-content, .ae-section .ae-articles-grid > .smpls-box-content { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 28px; }
.ae-section .ae-service-card > .smpls-box-content, .ae-section .ae-article-card > .smpls-box-content { display: flex; flex-direction: column; gap: 0; }
.ae-section .ae-photo { width: 100%; height: 300px; overflow: hidden; }
.ae-section .ae-photo > .smpls-widget-content, .ae-section .ae-photo picture { display: block; width: 100%; height: 100%; }
.ae-section .ae-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ae-section .ae-service-body > .smpls-box-content { display: flex; flex-direction: column; gap: 20px; padding: 28px 0 0; }
.ae-section .ae-link, .ae-section .ae-button { display: inline-flex; align-items: center; gap: 22px; width: fit-content; max-width: 100%; color: var(--ae-ink); text-decoration: none; font: 500 13px/1.6 var(--smplsFontFamilyParagraph), sans-serif; }
.ae-section .ae-link { padding: 10px 0; border-bottom: 1px solid var(--ae-line); }
.ae-section svg { width: 23px; height: 23px; flex: 0 0 23px; }
.ae-section .ae-link:hover { border-color: var(--ae-accent); color: var(--ae-accent); }
.ae-section .ae-button { justify-content: space-between; min-height: 54px; padding: 16px 24px; background: var(--ae-accent); color: var(--ae-canvas); }
.ae-section .ae-button:hover { background: var(--ae-ink); }
.ae-section a:focus-visible, .ae-section summary:focus-visible { outline: 2px solid var(--ae-accent); outline-offset: 6px; }
#smpls-editor-content .ae-price-table { background: #20241f; }
#smpls-editor-content .ae-reviews { background: #e8dfca; --ae-ink: #272d26; --ae-muted: #51584d; --ae-accent: #796535; --ae-line: #272d2633; }
.ae-section .ae-review-card { height: 100%; }
.ae-section .ae-review-card figure { margin: 0; padding: 26px 28px 30px 0; border-top: 1px solid var(--ae-line); }
.ae-section .ae-stars { display: flex; gap: 5px; color: var(--ae-accent); margin: 0 0 26px; }
.ae-section .ae-stars svg { width: 15px; height: 15px; flex: 0 0 15px; }
.ae-section blockquote { margin: 0 0 32px; color: var(--ae-ink); font: 400 clamp(23px, 2.2vw, 31px)/1.45 var(--smplsFontFamilyHeading), serif; }
.ae-section figcaption { display: flex; flex-direction: column; gap: 7px; font: 400 12px/1.6 var(--smplsFontFamilyParagraph), sans-serif; color: var(--ae-muted); }
.ae-section figcaption strong { font-size: 14px; color: var(--ae-ink); font-weight: 600; }
.ae-section .ae-article-card .ae-photo { height: 235px; }
.ae-section .ae-article { padding: 26px 0 0; }
.ae-section .ae-article summary { list-style: none; cursor: pointer; }
.ae-section .ae-article summary::-webkit-details-marker { display: none; }
.ae-section .ae-article summary > span { display: block; }
.ae-section .ae-article-category { color: var(--ae-accent); font: 600 10px/1.8 var(--smplsFontFamilyParagraph), sans-serif; letter-spacing: .1em; margin-bottom: 20px; }
.ae-section .ae-article-title { color: var(--ae-ink); font: 400 30px/1.2 var(--smplsFontFamilyHeading), serif; margin-bottom: 20px; }
.ae-section .ae-article-teaser { color: var(--ae-muted); font: 400 14px/1.8 var(--smplsFontFamilyParagraph), sans-serif; margin-bottom: 22px; }
.ae-section .ae-article summary > .ae-article-action { display: inline-flex; align-items: center; gap: 26px; border-bottom: 1px solid var(--ae-line); padding-bottom: 9px; color: var(--ae-ink); font: 500 13px/1.6 var(--smplsFontFamilyParagraph), sans-serif; }
.ae-section .ae-article[open] .ae-article-action svg { transform: rotate(90deg); }
.ae-section .ae-article-body { padding: 24px 0 0; }
#smpls-editor-content .ae-section .ae-article-body h4 { margin: 24px 0 10px; color: var(--ae-ink); font: 600 14px/1.6 var(--smplsFontFamilyParagraph), sans-serif; }
#smpls-editor-content .ae-section .ae-article-body p { font-size: 14px; }
#smpls-editor-content .ae-contact { background: #e8dfca; --ae-ink: #272d26; --ae-muted: #51584d; --ae-accent: #796535; --ae-line: #272d2633; }
.ae-section .ae-contact-grid > .smpls-box-content { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .95fr); gap: 80px; align-items: center; }
.ae-section .ae-contact-info > .smpls-box-content { display: flex; flex-direction: column; gap: 26px; }
.ae-section .ae-contact-info .ae-lead { max-width: 610px; }
.ae-section .ae-contact-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 9px 20px; margin-top: 14px; padding: 22px 25px; background: #f7f3eb; color: var(--ae-ink); text-decoration: none; }
.ae-section .ae-contact-label { grid-column: 1; color: var(--ae-muted); font: 500 10px/1.5 var(--smplsFontFamilyParagraph), sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.ae-section .ae-contact-card strong { grid-column: 1; font: 500 clamp(16px, 1.6vw, 23px)/1.5 var(--smplsFontFamilyParagraph), sans-serif; overflow-wrap: anywhere; }
.ae-section .ae-contact-card svg { grid-column: 2; grid-row: 1/3; }
.ae-section .ae-contact-card:hover { background: #fff; }
.ae-section .ae-contact-cta { --ae-ink: #f2ecdf; --ae-muted: #c7c9bd; --ae-accent: #bda463; --ae-line: #f2ecdf40; }
.ae-section .ae-contact-cta > .smpls-box-content { display: flex; flex-direction: column; align-items: flex-start; gap: 28px; padding: 54px 44px; background: #293328; }
#smpls-editor-content .ae-section .ae-contact-cta h3 { font-size: clamp(34px, 3.4vw, 49px); }
@media (max-width: 1023px) {
    #smpls-editor-content .ae-section { padding: 72px 0; }
    .ae-section .ae-services-grid > .smpls-box-content, .ae-section .ae-articles-grid > .smpls-box-content { gap: 20px; }
    .ae-section .ae-photo { height: 240px; }
    .ae-section .ae-contact-grid > .smpls-box-content { gap: 36px; }
    .ae-section .ae-contact-cta > .smpls-box-content { padding: 34px 28px; }
}
@media (max-width: 767px) {
    #smpls-editor-content .ae-section { padding: 60px 0; }
    #smpls-editor-content .ae-section > .container { width: calc(100% - 40px); }
    .ae-section .ae-section-head > .smpls-box-content { margin-bottom: 32px; gap: 22px; }
    .ae-section .ae-services-grid > .smpls-box-content, .ae-section .ae-reviews-grid > .smpls-box-content, .ae-section .ae-articles-grid > .smpls-box-content, .ae-section .ae-contact-grid > .smpls-box-content { grid-template-columns: minmax(0, 1fr); gap: 38px; }
    .ae-section .ae-photo { height: 280px; }
    .ae-section .ae-service-body > .smpls-box-content { gap: 18px; }
    .ae-section .ae-review-card figure { padding-right: 0; }
    .ae-section .ae-contact-cta > .smpls-box-content { padding: 34px 24px; }
}
/* Native global link colours also apply to rich text; keep editorial CTAs legible in both surfaces. */
#smpls-editor-content .ae-section a.ae-link { color: var(--ae-ink) !important; text-decoration: none !important; }
#smpls-editor-content .ae-section a.ae-button { color: var(--ae-canvas) !important; text-decoration: none !important; }
#smpls-editor-content .ae-section a.ae-contact-card { color: var(--ae-ink) !important; text-decoration: none !important; }
#smpls-editor-content .ae-section a.ae-link:hover { color: var(--ae-accent) !important; }
/* Dedicated pages and native Swiper share the same editorial typography. */
#smpls-editor-content .ae-page-hero h1 { margin: 0; color: var(--ae-ink); font: 400 clamp(48px, 6.4vw, 92px)/1.06 var(--smplsFontFamilyHeading), serif; letter-spacing: 0; text-wrap: balance; }
#smpls-editor-content .ae-page-hero { padding-bottom: 30px; }
.ae-page-hero .ae-section-head > .smpls-box-content { margin-bottom: 0; }
.ae-section a.ae-article-opener { display: block; color: var(--ae-ink) !important; text-decoration: none !important; }
.ae-section .ae-article-opener > span { display: block; }
.ae-section .ae-article-opener h3 { margin-bottom: 20px !important; }
.ae-section .ae-article-opener .ae-article-action { display: inline-flex; align-items: center; gap: 22px; padding-bottom: 9px; border-bottom: 1px solid var(--ae-line); }
.ae-section .ae-article-opener:hover .ae-article-action { color: var(--ae-accent); border-color: var(--ae-accent); }
.ae-section .ae-reading-column { max-width: 860px; margin-inline: auto; }
.ae-section .ae-reading-column .ae-photo { height: 460px; margin-bottom: 44px; }
#smpls-editor-content .ae-section .ae-reading-body h2 { margin: 35px 0 18px; font-size: 32px; }
#smpls-editor-content .ae-section .ae-reading-body p { font-size: 17px; line-height: 1.9; }
.ae-section .ae-reading-column .ae-link { margin: 36px 32px 0 0; }
.ae-review-slider { overflow: hidden; }
.ae-review-slider .swiper-wrapper { display: flex; align-items: stretch; }
.ae-review-slider .swiper-slide { height: auto; flex-shrink: 0; }
.ae-review-slider .ae-review-card { height: 100%; }
.ae-carousel-controls { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 28px; }
.ae-carousel-controls .swiper-pagination { position: static; width: auto; display: flex; gap: 12px; align-items: center; }
.ae-carousel-controls .swiper-pagination-bullet { display: block; width: 7px; height: 7px; border-radius: 50%; background: #796535; opacity: .35; cursor: pointer; margin: 0 !important; }
.ae-carousel-controls .swiper-pagination-bullet-active { opacity: 1; }
.ae-carousel-buttons { display: flex; gap: 10px; }
.ae-carousel-buttons button { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid var(--ae-line); background: transparent; color: var(--ae-ink); cursor: pointer; }
.ae-carousel-buttons .ae-review-next svg { transform: rotate(45deg); }
.ae-carousel-buttons .ae-review-prev svg { transform: rotate(225deg); }
.ae-carousel-buttons button:disabled { opacity: .35; cursor: default; }
.ae-carousel-buttons button:focus-visible { outline: 2px solid var(--ae-accent); outline-offset: 3px; }
@media(max-width:767px) { .ae-section .ae-reading-column .ae-photo { height: 280px; } }
#smpls-editor-content .ae-review-slider blockquote { border: 0; padding: 0; }
#smpls-editor-content .ae-review-slider figcaption { text-align: left; align-items: flex-start; }
