/* ==========================================================================
   Gordon Street · Ra'anana — editorial experience
   Scoped entirely under .nyg-gordon. Loaded only by the edition template,
   so it can never touch the main NY REALTY theme.
   ========================================================================== */

.nyg-gordon{
	--ink:#0b1420;
	--ink-2:#0e1a29;
	--cream:#f5f1e8;
	--cream-dim:rgba(245,241,232,.62);
	--cream-faint:rgba(245,241,232,.34);
	--gold:#c5a46d;
	--gold-dim:rgba(197,164,109,.42);
	--rule:rgba(245,241,232,.12);
	--display:"Playfair Display",Georgia,"Times New Roman",serif;
	--serif:"Cormorant Garamond",Georgia,serif;
	--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
	--gut:clamp(22px,5vw,88px);
	--sec:clamp(88px,13vh,180px);

	margin:0;
	background:var(--ink);
	color:var(--cream);
	font-family:var(--serif);
	font-weight:300;
	-webkit-font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
	overflow-x:hidden;
}
.nyg-gordon *,.nyg-gordon *::before,.nyg-gordon *::after{box-sizing:border-box}
.nyg-gordon img{display:block;max-width:100%;height:auto}
.nyg-gordon a{color:inherit;text-decoration:none}

/* focus visibility — keyboard users must always see where they are */
.nyg-gordon a:focus-visible,
.nyg-gordon button:focus-visible{
	outline:1px solid var(--gold);
	outline-offset:4px;
}
.nyg-gordon .g-skip{
	position:absolute;left:-9999px;top:0;z-index:200;
	background:var(--gold);color:var(--ink);padding:12px 20px;
	font-family:var(--sans);font-size:12px;letter-spacing:.18em;text-transform:uppercase;
}
.nyg-gordon .g-skip:focus{left:12px;top:12px}

/* ---------- reduced motion: everything resolves to its final state ---------- */
@media (prefers-reduced-motion:reduce){
	.nyg-gordon *,.nyg-gordon *::before,.nyg-gordon *::after{
		animation-duration:.001ms !important;
		animation-iteration-count:1 !important;
		transition-duration:.001ms !important;
		scroll-behavior:auto !important;
	}
	.nyg-gordon .g-rise{opacity:1 !important;transform:none !important}
	.nyg-gordon .g-figure__img{transform:none !important}
}

/* ---------- scroll reveal ---------- */
.nyg-gordon .g-rise{
	opacity:0;
	transform:translateY(26px);
	transition:opacity 1.15s cubic-bezier(.2,.7,.2,1),transform 1.15s cubic-bezier(.2,.7,.2,1);
	will-change:opacity,transform;
}
.nyg-gordon .g-rise.is-in{opacity:1;transform:none}
.nyg-gordon .g-rise[data-d="1"]{transition-delay:.12s}
.nyg-gordon .g-rise[data-d="2"]{transition-delay:.24s}
.nyg-gordon .g-rise[data-d="3"]{transition-delay:.36s}

/* ==========================  SHELL: header  ============================== */
.nyg-ed-shell{
	position:fixed;top:0;left:0;right:0;z-index:60;
	display:flex;align-items:center;justify-content:space-between;
	padding:22px var(--gut);
	transition:background .5s ease,backdrop-filter .5s ease,padding .4s ease,border-color .5s ease;
	border-bottom:1px solid transparent;
	pointer-events:none;
}
.nyg-ed-shell > *{pointer-events:auto}
.nyg-ed-shell.is-stuck{
	background:rgba(11,20,32,.86);
	backdrop-filter:saturate(140%) blur(14px);
	-webkit-backdrop-filter:saturate(140%) blur(14px);
	padding-top:14px;padding-bottom:14px;
	border-bottom-color:var(--rule);
}
.nyg-ed-shell__logo{
	font-family:var(--display);font-size:26px;line-height:1;letter-spacing:.02em;
	color:var(--cream);
}
.nyg-ed-shell__logo span{color:var(--gold)}
.nyg-ed-shell__nav{
	display:flex;align-items:center;gap:clamp(14px,2.4vw,34px);
	font-family:var(--sans);font-size:11px;font-weight:400;
	letter-spacing:.2em;text-transform:uppercase;
}
.nyg-ed-shell__nav a{color:var(--cream-dim);transition:color .3s ease}
.nyg-ed-shell__nav a:hover{color:var(--cream)}
.nyg-ed-shell__inquire{
	color:var(--gold) !important;border:1px solid var(--gold-dim);
	padding:9px 18px;transition:background .35s ease,color .35s ease,border-color .35s ease !important;
}
.nyg-ed-shell__inquire:hover{background:var(--gold);color:var(--ink) !important;border-color:var(--gold)}
.nyg-ed-shell__back{display:inline-flex;align-items:center;gap:8px}
.nyg-ed-shell__back::before{content:"";width:16px;height:1px;background:currentColor;opacity:.7}

@media (max-width:820px){
	.nyg-ed-shell{padding:16px var(--gut)}
	.nyg-ed-shell__nav{gap:12px;font-size:10px;letter-spacing:.14em}
	.nyg-ed-shell__nav .is-optional{display:none}
	.nyg-ed-shell__inquire{padding:8px 13px}
}

/* ==========================  HERO / ARRIVAL  ============================= */
.g-hero{
	position:relative;min-height:100svh;min-height:100vh;
	display:flex;flex-direction:column;justify-content:center;
	padding:132px var(--gut) 92px;
	overflow:hidden;
	background:
		radial-gradient(120% 90% at 78% 8%,rgba(197,164,109,.11) 0%,rgba(197,164,109,0) 58%),
		radial-gradient(90% 70% at 12% 92%,rgba(255,255,255,.05) 0%,rgba(255,255,255,0) 60%),
		linear-gradient(168deg,#0d1728 0%,#0b1420 52%,#091120 100%);
}
.g-hero__media{
	position:absolute;inset:0;z-index:0;
	background-position:center;background-size:cover;
	opacity:.34;
	transform:scale(1.06);
}
.g-hero__scrim{
	position:absolute;inset:0;z-index:1;
	background:linear-gradient(102deg,rgba(11,20,32,.94) 0%,rgba(11,20,32,.72) 46%,rgba(11,20,32,.42) 100%);
}
.g-hero__inner{position:relative;z-index:2;max-width:1180px;width:100%}
.g-hero__eyebrow{
	font-family:var(--sans);font-size:11px;font-weight:400;
	letter-spacing:.42em;text-transform:uppercase;color:var(--gold);
	margin:0 0 clamp(18px,3vh,34px);
}
.g-hero__title{
	font-family:var(--display);font-weight:400;
	font-size:clamp(56px,11.5vw,168px);
	line-height:.92;letter-spacing:-.015em;
	margin:0 0 clamp(16px,2.6vh,30px);
	color:#fff;
}
.g-hero__title em{font-style:italic;color:var(--gold);font-weight:400}
.g-hero__sub{
	font-family:var(--serif);font-weight:300;
	font-size:clamp(17px,2.7vw,36px);
	letter-spacing:.24em;text-transform:uppercase;
	color:rgba(245,241,232,.9);
	margin:0 0 clamp(28px,5vh,58px);
}
.g-hero__lede{
	font-size:clamp(19px,2.1vw,25px);line-height:1.62;
	color:var(--cream-dim);max-width:26ch;margin:0;
}
.g-hero__foot{
	position:absolute;left:var(--gut);right:var(--gut);bottom:34px;z-index:2;
	display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
	font-family:var(--sans);font-size:10px;letter-spacing:.28em;text-transform:uppercase;
	color:var(--cream-faint);
}
.g-hero__scroll{display:flex;align-items:center;gap:14px}
.g-hero__scroll i{
	display:block;width:1px;height:54px;background:var(--cream-faint);position:relative;overflow:hidden;
}
.g-hero__scroll i::after{
	content:"";position:absolute;left:0;top:-54px;width:1px;height:54px;background:var(--gold);
	animation:gScroll 2.4s cubic-bezier(.6,0,.4,1) infinite;
}
@keyframes gScroll{0%{top:-54px}60%,100%{top:54px}}
@media (max-width:640px){
	.g-hero__lede{max-width:none}
	.g-hero__foot{font-size:9px;letter-spacing:.2em}
}

/* ==========================  CHAPTERS  ================================== */
.g-chapter{padding:var(--sec) var(--gut);position:relative}
.g-chapter--tint{background:var(--ink-2)}
.g-wrap{max-width:1180px;margin:0 auto}
.g-marker{
	font-family:var(--sans);font-size:10px;font-weight:400;
	letter-spacing:.34em;text-transform:uppercase;color:var(--gold);
	margin:0 0 clamp(22px,4vh,44px);
	display:flex;align-items:center;gap:16px;
}
.g-marker::after{content:"";flex:1;height:1px;background:var(--gold-dim);max-width:160px}
.g-h2{
	font-family:var(--display);font-weight:400;
	font-size:clamp(31px,5.2vw,66px);line-height:1.1;letter-spacing:-.01em;
	margin:0 0 clamp(24px,4vh,44px);color:#fff;max-width:19ch;
}
.g-body{display:grid;grid-template-columns:1fr;gap:clamp(20px,3vw,42px);max-width:78ch}
.g-body p{
	font-size:clamp(17px,1.55vw,21px);line-height:1.78;color:var(--cream-dim);margin:0;
}
.g-body p strong,.g-body p b{color:var(--cream);font-weight:400}
@media (min-width:900px){
	.g-body--two{grid-template-columns:1fr 1fr;max-width:none}
}

/* pull quote */
.g-quote{
	margin:clamp(48px,8vh,96px) 0 0;padding-left:clamp(20px,3vw,40px);
	border-left:1px solid var(--gold-dim);max-width:36ch;
}
.g-quote p{
	font-family:var(--display);font-style:italic;font-weight:400;
	font-size:clamp(22px,3vw,34px);line-height:1.4;color:var(--cream);margin:0;
}

/* ==========================  FIGURES  =================================== */
.g-figure{margin:clamp(48px,8vh,110px) 0 0;position:relative;overflow:hidden}
.g-figure--full{margin-left:calc(var(--gut)*-1);margin-right:calc(var(--gut)*-1)}
.g-figure__frame{position:relative;overflow:hidden;background:#0a1220}
.g-figure__img{
	width:100%;height:100%;object-fit:cover;display:block;
	transition:transform 1.6s cubic-bezier(.2,.7,.2,1);
}
.g-figure:hover .g-figure__img{transform:scale(1.028)}
.g-figure__cap{
	display:flex;align-items:baseline;gap:14px;margin:18px 0 0;
	font-family:var(--sans);font-size:10px;letter-spacing:.24em;text-transform:uppercase;
	color:var(--cream-faint);
}
.g-figure--full .g-figure__cap{padding:0 var(--gut)}
.g-figure__cap b{color:var(--gold);font-weight:500}

/* ratio boxes prevent layout shift before images decode */
.g-ratio-21{aspect-ratio:21/9}
.g-ratio-16{aspect-ratio:16/9}
.g-ratio-32{aspect-ratio:3/2}
.g-ratio-43{aspect-ratio:4/3}
.g-ratio-34{aspect-ratio:3/4}
@supports not (aspect-ratio:1/1){
	.g-ratio-21{height:52vw}.g-ratio-16{height:56vw}
	.g-ratio-32{height:62vw}.g-ratio-43{height:66vw}.g-ratio-34{height:112vw}
}

/* ---- image plate: each photograph is its own quiet interruption ---- */
.g-plate{padding:0 0 clamp(10px,2vh,26px)}
.g-plate .g-figure{margin:0}
.g-plate .g-figure__cap{
	max-width:1180px;margin:18px auto 0;padding:0 var(--gut);
	display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;
}
@media (min-width:1181px){
	.g-plate .g-figure__cap{padding:0}
}

/* placeholder shown until a real media item is assigned to a slot */
.g-slot{
	position:relative;width:100%;height:100%;
	background:
		radial-gradient(80% 60% at 30% 20%,rgba(197,164,109,.14),rgba(197,164,109,0) 60%),
		linear-gradient(150deg,#122033 0%,#0d1828 60%,#0a1421 100%);
	display:flex;align-items:center;justify-content:center;
}
.g-slot span{
	font-family:var(--sans);font-size:10px;letter-spacing:.26em;text-transform:uppercase;
	color:rgba(245,241,232,.28);text-align:center;padding:0 24px;
}

/* two-up / three-up grids */
.g-grid{display:grid;gap:clamp(14px,2vw,26px);margin:clamp(40px,7vh,96px) 0 0}
.g-grid--2{grid-template-columns:1fr}
.g-grid--3{grid-template-columns:1fr}
@media (min-width:760px){
	.g-grid--2{grid-template-columns:1fr 1fr}
	.g-grid--3{grid-template-columns:repeat(3,1fr)}
}
.g-grid .g-figure{margin:0}

/* ==========================  AT A GLANCE  =============================== */
.g-facts{
	display:grid;grid-template-columns:repeat(2,1fr);
	gap:1px;background:var(--rule);margin:clamp(30px,5vh,56px) 0 0;
	border:1px solid var(--rule);
}
@media (min-width:700px){.g-facts{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1080px){.g-facts{grid-template-columns:repeat(4,1fr)}}
.g-fact{background:var(--ink);padding:clamp(22px,3vw,34px) clamp(18px,2.4vw,28px)}
.g-chapter--tint .g-fact{background:var(--ink-2)}
.g-fact__v{
	font-family:var(--display);font-weight:400;
	font-size:clamp(25px,3.2vw,40px);line-height:1.05;color:#fff;
	display:block;margin:0 0 10px;
}
.g-fact__v small{font-size:.44em;letter-spacing:.06em;color:var(--gold);margin-left:.28em;font-weight:400}
.g-fact__k{
	font-family:var(--sans);font-size:9.5px;font-weight:400;
	letter-spacing:.24em;text-transform:uppercase;color:var(--cream-faint);margin:0;
}

/* ==========================  PRIVATE INQUIRY  =========================== */
.g-inquiry{
	padding:var(--sec) var(--gut);
	background:
		radial-gradient(100% 80% at 82% 12%,rgba(197,164,109,.13) 0%,rgba(197,164,109,0) 60%),
		linear-gradient(190deg,#0d1728 0%,#0a1220 100%);
	border-top:1px solid var(--rule);
}
.g-inquiry__lede{
	font-family:var(--display);font-weight:400;
	font-size:clamp(25px,4.2vw,52px);line-height:1.2;color:#fff;
	max-width:26ch;margin:0 0 clamp(24px,4vh,40px);
}
.g-inquiry__note{
	font-size:clamp(17px,1.6vw,21px);line-height:1.76;color:var(--cream-dim);
	max-width:52ch;margin:0 0 clamp(34px,6vh,60px);
}
.g-actions{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(14px,2.4vw,28px)}
.g-btn{
	display:inline-flex;align-items:center;gap:12px;
	font-family:var(--sans);font-size:11px;font-weight:500;
	letter-spacing:.22em;text-transform:uppercase;
	padding:17px 34px;border:1px solid var(--gold);color:var(--gold);
	transition:background .35s ease,color .35s ease,transform .35s ease;
}
.g-btn:hover{background:var(--gold);color:var(--ink);transform:translateY(-2px)}
.g-btn--ghost{border-color:var(--rule);color:var(--cream-dim)}
.g-btn--ghost:hover{background:transparent;color:var(--cream);border-color:var(--cream-dim)}
.g-tel{
	font-family:var(--display);font-size:clamp(20px,2.4vw,29px);color:var(--cream);
	letter-spacing:.01em;transition:color .3s ease;
}
.g-tel:hover{color:var(--gold)}

/* ==========================  FOOTER  ==================================== */
.nyg-ed-footer{
	padding:clamp(52px,8vh,86px) var(--gut) clamp(34px,5vh,52px);
	background:#080f1b;border-top:1px solid var(--rule);
	display:grid;gap:clamp(16px,2.6vh,26px);
}
.nyg-ed-footer__brand{
	font-family:var(--display);font-size:clamp(24px,3vw,34px);letter-spacing:.04em;
	color:var(--cream);margin:0;
}
.nyg-ed-footer__brand span{color:var(--gold)}
.nyg-ed-footer__meta,
.nyg-ed-footer__contact,
.nyg-ed-footer__legal{
	font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
	color:var(--cream-faint);margin:0;line-height:2;
}
.nyg-ed-footer__contact{color:var(--cream-dim);letter-spacing:.12em}
.nyg-ed-footer a{border-bottom:1px solid transparent;transition:color .3s ease,border-color .3s ease}
.nyg-ed-footer a:hover{color:var(--gold);border-bottom-color:var(--gold-dim)}

/* persistent mobile inquiry bar — keeps the CTA reachable without a hamburger */
.g-dock{
	position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;
	background:rgba(11,20,32,.94);backdrop-filter:blur(14px);
	-webkit-backdrop-filter:blur(14px);
	border-top:1px solid var(--rule);
	padding:11px 14px;
	grid-template-columns:1fr 1fr;gap:10px;
}
.g-dock a{
	text-align:center;font-family:var(--sans);font-size:10.5px;font-weight:500;
	letter-spacing:.16em;text-transform:uppercase;padding:13px 8px;
}
.g-dock .g-dock--p{background:var(--gold);color:var(--ink)}
.g-dock .g-dock--s{border:1px solid var(--rule);color:var(--cream-dim)}
@media (max-width:820px){
	.g-dock{display:grid}
	.nyg-ed-footer{padding-bottom:clamp(96px,14vh,120px)}
}
@media print{
	.nyg-ed-shell,.g-dock,.g-hero__scroll{display:none !important}
	.nyg-gordon{background:#fff;color:#000}
}
