/* PixelAvora — shared styles: kinetic-gradient direction */
@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@400;600;700;800;900&family=Manrope:wght@400;500;600;700&display=swap');

:root{
  --pa-white:#FFFFFF;
  --pa-paper:#FBF8FA;
  --pa-ink:#14141A;
  --pa-ink-2:#1E1E26;
  --pa-pink:#FF3D7A;
  --pa-orange:#FF7A3D;
  --pa-amber:#FFC93D;
  --pa-grad: linear-gradient(115deg, var(--pa-pink) 0%, var(--pa-orange) 55%, var(--pa-amber) 100%);
  --pa-line: rgba(20,20,26,0.12);
  --pa-line-strong: rgba(20,20,26,0.22);
  --pa-radius:14px;
  --pa-radius-l:22px;
  --pa-maxw:1500px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} }

body{
  margin:0;
  background:var(--pa-white);
  color:var(--pa-ink);
  font-family:'Manrope', -apple-system, sans-serif;
  font-size:16.5px;
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,.pa-display{
  font-family:'Unbounded', sans-serif;
  font-weight:700;
  line-height:1.12;
  letter-spacing:-0.01em;
  margin:0 0 .5em;
  color:var(--pa-ink);
}

p{margin:0 0 1em; max-width:62ch; color:rgba(20,20,26,0.7)}
a{color:inherit; text-decoration:none}
img,svg{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}

.pa-wrap{max-width:var(--pa-maxw); margin:0 auto; padding:0 32px}
@media (max-width:600px){ .pa-wrap{padding:0 20px} }

.pa-skip{
  position:absolute; left:12px; top:-60px; z-index:2000;
  background:var(--pa-ink); color:var(--pa-white); padding:12px 18px;
  border-radius:var(--pa-radius); font-family:'Unbounded',sans-serif; font-weight:700; font-size:13px;
  transition:top .18s ease;
}
.pa-skip:focus{ top:12px }

/* ---------- Reveal-on-scroll safety ---------- */
html.js-ready .pa-reveal{ opacity:0; transform:translateY(20px); transition:opacity .55s ease, transform .55s ease }
html.js-ready .pa-reveal.pa-in{ opacity:1; transform:none }
@media (prefers-reduced-motion: reduce){
  html.js-ready .pa-reveal{ transition:none; opacity:1; transform:none }
}

:focus-visible{ outline:3px solid var(--pa-pink); outline-offset:2px }

.pa-grad-text{ background:var(--pa-grad); -webkit-background-clip:text; background-clip:text; color:transparent }

/* ---------- Header ---------- */
.pa-header{
  position:fixed; top:0; left:0; right:0; z-index:900;
  height:80px; display:flex; align-items:center;
  background:transparent; border-bottom:1px solid transparent;
  transition:background .25s ease, border-color .25s ease, backdrop-filter .25s ease;
}
.pa-header.pa-scrolled{
  background:rgba(255,255,255,0.88);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--pa-line);
}
.pa-header .pa-wrap{ display:flex; align-items:center; justify-content:space-between; width:100%; gap:24px }
.pa-brand{ display:flex; align-items:center; gap:10px; font-family:'Unbounded',sans-serif; font-weight:700; font-size:17px; }
.pa-brand img{ width:32px; height:32px }
.pa-nav{ display:flex; align-items:center; gap:26px }
.pa-nav a{ font-family:'Manrope',sans-serif; font-size:14.5px; font-weight:600; position:relative; padding:6px 0; color:rgba(20,20,26,0.68) }
.pa-nav a::after{ content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--pa-grad); transition:width .18s ease }
.pa-nav a:hover::after,.pa-nav a[aria-current="page"]::after{ width:100% }
.pa-nav a[aria-current="page"]{ color:var(--pa-pink) }
.pa-cta-btn{
  font-family:'Unbounded',sans-serif; font-weight:700; font-size:13.5px;
  background:var(--pa-grad); color:#fff; padding:12px 22px;
  border-radius:100px; border:0; transition:transform .15s ease, box-shadow .15s ease;
}
.pa-cta-btn:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(255,61,122,0.3) }

.pa-burger{ display:none; background:none; border:0; width:40px; height:40px; padding:0; }
.pa-burger span{ display:block; width:22px; height:2px; background:var(--pa-ink); margin:5px auto; transition:transform .2s ease, opacity .2s ease }
.pa-burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg) }
.pa-burger[aria-expanded="true"] span:nth-child(2){ opacity:0 }
.pa-burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg) }

.pa-mobile-panel{
  position:fixed; top:80px; left:0; right:0; background:var(--pa-white);
  border-bottom:1px solid var(--pa-line); padding:16px 20px 24px; display:none; flex-direction:column; gap:2px; z-index:899;
  transform:translateY(-8px); opacity:0; transition:transform .22s ease, opacity .22s ease;
}
.pa-mobile-panel.pa-open{ display:flex; transform:translateY(0); opacity:1 }
.pa-mobile-panel a{ font-family:'Manrope',sans-serif; font-weight:600; padding:12px 4px; border-bottom:1px solid var(--pa-line); color:rgba(20,20,26,0.72) }
.pa-mobile-panel a[aria-current="page"]{ color:var(--pa-pink) }

@media (max-width:900px){
  .pa-nav{ display:none }
  .pa-burger{ display:block }
  .pa-header .pa-cta-btn{ padding:10px 16px; font-size:12.5px }
}

/* ---------- Sections generic ---------- */
main{ display:block; padding-top:80px }
.pa-section{ padding:104px 0 }
.pa-section.pa-tight{ padding:66px 0 }
.pa-dark{ background:var(--pa-ink); color:var(--pa-white) }
.pa-dark p{ color:rgba(255,255,255,0.72) }
.pa-dark h1,.pa-dark h2,.pa-dark h3,.pa-dark h4{ color:var(--pa-white) }
.pa-paper{ background:var(--pa-paper) }

.pa-eyebrow{ font-family:'Unbounded',sans-serif; font-weight:700; font-size:12px; color:var(--pa-pink); margin-bottom:16px; display:inline-block; padding:6px 14px; border:1px solid var(--pa-line-strong); border-radius:100px }
.pa-dark .pa-eyebrow{ border-color:rgba(255,255,255,0.2); color:var(--pa-amber) }
.pa-h2{ font-size:clamp(28px,3.6vw,42px); max-width:18ch }
.pa-lede{ font-size:18px; max-width:60ch; color:rgba(20,20,26,0.66) }
.pa-dark .pa-lede{ color:rgba(255,255,255,0.72) }

/* ---------- Hero (copy left, visual right) ---------- */
.pa-hero{ padding:150px 0 90px; overflow:hidden }
.pa-hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:center }
.pa-hero h1{ font-size:clamp(38px,5.6vw,66px); margin-bottom:22px }
.pa-hero .pa-lede{ font-size:19px; margin-bottom:32px }
.pa-hero-ctas{ display:flex; align-items:center; gap:26px; flex-wrap:wrap; margin-bottom:28px }
.pa-btn-primary{
  font-family:'Unbounded',sans-serif; font-weight:700; font-size:14.5px;
  background:var(--pa-grad); color:#fff; padding:16px 28px; border-radius:100px;
  border:0; transition:transform .15s ease, box-shadow .15s ease;
  display:inline-block;
}
.pa-btn-primary:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(255,61,122,0.3) }
.pa-btn-secondary{ font-family:'Unbounded',sans-serif; font-weight:600; font-size:14.5px; border-bottom:2px solid var(--pa-ink); padding-bottom:2px }
.pa-avail{ font-family:'Manrope',sans-serif; font-size:13.5px; color:rgba(20,20,26,0.6); display:inline-flex; align-items:center; gap:8px; font-weight:600 }
.pa-avail-dot{ width:8px; height:8px; border-radius:50%; background:var(--pa-grad); display:inline-block; animation:pa-pulse 2.2s ease-in-out infinite }
@keyframes pa-pulse{ 0%,100%{ opacity:1; transform:scale(1) } 50%{ opacity:.5; transform:scale(1.3) } }
@media (prefers-reduced-motion: reduce){ .pa-avail-dot{ animation:none } }

.pa-hero-visual{ position:relative; aspect-ratio:1/1; border-radius:var(--pa-radius-l); overflow:hidden }
.pa-hero-blob{ position:absolute; inset:0; background:var(--pa-grad); border-radius:38% 62% 65% 35% / 45% 40% 60% 55%; animation:pa-morph 9s ease-in-out infinite }
@keyframes pa-morph{
  0%,100%{ border-radius:38% 62% 65% 35% / 45% 40% 60% 55%; transform:rotate(0deg) }
  50%{ border-radius:55% 45% 40% 60% / 60% 55% 45% 40%; transform:rotate(6deg) }
}
@media (prefers-reduced-motion: reduce){ .pa-hero-blob{ animation:none } }
.pa-hero-visual svg{ position:absolute; inset:0; width:100%; height:100% }
@media (max-width:900px){ .pa-hero-grid{ grid-template-columns:1fr } .pa-hero-visual{ order:-1; max-width:420px; margin:0 auto } }

/* ---------- Trust strip ---------- */
.pa-trust{ padding:40px 0; border-top:1px solid var(--pa-line); border-bottom:1px solid var(--pa-line) }
.pa-trust-label{ font-family:'Manrope',sans-serif; font-weight:700; font-size:12.5px; color:rgba(20,20,26,0.5); margin-bottom:20px }
.pa-trust-row{ display:flex; flex-wrap:wrap; gap:36px 52px; align-items:center }
.pa-trust-row span{ font-family:'Unbounded',sans-serif; font-weight:600; font-size:14.5px; color:rgba(20,20,26,0.5) }

/* ---------- Services (accordion) ---------- */
.pa-svc-accordion{ margin-top:52px; max-width:920px }
.pa-svc-item{ border-bottom:1px solid var(--pa-line) }
.pa-svc-item:first-child{ border-top:1px solid var(--pa-line) }
.pa-svc-q{ width:100%; display:flex; align-items:center; gap:20px; padding:26px 0; background:none; border:0; text-align:left }
.pa-svc-q i{ color:var(--pa-pink); font-size:20px; flex:none; width:28px }
.pa-svc-q h3{ font-size:19px; margin:0; flex:1 }
.pa-svc-q .pa-plus{ font-family:'Unbounded',sans-serif; font-size:22px; color:var(--pa-pink); transition:transform .2s ease }
.pa-svc-item[data-open="true"] .pa-plus{ transform:rotate(45deg) }
.pa-svc-a{ overflow:hidden; max-height:0; transition:max-height .25s ease }
.pa-svc-item[data-open="true"] .pa-svc-a{ max-height:200px }
.pa-svc-a p{ padding:0 0 26px 48px; font-size:15px }
noscript .pa-svc-a{ max-height:none !important }

/* ---------- Pricing (3 wide horizontal bands) ---------- */
.pa-pricing-bands{ margin-top:54px; display:flex; flex-direction:column; gap:18px }
.pa-price-band{ border:1px solid var(--pa-line-strong); border-radius:var(--pa-radius-l); padding:34px 38px; display:grid; grid-template-columns:1.3fr auto 2fr auto; gap:28px; align-items:center; background:var(--pa-white) }
.pa-price-band.pa-featured{ background:var(--pa-grad); border-color:transparent; color:#fff }
.pa-price-band.pa-featured h3, .pa-price-band.pa-featured p{ color:#fff }
.pa-price-band h3{ font-size:20px; margin-bottom:4px }
.pa-price-band p{ font-size:14px; margin:0 }
.pa-price-tag{ font-family:'Unbounded',sans-serif; font-size:34px; font-weight:800 }
.pa-price-tag span{ font-size:13px; font-weight:500; opacity:.75 }
.pa-price-feats{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:10px 20px }
.pa-price-feats li{ font-size:13.5px; padding-left:20px; position:relative }
.pa-price-feats li::before{ content:"✓"; position:absolute; left:0; font-weight:700 }
.pa-price-band .pa-btn-primary{ white-space:nowrap }
.pa-price-band.pa-featured .pa-btn-primary{ background:#fff; color:var(--pa-pink) }
@media (max-width:900px){ .pa-price-band{ grid-template-columns:1fr; text-align:left } }

/* ---------- Additional services (two-column menu) ---------- */
.pa-addl-menu{ margin-top:50px; column-count:2; column-gap:60px }
.pa-addl-row{ display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:16px 0; border-bottom:1px dashed var(--pa-line-strong); break-inside:avoid }
.pa-addl-row h4{ font-family:'Manrope',sans-serif; font-weight:700; font-size:15px; margin:0; flex:1 }
.pa-addl-row .pa-addl-price{ font-family:'Unbounded',sans-serif; font-weight:700; font-size:16px; color:var(--pa-pink); flex:none }
.pa-addl-order{ display:block; font-family:'Manrope',sans-serif; font-weight:700; font-size:12px; color:rgba(20,20,26,0.5); margin-top:2px }
.pa-addl-order:hover{ color:var(--pa-pink) }
@media (max-width:700px){ .pa-addl-menu{ column-count:1 } }

/* ---------- Process (wide scrollable card strip) ---------- */
.pa-process-scroll{ margin-top:54px; display:flex; gap:22px; overflow-x:auto; padding-bottom:16px; scroll-snap-type:x proximity }
.pa-process-scroll::-webkit-scrollbar{ height:6px }
.pa-process-scroll::-webkit-scrollbar-thumb{ background:var(--pa-line-strong); border-radius:10px }
.pa-process-card{ flex:0 0 320px; scroll-snap-align:start; border:1px solid var(--pa-line-strong); border-radius:var(--pa-radius-l); padding:30px; background:var(--pa-white) }
.pa-process-num{ font-family:'Unbounded',sans-serif; font-size:32px; font-weight:800; background:var(--pa-grad); -webkit-background-clip:text; background-clip:text; color:transparent; margin-bottom:14px }
.pa-process-card h3{ font-size:18px; margin-bottom:8px }
.pa-process-card p{ font-size:14.5px }
.pa-process-time{ font-family:'Manrope',sans-serif; font-weight:700; font-size:12px; color:rgba(20,20,26,0.5); display:block; margin-top:12px }

/* ---------- Guarantee (full-bleed centered) ---------- */
.pa-guarantee{ text-align:center; max-width:760px; margin:0 auto }
.pa-guarantee svg{ margin:0 auto 20px }
.pa-guarantee h2{ font-size:clamp(24px,3.2vw,34px) }

/* ---------- Comparison (3-column table-like strip) ---------- */
.pa-compare-table{ margin-top:52px; border:1px solid var(--pa-line-strong); border-radius:var(--pa-radius-l); overflow:hidden }
.pa-compare-row{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; border-bottom:1px solid var(--pa-line) }
.pa-compare-row:last-child{ border-bottom:0 }
.pa-compare-row > div{ padding:18px 20px; font-size:14.5px; display:flex; align-items:center }
.pa-compare-row.pa-compare-head > div{ font-family:'Unbounded',sans-serif; font-weight:700; font-size:12.5px; background:var(--pa-paper) }
.pa-compare-row > div:first-child{ color:rgba(20,20,26,0.6) }
.pa-compare-row > div:nth-child(2){ color:var(--pa-pink); font-weight:700 }
@media (max-width:800px){
  .pa-compare-row{ grid-template-columns:1.2fr 1fr 1fr 1fr; font-size:13px }
  .pa-compare-row > div{ padding:14px 10px }
}

/* ---------- FAQ (two-column accordion) ---------- */
.pa-faq-grid{ margin-top:50px; display:grid; grid-template-columns:1fr 1fr; gap:0 48px }
.pa-faq-item{ border-bottom:1px solid var(--pa-line); padding:22px 0 }
.pa-faq-q{ width:100%; display:flex; justify-content:space-between; align-items:center; gap:16px; background:none; border:0; text-align:left; font-family:'Unbounded',sans-serif; font-weight:600; font-size:15.5px; color:var(--pa-ink) }
.pa-faq-q .pa-plus{ font-size:20px; flex:none; color:var(--pa-pink); transition:transform .2s ease }
.pa-faq-item[data-open="true"] .pa-plus{ transform:rotate(45deg) }
.pa-faq-a{ overflow:hidden; max-height:0; transition:max-height .25s ease }
.pa-faq-item[data-open="true"] .pa-faq-a{ max-height:400px }
.pa-faq-a p{ padding-top:14px; font-size:15px }
noscript .pa-faq-a{ max-height:none !important }
@media (max-width:800px){ .pa-faq-grid{ grid-template-columns:1fr } }

/* ---------- About (visual behind, prose overlaid) ---------- */
.pa-about-wrap{ position:relative; border-radius:var(--pa-radius-l); overflow:hidden; padding:70px 50px }
.pa-about-blob{ position:absolute; inset:0; background:var(--pa-grad); opacity:.94; z-index:0 }
.pa-about-content{ position:relative; z-index:1; max-width:820px }
.pa-about-content p{ color:rgba(255,255,255,0.92); font-size:16.5px }
.pa-about-content h2{ color:#fff }
.pa-stats-row{ margin-top:60px; display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; z-index:1 }
.pa-stat b{ display:block; font-family:'Unbounded',sans-serif; font-size:clamp(28px,3.6vw,40px); color:#fff }
.pa-stat span{ font-size:13px; color:rgba(255,255,255,0.85) }
.pa-team{ margin-top:56px; display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:22px; position:relative; z-index:1 }
.pa-team-card{ border:1px solid rgba(255,255,255,0.3); border-radius:var(--pa-radius); padding:22px; background:rgba(255,255,255,0.12); backdrop-filter:blur(6px) }
.pa-avatar{ width:46px; height:46px; border-radius:50%; background:#fff; color:var(--pa-pink); display:flex; align-items:center; justify-content:center; font-family:'Unbounded',sans-serif; font-weight:700; margin-bottom:12px; font-size:13px }
.pa-team-card h4{ font-size:15px; margin-bottom:2px; color:#fff }
.pa-team-role{ font-family:'Manrope',sans-serif; font-weight:700; font-size:11.5px; color:rgba(255,255,255,0.85); margin-bottom:10px; display:block }
.pa-team-card p{ color:rgba(255,255,255,0.88); font-size:13.5px }
@media (max-width:700px){ .pa-stats-row{ grid-template-columns:1fr 1fr } .pa-about-wrap{ padding:44px 26px } }

/* ---------- Reviews (alternating full-width bands) ---------- */
.pa-reviews-bands{ margin-top:50px; display:flex; flex-direction:column }
.pa-review-band{ display:grid; grid-template-columns:auto 1fr; gap:28px; align-items:center; padding:32px 0; border-bottom:1px solid var(--pa-line) }
.pa-review-band:nth-child(even){ grid-template-columns:1fr auto }
.pa-review-band:nth-child(even) .pa-review-quote{ order:1 }
.pa-review-band:nth-child(even) .pa-avatar{ order:2 }
.pa-review-quote p{ font-size:18px; font-family:'Unbounded',sans-serif; font-weight:500; line-height:1.4; color:var(--pa-ink); max-width:none }
.pa-review-who{ font-family:'Manrope',sans-serif; font-size:13.5px; font-weight:700; color:rgba(20,20,26,0.55); margin-top:10px }
.pa-review-band .pa-avatar{ width:60px; height:60px; font-size:16px }
@media (max-width:700px){
  .pa-review-band, .pa-review-band:nth-child(even){ grid-template-columns:1fr; text-align:left }
}

/* ---------- Footer ---------- */
.pa-footer{ background:var(--pa-ink); color:var(--pa-white); padding:76px 0 28px }
.pa-footer p{ color:rgba(255,255,255,0.7) }
.pa-footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:52px }
.pa-footer h5{ font-family:'Unbounded',sans-serif; font-size:12.5px; margin-bottom:16px; color:rgba(255,255,255,0.55) }
.pa-footer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px }
.pa-footer a{ font-size:14.5px; color:rgba(255,255,255,0.85) }
.pa-footer a:hover{ color:var(--pa-amber) }
.pa-footer-brand{ font-family:'Unbounded',sans-serif; font-weight:700; font-size:18px; display:flex; align-items:center; gap:10px; margin-bottom:14px; color:#fff }
.pa-footer-bottom{ border-top:1px solid rgba(255,255,255,0.15); padding-top:24px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px; font-size:12.5px; color:rgba(255,255,255,0.55) }
.pa-footer-bottom ul{ flex-direction:row; gap:20px; flex-wrap:wrap }
@media (max-width:800px){ .pa-footer-grid{ grid-template-columns:1fr 1fr; gap:32px } }

/* ---------- Cookie banner ---------- */
.pa-cookie{
  position:fixed; left:20px; right:20px; bottom:-220px; max-width:600px; margin:0 auto;
  background:var(--pa-ink); color:var(--pa-white); border-radius:var(--pa-radius-l); padding:24px 26px;
  box-shadow:0 20px 60px rgba(0,0,0,0.3); z-index:1500; transition:bottom .4s ease;
}
.pa-cookie.pa-show{ bottom:24px }
.pa-cookie p{ font-size:14px; margin-bottom:16px; color:rgba(255,255,255,0.78) }
.pa-cookie-btns{ display:flex; gap:12px; flex-wrap:wrap }
.pa-cookie-btns button{ font-family:'Unbounded',sans-serif; font-weight:700; font-size:12.5px; padding:11px 18px; border-radius:100px; border:1px solid rgba(255,255,255,0.3) }
.pa-cookie-accept{ background:var(--pa-grad); border-color:transparent; color:#fff }
.pa-cookie-decline{ background:transparent; color:var(--pa-white) }
.pa-cookie a{ text-decoration:underline; color:var(--pa-amber) }
@media (prefers-reduced-motion: reduce){ .pa-cookie{ transition:none } }

/* ---------- Sticky CTA ---------- */
.pa-sticky-cta{
  position:fixed; right:22px; bottom:-80px; z-index:800;
  background:var(--pa-grad); color:#fff; font-family:'Unbounded',sans-serif; font-weight:700; font-size:13.5px;
  padding:15px 26px; border-radius:100px; box-shadow:0 10px 30px rgba(255,61,122,0.35); transition:bottom .3s ease, opacity .3s ease;
}
.pa-sticky-cta.pa-show{ bottom:22px }
.pa-sticky-cta.pa-hide-footer{ opacity:0; pointer-events:none }
@media (max-width:600px){ .pa-sticky-cta{ right:14px; padding:13px 20px; font-size:12.5px } }
@media (prefers-reduced-motion: reduce){ .pa-sticky-cta{ transition:none } }

/* ---------- Page hero (sub pages) ---------- */
.pa-page-hero{ padding:158px 0 64px }
.pa-page-hero h1{ font-size:clamp(32px,4.4vw,50px); max-width:20ch; margin-bottom:16px }

/* ---------- Contact page ---------- */
.pa-contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:start }
.pa-contact-cards{ display:grid; grid-template-columns:1fr 1fr; gap:18px }
.pa-contact-card{ background:var(--pa-paper); border:1px solid var(--pa-line-strong); border-radius:var(--pa-radius-l); padding:24px }
.pa-contact-card i{ color:var(--pa-pink); font-size:19px; margin-bottom:12px; display:block }
.pa-contact-card h4{ font-size:14px; margin-bottom:6px; font-family:'Unbounded',sans-serif }
.pa-contact-card p{ font-size:14.5px }
.pa-side-panel{ background:var(--pa-grad); color:#fff; border-radius:var(--pa-radius-l); padding:36px }
.pa-side-panel p{ color:rgba(255,255,255,0.92) }
.pa-side-panel h3{ color:#fff }
.pa-side-cta{ display:inline-flex; align-items:center; gap:10px; margin-top:8px; margin-right:14px; background:#fff; color:var(--pa-pink) }
.pa-map-wrap{ margin-top:42px; border-radius:var(--pa-radius-l); overflow:hidden; border:1px solid var(--pa-line-strong); height:390px }
.pa-map-wrap iframe{ width:100%; height:100%; border:0; display:block }
@media (max-width:900px){ .pa-contact-grid{ grid-template-columns:1fr } .pa-contact-cards{ grid-template-columns:1fr } }

/* ---------- Legal page ---------- */
.pa-legal-subnav{ position:sticky; top:80px; z-index:80; background:var(--pa-white); border-bottom:1px solid var(--pa-line); padding:16px 0; margin-bottom:20px }
.pa-legal-subnav ul{ list-style:none; margin:0; padding:0; display:flex; gap:26px; flex-wrap:wrap }
.pa-legal-subnav a{ font-family:'Unbounded',sans-serif; font-size:12.5px; font-weight:600; color:rgba(20,20,26,0.62) }
.pa-legal-subnav a:hover{ color:var(--pa-pink) }
.pa-legal-doc{ padding:52px 0; border-bottom:1px solid var(--pa-line); scroll-margin-top:150px }
.pa-legal-doc:last-child{ border-bottom:0 }
.pa-legal-doc h2{ font-size:24px }
.pa-legal-doc h3{ font-size:16px; margin-top:30px; color:var(--pa-pink) }
.pa-legal-updated{ font-family:'Manrope',sans-serif; font-weight:700; font-size:12px; color:rgba(20,20,26,0.5); margin-bottom:24px; display:block }
.pa-legal-doc ul{ padding-left:22px }
.pa-legal-doc li{ margin-bottom:8px }
