/* Structural primitives with token fallbacks when used with another theme. */
.shashkevych-section, .shashkevych-section * { box-sizing: border-box; }
.shashkevych-section img { max-inline-size: 100%; }
.shashkevych-section__inner { min-inline-size: 0; }
.shashkevych-eyebrow { font-size: var(--wp--preset--font-size--small, 0.875rem); font-weight: 600; }
.shashkevych-rich-text { margin-block-end: var(--wp--preset--spacing--40, 1.5rem); }
.shashkevych-rich-text > :first-child { margin-block-start: 0; }
.shashkevych-rich-text > :last-child { margin-block-end: 0; }
.shashkevych-rich-text a { text-underline-offset: 0.2em; }
.shashkevych-section :focus-visible { outline: 3px solid var(--wp--preset--color--accent, #3159da); outline-offset: 4px; }
.shashkevych-section { padding-block: var(--wp--preset--spacing--60, 3rem); overflow-wrap: anywhere; }
.shashkevych-section__inner { max-inline-size: var(--wp--style--global--wide-size, 1200px); margin-inline: auto; }
.shashkevych-section.alignfull > .shashkevych-section__inner { padding-inline: var(--wp--preset--spacing--40, 1.5rem); }
.shashkevych-section h2 { margin-block: 0 var(--wp--preset--spacing--30, 1rem); }
.shashkevych-section__intro { max-inline-size: 65ch; margin-block: 0 var(--wp--preset--spacing--50, 2rem); color: var(--wp--preset--color--muted, #5d6671); }
.shashkevych-button { display: inline-flex; align-items: center; justify-content: center; padding: 0.75rem 1.25rem; border-radius: var(--wp--custom--radius--small, 0.5rem); background: var(--wp--preset--color--accent, #3159da); color: var(--wp--preset--color--surface, #fff); text-decoration: none; line-height: 1.4; }
.shashkevych-button:hover { text-decoration: underline; text-underline-offset: 0.2em; }
.shashkevych-button:focus-visible { outline: 3px solid var(--wp--preset--color--accent, #3159da); outline-offset: 4px; }
.shashkevych-block-placeholder { padding: 1.5rem; border: 1px dashed currentColor; }
