/* Shared editorial rhythm. Legacy cards keep their saved markup and contents. */
:is(.entry-content,.editor-styles-wrapper) { --hawk-module-gap: clamp(1.5rem, 3vw, 2.5rem); }
:is(.entry-content,.editor-styles-wrapper) .wp-block-columns > .wp-block-column:has(> .is-style-framed:only-child) { display:flex; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column > .is-style-framed:only-child {
	display:flex; flex-direction:column; width:100%; min-width:0; margin-block:0;
}
/* Core's constrained layout uses !important for auto inline margins. */
:is(.entry-content,.editor-styles-wrapper) .wp-block-column > .is-style-framed:only-child > * { margin-inline:0 !important; max-width:none; align-self:stretch; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column > .is-style-framed:only-child > :last-child:has(> a:only-child) { margin-top:auto; padding-top:1rem; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-group:is(.is-style-hawk-open-section,.hawk-project-module) {
	padding:0; border:0; background:transparent; margin-block:var(--hawk-module-gap, 2rem);
}
:is(.entry-content,.editor-styles-wrapper) .wp-block-group.is-style-hawk-open-section > :first-child { margin-top:0; }
.wp-block-group.is-style-hawk-reading { max-width:760px; margin-inline:auto; }
.wp-block-group.is-style-hawk-wide-section { width:100%; max-width:760px; margin-inline:auto; }
/* Wide/full refer to the available content frame, never the viewport. */
:is(.entry-content,.editor-styles-wrapper) :is(.alignwide,.alignfull,.is-style-hawk-wide-section) {
	position:static; left:auto; right:auto; width:100%; max-width:100%;
	margin-inline:0; transform:none;
}
.editor-styles-wrapper { --wp--style--global--wide-size:760px; }
.editor-styles-wrapper .is-root-container > :is(.alignwide,.alignfull) { max-width:760px; margin-inline:auto; }
.hawk-section-nav { padding:1rem 1.25rem; background:var(--color-soft,#f2f2f0); margin-block:1.5rem 2rem; }
.hawk-section-nav p { margin:0; }
.hawk-section-nav p + p { margin-top:.5rem; line-height:2; }
.hawk-section-nav a { display:inline-block; text-underline-offset:.2em; }
.hawk-section-nav a[aria-current="location"] { font-weight:700; text-decoration:underline; }
.entry-content :is(h2,h3):target { outline:2px solid var(--color-primary,#3026c5); outline-offset:.4rem; }
/* Stable image/title/link rows, also for legacy two-column workshop cards. */
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .hawk-topic-card) { display:flex; min-width:0; }
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card { display:flex; flex-direction:column; width:100%; min-width:0; margin:0; }
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card > :last-child { margin-top:auto; padding-top:1rem; }
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card__image img { width:100%; aspect-ratio:16/9; object-fit:cover; }
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card__image { margin-top:0; padding-bottom:.75rem; }
/* Reserve a caption row so the titles line up even when only one photo has a credit. */
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card__image { display:grid; grid-template-rows:auto minmax(1.8rem,auto); }
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card__image > img { grid-row:1; }
:is(.entry-content,.editor-styles-wrapper) .hawk-topic-card__image > figcaption { grid-row:2; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) > .wp-block-image img { width:100%; aspect-ratio:16/9; object-fit:cover; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) { display:flex; flex-direction:column; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) > .wp-block-image { display:grid; grid-template-rows:auto minmax(1.8rem,auto); }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) > .wp-block-image > img { grid-row:1; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) > .wp-block-image > figcaption { grid-row:2; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) > .is-style-framed { flex:1; display:flex; flex-direction:column; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-column:has(> .wp-block-image + .is-style-framed) > .is-style-framed > :last-child:has(> a:only-child) { margin-top:auto; padding-top:1rem; }
:is(.entry-content,.editor-styles-wrapper) .wp-block-group.hawk-project-module { padding-block:1.5rem; border-top:1px solid var(--color-border,#d8d8d8); }
.hawk-project-module > :first-child { margin-top:0; }
.hawk-project-module > :last-child { margin-bottom:0; }
.hawk-project-module .wp-block-image { margin-block:1rem 1.5rem; }
.wp-block-group.hawk-literature-entry { margin-block:0; padding-block:1.5rem; border-top:1px solid var(--color-border,#d8d8d8); }
.hawk-literature-entry > :first-child { margin-top:0; }
.hawk-literature-entry > :last-child { margin-bottom:0; }
.hawk-literature-entry .hawk-literature__meta { font-weight:600; margin-bottom:.5rem; }
.hawk-literature-entry h3 { font-size:1.1rem; line-height:1.45; margin-block:.5rem; }
.hawk-literature-entry p { overflow-wrap:anywhere; }
.wp-block-group.hawk-location-panel { padding:clamp(1rem,3vw,1.5rem); background:var(--color-soft,#f2f2f0); }
.hawk-location-panel > :first-child { margin-top:0; }
.hawk-location-panel > :last-child { margin-bottom:0; }
.hawk-profile-grid > .wp-block-column { border-top:1px solid var(--color-border,#d8d8d8); padding-top:1rem; }
figure.wp-block-image.is-style-hawk-panorama img { width:100%; height:auto; aspect-ratio:auto; object-fit:contain; }
figure.wp-block-image.is-style-hawk-portrait img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
figure.wp-block-image.is-style-hawk-portrait::before,figure.wp-block-image.is-style-hawk-portrait::after { content:none; }
.entry-content > :is(h2,h3) { margin-top:var(--hawk-module-gap); }
.entry-content > :is(h2,h3):first-child { margin-top:0; }
/* One controlled gap instead of hero padding + section padding + notice margin. */
#main-content > .section-space { padding-top:1.5rem; }
.entry-content > .wp-block-group:first-child { margin-top:0; }
.entry-content > .wp-block-image.is-style-hawk-hatched { padding-right:0; }
.entry-content > .wp-block-image.is-style-hawk-hatched::after { inset:auto 0 0; height:.75rem; }
.editor-styles-wrapper .wp-block-image.is-style-hawk-hatched { padding-right:0; }
@media(max-width:48rem) {
	.home .entry-content > .wp-block-group:is(.is-style-hawk-notice-info,.is-style-hawk-notice-hint):first-child { padding:1rem 1rem 1rem 2.9rem; margin-top:0; margin-bottom:1.5rem; font-size:.9375rem; }
	.home .entry-content > .wp-block-group:is(.is-style-hawk-notice-info,.is-style-hawk-notice-hint):first-child::before { left:.9rem; top:1.1rem; width:1.2rem; height:1.2rem; }
	.home .entry-content > .wp-block-group:is(.is-style-hawk-notice-info,.is-style-hawk-notice-hint):first-child p { font-size:inherit; line-height:1.5; }
}
