  @font-face{font-family:"EUFF Acumin";src:url("assets/fonts/acumin-variable.otf") format("opentype");font-style:normal;font-weight:100 900;font-display:swap;}
  @font-face{font-family:"EUFF Helvetica Compressed";src:url("assets/fonts/helvetica-compressed.otf") format("opentype");font-style:normal;font-weight:400;font-display:swap;}
  @font-face{font-family:"EUFF Helvetica Arabic";src:url("assets/fonts/helvetica-neue-arabic-light.ttf") format("truetype");font-style:normal;font-weight:300 500;font-display:swap;}
  @font-face{font-family:"EUFF Helvetica Arabic";src:url("assets/fonts/helvetica-neue-arabic-bold.ttf") format("truetype");font-style:normal;font-weight:600 900;font-display:swap;}

  /* ============ THEME: recolor Bootstrap via its own CSS variables ============ */
  :root{
    --euff-font-body:"EUFF Acumin","EUFF Helvetica Arabic",sans-serif;
    --euff-font-display:"EUFF Helvetica Compressed","EUFF Helvetica Arabic",sans-serif;
    --bs-body-bg:#F7F9FD;
    --bs-body-color:#1E2430;
    --bs-body-font-family:var(--euff-font-body);
    --bs-border-color:rgba(37,84,164,.14);
    --bs-link-color:#2554A4;
    --bs-link-hover-color:#EF2B34;
    --bs-primary:#2554A4;
    --bs-primary-rgb:37,84,164;
    --bs-emphasis-color:#2554A4;
    --bs-secondary-color: #647089;
    --tabbar-h:64px;
  }

  /* ============ GLOBAL / GAP & OVERFLOW FIXES ============ */
  html{
    min-height:100%;
    overflow-x:clip;
    overflow-y:auto;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
  }
  body{
    min-height:100%;
    overflow-x:clip;
    overflow-y:visible;
    max-width:100%;
    -webkit-tap-highlight-color:transparent;
  }
  body{margin:0;}
  img,svg,video{max-width:100%;}
  .container{
    padding-left:max(calc(var(--bs-gutter-x)*.5), env(safe-area-inset-left));
    padding-right:max(calc(var(--bs-gutter-x)*.5), env(safe-area-inset-right));
  }
  section{scroll-margin-top:92px;}
  ::selection{background:#FFD500;color:#17356F;}
  :focus-visible{outline:3px solid #EF2B34;outline-offset:3px;}
  .font-mono,.font-myriad{font-family:var(--euff-font-body);}
  .font-helvetica{font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;}
  h1,h2,h3,h4,h5,h6{font-family:var(--euff-font-display);letter-spacing:-.01em;font-weight:800;}
  :lang(ar),[lang="ar"]{font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;}

  .skip-link{position:fixed;top:-60px;left:1rem;background:#FFD500;color:#17356F;padding:.6rem 1rem;z-index:1100;font-weight:700;transition:top .2s ease;}
  .skip-link:focus{top:1rem;}

  /* ============ SCROLL PROGRESS ============ */
  .scroll-progress{position:absolute;left:0;right:0;bottom:-1px;height:2.5px;background:transparent;pointer-events:none;}
  .scroll-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#2554A4 0 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);transition:width .08s linear;}

  /* ============ NAVBAR ============ */
  .navbar{background:rgba(247,249,253,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .3s ease, backdrop-filter .3s ease, border-color .3s ease, box-shadow .3s ease, transform .4s cubic-bezier(.4,0,.2,1);border-bottom:1px solid rgba(37,84,164,.08);transform:translateY(0);box-shadow:0 4px 24px -16px rgba(23,53,111,.2);}
  .navbar.is-scrolled{background:rgba(247,249,253,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-color:rgba(37,84,164,.12);box-shadow:0 4px 24px -12px rgba(23,53,111,.2);}
  .navbar.menu-open{background:rgba(247,249,253,.99);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:rgba(37,84,164,.14);box-shadow:0 12px 28px -16px rgba(23,53,111,.35);}
  .navbar.nav-hidden{transform:translateY(-100%);}
  .nav-brand-logo{display:block;width:102px;height:auto;}
  .nav-edition-logo{display:block;flex:0 0 auto;width:clamp(44px,3.5vw,52px);height:46px;object-fit:contain;}
  .navbar-toggler{border-color:rgba(27,58,99,.35);padding:.5rem .65rem;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;}
  .navbar-toggler i{font-size:1.25rem;line-height:1;}
  .navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(27,58,99,.2);}
  .nav-link{position:relative;color:#1E2430 !important;}
  .nav-link::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:3px;background:linear-gradient(90deg,#2554A4 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);transform:scaleX(0);transform-origin:right;transition:transform .3s ease;}
  .nav-link:hover::after,.nav-link.active::after{transform:scaleX(1);transform-origin:left;}
  .nav-link.active{color:#1B3A63 !important;font-weight:600;}

  /* ============ BUTTONS ============ */
  .btn-gold{background:#FFD500;color:#17356F;border:0;font-weight:700;transition:background .3s ease, transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .3s ease;}
  .btn-gold:hover{background:#EF2B34;color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px -8px rgba(239,43,52,.4);}
  .btn-gold:active{transform:translateY(0) scale(.97);}
  .btn-gold:focus{color:#17356F;}
  .btn-navy{background:#2554A4;color:#fff;border:0;font-weight:700;transition:background .3s ease, transform .25s cubic-bezier(.34,1.56,.64,1);}
  .btn-navy:hover{background:#17356F;color:#fff;transform:translateY(-2px);}
  .btn-outline-navy{border:1.5px solid #2554A4;color:#2554A4;background:transparent;transition:background .3s ease, transform .25s cubic-bezier(.34,1.56,.64,1);}
  .btn-outline-navy:hover{background:rgba(37,84,164,.08);color:#2554A4;border-color:#2554A4;transform:translateY(-2px);}
  .btn-outline-navy:active,.btn-navy:active{transform:translateY(0) scale(.97);}

  /* ============ FILTER PILLS ============ */
  .filter-btn{border:1px solid rgba(27,58,99,.22);color:#556074;background:transparent;transition:all .25s ease;flex:0 0 auto !important;}
  .filter-btn:hover{color:#2554A4;border-color:#2554A4;}
  .filter-btn.is-active{background:#2554A4;border-color:#2554A4;color:#fff;font-weight:700;}

  /* ============ FESTIVAL + FILM HERO CAROUSEL ============ */
  .hero-slider-section{position:relative;overflow:hidden;background:#F7F9FD;}
  .hero-slide{min-height:clamp(690px,92vh,880px);overflow:hidden;}
  .hero-slide-inner{min-height:inherit;display:flex;align-items:center;padding-top:7.5rem;padding-bottom:5.5rem;position:relative;z-index:2;}
  .hero-slide-one{background:radial-gradient(60% 80% at 90% 20%,rgba(255,213,0,.22),transparent 60%),linear-gradient(135deg,#fff 0%,#F7F9FD 65%,#EEF3FC 100%);}
  .hero-slide-two{color:#fff;background:radial-gradient(circle at 85% 15%,rgba(53,168,83,.3),transparent 28%),radial-gradient(circle at 92% 85%,rgba(239,43,52,.3),transparent 32%),#2554A4;}
  .hero-slide-three{background:linear-gradient(120deg,rgba(255,213,0,.2),transparent 45%),linear-gradient(145deg,#F7F9FD,#fff);}
  .hero-slide::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(37,84,164,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(37,84,164,.035) 1px,transparent 1px);background-size:40px 40px;}
  .hero-slide-two::before{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);}
  .hero-kicker{display:flex;align-items:center;gap:.75rem;margin:0 0 1.25rem;color:#2554A4;font-family:var(--euff-font-body);font-size:.72rem;letter-spacing:.17em;text-transform:uppercase;font-weight:600;}
  .hero-kicker>span{width:2rem;height:3px;background:linear-gradient(90deg,#2554A4 50%,#FFD500 50% 67%,#35A853 67% 84%,#EF2B34 84%);}
  .hero-kicker-light{color:rgba(255,255,255,.82);}
  .hero-kicker-light>span{background:linear-gradient(90deg,#fff 45%,#FFD500 45% 64%,#35A853 64% 82%,#EF2B34 82%);}
  .hero-wordmark{width:min(100%,500px);height:auto;display:block;filter:drop-shadow(0 16px 30px rgba(37,84,164,.12));}
  .hero-copy{max-width:54ch;margin:1.4rem 0 0;color:#59677E;font-size:clamp(1rem,1.3vw,1.18rem);line-height:1.75;}
  .hero-copy-light{color:rgba(255,255,255,.8);}
  .hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.75rem;}
  .hero-actions .btn{display:inline-flex;align-items:center;gap:.65rem;min-height:48px;padding:.75rem 1.25rem;border-radius:.25rem;font-weight:800;}
  .btn-brand-primary{background:#2554A4;color:#fff;border:2px solid #2554A4;box-shadow:7px 7px 0 #FFD500;}
  .btn-brand-primary:hover{background:#17356F;border-color:#17356F;color:#fff;transform:translate(-2px,-2px);box-shadow:9px 9px 0 #EF2B34;}
  .btn-brand-outline{background:#fff;color:#2554A4;border:2px solid #2554A4;}
  .btn-brand-outline:hover{background:#2554A4;color:#fff;border-color:#2554A4;}
  .btn-brand-yellow{background:#FFD500;color:#17356F;border:2px solid #FFD500;box-shadow:7px 7px 0 #EF2B34;}
  .btn-brand-yellow:hover{background:#fff;border-color:#fff;color:#2554A4;transform:translate(-2px,-2px);}
  .hero-art-column{display:flex;align-items:center;justify-content:center;}
  .hero-art-frame{position:relative;width:min(100%,540px);padding:1rem;background:#fff;border:1px solid rgba(37,84,164,.12);box-shadow:22px 22px 0 rgba(37,84,164,.09);}
  .hero-art-frame::before{content:"";position:absolute;left:-10px;top:-10px;width:54%;height:8px;background:linear-gradient(90deg,#2554A4 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);}
  .hero-reel{display:block;width:100%;height:auto;animation:heroFloat 6s ease-in-out infinite;}
  @keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
  .hero-display,.hero-display-light{margin:0;font-size:clamp(3.1rem,7vw,6.6rem);line-height:.9;letter-spacing:-.055em;font-weight:900;}
  .hero-display{color:#2554A4;}
  .hero-display-light{color:#fff;text-shadow:0 12px 40px rgba(0,0,0,.12);}
  .selection-visual{position:relative;margin-inline:auto;width:min(100%,560px);min-height:470px;padding:2.25rem;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);backdrop-filter:blur(12px);box-shadow:24px 24px 0 rgba(255,213,0,.9);}
  .selection-number{color:#fff;font-size:clamp(8rem,20vw,14rem);font-weight:900;line-height:.8;letter-spacing:-.09em;}
  .selection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:2rem;}
  .selection-grid>div{padding:1rem .75rem;background:#fff;color:#2554A4;}
  .selection-grid b{display:block;font-size:1.8rem;line-height:1;}.selection-grid span{display:block;margin-top:.35rem;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;}
  .identity-stripes{position:absolute;right:1.25rem;top:1.25rem;display:flex;gap:.35rem;}.identity-stripes span{display:block;width:12px;height:74px;}.identity-stripes span:nth-child(1){background:#FFD500}.identity-stripes span:nth-child(2){background:#35A853}.identity-stripes span:nth-child(3){background:#EF2B34}.identity-stripes span:nth-child(4){background:#fff}
  .edition-card{position:relative;width:min(100%,430px);padding:2rem;background:#fff;border:1px solid rgba(37,84,164,.14);box-shadow:22px 22px 0 #2554A4;text-align:center;}
  .edition-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:9px;background:linear-gradient(90deg,#2554A4 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);}
  .edition-card img{width:min(60%,230px);height:auto;margin-inline:auto;}.edition-card div{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-top:1.25rem;color:#2554A4}.edition-card b{font-size:2rem}.edition-card span{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.edition-card small{display:block;margin-top:.5rem;color:#647089;}
  .hero-indicators{bottom:1.4rem;gap:.45rem;margin:0;z-index:5;}
  .hero-indicators [data-bs-target]{width:38px;height:5px;margin:0;border:0;background:#2554A4;opacity:.3;transition:width .3s ease,opacity .3s ease;}
  .hero-indicators .active{width:64px;opacity:1;background:linear-gradient(90deg,#2554A4 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);}
  .hero-slide-two~* .hero-indicators{background:#fff;}
  .hero-control{top:50%;bottom:auto;width:44px;height:44px;margin-top:-22px;border-radius:50%;background:#2554A4;color:#fff;opacity:1;box-shadow:0 8px 24px rgba(23,53,111,.22);}
  .hero-control:hover{background:#EF2B34;}.hero-control-prev{left:max(.75rem,env(safe-area-inset-left))}.hero-control-next{right:max(.75rem,env(safe-area-inset-right))}
  .hero-carousel-toggle{position:absolute;right:max(1rem,env(safe-area-inset-right));bottom:1rem;z-index:6;width:38px;height:38px;border:1px solid rgba(37,84,164,.2);border-radius:50%;background:rgba(255,255,255,.88);color:#2554A4;backdrop-filter:blur(8px);box-shadow:0 6px 20px rgba(23,53,111,.12);}
  .hero-carousel-toggle:hover{background:#2554A4;color:#fff;}
  .carousel-item.active .hero-kicker,.carousel-item.active .hero-wordmark,.carousel-item.active .hero-display,.carousel-item.active .hero-display-light,.carousel-item.active .hero-copy,.carousel-item.active .hero-actions,.carousel-item.active .hero-art-frame,.carousel-item.active .selection-visual,.carousel-item.active .edition-card{animation:heroEnter .7s both cubic-bezier(.22,.61,.36,1)}
  .carousel-item.active .hero-copy{animation-delay:.08s}.carousel-item.active .hero-actions{animation-delay:.14s}.carousel-item.active .hero-art-frame,.carousel-item.active .selection-visual,.carousel-item.active .edition-card{animation-delay:.12s}
  @keyframes heroEnter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
  @media (max-width:1199.98px){.hero-control{display:none}.hero-slide-inner{padding-inline:1rem}.selection-visual{min-height:420px}.selection-number{font-size:10rem}}
  @media (max-width:991.98px){.hero-slide{min-height:auto}.hero-slide-inner{min-height:820px;padding-top:7rem;padding-bottom:5rem}.hero-art-column{margin-top:1rem}.hero-art-frame{max-width:440px}.selection-visual{max-width:520px;min-height:370px}.selection-number{font-size:8.5rem}.edition-card{max-width:380px}.hero-display,.hero-display-light{font-size:clamp(3rem,12vw,5rem)}}
  @media (max-width:575.98px){.hero-slide-inner{min-height:720px;padding-top:6.2rem;padding-bottom:4.5rem}.hero-wordmark{max-width:310px}.hero-copy{font-size:.98rem;line-height:1.6}.hero-actions{gap:.65rem}.hero-actions .btn{width:100%;justify-content:center}.hero-art-frame{max-width:300px;padding:.6rem;box-shadow:12px 12px 0 rgba(37,84,164,.09)}.hero-reel{max-height:205px;object-fit:contain}.selection-visual{min-height:310px;padding:1.35rem;box-shadow:12px 12px 0 #FFD500}.selection-number{font-size:7rem}.selection-grid{gap:.4rem;margin-top:1.25rem}.selection-grid>div{padding:.7rem .45rem}.selection-grid b{font-size:1.35rem}.selection-grid span{font-size:.55rem}.identity-stripes span{height:50px;width:9px}.edition-card{max-width:290px;padding:1.2rem;box-shadow:12px 12px 0 #2554A4}.edition-card img{max-width:150px}.hero-indicators{bottom:.9rem}}

  /* ============ FILM POSTER ============ */
  .film-poster{position:relative;aspect-ratio:2/3;overflow:hidden;background:#17356F;}
  .film-poster img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.22,.61,.36,1);}
  .surface-hover:hover .film-poster img{transform:scale(1.035);}
  .film-poster::before{content:"";position:absolute;top:0;left:-75%;width:45%;height:100%;background:linear-gradient(115deg, transparent, rgba(255,255,255,.35), transparent);transform:skewX(-18deg);transition:left .7s ease;pointer-events:none;z-index:2;}
  .surface-hover:hover .film-poster::before{left:130%;}
  .film-country{display:flex;align-items:center;gap:.6rem;margin:0;color:#2554A4;font-weight:700;}
  .country-flag{display:block;width:33px;height:24px;object-fit:cover;border:1px solid rgba(27,58,99,.18);box-shadow:0 2px 5px rgba(23,53,111,.12);flex:none;}
  .film-detail{display:flex;align-items:flex-start;gap:.65rem;margin:0;color:#556074;font-size:.9rem;line-height:1.45;}
  .film-detail i{width:1rem;margin-top:.2rem;color:#2554A4;text-align:center;flex:none;}
  .film-runtime{font-weight:700;color:#17356F;}
  .film-screening-list>span{display:grid;gap:.25rem;}
  .film-screening-list>span>span{display:block;}
  .film-trailer-link{display:inline-flex;align-items:center;gap:.55rem;margin-top:auto;color:#2554A4;font-family:var(--euff-font-body);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;}
  .film-trailer-link:hover{color:#EF2B34;}
  .films-heading{text-align:center;}
  .films-heading h2{margin:0 auto;max-width:30ch;font-weight:800;letter-spacing:.02em;}
  .films-subtitle{margin:.75rem auto 0;color:#556074;font-family:var(--euff-font-body);font-size:.78rem;font-weight:600;letter-spacing:.1em;line-height:1.5;text-transform:uppercase;}

  /* ============ FESTIVAL TRAILER ============ */
  .trailer-frame{overflow:hidden;background:#17356F;border:1px solid rgba(27,58,99,.14);}
  .festival-trailer{display:block;width:100%;height:100%;object-fit:contain;background:#07152f;}

  /* ============ ABOUT / FESTIVAL INFORMATION ============ */
  .about-section{background:#FFFFFF;}
  .about-section>.container{display:flex;flex-direction:column;gap:clamp(3.5rem,7vw,6.5rem);}
  .about-section-title{margin:0 0 clamp(1.6rem,3vw,2.35rem);text-align:center;color:#17356F;font-size:clamp(2rem,4vw,3.2rem);font-weight:800;letter-spacing:.065em;line-height:1.05;}
  .about-block-wide{width:100%;}
  .about-section .about-block{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;}
  .about-card-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.45fr);gap:clamp(1.5rem,3vw,3rem);align-items:stretch;padding:clamp(.8rem,1.5vw,1.25rem);overflow:hidden;border:1px solid rgba(27,58,99,.13);border-radius:calc(var(--euff-radius) + 6px);background:#FFFFFF;box-shadow:0 28px 58px -42px rgba(16,35,63,.58);}
  .about-card-layout-reverse .about-photo-card{order:2;}
  .about-card-layout-reverse .about-card-content{order:1;}
  .about-card-content{min-width:0;align-self:center;}
  .about-photo-card{position:relative;min-height:360px;margin:0;overflow:hidden;border:1px solid rgba(27,58,99,.1);border-radius:var(--euff-radius);background:#E7EDF7;box-shadow:0 20px 36px -28px rgba(23,53,111,.65);}
  .about-photo-card>img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover;transition:transform .6s cubic-bezier(.22,.61,.36,1);}
  .about-card-layout:hover .about-photo-card>img{transform:scale(1.025);}
  .about-photo-brand{background:#fff;}
  .about-photo-brand>img{object-fit:contain;object-position:center;}
  .about-filmstrip{position:relative;display:flex;align-items:center;min-height:0;padding:2.55rem 0;isolation:isolate;background:#111A2D;}
  .about-filmstrip::before,.about-filmstrip::after{content:"";position:absolute;left:0;right:0;height:22px;z-index:3;background:repeating-linear-gradient(90deg,#F8FAFD 0 14px,transparent 14px 28px);border-block:1px solid rgba(255,255,255,.2);pointer-events:none;}
  .about-filmstrip::before{top:9px;}.about-filmstrip::after{bottom:9px;}
  .about-filmstrip-track{display:flex;width:max-content;will-change:transform;animation:aboutFilmstripScroll 28s linear infinite;}
  .about-filmstrip.is-paused .about-filmstrip-track{animation-play-state:paused;}
  .about-filmstrip-set{display:flex;flex:none;align-items:center;gap:.65rem;padding-right:.65rem;}
  .about-filmstrip-frame{flex:0 0 clamp(112px,10vw,148px);aspect-ratio:2/3;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:8px;background:#DDE5F0;box-shadow:0 13px 22px -12px rgba(0,0,0,.9);}
  .about-filmstrip-frame img{display:block;width:100%;height:100%;object-fit:cover;}
  .about-filmstrip-toggle{position:absolute;right:.75rem;bottom:.72rem;z-index:5;display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(17,26,45,.8);color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.28);transition:background .2s ease,transform .2s ease;}
  .about-filmstrip-toggle:hover,.about-filmstrip-toggle:focus-visible{background:#2554A4;transform:translateY(-2px);}
  @keyframes aboutFilmstripScroll{to{transform:translateX(-50%);}}
  @media (min-width:992px){
    .about-photo-brand{height:auto;min-height:0;aspect-ratio:3/2;align-self:center;}
    .about-filmstrip{height:clamp(360px,31vw,430px);align-self:center;}
    .about-photo-brand>img{height:100%;min-height:0;}
    .about-card-layout-reverse{grid-template-columns:minmax(0,1.45fr) minmax(280px,.78fr);}
  }
  .about-block h3{margin:0 0 1.15rem;color:#1E2430;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15;}
  .about-copy{margin:0;color:#556074;font-size:1rem;line-height:1.8;}
  .about-copy + .about-copy{margin-top:1rem;}
  .about-links{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.1rem 0 1.3rem;font-family:var(--euff-font-body);font-size:.72rem;line-height:1.2;}
  .about-links a{display:inline-flex;align-items:center;gap:.5rem;padding:.62rem .78rem;border:1px solid rgba(37,84,164,.18);border-radius:999px;background:#F5F8FD;color:#2554A4;text-decoration:none;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;}
  .about-links a i{width:1rem;text-align:center;font-size:.9rem;}
  .about-links a:hover,.about-links a:focus-visible{background:#17356F;border-color:#17356F;color:#FFFFFF;transform:translateY(-2px);box-shadow:0 8px 16px -10px rgba(23,53,111,.6);}

  /* ============ CARDS / SURFACES ============ */
  .surface{background:#FFFFFF;border:1px solid rgba(27,58,99,.12);}
  .surface-hover{transition:transform .4s cubic-bezier(.22,.61,.36,1), border-color .4s ease, box-shadow .4s ease;}
  .surface-hover:hover{transform:translateY(-6px);border-color:rgba(27,58,99,.22);box-shadow:0 22px 40px -20px rgba(16,35,63,.28);}

  /* ============ PARTNER / EMBASSY LOGOS ============ */
  .sponsor-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;width:100%;max-width:1200px;margin:0 auto 2.5rem;}
  .sponsor-tile{flex:0 1 calc(20% - .8rem);min-width:0;max-width:240px;min-height:116px;overflow:visible;background:transparent;border:0;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .3s ease;}
  .sponsor-tile:hover{transform:translateY(-2px);}
  .sponsor-tile img{display:block;width:100%;max-width:176px;height:61px;object-fit:contain;object-position:center;}
  .embassy-grid{display:flex;flex-direction:column;gap:1rem;padding-block:.5rem;width:100%;max-width:1200px;margin:0 auto;}
  .embassy-grid-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));justify-content:center;justify-items:center;align-items:center;column-gap:clamp(.5rem,1.4vw,1.1rem);row-gap:1rem;width:100%;}
  .embassy-grid-last{grid-template-columns:repeat(5,minmax(0,1fr));max-width:1000px;margin-inline:auto;}
  .embassy-grid-row>.col{width:100%;min-width:0;margin:0;display:flex;align-items:center;justify-content:center;}
  .embassy-tile{width:100%;height:104px;margin-inline:auto;background:transparent;display:flex;align-items:center;justify-content:center;padding:.35rem;overflow:hidden;transition:transform .3s ease, filter .3s ease;}
  .embassy-tile:hover{transform:translateY(-3px);filter:drop-shadow(0 8px 12px rgba(27,58,99,.14));}
  .embassy-tile img{display:block;width:100%;max-width:200px;height:72px;object-fit:contain;object-position:50% 50%;margin:auto;}
  .embassy-col-germany .embassy-tile{overflow:visible;}
  .embassy-col-germany .embassy-tile img{transform:scale(1.16);}
  .embassy-col-cineuropa .embassy-tile img{transform:scale(1.75);}
  @media (max-width:991.98px){.about-section>.container{gap:4rem}.about-card-layout{grid-template-columns:1fr;padding:.75rem}.about-card-layout-reverse .about-photo-card,.about-card-layout-reverse .about-card-content{order:initial}.about-card-content{padding:.5rem .5rem 1rem}.about-photo-card,.about-photo-card>img{min-height:300px}.sponsor-tile{flex-basis:calc(50% - 1rem);max-width:360px;min-height:136px}.sponsor-tile img{height:77px}.embassy-grid-row{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:.8rem;row-gap:.8rem}.embassy-grid-last{grid-template-columns:repeat(3,minmax(0,1fr));max-width:850px}.embassy-grid-last>.col:nth-last-child(2){grid-column:1}.embassy-grid-last>.col:nth-last-child(1){grid-column:3}.embassy-tile{height:94px}.embassy-tile img{height:66px}.embassy-col-germany .embassy-tile img{transform:scale(1.08)}.embassy-col-cineuropa .embassy-tile img{transform:scale(1.6)}}
  @media (max-width:767.98px){.embassy-grid-row{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:.65rem;row-gap:.6rem}.embassy-grid-last{grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px}.embassy-grid-last>.col:nth-last-child(2){grid-column:1}.embassy-grid-last>.col:nth-last-child(1){grid-column:3}.embassy-tile{height:86px;padding:.3rem}.embassy-tile img{height:58px}.embassy-col-germany .embassy-tile img{transform:scale(1.05)}.embassy-col-cineuropa .embassy-tile img{transform:scale(1.45)}}
  @media (max-width:575.98px){.about-photo-card,.about-photo-card>img{min-height:240px}.about-filmstrip{height:340px;min-height:340px;padding-block:2.35rem}.about-filmstrip-track{animation-duration:20s}.about-filmstrip-frame{flex-basis:112px}.sponsor-grid{gap:.6rem}.sponsor-tile{flex-basis:calc(50% - .3rem);min-height:120px;padding:0}.sponsor-tile img{height:67px}.embassy-grid{gap:.7rem}.embassy-grid-row{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:.45rem;row-gap:.55rem}.embassy-grid-last{grid-template-columns:repeat(3,minmax(0,1fr))}.embassy-grid-last>.col:nth-last-child(2){grid-column:1}.embassy-grid-last>.col:nth-last-child(1){grid-column:3}.embassy-tile{height:82px;padding:.2rem}.embassy-tile img{height:56px}}
  @media (max-width:359.98px){.embassy-grid-row,.embassy-grid-last{grid-template-columns:repeat(2,minmax(0,1fr))}.embassy-grid-last>.col:nth-last-child(2){grid-column:auto}.embassy-grid-last>.col:nth-last-child(1){grid-column:1 / span 2}.embassy-tile{height:78px;padding:.25rem}.embassy-tile img{height:52px}}
  @media (prefers-reduced-motion:reduce){.about-filmstrip-track{animation:none}.about-filmstrip{overflow-x:auto}.about-filmstrip-toggle{display:none}}

  /* ============ SIDE EVENTS / BOOKING ============ */
  .side-events-grid{max-width:1180px;margin-inline:auto;}
  .side-event-card{height:100%;display:flex;flex-direction:column;overflow:hidden;background:#FFFFFF;border:1px solid rgba(27,58,99,.14);border-radius:1.25rem;box-shadow:0 24px 50px -36px rgba(16,35,63,.55);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;}
  .side-event-card:hover{transform:translateY(-5px);border-color:rgba(37,84,164,.3);box-shadow:0 30px 58px -34px rgba(16,35,63,.55);}
  .side-event-media{aspect-ratio:16/9;overflow:hidden;background:#DCE5F2;}
  .side-event-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.22,.61,.36,1);}
  .side-event-card:hover .side-event-media img{transform:scale(1.035);}
  .side-event-body{display:flex;flex:1;flex-direction:column;padding:clamp(1.25rem,2.6vw,2rem);}
  .side-event-subtitle{margin:0 0 .75rem;color:#2554A4;font-family:var(--euff-font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;}
  .side-event-body h3{margin:0;color:#1E2430;font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;font-size:clamp(1.45rem,2.2vw,1.9rem);font-weight:700;line-height:1.24;letter-spacing:-.012em;}
  .side-event-description{margin:1rem 0 1.5rem;color:#556074;line-height:1.75;}
  .side-event-facts{display:grid;gap:.45rem;margin:-.45rem 0 1.5rem;color:#556074;font-size:.9rem;line-height:1.65;}
  .side-event-facts p{margin:0;}
  .side-event-facts strong{color:#17356F;}
  .side-event-book-button,.side-event-submit{border:1px solid #2554A4;border-radius:999px;background:#2554A4;color:#FFFFFF;font-family:var(--euff-font-body);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
  .side-event-book-button{align-self:flex-start;min-width:128px;margin-top:auto;padding:.78rem 1.35rem;}
  .side-event-book-button:hover,.side-event-book-button:focus-visible,.side-event-submit:hover,.side-event-submit:focus-visible{border-color:#17356F;background:#17356F;color:#FFD500;}
  .side-event-booking{margin-top:1.35rem;border-top:1px solid rgba(27,58,99,.12);}
  .event-booking-form{display:grid;gap:.9rem;padding-top:1.35rem;}
  .event-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;}
  .event-booking-form label{display:block;margin-bottom:.4rem;color:#17356F;font-family:var(--euff-font-body);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}
  .event-booking-form .form-control,.event-booking-form .form-select{min-height:48px;border-color:rgba(27,58,99,.22);border-radius:.65rem;color:#1E2430;background:#F8FAFE;}
  .event-booking-form .form-control:focus,.event-booking-form .form-select:focus{border-color:#2554A4;box-shadow:0 0 0 .2rem rgba(37,84,164,.12);}
  .side-event-submit{width:100%;padding:.78rem 1.15rem;}
  .booking-confirmation{margin:0;padding:.75rem 1rem;border-radius:.65rem;background:rgba(53,168,83,.1);color:#1E6F36;font-size:.9rem;font-weight:700;text-align:center;}
  .booking-confirmation.is-error{background:rgba(239,43,52,.09);color:#A31E25;}
  .booking-privacy{margin:0;color:#60708A;font-size:.78rem;line-height:1.55;}
  .booking-privacy a{color:#2554A4;font-weight:700;}
  .side-event-submit:disabled{cursor:wait;opacity:.7;}
  @media (max-width:575.98px){.event-booking-grid{grid-template-columns:1fr}.side-event-book-button{width:100%}.side-event-body{padding:1.2rem}}

  /* ============ BOOTSTRAP COMPONENT RESKIN ============ */
  .list-group-item{--bs-list-group-bg:transparent;--bs-list-group-color:#1E2430;--bs-list-group-border-color:rgba(27,58,99,.12);transition:padding-left .3s ease, background .3s ease;}
  .list-group-item:hover{background:rgba(27,58,99,.03);padding-left:.75rem;}
  .modal-content{background:#FFFFFF;border:1px solid rgba(27,58,99,.14);}
  .form-control{background:#FFFFFF;border-color:rgba(27,58,99,.24);color:#1E2430;}
  .form-control:focus{background:#FFFFFF;border-color:#1B3A63;color:#1E2430;box-shadow:0 0 0 .25rem rgba(27,58,99,.15);}
  .form-control::placeholder{color:#647089;}
  .badge-event{background:#2554A4;color:#fff;}
  .badge-screening{background:transparent;border:1px solid rgba(27,58,99,.28);color:#647089;}
  .toast{background:#FFFFFF;border:1px solid rgba(27,58,99,.16);color:#1E2430;box-shadow:0 12px 30px -10px rgba(16,35,63,.25);}
  .footer-link-button{border:0;background:transparent;padding:0;text-align:left;}
  .footer-link-button:hover,.footer-link-button:focus-visible{color:#FFD500 !important;}
  .footer-partner-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;width:min(100%,360px);}
  .footer-partner-logo{display:flex;align-items:center;justify-content:center;min-height:68px;padding:.55rem .7rem;border:1px solid rgba(255,255,255,.72);border-radius:12px;background:#FFFFFF;box-shadow:0 18px 32px -24px rgba(0,0,0,.65);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
  .footer-partner-logo:hover{transform:translateY(-3px);border-color:#FFD500;box-shadow:0 22px 38px -24px rgba(0,0,0,.78);}
  .footer-partner-logo img{display:block;width:100%;height:42px;object-fit:contain;}
  .footer-partner-logo-ap img{height:46px;}
  .social-links{display:flex;flex-direction:column;gap:.7rem;}
  @media (max-width:575.98px){.footer-partner-logos{width:min(100%,320px);}.footer-partner-logo{min-height:60px;padding:.45rem}.footer-partner-logo img{height:34px}.footer-partner-logo-ap img{height:38px}}
  .social-links a{display:flex;align-items:center;gap:.65rem;color:rgba(255,255,255,.85);text-decoration:none;}
  .social-links i{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;min-width:32px;height:32px;aspect-ratio:1;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:background .2s ease,color .2s ease,transform .2s ease;}
  .social-links a[href^="mailto:"] i{background:transparent;color:inherit;border-color:rgba(255,255,255,.35);}
  .social-links a[href^="mailto:"]{flex-wrap:nowrap;white-space:nowrap;}
  .social-links a[href^="mailto:"] span{white-space:nowrap;overflow-wrap:normal;word-break:normal;}
  .social-links a[href^="mailto:"]:hover i{background:#FFD500;color:#17356F;border-color:#FFD500;}
  .social-links a:hover{color:#FFD500;}.social-links a:hover i{background:#FFD500;color:#17356F;border-color:#FFD500;transform:translateY(-2px);}
  .social-x-icon{font-family:var(--euff-font-body);font-style:normal;font-weight:600;line-height:1;}

  /* ============ FAQ PAGE ============ */
  .faq-page{background:radial-gradient(circle at 90% 8%,rgba(37,84,164,.1),transparent 28%),#EEF3FC;min-height:100vh;}
  .faq-main{padding:clamp(9rem,16vw,13rem) 0 6rem;}
  .faq-heading{max-width:760px;margin-bottom:3rem;position:relative;}
  .faq-heading::after{content:"";display:block;width:92px;height:5px;margin-top:1.5rem;background:linear-gradient(90deg,#2554A4 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);}
  .faq-heading h1{max-width:12ch;line-height:.98;letter-spacing:-.045em;}
  .faq-accordion{max-width:900px;border:1px solid rgba(27,58,99,.14);border-radius:.35rem;overflow:hidden;box-shadow:0 20px 42px -30px rgba(23,53,111,.45);}
  .faq-accordion .accordion-item{background:#FFFFFF;border:0;border-bottom:1px solid rgba(27,58,99,.12);}
  .faq-accordion .accordion-item:last-child{border-bottom:0;}
  .faq-accordion .accordion-button{padding:1.35rem 1.5rem;color:#1E2430;background:#FFFFFF;font-size:1.05rem;font-weight:700;box-shadow:none;transition:color .2s ease,background .2s ease,padding-left .2s ease;}
  .faq-accordion .accordion-button:not(.collapsed){color:#17356F;background:#F5F8FD;padding-left:1.7rem;}
  .faq-accordion .accordion-button:hover{color:#2554A4;background:#F8FAFE;}
  .faq-accordion .accordion-button:focus{box-shadow:inset 0 0 0 .2rem rgba(37,84,164,.15);}
  .faq-accordion .accordion-button::after{background-size:1rem;}
  .faq-accordion .accordion-body{padding:0 1.5rem 1.45rem;color:#556074;line-height:1.75;background:#F5F8FD;}
  .faq-accordion .accordion-body a{color:#2554A4;font-weight:700;}
  .faq-footer{padding:1.5rem 0;color:rgba(255,255,255,.76);background:#17356F;font-size:.85rem;}
  .faq-footer a{color:#FFFFFF;text-decoration:none;}
  .faq-footer a:hover{color:#FFD500;}
  .legal-page{background:radial-gradient(circle at 90% 8%,rgba(37,84,164,.1),transparent 28%),#EEF3FC;min-height:100vh;}
  .legal-main{padding:clamp(9rem,16vw,13rem) 0 6rem;}
  .legal-heading{max-width:760px;margin-bottom:3rem;}
  .legal-heading h1{line-height:.98;letter-spacing:-.045em;}
  .legal-heading::after{content:"";display:block;width:92px;height:5px;margin-top:1.5rem;background:linear-gradient(90deg,#2554A4 55%,#FFD500 55% 70%,#35A853 70% 85%,#EF2B34 85%);}
  .legal-copy{max-width:820px;background:rgba(255,255,255,.96);border:1px solid rgba(27,58,99,.12);padding:clamp(1.5rem,4vw,3.25rem);box-shadow:0 20px 42px -30px rgba(23,53,111,.45);}
  .legal-copy h2{margin:0 0 .7rem;color:#17356F;font-size:1.35rem;font-weight:800;display:flex;align-items:center;gap:.7rem;}
  .legal-copy h2::before{content:"";display:inline-block;width:7px;height:7px;background:#EF2B34;transform:rotate(45deg);flex:none;}
  .legal-copy h2:not(:first-child){margin-top:2.2rem;padding-top:1.5rem;border-top:1px solid rgba(27,58,99,.1);}
  .legal-copy p{margin:0;color:#556074;font-size:1rem;line-height:1.8;}
  .legal-copy a{color:#2554A4;font-weight:700;}
  .legal-footer-links{display:flex;align-items:center;gap:.6rem;}
  .legal-footer-links a{color:rgba(255,255,255,.7);text-decoration:none;}
  .legal-footer-links a:hover{color:#FFD500;}

  /* ============ DAY SCROLLER ============ */
  .day-scroller{overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;}
  .day-scroller::-webkit-scrollbar{height:5px;}
  .day-scroller::-webkit-scrollbar-thumb{background:rgba(27,58,99,.22);}
  .day-btn{flex:none;border:1px solid rgba(27,58,99,.22);color:#647089;background:#fff;scroll-snap-align:start;transition:all .25s ease;}
  .day-btn.is-active{background:#2554A4;border-color:#2554A4;color:#fff;box-shadow:inset 0 -4px 0 #FFD500;}
  .day-btn.is-active b, .day-btn.is-active span{color:#fff;}
  .day-btn:active{transform:scale(.95);}

  /* ============ BACK TO TOP ============ */
  .back-to-top{position:fixed;right:max(1.1rem, calc(env(safe-area-inset-right) + .5rem));bottom:calc(1.1rem + env(safe-area-inset-bottom));z-index:1035;width:46px;height:46px;border-radius:50%;background:#2554A4;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(14px) scale(.9);pointer-events:none;transition:opacity .3s ease, transform .3s cubic-bezier(.34,1.56,.64,1), bottom .3s ease;box-shadow:0 10px 28px -8px rgba(23,53,111,.4);border:0;}
  .back-to-top.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
  .trailer-in-view .back-to-top.is-visible{opacity:0;pointer-events:none;transform:translateY(12px) scale(.9);}
  .back-to-top:active{transform:scale(.9);}
  @media (max-width:991.98px){.back-to-top{bottom:calc(var(--tabbar-h) + 12px + env(safe-area-inset-bottom));}}

  /* ============ BOTTOM TAB BAR (mobile app nav) ============ */
  .bottom-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:1040;display:flex;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(27,58,99,.12);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);box-shadow:0 -6px 20px -12px rgba(16,35,63,.15);}
  .tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.28rem;padding:.55rem 0 .5rem;color:#647089;font-family:var(--euff-font-body);font-size:.6rem;letter-spacing:.03em;text-transform:uppercase;border:0;background:transparent;-webkit-tap-highlight-color:transparent;transition:color .25s ease, transform .15s ease;}
  .tab-item svg,.tab-item>i{width:21px;height:21px;font-size:1.2rem;line-height:21px;text-align:center;transition:transform .3s cubic-bezier(.34,1.56,.64,1);}
  .tab-item.is-active{color:#2554A4;}
  .tab-item.is-active svg,.tab-item.is-active>i{transform:translateY(-2px);}
  .tab-item:active{transform:scale(.92);}
  @media (max-width:991.98px){ body{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));} }
  @media (max-width:991.98px){
    .navbar.menu-open .navbar-collapse{padding-bottom:1rem;}
    .navbar.menu-open .nav-link{padding:.7rem .25rem;}
  }
  @media (min-width:992px){ .bottom-tabbar{display:none;} }

  /* ============ REVEAL ============ */
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease, transform .7s ease;}
  .reveal.in{opacity:1;transform:translateY(0);}

  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
    html{scroll-behavior:auto;}
  }

  /* ============ UNIFIED 2026 DESIGN SYSTEM ============ */
  :root{
    --euff-blue:#174A97;
    --euff-blue-deep:#102F63;
    --euff-blue-soft:#EAF1FB;
    --euff-gold:#F5C928;
    --euff-red:#E6333B;
    --euff-green:#2E9D63;
    --euff-ink:#14213A;
    --euff-muted:#60708A;
    --euff-paper:#F6F8FC;
    --euff-white:#FFFFFF;
    --euff-border:rgba(23,74,151,.14);
    --euff-shadow:0 28px 70px -38px rgba(16,47,99,.46);
    --euff-radius:22px;
    --euff-section-space:clamp(4.75rem,8vw,8rem);
  }
  body{background:var(--euff-paper);color:var(--euff-ink);font-family:var(--euff-font-body);font-size:1rem;line-height:1.65;}
  p{color:var(--euff-muted);text-align:start;text-justify:auto;}
  h1,h2,h3,h4{color:var(--euff-ink);text-wrap:balance;}
  h1{font-size:clamp(2.8rem,6vw,5.75rem);line-height:.98;letter-spacing:-.055em;}
  h2{font-size:clamp(2.1rem,4vw,4rem);line-height:1.02;letter-spacing:-.04em;}
  h3{font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.2;}
  .navbar{background:rgba(255,255,255,.88);border-bottom:1px solid var(--euff-border);box-shadow:0 12px 36px -28px rgba(16,47,99,.5);}
  .navbar.is-scrolled,.navbar.menu-open{background:rgba(255,255,255,.97);}
  .nav-brand-logo{width:clamp(92px,8vw,116px);}
  .nav-edition-logo{width:46px;height:42px;}
  .nav-link{font-size:.9rem;font-weight:600;letter-spacing:-.01em;}
  .btn{border-radius:999px;font-size:.9rem;letter-spacing:-.01em;}
  .btn-brand-primary{background:var(--euff-blue);border-color:var(--euff-blue);color:#fff;box-shadow:0 12px 24px -16px rgba(23,74,151,.75);}
  .btn-brand-primary:hover,.btn-brand-primary:focus{background:var(--euff-blue-deep);border-color:var(--euff-blue-deep);color:#fff;transform:translateY(-2px);}
  .btn-brand-outline{background:rgba(255,255,255,.76);border-color:rgba(23,74,151,.35);color:var(--euff-blue-deep);}
  .btn-brand-outline:hover,.btn-brand-outline:focus{background:#fff;border-color:var(--euff-blue);color:var(--euff-blue);transform:translateY(-2px);}
  section:not(.hero-slider-section){padding-top:var(--euff-section-space);padding-bottom:var(--euff-section-space);}
  .section-title,.about-section-title{text-align:center;text-transform:uppercase;letter-spacing:.055em;font-weight:900;}
  .section-subtitle{max-width:700px;margin-inline:auto;text-align:center;font-size:clamp(1rem,1.5vw,1.2rem);}

  /* Hero carousel */
  .hero-slider-section{background:#EEF2F8;isolation:isolate;}
  .hero-slide{position:relative;min-height:clamp(700px,92vh,900px);}
  .hero-slide-inner{min-height:inherit;padding-top:clamp(7.5rem,12vh,10rem);padding-bottom:clamp(5.5rem,9vh,7rem);}
  .hero-slide::before{display:none;}
  .hero-slide-one{background:#E8E7EC;}
  .hero-slide-one .hero-media{position:absolute;inset:0;background-image:url("assets/hero/hero-background.jpg");background-size:cover;background-position:center;}
  .hero-content-card{position:relative;z-index:2;width:min(100%,660px);padding:clamp(1.5rem,4vw,3.1rem);background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.88);border-radius:var(--euff-radius);box-shadow:var(--euff-shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
  .hero-content-main{margin-right:auto;}
  .hero-wordmark{width:min(100%,470px);filter:none;}
  .hero-wordmark-edition{width:min(100%,360px);max-height:430px;object-fit:contain;object-position:left center;}
  .hero-kicker{color:var(--euff-blue);font-size:.7rem;line-height:1.5;letter-spacing:.16em;}
  .hero-kicker>span{flex:0 0 2.25rem;height:3px;background:linear-gradient(90deg,var(--euff-blue) 0 52%,var(--euff-gold) 52% 68%,var(--euff-green) 68% 84%,var(--euff-red) 84%);}
  .hero-copy{color:var(--euff-muted);font-size:clamp(1rem,1.12vw,1.15rem);line-height:1.6;}
  .hero-actions .btn{min-height:50px;padding:.78rem 1.35rem;font-weight:800;}
  .hero-slide-two{background:linear-gradient(135deg,#F8FAFD 0%,#E9EFF8 100%);color:var(--euff-ink);}
  .hero-split-card{width:100%;overflow:hidden;background:#fff;border:1px solid var(--euff-border);border-radius:calc(var(--euff-radius) + 6px);box-shadow:var(--euff-shadow);}
  .hero-split-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,5rem);}
  .hero-display{color:var(--euff-blue-deep);font-size:clamp(3rem,6vw,6.2rem);line-height:.91;letter-spacing:-.065em;}
  .hero-portrait-wrap{position:relative;min-height:610px;overflow:hidden;background:#E8E6EA;}
  .hero-portrait{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 39%;}
  .hero-stat-row{position:absolute;left:1.25rem;right:1.25rem;bottom:1.25rem;display:flex;gap:.65rem;}
  .hero-stat-row span{display:flex;align-items:baseline;gap:.45rem;min-width:0;padding:.8rem 1rem;background:rgba(16,47,99,.88);border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;font-family:var(--euff-font-body);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(10px);}
  .hero-stat-row b{font-family:var(--euff-font-display);font-size:1.35rem;letter-spacing:-.04em;color:var(--euff-gold);}
  .hero-slide-three{background:radial-gradient(circle at 80% 28%,rgba(245,201,40,.24),transparent 32%),linear-gradient(135deg,#F9FAFD 0%,#E6EDF8 100%);}
  .hero-slide-four{background:radial-gradient(circle at 18% 78%,rgba(37,84,164,.13),transparent 34%),linear-gradient(135deg,#fff 0%,#EEF3FC 100%);}
  .anniversary-card{width:min(100%,430px);margin-inline:auto;padding:clamp(1.6rem,4vw,2.8rem);background:#fff;border:1px solid var(--euff-border);border-radius:calc(var(--euff-radius) + 4px);box-shadow:var(--euff-shadow);text-align:center;}
  .anniversary-card img{display:block;width:min(100%,320px);height:auto;margin:0 auto 1.5rem;}
  .anniversary-card>div{display:flex;align-items:center;justify-content:center;gap:.7rem;padding-top:1.25rem;border-top:1px solid var(--euff-border);}
  .anniversary-card b{color:var(--euff-blue-deep);font-size:1.55rem;}
  .anniversary-card span,.anniversary-card small{color:var(--euff-muted);}
  .anniversary-card small{display:block;margin-top:.45rem;font-family:var(--euff-font-body);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;}
  .hero-indicators{bottom:1.35rem;}
  .hero-indicators [data-bs-target]{width:10px;height:10px;border-radius:999px;background:var(--euff-blue);}
  .hero-indicators .active{width:42px;background:linear-gradient(90deg,var(--euff-blue) 0 50%,var(--euff-gold) 50% 67%,var(--euff-green) 67% 84%,var(--euff-red) 84%);}
  .hero-control{width:46px;height:46px;background:rgba(16,47,99,.88);border:1px solid rgba(255,255,255,.45);box-shadow:0 14px 30px -18px rgba(16,47,99,.8);backdrop-filter:blur(8px);}
  .hero-carousel-toggle{background:rgba(255,255,255,.9);border-color:var(--euff-border);color:var(--euff-blue-deep);}

  /* Shared content surfaces */
  .about-block,.film-card,.event-card,.programme-card,.faq-accordion,.legal-copy{border-color:var(--euff-border);border-radius:var(--euff-radius);box-shadow:var(--euff-shadow);}
  .about-copy,.legal-copy p,.faq-accordion .accordion-body{font-size:clamp(.98rem,1.2vw,1.08rem);line-height:1.85;}
  .about-links a{border-radius:999px;}
  footer{font-size:.94rem;}

  /* Shared secondary pages */
  .faq-page,.legal-page{display:flex;min-height:100vh;flex-direction:column;background:radial-gradient(circle at 88% 8%,rgba(23,74,151,.12),transparent 30%),linear-gradient(180deg,#F8FAFD 0%,#EEF3FA 100%);}
  .faq-main,.legal-main{flex:1;width:100%;padding:clamp(8.5rem,14vw,11rem) 0 clamp(4rem,8vw,7rem);}
  .faq-heading,.legal-heading{max-width:780px;margin-bottom:clamp(2rem,5vw,3.75rem);}
  .faq-heading h1,.legal-heading h1{font-size:clamp(2.8rem,6vw,5.6rem);color:var(--euff-blue-deep);}
  .faq-heading>p:last-child,.legal-heading>p:last-child{max-width:650px;font-size:clamp(1rem,1.5vw,1.2rem);}
  .faq-heading::after,.legal-heading::after{width:112px;height:5px;border-radius:99px;background:linear-gradient(90deg,var(--euff-blue) 0 52%,var(--euff-gold) 52% 68%,var(--euff-green) 68% 84%,var(--euff-red) 84%);}
  .faq-accordion{max-width:960px;background:#fff;overflow:hidden;}
  .faq-accordion .accordion-button{min-height:74px;padding:1.35rem clamp(1.15rem,3vw,2rem);font-size:clamp(1rem,1.4vw,1.15rem);}
  .faq-accordion .accordion-button:not(.collapsed){background:var(--euff-blue-soft);color:var(--euff-blue-deep);padding-left:clamp(1.15rem,3vw,2rem);}
  .faq-accordion .accordion-body{padding:0 clamp(1.15rem,3vw,2rem) 1.6rem;background:var(--euff-blue-soft);color:var(--euff-muted);}
  .legal-copy{max-width:940px;padding:clamp(1.5rem,5vw,4rem);background:#fff;}
  .legal-copy h2{color:var(--euff-blue-deep);font-size:clamp(1.25rem,2vw,1.55rem);}
  .faq-footer{margin-top:auto;padding:1.4rem 0;background:var(--euff-blue-deep);}

  @media (max-width:991.98px){
    .hero-slide{min-height:auto;}
    .hero-slide-inner{min-height:820px;padding-top:7.3rem;padding-bottom:5rem;}
    .hero-content-card{width:min(100%,620px);}
    .hero-split-card{margin-top:1rem;}
    .hero-portrait-wrap{min-height:380px;}
    .hero-portrait{object-position:center 45%;}
    .hero-slide-two .hero-slide-inner{min-height:auto;padding-top:7rem;padding-bottom:6rem;}
    .hero-slide-three .hero-art-column{margin-top:1.5rem;}
    .navbar-collapse{max-height:calc(100vh - 76px);overflow:auto;}
  }
  @media (max-width:575.98px){
    :root{--euff-radius:16px;--euff-section-space:4.25rem;}
    body{font-size:.96rem;}
    .hero-slide-inner{min-height:760px;padding-top:6.6rem;padding-bottom:4.8rem;}
    .hero-slide-one .hero-media{background-image:url("assets/hero/hero-background.jpg");background-position:68% center;}
    .hero-content-card{margin-top:4.5rem;padding:1.35rem;background:rgba(255,255,255,.9);}
    .hero-wordmark{max-width:275px;}
    .hero-wordmark-edition{max-width:245px;max-height:300px;}
    .hero-kicker{font-size:.61rem;letter-spacing:.11em;}
    .hero-kicker>span{flex-basis:1.4rem;}
    .hero-actions .btn{min-height:47px;}
    .hero-slide-two .hero-slide-inner{padding-top:6.3rem;padding-bottom:5.2rem;}
    .hero-split-copy{padding:1.6rem 1.25rem 1.8rem;}
    .hero-display{font-size:clamp(2.65rem,13vw,4rem);}
    .hero-portrait-wrap{min-height:330px;}
    .hero-stat-row{left:.75rem;right:.75rem;bottom:.75rem;gap:.4rem;}
    .hero-stat-row span{flex:1;justify-content:center;padding:.62rem .7rem;font-size:.58rem;letter-spacing:.06em;}
    .hero-stat-row b{font-size:1.05rem;}
    .anniversary-card{max-width:310px;padding:1.35rem;}
    .anniversary-card img{max-width:220px;}
    .faq-main,.legal-main{padding-top:7.5rem;}
    .faq-heading h1,.legal-heading h1{font-size:clamp(2.5rem,13vw,3.5rem);}
    .faq-footer .container{flex-direction:column;align-items:flex-start;}
    .programme-session-row{grid-template-columns:auto minmax(0,1fr);gap:.65rem 1rem;align-items:start;}
    .programme-session-row>.badge{grid-column:2;justify-self:start;}
    .programme-session-row>span:first-child{padding-top:.15rem;}
  }

  /* ============ CONSISTENT SECTION TITLES & TRAILER ============ */
  .section-heading-block{text-align:center;max-width:980px;margin-inline:auto;}
  .section-eyebrow,.section-heading-block>p:first-child{margin:0 0 .85rem;color:var(--euff-blue);font-family:var(--euff-font-body);font-size:.72rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;}
  .section-heading-title,.about-section-title{
    width:fit-content;
    max-width:min(100%,24ch);
    margin:0 auto;
    color:var(--euff-blue-deep) !important;
    font-family:var(--euff-font-body);
    font-size:clamp(2.25rem,4.8vw,4.5rem) !important;
    font-weight:800;
    font-variation-settings:"wght" 800;
    line-height:1.05 !important;
    letter-spacing:.018em !important;
    text-align:center;
    text-transform:uppercase;
  }
  .section-heading-title::after,.about-section-title::after{
    content:"";
    display:block;
    width:clamp(84px,9vw,128px);
    height:5px;
    margin:1rem auto 0;
    border-radius:999px;
    background:linear-gradient(90deg,var(--euff-blue) 0 52%,var(--euff-gold) 52% 68%,var(--euff-green) 68% 84%,var(--euff-red) 84%);
  }
  .section-heading-copy,.films-subtitle,.section-heading-block>p:last-child:not(:first-child){max-width:760px;margin:1.15rem auto 0;color:var(--euff-muted);font-size:clamp(.98rem,1.35vw,1.12rem);line-height:1.75;text-align:center;}
  .films-subtitle{font-family:var(--euff-font-body);font-size:clamp(.7rem,1.1vw,.82rem);font-weight:600;letter-spacing:.1em;line-height:1.6;text-transform:uppercase;}
  .nav-book-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-width:148px;min-height:44px;padding:.65rem 1.1rem !important;border:2px solid var(--euff-gold);border-radius:999px !important;font-family:var(--euff-font-body);font-size:.86rem !important;font-weight:750;line-height:1;letter-spacing:.005em;white-space:nowrap;box-shadow:0 10px 20px -14px rgba(16,47,99,.7);}
  .nav-book-btn i{margin:0 !important;font-size:.88rem;}
  #filmGrid h3{font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;font-size:clamp(1.22rem,1.55vw,1.48rem) !important;font-weight:700;line-height:1.25;letter-spacing:-.012em;}
  .partners-subheading{width:fit-content;margin:clamp(2.6rem,6vw,4.5rem) auto clamp(1.75rem,4vw,3rem);color:var(--euff-blue-deep);font-family:var(--euff-font-body);font-size:clamp(2rem,4vw,3.6rem);font-weight:800;line-height:1.05;letter-spacing:.02em;text-align:center;text-transform:uppercase;}
  .partners-subheading::after{content:"";display:block;width:clamp(84px,9vw,128px);height:5px;margin:1rem auto 0;border-radius:999px;background:linear-gradient(90deg,var(--euff-blue) 0 52%,var(--euff-gold) 52% 68%,var(--euff-green) 68% 84%,var(--euff-red) 84%);}
  .tw-font-body,code,kbd,pre,samp{font-family:var(--euff-font-body) !important;}
  .about-section-title{font-size:clamp(1.9rem,3.4vw,3rem) !important;letter-spacing:.02em !important;}
  .about-section-title::after{height:4px;margin-top:.8rem;}
  .trailer-stage{width:min(100%,960px);margin:clamp(2rem,5vw,3.5rem) auto 0;text-align:center;}
  .trailer-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#07152F;border:0;border-radius:0;box-shadow:none;}
  .festival-trailer{display:block;width:100%;height:100%;object-fit:contain;background:#07152F;}
  .trailer-play-overlay{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;width:clamp(3.5rem,7vw,5.25rem);aspect-ratio:1;padding:0;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(37,84,164,.92);color:#fff;font-size:clamp(1.15rem,2.5vw,1.75rem);box-shadow:0 10px 34px rgba(0,0,0,.32);cursor:pointer;transition:transform .2s ease,background-color .2s ease,opacity .2s ease;}
  .trailer-play-overlay:hover{transform:translate(-50%,-50%) scale(1.08);background:#17356F;}
  .trailer-play-overlay:focus-visible{outline:3px solid #FFD500;outline-offset:4px;}
  .festival-trailer.is-playing~.trailer-play-overlay{opacity:0;pointer-events:none;}
  .trailer-expand{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:1.25rem;padding:.7rem 1.25rem;font-weight:700;}
  #trailerModal .modal-content{overflow:hidden;border:1px solid var(--euff-border);border-radius:var(--euff-radius);box-shadow:var(--euff-shadow);}
  #trailerModalLabel{font-family:"EUFF Acumin","EUFF Helvetica Arabic",sans-serif;font-size:clamp(1.25rem,2vw,1.6rem);font-weight:750;font-variation-settings:"wght" 750;line-height:1.2;letter-spacing:-.015em;}
  #ticketsModalLabel{font-family:"EUFF Acumin","EUFF Helvetica Arabic",sans-serif;font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:750;font-variation-settings:"wght" 750;line-height:1.25;letter-spacing:-.015em;text-wrap:balance;}
  @media (max-width:575.98px){
    .section-heading-title,.about-section-title{font-size:clamp(2rem,10vw,3rem) !important;max-width:100%;}
    .section-heading-title::after,.about-section-title::after{height:4px;margin-top:.75rem;}
    .section-heading-copy{padding-inline:.35rem;}
    .trailer-stage{margin-top:1.8rem;}
    .trailer-frame{width:100%;margin-inline:0;border-radius:0;}
    .trailer-expand{width:100%;}
  }

  /* ============ HERO POSTER COLLAGES ============ */
  .hero-gallery-layout{width:100%;}
  .hero-gallery-copy{position:relative;z-index:2;container-type:inline-size;}
  .hero-gallery-copy .hero-kicker{font-size:clamp(.68rem,.78vw,.77rem);line-height:1.45;}
  .hero-gallery-copy .hero-copy{max-width:48ch;font-size:clamp(1rem,1.12vw,1.15rem);line-height:1.6;}
  .hero-display-selection,.hero-display-date{
    font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;
    font-weight:700;
    font-variation-settings:normal;
    text-wrap:balance;
    font-size:clamp(1.45rem,8.1cqi,3.55rem);
    line-height:1.12;
    letter-spacing:-.012em;
  }
  .hero-display-selection>span,.hero-display-date>span{display:block;white-space:nowrap;}
  .hero-actions .btn{
    font-family:var(--euff-font-body);
    font-size:clamp(.92rem,1vw,1rem);
    font-weight:750;
    font-variation-settings:"wght" 750;
    letter-spacing:.012em;
    line-height:1.2;
  }
  .poster-collage-shell{position:relative;width:100%;padding:clamp(.75rem,1.6vw,1.25rem);overflow:hidden;background:rgba(255,255,255,.9);border:1px solid rgba(23,74,151,.14);border-radius:calc(var(--euff-radius) + 6px);box-shadow:var(--euff-shadow);}
  .poster-collage-shell::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--euff-blue) 0 52%,var(--euff-gold) 52% 68%,var(--euff-green) 68% 84%,var(--euff-red) 84%);z-index:2;}
  .poster-collage-gold{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(255,249,220,.9));}
  .poster-collage{--poster-collage-gap:clamp(.45rem,.9vw,.8rem);display:flex;flex-wrap:wrap;justify-content:center;gap:var(--poster-collage-gap);align-items:start;padding-top:.25rem;}
  .hero-poster{position:relative;flex:0 0 calc((100% - (3 * var(--poster-collage-gap))) / 4);aspect-ratio:2/3;margin:0;overflow:hidden;background:#DDE5F0;border:1px solid rgba(16,47,99,.12);border-radius:clamp(8px,1vw,13px);box-shadow:0 12px 24px -16px rgba(16,47,99,.72);transform:translateZ(0);transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s ease;}
  .hero-poster:nth-child(even){transform:translateY(clamp(.35rem,.8vw,.75rem));}
  .hero-poster:hover{z-index:3;transform:translateY(-5px) scale(1.035);box-shadow:0 22px 34px -18px rgba(16,47,99,.75);}
  .hero-poster img{display:block;width:100%;height:100%;object-fit:cover;}
  .carousel-item.active .hero-poster{animation:heroPosterIn .65s both cubic-bezier(.2,.7,.2,1);}
  .carousel-item.active .hero-poster:nth-child(2){animation-delay:.04s}.carousel-item.active .hero-poster:nth-child(3){animation-delay:.08s}.carousel-item.active .hero-poster:nth-child(4){animation-delay:.12s}.carousel-item.active .hero-poster:nth-child(5){animation-delay:.16s}.carousel-item.active .hero-poster:nth-child(6){animation-delay:.2s}.carousel-item.active .hero-poster:nth-child(7){animation-delay:.24s}.carousel-item.active .hero-poster:nth-child(8){animation-delay:.28s}
  @keyframes heroPosterIn{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}

  /* Responsive audit fixes */
  .social-links a{min-width:0;}
  .social-links a span{min-width:0;overflow-wrap:anywhere;}
  .faq-page,.legal-page{padding-bottom:0 !important;}
  @media (min-width:1600px){
    .hero-slide-inner{max-width:1440px;}
    .poster-collage-shell{max-width:820px;margin-inline:auto;}
  }
  @media (max-width:1199.98px){
    .hero-gallery-layout{max-width:1100px;margin-inline:auto;}
    .hero-display{font-size:clamp(3rem,6vw,5.2rem);}
  }
  @media (max-width:991.98px){
    .hero-slide-two .hero-slide-inner,.hero-slide-three .hero-slide-inner,.hero-slide-four .hero-slide-inner{min-height:auto;padding-top:7rem;padding-bottom:5.5rem;}
    .nav-book-btn{width:100%;}
    .hero-gallery-copy{max-width:720px;margin-inline:auto;text-align:center;}
    .hero-gallery-copy .hero-kicker,.hero-gallery-copy .hero-actions{justify-content:center;}
    .hero-gallery-copy .hero-copy{margin-inline:auto;}
    .hero-slide-two .hero-copy,.hero-slide-three .hero-copy{text-align:center;}
    .poster-collage-shell{max-width:780px;margin:1.25rem auto 0;}
  }
  @media (max-width:575.98px){
    .hero-slide-two .hero-slide-inner,.hero-slide-three .hero-slide-inner,.hero-slide-four .hero-slide-inner{padding-top:6.2rem;padding-bottom:4.6rem;}
    .hero-gallery-copy .hero-display{font-size:clamp(1.45rem,8.1cqi,3.55rem);line-height:1.12;}
    .hero-gallery-copy .hero-copy{margin-top:1rem;font-size:.98rem;line-height:1.6;}
    .hero-gallery-copy .hero-actions{margin-top:1.15rem;}
    .poster-collage-shell{width:calc(100% + .5rem);margin-left:-.25rem;margin-top:.9rem;padding:.6rem;}
    .poster-collage{gap:.38rem;padding-top:.2rem;}
    .hero-poster{border-radius:7px;}
    .hero-poster:nth-child(even){transform:translateY(.35rem);}
    .hero-poster:hover{transform:none;}
  }
  @media (max-width:359.98px){
    .container{--bs-gutter-x:1.2rem;}
    .nav-brand-logo{width:82px;}
    .nav-edition-logo{width:40px;height:37px;}
    .hero-gallery-copy .hero-display{font-size:clamp(1.4rem,8.1cqi,3.55rem);line-height:1.12;}
    .poster-collage{gap:.25rem;}
    .tab-item{font-size:.53rem;}
  }
  @media (max-height:620px) and (orientation:landscape){
    .hero-slide-inner{min-height:auto;padding-top:6.2rem;padding-bottom:4rem;}
    .hero-content-card{padding:1.25rem;}
    .hero-wordmark{max-width:260px;}
    .hero-copy{margin-top:.8rem;line-height:1.5;}
    .poster-collage-shell{max-width:620px;}
    .hero-gallery-layout{padding-inline:1rem;}
  }

  /* Tighten the first hero slide on small screens and improve footer link legibility. */
  .legal-footer-links{font-family:var(--euff-font-body);font-size:clamp(.94rem,1.2vw,1.02rem);font-weight:650;letter-spacing:.01em;}
  .legal-footer-links a{display:inline-flex;min-height:40px;align-items:center;padding:.35rem .15rem;color:rgba(255,255,255,.9);}
  @media (max-width:575.98px){
    .hero-slide-one .hero-slide-inner{min-height:auto;align-items:flex-start;padding-top:clamp(8.5rem,36vw,9.25rem);padding-bottom:5rem;}
    .hero-slide-one .hero-content-card{margin-top:0;}
  }

  /* Clearer type hierarchy for the information pages. */
  .faq-heading h1,.legal-heading h1{
    max-width:18ch;
    font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;
    font-size:clamp(2.75rem,5.8vw,4.8rem);
    font-weight:800;
    font-variation-settings:"wght" 800;
    line-height:1.06;
    letter-spacing:-.035em;
    text-wrap:balance;
  }
  .faq-heading>p:first-child,.legal-heading>p:first-child{
    margin-bottom:.9rem;
    font-family:var(--euff-font-body);
    font-size:.82rem;
    font-weight:750;
    letter-spacing:.14em;
  }
  .faq-heading>p:last-child,.legal-heading>p:last-child{
    max-width:58ch;
    font-family:var(--euff-font-body);
    font-size:clamp(1.05rem,1.45vw,1.2rem);
    line-height:1.75;
    color:#4D5E78;
  }
  .faq-accordion .accordion-button{
    font-family:"EUFF Acumin","EUFF Helvetica Arabic",sans-serif;
    font-size:clamp(1.1rem,1.4vw,1.25rem);
    font-weight:700;
    font-variation-settings:"wght" 700;
    line-height:1.45;
    letter-spacing:-.012em;
  }
  .faq-accordion .accordion-body{
    font-family:var(--euff-font-body);
    font-size:1.06rem;
    line-height:1.85;
  }
  .legal-copy h2{
    font-family:"EUFF Helvetica Arabic","EUFF Acumin",sans-serif;
    font-size:clamp(1.28rem,1.7vw,1.52rem);
    font-weight:700;
    line-height:1.32;
  }
  .legal-copy p{
    font-family:var(--euff-font-body);
    font-size:clamp(1.03rem,1.15vw,1.12rem);
    line-height:1.85;
    text-wrap:pretty;
  }
  .faq-page .navbar .btn,.legal-page .navbar .btn{
    font-family:var(--euff-font-body);
    font-size:.92rem;
    font-weight:700;
    letter-spacing:.005em;
  }
  .faq-footer .container{font-family:var(--euff-font-body);font-size:.94rem;line-height:1.65;}
  .about-links[aria-label="Arabia Pictures links"] a{
    color:#C91F2C;
    border-color:rgba(239,43,52,.24);
    background:#FFF5F5;
  }
  .about-links[aria-label="Arabia Pictures links"] a:hover,
  .about-links[aria-label="Arabia Pictures links"] a:focus-visible{
    color:#FFFFFF;
    border-color:#C91F2C;
    background:#C91F2C;
  }
  @media (min-width:992px){
    .about-links{flex-wrap:nowrap;gap:.35rem;font-size:.64rem;}
    .about-links a{min-width:0;gap:.35rem;padding:.45rem .52rem;white-space:nowrap;}
    .about-links a i{width:.85rem;font-size:.82rem;}
  }
  @media (max-width:575.98px){
    .faq-heading h1,.legal-heading h1{font-size:clamp(2.35rem,10vw,3.2rem);line-height:1.08;}
    .faq-accordion .accordion-button{padding:1.2rem 1.1rem;}
    .faq-accordion .accordion-body{padding:0 1.1rem 1.35rem;font-size:1.02rem;}
    .legal-copy h2{font-size:1.3rem;}
    .legal-copy p{font-size:1.02rem;line-height:1.8;}
  }

  /* Final readability and interaction polish across the site. */
  .hero-copy,.section-heading-copy,.about-copy,.side-event-description,
  .legal-copy p,.faq-accordion .accordion-body{ text-wrap:pretty; }
  .about-section .about-copy,.side-event-description{text-align:justify;text-justify:inter-word;}
  .section-heading-block,.legal-copy,.faq-accordion,.side-event-card,
  .about-card-layout,.film-card,.programme-card{scroll-margin-top:6rem;}
  .btn:focus-visible,.nav-link:focus-visible,.day-btn:focus-visible,
  .filter-btn:focus-visible,.about-links a:focus-visible,.social-links a:focus-visible{
    outline:3px solid var(--euff-red);
    outline-offset:3px;
    box-shadow:0 0 0 5px rgba(230,51,59,.14);
  }
  @media (max-width:575.98px){
    body{line-height:1.68;}
    .hero-copy,.section-heading-copy,.about-copy,.side-event-description,
    .legal-copy p,.faq-accordion .accordion-body{line-height:1.75;}
  }
