/* Bold UI Design / Novus: typography-first art direction */
.bold-novus{background:#030611;color:#fbf7fa;overflow:hidden;font-family:Arial,Helvetica,sans-serif}
.bold-novus *{box-sizing:border-box}.bold-novus a{color:inherit;text-decoration:none}
.bn-hero{--px:50%;--py:50%;min-height:820px;height:calc(100svh - 76px);max-height:1200px;position:relative;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate;padding:5vh clamp(25px,5vw,95px) 5vh;overflow:hidden;background:#02040e}
.bn-sky{position:absolute;inset:0;z-index:-3;background-image:url("https://images.unsplash.com/photo-1763227676675-36ba34c26545?auto=format&fit=crop&w=2400&q=88");background-size:cover;background-position:center;filter:saturate(1.15) contrast(1.26) brightness(.7);transform:scale(1.04)}
.bn-hero:before{content:"";inset:0;position:absolute;z-index:-2;background:linear-gradient(180deg,#01030b99,#05051119 38%,#05051140 70%,#01030bf5),linear-gradient(90deg,#01030be0,transparent 36%,transparent 66%,#01030baa),radial-gradient(ellipse at 70% 75%,#ff2c7044,transparent 55%)}
.bn-hero:after{content:"";position:absolute;pointer-events:none;inset:0;z-index:-1;background:radial-gradient(circle 260px at var(--px) var(--py),#ff52801c,transparent 80%);mix-blend-mode:screen}
.bn-signal{position:absolute;z-index:0;width:120vw;height:2px;left:-10vw;top:66%;background:linear-gradient(90deg,transparent 3%,#fc47796e 30%,#ff8fae 65%,transparent 100%);transform:rotate(-13deg);filter:drop-shadow(0 0 9px #ff4b85)}
.bn-hero-top,.bn-hero-floor{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:10px;font-weight:700;letter-spacing:.24em}
.bn-hero-top b{color:#ff4b81;font-size:20px;vertical-align:middle;margin-right:10px}
.bn-title-wrap{position:relative;z-index:1;width:100%;margin:auto}
.bn-title-wrap h1{margin:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;justify-content:center;text-align:center;line-height:.74;gap:0;letter-spacing:-.05em;white-space:nowrap}
.bn-giant{display:block;font:900 clamp(100px,17vw,355px)/.75 Impact,"Liberation Sans Narrow","Arial Narrow",sans-serif;letter-spacing:-.073em;transform:scaleX(.69) scaleY(1.45);transform-origin:center;text-shadow:0 4px 50px #01010999}
.bn-dreams{color:#fff}.bn-impact{color:#fff}
.bn-into{position:relative;z-index:2;font:italic 400 clamp(45px,6vw,120px)/1 Georgia,serif;letter-spacing:-.12em;color:#ff4679;text-shadow:0 0 28px #ff46794d;transform:rotate(-9deg);margin:0 -1.1vw}
.bn-accent-rule{height:1px;width:90px;background:#ff4b80;margin:9vh auto 0;box-shadow:0 0 20px #ff4b80}
.bn-floor-statement{line-height:1.7}.bn-discover{display:inline-flex;gap:60px;align-items:center;border-bottom:1px solid #ff5483;padding-bottom:14px;transition:gap .2s,color .2s}.bn-discover:hover{gap:75px;color:#ff89aa}.bn-discover span{color:#ff6b96;font-size:22px}
.bn-side-index{position:absolute;right:15px;top:40%;writing-mode:vertical-rl;letter-spacing:.27em;font-size:9px;color:#d4b6c6}
.bn-interlude{background:#ff477c;color:#070513;padding:23px 0;overflow:hidden;transform:skewY(-1.7deg);margin:-16px 0 0;position:relative;z-index:2}
.bn-interlude-copy{white-space:nowrap;text-align:center;font:900 clamp(24px,3vw,60px)/1 Impact,"Arial Narrow",sans-serif;letter-spacing:.03em}.bn-interlude-copy span{color:#fff;padding:0 35px}
.bn-manifesto-intro{background:#070816;display:flex;align-items:center;justify-content:center;text-align:center;padding:clamp(95px,12vw,170px) 24px clamp(80px,10vw,125px);position:relative}
.bn-interlude-description{max-width:840px;margin:0 auto;color:#e9dde6;font:600 clamp(21px,2.35vw,30px)/1.55 Arial,sans-serif;letter-spacing:.005em;text-wrap:balance}

.bn-index{background:#070816;padding:100px max(4vw,24px) 150px}
.bn-index-head{display:flex;justify-content:space-between;gap:20px;color:#ff719a;font-size:11px;letter-spacing:.19em;padding:0 0 25px}
.bn-index-row{min-height:200px;border-top:1px solid #494054;display:grid;grid-template-columns:80px 1fr 80px;align-items:center;gap:15px;transition:background .25s,padding .25s}
.bn-index-row:last-child{border-bottom:1px solid #494054}.bn-index-row:hover{background:#1f1028;padding-left:26px}
.bn-index-num{color:#ff5c8b;font-size:12px;letter-spacing:.1em}
.bn-index-main{display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.bn-index-main strong{display:block;font:900 clamp(65px,9.2vw,160px)/.86 Impact,"Liberation Sans Narrow","Arial Narrow",sans-serif;letter-spacing:-.045em;transform:scaleX(.87);transform-origin:left}
.bn-index-main small{font-size:10px;letter-spacing:.14em;color:#b6abbf;white-space:nowrap}
.bn-index-advance{justify-self:end;color:#ff527f;font-size:44px;transition:transform .2s}
.bn-index-row:hover .bn-index-advance{transform:translate(6px,-6px)}
.bn-final{background:#07030e;padding:100px max(5vw,24px) 140px;position:relative;overflow:hidden}
.bn-final:before{content:"";position:absolute;width:65vw;height:65vw;border-radius:50%;background:#ff28701e;filter:blur(110px);right:-25vw;top:-30vw;pointer-events:none}
.bn-final-overline{font-size:11px;letter-spacing:.2em;color:#ff7a9f}
.bn-final-grid{display:flex;align-items:end;justify-content:space-between;gap:30px;position:relative}
.bn-final h2{font:900 clamp(105px,15vw,285px)/.78 Impact,"Liberation Sans Narrow",sans-serif;letter-spacing:-.08em;margin:70px 0 0;transform:scaleX(.82);transform-origin:left}
.bn-final h2 em{font-style:normal;color:#ff527f}
.bn-final-grid>div{padding-bottom:10px}
.bn-final-grid p{font:italic 26px Georgia,serif;white-space:nowrap}
.bn-final-grid a{display:flex;justify-content:space-between;gap:80px;padding:19px 20px;border:1px solid #ff527f;font-size:11px;letter-spacing:.15em;transition:background .2s}
.bn-final-grid a:hover{background:#ff527f22}
@media(max-width:1200px){.bn-title-wrap h1{grid-template-columns:1fr;gap:0}.bn-giant{font-size:clamp(130px,24vw,280px);transform:scaleX(.76) scaleY(1.12)}.bn-into{margin:-10px 0;font-size:clamp(60px,10vw,100px)}.bn-index-main small{display:none}}
@media(max-width:680px){.bn-hero{min-height:620px;height:calc(100svh - 68px);padding:35px 18px}.bn-hero-top{font-size:8px}.bn-hero-top>span:last-child{display:none}.bn-giant{font-size:clamp(110px,28vw,190px);transform:scaleX(.76) scaleY(1.2)}.bn-into{font-size:15vw}.bn-accent-rule{margin:5vh auto 0}.bn-hero-floor{font-size:9px;align-items:end}.bn-floor-coordinates,.bn-side-index{display:none}.bn-discover{gap:15px}.bn-interlude{padding:16px 0}.bn-interlude-copy{text-align:left;position:relative;left:-65px;font-size:33px}.bn-index{padding:70px 17px 110px}.bn-index-row{min-height:125px;grid-template-columns:24px 1fr 28px}.bn-index-main strong{font-size:clamp(43px,11.5vw,78px)}.bn-index-advance{font-size:26px}.bn-final{padding:90px 20px}.bn-final-grid{flex-direction:column;align-items:flex-start}.bn-final h2{font-size:23vw}.bn-final-grid p{font-size:20px}}
@media(prefers-reduced-motion:reduce){.bold-novus *{transition:none!important}}


/* Hero alignment correction: all three headline lines share the exact
   same center axis, independent of text width or font transforms. */
.bn-hero {
  padding-inline: clamp(24px, 4vw, 76px);
}
.bn-title-wrap {
  width: 100%;
  max-width: 100%;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.bn-title-wrap h1 {
  width: 100%;
  max-width: 1560px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 2.2vh, 28px);
  text-align: center;
  white-space: normal;
  line-height: 1;
  letter-spacing: 0;
}
.bn-title-wrap h1 > span {
  display: block;
  width: 100%;
  text-align: center;
  margin-inline: auto;
}
.bn-title-wrap .bn-giant {
  font-size: clamp(100px, 19vw, 340px);
  line-height: .82;
  letter-spacing: -.06em;
  transform: scaleX(.76) scaleY(1.4);
  transform-origin: center center;
}
.bn-title-wrap .bn-into {
  width: fit-content;
  max-width: 100%;
  font-size: clamp(52px, 6.5vw, 114px);
  line-height: 1;
  letter-spacing: -.075em;
  margin: 0 auto;
  transform: rotate(-7deg);
  transform-origin: 50% 50%;
}
.bn-title-wrap .bn-accent-rule {
  margin: clamp(25px, 5vh, 65px) auto 0;
}
@media (max-width: 1200px) {
  .bn-title-wrap h1 { gap: clamp(10px, 1.8vh, 22px); }
  .bn-title-wrap .bn-giant {
    font-size: clamp(86px, 21vw, 270px);
    transform: scaleX(.76) scaleY(1.34);
  }
}
@media (max-width: 680px) {
  .bn-hero { padding-inline: 16px; }
  .bn-title-wrap h1 { gap: clamp(12px, 2vh, 24px); }
  .bn-title-wrap .bn-giant {
    font-size: clamp(66px, 23vw, 158px);
    transform: scaleX(.81) scaleY(1.28);
  }
  .bn-title-wrap .bn-into {
    font-size: clamp(45px, 12vw, 76px);
    transform: rotate(-6deg);
  }
}


/* Full-viewport cover and pointer-reactive lettering, October 2026. */
body.novus-home{padding-top:0}
body.novus-home .site-header{transform:translateY(-110%);opacity:0;pointer-events:none;transition:transform .42s cubic-bezier(.2,.8,.2,1),opacity .32s ease}
body.novus-home .site-header.home-header-visible{transform:translateY(0);opacity:1;pointer-events:auto}
.bn-hero{height:100svh;min-height:100svh;max-height:none;padding-top:clamp(28px,5vh,72px);padding-bottom:clamp(30px,5vh,72px)}
.bn-hero::after{display:none!important}
.bn-interlude{margin-top:0}
.bn-title-wrap h1{position:relative;--title-x:-9999px;--title-y:-9999px}
.bn-title-wrap h1>span{position:relative;isolation:isolate}
.bn-title-wrap h1>span::after{
 content:attr(data-text);position:absolute;inset:0;display:block;
 width:100%;font:inherit;letter-spacing:inherit;line-height:inherit;
 text-align:center;color:#fff7fb;pointer-events:none;
 text-shadow:0 0 8px #fff,0 0 20px #ff8cac,0 0 46px #ff3578,0 0 85px #f42778;
 opacity:0;transition:opacity .22s ease;
 -webkit-mask-image:radial-gradient(circle 180px at var(--glow-x,-9999px) var(--glow-y,-9999px),#000 0%,rgba(0,0,0,.96) 24%,transparent 76%);
 mask-image:radial-gradient(circle 180px at var(--glow-x,-9999px) var(--glow-y,-9999px),#000 0%,rgba(0,0,0,.96) 24%,transparent 76%);
}
.bn-hero:hover .bn-title-wrap h1>span::after{opacity:1}
.bn-title-wrap .bn-into{font-family:"Brush Script MT","Segoe Script","URW Chancery L","Apple Chancery",cursive;font-style:italic;font-weight:500;letter-spacing:-.065em;line-height:.93;color:#ff6797;text-shadow:0 0 16px #ff467944;transform:translateY(-18px) rotate(-10deg);margin-bottom:-14px}
.bn-title-wrap .bn-into::after{color:#fff0fa}
@media(max-width:680px){.bn-hero{height:100svh;min-height:100svh;padding-block:24px 30px}.bn-title-wrap .bn-into{transform:translateY(-10px) rotate(-9deg);margin-bottom:-10px}}
@media(hover:none){.bn-title-wrap h1>span::after{display:none}}
@media(prefers-reduced-motion:reduce){body.novus-home .site-header{transition:none}.bn-title-wrap h1>span::after{transition:none}}

/* Glyph-clipped rose engraving and geometrically centered hero. */
.bn-hero{height:calc(100svh + 52px);min-height:calc(100svh + 52px);padding-block:0;display:block;position:relative}
.bn-hero-top{position:absolute;top:clamp(26px,5vh,65px);left:clamp(24px,4vw,76px);right:clamp(24px,4vw,76px)}
.bn-hero-floor{position:absolute;bottom:clamp(30px,6vh,78px);left:clamp(24px,4vw,76px);right:clamp(24px,4vw,76px)}
.bn-title-wrap{position:absolute;left:0;top:calc(50% - 26px);width:100%;margin:0;transform:translateY(-50%);padding-inline:clamp(14px,3vw,56px)}
.bn-title-wrap h1{gap:clamp(0px,1vh,12px);width:100%}
.bn-title-wrap .bn-accent-rule{display:none}
.bn-title-wrap .bn-giant{position:relative;isolation:initial}
.bn-title-wrap .bn-giant::after{
 content:attr(data-text);position:absolute;inset:0;display:block;width:100%;
 font:inherit;line-height:inherit;letter-spacing:inherit;text-align:center;
 color:transparent;-webkit-text-fill-color:transparent;text-shadow:none;
 background-image:
   repeating-linear-gradient(116deg,transparent 0 7px,rgba(255,205,224,.92) 8px 9px,transparent 10px 22px),
   repeating-linear-gradient(18deg,transparent 0 15px,rgba(255,64,129,.9) 16px 18px,transparent 19px 35px),
   radial-gradient(circle 120px at var(--glow-x,-9999px) var(--glow-y,-9999px),#fff0f6 0%,#ff90b6 23%,#ff2779 56%,transparent 100%);
 background-blend-mode:screen,screen,normal;
 -webkit-background-clip:text;background-clip:text;
 -webkit-mask-image:radial-gradient(circle 125px at var(--glow-x,-9999px) var(--glow-y,-9999px),#000 0 42%,transparent 100%);
 mask-image:radial-gradient(circle 125px at var(--glow-x,-9999px) var(--glow-y,-9999px),#000 0 42%,transparent 100%);
 opacity:0;pointer-events:none;transition:opacity .14s ease;
}
.bn-hero:hover .bn-title-wrap .bn-giant::after{opacity:1}
.bn-title-wrap .bn-into{
 font-family:"Great Vibes","URW Chancery L","Brush Script MT",cursive;
 font-weight:400;font-style:normal;font-size:clamp(74px,9vw,156px);
 letter-spacing:0;line-height:1.15;color:#ff7da6;
 width:fit-content;margin:-8px auto -4px;transform:translateY(-12px);text-align:center;
 text-shadow:0 0 15px rgba(255,65,124,.17);
}
.bn-title-wrap .bn-into::after{display:none!important}
.bn-interlude{margin-top:0}
@media(max-width:680px){
 .bn-hero{height:calc(100svh + 28px);min-height:calc(100svh + 28px);padding:0}
 .bn-hero-top{top:26px;left:17px;right:17px}
 .bn-hero-floor{bottom:35px;left:17px;right:17px}
 .bn-title-wrap{top:calc(50% - 14px);padding-inline:8px}
 .bn-title-wrap h1{gap:3px}
 .bn-title-wrap .bn-into{font-size:clamp(67px,16vw,110px);margin:-4px auto;transform:translateY(-8px)}
}
@media(hover:none){.bn-title-wrap .bn-giant::after{display:none!important}}

/* Comet is painted onto a transparent canvas and clipped to glyph pixels. */
.bn-title-wrap .bn-giant::after{display:none!important}
.bn-title-wrap .bn-giant{position:relative}
.bn-comet-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}
@media(prefers-reduced-motion:reduce){.bn-comet-canvas{display:none}}

/* Comet interaction retired: clean, static typography. */
.bn-title-wrap .bn-giant::after{display:none!important}
.bn-comet-canvas{display:none!important}
.bn-title-wrap .bn-giant{filter:none}


/* Direct optical correction: move only DREAMS down, not the full headline. */
.bn-title-wrap h1 > .bn-dreams {
  position: relative;
  top: clamp(30px, 4.5vh, 48px);
  translate: none;
}
@media (max-width: 680px) {
  .bn-title-wrap h1 > .bn-dreams { top: 24px; }
}

/* Landing night sky: restrained parallax drift and occasional shooting stars. */
.bn-starfield{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;isolation:isolate}
.bn-stars{position:absolute;inset:-30%;background-repeat:repeat;will-change:transform;transform:translate3d(0,0,0)}
.bn-stars-far{
  opacity:.6;background-size:277px 293px;
  background-image:radial-gradient(1px 1px at 22px 34px,#fff 98%,transparent),
   radial-gradient(1px 1px at 117px 94px,#ffb8d1 98%,transparent),
   radial-gradient(1px 1px at 224px 184px,#cbd5ff 98%,transparent),
   radial-gradient(1px 1px at 65px 244px,#fff 98%,transparent);
  animation:bn-star-drift 100s linear infinite alternate;
}
.bn-stars-near{
  opacity:.78;background-size:431px 389px;
  background-image:radial-gradient(1.5px 1.5px at 78px 65px,#fff 98%,transparent),
   radial-gradient(1px 1px at 271px 138px,#ffd9e6 98%,transparent),
   radial-gradient(2px 2px at 386px 305px,#f7eefa 98%,transparent),
   radial-gradient(1px 1px at 162px 344px,#b9cdff 98%,transparent);
  animation:bn-star-drift 65s linear infinite alternate-reverse,bn-star-twinkle 7s ease-in-out infinite alternate;
}
.bn-shooting-star{
  position:absolute;width:clamp(85px,12vw,180px);height:1px;
  left:var(--star-left);top:var(--star-top);
  background:linear-gradient(90deg,transparent,rgba(255,189,211,.25) 32%,rgba(255,246,251,.95));
  border-radius:100%;filter:drop-shadow(0 0 5px #ff9abc);
  transform:rotate(-29deg) translate3d(-25vw,0,0);transform-origin:right center;
  opacity:0;animation:bn-shoot 12s ease-out infinite;
}
.bn-shooting-star-one{--star-left:25%;--star-top:23%;animation-delay:1.8s}
.bn-shooting-star-two{--star-left:76%;--star-top:44%;animation-delay:6.9s;animation-duration:17s}
.bn-shooting-star-three{--star-left:50%;--star-top:72%;animation-delay:12.8s;animation-duration:23s}
@keyframes bn-star-drift{to{transform:translate3d(4%, -3%,0)}}
@keyframes bn-star-twinkle{to{opacity:.4}}
@keyframes bn-shoot{
  0%,7%{opacity:0;transform:rotate(-29deg) translate3d(-25vw,0,0)}
  8%{opacity:.85}
  12%{opacity:0;transform:rotate(-29deg) translate3d(42vw,0,0)}
  100%{opacity:0;transform:rotate(-29deg) translate3d(42vw,0,0)}
}
@media(prefers-reduced-motion:reduce){
  .bn-stars,.bn-shooting-star{animation:none!important;will-change:auto}
  .bn-shooting-star{display:none}
}

/* Scroll depth for the hero headline. Hero overflow clips it before the motto strip. */
.bn-hero .bn-title-wrap{
  transform:translate3d(0,calc(-50% + var(--bn-scroll-offset,0px)),0);
  will-change:transform,opacity;
  pointer-events:none;
}
@media(prefers-reduced-motion:reduce){
  .bn-hero .bn-title-wrap{will-change:auto}
}

/* Native scrollbar accent across the whole site, including Firefox. */
html{scrollbar-color:#ff477c #070816;scrollbar-width:thin}
html::-webkit-scrollbar{width:11px}
html::-webkit-scrollbar-track{background:#070816}
html::-webkit-scrollbar-thumb{background:#ff477c;border:2px solid #070816;border-radius:12px}
html::-webkit-scrollbar-thumb:hover{background:#ff79a0}

