/* Page-scoped catalog design. System fonts; no external runtime dependencies. */
.jewelry-design-page{--bg:#faf8f5;--bg-alt:#faf8f5;--text:#1f1f1f;--text-sub:#1f1f1f;--accent:#b08d57;--accent-dk:#b08d57;--line:rgba(31,31,31,.18);--font-head:Georgia,'Times New Roman',serif;--font-body:Arial,Helvetica,sans-serif;--container:1280px;--radius:0;background:var(--bg);padding-bottom:76px}
.jewelry-design-page a{color:var(--text)}
.jewelry-design-page a:not(.btn):hover{text-decoration:underline;text-underline-offset:5px}
.jewelry-design-page :focus-visible{outline:2px solid var(--text);outline-offset:5px}
.jewelry-design-page h1,.jewelry-design-page h2,.jewelry-design-page h3{font-weight:400}
.jewelry-design-page h1{font-size:clamp(39.063px,4.2vw,61.035px);line-height:1.05;letter-spacing:-.035em;margin:16px 0 22px}
.jewelry-design-page h2{font-size:clamp(31.25px,3vw,39.063px);line-height:1.16;max-width:24ch}
.jewelry-design-page h3{font-size:25px;line-height:1.25}
.jewelry-design-page p{max-width:72ch;line-height:1.6}
.jewelry-design-page .btn{min-height:48px;white-space:normal;text-align:center;border:1px solid var(--text);border-radius:0;padding:13px 20px;font-size:16px}
.jewelry-design-page .btn--primary{background:var(--text);color:var(--bg)}
.jewelry-design-page .btn--primary:hover{background:var(--bg);color:var(--text)}
.jewelry-design-page .site-header,.jewelry-design-page .site-footer{background:var(--bg)}
.jewelry-design-page .site-footer{border-top:1px solid var(--line)}
.jewelry-design-page .footer-col h4{color:var(--text);font-family:var(--font-body)}
.jewelry-design-page .footer-bottom,.jewelry-design-page .footer-col p,.jewelry-design-page .footer-col a{color:var(--text)}
.jd-skip{position:fixed;top:8px;left:20px;transform:translateY(-180%);padding:12px;background:var(--bg);z-index:200}
.jd-skip:focus{transform:none}
.jd-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px}
.jd-hero{padding-top:44px;padding-bottom:28px}
.jd-intro{grid-column:span 6}
.jd-kicker{font-size:12.8px;letter-spacing:.12em;text-transform:uppercase}
.jd-kicker::before{content:'';display:inline-block;width:24px;height:2px;background:var(--accent);vertical-align:middle;margin-right:12px}
.jd-lede{font-size:20px;max-width:43ch!important}
.jd-context{margin:24px 0 16px;font-size:16px}
.jd-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:24px 0}
.jd-text-link{display:inline-block;text-decoration:underline;text-underline-offset:5px}
.jd-hero-figure{grid-column:span 6;align-self:center}
.jd-hero-figure img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.jd-hero-figure figcaption{font-size:12.8px;margin-top:12px}
.jd-meta{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;font-size:12.8px}
.jd-section{padding:96px 0;border-top:1px solid var(--line)}
.jd-section-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;margin-bottom:40px;align-items:end}
.jd-section-head>div:first-child{grid-column:span 7}
.jd-section-head>p,.jd-section-head>div:last-child:not(:first-child){grid-column:span 5}
.jd-section-head .jd-kicker{margin-bottom:16px}
.jd-steps article{grid-column:span 4;padding-top:20px;border-top:2px solid var(--accent)}
.jd-number{font-size:12.8px;letter-spacing:.1em}
.jd-steps h3{margin:20px 0 16px}
.jd-section-action{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}
.jd-section-action span{font-size:12.8px}
.jd-note{margin:-12px 0 28px;font-size:12.8px}
.jd-card{grid-column:span 4;min-width:0;border:1px solid var(--line);display:flex;flex-direction:column}
.jd-card figure{overflow:hidden;aspect-ratio:4/5}
.jd-card img{width:100%;height:100%;object-fit:cover;transition:transform 240ms ease}
.jd-card:hover img{transform:scale(1.02)}
.jd-card-body{padding:24px;display:flex;flex-direction:column;flex:1;gap:20px}
.jd-card dl{font-size:12.8px;overflow-wrap:anywhere}
.jd-card dl>div{padding:10px 0;border-top:1px solid var(--line)}
.jd-card dt{font-weight:600;margin-bottom:3px}
.jd-cross{font-size:12.8px}
.jd-card .btn{margin-top:auto}
.jd-planning>div{grid-column:span 5}
.jd-planning h3{margin-bottom:20px}
.jd-planning p{margin-bottom:20px}
.jd-terms{grid-column:7/span 6;overflow-wrap:anywhere}
.jd-terms>div{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.jd-terms dt{font-weight:600}
.jd-faq{max-width:900px}
.jd-faq article{padding:28px 0;border-top:1px solid var(--line)}
.jd-faq h3{font-size:20px;margin-bottom:12px}
.jd-final .jd-grid>div:first-child{grid-column:span 7}
.jd-final p:not(.jd-kicker){margin:24px 0}
.jd-final h2{margin-top:16px}
.jd-final-actions{grid-column:9/span 4;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:20px;overflow-wrap:anywhere}
.jd-dock{position:fixed;bottom:0;left:0;right:0;z-index:90;background:var(--bg);border-top:1px solid var(--text);display:flex;align-items:center;justify-content:center;gap:32px;min-height:64px;padding:12px 24px}
.jd-dock span{font-size:12.8px}
.jd-dock a{font-size:14px;text-decoration:underline;text-underline-offset:5px;min-height:36px;display:flex;align-items:center}
@media(min-width:1280px){.jd-hero{padding-top:56px;padding-bottom:32px}}
@media(max-width:767px){
 .jewelry-design-page{--pad-x:20px;padding-bottom:68px}
 .jewelry-design-page .nav-cta{display:none}
 .jewelry-design-page .breadcrumb{font-size:12.8px;padding-top:20px}
 .jd-hero{padding-top:28px}
 .jd-grid,.jd-section-head{grid-template-columns:minmax(0,1fr);gap:24px}
 .jd-intro,.jd-hero-figure,.jd-steps article,.jd-card,.jd-planning>div,.jd-terms,.jd-final .jd-grid>div:first-child,.jd-final-actions,.jd-section-head>div:first-child,.jd-section-head>p,.jd-section-head>div:last-child:not(:first-child){grid-column:1/-1}
 .jd-hero-figure{margin-top:8px}
 .jd-lede{font-size:16px}
 .jd-actions{gap:16px;margin:24px 0}
 .jd-context{margin-top:20px}
 .jd-section{padding:56px 0}
 .jd-section-head{margin-bottom:28px}
 .jd-meta{flex-direction:column;gap:10px;margin-top:28px}
 .jd-card-body{padding:24px}
 .jd-cards{gap:32px}
 .jd-terms>div{grid-template-columns:1fr;gap:6px}
 .jd-dock{gap:22px;padding:8px 16px;min-height:60px}
 .jd-dock span{display:none}
 .jd-dock a{min-height:44px}
 .jd-final-actions{margin-top:8px}
}
@media(prefers-reduced-motion:reduce){.jewelry-design-page{scroll-behavior:auto}.jewelry-design-page *{transition:none!important}.jd-card:hover img{transform:none}}
