/** NovaDream Studio Patterns */
.nd-pattern {
    box-sizing: border-box;
    padding-block: var(--nd-space-10, 4rem);
}
.nd-pattern--hero,
.nd-pattern--media,
.nd-pattern--conversion,
.nd-pattern--event,
.nd-pattern--profile,
.nd-pattern--feature-grid {
    border-radius: var(--nd-radius-large, 1.5rem);
}
.nd-pattern__eyebrow {
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--nd-color-text-muted, currentColor);
}
.nd-pattern__media-stage {
    min-height: 26rem;
    display: grid;
    place-items: center;
    padding: var(--nd-space-6, 2rem);
    border-radius: var(--nd-radius-large, 1.5rem);
    background: var(--nd-color-surface-alt, transparent);
}
.nd-pattern__media-stage {
    min-height: 26rem;
}
.nd-pattern--feature-grid .wp-block-column {
    padding: var(--nd-space-5, 1.5rem);
    border: 1px solid var(--nd-color-border-subtle, currentColor);
    border-radius: var(--nd-radius-medium, 1rem);
    background: var(--nd-color-surface, transparent);
}
.nd-pattern--conversion {
    padding-inline: var(--nd-space-6, 2rem);
    background: var(--nd-color-surface-alt, transparent);
}
@media (max-width: 782px) {
    .nd-pattern {
        padding-block: var(--nd-space-7, 2.5rem);
    }
    .nd-pattern__media-stage {
        min-height: 14rem;
    }
}

/* NovaDream dynamic public experience sections — v1.02.02 */
.nd-public-dynamic-section,.nd-public-contact,.nd-public-commerce,.nd-agency-categories{width:min(1180px,calc(100% - 32px));margin:clamp(32px,6vw,80px) auto}.nd-public-section-heading{text-align:center;max-width:760px;margin:0 auto 24px}.nd-public-section-heading h2{margin:0 0 8px}.nd-public-section-heading p{margin:0}.nd-public-card-grid,.nd-agency-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.nd-public-card,.nd-agency-category-card{overflow:hidden;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:18px;background:var(--nd-color-surface,#fff)}.nd-public-card>img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.nd-public-card__body,.nd-agency-category-card{padding:20px}.nd-public-card__body h3,.nd-agency-category-card h3{margin-top:0}.nd-agency-category-card__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.nd-agency-category-card__head span{font-size:.86rem;opacity:.7}.nd-public-contact__form{max-width:760px;margin:0 auto}.nd-public-contact__form form{display:grid;gap:14px}.nd-public-contact__form input,.nd-public-contact__form select,.nd-public-contact__form textarea{width:100%;box-sizing:border-box}.nd-public-commerce .woocommerce ul.products{margin-bottom:0}@media(max-width:900px){.nd-public-card-grid,.nd-agency-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.nd-public-card-grid,.nd-agency-category-grid{grid-template-columns:1fr}.nd-public-dynamic-section,.nd-public-contact,.nd-public-commerce,.nd-agency-categories{width:min(100% - 20px,1180px)}}

.nd-public-card__media{display:block;overflow:hidden}.nd-public-card__media img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.nd-public-card__body h3 a{color:inherit;text-decoration:none}.nd-public-text-link{display:inline-flex;margin-top:8px;font-weight:700}

.nd-editor-only-note{width:min(760px,calc(100% - 32px));margin:24px auto;padding:14px 16px;border:1px dashed currentColor;border-radius:12px;opacity:.72}

/* 1.03.62 — Site Kit identity and editorial composition, isolated from Nova plugin UIs. */
.nd-sitekit-page .nd-entry { max-width: 100%; }
.nd-sitekit-page .nd-entry__content > .nd-sitekit-hero:first-child { margin-block-start: 0; }
.nd-sitekit-hero { --nd-kit-accent: currentColor; position:relative; isolation:isolate; margin:0 auto clamp(28px,5vw,76px); width:min(1320px,calc(100% - 32px)); overflow:hidden; border-radius:clamp(12px,2.4vw,28px); background:var(--nd-color-surface-alt,#f4f4f5); color:var(--nd-color-text,#171717); }
.nd-sitekit-hero__inner { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); align-items:center; min-height:clamp(320px,37vw,560px); }
.nd-sitekit-hero__copy { position:relative; z-index:1; padding:clamp(28px,6vw,90px); min-width:0; }
.nd-sitekit-hero__copy h1 { max-width:16ch; font-size:clamp(2.15rem,5.3vw,5.25rem); font-weight:600; letter-spacing:-.045em; line-height:1.02; overflow-wrap:anywhere; margin:0; }
.nd-sitekit-hero__summary { max-width:48ch; font-size:clamp(1rem,1.55vw,1.3rem); line-height:1.55; margin:clamp(16px,2vw,28px) 0 0; }
.nd-sitekit-hero__media { align-self:stretch; margin:0; min-width:0; min-height:300px; overflow:hidden; }
.nd-sitekit-hero__media img { display:block; width:100%; height:100%; max-height:650px; object-fit:cover; }
.nd-sitekit-hero__inner:not(:has(.nd-sitekit-hero__media)) { grid-template-columns:1fr; min-height:clamp(230px,26vw,390px); }
.nd-sitekit-hero__inner:not(:has(.nd-sitekit-hero__media)) .nd-sitekit-hero__copy { max-width:1000px; margin:auto; }
.nd-sitekit-page .nd-public-card-grid { align-items:stretch; }
.nd-sitekit-page .nd-public-card { transition:transform .18s ease,border-color .18s ease; }
.nd-sitekit-page .nd-sitekit-destination .nd-public-card__body { padding:clamp(20px,2vw,34px); }
.nd-sitekit-destination h3 { font-size:clamp(1.1rem,1.8vw,1.65rem); margin:0; line-height:1.2; }
.nd-sitekit-destination h3 a { text-underline-offset:.18em; }
.nd-sitekit-page .nd-public-sitekit-navigation .nd-public-card-grid { gap:clamp(12px,2vw,28px); }
/* Industry-specific presentation; underlying site typography and branding stay editable. */
.nd-sitekit--creator .nd-sitekit-hero { border-radius:8px 8px 64px 8px; }
.nd-sitekit--creator .nd-sitekit-hero__inner { grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); }
.nd-sitekit--creator .nd-sitekit-hero__copy { border-inline-start:5px solid var(--nd-color-primary,currentColor); margin-inline-start:clamp(20px,3vw,46px); }
.nd-sitekit--film .nd-sitekit-hero { background:#10151d; color:#f5f5f4; border-radius:4px; }
.nd-sitekit--film .nd-sitekit-hero__inner { grid-template-columns:1fr; position:relative; min-height:clamp(340px,45vw,650px); }
.nd-sitekit--film .nd-sitekit-hero__media { position:absolute; inset:0; z-index:-1; opacity:.44; }
.nd-sitekit--film .nd-sitekit-hero__media img { max-height:none; }
.nd-sitekit--film .nd-sitekit-hero__copy { align-self:end; }
.nd-sitekit--film .nd-sitekit-hero__copy h1 { max-width:19ch; text-transform:uppercase; letter-spacing:-.025em; }
.nd-sitekit--streaming .nd-sitekit-hero { border-radius:16px; outline:1px solid color-mix(in srgb,currentColor 22%,transparent); outline-offset:-10px; }
.nd-sitekit--streaming .nd-sitekit-hero__copy h1 { letter-spacing:-.055em; }
.nd-sitekit--streaming .nd-sitekit-hero__media { padding:clamp(18px,2.5vw,36px); }
.nd-sitekit--streaming .nd-sitekit-hero__media img { border-radius:12px; }
.nd-sitekit--gaming .nd-sitekit-hero { clip-path:polygon(0 0,100% 0,100% 93%,97% 100%,0 100%); }
.nd-sitekit--gaming .nd-sitekit-hero__copy h1 { text-transform:uppercase; font-weight:750; line-height:.95; }
.nd-sitekit--music .nd-sitekit-hero { border-radius:0; }
.nd-sitekit--music .nd-sitekit-hero__inner { grid-template-columns:1fr 1fr; }
.nd-sitekit--music .nd-sitekit-hero__copy { text-align:center; }
.nd-sitekit--music .nd-sitekit-hero__copy h1 { margin-inline:auto; }
.nd-sitekit--business .nd-sitekit-hero { border-radius:6px; border-block-start:6px solid var(--nd-color-primary,currentColor); }
.nd-sitekit--business .nd-sitekit-hero__copy h1 { letter-spacing:-.035em; font-weight:550; }
.nd-sitekit--agency .nd-sitekit-hero { border-radius:3px; }
.nd-sitekit--agency .nd-sitekit-hero__inner { grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); }
.nd-sitekit--agency .nd-sitekit-hero__media img { object-position:50% 23%; }
.nd-sitekit--agency .nd-sitekit-hero__copy h1 { font-weight:500; text-transform:uppercase; letter-spacing:.02em; }
.nd-sitekit--commerce .nd-sitekit-hero { border-radius:12px; }
.nd-sitekit--commerce .nd-sitekit-hero__inner { grid-template-columns:1fr 1fr; }
.nd-sitekit--commerce .nd-sitekit-hero__copy { text-align:center; }
.nd-sitekit--commerce .nd-sitekit-hero__copy h1 { margin:auto; font-weight:500; }
.nd-sitekit--event .nd-sitekit-hero { border-inline-start:12px solid var(--nd-color-primary,currentColor); border-radius:0 20px 20px 0; }
.nd-sitekit--event .nd-sitekit-hero__copy h1 { font-weight:680; max-width:20ch; }
.nd-sitekit-contact-form { display:grid; gap:16px; }
.nd-sitekit-contact-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.nd-sitekit-contact-form label { display:grid; gap:7px; font-weight:500; }
.nd-sitekit-contact-form input,.nd-sitekit-contact-form textarea { width:100%; min-width:0; max-width:100%; padding:12px; border:1px solid var(--nd-color-border,#adb5bd); border-radius:10px; box-sizing:border-box; font:inherit; }
.nd-sitekit-contact-form button { min-height:48px; padding:12px 24px; border-radius:10px; justify-self:start; border:0; color:var(--nd-color-on-primary,#fff); background:var(--nd-color-primary,#262626); cursor:pointer; }
.nd-sitekit-contact-form :focus-visible,.nd-sitekit-destination a:focus-visible { outline:3px solid currentColor; outline-offset:3px; }
.nd-sitekit-honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.nd-sitekit-contact-privacy { margin:0; font-size:.9rem; opacity:.78; }
.nd-sitekit-contact-status { padding:14px; border:1px solid currentColor; border-radius:10px; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) { .nd-sitekit-page .nd-public-card:hover { transform:translateY(-3px); } }
@media (max-width:800px) { .nd-sitekit-hero__inner,.nd-sitekit--creator .nd-sitekit-hero__inner,.nd-sitekit--agency .nd-sitekit-hero__inner,.nd-sitekit--music .nd-sitekit-hero__inner,.nd-sitekit--commerce .nd-sitekit-hero__inner { grid-template-columns:1fr; } .nd-sitekit-hero__inner { min-height:0; } .nd-sitekit-hero__media { min-height:220px; max-height:400px; } .nd-sitekit-hero__copy { padding:clamp(24px,6vw,48px); } .nd-sitekit--film .nd-sitekit-hero__inner { min-height:390px; } }
@media (max-width:560px) { .nd-sitekit-hero { width:calc(100% - 20px); } .nd-sitekit-hero__copy h1 { font-size:clamp(2.05rem,9vw,3.25rem); } .nd-sitekit--creator .nd-sitekit-hero__copy { margin-inline-start:14px; } .nd-sitekit-contact-fields { grid-template-columns:1fr; } .nd-sitekit-contact-form button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .nd-sitekit-page .nd-public-card { transition:none; } }

/* Site Kit-specific content navigation, not a repeated universal card treatment. */
.nd-sitekit-destination h3 a { display:block; min-height:44px; align-content:center; }
.nd-sitekit--creator .nd-public-sitekit-navigation .nd-public-card { border:0; border-block-end:2px solid currentColor; border-radius:0; background:transparent; }
.nd-sitekit--film .nd-public-sitekit-navigation .nd-public-card { border-radius:3px; background:#192029; color:#fafafa; }
.nd-sitekit--streaming .nd-public-sitekit-navigation .nd-public-card { border-radius:20px; border-width:2px; }
.nd-sitekit--gaming .nd-public-sitekit-navigation .nd-public-card { border-radius:2px; border-inline-start:6px solid var(--nd-color-primary,currentColor); }
.nd-sitekit--music .nd-public-sitekit-navigation .nd-public-card { border:0; border-radius:0; border-block:1px solid currentColor; background:transparent; text-align:center; }
.nd-sitekit--business .nd-public-sitekit-navigation .nd-public-card { border-radius:0; border-inline-start:3px solid var(--nd-color-primary,currentColor); box-shadow:0 9px 30px rgba(0,0,0,.045); }
.nd-sitekit--agency .nd-public-sitekit-navigation .nd-public-card { border-radius:0; border-block-start:4px solid var(--nd-color-primary,currentColor); }
.nd-sitekit--commerce .nd-public-sitekit-navigation .nd-public-card { border-radius:14px; text-align:center; }
.nd-sitekit--event .nd-public-sitekit-navigation .nd-public-card { border-radius:0 14px 14px 0; border-inline-start:5px solid var(--nd-color-primary,currentColor); }
