/* features.html ("Everything included", 10 Oct 2026). Sits on occasi-public-shell-2026 + occasi-brand-2026 +
   occasi-home-2026 and only adds the fx-* blocks. Every picture is a real screen captured from the demo
   (scripts/capture-features.cjs). No autoplay, no scroll-driven motion, nothing to pause. */
.fx-page main{overflow:clip}
.fx-hero{padding-bottom:40px}
.fx-hero h1 em{font-style:italic}
.fx-jump{list-style:none;margin:46px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-block:1px solid var(--oc-line)}
.fx-jump li+li{border-left:1px solid var(--oc-line)}
.fx-jump a{display:flex;flex-direction:column;gap:4px;padding:20px 22px;min-height:44px;text-decoration:none;color:var(--oc-ink);transition:background-color .2s ease}
.fx-jump a:hover{background:#edf0e7}
.fx-jump b{font:500 13px/1.3 var(--oc-sans);letter-spacing:.02em}
.fx-jump span{font-size:13px;line-height:1.5;color:var(--oc-muted)}
.fx-jump small{font:400 22px/1 var(--oc-serif);color:var(--oc-gold)}

.fx-chapter{padding-block:96px;scroll-margin-top:var(--oc-nav)}
.fx-chapter.alt{background:#edf0e7;border-block:1px solid var(--oc-line)}
.fx-chapter.deep{background:var(--oc-deep);color:var(--oc-paper)}
.fx-chapter.deep .oc-kicker{color:#d5c29b}
.fx-chapter.deep .fx-head>p,.fx-chapter.deep .fx-copy p,.fx-chapter.deep .fx-facts li{color:#d3dfd0}
.fx-chapter.deep .fx-facts li{border-color:#ffffff24}
.fx-chapter.deep .fx-facts li::before{background:#d5c29b}
.fx-chapter.deep .oc-textlink{color:#e9ecdf}
.fx-head{max-width:720px;margin-bottom:64px}
.fx-head .oc-kicker{margin:0 0 16px}
.fx-head h2{font-size:clamp(40px,4.1vw,58px);line-height:1.05;letter-spacing:-.025em;margin:0 0 20px;font-weight:400}
.fx-head h2 em{font-style:italic}
.fx-head>p{font-size:16px;line-height:1.75;color:var(--oc-muted);max-width:58ch;margin:0}

.fx-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:72px;align-items:center}
.fx-feature+.fx-feature{margin-top:96px}
.fx-feature.flip .fx-media{order:2}
.fx-copy{max-width:470px}
.fx-copy .oc-kicker{margin:0 0 12px}
.fx-copy h3{font:400 clamp(30px,2.7vw,40px)/1.1 var(--oc-serif);letter-spacing:-.015em;margin:0 0 18px}
.fx-copy p{font-size:16px;line-height:1.75;color:var(--oc-muted);margin:0 0 18px}
.fx-facts{list-style:none;padding:0;margin:22px 0 8px}
.fx-facts li{position:relative;padding:11px 0 11px 22px;border-bottom:1px solid #d3dccb;font-size:14px;line-height:1.6;color:var(--oc-ink)}
.fx-facts li:first-child{border-top:1px solid #d3dccb}
.fx-facts li::before{content:"";position:absolute;left:2px;top:20px;width:7px;height:7px;border-radius:50%;background:var(--oc-gold)}
.fx-copy .oc-textlink{margin-top:6px}

.fx-media{margin:0;display:flex;justify-content:center;align-items:flex-end;gap:22px;min-width:0}
.fx-media figcaption{display:none}
.fx-shot{display:block;margin:0;background:var(--oc-white);border:1px solid #cdd6c7;box-shadow:0 30px 60px -28px #10302338,0 8px 20px -12px #10302326;overflow:hidden}
.fx-shot img{display:block;width:100%;height:auto}
.fx-desk{border-radius:12px;width:100%;max-width:640px}
.fx-phone{border-radius:30px;width:min(300px,100%);border:6px solid var(--oc-white);outline:1px solid #cdd6c7}
.fx-phone img{border-radius:24px}
.fx-pair .fx-phone{width:min(260px,calc(50% - 11px))}
.fx-pair .fx-phone:nth-child(2){transform:translateY(-34px)}
.fx-dialog{border-radius:14px;max-width:560px;width:100%}
.fx-note{font-size:12px;line-height:1.6;color:var(--oc-muted);margin:14px 0 0;text-align:center}
.fx-chapter.deep .fx-note{color:#b9c8b8}
.fx-stack{display:flex;flex-direction:column;align-items:center;width:100%}

.fx-more{margin-top:96px;padding-top:44px;border-top:1px solid var(--oc-line)}
.fx-chapter.deep .fx-more{border-color:#ffffff24}
.fx-more h3{font:400 30px/1.15 var(--oc-serif);margin:0 0 28px}
.fx-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 40px}
.fx-grid li{padding-top:16px;border-top:1px solid #cdd6c7}
.fx-chapter.deep .fx-grid li{border-color:#ffffff30}
.fx-grid b{display:block;font:500 15px/1.4 var(--oc-sans);margin-bottom:6px}
.fx-grid span{display:block;font-size:14px;line-height:1.65;color:var(--oc-muted)}
.fx-chapter.deep .fx-grid span{color:#c9d6c7}

.fx-packages{padding-block:96px;background:var(--oc-paper)}
.fx-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:8px}
.fx-plan{background:var(--oc-white);border:1px solid var(--oc-line);border-radius:4px;padding:34px 34px 30px;display:flex;flex-direction:column;gap:10px}
.fx-plan .oc-kicker{margin:0}
.fx-plan h3{font:400 34px/1.1 var(--oc-serif);margin:0}
.fx-plan strong{font:500 40px/1 var(--oc-serif);font-variant-numeric:tabular-nums;margin-top:6px}
.fx-plan p{margin:0;font-size:15px;line-height:1.7;color:var(--oc-muted)}
.fx-plan .oc-textlink{margin-top:auto;align-self:flex-start}
.fx-plans-note{margin:26px 0 0;font-size:14px;line-height:1.7;color:var(--oc-muted);max-width:70ch}

.fx-soon{margin-top:56px;padding:26px 28px;border:1px dashed #b9c4b2;border-radius:4px;display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}
.fx-soon[hidden]{display:none}
.fx-soon b{font:600 10px/1.6 var(--oc-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--oc-gold)}
.fx-soon p{margin:0;font-size:15px;line-height:1.7;color:var(--oc-muted);flex:1 1 320px}

@media(max-width:1180px){.fx-feature{gap:44px}.fx-jump a{padding:18px 16px}}
@media(max-width:860px){
  .fx-feature,.fx-feature.flip{grid-template-columns:minmax(0,1fr);gap:34px}
  .fx-feature.flip .fx-media{order:0}
  .fx-copy{max-width:none}
  .fx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .fx-hero{padding-bottom:22px}
  .fx-jump{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px}
  .fx-jump li:nth-child(3){border-left:0}
  .fx-jump li:nth-child(n+3){border-top:1px solid var(--oc-line)}
  .fx-jump a{padding:16px 14px}
  .fx-chapter,.fx-packages{padding-block:64px}
  .fx-head{margin-bottom:40px}
  .fx-head h2{font-size:clamp(34px,9.6vw,44px)}
  .fx-feature+.fx-feature{margin-top:64px}
  .fx-copy h3{font-size:30px}
  .fx-phone{width:min(270px,82%)}
  .fx-pair{gap:12px}
  .fx-pair .fx-phone{width:calc(50% - 6px);border-width:4px;border-radius:22px}
  .fx-pair .fx-phone img{border-radius:18px}
  .fx-pair .fx-phone:nth-child(2){transform:translateY(-18px)}
  .fx-desk{border-radius:8px}
  .fx-more{margin-top:64px}
  .fx-grid{grid-template-columns:minmax(0,1fr);gap:22px}
  .fx-plans{grid-template-columns:minmax(0,1fr)}
  .fx-plan{padding:26px 22px}
}
@media(prefers-reduced-motion:reduce){.fx-jump a{transition:none}}

/* Phase 3 teaser blocks for index.html and pricing.html (docs/drafts/feature-sections.html). Unused on features.html. */
.fx-teaser-head{max-width:720px;margin-bottom:40px}
.fx-teaser-head .oc-kicker{margin:0 0 16px}
.fx-teaser-head h2{font-size:clamp(38px,4vw,56px);line-height:1.05;letter-spacing:-.025em;margin:0 0 18px;font-weight:400}
.fx-teaser-head h2 em{font-style:italic}
.fx-teaser-head p{margin:0;color:var(--oc-muted);font-size:16px;line-height:1.7}
.fx-teaser-grid{list-style:none;padding:0;margin:0 0 40px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.fx-teaser-grid li{display:flex;flex-direction:column}
.fx-teaser-grid img{display:block;width:100%;height:300px;object-fit:cover;object-position:50% 0;border-radius:14px;border:1px solid #cdd6c7;background:var(--oc-white);margin-bottom:18px}
.fx-teaser-grid h3{font:400 26px/1.15 var(--oc-serif);margin:0 0 8px}
.fx-teaser-grid p{margin:0;font-size:14px;line-height:1.65;color:var(--oc-muted)}
.fx-included-list{list-style:none;padding:0;margin:18px 0 10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.fx-included-list li{position:relative;padding:10px 0 10px 22px;border-bottom:1px solid var(--oc-line);font-size:14px;line-height:1.6}
.fx-included-list li::before{content:"";position:absolute;left:2px;top:19px;width:7px;height:7px;border-radius:50%;background:var(--oc-gold)}
@media(max-width:960px){.fx-teaser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.fx-teaser-grid{gap:18px}.fx-teaser-grid img{height:220px;border-radius:10px}.fx-teaser-grid h3{font-size:22px}.fx-included-list{grid-template-columns:minmax(0,1fr)}}
