/*
Theme Name: PotenciAI (Kadence child)
Template: kadence
Version: 0.1.0
Description: Tema fill de Kadence per a la web de PotenciAI. Colors de marca a l'opció kadence_global_palette; aquí només ajustos de CSS.
Text Domain: kadence-child
*/

/* Ancoratges: que la capçalera fixa no tapi el títol de secció */
[id] { scroll-margin-top: 110px; }
html { scroll-behavior: smooth; }

/* Marcadors PENDENT visibles fins que s'omplin */
.pendent { display:inline-block; background:#FFF3CD; color:#7A4E00; border:1px dashed #B8860B; border-radius:4px; padding:.05em .4em; font-weight:600; }

/* Blocs de contingut */
.pai-section { padding: 4rem 1.5rem; padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
@media (max-width: 719px) { .pai-section { padding: 2.75rem 1.25rem; padding-left: 1.25rem !important; padding-right: 1.25rem !important; } .pai-lead { font-size: 1.05em; } }
.pai-section--tint { background: var(--global-palette7); }
.pai-section--dark, .pai-hero { background: var(--global-palette1); color: #fff; }
.pai-section--dark h1, .pai-section--dark h2, .pai-section--dark h3, .pai-section--dark p, .pai-section--dark li,
.pai-hero h1, .pai-hero h2, .pai-hero p { color: #fff; }
.pai-section--dark a:not(.wp-block-button__link), .pai-hero a:not(.wp-block-button__link) { color: var(--global-palette2); }
.pai-hero { padding-top: 5.5rem; padding-bottom: 5.5rem; }
.pai-hero .pai-kicker, .pai-section--dark .pai-kicker { color: var(--global-palette2); }
.pai-hero .pendent, .pai-section--dark .pendent { background: #FFF3CD; color: #7A4E00; }
.pai-hero .wp-block-button.is-style-outline > .wp-block-button__link { border: 2px solid #fff !important; color: #fff !important; background: transparent !important; }
.pai-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: #fff !important; color: var(--global-palette1) !important; }
.pai-lead { font-size: 1.15em; }
.pai-kicker { text-transform: uppercase; letter-spacing: .08em; font-size: .8em; color: var(--global-palette2); font-weight: 700; }
h2.wp-block-heading { font-size: clamp(1.7rem, 3vw, 2.3rem); }

/* Targetes blanques arrodonides (com els grafics de tarifes) */
.pai-card { background: #fff; border: 0; border-radius: 22px; padding: 1.75rem; height: 100%; box-shadow: 0 6px 24px rgba(8,72,104,.08); }
.pai-card h3 { margin-top: 0; }
.wp-block-buttons .wp-block-button__link { border-radius: 999px; padding: .75em 1.5em; }

/* Taula de serveis */
.pai-preus table { border-collapse: separate; border-spacing: 0; width: 100%; background: #fff; border-radius: 18px; overflow: hidden; box-shadow: 0 6px 24px rgba(8,72,104,.08); }
.pai-preus th { background: var(--global-palette1); color: #fff; text-align: left; }
.pai-preus td, .pai-preus th { padding: .9em .9em; border-bottom: 1px solid var(--global-palette7); vertical-align: top; }
.pai-preus tr:last-child td { border-bottom: 0; }
.pai-preus td:first-child { font-weight: 700; color: var(--global-palette3); }
.pai-preus td:last-child { white-space: nowrap; font-weight: 700; color: var(--global-palette1); }
@media (max-width: 719px) {
  .pai-preus table, .pai-preus thead, .pai-preus tbody, .pai-preus tr, .pai-preus td, .pai-preus th { display: block; }
  .pai-preus table { background: transparent; box-shadow: none; border-radius: 0; overflow: visible; }
  .pai-preus thead { display: none; }
  .pai-preus tr { border: 0; border-radius: 18px; margin-bottom: 1rem; padding: 1rem 1.1rem; background: #fff; box-shadow: 0 6px 24px rgba(8,72,104,.08); }
  .pai-preus td { border: 0; padding: .3em 0; }
  .pai-preus td:first-child { font-size: 1.1em; }
  .pai-preus td:last-child { white-space: normal; display: inline-block; margin-top: .4em; background: #A8E4F2; color: var(--global-palette3); border-radius: 999px; padding: .35em .9em; }
}

/* Boto WhatsApp */
.wp-block-button.pai-wa .wp-block-button__link { background: #25D366; color: #06261A; }
.wp-block-button.pai-wa .wp-block-button__link:hover { background: #1EBE5A; color: #06261A; }

/* Foto placeholder */
.pai-foto { aspect-ratio: 4/5; border: 2px dashed var(--global-palette6); border-radius: 22px; display: flex; align-items: center; justify-content: center; text-align: center; color: var(--global-palette5); background: #fff; }

/* Imatges provisionals i franja */
.pai-hero.wp-block-cover { padding-left: 1.5rem !important; padding-right: 1.5rem !important; min-height: 520px; }
.pai-hero .wp-block-cover__inner-container, .pai-band .wp-block-cover__inner-container { width: 100%; }
.pai-band h2 { color: #fff; text-shadow: 0 2px 14px rgba(0,17,26,.6); }
.pai-foto-img img { border-radius: 22px; aspect-ratio: 3/4; object-fit: cover; width: 100%; box-shadow: 0 6px 24px rgba(8,72,104,.15); }
.pai-strip { background: var(--global-palette2); color: var(--global-palette3); padding: 1.6rem 1.5rem !important; }
.pai-strip p { margin: 0; font-size: .95em; line-height: 1.45; }
.pai-strip strong { display: block; font-size: 1.15em; margin-bottom: .2em; color: var(--global-palette1); }
@media (max-width: 719px) { .pai-strip-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; } .pai-strip-cols .wp-block-column { flex-basis: auto !important; } }
.pai-preus--sense td:last-child { white-space: normal; font-weight: 400; color: var(--global-palette4); }
@media (max-width: 719px) { .pai-preus--sense td:last-child { display: block; background: none; padding: .3em 0; border-radius: 0; margin: 0; } }

.pai-hero h1, .pai-hero p, .pai-hero .pai-kicker { text-shadow: 0 1px 10px rgba(0,17,26,.55); }

/* CTA principal: Comença aqui */
.wp-block-button.pai-cta .wp-block-button__link { background: var(--global-palette2); color: var(--global-palette3); font-weight: 700; font-size: 1.05em; padding: .85em 1.9em; }
.wp-block-button.pai-cta .wp-block-button__link:hover { background: #fff; color: var(--global-palette1); }
/* WhatsApp com a text discret */
.pai-wa-text { font-size: .95em; opacity: .9; }
.pai-section--dark .pai-wa-text a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.site-footer .footer-html a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

.pai-foto-img img { object-position: 50% 50%; }

/* Landing de consulta: formulari */
.pai-form-wrap { background: #fff; border-radius: 22px; padding: 2rem; box-shadow: 0 6px 24px rgba(8,72,104,.08); }
.pai-form-wrap .pai-done { display: none; }
.pai-form-wrap.sent .pai-form { display: none; }
.pai-form-wrap.sent .pai-done { display: block; }
.pai-form fieldset { border: 0; border-top: 1px solid var(--global-palette7); margin: 0 0 1.5rem; padding: 1.25rem 0 0; }
.pai-form fieldset:first-of-type { border-top: 0; padding-top: 0; }
.pai-form legend { font-weight: 700; color: var(--global-palette1); font-size: 1.05em; padding: 0; }
.pai-field { margin: 0 0 1.1rem; }
.pai-field label { display: block; font-weight: 600; font-size: .92em; margin-bottom: .35em; color: var(--global-palette4); }
.pai-field .opt { font-weight: 400; color: var(--global-palette5); }
.pai-form input[type=text], .pai-form input[type=email], .pai-form input[type=tel], .pai-form select, .pai-form textarea {
  width: 100%; padding: .7em .85em; border: 1px solid var(--global-palette6); border-radius: 10px;
  font: inherit; color: var(--global-palette3); background: #fff; }
.pai-form textarea { resize: vertical; min-height: 9em; }
.pai-form input:focus, .pai-form select:focus, .pai-form textarea:focus { outline: 2px solid var(--global-palette2); outline-offset: 1px; border-color: var(--global-palette2); }
.pai-hint { color: var(--global-palette5); font-size: .95em; margin: .2rem 0 1rem; }
.pai-consent { font-size: .92em; color: var(--global-palette5); margin: 0 0 .8rem; }
.pai-consent label { display: flex; gap: .6em; align-items: flex-start; }
.pai-consent input { margin-top: .25em; flex: 0 0 auto; }
.pai-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pai-btn { background: var(--global-palette2); color: var(--global-palette3); border: 0; border-radius: 999px;
  padding: .85em 2rem; font: inherit; font-weight: 700; cursor: pointer; }
.pai-btn:hover { background: var(--global-palette1); color: #fff; }
.pai-btn[disabled] { opacity: .6; cursor: default; }
.pai-status { display: none; margin: 0 0 1rem; padding: .7em .9em; border-radius: 10px; font-size: .95em; }
.pai-status.show { display: block; }
.pai-status.err { background: #FDECEA; color: #8A1C10; }
.pai-done h2 { margin-top: 0; }
@media (max-width: 719px) { .pai-form-wrap { padding: 1.25rem; } }

/* Targetes problema -> resultat */
.pai-res { color: var(--global-palette1); font-weight: 600; margin-bottom: 0; }
.pai-cards-2 { gap: 1.5rem; margin-bottom: 1.5rem; }
.pai-cards-2 .pai-card p { margin-bottom: .8rem; }
@media (max-width: 781px) { .pai-cards-2 { gap: 1.25rem; } }

/* Límits, sota la taula de serveis */
.pai-nofaig { font-size: .88em; color: var(--global-palette5); max-width: 62ch; margin-top: 1.1rem; }
.pai-nofaig strong { color: var(--global-palette4); }

/* Enllaç discret cap a serveis */
.pai-mes { font-weight: 600; margin-top: 1.2rem; }
.pai-mes a { color: var(--global-palette1); text-decoration: underline; text-underline-offset: 3px; }
/* Botó encara no actiu */
.pai-btn-off { display: inline-block; background: var(--global-palette6); color: var(--global-palette5); border-radius: 999px;
  padding: .75em 1.5em; font-weight: 700; cursor: not-allowed; }
/* Targetes sobre fons marí */
.pai-section--dark .pai-card--light { background: #fff; }
.pai-section--dark .pai-card--light h3, .pai-section--dark .pai-card--light p { color: var(--global-palette3); }
.pai-section--dark .pai-card--light strong { color: var(--global-palette1); }

/* Qui sóc a dues columnes */
.pai-quisoc { gap: 2.5rem; align-items: flex-start; }
.pai-quisoc p, .pai-quisoc li { margin-bottom: .9rem; }
.pai-quisoc .wp-block-list { margin: 0 0 .9rem; padding-left: 1.1rem; }
.pai-nota { font-size: .88em; color: var(--global-palette5); margin-bottom: 0; }
@media (min-width: 782px) { .pai-quisoc-foto { position: sticky; top: 110px; } }
@media (max-width: 781px) { .pai-quisoc-foto img { max-width: 280px; margin: 0 auto; display: block; } }

/* Franja final amb imatge: fa de CTA */
.pai-band.pai-section--dark { display: flex; align-items: center; }
.pai-band.pai-section--dark h2, .pai-band.pai-section--dark p { color: #fff; text-shadow: 0 1px 10px rgba(0,17,26,.5); }
.pai-band.pai-section--dark .wp-block-cover__inner-container { width: 100%; }

/* 1. Com treballo: cinc targetes numerades */
.pai-regles-grid, .pai-regles-grid > .wp-block-group__inner-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 1.5rem; counter-reset: regla; }
.pai-regles-grid > .wp-block-group__inner-container > .pai-regla { margin: 0 !important; }
.pai-regla { counter-increment: regla; position: relative; padding-top: 3.4rem; }
.pai-regla::before { content: counter(regla); position: absolute; top: 1.4rem; left: 1.75rem;
  width: 1.9rem; height: 1.9rem; border-radius: 50%; background: var(--global-palette2); color: var(--global-palette3);
  font-weight: 700; font-size: .95rem; display: flex; align-items: center; justify-content: center; }
.pai-regla h3 { font-size: 1.1rem; }
.pai-regla p { margin-bottom: 0; }
@media (max-width: 719px) { .pai-regles-grid { grid-template-columns: 1fr; } }

/* 2. La capçalera fixa no ha de tapar els títols */
html { scroll-padding-top: 110px; }

/* 3. Seccions enganxades, sense franges blanques entremig */
.entry-content > .pai-section, .entry-content > .pai-strip,
.pai-section, .pai-strip, .pai-section.wp-block-cover { margin-top: 0 !important; margin-bottom: 0 !important; }
.entry-content > *:last-child { margin-bottom: 0 !important; }

/* 5. Menú: l'element de la pàgina actual, igual que la resta */
.primary-menu-container .current-menu-item > a .nav-drop-title-wrap,
.primary-menu-container .current-menu-item > a,
.primary-menu-container .current_page_item > a,
.header-navigation .current-menu-item > a { color: var(--global-palette5) !important; }

/* Pàgines legals */
.pai-legal .entry-content h2 { margin-top: 2.2rem; font-size: 1.35rem; }
.pai-legal .entry-content h3 { margin-top: 1.6rem; font-size: 1.1rem; }
.pai-legal .entry-content li { margin-bottom: .4rem; }
.pai-legal-taula { font-size: .9em; }
.pai-legal-taula table { border-collapse: collapse; width: 100%; }
.pai-legal-taula th { background: var(--global-palette1); color: #fff; text-align: left; }
.pai-legal-taula th, .pai-legal-taula td { border: 1px solid var(--global-palette6); padding: .55em .7em; vertical-align: top; }
.pai-legal-taula tr:nth-child(even) td { background: var(--global-palette8); }
@media (max-width: 767px) {
  .pai-legal-taula { overflow-x: auto; }
  .pai-legal-taula table { min-width: 620px; }
}

/* Finestra de consentiment de cookies */
.pai-cookies { position: fixed; z-index: 9999; left: 1rem; right: 1rem; bottom: 1rem; max-width: 780px; margin: 0 auto;
  background: #fff; color: var(--global-palette4); border-radius: 18px; box-shadow: 0 10px 40px rgba(0,17,26,.25);
  padding: 1.25rem 1.4rem; display: flex; gap: 1.25rem; align-items: center; flex-wrap: wrap; }
.pai-cookies__text { flex: 1 1 320px; font-size: .92em; }
.pai-cookies__text strong { display: block; color: var(--global-palette1); margin-bottom: .2em; }
.pai-cookies__text p { margin: 0; }
.pai-cookies__botons { display: flex; gap: .6rem; flex: 0 0 auto; }
.pai-cookies button { border: 0; border-radius: 999px; padding: .65em 1.2em; font: inherit; font-weight: 700; cursor: pointer; }
.pai-cookies__si { background: var(--global-palette2); color: var(--global-palette3); }
.pai-cookies__si:hover { background: var(--global-palette1); color: #fff; }
.pai-cookies__no { background: transparent; color: var(--global-palette5); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 600px) { .pai-cookies { padding: 1rem; } .pai-cookies__botons { width: 100%; justify-content: flex-end; } }

/* Botó de pagament de Stripe */
.pai-stripe { margin-top: 1rem; }
.pai-stripe stripe-buy-button { display: block; }

/* Retocs 28/09: taula que no sembli tallada i bloc informatiu amb cos */
figure.wp-block-table.pai-preus { border-radius: 18px !important; overflow: hidden !important;
  border: 1px solid var(--global-palette6); box-shadow: 0 6px 24px rgba(8,72,104,.10); margin-bottom: 1.5rem; }
figure.wp-block-table.pai-preus table { border: 0; }
figure.wp-block-table.pai-preus th:first-child, figure.wp-block-table.pai-preus td:first-child { padding-left: 1.1em; }
figure.wp-block-table.pai-preus th:last-child, figure.wp-block-table.pai-preus td:last-child { padding-right: 1.1em; }
figure.wp-block-table.pai-preus table { border-radius: 0; box-shadow: none; }
.pai-preus tbody tr:last-child td { border-bottom: 0; padding-bottom: 1.1em; }
@media (max-width: 719px) { figure.wp-block-table.pai-preus { border-radius: 0 !important; box-shadow: none; overflow: visible !important; } }

.pai-info { background: #fff; border-left: 5px solid var(--global-palette2); border-radius: 0 16px 16px 0;
  padding: 1.6rem 1.8rem; margin-bottom: 1.6rem; }
.pai-info h2, .pai-info h3 { font-size: clamp(1.4rem, 2.4vw, 1.75rem); color: var(--global-palette1); line-height: 1.25; }
.pai-info h2 { margin-top: 0; }
.pai-info h3 { margin-top: 1.5rem; margin-bottom: .4rem; }
.pai-info p { margin-bottom: 0; }
@media (max-width: 719px) { .pai-info { padding: 1.2rem 1.25rem; } }
