:root{--ink:#233537;--cream:#f7f3eb;--coral:#ed715a;--sand:#ece1d5;--mint:#d3ded5}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font:16px 'DM Sans',sans-serif}a{text-decoration:none;color:inherit}header,footer{max-width:1180px;margin:auto;padding:25px 28px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:26px;font-weight:700;letter-spacing:-2px}.brand span{color:var(--coral)}nav{display:flex;gap:30px;font-size:14px;font-weight:600}.admin{font-size:13px;font-weight:700;border-bottom:1px solid}.hero{min-height:575px;border-block:1px solid #d9d4cc;text-align:center;padding:105px 20px;position:relative;overflow:hidden}.sun{position:absolute;width:340px;height:340px;background:#f4c65d;border-radius:50%;left:-120px;top:185px}.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:700;color:#62706b}.hero h1,h2,h3{font-family:'Playfair Display',serif;letter-spacing:-1.8px}.hero h1{font-size:76px;line-height:1;margin:20px 0;position:relative}.hero em{color:var(--coral)}.lead{max-width:450px;margin:0 auto 28px;line-height:1.65;position:relative}.button{display:inline-block;background:var(--ink);color:#fff;padding:16px 21px;font-weight:700;font-size:14px}.button b,.card b{font-size:20px;margin-left:18px}.note{font-size:12px;margin-top:45px}.note:first-letter{color:var(--coral)}.intro{max-width:1120px;padding:105px 28px 55px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro h2,.cities h2,.safety h2{font-size:45px;line-height:1.1;margin:12px 0}.intro>p{line-height:1.7;margin-top:40px}.cards{max-width:1120px;margin:auto;padding:0 28px 105px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{min-height:300px;padding:29px;background:var(--mint);display:flex;flex-direction:column}.card:nth-child(2){background:var(--ink);color:var(--cream)}.card:nth-child(3){background:var(--sand)}.tag{font-size:10px;font-weight:700;letter-spacing:1.2px;margin:0 0 46px}.card h3{font-size:28px;line-height:1.1;margin:0}.card p:not(.tag){font-size:14px;line-height:1.55}.card a{margin-top:auto;font-size:13px;font-weight:700}.cities{background:var(--sand);padding:90px max(28px,calc((100% - 1120px)/2))}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}.city-grid article{border-top:1px solid #a9aaa4;padding-top:16px}.city-grid span{float:right}.city-grid h3{font-size:29px;margin:0}.city-grid p{font-size:14px;line-height:1.55}.safety{background:var(--coral);padding:100px max(28px,calc((100% - 900px)/2));text-align:center}.safety h2{max-width:720px;margin:12px auto 22px}.safety>p:last-child{max-width:580px;margin:auto;line-height:1.7}footer{font-size:12px;color:#66716c}footer p{margin:0}@media(max-width:700px){header{padding:20px}nav{display:none}.hero{min-height:520px;padding-top:90px}.hero h1{font-size:48px}.intro{display:block;padding:70px 22px 35px}.intro h2,.cities h2,.safety h2{font-size:36px}.intro>p{margin-top:20px}.cards{display:block;padding:0 16px 70px}.card{margin-bottom:12px;min-height:245px}.cities{padding:70px 22px}.city-grid{grid-template-columns:1fr 1fr}.safety{padding:70px 22px}}
.skip-link{position:absolute;left:12px;top:-60px;z-index:10;padding:10px 14px;background:#233537;color:#fff;border-radius:0 0 6px 6px;text-decoration:none}.skip-link:focus{top:0}
.cards .card{padding:38px 34px 32px}.cards .tag{margin:0 0 32px}.cards .card h3{margin-bottom:18px}@media(max-width:700px){.cards .card{padding:30px 26px 28px}.cards .tag{margin-bottom:24px}}
.home-quick{max-width:1120px;margin:-58px auto 54px;padding:0 28px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative;z-index:2}.home-quick a{display:block;min-height:170px;padding:22px;border:1px solid #ded7ce;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 18px 45px rgba(35,53,55,.08)}.home-quick span{display:block;color:var(--coral);font-size:12px;font-weight:800;letter-spacing:1.2px}.home-quick strong{display:block;margin:14px 0 8px;font:600 24px/1.08 'Playfair Display',serif;letter-spacing:-.8px}.home-quick p{margin:0;color:#5d675f;font-size:14px;line-height:1.55}.home-trust{max-width:1120px;margin:34px auto 20px;padding:46px 28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:44px;align-items:center}.home-trust h2,.home-next h2{font-size:45px;line-height:1.08;margin:12px 0}.home-trust p{max-width:620px;line-height:1.7;color:#53605b}.trust-points{display:grid;gap:12px}.trust-points a,.next-grid a{display:block;padding:18px;border:1px solid #ded7ce;border-radius:16px;background:#fff}.trust-points strong,.next-grid strong{display:block;margin-bottom:6px;color:var(--ink);font-weight:800}.trust-points span,.next-grid span{display:block;color:#62706b;font-size:14px;line-height:1.5}.home-next{max-width:1120px;margin:0 auto 76px;padding:0 28px}.home-next>h2{max-width:650px}.next-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}.search-routes{max-width:1120px;margin:0 auto 58px;padding:42px 28px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:34px;align-items:start;border-radius:26px;background:linear-gradient(135deg,rgba(35,53,55,.94),rgba(35,53,55,.76)),url('/images/video-chat-internet-speed-cover.webp') center/cover;color:#fff}.search-routes .eyebrow{color:#e7c79a}.search-routes h2{font-size:42px;line-height:1.08;margin:10px 0 16px}.search-routes p{color:#f4eee7;line-height:1.7;margin:0}.search-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.search-route-grid a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.1);color:#fff;font-weight:800}.search-route-grid span{font-size:20px}.hub-search-routes{margin:0 0 42px;padding:34px;max-width:none}.hub-search-routes h2{font-size:34px}@media(max-width:900px){.home-quick,.next-grid{grid-template-columns:1fr 1fr}.home-trust{grid-template-columns:1fr;gap:24px}}@media(max-width:860px){.search-routes{grid-template-columns:1fr;padding:32px 22px}.search-route-grid{grid-template-columns:1fr}}@media(max-width:700px){.home-quick{grid-template-columns:1fr;margin:-34px auto 34px;padding:0 16px}.home-trust{padding:34px 20px}.home-trust h2,.home-next h2{font-size:36px}.home-next{padding:0 16px;margin-bottom:54px}.next-grid{grid-template-columns:1fr}.search-routes{margin-bottom:42px;border-radius:20px}.search-routes h2{font-size:32px}}
.home-trust{padding:46px 42px;border-radius:28px;overflow:hidden;position:relative;background:linear-gradient(105deg,rgba(247,243,235,.96) 0%,rgba(247,243,235,.88) 48%,rgba(35,53,55,.18) 100%),url('/images/video-chat-rooms-safety-cover.webp') center right/cover no-repeat;box-shadow:0 24px 70px rgba(35,53,55,.1)}.home-trust:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 22%,rgba(244,215,194,.55),transparent 32%);pointer-events:none}.home-trust>*{position:relative}.trust-points a{background:rgba(255,255,255,.88);backdrop-filter:blur(8px)}@media(max-width:900px){.home-trust{margin-inline:28px;background:linear-gradient(105deg,rgba(247,243,235,.97),rgba(247,243,235,.9)),url('/images/video-chat-rooms-safety-cover.webp') center/cover no-repeat}}@media(max-width:700px){.home-trust{margin-inline:16px;padding:34px 20px}}

/* Home bottom polish: safety + FAQ should stay in the same visual rhythm as the rest of the page. */
.safety {
    max-width: 1120px;
    margin: 46px auto 58px;
    border-radius: 32px;
    padding: clamp(58px, 7vw, 86px) clamp(28px, 6vw, 72px);
    box-shadow: 0 28px 80px rgba(35, 53, 55, .08);
}

.safety h2 {
    max-width: 760px;
}

.home-faq {
    max-width: 1120px;
    margin: 0 auto 62px;
    padding: 0 28px;
}

.home-faq .eyebrow,
.home-faq h2,
.home-faq details {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.home-faq h2 {
    margin-top: 12px;
    margin-bottom: 20px;
}

.home-faq details {
    padding: 20px 22px;
    background: rgba(255, 255, 255, .42);
}

.home-faq details:first-of-type {
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
}

.home-faq details:last-of-type {
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px;
}

.home-faq summary {
    list-style-position: outside;
}

@media(max-width:700px) {
    .safety {
        margin: 34px 16px 46px;
        padding: 48px 22px;
        border-radius: 24px;
    }

    .home-faq {
        padding: 0 16px;
        margin-bottom: 46px;
    }

    .home-faq details {
        padding: 18px 16px;
    }
}