/* Scoped to the guest Pleasure landing page; shared forms and authenticated pages keep their existing styles. */
body.index-pleasure.in2meet-landing {
    --i2m-bg: #050b18;
    --i2m-pink: #ff149f;
    --i2m-violet: #4c16ff;
    margin: 0;
    background: var(--i2m-bg);
    color: #f5f5fc;
    font-family: "Open Sans", "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5;
}
.in2meet-landing .i2m-stage,
.in2meet-landing .i2m-stage * { box-sizing: border-box; }
.in2meet-landing .i2m-stage {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: 960px;
    padding-bottom: 34px;
    background: #050b18;
}
.in2meet-landing .i2m-backdrop {
    position: absolute;
    z-index: -2;
    inset: 0 0 auto;
    height: 970px;
    background: linear-gradient(to bottom, transparent 62%, #050b18 96%), url("../img/in2meet/hero.png") center top / cover no-repeat;
    pointer-events: none;
}
.in2meet-landing .i2m-topbar {
    background: transparent;
    color: #f5f5fc;
    height: auto;
    min-height: 0;
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 32px;
    max-width: 1536px;
    margin: 0 auto;
    padding: 25px 6.25%;
}
.in2meet-landing .i2m-brand {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    flex: none;
    color: #f8f7fc;
    text-decoration: none;
    white-space: nowrap;
}
.in2meet-landing .i2m-brand-original { display: none; }
.in2meet-landing .i2m-brand-mark { display: block; width: 76px; height: 66px; object-fit: cover; }
.in2meet-landing .i2m-brand-text { display: flex; flex-direction: column; }
.in2meet-landing .i2m-wordmark { font-family: "Trebuchet MS", "Segoe UI", sans-serif; font-size: 43px; font-weight: 600; letter-spacing: 1px; line-height: 1.12; }
.in2meet-landing .i2m-wordmark > span { color: #f019ce; }
.in2meet-landing .i2m-tagline { font-size: 12px; letter-spacing: -.15px; }
.in2meet-landing .i2m-tagline em { font-style: normal; color: #ff19db; }
.in2meet-landing .i2m-navigation { display: flex; justify-content: center; align-items: center; flex: 1; gap: clamp(18px, 2.4vw, 38px); white-space: nowrap; }
.in2meet-landing .i2m-stage a { text-decoration: none; }
.in2meet-landing .i2m-navigation a { color: #f7f5ff; font-size: 14px; }
.in2meet-landing .i2m-navigation a:hover { color: #ff53c2; }
.in2meet-landing .i2m-header-actions { display: flex; gap: 27px; align-items: center; flex: none; }
.in2meet-landing .i2m-language { display: flex; gap: 9px; align-items: center; font-size: 13px; }
.in2meet-landing .i2m-language > svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.3; }
.in2meet-landing .i2m-language a { color: inherit; }
.in2meet-landing .i2m-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    min-height: 58px;
    padding: 14px 24px;
    border: 0;
    border-radius: 19px;
    background: linear-gradient(108deg, #ff2686 0%, #fa08cc 43%, #4219ff 100%);
    box-shadow: 0 9px 34px #b800ca24;
    color: white;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    transition: filter .18s, box-shadow .18s;
}
.in2meet-landing .i2m-button:hover { color: #fff; filter: brightness(1.12); box-shadow: 0 9px 34px #b800ca50; }
.in2meet-landing .i2m-button-small { min-height: 43px; border-radius: 14px; padding: 10px 30px; font-size: 14px; }
.in2meet-landing .i2m-stage a:focus-visible { outline: 3px solid #ff9bd9; outline-offset: 5px; }
.in2meet-landing .i2m-hero { position: relative; max-width: 1536px; min-height: 560px; margin: 0 auto; padding: 69px 6.4% 60px; }
.in2meet-landing .i2m-welcome { position: relative; z-index: 2; width: min(42%, 510px); }
.in2meet-landing .i2m-welcome h1 { margin: 0 0 14px; color: #f8f8ff; font-size: clamp(65px, 6.7vw, 104px); font-weight: 700; letter-spacing: -3px; line-height: 1.16; white-space: nowrap; }
.in2meet-landing .i2m-welcome h1 > span { background: linear-gradient(120deg, #fb539e, #ec0cbf); color: #fb39b6; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.in2meet-landing .i2m-intro { margin: 0 0 27px; font-size: clamp(22px, 2.1vw, 32px); font-weight: 400; line-height: 1.35; color: #e7e7f2; letter-spacing: -.6px; }
.in2meet-landing .i2m-social .oauth-links { margin: 0; }
.in2meet-landing .i2m-social .oauth-links > div { display: none; }
.in2meet-landing .i2m-social ins { display: flex; flex-wrap: wrap; gap: 14px; text-decoration: none; }
.in2meet-landing .i2m-social .oauth-links a {
    display: inline-flex; align-items: center; justify-content: center; gap: 16px; flex: 1 1 auto;
    min-width: 52px; min-height: 53px; margin: 0; padding: 10px 17px;
    border: 1px solid #7786bb !important; border-radius: 13px; background: #06101c66 !important;
    color: white !important; font-size: 16px; line-height: 1.4;
}
.in2meet-landing .i2m-social a.google::after { content: "Folytatás Google-lal"; }
.in2meet-landing .i2m-social a.facebook::after { content: "Folytatás Facebookkal"; }
.in2meet-landing .i2m-social .fab { font-size: 29px; }
.in2meet-landing .i2m-social .fa-google { background: conic-gradient(#4285f4 0deg 95deg, #34a853 95deg 190deg, #fbbc05 190deg 235deg, #ea4335 235deg 295deg, #4285f4 295deg); color: #4285f4; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.in2meet-landing .i2m-social .fa-facebook-f { display: inline-flex; align-items: end; justify-content: center; width: 31px; height: 31px; border-radius: 50%; background: #087bff; color: white; overflow: hidden; }
.in2meet-landing .i2m-social .oauth-links a:hover,
.in2meet-landing .i2m-social .oauth-links a:focus-visible { border-color: #f531c3 !important; background-color: #171431 !important; }
.in2meet-landing .i2m-divider { display: flex; align-items: center; gap: 15px; margin: 18px 0 21px; font-size: 14px; color: #c3c7d9; }
.in2meet-landing .i2m-divider::before,
.in2meet-landing .i2m-divider::after { content: ""; flex: 1; height: 1px; background: #747b95; }
.in2meet-landing .i2m-main-login { width: 100%; }
.in2meet-landing .i2m-login-arrow { font-size: 28px; line-height: 1; font-weight: 400; }
.in2meet-landing .i2m-signup { margin: 19px 0 0; font-size: 18px; text-align: center; color: #f2f2fa; }
.in2meet-landing .i2m-signup a { color: #ff0ed7; font-weight: 600; }
.in2meet-landing .i2m-signup a:hover { color: #ff7ce6; text-decoration: underline; }
.in2meet-landing .i2m-motto { position: absolute; z-index: 1; top: 8px; right: 3.5%; margin: 0; transform: rotate(-9deg); color: #ff16c7; font-family: "Segoe Print", "Comic Sans MS", cursive; font-size: clamp(20px, 2vw, 31px); line-height: 1.45; }
.in2meet-landing .i2m-motto > span:first-child { padding-left: 42px; }
.in2meet-landing .i2m-ribbons { position: absolute; z-index: 1; top: 556px; left: -3%; width: 106%; height: 212px; pointer-events: none; }
.in2meet-landing .i2m-benefits { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4, 1fr); max-width: 1450px; margin: 21px auto 0; padding: 0 4%; list-style: none; text-align: center; }
.in2meet-landing .i2m-benefits li { padding: 0 15px; }
.in2meet-landing .i2m-benefit-icon { display: flex; align-items: center; justify-content: center; width: 65px; height: 65px; margin: 0 auto 12px; border: 1.5px solid #da11fb; border-radius: 50%; color: #fc10d1; background: #08081ac4; }
.in2meet-landing .i2m-benefit-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.in2meet-landing .i2m-benefits h2 { margin: 0 0 7px; color: #f3f3fc; font-size: 20px; line-height: 1.4; font-weight: 600; }
.in2meet-landing .i2m-benefits p { margin: 0; color: #daddeb; font-size: 17px; line-height: 1.5; }
.in2meet-landing .i2m-scroll { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; width: max-content; margin: 26px auto 0; gap: 8px; color: #e8eaf6; font-size: 12px; }
.in2meet-landing .i2m-scroll > span { display: flex; align-items: center; justify-content: center; width: 25px; height: 39px; border: 1px solid #e8eaf6; border-radius: 14px; font-size: 23px; }
.in2meet-landing .i2m-registration-shell { margin: 0; padding: 64px 20px; min-height: 0; background-color: #090f20; color: #f5f5fc; }
.in2meet-landing .i2m-registration-shell > .container { width: 100%; max-width: 850px; }
.in2meet-landing .i2m-registration-title { margin: 0 0 24px; color: #fff; text-align: center; font-size: 30px; }
.in2meet-landing .i2m-details { background: #070d1a; color: #e0e3ef; }
.in2meet-landing .i2m-details .b-afterheader,
.in2meet-landing .i2m-details .b-features,
.in2meet-landing .i2m-details .b-mobile,
.in2meet-landing .i2m-details .b-footer { background-color: transparent; color: inherit; }
.in2meet-landing .i2m-details h2,
.in2meet-landing .i2m-details h3 { color: #f8f8fc; }
@media (min-width: 768px) and (max-width: 1199px) {
    .in2meet-landing .i2m-topbar { gap: 20px; padding-left: 4%; padding-right: 4%; flex-wrap: wrap; }
    .in2meet-landing .i2m-brand-mark { width: 58px; height: 50px; }
    .in2meet-landing .i2m-wordmark { font-size: 34px; }
    .in2meet-landing .i2m-navigation { order: 3; flex-basis: 100%; }
    .in2meet-landing .i2m-header-actions { margin-left: auto; }
    .in2meet-landing .i2m-hero { padding-top: 55px; padding-left: 5%; min-height: 525px; }
    .in2meet-landing .i2m-welcome { width: 52%; }
    .in2meet-landing .i2m-welcome h1 { font-size: clamp(52px, 7vw, 80px); }
    .in2meet-landing .i2m-social ins { gap: 8px; }
    .in2meet-landing .i2m-social .oauth-links a { padding: 10px; gap: 9px; font-size: 13px; }
    .in2meet-landing .i2m-motto { top: 16px; right: 4%; font-size: 20px; }
    .in2meet-landing .i2m-ribbons { top: 570px; }
    .in2meet-landing .i2m-benefits h2 { font-size: 17px; }
    .in2meet-landing .i2m-benefits p { font-size: 15px; }
}
@media (max-width: 767px) {
    .in2meet-landing .i2m-stage { min-height: 100vh; min-height: 100svh; padding: 0 0 max(32px, env(safe-area-inset-bottom)); background: radial-gradient(ellipse at 60% 10%, #05111c, #010911 70%); }
    .in2meet-landing .i2m-backdrop { display: none; }
    .in2meet-landing .i2m-topbar { justify-content: center; padding: clamp(62px, 11svh, 105px) 20px 0; }
    .in2meet-landing .i2m-brand { flex-direction: column; gap: 14px; text-align: center; }
    .in2meet-landing .i2m-brand-mark { width: 112px; height: 96px; }
    .in2meet-landing .i2m-wordmark { font-size: 54px; font-weight: 500; letter-spacing: 1px; }
    .in2meet-landing .i2m-tagline { font-size: 13px; letter-spacing: 0; }
    .in2meet-landing .i2m-navigation,
    .in2meet-landing .i2m-header-actions .i2m-button-small { display: none; }
    .in2meet-landing .i2m-header-actions { position: absolute; top: 22px; right: 22px; }
    .in2meet-landing .i2m-hero { min-height: 0; padding: 87px 24px 0; }
    .in2meet-landing .i2m-welcome { width: 100%; max-width: 390px; margin: 0 auto; text-align: center; }
    .in2meet-landing .i2m-welcome h1 { margin: 0 0 10px; font-size: 31px; line-height: 1.2; letter-spacing: -.7px; }
    .in2meet-landing .i2m-welcome h1 > span { color: inherit; background: none; -webkit-text-fill-color: currentColor; }
    .in2meet-landing .i2m-intro { margin: 0 0 22px; color: #fff; font-size: 20px; line-height: 1.45; letter-spacing: -.35px; }
    .in2meet-landing .i2m-social ins { justify-content: center; gap: 0; flex-wrap: wrap; }
    .in2meet-landing .i2m-social .oauth-links a { flex: 0 0 110px; min-height: 49px; padding: 3px 20px; border: 0 !important; border-radius: 0; background: transparent !important; }
    .in2meet-landing .i2m-social .oauth-links a + a { border-left: 1px solid #768395 !important; }
    .in2meet-landing .i2m-social a.google::after,
    .in2meet-landing .i2m-social a.facebook::after { content: none; }
    .in2meet-landing .i2m-social .fab { font-size: 37px; }
    .in2meet-landing .i2m-social .fa-facebook-f { width: 39px; height: 39px; }
    .in2meet-landing .i2m-divider { justify-content: center; gap: 10px; max-width: 116px; margin: 12px auto 13px; font-size: 12px; }
    .in2meet-landing .i2m-button { min-height: 54px; border-radius: 23px; font-size: 18px; }
    .in2meet-landing .i2m-login-arrow,
    .in2meet-landing .i2m-motto,
    .in2meet-landing .i2m-benefits,
    .in2meet-landing .i2m-scroll { display: none; }
    .in2meet-landing .i2m-signup { margin: 34px 0 0; font-size: 16px; }
    .in2meet-landing .i2m-ribbons { top: calc(clamp(62px, 11svh, 105px) + 177px); left: -42%; width: 184%; height: 107px; }
    .in2meet-landing .i2m-registration-shell { padding: 45px 15px; }
    .in2meet-landing .i2m-registration-title { font-size: 25px; }
}
@media (max-width: 359px) {
    .in2meet-landing .i2m-hero { padding-left: 18px; padding-right: 18px; }
    .in2meet-landing .i2m-wordmark { font-size: 48px; }
    .in2meet-landing .i2m-intro { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
    .in2meet-landing .i2m-button { transition: none; }
}
