/* RGPD Málaga V2 — Fase 5: legales y contacto */
:root{
  --rgpd-cream:#f4d7c3;
  --rgpd-cream-soft:#fff5ee;
  --rgpd-cream-deep:#a85d32;
  --rgpd-cream-border:#efd2be;
}

/* Contacto */
.rgpd-contact-hero{padding:72px 0 62px;background:linear-gradient(135deg,#1f2645 0%,#27365d 100%);color:#fff;overflow:hidden}
.rgpd-contact-hero .rgpd-v2-kicker{color:#f1cdb5!important;text-align:center}
.rgpd-contact-hero h1{max-width:900px;margin:0 auto 16px;font-family:"Palanquin Dark",sans-serif;font-size:clamp(2.55rem,5vw,4rem);line-height:1.05;text-align:center;color:#fff;text-wrap:balance}
.rgpd-contact-hero p{max-width:850px;margin:0 auto;color:#eef3fb;font-size:1.08rem;line-height:1.75;text-align:center}
.rgpd-contact-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:-28px;position:relative;z-index:2}
.rgpd-contact-quick__card{background:#fff;border:1px solid var(--rgpd-border);border-radius:18px;padding:24px 20px;box-shadow:var(--rgpd-shadow);text-align:center;min-width:0}
.rgpd-contact-quick__icon{width:48px;height:48px;margin:0 auto 14px;border-radius:14px;display:grid;place-items:center;background:var(--rgpd-cream-soft);color:var(--rgpd-cream-deep);border:1px solid var(--rgpd-cream-border)}
.rgpd-contact-quick__icon svg{width:25px;height:25px;stroke:currentColor}
.rgpd-contact-quick__card h2{margin:0 0 7px;font-family:"Palanquin Dark",sans-serif;font-size:1.05rem;line-height:1.25;color:var(--rgpd-navy);text-align:center}
.rgpd-contact-quick__card p,.rgpd-contact-quick__card a{margin:0;color:#566078!important;font-size:.93rem;line-height:1.55;text-decoration:none;overflow-wrap:anywhere}
.rgpd-contact-main{padding:70px 0;background:var(--rgpd-pale)}
.rgpd-contact-main .rgpd-v2-contact-grid{grid-template-columns:.82fr 1.18fr;gap:28px}
.rgpd-contact-main .rgpd-v2-contact-card{height:100%;padding:34px}
.rgpd-contact-main .rgpd-v2-contact-card h2{margin:0 0 8px;font-family:"Palanquin Dark",sans-serif;color:#fff;font-size:1.7rem}
.rgpd-contact-main .rgpd-v2-contact-card>.rgpd-contact-card-lead{margin:0 0 18px;color:#dbe5f7;line-height:1.65}
.rgpd-contact-form-head{padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--rgpd-border)}
.rgpd-contact-form-head h2{margin:0 0 5px;font-family:"Palanquin Dark",sans-serif;font-size:1.55rem;color:var(--rgpd-navy)}
.rgpd-contact-form-head p{margin:0;color:var(--rgpd-muted);font-size:.94rem;line-height:1.55}
.rgpd-contact-form form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px!important}
.rgpd-contact-form .u-form-group{margin:0!important;min-width:0}
.rgpd-contact-form .u-form-message,.rgpd-contact-form .u-form-checkbox,.rgpd-contact-form .u-form-text,.rgpd-contact-form .u-form-submit,.rgpd-contact-form .u-form-send-message{grid-column:1/-1}
.rgpd-contact-form .u-form-text{display:none!important}
.rgpd-contact-form .u-form-checkbox{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:10px;margin-top:2px!important}
.rgpd-contact-form .u-form-checkbox .u-field-input{margin-top:4px;width:16px;height:16px}
.rgpd-contact-form .u-form-checkbox .u-field-label{font-size:.9rem!important;line-height:1.5!important;font-weight:600!important;color:#39435d!important;margin:0!important}
.rgpd-contact-form .u-form-checkbox .u-field-label a{font-weight:800;color:var(--rgpd-blue)!important}
.rgpd-contact-form .u-form-submit{margin-top:4px!important}
.rgpd-contact-form .u-btn-submit{display:inline-flex!important;width:auto!important;min-width:118px;justify-content:center}
.rgpd-contact-form .u-form-send-message{display:none;padding:12px 14px;border-radius:9px;font-size:.9rem}
.rgpd-contact-form .u-form-send-success{background:#edf8f0;color:#28633a}
.rgpd-contact-form .u-form-send-error{background:#fff0ef;color:#9a302b}
.rgpd-contact-privacy-note{margin:18px 0 0;padding:14px 16px;background:var(--rgpd-cream-soft);border:1px solid var(--rgpd-cream-border);border-radius:12px;color:#6a4938;font-size:.88rem;line-height:1.55}
.rgpd-contact-privacy-note a{color:var(--rgpd-cream-deep)!important;font-weight:800}
.rgpd-contact-map-section{padding:74px 0;background:#fff}
.rgpd-contact-map-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:28px;align-items:stretch}
.rgpd-contact-location{padding:34px;border-radius:20px;background:#fff;border:1px solid var(--rgpd-border);box-shadow:var(--rgpd-shadow)}
.rgpd-contact-location h2{margin:0 0 12px;font-family:"Palanquin Dark",sans-serif;font-size:1.8rem;color:var(--rgpd-navy)}
.rgpd-contact-location p{color:#566078;line-height:1.7}
.rgpd-contact-location .rgpd-v2-btn{margin-top:10px}
.rgpd-contact-map{min-height:390px;overflow:hidden;border-radius:20px;border:1px solid var(--rgpd-border);box-shadow:var(--rgpd-shadow);background:#eef2f7}
.rgpd-contact-map .embed-responsive,.rgpd-contact-map iframe{width:100%;height:100%;min-height:390px;border:0;display:block}

/* Legales */
.rgpd-legal-hero{padding:68px 0 56px;background:linear-gradient(180deg,#f4f7fb 0%,#fff 100%);border-bottom:1px solid #e8edf4}
.rgpd-legal-hero .rgpd-v2-kicker{color:var(--rgpd-cream-deep)!important;text-align:center}
.rgpd-legal-hero h1{max-width:920px;margin:0 auto 14px;font-family:"Palanquin Dark",sans-serif;font-size:clamp(2.35rem,4.5vw,3.6rem);line-height:1.08;color:var(--rgpd-navy);text-align:center;text-wrap:balance}
.rgpd-legal-hero p{max-width:820px;margin:0 auto;color:#59647c;font-size:1.02rem;line-height:1.72;text-align:center}
.rgpd-legal-section{padding:66px 0 82px;background:#f7f9fc}
.rgpd-legal-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:start}
.rgpd-legal-nav{background:#fff;border:1px solid var(--rgpd-border);border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(31,38,69,.06);position:sticky;top:18px}
.rgpd-legal-nav__label{display:block;margin:0 0 12px;color:var(--rgpd-cream-deep);font-size:.77rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.rgpd-legal-nav h2{margin:0 0 14px;font-family:"Palanquin Dark",sans-serif;font-size:1.28rem;color:var(--rgpd-navy)}
.rgpd-legal-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.rgpd-legal-nav a{display:block;padding:9px 10px;border-radius:9px;color:#526078!important;text-decoration:none;font-size:.9rem;line-height:1.35;font-weight:700}
.rgpd-legal-nav a:hover{background:var(--rgpd-cream-soft);color:var(--rgpd-cream-deep)!important}
.rgpd-legal-content{min-width:0;background:#fff;border:1px solid var(--rgpd-border);border-radius:20px;padding:40px 44px;box-shadow:0 14px 34px rgba(31,38,69,.055)}
.rgpd-legal-content>p:first-child:empty{display:none}
.rgpd-legal-content h2{position:relative;margin:42px 0 15px;padding-left:18px;font-family:"Palanquin Dark",sans-serif;font-size:1.55rem;line-height:1.25;color:var(--rgpd-navy);scroll-margin-top:24px}
.rgpd-legal-content h2:first-of-type{margin-top:0}
.rgpd-legal-content h2:before{content:"";position:absolute;left:0;top:.18em;width:5px;height:1.05em;border-radius:6px;background:var(--rgpd-cream-deep)}
.rgpd-legal-content h3{margin:24px 0 10px;font-family:"Palanquin Dark",sans-serif;font-size:1.12rem;color:#34405f}
.rgpd-legal-content p,.rgpd-legal-content li{font-size:.97rem;line-height:1.75;color:#4d586f}
.rgpd-legal-content p{margin:0 0 13px}
.rgpd-legal-content ul,.rgpd-legal-content ol{margin:12px 0 20px;padding:17px 20px 17px 40px;background:var(--rgpd-cream-soft);border:1px solid var(--rgpd-cream-border);border-radius:14px}
.rgpd-legal-content li{margin:4px 0}
.rgpd-legal-content li p{margin:0}
.rgpd-legal-content a{color:var(--rgpd-blue)!important;font-weight:700}
.rgpd-legal-content strong{color:#303a58}
.rgpd-legal-note{margin:0 0 28px;padding:18px 20px;border-radius:14px;background:var(--rgpd-navy);color:#fff}
.rgpd-legal-note p{margin:0;color:#edf2fb;line-height:1.65}
.rgpd-legal-note strong{color:#fff}

@media(max-width:1050px){
  .rgpd-contact-quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rgpd-contact-main .rgpd-v2-contact-grid,.rgpd-contact-map-grid{grid-template-columns:1fr}
  .rgpd-legal-layout{grid-template-columns:1fr}.rgpd-legal-nav{position:static}.rgpd-legal-nav ul{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .rgpd-contact-hero{padding:56px 0 48px}.rgpd-contact-hero h1{font-size:2.35rem}
  .rgpd-contact-quick{grid-template-columns:1fr;margin-top:24px}.rgpd-contact-quick__card{text-align:left;display:grid;grid-template-columns:48px 1fr;column-gap:14px;align-items:center}.rgpd-contact-quick__icon{grid-row:1/3;margin:0}.rgpd-contact-quick__card h2,.rgpd-contact-quick__card p,.rgpd-contact-quick__card a{text-align:left}
  .rgpd-contact-main,.rgpd-contact-map-section{padding:54px 0}.rgpd-contact-form form{grid-template-columns:1fr}.rgpd-contact-form .u-form-group{grid-column:1!important}.rgpd-contact-main .rgpd-v2-contact-card,.rgpd-v2-form{padding:24px}
  .rgpd-contact-map,.rgpd-contact-map .embed-responsive,.rgpd-contact-map iframe{min-height:330px}
  .rgpd-legal-hero{padding:52px 0 44px}.rgpd-legal-section{padding:48px 0 62px}.rgpd-legal-content{padding:28px 22px}.rgpd-legal-content h2{font-size:1.35rem;margin-top:34px}.rgpd-legal-nav ul{grid-template-columns:1fr}
}

/* Contacto — asegurar contraste de los estados del formulario */
body.rgpd-v2 .rgpd-contact-form.u-form div.u-form-send-success{background:#e8f7ed!important;color:#1f6337!important;border:1px solid #bfe5ca!important}
body.rgpd-v2 .rgpd-contact-form.u-form div.u-form-send-error{background:#fff0ee!important;color:#8d2d25!important;border:1px solid #f1c4bf!important}
body.rgpd-v2 .rgpd-contact-form.u-form .u-form-send-message-close{color:currentColor!important}
