/*
Theme Name: Point Finder Child Theme (WPVibe Draft)
Description: Child theme for the Point Finder
Author: Your name here
Template: pointfinder
Version: 1.9
*/


/* =Theme customization starts here
------------------------------------------------------- */

/* Option 3 — colourful party marketplace homepage */
.home #pfmaincontent { background:#fffafc; }
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child { position:relative; }
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child .uvc-main-heading h2 {
  font-size:clamp(34px,4.5vw,62px)!important; line-height:1.12!important;
  letter-spacing:-1.5px; max-width:850px; margin:0 auto 16px;
  text-shadow:0 3px 24px rgba(37,12,46,.42);
}
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child .uvc-sub-heading {
  font-size:clamp(16px,1.7vw,22px)!important; line-height:1.5!important;
  text-shadow:0 2px 14px rgba(37,12,46,.55);
}
.home .pointfinder-mini-search.pfministyle3 {
  border-radius:22px!important; padding:16px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 20px 55px rgba(42,15,58,.22);
  backdrop-filter:blur(10px); max-width:1120px; margin:0 auto;
}
.home .pointfinder-mini-search input.input,
.home .pointfinder-mini-search select {
  border-radius:12px!important; min-height:48px;
}
.home .pointfinder-mini-search #pf-search-button-manual {
  background:linear-gradient(110deg,#f73b86,#8d42c9)!important;
  color:#fff!important; border:0!important; border-radius:12px!important;
  font-weight:800; box-shadow:0 5px 16px rgba(218,48,128,.22);
}
.home .pointfinder-mini-search #pf-search-button-manual:hover { filter:brightness(1.08); }
.home .pointfinder-terms-archive {
  display:flex!important; flex-wrap:wrap; gap:22px; margin:20px auto 55px!important;
  padding:0 18px!important; max-width:1320px;
}
.home .pointfinder-terms-archive > .pf-main-term {
  float:none!important; flex:1 1 230px; width:auto!important;
  max-width:calc(25% - 17px); min-width:215px;
  background:#fff; border:1px solid #f2e8f3;
  border-radius:22px; padding:0 0 14px!important; overflow:hidden;
  box-shadow:0 10px 30px rgba(78,33,90,.08);
  transition:transform .2s ease,box-shadow .2s ease;
}
.home .pointfinder-terms-archive > .pf-main-term:hover {
  transform:translateY(-5px); box-shadow:0 17px 35px rgba(78,33,90,.14);
}
.home .pointfinder-terms-archive > .pf-main-term > a {
  display:block; min-height:95px; padding:22px 18px!important;
  color:#fff!important; font-size:18px; line-height:1.4;
  background:linear-gradient(125deg,#ed3d92,#843dc2);
  text-decoration:none!important;
}
.home .pointfinder-terms-archive > .pf-main-term:nth-child(4n+2) > a { background:linear-gradient(125deg,#ff8a3c,#ee447f); }
.home .pointfinder-terms-archive > .pf-main-term:nth-child(4n+3) > a { background:linear-gradient(125deg,#6b55d8,#ab55cf); }
.home .pointfinder-terms-archive > .pf-main-term:nth-child(4n+4) > a { background:linear-gradient(125deg,#e94f83,#f5a448); }
.home .pointfinder-terms-archive .pf-main-term-number { font-size:12px; opacity:.75; }
.home .pointfinder-terms-archive .pf-child-term-main { padding:8px 12px!important; margin:0!important; }
.home .pointfinder-terms-archive .pf-child-term {
  border-radius:8px; margin:4px 0!important; padding:4px 8px!important;
  background:#faf7fc!important;
}
.home .pointfinder-terms-archive .pf-child-term a { background:transparent!important; color:#4b375b!important; }
.home .pointfinder-terms-archive .pf-child-term a:hover { color:#e63785!important; }
@media(max-width:1050px) {
 .home .pointfinder-terms-archive > .pf-main-term { max-width:calc(50% - 11px); }
}
@media(max-width:600px) {
 .home .pointfinder-mini-search.pfministyle3 { border-radius:16px!important; padding:12px!important; }
 .home .pointfinder-terms-archive { gap:14px; padding:0 12px!important; }
 .home .pointfinder-terms-archive > .pf-main-term { min-width:100%; max-width:100%; }
 .home .pointfinder-terms-archive > .pf-main-term > a { min-height:65px; padding:16px!important; }
}


/* WeWantAParty refresh — draft-only visual styling */
:root { --wwap-pink:#ee398d; --wwap-purple:#7136ad; --wwap-ink:#302343; }
body { color:var(--wwap-ink); }
#pfheadernav .wpf-navwrapper { background:#fff; box-shadow:0 5px 22px rgba(49,28,72,.10); }
#pfheadernav .pf-logo-container:not(.pfmobilemenulogo)::before { content:"WeWantAParty"; display:inline-block; font-weight:800; font-size:clamp(19px,2vw,28px); letter-spacing:-.8px; color:var(--wwap-purple); line-height:1.3; }
#pfheadernav .pf-logo-container:not(.pfmobilemenulogo)::after { content:" ✦"; color:var(--wwap-pink); font-size:22px; }
#pfheadernav #pf-primary-nav a.menu-link { font-weight:650; }
#pfheadernav #pf-primary-nav a.menu-link:hover { color:var(--wwap-pink); }
#pfheadernav #pfpostitemlink > a { border-radius:999px; background:linear-gradient(110deg,var(--wwap-pink),var(--wwap-purple)); color:#fff; padding-left:20px; padding-right:20px; }
.home #pfmaincontent .uvc-heading { text-shadow:0 2px 14px rgba(33,15,49,.18); }
.home #pfmaincontent input[type="submit"], .home #pfmaincontent button[type="submit"] { border-radius:999px; }
.home #pfmaincontent .wpb_row { scroll-margin-top:90px; }
@media(max-width:767px) {
 #pfheadernav .wpf-navwrapper { box-shadow:0 3px 14px rgba(49,28,72,.1); }
 #pfheadernav .pf-logo-container:not(.pfmobilemenulogo)::before { font-size:20px; }
 #pfheadernav .pf-logo-container:not(.pfmobilemenulogo)::after { font-size:16px; }
}

/* Marketplace refinement, loaded last with a file-based version. */
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child {background:radial-gradient(ellipse at 85% 20%,#8c3c97 0,transparent 55%),linear-gradient(125deg,#30133f,#631d50)!important;isolation:isolate;padding:42px 0 52px!important;}
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child .upb_video-wrapper,
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child .upb_video-bg {display:none!important;}
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child .ult-spacer {height:28px!important;}
.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child .vc_column-inner {background:transparent!important;}
.home .pointfinder-mini-search.pfministyle3 {background:#fff!important;max-width:1080px;margin:28px auto 0!important;border:1px solid #ecdfea;backdrop-filter:none;}
.home #pf-search-button-manual {display:flex!important;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px!important;}
.home #pf-search-button-manual i,.home #pf-search-button-manual span {background:transparent!important;position:static!important;float:none!important;width:auto!important;height:auto!important;margin:0!important;}
.home .pointfinder-mini-search .select2-selection {border-radius:12px!important;min-height:48px!important;border:1px solid #d9ccdf!important;}
.home .pointfinder-mini-search .select2-selection__rendered {line-height:46px!important;}
.home .pointfinder-mini-search .select2-selection__arrow {top:12px!important;}
.home .pointfinder-mini-search .input {border:1px solid #d9ccdf!important;color:#302343!important;}
.home .pointfinder-mini-search .input::placeholder {color:#65546f;opacity:1;}
.home .pointfinder-mini-search #pf_search_geolocateme,.home .pointfinder-mini-search #pf_search_geodistance {color:#633087!important;}
.home .pointfinder-terms-archive {align-items:flex-start;list-style:none;}
.home .pointfinder-terms-archive .pf-child-term {display:flex;justify-content:space-between;gap:12px;}
.home .pointfinder-terms-archive .pf-child-term a {float:none!important;line-height:1.5;}
.home .pointfinder-terms-archive .pf-child-term > span {flex-shrink:0;}
.home #pfmaincontent .ult-animation {opacity:1!important;animation:none!important;}
.home .wwap-intro {max-width:1280px;margin:0 auto;padding:55px 24px 12px;}
.home .wwap-eyebrow {color:#9b2460;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:800;margin:0 0 12px;}
.home .wwap-intro h2,.home .wwap-next h2 {font-size:clamp(28px,3.5vw,42px);line-height:1.15;font-weight:800;letter-spacing:-1px;color:#302343;margin:0 0 16px;}
.home .wwap-intro p {font-size:17px;line-height:1.7;max-width:680px;color:#65546f;}
.home .wwap-next {max-width:1240px;margin:30px auto 60px;padding:38px;border:1px solid #eadce9;border-radius:24px;background:#fff;}
.home .wwap-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px;}
.home .wwap-step-num {display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fbe8f1;color:#9b2460;font-weight:800;margin-bottom:14px;}
.home .wwap-next h3 {font-size:20px;color:#302343;margin:0 0 10px;font-weight:700;}
.home .wwap-next p {color:#65546f;line-height:1.7;}
.home .wwap-supplier {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding-top:28px;border-top:1px solid #eadce9;}
.home .wwap-supplier a {display:inline-block;flex-shrink:0;background:#7136ad;color:#fff;padding:14px 24px;border-radius:12px;font-weight:700;text-decoration:none;}
.home a:focus-visible,.home input:focus-visible,.home button:focus-visible {outline:3px solid #ffb946!important;outline-offset:4px;}
@media(min-width:1100px){.home .pointfinder-terms-archive > .pf-main-term {flex:1 1 calc(25% - 22px);min-width:0;}}
@media(max-width:767px){.home .wwap-steps {grid-template-columns:1fr;gap:22px;}.home .wwap-next {margin:24px 16px 40px;padding:24px;}.home .wwap-supplier {align-items:flex-start;flex-direction:column;}.home #pfmaincontent > .wpb-content-wrapper > .vc_row:first-child {padding:20px 0 30px!important;}.home .pointfinder-mini-search.pfministyle3 {margin-top:20px!important;}.home .pointfinder-mini-search .pfsfield,.home .pointfinder-mini-search .pfsbutton {width:100%!important;max-width:none!important;float:none!important;}.home #pf-search-button-manual {width:100%!important;}}
@media(prefers-reduced-motion:reduce){.home * {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
