/* FN9 campaign (retry 2026-10-25): high-key studio story, scoped to this landing page. */
.fn9-landing { --fn9-orange:#d75917; --fn9-rust:#b8450e; --fn9-ink:#232323; --fn9-paper:#fbf9f5; --fn9-yellow:#f2c200; --fn9-line:#e4e0d8; color:var(--fn9-ink); background:#fff; font-size:16px; line-height:1.65; }
.fn9-landing, .fn9-landing * { box-sizing:border-box; }
.fn9-landing h1, .fn9-landing h2, .fn9-landing h3, .fn9-landing p, .fn9-landing figure, .fn9-landing dl, .fn9-landing dd, .fn9-landing ul { margin:0; }
.fn9-landing h1, .fn9-landing h2, .fn9-landing h3 { color:inherit; font-family:"Raleway",sans-serif; font-weight:800; letter-spacing:-.025em; }
.fn9-landing h2 { font-size:clamp(30px,3.2vw,42px); line-height:1.12; }
.fn9-landing a { color:inherit; text-underline-offset:5px; }
.fn9-landing a:focus-visible { outline:3px solid var(--fn9-orange); outline-offset:5px; }
.fn9-landing img { display:block; max-width:100%; height:auto; }
.fn9-landing section, .fn9-landing header, .fn9-chapters { scroll-margin-top:84px; }
/* Match the site header .container content widths (1140/940/720, 15px phone gutters). */
.fn9-wrap { width:1140px; max-width:calc(100% - 30px); margin-inline:auto; }
@media (max-width:1199px) { .fn9-wrap { width:940px; } }
@media (max-width:991px) { .fn9-wrap { width:720px; } }
@media (max-width:767px) { .fn9-wrap { width:auto; } }
.fn9-landing .fn9-eyebrow { color:var(--fn9-rust); font-size:11px; font-weight:800; line-height:1.5; text-transform:uppercase; letter-spacing:.15em; margin-bottom:16px; }
.fn9-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 26px; }
.fn9-actions .btn { white-space:normal; font-size:14px; padding:11px 20px; background:#bd4a10; border-color:#bd4a10; color:#fff; }
.fn9-actions .btn:hover { background:#a73d0a; border-color:#a73d0a; }
.fn9-text-link { font-size:13px; font-weight:700; color:var(--fn9-rust) !important; }
.fn9-text-link span { margin-left:6px; }

/* Section nav */
.fn9-nav { position:sticky; top:0; z-index:20; background:#fff; border-bottom:1px solid #dedede; }
.fn9-nav-inner { display:flex; align-items:center; justify-content:space-between; min-height:60px; gap:24px; }
.fn9-nav a { font-size:12px; font-weight:700; text-decoration:none; padding-block:14px; }
.fn9-wordmark { letter-spacing:.1em; white-space:nowrap; }
.fn9-wordmark span { padding-inline:10px; color:var(--fn9-rust); }
.fn9-nav-links { display:flex; gap:30px; }
.fn9-nav-links a:last-child { color:var(--fn9-rust); }

/* Hero: native high-key render, copy on its bright left side */
.fn9-hero { position:relative; background:var(--fn9-paper); overflow:hidden; }
.fn9-hero-art { position:absolute; inset:0 0 auto 0; height:min(56.25vw,760px); }
.fn9-hero-art img { width:100%; height:100%; object-fit:cover; object-position:62% 100%; }
.fn9-hero-art::after { content:""; position:absolute; inset:auto 0 0 0; height:7%; background:linear-gradient(to bottom,rgba(251,249,245,0),var(--fn9-paper)); }
.fn9-hero-inner { position:relative; min-height:min(56.25vw,760px); display:flex; align-items:center; }
.fn9-hero-copy { max-width:420px; padding-block:56px 150px; }
.fn9-hero h1 { font-family:"Montserrat",sans-serif; font-size:clamp(84px,10vw,148px); font-weight:800; line-height:.9; letter-spacing:-.06em; margin-bottom:22px; }
.fn9-landing .fn9-headline { font-family:"Raleway",sans-serif; font-size:clamp(22px,2.1vw,28px); font-weight:700; line-height:1.25; letter-spacing:-.02em; }
.fn9-landing .fn9-intro { color:#555; margin-top:16px; font-size:15px; max-width:360px; }
.fn9-hero .fn9-actions { margin-top:28px; }
.fn9-spec-strip { position:relative; display:grid; grid-template-columns:repeat(4,1fr); background:#fff; border:1px solid var(--fn9-line); border-radius:4px; box-shadow:0 18px 40px -28px rgba(60,45,20,.35); margin-top:-34px; }
.fn9-spec-strip > div { padding:22px 26px; border-right:1px solid var(--fn9-line); }
.fn9-spec-strip > div:first-child { box-shadow:inset 0 3px 0 var(--fn9-orange); }
.fn9-spec-strip > div:last-child { border:0; }
.fn9-spec-strip dt { font-size:10px; text-transform:uppercase; color:#777; letter-spacing:.12em; font-weight:600; }
.fn9-spec-strip dd { font-size:30px; font-weight:700; line-height:1.3; margin-top:6px; letter-spacing:-.02em; white-space:nowrap; }
.fn9-spec-strip dd span { font-size:15px; font-weight:500; color:#666; letter-spacing:0; }
.fn9-landing .fn9-hero-note { text-align:right; color:#999; font-size:10px; letter-spacing:.06em; padding-block:10px 4px; }

/* Chapters: alternating image/explanation, as in the original page */
.fn9-chapters { padding-block:36px 24px; }
.fn9-chapter { display:grid; grid-template-columns:1.12fr 1fr; gap:72px; align-items:center; padding-block:64px; }
.fn9-chapter + .fn9-chapter { border-top:1px solid #eee; }
.fn9-chapter--flip .fn9-chapter-media { order:2; }
.fn9-chapter-media { min-width:0; }
.fn9-chapter-media figcaption { color:#888; font-size:11px; margin-top:12px; }
.fn9-chapter-copy { max-width:440px; }
.fn9-chapter-copy .fn9-eyebrow span { display:inline-block; min-width:28px; padding-right:10px; margin-right:10px; border-right:1px solid #e3c2b0; }
.fn9-chapter-copy > p:not(.fn9-eyebrow) { color:#555; margin-top:18px; }
.fn9-chapter-copy .fn9-text-link { display:inline-block; margin-top:20px; }
.fn9-landing .fn9-care { font-size:13px; color:#777 !important; border-left:2px solid var(--fn9-line); padding-left:14px; }
.fn9-points { list-style:none; padding:0; margin-top:24px !important; display:grid; gap:10px; }
.fn9-points li { display:flex; gap:12px; align-items:baseline; font-size:14px; color:#555; border-top:1px solid #eee; padding-top:10px; }
.fn9-points li::before { content:""; flex:0 0 16px; height:4px; border-radius:2px; background:var(--fn9-yellow); transform:translateY(-3px); }
.fn9-points strong { color:var(--fn9-ink); }

.fn9-profile-figure { background:var(--fn9-paper); border-radius:4px; padding:30px 26px 18px; }
.fn9-profile-figure svg { width:100%; height:auto; display:block; }
.fn9-profile-figure text { font:600 15px "Raleway",sans-serif; fill:#777; }
.fn9-profile-figure .fn9-profile-label { fill:var(--fn9-ink); font-weight:800; }
.fn9-profile-figure .fn9-profile-sub { font-size:12px; font-weight:600; fill:#b8450e; letter-spacing:.08em; text-transform:uppercase; }
.fn9-cut-glass { fill:#e3eff2; stroke:#bcd5dc; }
.fn9-cut-bead { fill:#3b3834; }
.fn9-cut-kerf { fill:#8a8378; }
.fn9-cut-body { fill:#d3cec4; }
.fn9-profile-figure .fn9-cut-tag { font-size:10px; font-weight:700; fill:#6b7b80; letter-spacing:.12em; text-transform:uppercase; }
.fn9-profile-figure .fn9-cut-tag--light { fill:#a49d92; }
.fn9-cut-arrow { stroke:#b8450e; stroke-width:2.5; }
.fn9-cut-dim { stroke:#f2c200; stroke-width:3; }
.fn9-cut-round { opacity:.62; }


.fn9-strength-figure { background:#1f1f1f; color:#fff; border-radius:4px; padding:48px 44px 40px; }
.fn9-landing .fn9-strength-big { font:800 clamp(88px,9vw,132px)/.9 "Montserrat",sans-serif; letter-spacing:-.06em; }
.fn9-strength-big small { font-size:.3em; font-weight:600; letter-spacing:0; color:#f2c200; margin-left:10px; }
.fn9-landing .fn9-strength-cap { color:#999; font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:700; margin-top:14px; }
.fn9-strength-thin { display:flex; align-items:center; gap:18px; margin-top:38px; padding-top:22px; border-top:1px solid #353535; }
.fn9-strength-line { flex:1 1 auto; height:5px; border-radius:3px; background:repeating-linear-gradient(115deg,#f2c200 0 4px,#d9ab00 4px 7px); box-shadow:0 0 18px rgba(242,194,0,.3); }
.fn9-landing .fn9-strength-thin p { color:#bbb; font-size:13px; white-space:nowrap; }
.fn9-strength-thin strong { color:#fff; font-size:17px; margin-right:4px; }
.fn9-photo img { width:100%; border-radius:4px; }
.fn9-motion { position:relative; }
.fn9-motion video { display:block; width:100%; height:auto; aspect-ratio:1200/676; border-radius:4px; background:#1a1714; }
.fn9-motion__control { display:none; position:absolute; right:12px; bottom:12px; padding:6px 12px; border:1px solid rgba(255,255,255,.3); border-radius:999px; background:rgba(20,20,20,.7); color:#fff; font-size:12px; font-weight:600; line-height:1.4; cursor:pointer; }
.fn9-landing.bc-has-js .fn9-motion__control { display:inline-block; }
.fn9-motion__control:hover { border-color:var(--fn9-orange); }
.fn9-motion__control:focus-visible { outline:3px solid var(--fn9-orange); outline-offset:3px; }
.fn9-landing .fn9-reuse { display:flex; align-items:baseline; gap:14px; margin-top:24px; padding-top:18px; border-top:1px solid #eee; color:#555; }
.fn9-reuse strong { font:800 40px/1 "Montserrat",sans-serif; letter-spacing:-.04em; color:var(--fn9-ink); white-space:nowrap; }
.fn9-reuse span { font-size:14px; font-weight:600; }

.fn9-length-figure { background:var(--fn9-paper); border-radius:4px; padding:36px 34px 30px; }
.fn9-landing .fn9-length-title { font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.14em; color:#777; margin-bottom:10px; }
.fn9-length-row { display:grid; grid-template-columns:56px 1fr 108px; align-items:center; gap:18px; padding-block:16px; }
.fn9-length-row + .fn9-length-row { border-top:1px solid var(--fn9-line); }
.fn9-length-row strong { font:800 20px/1 "Montserrat",sans-serif; letter-spacing:-.02em; }
.fn9-length-track { height:14px; }
.fn9-length-track span { display:block; height:100%; width:var(--fn9-bar); border-radius:7px; background:#b9b2a6; }
.fn9-length-row--fn9 .fn9-length-track span { background:repeating-linear-gradient(115deg,#f2c200 0 5px,#ddb000 5px 9px); }
.fn9-length-row em { font:700 24px/1 "Montserrat",sans-serif; font-style:normal; text-align:right; letter-spacing:-.03em; }
.fn9-length-row em small { display:block; font-size:12px; font-weight:500; color:#888; letter-spacing:0; margin-top:4px; }
.fn9-landing .fn9-length-extra { margin-top:14px; padding-top:16px; border-top:1px solid var(--fn9-line); font:800 22px/1.2 "Montserrat",sans-serif; color:var(--fn9-rust); letter-spacing:-.02em; }
.fn9-length-extra span { font:600 13px "Raleway",sans-serif; color:#666; letter-spacing:0; }

/* Specs */
.fn9-specs { background:var(--fn9-paper); border-top:1px solid #eee5d8; padding-block:64px; }
.fn9-specs-grid { display:grid; grid-template-columns:1fr 1.6fr; gap:72px; align-items:start; }
.fn9-doc-links { list-style:none; padding:0; margin-top:26px !important; display:grid; gap:2px; max-width:280px; }
.fn9-doc-links a { display:flex; justify-content:space-between; gap:12px; padding:12px 0; border-top:1px solid var(--fn9-line); font-size:14px; font-weight:700; text-decoration:none; }
.fn9-doc-links a:hover { color:var(--fn9-rust); }
.fn9-doc-links span { color:var(--fn9-rust); font-size:11px; letter-spacing:.1em; }
.fn9-spec-table { display:grid; grid-template-columns:1fr 1fr; column-gap:40px; font-size:14px; }
.fn9-spec-table > div { display:grid; grid-template-columns:130px 1fr; gap:14px; padding-block:13px; border-top:1px solid var(--fn9-line); }
.fn9-spec-table dt { color:#777; font-weight:500; }
.fn9-spec-table dd { font-weight:700; }

/* Order */
.fn9-order { background:#1f1f1f; color:#fff; padding-block:48px; }
.fn9-order-inner { display:flex; align-items:center; gap:40px; }
.fn9-order-text { flex:1 1 auto; }
.fn9-order-photo { flex:0 0 120px; background:#fff; border-radius:4px; padding:10px; }
.fn9-order-photo img { width:100%; }
.fn9-order .fn9-eyebrow { color:#ed8d53 !important; margin-bottom:10px; }
.fn9-order h2 { font-size:clamp(26px,2.6vw,34px); }
.fn9-order-details { display:flex; flex-wrap:wrap; gap:8px 34px; margin-top:16px !important; font-size:13px; }
.fn9-order-details > div { display:flex; gap:10px; }
.fn9-order-details dt { color:#999; font-weight:400; }
.fn9-order-details dd { font-weight:700; }
.fn9-order .fn9-text-link { color:#ed8d53 !important; }
.fn9-order .fn9-actions { flex:0 0 auto; }

@media (max-width:1199px) {
    .fn9-chapter { gap:52px; }
    .fn9-spec-strip > div { padding:20px; }
    .fn9-spec-strip dd { font-size:26px; }
}
@media (max-width:991px) {
    .fn9-hero-copy { max-width:340px; }
    .fn9-chapter { grid-template-columns:1fr 1fr; gap:36px; padding-block:48px; }
    .fn9-strength-figure { padding:34px 26px 28px; }
    .fn9-length-figure { padding:26px 22px 22px; }
    .fn9-length-row { grid-template-columns:46px 1fr 86px; gap:12px; }
    .fn9-length-row em { font-size:20px; }
    .fn9-spec-strip { grid-template-columns:repeat(2,1fr); }
    .fn9-spec-strip > div:nth-child(2) { border-right:0; }
    .fn9-spec-strip > div:nth-child(-n+2) { border-bottom:1px solid var(--fn9-line); }
    .fn9-specs-grid { grid-template-columns:1fr; gap:30px; }
    .fn9-order-inner { flex-direction:column; align-items:flex-start; gap:24px; }
}
@media (max-width:700px) {
    .fn9-nav-inner { min-height:54px; gap:12px; }
    .fn9-nav a { font-size:11px; }
    .fn9-nav-links { gap:16px; }
    .fn9-hero-art { position:relative; height:auto; aspect-ratio:1840/1440; order:2; }
    .fn9-hero-art::after { display:none; }
    .fn9-hero { display:flex; flex-direction:column; }
    .fn9-hero-inner { min-height:0; order:1; }
    .fn9-hero-copy { padding:34px 0 22px; max-width:none; }
    .fn9-hero h1 { font-size:96px; margin-bottom:16px; }
    .fn9-hero > .fn9-wrap:last-child { order:3; }
    .fn9-spec-strip { margin-top:14px; }
    .fn9-spec-strip > div { padding:14px 16px; }
    .fn9-spec-strip dd { font-size:22px; }
    .fn9-spec-strip dd span { font-size:12px; }
    .fn9-chapters { padding-block:8px; }
    .fn9-chapter { grid-template-columns:1fr; gap:24px; padding-block:40px; }
    .fn9-chapter--flip .fn9-chapter-media { order:0; }
    .fn9-profile-figure { padding:22px 14px 16px; }
    .fn9-profile-figure text { font-size:22px; }
    .fn9-profile-figure .fn9-profile-sub { font-size:17px; letter-spacing:.04em; }
    .fn9-profile-figure .fn9-cut-tag { font-size:15px; letter-spacing:.06em; }
    .fn9-strength-big { font-size:92px !important; }
    .fn9-order-photo { flex-basis:auto; width:110px; }
    .fn9-specs { padding-block:44px; }
    .fn9-spec-table { grid-template-columns:1fr; }
    .fn9-spec-table > div { grid-template-columns:120px 1fr; }
    .fn9-order .fn9-actions { width:100%; }
    .fn9-order .fn9-actions .btn { width:100%; }
}
@media print {
    .fn9-nav, .fn9-actions { display:none; }
    .fn9-chapter, .fn9-specs { break-inside:avoid; padding-block:24px; }
    .fn9-strength-figure, .fn9-order, .fn9-length-figure { background:#fff; color:#222; border:1px solid #ccc; }
}
