/** Premium only. Shared grid tokens come from site.css; no global art direction. */
@font-face {
 font-family: 'Unbounded'; font-style: normal; font-weight: 200 900; font-display: swap;
 src: url('../fonts/unbounded/Unbounded-VariableFont_wght.ttf') format('truetype');
}
.huugo-premium {
 --hp-ink: #14111c; --hp-paper: #fff; --hp-blue: #2413d9; --hp-pink: #ff48bd;
 --hp-cyan: #64eeff; --hp-yellow: #ffed56; --hp-orange: #ff7a38; --hp-violet: #7143ed;
 --wp--preset--font-family--body: 'Unbounded', sans-serif;
 --wp--preset--font-family--editorial: 'Unbounded', sans-serif;
 --wp--preset--font-family--display: 'Unbounded', sans-serif;
 --wp--custom--spacing--outer: 0px;
 font-family: 'Unbounded', sans-serif; color: var(--hp-ink); background: var(--hp-paper);
 font-size: 1rem; font-weight: 350; line-height: 1.85;
}
/* An explicit invariant also overrides saved font utility classes/inline choices. */
.huugo-premium :is(h1,h2,h3,h4,h5,h6,p,a,span,li,dt,dd,blockquote,cite,figcaption,button,input,select,textarea,summary,time,table,pre,code,.wp-block-post-content) {
 font-family: 'Unbounded', sans-serif !important;
}
.huugo-premium :is(h1,h2,h3,h4,h5,h6) { font-weight: 650; line-height: 1.18; letter-spacing: -.045em; text-wrap: balance; }
.huugo-premium a { color: inherit; }
.huugo-premium ::selection { background: var(--hp-yellow); color: var(--hp-ink); }
.huugo-premium :focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.huugo-premium :is(img,video,iframe) { max-width: 100%; }
.huugo-premium .wp-site-blocks { padding: 0; }
.huugo-premium .wp-site-blocks > * { margin-block-start: 0; }
.huugo-premium .wp-site-blocks > header.wp-block-template-part { position: relative; z-index: 20; color: #fff; }
.huugo-premium .wp-site-blocks > header.wp-block-template-part::after { display: none; }
.huugo-premium .wp-site-blocks:has(.hp-article) > header.wp-block-template-part { position: absolute; inset: auto 0 auto; }
.huugo-premium .wp-site-blocks :is(.hp-main,.hp-content,.hp-header,.hp-footer,.hp-hero).alignfull {
 width: 100%; max-width: none; margin-inline: 0 !important; padding-inline: 0;
}
.huugo-premium .hp-main { margin-block: 0; }
.huugo-premium .hp-content { padding-block: clamp(2.5rem,5vw,5rem); }
.huugo-premium .hp-content > * { margin-block: 0 1.7em; }
.huugo-premium .hp-content > :not(.alignwide,.alignfull,.alignleft,.alignright) {
 width: min(calc(100% - 2 * var(--huugo-gutter)),var(--huugo-content)); max-width: var(--huugo-content); margin-inline: auto;
}
.huugo-premium .hp-content > .alignwide {
 width: min(calc(100% - 2 * var(--huugo-gutter)),var(--huugo-wide)); max-width: var(--huugo-wide); margin-inline: auto;
}
.huugo-premium .hp-content > .alignfull { width: 100%; max-width: none; margin-inline: 0 !important; }
.huugo-premium .hp-content > :is(h2,h3,h4) { margin-block-start: 2.5em; }
.huugo-premium .hp-content > :is(h2,h3,h4):first-child { margin-block-start: 0; }
.huugo-premium .hp-content > h2 { font-size: clamp(1.65rem,3vw,2.6rem); }
.huugo-premium .hp-content > h3 { font-size: clamp(1.3rem,2.3vw,1.9rem); }
.huugo-premium .hp-content > .alignfull + :not(.alignfull) { margin-block-start: clamp(2.5rem,5vw,5rem); }
.huugo-premium .hp-content > .alignfull { margin-block: clamp(2.5rem,5vw,5rem); }
.huugo-premium .hp-content > .alignfull:first-child { margin-block-start: 0; }
.huugo-premium .hp-content > .alignfull:last-child { margin-block-end: 0; }
.huugo-premium .hp-content:has(> .alignfull:first-child) { padding-block-start: 0; }
.huugo-premium .hp-content:has(> .alignfull:last-child) { padding-block-end: 0; }
.huugo-premium .hp-content :is(figcaption,cite) { color: inherit; font-size: .75rem; line-height: 1.6; font-style: normal; }
.huugo-premium .hp-content blockquote:not(.hp-quote) { border-inline-start: 3px solid var(--hp-blue); padding-inline-start: 1.5rem; }
.huugo-premium .hp-content :is(pre,.wp-block-table) { overflow-x: auto; }
.huugo-premium .hp-content :is(ul,ol) { padding-inline-start: 1.5em; }
.huugo-premium .hp-content .wp-block-gallery { gap: var(--huugo-grid-gap); }
.huugo-premium .wp-block-button__link { border-radius: 0; background: var(--hp-ink); color: #fff; padding: 1em 1.5em; font-weight: 550; font-size: .875rem; line-height: 1.5; }
.huugo-premium .wp-block-button__link:hover { background: var(--hp-blue); }
/* Solid strips stay legible on any photograph; native details needs no JS. */
.huugo-premium .hp-header { background: var(--hp-ink); color: #fff; }
.huugo-premium .wp-site-blocks:has(.hp-article) .hp-header { background: transparent; }
.huugo-premium .hp-header__inner { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding-block: 1.4rem; }
.huugo-premium .hp-brand { display: block; background: var(--hp-ink); padding: .9rem 1.1rem; }
.huugo-premium .hp-wordmark { width: 9rem; height: auto; }
.huugo-premium .hp-nav { display: flex; align-items: stretch; gap: 2px; font-size: .6875rem; font-weight: 500; line-height: 1.5; }
.huugo-premium :is(.hp-home,.hp-menu summary) { display: flex; align-items: center; gap: 1rem; min-height: 48px; padding: .85rem 1rem; background: var(--hp-ink); color: #fff; text-decoration: none; }
.huugo-premium :is(.hp-home:hover,.hp-menu summary:hover) { background: var(--hp-blue); }
.huugo-premium .hp-menu { position: relative; }
.huugo-premium .hp-menu summary { cursor: pointer; list-style: none; }
.huugo-premium .hp-menu summary::-webkit-details-marker { display: none; }
.huugo-premium .hp-menu[open] summary { background: var(--hp-blue); }
.huugo-premium .hp-menu__panel { position: absolute; top: 100%; right: 0; width: min(22rem,calc(100vw - 2 * var(--huugo-gutter))); padding: 1rem; background: var(--hp-ink); border-top: 2px solid var(--hp-pink); max-height: 65vh; overflow-y: auto; }
.huugo-premium .hp-menu__panel a { display: block; padding: .9rem .5rem; min-height: 44px; }
.huugo-premium .hp-languages { padding: .8rem 0 0; margin: 0; list-style: none; border-top: 1px solid #777; }
.huugo-premium .hp-languages a[aria-current] { color: var(--hp-yellow); }
.huugo-premium .hp-skip { position: absolute; top: -10rem; left: var(--huugo-gutter); background: #fff; color: var(--hp-ink); padding: 1rem; z-index: 30; }
.huugo-premium .hp-skip:focus { top: 1rem; }
.huugo-premium .hp-footer { background: var(--hp-ink); color: #fff; padding-block: 2rem; }
.huugo-premium .hp-footer__inner { display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; font-size: .6875rem; line-height: 1.6; }
.huugo-premium .hp-footer .hp-wordmark { width: 7rem; margin-right: auto; }
.huugo-premium .hp-footer a { display: inline-flex; align-items: center; min-height: 44px; }
/* Page: a simple editable title, never a mandatory image hero. */
.huugo-premium .hp-page-title { padding-block: clamp(2.5rem,5vw,5rem); margin-block: 0; font-size: clamp(2.5rem,6.5vw,7rem); }
/* Article: poster opening, then a plain reading canvas. */
.huugo-premium .hp-hero.wp-block-cover { position: relative; isolation: isolate; display: flex; align-items: flex-end; min-height: 45rem; min-height: min(58rem,100svh); padding-block: 11rem 3rem; background: var(--hp-blue); color: #fff; }
.huugo-premium .hp-hero .wp-block-cover__image-background { filter: saturate(1.65) contrast(1.12); }
.huugo-premium .hp-hero .wp-block-cover__background { background: #100b2c !important; opacity: .62 !important; }
.huugo-premium .hp-hero .wp-block-cover__inner-container { width: 100%; z-index: 2; color: #fff; }
.huugo-premium .hp-hero__grid { row-gap: 2rem; }
.huugo-premium .hp-hero__grid > * { margin: 0; }
.huugo-premium .hp-hero__label { grid-column: 1 / -1; }
.huugo-premium .hp-hero__title { grid-column: 1 / -1; font-size: clamp(2.7rem,7.3vw,8rem); font-weight: 800; line-height: 1.02; letter-spacing: -.04em; max-width: 17ch; overflow-wrap: anywhere; text-wrap: balance; }
.huugo-premium .hp-subtitle { grid-column: 5 / -1; max-width: 42rem; font-size: clamp(1rem,1.6vw,1.45rem); line-height: 1.65; }
.huugo-premium .hp-subtitle p { margin: 0; }
.huugo-premium .hp-meta { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 1rem; padding-top: 1.5rem; border-top: 1px solid #ffffff80; font-size: .6875rem; line-height: 1.8; }
/* Reusable native block primitives. */
.huugo-premium .hp-annotation { font-size: .6875rem; font-weight: 450; line-height: 1.7; letter-spacing: .015em; }
.huugo-premium .hp-pattern { position: relative; isolation: isolate; overflow: clip; padding-block: clamp(3rem,7vw,7rem); }
.huugo-premium .hp-pattern .huugo-layout-grid { row-gap: 2rem; }
.huugo-premium .hp-pattern .huugo-layout-grid > * { margin-block: 0; }
.huugo-premium .hp-pattern .wp-block-heading { margin-block: 0; }
.huugo-premium .hp-display { font-size: clamp(2.5rem,7.8vw,8rem); line-height: 1.06; font-weight: 800; letter-spacing: -.04em; overflow-wrap: anywhere; }
.huugo-premium .hp-outline { color: transparent; -webkit-text-stroke: 1.5px currentColor; -webkit-text-stroke-color: var(--hp-outline-ink,#fff); }
@supports not (-webkit-text-stroke: 1px white) { .huugo-premium .hp-outline { color: var(--hp-outline-ink,#fff); } }
.huugo-premium .hp-number { font-size: clamp(7rem,24vw,24rem); line-height: .9; font-weight: 850; letter-spacing: -.09em; overflow-wrap: anywhere; }
.huugo-premium .hp-grain::after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; opacity: .13; background: url('../premium/grain.svg') repeat; }
.huugo-premium .hp-grain > * { position: relative; z-index: 2; }
.huugo-premium .hp-grain.wp-block-cover > :is(.wp-block-cover__background,.wp-block-cover__image-background) { position: absolute; z-index: 0; }
.huugo-premium .hp-saturated img { filter: saturate(1.65) contrast(1.12); }
.huugo-premium .hp-statement { background: var(--hp-blue); color: #fff; }
.huugo-premium .hp-statement .hp-annotation:first-child { grid-column: 1 / 5; }
.huugo-premium .hp-statement .hp-display { grid-column: 2 / -1; }
.huugo-premium .hp-statement .hp-annotation:last-child { grid-column: 9 / -1; }
.huugo-premium .hp-number-panel { background: var(--hp-yellow); color: var(--hp-ink); }
.huugo-premium .hp-number-panel .hp-number { grid-column: 1 / 8; }
.huugo-premium .hp-number-panel .hp-number-copy { grid-column: 9 / -1; align-self: end; }
.huugo-premium .hp-number-copy h2 { font-size: clamp(1.4rem,2.7vw,2.4rem); }
.huugo-premium .hp-image-aside { background: var(--hp-pink); }
.huugo-premium .hp-image-aside figure { grid-column: 1 / 9; position: relative; }
.huugo-premium .hp-image-aside img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.huugo-premium .hp-image-aside .hp-aside { grid-column: 10 / -1; align-self: end; }
.huugo-premium .hp-aside h2 { font-size: clamp(1.3rem,2.2vw,2rem); }
.huugo-premium .hp-panel-cover.wp-block-cover { min-height: 42rem; padding: clamp(2rem,6vw,6rem) var(--huugo-gutter); }
.huugo-premium .hp-panel-cover .wp-block-cover__inner-container { width: min(100%,var(--huugo-wide)); color: var(--hp-ink); }
.huugo-premium .hp-panel { width: min(36rem,100%); margin-left: auto; background: #fff; color: var(--hp-ink); padding: clamp(1.5rem,4vw,4rem); }
.huugo-premium .hp-panel h2 { font-size: clamp(2rem,3.5vw,3.5rem); }
.huugo-premium .hp-quote-panel { background: var(--hp-orange); color: var(--hp-ink); }
.huugo-premium .hp-quote { border: 0; padding: 0; margin-block: 0; }
.huugo-premium .hp-quote p { font-size: clamp(2rem,5.5vw,5.5rem); font-weight: 650; line-height: 1.17; letter-spacing: -.055em; margin: 0 0 2rem; }
.huugo-premium .hp-quote cite { display: block; text-align: right; }
.huugo-premium .hp-feature { background: var(--hp-cyan); color: var(--hp-ink); }
.huugo-premium .hp-feature .hp-annotation { grid-column: 1 / 4; }
.huugo-premium .hp-feature .hp-display { grid-column: 4 / -1; }
.huugo-premium .hp-feature .hp-feature__copy { grid-column: 7 / -1; max-width: 35rem; }
.huugo-premium .hp-symbols { padding-block: 2rem; background: var(--hp-violet); color: #fff; text-align: center; font-size: clamp(3rem,9vw,8rem); line-height: 1; letter-spacing: .12em; }
.huugo-premium .hp-symbols p { margin: 0; }
.huugo-premium .hp-closing { background: var(--hp-ink); color: #fff; }
.huugo-premium .hp-closing .hp-display { grid-column: 1 / 11; }
.huugo-premium .hp-closing .hp-closing__note { grid-column: 8 / -1; }
.huugo-premium .hp-closing .wp-block-button__link { background: var(--hp-yellow); color: var(--hp-ink); }
/* Editor canvas: class follows the selected template, including unsaved changes. */
.huugo-premium.hp-editor { padding-inline: 0; }
.huugo-premium.hp-editor .is-root-container > :not([data-align='full'],[data-align='wide'],.alignfull,.alignwide),
.huugo-premium.hp-editor .editor-post-title { max-width: var(--huugo-content); margin-inline: auto; }
.huugo-premium.hp-editor .is-root-container > :is([data-align='full'],.alignfull) { width: 100%; max-width: none; margin-inline: 0; }
.huugo-premium.hp-editor .is-root-container > :is([data-align='wide'],.alignwide) { max-width: var(--huugo-wide); margin-inline: auto; }
.huugo-premium.hp-editor .hp-pattern.alignfull { margin-inline: 0 !important; padding-inline: 0; }
.huugo-premium.hp-editor .hp-pattern.hp-panel-cover { padding-inline: var(--huugo-gutter); }
.huugo-premium.hp-editor .huugo-layout-grid > .block-editor-inner-blocks,
.huugo-premium.hp-editor .huugo-layout-grid > .block-editor-inner-blocks > .block-editor-block-list__layout { display: grid; grid-column: 1 / -1; grid-template-columns: subgrid; gap: inherit; }
.huugo-premium.hp-editor .hp-pattern .wp-block { max-width: none; }
.huugo-premium.hp-editor .huugo-layout-grid .block-list-appender { grid-column: 1 / -1; }
@media (max-width: 1000px) {
 .huugo-premium .hp-hero__title { font-size: clamp(2.7rem,8vw,5.5rem); }
 .huugo-premium .hp-subtitle { grid-column: 4 / -1; }
 .huugo-premium .hp-image-aside figure { grid-column: 1 / 8; }
 .huugo-premium .hp-image-aside .hp-aside { grid-column: 9 / -1; }
 .huugo-premium .hp-number-panel .hp-number-copy { grid-column: 8 / -1; }
}
@media (max-width: 699px) {
 .huugo-premium { font-size: .9375rem; line-height: 1.85; }
 .huugo-premium .hp-header__inner { padding-block: 1rem; gap: .5rem; align-items: center; }
 .huugo-premium .hp-brand { padding: .5rem; }
 .huugo-premium .hp-wordmark { width: 6.5rem; }
 .huugo-premium :is(.hp-home,.hp-menu summary) { gap: .4rem; padding-inline: .65rem; font-size: .625rem; }
 .huugo-premium .hp-hero.wp-block-cover { min-height: 42rem; min-height: 90svh; padding-block: 9rem 2rem; }
 .huugo-premium .hp-hero__grid { row-gap: 1.5rem; }
 .huugo-premium .hp-hero__title { font-size: clamp(2.4rem,10.5vw,4.5rem); }
 .huugo-premium .hp-subtitle { grid-column: 2 / -1; font-size: .9375rem; }
 .huugo-premium .hp-meta { gap: .5rem 1rem; font-size: .625rem; }
 .huugo-premium .hp-statement .hp-annotation:first-child { grid-column: 1 / -1; }
 .huugo-premium .hp-statement .hp-display { grid-column: 1 / -1; }
 .huugo-premium .hp-statement .hp-annotation:last-child { grid-column: 5 / -1; }
 .huugo-premium .hp-number-panel .hp-number { grid-column: 1 / -1; font-size: clamp(8rem,34vw,15rem); }
 .huugo-premium .hp-number-panel .hp-number-copy { grid-column: 5 / -1; }
 .huugo-premium .hp-image-aside figure { grid-column: 1 / -2; }
 .huugo-premium .hp-image-aside img { aspect-ratio: 3 / 4; }
 .huugo-premium .hp-image-aside .hp-aside { grid-column: 4 / -1; }
 .huugo-premium .hp-panel-cover.wp-block-cover { min-height: 38rem; align-items: flex-end; }
 .huugo-premium .hp-feature .hp-annotation { grid-column: 1 / -1; }
 .huugo-premium .hp-feature .hp-display { grid-column: 1 / -1; }
 .huugo-premium .hp-feature .hp-feature__copy { grid-column: 3 / -1; }
 .huugo-premium .hp-closing .hp-display { grid-column: 1 / -1; }
 .huugo-premium .hp-closing .hp-closing__note { grid-column: 3 / -1; }
 .huugo-premium .hp-footer__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
 .huugo-premium .hp-footer__top { grid-column: 2; }
}
@media (prefers-reduced-motion: reduce) {
 html:has(body.huugo-premium) { scroll-behavior: auto; }
 .huugo-premium *, .huugo-premium *::before, .huugo-premium *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
 .huugo-premium .hp-outline { color: CanvasText; -webkit-text-stroke: 0; }
 .huugo-premium .hp-grain::after { display: none; }
 .huugo-premium .hp-brand { forced-color-adjust: none; background: #14111c; }
}
@media print {
 .huugo-premium :is(.hp-header,.hp-footer,.hp-grain::after) { display: none; }
 .huugo-premium .hp-hero.wp-block-cover { min-height: 0; padding-block: 2rem; }
 .huugo-premium .hp-outline { color: #000; -webkit-text-stroke: 0; }
}
