.ni-editorial {margin: 0; --ni-bg: #111110; --ni-panel: #1b1b18; --ni-text: #f3efe7; --ni-muted: #c0b9ad; --ni-gold: #c7aa72;}
.ni-editorial h1,.ni-editorial h2,.ni-editorial h3,.ni-editorial p,.ni-editorial figure {margin-top: 0;}
.ni-editorial h1 {font-size: clamp(48px,6.2vw,88px); line-height: 1.04; letter-spacing: -.035em;}
.ni-editorial h2 {font-size: clamp(36px,4vw,58px); line-height: 1.08; letter-spacing: -.025em;}
.ni-editorial h3 {font-size: clamp(26px,2.3vw,34px); line-height: 1.15; letter-spacing: -.015em;}
.ni-editorial :is(h1,h2,h3) em {font-weight: 400; color: var(--ni-gold);}
.ni-editorial p {color: var(--ni-muted); font-size: clamp(16px,1.1vw,18px); line-height: 1.75;}
.ni-editorial .ni-eyebrow {font-size: 10px; font-weight: 500; line-height: 1.8; letter-spacing: .22em; color: var(--ni-gold); margin: 0 0 22px;}
.ni-editorial img {max-width: 100%; display: block;}
.ni-editorial button {cursor: pointer;}
.ni-editorial .editorial-header {background: var(--ni-bg); border-bottom: 1px solid var(--ni-line); position: sticky; top: 0; z-index: 20;}
.ni-editorial :is(section[id],main[id]) {scroll-margin-top: 120px;}
.ni-editorial .ni-header {max-width: 1480px;}
.ni-editorial .editorial-skip {position: absolute; top: -100px; left: 24px; padding: 12px 20px; background: var(--ni-panel); z-index: 100;}
.ni-editorial .editorial-skip:focus {top: 16px;}
.ni-editorial .editorial-hero {position: relative; min-height: min(760px,85svh); display: flex; align-items: center; padding: 86px clamp(26px,8vw,128px); isolation: isolate;}
.ni-editorial .hero-image {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 64% 45%; z-index: -3;}
.ni-editorial .hero-shade {position: absolute; inset: 0; background: linear-gradient(90deg,#111110e5,#1111107b 56%,#11111024); z-index: -2;}
.ni-editorial .hero-copy {max-width: 850px;}
.ni-editorial .hero-copy h1 {margin-bottom: 28px;}
.ni-editorial .hero-lede {max-width: 50ch; margin-bottom: 34px; color: #ddd7cc;}
.ni-editorial .hero-actions {display: flex; flex-wrap: wrap; align-items: center; gap: 24px 30px;}
.ni-editorial .hero-note {position: absolute; bottom: 26px; right: 36px; font: 400 10px var(--ni-body); text-transform: uppercase; letter-spacing: .18em; color: var(--ni-muted);}
.ni-editorial .service-hero h1 {font-size: clamp(44px,5.1vw,74px);}
.ni-editorial .service-hero .hero-image {object-position: 60% center;}
.ni-editorial .service-hero:not(.baptism-hero) .hero-image {object-position:60% 62%;}
.ni-editorial .film-viewer {width:min(1120px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid #8b7445;border-radius:16px;background:#151410;color:var(--ni-text);overflow:auto;box-shadow:0 30px 100px #000a;}
.ni-editorial .film-viewer[open]{animation:ni-calendar-in .3s ease-out;}
.ni-editorial .film-viewer::backdrop{background:#070706dc;backdrop-filter:blur(7px);}
.ni-editorial .film-viewer-top {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;}
.ni-editorial .film-viewer-top .ni-eyebrow {font-size:9px;margin:0 0 8px;}
.ni-editorial .film-viewer h2 {font-size:clamp(26px,3vw,38px);margin:0;}
.ni-editorial .film-viewer button {border:1px solid var(--ni-line);border-radius:8px;background:#1d1a13;color:var(--ni-gold);min-height:42px;padding:8px 14px;font:500 12px/1.4 var(--ni-body);cursor:pointer;}
.ni-editorial .film-viewer button:focus-visible,.ni-editorial .film-viewer input:focus-visible {outline:2px solid var(--ni-gold);outline-offset:3px;}
.ni-editorial .film-viewer .film-close {font-size:26px;min-width:44px;}
.ni-editorial .film-screen {aspect-ratio:16/9;min-height:200px;background:#090908;border-radius:6px;overflow:hidden;}
.ni-editorial .film-screen iframe,.ni-editorial .film-player-host {width:100%;height:100%;border:0;display:block;}
.ni-editorial .film-status {font-size:12px;color:var(--ni-gold);margin:12px 0 0;}
.ni-editorial .film-status:empty {display:none;}
.ni-editorial .film-controls {display:flex;align-items:center;gap:12px;margin-top:18px;}
.ni-editorial .film-seek {flex:1;min-width:40px;accent-color:var(--ni-gold);cursor:pointer;}
.ni-editorial .film-time {font:400 11px/1.4 var(--ni-body);color:var(--ni-muted);white-space:nowrap;}
@media(max-width:767px){.ni-editorial .film-viewer{padding:16px}.ni-editorial .film-controls{flex-wrap:wrap;gap:8px}.ni-editorial .film-seek{order:5;flex-basis:100%}.ni-editorial .film-fullscreen{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.ni-editorial .film-viewer[open]{animation:none}.ni-editorial .film-viewer::backdrop{backdrop-filter:none}}
.ni-editorial .baptism-hero .hero-image {object-position: 70% center;}
.ni-editorial .text-link {font: 500 12px/1.6 var(--ni-body); text-decoration: none; border-bottom: 1px solid var(--ni-gold); padding-bottom: 7px; display: inline-block;}
.ni-editorial .ni-button {font-weight: 500; font-size: 12px; min-height: 50px;}
.ni-editorial .ni-button.secondary {border-color: var(--ni-line);}
.ni-editorial .editorial-section {width: min(100%,1440px); padding: 88px clamp(26px,8vw,128px); margin: 0 auto;}
.ni-editorial .section-heading {max-width: 790px; margin-bottom: 42px;}
.ni-editorial .section-heading h2 {margin-bottom: 22px;}
.ni-editorial .section-heading > p:not(.ni-eyebrow) {max-width: 54ch; margin-bottom: 0;}
.ni-editorial .artist {display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px,7vw,112px); align-items: center;}
.ni-editorial .artist-copy p:not(.ni-eyebrow) {max-width: 48ch;}
.ni-editorial .artist-photo {margin: 0; position: relative;}
.ni-editorial .legal-intro {padding-top:90px;padding-bottom:52px;}
.ni-editorial .legal-intro h1 {font-size:clamp(42px,5.5vw,78px);margin:22px 0;}
.ni-editorial .legal-intro>p {max-width:640px;color:var(--ni-muted);font-size:17px;line-height:1.8;}
.ni-editorial .legal-date {font:400 11px var(--ni-body);color:var(--ni-gold);}
.ni-editorial .legal-photo {max-width:1440px;margin:0 auto;height:clamp(220px,30vw,440px);overflow:hidden;}
.ni-editorial .legal-photo img {width:100%;height:100%;object-fit:cover;}
.ni-editorial .legal-layout {display:grid;grid-template-columns:260px minmax(0,1fr);gap:72px;align-items:start;}
.ni-editorial .legal-layout aside {position:sticky;top:142px;}
.ni-editorial .legal-layout nav {display:grid;gap:16px;}
.ni-editorial .legal-layout nav a {font:400 13px/1.5 var(--ni-body);text-decoration:none;display:flex;gap:12px;}
.ni-editorial .legal-layout nav span,.ni-editorial .legal-number {color:var(--ni-gold);font:400 10px var(--ni-body);}
.ni-editorial .legal-help {display:block;margin-top:34px;font-size:12px;color:var(--ni-gold);}
.ni-editorial .legal-copy section {scroll-margin-top:145px;padding:0 0 34px;margin-bottom:38px;border-bottom:1px solid var(--ni-line);}
.ni-editorial .legal-copy h2 {font-size:clamp(29px,3vw,40px);margin:12px 0 20px;}
.ni-editorial .legal-copy p {font:400 15px/1.9 var(--ni-body);color:var(--ni-muted);}
@media(max-width:767px){.ni-editorial .legal-intro{padding-top:52px}.ni-editorial .legal-layout{grid-template-columns:1fr;gap:42px}.ni-editorial .legal-layout aside{position:static}.ni-editorial .legal-layout nav{grid-template-columns:1fr 1fr;gap:14px}.ni-editorial .legal-copy section{scroll-margin-top:108px}}
.ni-editorial .artist-photo img {width: 100%; height: 540px; object-fit: cover; object-position:center top;}
.ni-editorial .artist-photo figcaption {color: var(--ni-gold); font: italic 400 21px var(--ni-display); padding-top: 16px; text-align: right;}
.ni-editorial .artist-signature {font: italic 400 32px/1.4 var(--ni-display); color: var(--ni-gold); margin: 25px 0 0;}
.ni-editorial .services {padding-top: 36px;}
.ni-editorial .service-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 24px;}
.ni-editorial .service-card {position: relative; min-height: 540px; text-decoration: none; display: flex; align-items: end; padding: 34px; overflow: hidden; isolation: isolate;}
.ni-editorial .service-card img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .35s ease;}
.ni-editorial .service-card::after {content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#111110ed,transparent 80%); z-index: -1;}
.ni-editorial .service-card:hover img {transform: scale(1.025);}
.ni-editorial .service-number {font: 500 10px var(--ni-body); letter-spacing: .15em; text-transform: uppercase; color: var(--ni-gold);}
.ni-editorial .service-card h3 {font-size: clamp(36px,3.8vw,56px); margin: 18px 0 0;}
.ni-editorial .service-arrow {position: absolute; right: 30px; bottom: 38px; font-size: 27px; color: var(--ni-gold);}
.ni-editorial .films {background: #161613; max-width: none;}
.ni-editorial .films > * {max-width: 1184px; margin-inline: auto;}
.ni-editorial .films .section-heading {max-width: 1184px;}
.ni-editorial .film-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px;}
.ni-editorial .film-card {margin: 0; min-width: 0;}
.ni-editorial .film-frame {aspect-ratio: 16/10; position: relative; background: #0a0a09;}
.ni-editorial .film-launch {display: block; position: relative; width: 100%; height: 100%; overflow: hidden;}
.ni-editorial .film-launch img {width: 100%; height: 100%; object-fit: cover; transition: filter .2s; filter: brightness(.75);}
.ni-editorial .film-launch:hover img {filter: brightness(.95);}
.ni-editorial .play-ring {position: absolute; inset: 0; margin: auto; width: 54px; height: 54px; display: grid; place-items: center; padding-left: 3px; border: 1px solid var(--ni-gold); border-radius: 50%; color: var(--ni-text); background: #11111054; font-size: 14px;}
.ni-editorial .film-prompt {position: absolute; left: 20px; bottom: 16px; font-size: 10px; color: var(--ni-text); letter-spacing: .08em;}
.ni-editorial .film-card figcaption {display: flex; gap: 14px; align-items: baseline; padding-top: 18px;}
.ni-editorial .film-index {font: 400 10px var(--ni-body); color: var(--ni-gold);}
.ni-editorial .film-card h3 {font-size: 25px; margin: 0;}
.ni-editorial .film-card h3 a {text-decoration: none;}
.ni-editorial .film-frame iframe {width: 100%; height: 100%; border: 0; display: block;}
.ni-editorial .single-film {max-width: 900px; grid-template-columns: 1fr;}
.ni-editorial .single-film .film-frame {aspect-ratio: 16/9;}
.ni-editorial .portfolio {padding-bottom: 64px;}
.ni-editorial .photo-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: clamp(240px,28vw,380px); grid-auto-flow: dense; gap: 18px;}
.ni-editorial .photo-tile {position: relative; display: block; min-width: 0; height: 100%; overflow: hidden; background: var(--ni-panel);}
.ni-editorial .photo-tile img {width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease;}
.ni-editorial .photo-tile:hover img {transform: scale(1.03);}
.ni-editorial .photo-tile > span {position: absolute; bottom: 16px; right: 16px; color: #fff; font-size: 23px; text-shadow: 0 1px 5px #000;}
.ni-editorial .photo-tile:is(.tile-0,.tile-3,.tile-4) {grid-column: span 2;}
.ni-editorial .photo-grid > .photo-tile:last-child:nth-child(odd) {grid-column: 1/-1;}
.ni-editorial .more-photos {margin-top: 26px; border-block: 1px solid var(--ni-line);}
.ni-editorial .more-photos > summary {cursor: pointer; list-style: none; padding: 20px 0; font: 500 12px var(--ni-body); color: var(--ni-gold); display: flex; justify-content: space-between;}
.ni-editorial .more-photos > summary::-webkit-details-marker {display: none;}
.ni-editorial .more-photos[open] .photo-grid {margin: 8px 0 24px;}
.ni-editorial .reviews {padding-top: 72px;}
.ni-editorial .review-grid {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 48px;}
.ni-editorial .review-card {margin: 0; padding: 30px 0; border-top: 1px solid var(--ni-line); display: flex; flex-direction: column; align-items: flex-start;}
.ni-editorial .quote-mark {font: 400 64px/.8 var(--ni-display); color: var(--ni-gold);}
.ni-editorial .review-card blockquote {margin: 18px 0 24px;}
.ni-editorial .review-card blockquote p {font-size: 15px; line-height: 1.8; margin: 0;}
.ni-editorial .review-card figcaption {display: flex; align-items: center; gap: 14px; margin-top: auto;}
.ni-editorial .review-avatar {width: 48px; height: 48px; border-radius: 50%; object-fit: cover;}
.ni-editorial .review-card cite {font: 500 12px var(--ni-body); color: var(--ni-text);}
.ni-editorial .process {border-bottom: 1px solid var(--ni-line);}
.ni-editorial .process ol {padding: 0; margin: 0; list-style: none; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px;}
.ni-editorial .step-number {font: 400 12px var(--ni-body); color: var(--ni-gold); border-top: 1px solid var(--ni-line); display: block; padding-top: 20px; margin-bottom: 24px;}
.ni-editorial .process p {font-size: 15px; margin: 0;}
.ni-editorial .package-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; align-items: stretch;}
.ni-editorial .package-card {border: 1px solid var(--ni-line); padding: 30px 26px; display: flex; flex-direction: column;}
.ni-editorial .package-featured {border-color: var(--ni-gold); background: #1c1a15;}
.ni-editorial .package-kicker {font: 500 10px var(--ni-body); color: var(--ni-gold); letter-spacing: .16em; text-transform: uppercase; margin-bottom: 20px;}
.ni-editorial .package-card h3 {font-size: 30px; margin-bottom: 20px;}
.ni-editorial .package-price {font: 500 54px/1 var(--ni-display); color: var(--ni-text); margin-bottom: 28px;}
.ni-editorial .package-price span {font-size: 24px; color: var(--ni-gold);}
.ni-editorial .package-card ul {list-style: none; padding: 0; margin: 0 0 30px;}
.ni-editorial .package-card li {font-size: 13px; line-height: 1.65; color: var(--ni-muted); padding: 10px 0; border-bottom: 1px solid #51463180;}
.ni-editorial .package-card .ni-button {margin-top: auto; padding-inline: 16px; gap: 10px; text-align: center;}
.ni-editorial .faq {display: grid; grid-template-columns: .8fr 1.2fr; gap: 64px; border-top: 1px solid var(--ni-line);}
.ni-editorial .faq-contact {font-size: 15px;}
.ni-editorial .faq-list details {border-bottom: 1px solid var(--ni-line);}
.ni-editorial .faq-list summary {cursor: pointer; padding: 22px 0; list-style: none; display: flex; justify-content: space-between; gap: 20px; font: 500 17px/1.5 var(--ni-body); color: var(--ni-text);}
.ni-editorial .faq-list summary::-webkit-details-marker {display: none;}
.ni-editorial .faq-plus {color: var(--ni-gold); font-size: 22px; flex: 0 0 16px; transition: transform .32s ease;}
.ni-editorial .faq-list details[open] .faq-plus {transform: rotate(45deg);}
.ni-editorial .faq-answer {padding: 0 28px 22px 0;}
.ni-editorial .faq-answer p,.ni-editorial .faq-answer li {font-family: var(--ni-body); color: var(--ni-muted); font-size: 15px; line-height: 1.8;}
.ni-editorial .faq-answer p:last-child {margin-bottom: 0;}
.ni-editorial .statement {max-width: 1060px; text-align: center;}
.ni-editorial .statement p:not(.ni-eyebrow) {max-width: 66ch; margin-inline: auto;}
.ni-editorial .editorial-cta {padding: 82px 26px; text-align: center; background: var(--ni-panel); border-block: 1px solid var(--ni-line);}
.ni-editorial .editorial-cta h2 {font-size: clamp(40px,4.5vw,64px); margin-bottom: 22px;}
.ni-editorial .editorial-cta p:not(.ni-eyebrow) {max-width: 55ch; margin: 0 auto 30px;}
.ni-editorial .editorial-footer {padding: 64px clamp(26px,6vw,96px) 28px;}
.ni-editorial .footer-main {max-width: 1248px; margin: auto; display: grid; grid-template-columns: 1.7fr 1fr .7fr; gap: 42px; padding-bottom: 46px;}
.ni-editorial .footer-brand {display: flex; align-items: flex-start; gap: 20px; text-decoration: none;}
.ni-editorial .footer-owl {width: 48px; height: 48px; object-fit: contain;}
.ni-editorial .footer-brand > span {display: flex; flex-direction: column;}
.ni-editorial .footer-brand .ni-brand-name {font-size: 30px;}
.ni-editorial .footer-brand .ni-brand-caption {font-size: 9px; max-width: 30ch;}
.ni-editorial .footer-label {font: 500 10px var(--ni-body); letter-spacing: .18em; text-transform: uppercase; color: var(--ni-gold); margin-bottom: 18px;}
.ni-editorial .footer-main > div > a {display: block; width: fit-content; color: var(--ni-muted); font-size: 13px; text-decoration: none; margin-bottom: 8px;}
.ni-editorial .footer-bottom {max-width: 1248px; margin: auto; padding-top: 24px; border-top: 1px solid var(--ni-line); display: flex; justify-content: space-between; gap: 24px; font-size: 10px; color: var(--ni-muted);}
.ni-editorial .footer-bottom a {text-decoration: none; margin-right: 16px;}
.ni-editorial .contact-intro {padding-bottom: 42px;}
.ni-editorial .contact-intro h1 {font-size: clamp(48px,5.4vw,78px);}
.ni-editorial .contact-lede {max-width: 65ch; margin: 0;}
.ni-editorial .contact-layout {padding-top: 20px; display: grid; grid-template-columns: .8fr 1.2fr; gap: 72px; align-items: start;}
.ni-editorial .contact-portrait {width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; object-position: center top; margin-bottom: 34px;}
.ni-editorial .contact-aside h2 {font-size: 40px;}
.ni-editorial .contact-aside p {font-size: 15px;}
.ni-editorial .contact-detail {display: block; font-size: 14px; text-decoration: none; width: fit-content; padding: 8px 0; border-bottom: 1px solid var(--ni-line);}
.ni-editorial .contact-location {color: var(--ni-gold); padding-top: 18px;}
.ni-editorial .contact-form-panel {border: 1px solid var(--ni-line); padding: 38px; background: #161613;}
.ni-editorial .contact-form-panel h2 {font-size: 34px; margin-bottom: 32px;}
.ni-editorial .form-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 24px 20px;}
.ni-editorial .form-grid label {font: 500 12px/1.5 var(--ni-body); color: var(--ni-text); display: flex; flex-direction: column; gap: 10px; min-width: 0;}
.ni-editorial .form-grid input,.ni-editorial .form-grid select,.ni-editorial .form-grid textarea {width: 100%; min-height: 46px; border: 0; border-bottom: 1px solid var(--ni-line); background: #111110; border-radius: 0; padding: 12px; color: var(--ni-text); font: 400 14px/1.5 var(--ni-body); color-scheme: dark;}
.ni-editorial .form-grid textarea {resize: vertical;}
.ni-editorial .date-field {position:relative;display:block;margin-top:10px;color:var(--ni-gold);}
.ni-editorial .form-grid .date-field input {margin-top:0;border:1px solid var(--ni-gold);border-radius:3px;background:#19160f;color:transparent;cursor:pointer;min-height:50px;}
.ni-editorial .date-field input::-webkit-datetime-edit {opacity:0;}
.ni-editorial .date-field input::-webkit-calendar-picker-indicator {filter:sepia(1) saturate(1.8);opacity:.9;cursor:pointer;}
.ni-editorial .date-display {position:absolute;left:13px;top:50%;transform:translateY(-50%);pointer-events:none;font:500 14px/1.5 var(--ni-body);letter-spacing:.06em;}
.ni-editorial .date-field:focus-within {outline:2px solid var(--ni-gold);outline-offset:4px;border-radius:3px;}
.ni-editorial .date-trigger {position:absolute;inset:0;width:100%;background:transparent;border:0;color:var(--ni-gold);cursor:pointer;text-align:right;padding:0 15px;font-size:23px;border-radius:3px;}
.ni-editorial .date-field:has(.date-trigger) input::-webkit-calendar-picker-indicator {opacity:0;}
.ni-editorial .date-picker {width:min(360px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:24px;background:#151410;color:var(--ni-text);border:1px solid #8b7445;border-radius:16px;box-shadow:0 28px 100px #0009;}
.ni-editorial .date-picker[open] {animation:ni-calendar-in .24s ease-out;}
.ni-editorial .date-picker::backdrop {background:#070706b8;backdrop-filter:blur(5px);}
.ni-editorial .date-picker button {font:500 13px/1.4 var(--ni-body);color:var(--ni-gold);background:transparent;border:0;cursor:pointer;border-radius:8px;min-height:40px;}
.ni-editorial .date-picker button:hover {background:#c4a66a1a;}
.ni-editorial .date-picker button:focus-visible {outline:2px solid var(--ni-gold);outline-offset:2px;}
.ni-editorial .date-picker-top {display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ni-line);padding-bottom:10px;}
.ni-editorial .date-picker-top .ni-eyebrow {margin:0;font-size:9px;}
.ni-editorial .date-picker-top button {width:36px;font-size:24px;}
.ni-editorial .date-picker-month {display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;margin:17px 0;}
.ni-editorial .date-picker-month h2 {font:500 27px/1.2 var(--ni-display);text-align:center;text-transform:capitalize;margin:0;color:var(--ni-gold);}
.ni-editorial .date-weekdays,.ni-editorial .date-days {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center;}
.ni-editorial .date-weekdays {font:500 10px/1.4 var(--ni-body);color:#a69e8e;padding-bottom:10px;}
.ni-editorial .date-days button {aspect-ratio:1;color:var(--ni-text);min-height:36px;}
.ni-editorial .date-days button[aria-current=date] {box-shadow:inset 0 0 0 1px #8b7445;color:var(--ni-gold);}
.ni-editorial .date-days button[aria-pressed=true] {background:var(--ni-gold);color:#11110e;box-shadow:0 3px 14px #c4a66a25;}
.ni-editorial .date-picker-bottom {display:flex;justify-content:space-between;border-top:1px solid var(--ni-line);margin-top:18px;padding-top:10px;}
@keyframes ni-calendar-in {from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.ni-editorial .date-picker[open]{animation:none}.ni-editorial .date-picker::backdrop{backdrop-filter:none}}
.ni-editorial .form-grid input::placeholder,.ni-editorial .form-grid textarea::placeholder {color: #aaa394; opacity: 1;}
.ni-editorial .form-wide {grid-column: 1/-1;}
.ni-editorial .privacy-choice {display: flex; align-items: flex-start; gap: 12px; margin-block: 28px; font: 400 11px/1.8 var(--ni-body); color: var(--ni-muted);}
.ni-editorial .privacy-choice input {margin: 5px 0 0; accent-color: var(--ni-gold); width: 16px; height: 16px; flex-shrink: 0;}
.ni-editorial .form-note {font-size: 11px; margin: 18px 0 0;}
.ni-editorial .enquiry-form .ni-button {width: 100%;}
.ni-editorial .contact-photo {margin: 0; position: relative; height: 380px; overflow: hidden; isolation: isolate; display: grid; place-items: center;}
.ni-editorial .contact-photo img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; filter: brightness(.45);}
.ni-editorial .contact-photo figcaption {font: italic 400 clamp(30px,4vw,52px)/1.2 var(--ni-display); text-align: center; padding: 26px; color: var(--ni-text);}
.ni-editorial .thanks-hero {text-align: center; padding-top: 70px; padding-bottom: 56px;}
.ni-editorial .thanks-seal {display: grid; place-items: center; margin: 30px auto; width: 50px; height: 50px; border: 1px solid var(--ni-gold); border-radius: 50%; color: var(--ni-gold); font-size: 18px;}
.ni-editorial .thanks-hero h1 {margin-bottom: 24px;}
.ni-editorial .thanks-lede {max-width: 58ch; margin-inline: auto;}
.ni-editorial .preview-only-note {font-size: 11px; color: var(--ni-gold);}
.ni-editorial .thanks-next {display: grid; grid-template-columns: 1fr 1fr; gap: 72px; border-block: 1px solid var(--ni-line); padding-block: 58px;}
.ni-editorial .thanks-next h2 {font-size: 40px;}
.ni-editorial .thanks-next p:not(.ni-eyebrow) {max-width: 50ch; font-size: 15px; margin-bottom: 0;}
.ni-editorial .thanks-links {text-align: center; padding-block: 48px;}
.ni-editorial .thanks-links > div {display: flex; gap: 18px; justify-content: center; flex-wrap: wrap;}
.ni-editorial .photo-viewer {position: fixed; inset: 0; width: 100%; height: 100dvh; max-width: none; max-height: none; margin: 0; padding: 72px 24px 56px; background: #111110f5; color: var(--ni-text); border: 0;}
.ni-editorial .photo-viewer::backdrop {background: #000c;}
.ni-editorial .photo-viewer img {width: 100%; height: 100%; object-fit: contain;}
.ni-editorial .photo-viewer img {opacity: 0; transform: scale(.992); transition: opacity .38s ease,transform .5s ease;}
.ni-editorial .photo-viewer img.is-visible {opacity: 1; transform: scale(1);}
.ni-editorial .photo-viewer[open] {animation: ni-viewer-in .32s ease both;}
.ni-editorial .photo-viewer.is-closing {animation: ni-viewer-out .24s ease both;}
.ni-editorial .photo-viewer-status {position: absolute; inset: 0; margin: auto; width: fit-content; height: fit-content; display: none; align-items: center; gap: 16px; color: var(--ni-gold); font: 400 13px var(--ni-body);}
.ni-editorial .photo-viewer.is-loading .photo-viewer-status,.ni-editorial .photo-viewer.is-error .photo-viewer-status {display: flex;}
.ni-editorial .photo-viewer.is-loading .photo-viewer-status::before {content: ''; width: 28px; height: 28px; border: 1px solid #c7aa7233; border-top-color: var(--ni-gold); border-radius: 50%; animation: ni-loader 1s linear infinite;}
@keyframes ni-viewer-in {from {opacity:0;} to {opacity:1;}}
@keyframes ni-viewer-out {from {opacity:1;} to {opacity:0;}}
@keyframes ni-loader {to {transform:rotate(360deg);}}
.ni-editorial .service-enquiry {display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;border-top:1px solid var(--ni-line);align-items:start;}
.ni-editorial .service-enquiry > div:first-child {position:sticky;top:140px;}
.ni-editorial .service-enquiry .contact-form-panel h3 {margin-bottom:28px;}
.ni-editorial .service-enquiry .form-grid label {display:block;}
.ni-editorial .service-enquiry .form-grid input,.ni-editorial .service-enquiry .form-grid select,.ni-editorial .service-enquiry .form-grid textarea {display:block;margin-top:10px;}
.ni-editorial .photo-viewer button {position: absolute; background: var(--ni-bg); border: 1px solid var(--ni-line); color: var(--ni-gold); min-width: 48px; min-height: 48px; font-size: 24px;}
.ni-editorial .photo-viewer-close {right: 24px; top: 16px;}
.ni-editorial .photo-viewer-prev {left: 16px; top: calc(50% - 24px);}
.ni-editorial .photo-viewer-next {right: 16px; top: calc(50% - 24px);}
.ni-editorial .photo-viewer-caption {position: absolute; bottom: 16px; left: 24px; right: 24px; text-align: center; font-size: 12px;}
@media(max-width:1100px) {
 .ni-editorial .editorial-section {padding-inline: 42px;}
 .ni-editorial .contact-layout {gap: 36px;}
 .ni-editorial .contact-form-panel {padding: 28px;}
 .ni-editorial .package-card {padding: 26px 20px;}
 .ni-editorial .faq {gap: 36px;}
}
@media(max-width:767px) {
 .ni-editorial h1 {font-size: clamp(44px,11vw,58px);}
 .ni-editorial h2 {font-size: 40px;}
 .ni-editorial .ni-brand-name {font-size: 28px;}
 .ni-editorial .editorial-hero {min-height: min(680px,84svh); padding: 60px 26px;}
 .ni-editorial .hero-image {object-position: 60% center;}
 .ni-editorial .hero-shade {background: linear-gradient(90deg,#111110db,#11111063);}
 .ni-editorial .hero-lede {font-size: 16px;}
 .ni-editorial .hero-actions {gap: 22px;}
 .ni-editorial .hero-note {left: 26px; right: auto; font-size: 9px;}
 .ni-editorial .service-hero h1 {font-size: clamp(38px,9.5vw,52px);}
 .ni-editorial .service-hero .hero-image {object-position: 67% center;}
 .ni-editorial .editorial-section {padding: 54px 26px;}
 .ni-editorial .section-heading {margin-bottom: 30px;}
 .ni-editorial .artist {grid-template-columns: 1fr; gap: 32px;}
 .ni-editorial .artist-photo img {height: 420px;}
 .ni-editorial .service-grid {grid-template-columns: 1fr; gap: 20px;}
 .ni-editorial .service-card {min-height: 440px; padding: 28px;}
 .ni-editorial .service-card h3 {font-size: 46px;}
 .ni-editorial .film-grid {grid-template-columns: 1fr; gap: 32px;}
 .ni-editorial .film-frame {aspect-ratio: 16/10;}
 .ni-editorial .photo-grid {grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: clamp(200px,65vw,300px); gap: 12px;}
 .ni-editorial .photo-tile:is(.tile-0,.tile-5) {grid-column:span 2;}
 .ni-editorial .photo-tile:is(.tile-1,.tile-2,.tile-3,.tile-4) {grid-column:span 1;}
 .ni-editorial .photo-grid > .photo-tile:last-child:nth-child(odd) {grid-column:1/-1;}
 .ni-editorial .service-enquiry {grid-template-columns:1fr;gap:30px;}
 .ni-editorial .service-enquiry > div:first-child {position:static;}
 .ni-editorial .review-grid {grid-template-columns: 1fr; gap: 16px;}
 .ni-editorial .review-card {padding-block: 24px;}
 .ni-editorial .process ol {grid-template-columns: 1fr; gap: 32px;}
 .ni-editorial .step-number {margin-bottom: 18px;}
 .ni-editorial .package-grid {grid-template-columns: 1fr; gap: 20px;}
 .ni-editorial .package-card {padding: 28px;}
 .ni-editorial .package-card h3 {font-size: 32px;}
 .ni-editorial .package-price {font-size: 56px;}
 .ni-editorial .faq {grid-template-columns: 1fr; gap: 0;}
 .ni-editorial .faq-contact {margin-bottom: 24px;}
 .ni-editorial .faq-list summary {font-size: 15px; padding-block: 20px;}
 .ni-editorial .faq-answer {padding-right: 0;}
 .ni-editorial .editorial-cta {padding-block: 58px;}
 .ni-editorial .editorial-footer {padding-top: 46px;}
 .ni-editorial .footer-main {grid-template-columns: 1fr 1fr; gap: 30px 20px; padding-bottom: 32px;}
 .ni-editorial .footer-brand {grid-column: 1/-1; padding-bottom: 28px; border-bottom: 1px solid var(--ni-line);}
 .ni-editorial .footer-main > div > a {font-size: 12px; overflow-wrap: anywhere;}
 .ni-editorial .footer-bottom {flex-wrap: wrap; gap: 14px;}
 .ni-editorial .footer-bottom > span:last-child {display: none;}
 .ni-editorial .contact-intro {padding-bottom: 18px;}
 .ni-editorial .contact-layout {grid-template-columns: 1fr; gap: 36px; padding-top: 26px;}
 .ni-editorial .contact-portrait {height: auto; aspect-ratio: 4/5;}
 .ni-editorial .contact-form-panel {padding: 28px 20px;}
 .ni-editorial .form-grid {grid-template-columns: 1fr; gap: 22px;}
 .ni-editorial .contact-photo {height: 280px;}
 .ni-editorial .contact-intro h1 {font-size: 48px;}
 .ni-editorial .thanks-hero {padding-block: 54px;}
 .ni-editorial .thanks-next {grid-template-columns: 1fr; gap: 40px;}
 .ni-editorial .thanks-next h2 {font-size: 36px;}
 .ni-editorial .thanks-links .ni-button {width: 100%;}
}
@media(max-width:360px) {
 .ni-editorial .ni-brand-name {font-size: 25px;}
 .ni-editorial .hero-copy h1 {font-size: 40px;}
 .ni-editorial .hero-copy .ni-eyebrow {font-size: 9px;}
 .ni-editorial .ni-button {padding-inline: 16px; gap: 14px;}
}
@media(prefers-reduced-motion:reduce) {
 .ni-editorial .service-card img,.ni-editorial .film-launch img,.ni-editorial .photo-tile img {transition: none;}
 .ni-editorial .photo-viewer[open],.ni-editorial .photo-viewer.is-closing,.ni-editorial .photo-viewer-status::before {animation:none;}
 .ni-editorial .photo-viewer img,.ni-editorial .faq-plus {transition:none;}
}


.ni-editorial .ni-honeypot {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.ni-editorial .enquiry-feedback:empty {display:none;}
.ni-editorial .enquiry-feedback {color:var(--ni-gold);font-size:14px;}
.ni-editorial button:disabled {opacity:.65;cursor:wait;}
.admin-bar.ni-editorial .editorial-header {top:32px;}
@media(max-width:782px){.admin-bar.ni-editorial .editorial-header {top:46px;}}
.ni-editorial #wpadminbar {position:fixed;}

html:has(>body.ni-editorial) {overflow-x:clip;overflow-y:visible;} body.ni-editorial.nikola-design {overflow:visible;}

/* Native anchor motion; keep headings below the sticky header. */
html.nia-smooth-scroll{scroll-behavior:smooth}
.ni-editorial :is(section,main,h1,h2,h3)[id]{scroll-margin-top:var(--nia-anchor-offset,120px)}
@media(prefers-reduced-motion:reduce){html.nia-smooth-scroll{scroll-behavior:auto}}



