/* Women in Bloom — landing */
:root{
  --paper:#FBF4EE; --paper2:#F6E7DD;
  --ink:#4A2530; --plum:#7E2440; --wine:#8E2B45;
  --gold:#A87A3C; --goldl:#F0DCB0; --cream:#FBF4EE;
  --line:rgba(168,122,60,.4);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:'Heebo',system-ui,sans-serif;overflow-x:hidden}
body.en{font-family:'Jost',system-ui,sans-serif}
img{max-width:100%}
a{text-decoration:none;color:inherit}

.serif{font-family:'Frank Ruhl Libre',Georgia,serif}
body.en .serif{font-family:'Bodoni Moda',Didot,Georgia,serif}
.script{font-family:'Amatic SC',cursive;font-weight:700}
body.en .script{font-family:'Parisienne',cursive;font-weight:400}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:var(--plum);color:var(--cream);
  padding:17px 44px;border-radius:999px;font-size:19px;font-weight:600;letter-spacing:.03em;
  box-shadow:0 12px 30px rgba(126,36,64,.35);transition:transform .18s ease, box-shadow .18s ease, background .18s}
.btn:hover{transform:translateY(-2px);background:#8E2B45;box-shadow:0 16px 38px rgba(126,36,64,.45)}
.btn.gold{background:var(--gold);color:#fff}
.btn.gold:hover{background:#B8894A}
.micro{margin-top:12px;font-size:13.5px;color:var(--wine);letter-spacing:.04em;opacity:.85}
.ctawrap{text-align:center}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;padding:64px 22px 96px;overflow:hidden}
.hero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero .veil{position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(251,244,238,.86) 0%,rgba(251,244,238,.62) 34%,rgba(251,244,238,.3) 62%,rgba(74,31,42,.35) 100%)}
.hero>.in{position:relative;z-index:2;max-width:860px;display:flex;flex-direction:column;align-items:center}
.hero .iclogo{height:46px;width:auto}
.kicker{margin-top:16px;font-size:14px;letter-spacing:.22em;color:var(--wine);font-weight:600;text-transform:uppercase}
body:not(.en) .kicker{letter-spacing:.12em}
.hero h1{margin-top:18px;font-size:clamp(34px,6vw,58px);line-height:1.18;color:var(--plum);font-weight:900}
body.en .hero h1{font-weight:600}
.hero h1 .script{display:block;color:var(--gold);font-size:clamp(44px,7.6vw,76px);line-height:1.05;transform:rotate(-2deg);margin-top:6px}
.hero .sub{margin-top:22px;font-size:clamp(20px,3vw,27px);line-height:1.45;color:var(--ink);font-weight:500;max-width:640px}
.hero .sub b{color:var(--wine)}
.hero .meta{margin-top:20px;font-size:16.5px;letter-spacing:.05em;color:var(--plum);font-weight:600}
.hero .ctawrap{margin-top:30px}
.scrollhint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;color:#FBF4EE;opacity:.9;animation:bob 2.2s infinite}
@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

/* ---------- sections ---------- */
section{padding:84px 22px}
.wrap{max-width:1060px;margin:0 auto}
.sec-k{font-size:13.5px;letter-spacing:.2em;color:var(--gold);font-weight:600;text-transform:uppercase;text-align:center}
body:not(.en) .sec-k{letter-spacing:.12em}
.sec-t{margin-top:10px;font-size:clamp(28px,4.4vw,42px);line-height:1.2;color:var(--plum);font-weight:900;text-align:center}
body.en .sec-t{font-weight:600}
.sec-s{margin-top:14px;font-size:clamp(17px,2.4vw,21px);line-height:1.6;color:var(--ink);text-align:center;max-width:700px;margin-inline:auto}
.sec-s b{color:var(--wine)}
.diamond{display:flex;align-items:center;justify-content:center;gap:14px;margin:26px auto 0;max-width:420px}
.diamond span{width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.diamond i{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}

/* ---------- speakers ---------- */
.speakers{margin-top:46px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
@media(max-width:760px){.speakers{grid-template-columns:1fr;gap:38px}}
.sp{display:flex;flex-direction:column;align-items:center;text-align:center}
.sp img{width:168px;height:168px;border-radius:50%;
  box-shadow:0 0 0 5px #fff,0 0 0 6px var(--line),0 18px 40px rgba(74,31,42,.22)}
.sp h3{margin-top:18px;font-size:23px;color:var(--wine)}
.sp p{margin-top:9px;font-size:16.5px;line-height:1.55;max-width:300px}
.callout{margin:52px auto 0;max-width:760px;display:flex;align-items:center;gap:22px;
  background:#fff;border:1px solid var(--line);padding:24px 30px;border-radius:4px;
  box-shadow:0 14px 36px rgba(74,31,42,.12)}
@media(max-width:600px){.callout{flex-direction:column;text-align:center}}
.callout img{width:88px;height:88px;border-radius:50%;flex-shrink:0;
  box-shadow:0 0 0 4px #FBF4EE,0 0 0 5px var(--line)}
.callout .big{font-size:26px;color:var(--plum);font-weight:900}
body.en .callout .big{font-weight:600;font-style:italic}
.callout p{margin-top:8px;font-size:16.5px;line-height:1.55}
.callout p b{color:var(--wine)}
.again{margin:40px auto 0;max-width:700px;text-align:center;
  font-size:clamp(20px,3vw,26px);line-height:1.5;color:var(--plum);font-weight:700}
.again .script{color:var(--gold);font-size:1.35em}

/* ---------- market ---------- */
.market{background:linear-gradient(180deg,var(--paper) 0%,var(--paper2) 100%)}
.bigband{margin:34px auto 0;max-width:820px;text-align:center;background:#fff;
  border:2px solid var(--line);padding:30px 34px;box-shadow:0 16px 40px rgba(74,31,42,.14)}
.bigband .b1{font-size:clamp(24px,3.6vw,34px);color:var(--plum);font-weight:900}
body.en .bigband .b1{font-weight:600}
.bigband .b2{margin-top:10px;font-size:clamp(17px,2.4vw,21px);color:var(--gold);font-weight:700;letter-spacing:.04em}
.reel{margin-top:44px;display:flex;gap:16px;overflow-x:auto;padding:6px 4px 22px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.reel::-webkit-scrollbar{height:6px}
.reel::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}
.reel .v{position:relative;flex:0 0 auto;width:210px;aspect-ratio:9/16;scroll-snap-align:center;
  border-radius:10px;overflow:hidden;background:#000;box-shadow:0 14px 32px rgba(74,31,42,.25);cursor:pointer}
.reel video{width:100%;height:100%;object-fit:cover;display:block}
.reel .v .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(74,31,42,.18);transition:opacity .2s}
.reel .v.playing .play{opacity:0;pointer-events:none}
.reel .v .play svg{width:58px;height:58px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}
.reelhint{margin-top:6px;text-align:center;font-size:13.5px;color:var(--gold);letter-spacing:.06em}

/* ---------- evening ---------- */
.evening .grid{margin-top:48px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
@media(max-width:900px){.evening .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.evening .grid{grid-template-columns:1fr}}
.ev{background:#fff;border:1px solid var(--line);padding:28px 22px;text-align:center;border-radius:4px}
.ev svg{width:34px;height:34px;stroke:var(--gold);fill:none;stroke-width:1.5}
.ev h3{margin-top:14px;font-size:18.5px;color:var(--wine)}
.ev p{margin-top:8px;font-size:15.5px;line-height:1.55}
.poem{margin:60px auto 0;max-width:640px;text-align:center;
  font-size:clamp(20px,3vw,26px);line-height:1.7;color:var(--plum);font-weight:500}
.poem .hl{color:var(--gold);font-weight:700}

/* ---------- final ---------- */
.final{position:relative;text-align:center;padding:110px 22px;overflow:hidden;color:#FBF4EE}
.final .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.final .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(74,31,42,.72),rgba(74,31,42,.82))}
.final .in{position:relative;z-index:2;max-width:760px;margin:0 auto}
.final h2{font-size:clamp(28px,4.6vw,44px);line-height:1.25;font-weight:900;color:#FBF4EE}
body.en .final h2{font-weight:600}
.final h2 .hl{color:var(--goldl)}
.final .d{margin-top:20px;font-size:clamp(20px,3vw,27px);font-weight:600}
.final .p{margin-top:8px;font-size:17px;opacity:.95}
.final .btn{margin-top:28px;background:var(--goldl);color:var(--plum)}
.final .btn:hover{background:#fff}
.final .micro{color:var(--goldl)}
.final .logos{margin-top:44px;display:flex;align-items:center;justify-content:center;gap:30px;flex-wrap:wrap}
.final .logos img{height:34px;width:auto;opacity:.92}
.final .lang{margin-top:30px;font-size:14px;letter-spacing:.08em;color:var(--goldl);text-decoration:underline;text-underline-offset:4px}

/* ---------- sticky bar ---------- */
.bar{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:center;gap:18px;
  background:rgba(126,36,64,.97);backdrop-filter:blur(8px);padding:12px 18px;
  transform:translateY(110%);transition:transform .3s ease;box-shadow:0 -8px 30px rgba(74,31,42,.3)}
.bar.show{transform:translateY(0)}
.bar .t{color:#FBF4EE;font-size:15.5px;font-weight:600}
@media(max-width:520px){.bar .t{display:none}}
.bar .btn{background:var(--goldl);color:var(--plum);padding:11px 30px;font-size:16px;box-shadow:none}
.bar .btn:hover{transform:none;background:#fff}
.reel .v.feat{width:262px;box-shadow:0 0 0 3px var(--goldl),0 0 0 4px var(--gold),0 18px 40px rgba(74,31,42,.35)}
.hero .micro{color:#FBF4EE;opacity:1;font-weight:500;text-shadow:0 2px 10px rgba(74,31,42,.75),0 1px 3px rgba(74,31,42,.6)}
.reel{direction:ltr}

/* ---------- language switcher ---------- */
.langbar{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:60;
  display:flex;gap:4px;background:rgba(251,244,238,.9);backdrop-filter:blur(10px);
  border:1px solid var(--line);border-radius:999px;padding:4px;
  box-shadow:0 6px 20px rgba(74,31,42,.18)}
.langbar button{border:0;cursor:pointer;background:transparent;color:var(--wine);
  font-family:'Jost','Heebo',system-ui,sans-serif;font-size:14px;font-weight:600;letter-spacing:.04em;
  padding:8px 20px;border-radius:999px;transition:background .2s,color .2s}
.langbar button.on{background:var(--plum);color:var(--cream)}
.hero{padding-top:96px}

/* film highlight */
.sp p .film{color:var(--plum);font-weight:700;font-style:italic;
  background:linear-gradient(180deg,transparent 62%,rgba(168,122,60,.28) 62%);padding:0 2px}
.sp p .film-en{font-family:'Jost',sans-serif;font-size:.82em;letter-spacing:.12em;
  text-transform:uppercase;color:var(--gold);font-weight:600;direction:ltr;display:inline-block}

/* ---------- design section ---------- */
.design{position:relative;overflow:hidden;color:#FBF4EE;padding:96px 22px 100px}
.design .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.design .veil{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(74,31,42,.90) 0%,rgba(94,26,48,.86) 40%,rgba(126,36,64,.90) 100%)}
.design .wrap{position:relative;z-index:2}
.design .gold-k{color:var(--goldl)}
.dsec-t{margin-top:12px;text-align:center;font-size:clamp(30px,4.8vw,46px);line-height:1.18;
  color:#FBF4EE;font-weight:900}
body.en .dsec-t{font-weight:600}
.dsec-s{margin-top:16px;text-align:center;font-size:clamp(17px,2.4vw,21px);line-height:1.6;
  color:var(--goldl);max-width:640px;margin-inline:auto}
.dgrid{margin-top:52px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
@media(max-width:720px){.dgrid{grid-template-columns:1fr}}
.dcard{position:relative;background:rgba(251,244,238,.07);border:1px solid rgba(240,220,176,.42);
  padding:38px 32px 34px;backdrop-filter:blur(3px)}
.dcard .num{position:absolute;top:16px;inset-inline-end:24px;font-size:52px;line-height:1;
  color:rgba(240,220,176,.30);font-weight:700}
.dcard .role{font-size:13.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--goldl);font-weight:600}
body:not(.en) .dcard .role{letter-spacing:.14em}
.dcard h3{margin-top:14px;font-size:clamp(26px,3.6vw,34px);line-height:1.2;color:#FBF4EE;font-weight:900}
body.en .dcard h3{font-weight:600}
.dcard p{margin-top:16px;font-size:16.5px;line-height:1.6;color:rgba(251,244,238,.92)}
.dline{margin-top:44px;text-align:center;font-size:clamp(22px,3.2vw,30px);color:var(--goldl);font-weight:700}
body.en .dline{font-weight:600;font-style:italic}
.btn.light{background:var(--goldl);color:var(--plum);box-shadow:0 12px 30px rgba(0,0,0,.28)}
.btn.light:hover{background:#fff}
.sec-t{text-wrap:balance}
.sec-s{text-wrap:pretty}
.poem{text-wrap:balance}
.poem .hl{display:inline-block;line-height:1.55}

/* ---------- sponsor ---------- */
.sponsor{background:var(--paper);padding:44px 22px 56px;border-top:1px solid var(--line)}
.sponsor .wrap{display:flex;flex-direction:column;align-items:center;gap:16px}
.sp-k{font-size:12.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:600}
body:not(.en) .sp-k{letter-spacing:.16em}
.sponsor img{height:64px;width:auto;display:block;transition:transform .2s}
.sponsor a:hover img{transform:scale(1.04)}
@media(max-width:520px){.sponsor img{height:52px}}
.hero h1 .script .withyou{font-weight:400;color:var(--plum);
  text-shadow:0 1px 0 rgba(251,244,238,.55)}
