/* Bijoux Celestes - Nuit Celeste landing. Scoped to #nc. */

@font-face{font-family:'Cormorant';src:url('fonts/cormorant-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant';src:url('fonts/cormorant-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant';src:url('fonts/cormorant-500-italic.woff2') format('woff2');font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:'Manrope';src:url('fonts/manrope-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url('fonts/manrope-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url('fonts/manrope-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope';src:url('fonts/manrope-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}

#nc{
  --bg:#0E1230; --surface:#161B3D; --ink:#F3F1E9; --muted:#9AA0C0;
  --accent:#C8A96A; --accent-soft:rgba(200,169,106,.22); --accent-glow:rgba(200,169,106,.14);
  --serif:'Cormorant',Georgia,serif; --sans:'Manrope',system-ui,sans-serif;
  --wrap:1200px;
  position:relative; overflow-x:clip;
  background:var(--bg); color:var(--ink);
  font-family:var(--sans); font-size:17px; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
#nc :where(h1,h2,h3,p,ul,figure){margin:0;padding:0}
#nc a{color:inherit;text-decoration:none}
#nc h1,#nc h2{font-family:var(--serif);font-weight:500;color:var(--ink);letter-spacing:-.005em}

.nc-wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,40px);width:100%}

/* full-bleed sections regardless of Blocksy container */
.nc-hero,.nc-reassure,.nc-collections,.nc-signature,.nc-univers,.nc-invite{
  position:relative;width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box
}

.nc-eyebrow{font-family:var(--sans);font-weight:600;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:1.1rem}
.nc-eyebrow .nc-star{color:var(--accent);margin-right:.35em}
.nc-h2{font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.06}
.nc-h2 em,.nc-hero__title em{font-style:italic;color:var(--accent)}
.nc-sec__lead{color:var(--muted);font-size:1.05rem;line-height:1.65;max-width:46ch;margin-top:1rem}

/* starfield */
.nc-stars,.nc-hero__sky,.nc-invite__sky{
  position:absolute;inset:0;pointer-events:none;
  background-image:
    radial-gradient(1.4px 1.4px at 12% 22%,rgba(243,241,233,.9),transparent),
    radial-gradient(1.2px 1.2px at 78% 16%,rgba(243,241,233,.7),transparent),
    radial-gradient(1px 1px at 34% 68%,rgba(200,169,106,.8),transparent),
    radial-gradient(1.3px 1.3px at 63% 78%,rgba(243,241,233,.6),transparent),
    radial-gradient(1px 1px at 88% 54%,rgba(243,241,233,.55),transparent),
    radial-gradient(1px 1px at 47% 34%,rgba(243,241,233,.5),transparent),
    radial-gradient(900px 520px at 74% -10%,var(--accent-glow),transparent 60%);
}

/* buttons + links */
.nc-btn{display:inline-block;background:var(--accent);color:#0E1230;font-family:var(--sans);font-weight:600;font-size:.95rem;letter-spacing:.01em;padding:.9rem 1.7rem;border-radius:2px;transition:background .25s ease,transform .25s ease}
.nc-btn:hover{background:#D9BD82;transform:translateY(-1px)}
.nc-link{display:inline-flex;align-items:center;gap:.4em;font-weight:600;font-size:.95rem;color:var(--ink);padding-bottom:2px;border-bottom:1px solid var(--accent-soft);transition:border-color .25s ease,color .25s ease}
.nc-link:hover{color:var(--accent);border-color:var(--accent)}

/* HERO */
.nc-hero{background:var(--bg);overflow:hidden}
.nc-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(24px,4vw,64px);min-height:min(90vh,780px);padding-block:clamp(56px,9vh,110px);position:relative;z-index:1}
.nc-hero__title{font-size:clamp(2.9rem,6.6vw,5.4rem);line-height:1.0;letter-spacing:-.015em;margin:.2rem 0 1.4rem}
.nc-hero__sub{color:var(--muted);font-size:1.12rem;line-height:1.6;max-width:34ch}
.nc-hero__cta{display:flex;align-items:center;gap:1.6rem;margin-top:2.1rem;flex-wrap:wrap}
.nc-hero__art{position:relative;justify-self:end;width:100%}
.nc-hero__art .nc-orbit{display:block;width:118%;max-width:none;margin-right:-14%;filter:drop-shadow(0 24px 60px rgba(200,169,106,.12))}
.nc-hero__art .nc-orbit{animation:nc-float 9s ease-in-out infinite}
@keyframes nc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

/* REASSURANCE */
.nc-reassure{background:var(--surface);border-top:1px solid var(--accent-soft);border-bottom:1px solid var(--accent-soft)}
.nc-reassure__row{display:flex;flex-wrap:wrap;padding-block:1.6rem}
.nc-reassure__item{flex:1 1 200px;padding:.5rem 1.6rem;display:flex;flex-direction:column;gap:.2rem}
.nc-reassure__item+.nc-reassure__item{border-left:1px solid var(--accent-soft)}
.nc-reassure__item span{font-weight:600;color:var(--ink);font-size:.98rem}
.nc-reassure__item small{color:var(--muted);font-size:.85rem}

/* section heads */
.nc-sec__head{max-width:46ch;margin-bottom:clamp(28px,4vw,52px)}
.nc-collections{background:var(--bg);padding-block:clamp(64px,9vw,120px)}
.nc-collections .nc-sec__lead{margin-top:.8rem}

/* BENTO */
.nc-bento{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:230px;gap:16px}
.nc-tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:.35rem;padding:1.5rem;border-radius:6px;overflow:hidden;border:1px solid var(--accent-soft);isolation:isolate;transition:transform .3s ease}
.nc-tile::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,18,48,.15),rgba(14,18,48,.72));transition:background .3s ease}
.nc-tile:hover{transform:translateY(-4px)}
.nc-tile:hover::after{background:linear-gradient(180deg,rgba(14,18,48,.05),rgba(14,18,48,.62))}
.nc-tile--lg{grid-row:span 2}
.nc-tile--wide{grid-column:span 2}
.nc-tile__kicker{font-family:var(--sans);font-weight:600;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.nc-tile__name{font-family:var(--serif);font-weight:500;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.05;color:var(--ink)}
.nc-tile__go{font-family:var(--sans);font-weight:600;font-size:.9rem;color:var(--ink);opacity:.82;display:inline-flex;gap:.4em;transition:color .25s ease,opacity .25s ease}
.nc-tile:hover .nc-tile__go{color:var(--accent);opacity:1}

/* celestial gradient placeholders */
.nc-grad-a{background:radial-gradient(120% 90% at 78% 12%,#232A5C 0%,#141A3C 44%,#0B0E26 100%)}
.nc-grad-b{background:radial-gradient(120% 100% at 20% 20%,#1E2450 0%,#161B3D 48%,#0C0E26 100%)}
.nc-grad-c{background:radial-gradient(120% 100% at 60% 85%,#1B2C52 0%,#141F3A 46%,#0B0E24 100%)}
.nc-grad-d{background:radial-gradient(130% 120% at 85% 30%,#26305E 0%,#171C40 50%,#0C0E26 100%)}

/* SIGNATURE */
.nc-signature{background:var(--surface);padding-block:clamp(64px,9vw,120px);border-top:1px solid var(--accent-soft)}
.nc-signature__grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(28px,5vw,72px)}
.nc-signature__art{aspect-ratio:1/1;border-radius:6px;display:grid;place-items:center;border:1px solid var(--accent-soft);position:relative;overflow:hidden}
.nc-signature__art svg{width:70%}
.nc-signature__copy .nc-btn{margin-top:1.8rem}

/* UNIVERS */
.nc-univers{background:var(--bg);padding-block:clamp(72px,11vw,150px)}
.nc-univers__inner{max-width:760px;margin-inline:auto;text-align:center}
.nc-univers__text{font-family:var(--sans);font-weight:400;font-size:clamp(1.3rem,2.3vw,1.7rem);line-height:1.6;color:var(--ink)}
.nc-univers__text em{font-family:var(--serif);font-style:italic;color:var(--accent);font-size:1.06em}
.nc-univers .nc-eyebrow{text-align:center}

/* INVITE */
.nc-invite{background:var(--bg);overflow:hidden;border-top:1px solid var(--accent-soft)}
.nc-invite__inner{position:relative;z-index:1;text-align:center;padding-block:clamp(72px,12vw,150px)}
.nc-invite__title{font-size:clamp(2.6rem,5.4vw,4.4rem);line-height:1.02}
.nc-invite__inner .nc-sec__lead{margin:1rem auto 2rem;max-width:40ch}

/* reveal (motion 0.4) - degrade to visible without JS or reduced-motion */
html.nc-js #nc .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
html.nc-js #nc .reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html.nc-js #nc .reveal{opacity:1;transform:none;transition:none}
  .nc-hero__art .nc-orbit{animation:none}
}

/* RESPONSIVE */
@media (max-width:900px){
  .nc-hero__grid{grid-template-columns:1fr;min-height:auto;gap:8px}
  .nc-hero__art{order:-1;max-width:340px;justify-self:center;margin-bottom:.5rem}
  .nc-hero__art .nc-orbit{width:100%;margin-right:0}
  .nc-signature__grid{grid-template-columns:1fr;gap:28px}
  .nc-signature__art{max-width:360px}
  .nc-bento{grid-template-columns:1fr 1fr;grid-auto-rows:200px}
  .nc-tile--lg{grid-row:span 2}
  .nc-tile--wide{grid-column:span 2}
}
@media (max-width:560px){
  #nc{font-size:16px}
  .nc-bento{grid-template-columns:1fr;grid-auto-rows:180px}
  .nc-tile--lg,.nc-tile--wide{grid-column:auto;grid-row:auto}
  .nc-reassure__item+.nc-reassure__item{border-left:0}
  .nc-hero__cta{gap:1rem}
}
