
  .story-head { max-width: 68ch; padding: 48px 0 8px 0; }
  .story-head h1 { font-size: clamp(38px, 5vw, 60px); margin-top: 12px; }
  .story-head p { color: var(--body-warm); font-size: 20px; margin: 18px 0 0 0; }
  .real-badge {
    display: inline-block; background: var(--blush); color: var(--terracotta-deep);
    font-size: 13px; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 700;
    padding: 8px 14px; border-radius: 2px; margin-top: 18px;
  }
  .story { display: flex; flex-direction: column; gap: 72px; padding: 40px 0 88px 0; }

  .annotated { position: relative; border-radius: 2px; overflow: hidden; }
  .annotated img { width: 100%; display: block; }
  .dot {
    position: absolute; width: 30px; height: 30px; margin: -15px 0 0 -15px;
    background: var(--terracotta); color: #FFFFFF; border: 2px solid #FFFFFF;
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 700; font-size: 16px;
    box-shadow: 0 1px 6px rgba(43, 24, 28, 0.35); cursor: default;
  }
  .legend { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 40px; margin-top: 28px; max-width: 900px; }
  .legend .item { display: flex; gap: 14px; align-items: baseline; border-bottom: 1px solid var(--line); padding-bottom: 12px; }
  .legend .n {
    flex-shrink: 0; width: 26px; height: 26px; border-radius: 50%; background: var(--terracotta);
    color: #FFFFFF; display: inline-flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: 14px; position: relative; top: 5px;
  }
  .legend b { font-size: 18px; display: block; }
  .legend span { font-size: 15px; color: var(--muted); }

  .claim { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
  .claim h2 { font-size: clamp(30px, 4vw, 44px); }
  .claim p { color: var(--body-warm); font-size: 18px; }
  .claim .facts { display: flex; flex-direction: column; border-top: 1px solid var(--line); }
  .claim .fact { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--line); }
  .claim .fact b { font-family: 'Italiana', Georgia, serif; font-weight: 400; font-size: 24px; color: var(--terracotta-deep); white-space: nowrap; }
  .claim .fact span { font-size: 17px; color: var(--body-warm); }

  .gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
  .shot { display: flex; flex-direction: column; gap: 10px; }
  .shot .frame { overflow: hidden; border-radius: 2px; background: var(--blush); aspect-ratio: 4 / 5; }
  .shot img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .shot p { margin: 0; font-size: 16px; color: var(--body-warm); }

  .flats { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
  .flats figure { margin: 0; display: flex; flex-direction: column; gap: 10px; }
  .flats img { width: 100%; border-radius: 2px; display: block; }
  .flats figcaption { font-size: 15px; color: var(--muted); }
  @media (max-width: 880px) { .flats { grid-template-columns: 1fr; } }

  .cta-panel { background: var(--cocoa); border-radius: 2px; color: var(--cream); padding: 48px; text-align: center; }
  .cta-panel h2 { color: var(--cream); font-size: clamp(30px, 4vw, 44px); }
  .cta-panel p { color: var(--blush); max-width: 54ch; margin: 16px auto 0 auto; }
  .cta-panel .btn { background: var(--honey); border-color: var(--honey); color: var(--cocoa); margin-top: 28px; }
  .cta-panel .btn:hover { background: #EFC079; }

  @media (max-width: 880px) {
    .legend { grid-template-columns: 1fr; }
    .claim { grid-template-columns: 1fr; }
    .gallery { grid-template-columns: 1fr; }
    .dot { width: 24px; height: 24px; margin: -12px 0 0 -12px; font-size: 13px; }
  }

.portfolio-soiree-0{left: 90.8%; top: 31.3%}
.portfolio-soiree-1{left: 60.9%; top: 20%}
.portfolio-soiree-2{left: 59.5%; top: 37%}
.portfolio-soiree-3{left: 40.8%; top: 31.3%}
.portfolio-soiree-4{left: 46.3%; top: 36.3%}
.portfolio-soiree-5{left: 31.5%; top: 33.3%}
.portfolio-soiree-6{left: 65%; top: 42%}
.portfolio-soiree-7{left: 72%; top: 55.3%}
.portfolio-soiree-8{margin-top: 18px; font-size: 16px; color: var(--muted)}
