
#ny-services{
  --ny-navy:#041c2c;
  --ny-navy-2:#082f47;
  --ny-gold:#c9a45c;
  --ny-gold-light:#e4c98f;
  --ny-ivory:#fbfaf6;
  --ny-ink:#0a2233;
  width:100vw;
  position:relative;
  left:50%;
  margin-left:-50vw;
  overflow:hidden;
  background:var(--ny-ivory);
  color:var(--ny-ink);
  font-family:Arial,Helvetica,sans-serif;
}
#ny-services *,#ny-services *::before,#ny-services *::after{box-sizing:border-box}
#ny-services h1,#ny-services h2,#ny-services h3,#ny-services p{margin:0}

#ny-services .ny-services-hero{
  position:relative;
  min-height:680px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,var(--ny-hero-overlay,rgba(4,28,44,.94)) 0%,var(--ny-hero-overlay,rgba(4,28,44,.82)) 35%,rgba(4,28,44,.28) 68%,rgba(4,28,44,.18) 100%),
    var(--ny-hero-image) center/cover no-repeat;
}
#ny-services .ny-services-hero::after{
  content:"";position:absolute;inset:auto 0 0;height:1px;
  background:linear-gradient(90deg,transparent,var(--ny-gold),transparent)
}
#ny-services .ny-hero-inner{position:relative;z-index:2;width:min(1280px,90%);margin:auto;padding:100px 0 90px}
#ny-services .ny-eyebrow{color:var(--ny-gold-light);text-transform:uppercase;letter-spacing:.28em;font-size:13px;font-weight:700;margin-bottom:22px}
#ny-services .ny-services-hero h1{color:white;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(66px,8vw,126px);line-height:.88;letter-spacing:-.045em}
#ny-services .ny-hero-subtitle{margin-top:20px;color:var(--ny-gold);font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(25px,3vw,43px)}
#ny-services .ny-hero-copy{max-width:620px;margin-top:28px;color:rgba(255,255,255,.82);font-size:17px;line-height:1.8}
#ny-services .ny-ornament{display:flex;align-items:center;gap:12px;width:250px;margin-top:34px}
#ny-services .ny-ornament::before,#ny-services .ny-ornament::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--ny-gold))}
#ny-services .ny-ornament::after{background:linear-gradient(90deg,var(--ny-gold),transparent)}
#ny-services .ny-diamond{width:8px;height:8px;border:1px solid var(--ny-gold);transform:rotate(45deg)}

#ny-services .ny-intro{background:var(--ny-ivory);padding:105px 7vw 100px}
#ny-services .ny-intro-grid{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:90px;align-items:start}
#ny-services .ny-intro-number{color:var(--ny-gold);letter-spacing:.25em;font-size:12px;font-weight:700;text-transform:uppercase}
#ny-services .ny-intro h2{margin-top:16px;color:var(--ny-navy);font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5vw,65px);font-weight:400;line-height:1.05}
#ny-services .ny-intro-copy{color:#516675;font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.75;padding-top:12px}

#ny-services .ny-service{position:relative;min-height:670px;display:grid;grid-template-columns:1fr 1fr}
#ny-services .ny-service-image{min-height:670px;background-size:cover;background-position:center;position:relative;overflow:hidden;transform:scale(1.025);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
#ny-services .ny-service-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,28,44,.04),rgba(4,28,44,.25))}
#ny-services .ny-service-content{display:flex;align-items:center;padding:80px 8vw;background:white}
#ny-services .ny-service-dark .ny-service-content{background:var(--ny-navy)}
#ny-services .ny-service-wrap{max-width:550px}
#ny-services .ny-service-no{display:flex;align-items:center;gap:18px;color:var(--ny-gold);font-size:12px;font-weight:700;letter-spacing:.24em}
#ny-services .ny-service-no::after{content:"";width:75px;height:1px;background:var(--ny-gold)}
#ny-services .ny-service h3{margin-top:24px;color:var(--ny-navy);font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,4.5vw,62px);line-height:1.03;font-weight:400}
#ny-services .ny-service-dark h3{color:white}
#ny-services .ny-service-tagline{margin-top:16px;color:var(--ny-gold);font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:24px}
#ny-services .ny-service-description{margin-top:24px;color:#6a7b86;line-height:1.8;font-size:16px}
#ny-services .ny-service-dark .ny-service-description{color:rgba(255,255,255,.72)}
#ny-services .ny-service-list{margin:28px 0 0;padding:0;list-style:none}
#ny-services .ny-service-list li{position:relative;padding:10px 0 10px 24px;color:#425866;border-bottom:1px solid rgba(4,28,44,.08);font-size:14px}
#ny-services .ny-service-dark .ny-service-list li{color:rgba(255,255,255,.8);border-color:rgba(255,255,255,.1)}
#ny-services .ny-service-list li::before{content:"";position:absolute;left:1px;top:17px;width:6px;height:6px;border:1px solid var(--ny-gold);transform:rotate(45deg)}
#ny-services .ny-service-reverse .ny-service-image{order:2}
#ny-services .ny-service-reverse .ny-service-content{order:1}
#ny-services .ny-service:hover .ny-service-image{transform:scale(1.055)}

#ny-services .ny-statement{padding:125px 7vw;text-align:center;background:radial-gradient(circle at 50% 50%,rgba(201,164,92,.12),transparent 42%),var(--ny-navy);color:white}
#ny-services .ny-statement-inner{width:min(950px,100%);margin:auto}
#ny-services .ny-statement-small{color:var(--ny-gold);text-transform:uppercase;letter-spacing:.3em;font-size:12px}
#ny-services .ny-statement h2{margin-top:24px;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(40px,6vw,72px);line-height:1.08}
#ny-services .ny-statement em{color:var(--ny-gold-light);font-weight:400}
#ny-services .ny-statement p{max-width:650px;margin:28px auto 0;color:rgba(255,255,255,.7);line-height:1.8}

#ny-services .ny-faq{padding:110px 7vw;background:#f5f3ed}
#ny-services .ny-faq-inner{width:min(1050px,100%);margin:auto}
#ny-services .ny-faq-header{text-align:center;margin-bottom:55px}
#ny-services .ny-faq-header span{color:var(--ny-gold);text-transform:uppercase;letter-spacing:.25em;font-size:12px;font-weight:700}
#ny-services .ny-faq-header h2{margin-top:15px;color:var(--ny-navy);font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(40px,5vw,63px)}
#ny-services details{border-top:1px solid rgba(4,28,44,.18)}
#ny-services details:last-child{border-bottom:1px solid rgba(4,28,44,.18)}
#ny-services summary{cursor:pointer;list-style:none;padding:25px 50px 25px 0;position:relative;color:var(--ny-navy);font-family:Georgia,"Times New Roman",serif;font-size:20px}
#ny-services summary::-webkit-details-marker{display:none}
#ny-services summary::after{content:"+";position:absolute;right:5px;top:19px;color:var(--ny-gold);font-family:Georgia,"Times New Roman",serif;font-size:31px;font-weight:300;transition:transform .3s ease}
#ny-services details[open] summary::after{transform:rotate(45deg)}
#ny-services details p{max-width:840px;padding:0 0 26px;color:#647986;line-height:1.75}

#ny-services .ny-final{position:relative;padding:120px 7vw;text-align:center;overflow:hidden;background:linear-gradient(var(--ny-cta-overlay,rgba(4,28,44,.88)),var(--ny-cta-overlay,rgba(4,28,44,.88))),var(--ny-cta-image) center/cover no-repeat}
#ny-services .ny-final-inner{position:relative;z-index:2;width:min(920px,100%);margin:auto}
#ny-services .ny-final-small{color:var(--ny-gold);text-transform:uppercase;letter-spacing:.28em;font-size:12px}
#ny-services .ny-final h2{margin-top:20px;color:white;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(42px,6vw,72px);line-height:1.05}
#ny-services .ny-final p{max-width:620px;margin:25px auto 34px;color:rgba(255,255,255,.72);font-size:17px;line-height:1.7}
#ny-services .ny-cta{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 35px;color:white;border:1px solid var(--ny-gold);border-radius:40px;text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}
#ny-services .ny-cta:hover{background:var(--ny-gold);color:var(--ny-navy);transform:translateY(-2px);box-shadow:0 14px 35px rgba(0,0,0,.18)}

#ny-services .ny-reveal{opacity:1;transform:none;transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
#ny-services .ny-reveal.is-visible{opacity:1;transform:none}

@media(max-width:900px){
  #ny-services .ny-services-hero{min-height:610px;background-position:63% center}
  #ny-services .ny-intro-grid{grid-template-columns:1fr;gap:35px}
  #ny-services .ny-service{grid-template-columns:1fr}
  #ny-services .ny-service-image{min-height:430px}
  #ny-services .ny-service-content{padding:70px 8vw}
  #ny-services .ny-service-reverse .ny-service-image,#ny-services .ny-service-reverse .ny-service-content{order:initial}
}
@media(max-width:600px){
  #ny-services .ny-services-hero{min-height:560px}
  #ny-services .ny-hero-inner{padding:75px 0}
  #ny-services .ny-intro,#ny-services .ny-faq,#ny-services .ny-statement,#ny-services .ny-final{padding-left:24px;padding-right:24px}
  #ny-services .ny-service-image{min-height:320px}
  #ny-services .ny-service-content{padding:55px 25px}
  #ny-services .ny-service h3{font-size:39px}
}
@media(prefers-reduced-motion:reduce){
  #ny-services *,#ny-services *::before,#ny-services *::after{transition:none!important;animation:none!important}
  #ny-services .ny-reveal{opacity:1;transform:none}
}

/* Elementor editor safety */
#ny-services .ny-reveal{opacity:1!important;transform:none!important}


/* v1.4.1 — dark service visibility safety */
#ny-services .ny-service-dark h3{color:#ffffff}
#ny-services .ny-service-dark .ny-service-description{color:rgba(255,255,255,.82)}
#ny-services .ny-service-dark .ny-service-list li{color:rgba(255,255,255,.88)}
