@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Josefin+Sans:wght@300;400&display=swap');

  .f2a{
    --gold:#d4a845; --gold-light:#f5d98b; --gold-dark:#9c7425;
    --bg:#000; --card:#0b0905; --text:#e9dcc0; --muted:#a8987a;
    background:var(--bg); color:var(--text);
    font-family:'Cormorant Garamond',Georgia,serif;
    padding:90px 16px 110px; position:relative; overflow:hidden;
  }
  .f2a *{box-sizing:border-box;margin:0;padding:0}
  .f2a::before{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(ellipse at 15% 20%,rgba(212,168,69,.12),transparent 50%),
               radial-gradient(ellipse at 85% 85%,rgba(212,168,69,.08),transparent 50%);
  }
  .f2a-wrap{max-width:1080px;margin:0 auto;position:relative}

  /* reveal */
  .f2a-r{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s ease}
  .f2a-r.f2a-in{opacity:1;transform:none}

  /* ---------- Head ---------- */
  .f2a-head{text-align:center;margin-bottom:70px}
  .f2a-title{
    font-family:'Great Vibes',cursive;font-weight:400;font-size:clamp(60px,11vw,110px);line-height:1;
    background:linear-gradient(100deg,var(--gold-dark),var(--gold) 30%,var(--gold-light) 50%,var(--gold) 70%,var(--gold-dark));
    background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;
    animation:f2aShine 6s linear infinite;
  }
  .f2a-kicker{
    font-family:'Josefin Sans',sans-serif;font-weight:300;letter-spacing:.42em;text-transform:uppercase;
    color:var(--gold);font-size:clamp(12px,2.3vw,16px);margin-top:14px;
  }
  .f2a-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:26px auto 0;max-width:420px}
  .f2a-divider span{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
  .f2a-divider i{width:9px;height:9px;background:var(--gold);transform:rotate(45deg);display:block;animation:f2aPulse 2.6s ease-in-out infinite}

  /* ---------- Intro ---------- */
  .f2a-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center;margin-bottom:80px}
  .f2a-text p{font-size:20px;line-height:1.65;margin-bottom:18px}
  .f2a-text p:first-child::first-letter{
    font-family:'Great Vibes',cursive;font-size:68px;float:left;line-height:.8;margin:8px 10px 0 0;color:var(--gold);
  }
  .f2a-text strong{color:var(--gold-light);font-weight:600}
  .f2a-art{position:relative;aspect-ratio:1/1;max-width:440px;width:100%;margin:0 auto}
  .f2a-art svg{width:100%;height:100%;display:block}
  .f2a-art .f2a-draw{stroke-dasharray:1400;stroke-dashoffset:1400;transition:stroke-dashoffset 3s ease}
  .f2a-art.f2a-in .f2a-draw{stroke-dashoffset:0}
  .f2a-art .f2a-win{opacity:0;animation:f2aBlink 3.5s ease-in-out infinite}
  .f2a-art .f2a-ring{transform-origin:220px 220px;animation:f2aSpin 40s linear infinite}

  /* ---------- Stats ---------- */
  .f2a-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:90px}
  .f2a-stat{
    text-align:center;padding:30px 16px;border:1px solid rgba(212,168,69,.2);position:relative;
    background:linear-gradient(160deg,#110d06,var(--card) 60%);
  }
  .f2a-stat svg{width:40px;height:40px;margin-bottom:10px}
  .f2a-stat .f2a-n{
    font-family:'Cormorant Garamond',serif;font-size:54px;font-weight:600;line-height:1;color:var(--gold);display:block;
  }
  .f2a-stat .f2a-l{
    font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);
    display:block;margin-top:8px;
  }
  .f2a-stat::before,.f2a-stat::after{content:"";position:absolute;width:14px;height:14px;border:1px solid var(--gold);transition:.4s}
  .f2a-stat::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
  .f2a-stat::after{bottom:-1px;right:-1px;border-left:0;border-top:0}
  .f2a-stat:hover::before,.f2a-stat:hover::after{width:34px;height:34px}

  /* ---------- Section blocks ---------- */
  .f2a-block{margin-bottom:90px}
  .f2a-h3{
    text-align:center;font-family:'Josefin Sans',sans-serif;font-weight:300;letter-spacing:.36em;text-transform:uppercase;
    font-size:clamp(18px,3.4vw,26px);color:var(--gold-light);
  }
  .f2a-line{width:180px;height:1px;margin:14px auto 26px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
  .f2a-lead{text-align:center;font-size:20px;line-height:1.6;max-width:720px;margin:0 auto 36px;color:var(--text)}
  .f2a-note{text-align:center;font-style:italic;color:var(--muted);font-size:19px;margin-top:30px}

  /* menu chips */
  .f2a-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;max-width:900px;margin:0 auto}
  .f2a-chip{
    display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid rgba(212,168,69,.2);
    background:var(--card);font-size:19px;transition:.35s;
  }
  .f2a-chip svg{width:30px;height:30px;flex:none;transition:transform .5s}
  .f2a-chip:hover{border-color:var(--gold);box-shadow:0 0 24px rgba(212,168,69,.15)}
  .f2a-chip:hover svg{transform:rotate(-12deg) scale(1.12)}

  /* meeting place */
  .f2a-meet{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:10px}
  .f2a-occ{text-align:center;padding:26px 12px}
  .f2a-occ svg{width:54px;height:54px;margin-bottom:12px}
  .f2a-occ span{font-family:'Josefin Sans',sans-serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
  .f2a-occ svg .f2a-float{animation:f2aFloat 3s ease-in-out infinite}

  /* closing */
  .f2a-quote{
    text-align:center;max-width:780px;margin:0 auto;padding:44px 26px;position:relative;
    border-top:1px solid rgba(212,168,69,.3);border-bottom:1px solid rgba(212,168,69,.3);
  }
  .f2a-quote p{font-size:clamp(20px,3vw,26px);font-style:italic;line-height:1.55}
  .f2a-brand{text-align:center;margin-top:50px}
  .f2a-brand .f2a-title{font-size:clamp(50px,9vw,86px)}
  .f2a-slogan{
    font-family:'Josefin Sans',sans-serif;font-weight:300;letter-spacing:.3em;text-transform:uppercase;
    color:var(--gold);font-size:clamp(11px,2.2vw,15px);margin-top:12px;
  }
  .f2a-lines{display:flex;justify-content:center;gap:10px;height:70px;margin-top:26px}
  .f2a-lines i{width:1px;background:var(--gold);display:block;transform-origin:top;animation:f2aGrow 2.4s ease-in-out infinite alternate}
  .f2a-lines i:nth-child(1),.f2a-lines i:nth-child(5){height:60%}
  .f2a-lines i:nth-child(2),.f2a-lines i:nth-child(4){height:80%;animation-delay:.3s}
  .f2a-lines i:nth-child(3){height:100%;animation-delay:.6s}

  @keyframes f2aShine{to{background-position:220% center}}
  @keyframes f2aPulse{50%{box-shadow:0 0 14px var(--gold);opacity:.6}}
  @keyframes f2aBlink{0%,100%{opacity:.15}50%{opacity:1}}
  @keyframes f2aSpin{to{transform:rotate(360deg)}}
  @keyframes f2aFloat{50%{transform:translateY(-4px)}}
  @keyframes f2aGrow{from{transform:scaleY(.55)}to{transform:scaleY(1)}}

  @media (max-width:820px){
    .f2a-intro{grid-template-columns:1fr;gap:34px}
    .f2a-art{max-width:320px}
    .f2a-meet{grid-template-columns:repeat(2,1fr)}
  }
  @media (max-width:560px){
    .f2a{padding:60px 16px 80px}
    .f2a-stats{grid-template-columns:1fr}
    .f2a-text p,.f2a-lead{font-size:18px}
    .f2a-chips{grid-template-columns:1fr 1fr}
    .f2a-chip{font-size:16px;padding:13px 12px;gap:10px}
    .f2a-chip svg{width:24px;height:24px}
  }
  @media (prefers-reduced-motion:reduce){
    .f2a *{animation:none!important;transition:none!important}
    .f2a-r{opacity:1;transform:none}
    .f2a-art .f2a-draw{stroke-dashoffset:0}
    .f2a-art .f2a-win{opacity:.8}
  }