/* phoenixcopywriting.com -- style.css
   Theme: Dark performance copywriting studio, Case Badioli PU, Marche Italy
   Nav: STICKY HORIZONTAL with HOVER DROPDOWN -- UNIQUE in series
   Hero: BENTO GRID dark mosaic -- UNIQUE
   Services: CARD GRID with flame hover borders -- UNIQUE
   Process: HORIZONTAL NUMBERED STEPS -- UNIQUE
   Testimonials: MASONRY REVIEW CARDS -- UNIQUE
   Pricing: HORIZONTAL COMPARISON TABLE -- UNIQUE
   Footer: COMPACT 3-COL DARK -- UNIQUE
   Fonts: Space Grotesk (headings) + Merriweather (body) -- UNIQUE in series
   Palette: #1C1208 charcoal + #CF5A1A flame + #FAF9F5 pearl -- UNIQUE
   CSS prefix: px-
   ---------------------------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Merriweather:ital,wght@0,300;0,400;0,700;1,300;1,400&display=swap');

:root {
  --px-char:   #1C1208;
  --px-char2:  #241708;
  --px-char3:  #0E0A05;
  --px-flame:  #CF5A1A;
  --px-flm2:   #A84514;
  --px-flm3:   #E8703A;
  --px-fbg:    rgba(207,90,26,.1);
  --px-fbg2:   rgba(207,90,26,.18);
  --px-pearl:  #FAF9F5;
  --px-prl2:   #F0EDE5;
  --px-prl3:   #E0D9CE;
  --px-edge:   rgba(250,249,245,.08);
  --px-edge2:  rgba(250,249,245,.15);
  --px-muted:  rgba(250,249,245,.38);
  --px-dim:    rgba(250,249,245,.15);
  --px-max:    1160px;
  --px-ease:   all 0.22s cubic-bezier(.4,0,.2,1);
  --px-fh:     'Space Grotesk', system-ui, sans-serif;
  --px-fb:     'Merriweather', Georgia, serif;
  --px-r:      4px;
  --px-r2:     12px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--px-char);color:var(--px-pearl);font-family:var(--px-fb);font-size:1rem;line-height:1.7;overflow-x:hidden;}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
input,textarea,select{font-family:inherit;font-size:1rem;}
address{font-style:normal;}
h1,h2,h3,h4,h5{font-family:var(--px-fh);}
h1{font-size:clamp(2.5rem,5vw,5rem);font-weight:700;line-height:1.04;letter-spacing:-.025em;}
h2{font-size:clamp(1.6rem,2.8vw,2.6rem);font-weight:600;line-height:1.12;letter-spacing:-.018em;}
h3{font-size:clamp(.95rem,1.4vw,1.2rem);font-weight:600;}
h4{font-size:.8rem;font-weight:700;font-family:var(--px-fh);letter-spacing:.08em;text-transform:uppercase;}
p{font-size:.88rem;line-height:1.85;color:var(--px-muted);}

.px-wrap{max-width:var(--px-max);margin:0 auto;padding:0 2.5rem;}
.px-segment{padding:7rem 0;}
.px-kicker{display:inline-block;font-family:var(--px-fh);font-size:.5rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--px-flame);margin-bottom:.55rem;}

/* ---- BUTTONS ---- */
.px-btn-flame{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--px-fh);font-size:.84rem;font-weight:600;background:var(--px-flame);color:var(--px-pearl);padding:.76rem 1.75rem;border-radius:var(--px-r);transition:var(--px-ease);white-space:nowrap;border:none;cursor:pointer;}
.px-btn-flame:hover{background:var(--px-flm2);transform:translateY(-1px);}
.px-btn-outline-flame{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--px-fh);font-size:.84rem;font-weight:600;color:var(--px-flame);padding:.74rem 1.7rem;border-radius:var(--px-r);border:1.5px solid var(--px-flame);background:transparent;transition:var(--px-ease);white-space:nowrap;}
.px-btn-outline-flame:hover{background:var(--px-fbg);}
.px-btn-outline-pearl{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--px-fh);font-size:.84rem;font-weight:600;color:var(--px-pearl);padding:.74rem 1.7rem;border-radius:var(--px-r);border:1.5px solid var(--px-edge2);background:transparent;transition:var(--px-ease);white-space:nowrap;}
.px-btn-outline-pearl:hover{border-color:var(--px-pearl);background:rgba(250,249,245,.05);}
.px-btn-dark{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--px-fh);font-size:.84rem;font-weight:600;background:var(--px-char2);color:var(--px-pearl);padding:.76rem 1.75rem;border-radius:var(--px-r);border:1.5px solid var(--px-edge2);transition:var(--px-ease);white-space:nowrap;border:none;cursor:pointer;}
.px-btn-dark:hover{background:var(--px-char3);}

/* ---- STICKY HORIZONTAL NAV with HOVER DROPDOWN (UNIQUE) ---- */
/* Logo left | center links + dropdown | right CTA + lang */
.px-masthead{
  position:fixed;top:0;left:0;right:0;z-index:900;
  background:rgba(28,18,8,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--px-edge);
  transition:box-shadow .25s;
}
.px-masthead.px-ms-raised{box-shadow:0 2px 24px rgba(0,0,0,.35);}
body{padding-top:68px;}
.px-nav-bar{
  max-width:var(--px-max);margin:0 auto;padding:0 2.5rem;
  height:68px;display:flex;align-items:center;gap:2rem;
}
.px-nav-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;flex-shrink:0;}
.px-nav-logo img{height:22px;width:auto;}
.px-nav-logo-nm{font-family:var(--px-fh);font-size:.9rem;font-weight:700;color:var(--px-pearl);letter-spacing:-.02em;}
.px-nav-logo-nm span{color:var(--px-flame);}
.px-nav-links{display:flex;align-items:center;gap:.15rem;flex:1;}
.px-nl{font-family:var(--px-fh);font-size:.93rem;font-weight:400;color:var(--px-muted);padding:.28rem .72rem;border-radius:var(--px-r);transition:color .2s;white-space:nowrap;cursor:pointer;position:relative;}
.px-nl:hover,.px-nl.px-nav-on{color:var(--px-pearl);}
.px-nl-drop{display:flex;align-items:center;gap:.2rem;}
.px-nl-drop svg{transition:transform .2s;}
.px-nl-drop.px-dd-on svg{transform:rotate(180deg);}
/* Dropdown panel */
.px-dropdown{
  position:fixed;top:68px;left:50%;transform:translateX(-50%);
  width:640px;max-width:90vw;
  background:var(--px-char2);
  border:1px solid var(--px-edge2);
  border-top:2px solid var(--px-flame);
  border-radius:0 0 var(--px-r2) var(--px-r2);
  box-shadow:0 16px 48px rgba(0,0,0,.5);
  opacity:0;pointer-events:none;
  transform:translateX(-50%) translateY(-6px);
  transition:opacity .2s,transform .2s;
  z-index:899;
}
.px-dropdown.px-dd-open{
  opacity:1;pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.px-dd-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:1.5rem;}
.px-dd-item{display:flex;align-items:flex-start;gap:.65rem;padding:.75rem;border-radius:var(--px-r);transition:var(--px-ease);text-decoration:none;}
.px-dd-item:hover{background:var(--px-fbg);}
.px-dd-ico{width:30px;height:30px;border-radius:var(--px-r);background:var(--px-fbg);color:var(--px-flame);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.px-dd-nm{font-family:var(--px-fh);font-size:.8rem;font-weight:600;color:var(--px-pearl);line-height:1.3;margin-bottom:.08rem;}
.px-dd-pr{font-family:var(--px-fh);font-size:.68rem;color:var(--px-flame);}
.px-dd-tg{font-size:.7rem;color:var(--px-muted);line-height:1.45;}
.px-dd-footer{border-top:1px solid var(--px-edge);padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;}
.px-dd-ft{font-size:.72rem;color:var(--px-dim);}
/* Right side */
.px-nav-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto;}
.px-nav-cta{font-family:var(--px-fh);font-size:.78rem;font-weight:600;background:var(--px-flame);color:var(--px-pearl);padding:.38rem 1.05rem;border-radius:var(--px-r);transition:var(--px-ease);}
.px-nav-cta:hover{background:var(--px-flm2);}
.px-nav-lang{font-family:var(--px-fh);font-size:.6rem;font-weight:700;letter-spacing:.07em;color:var(--px-muted);border:1px solid var(--px-edge);padding:.12rem .38rem;border-radius:2px;transition:var(--px-ease);}
.px-nav-lang:hover{color:var(--px-pearl);border-color:var(--px-edge2);}
/* Burger */
.px-nav-burger{display:none;width:32px;height:32px;align-items:center;justify-content:center;cursor:pointer;color:var(--px-pearl);}
/* Mobile drawer */
.px-mob-draw{position:fixed;inset:0;background:var(--px-char);z-index:950;padding:5rem 2rem 2rem;overflow-y:auto;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);}
.px-mob-draw.px-md-open{transform:translateX(0);}
.px-mob-xbtn{position:absolute;top:1.3rem;right:1.5rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--px-pearl);}
.px-mob-lnk{display:block;font-family:var(--px-fh);font-size:1.4rem;font-weight:600;color:var(--px-pearl);padding:.5rem 0;border-bottom:1px solid var(--px-edge);}
.px-mob-lnk:hover{color:var(--px-flame);}

/* ---- BENTO GRID HERO (UNIQUE) ---- */
/* Dark mosaic: main cell + small cells arranged in a bento pattern */
.px-bento-hero{background:var(--px-char);padding:3rem 0 4.5rem;}
.px-bento-grid{
  max-width:var(--px-max);margin:0 auto;padding:0 2.5rem;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  grid-template-rows:auto auto auto;
  gap:1rem;
}
/* Main headline cell - spans 2 cols */
.px-bc-main{
  grid-column:1/3;grid-row:1/2;
  background:linear-gradient(135deg,var(--px-char2) 0%,var(--px-char3) 100%);
  border:1px solid var(--px-edge);
  border-radius:var(--px-r2);
  padding:3.5rem;
  position:relative;overflow:hidden;
}
.px-bc-main::before{content:'';position:absolute;top:-80px;right:-80px;width:320px;height:320px;background:radial-gradient(circle,rgba(207,90,26,.2) 0%,transparent 70%);pointer-events:none;}
.px-bc-main h1{color:var(--px-pearl);margin-bottom:1.25rem;}
.px-bc-main h1 em{font-style:italic;color:var(--px-flame);font-family:'Space Grotesk',sans-serif;}
.px-bc-sub{font-size:.92rem;color:var(--px-muted);max-width:44ch;margin-bottom:2rem;line-height:1.8;font-family:var(--px-fh);}
.px-bc-acts{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;}
/* Flame accent cell */
.px-bc-flame{
  grid-column:3/4;grid-row:1/2;
  background:var(--px-flame);
  border-radius:var(--px-r2);
  padding:2rem;
  display:flex;flex-direction:column;justify-content:space-between;
  position:relative;overflow:hidden;
}
.px-bc-flame::after{content:'';position:absolute;bottom:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:rgba(250,249,245,.08);}
.px-bc-flame-n{font-family:var(--px-fh);font-size:3.5rem;font-weight:700;color:var(--px-pearl);line-height:1;}
.px-bc-flame-l{font-family:var(--px-fh);font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:rgba(250,249,245,.6);margin-top:.25rem;}
/* Image cell */
.px-bc-img{
  grid-column:1/2;grid-row:2/3;
  border-radius:var(--px-r2);overflow:hidden;
  min-height:240px;
}
.px-bc-img img{width:100%;height:100%;object-fit:cover;display:block;}
/* Services list cell */
.px-bc-svcs{
  grid-column:2/4;grid-row:2/3;
  background:var(--px-char2);
  border:1px solid var(--px-edge);
  border-radius:var(--px-r2);
  padding:2rem;
}
.px-bc-svcs-h{font-family:var(--px-fh);font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--px-muted);margin-bottom:1.1rem;}
.px-bc-svc-row{display:flex;align-items:center;gap:.65rem;padding:.52rem 0;border-bottom:1px solid var(--px-edge);}
.px-bc-svc-row:last-child{border-bottom:none;}
.px-bc-svc-ico{width:24px;height:24px;border-radius:3px;background:var(--px-fbg);color:var(--px-flame);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.px-bc-svc-nm{font-family:var(--px-fh);font-size:.8rem;font-weight:600;color:var(--px-pearl);flex:1;}
.px-bc-svc-pr{font-family:var(--px-fh);font-size:.7rem;color:var(--px-muted);}
/* Stats cells */
.px-bc-stat{
  background:var(--px-char2);
  border:1px solid var(--px-edge);
  border-radius:var(--px-r2);
  padding:1.5rem;
  text-align:center;
}
.px-bc-stat-n{font-family:var(--px-fh);font-size:2.4rem;font-weight:700;color:var(--px-pearl);line-height:1;}
.px-bc-stat-l{font-family:var(--px-fh);font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--px-muted);margin-top:.3rem;}
/* Bottom strip: 3 stats */
.px-bc-stats{grid-column:1/4;grid-row:3/4;display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;}

/* ---- SERVICES: CARD GRID ---- */
.px-svc-grid-sec{background:var(--px-char);}
.px-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid var(--px-edge);border-radius:var(--px-r2);overflow:hidden;}
.px-svc-card{
  background:var(--px-char2);
  padding:2rem;
  position:relative;
  transition:background .25s;
  text-decoration:none;
}
.px-svc-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--px-flame);transform:scaleX(0);transition:transform .3s;transform-origin:left;}
.px-svc-card:hover{background:rgba(207,90,26,.06);}
.px-svc-card:hover::before{transform:scaleX(1);}
.px-svc-card-ico{width:38px;height:38px;border-radius:var(--px-r);background:var(--px-fbg);color:var(--px-flame);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;}
.px-svc-card-nm{font-family:var(--px-fh);font-size:1rem;font-weight:600;color:var(--px-pearl);margin-bottom:.45rem;}
.px-svc-card-tg{font-size:.78rem;color:var(--px-muted);line-height:1.72;margin-bottom:1rem;}
.px-svc-card-pr{font-family:var(--px-fh);font-size:.76rem;color:var(--px-flame);}
.px-svc-card-arr{position:absolute;top:2rem;right:2rem;color:var(--px-muted);transition:color .2s,transform .2s;}
.px-svc-card:hover .px-svc-card-arr{color:var(--px-flame);transform:translate(2px,-2px);}

/* ---- CASES ---- */
.px-cases-sec{background:var(--px-char3);}
.px-case-row{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--px-edge);border-radius:var(--px-r2);overflow:hidden;margin-bottom:1.25rem;transition:var(--px-ease);}
.px-case-row:hover{border-color:var(--px-edge2);}
.px-case-row-img{overflow:hidden;}
.px-case-row-img img{width:100%;height:100%;object-fit:cover;display:block;min-height:260px;transition:transform .45s;}
.px-case-row:hover .px-case-row-img img{transform:scale(1.04);}
.px-case-row-body{background:var(--px-char2);padding:2.5rem;display:flex;flex-direction:column;justify-content:center;}
.px-case-tag{font-family:var(--px-fh);font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--px-flame);margin-bottom:.55rem;}
.px-case-nm{font-family:var(--px-fh);font-size:1.25rem;font-weight:600;color:var(--px-pearl);margin-bottom:.75rem;}
.px-case-p{font-size:.8rem;color:var(--px-muted);line-height:1.8;margin-bottom:1.2rem;}
.px-case-tags{display:flex;flex-wrap:wrap;gap:.3rem;}
.px-case-badge{font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--px-edge2);color:var(--px-muted);padding:.1rem .38rem;border-radius:2px;font-family:var(--px-fh);}
.px-case-row.px-cr-rev .px-case-row-img{order:2;}
.px-case-row.px-cr-rev .px-case-row-body{order:1;}

/* ---- PROCESS: HORIZONTAL STEPS ---- */
.px-proc-sec{background:var(--px-char);}
.px-proc-track{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:4rem;}
.px-proc-track::before{content:'';position:absolute;top:22px;left:calc(12.5% + 1.5rem);right:calc(12.5% + 1.5rem);height:1px;background:var(--px-edge);}
.px-proc-step{text-align:center;padding:0 1.5rem;}
.px-proc-num{font-family:var(--px-fh);font-size:1.25rem;font-weight:700;color:var(--px-pearl);width:44px;height:44px;border-radius:50%;border:2px solid var(--px-flame);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;background:var(--px-char);position:relative;z-index:1;}
.px-proc-h{font-family:var(--px-fh);font-size:.9rem;font-weight:600;color:var(--px-pearl);margin-bottom:.5rem;}
.px-proc-p{font-size:.76rem;color:var(--px-muted);line-height:1.72;}

/* ---- TESTIMONIALS: MASONRY REVIEW CARDS ---- */
.px-voices-sec{background:var(--px-char2);}
.px-masonry{columns:3;column-gap:1.25rem;}
.px-voice-card{break-inside:avoid;background:var(--px-char);border:1px solid var(--px-edge);border-radius:var(--px-r2);padding:1.5rem;margin-bottom:1.25rem;}
.px-voice-stars{display:flex;gap:.18rem;color:var(--px-flame);margin-bottom:.75rem;}
.px-voice-q{font-family:var(--px-fh);font-size:.84rem;color:var(--px-pearl);line-height:1.62;margin-bottom:1rem;}
.px-voice-who{font-family:var(--px-fh);font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--px-muted);}

/* ---- PRICING: HORIZONTAL COMPARISON TABLE ---- */
.px-pricing-sec{background:var(--px-char3);}
.px-price-tbl{width:100%;border-collapse:collapse;border-radius:var(--px-r2);overflow:hidden;border:1px solid var(--px-edge);}
.px-price-tbl thead tr th{padding:1.5rem 1.25rem;text-align:center;border-bottom:1px solid var(--px-edge);}
.px-tbl-nm{font-family:var(--px-fh);font-size:1rem;font-weight:700;color:var(--px-pearl);display:block;margin-bottom:.2rem;}
.px-tbl-price{font-family:var(--px-fh);font-size:1.85rem;font-weight:700;color:var(--px-pearl);line-height:1;}
.px-tbl-unit{font-size:.54rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--px-muted);margin:.1rem 0 .75rem;}
.px-tbl-cta{display:inline-flex;align-items:center;justify-content:center;font-family:var(--px-fh);font-size:.76rem;font-weight:600;padding:.5rem 1.2rem;border-radius:var(--px-r);transition:var(--px-ease);}
.px-tc-outline{border:1.5px solid var(--px-edge2);color:var(--px-muted);}
.px-tc-outline:hover{border-color:var(--px-pearl);color:var(--px-pearl);}
.px-tc-flame{background:var(--px-flame);color:var(--px-pearl);}
.px-tc-flame:hover{background:var(--px-flm2);}
.px-th-feat{background:rgba(207,90,26,.08);}
.px-price-tbl tbody tr{border-bottom:1px solid var(--px-edge);}
.px-price-tbl tbody tr:last-child{border-bottom:none;}
.px-price-tbl tbody tr:hover{background:rgba(250,249,245,.02);}
.px-tbl-feat-h{padding:.85rem 1.25rem;font-family:var(--px-fh);font-size:.76rem;font-weight:600;color:var(--px-muted);text-align:left;}
.px-tbl-cell{padding:.85rem 1.25rem;text-align:center;vertical-align:middle;}
.px-tbl-tick{color:var(--px-flame);}
.px-tbl-dash{color:var(--px-edge2);font-size:1rem;}
.px-tbl-cell.px-th-feat{background:rgba(207,90,26,.05);}
.px-feat-badge{display:inline-flex;font-family:var(--px-fh);font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--px-fbg);color:var(--px-flame);padding:.08rem .4rem;border-radius:100px;border:1px solid var(--px-fbg2);}

/* ---- CTA BAND ---- */
.px-cta-band{background:var(--px-flame);}
.px-cta-inner{max-width:600px;margin:0 auto;text-align:center;padding:6rem 2.5rem;}
.px-cta-inner h2{font-family:var(--px-fh);color:var(--px-pearl);font-size:clamp(1.8rem,3.5vw,3rem);margin-bottom:.6rem;}
.px-cta-inner p{color:rgba(250,249,245,.6);margin-bottom:2.25rem;font-family:var(--px-fh);}
.px-cta-acts{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;}
.px-btn-pearl{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--px-fh);font-size:.84rem;font-weight:700;background:var(--px-pearl);color:var(--px-char);padding:.76rem 1.75rem;border-radius:var(--px-r);transition:var(--px-ease);}
.px-btn-pearl:hover{background:var(--px-prl2);}
.px-btn-ghost-pearl{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--px-fh);font-size:.84rem;font-weight:700;color:var(--px-pearl);padding:.74rem 1.7rem;border-radius:var(--px-r);border:2px solid rgba(250,249,245,.5);background:transparent;transition:var(--px-ease);}
.px-btn-ghost-pearl:hover{border-color:var(--px-pearl);background:rgba(250,249,245,.1);}

/* ---- PAGE CROWN ---- */
.px-page-crown{background:var(--px-char2);padding:5rem 0 3.5rem;border-bottom:1px solid var(--px-edge);}
.px-crown-inner{max-width:var(--px-max);margin:0 auto;padding:0 2.5rem;text-align:center;}
.px-crown-tag{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--px-fh);font-size:.5rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--px-flame);background:var(--px-fbg);border:1px solid var(--px-fbg2);padding:.18rem .6rem;border-radius:2px;margin-bottom:1.1rem;}
.px-page-crown h1{color:var(--px-pearl);max-width:22ch;margin:0 auto;}
.px-crown-sub{font-family:var(--px-fh);font-size:.88rem;color:var(--px-muted);max-width:50ch;margin:.6rem auto 0;}

/* ---- SERVICE PAGES ---- */
.px-svcpage-wrap{max-width:var(--px-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 260px;gap:5rem;align-items:start;}
.px-svcpage-body h2{font-family:var(--px-fh);font-size:1.45rem;font-weight:600;color:var(--px-pearl);margin:2.5rem 0 .85rem;}
.px-svcpage-body p{margin-bottom:1rem;}
.px-svcpage-inc{display:flex;flex-direction:column;gap:.42rem;margin-bottom:2rem;}
.px-svcpage-li{display:flex;align-items:center;gap:.5rem;font-size:.86rem;color:var(--px-pearl);}
.px-svcpage-li svg{color:var(--px-flame);flex-shrink:0;}
.px-svc-del-box{background:var(--px-char);border:1px solid var(--px-edge);border-radius:var(--px-r2);padding:1.25rem;margin-bottom:1.35rem;}
.px-svc-note{background:var(--px-fbg);border-left:2px solid var(--px-flame);padding:.9rem 1.1rem;border-radius:0 var(--px-r) var(--px-r) 0;font-size:.82rem;color:var(--px-muted);line-height:1.72;}
.px-svcpage-aside{position:sticky;top:1.5rem;}
.px-aside-panel{background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r2);overflow:hidden;margin-bottom:.85rem;}
.px-aside-img img{width:100%;height:150px;object-fit:cover;display:block;}
.px-aside-body{padding:1.25rem;}
.px-aside-nm{font-family:var(--px-fh);font-size:.82rem;font-weight:600;color:var(--px-pearl);margin-bottom:.2rem;}
.px-aside-pr{font-family:var(--px-fh);font-size:2rem;font-weight:700;color:var(--px-pearl);line-height:1;}
.px-aside-unit{font-size:.52rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--px-muted);margin-bottom:1.1rem;}
.px-aside-acts{display:flex;flex-direction:column;gap:.45rem;}

/* ---- BUILDER ---- */
.px-builder-wrap{max-width:var(--px-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 260px;gap:4.5rem;align-items:start;}
.px-bld-section{margin-bottom:2.5rem;}
.px-bld-label{display:block;font-family:var(--px-fh);font-size:.5rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--px-flame);margin-bottom:.85rem;}
.px-bld-rows{display:flex;flex-direction:column;gap:.45rem;}
.px-bld-row{background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r);padding:.8rem 1rem;display:flex;align-items:center;gap:.7rem;cursor:pointer;transition:var(--px-ease);user-select:none;}
.px-bld-row:hover{border-color:var(--px-edge2);}
.px-bld-row.px-chosen{border-color:var(--px-flame);background:var(--px-fbg);}
.px-bld-ico{width:28px;height:28px;border-radius:var(--px-r);background:var(--px-fbg);color:var(--px-flame);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.px-bld-nm{font-family:var(--px-fh);font-size:.82rem;color:var(--px-pearl);flex:1;}
.px-bld-pr{font-size:.72rem;color:var(--px-muted);}
.px-bld-tick{width:16px;height:16px;border-radius:3px;border:1.5px solid var(--px-edge2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--px-ease);}
.px-bld-row.px-chosen .px-bld-tick{background:var(--px-flame);border-color:var(--px-flame);color:var(--px-pearl);}
.px-adn-chips{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;}
.px-adn-chip{background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r);padding:.7rem .9rem;cursor:pointer;transition:var(--px-ease);user-select:none;}
.px-adn-chip:hover{border-color:var(--px-edge2);}
.px-adn-chip.px-chosen{border-color:var(--px-flame);background:var(--px-fbg);}
.px-adn-nm{font-family:var(--px-fh);font-size:.76rem;font-weight:600;color:var(--px-pearl);}
.px-adn-pr{font-size:.67rem;color:var(--px-muted);margin-top:.05rem;}
.px-adn-chip.px-chosen .px-adn-pr{color:var(--px-flame);}
.px-hrs-box{background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r);padding:1.1rem 1.25rem;}
.px-hrs-rng{-webkit-appearance:none;width:100%;height:3px;background:var(--px-edge);border-radius:2px;margin-top:.65rem;}
.px-hrs-rng::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--px-flame);cursor:pointer;box-shadow:0 0 0 3px var(--px-fbg);}
.px-hrs-val{font-family:var(--px-fh);font-size:1.3rem;font-weight:700;color:var(--px-flame);}
/* Summary */
.px-order-box{background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r2);overflow:hidden;position:sticky;top:1.5rem;}
.px-ob-hd{background:var(--px-char3);padding:.82rem 1.25rem;}
.px-ob-hd h3{font-family:var(--px-fh);font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--px-muted);}
.px-ob-lines{padding:1rem 1.25rem;min-height:56px;}
.px-ob-empty{font-size:.74rem;color:var(--px-muted);font-style:italic;}
.px-ob-line{display:flex;justify-content:space-between;gap:.7rem;font-size:.74rem;margin-bottom:.45rem;}
.px-ob-lnm{color:var(--px-muted);font-family:var(--px-fh);}
.px-ob-lpr{font-weight:700;color:var(--px-pearl);font-family:var(--px-fh);}
.px-ob-foot{border-top:1px solid var(--px-edge);padding:1rem 1.25rem;}
.px-ob-tot{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;}
.px-ob-totl{font-family:var(--px-fh);font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--px-muted);}
.px-ob-totn{font-family:var(--px-fh);font-size:1.9rem;font-weight:700;color:var(--px-pearl);}
.px-ob-go{display:block;width:100%;text-align:center;background:var(--px-flame);color:var(--px-pearl);font-family:var(--px-fh);font-size:.82rem;font-weight:700;padding:.76rem;border-radius:var(--px-r);cursor:pointer;border:none;transition:var(--px-ease);}
.px-ob-go:hover:not(:disabled){background:var(--px-flm2);}
.px-ob-go:disabled{opacity:.22;cursor:not-allowed;}

/* ---- CHECKOUT ---- */
.px-co-wrap{max-width:820px;margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 255px;gap:3.5rem;align-items:start;}
.px-fld-lbl{display:block;font-family:var(--px-fh);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--px-muted);margin-bottom:.38rem;}
.px-fld{width:100%;background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r);padding:.62rem .88rem;color:var(--px-pearl);font-size:.86rem;transition:border-color .2s;font-family:var(--px-fh);}
.px-fld:focus{outline:none;border-color:var(--px-flame);}
.px-fgrp{margin-bottom:.9rem;}
.px-fgrp-duo{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;}
.px-agree{display:flex;align-items:flex-start;gap:.5rem;font-size:.75rem;color:var(--px-muted);line-height:1.55;margin:1.2rem 0;font-family:var(--px-fh);}
.px-agree input{margin-top:.15rem;accent-color:var(--px-flame);}
.px-agree a{color:var(--px-flame);}
.px-co-panel{background:var(--px-char2);border:1px solid var(--px-edge);border-radius:var(--px-r2);overflow:hidden;position:sticky;top:1.5rem;}
.px-co-ph{background:var(--px-char3);padding:.8rem 1.1rem;}
.px-co-ph h3{font-family:var(--px-fh);font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--px-muted);}
.px-co-pb{padding:1.1rem 1.2rem;}
.px-co-line{display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;margin-bottom:.42rem;font-family:var(--px-fh);}
.px-co-nm{color:var(--px-muted);}
.px-co-pr{font-weight:700;color:var(--px-pearl);}
.px-co-hr{border:none;border-top:1px solid var(--px-edge);margin:.7rem 0;}
.px-co-totr{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.5rem;font-family:var(--px-fh);}
.px-co-totl{font-size:.5rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--px-muted);}
.px-co-totn{font-size:1.55rem;font-weight:700;color:var(--px-pearl);}

/* ---- LEGAL DOCS ---- */
.px-docpage{max-width:740px;margin:0 auto;padding:5rem 2.5rem;}
.px-docpage h2{font-family:var(--px-fh);font-size:1.4rem;color:var(--px-pearl);margin:2.5rem 0 .75rem;}
.px-docpage h3{font-family:var(--px-fh);font-size:.9rem;font-weight:600;color:var(--px-pearl);margin:1.4rem 0 .4rem;}
.px-docpage p{font-size:.86rem;line-height:1.85;margin-bottom:.85rem;}
.px-docpage ul{padding-left:1.1rem;margin:.4rem 0 .85rem;display:flex;flex-direction:column;gap:.28rem;}
.px-docpage li{font-size:.86rem;list-style:disc;line-height:1.72;color:var(--px-muted);}
.px-docpage a{color:var(--px-flame);}
.px-docpage address{font-style:normal;background:var(--px-char2);border-left:2px solid var(--px-flame);padding:.85rem 1.1rem;margin:.85rem 0;border-radius:0 var(--px-r) var(--px-r) 0;font-size:.86rem;line-height:1.9;color:var(--px-pearl);font-family:var(--px-fh);}
.px-docpage table{width:100%;border-collapse:collapse;font-size:.78rem;margin:.85rem 0 1.2rem;}
.px-docpage th{background:var(--px-char2);color:var(--px-pearl);padding:.5rem .85rem;text-align:left;font-weight:700;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--px-edge);font-family:var(--px-fh);}
.px-docpage td{padding:.5rem .85rem;border-bottom:1px solid var(--px-edge);color:var(--px-muted);}

/* ---- FOOTER: COMPACT 3-COL DARK ---- */
.px-footer{background:var(--px-char3);border-top:1px solid var(--px-edge);}
.px-footer-row{max-width:var(--px-max);margin:0 auto;padding:4rem 2.5rem;display:flex;flex-direction:row;flex-wrap:nowrap;gap:2.5rem;align-items:flex-start;}
.px-footer-col{flex:1 1 0;min-width:0;}
.px-footer-col--brand{flex:0 0 200px;min-width:0;}
.px-foot-brand{margin-bottom:1.25rem;}
.px-foot-brand-row{display:flex;align-items:center;gap:.55rem;margin-bottom:.75rem;}
.px-foot-brand-row img{height:20px;}
.px-foot-brand-nm{font-family:var(--px-fh);font-size:.88rem;font-weight:700;color:rgba(250,249,245,.35);}
.px-foot-brand-nm span{color:var(--px-flame);}
.px-foot-tagline{font-size:.72rem;color:rgba(250,249,245,.15);line-height:1.65;max-width:26ch;font-family:var(--px-fh);margin-bottom:1.1rem;word-break:break-word;}
.px-foot-soc{display:flex;gap:.38rem;}
.px-foot-soc a{width:26px;height:26px;border-radius:var(--px-r);background:rgba(250,249,245,.04);border:1px solid var(--px-edge);display:flex;align-items:center;justify-content:center;color:rgba(250,249,245,.2);transition:var(--px-ease);}
.px-foot-soc a:hover{color:var(--px-flame);background:var(--px-fbg);border-color:var(--px-fbg2);}
.px-foot-col-h{font-family:var(--px-fh);font-size:.5rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(250,249,245,.15);margin-bottom:.85rem;}
.px-foot-links{display:flex;flex-direction:column;gap:.5rem;}
.px-foot-links a{font-size:.76rem;color:rgba(250,249,245,.22);transition:color .18s;font-family:var(--px-fh);}
.px-foot-links a:hover{color:rgba(250,249,245,.65);}
.px-foot-ct{display:flex;flex-direction:column;gap:.45rem;}
.px-foot-ct a{display:flex;align-items:flex-start;gap:.4rem;font-size:.7rem;color:rgba(250,249,245,.2);transition:color .2s;font-family:var(--px-fh);word-break:break-word;overflow-wrap:anywhere;}
.px-foot-ct a:hover{color:rgba(250,249,245,.6);}
.px-foot-ct svg{color:var(--px-flame);opacity:.6;flex-shrink:0;margin-top:.08rem;}
.px-footer-bottom{border-top:1px solid var(--px-edge);padding:1.4rem 2.5rem;max-width:var(--px-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.px-foot-copy{font-size:.62rem;color:rgba(250,249,245,.1);font-family:var(--px-fh);}
.px-foot-note{font-size:.62rem;color:rgba(250,249,245,.08);font-family:var(--px-fh);}
.px-foot-legal{display:flex;gap:1rem;}
.px-foot-legal a{font-size:.62rem;color:rgba(250,249,245,.1);transition:color .2s;font-family:var(--px-fh);}
.px-foot-legal a:hover{color:rgba(250,249,245,.45);}

/* ---- COOKIE + CHAT ---- */
.px-ck-banner{position:fixed;bottom:1.5rem;left:1.5rem;z-index:9999;max-width:300px;background:var(--px-char2);border:1px solid var(--px-edge2);border-radius:var(--px-r2);padding:1.15rem 1.3rem;box-shadow:0 8px 32px rgba(0,0,0,.5);display:none;}
.px-ck-banner p{font-size:.74rem;color:var(--px-muted);line-height:1.6;margin-bottom:.75rem;font-family:var(--px-fh);}
.px-ck-btns{display:flex;gap:.4rem;}
.px-ck-yes{flex:1;background:var(--px-flame);color:var(--px-pearl);font-family:var(--px-fh);font-size:.74rem;font-weight:700;padding:.42rem .8rem;border-radius:var(--px-r);border:none;cursor:pointer;transition:var(--px-ease);}
.px-ck-yes:hover{background:var(--px-flm2);}
.px-ck-no{font-family:var(--px-fh);font-size:.74rem;font-weight:700;color:var(--px-muted);padding:.42rem .8rem;border-radius:var(--px-r);border:1px solid var(--px-edge);background:none;cursor:pointer;}
.px-chat-toggle{position:fixed;bottom:1.75rem;right:1.75rem;z-index:9990;width:44px;height:44px;border-radius:50%;background:var(--px-flame);color:var(--px-pearl);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(207,90,26,.4);cursor:pointer;border:none;transition:var(--px-ease);}
.px-chat-toggle:hover{background:var(--px-flm2);transform:scale(1.08);}
.px-chatbox{position:fixed;bottom:5rem;right:1.75rem;z-index:9989;width:272px;background:var(--px-char2);border:1px solid var(--px-edge2);border-radius:var(--px-r2);overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.5);transform:translateY(10px);opacity:0;pointer-events:none;transition:opacity .22s,transform .22s;}
.px-chatbox.px-cb-open{opacity:1;pointer-events:auto;transform:translateY(0);}
.px-chat-hd{background:var(--px-char3);padding:.85rem 1.1rem;display:flex;align-items:center;justify-content:space-between;}
.px-chat-ht{font-family:var(--px-fh);font-size:.86rem;font-weight:600;color:var(--px-pearl);}
.px-chat-hs{font-size:.62rem;color:var(--px-muted);font-family:var(--px-fh);}
.px-chat-xb{color:var(--px-muted);cursor:pointer;border:none;background:none;}
.px-chat-xb:hover{color:var(--px-pearl);}
.px-chat-bd{padding:1rem;}
.px-chat-done{display:none;text-align:center;padding:.85rem;font-size:.78rem;color:var(--px-flame);font-weight:700;font-family:var(--px-fh);}
.px-chat-inp{width:100%;background:var(--px-char);border:1px solid var(--px-edge);border-radius:var(--px-r);padding:.48rem .72rem;color:var(--px-pearl);font-size:.76rem;margin-bottom:.45rem;resize:none;transition:border-color .2s;font-family:var(--px-fh);}
.px-chat-inp:focus{outline:none;border-color:var(--px-flame);}
.px-chat-go{width:100%;background:var(--px-flame);color:var(--px-pearl);font-family:var(--px-fh);font-size:.76rem;font-weight:700;padding:.48rem;border-radius:var(--px-r);border:none;cursor:pointer;transition:var(--px-ease);}
.px-chat-go:hover{background:var(--px-flm2);}

/* ---- RESULTS ---- */
.px-result-pg{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:5rem 2.5rem;}
.px-ri{max-width:440px;}
.px-ri-ico{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;}
.px-ri-ok{background:var(--px-fbg);color:var(--px-flame);}
.px-ri-err{background:rgba(220,38,38,.06);color:#EF4444;}
.px-ri h1{color:var(--px-pearl);margin-bottom:.75rem;}
.px-ri p{margin-bottom:1.75rem;}

/* ---- REVEAL ---- */
.px-fade{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;}
.px-fade.px-vis{opacity:1;transform:translateY(0);}
.px-fade-l{opacity:0;transform:translateX(-14px);transition:opacity .5s ease,transform .5s ease;}
.px-fade-l.px-vis{opacity:1;transform:translateX(0);}
.px-fade-r{opacity:0;transform:translateX(14px);transition:opacity .5s ease,transform .5s ease;}
.px-fade-r.px-vis{opacity:1;transform:translateX(0);}

/* ---- RESPONSIVE ---- */
@media(max-width:1060px){
  .px-nav-links{display:none;}
  .px-nav-burger{display:flex;}
  .px-bento-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto auto;}
  .px-bc-main{grid-column:1/3;grid-row:1/2;}
  .px-bc-flame{grid-column:1/2;grid-row:2/3;}
  .px-bc-img{grid-column:2/3;grid-row:2/3;}
  .px-bc-svcs{grid-column:1/3;grid-row:3/4;}
  .px-bc-stats{grid-column:1/3;grid-row:4/5;grid-template-columns:1fr 1fr 1fr;}
  .px-svc-grid{grid-template-columns:1fr 1fr;}
  .px-masonry{columns:2;}
  .px-proc-track{grid-template-columns:1fr 1fr;row-gap:2rem;}
  .px-proc-track::before{display:none;}
  .px-case-row{grid-template-columns:1fr;}
  .px-case-row.px-cr-rev .px-case-row-img{order:1;}
  .px-case-row.px-cr-rev .px-case-row-body{order:2;}
  .px-svcpage-wrap,.px-builder-wrap,.px-co-wrap{grid-template-columns:1fr;}
  .px-footer-row{flex-wrap:wrap;gap:2rem;}
  .px-footer-col{flex:1 1 calc(50% - 1rem);}
  .px-footer-col--brand{flex:0 0 100%;}
  .px-price-tbl{font-size:.8rem;}
}
@media(max-width:640px){
  .px-wrap{padding:0 1.25rem;}
  .px-segment{padding:4.5rem 0;}
  .px-bento-grid{grid-template-columns:1fr;padding:0 1.25rem;}
  .px-bc-main{grid-column:1;padding:2rem;}
  .px-bc-flame{grid-column:1;}
  .px-bc-img{grid-column:1;}
  .px-bc-svcs{grid-column:1;}
  .px-bc-stats{grid-column:1;grid-template-columns:1fr;}
  .px-svc-grid{grid-template-columns:1fr;}
  .px-masonry{columns:1;}
  .px-adn-chips{grid-template-columns:1fr;}
  .px-fgrp-duo{grid-template-columns:1fr;}
  .px-footer-col{flex:0 0 100%;}
}
