/* ══════════════════════════════════════════════════════════
   RealFriends Official Theme — main.css v3.0
   Colors pixel-sampled from realfriends.me screenshot:
     Teal:#21CBD8  Sky:#1E93E0  Royal:#4568F6  Deep:#3D55DB
     Yellow:#FDD84C  Lime:#7DCD5C  Navy:#1A2E4A
   ══════════════════════════════════════════════════════════ */
:root{--teal:#21CBD8;--sky:#1E93E0;--royal:#4568F6;--deep:#3D55DB;--navy:#1A2E4A;--yellow:#FDD84C;--lime:#7DCD5C;--text:#1A2E4A;--sub:#4A5E7A;--light:#F0F9FF;}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Nunito',-apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:var(--navy);overflow-x:hidden;-webkit-font-smoothing:antialiased;padding-top:72px;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}

/* NAV */
.rf-navbar{background:linear-gradient(90deg,var(--teal),var(--sky),var(--royal));border-bottom:none;}
.rf-logo img{height:36px;}
.rf-navbar .nav-link{color:rgba(255,255,255,.85)!important;font-weight:600;transition:color .2s;}
.rf-navbar .nav-link:hover{color:#fff!important;}
.rf-navbar .navbar-toggler{border-color:rgba(255,255,255,.5);}
.rf-navbar .navbar-toggler-icon{filter:invert(1);}

/* HERO */
.rf-hero{position:relative;overflow:hidden;min-height:90vh;background:linear-gradient(135deg,var(--teal) 0%,var(--sky) 40%,var(--royal) 72%,var(--deep) 100%);display:flex;align-items:center;}
.rf-hero__shapes{position:absolute;inset:0;pointer-events:none;}
.rf-shape{position:absolute;border-radius:50%;}
.rf-shape--yellow{width:200px;height:200px;top:5%;left:3%;background:radial-gradient(circle at 35% 35%,#fde270,var(--yellow),#febc48);opacity:.9;}
.rf-shape--lime{width:145px;height:145px;bottom:18%;left:6%;background:radial-gradient(circle at 35% 35%,#cef07a,var(--lime),#5abb4a);opacity:.9;}
.rf-wave{position:absolute;bottom:0;left:0;width:100%;height:120px;}
.rf-wave--2{height:100px;}
.rf-hero__inner{position:relative;z-index:2;padding:5rem 0 6rem;}
.rf-hero__h1{font-size:64px;font-weight:900;line-height:1;color:#fff;letter-spacing:-2px;margin-bottom:.2rem;text-shadow:0 2px 20px rgba(0,0,0,.15);}
.rf-hero__h2{font-size:54px;font-weight:900;line-height:1.1;color:#fff;letter-spacing:-1.5px;margin-bottom:2rem;text-shadow:0 2px 20px rgba(0,0,0,.15);}
.rf-hero__bullets{list-style:none;padding:0;margin-bottom:2.5rem;}
.rf-hero__bullets li{font-size:17px;font-weight:700;color:#1a237e;padding:.35rem 0 .35rem 1.4rem;position:relative;line-height:1.5;}
.rf-hero__bullets li::before{content:'\203A';position:absolute;left:0;color:rgba(255,255,255,.7);font-size:20px;}
.rf-hero__stores{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;}
.rf-store-badge{height:52px;width:auto;filter:drop-shadow(0 4px 8px rgba(0,0,0,.25));}
.rf-store-pill{display:inline-block;background:#000;color:#fff;padding:12px 28px;border-radius:12px;font-size:15px;font-weight:700;box-shadow:0 4px 12px rgba(0,0,0,.25);}

/* Phone */
.rf-hero__phone-wrap{display:flex;justify-content:center;align-items:center;padding:2rem 0;}
.rf-phone-frame{width:260px;background:#fff;border-radius:44px;padding:12px;border:3px solid rgba(255,255,255,.3);box-shadow:0 36px 90px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.12);}
.rf-phone-notch{width:80px;height:24px;background:#1a1a2e;border-radius:14px;margin:0 auto 8px;}
.rf-phone-screen{width:100%;border-radius:32px;display:block;}

/* FEATURES */
.rf-features{padding:5rem 0;background:linear-gradient(160deg,#e8fdfd,#daeeff,#ebebff);}
.rf-eyebrow{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin-bottom:.5rem;}
.rf-section-title{font-size:30px;font-weight:800;color:var(--navy);margin-bottom:1.75rem;}
.rf-section-title--light{color:#fff;}
.rf-pills .nav-link{background:#fff;color:var(--sub);border:2px solid #b8e8f8;border-radius:28px;font-weight:700;font-size:14px;padding:9px 20px;transition:all .2s;display:flex;align-items:center;gap:6px;}
.rf-pills .nav-link.active,.rf-pills .nav-link:hover{background:linear-gradient(135deg,var(--teal),var(--sky));border-color:transparent;color:#fff;}
.rf-pill-shape{width:16px;height:16px;opacity:.8;}
.rf-tab-content{max-width:700px;}
.rf-tab-heading{font-size:20px;font-weight:800;color:var(--navy);margin-bottom:1.25rem;}
.rf-yn-list{display:flex;flex-direction:column;gap:.75rem;}
.rf-yn-row{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:14px;padding:1rem 1.5rem;border:1.5px solid #b8e8f8;box-shadow:0 2px 8px rgba(33,203,216,.08);}
.rf-yn-text{font-size:15px;font-weight:600;color:var(--navy);flex:1;padding-right:1rem;}
.rf-yn{flex-shrink:0;font-size:14px;font-weight:800;letter-spacing:.04em;padding:6px 20px;border-radius:20px;}
.rf-yn--yes{background:linear-gradient(135deg,var(--teal),var(--sky));color:#fff;}
.rf-yn--no{background:#ff4f4f;color:#fff;}

/* VIDEO */
.rf-video-section{padding:5rem 0;background:linear-gradient(160deg,var(--navy),#1d3870,var(--deep));}
.rf-video-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;align-items:center;margin-top:2rem;}
.rf-video-main{position:relative;border-radius:18px;overflow:hidden;border:2px solid rgba(33,203,216,.4);box-shadow:0 0 50px rgba(33,203,216,.2);min-height:500px;}
.rf-video-main video{width:100%;display:block;min-height:420px;object-fit:cover;}
.rf-video-main__overlay{position:absolute;bottom:0;left:0;right:0;z-index:3;background:linear-gradient(transparent,rgba(0,0,0,.72));padding:3rem 1.25rem 1rem;text-align:center;pointer-events:none;}
.rf-video-main__overlay strong{font-size:14px;font-weight:800;color:#fff;display:block;margin-bottom:4px;}
.rf-video-main__overlay span{font-size:12px;color:rgba(255,255,255,.65);}
.rf-video-slot{border-radius:16px;overflow:hidden;border:2px dashed rgba(33,203,216,.4);aspect-ratio:9/16;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;position:relative;cursor:pointer;transition:border-color .2s;}
.rf-video-slot:hover{border-color:var(--teal);}
.rf-vposter{overflow:hidden;}
.rf-vposter__bg{position:absolute;inset:0;z-index:0;background:linear-gradient(160deg,var(--teal) 0%,var(--sky) 40%,var(--royal) 70%,var(--deep) 100%);}
.rf-vposter__bg::before{content:'';position:absolute;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(253,216,76,.4),transparent 70%);top:8%;left:8%;}
.rf-vposter__bg::after{content:'';position:absolute;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(125,205,92,.35),transparent 70%);bottom:22%;right:10%;}
.rf-vposter__play{position:relative;z-index:2;transition:transform .2s;}
.rf-vposter:hover .rf-vposter__play{transform:scale(1.1);}
.rf-vposter__label{position:relative;z-index:2;font-size:13px;font-weight:700;color:rgba(255,255,255,.75);background:rgba(255,255,255,.18);border:1px dashed rgba(255,255,255,.5);padding:5px 16px;border-radius:20px;}
.rf-vposter__bar{position:absolute;bottom:0;left:0;right:0;z-index:2;background:linear-gradient(transparent,rgba(0,0,0,.7));padding:3rem 1rem 1rem;text-align:center;}
.rf-vposter__bar strong{font-size:13px;font-weight:800;color:#fff;display:block;margin-bottom:4px;}
.rf-vposter__bar span{font-size:11px;color:rgba(255,255,255,.6);}

/* TESTIMONIALS */
.rf-testimonials{padding:5rem 0;background:#fff;border-top:2px solid #d0f3f8;}
.rf-t-map{max-width:700px;margin:0 auto 3rem;opacity:.18;}
.rf-t-map img{width:100%;}
.rf-t-card{background:linear-gradient(145deg,#f0fdff,#e8f4ff);border:2px solid #a8e8f8;border-radius:20px;padding:2rem;text-align:center;height:100%;transition:transform .15s,box-shadow .15s;}
.rf-t-card:hover{transform:translateY(-5px);box-shadow:0 14px 36px rgba(33,203,216,.18);}
.rf-t-user-img{width:72px;height:72px;border-radius:50%;overflow:hidden;margin:0 auto 1rem;border:3px solid var(--teal);}
.rf-t-user-img img{width:100%;height:100%;object-fit:cover;}
.rf-t-stars{font-size:20px;color:var(--yellow);margin-bottom:.5rem;letter-spacing:3px;}
.rf-t-head{font-size:17px;font-weight:800;color:var(--navy);margin-bottom:.75rem;}
.rf-t-quote{font-size:14px;color:var(--sub);line-height:1.8;font-style:italic;margin-bottom:.75rem;}
.rf-t-name{font-size:14px;font-weight:700;color:var(--teal);}

/* SCREENSHOTS */
.rf-screenshots{padding:5rem 0;background:var(--light);}
.rf-ss-track{display:flex;gap:20px;overflow-x:auto;padding:1.5rem .5rem 2rem;scrollbar-width:thin;scrollbar-color:var(--teal) transparent;}
.rf-ss-track::-webkit-scrollbar{height:6px;}
.rf-ss-track::-webkit-scrollbar-thumb{background:var(--teal);border-radius:3px;}
.rf-ss-phone{flex-shrink:0;width:170px;background:#fff;border-radius:30px;padding:9px;border:2.5px solid #a8ddf8;box-shadow:0 6px 20px rgba(33,203,216,.15);transition:transform .2s,box-shadow .2s;}
.rf-ss-phone:hover{transform:translateY(-8px);box-shadow:0 16px 36px rgba(33,203,216,.25);}
.rf-ss-notch{width:60px;height:16px;background:#1a1a2e;border-radius:10px;margin:0 auto 6px;}
.rf-ss-phone img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:22px;display:block;}

/* FAQ */
.rf-faq{padding:5rem 0;background:#fff;}
.rf-accordion .accordion-item{border:none;border-bottom:2px solid #c8e8f8;border-radius:0!important;}
.rf-accordion .accordion-button{font-size:15px;font-weight:700;color:var(--navy);background:none;padding:1.1rem 0;border:none;box-shadow:none!important;}
.rf-accordion .accordion-button:not(.collapsed){color:var(--teal);}
.rf-accordion .accordion-button::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2321CBD8' d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");}
.rf-accordion .accordion-body{font-size:14px;color:var(--sub);line-height:1.8;padding:.5rem 0 1.1rem;}
.rf-accordion .accordion-body a{color:var(--teal);text-decoration:underline;}

/* CTA */
.rf-cta{position:relative;overflow:hidden;padding:6rem 0;background:linear-gradient(135deg,var(--teal) 0%,var(--sky) 40%,var(--royal) 72%,var(--deep) 100%);}
.rf-cta__shapes{position:absolute;inset:0;pointer-events:none;}
.rf-shape--yellow-sm{width:250px;height:250px;top:-80px;left:-60px;background:radial-gradient(circle,rgba(253,216,76,.3),transparent 70%);}
.rf-shape--lime-sm{width:200px;height:200px;bottom:-60px;right:8%;background:radial-gradient(circle,rgba(125,205,92,.25),transparent 70%);}
.rf-cta__inner{position:relative;z-index:2;}
.rf-cta__title{font-size:44px;font-weight:900;color:#fff;letter-spacing:-.5px;margin-bottom:.5rem;}
.rf-cta__sub{font-size:22px;font-weight:700;color:rgba(255,255,255,.85);margin-bottom:2rem;}
.rf-cta__buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem;}
.rf-btn-store img{height:54px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.25));}
.rf-btn-google{display:inline-block;background:#000;color:#fff;padding:14px 32px;border-radius:12px;font-size:16px;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.25);transition:transform .15s;}
.rf-btn-google:hover{transform:translateY(-2px);color:#fff;}
.rf-cta__tagline{font-size:15px;color:rgba(255,255,255,.7);font-weight:600;}

/* FOOTER */
.rf-footer{background:linear-gradient(135deg,var(--navy),var(--deep));padding:3.5rem 1.5rem;}
.rf-footer__logo{font-size:26px;font-weight:900;color:var(--teal);margin-bottom:.5rem;}
.rf-footer__tagline{font-size:14px;color:rgba(255,255,255,.6);margin-bottom:1.5rem;}
.rf-footer__social{display:flex;gap:1.25rem;justify-content:center;margin-bottom:1.5rem;}
.rf-footer__social a{display:inline-block;transition:transform .2s;}
.rf-footer__social a:hover{transform:scale(1.15);}
.rf-footer__social img{height:32px;width:auto;}
.rf-footer__links{display:flex;gap:2rem;justify-content:center;margin-bottom:1.25rem;}
.rf-footer__links a{font-size:14px;font-weight:600;color:rgba(255,255,255,.6);transition:color .2s;}
.rf-footer__links a:hover{color:var(--teal);}
.rf-footer__copy{font-size:13px;color:rgba(255,255,255,.35);}

/* RESPONSIVE */
@media(max-width:992px){
  .rf-hero__h1{font-size:46px;}
  .rf-hero__h2{font-size:38px;}
  .rf-hero__phone-wrap{display:none;}
  .rf-video-grid{grid-template-columns:1fr;}
  .rf-video-slot{aspect-ratio:16/9;min-height:280px;}
  .rf-video-main{min-height:300px;}
  .rf-video-main video{min-height:260px;}
}
@media(max-width:768px){
  .rf-hero__h1{font-size:36px;}
  .rf-hero__h2{font-size:30px;}
  .rf-section-title{font-size:24px;}
  .rf-cta__title{font-size:30px;}
}
