/* Shared Samantha primitives, scoped to inserted patterns only. */
.sjd-design { color:var(--sjd-ink);font-family:var(--sjd-sans);font-size:16px;line-height:1.65;isolation:isolate; }
.sjd-design.sjd-design.sjd-design h2 { font-family:var(--sjd-script);font-size:48px !important;font-weight:500;line-height:1em; }
.sjd-design *, .sjd-design *::before, .sjd-design *::after { box-sizing:border-box; }
.sjd-design .wp-block-group { margin-block:0; }
/* Classic-theme Group blocks add an inner container in the editor and may
 * retain it in saved markup. It must not become the only grid/flex child.
 * Modern Group blocks have no such wrapper and are unaffected. Keep editor
 * controls and content blocks intact; flatten only these structural wrappers.
 */
.sjd-design.wp-block-group > .wp-block-group__inner-container,
.sjd-design .wp-block-group > .wp-block-group__inner-container,
.sjd-design.wp-block-group > .block-editor-inner-blocks,
.sjd-design .wp-block-group > .block-editor-inner-blocks,
.sjd-design.wp-block-group > .block-editor-inner-blocks > .block-editor-block-list__layout,
.sjd-design .wp-block-group > .block-editor-inner-blocks > .block-editor-block-list__layout {
 display:contents;
}
.sjd-design.sjd-design :where(h1,h2,h3,h4,p,figure,blockquote,ul,ol) { margin:0; }
.sjd-design :where(h1,h2,h3,h4) { color:inherit;overflow-wrap:break-word; }
.sjd-design h1 { font-family:var(--sjd-h1);font-weight:700;line-height:1.05; }
.sjd-design h2 { font-family:var(--sjd-script);font-weight:700;font-size:clamp(32px,4.5vw,64px);line-height:1em;letter-spacing:0; }
.sjd-design h3 { font-family:var(--sjd-serif);font-weight:400;font-size:clamp(24px,2.7vw,38px);line-height:1.2; }
.sjd-design p { color:inherit; }
.sjd-design img { display:block;max-width:100%;height:auto; }
.sjd-design .sjd-image { margin:0; }
.sjd-design .sjd-image > a { display:block;height:100%; }
.sjd-design .sjd-link { margin:0; }
.sjd-design a { color:inherit;text-decoration:underline;text-underline-offset:4px; }
.sjd-design .sjd-container { width:min(var(--sjd-content-width),calc(100% - 80px));margin-inline:auto; }
.sjd-design .sjd-btn { display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;max-width:100%;padding:14px 26px;border:1px solid var(--sjd-pine);border-radius:var(--sjd-button-radius);background:transparent;color:var(--sjd-pine);font-family:var(--sjd-ui);font-size:13px;font-weight:700;letter-spacing:.08em;line-height:1.4;text-align:center;text-decoration:none; }
.sjd-design .sjd-btn-fill { background:var(--sjd-pine);color:var(--sjd-white); }
.sjd-design .sjd-btn:hover { background:var(--sjd-deep-pine);border-color:var(--sjd-deep-pine);color:var(--sjd-white); }
.sjd-design .sjd-btn-light { color:inherit;border-color:currentColor; }
.sjd-design .sjd-text-link { display:inline-flex;gap:10px;align-items:center;font-family:var(--sjd-ui);font-size:14px;font-weight:700; }
.sjd-design .sjd-reveal { opacity:1;transform:none; }
.sjd-design :focus-visible { outline:3px solid currentColor;outline-offset:4px; }
.sjd-design [id] { scroll-margin-top:32px; }
.sjd-design details { border-bottom:1px solid var(--sjd-line); }
.sjd-design summary { cursor:pointer;min-height:44px; }
.sjd-design details > p { padding-bottom:20px; }
.sjd-design .sjd-hidden { display:none; }
@media(max-width:1120px) { .sjd-design .sjd-container { width:calc(100% - 48px); } }
@media(max-width:760px) { .sjd-design .sjd-container { width:calc(100% - 32px); } }
@media(prefers-reduced-motion:reduce) { .sjd-design *,.sjd-design *::before,.sjd-design *::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; } }
