diff --git a/components/confetti.vue b/components/confetti.vue index 4d398b25..33963631 100644 --- a/components/confetti.vue +++ b/components/confetti.vue @@ -1,57 +1,44 @@ <template> - <div> - <body class="relative"> - <main> - <!-- <img class="bgImg" src="https://media.tacdn.com/media/attractions-splice-spp-674x446/09/c3/33/97.jpg" alt=""> --> - <article> - <!--DEMO HTML --> - <canvas - class="confetti" - style="width: 100vw; height: 100vh" - id="canvas" - ></canvas> - <!--End DEMO HTML --> - <transition name="dontShowAnimationBox"> - <section - v-if="boxInfo" - class="absolute bg-white top-[20%] rounded-lg sm:left-[5%] p-5 flex gap-4 items-center mx-3" - > - <h6 class="my-4 text-accent font-bold"> - {{ t("Headings.DontShowCongratsAnimationAgain") }} - </h6> - - <input-switch v-model="hideAnimation" class="mt-2" /> - </section> - </transition> - - <transition name="infoBox"> - <section - v-if="boxInfo" - class="absolute bg-white top-[70%] rounded-lg sm:left-1/2 transform sm:-translate-x-1/2 -translate-y-1/2 p-5 mx-3" - > - <h6 class="my-2 text-accent text-lg font-bold"> - {{ t("Headings.CongratsAnimateText") }} - </h6> - <div class="flex justify-end w-full"> - <NuxtLink @click="navigateToProfile()"> - <Btn sm> Go To profile </Btn> - </NuxtLink> - </div> - </section> - </transition> - - <transition name="closeAnimationBox"> - <section - v-if="boxInfo" - class="absolute bg-white cursor-pointer top-[5%] rounded-lg right-[5%] p-4" - @click="fnHideAnimation()" - > - <XMarkIcon class="h-6 w-6" /> - </section> - </transition> - </article> - </main> - </body> + <div class="relative"> + <main> + <!-- <img class="bgImg" src="https://media.tacdn.com/media/attractions-splice-spp-674x446/09/c3/33/97.jpg" alt=""> --> + <article> + <!--DEMO HTML --> + <canvas class="confetti" style="width: 100vw; height: 100vh" id="canvas"></canvas> + <!--End DEMO HTML --> + <transition name="dontShowAnimationBox"> + <section v-if="boxInfo" + class="absolute bg-white top-[20%] rounded-lg sm:left-[5%] p-5 flex gap-4 items-center mx-3"> + <h6 class="my-4 text-accent font-bold"> + {{ t("Headings.DontShowCongratsAnimationAgain") }} + </h6> + + <input-switch v-model="hideAnimation" class="mt-2" /> + </section> + </transition> + + <transition name="infoBox"> + <section v-if="boxInfo" + class="absolute bg-white top-[70%] rounded-lg sm:left-1/2 transform sm:-translate-x-1/2 -translate-y-1/2 p-5 mx-3"> + <h6 class="my-2 text-accent text-lg font-bold"> + {{ t("Headings.CongratsAnimateText") }} + </h6> + <div class="flex justify-end w-full"> + <NuxtLink @click="navigateToProfile()"> + <Btn sm> Go To profile </Btn> + </NuxtLink> + </div> + </section> + </transition> + + <transition name="closeAnimationBox"> + <section v-if="boxInfo" class="absolute bg-white cursor-pointer top-[5%] rounded-lg right-[5%] p-4" + @click="fnHideAnimation()"> + <XMarkIcon class="h-6 w-6" /> + </section> + </transition> + </article> + </main> </div> </template> @@ -243,9 +230,11 @@ onMounted(() => { opacity: 1; top: 70%; } + .infoBox-enter-active { transition: all 2s; } + .dontShowAnimationBox-enter-from { scale: 0; opacity: 0; @@ -259,9 +248,11 @@ onMounted(() => { top: 20%; left: 5%; } + .closeAnimationBox-enter-active { transition: all 2s; } + .closeAnimationBox-enter-from { scale: 0; opacity: 0; @@ -275,9 +266,11 @@ onMounted(() => { top: 5%; right: 5%; } + .dontShowAnimationBox-enter-active { transition: all 2s; } + body { font-family: "Roboto", sans-serif; font-style: normal; @@ -291,9 +284,11 @@ body { font-size: 15px; background: transparent; } + main { @apply backdrop-blur-sm; } + .intro { background: #fff; padding: 60px 30px; @@ -302,10 +297,12 @@ main { line-height: 1.5; text-align: center; } + .intro h1 { font-size: 18pt; padding-bottom: 15px; } + .intro p { font-size: 14px; } @@ -324,26 +321,32 @@ a.btn { display: inline-block; margin-left: 5px; } + a.btn:hover { background: #666; color: #fff; transition: 0.3s; -webkit-transition: 0.3s; } + .btn:before { font-family: FontAwesome; font-weight: normal; margin-right: 10px; } + .github:before { content: "\f09b"; } + .down:before { content: "\f019"; } + .back:before { content: "\f112"; } + .credit { background: #fff; padding: 12px; @@ -352,18 +355,22 @@ a.btn:hover { color: #333; margin-top: 40px; } + .credit span:before { font-family: FontAwesome; color: #e41b17; content: "\f004"; } + .credit a { color: #333; text-decoration: none; } + .credit a:hover { color: #1dbf73; } + .credit a:hover:after { font-family: FontAwesome; content: "\f08e"; @@ -379,6 +386,7 @@ article li { line-height: 1.5; padding: 5px; } + article h1, article h2, article h3, @@ -387,6 +395,7 @@ article p { padding: 14px; color: #333; } + article p { font-size: 15px; line-height: 1.5; @@ -408,6 +417,7 @@ article p { color: #333; font-size: 16px; } + .set-overlayer:after, .set-glass:after, .to-active:after, @@ -417,6 +427,7 @@ article p { position: relative; float: right; } + .set-overlayer:after, .set-glass:after, .set-sticky:after { @@ -429,6 +440,7 @@ article p { color: #008080; transition: 0.6s; } + .set-overlayer, .set-glass, .set-sticky, @@ -440,6 +452,7 @@ article p { border: 2px solid #f1f1f1; box-sizing: border-box; } + /* Syntax Highlighter*/ pre.prettyprint { @@ -455,6 +468,7 @@ pre.prettyprint { overflow: auto; max-height: 400px; } + code { border: 1px solid #ddd; padding: 2px; diff --git a/nuxt.config.ts b/nuxt.config.ts index bc0cc5de..4a7fa1b1 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -2,6 +2,7 @@ export default defineNuxtConfig({ ssr: false, + app: { head: { title: "Bootstrap Academy", @@ -31,13 +32,16 @@ export default defineNuxtConfig({ pageTransition: { name: "page", mode: "out-in" }, layoutTransition: { name: "layout", mode: "out-in" }, }, + css: ["~/assets/css/tailwind.css"], + postcss: { plugins: { tailwindcss: {}, autoprefixer: {}, }, }, + runtimeConfig: { public: { BASE_API_URL: "https://api.test.bootstrap.academy", @@ -47,4 +51,6 @@ export default defineNuxtConfig({ NODE_ENV: "production", }, }, -}); + + compatibilityDate: "2025-02-13", +}); \ No newline at end of file diff --git a/pages/auth/login.vue b/pages/auth/login.vue index 64a58c7a..648a4e3b 100644 --- a/pages/auth/login.vue +++ b/pages/auth/login.vue @@ -1,27 +1,6 @@ -<!-- -❌ Responsive UI -✅ Page Title -✅ Translation -❌ Animation - -✅ Tested on chrome -✅ Tested on firefox -✅ Tested on safari -❌ Tested on android mobile -❌ Tested on apple mobile - -✅ Recaptcha -✅ Api implemented -✅ Form Client Side Error Handling -✅ Form Submission Process -✅ Form Post Api Error Handling + ✅ Translation -✅ Form Post Api Success Handling + ✅ Translation ---> - <template> <main - class="container-fluid pt-container pb-container h-screen-inner min grid gap-container grid-cols-1 midXl:grid-cols-[auto_minmax(0,0.8fr)] items-center" - > + class="container-fluid pt-container pb-container h-screen-inner min grid gap-container grid-cols-1 midXl:grid-cols-[auto_minmax(0,0.8fr)] items-center"> <section class="container-form"> <h3 class="text-center text-heading-3 mb-2"> {{ t('Forms.Login') }} @@ -32,13 +11,8 @@ </section> <article class="hidden midXl:flex gap-8 flex-col items-center"> - <SectionTitle - center - subheading="Buttons.Login" - heading="Headings.WelcomeBack" - body="Body.Login" - /> - <SvgLogin /> + <SectionTitle center subheading="Buttons.Login" heading="Headings.WelcomeBack" body="Body.Login" /> + <SvgLogin class="max-w-3xl" /> </article> </main> </template> @@ -46,24 +20,16 @@ <script> import { useI18n } from 'vue-i18n'; -definePageMeta({ - layout: 'inner', -}); +definePageMeta({ layout: 'inner' }); export default { - head: { - title: 'Login', - }, + head: { title: 'Login' }, setup() { const { t } = useI18n(); - onMounted(async () => { - await getOAuthProviders(); - }); + onMounted(async () => await getOAuthProviders()); return { t }; }, }; </script> - -<style scoped></style> diff --git a/pages/docs/privacy.vue b/pages/docs/privacy.vue index f8b3046c..3ff1d90f 100644 --- a/pages/docs/privacy.vue +++ b/pages/docs/privacy.vue @@ -265,31 +265,33 @@ <div> <h4>5.3.4 Empfänger personenbezogener Daten</h4> <p>Wir setzen folgende Dienstleister ein:</p> - <div class="overflow-x-auto"> - <table> - <tr> - <th>Dienst</th> - <th>Anbieter</th> - <th>Zweck</th> - <th>Rechtsgrundlage</th> - <th>Speicherdauer</th> - </tr> - <tr> - <td>Google Recaptcha</td> - <td> - Google Ireland Limited Gordon House, Barrow Street, Dublin 4, - Irland - </td> - <td>Optimierung unseres Online-Angebots</td> - <td>Ihre Einwilligung gem. Art. 6 Abs. 1 S. 1 lit. a DSGVO</td> - <td> - Wir löschen Ihre personenbezogenen Daten, sobald sie für die - Erreichung des Zweckes der Erhebung nicht mehr erforderlich - sind. - </td> - </tr> - </table> - </div> + <div class="overflow-x-auto"> + <table> + <tbody> + <tr> + <th>Dienst</th> + <th>Anbieter</th> + <th>Zweck</th> + <th>Rechtsgrundlage</th> + <th>Speicherdauer</th> + </tr> + <tr> + <td>Google Recaptcha</td> + <td> + Google Ireland Limited Gordon House, Barrow Street, Dublin 4, + Irland + </td> + <td>Optimierung unseres Online-Angebots</td> + <td>Ihre Einwilligung gem. Art. 6 Abs. 1 S. 1 lit. a DSGVO</td> + <td> + Wir löschen Ihre personenbezogenen Daten, sobald sie für die + Erreichung des Zweckes der Erhebung nicht mehr erforderlich + sind. + </td> + </tr> + </tbody> + </table> + </div> </div> </article> </section> @@ -356,52 +358,54 @@ <article> <h3>6.5 Empfänger personenbezogener Daten</h3> - <div class="overflow-x-auto"> - <table> - <tr> - <th>Dienst</th> - <th>Anbieter</th> - <th>Zweck</th> - <th>Rechtsgrundlage</th> - <th>Datenschutzhinweis</th> - </tr> - <tr> - <td>Calendly</td> - <td> - Calendly LLC, 3423 Piedmont Road NE, Atlanta, GA 30305-1754, USA - </td> - <td>Kommunikation und Terminvereinbarung</td> - <td> - Ihre Einwilligung gem. Art. 6 Abs. 1 S. 1 lit. a DSGVO; - Vertragserfüllung und Durchführung vorvertraglicher Maßnahmen gem. - Art. 6 Abs. 1 S. 1 lit. b. DSGVO - </td> - <td> - <a href="https://calendly.com/pages/privacy" target="_blank"> - https://calendly.com/pages/privacy - </a> - </td> - </tr> - <tr> - <td>Gleap</td> - <td> - Gleap GmbH, Dr.-Walter-Zumtobel-Straße 2, 6850 Dornbirn, - Österreich - </td> - <td>Kommunikation und Fehlermeldung/-behebung</td> - <td> - Ihre Einwilligung gem. Art. 6 Abs. 1 S. 1 lit. a DSGVO; - Vertragserfüllung und Durchführung vorvertraglicher Maßnahmen gem. - Art. 6 Abs. 1 S. 1 lit. b. DSGVO - </td> - <td> - <a href="https://www.gleap.io/privacy-policy" target="_blank"> - https://www.gleap.io/privacy-policy - </a> - </td> - </tr> - </table> - </div> + <div class="overflow-x-auto"> + <table> + <tbody> + <tr> + <th>Dienst</th> + <th>Anbieter</th> + <th>Zweck</th> + <th>Rechtsgrundlage</th> + <th>Datenschutzhinweis</th> + </tr> + <tr> + <td>Calendly</td> + <td> + Calendly LLC, 3423 Piedmont Road NE, Atlanta, GA 30305-1754, USA + </td> + <td>Kommunikation und Terminvereinbarung</td> + <td> + Ihre Einwilligung gem. Art. 6 Abs. 1 S. 1 lit. a DSGVO; + Vertragserfüllung und Durchführung vorvertraglicher Maßnahmen gem. + Art. 6 Abs. 1 S. 1 lit. b. DSGVO + </td> + <td> + <a href="https://calendly.com/pages/privacy" target="_blank"> + https://calendly.com/pages/privacy + </a> + </td> + </tr> + <tr> + <td>Gleap</td> + <td> + Gleap GmbH, Dr.-Walter-Zumtobel-Straße 2, 6850 Dornbirn, + Österreich + </td> + <td>Kommunikation und Fehlermeldung/-behebung</td> + <td> + Ihre Einwilligung gem. Art. 6 Abs. 1 S. 1 lit. a DSGVO; + Vertragserfüllung und Durchführung vorvertraglicher Maßnahmen gem. + Art. 6 Abs. 1 S. 1 lit. b. DSGVO + </td> + <td> + <a href="https://www.gleap.io/privacy-policy" target="_blank"> + https://www.gleap.io/privacy-policy + </a> + </td> + </tr> + </tbody> + </table> + </div> </article> </section> @@ -620,10 +624,7 @@ Corporate Rules implementiert. </p> <p> - <a - href="https://www.paypal.com/us/webapps/mpp/gdpr-readiness-requirements" - target="_blank" - > + <a href="https://www.paypal.com/us/webapps/mpp/gdpr-readiness-requirements" target="_blank"> https://www.paypal.com/us/webapps/mpp/gdpr-readiness-requirements </a> </p> @@ -634,10 +635,7 @@ <p> Weitere Informationen zur Datenverarbeitung finden Sie in der Datenschutzerklärung von PayPal. - <a - href="https://www.paypal.com/de/webapps/mpp/ua/privacy-full" - target="_blank" - > + <a href="https://www.paypal.com/de/webapps/mpp/ua/privacy-full" target="_blank"> https://www.paypal.com/de/webapps/mpp/ua/privacy-full </a> </p> @@ -709,190 +707,152 @@ <article> <h3>9.4 Empfänger personenbezogener Daten</h3> <p>Wir unterhalten Präsenzen in folgenden sozialen Medien:</p> - <div class="overflow-x-auto"> - <table> - <tr> - <th>Soziales Netzwerk</th> - <th>Anbieter</th> - <th>Rechtsgrundlage</th> - <th>Weitere Informationen</th> - </tr> - <tr> - <td>LinkedIn</td> - <td> - LinkedIn Ireland Unlimited Company Wilton Place, Dublin 2, Irland - </td> - <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a - href="https://de.linkedin.com/legal/privacy-policy?src=or-search&veh=www.google.com%7Cor-search " - target="_blank" - > - Datenschutzerklärung - </a> - <a - href="https://www.linkedin.com/psettings/guest-controls/retargeting-opt-out" - target="_blank" - > - Opt-out und Werbeeinstellungen - </a> - <a - href="https://legal.linkedin.com/pages-joint-controller-addendum" - target="_blank" - > - Vertrag zur gemeinsamen Verantwortlichkeit - </a> - </td> - </tr> - <tr> - <td>Twitter</td> - <td> - Twitter International Company, One Cumberland Place, Fenian - Street, Dublin 2, Irland - </td> - <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a href="https://twitter.com/de/privacy" target="_blank"> - Datenschutzerklärung - </a> - <a - href="https://twitter.com/settings/account/personalization" - target="_blank" - > - Widerspruchseinstellungen - </a> - </td> - </tr> - <tr> - <td>Facebook</td> - <td> - Facebook Ireland Ltd., 4 Grand Canal Square, Grand Canal Harbour, - Dublin 2, Irland - </td> - <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a - href="https://www.facebook.com/privacy/policy/?entry_point=data_policy_redirect&entry=0" - target="_blank" - > - Datenschutzerklärung - </a> - <a - href="https://www.facebook.com/settings?tab=ads" - target="_blank" - > - Widerspruchseinstellungen - </a> - <a - href="https://de-de.facebook.com/legal/terms/page_controller_addendum" - target="_blank" - > - Vertrag zur gemeinsamen Verantwortlichkeit - </a> - </td> - </tr> - <tr> - <td>Instagram</td> - <td> - Facebook Ireland Ltd., 4 Grand Canal Square, Grand Canal Harbour, - Dublin 2, Irland - </td> - <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a - href="https://privacycenter.instagram.com/policy/?entry_point=ig_help_center_data_policy_redirect" - target="_blank" - > - Datenschutzerklärung - </a> - <a - href="https://privacycenter.instagram.com/policy/?entry_point=ig_help_center_data_policy_redirect" - target="_blank" - > - Widerspruchseinstellungen - </a> - </td> - </tr> - <tr> - <td>Xing</td> - <td>Xing AG, Dammtorstraße 29-32, 20354 Hamburg</td> - <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a - href="https://privacy.xing.com/de/datenschutzerklaerung" - target="_blank" - > - Datenschutzerklärung - </a> - <a - href="https://privacy.xing.com/de/datenschutzerklaerung" - target="_blank" - > - Widerspruchseinstellungen - </a> - </td> - </tr> - <tr> - <td>Youtube</td> - <td> - Google Ireland Limited, Gordon House, Barrow Street, Dublin 4, - Irland - </td> - <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a href="https://policies.google.com/privacy" target="_blank"> - Datenschutzerklärung - </a> - <a - href="https://adssettings.google.com/authenticated" - target="_blank" - > - Widerspruchseinstellungen - </a> - </td> - </tr> - <tr> - <td>LinkedIn</td> - <td> - LinkedIn Ireland Unlimited Company Wilton Place, Dublin 2, Irland - </td> - <td>Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a - href="https://de.linkedin.com/legal/privacy-policy?src=or-search&veh=www.google.com%7Cor-search" - target="_blank" - > - Datenschutzerklärung - </a> - <a - href="https://www.linkedin.com/psettings/guest-controls/retargeting-opt-out" - target="_blank" - > - Opt-out und Werbeeinstellungen - </a> - </td> - </tr> - <tr> - <td>Twitter</td> - <td> - Twitter International Company, One Cumberland Place, Fenian - Street, Dublin 2, Irland - </td> - <td>Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> - <td> - <a href="https://twitter.com/de/privacy" target="_blank"> - Datenschutzerklärung - </a> - <a - href="https://twitter.com/settings/account/personalization" - target="_blank" - > - Widerspruchseinstellungen - </a> - </td> - </tr> - </table> - </div> + <div class="overflow-x-auto"> + <table> + <tbody> + <tr> + <th>Soziales Netzwerk</th> + <th>Anbieter</th> + <th>Rechtsgrundlage</th> + <th>Weitere Informationen</th> + </tr> + <tr> + <td>LinkedIn</td> + <td> + LinkedIn Ireland Unlimited Company Wilton Place, Dublin 2, Irland + </td> + <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://de.linkedin.com/legal/privacy-policy?src=or-search&veh=www.google.com%7Cor-search " + target="_blank"> + Datenschutzerklärung + </a> + <a href="https://www.linkedin.com/psettings/guest-controls/retargeting-opt-out" target="_blank"> + Opt-out und Werbeeinstellungen + </a> + <a href="https://legal.linkedin.com/pages-joint-controller-addendum" target="_blank"> + Vertrag zur gemeinsamen Verantwortlichkeit + </a> + </td> + </tr> + <tr> + <td>Twitter</td> + <td> + Twitter International Company, One Cumberland Place, Fenian + Street, Dublin 2, Irland + </td> + <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://twitter.com/de/privacy" target="_blank"> + Datenschutzerklärung + </a> + <a href="https://twitter.com/settings/account/personalization" target="_blank"> + Widerspruchseinstellungen + </a> + </td> + </tr> + <tr> + <td>Facebook</td> + <td> + Facebook Ireland Ltd., 4 Grand Canal Square, Grand Canal Harbour, + Dublin 2, Irland + </td> + <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://www.facebook.com/privacy/policy/?entry_point=data_policy_redirect&entry=0" + target="_blank"> + Datenschutzerklärung + </a> + <a href="https://www.facebook.com/settings?tab=ads" target="_blank"> + Widerspruchseinstellungen + </a> + <a href="https://de-de.facebook.com/legal/terms/page_controller_addendum" target="_blank"> + Vertrag zur gemeinsamen Verantwortlichkeit + </a> + </td> + </tr> + <tr> + <td>Instagram</td> + <td> + Facebook Ireland Ltd., 4 Grand Canal Square, Grand Canal Harbour, + Dublin 2, Irland + </td> + <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://privacycenter.instagram.com/policy/?entry_point=ig_help_center_data_policy_redirect" + target="_blank"> + Datenschutzerklärung + </a> + <a href="https://privacycenter.instagram.com/policy/?entry_point=ig_help_center_data_policy_redirect" + target="_blank"> + Widerspruchseinstellungen + </a> + </td> + </tr> + <tr> + <td>Xing</td> + <td>Xing AG, Dammtorstraße 29-32, 20354 Hamburg</td> + <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://privacy.xing.com/de/datenschutzerklaerung" target="_blank"> + Datenschutzerklärung + </a> + <a href="https://privacy.xing.com/de/datenschutzerklaerung" target="_blank"> + Widerspruchseinstellungen + </a> + </td> + </tr> + <tr> + <td>Youtube</td> + <td> + Google Ireland Limited, Gordon House, Barrow Street, Dublin 4, + Irland + </td> + <td>Berechtigte Interessen gem. Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://policies.google.com/privacy" target="_blank"> + Datenschutzerklärung + </a> + <a href="https://adssettings.google.com/authenticated" target="_blank"> + Widerspruchseinstellungen + </a> + </td> + </tr> + <tr> + <td>LinkedIn</td> + <td> + LinkedIn Ireland Unlimited Company Wilton Place, Dublin 2, Irland + </td> + <td>Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://de.linkedin.com/legal/privacy-policy?src=or-search&veh=www.google.com%7Cor-search" + target="_blank"> + Datenschutzerklärung + </a> + <a href="https://www.linkedin.com/psettings/guest-controls/retargeting-opt-out" target="_blank"> + Opt-out und Werbeeinstellungen + </a> + </td> + </tr> + <tr> + <td>Twitter</td> + <td> + Twitter International Company, One Cumberland Place, Fenian + Street, Dublin 2, Irland + </td> + <td>Art. 6 Abs. 1 S. 1 lit. f DSGVO</td> + <td> + <a href="https://twitter.com/de/privacy" target="_blank"> + Datenschutzerklärung + </a> + <a href="https://twitter.com/settings/account/personalization" target="_blank"> + Widerspruchseinstellungen + </a> + </td> + </tr> + </tbody> + </table> + </div> </article> </section> @@ -1075,15 +1035,19 @@ h2 { h3 { @apply text-heading-3; } + h4 { @apply text-heading-4 mt-card -mb-2; } + table { @apply mt-card; } + table th { @apply text-body-1 font-heading text-heading box; } + table td { @apply text-body-1 font-body text-body box; } @@ -1097,6 +1061,7 @@ td { td a { @apply block my-4; } + section { @apply mt-container; } @@ -1108,6 +1073,7 @@ article { div { @apply mt-card; } + p { @apply mt-card-sm; } @@ -1115,12 +1081,15 @@ p { ul { @apply mt-card-sm; } + ul li { @apply mt-box list-disc ml-10; } + ol li { @apply mt-box list-decimal ml-10; } + a:not(.table-content li a) { @apply cursor-pointer underline-link; }