.
Previous passes tweaked colours, radii and hover states — but the
reason it still didn't READ as Hotstar is that three structural
pieces were missing entirely. No amount of colour tuning produces
that look without them:
1. A full-bleed hero — edge-to-edge backdrop image with a
gradient scrim that dissolves into the page background.
We had a small rounded gradient box inside a container.
2. A navbar that is TRANSPARENT over the hero and only turns
solid once you scroll. The header floating over artwork is
the single most recognisable part of the layout.
3. Rows that BLEED past the container to the screen edge, so
cards scroll out under the edge instead of stopping at a
margin.
══════════════════════════════════════════════════════════════════ */
/* ── 1. FULL-BLEED HERO ──────────────────────────────────────────
Breaks out of Bootstrap's .container using the standard
100vw/50% trick, so it spans the viewport regardless of what it's
nested inside. */
.hero-cinematic {
position: relative;
width: 100vw;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
/* Pull it up under the transparent navbar so the artwork starts
at the very top of the screen, like Hotstar. */
margin-top: calc(-1 * (56px + env(safe-area-inset-top, 0)));
min-height: 62vh;
display: flex;
align-items: flex-end;
overflow: hidden;
background: var(--bg);
}
@media (min-width: 768px) {
.hero-cinematic { min-height: 78vh; }
}
.hero-cinematic .hero-media {
position: absolute; inset: 0;
z-index: 0;
}
.hero-cinematic .hero-media img {
width: 100%; height: 100%;
object-fit: cover;
/* Slow Ken Burns drift — this is what makes a static backdrop
feel like a streaming service rather than a banner image. */
animation: heroDrift 18s ease-in-out infinite alternate;
}
@keyframes heroDrift {
from { transform: scale(1.04) translate3d(0, 0, 0); }
to { transform: scale(1.12) translate3d(-1.5%, -1%, 0); }
}
/* THE SCRIM. Two overlapping gradients: one bottom-up so the
artwork dissolves into the page background, one left-to-right so
text over the image stays readable regardless of what's behind
it. This is the detail that makes it look composited rather than
like a photo with text dumped on top. */
.hero-cinematic .hero-scrim {
position: absolute; inset: 0; z-index: 1;
background:
linear-gradient(0deg, var(--bg) 0%, rgba(15,15,20,.75) 22%, rgba(15,15,20,.15) 55%, rgba(15,15,20,.35) 100%),
linear-gradient(90deg, rgba(15,15,20,.92) 0%, rgba(15,15,20,.55) 42%, transparent 78%);
}
[data-theme="light"] .hero-cinematic .hero-scrim {
background:
linear-gradient(0deg, var(--bg) 0%, rgba(255,247,250,.8) 22%, rgba(255,247,250,.1) 55%, transparent 100%),
linear-gradient(90deg, rgba(255,247,250,.9) 0%, rgba(255,247,250,.5) 42%, transparent 78%);
}
.hero-cinematic .hero-content {
position: relative; z-index: 2;
width: 100%;
padding: 0 1rem 2.5rem;
max-width: 1320px;
margin: 0 auto;
animation: heroContentIn .7s cubic-bezier(.2,.8,.2,1) both;
}
@media (min-width: 768px) {
.hero-cinematic .hero-content { padding: 0 2rem 4rem; max-width: 62%; margin: 0; padding-left: max(2rem, calc((100vw - 1320px) / 2 + 2rem)); }
}
@keyframes heroContentIn {
from { opacity: 0; transform: translateY(24px); }
to { opacity: 1; transform: translateY(0); }
}
.hero-cinematic .hero-eyebrow {
font-size: .68rem; font-weight: 800;
text-transform: uppercase; letter-spacing: .14em;
color: var(--accent);
margin-bottom: .5rem;
}
.hero-cinematic h1 {
font-size: clamp(1.6rem, 5.5vw, 3.2rem);
font-weight: 900;
line-height: 1.05;
letter-spacing: -0.02em;
color: #fff;
margin-bottom: .5rem;
text-shadow: 0 2px 24px rgba(0,0,0,.5);
}
[data-theme="light"] .hero-cinematic h1 { color: var(--ink); text-shadow: none; }
.hero-cinematic .hero-meta {
display: flex; flex-wrap: wrap; align-items: center; gap: .5rem;
font-size: .78rem; color: rgba(255,255,255,.8);
margin-bottom: .9rem;
}
[data-theme="light"] .hero-cinematic .hero-meta { color: var(--muted); }
.hero-cinematic .hero-meta .dot { opacity: .5; }
.hero-cinematic .hero-desc {
font-size: .88rem; line-height: 1.55;
color: rgba(255,255,255,.82);
max-width: 52ch;
margin-bottom: 1.25rem;
display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
overflow: hidden;
}
[data-theme="light"] .hero-cinematic .hero-desc { color: var(--muted); }
.hero-cinematic .hero-actions { display: flex; gap: .6rem; flex-wrap: wrap; }
/* Hero dot indicators */
.hero-dots {
position: absolute; z-index: 3;
bottom: 1rem; left: 50%; transform: translateX(-50%);
display: flex; gap: .35rem;
}
.hero-dots button {
width: 20px; height: 3px; border-radius: 999px; border: none; padding: 0;
background: rgba(255,255,255,.35);
transition: background-color .25s ease, width .25s ease;
}
.hero-dots button.active { background: var(--accent); width: 32px; }
/* ── 2. TRANSPARENT NAVBAR OVER HERO ─────────────────────────────
Applied only when
carries .has-hero (set by the page that
renders a hero), so every other page keeps the normal solid
navbar. .nav-scrolled is toggled by JS past a scroll threshold. */
body.has-hero .navbar {
background: transparent !important;
border-image: none;
border-bottom: 1px solid transparent;
position: fixed; top: 0; left: 0; right: 0;
transition: background-color .3s ease, border-color .3s ease, backdrop-filter .3s ease;
}
body.has-hero .navbar.nav-scrolled {
background: rgba(15, 15, 20, .92) !important;
border-bottom-color: var(--border);
}
[data-theme="light"] body.has-hero .navbar.nav-scrolled {
background: rgba(255, 247, 250, .95) !important;
}
/* Over artwork the brand and controls need to be legible against
an unpredictable background, so force light treatment until the
navbar solidifies. */
body.has-hero .navbar:not(.nav-scrolled) .navbar-brand {
background: none; -webkit-text-fill-color: #fff; color: #fff;
}
body.has-hero .navbar:not(.nav-scrolled) .theme-toggle,
body.has-hero .navbar:not(.nav-scrolled) .btn-outline-secondary {
background: rgba(0,0,0,.28);
border-color: rgba(255,255,255,.22);
color: #fff;
}
body.has-hero .navbar:not(.nav-scrolled) .navbar-toggler {
border-color: rgba(255,255,255,.3);
}
body.has-hero .navbar:not(.nav-scrolled) .navbar-toggler-icon { filter: invert(1); }
/* ── 3. EDGE-TO-EDGE ROWS ────────────────────────────────────────
Cards scroll out under the screen edge instead of stopping at the
container margin. The negative margin breaks out; the matching
padding keeps the FIRST card aligned with the page's text. */
.row-bleed {
margin-left: -1rem;
margin-right: -1rem;
padding-left: 1rem;
padding-right: 1rem;
}
@media (min-width: 768px) {
.row-bleed { margin-left: -2rem; margin-right: -2rem; padding-left: 2rem; padding-right: 2rem; }
}
/* Hide the scrollbar on bleeding rows — a visible bar cutting
across a full-width row breaks the effect. */
.row-bleed::-webkit-scrollbar { display: none; }
.row-bleed { scrollbar-width: none; }
/* Row scroll arrows (desktop only — touch devices just swipe) */
.row-wrap { position: relative; }
.row-arrow {
display: none;
position: absolute; top: 0; bottom: 22px;
width: 44px;
border: none;
z-index: 4;
color: #fff;
font-size: 1.1rem;
opacity: 0;
transition: opacity .25s ease;
cursor: pointer;
}
.row-arrow.prev { left: 0; background: linear-gradient(90deg, var(--bg) 30%, transparent); }
.row-arrow.next { right: 0; background: linear-gradient(270deg, var(--bg) 30%, transparent); }
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
.row-arrow { display: block; }
.row-wrap:hover .row-arrow { opacity: 1; }
}
/* ── Landscape card variant — Hotstar uses 16:9 tiles for most
content rows, not portrait posters. Portrait stays available via
the existing .poster-card for anything that suits it. ── */
.tile-card {
flex: 0 0 auto;
width: 168px;
scroll-snap-align: start;
color: var(--ink);
display: block;
}
.tile-thumb {
width: 168px; aspect-ratio: 16 / 9;
border-radius: 8px; overflow: hidden;
background: var(--surface); position: relative;
box-shadow: 0 4px 14px rgba(0,0,0,.3);
transition: transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease;
}
.tile-thumb img { width: 100%; height: 100%; object-fit: cover; }
.tile-thumb .no-image { width:100%; height:100%; display:flex; align-items:center; justify-content:center; color: var(--muted); }
@media (min-width: 992px) {
.tile-card { width: 208px; }
.tile-thumb { width: 208px; }
}
@media (hover: hover) and (pointer: fine) {
.tile-card:hover .tile-thumb {
transform: scale(1.08);
box-shadow: 0 20px 40px rgba(0,0,0,.55);
z-index: 3;
}
}
.tile-caption { font-size: .72rem; font-weight: 600; margin-top: .45rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tile-price {
position: absolute; bottom: 0; left: 0; right: 0;
background: linear-gradient(0deg, rgba(0,0,0,.88), transparent);
color: #fff; font-weight: 800; font-size: .74rem;
padding: 1.1rem .5rem .35rem;
}
/* Row heading — smaller and tighter than a page heading, with the
"See all" only appearing on hover (desktop), which is how these
rows behave on streaming apps. */
.row-head {
display: flex; align-items: center; justify-content: space-between;
margin: 1.4rem 0 .55rem;
}
.row-head h2 {
font-size: .98rem; font-weight: 800; margin: 0;
letter-spacing: -0.01em; color: var(--ink);
}
.row-head a { font-size: .72rem; font-weight: 700; opacity: 0; transition: opacity .2s ease; }
.row-wrap:hover .row-head a, .row-head:hover a { opacity: 1; }
@media (hover: none) { .row-head a { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
.hero-cinematic .hero-media img { animation: none; }
.hero-cinematic .hero-content { animation: none; }
}
Adult
Escorts
✔️VERIFIED ✪ AN ENJOYABLE ENCOUNTER THAT WILL ENHANCE YOUR DAY TELEGRAM: @xoxochaselauraa or SNAPCHAT: @clauraxoxo
✔️VERIFIED ✪ AN ENJOYABLE ENCOUNTER THAT WILL ENHANCE YOUR DAY TELEGRAM: @xoxochaselauraa or SNAPCHAT: @clauraxoxo
barrie, belleville, brampton, brantford, chatham, cornwall, sudbury, guelph, hamilton, kingston, kitchener, londonon, mississauga, niagara, ottawa, owensound, peterborough, sarnia, sault, thunderbay, toronto, tweed, windsor
· · 0 views
Price on request
Let's indulge in one another I am a low-volume, highly selective provider as to the gentleman I choose to entertain. I reserve my time for a small number of sophisticated, well mannered, respectful, generous and discerning gentlemen who know how to treat a special lady. I prefer gentlemen who are seeking high quality, beauty and passion while valuing cleanliness, professionalism, and discretion. In return I will make your fantasies come alive and will spoil you in a way you have never experienced before! I look forward to spending quality time with you! XOXOLAURA ???? I’m a INDEPENDENT hooker provider ✌️ -I do require a deposit and I do a light screening!
“SOCIAL MEDIA” -TIKTOK @xoxochaselaura -TWITTER @xoxochaselaura -TELEGRAM @xoxochaselaura -ZANGI @1023116302 -DISCORD @xoxochaselaura -SIGNAL +14429992429
-Screening verification and References is required. -Booking, FaceTime-show and live-verification -My safety is your safety. -I require a deposit for new clients and certain situations -please be respectful and follow my guidelines. -I respond to text MESSAGE and CALL “Preferred Name Service and length of interest Preferred location, day, and time Age, ethnicity, length of your desired meeting”
REQUIRED & ADVANCED BOOKING Meet & Greets Dinner Dates Private chef or house cleaner Overnights CONTENT SELL FaceTime/videocall session Party & show Weekends chill? Travel Buddy Custom videos & pictures FMTY? REQUEST & dirty talk -Don’t forget to Mention that you found my ad on this site! ????
Reviews
Seller
Chase Laura
(402) 407-7011
♡ Save to favourites
Report this listing
Home
Search
Sell
Messages
Account