/* Jonathan's: quiet jewelry detail paired with a practical integration story. */
.jf-case {--case-accent:#D8C8A4;}
.jf-case .page-hero h1 {max-width:16ch;}
.jf-case .bg-hero-grid {grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:clamp(28px,5vw,72px);}
.jf-case .bg-hero-grid>* {min-width:0;}
.jf-hero-art {margin:0;max-width:480px;justify-self:end;}
.jf-hero-art img,.jf-work-art img {display:block;width:100%;height:auto;}
.jf-hero-art figcaption {padding:18px 0 0;border-top:1px solid var(--line);color:#C1CCD6;font-size:.82rem;line-height:1.65;}
.jf-case .bg-name {line-height:1.6;}
.jf-case .bg-copy p {overflow-wrap:break-word;}
.jf-case .jf-domain-change {margin:28px 0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);border-top:1px solid var(--line-lt);border-bottom:1px solid var(--line-lt);}
.jf-domain-change>div {padding:28px 24px 28px 0;min-width:0;}
.jf-domain-change>div+div {padding-left:28px;border-left:1px solid var(--line-lt);background:linear-gradient(105deg,rgba(216,200,164,.15),transparent);}
.jf-domain-change dt {font:500 .69rem/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#546371;margin-bottom:14px;}
.jf-domain-change dd {margin:0;font:500 clamp(1.05rem,1.65vw,1.4rem)/1.4 var(--sans);overflow-wrap:anywhere;}
.jf-domain-change>div+div dd {font:500 clamp(2.4rem,4vw,3.5rem)/1.05 var(--serif);letter-spacing:-.03em;color:#745B16;}
.jf-flow {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:44px 0 0;padding:0;border:1px solid rgba(216,200,164,.27);border-radius:12px;overflow:hidden;background:linear-gradient(115deg,rgba(216,200,164,.07),transparent);}
.jf-flow li {padding:clamp(24px,3vw,40px);position:relative;min-width:0;}
.jf-flow li+li {border-left:1px solid rgba(216,200,164,.27);}
.jf-flow li>span,.jf-insight>span {display:block;font:500 .72rem/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#D8C8A4;}
.jf-flow h3 {font:500 clamp(1.5rem,2.3vw,2rem)/1.2 var(--serif);margin:26px 0 14px;}
.jf-flow p,.jf-insight p {font-size:1rem;line-height:var(--copy-leading);color:#C1CCD6;}
.jf-caption {font-size:.83rem;line-height:var(--copy-leading);color:#4E5D6B;max-width:85ch;margin-top:18px;}
.dk .jf-caption {color:#B8C3CF;}
.jf-insight {display:grid;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);margin-top:40px;padding-top:28px;border-top:1px solid var(--line);}
.jf-insight p {max-width:65ch;}
.jf-journey-wrap {margin-top:44px;}
.jf-overline {font:500 .7rem/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#66502B;}
.jf-journey {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:22px 0 0;padding:0;gap:28px;}
.jf-journey li {border-top:1px solid #B8AD96;padding-top:22px;min-width:0;}
.jf-journey li>span {display:block;font:500 .8rem/1.4 var(--mono);color:#745B16;margin-bottom:20px;}
.jf-journey h3 {font:500 1.6rem/1.25 var(--serif);margin-bottom:12px;}
.jf-journey p {color:#344354;font-size:1rem;line-height:var(--copy-leading);}
.jf-delivered-list {padding:0;margin:28px 0;list-style:none;border-top:1px solid var(--line-lt);}
.jf-delivered-list li {display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:24px;padding:18px 0;border-bottom:1px solid var(--line-lt);font-size:1rem;line-height:var(--copy-leading);color:#344354;}
.jf-record-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px;}
.jf-record {display:flex;flex-direction:column;align-items:flex-start;padding:28px;border:1px solid var(--line-lt);border-radius:12px;background:#FAFAF7;min-width:0;}
.jf-record h3 {font:500 clamp(1.4rem,2.2vw,1.8rem)/1.25 var(--serif);margin:18px 0 14px;}
.jf-record>p:not(.jf-overline) {font-size:1rem;line-height:var(--copy-leading);color:#344354;margin-bottom:20px;}
.jf-record a {display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:auto;font-size:.92rem;font-weight:700;color:#125D5E;text-decoration:underline;text-underline-offset:4px;}
.jf-record-note {margin-top:24px;}
.jf-record-note p {max-width:95ch;font-size:.86rem;line-height:var(--copy-leading);color:#4E5D6B;}
.jf-record-note a {text-decoration:underline;text-underline-offset:3px;color:#125D5E;}
.jf-work-feature {background:linear-gradient(125deg,#0D1B2A,#182B38);}
.jf-work-feature .bg-feature-label {color:#D8C8A4;line-height:1.7;}
.jf-work-feature h2 em {color:#D8C8A4;}
.jf-work-art {margin:0;max-width:340px;justify-self:center;}
.jf-work-art figcaption {text-align:center;font:.68rem/1.6 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#C1CCD6;margin-top:10px;}
.jf-work-paths {grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
@media(max-width:980px){
 .jf-case .bg-hero-grid {grid-template-columns:minmax(0,1fr);}
 .jf-hero-art {justify-self:center;max-width:420px;width:100%;}
 .jf-journey {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px;}
 .jf-record-grid,.jf-work-paths {grid-template-columns:minmax(0,1fr);}
 .jf-record {padding:28px;}
 .jf-insight {grid-template-columns:minmax(0,1fr);gap:16px;}
}
@media(max-width:700px){
 .jf-flow {grid-template-columns:minmax(0,1fr);}
 .jf-flow li+li {border-left:0;border-top:1px solid rgba(216,200,164,.27);}
 .jf-flow h3 {margin-top:18px;}
 .jf-work-art {max-width:290px;}
 .jf-work-feature .btn {white-space:normal;text-align:center;justify-content:center;}
}
@media(max-width:560px){
 .jf-case .jf-domain-change {grid-template-columns:minmax(0,1fr);}
 .jf-domain-change>div+div {padding-left:0;border-left:0;border-top:1px solid var(--line-lt);}
 .jf-delivered-list li {grid-template-columns:minmax(0,1fr);gap:6px;}
 .jf-journey {gap:28px 20px;}
 .jf-journey h3 {font-size:1.35rem;}
 .jf-journey p {font-size:.95rem;}
 .jf-hero-art {max-width:330px;}
 .jf-record {padding:24px;}
}

/* Actual jewelry photography, with the wide diamond detail leading the gallery. */
.jf-jewelry {margin-top:44px;}
.jf-jewelry-heading {display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px;}
.jf-jewelry-heading>span {font-size:.85rem;color:#4E5D6B;}
.jf-jewelry-grid {display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;align-items:start;}
.jf-jewelry-photo {margin:0;min-width:0;}
.jf-jewelry-photo img {display:block;width:100%;height:clamp(210px,23vw,320px);object-fit:cover;object-position:center;border-radius:10px;background:#D1D0CC;border:1px solid var(--line-lt);}
.jf-jewelry-photo figcaption {margin-top:13px;font:500 .85rem/1.5 var(--sans);color:#344354;}
.jf-photo-credit {margin-top:20px;color:#4E5D6B;font-size:.78rem;line-height:var(--copy-leading);}
.jf-photo-credit a {text-decoration:underline;text-underline-offset:3px;color:#125D5E;}
@media(max-width:800px){
 .jf-jewelry-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;}
 .jf-jewelry-lead {grid-column:1/-1;}
 .jf-jewelry-photo img {height:auto;aspect-ratio:1;}
 .jf-jewelry-lead img {aspect-ratio:1024/536;}
}
@media(max-width:420px){
 .jf-jewelry-grid {grid-template-columns:minmax(0,1fr);}
 .jf-jewelry-photo img {aspect-ratio:auto;height:auto;}
 .jf-jewelry-heading>span {display:none;}
}
