/* Real, user-supplied screenshots in CSS phone frames; no social embeds or trackers. */
.ttu-home-social {
    --social-navy: #143d5a;
    --social-orange: #F05A28;
    position: relative;
    isolation: isolate;
    margin-top: 68px;
    padding-top: 12px;
    color: #fff;
    font-family: Montserrat, sans-serif;
}
.ttu-home-social::before {
    content: '';
    position: absolute;
    inset: 105px 0 0;
    z-index: -1;
    background: radial-gradient(ellipse at 5% 100%, rgba(240,90,40,.12), transparent 45%),
        repeating-linear-gradient(135deg, transparent 0 48px, rgba(255,255,255,.025) 48px 49px), var(--social-navy);
}
.ttu-home-social *, .ttu-home-social *::before, .ttu-home-social *::after { box-sizing: border-box; }
.ttu-home-social .ttu-home-social__inner { display: grid; width: calc(100% - 64px); max-width: 1600px; margin: 0 auto; padding: 0; grid-template-columns: minmax(230px, .8fr) minmax(0, 2fr); align-items: end; gap: clamp(28px, 3vw, 54px); }
.ttu-home-social__copy { padding: 140px 0 70px; }
.ttu-home-social__kicker { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; font-size: 10px; font-weight: 750; text-transform: uppercase; letter-spacing: .12em; line-height: 1.6; }
.ttu-home-social__kicker::before { content: ''; flex: 0 0 24px; height: 3px; background: var(--social-orange); }
.ttu-home-social h2 { margin: 0; color: #fff; font-size: clamp(28px, 2.5vw, 40px); font-weight: 800; letter-spacing: -.035em; line-height: 1.2; overflow-wrap: anywhere; }
.ttu-home-social h2 span { display: block; margin-top: 7px; color: var(--social-orange); }
.ttu-home-social__description { max-width: 360px; margin: 26px 0 0; color: #d7e4ee; font-size: 14px; line-height: 1.8; }
.ttu-home-social__phones { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; gap: clamp(12px, 1.3vw, 24px); min-width: 0; }
.ttu-social-phone { position: relative; display: block; min-width: 0; color: inherit; text-decoration: none; transition: transform .25s ease; }
.ttu-social-phone__device { position: relative; width: 100%; padding: 5px; border: 2px solid #66717b; border-radius: 29px 29px 0 0; overflow: hidden; background: #111519; box-shadow: 0 12px 25px rgba(0,0,0,.22); }
.ttu-social-phone__device img { display: block; width: 100%; height: auto; border-radius: 22px 22px 0 0; }
.ttu-social-phone__speaker { position: absolute; top: 9px; left: 50%; width: 27%; height: 9px; border-radius: 0 0 9px 9px; transform: translateX(-50%); background: #111519; }
.ttu-social-phone::after { content: ''; position: absolute; inset: 65% 0 0; pointer-events: none; background: linear-gradient(transparent, var(--social-navy) 98%); }
.ttu-social-phone__button { position: absolute; z-index: 1; left: 7px; right: 7px; bottom: 32px; display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 49px; padding: 10px 6px; border-radius: 10px; background: var(--social-orange); color: #fff; font-size: clamp(13px, 1.1vw, 18px); font-weight: 800; box-shadow: 0 5px 0 rgba(0,0,0,.14); transition: background .2s ease; }
.ttu-social-phone__button i { font-size: 20px; }
.ttu-social-phone__arrow { font-size: 16px; }
.ttu-social-phone:hover { color: inherit; transform: translateY(-7px); }
.ttu-social-phone:hover .ttu-social-phone__button { background: #ff784c; }
.ttu-social-phone:focus-visible { outline: 3px solid var(--social-orange); outline-offset: 6px; border-radius: 29px 29px 0 0; }
@media (max-width: 1199px) {
    .ttu-home-social .ttu-home-social__inner { grid-template-columns: 1fr; gap: 32px; }
    .ttu-home-social::before { inset: 0; }
    .ttu-home-social { padding-top: 48px; }
    .ttu-home-social__copy { padding: 0; max-width: 680px; }
    .ttu-home-social__description { max-width: 620px; margin-top: 18px; }
    .ttu-home-social h2 span { display: inline; }
    .ttu-home-social__phones { max-width: 920px; width: 100%; margin: 0 auto; gap: 20px; }
    .ttu-social-phone__button { font-size: 16px; }
}
@media (max-width: 650px) {
    .ttu-home-social { margin-top: 45px; padding-top: 36px; }
    .ttu-home-social .ttu-home-social__inner { width: calc(100% - 32px); gap: 28px; }
    .ttu-home-social__phones { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; max-width: 430px; }
    .ttu-social-phone__button { bottom: 21px; font-size: 14px; gap: 5px; left: 4px; right: 4px; }
    .ttu-social-phone__button i { font-size: 18px; }
    .ttu-social-phone__arrow { display: none; }
    .ttu-social-phone__device { padding: 4px; border-radius: 24px 24px 0 0; }
    .ttu-social-phone__device img { border-radius: 18px 18px 0 0; }
    .ttu-home-social h2 { font-size: 29px; }
}
@media (prefers-reduced-motion: reduce) {
    .ttu-social-phone, .ttu-social-phone__button { transition: none; }
    .ttu-social-phone:hover { transform: none; }
}
