/*
Theme Name: PrimePath Greece
Theme URI: https://primepathgreece.com
Author: PrimePath Greece L.T.D
Description: Warm Mediterranean recruitment theme. Terracotta + Olive Green. Variant 2. Volos, Greece.
Version: 1.0.0
Requires at least: 5.6
Tested up to: 6.5
Requires PHP: 5.6
License: Proprietary
Text Domain: pp
*/

/* ═══ RESET ═══ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--clr-text);background:var(--clr-cream);overflow-x:hidden;font-size:15px;line-height:1.75}
img{max-width:100%;height:auto;display:block}
a{color:var(--clr-terra);text-decoration:none}
a:hover{text-decoration:underline}
ul{list-style:none}
button,input,textarea,select{font-family:inherit;font-size:inherit}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:1.15;color:var(--clr-dark)}
h1{font-size:clamp(32px,5vw,64px)}
h2{font-size:clamp(24px,3.5vw,44px)}
h3{font-size:clamp(17px,2vw,22px)}
p{line-height:1.85;color:var(--clr-muted)}

/* ═══ CSS VARIABLES ═══ */
:root{
  --clr-terra:      #C1440E;
  --clr-terra-dk:   #A03608;
  --clr-terra-lt:   #E8653A;
  --clr-olive:      #4A5240;
  --clr-olive-lt:   #6B7560;
  --clr-gold:       #B8860B;
  --clr-cream:      #FAF7F2;
  --clr-cream2:     #F3EDE3;
  --clr-cream3:     #EDE4D6;
  --clr-dark:       #2C2C2C;
  --clr-text:       #3D3D3D;
  --clr-muted:      #7A7060;
  --clr-border:     #DDD5C8;
  --clr-white:      #ffffff;
  --clr-header-bg:  #FAF7F2;
  --clr-footer-bg:  #2C2416;
  --font-body:      'Lato','Segoe UI',sans-serif;
  --font-heading:   'Cormorant Garamond','Georgia',serif;
  --shadow-sm:      0 2px 12px rgba(44,36,22,.08);
  --shadow-md:      0 6px 28px rgba(44,36,22,.12);
  --radius:         4px;
}

/* ═══ LAYOUT ═══ */
.pp-wrap{max-width:1160px;margin:0 auto;padding:0 40px}
.sec{padding:88px 0}
.sec-cream{background:var(--clr-cream)}
.sec-cream2{background:var(--clr-cream2)}
.sec-cream3{background:var(--clr-cream3)}
.sec-olive{background:var(--clr-olive)}
.sec-dark{background:var(--clr-footer-bg)}
.t-c{text-align:center}
.t-l{text-align:left}
.eyebrow{display:inline-block;font-size:11px;font-weight:700;color:var(--clr-terra);letter-spacing:.22em;text-transform:uppercase;margin-bottom:14px;font-family:var(--font-body)}
.divider-terra{display:block;width:48px;height:3px;background:var(--clr-terra);margin:16px 0}
.divider-terra.center{margin:16px auto}
.g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px}
.g3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}
.g4{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:24px}
.mb16{margin-bottom:16px}.mb24{margin-bottom:24px}.mb40{margin-bottom:40px}.mb56{margin-bottom:56px}
@media(max-width:640px){.pp-wrap{padding:0 20px}.sec{padding:60px 0}}

/* ═══ BUTTONS ═══ */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 30px;font-weight:700;font-size:13px;cursor:pointer;border:none;transition:all .22s;text-decoration:none;letter-spacing:.06em;text-transform:uppercase;line-height:1.4;border-radius:var(--radius)}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-terra{background:var(--clr-terra);color:#fff;box-shadow:0 4px 16px rgba(193,68,14,.3)}
.btn-terra:hover{background:var(--clr-terra-dk);color:#fff;box-shadow:0 6px 22px rgba(193,68,14,.4)}
.btn-olive{background:var(--clr-olive);color:#fff;box-shadow:0 4px 16px rgba(74,82,64,.25)}
.btn-olive:hover{background:var(--clr-olive-lt);color:#fff}
.btn-outline{background:transparent;color:var(--clr-terra);border:2px solid var(--clr-terra)}
.btn-outline:hover{background:var(--clr-terra);color:#fff}
.btn-outline-white{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}
.btn-outline-white:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}
.btn-sm{padding:9px 20px;font-size:12px}
.btn-lg{padding:16px 38px;font-size:14px}

/* ═════════════════════════════════════════
   TOP BAR — olive green strip, minimal
═════════════════════════════════════════ */
#pp-topbar{background:var(--clr-olive);padding:7px 0;font-size:12px;color:rgba(255,255,255,.65);display:none}
#pp-topbar.on{display:block}
.pp-tb-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.pp-tb-left{display:flex;gap:24px}
.pp-tb-left a{color:rgba(255,255,255,.65);text-decoration:none;transition:color .2s}
.pp-tb-left a:hover{color:#fff}
.pp-tb-right{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.45)}

/* ═════════════════════════════════════════
   HEADER — CENTERED LOGO LAYOUT
   Logo centered on top row
   Full-width nav bar below on cream bg
   Completely different from previous themes
═════════════════════════════════════════ */
#pp-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:400;
  background:var(--clr-header-bg);
  border-bottom:1px solid var(--clr-border);
  transition:all .3s;
}
#pp-header.scrolled{box-shadow:var(--shadow-md)}

/* Brand row — centered */
.pp-brand-row{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:16px 0 12px;
  position:relative;
}
/* Phone shown top-right of header brand row */
.pp-header-phone{
  position:absolute;
  right:40px;
  top:50%;
  transform:translateY(-50%);
  font-size:13px;
  font-weight:700;
  color:var(--clr-terra);
  letter-spacing:.03em;
  font-family:var(--font-body);
}
.pp-header-phone span{color:var(--clr-muted);font-weight:400;margin-right:6px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
/* Logo / wordmark */
.pp-brand a{display:flex;flex-direction:column;align-items:center;text-decoration:none;gap:4px}
.pp-brand a:hover{text-decoration:none}
.pp-brand .custom-logo-link img.custom-logo{height:var(--logo-h,52px);width:auto;max-width:240px;object-fit:contain}
.pp-wordmark{font-family:var(--font-heading);font-size:28px;font-weight:700;color:var(--clr-dark);letter-spacing:.02em;line-height:1}
.pp-wordmark strong{color:var(--clr-terra)}
.pp-word-sub{font-size:10px;color:var(--clr-muted);letter-spacing:.2em;text-transform:uppercase;font-family:var(--font-body)}

/* Nav row — centered, terracotta underline on active */
.pp-nav-row{
  background:var(--clr-cream2);
  border-top:1px solid var(--clr-border);
}
#pp-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:0;
  flex-wrap:wrap;
}
#pp-nav a{
  display:block;
  padding:12px 18px;
  font-size:12px;
  font-weight:700;
  color:var(--clr-muted);
  letter-spacing:.1em;
  text-transform:uppercase;
  border-bottom:2px solid transparent;
  transition:all .2s;
  text-decoration:none;
  font-family:var(--font-body);
}
#pp-nav a:hover,#pp-nav a.current-menu-item{
  color:var(--clr-terra);
  border-bottom-color:var(--clr-terra);
}

/* Hamburger */
#pp-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;position:absolute;right:16px;top:50%;transform:translateY(-50%)}
#pp-toggle span{display:block;width:22px;height:2px;background:var(--clr-dark);border-radius:1px;transition:all .3s}

@media(max-width:860px){
  .pp-header-phone{display:none}
  #pp-toggle{display:flex}
  #pp-nav{display:none;flex-direction:column;align-items:stretch;background:var(--clr-cream);border-top:2px solid var(--clr-terra)}
  #pp-nav.open{display:flex}
  #pp-nav a{padding:14px 24px;border-bottom:1px solid var(--clr-border)!important;border-right:none;text-align:left}
  .pp-brand-row{padding:12px 0 10px}
}

/* ═════════════════════════════════════════
   HOME HERO — FULL SCREEN IMAGE, CENTERED TEXT
   Option (a) — warm terracotta overlay
   Content vertically centered with flexbox
═════════════════════════════════════════ */
.pp-home-hero{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  position:relative;
  overflow:hidden;
  text-align:center;
  background:var(--clr-olive);/* fallback if image fails */
}
/* Background image */
.pp-hero-bg{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
/* Warm terracotta gradient overlay — not dark, not flat */
.pp-hero-bg::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(
    160deg,
    rgba(44,36,22,.82) 0%,
    rgba(193,68,14,.55) 60%,
    rgba(74,82,64,.7) 100%
  );
}
/* Content sits above overlay */
.pp-hero-content{
  position:relative;
  z-index:2;
  max-width:860px;
  padding:0 40px;
}
/* Decorative olive leaf line above eyebrow */
.hero-deco{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-bottom:20px;
}
.hero-deco-line{width:48px;height:1px;background:rgba(255,255,255,.4)}
.hero-deco-icon{color:rgba(255,255,255,.6);font-size:18px}
.pp-home-hero h1{
  color:#fff;
  margin-bottom:20px;
  font-size:clamp(36px,5.5vw,72px);
  font-family:var(--font-heading);
  font-weight:700;
  line-height:1.1;
  text-shadow:0 2px 20px rgba(0,0,0,.3);
}
.pp-home-hero h1 em{
  color:var(--clr-terra-lt);
  font-style:italic;
}
.pp-hero-sub{
  font-size:17px;
  color:rgba(255,255,255,.75);
  max-width:620px;
  margin:0 auto 36px;
  line-height:1.8;
  font-family:var(--font-body);
  font-weight:400;
}
.pp-hero-btns{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-bottom:48px;
}
/* Destination pills */
.pp-hero-dests{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  padding-top:28px;
  border-top:1px solid rgba(255,255,255,.15);
}
.pp-dest-lbl{font-size:10px;color:rgba(255,255,255,.45);letter-spacing:.16em;text-transform:uppercase;margin-right:4px}
.pp-dest-pill{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.8);padding:5px 14px;font-size:12px;border-radius:100px;backdrop-filter:blur(4px);transition:all .2s}
.pp-dest-pill:hover{background:rgba(255,255,255,.2);color:#fff}
/* Scroll indicator */
.pp-scroll-hint{
  position:absolute;
  bottom:32px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  color:rgba(255,255,255,.35);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  z-index:2;
}
.pp-scroll-arrow{width:1px;height:32px;background:linear-gradient(to bottom,rgba(255,255,255,.35),transparent)}
@media(max-width:640px){
  .pp-hero-content{padding:0 24px}
  .pp-home-hero{min-height:100svh}
}

/* ═════════════════════════════════════════
   INNER PAGE HERO — warm olive overlay
═════════════════════════════════════════ */
.pp-page-hero{
  padding:100px 0 64px;
  position:relative;
  overflow:hidden;
  background:var(--clr-olive);
}
.pp-page-hero-bg{
  background-size:cover;
  background-position:center;
}
.pp-page-hero-bg::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,rgba(44,36,22,.88) 50%,rgba(193,68,14,.4) 100%);
}
.pp-page-hero .pp-wrap{position:relative;z-index:1}
.pp-page-hero h1{color:#fff;margin-bottom:14px}
.pp-page-hero h1::before{
  content:'';
  display:block;
  width:40px;
  height:3px;
  background:var(--clr-terra-lt);
  margin-bottom:14px;
  border-radius:2px;
}
.pp-ph-sub{color:rgba(255,255,255,.6);font-size:16px;max-width:560px;font-weight:400;line-height:1.75}

/* ═════════════════════════════════════════
   STATS — warm cream band with terracotta numbers
   Different: horizontal list with dividers, no red bg
═════════════════════════════════════════ */
.pp-stats-band{background:var(--clr-terra);padding:0}
.pp-stats-inner{display:flex;flex-wrap:wrap}
.pp-stat{
  flex:1;
  min-width:160px;
  padding:28px 24px;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.15);
  position:relative;
}
.pp-stat:last-child{border-right:none}
.pp-stat-val{
  font-family:var(--font-heading);
  font-size:40px;
  font-weight:700;
  color:#fff;
  line-height:1;
  display:block;
}
.pp-stat-lbl{
  font-size:11px;
  color:rgba(255,255,255,.7);
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-top:6px;
  display:block;
  font-family:var(--font-body);
}
@media(max-width:640px){.pp-stat{min-width:50%;border-bottom:1px solid rgba(255,255,255,.1)}}

/* ═════════════════════════════════════════
   SERVICE CARDS — rounded cream cards with olive accent
   Completely different style from previous themes
═════════════════════════════════════════ */
.pp-service-card{
  background:var(--clr-white);
  border-radius:8px;
  padding:36px 28px;
  box-shadow:var(--shadow-sm);
  border-top:4px solid var(--clr-terra);
  transition:all .25s;
  position:relative;
  overflow:hidden;
}
.pp-service-card::before{
  content:'';
  position:absolute;
  bottom:-20px;right:-20px;
  width:80px;height:80px;
  background:var(--clr-cream2);
  border-radius:50%;
}
.pp-service-card:hover{
  box-shadow:var(--shadow-md);
  transform:translateY(-4px);
  border-top-color:var(--clr-olive);
}
.pp-sc-icon{
  width:52px;height:52px;
  background:var(--clr-cream2);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:24px;
  margin-bottom:18px;
}
.pp-sc-title{font-size:18px;font-weight:700;margin-bottom:10px;color:var(--clr-dark)}
.pp-sc-text{font-size:14px;color:var(--clr-muted);line-height:1.85}

/* ═════════════════════════════════════════
   DESTINATION — olive panel cards with image
═════════════════════════════════════════ */
.pp-dest-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.pp-dest-card{
  background:var(--clr-white);
  border-radius:8px;
  overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:all .25s;
}
.pp-dest-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}
.pp-dest-img{
  height:200px;
  background-size:cover;
  background-position:center;
  position:relative;
}
.pp-dest-img::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,transparent 40%,rgba(44,36,22,.6));
}
.pp-dest-badge{
  position:absolute;
  top:14px;left:14px;
  background:var(--clr-terra);
  color:#fff;
  font-size:10px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:2px;
  z-index:1;
}
.pp-dest-body{padding:20px 22px 24px}
.pp-dest-name{font-family:var(--font-heading);font-size:22px;font-weight:700;color:var(--clr-dark);margin-bottom:8px}
.pp-dest-text{font-size:13px;color:var(--clr-muted);line-height:1.8}

/* ═════════════════════════════════════════
   PROCESS — horizontal timeline with olive circles
═════════════════════════════════════════ */
.pp-process-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;position:relative}
.pp-process-wrap::before{
  content:'';
  position:absolute;
  top:32px;left:5%;right:5%;
  height:2px;
  background:var(--clr-border);
  z-index:0;
}
@media(max-width:768px){.pp-process-wrap::before{display:none}}
.pp-proc-step{text-align:center;padding:0 20px;position:relative;z-index:1}
.pp-proc-num{
  width:64px;height:64px;
  background:var(--clr-white);
  border:3px solid var(--clr-terra);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;
  font-family:var(--font-heading);
  font-size:24px;
  font-weight:700;
  color:var(--clr-terra);
  box-shadow:var(--shadow-sm);
}
.pp-proc-step h3{font-size:15px;margin-bottom:10px;color:var(--clr-dark)}
.pp-proc-step p{font-size:13px;color:var(--clr-muted);line-height:1.8}

/* ═════════════════════════════════════════
   SECTORS — olive tile grid
═════════════════════════════════════════ */
.pp-sector-tile{
  background:var(--clr-white);
  border-radius:6px;
  padding:28px 20px;
  text-align:center;
  box-shadow:var(--shadow-sm);
  transition:all .25s;
  border-bottom:3px solid transparent;
}
.pp-sector-tile:hover{
  border-bottom-color:var(--clr-terra);
  box-shadow:var(--shadow-md);
  transform:translateY(-3px);
}
.pp-sec-ico{font-size:36px;margin-bottom:12px;display:block}
.pp-sector-tile h3{font-size:15px;color:var(--clr-dark);margin-bottom:7px;letter-spacing:.02em}
.pp-sector-tile p{font-size:12px;color:var(--clr-muted);line-height:1.8}

/* ═════════════════════════════════════════
   TESTIMONIALS — quote style, olive accent
   Different: serif italic quote, warm card
═════════════════════════════════════════ */
.pp-testi-card{
  background:var(--clr-white);
  border-radius:8px;
  padding:32px;
  box-shadow:var(--shadow-sm);
  position:relative;
  border-left:4px solid var(--clr-terra);
  transition:box-shadow .25s;
}
.pp-testi-card:hover{box-shadow:var(--shadow-md)}
.pp-testi-quote{
  font-family:var(--font-heading);
  font-size:56px;
  color:var(--clr-cream3);
  line-height:1;
  position:absolute;
  top:20px;right:24px;
}
.pp-testi-text{
  font-family:var(--font-heading);
  font-size:15px;
  color:var(--clr-dark);
  line-height:1.85;
  margin-bottom:22px;
  font-style:italic;
}
.pp-testi-author{display:flex;align-items:center;gap:14px}
.pp-testi-av{
  width:44px;height:44px;
  background:var(--clr-olive);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-weight:700;color:#fff;font-size:15px;
  flex-shrink:0;text-transform:uppercase;
  font-family:var(--font-body);
}
.pp-testi-name{font-weight:700;color:var(--clr-dark);font-size:14px;margin-bottom:2px}
.pp-testi-role{font-size:12px;color:var(--clr-muted)}

/* ═════════════════════════════════════════
   CTA BAND — olive green, warm and earthy
═════════════════════════════════════════ */
.pp-cta-band{
  background:var(--clr-olive);
  padding:80px 0;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.pp-cta-band::before{
  content:'';
  position:absolute;
  top:-60px;left:-60px;
  width:280px;height:280px;
  background:rgba(193,68,14,.12);
  border-radius:50%;
}
.pp-cta-band::after{
  content:'';
  position:absolute;
  bottom:-80px;right:-40px;
  width:320px;height:320px;
  background:rgba(193,68,14,.08);
  border-radius:50%;
}
.pp-cta-band .pp-wrap{position:relative;z-index:1}
.pp-cta-band h2{color:#fff;margin-bottom:16px}
.pp-cta-band p{color:rgba(255,255,255,.7);max-width:540px;margin:0 auto 32px;font-size:16px}
.pp-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.pp-cta-note{font-size:12px;color:rgba(255,255,255,.35);margin-top:18px;letter-spacing:.06em;text-transform:uppercase}

/* ═════════════════════════════════════════
   VACANCIES / CAREERS
═════════════════════════════════════════ */
.pp-vac-info{
  background:var(--clr-cream2);
  border-left:4px solid var(--clr-terra);
  padding:14px 20px;
  font-size:13px;
  color:var(--clr-muted);
  border-radius:0 4px 4px 0;
  margin-bottom:28px;
  display:flex;gap:10px;align-items:flex-start;
}
.pp-job-card{
  background:var(--clr-white);
  border-radius:8px;
  box-shadow:var(--shadow-sm);
  margin-bottom:16px;
  overflow:hidden;
  transition:box-shadow .25s;
  border:1px solid var(--clr-border);
}
.pp-job-card:hover{box-shadow:var(--shadow-md)}
.pp-job-head{
  padding:24px 28px;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  border-bottom:1px solid var(--clr-border);
}
.pp-job-title{
  font-family:var(--font-heading);
  font-size:22px;
  font-weight:700;
  color:var(--clr-dark);
  margin-bottom:8px;
}
.pp-job-pills{display:flex;gap:8px;flex-wrap:wrap}
.pp-pill{
  display:inline-block;
  padding:4px 12px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  border-radius:100px;
  border:1px solid var(--clr-border);
  color:var(--clr-muted);
  background:var(--clr-cream2);
}
.pp-pill-terra{background:rgba(193,68,14,.08);border-color:var(--clr-terra);color:var(--clr-terra)}
.pp-pill-olive{background:rgba(74,82,64,.08);border-color:var(--clr-olive);color:var(--clr-olive)}
.pp-pill-green{background:rgba(39,174,96,.08);border-color:#27ae60;color:#27ae60}
.pp-job-salary{
  font-family:var(--font-heading);
  font-size:22px;
  font-weight:700;
  color:var(--clr-terra);
  white-space:nowrap;
}
.pp-job-body{
  padding:20px 28px 22px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:18px;
}
.pp-jb-lbl{font-size:10px;font-weight:700;color:var(--clr-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}
.pp-jb-lbl-g{color:#27ae60}
.pp-jb-text{font-size:13px;color:var(--clr-text);line-height:1.8}
.pp-docs-box{
  background:var(--clr-cream2);
  border-top:3px solid var(--clr-terra);
  padding:28px;
  border-radius:0 0 8px 8px;
  margin-top:4px;
}
.pp-docs-box h3{font-size:16px;color:var(--clr-terra);margin-bottom:12px}
.pp-docs-box p{font-size:13px;color:var(--clr-muted);line-height:1.9;margin-bottom:12px}
.pp-docs-contact{font-size:12px;color:var(--clr-muted);border-top:1px solid var(--clr-border);padding-top:12px;font-weight:600}

/* ═════════════════════════════════════════
   FAQ — accordion, warm style
═════════════════════════════════════════ */
.pp-faq-notice{
  background:rgba(193,68,14,.06);
  border:1px solid rgba(193,68,14,.2);
  border-radius:6px;
  padding:18px 20px;
  margin-bottom:24px;
  display:flex;gap:12px;align-items:flex-start;
}
.pp-fn-icon{font-size:20px;flex-shrink:0;margin-top:2px}
.pp-fn-title{font-weight:700;color:var(--clr-terra);font-size:13px;margin-bottom:4px}
.pp-fn-text{font-size:13px;color:var(--clr-muted);line-height:1.7}
.pp-faq-item{
  background:var(--clr-white);
  border:1px solid var(--clr-border);
  border-radius:6px;
  margin-bottom:8px;
  overflow:hidden;
  transition:border-color .2s;
}
.pp-faq-item.open{border-color:var(--clr-terra)}
.pp-faq-btn{
  width:100%;text-align:left;
  padding:18px 22px;
  background:none;border:none;
  cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;gap:14px;
}
.pp-faq-q{
  font-family:var(--font-heading);
  font-size:17px;
  font-weight:700;
  color:var(--clr-dark);
  line-height:1.4;
  transition:color .2s;
}
.pp-faq-item.open .pp-faq-q{color:var(--clr-terra)}
.pp-faq-ico{
  width:24px;height:24px;
  border-radius:50%;
  border:2px solid var(--clr-border);
  display:flex;align-items:center;justify-content:center;
  font-size:16px;
  color:var(--clr-terra);
  flex-shrink:0;
  transition:all .25s;
  font-weight:300;
}
.pp-faq-item.open .pp-faq-ico{
  background:var(--clr-terra);
  border-color:var(--clr-terra);
  color:#fff;
  transform:rotate(45deg);
}
.pp-faq-ans{
  display:none;
  padding:0 22px 18px;
  font-size:14px;
  color:var(--clr-muted);
  line-height:1.9;
  border-top:1px solid var(--clr-border);
  padding-top:14px;
}
.pp-faq-item.open .pp-faq-ans{display:block}

/* ═════════════════════════════════════════
   ABOUT PAGE
═════════════════════════════════════════ */
.pp-about-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:768px){.pp-about-split{grid-template-columns:1fr}}
.pp-about-img-wrap{position:relative}
.pp-about-img-wrap img{width:100%;height:440px;object-fit:cover;border-radius:8px;box-shadow:var(--shadow-md)}
.pp-about-badge{
  position:absolute;
  bottom:-16px;right:-16px;
  background:var(--clr-terra);
  color:#fff;
  padding:18px 20px;
  text-align:center;
  border-radius:6px;
  box-shadow:var(--shadow-sm);
}
.pp-about-badge-num{font-family:var(--font-heading);font-size:32px;font-weight:700;display:block;line-height:1}
.pp-about-badge-lbl{font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.85;margin-top:3px;display:block}
.pp-reg-box{
  background:var(--clr-cream2);
  border-radius:6px;
  padding:20px 22px;
  margin-bottom:28px;
  border-left:4px solid var(--clr-olive);
}
.pp-reg-box h4{font-size:11px;color:var(--clr-olive);letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px}
.pp-reg-box p{font-size:13px;color:var(--clr-muted);line-height:1.8}
.pp-val-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.pp-val-item{
  background:var(--clr-white);
  border:1px solid var(--clr-border);
  border-radius:6px;
  padding:18px 14px;
  text-align:center;
  transition:all .2s;
}
.pp-val-item:hover{border-color:var(--clr-terra);box-shadow:var(--shadow-sm)}
.pp-val-ico{font-size:24px;margin-bottom:8px;display:block}
.pp-val-name{font-size:11px;font-weight:700;color:var(--clr-dark);text-transform:uppercase;letter-spacing:.08em}
.pp-src-list{display:flex;flex-wrap:wrap;gap:10px}
.pp-src-chip{
  background:var(--clr-cream2);
  border:1px solid var(--clr-border);
  border-radius:100px;
  padding:7px 16px;
  font-size:13px;
  color:var(--clr-muted);
  transition:all .2s;
}
.pp-src-chip:hover{border-color:var(--clr-terra);color:var(--clr-dark)}
.pp-cert-list{display:flex;flex-wrap:wrap;gap:10px}
.pp-cert-item{
  background:var(--clr-cream2);
  border:1px solid var(--clr-border);
  border-radius:4px;
  padding:8px 16px;
  font-size:11px;
  font-weight:700;
  color:var(--clr-olive);
  text-transform:uppercase;
  letter-spacing:.06em;
  display:flex;align-items:center;gap:6px;
}
.pp-team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}
.pp-team-card{
  background:var(--clr-white);
  border-radius:8px;
  overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:box-shadow .25s;
}
.pp-team-card:hover{box-shadow:var(--shadow-md)}
.pp-team-photo{
  height:200px;
  background:var(--clr-cream2);
  display:flex;align-items:center;justify-content:center;
  font-size:56px;
  position:relative;overflow:hidden;
}
.pp-team-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pp-team-info{padding:16px 18px;border-top:3px solid var(--clr-terra)}
.pp-team-name{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--clr-dark);margin-bottom:3px}
.pp-team-role{font-size:12px;color:var(--clr-terra);font-weight:700;text-transform:uppercase;letter-spacing:.06em}

/* ═════════════════════════════════════════
   CONTACT PAGE — warm two-column layout
═════════════════════════════════════════ */
.pp-contact-outer{max-width:1060px;margin:0 auto;padding:0 40px}
.pp-contact-grid{display:grid;grid-template-columns:360px 1fr;gap:32px;align-items:start}
@media(max-width:860px){.pp-contact-grid{grid-template-columns:1fr}.pp-contact-outer{padding:0 20px}}
.pp-contact-info{
  background:var(--clr-white);
  border-radius:8px;
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.pp-ci-header{
  background:var(--clr-olive);
  padding:24px 24px 20px;
}
.pp-ci-header h3{
  font-family:var(--font-heading);
  font-size:22px;
  color:#fff;
  margin-bottom:4px;
}
.pp-ci-header p{color:rgba(255,255,255,.65);font-size:13px}
.pp-ci-body{padding:24px}
.pp-ci-item{display:flex;gap:14px;margin-bottom:20px;align-items:flex-start}
.pp-ci-icon{
  width:36px;height:36px;
  background:var(--clr-cream2);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:16px;
  flex-shrink:0;
}
.pp-ci-lbl{font-size:10px;font-weight:700;color:var(--clr-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:3px}
.pp-ci-val{font-size:13px;color:var(--clr-text);white-space:pre-line;line-height:1.7}
.pp-emg-box{
  background:var(--clr-terra);
  padding:20px 24px;
  margin:0;
  border-radius:0 0 8px 8px;
}
.pp-emg-title{font-weight:700;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.pp-emg-note{font-size:12px;color:rgba(255,255,255,.7);margin-bottom:7px}
.pp-emg-num{font-family:var(--font-heading);font-size:26px;font-weight:700;color:#fff}
.pp-map-wrap{margin-top:16px;border-radius:6px;overflow:hidden;border:1px solid var(--clr-border)}
.pp-map-wrap iframe{width:100%;height:200px;border:none;display:block}

/* Contact form box */
.pp-form-box{
  background:var(--clr-white);
  border-radius:8px;
  box-shadow:var(--shadow-sm);
  padding:32px;
}
.pp-form-box h3{font-family:var(--font-heading);font-size:24px;color:var(--clr-dark);margin-bottom:6px}
.pp-form-sub{font-size:13px;color:var(--clr-muted);margin-bottom:24px}

/* ═════════════════════════════════════════
   FORMS
═════════════════════════════════════════ */
.pp-fg{margin-bottom:16px}
.pp-fg label{display:block;font-size:11px;font-weight:700;color:var(--clr-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:7px}
.pp-fc{width:100%;background:var(--clr-cream);border:1.5px solid var(--clr-border);color:var(--clr-dark);padding:12px 14px;font-size:14px;outline:none;transition:border-color .2s;border-radius:var(--radius)}
.pp-fc:focus{border-color:var(--clr-terra)}
.pp-fc.err{border-color:var(--clr-terra);background:rgba(193,68,14,.04)}
textarea.pp-fc{resize:vertical}
.pp-f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:540px){.pp-f-row{grid-template-columns:1fr}}
.pp-f-req{font-size:11px;color:var(--clr-muted);margin-bottom:16px}
.pp-f-err{background:rgba(193,68,14,.06);border:1px solid rgba(193,68,14,.3);color:var(--clr-terra);padding:9px 14px;font-size:13px;margin-bottom:12px;border-radius:var(--radius);display:none}
.pp-f-success{background:rgba(39,174,96,.06);border:1px solid rgba(39,174,96,.3);padding:22px;text-align:center;border-radius:6px;display:none}
.pp-f-success.show{display:block}
.pp-f-success h3{color:#27ae60;font-size:16px;margin-bottom:6px}
.pp-f-success p{color:var(--clr-muted);font-size:13px}
.pp-f-note{font-size:11px;color:var(--clr-muted);text-align:center;margin-top:10px;letter-spacing:.03em}
/* GDPR */
.pp-gdpr-row{display:flex;gap:10px;align-items:flex-start;margin-bottom:16px;padding:12px 14px;background:var(--clr-cream2);border-radius:var(--radius);border:1px solid var(--clr-border)}
.pp-gdpr-row input[type="checkbox"]{width:15px;height:15px;flex-shrink:0;margin-top:2px;accent-color:var(--clr-terra)}
.pp-gdpr-row span{font-size:11px;color:var(--clr-muted);line-height:1.6}
.pp-gdpr-row a{color:var(--clr-terra)}

/* ═════════════════════════════════════════
   MODAL — Apply Now
═════════════════════════════════════════ */
.pp-modal-ov{display:none;position:fixed;inset:0;z-index:600;background:rgba(44,36,22,.7);overflow-y:auto;padding:40px 20px;align-items:flex-start;justify-content:center;backdrop-filter:blur(4px)}
.pp-modal-ov.active{display:flex}
.pp-modal-box{
  background:var(--clr-white);
  border-radius:10px;
  width:100%;max-width:620px;
  position:relative;
  box-shadow:0 20px 60px rgba(44,36,22,.2);
  animation:ppIn .3s ease;
}
@keyframes ppIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.pp-modal-head{
  background:linear-gradient(135deg,var(--clr-olive),var(--clr-olive-lt));
  padding:24px 28px;
  border-radius:10px 10px 0 0;
}
.pp-modal-head h2{font-family:var(--font-heading);font-size:22px;color:#fff;margin-bottom:4px}
.pp-modal-head p{font-size:12px;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.06em}
.pp-modal-x{position:absolute;top:14px;right:14px;background:rgba(255,255,255,.15);border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s}
.pp-modal-x:hover{background:rgba(255,255,255,.25)}
.pp-modal-body{padding:28px}

/* ═════════════════════════════════════════
   COOKIE BANNER
═════════════════════════════════════════ */
#pp-cookie{display:none;position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--clr-footer-bg);padding:14px 24px;border-top:3px solid var(--clr-terra)}
.pp-ck-inner{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.pp-ck-inner p{color:rgba(255,255,255,.5);font-size:12px;margin:0;flex:1;min-width:200px}
.pp-ck-inner a{color:var(--clr-terra-lt)}
.pp-ck-btns{display:flex;gap:10px;flex-shrink:0}

/* ═════════════════════════════════════════
   FOOTER — 3 col: brand wide + 2 cols
   Different structure from previous themes
═════════════════════════════════════════ */
#pp-footer{background:var(--clr-footer-bg)}
.pp-footer-main{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:48px;
  padding:60px 0 48px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
@media(max-width:860px){.pp-footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.pp-footer-main{grid-template-columns:1fr}}
/* Brand col — large with tagline + anti-fraud */
.pp-ft-brand-name{
  font-family:var(--font-heading);
  font-size:26px;
  font-weight:700;
  color:#fff;
  margin-bottom:6px;
}
.pp-ft-brand-name strong{color:var(--clr-terra-lt)}
#pp-footer .custom-logo-link img{height:var(--logo-hf,44px);width:auto;max-width:200px;object-fit:contain;margin-bottom:12px}
.pp-ft-desc{font-size:13px;color:rgba(255,255,255,.35);line-height:1.8;max-width:280px;margin-bottom:16px}
.pp-ft-fraud{
  background:rgba(193,68,14,.15);
  border:1px solid rgba(193,68,14,.3);
  border-radius:4px;
  padding:10px 14px;
  font-size:11px;
  color:rgba(255,255,255,.5);
  letter-spacing:.03em;
  max-width:280px;
}
.pp-ft-social{display:flex;gap:8px;margin-top:16px}
.pp-ft-soc{
  width:34px;height:34px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;color:rgba(255,255,255,.4);
  text-decoration:none;transition:all .2s;font-weight:700;
}
.pp-ft-soc:hover{background:var(--clr-terra);border-color:var(--clr-terra);color:#fff;text-decoration:none}
/* Footer column heads */
.pp-ft-head{
  font-size:10px;
  font-weight:700;
  color:rgba(255,255,255,.4);
  text-transform:uppercase;
  letter-spacing:.16em;
  margin-bottom:16px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.08);
  font-family:var(--font-body);
}
.pp-ft-links li{margin-bottom:9px}
.pp-ft-links a{font-size:13px;color:rgba(255,255,255,.35);text-decoration:none;transition:color .2s}
.pp-ft-links a:hover{color:var(--clr-terra-lt)}
.pp-ft-contact li{font-size:13px;color:rgba(255,255,255,.35);margin-bottom:9px;display:flex;gap:8px;line-height:1.6}
/* Footer bottom */
.pp-footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:10px;
  padding:18px 0;
  font-size:11px;color:rgba(255,255,255,.2);
  letter-spacing:.04em;text-transform:uppercase;
}

/* ═════════════════════════════════════════
   PRIVACY / ENTRY CONTENT
═════════════════════════════════════════ */
.pp-entry{max-width:820px;margin:0 auto;padding:64px 40px}
.pp-entry h2{font-family:var(--font-heading);color:var(--clr-dark);font-size:22px;margin:28px 0 10px}
.pp-entry p{color:var(--clr-muted);font-size:14px;margin-bottom:14px}
.pp-entry ul{list-style:disc;padding-left:22px;margin-bottom:14px}
.pp-entry li{color:var(--clr-muted);font-size:14px;margin-bottom:5px}
@media(max-width:640px){.pp-entry{padding:48px 20px}}
