/* ------------------------------------------------------------------
   Home v2 (template-home-v2.php): the mood-board layout in the site's
   navy-and-gold palette. Loaded after style.css.
   ------------------------------------------------------------------ */
.is-home-v2 {
	--v2-text: var(--ink-soft);
}
.is-home-v2 .site-footer { margin-top: 0; border-top: 0; }

/* Shared bits */
.v2-eyebrow { display: flex; align-items: center; gap: 1rem; margin: 0; color: var(--gold); font-size: clamp(.78rem, .72rem + .15vw, .9rem); letter-spacing: .22em; text-transform: uppercase; }
.v2-eyebrow::after { content: ""; width: 72px; height: 1px; background: var(--gold-soft); }
.lang-ka .v2-eyebrow { letter-spacing: .1em; }
.v2-eyebrow--sub { margin: -.5rem 0 1.75rem; }
.v2-h2 { display: flex; align-items: center; gap: 1.5rem; margin: 0 0 clamp(1.5rem, 2.5vw, 2.25rem); color: var(--ink); font-weight: 500; line-height: 1.1; letter-spacing: -.01em; font-size: clamp(1.9rem, 1.3rem + 1.6vw, 3rem); }
.v2-h2::after { content: ""; flex: 1; max-width: 280px; height: 1px; background: var(--gold-soft); }
.v2-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; flex-wrap: wrap; }
.v2-head .v2-h2 { flex: 1 1 auto; }
.v2-head .text-link { margin-bottom: clamp(1.7rem, 2.7vw, 2.45rem); }
.v2-section { position: relative; padding: clamp(3.25rem, 5.5vw, 6rem) 0; }
.v2-actions { display: flex; align-items: center; gap: 1.75rem; flex-wrap: wrap; }
.v2-note { color: var(--v2-text); }

/* Hero: title, subheading, approach lead and paragraphs beside the portrait */
.v2-hero { position: relative; overflow: hidden; padding: clamp(1.5rem, 3vw, 2.75rem) 0 clamp(2rem, 4vw, 4rem); }
.v2-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: clamp(2rem, 4vw, 5rem); align-items: center; }
.v2-hero-text { max-width: none; }
.v2-title { margin: .9rem 0 1.1rem; max-width: 24ch; color: var(--ink); font-weight: 500; line-height: 1.08; letter-spacing: -.012em; font-size: clamp(1.9rem, 1.1rem + 2.2vw, 3.5rem); }
.v2-title-rule { display: block; width: 88px; height: 2px; background: var(--gold); margin: 0 0 1.2rem; }
.v2-lead { margin: 0 0 1.5rem; max-width: 56ch; color: var(--v2-text); line-height: 1.5; font-size: clamp(1.1rem, 1rem + .4vw, 1.4rem); }
.v2-hero .v2-quote { margin: 0 0 1.4rem; max-width: 56ch; font-size: clamp(1.15rem, 1rem + .55vw, 1.55rem); line-height: 1.42; }
.v2-hero-body { margin: 0 0 1.9rem; max-width: 72ch; color: var(--v2-text); line-height: 1.62; font-size: clamp(1.02rem, .95rem + .3vw, 1.22rem); }
.v2-hero-body p { margin: 0 0 .9em; }
.v2-hero-body p:last-child { margin-bottom: 0; }
.v2-hero-media { position: relative; width: min(660px, 60vh, 40vw); justify-self: end; }
.v2-hero-media img { position: relative; z-index: 1; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; object-position: 50% 100%; border-radius: var(--radius); }
.v2-hero-media::after { content: ""; position: absolute; inset: 14px -14px -14px 14px; z-index: 0; border: 1px solid var(--gold-soft); border-radius: var(--radius); }

/* Quote (lead paragraph) */
.v2-quote { margin: 0; padding: .35rem 0 .35rem 1.6rem; border-left: 2px solid var(--gold); color: var(--ink); font-style: italic; line-height: 1.4; }
.v2-quote p { margin: 0; }

/* Approach: plain paragraphs beside the photo (no rules, numbers or logo) */
.v2-points-wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 6rem); align-items: center; }
.v2-points { color: var(--v2-text); line-height: 1.65; font-size: clamp(1.02rem, .95rem + .3vw, 1.22rem); }
.v2-points p { margin: 0 0 1.15em; }
.v2-points p:last-child { margin-bottom: 0; }
.v2-photo { display: block; width: 100%; max-width: 780px; height: auto; margin-left: auto; border-radius: var(--radius); box-shadow: 0 24px 60px rgba(40, 40, 70, .14); }

/* CTA card */
.v2-cta { padding-top: 0; }
.v2-cta-card { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); border-radius: var(--radius); overflow: hidden; background: var(--bg-alt); border: 1px solid var(--line); }
.v2-cta-body { padding: clamp(2rem, 4vw, 4.25rem) clamp(1.5rem, 4vw, 4.25rem); align-self: center; }
.v2-cta-body h2 { margin: 0 0 .75rem; color: var(--ink); font-weight: 500; line-height: 1.1; font-size: clamp(1.8rem, 1.2rem + 1.7vw, 3rem); }
.v2-cta-body > p { margin: 0 0 1.75rem; color: var(--v2-text); font-size: clamp(1.05rem, 1rem + .3vw, 1.3rem); }
.v2-cta-media { position: relative; min-height: 320px; }
.v2-cta-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 55% 36%; }
.v2-cta-media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--bg-alt) 0%, rgba(246, 241, 232, 0) 28%); }

/* Links */
.v2-links { padding-top: 0; }

/* Close: footline + silk band (the burgundy silk is shifted to navy here) */
.v2-close { margin-top: clamp(1rem, 2vw, 2rem); }
.v2-footline { display: flex; align-items: center; gap: 1.5rem; padding: 0 0 1.5rem; color: var(--gold); font-size: clamp(.78rem, .72rem + .15vw, .9rem); letter-spacing: .22em; text-transform: uppercase; }
.lang-ka .v2-footline { letter-spacing: .1em; }
.v2-footline-line { flex: 1; height: 1px; background: var(--gold-soft); }
.v2-silk { height: clamp(150px, 18vw, 280px); overflow: hidden; }
.v2-silk img { width: 100%; height: 100%; object-fit: cover; object-position: center 45%; filter: hue-rotate(200deg) saturate(.75) brightness(.72); }

/* Responsive */
@media (max-width: 1100px) {
	.v2-hero-media { width: min(460px, 56vh, 40vw); }
}
@media (max-width: 900px) {
	.v2-hero-inner { grid-template-columns: 1fr; }
	.v2-hero-media { order: -1; width: min(100%, 380px); justify-self: center; }
	.v2-title { max-width: none; }
	.v2-points-wrap { grid-template-columns: 1fr; }
	.v2-photo { max-width: 560px; margin: .5rem auto 0; }
	.v2-cta-card { grid-template-columns: 1fr; }
	.v2-cta-media { order: -1; min-height: 220px; aspect-ratio: 16 / 9; }
	.v2-cta-media::before { background: linear-gradient(180deg, rgba(246, 241, 232, 0) 60%, var(--bg-alt) 100%); }
	.v2-h2::after { max-width: 120px; }
}
@media (max-width: 560px) {
	.v2-eyebrow::after { width: 40px; }
	.v2-footline { gap: .9rem; font-size: .68rem; }
	.v2-hero-media::after { display: none; }
}

/* Justified running text, as on the rest of the site */
.v2-hero-body p, .v2-points p, .v2-quote p { text-align: justify; text-justify: inter-word; -webkit-hyphens: auto; hyphens: auto; }
