@font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: italic; font-weight: 400; src: url(noto-ikea-400i.latin-ext.5f8f91ea.woff2) format("woff2"); unicode-range:u + 0100-024f, u + 0259, u + 1e??, u + 2020, u + 20a0-20ab, u + 20ad-20cf, u + 2113, u + 2c60-2c7f, u + a720-a7ff } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: italic; font-weight: 400; src: url(noto-ikea-400i.latin.10395910.woff2) format("woff2"); unicode-range:u + 00??, u + 0131, u + 0152-0153, u + 02bb-02bc, u + 02c6, u + 02da, u + 02dc, u + 2000-206f, u + 2074, u + 20ac, u + 2122, u + 2191, u + 2193, u + 2212, u + 2215, u + feff, u + fffd } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: italic; font-weight: 700; src: url(noto-ikea-700i.latin-ext.3637155a.woff2) format("woff2"); unicode-range:u + 0100-024f, u + 0259, u + 1e??, u + 2020, u + 20a0-20ab, u + 20ad-20cf, u + 2113, u + 2c60-2c7f, u + a720-a7ff } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: italic; font-weight: 700; src: url(noto-ikea-700i.latin.29eb18bb.woff2) format("woff2"); unicode-range:u + 00??, u + 0131, u + 0152-0153, u + 02bb-02bc, u + 02c6, u + 02da, u + 02dc, u + 2000-206f, u + 2074, u + 20ac, u + 2122, u + 2191, u + 2193, u + 2212, u + 2215, u + feff, u + fffd } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: normal; font-weight: 400; src: url(noto-ikea-400.latin-ext.edd421f4.woff2) format("woff2"); unicode-range:u + 0100-024f, u + 0259, u + 1e??, u + 2020, u + 20a0-20ab, u + 20ad-20cf, u + 2113, u + 2c60-2c7f, u + a720-a7ff } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: normal; font-weight: 400; src: url(noto-ikea-400.latin.647e877d.woff2) format("woff2"); unicode-range:u + 00??, u + 0131, u + 0152-0153, u + 02bb-02bc, u + 02c6, u + 02da, u + 02dc, u + 2000-206f, u + 2074, u + 20ac, u + 2122, u + 2191, u + 2193, u + 2212, u + 2215, u + feff, u + fffd } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: normal; font-weight: 700; src: url(noto-ikea-700.latin-ext.97f0d455.woff2) format("woff2"); unicode-range:u + 0100-024f, u + 0259, u + 1e??, u + 2020, u + 20a0-20ab, u + 20ad-20cf, u + 2113, u + 2c60-2c7f, u + a720-a7ff } @font-face { font-display: swap; font-family: 'Noto IKEA'; font-style: normal; font-weight: 700; src: url(noto-ikea-700.latin.d7277c39.woff2) format("woff2"); unicode-range:u + 00??, u + 0131, u + 0152-0153, u + 02bb-02bc, u + 02c6, u + 02da, u + 02dc, u + 2000-206f, u + 2074, u + 20ac, u + 2122, u + 2191, u + 2193, u + 2212, u + 2215, u + feff, u + fffd } :root { --clr-white: #fff; --clr-black: #000; --clr-bumblebee: #F0B902; --ff-ikea: "Noto IKEA", "Noto Sans", "Roboto", "Open Sans", system-ui, sans-serif; --shadow: 0px 0px 10px 2px rgba(0,0,0,0.1); --fs-base: 1.6rem; --fs-lg: 1.8rem; --fs-xl: 2.8rem; --fs-2xl: 3.1rem; --fs-3xl: 5.6rem; --flip-deg: 0deg; --flip-scale: 1; --flip-rotate: 0deg; font: 10px/1.3 var(--ff-ikea); } body { background-color: var(--clr-bumblebee); color: var(--clr-black); margin: 0; display: flex; flex-direction: column; gap: 0; min-height: 100svh; position: relative; -webkit-font-smoothing: antialiased; touch-action: manipulation; } ul[class] { margin: 0 auto; padding: 0; list-style: none; } img.fade-in { opacity: 0; transition: opacity 0.4s ease-in; &.loaded { opacity: 1; } } header { display: flex; justify-content: space-between; align-items: center; margin: 1rem; & svg { width: 70px; height: auto; } & div { line-height: 1.3; font-size: 1.6rem; text-align: right; } & span { font-weight: 700; font-style: italic; &::before { content: ' '; display: block; } } } main { margin: 0 1rem; flex-grow: 1; } footer { font-size: 1.2rem; line-height: 1.2; margin: 1rem; font-family: var(--ff-ikea); } .msg__container { & h1 { margin: 0 0 0.4375em 0; line-height: 1.1; font-size: var(--fs-3xl); font-weight: 700; overflow-wrap: break-word; word-wrap: break-word; hyphens: auto; &:has(em) { font-weight: 400; & em { font-weight: 700; } } } & > div:not([class]) { margin: 0; line-height: 1.2; font-size: var(--fs-lg); font-weight: 400; & + div:not([class]) { margin-top: 1.2em; } } } .form__container { margin: 40px auto; } .msg__container { max-width: 440px; margin: 40px auto 40px auto; container-type: inline-size; container-name: startbar; } @container startbar (min-width: 400px) { h1, p, div { text-align: center; } } .language__selector-select { position: relative; margin-bottom: 16px; &::after { content: ''; position: absolute; width: 13.59px; height: 18.27px; right: 33px; height: 100%; pointer-events: none; background-image: url('ico-arrow-down.svg'); background-repeat: no-repeat; background-position: center center; } & select { width: 100%; appearance: none; box-sizing: border-box; background-color: transparent; border: 2px solid var(--clr-black); font-size: var(--fs-lg); font-weight: 700; font-family: var(--ff-ikea); line-height: 1.2; height: 60px; color: var(--clr-black); padding: 0.888888888888889em 1.333333333333333em; border-radius: 400px; } } .button__base { appearance: none; background-color: var(--clr-black); border: 2px solid var(--clr-black); color: var(--clr-white); font-size: var(--fs-lg); font-family: var(--ff-ikea); font-weight: 700; line-height: 1.2; height: 60px; border-radius: 400px; width: 100%; cursor: pointer; text-decoration: none; display: inline-block; text-align: center; box-sizing: border-box; padding: 0.888888888888889em 1.333333333333333em; } .button__base-light { background-color: transparent; color: var(--clr-black); } .reveal__container { background-color: var(--clr-black); border-radius: 400px; position: relative; height: 62px; --opacity: 1.0; &::before { content: attr(data-label); color: var(--clr-white); position: absolute; font-size: var(--fs-lg); font-weight: 700; top: 50%; left: 50%; z-index: inherit; transform: translate(-50%, -50%); opacity: var(--opacity); } & input { position: absolute; inset: 0 0 0 0; margin: 0; } } input[type=range] { appearance: none; width: 100%; background-color: transparent; height: 62px; box-sizing: border-box; border: 8px solid transparent; } ::-webkit-slider-thumb { appearance: none; width: 46px; height: 46px; border-radius: 50%; background-color: var(--clr-white); cursor: pointer; background-image: url('ico-arrow-right.svg'); background-repeat: no-repeat; background-position: center center; background-size: 42px 42px; border: none; } ::-moz-range-thumb { width: 46px; height: 46px; border-radius: 50%; background-color: var(--clr-white); cursor: pointer; background-image: url('ico-arrow-right.svg'); background-repeat: no-repeat; background-position: center center; background-size: 42px 42px; border: none; } .icon__container { position: absolute; z-index: -1; inset: 0 0 0 0; overflow: hidden; & img { position: absolute; z-index: -1; pointer-events: none; display: block; width: 20%; min-width: 160px; max-width: 200px; height: auto; } & img:nth-child(1) { rotate: -20deg; right: 10vw; top: 10px; } & img:nth-child(2) { rotate: 10deg; left: 10vw; bottom: 0; transform: translateY(10%); } & img:nth-child(3) { rotate: 10deg; right: -3vw; bottom: 10svh; } & img:nth-child(4) { left: 4vw; top: 18svh; display: none; } } .cards__container, .link__container { margin-top: 2em; margin-bottom: 2.4em; } .link__container { max-width: 800px; margin-left: auto; margin-right: auto; container-type: inline-size; container-name: link; } .link__branding { & svg { width: 70px; height: auto; } } ul.card__stack { max-width: 270px; aspect-ratio: 0.72972972972973; position: relative; width: 100%; margin-bottom: 60px; & a { text-decoration: none; color: var(--clr-black); cursor: default; } } .card-front, .card-back, .link { background-color: var(--clr-white); border-radius: 12px; box-sizing: border-box; } .card-front, .card-back, .link { box-shadow: var(--shadow); } .card__container { position: absolute; inset: 0 0 0 0; transition: transform 0.3s ease-in-out 0s; perspective: 500px; } .card { position: absolute; inset: 0 0 0 0; transform-style: preserve-3d; } .card__container.active .card { transform: rotateY(var(--flip-deg)) rotateX(var(--flip-rotate)) scale(var(--flip-scale)); } .card-front { font-size: var(--fs-xl); font-weight: 700; display: grid; padding: 1.142857142857143em 1em; grid-template-rows: 1fr 4fr 1fr; justify-items: center; & div { text-align: center; overflow: hidden; width: 100%; & span { display: block; overflow-wrap: break-word; word-wrap: break-word; hyphens: auto; } } svg { width: 80%; max-width: 82px; } & > *:nth-child(1) { align-self: start; } & > *:nth-child(2) { align-self: center; } & > *:nth-child(3) { align-self: end; } } .card-back { background-color: var(--clr-white); transform: rotateY(180deg); display: flex; justify-content: center; align-items: center; & svg { width: 60%; } } .card-back, .card-front { position: absolute; inset: 0 0 0 0; backface-visibility: hidden; } .link { padding: 18px; display: flex; gap: 20px; flex-direction: column; position: relative; margin-bottom: 24px; & img { display: block; width: 100%; aspect-ratio: 0.731818181818182; height: auto; border-radius: 8px; } & figure { margin: 0; } & h1 { font-size: var(--fs-2xl); margin: 0 0 0.7em 0; font-weight: 400; line-height: 1.2; & strong { font-weight: 700; } } } .link__body, .link__learn-more { font-size: var(--fs-base); line-height: 1.4; } .link__learn-more { font-weight: 700; margin-top: 20px; border-top: 1px solid var(--clr-black); border-bottom: 1px solid var(--clr-black); & a { padding: 1.25em 0; display: block; color: var(--clr-black); text-decoration: none; background-image: url('ico-arrow-right.svg'); background-repeat: no-repeat; background-position: right center; background-size: 32px 32px; } } .link__close { position: absolute; width: 46px; aspect-ratio: 1; background-color: var(--clr-black); border-radius: 50%; text-decoration: none; right: 0; top: -23px; display: flex; align-items: center; justify-content: center; & svg { width: 18px; aspect-ratio: 1; } } .link__ctas, .cards__ctas { display: flex; flex-direction: column; gap: 16px; } .cards__ctas { max-width: 440px; width: 100%; } @media (orientation: portrait) { body { min-height: calc(100svh + 35px); } main:has(.cards__container) { display: flex; flex-direction: column; flex-grow: 1; } .cards__container { display: flex; flex-direction: column; justify-content: space-between; flex-grow: 1; margin-top: 0; } .card__stack-container { flex-grow: 1; display: flex; align-items: center; justify-content: center; } ul.card__stack { margin-top: 0; margin-bottom: 0; } } @media (min-width: 480px) { .link { & img { aspect-ratio: 1.536363636363636; object-fit: cover; } } } @container link (min-width: 735px) { .link { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr fit-content(84px); gap: 32px; margin-bottom: 40px; & img { /*aspect-ratio: 0.615101289134438; */ aspect-ratio: 0.731818181818182; } } .link__ctas { flex-direction: row; & li { flex-grow: 1; } } .link__image { grid-column: 2; grid-row: 1 / span 2; } .link__body-container { grid-column: 1; grid-row: 1; } .link__branding { grid-column: 1; grid-row: 2; } } @media (min-width: 815px) { header { margin: 2rem; & svg { width: 80px; } } footer { margin: 2rem; } .icon__container img:nth-child(4) { display: block; } } [data-locale] { display: none; } html[lang="en"] [data-locale='en'], html[lang="zh"] [data-locale='zh'], html[lang="hr"] [data-locale='hr'], html[lang="cs"] [data-locale='cs'], html[lang="da"] [data-locale='da'], html[lang="nl"] [data-locale='nl'], html[lang="fi"] [data-locale='fi'], html[lang="fr"] [data-locale='fr'], html[lang="fr-CA"] [data-locale='fr-CA'], html[lang="de"] [data-locale='de'], html[lang="hu"] [data-locale='hu'], html[lang="it"] [data-locale='it'], html[lang="ja"] [data-locale='ja'], html[lang="ko"] [data-locale='ko'], html[lang="nb"] [data-locale='nb'], html[lang="pl"] [data-locale='pl'], html[lang="pt"] [data-locale='pt'], html[lang="ro"] [data-locale='ro'], html[lang="sr"] [data-locale='sr'], html[lang="sk"] [data-locale='sk'], html[lang="sl"] [data-locale='sl'], html[lang="es"] [data-locale='es'], html[lang="sv"] [data-locale='sv'], html[lang="uk"] [data-locale='uk'] { display: revert; }