/*
Theme Name:   GoodPlann
Theme URI:    https://goodplann.com
Description:  Tema de GoodPlann, pensado para construir landings con Elementor. Aporta los design tokens (paleta, tipografías, radios) que consumen los widgets del plugin «GoodPlann para Elementor», que viaja dentro del propio tema. Es un tema autónomo: no necesita ningún tema padre, así que se instala y se activa de una vez.
Author:       GoodPlann
Author URI:   https://goodplann.com
Version:      1.0.4
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
License:      GPL v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  goodplann
Tags:         one-column, custom-colors, editor-style, block-styles, full-width-template
*/

/* ══════════════════════════════════════════════════════════════════
   Chasis mínimo. Todo el diseño de las landings vive en los widgets
   del plugin; aquí solo lo justo para que las páginas normales (aviso
   legal, política de privacidad…) se lean bien.
   Los tokens están en assets/css/tokens.css.
   ══════════════════════════════════════════════════════════════════ */

*,
*::before,
*::after{ box-sizing:border-box; }

body{ margin:0; }

img,
video{ max-width:100%; height:auto; }

a{ color:var(--tiffany); }

.gp-skip-link{
  position:absolute; left:-9999px; top:0; z-index:100;
  padding:12px 20px; border-radius:0 0 10px 0;
  background:var(--lime); color:var(--night); font-weight:800; text-decoration:none;
}
.gp-skip-link:focus{ left:0; }

/* contenido de páginas normales, fuera de Elementor */
.gp-page{
  max-width:760px;
  margin:0 auto;
  padding:clamp(48px,9vh,110px) clamp(20px,5vw,48px);
  color:var(--ink);
  font-family:var(--ff);
  line-height:1.7;
}
.gp-page h1,
.gp-page h2,
.gp-page h3{ color:var(--snow); letter-spacing:-.02em; line-height:1.15; }
.gp-page h1{ font-size:clamp(2rem,5vw,3rem); font-weight:900; }
.gp-page :where(h2,h3){ margin-top:1.8em; }
.gp-page hr{ border:0; border-top:1px solid var(--glass-brd); margin:2.5em 0; }
.gp-page blockquote{
  margin:1.6em 0; padding:2px 0 2px 20px;
  border-left:3px solid var(--persian); color:var(--muted);
}
.gp-page :where(code,pre){ font-family:ui-monospace, SFMono-Regular, Menlo, monospace; }
.gp-page pre{ overflow-x:auto; padding:16px; border-radius:12px; background:var(--glass-2); }

/* pie: menú legal y zona de widgets */
.gp-foot{
  max-width:960px;
  margin:0 auto;
  padding:36px clamp(20px,5vw,48px) 56px;
  color:var(--muted);
  font-family:var(--ff);
  font-size:13px;
  text-align:center;
}
.gp-foot ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px 22px; justify-content:center; }
.gp-foot a{ color:var(--muted); text-decoration:none; }
.gp-foot a:hover{ color:var(--tiffany); }
.gp-foot-title{ font-size:13px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--tiffany); margin:0 0 10px; }
.gp-foot-widget + .gp-foot-widget{ margin-top:26px; }
