:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;background:#080f1e;color:#fff}*{box-sizing:border-box}body{margin:0}button,a,input,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffcf94;outline-offset:4px}[hidden]{display:none!important}.setup{max-width:1460px;margin:auto;padding:38px 5vw 22px}.back-link{color:#d8c09a;text-decoration:none;font-size:13px}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin:46px 0 38px;align-items:center}.eyebrow{color:#dfc396;letter-spacing:.17em;font-size:11px;margin:0 0 28px}.setup h1{font-weight:500;letter-spacing:-.055em;font-size:clamp(42px,5.4vw,78px);line-height:1.03;margin:0}.setup h1 em{font-style:normal;color:#eed2a5}.intro{color:#aeb9c8;max-width:430px;font-size:16px;line-height:1.6;margin:26px 0 30px}form{max-width:430px}form>label{display:block;font-size:12px;letter-spacing:.04em;margin:20px 0 9px}select,input:not([type=checkbox]){width:100%;background:#141f30;color:white;border:1px solid #344050;border-radius:6px;padding:14px 16px;font-size:16px}#callsign{letter-spacing:.13em;text-transform:uppercase}.field-help,.setup-note{color:#95a1b2;font-size:12px;line-height:1.5}.fullscreen-choice{display:flex;align-items:center;gap:9px;color:#c8d0da}.fullscreen-choice input{accent-color:#ebc991;width:17px;height:17px}.start{display:flex;justify-content:space-between;align-items:center;width:100%;padding:18px 22px;border:0;border-radius:6px;background:#efd3a6;color:#111c2b;font-weight:bold;font-size:13px;letter-spacing:.1em}.start:hover{background:#ffdfad}.start span{font-size:21px}.setup-note{margin-top:19px}#formError:empty{display:none}#formError{color:#ffb2a6;font-size:13px}.setup-photo{position:relative;min-height:560px;height:70vh;max-height:760px;overflow:hidden;border-radius:10px;background:#145ba3}.setup-photo>img:first-child{width:100%;height:100%;object-fit:cover}.setup-photo:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#06101bc9)}.photo-brand{position:absolute;right:7%;top:7%;width:55%;filter:brightness(0) invert(1);z-index:1}.photo-caption{position:absolute;left:9%;right:5%;bottom:10%;z-index:2;display:flex;flex-direction:column;gap:11px}.photo-caption>span:first-child{font-size:10px;letter-spacing:.16em;margin-bottom:15px}.photo-caption strong{font-size:clamp(23px,2.8vw,40px);letter-spacing:-.035em}.photo-caption>span:last-child{font-size:16px}.photo-dots{position:absolute;width:140px;height:210px;right:-27px;bottom:-10px;background:radial-gradient(circle,#f7a06c 39%,transparent 41%) 0 0/60px 60px;z-index:2}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #243041;padding-top:20px;letter-spacing:.12em;font-size:9px;color:#c2ab8b}footer span{letter-spacing:.03em;color:#8592a4}.ife{height:100dvh;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.stage{width:min(100vw,calc((100dvh - 34px)*16/9));aspect-ratio:16/9;position:relative;background:#04359b;container-type:inline-size;overflow:hidden}:is(.ife:fullscreen,.ife.immersive) .stage{width:min(100vw,calc(100dvh * 16/9))}:is(.ife:fullscreen,.ife.immersive) .ife-outside{position:absolute;bottom:0;opacity:0;transition:opacity .2s;z-index:10;background:#0009}:is(.ife:fullscreen,.ife.immersive) .ife-outside:focus-within,:is(.ife:fullscreen,.ife.immersive) .ife-outside:hover{opacity:1}.ife-outside{height:34px;width:100%;display:flex;align-items:center;justify-content:space-between;color:#aaa;font-size:11px;padding:0 14px;gap:10px}.ife-outside button{border:0;background:transparent;color:#c3c3c3;font-size:11px;white-space:nowrap}.ife-outside>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ife-toolbar{height:6.8cqw;max-height:9.7%;position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;background:#191930e8;z-index:3;padding:0 1.5cqw;color:white}#seat{font-size:3cqw;font-weight:600}#navigation{display:flex;align-items:center;gap:.7cqw}#navigation button{border:0;color:white;background:transparent;font-size:1.3cqw;padding:1cqw .25cqw;display:flex;align-items:center;gap:.6cqw;min-height:36px}#navigation button:hover{background:#ffffff1c}#navigation svg{width:2.2cqw;height:2.2cqw}.toolbar-icons{display:flex;height:100%;align-items:center;gap:.4cqw}.toolbar-icons>span{display:grid;place-items:center;width:5.1cqw;height:78%;background:#ffffff0c}.toolbar-icons svg{width:2.25cqw;height:2.25cqw}.home-extra{display:none!important}.stage[data-screen=home] .home-extra,.stage[data-screen=map] .home-extra{display:grid!important}.screen{position:absolute;inset:9.7% 0 0;overflow:hidden}.welcome{width:100%;height:90.3%;border:0;padding:0;text-align:left;color:white;background:#42a4d1 url('./atomium.jpg') center 48%/cover no-repeat}.welcome:after{position:absolute;content:'';inset:48% 0 0;background:linear-gradient(transparent,#00102677)}.welcome-city{position:absolute;top:8%;left:6%;font-size:1.8cqw;font-weight:bold}.welcome-brand{position:absolute;right:4%;top:4%;width:28%;filter:brightness(0) invert(1)}.welcome-copy{position:absolute;bottom:6%;left:6%;z-index:2;display:flex;flex-direction:column;gap:1.35cqw}.welcome-copy strong{font-size:5cqw;font-weight:700;letter-spacing:-.04em}.welcome-copy>span{font-size:2.7cqw}.welcome-copy small{font-size:1.15cqw;letter-spacing:.07em;opacity:.85;margin-top:.2cqw}.dots{position:absolute;background:radial-gradient(circle,var(--dot) 42%,transparent 44%) 0 0/9cqw 9cqw;pointer-events:none}.dots-blue{--dot:#00a9dc;left:-5%;top:0;width:28%;height:57%;clip-path:polygon(0 0,30% 0,30% 23%,100% 23%,100% 60%,50% 60%,50% 100%,0 100%)}.dots-peach{--dot:#ffab7e;right:-6%;bottom:-7%;width:36%;height:43%;clip-path:polygon(65% 0,100% 0,100% 100%,0 100%,0 68%,65% 68%)}.menu,.home{background:radial-gradient(ellipse at 35% 70%,#1254d5 0,transparent 65%),linear-gradient(125deg,#152577,#0032a4 80%)}.menu:before,.home:before{content:'';position:absolute;inset:-12%;pointer-events:none;background:radial-gradient(circle at 6% 86%,#0073ff 0 3%,transparent 3.2%),radial-gradient(circle at 18% 72%,#005cff 0 3%,transparent 3.2%),radial-gradient(circle at 31% 80%,#0076ff 0 3%,transparent 3.2%),radial-gradient(circle at 68% 18%,#0069ff 0 3%,transparent 3.2%),radial-gradient(circle at 80% 12%,#0065ff 0 5%,transparent 5.2%),radial-gradient(circle at 91% 18%,#0063ff 0 4%,transparent 4.2%),radial-gradient(circle at 77% 43%,#005bff 0 3%,transparent 3.2%),radial-gradient(circle at 66% 41%,#0069ff 0 3%,transparent 3.2%)}.stage[data-screen=menu] .ife-toolbar{background:#0e288bd9}.menu-close{position:absolute;right:3%;top:1%;font-size:5cqw;line-height:1}.menu-items{position:relative;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);width:76%;height:94%;margin:0 auto;gap:.5cqw 1.2cqw;align-items:center}.menu-tile{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.3cqw;text-align:center;border:0;background:transparent;color:white;font-size:1.55cqw;line-height:1.25;min-height:10cqw;padding:.7cqw}.menu-tile svg{width:6.1cqw;height:6.1cqw}.menu-tile:not(button){cursor:default}.menu-tile button{all:inherit}.menu-tile:first-child:hover{background:#ffffff14;border-radius:.7cqw}.menu-tile .brand-disney{font-family:cursive;font-size:3.2cqw;font-style:italic}.menu-tile .brand-f1{font-size:3.5cqw;font-weight:900;font-style:italic;color:#ff2323;letter-spacing:-.45cqw}.home{display:flex}.categories{position:relative;flex:0 0 27%;display:flex;flex-direction:column;background:#252d48ed;padding:0 1.9cqw 1.2cqw}.categories>span{font-size:1.35cqw;padding:1.65cqw .4cqw;border-bottom:1px solid #a6b6bd}.categories .selected{background:#00b5e5;border:0;margin:0 -1.9cqw .4cqw;padding:1.8cqw 2.3cqw;font-size:1.45cqw}.categories .filter{margin-top:auto;border-top:1px solid #aaa;border-bottom:0;padding-bottom:0;font-size:1.3cqw;text-align:center}.movie-grid{position:relative;flex:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:min-content;gap:1.5cqw 1.3cqw;padding:2.4cqw 3.1cqw 2cqw 2.2cqw;overflow:hidden}.movie{min-width:0;font-size:1.18cqw;line-height:1.22}.poster{width:100%;aspect-ratio:.65;background-image:url('./catalogue-reference.png');background-repeat:no-repeat;border-radius:.35cqw;margin-bottom:.55cqw;position:relative;background-color:#1e3b89}.poster:after{content:'☆';position:absolute;right:.25cqw;top:.1cqw;color:white;font-size:1.4cqw;text-shadow:0 1px 3px #000}.movie strong{font-weight:500;display:block}.movie small{font-size:1.1cqw}.scroll-indicator{position:absolute;right:1%;top:3.5%;width:.7cqw;height:4cqw;background:white;border-radius:.5cqw}.moving-map{background:#081c2a}.map-world{position:absolute;height:100%;aspect-ratio:1;left:50%;transform:translateX(-50%);overflow:hidden;background:#061622}.tiles{position:absolute;inset:0}.tiles img{position:absolute;width:12.5%;height:12.5%;image-rendering:auto}.aircraft{position:absolute;left:0;top:0;width:3.5cqw;height:3.5cqw;min-width:23px;min-height:23px;color:#fff;filter:drop-shadow(0 1px 3px #000);z-index:1;will-change:transform}.aircraft svg{width:100%;height:100%}.map-caption{position:absolute;bottom:3.6cqw;left:2cqw;right:2cqw;color:white;display:flex;justify-content:space-between;font-size:1.4cqw;text-shadow:0 1px 4px #000}.map-caption>span{background:#041424c9;border-radius:3px;padding:.7cqw}.attribution{position:absolute;bottom:.5cqw;right:1cqw;color:#d6dfe7;font-size:.8cqw;text-decoration:none}#tileStatus{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:1.4cqw;background:#06101ddb;padding:.75cqw;border-radius:3px;pointer-events:none}#tileStatus:empty{display:none}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media(max-width:760px){.setup{padding:24px}.setup-grid{grid-template-columns:1fr;margin-top:35px;gap:32px}.setup h1{font-size:52px}.setup-photo{height:300px;min-height:300px;grid-row:1}.setup-photo .photo-caption strong{font-size:26px}.photo-brand{width:45%;top:9%}.setup-copy .intro{margin-top:20px}form{max-width:none}footer{font-size:8px}.ife-outside{font-size:9px;padding:0 7px}.ife-outside button{font-size:10px}}

/* Whole brand dots: only the outer screen edge clips a circle. */
.dots-blue{left:-4%;top:0;width:28%;height:70%;clip-path:none;background:radial-gradient(circle at 12% 8%,#00a9dc 0 3cqw,transparent 3.1cqw),radial-gradient(circle at 48% 28%,#00a9dc 0 2.8cqw,transparent 2.9cqw),radial-gradient(circle at 82% 28%,#00a9dc 0 2.8cqw,transparent 2.9cqw),radial-gradient(circle at 10% 48%,#00a9dc 0 3.3cqw,transparent 3.4cqw),radial-gradient(circle at 49% 51%,#00a9dc 0 2.7cqw,transparent 2.8cqw),radial-gradient(circle at 13% 78%,#00a9dc 0 2.7cqw,transparent 2.8cqw)}
.dots-peach{right:-3%;bottom:-7%;width:36%;height:43%;clip-path:none;background:radial-gradient(circle at 96% 15%,#ffab7e 0 3cqw,transparent 3.1cqw),radial-gradient(circle at 79% 45%,#ffab7e 0 3cqw,transparent 3.1cqw),radial-gradient(circle at 96% 53%,#ffab7e 0 2.7cqw,transparent 2.8cqw),radial-gradient(circle at 22% 91%,#ffab7e 0 2.7cqw,transparent 2.8cqw),radial-gradient(circle at 45% 91%,#ffab7e 0 2.7cqw,transparent 2.8cqw),radial-gradient(circle at 68% 91%,#ffab7e 0 2.7cqw,transparent 2.8cqw),radial-gradient(circle at 91% 91%,#ffab7e 0 2.7cqw,transparent 2.8cqw)}
.start span{font-family:Arial,sans-serif;font-size:0}.start span:after{content:'→';font-size:23px}

/* Power returns to the FS Moving Map landing page. */
.toolbar-icons>button{display:grid;place-items:center;width:5.1cqw;height:78%;border:0;background:#ffffff0c;color:white;cursor:pointer;padding:0}
.toolbar-icons>button svg{width:2.25cqw;height:2.25cqw}
.toolbar-icons>button:hover{background:#ffffff2c}

.stage[data-screen=menu] #mapButton{display:none}
.menu-close{border:0;background:transparent;color:white;cursor:pointer;z-index:4}
.arrival-screen{background:linear-gradient(180deg,rgba(1,19,59,.13),rgba(0,11,42,.68)),url('./chicago-ord.jpg') center/cover no-repeat,#356b91;color:white}
.arrival-screen[data-destination="BRU"]{background-image:linear-gradient(180deg,rgba(1,19,59,.13),rgba(0,11,42,.68)),url('./atomium.jpg')}
.arrival-brandline{position:absolute;top:4%;right:5%;width:26%}
.arrival-brandline img{width:100%;filter:brightness(0) invert(1)}
.arrival-message{position:absolute;left:7%;bottom:12%;right:7%;text-shadow:0 2px 11px #14233d}
.arrival-message>p:first-child{font-size:1.6cqw;letter-spacing:.14em}
.arrival-message h1{font-size:5.2cqw;letter-spacing:-.035em;margin:1cqw 0}
.arrival-message>p:last-child{font-size:2.2cqw;margin:0}
.welcome[data-destination="ORD"]{background-image:url('./chicago-ord.jpg');background-color:#276da6}

/* Destination-specific IFE welcome imagery. Empty/unknown destinations use blue branding. */
.welcome[data-destination="BRU"]{background:#2c75aa url('./atomium.jpg') center 48%/cover no-repeat}
.welcome[data-destination="ORD"]{background:#276da6 url('./chicago-ord.jpg') center/cover no-repeat}
.welcome[data-destination="CKY"]{background:#305e36 url('./conakry-cky.webp') center/cover no-repeat}
.welcome[data-destination="GENERIC"]{background:radial-gradient(circle at 23% 20%,#2a7cc9,#052c78 76%)}
.welcome[data-destination="GENERIC"] .welcome-brand{filter:brightness(0) invert(1)}
/* Full-bleed remote IFE mode on a Raspberry Pi kiosk (including 16:10 displays). */
.pi-remote .ife{width:100vw;height:100dvh;max-width:none}
.pi-remote .ife .stage,.pi-remote :is(.ife:fullscreen,.ife.immersive) .stage{width:100vw;height:100dvh;aspect-ratio:auto}
.pi-remote .ife-outside{display:none!important}
.pi-remote .stage{margin:0}

/* Windowed IFE: slim glass display in a light economy seat shell, Ocean Blue inspired. */
.ife{isolation:isolate;position:relative;background:radial-gradient(ellipse at 50% 26%,#dce4eb 0,#afbecb 53%,#74899e 100%);padding:48px 38px 52px}
.seatback-display{position:relative;isolation:isolate;flex:none;width:min(calc(100vw - 92px),calc((100dvh - 112px)*16/9));padding:6px;border:1px solid #6d7883;border-radius:12px;background:linear-gradient(135deg,#26303b,#080b10 50%,#19202a);box-shadow:0 2px 1px #f9fdff90,inset 0 0 0 1px #000,0 7px 12px #25344466,0 22px 45px #263b5360}
.seatback-display:before{content:'';position:absolute;z-index:-2;inset:-19px -23px -36px;border-radius:39px 39px 34px 34px;background:linear-gradient(110deg,#e8edf1,#c8d0d9 36%,#aeb9c5 78%,#d7dfe6);border:1px solid #eef2f5;box-shadow:inset 6px 2px 9px #ffffffad,inset -5px -5px 10px #6c798673,0 4px 18px #374f6a45}
.seatback-display:after{content:'';position:absolute;z-index:-1;top:-31px;left:2%;right:2%;height:22px;border-radius:24px 24px 9px 9px;background:linear-gradient(#33435e,#18263f);box-shadow:inset 0 2px 2px #71809b66,0 2px 4px #26314366}
.seatback-display .stage{width:100%;aspect-ratio:16/9;border-radius:5px}
.ife-outside{position:absolute;bottom:0;left:0;right:0;height:34px;background:#102137c9;color:#e3eaf1;z-index:10}
.ife-outside button{color:#fff}

/* Fullscreen and Pi use the actual display edge; there is no simulated hardware. */
:is(.ife:fullscreen,.ife.immersive),.pi-remote .ife{padding:0;background:#000}
:is(.ife:fullscreen,.ife.immersive) .seatback-display,.pi-remote .seatback-display{width:100%;height:100%;padding:0;border:0;border-radius:0;box-shadow:none;background:#000}
:is(.ife:fullscreen,.ife.immersive) .seatback-display:before,:is(.ife:fullscreen,.ife.immersive) .seatback-display:after,.pi-remote .seatback-display:before,.pi-remote .seatback-display:after{display:none}
:is(.ife:fullscreen,.ife.immersive) .stage,.pi-remote .ife .stage{width:100%;height:100%;aspect-ratio:auto;border-radius:0}

/* Crisp HTML typography and logo over a reconstructed reference cloudscape. */
.arrival-screen{color:#26296c;background:#e7eef0 url('./arrival-clouds.webp') center/cover no-repeat}
.arrival-brandline{position:absolute;width:27%;top:7%;right:5%;z-index:2}
.arrival-brandline img{width:100%;filter:none}
.arrival-message{bottom:9%;left:6%;right:6%;text-shadow:none;z-index:2}
.arrival-message h1{font-size:4.65cqw;line-height:1.14;font-weight:700;letter-spacing:-.025em;margin:0 0 1.5cqw}
.arrival-message>p:last-child{font-size:2.4cqw;line-height:1.2;letter-spacing:-.015em;color:#303b4e;margin:0}
.arrival-dots{position:absolute;pointer-events:none;background:radial-gradient(circle at 50% 50%,#f7f5ecdd 0 48%,transparent 49%) 0 0/8.3cqw 8.3cqw}
.arrival-dots-left{left:-4cqw;top:38%;width:16.6cqw;height:16.6cqw;clip-path:polygon(0 0,100% 0,100% 50%,50% 50%,50% 100%,0 100%)}
.arrival-dots-right{right:-3.8cqw;bottom:-4.5cqw;width:25cqw;height:17cqw;clip-path:polygon(33% 0,100% 0,100% 100%,0 100%,0 50%,33% 50%)}
@media(max-width:600px){.ife{padding:32px 20px 45px}.seatback-display{width:min(calc(100vw - 42px),calc((100dvh - 90px)*16/9));padding:4px;border-radius:8px}.seatback-display:before{inset:-12px -12px -23px;border-radius:23px}.seatback-display:after{top:-21px;height:15px}.ife-outside #connection{max-width:42%}}

/* Narrow black glass edge and the airline's two-colour mark on the light end card. */
.seatback-display .stage{box-shadow:0 0 0 6px #0a0d12}
:is(.ife:fullscreen,.ife.immersive) .stage,.pi-remote .ife .stage{box-shadow:none}
.stage[data-screen=arrival] .toolbar-icons{margin-left:auto}
.arrival-brandline{background:linear-gradient(90deg,#272968 0 76%,#e5233d 76% 100%);-webkit-mask:url('./brussels-logo.png') center/contain no-repeat;mask:url('./brussels-logo.png') center/contain no-repeat}
.arrival-brandline img{display:block;opacity:0}
@media(max-width:600px){.seatback-display .stage{box-shadow:0 0 0 4px #0a0d12}:is(.ife:fullscreen,.ife.immersive) .stage,.pi-remote .ife .stage{box-shadow:none}}

/* Safety playback fills the entire display, including the usual toolbar area. */
.stage[data-screen=safety] .ife-toolbar{display:none}
.safety-screen{inset:0;display:flex;flex-direction:column;background:#000;z-index:4}
.safety-player{position:relative;flex:1;min-height:0}
.safety-player iframe{display:block;position:absolute;inset:0;width:100%;height:100%;border:0}
.safety-notice{flex:none;background:#121b2c;padding:16px 20px;text-align:center;font-size:clamp(12px,1.3cqw,18px)}
.safety-notice p{margin:0 0 12px;color:#e4eaf3}
.safety-notice>div{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.safety-notice button,.safety-notice a{border:1px solid #51627a;border-radius:5px;padding:9px 14px;background:#1e304b;color:#fff;text-decoration:none}
.safety-notice #safetyPlay{background:#efd3a6;color:#111c2b;border-color:#efd3a6;font-weight:bold}

/* Airline appearance is independent of the shared IFE navigation and flight state. */
.iceland-start{display:none}
html[data-airline=icelandair] .photo-dots{display:none}
html[data-airline=icelandair] .photo-brand{filter:none}
html[data-airline=icelandair] .ife-toolbar{background:#1c2025}
html[data-airline=icelandair] .toolbar-icons>span,html[data-airline=icelandair] .toolbar-icons>button{background:#ffffff16}
html[data-airline=icelandair] #welcome{background:#045e7f url('./icelandair-welcome.webp') center/cover no-repeat}
html[data-airline=icelandair] .welcome-city,html[data-airline=icelandair] .welcome-copy,html[data-airline=icelandair] .dots,html[data-airline=icelandair] .welcome:after{display:none}
html[data-airline=icelandair] .welcome-brand{left:3%;right:auto;top:7%;width:27%;filter:none}
html[data-airline=icelandair] .iceland-start{position:absolute;right:4%;bottom:11%;display:flex;align-items:center;gap:1.5cqw;font-size:4cqw;font-weight:400;letter-spacing:.02em;text-shadow:0 1px 4px #173a45}
.iceland-start svg{width:1.7cqw;height:3cqw;fill:none;stroke:currentColor;stroke-width:3}
html[data-airline=icelandair] .stage[data-screen=menu] .ife-toolbar{display:none}
html[data-airline=icelandair] .menu{inset:0;background:radial-gradient(ellipse at 10% 100%,#006dff55,transparent 56%),linear-gradient(120deg,#0055dc,#0045bd)}
html[data-airline=icelandair] .menu:before,html[data-airline=icelandair] .home:before{display:none}
html[data-airline=icelandair] .menu-items{grid-template-rows:repeat(2,1fr);width:72%;height:64%;margin:8% auto 0;gap:1.7cqw 1.5cqw;align-items:start}
html[data-airline=icelandair] .menu-tile{font-size:1.3cqw;gap:1.2cqw;min-height:11cqw}
html[data-airline=icelandair] .menu-tile svg,html[data-airline=icelandair] .menu-tile img{width:5.6cqw;height:5.6cqw;object-fit:contain}
html[data-airline=icelandair] .menu-close{top:3%;right:3%;font-size:4.4cqw}
html[data-airline=icelandair] .home{background:#e5e9e5 url('./icelandair-mountains.webp') center/cover no-repeat}
html[data-airline=icelandair] .categories{background:#13191ceF}
html[data-airline=icelandair] .categories .selected{background:#d75dc9}
html[data-airline=icelandair] .movie{color:#2e3e49}
html[data-airline=icelandair] .movie-grid{padding-top:1.8cqw;gap:1.2cqw 1.6cqw}
html[data-airline=icelandair] .movie small{color:#53616d}
html[data-airline=icelandair] .poster{border-radius:0}
html[data-airline=icelandair] .poster:before{content:'';position:absolute;right:0;top:0;border-top:2.6cqw solid #1d304b;border-left:2.6cqw solid transparent}
html[data-airline=icelandair] .poster:after{color:#efda58;text-shadow:none}
html[data-airline=icelandair] .scroll-indicator{background:#677b8a80}
html[data-airline=icelandair] .arrival-screen{background:#103eb4 url('./icelandair-aurora.webp') center/cover no-repeat;color:white}
html[data-airline=icelandair] .arrival-dots{display:none}
html[data-airline=icelandair] .arrival-brandline{top:auto;bottom:4%;right:4%;width:21%;background:none;-webkit-mask:none;mask:none}
html[data-airline=icelandair] .arrival-brandline img{opacity:1;filter:none}
html[data-airline=icelandair] .arrival-message{top:39%;bottom:auto;left:5%;right:5%;text-align:center;text-shadow:0 1px 7px #10366555}
html[data-airline=icelandair] .arrival-message h1{font-size:4.1cqw;line-height:1.2;font-weight:500;letter-spacing:-.025em;margin:0 0 1.4cqw}
html[data-airline=icelandair] .arrival-message>p:last-child{font-size:2cqw;color:white;letter-spacing:0}

/* Icelandair's reference catalogue has eight genre rows and no visible runtimes. */
html[data-airline=icelandair] .categories{flex-basis:23%}
html[data-airline=icelandair] .categories>span{padding:1.15cqw .4cqw}
html[data-airline=icelandair] .categories .selected{padding:1.6cqw 2.3cqw}
html[data-airline=icelandair] .categories .filter{padding-top:1cqw;padding-bottom:0}
html[data-airline=icelandair] .movie-grid{padding:2.2cqw 3.1cqw 2cqw 2.5cqw;column-gap:1.6cqw;row-gap:1.6cqw;grid-auto-rows:minmax(0,1fr)}
html[data-airline=icelandair] .movie strong{font-size:1.12cqw;line-height:1.15}
html[data-airline=icelandair] .poster{aspect-ratio:.7}

/* The airline-selection preview uses Icelandair's English aurora welcome card. */
html[data-airline=icelandair] .setup-photo:after{display:none}
html[data-airline=icelandair] .setup-photo .photo-brand{top:auto;right:6%;bottom:6%;width:42%}
html[data-airline=icelandair] .setup-photo .photo-caption{left:6%;right:6%;top:42%;bottom:auto;text-align:center;gap:14px}
html[data-airline=icelandair] .setup-photo #setupPlace{display:none}
html[data-airline=icelandair] .setup-photo .photo-caption strong{font-size:clamp(23px,2.6vw,38px);letter-spacing:-.035em}
html[data-airline=icelandair] .setup-photo .photo-caption>span:last-child{font-size:clamp(12px,1.2vw,17px);line-height:1.35}

.attribution a{color:inherit;text-decoration:none}

/* SWISS is a separate software application, not another skin of Brussels / Icelandair IFE. */
html[data-airline=swiss] .setup-photo:after{background:linear-gradient(180deg,transparent 12%,#0c1e3144 100%)}
html[data-airline=swiss] .photo-dots{display:none}
html[data-airline=swiss] .setup-photo .photo-brand{top:7%;bottom:auto;right:6%;width:38%;filter:drop-shadow(0 1px 2px #ffffffaa)}
html[data-airline=swiss] .setup-photo .photo-caption{left:6%;bottom:8%;top:auto;color:white;text-shadow:0 1px 6px #182a3b}
html[data-airline=swiss] .setup-photo .photo-caption strong{font-size:clamp(24px,2.3vw,37px);font-weight:400;letter-spacing:-.035em}
html[data-airline=swiss] .setup-photo #setupPlace{font-weight:700;letter-spacing:.18em}
