
  :root{
    --navy: #0F2747;
    --navy-deep: #081729;
    --navy-section: #081A2E;
    --gold: #AB7F38;
    --gold-light: #C79848;
    --gold-dark: #956B2B;
    --gold-shadow: #6A4D20;
    --gold-metallic:
      linear-gradient(115deg, transparent 28%, rgba(255,255,255,0.11) 44%, transparent 58%),
      linear-gradient(180deg, var(--gold-light) 0%, var(--gold) 46%, var(--gold-dark) 78%, var(--gold-shadow) 100%);
    --gold-metallic-h: linear-gradient(90deg, var(--gold-dark), var(--gold-light) 50%, var(--gold-dark));
    --ivory: #F8F6F2;
    --white: #FFFFFF;
    --beige: #EFE7DB;
    --text: #1F1F1F;

    --font-display: 'Big Shoulders Display', sans-serif;
    --font-body: 'Inter', sans-serif;

    --space-1: 8px;
    --space-2: 16px;
    --space-3: 24px;
    --space-4: 40px;
    --space-5: 64px;
    --space-6: 96px;
    --space-7: 140px;

    --radius-s: 10px;
    --radius-m: 18px;
    --radius-l: 28px;

    --ease: cubic-bezier(.16,.8,.24,1);
  }

  *{ margin:0; padding:0; box-sizing:border-box; }

  html{ scroll-behavior:smooth; }

  body{
    font-family: var(--font-body);
    color: var(--text);
    background: var(--ivory);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }

  a{ color:inherit; text-decoration:none; }
  button{ font-family:inherit; cursor:pointer; border:none; background:none; }

  img{ max-width:100%; display:block; }

  :focus-visible{
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }

  @media (prefers-reduced-motion: reduce){
    *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
  }

  .container{
    max-width:1280px;
    margin:0 auto;
    padding:0 var(--space-4);
  }

  /* ================= NAV ================= */
  .nav-wrap{
    position:fixed;
    top:16px;
    left:0; right:0;
    z-index:1000;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:0 var(--space-3);
    transition: top .4s var(--ease);
  }

  /* ---- slim utility bar: social icons ---- */
  .topbar{
    width:100%;
    max-width:1200px;
    display:flex;
    justify-content:flex-end;
    padding: 0 22px 8px;
    overflow:hidden;
    max-height:40px;
    opacity:1;
    transition: max-height .35s var(--ease), opacity .3s var(--ease), padding .35s var(--ease), margin .35s var(--ease);
  }

  .nav-wrap.condensed .topbar{
    max-height:0;
    opacity:0;
    padding-top:0;
    padding-bottom:0;
    pointer-events:none;
  }

  .social-icons{
    display:flex;
    align-items:center;
    gap:14px;
  }
  .social-icons a{
    width:28px; height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background: rgba(248,246,242,0.55);
    backdrop-filter: blur(10px);
    border:1px solid rgba(15,39,71,0.08);
    color: var(--navy);
    opacity:.7;
    transition: all .3s var(--ease);
  }
  .social-icons a:hover{
    opacity:1;
    color: var(--white);
    background: var(--gold);
    border-color: var(--gold);
    transform: translateY(-2px);
  }
  .social-icons svg{ width:13px; height:13px; }

  .nav{
    width:100%;
    max-width:1200px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap: var(--space-3);
    padding: 12px 14px 12px 20px;
    background: rgba(248,246,242,0.72);
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    border: 1px solid rgba(15,39,71,0.08);
    border-radius: 100px;
    box-shadow: 0 8px 30px rgba(15,39,71,0.08);
    transition: padding .35s var(--ease), box-shadow .35s var(--ease);
  }

  .nav-wrap.condensed .nav{
    padding: 8px 10px 8px 18px;
    box-shadow: 0 10px 34px rgba(15,39,71,0.13);
  }

  .brand{
    display:flex;
    align-items:center;
    gap:10px;
    font-family:var(--font-display);
    font-weight:700;
    font-size:15px;
    letter-spacing:.02em;
    color:var(--navy);
    white-space:nowrap;
  }

  .brand-mark{
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px; height:34px;
    flex-shrink:0;
    border-radius:8px;
    overflow:hidden;
    transition: opacity .25s var(--ease);
  }
  .brand-mark:hover{ opacity:.75; }
  .brand-mark svg{ width:100%; height:100%; display:block; }
  .brand-mark img{ width:100%; height:100%; object-fit:contain; }

  .brand-text{
    display:flex;
    flex-direction:column;
    line-height:1.15;
  }
  .brand-text small{
    font-family:var(--font-body);
    font-weight:600;
    font-size:9.5px;
    letter-spacing:.09em;
    text-transform:uppercase;
    color:var(--gold);
  }

  .nav-links{
    display:flex;
    align-items:center;
    gap: 22px;
    list-style:none;
  }

  .nav-links a{
    font-size:13.5px;
    font-weight:500;
    color: var(--navy);
    opacity:.75;
    position:relative;
    padding: 6px 0;
    white-space:nowrap;
    transition: opacity .25s var(--ease);
  }
  .nav-links a:hover{ opacity:1; }
  .nav-links a::after{
    content:"";
    position:absolute;
    left:0; bottom:0;
    width:0%; height:1.5px;
    background:var(--gold);
    transition:width .3s var(--ease);
  }
  .nav-links a:hover::after{ width:100%; }
  .nav-links a.active{ opacity:1; }
  .nav-links a.active::after{ width:100%; }

  .nav-right{
    display:flex;
    align-items:center;
    gap: var(--space-2);
  }

  .lang-switch{
    display:flex;
    align-items:center;
    background: rgba(15,39,71,0.06);
    border-radius: 100px;
    padding:3px;
    gap:2px;
  }
  .lang-switch button{
    font-size:12px;
    font-weight:700;
    letter-spacing:.04em;
    padding:6px 12px;
    border-radius:100px;
    color: var(--navy);
    opacity:.55;
    transition: all .25s var(--ease);
  }
  .lang-switch button.active{
    background: var(--navy);
    color: var(--ivory);
    opacity:1;
  }
  .lang-switch button:not(.active):hover{ opacity:.85; }

  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-size:14px;
    font-weight:600;
    padding: 11px 22px;
    border-radius:100px;
    white-space:nowrap;
    transition: transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease);
  }

  .btn-gold{
    background: var(--gold-metallic);
    color: var(--white);
    box-shadow: 0 6px 20px rgba(106,77,32,0.35), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }
  .btn-gold:hover{
    transform: translateY(-2px);
    box-shadow: 0 10px 26px rgba(106,77,32,0.45), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }

  .nav-toggle{
    display:none;
    width:38px; height:38px;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .nav-toggle span, .nav-toggle::before, .nav-toggle::after{ display:none; }
  .burger{
    width:20px; height:14px;
    position:relative;
  }
  .burger span{
    position:absolute;
    left:0; right:0;
    height:2px;
    background:var(--navy);
    border-radius:2px;
    transition: all .3s var(--ease);
  }
  .burger span:nth-child(1){ top:0; }
  .burger span:nth-child(2){ top:6px; }
  .burger span:nth-child(3){ top:12px; }

  .nav-toggle.open .burger span:nth-child(1){ top:6px; transform:rotate(45deg); }
  .nav-toggle.open .burger span:nth-child(2){ opacity:0; }
  .nav-toggle.open .burger span:nth-child(3){ top:6px; transform:rotate(-45deg); }

  /* ---- mobile dropdown panel ---- */
  .mobile-panel{
    width:100%;
    max-width:1200px;
    margin-top:10px;
    max-height:0;
    overflow:hidden;
    opacity:0;
    background: rgba(248,246,242,0.96);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(15,39,71,0.08);
    border-radius: var(--radius-m);
    box-shadow: 0 20px 50px rgba(15,39,71,0.16);
    transition: max-height .4s var(--ease), opacity .3s var(--ease);
  }
  .mobile-panel.open{
    max-height:520px;
    opacity:1;
  }
  .mobile-panel-inner{
    padding: 22px 26px 26px;
    display:flex;
    flex-direction:column;
    gap:4px;
  }
  .mobile-panel a.mp-link{
    font-size:15.5px;
    font-weight:600;
    color:var(--navy);
    padding:11px 0;
    border-bottom:1px solid rgba(15,39,71,0.07);
  }
  .mobile-panel .mp-bottom{
    margin-top:16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }
  .mobile-panel .social-icons{ gap:10px; }
  .mobile-panel .social-icons a{
    background: rgba(15,39,71,0.05);
  }

  @media (min-width: 1181px){
    .mobile-panel{ display:none; }
  }

  /* ================= HERO ================= */
  .hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    padding-top: 158px;
    padding-bottom: var(--space-7);
    overflow:hidden;
    isolation:isolate;
  }

  .hero-bg{
    position:absolute;
    inset:0;
    z-index:-2;
  }
  .hero-bg img{
    width:100%; height:100%;
    object-fit:cover;
    object-position: 58% 42%;
    filter: contrast(0.93) saturate(0.94);
  }
  .hero-bg::after{
    content:"";
    position:absolute;
    inset:0;
    background:
      radial-gradient(42% 48% at 92% 6%, rgba(0,0,0,0.4) 0%, transparent 72%),
      radial-gradient(140% 140% at 50% 50%, transparent 55%, rgba(0,0,0,0.32) 100%),
      linear-gradient(90deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.95) 40%, rgba(0,0,0,0.75) 70%, rgba(0,0,0,0.27) 100%);
  }

  .hero-arc{
    position:absolute;
    z-index:-1;
    top:-18%;
    right:-12%;
    width:60%;
    max-width:640px;
    aspect-ratio:1/1;
    border: 2px solid var(--gold);
    border-radius:50%;
    clip-path: polygon(28% 0, 100% 0, 100% 100%, 58% 100%);
    opacity:.55;
    pointer-events:none;
  }

  .hero-inner{
    position:relative;
    z-index:1;
    max-width:640px;
  }

  .eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:12.5px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--gold-light);
    margin-bottom: var(--space-3);
    opacity:0;
    transform:translateY(14px);
    animation: reveal .7s var(--ease) .1s forwards;
  }
  .eyebrow::before{
    content:"";
    width:26px; height:1.5px;
    background:var(--gold-metallic-h);
  }

  .hero-title{
    font-family: var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    line-height:0.98;
    letter-spacing:-0.01em;
    font-size: clamp(48px, 6.3vw, 85px);
    color: var(--ivory);
    text-shadow: 0 2px 24px rgba(8,23,41,0.25);
    opacity:0;
    transform:translateY(18px);
    animation: reveal .8s var(--ease) .22s forwards;
  }
  .hero-title .accent{
    display:block;
    background: var(--gold-metallic);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
  }

  .hero-sub{
    margin-top: var(--space-4);
    max-width: 600px;
    font-size:17px;
    color: rgba(248,246,242,0.82);
    opacity:0;
    transform:translateY(16px);
    animation: reveal .8s var(--ease) .34s forwards;
  }

  .hero-cta-row{
    margin-top: var(--space-5);
    display:flex;
    align-items:center;
    gap: 16px;
    flex-wrap:wrap;
    opacity:0;
    transform:translateY(16px);
    animation: reveal .8s var(--ease) .44s forwards;
  }

  .btn-hero{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding: 18px 36px;
    font-size:16px;
    font-weight:700;
    border-radius:100px;
    white-space:nowrap;
    transition: transform .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease), border-color .35s var(--ease);
  }
  .btn-hero-primary{
    padding: 20px 40px;
    font-size:17.5px;
    background: var(--gold-metallic);
    color: var(--white);
    box-shadow: 0 16px 38px rgba(106,77,32,0.4), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }
  .btn-hero-primary:hover{
    transform: translateY(-3px);
    box-shadow: 0 22px 48px rgba(106,77,32,0.5), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }
  .btn-hero-secondary{
    background: transparent;
    color: var(--ivory);
    border: 1.5px solid rgba(199,152,72,0.6);
  }
  .btn-hero-secondary:hover{
    background: rgba(171,127,56,0.12);
    border-color: var(--gold-light);
    transform: translateY(-3px);
  }

  .hero-quickfacts{
    margin-top: var(--space-5);
    display:flex;
    align-items:center;
    gap: 34px;
    flex-wrap:wrap;
    opacity:0;
    transform:translateY(16px);
    animation: reveal .8s var(--ease) .54s forwards;
  }
  .quickfact{
    display:flex;
    align-items:center;
    gap:13px;
  }
  .quickfact-icon{
    width:39px; height:39px;
    flex-shrink:0;
    border-radius:11px;
    background: rgba(255,255,255,0.08);
    border:1px solid rgba(255,255,255,0.16);
    display:flex; align-items:center; justify-content:center;
  }
  .quickfact-icon svg{ width:17px; height:17px; stroke:url(#goldMetallic); }
  .quickfact-text{
    font-size:17.5px;
    font-weight:700;
    color: var(--ivory);
    letter-spacing:.01em;
  }

  .countdown{
    margin-top: var(--space-5);
    display:flex;
    gap: 22px;
    opacity:0;
    transform:translateY(16px);
    animation: reveal .8s var(--ease) .64s forwards;
  }
  .cd-item{
    text-align:center;
    min-width:58px;
  }
  .cd-num{
    font-family: var(--font-display);
    font-weight:700;
    font-size:32px;
    color:var(--ivory);
    line-height:1;
    transition: opacity .25s var(--ease);
  }
  .cd-label{
    margin-top:6px;
    font-size:10px;
    font-weight:600;
    letter-spacing:.09em;
    text-transform:uppercase;
    color: rgba(248,246,242,0.5);
  }
  .cd-sep{
    color: rgba(248,246,242,0.28);
    font-size:26px;
    align-self:flex-start;
    margin-top:1px;
  }

  .btn-hero-program{
    margin-top: var(--space-4);
    background: transparent;
    color: var(--ivory);
    border: 1.5px solid rgba(248,246,242,0.3);
    padding: 17px 34px;
    opacity:0;
    transform:translateY(16px);
    animation: reveal .8s var(--ease) .78s forwards;
  }
  .btn-hero-program svg{
    width:16px; height:16px;
    transition: transform .3s var(--ease);
  }
  .btn-hero-program:hover{
    background: rgba(248,246,242,0.08);
    border-color: var(--gold-light);
    transform: translateY(-3px);
  }
  .btn-hero-program:hover svg{
    transform: translateY(3px);
  }

  @keyframes reveal{
    to{ opacity:1; transform:translateY(0); }
  }
  @keyframes revealFade{
    to{ opacity:1; }
  }

  /* ---- sticky mobile CTA (appears after hero) ---- */
  .sticky-cta{
    position:fixed;
    bottom:22px;
    right:22px;
    z-index:900;
    opacity:0;
    transform: translateY(20px);
    pointer-events:none;
    transition: all .4s var(--ease);
  }
  .sticky-cta.show{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
  }

  /* ================= RESPONSIVE ================= */
  @media (max-width: 1180px){
    .nav-links{ display:none; }
    .nav-toggle{ display:flex; }
    .hero-arc{ width:80%; right:-20%; }
  }

  @media (max-width: 560px){
    .container{ padding:0 20px; }
    .topbar{ display:none; }
    .hero{ padding-top:120px; }
    .hero-title{ font-size: clamp(40px, 11vw, 54px); }
    .hero-cta-row{ flex-direction:column; align-items:stretch; }
    .btn-hero{ width:100%; }
    .hero-quickfacts{ gap:16px; }
    .countdown{ gap:14px; }
    .cd-item{ min-width:48px; }
    .cd-num{ font-size:26px; }
  }

  /* ================= ABOUT ================= */
  .about{
    position:relative;
    padding: var(--space-7) 0;
    background: var(--white);
    overflow:hidden;
  }

  .section-tag{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:12.5px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color: var(--gold);
    margin-bottom: var(--space-2);
  }
  .section-tag::before{
    content:"";
    width:26px; height:1.5px;
    background:var(--gold-metallic-h);
  }

  .about-grid-v2{
    display:grid;
    grid-template-columns: 0.92fr 1.08fr;
    gap: calc(var(--space-6) + 24px);
    align-items:center;
  }

  .about-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(36px, 4vw, 54px);
    color:var(--navy);
    line-height:1.02;
    margin-bottom: var(--space-4);
  }

  .about-body p{
    font-size:16.5px;
    line-height:1.7;
    color: rgba(31,31,31,0.75);
    max-width:520px;
  }
  .about-body p + p{ margin-top:15px; }

  .about-features{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:16px;
    margin-top: var(--space-5);
  }
  .about-features li{
    display:flex;
    align-items:center;
    gap:14px;
    font-size:16px;
    font-weight:600;
    color: var(--navy);
  }
  .about-feature-check{
    width:30px; height:30px;
    flex-shrink:0;
    border-radius:50%;
    background: var(--gold-metallic);
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow: 0 6px 16px rgba(106,77,32,0.3), inset 0 1px 0 rgba(255,255,255,0.25), inset 0 -1px 0 rgba(0,0,0,0.18);
  }
  .about-feature-check svg{ width:14px; height:14px; stroke:var(--white); }

  .about-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top: var(--space-6);
    padding: 20px 46px;
    font-size:17px;
    font-weight:700;
    color: var(--white);
    background: var(--gold-metallic);
    border-radius:100px;
    box-shadow: 0 16px 38px rgba(106,77,32,0.35), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
    transition: transform .35s var(--ease), box-shadow .35s var(--ease);
  }
  .about-cta:hover{
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(106,77,32,0.35), 0 0 46px rgba(199,152,72,0.55), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }

  /* ---- editorial photo collage ---- */
  .about-collage{
    position:relative;
    width:100%;
    max-width:600px;
    height:600px;
    justify-self:center;
  }
  .about-collage::before{
    content:"";
    position:absolute;
    top:-64px; left:-84px;
    width:420px; height:420px;
    border: 1.5px solid var(--gold);
    border-radius:50%;
    clip-path: polygon(28% 0, 100% 0, 100% 100%, 58% 100%);
    opacity:.18;
    z-index:0;
    pointer-events:none;
  }

  .collage-item{
    position:absolute;
    border-radius:22px;
    overflow:hidden;
    box-shadow: 0 24px 50px rgba(8,23,41,0.22);
    background: var(--ivory);
    transition: transform .45s var(--ease), box-shadow .45s var(--ease);
    will-change: transform;
  }
  .collage-item img{
    width:100%; height:100%;
    object-fit:cover;
    display:block;
  }
  .collage-item:hover{
    box-shadow: 0 34px 64px rgba(8,23,41,0.32);
    z-index:10 !important;
  }

  .collage-hero{
    width:75%; height:325px;
    top:8px; left:0;
    z-index:2;
    transform: rotate(-1deg);
  }
  .collage-hero:hover{ transform: rotate(-1deg) translateY(-8px) scale(1.015); }

  .collage-sup3{
    width:26%; height:380px;
    top:-10px; right:0;
    z-index:3;
    transform: rotate(3deg);
  }
  .collage-sup3:hover{ transform: rotate(3deg) translateY(-8px) scale(1.03); }

  .collage-sup1{
    width:39%; height:320px;
    bottom:-4px; left:-6px;
    z-index:4;
    transform: rotate(-3deg);
  }
  .collage-sup1:hover{ transform: rotate(-3deg) translateY(-8px) scale(1.03); }

  .collage-sup2{
    width:54%; height:250px;
    bottom:-4px; right:0;
    z-index:4;
    transform: rotate(2deg);
  }
  .collage-sup2:hover{ transform: rotate(2deg) translateY(-8px) scale(1.03); }

  .collage-item.reveal{
    opacity:0;
    transform: translateY(28px);
    transition: opacity .8s var(--ease), transform .8s var(--ease);
  }
  .collage-item.reveal.in{ opacity:1; }
  .collage-hero.reveal{ transition-delay: 0s; }
  .collage-sup3.reveal{ transition-delay: .15s; }
  .collage-sup1.reveal{ transition-delay: .3s; }
  .collage-sup2.reveal{ transition-delay: .45s; }
  .collage-hero.reveal.in{ transform: rotate(-1deg); }
  .collage-sup3.reveal.in{ transform: rotate(3deg); }
  .collage-sup1.reveal.in{ transform: rotate(-3deg); }
  .collage-sup2.reveal.in{ transform: rotate(2deg); }

  @media (max-width: 980px){
    .about-grid-v2{ grid-template-columns:1fr; gap: var(--space-5); }
    .about-collage{
      order:-1;
      height:auto;
      max-width:520px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
    }
    .about-collage::before{ display:none; }
    .collage-item{
      position:static;
      width:100% !important;
      height:auto !important;
      transform:none !important;
      aspect-ratio: 4/3;
    }
    .collage-hero{ grid-column:1/-1; aspect-ratio:16/10; }
    .collage-item:hover{ transform: translateY(-4px) !important; }
  }


  .reveal{
    opacity:0;
    transform: translateY(24px);
    transition: opacity .8s var(--ease), transform .8s var(--ease);
  }
  .reveal.in{
    opacity:1;
    transform:translateY(0);
  }

  /* ================= EVENT INFO ================= */
  .event-info{
    padding: var(--space-6) 0;
    background: var(--ivory);
  }

  .info-head{
    text-align:center;
    max-width:640px;
    margin:0 auto var(--space-5);
  }
  .info-head .section-tag{ justify-content:center; }
  .info-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 38px);
    color:var(--navy);
    line-height:1.1;
  }

  .info-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-4);
  }

  .info-card{
    position:relative;
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.07);
    border-radius: var(--radius-l);
    padding: var(--space-4) var(--space-3);
    box-shadow: 0 18px 44px rgba(15,39,71,0.06);
    overflow:hidden;
  }
  .info-card::before{
    content:"";
    position:absolute;
    top:-56px; right:-56px;
    width:140px; height:140px;
    border: 2px solid var(--gold);
    border-radius:50%;
    clip-path: polygon(30% 0, 100% 0, 100% 100%, 55% 100%);
    opacity:.28;
  }

  .info-card-icon{
    position:relative;
    width:44px; height:44px;
    border-radius:12px;
    background: rgba(171,127,56,0.08);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom: var(--space-3);
  }
  .info-card-icon svg{ width:20px; height:20px; stroke:url(#goldMetallic); }

  .info-card-title{
    position:relative;
    font-family:var(--font-display);
    font-weight:700;
    font-size:16px;
    letter-spacing:.03em;
    text-transform:uppercase;
    color: var(--navy);
    margin-bottom:10px;
  }

  .info-card-body{
    position:relative;
    font-size:14.5px;
    color: rgba(31,31,31,0.72);
    line-height:1.6;
  }
  .info-card-body strong{ color:var(--navy); display:block; margin-bottom:2px; }

  .info-schedule-row{
    display:flex;
    gap:10px;
    margin-bottom:8px;
  }
  .info-schedule-row:last-child{ margin-bottom:0; }
  .info-schedule-time{
    font-weight:700;
    color:var(--gold);
    white-space:nowrap;
    font-size:13.5px;
    min-width:80px;
  }

  @media (max-width: 900px){
    .info-grid{ grid-template-columns:1fr; }
  }

  /* ================= BENEFIT CARDS (Why Attend) ================= */
  .why-attend{
    padding: var(--space-6) 0;
    background: var(--white);
  }

  .why-head{
    text-align:center;
    max-width:640px;
    margin:0 auto var(--space-5);
  }
  .why-head .section-tag{ justify-content:center; }
  .why-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 38px);
    color:var(--navy);
    line-height:1.1;
  }

  .benefit-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-4);
  }

  .benefit-card{
    position:relative;
    background: var(--ivory);
    border: 1px solid rgba(15,39,71,0.06);
    border-radius: var(--radius-l);
    padding: var(--space-5) var(--space-4);
    overflow:hidden;
    transition: transform .4s var(--ease), box-shadow .4s var(--ease);
  }
  .benefit-card:hover{
    transform: translateY(-6px);
    box-shadow: 0 26px 56px rgba(15,39,71,0.1);
  }
  .benefit-card::before{
    content:"";
    position:absolute;
    top:-56px; right:-56px;
    width:150px; height:150px;
    border: 2px solid var(--gold);
    border-radius:50%;
    clip-path: polygon(30% 0, 100% 0, 100% 100%, 55% 100%);
    opacity:.3;
  }

  .benefit-check{
    position:relative;
    width:40px; height:40px;
    border-radius:50%;
    background: var(--gold-metallic);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom: var(--space-3);
    box-shadow: 0 8px 20px rgba(106,77,32,0.3), inset 0 1px 0 rgba(255,255,255,0.25), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }
  .benefit-check svg{ width:18px; height:18px; stroke:var(--white); }

  .benefit-title{
    position:relative;
    font-family:var(--font-display);
    font-weight:700;
    font-size:19px;
    letter-spacing:.02em;
    text-transform:uppercase;
    color:var(--navy);
    margin-bottom:8px;
  }

  .benefit-desc{
    position:relative;
    font-size:14.5px;
    color: rgba(31,31,31,0.72);
    line-height:1.6;
  }

  @media (max-width: 900px){
    .benefit-grid{ grid-template-columns:1fr; }
  }

  /* ================= NAVY ACCENT SECTIONS ================= */
  .navy-section{
    position:relative;
    background: var(--navy-section);
    padding: var(--space-7) 0;
    overflow:hidden;
  }
  .navy-section::before{
    content:"";
    position:absolute;
    top:-70px; right:-90px;
    width:340px; height:340px;
    border: 1.5px solid var(--gold);
    border-radius:50%;
    clip-path: polygon(28% 0, 100% 0, 100% 100%, 58% 100%);
    opacity:.14;
    pointer-events:none;
  }
  .navy-inner{
    position:relative;
    max-width:760px;
    margin:0 auto;
    text-align:center;
  }
  .navy-section .section-tag{
    justify-content:center;
    color: var(--gold-light);
  }
  .navy-section .section-tag::before{
    background: var(--gold-metallic-h);
  }
  .navy-statement{
    font-family: var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(26px, 2.6vw, 36px);
    line-height:1.3;
    color: var(--ivory);
    margin-top: var(--space-3);
  }
  .navy-statement strong{
    background: var(--gold-metallic);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
  }
  .navy-sub{
    margin-top: var(--space-3);
    font-family: var(--font-body);
    font-weight:400;
    text-transform:none;
    font-size:16.5px;
    line-height:1.7;
    color: rgba(248,246,242,0.72);
    max-width:560px;
    margin-left:auto;
    margin-right:auto;
  }
  .navy-section .about-cta{
    margin-top: var(--space-5);
  }

  /* ---- Final CTA section (#join): more whitespace, dominant headline, larger button ---- */
  .navy-final-cta{
    padding: calc(var(--space-7) + 40px) 0;
  }
  .navy-statement-final{
    font-size: clamp(34px, 4.6vw, 62px);
    line-height:1.22;
    max-width:900px;
    margin-left:auto;
    margin-right:auto;
  }
  .navy-final-cta .navy-inner{
    max-width:920px;
  }
  .navy-final-cta .final-cta-btn{
    margin-top: var(--space-6);
    padding: 26px 58px;
    font-size:18.5px;
  }

  @media (max-width: 560px){
    .navy-section{ padding: var(--space-6) 0; }
    .navy-final-cta{ padding: calc(var(--space-6) + 24px) 0; }
    .navy-final-cta .final-cta-btn{ padding: 22px 40px; font-size:17px; width:100%; }
  }

  /* ================= BENEFITS (6-CARD) ================= */
  .benefits6{
    padding: var(--space-7) 0;
    background: var(--white);
  }
  .benefits6-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .benefits6-head .section-tag{ justify-content:center; }
  .benefits6-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
    line-height:1.15;
  }
  .benefits6-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-4);
  }
  .b6-card{
    background: var(--ivory);
    border: 1px solid rgba(15,39,71,0.06);
    border-radius: var(--radius-l);
    padding: var(--space-5) var(--space-4);
    text-align:center;
    transition: transform .4s var(--ease), box-shadow .4s var(--ease);
  }
  .b6-card:hover{
    transform: translateY(-6px);
    box-shadow: 0 26px 56px rgba(15,39,71,0.1);
  }
  .b6-icon{
    width:58px; height:58px;
    margin:0 auto var(--space-3);
    border-radius:50%;
    border: 1.5px solid var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .b6-icon svg{ width:24px; height:24px; stroke:url(#goldMetallic); }
  .b6-title{
    font-family:var(--font-display);
    font-weight:700;
    font-size:16.5px;
    letter-spacing:.02em;
    color:var(--navy);
  }
  @media (max-width: 900px){ .benefits6-grid{ grid-template-columns:1fr 1fr; } }
  @media (max-width: 560px){ .benefits6-grid{ grid-template-columns:1fr; } }

  /* ================= SPEAKERS ================= */
  .speakers{
    padding: var(--space-7) 0;
    background: var(--ivory);
  }
  .speakers-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .speakers-head .section-tag{ justify-content:center; }
  .speakers-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .speakers-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-5) var(--space-4);
  }
  .speaker-card{
    text-align:center;
    transition: transform .4s var(--ease);
  }
  .speaker-card:hover{ transform: translateY(-6px); }
  .speaker-photo{
    width:132px; height:132px;
    margin:0 auto var(--space-3);
    border-radius:50%;
    background: var(--navy);
    border: 2.5px solid var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--font-display);
    font-weight:700;
    font-size:30px;
    color: var(--gold-light);
    overflow:hidden;
    box-shadow: 0 16px 34px rgba(15,39,71,0.16);
    transition: box-shadow .4s var(--ease), border-color .4s var(--ease);
  }
  .speaker-card:hover .speaker-photo{
    box-shadow: 0 24px 46px rgba(15,39,71,0.24);
    border-color: var(--gold-light);
  }
  .speaker-name{
    font-family:var(--font-display);
    font-weight:700;
    font-size:16.5px;
    color:var(--navy);
  }
  .speaker-role{
    margin-top:4px;
    font-size:13px;
    color: var(--gold);
    font-weight:600;
  }
  .speaker-company{
    margin-top:2px;
    font-size:12.5px;
    color: rgba(31,31,31,0.55);
  }
  @media (max-width: 900px){ .speakers-grid{ grid-template-columns:1fr 1fr; } }
  @media (max-width: 560px){ .speakers-grid{ grid-template-columns:1fr; max-width:280px; margin:0 auto; } }

  /* ---- Featured directors row ---- */
  .speakers-featured{
    display:flex;
    justify-content:center;
    align-items:flex-start;
    gap: var(--space-6);
    flex-wrap:wrap;
    margin-bottom: var(--space-6);
    padding-bottom: var(--space-6);
    border-bottom: 1px solid rgba(15,39,71,0.08);
  }
  .speaker-featured-card{
    text-align:center;
    transition: transform .4s var(--ease);
  }
  .speaker-featured-card:hover{ transform: translateY(-6px); }
  .speaker-featured-photo{
    width:165px; height:165px;
    margin:0 auto var(--space-3);
    border-radius:50%;
    background: var(--navy);
    border: 3px solid var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:var(--font-display);
    font-weight:700;
    font-size:36px;
    color: var(--gold-light);
    overflow:hidden;
    box-shadow: 0 20px 44px rgba(15,39,71,0.2);
    transition: box-shadow .4s var(--ease), border-color .4s var(--ease);
  }
  .speaker-featured-photo img{
    width:100%; height:100%;
    object-fit:contain;
    display:block;
  }
  .speaker-featured-card:hover .speaker-featured-photo{
    box-shadow: 0 28px 56px rgba(15,39,71,0.28);
    border-color: var(--gold-light);
  }
  .speaker-featured-name{
    font-family:var(--font-display);
    font-weight:700;
    font-size:19px;
    color:var(--navy);
  }
  .speaker-featured-role{
    margin-top:5px;
    font-size:13.5px;
    line-height:1.5;
    color: var(--gold);
    font-weight:600;
    max-width:220px;
    min-height:60px;
    margin-left:auto;
    margin-right:auto;
  }
  @media (max-width: 560px){ .speakers-featured{ gap: var(--space-4); } }

  /* ================= PROGRAM (coming soon) ================= */
  /* ================= PROGRAM AGENDA ================= */
  .program-agenda{
    padding: var(--space-7) 0;
    background: var(--white);
  }
  .program-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .program-head .section-tag{ justify-content:center; }
  .program-head-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .program-head-sub{
    margin-top: var(--space-3);
    font-size:16px;
    color: rgba(31,31,31,0.65);
    line-height:1.7;
  }

  /* agenda timeline */
  .agenda{
    display:flex;
    flex-direction:column;
    gap:14px;
    max-width:960px;
    margin:0 auto;
  }

  /* special cards — opening/break/lunch/closing */
  .ag-special{
    border-radius: var(--radius-m);
    background: var(--gold-metallic);
    box-shadow: 0 10px 26px rgba(171,127,56,0.22), inset 0 1px 0 rgba(255,255,255,0.22);
    display:flex;
    align-items:center;
    gap:18px;
    padding:18px 26px;
  }
  .ag-special-icon{
    font-size:26px;
    line-height:1;
    flex-shrink:0;
  }
  .ag-special-time{
    font-family:var(--font-display);
    font-weight:700;
    font-size:13px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:rgba(255,255,255,0.72);
  }
  .ag-special-label{
    font-family:var(--font-display);
    font-weight:800;
    font-size:17px;
    color:var(--white);
    letter-spacing:.01em;
  }

  /* panel cards */
  .ag-panel{
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.08);
    border-radius: var(--radius-l);
    box-shadow: 0 12px 32px rgba(15,39,71,0.07);
    overflow:hidden;
    transition: box-shadow .4s var(--ease);
  }
  .ag-panel:hover{
    box-shadow: 0 20px 48px rgba(15,39,71,0.11);
  }
  .ag-panel-header{
    display:grid;
    grid-template-columns: 140px 1fr auto;
    gap: var(--space-3);
    align-items:center;
    padding:22px var(--space-5);
    border-bottom:1px solid rgba(15,39,71,0.06);
    background: var(--ivory);
    cursor:pointer;
    user-select:none;
  }
  .ag-panel-header:hover .ag-expand-icon{ color: var(--gold); }
  .ag-time-block{
    display:flex;
    flex-direction:column;
  }
  .ag-time{
    font-family:var(--font-display);
    font-weight:800;
    font-size:15px;
    color:var(--navy);
  }
  .ag-lang-badge{
    display:inline-block;
    margin-top:5px;
    padding:2px 8px;
    border-radius:4px;
    background:rgba(171,127,56,0.12);
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--gold);
  }
  .ag-panel-meta{
    display:flex;
    flex-direction:column;
    gap:4px;
  }
  .ag-panel-num{
    font-size:11.5px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--gold);
  }
  .ag-panel-title{
    font-family:var(--font-display);
    font-weight:700;
    font-size:17px;
    color:var(--navy);
    line-height:1.3;
  }
  .ag-panel-topic{
    font-size:13.5px;
    color:rgba(31,31,31,0.6);
    margin-top:3px;
  }
  .ag-expand-icon{
    width:32px; height:32px;
    border-radius:50%;
    border:1.5px solid rgba(15,39,71,0.12);
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(15,39,71,0.4);
    flex-shrink:0;
    transition: transform .4s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
  }
  .ag-expand-icon svg{ width:14px; height:14px; stroke:currentColor; transition:transform .4s var(--ease); }
  .ag-panel.open .ag-expand-icon{ border-color:var(--gold); color:var(--gold); }
  .ag-panel.open .ag-expand-icon svg{ transform:rotate(180deg); }

  /* sessions */
  .ag-sessions{
    max-height:0;
    overflow:hidden;
    transition: max-height .45s var(--ease);
  }
  .ag-session{
    display:grid;
    grid-template-columns: 140px 1fr auto;
    gap: var(--space-3);
    align-items:start;
    padding:18px var(--space-5);
    border-top:1px solid rgba(15,39,71,0.05);
    transition: background .25s var(--ease);
  }
  .ag-session:hover{ background:rgba(15,39,71,0.02); }
  .ag-session-num{
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    color:rgba(31,31,31,0.35);
    text-transform:uppercase;
    margin-bottom:2px;
  }
  .ag-session-title{
    font-family:var(--font-display);
    font-weight:700;
    font-size:14.5px;
    color:var(--navy);
    line-height:1.35;
  }
  .ag-session-speaker{
    display:flex;
    align-items:center;
    gap:6px;
    margin-top:5px;
    font-size:13px;
    color:rgba(31,31,31,0.6);
  }
  .ag-session-speaker svg{ width:13px; height:13px; stroke:var(--gold); flex-shrink:0; }

  /* status badges */
  .ag-status{
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:4px 10px;
    border-radius:20px;
    font-size:11.5px;
    font-weight:700;
    white-space:nowrap;
    flex-shrink:0;
  }
  .ag-status.confirmed{ background:rgba(34,197,94,0.1); color:#15803d; border:1px solid rgba(34,197,94,0.25); }
  .ag-status.pending-gold{ background:rgba(171,127,56,0.1); color:var(--gold-dark); border:1px solid rgba(171,127,56,0.3); }
  .ag-status.pending-orange{ background:rgba(234,88,12,0.08); color:#c2410c; border:1px solid rgba(234,88,12,0.2); }
  .ag-status.tbd{ background:rgba(31,31,31,0.06); color:rgba(31,31,31,0.45); border:1px solid rgba(31,31,31,0.1); }

  /* mobile accordion — hidden on desktop */
  .agenda-mobile{ display:none; }

  @media (max-width: 800px){
    .agenda{ display:none; }
    .agenda-mobile{
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    /* special mobile */
    .ag-mob-special{
      border-radius:14px;
      background:var(--gold-metallic);
      box-shadow: 0 8px 20px rgba(171,127,56,0.2);
      display:flex;
      align-items:center;
      gap:14px;
      padding:14px 18px;
    }
    .ag-mob-special-icon{ font-size:22px; flex-shrink:0; }
    .ag-mob-special-time{ font-size:12px; color:rgba(255,255,255,0.7); font-weight:600; }
    .ag-mob-special-label{ font-family:var(--font-display); font-weight:800; font-size:15px; color:var(--white); }
    /* panel mobile */
    .ag-mob-panel{
      background:var(--white);
      border:1px solid rgba(15,39,71,0.08);
      border-radius:16px;
      box-shadow: 0 8px 22px rgba(15,39,71,0.06);
      overflow:hidden;
    }
    .ag-mob-header{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:12px;
      padding:16px 18px;
      cursor:pointer;
      user-select:none;
    }
    .ag-mob-time{ font-family:var(--font-display); font-weight:800; font-size:13px; color:var(--gold); margin-bottom:3px; }
    .ag-mob-title{ font-family:var(--font-display); font-weight:700; font-size:15px; color:var(--navy); line-height:1.3; }
    .ag-mob-lang{ display:inline-block; margin-top:5px; padding:2px 7px; border-radius:4px; background:rgba(171,127,56,0.1); font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--gold); }
    .ag-mob-expand{ flex-shrink:0; width:28px; height:28px; border-radius:50%; border:1.5px solid rgba(15,39,71,0.12); display:flex; align-items:center; justify-content:center; margin-top:2px; transition:transform .4s var(--ease), border-color .3s var(--ease); }
    .ag-mob-expand svg{ width:12px; height:12px; stroke:var(--navy); transition:transform .4s var(--ease); }
    .ag-mob-panel.open .ag-mob-expand{ border-color:var(--gold); }
    .ag-mob-panel.open .ag-mob-expand svg{ transform:rotate(180deg); }
    .ag-mob-sessions{
      max-height:0;
      overflow:hidden;
      transition:max-height .45s var(--ease);
    }
    .ag-mob-session{
      border-top:1px solid rgba(15,39,71,0.05);
      padding:14px 18px;
    }
    .ag-mob-session-title{ font-family:var(--font-display); font-weight:700; font-size:13.5px; color:var(--navy); line-height:1.35; margin-bottom:6px; }
    .ag-mob-session-speaker{ font-size:12.5px; color:rgba(31,31,31,0.6); margin-bottom:6px; }
  }

  /* ================= PARTNERS WALL ================= */
  .partners-wall{
    position:relative;
    padding: var(--space-7) 0;
    background: var(--ivory);
    overflow:hidden;
  }
  .partners-head{
    position:relative;
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .partners-head .section-tag{
    justify-content:center;
  }
  .partners-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color: var(--navy);
  }
  .partners-grid{
    position:relative;
    display:grid;
    grid-template-columns: repeat(5, 1fr);
    align-items:stretch;
    justify-items:stretch;
    gap: var(--space-4);
  }
  .partner-logo{
    background: var(--white);
    border-radius: 22px;
    box-shadow: 0 12px 32px rgba(15,39,71,0.10);
    display:flex;
    align-items:center;
    justify-content:center;
    height:200px;
    padding: var(--space-4) var(--space-2);
    transition: transform .35s var(--ease), box-shadow .35s var(--ease);
  }
  .partner-logo:hover{
    transform: translateY(-5px);
    box-shadow: 0 22px 48px rgba(15,39,71,0.15);
  }
  .partner-logo img{
    width:auto;
    display:block;
    object-fit:contain;
  }
  /* individually tuned heights so each logo reads as visually balanced, not forced uniform */
  .partner-logo.p1 img{ max-height:72px; max-width:100%; }
  .partner-logo.p2 img{ max-height:112px; max-width:100%; }
  .partner-logo.p3 img{ max-height:59px; max-width:100%; }
  .partner-logo.p4 img{ max-height:70px; max-width:100%; }
  .partner-logo.p5 img{ max-height:53px; max-width:100%; }

  @media (max-width: 1080px){ .partners-grid{ grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 640px){ .partners-grid{ grid-template-columns: repeat(2, 1fr); } .partner-logo{ height:165px; } }

  /* ================= TESTIMONIALS (VIDEO CAROUSEL) ================= */
  .testimonials{
    padding: var(--space-7) 0;
    background: var(--white);
  }
  .testimonials-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .testimonials-head .section-tag{ justify-content:center; }
  .testimonials-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .testimonials-subtitle{
    margin-top: var(--space-3);
    font-size:16px;
    line-height:1.7;
    color: rgba(31,31,31,0.65);
  }

  .video-carousel{
    position:relative;
    --slides-visible: 3;
    padding: 0 64px;
  }
  .carousel-viewport{
    overflow:hidden;
  }
  .video-track{
    display:flex;
    transition: transform .5s var(--ease);
  }
  .video-track.no-anim{ transition:none; }
  .video-card{
    flex: 0 0 calc(100% / var(--slides-visible));
    box-sizing:border-box;
    padding: 0 var(--space-3);
  }
  .video-card-inner{
    background: var(--white);
    border-radius: 20px;
    box-shadow: 0 16px 40px rgba(15,39,71,0.1);
    overflow:hidden;
    transition: transform .4s var(--ease), box-shadow .4s var(--ease);
  }
  .video-card-inner:hover{
    transform: translateY(-6px);
    box-shadow: 0 26px 56px rgba(15,39,71,0.15);
  }
  .video-frame{
    position:relative;
    width:100%;
    aspect-ratio: 9/16;
    background: var(--navy);
    overflow:hidden;
  }
  .video-frame video{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    background: var(--navy);
  }
  .video-play-btn{
    position:absolute;
    top:50%; left:50%;
    transform:translate(-50%,-50%);
    width:64px; height:64px;
    border-radius:50%;
    background: var(--gold-metallic);
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow: 0 12px 28px rgba(15,39,71,0.3), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
    border:none;
    cursor:pointer;
    transition: transform .3s var(--ease), box-shadow .3s var(--ease);
  }
  .video-play-btn:hover{
    transform: translate(-50%,-50%) scale(1.08);
  }
  .video-play-btn svg{
    width:20px; height:20px;
    fill: var(--white);
    margin-left:3px;
  }
  .video-play-btn.is-hidden{
    opacity:0;
    pointer-events:none;
  }

  .carousel-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:48px; height:48px;
    border-radius:50%;
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.1);
    box-shadow: 0 10px 26px rgba(15,39,71,0.12);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition: transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);
    z-index:2;
  }
  .carousel-arrow:hover{
    transform: translateY(-50%) scale(1.06);
    border-color: var(--gold);
    box-shadow: 0 16px 34px rgba(15,39,71,0.18);
  }
  .carousel-arrow svg{ width:18px; height:18px; stroke:var(--navy); }
  .carousel-arrow.prev{ left:0; }
  .carousel-arrow.next{ right:0; }

  @media (max-width: 1080px){
    .video-carousel{ --slides-visible: 2; }
  }
  @media (max-width: 680px){
    .video-carousel{ --slides-visible: 1; padding: 0 48px; }
    .carousel-arrow{ width:40px; height:40px; }
  }

  /* ================= PARTNERSTWO ================= */
  .partnership-section{
    padding: var(--space-7) 0;
    background: var(--ivory);
  }
  .partnership-head{
    text-align:center;
    max-width:760px;
    margin:0 auto var(--space-6);
  }
  .partnership-head .section-tag{ justify-content:center; }
  .partnership-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .partnership-subtitle{
    margin-top: var(--space-3);
    font-size:16.5px;
    line-height:1.7;
    color: rgba(31,31,31,0.65);
  }

  /* intro card */
  .ps-intro-card{
    background: var(--navy);
    border-radius: var(--radius-l);
    padding: var(--space-5) var(--space-6);
    margin-bottom: var(--space-5);
    position:relative;
    overflow:hidden;
  }
  .ps-intro-card::before{
    content:"";
    position:absolute;
    top:-60px; right:-60px;
    width:260px; height:260px;
    border:1.5px solid var(--gold);
    border-radius:50%;
    opacity:.12;
    pointer-events:none;
  }
  .ps-intro-card p{
    font-size:16px;
    line-height:1.8;
    color:rgba(248,246,242,0.82);
    position:relative;
  }
  .ps-intro-card p + p{ margin-top:14px; }
  .ps-intro-card strong{ color:var(--gold-light); font-weight:700; }
  .ps-intro-quote{
    margin-top:18px;
    padding:14px 20px;
    border-left:3px solid var(--gold);
    font-style:italic;
    color:var(--ivory);
    font-size:15.5px;
    line-height:1.7;
    position:relative;
  }

  /* what partner receives */
  .ps-benefits-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-bottom: var(--space-5);
  }
  .ps-benefit-card{
    background:var(--white);
    border:1px solid rgba(15,39,71,0.07);
    border-radius: var(--radius-l);
    padding: var(--space-4);
    display:flex;
    gap:16px;
    align-items:flex-start;
    box-shadow: 0 8px 22px rgba(15,39,71,0.06);
    transition: transform .35s var(--ease), box-shadow .35s var(--ease);
  }
  .ps-benefit-card:hover{
    transform:translateY(-4px);
    box-shadow: 0 18px 40px rgba(15,39,71,0.10);
  }
  .ps-benefit-icon{
    flex-shrink:0;
    width:48px; height:48px;
    border-radius:50%;
    background: var(--gold-metallic);
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow: 0 8px 18px rgba(171,127,56,0.22), inset 0 1px 0 rgba(255,255,255,0.22);
  }
  .ps-benefit-icon svg{ width:20px; height:20px; fill:var(--white); }
  .ps-benefit-text{
    font-size:15px;
    line-height:1.6;
    color:rgba(31,31,31,0.82);
  }

  /* pricing card */
  .ps-price-wrap{
    display:flex;
    justify-content:center;
    margin-bottom: var(--space-3);
  }
  .ps-price-card{
    background:var(--white);
    border:1.5px solid rgba(171,127,56,0.3);
    border-top:4px solid var(--gold);
    border-radius: var(--radius-l);
    padding: var(--space-5) var(--space-7);
    text-align:center;
    box-shadow: 0 14px 40px rgba(15,39,71,0.10);
    min-width:320px;
  }
  .ps-price-label{
    font-family:var(--font-display);
    font-weight:700;
    font-size:12.5px;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom: var(--space-2);
  }
  .ps-price-amount{
    font-family:var(--font-display);
    font-weight:800;
    font-size:clamp(44px,5vw,64px);
    color:var(--navy);
    line-height:1;
  }
  .ps-price-currency{
    font-family:var(--font-display);
    font-weight:700;
    font-size:20px;
    color:var(--gold);
    margin-left:4px;
  }
  .ps-price-divider{
    width:48px;
    height:1.5px;
    background:var(--gold-metallic-h);
    margin:18px auto;
  }
  .ps-price-seats{
    font-size:13.5px;
    color:rgba(31,31,31,0.6);
    font-style:italic;
  }
  .ps-price-note{
    text-align:center;
    font-size:14px;
    color:rgba(31,31,31,0.55);
    margin-bottom: var(--space-5);
    font-style:italic;
  }

  .partnership-cta-row{
    display:flex;
    justify-content:center;
  }
  .partnership-cta-btn{
    width:auto;
    padding:19px 64px;
  }

  @media (max-width:900px){
    .ps-benefits-grid{ grid-template-columns:1fr; }
    .ps-price-card{ min-width:0; width:100%; padding: var(--space-5) var(--space-4); }
  }
  @media (max-width:560px){
    .ps-intro-card{ padding: var(--space-4) var(--space-3); }
    .partnership-cta-btn{ width:100%; padding:18px 24px; }
  }

  /* ================= FOR PARTICIPANTS section ================= */
  .for-participants{
    padding: var(--space-7) 0;
    background: var(--white);
  }
  .fp-head{
    text-align:center;
    max-width:760px;
    margin:0 auto var(--space-6);
  }
  .fp-head .section-tag{ justify-content:center; }
  .fp-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .fp-subtitle{
    margin-top: var(--space-3);
    font-size:16.5px;
    line-height:1.7;
    color: rgba(31,31,31,0.68);
  }

  /* intro */
  .fp-intro{
    display:flex;
    align-items:center;
    gap: var(--space-4);
    background: var(--ivory);
    border: 1px solid rgba(15,39,71,0.06);
    border-radius: var(--radius-l);
    padding: var(--space-4) var(--space-5);
    margin-bottom: var(--space-5);
  }
  .fp-intro-icon{
    width:52px; height:52px;
    flex-shrink:0;
    border-radius:50%;
    border:1.5px solid var(--gold);
    display:flex; align-items:center; justify-content:center;
  }
  .fp-intro-icon svg{ width:22px; height:22px; stroke:url(#goldMetallic); }
  .fp-intro-text p{ font-size:15.5px; line-height:1.7; color:rgba(31,31,31,0.78); }
  .fp-intro-text strong{ color:var(--navy); font-weight:700; }
  .fp-time{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:10px;
    background: var(--navy);
    color: var(--gold-light);
    font-family:var(--font-display);
    font-weight:700;
    font-size:14px;
    padding:7px 18px;
    border-radius:50px;
    letter-spacing:.03em;
  }
  .fp-time svg{ width:14px; height:14px; stroke:var(--gold-light); flex-shrink:0; }

  /* program topics grid */
  .fp-grid-2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap: var(--space-4);
    margin-bottom: var(--space-5);
  }
  .fp-card{
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.07);
    border-radius: var(--radius-l);
    padding: var(--space-4);
    box-shadow: 0 10px 28px rgba(15,39,71,0.06);
  }
  .fp-card-label{
    font-family:var(--font-display);
    font-weight:700;
    font-size:12px;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom: var(--space-2);
  }
  .fp-topics{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  .fp-topics li{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:15px;
    line-height:1.5;
    color:rgba(31,31,31,0.82);
  }
  .fp-topic-icon{
    width:32px; height:32px;
    flex-shrink:0;
    border-radius:50%;
    border:1.5px solid var(--gold);
    background:rgba(171,127,56,0.06);
    display:flex; align-items:center; justify-content:center;
  }
  .fp-topic-icon svg{ width:14px; height:14px; stroke:url(#goldMetallic); }

  /* special guests card */
  .fp-guests-card{
    border-left:3px solid var(--gold);
    background: linear-gradient(135deg, rgba(15,39,71,0.025) 0%, rgba(171,127,56,0.04) 100%);
    border-radius: 0 var(--radius-m) var(--radius-m) 0;
    padding: var(--space-4) var(--space-5);
    display:flex;
    gap: var(--space-3);
    align-items:flex-start;
    margin-bottom: var(--space-5);
  }
  .fp-guests-badge{
    flex-shrink:0;
    width:44px; height:44px;
    border-radius:50%;
    background: var(--gold-metallic);
    display:flex; align-items:center; justify-content:center;
    box-shadow: 0 8px 20px rgba(171,127,56,0.25);
  }
  .fp-guests-badge svg{ width:20px; height:20px; fill:var(--white); }
  .fp-guests-text{
    font-size:15.5px;
    line-height:1.75;
    color:rgba(31,31,31,0.82);
  }
  .fp-guests-text strong{ color:var(--navy); font-weight:700; }

  /* checklist */
  .fp-includes{
    margin-bottom: var(--space-5);
  }
  .fp-checklist{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:14px;
  }
  .fp-checklist li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    font-size:15.5px;
    line-height:1.6;
    color:rgba(31,31,31,0.82);
  }
  .fp-check-icon{
    flex-shrink:0;
    width:24px; height:24px;
    border-radius:50%;
    background: var(--gold-metallic);
    display:flex; align-items:center; justify-content:center;
    margin-top:2px;
  }
  .fp-check-icon svg{ width:12px; height:12px; stroke:var(--white); stroke-width:2.5; fill:none; }

  /* atmosphere quote */
  .fp-quote{
    position:relative;
    text-align:center;
    padding: var(--space-5) var(--space-5);
    margin-bottom: var(--space-5);
  }
  .fp-quote::before{
    content:'"';
    position:absolute;
    top:-10px; left:var(--space-4);
    font-family: Georgia, serif;
    font-size:100px;
    line-height:1;
    color:var(--gold);
    opacity:.15;
  }
  .fp-quote-text{
    position:relative;
    font-size:17px;
    line-height:1.8;
    font-style:italic;
    color:var(--navy);
    font-weight:500;
    max-width:680px;
    margin:0 auto;
  }

  /* pricing */
  .fp-pricing-grid{
    display:grid;
    grid-template-columns: repeat(4,1fr);
    gap: var(--space-3);
    margin-bottom: var(--space-4);
  }
  .fp-price-card{
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.07);
    border-radius: var(--radius-m);
    padding: var(--space-4) var(--space-3);
    text-align:center;
    box-shadow: 0 8px 22px rgba(15,39,71,0.06);
    transition: transform .35s var(--ease), box-shadow .35s var(--ease);
  }
  .fp-price-card:hover{
    transform:translateY(-5px);
    box-shadow: 0 18px 40px rgba(15,39,71,0.11);
  }
  .fp-price-card.early{
    border-top:3px solid var(--gold);
    position:relative;
  }
  .fp-price-period{
    font-size:12px;
    color:rgba(31,31,31,0.52);
    font-weight:600;
    letter-spacing:.04em;
    margin-bottom:8px;
  }
  .fp-price-amount{
    font-family:var(--font-display);
    font-weight:800;
    font-size:clamp(22px,2.2vw,28px);
    color:var(--navy);
  }
  .fp-price-card.early .fp-price-amount{ color:var(--gold); }
  .fp-price-currency{
    font-size:13px;
    font-family:var(--font-display);
    color:rgba(31,31,31,0.55);
    margin-top:3px;
  }
  .fp-price-note{
    text-align:center;
    font-size:14.5px;
    color:rgba(31,31,31,0.62);
    font-style:italic;
    margin-bottom: var(--space-5);
  }

  /* testimonials teaser */
  .fp-testi-teaser{
    text-align:center;
    font-size:15px;
    color:rgba(31,31,31,0.62);
    margin-bottom: var(--space-5);
  }
  .fp-testi-teaser a{
    color:var(--gold);
    font-weight:600;
    text-decoration:none;
    border-bottom:1px solid rgba(171,127,56,0.35);
    transition:border-color .3s var(--ease);
  }
  .fp-testi-teaser a:hover{ border-color:var(--gold); }

  /* CTA row */
  .fp-cta-row{
    display:flex;
    justify-content:center;
  }
  .fp-cta-btn{
    width:auto;
    padding:19px 64px;
  }

  @media (max-width:900px){
    .fp-grid-2{ grid-template-columns:1fr; }
    .fp-pricing-grid{ grid-template-columns:1fr 1fr; }
  }
  @media (max-width:560px){
    .fp-intro{ flex-direction:column; }
    .fp-pricing-grid{ grid-template-columns:1fr 1fr; gap:10px; }
    .fp-price-card{ padding: var(--space-3) var(--space-2); }
    .fp-price-amount{ font-size:20px; }
    .fp-guests-card{ flex-direction:column; }
    .fp-cta-btn{ width:100%; padding:18px 24px; }
  }

  /* ================= FAQ ================= */
  .faq-section{
    padding: var(--space-7) 0;
    background: var(--ivory);
  }
  .faq-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .faq-head .section-tag{ justify-content:center; }
  .faq-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .faq-list{
    max-width:760px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:14px;
  }
  .faq-item{
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.07);
    border-radius: var(--radius-m);
    overflow:hidden;
  }
  .faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding: 22px 26px;
    text-align:left;
    font-family:var(--font-display);
    font-weight:700;
    font-size:16px;
    color:var(--navy);
    cursor:pointer;
  }
  .faq-question-icon{
    width:26px; height:26px;
    flex-shrink:0;
    border-radius:50%;
    border: 1.5px solid var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    transition: transform .35s var(--ease);
  }
  .faq-question-icon svg{ width:11px; height:11px; stroke:var(--gold); transition: transform .35s var(--ease); }
  .faq-item.open .faq-question-icon{ transform: rotate(45deg); }
  .faq-answer{
    max-height:0;
    overflow:hidden;
    transition: max-height .4s var(--ease);
  }
  .faq-answer-inner{
    padding: 0 26px 22px;
    font-size:15px;
    line-height:1.7;
    color: rgba(31,31,31,0.72);
  }

  /* ================= REGISTRATION FORM ================= */
  .register-section{
    padding: var(--space-7) 0;
    background: var(--white);
  }
  .register-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
  }
  .register-head .section-tag{ justify-content:center; }
  .register-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color:var(--navy);
  }
  .register-subtitle{
    margin-top: var(--space-3);
    font-size:16px;
    line-height:1.7;
    color: rgba(31,31,31,0.65);
  }
  .register-card{
    max-width:760px;
    margin:0 auto;
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.07);
    border-radius: 24px;
    box-shadow: 0 26px 60px rgba(15,39,71,0.12);
    padding: var(--space-6) var(--space-5);
  }
  .form-group{
    margin-bottom: var(--space-4);
  }
  .form-label{
    display:block;
    font-family:var(--font-display);
    font-weight:700;
    font-size:14px;
    color:var(--navy);
    margin-bottom:8px;
  }
  .form-label .required{
    color: var(--gold);
    margin-left:2px;
  }
  .form-input,
  .form-textarea{
    width:100%;
    box-sizing:border-box;
    padding:14px 18px;
    font-family:var(--font-body);
    font-size:15.5px;
    color: var(--text);
    background: var(--ivory);
    border: 1.5px solid rgba(15,39,71,0.1);
    border-radius: var(--radius-m);
    transition: border-color .3s var(--ease), box-shadow .3s var(--ease);
  }
  .form-input:focus,
  .form-textarea:focus{
    outline:none;
    border-color: var(--gold);
    box-shadow: 0 0 0 3px rgba(171,127,56,0.14);
    background: var(--white);
  }
  .form-textarea{
    resize:vertical;
    min-height:110px;
    font-family:var(--font-body);
  }
  .form-input::placeholder,
  .form-textarea::placeholder{
    color: rgba(31,31,31,0.35);
  }
  .form-submit-row{
    margin-top: var(--space-5);
  }
  .form-submit-btn{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:19px 32px;
    border:none;
    border-radius: var(--radius-m);
    background: var(--gold-metallic);
    box-shadow: 0 14px 32px rgba(171,127,56,0.28), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
    color: var(--white);
    font-family: var(--font-display);
    font-weight:700;
    font-size:17px;
    letter-spacing:.02em;
    text-transform:uppercase;
    cursor:pointer;
    transition: transform .3s var(--ease), box-shadow .3s var(--ease);
  }
  .form-submit-btn:hover{
    transform: translateY(-3px);
    box-shadow: 0 20px 44px rgba(171,127,56,0.36), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1.5px 0 rgba(0,0,0,0.18);
  }
  .form-consent-row{
    margin-top: var(--space-4);
    display:flex;
    align-items:flex-start;
    gap:12px;
  }
  .form-consent-row input[type="checkbox"]{
    appearance:none;
    -webkit-appearance:none;
    width:20px; height:20px;
    flex-shrink:0;
    margin-top:2px;
    border:1.5px solid rgba(15,39,71,0.25);
    border-radius:5px;
    background: var(--ivory);
    cursor:pointer;
    position:relative;
    transition: border-color .3s var(--ease), background .3s var(--ease);
  }
  .form-consent-row input[type="checkbox"]:checked{
    background: var(--gold);
    border-color: var(--gold);
  }
  .form-consent-row input[type="checkbox"]:checked::after{
    content:"";
    position:absolute;
    left:6px; top:2px;
    width:5px; height:10px;
    border: solid var(--white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
  }
  .form-consent-text{
    font-size:13.5px;
    line-height:1.6;
    color: rgba(31,31,31,0.65);
  }

  @media (max-width: 560px){
    .register-card{ padding: var(--space-5) var(--space-3); border-radius:18px; }
    .form-submit-btn{ padding:17px 24px; font-size:15.5px; }
  }

  /* ---- Universal registration modal ---- */
  select.form-input{
    appearance:none;
    -webkit-appearance:none;
    cursor:pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23AB7F38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position: right 16px center;
    background-size:16px;
    padding-right:44px;
  }
  .modal-overlay{
    position:fixed;
    inset:0;
    z-index:1000;
    background: rgba(8,23,41,0.6);
    backdrop-filter: blur(4px);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    opacity:0;
    visibility:hidden;
    transition: opacity .35s var(--ease), visibility 0s linear .35s;
  }
  .modal-overlay.is-open{
    opacity:1;
    visibility:visible;
    transition: opacity .35s var(--ease), visibility 0s linear 0s;
  }
  .modal-box{
    position:relative;
    width:100%;
    max-width:800px;
    max-height:90vh;
    overflow-y:auto;
    transform: translateY(24px) scale(.96);
    opacity:0;
    transition: transform .4s var(--ease), opacity .4s var(--ease);
  }
  .modal-overlay.is-open .modal-box{
    transform: translateY(0) scale(1);
    opacity:1;
  }
  .modal-head{
    text-align:center;
    max-width:100%;
    margin:0 0 var(--space-4);
  }
  .modal-card{
    max-width:100%;
    position:relative;
  }
  .modal-close{
    position:absolute;
    top:18px; right:18px;
    width:38px; height:38px;
    border-radius:50%;
    border:1px solid rgba(15,39,71,0.1);
    background: var(--ivory);
    color: var(--navy);
    font-size:22px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition: background .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);
    z-index:2;
  }
  .modal-close:hover{
    background: var(--gold);
    border-color: var(--gold);
    color: var(--white);
    transform: rotate(90deg);
  }

  @media (max-width: 560px){
    .modal-overlay{ padding:12px; }
    .modal-close{ top:12px; right:12px; width:34px; height:34px; font-size:19px; }
  }

  /* ================= STATS BAND ================= */
  .stats-band{
    position:relative;
    padding: var(--space-6) 0;
    background: var(--ivory);
    border-top: 1px solid rgba(15,39,71,0.06);
    border-bottom: 1px solid rgba(15,39,71,0.06);
  }

  .stats-tag{
    display:flex;
    justify-content:center;
    margin-bottom: var(--space-4);
  }

  .stats-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-4);
  }

  .stat-card{
    position:relative;
    background: var(--white);
    border: 1px solid rgba(15,39,71,0.07);
    border-radius: var(--radius-l);
    padding: var(--space-5) var(--space-3) var(--space-4);
    text-align:center;
    overflow:hidden;
    box-shadow: 0 18px 44px rgba(15,39,71,0.06);
    transition: transform .45s var(--ease), box-shadow .45s var(--ease);
  }
  .stat-card:hover{
    transform: translateY(-6px);
    box-shadow: 0 30px 64px rgba(15,39,71,0.12);
  }
  .stat-card::before{
    content:"";
    position:absolute;
    top:-56px; right:-56px;
    width:150px; height:150px;
    border: 2px solid var(--gold);
    border-radius:50%;
    clip-path: polygon(30% 0, 100% 0, 100% 100%, 55% 100%);
    opacity:.3;
  }

  .stats-grid .stat-card:nth-child(1){ transition-delay:0s; }
  .stats-grid .stat-card:nth-child(2){ transition-delay:.16s; }
  .stats-grid .stat-card:nth-child(3){ transition-delay:.32s; }

  .stat-card-icon{
    position:relative;
    width:48px; height:48px;
    margin:0 auto var(--space-3);
    border-radius:13px;
    background: rgba(171,127,56,0.08);
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .stat-card-icon svg{ width:22px; height:22px; stroke:url(#goldMetallic); }

  .stat-card-num{
    position:relative;
    font-family: var(--font-display);
    font-weight:800;
    font-size: 58px;
    line-height:1;
    color: var(--navy);
  }
  .stat-card-num .suffix{ color: var(--gold); }

  .stat-card-label{
    position:relative;
    margin-top:10px;
    font-size:13.5px;
    font-weight:600;
    letter-spacing:.05em;
    text-transform:uppercase;
    color: rgba(31,31,31,0.6);
  }

  @media (max-width: 780px){
    .stats-grid{ grid-template-columns:1fr; gap:18px; }
    .stat-card{ padding: var(--space-4) var(--space-3); }
    .stat-card-num{ font-size:48px; }
  }

  @media (max-width: 560px){
    .about{ padding: var(--space-6) 0; }
  }

  /* ================= CONTACT SECTION ================= */
  .contact-section{
    padding: var(--space-7) 0;
    background: var(--navy);
    position:relative;
    overflow:hidden;
  }
  .contact-section::before{
    content:"";
    position:absolute;
    top:-120px; right:-120px;
    width:500px; height:500px;
    border:1px solid rgba(171,127,56,0.1);
    border-radius:50%;
    pointer-events:none;
  }
  .contact-section::after{
    content:"";
    position:absolute;
    bottom:-80px; left:-80px;
    width:320px; height:320px;
    border:1px solid rgba(171,127,56,0.07);
    border-radius:50%;
    pointer-events:none;
  }
  .contact-head{
    text-align:center;
    max-width:680px;
    margin:0 auto var(--space-6);
    position:relative;
    z-index:1;
  }
  .contact-head .section-tag{
    justify-content:center;
    color: var(--gold-light);
    border-color:rgba(171,127,56,0.4);
  }
  .contact-title{
    font-family:var(--font-display);
    font-weight:800;
    text-transform:uppercase;
    font-size: clamp(28px, 3vw, 40px);
    color: var(--white);
  }
  .contact-subtitle{
    margin-top: var(--space-3);
    font-size:16px;
    line-height:1.7;
    color:rgba(248,246,242,0.65);
  }
  .contact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap: var(--space-5);
    max-width:880px;
    margin:0 auto;
    position:relative;
    z-index:1;
  }
  .contact-card{
    background:rgba(255,255,255,0.04);
    border:1px solid rgba(171,127,56,0.18);
    border-radius: var(--radius-l);
    padding: var(--space-5);
    backdrop-filter:blur(4px);
  }
  .contact-card-label{
    font-size:11.5px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom: var(--space-4);
    display:flex;
    align-items:center;
    gap:8px;
  }
  .contact-card-label svg{
    width:14px; height:14px;
    stroke:var(--gold);
    flex-shrink:0;
  }
  .contact-item{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding: 14px 0;
    border-bottom:1px solid rgba(255,255,255,0.06);
    text-decoration:none;
    transition: opacity .25s var(--ease);
  }
  .contact-item:last-child{ border-bottom:none; }
  .contact-item:hover{ opacity:.75; }
  .contact-icon{
    flex-shrink:0;
    width:40px; height:40px;
    border-radius:10px;
    border:1px solid rgba(171,127,56,0.3);
    background:rgba(171,127,56,0.08);
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .contact-icon svg{
    width:18px; height:18px;
    stroke:var(--gold-light);
    fill:none;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  .contact-icon.filled svg{
    fill:var(--gold-light);
    stroke:none;
  }
  .contact-text{
    display:flex;
    flex-direction:column;
    gap:2px;
  }
  .contact-label{
    font-size:11.5px;
    font-weight:600;
    letter-spacing:.05em;
    text-transform:uppercase;
    color:rgba(248,246,242,0.45);
  }
  .contact-value{
    font-size:15px;
    font-weight:500;
    color:var(--ivory);
    line-height:1.5;
  }
  .contact-divider{
    width:1px;
    background:rgba(171,127,56,0.15);
    align-self:stretch;
    margin:0 var(--space-2);
    display:none; /* hidden — vertical border handled by grid */
  }

  @media (max-width:700px){
    .contact-grid{ grid-template-columns:1fr; }
    .contact-section::before{ width:280px; height:280px; top:-60px; right:-60px; }
    .contact-section::after{ display:none; }
  }
