/* Pearling Global Services design system — tokens + components.
   Generated from the design system's tokens.json and bundle.css. Do not edit by hand. */

:root, [data-theme="light"] {
  --surface: #ffffff;
  --surface-alt: #f5f6f8;
  --surface-raised: #ffffff;
  --surface-sunken: #e9edf2;
  --text: var(--ink);
  --text-secondary: rgba(10,20,36,0.78);
  --text-muted: rgba(10,20,36,0.62);
  --text-placeholder: rgba(10,20,36,0.45);
  --heading: var(--slate);
  --link: var(--blue-deep);
  --border: rgba(10,20,36,0.1);
  --border-control: #dddddd;
  --divider: rgba(10,20,36,0.08);
  --accent-tint: rgba(0,122,255,0.1);
  --focus-ring: var(--blue);
  --blue: #007aff;
  --blue-hover: #0068da;
  --blue-deep: #0166a8;
  --blue-light: #8ec8ff;
  --blue-legacy: #0179c3;
  --ink: #0a1424;
  --ink-deep: #081020;
  --ink-raised: #101c30;
  --ink-hover: #132b45;
  --slate: #415d7d;
  --slate-body: #394e66;
  --green: #25d366;
  --green-hover: #1eb556;
  --green-deep: #1f7a4d;
  --green-deep-hover: #186139;
  --green-tint: #f2faf5;
  --amber: #f5a524;
  --error-on-dark: #ff9c9c;
  --on-fill: #ffffff;
  --shadow-rest: 0 2px 10px rgba(10,20,36,0.05);
  --shadow-lift-sm: 0 10px 26px rgba(10,20,36,0.08);
  --shadow-lift: 0 18px 40px rgba(10,20,36,0.1);
  --shadow-cta: 0 22px 50px rgba(10,20,36,0.16);
  --shadow-panel: 0 24px 60px rgba(0,0,0,0.45);
  --shadow-float: 0 10px 24px rgba(10,20,36,0.32);
  --shadow-whatsapp: 0 12px 30px rgba(37,211,102,0.42);
}
[data-theme="dark"] {
  --surface: var(--ink);
  --surface-alt: var(--ink-deep);
  --surface-raised: var(--ink-raised);
  --surface-sunken: rgba(255,255,255,0.05);
  --text: #ffffff;
  --text-secondary: rgba(255,255,255,0.82);
  --text-muted: rgba(255,255,255,0.6);
  --text-placeholder: rgba(255,255,255,0.5);
  --heading: #ffffff;
  --link: var(--blue-light);
  --border: rgba(255,255,255,0.14);
  --border-control: rgba(255,255,255,0.18);
  --divider: rgba(255,255,255,0.12);
  --accent-tint: rgba(0,122,255,0.16);
}
:root {
  --space-7: 7px;
  --space-9: 9px;
  --space-12: 12px;
  --space-14: 14px;
  --space-16: 16px;
  --space-18: 18px;
  --space-22: 22px;
  --space-24: 24px;
  --space-28: 28px;
  --space-32: 32px;
  --space-40: 40px;
  --space-56: 56px;
  --space-64: 64px;
  --radius-3: 3px;
  --radius-6: 6px;
  --radius-8: 8px;
  --radius-9: 9px;
  --radius-10: 10px;
  --radius-11: 11px;
  --radius-12: 12px;
  --radius-14: 14px;
  --radius-16: 16px;
  --radius-20: 20px;
  --radius-pill: 100px;
  --radius-round: 50%;
  --container-max: 1320px;
  --gutter-min: 15px;
  --anchor-offset: 96px;
  --font-display: Fraunces, Georgia, "Times New Roman", serif;
  --font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;
}

/* Pearling Global Services — component styles, ported from the live theme's
   home-new.css. Colours, radii, spacing and shadows come from tokens.css;
   values the tokens cannot express (gradients, one-off alphas) stay literal
   exactly as the site writes them. Wrap a dark band in data-theme="dark". */

.pgs{font-family:var(--font-sans);color:var(--text);-webkit-font-smoothing:antialiased}
.pgs *{box-sizing:border-box}
.pgs h1,.pgs h2,.pgs h3,.pgs h4,.pgs p{margin:0}
/* :where() keeps the link reset at zero specificity so a component's own
   colour class wins, as in the source theme. */
:where(.pgs) a{color:inherit;text-decoration:none}
.pgs button,.pgs input,.pgs select,.pgs textarea{font-family:inherit}
.pgs :focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
.pgs svg{display:block;flex:none}
[data-theme="dark"].pgs,[data-theme="dark"] .pgs-band{background:var(--surface);color:var(--text)}

@keyframes pgsPulse{0%{box-shadow:0 0 0 0 rgba(0,122,255,.55)}70%{box-shadow:0 0 0 12px rgba(0,122,255,0)}100%{box-shadow:0 0 0 0 rgba(0,122,255,0)}}
@keyframes pgsFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media (prefers-reduced-motion:reduce){.pgs *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Section header ------------------------------------------------------- */
.pgs-eyebrow{font:600 11px/1.4 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--link)}
.pgs-h2{margin:12px 0 18px;font:600 clamp(26px,4vw,38px)/1.1 var(--font-display);letter-spacing:-.02em;color:var(--heading);text-wrap:balance}
.pgs-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--space-24);margin-bottom:var(--space-32)}
.pgs-head p{max-width:340px;font-size:16.5px;line-height:1.6;color:var(--text-secondary)}
.pgs-head--center{display:block;text-align:center}
.pgs-head--center .pgs-h2{margin:12px 0 0}
.pgs-head--center p{max-width:none;margin:22px 0 0;font-size:16px;line-height:1.65;color:rgba(10,20,36,.72)}

/* Badge ---------------------------------------------------------------- */
.pgs-badge{display:inline-flex;align-items:center;gap:var(--space-9);padding:6px 13px 6px 9px;border:1px solid rgba(0,122,255,.35);background:rgba(0,122,255,.09);border-radius:var(--radius-pill);font:600 11.5px var(--font-sans);color:var(--blue-light)}
.pgs-badge__dot{width:6px;height:6px;border-radius:var(--radius-round);background:var(--blue);animation:pgsPulse 2s infinite}

/* Pills (destination picker) ------------------------------------------- */
.pgs-pills-label{font:600 11px var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.59);margin-bottom:15px}
.pgs-pills{display:flex;flex-wrap:wrap;gap:var(--space-7)}
.pgs-pill{display:flex;align-items:center;gap:var(--space-7);padding:7px 14px 7px 11px;border-radius:var(--radius-pill);cursor:pointer;font:500 12.5px var(--font-sans);white-space:nowrap;background:rgba(255,255,255,.04);color:var(--text-secondary);border:1px solid var(--border-control);transition:background .2s ease,color .2s ease,border-color .2s ease}
.pgs-pill svg{opacity:.85}
.pgs-pill[aria-pressed="true"]{background:var(--blue);color:var(--on-fill);border-color:var(--blue)}

/* Hero ----------------------------------------------------------------- */
.pgs-hero{position:relative;background:var(--surface);background-image:radial-gradient(1000px 460px at 78% -10%,var(--accent-tint),transparent 60%),linear-gradient(var(--surface),var(--surface-alt));padding:58px 40px 46px;color:var(--text);overflow:hidden}
.pgs-hero__grid-bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px}
.pgs-hero__inner{position:relative;max-width:640px}
.pgs-hero h1{margin:18px 0 20px;font:600 clamp(31px,5.2vw,46px)/1.08 var(--font-sans);letter-spacing:-.015em;color:var(--text);text-wrap:balance}
.pgs-hero h1 em{font-style:italic;color:var(--blue)}
.pgs-hero__lede{margin:22px 0 0;max-width:560px;font-size:17.5px;line-height:1.6;color:var(--text-secondary);text-wrap:pretty}

/* Hero stats ----------------------------------------------------------- */
.pgs-hero__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px 0;margin-top:26px;padding-top:22px;border-top:1px solid var(--divider)}
.pgs-hstat{display:flex;align-items:flex-start;gap:var(--space-12);padding-left:22px;border-left:1px solid var(--border)}
.pgs-hstat:first-child{padding-left:0;border-left-color:transparent}
.pgs-hstat__icon{width:34px;height:34px;border-radius:var(--radius-9);background:var(--accent-tint);color:var(--blue-light);display:flex;align-items:center;justify-content:center}
.pgs-hstat__icon svg{width:17px;height:17px}
.pgs-hstat__v{font:500 24px/1.1 var(--font-sans);white-space:nowrap}
.pgs-hstat__l{font-size:11.5px;color:rgba(255,255,255,.69);margin-top:3px;line-height:1.35}

/* Quote form ----------------------------------------------------------- */
.pgs-quote{background:var(--surface-raised);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-16);padding:var(--space-28);box-shadow:var(--shadow-panel);color:var(--text)}
.pgs-quote__t{font:600 clamp(24px,3.4vw,30px)/1.15 var(--font-display);letter-spacing:-.015em}
.pgs-quote__s{font-size:13px;color:var(--text-muted);margin-top:6px}
.pgs-quote form{display:flex;flex-direction:column;gap:11px;margin-top:20px}
.pgs-quote__row{display:flex;gap:var(--space-9)}
.pgs-quote__row>*{flex:1;min-width:0}
.pgs-input{width:100%;padding:13px 14px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-9);font-size:15.5px;line-height:1.35;color:var(--text);outline:none;transition:border-color .2s,background .2s}
.pgs-input::placeholder{color:var(--text-placeholder);opacity:1}
.pgs-input:focus{border-color:var(--blue);background:rgba(255,255,255,.08)}
select.pgs-input{appearance:none;-webkit-appearance:none;padding-right:42px;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
select.pgs-input option{color:var(--ink);background:#fff}
.pgs-input--error{border-color:rgba(255,120,120,.65);background:rgba(255,90,90,.08)}
.pgs-field-error{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--error-on-dark)}
.pgs-form-success{padding:14px 16px;border-radius:var(--radius-9);background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.4);color:#d6ffe6;font-size:14.5px;line-height:1.5}
.pgs-quote__note{font-size:11px;color:rgba(255,255,255,.58);text-align:center;line-height:1.4}

/* Buttons -------------------------------------------------------------- */
.pgs-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-9);padding:14px 22px;border:0;border-radius:var(--radius-8);font:600 14px/1.2 var(--font-sans);letter-spacing:.02em;white-space:nowrap;cursor:pointer;transition:background .2s}
.pgs-btn--blue{background:var(--blue);color:var(--on-fill)}
.pgs-btn--blue:hover{background:var(--blue-hover)}
.pgs-btn--green{background:var(--green);color:var(--on-fill)}
.pgs-btn--green:hover{background:var(--green-hover)}
.pgs-btn--success{padding:11px 18px;border-radius:var(--radius-6);font-size:13px;letter-spacing:0;background:var(--green-deep);color:var(--on-fill)}
.pgs-btn--success:hover{background:var(--green-deep-hover)}
.pgs-btn--submit{width:100%;padding:15px 20px;border-radius:var(--radius-9);font-size:16px;font-weight:500;letter-spacing:0;background:var(--blue);color:var(--on-fill)}
.pgs-btn--submit:hover{background:var(--blue-hover)}
.pgs-btn--submit:active{transform:translateY(1px)}
.pgs-btn--wa{width:100%;padding:14px;border-radius:var(--radius-9);border:1.5px solid rgba(37,211,102,.4);background:transparent;color:var(--green);font-size:15.5px;font-weight:500;letter-spacing:0}
.pgs-btn--wa:hover{background:rgba(37,211,102,.1);border-color:var(--green)}
.pgs-more{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--link)}
.pgs-all{display:inline-flex;align-items:center;gap:7px;font-size:15.5px;font-weight:500;color:var(--link);white-space:nowrap}

/* Rating & score ------------------------------------------------------- */
.pgs-rating{display:flex;align-items:center;gap:13px;padding:14px 18px;background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:var(--radius-12);color:var(--text)}
.pgs-rating__n{font:500 30px/1 var(--font-sans);color:var(--amber)}
.pgs-stars{color:var(--amber);letter-spacing:2px;font-size:15px}
.pgs-rating__l{font-size:12px;color:rgba(255,255,255,.74)}
.pgs-score{display:inline-flex;align-items:center;gap:var(--space-12);padding:14px 20px;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-12)}
.pgs-score__n{font:500 30px var(--font-sans);color:var(--link)}
.pgs-score__l{font-size:12px;line-height:1.35;color:var(--text-secondary)}

/* Quick-answer card ---------------------------------------------------- */
.pgs-qa__lead{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:18px;background:var(--surface-alt);border-radius:var(--radius-10);font-size:17px;font-weight:600;line-height:1.25}
.pgs-qa__card{display:flex;flex-direction:column;padding:20px;background:var(--surface-raised);border:1px solid var(--border-control);border-radius:var(--radius-10);transition:border-color .2s,box-shadow .2s}
.pgs-qa__card:hover{border-color:var(--blue);box-shadow:var(--shadow-lift-sm)}
.pgs-qa__card h3{margin:0 0 9px;font-size:16px;font-weight:600}
.pgs-qa__card p{font-size:13.5px;line-height:1.6;color:rgba(10,20,36,.72)}

/* Service card --------------------------------------------------------- */
.pgs-svc{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-16);padding:var(--space-24);display:flex;flex-direction:column;gap:var(--space-12);transition:transform .25s ease,box-shadow .25s ease}
.pgs-svc:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}
.pgs-svc__icon{width:46px;height:46px;border-radius:var(--radius-11);background:var(--blue);color:var(--on-fill);display:flex;align-items:center;justify-content:center}
.pgs-svc h3{font:500 18px/1.3 var(--font-sans);letter-spacing:-.01em}
.pgs-svc p{font-size:14px;line-height:1.55;color:rgba(10,20,36,.72)}
.pgs-svc .pgs-more{margin-top:auto;padding-top:8px}

/* Document group ------------------------------------------------------- */
.pgs-dgroup{background:var(--surface-raised);border:1px solid var(--border-control);border-radius:var(--radius-10);padding:var(--space-22)}
.pgs-dgroup__h{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.pgs-dgroup__h span{color:var(--link);display:flex}
.pgs-dgroup__h h3{font:600 17px var(--font-sans)}
.pgs-dlist{display:flex;flex-direction:column;gap:var(--space-9)}
.pgs-dlist div{display:flex;align-items:center;gap:var(--space-9);font-size:14px;color:rgba(10,20,36,.82)}
.pgs-dlist svg{color:var(--link)}
.pgs-dgroup .pgs-more{margin-top:16px;font-size:13.5px}

/* Flag tile ------------------------------------------------------------ */
.pgs-flags{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-12)}
.pgs-flag{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 10px;background:var(--surface-alt);border:1px solid rgba(10,20,36,.07);border-radius:var(--radius-12);transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.pgs-flag:hover{background:var(--surface-raised);border-color:var(--blue);transform:translateY(-2px);box-shadow:var(--shadow-lift-sm)}
.pgs-flag img,.pgs-flag__img{width:36px;height:26px;object-fit:cover;border-radius:var(--radius-3);box-shadow:0 0 0 1px rgba(10,20,36,.1)}
.pgs-flag span{font-size:14px;font-weight:500}
.pgs-flag--all{justify-content:center;background:var(--ink);border-color:transparent;color:var(--on-fill)}
.pgs-flag--all:hover{background:var(--ink-hover)}
.pgs-flag--all span{font-size:12.5px;text-align:center;line-height:1.3}
.pgs-flag--plain{cursor:default}
.pgs-flag--plain:hover{background:var(--surface-alt);border-color:rgba(10,20,36,.07);transform:none;box-shadow:none}

/* Process steps -------------------------------------------------------- */
.pgs-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.pgs-pstep{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-12);padding:0 20px;min-width:0}
.pgs-pstep__icon{width:52px;height:52px;border-radius:var(--radius-round);background:var(--accent-tint);color:var(--blue);display:flex;align-items:center;justify-content:center}
.pgs-pstep__n{font-size:13px;font-weight:600;color:var(--blue)}
.pgs-pstep__t{font-size:15px;font-weight:600;color:var(--text)}
.pgs-pstep__s{font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.68)}
.pgs-pstep__arrow{position:absolute;top:26px;left:100%;transform:translate(-50%,-50%);z-index:2;color:rgba(255,255,255,.35);background:var(--surface);padding:0 6px}

/* Trust stat ----------------------------------------------------------- */
.pgs-tstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-16)}
.pgs-tstat{background:var(--surface-raised);border-radius:var(--radius-14);padding:28px 20px;text-align:center;box-shadow:var(--shadow-rest)}
.pgs-tstat__v{font:600 40px/1 var(--font-sans);color:var(--link)}
.pgs-tstat__l{margin-top:12px;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(10,20,36,.68)}

/* Country table -------------------------------------------------------- */
.pgs-table{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-14);overflow:hidden}
.pgs-thead,.pgs-trow{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.6fr;gap:4px 14px}
.pgs-thead{padding:14px 22px;background:var(--ink);color:rgba(255,255,255,.82);font:600 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase}
.pgs-trow{padding:16px 22px;border-top:1px solid var(--divider);font-size:16px;align-items:center}
.pgs-trow__name{font-weight:500}
.pgs-trow__route{color:var(--text-secondary)}
.pgs-trow__days{font-weight:500;color:var(--link)}
.pgs-trow__note{color:var(--text-secondary);font-size:15px}

/* FAQ ------------------------------------------------------------------ */
.pgs-faq__list{display:flex;flex-direction:column;gap:10px}
.pgs-faq__item{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-12);overflow:hidden}
.pgs-faq__q{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:18px 22px;cursor:pointer;font-weight:500;font-size:17px;background:none;border:0;text-align:left;color:inherit}
.pgs-faq__sign{flex:none;font-size:20px;color:var(--link);transition:transform .25s ease}
.pgs-faq__q[aria-expanded="true"] .pgs-faq__sign{transform:rotate(45deg)}
.pgs-faq__a{overflow:hidden;font-size:16px;line-height:1.6;color:rgba(10,20,36,.82);padding:0 22px;max-height:0;opacity:0;transition:max-height .3s ease,opacity .3s ease,padding .3s ease}
.pgs-faq__item.is-open .pgs-faq__a{padding:0 22px 20px;max-height:420px;opacity:1}

/* Note card ------------------------------------------------------------ */
.pgs-note{background:var(--surface-raised);border-radius:var(--radius-12);padding:22px 24px}
.pgs-note__h{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.pgs-note__h span{width:34px;height:34px;border-radius:var(--radius-9);background:var(--accent-tint);color:var(--link);display:flex;align-items:center;justify-content:center}
.pgs-note__h h3{font:600 16px var(--font-sans)}
.pgs-note p{font-size:14.5px;line-height:1.65;color:var(--text-secondary)}

/* Review card ---------------------------------------------------------- */
.pgs-review{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-16);padding:26px;display:flex;flex-direction:column;gap:var(--space-16)}
.pgs-review p{font:500 19px/1.45 var(--font-sans)}
.pgs-review__by{margin-top:auto;display:flex;align-items:center;gap:11px;padding-top:8px;border-top:1px solid var(--divider)}
.pgs-avatar{width:36px;height:36px;border-radius:var(--radius-round);background:var(--blue);color:var(--on-fill);display:flex;align-items:center;justify-content:center;font:500 14px var(--font-sans)}
.pgs-review__n{font-weight:500;font-size:15.5px}
.pgs-review__m{font-size:11.5px;color:var(--text-muted)}

/* Post card ------------------------------------------------------------ */
.pgs-post{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-14);overflow:hidden}
.pgs-post__img{height:150px;background-size:cover;background-position:center;background-color:var(--surface-sunken)}
.pgs-post__img--ph{background-image:repeating-linear-gradient(135deg,rgba(10,20,36,.05) 0 10px,transparent 10px 20px)}
.pgs-post__b{padding:20px}
.pgs-post__cat{font:600 10.5px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--link)}
.pgs-post h3{margin:9px 0 8px;font:500 16.5px/1.35 var(--font-sans)}
.pgs-post p{font-size:15px;line-height:1.55;color:var(--text-secondary)}

/* Contact card (final CTA) --------------------------------------------- */
.pgs-final{position:relative;isolation:isolate;padding:56px 48px 52px;border-radius:var(--radius-20);overflow:hidden;color:var(--on-fill);box-shadow:var(--shadow-cta);background:#1b2740;background-image:radial-gradient(760px 320px at 88% -20%,rgba(0,122,255,.28),transparent 62%)}
.pgs-final__head{text-align:center}
.pgs-final .pgs-eyebrow{color:var(--blue)}
.pgs-final h2{margin:14px 0 0;font:600 clamp(26px,4vw,38px)/1.1 var(--font-sans);letter-spacing:-.02em;text-wrap:balance}
.pgs-final__p{margin:12px 0 0;font-size:17px;line-height:1.6;color:rgba(255,255,255,.8)}
.pgs-final__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-14);margin-top:32px}
.pgs-ccard{display:flex;gap:15px;padding:20px 22px;border-radius:var(--radius-12);color:var(--on-fill);transition:transform .2s}
.pgs-ccard:hover{transform:translateY(-3px)}
.pgs-ccard--blue{background:var(--blue)}
.pgs-ccard--green{background:var(--green)}
.pgs-ccard--ghost{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18)}
.pgs-ccard--ghost:hover{border-color:var(--blue)}
.pgs-ccard__ico{width:42px;height:42px;border-radius:var(--radius-11);background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center}
.pgs-ccard--ghost .pgs-ccard__ico{background:rgba(255,255,255,.1)}
.pgs-ccard__b{display:flex;flex-direction:column;gap:4px;min-width:0}
.pgs-ccard__k{font:600 10.5px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.pgs-ccard__v{font:500 19px var(--font-sans)}
.pgs-ccard__s{font-size:12.5px;color:rgba(255,255,255,.8)}

/* Finder (radio + recommendation) -------------------------------------- */
.pgs-step-h{display:flex;align-items:center;gap:var(--space-9);margin-bottom:12px}
.pgs-step-n{width:20px;height:20px;border-radius:var(--radius-round);background:var(--ink);color:var(--on-fill);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center}
.pgs-step-t{font-size:14px;font-weight:600}
.pgs-radios{display:flex;flex-direction:column;gap:var(--space-9)}
.pgs-radio{display:flex;align-items:center;gap:var(--space-9);font-size:13.5px;cursor:pointer;color:var(--text-secondary);background:none;border:0;padding:0;text-align:left}
.pgs-radio__ring{flex:none;width:14px;height:14px;border-radius:var(--radius-round);border:1.5px solid var(--border-control);display:flex;align-items:center;justify-content:center}
.pgs-radio__ring i{width:7px;height:7px;border-radius:var(--radius-round);background:transparent;display:block}
.pgs-radio[aria-pressed="true"]{color:var(--text)}
.pgs-radio[aria-pressed="true"] .pgs-radio__ring{border-color:var(--blue)}
.pgs-radio[aria-pressed="true"] .pgs-radio__ring i{background:var(--blue)}
.pgs-finder__cta{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:22px 18px;background:var(--green-tint);border:1px solid rgba(31,122,77,.25);border-radius:var(--radius-8)}
.pgs-finder__tick{width:44px;height:44px;border-radius:var(--radius-round);border:2px solid var(--green-deep);color:var(--green-deep);display:flex;align-items:center;justify-content:center}
.pgs-finder__cta h3{font-size:14.5px;font-weight:600;line-height:1.4;color:var(--ink)}
.pgs-finder__cta p{font-size:12.5px;line-height:1.55;color:rgba(10,20,36,.7)}

/* Floating contact ----------------------------------------------------- */
.pgs-top{width:46px;height:46px;border-radius:var(--radius-round);background:var(--ink);color:var(--on-fill);display:flex;align-items:center;justify-content:center;font-size:19px;cursor:pointer;box-shadow:var(--shadow-float);border:1px solid rgba(255,255,255,.14)}
.pgs-float__wa{display:inline-flex;align-items:center;gap:10px;padding:12px 20px 12px 13px;border-radius:var(--radius-pill);background:var(--green);color:var(--on-fill);font:500 14px var(--font-sans);box-shadow:var(--shadow-whatsapp);animation:pgsFloat 3.4s ease-in-out infinite;white-space:nowrap}
.pgs-float__wa span{width:32px;height:32px;border-radius:var(--radius-round);background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center}
.pgs-bar{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);box-shadow:0 -6px 20px rgba(10,20,36,.25)}
.pgs-bar a{display:flex;align-items:center;justify-content:center;gap:var(--space-9);padding:14px 10px;color:var(--on-fill);font:600 14px var(--font-sans)}
.pgs-bar a:first-child{border-right:1px solid rgba(255,255,255,.14)}
.pgs-bar__wa{background:var(--green)}
