/* Keep Elementor's structural wrappers from changing the original section geometry. */
.elementor .elementor-element.sls-layout { --container-max-width:100%; --container-default-padding-top:0; --container-default-padding-right:0; --container-default-padding-bottom:0; --container-default-padding-left:0; --widgets-spacing:0; gap:0; padding:0; margin:0; width:100%; max-width:none; }
.sls-layout > .e-con-inner { max-width:none; padding:0; gap:0; }
.sls-layout .elementor-widget { margin:0; width:100%; }
.sls-layout .elementor-widget-container { margin:0; padding:0; }
.elementor-widget-sls-shell { position:static; }
body.admin-bar .site-header { top:32px; }
.elementor-editor-active .reveal { opacity:1!important; transform:none!important; }
.elementor-editor-active .site-header { position:relative; }
.elementor-editor-active .hero h1 .line > span { transform:none; opacity:1; }
@media(max-width:782px){body.admin-bar .site-header{top:46px;}}
@media(max-width:600px){body.admin-bar .site-header.is-scrolled{top:0;}}

/* Editorial and legal pages inherit the original navy, gold and cream system. */
.sls-posts .post-body h2 { font-size:clamp(1.4rem,2.2vw,2rem); line-height:1.3; }
.sls-posts .post-img { display:block; }
.sls-posts .post-img img { width:100%; height:100%; object-fit:cover; }
.sls-post-cover { width:100%; max-height:560px; object-fit:cover; border-radius:var(--radius); margin-top:48px; }
.sls-post-hero h1 { max-width:24ch; font-size:clamp(2rem,4.5vw,4rem); }
.sls-article-body,.sls-document-body { background:var(--cream); color:var(--dark-text); padding:72px 24px; }
.sls-article-body > div,.sls-document-body > .elementor-widget-container,.sls-document-body > .elementor-widget-container > div { max-width:74ch; margin-inline:auto; }
.sls-article-body h2,.sls-document-body h2 { font-size:clamp(1.45rem,2.6vw,2rem); margin-block:2.3em .75em; line-height:1.3; }
.sls-article-body h2:first-child,.sls-document-body h2:first-child { margin-top:0; }
.sls-article-body p,.sls-document-body p { color:var(--dark-muted); font-size:1.08rem; line-height:1.9; overflow-wrap:anywhere; }
.sls-article-body a,.sls-document-body a { color:#785b19; text-decoration:underline; text-underline-offset:3px; }
.sls-reading-links { display:flex; flex-wrap:wrap; gap:20px; justify-content:space-between; align-items:center; }
.sls-footer-legal { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px 40px; padding-block:24px; font-size:.82rem; }
.sls-footer-legal nav { display:flex; gap:16px 28px; flex-wrap:wrap; }
.sls-footer-legal p { margin:0; }
.sls-footer-legal a:hover { color:var(--gold-2); text-decoration:underline; text-underline-offset:4px; }
.sls-footer-legal p a { color:var(--gold-2); }
.sls-not-found { padding-top:calc(var(--header-h) + 80px); min-height:75vh; }
.sls-error-code { font-family:var(--sls-display); font-size:clamp(5rem,14vw,10rem); color:var(--gold-2); line-height:1; margin:0 0 28px; }
.sls-not-found h1 { font-size:clamp(2rem,4vw,3.8rem); }
.sls-not-found .container > p:not(.sls-error-code) { max-width:60ch; color:var(--muted); margin-block:24px 40px; }
.sls-not-found .sls-reading-links { justify-content:flex-start; }
.pagination .nav-links { display:flex; gap:12px; flex-wrap:wrap; margin-top:44px; }
.pagination .page-numbers { min-width:44px; padding:8px 16px; border:1px solid var(--dark-line); border-radius:8px; color:var(--dark-text); }
.pagination .current { background:var(--ink); color:var(--cream); }
@media(max-width:600px){.sls-article-body,.sls-document-body{padding:48px 24px;}.sls-post-cover{margin-top:28px;}.sls-footer-legal{display:block;}.sls-footer-legal p{margin-top:18px;}.sls-reading-links .btn{width:100%;justify-content:center;}}
.sls-layout .sls-article-body > .elementor-widget-container,.sls-layout .sls-document-body > .elementor-widget-container { max-width:74ch; margin-inline:auto; }
/* Elementor 4 can omit the widget-container wrapper; keep readable measures in both modes. */
.sls-layout .sls-article-body,.sls-layout .sls-document-body { padding:72px max(24px,calc((100% - 780px) / 2)); }
.elementor img.sls-post-cover { border-radius:var(--radius); }
.sls-posts { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:600px){.sls-layout .sls-article-body,.sls-layout .sls-document-body{padding:48px 24px;}.sls-posts{grid-template-columns:1fr;}}
