:root { --peach: #FC643A; --peach-soft: rgba(249,123,2,.12); --peach-glow: rgba(249,123,2,.35); --bg: #0b0b0e; --panel: #12121a; --text: #f4f4f6; --muted: #b7b7c2; --line: rgba(255,255,255,.10); --radius: 16px; --wrap: 1180px; }

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }

body { font-family: system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; background: var(--bg); color: var(--text); line-height: 1.5; }

a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }

p {margin:0; padding:0 0 10px 0;}

section h1 { font-size:32px; }
section h2 { font-size:24px; }

.visually-hidden {position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;}



.wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 18px; } 

.skip { position: absolute; left: -999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.skip:focus { left: 18px; top: 18px; width: auto; height: auto; padding: 10px 12px; background: var(--panel); border: 2px solid var(--peach); border-radius: 12px; z-index: 9999; }



.siteHeader {position: sticky; top: 0; z-index: 50; overflow-x: clip;}
.navBar {background: rgba(11,11,14,.88); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line);}
.navRow { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 18px; }
.phone { font-weight: 600; letter-spacing: .3px; }
.logo { font-weight: 900; letter-spacing: .3px; display: flex; align-items: center;}
.logo svg {width:auto; height:35px; margin-right:10px;}
.logoPeach { color: var(--peach); }

.menuBtn{appearance:none; border:0; background:transparent; display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:12px; cursor:pointer;}
.menuBtn:focus-visible{outline:2px solid currentColor; outline-offset:3px;}
.nav { display:flex; gap:18px; align-items:center; }
.nav a { position: relative; padding: 8px 10px; border-radius: 10px; }
.nav a:hover { color: var(--peach); }
.nav a[aria-current="page"]::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 2px; height: 2px; background: var(--peach); border-radius: 999px; }
.menuBtn{ display:none; }

.smsIcon, .waIcon, .callIcon {display:none;}
.smsIcon img, .waIcon img, .callIcon img {display:block;}

@media (max-width: 900px){
  .phone {display:none}
  .smsIcon, .waIcon, .callIcon { display:block;}
  .menuBtn{ display:inline-flex; }
  .nav {
        position: fixed; top: 100px; right: 0; width:300px; max-height: calc(100dvh - 120px); background: rgba(1,1,1,0.92); backdrop-filter: blur(12px);
        padding: 26px 24px 28px; border-radius: 18px; overflow-y: auto; z-index: 999;  transform: translateX(100%); transition: transform 500ms ease;
        border: 1px solid var(--line); flex-direction: column; align-items: flex-start;
  }
  #primaryNav.isOpen{transform: translateX(-10px);}
}






.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 14px; border-radius:16px; border: 1px solid var(--line); background: rgba(255,255,255,.06); font-weight:600; cursor: pointer; }
.btn.primary { background: linear-gradient(180deg,#ff8c2a,#FC643A); border: none; color: #000; box-shadow: 0 6px 22px rgba(249,123,2,.35); }
.btn.primary:hover { box-shadow: 0 8px 30px rgba(249,123,2,.55); transform: translateY(-1px); }
.btn.ghost { background: transparent; border: 1px solid var(--line); background: rgba(255, 255, 255, .06);}
.btn.small { padding:6px 11px; font-size: 14px; }


.heroGrid {display:flex;gap:50px;align-items:flex-start;}
.heroSearch {flex: 1 1 auto;min-width: 0; /* important: prevents overflow */}
.heroReels {flex: 0 0 250px;}
.heroAside {flex: 0 0 300px;}
@media (max-width: 980px) { 
    .heroGrid {flex-wrap:wrap;}
    .heroSearch {width:100%;}
}

.hero { padding: 34px 0 18px; }
.hero h1 { position: relative; display: inline-block; color:#fff;}
.hero h1::after { content: ""; display: block; width: 64px; height: 4px; margin-top: 8px; background: var(--peach); border-radius: 999px; }
.hero h2 {margin:0; padding:0 0 10px 0; font-size:22px;}
.hero h2::after {content:""; display:block; width:56px; height:3px; margin-top:6px; background:#f97b02; border-radius: 999px;}
.hero .miniCard {margin-top:20px;}


.heroField {position: relative; display:block; margin-bottom: 10px;}
.heroSuggest {position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 50; background: var(--panel); border: 1px solid var(--line); border-radius: 12px;overflow: hidden; box-shadow: 0 16px 60px rgba(0,0,0,.55); padding:10px;}
.heroSuggestInner {max-height: 200px;overflow-y: auto;}
.heroSuggestItem {padding: 10px 10px 0 10px; border-radius:10px; display: flex;align-items: center; gap: 10px;cursor: pointer;border-bottom: 1px solid rgba(255,255,255,.06); margin-right:10px;}
.heroSuggestItem img {height:80px; width:auto; border-radius:3px;}
.heroSuggestItem:last-child { border-bottom: 0; }
.heroSuggestItem:hover { background: rgba(255,255,255,.06); }
.heroSuggestTag {font-size: 12px;color: var(--muted);border: 1px solid rgba(255,255,255,.12);padding: 2px 8px;border-radius: 999px;}
.heroSuggestInner::-webkit-scrollbar {width: 10px;}
.heroSuggestInner::-webkit-scrollbar-thumb {background: rgba(255,255,255,.18); border-radius: 10px; border: 3px solid transparent; background-clip: padding-box;}
.heroBtns {flex-wrap: wrap; gap:10px; margin-top:10px; display:none; }
.heroBtns a {flex: 0 0 calc((100% - 20px) / 3);}
.searchToggle {padding: 11px 12px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255, 255, 255, .06); color: var(--text); margin-bottom:10px; display:none; align-items: center; cursor:pointer;}
.searchToggle::before {
  margin-right:5px; content:""; width:18px; height:18px; background: var(--text); mask:url("../icons/search.svg") center / contain no-repeat; -webkit-mask:url("../icons/search.svg") center / contain no-repeat;
}


.searchCard { background: var(--panel); border: 1px solid var(--line); border-top: 3px solid var(--peach); border-radius: var(--radius); padding: 16px;}
.searchCard.isOpen{max-height: 600px;   /* bigger than the content */ opacity: 1; padding: 16px;}


.searchCardFullWidth .heroSearchRow {display:flex; gap:10px;}
.searchCardFullWidth .heroField {margin-bottom:0;flex: 0 0 calc((100% - 30px) / 4);}



@media (max-width: 980px) { 
    .hero {padding:14px 0 18px;}
    .searchCard .heroSearchRow {display:flex; flex-wrap: wrap; gap:10px;}
    .searchCard .heroField {margin-bottom:0;flex: 0 0 calc((100% - 10px) / 2);}
}
@media (max-width: 660px) { 
    .heroGrid {gap:20px;}
    .heroBtns {display:flex;}
    .heroReels {max-width: 360px; width: 100%;  flex: unset; margin: 0 auto;}
    .heroAside {display:none;}
    .searchToggle {display:inline-flex;}
    .searchCard {overflow: hidden; max-height: 0; opacity: 0; transition: max-height 260ms ease, opacity 200ms ease; padding:0;}
}
@media (max-width: 600px) { 
    .searchCard .heroSearchRow {gap:10px;}
    .searchCard .heroField {flex: 0 0 100%;}
    .heroBtns a {flex: 0 0 calc((100% - 10px) / 2);}

}




/* HERO REELS */
.heroReels { margin-top: 14px; max-width:250px;}
.heroReelsHead { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.reelsTitle { appearance: none; border: 0; background: transparent; color: #fff; font-size: 18px; font-weight: 900; letter-spacing: .2px; cursor: pointer; padding: 0; }
.reelsTitle::after { content: ""; display: block; width: 56px; height: 3px; margin-top: 6px; background: #f97b02; border-radius: 999px; }
.heroReelsControls { display: flex; gap: 8px; }
.reelsMiniNav { width: 34px; height: 34px; border-radius: 999px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.55); color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 18px; }
.reelsMiniNav:hover { border-color: rgba(249,123,2,.55); box-shadow: 0 0 0 3px rgba(249,123,2,.12); }
.reelsMini { overflow: hidden; border-radius: 14px; border: 1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.04); }
.reelsMiniTrack { display: flex; transition: transform 420ms ease; will-change: transform; }
.reelItem { position: relative; flex: 0 0 100%; overflow: hidden; }
.reelMedia { aspect-ratio: 6 / 9; background: #000; position:relative; }
.reelMedia video, .reelMedia img { width: 100%; height: 100%; object-fit: cover; display: block; }
.reelMeta { padding:10px 12px 0 12px; font-size: 13px; position:absolute; bottom:0; width:100%;padding-top: 50px; background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);}
.reelName { margin: 0 0 4px; font-weight: 900; }
.reelName a:hover { color: #f97b02; }
.reelLine, .reelDesc { margin: 0 0 4px; color: rgba(255,255,255,.85); }
.reelDesc { color: rgba(255,255,255,.92); }
.reelHit { position: absolute; inset: 0; border: 0; background: transparent; cursor: pointer; }
.reelsModal { position: fixed; inset: 0; z-index: 999999; background: rgba(0,0,0,.92); display: flex; align-items: center; justify-content: center; padding: 14px; }
.reelsModal[hidden] { display: none; }
.reelsModalInner { width: min(460px, 100%); height: min(90vh, 820px); position: relative; }
.reelsProgress { height: 3px; background: rgba(255,255,255,.16); border-radius: 999px; overflow: hidden; margin-bottom: 10px; }
.reelsProgressBar { display: block; height: 100%; width: 0%; background: #f97b02; border-radius: 999px; }
.reelsStage { width: 100%; height: calc(100% - 15px); border-radius: 14px; overflow: hidden; background: #000; position: relative; }
.reelsStageMedia { width: 100%; height: 100%; }
.reelsStageMedia video, .reelsStageMedia img { width: 100%; height: 100%; object-fit: cover; display: block; }
.reelsText { position: absolute; left: 0; right: 0; bottom: 0; padding:50px 10px 15px 10px; border-radius: 14px; background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);}
.reelsCaption { margin: 0 0 10px; font-size: 15px; color: rgba(255,255,255,.95); }
.reelsCta { display: inline-block; padding: 6px 12px; border-radius: 10px; background: #f97b02; color: #000; font-weight:700; text-decoration: none; }
.reelsBtn { position: absolute; top: 8px; width: 40px; height: 40px; border-radius: 999px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.7); color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.reelsClose { right: 8px; }
.reelsMute { left: 8px; }

.reelsNav { position: absolute; top: 50%; transform: translateY(-50%); z-index:1; width: 48px; height: 48px; border-radius: 999px; border: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.65); color: #fff; cursor: pointer; font-size: 28px; display: flex; align-items: center; justify-content: center; }
.reelsPrev { left: -18px; }
.reelsNext { right: -18px; }

.reelsAction {
    position: absolute;top: 10px;z-index: 5;width: 40px;height: 40px;border-radius: 999px;
    border: 1px solid rgba(255,255,255,.25);background: rgba(0,0,0,.65); color: #fff; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 18px;
}
.reelsClose { right: 10px; }
.reelsMute { right: 58px; } /* sits just left of close */
.reelsAction:hover {background: rgba(0,0,0,.85);border-color: #f97b02;}
@media (max-width: 520px) { .reelsPrev { left: 6px; } .reelsNext { right: 6px; } .reelsModalInner { height: 92vh; } }








.lead { color: var(--muted); margin: 8px 0 14px; max-width: 62ch; }


label span, fieldset span  { display: block; font-size: 13px; color: var(--muted); margin: 0 0 6px; }

input:not([type='checkbox']), select, textarea {font-family: system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; width: 100%; padding: 11px 12px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255,255,255,.06); color: var(--text); }
input:focus, select:focus, textarea:focus { border-color: var(--peach); outline: none; }

select {
	appearance: none;-webkit-appearance: none;-moz-appearance: none;
	background-image: url("../icons/chevron-down.svg");background-repeat: no-repeat;background-position: right 10px center;background-size:18px;
}
select option {background-color: #222;}
select option:hover {background-color:#222;}

.chipRow { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.chip { display: inline-flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255,255,255,.04); }
.chip input:not([type='checkbox']) { accent-color: var(--peach); }

.section { padding: 22px 0; }
.sectionAlt { background: rgba(255,255,255,.03); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }

.sectionHead { display: flex; align-items: end; justify-content: space-between; margin-bottom: 12px; }
.sectionHead h2 { margin: 0; font-size: 22px; }
.sectionHead h2 { position: relative; padding-left: 14px; }
.sectionHead h2::before { content: ""; position: absolute; left: 0; top: .35em; width: 4px; height: 1.1em; background: var(--peach); border-radius: 999px; }

.contentBottom {margin-top:25px;}







.grid { display: flex; flex-wrap: wrap; gap: 14px; }
.grid .card {flex: 0 0 calc((100% - 56px) / 5);}
@media (max-width: 1100px) { .grid .card {flex: 0 0 calc((100% - 42px) / 4); } }
@media (max-width: 820px)  { .grid .card {flex: 0 0 calc((100% - 28px) / 3); } }
@media (max-width: 520px)  { .grid {gap:5px;} .grid .card {flex: 0 0 calc((100% - 5px) / 2); } }

.card {position:relative; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; }
.card:hover { transform: translateY(-2px); box-shadow: 0 12px 38px rgba(249,123,2,.18); }
.cardMedia {position:relative; display:block;}
.cardMedia.holiday::after {position:absolute; top:0; left:0; width:100%; height:100%;background: rgba(0, 0, 0, 0.7); content: 'On Holiday'; display: flex; align-items: center; justify-content: center;}
.cardMedia img { width: 100%; height: auto; display: block; }

.card.duoCard {display:flex; flex-wrap:wrap;}
.card.duoCard .cardMedia {width:50%;}

.grid .card.duoCard {flex: 0 0 calc((100% - 56px) / 3);}

/* -----------------------------------
   CARD VIDEO + PLAY BUTTON (CLEAN)
----------------------------------- */

.card{
  position:relative;
}

/* PLAY BUTTON */
.playBtn {position:absolute; top:5px; left:5px; z-index:2; width:30px; height:30px; border-radius:999px; border:0; background:rgba(0,0,0,.65); cursor:pointer; display:flex; align-items:center; justify-content:center;}
.playBtn::before{
  content:""; width:24px; height:24px; background:#fff; mask:url("../icons/play.svg") center / contain no-repeat; -webkit-mask:url("../icons/play.svg") center / contain no-repeat;
}
/* Change icon when playing */
.card.isPlaying .playBtn::before{
  mask:url("../icons/stop.svg") center / contain no-repeat; -webkit-mask:url("../icons/stop.svg") center / contain no-repeat;
}
/* VIDEO LAYER */
.cardVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none;z-index:5;pointer-events:none;}
/* Show only when playing */
.card.isPlaying .cardVideo{display:block;}
/* Ensure media stack is correct */
.cardMedia{position:relative; z-index:1;}




.cardBody { padding: 12px; }
.cardTitle { margin: 0 0 6px; font-size: 16px; margin: 0 0 10px; font-weight: 700;line-height: 1.2;}
.cardTitle a:hover { color: var(--peach); }
.meta { color: var(--muted); margin: 0 0 8px; font-size: 13px; }


.favBtn { position:absolute; top:5px; right:5px; z-index:2; width:30px; height:30px; border-radius:999px; border:0; background:rgba(0,0,0,.65); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.favBtn::before { content:""; width:24px; height:24px; background:#fff; mask:url("../icons/heart.svg") center / contain no-repeat; -webkit-mask:url("../icons/heart.svg") center / contain no-repeat; transition:background .15s ease; }
.favBtn[aria-pressed="true"]::before { background:var(--peach); mask:url("../icons/heart-checked.svg") center / contain no-repeat; -webkit-mask:url("../icons/heart-checked.svg") center / contain no-repeat;}

.tagContainer {position: absolute; bottom:5px; right:5px;}
.tagContainer > span {
     text-shadow: 1px 1px 2px #000;
    display: inline-block;
    margin-left: 1px;
    background: rgba(0, 0, 0, 0.7);
    line-height: 1;
    color: #f97b02;
    font-size: 12px;
    padding: 3px 5px 4px 5px;
    border-radius: 5px;
    font-weight: 500;
}


.galleryDesc a {color:var(--peach);}
.galleryDesc summary {
    cursor: pointer;
    list-style: none;
    margin-top: 10px;
}

.galleryDesc summary::-webkit-details-marker {
    display: none;
}

/* Hide full text initially */
.galleryDesc .fullText {}

/* When open */
.galleryDesc[open] .shortText,
.galleryDesc[open] .readMoreBtn {
    display: none;
}
.galleryDesc .readMoreBtn {color: var(--peach);}



/* =========================================
   HOME: Latest Escort Reviews
   ========================================= */

.homepage-reviews { padding:40px 0; }
.homepage-reviews .newContainer { max-width:1200px; margin:0 auto; padding:0 16px; }

.allReviews {display: flex; flex-wrap: wrap;gap: 20px;}

/* -----------------------------------------
   Section header
----------------------------------------- */

.homepage-reviews .sectionHeader h2 { margin:0 0 18px; }

/* -----------------------------------------
   Carousel shell
----------------------------------------- */

.review-carousel { position:relative; }
.review-carousel__viewport { overflow:hidden; position:relative; }
.review-carousel__track { display:flex; gap:20px; transition:transform .6s ease; will-change:transform; }

/* -----------------------------------------
   Review card (image left, content right)
----------------------------------------- */

.review-card { 
   flex:0 0 50%; box-sizing:border-box; padding:14px; display:flex; gap:14px; align-items:flex-start; 
   background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); flex:0 0 calc(50% - 10px);
}
.review-card__media { flex:0 0 110px; }
.review-card__media img { width:100%; height:auto; display:block; border-radius:8px; }
.review-card__content { flex:1; min-width:0; }

.review-card__name { margin:0 0 6px; font-size:18px; line-height:1.2; }
.review-card__meta { margin:0 0 8px; font-size:13px; opacity:.8; display:flex; gap:8px; flex-wrap:wrap; }
.review-card__excerpt { font-size:14px; line-height:1.45; }
.review-card__cta { margin:10px 0 0; }

/* -----------------------------------------
   Carousel dots
----------------------------------------- */

.review-carousel__nav { margin-top:16px; display:flex; justify-content:center; }
.review-carousel__dots button { width:10px; height:10px; border-radius:999px; border:0; margin:0 6px; background:#cfcfcf; cursor:pointer; transition:transform .2s ease, background .2s ease; }
.review-carousel__dots button[aria-current="true"] { background:#333; transform:scale(1.15); }

/* -----------------------------------------
   Footer link
----------------------------------------- */

.homepage-reviews .homeAllReviews { margin-top:18px; text-align:center; }

.reviewsMore {margin:20px; text-align: center;}

/* =========================================
   Responsive
   ========================================= */

@media (max-width:992px){
	/* .review-card { flex:0 0 50%; } */
}

@media (max-width:600px){
   .review-carousel__track {gap:0;}
	.review-card { flex:0 0 100%;  flex-direction:column; }
	.review-card__media { width:100%; max-width:180px; }
}







:focus-visible { outline: 3px solid var(--peach); outline-offset: 2px; }

.noScroll{overflow:hidden;}

#floatingFavBtn{position:fixed;right:16px;bottom:16px;width:46px;height:46px;border-radius:999px;background: var(--panel);border: 1px solid var(--line);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.3);transform:scale(.9);opacity:0;pointer-events:none;transition:all .2s ease;z-index:9999;}
#floatingFavBtn.isVisible{transform:scale(1);opacity:1;pointer-events:auto;}
.floatingFavIcon{width:32px;height:32px;background:var(--peach);mask:url("../icons/heart-checked.svg") center/contain no-repeat;-webkit-mask:url("../icons/heart-checked.svg") center/contain no-repeat;}
.favCount{position: absolute; top: 50%;left: 50%; border-radius: 999px; color: #fff;  font-size: 10px; font-weight: 600; text-align: center;  transform: translate(-50%, -50%);}

#favOverlay{position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:all .2s ease;z-index:9998;}
#favOverlay.isOpen{opacity:1;visibility:visible;}

#favPanel{position:fixed;left:0;right:0;bottom:0;background:#000;border-radius:20px 20px 0 0;transform:translateY(100%);transition:transform .25s ease;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 -20px 40px rgba(0,0,0,.25);z-index:9999;}
#favPanel.isOpen{transform:translateY(0);}

.closeFavPanel { width:30px; height:30px; border-radius:999px; border:0; background:rgba(255,255,255,.1); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.closeFavPanel::before { content:""; width:24px; height:24px; background:var(--peach); mask:url("../icons/close.svg") center / contain no-repeat; -webkit-mask:url("../icons/close.svg") center / contain no-repeat; transition:background .15s ease; }

.favPanelHeader{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid rgba(0,0,0,.08);}
.favPanelTitle{display:flex;align-items:center;gap:10px;}

.favPanelIcon{width:18px;height:18px;background:var(--peach);mask:url("../icons/heart-checked.svg") center/contain no-repeat;-webkit-mask:url("../icons/heart-checked.svg") center/contain no-repeat;}

.favPanelBody{overflow:auto;padding:10px 16px 20px; display:flex; gap:14px;}
.favPanelBody::-webkit-scrollbar {width:12px;}
.favPanelBody::-webkit-scrollbar-thumb {background: rgba(255,255,255,.18); border-radius: 10px; border: 3px solid transparent; background-clip: padding-box;}


.favRow{display:flex;align-items:center;gap:12px; position:relative;}
.favRowLink{display:flex;align-items:center; flex-direction:column; gap:12px;flex:1;text-decoration:none;color:inherit; width:150px;}
.favRow img{width:100%;height:auto;object-fit:cover;border-radius:10px; }
.favName{font-weight:600;font-size:14px;}



.favRemoveBtn { position:absolute; top:5px; right:5px; z-index:2; width:30px; height:30px; border-radius:999px; border:0; background:rgba(0,0,0,.65); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.favRemoveBtn::before { content:""; width:24px; height:24px; background:var(--peach); mask:url("../icons/heart-checked.svg") center / contain no-repeat; -webkit-mask:url("../icons/heart-checked.svg") center / contain no-repeat; transition:background .15s ease; }




.favEmpty{text-align:center;padding:30px 0;opacity:.6;}

.favBurst{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:3;}
.favBurstIcon{width:60px;height:60px;background:var(--peach);mask:url("../icons/heart-checked.svg") center/contain no-repeat;-webkit-mask:url("../icons/heart-checked.svg") center/contain no-repeat;opacity:.9;transform:scale(.5);animation:favBurstAnim .6s ease forwards;}
@keyframes favBurstAnim{0%{transform:scale(.5);opacity:.9;}60%{transform:scale(1.6);opacity:.9;}100%{transform:scale(2.2);opacity:0;}}


/* ===============================
   Employment Form – 2 Column Layout
   =============================== */

.employment {display: grid; gap: 18px;}

/* Desktop layout */
@media (min-width: 800px) {
  .employment { grid-template-columns: 1fr 1fr;}

  /* Make section headings full width */
  .employment h3 {grid-column: 1 / -1; margin-top: 20px;}

  /* Rates table full width */
  .employment table {grid-column: 1 / -1;}

  /* About textarea full width */
  .employment textarea {min-height: 140px;}

  /* Fieldsets full width */
  .employment fieldset { grid-column: 1 / -1;}

  /* Small explanatory text full width */
  .employment small {grid-column: 1 / -1; }

  /* Disclaimer full width */
  .employment > div:last-of-type, .employment > div:nth-last-of-type(2) { grid-column: 1 / -1;}
}
@media (min-width: 1200px) {
  .employment {grid-template-columns: 1fr 1fr; column-gap: 40px;}
}

.employment label {display:block; margin-bottom:15px;}
.employment select[name=selfie_publish],.employment select[name=video_publish] {margin-top:5px;}
.employment label.chip {font-size: 13px; color: var(--muted); display:inline-flex; margin-bottom:5px;}
.employment table {width:100%; border-collapse: collapse; max-width:500px;}
.employment table td,.employment table th {
   padding: 5px 10px;border: 1px solid var(--line); background: rgba(255, 255, 255, .06);font-size: 13px;color: var(--muted);
   font-weight: normal;
}
.employment table label {margin:0;}
.employment table input {background:transparent; border:0; padding:5px;}
.employment table th:empty {background: none; border: none;}
input[type="date"]::-webkit-calendar-picker-indicator {opacity: 0;position: absolute;right: 10px;width: 24px;height: 24px;cursor: pointer;}

input[type="date"] {
  background-image: url("../icons/calendar.svg"); position: relative;
  background-repeat: no-repeat;background-position: right 12px center;background-size: 18px;padding-right: 40px;
}


.duo-box{
  position:absolute; top:calc(100% + 6px); left:0; width:100%; display:none; border: 1px solid var(--line); background:#111;
  max-height:260px;overflow:auto;z-index:9999;
}
.duo-box::-webkit-scrollbar {width:12px;}
.duo-box::-webkit-scrollbar-thumb {background: rgba(255,255,255,.18); border-radius: 10px; border: 3px solid transparent; background-clip: padding-box;}
.duo-item{ padding:10px 12px; cursor:pointer; }
.duo-item:hover{ background:rgba(255,255,255,.06); }

.duo-wrap{ position:relative; width:100%; }
.duo-selected{display:flex;flex-wrap:wrap;gap:8px; align-items: center; margin-top: 12px;}
.duo-chip {
   display:inline-flex; align-items:center; gap:8px; padding:6px 10px; font-size:14px; border-radius: 12px;
   border: 1px solid var(--line); background: rgba(255, 255, 255, .06);
}
.duo-remove{border:0; background:none; cursor:pointer; font-weight:700; line-height:1; padding:0 2px;color:#f97b02;}


.sendingOverlay{
    position:fixed; inset:0; z-index:99999;
    background:rgba(0,0,0,.55);
    display:none;
    align-items:center;
    justify-content:center;
    padding:24px;
  }
  .sendingOverlay.isOn{ display:flex; }
  .sendingCard{
    background:#0b1220;
    color:#fff;
    border-radius:16px;
    padding:18px 18px;
    width:min(520px, 92vw);
    box-shadow:0 18px 60px rgba(0,0,0,.35);
    font-family:system-ui, -apple-system, Segoe UI, Roboto, Arial;
  }
  .sendingTitle{ font-weight:800; font-size:18px; margin:0 0 6px; }
  .sendingText{ opacity:.85; margin:0; line-height:1.4; font-size:14px; }


#uploadSizeMsgContainer {display:none; position:fixed;top:0;left:0; width:100vw; height:100vh; justify-content:center; align-items:center; background:rgba(11, 11, 14, .88); backdrop-filter:blur(10px);}
#uploadSizeMsg {padding: 16px; border-radius: 16px; background: rgba(255, 255, 255, 0.08); color: #fff;}


.homeFaq h2{text-align:center;margin-bottom:40px;}
.faqItem{border-bottom: 1px solid var(--line); padding:18px 0;}
.faqItem summary{font-weight:600;cursor:pointer;list-style:none;position:relative;padding-right:30px;}
.faqItem summary::-webkit-details-marker{display:none;}
.faqItem summary:after{content:"+";position:absolute;right:0;top:0;font-size:22px; line-height:22px; transition:transform .2s ease;}
.faqItem[open] summary:after{content:"−";}
.faqItem p{margin-top:12px;line-height:1.6;color: var(--muted);}


/* Breadcrumbs */
.breadcrumbs {
    font-size: 13px; line-height: 1.3; color: rgba(255,255,255,0.72); margin: 0 0 14px 0; display:flex; flex-wrap:wrap; gap: 8px; align-items:center;
}
.breadcrumbs a {color: rgba(255,255,255,0.86); text-decoration: none;}
.breadcrumbs a:hover{ text-decoration: underline; }
.breadcrumbs span{ color: rgba(255,255,255,0.55); }

.newsSection h1::after {content: "";display: block;width: 64px;height: 4px;margin-top: 8px;background: var(--peach);border-radius: 999px;}
.newsHeader {margin-bottom:30px;}
.newsHeader h1 {margin-bottom:10px;}
.newsIntro {max-width:700px;color:var(--muted);}
.newsList {display:grid;gap:28px;}
.newsItem {padding-bottom:20px;border-bottom:1px solid var(--border);}
.newsTitle {font-size:1.25rem; margin:0 0 8px;}
.newsTitle a {text-decoration:none;}
.newsTitle a:hover {text-decoration:underline;}
.newsExcerpt {margin:0 0 8px; color:var(--muted);}
.newsDate {display:block;font-size:0.9rem;color:var(--muted);}

.articleDate {color:var(--muted);font-size:0.9rem;}
.articleBody h2 {margin-top:30px;margin-bottom:10px;font-size:1.3rem;}
.articleBody p {margin-bottom:16px;line-height:1.6;}
.articleBody a {text-decoration:underline;}


/* FOOTER  */
.footer {background: rgba(0, 0, 0, 0.08); padding-top:40px; font-size:12px; position:relative;}
.footerTitle { margin: 0 0 10px; font-weight: 700; font-size: 18px;line-height: 1.2;}
.footer::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right, transparent, #ff8a00, transparent); }
.footer .content {max-width:980px; padding:0 10px; margin:0 auto;}
.footerGrid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 14px; margin-top: 10px; }
.footerCol { grid-column: span 3; padding: 16px; border-radius: 16px; background: rgba(255,255,255,0.08);}
.footerCol h3 {margin: 0 0 8px 0; margin-bottom: 10px; font-size: 18px;line-height: 1.25; font-weight: 500; padding-bottom:0;}
.footerLinks { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.footerLinks a { color: rgba(255,255,255,0.86); text-decoration: none; }
.footerLinks a:hover { text-decoration: underline; }
.footerLinksSmall { gap: 8px; }
.footer .smallNote {font-size:12px;}
.footerDivider { height: 1px; background: rgba(255,255,255,0.12); margin: 14px 0; }
.footerBottom { margin-top: 14px; padding-top: 14px; margin-bottom:10px; border-top: 1px solid rgba(255,255,255,0.12); display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.footerBottom a { color: rgba(255,255,255,0.86); text-decoration: none; }
.footerBottom a:hover { text-decoration: underline; }
.footerBottom ul {margin-bottom:10px; display:flex;}
.footerLinks.svg {display:flex; align-items: center;gap: 15px;}
.footerLinks.svg svg, .footerLinks.svg img {width:auto; height:30px; fill:rgba(255,255,255,0.5)}
.footerLinks.svg a.twitter svg, .footerLinks.svg a.twitter img {height:25px;}
/* Tablet: 2 across */
@media (max-width: 980px) { .footerCol { grid-column: span 6; } }
/* Mobile: 1 across */
@media (max-width: 540px) { .footerCol { grid-column: span 12; } }


#cookieDesc{opacity:1;	transition:none;}
.cookie-known #cookieOverlay,.cookie-known #cookieBanner{display:none !important;}
.cookieOverlay,.cookieBanner {contain:layout paint;}
.cookieOverlay{position:fixed;inset:0;background:rgba(0,0,0,0.8);backdrop-filter:blur(2px);z-index:9998;}
.cookieOverlay,.cookieBanner{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 180ms ease, visibility 0s linear;}
.cookieOverlay[hidden],.cookieBanner[hidden]{opacity:0;visibility:hidden;pointer-events:none;}
.cookieBanner {position:fixed;left:18px;right:18px;bottom:18px;z-index:9999;display:flex;justify-content:center;}
.cookieCard{
    width:100%;max-width:420px;padding:16px;border-radius:16px; box-shadow:0 10px 22px rgba(0,0,0,0.25);
    overflow:auto;scrollbar-color: #046d8a transparent; font-size: 14px;
    border: 1px solid var(--line);background: #111; color: var(--text);
    max-height:calc(100dvh - 40px);
	max-height:calc(100vh - 40px);
}
.cookieCard h3{margin:0 0 8px 0;font-size:22px; padding-bottom: 0; font-weight:500;}
.cookieCard a {color:var(--peach)}
.cookieCard .btnContainer {margin-bottom:20px; display:flex; align-items:center; gap:10px;}
.cookieCard .btn {padding: 13px 30px;border-radius: 30px;}
.cookieCard .btn.primary {background:var(--peach);}
.cookieCard .btn.secondary {background: rgba(255, 255, 255, 0.1); color:#fff}

.cookieAccordion{margin:12px 0 22px 0;display:grid;gap:0;background:rgba(1,1,1,0.15); border-radius: 10px;}
.cookieDetails:first-child {border-bottom:2px solid #014254}
.cookieSummary{cursor:pointer;list-style:none;padding:12px 14px;color:rgba(255,255,255,0.92);font-weight:500;}
.cookieSummary::-webkit-details-marker{display:none;}
.cookiePanel{padding:0 14px 14px 14px;color:rgba(255,255,255,0.82);max-height: 200px; overflow: auto; scrollbar-color: #046d8a transparent;}
.cookiePanel a {color:rgba(255,255,255,0.90);text-decoration:underline;}
.cookieAccordion h1 {display:none;}
@media (max-width: 640px) { .cookieCard .btnContainer {flex-direction: column;} .cookieCard .btn {width:100%;} }

