{source}<?php
defined('_JEXEC') or die;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Mail\MailHelper;
use Joomla\CMS\Session\Session;
use Joomla\CMS\Uri\Uri;
$app = Factory::getApplication();
$input = $app->getInput();
$config = Factory::getConfig();
// Email del sito (Configurazione Globale)
$siteFromEmail = (string) $config->get('mailfrom');
$siteFromName = (string) $config->get('fromname');
// Helper: escape output HTML
if (!function_exists('gw_e')) {function gw_e($str) {
return htmlspecialchars((string)$str, ENT_QUOTES, 'UTF-8');
}
}
// Stato
$sentOk = false;
$errors = [];
// Valori (per ripopolare in caso di errori)
$nome = $input->getString('gw_nome', '');
$cognome = $input->getString('gw_cognome', '');
$telefono= $input->getString('gw_telefono', '');
$email = $input->getString('gw_email', '');
$motivo = $input->getString('gw_motivo', '');
// Submit?
if ($input->getMethod() === 'POST' && $input->post->getInt('gw_submit', 0) === 1)
{// CSRF token
if (!Session::checkToken())
{
$errors[] = 'Sessione scaduta. Ricarica la pagina e riprova.';
}
// Sanitizzazione base
$nome = trim($nome);
$cognome = trim($cognome);
$telefono = trim($telefono);
$email = trim($email);
$motivo = trim($motivo);
// Validazioni
if ($nome === '') $errors[] = 'Inserisci il nome.';
if ($cognome === '') $errors[] = 'Inserisci il cognome.';
if ($telefono === '') $errors[] = 'Inserisci il telefono.';
if ($email === '' || !MailHelper::isEmailAddress($email)) $errors[] = 'Inserisci una email valida.';
if ($motivo === '') $errors[] = 'Inserisci il motivo del contatto.';
// “Telefono” permissivo ma ripulito
$telefono_norm = preg_replace('/[^0-9+\s().-]/', '', $telefono);
// Se ok, invia email
if (empty($errors))
{
$mailer = Factory::getMailer();
// Oggetto
$subjectUser = 'Conferma ricezione richiesta';
$subjectAdmin = 'Nuova richiesta dal sito';
// Corpo email (testo semplice, robusto)
$fullName = $nome . ' ' . $cognome;
$bodyUser =
"Hi $fullName,
abbiamo ricevuto la tua richiesta. Ti ricontatteremo al più presto.
Riepilogo:
- Nome: $nome
- Cognome: $cognome
- Telefono: $telefono_norm
- Email: $email
- Motivo: $motivo
Grazie.";$bodyAdmin =
"Nuova richiesta dal sito:
- Nome: $nome
- Cognome: $cognome
- Telefono: $telefono_norm
- Email: $email
- Motivo: $motivo
IP: " . $input->server->getString('REMOTE_ADDR', 'n/d') . "
Pagina: " . Uri::current();// 1) Mail al gestore (da mail di sito)
$mailer->clearAllRecipients();
$mailer->setSender([$siteFromEmail, $siteFromName]);
$mailer->addRecipient($siteFromEmail); // gestore = mailfrom
$mailer->setSubject($subjectAdmin);
$mailer->setBody($bodyAdmin);
$sendAdmin = $mailer->Send();
// 2) Mail all'utente (da mail di sito)
$mailer->clearAllRecipients();
$mailer->setSender([$siteFromEmail, $siteFromName]);
$mailer->addRecipient($email);
// reply-to verso il gestore (così l’utente risponde al sito, non al nulla)
$mailer->addReplyTo([$siteFromEmail, $siteFromName]);
$mailer->setSubject($subjectUser);
$mailer->setBody($bodyUser);
$sendUser = $mailer->Send();
if ($sendAdmin !== true)
{
$errors[] = 'Invio al gestore non riuscito. Controlla configurazione email di Joomla.';
}
if ($sendUser !== true)
{
$errors[] = 'Invio conferma all’utente non riuscito. Controlla configurazione email di Joomla.';
}
if (empty($errors))
{
$sentOk = true;
// Svuota campi dopo invio
$nome = $cognome = $telefono = $email = $motivo = '';
}
}
}
?>
<style>
/* Form chiaro, pulito, “premium” */
.gw-form-wrap{
max-width: 720px;
margin: 18px auto;
padding: 18px;
border-radius: 14px;
background: #fff4d2;
border: 1px solid rgba(0,0,0,.08);
box-shadow: 0 10px 30px rgba(0,0,0,.15);
color: #111;
font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.gw-form-title{
font-size: 20px;
font-weight: 700;
margin: 0 0 12px;
letter-spacing: .2px;
color: #000; /* richiesto: titolo nero */
}
.gw-grid{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}
@media (max-width: 640px){
.gw-grid{ grid-template-columns: 1fr; }
}
.gw-field label{
display:block;
font-size: 12px;
margin: 6px 0 6px;
color: #000; /* richiesto: label nere */
}
/* Input + textarea: area bianca e testo nero */
.gw-field input,
.gw-field textarea{
width:100%;
box-sizing:border-box;
padding: 11px 12px;
border-radius: 10px;
border: 1px solid rgba(0,0,0,.18);
background: #ffffff; /* richiesto: bianco dentro */
color: #000000; /* richiesto: testo nero */
outline: none;
}
/* Focus coerente su tema chiaro */
.gw-field input:focus,
.gw-field textarea:focus{
border-color: rgba(120,180,255,.75);
box-shadow: 0 0 0 3px rgba(120,180,255,.22);
}
.gw-actions{
margin-top: 14px;
display:flex;
gap: 10px;
align-items:center;
}
.gw-btn{
appearance:none;
border: 0;
border-radius: 12px;
padding: 11px 16px;
font-weight: 700;
cursor:pointer;
background: rgba(120,180,255,.95);
color: rgba(0,0,0,.88);
}
.gw-btn:hover{ filter: brightness(1.05); }
.gw-note{
font-size: 12px;
color: rgba(0,0,0,.60); /* nota leggibile su sfondo chiaro */
}
.gw-alert{
margin: 10px 0 12px;
padding: 10px 12px;
border-radius: 12px;
border: 1px solid rgba(0,0,0,.10);
}
.gw-alert.ok{
background: rgba(60,200,120,.15);
border-color: rgba(60,200,120,.25);
color: #111;
}
.gw-alert.err{
background: rgba(255,80,80,.13);
border-color: rgba(255,80,80,.22);
color: #111;
}
.gw-alert ul{
margin: 6px 0 0 18px;
}
</style>
<div class="gw-form-wrap">
<div class="gw-form-title">Contattaci</div>
<?php if ($sentOk): ?>
<div class="gw-alert ok">
Richiesta inviata. Controlla la tua email per la conferma.
</div>
<?php endif; ?>
<?php if (!empty($errors)): ?>
<div class="gw-alert err">
Qualcosa non torna:
<ul>
<?php foreach ($errors as $er): ?>
<li><?php echo gw_e($er); ?></li>
<?php endforeach; ?>
</ul>
</div>
<?php endif; ?>
<form method="post" action="<?php echo gw_e(Uri::current()); ?>" autocomplete="on">
<div class="gw-grid">
<div class="gw-field">
<label for="gw_nome">Nome</label>
<input id="gw_nome" name="gw_nome" type="text" value="<?php echo gw_e($nome); ?>" required>
</div>
<div class="gw-field">
<label for="gw_cognome">Cognome</label>
<input id="gw_cognome" name="gw_cognome" type="text" value="<?php echo gw_e($cognome); ?>" required>
</div>
<div class="gw-field">
<label for="gw_telefono">Telefono</label>
<input id="gw_telefono" name="gw_telefono" type="tel" value="<?php echo gw_e($telefono); ?>" required>
</div>
<div class="gw-field">
<label for="gw_email">Email</label>
<input id="gw_email" name="gw_email" type="email" value="<?php echo gw_e($email); ?>" required>
</div>
<div class="gw-field" style="grid-column: 1 / -1;">
<label for="gw_motivo">Motivo del contatto</label>
<textarea id="gw_motivo" name="gw_motivo" rows="5" required><?php echo gw_e($motivo); ?></textarea>
</div>
</div>
<div class="gw-actions">
<button class="gw-btn" type="submit">Invia</button>
<div class="gw-note">Invieremo una conferma alla tua email e notificheremo il gestore.</div>
</div>
<input type="hidden" name="gw_submit" value="1">
<?php echo HTMLHelper::_('form.token'); ?>
</form>
</div>{/source}
{source}<center><iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2845.9000294645507!2d11.341063975392505!3d44.49671519746966!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x477fd4962289acfb%3A0xa1c50f5844aef1af!2sVia%20delle%20Donzelle%2C%201%2C%2040126%20Bologna%20BO!5e0!3m2!1sit!2sit!4v1769521979211!5m2!1sit!2sit" width="600" height="450" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-downgrade"></iframe></center>{/source}
Lavoro come psicoterapeuta occupandomi ad ampio spettro delle problematiche legate al disagio dei nostri tempi: ansia, depressione, disadattamenti legati al ciclo di vita, relazioni affettive, fobie sociali, in assetto di terapia individuale, di coppia e familiare.
Sono insegnante e consulente per le problematiche dell'adolescenza e della genitorialità in scuole private del territorio, accompagnata da attività di formazione per gli adolescenti e per le famiglie.
L'attività formativa inoltre si estende e al tema della comunicazione in azienda e alle problematiche femminili in associazioni ed enti che si occupano di tematiche legate alla donna.

La figura dello psicoterapeuta nell’ottica sistemico-relazionale.
La figura dello psicoterapeuta si staglia nell'orizzonte del paziente come una guida, un accompagnatore esperto, una sorta di Virgilio dantesco, in un percorso che ha come meta il cambiamento, un cambiamento che generi quel benessere che sia frutto della consapevolezza di sé e del contesto in cui si vive, e della capacità di gestire le criticità sia del proprio modo di essere che delle relazioni significative.
E siccome non tutte le persone sono uguali, come altrettanto le situazioni di vita e i bisogni, non c'è percorso assimilabile ad un altro.
Ognuno di noi ha la sua strada, ognuno di noi ha il suo obiettivo da perseguire, ognuno di noi preferisce una persona piuttosto che un'altra che la accompagni nella strada impervia del cambiamento.
Ecco chi è il terapeuta, è la persona di cui ci si fida, a cui ci si affida, nella costruzione di quella solida alleanza che ci rende più forti e più acuti lungo il cammino.
Perciò non ci sono ricette né istruzioni per l'uso, è la creatività a far da padrona nel processo del cambiamento personale.
"Noi camminiamo attraverso noi stessi incontrando ladroni, spettri, giganti, vecchi, giovani, mogli, vedove, fratelli adulterini. Ma sempre incontrando noi stessi."
James Joyce, Ulisse.
Mi chiamo Marenza De Michele, laureata in Psicologia presso l’Università “La Sapienza” di Roma nel 1988, ho conseguito nel 1990 un master presso l’Istituto Europeo di Design di Roma in Psicologia del Lavoro e dell’Organizzazione.

Iscritta alla Scuola di Specializzazione in Psicoterapia Sistemico-Relazionale I.T.F.A.L. di Bari, mi diplomo nel 2000 in Psicoterapia Familiare
Ho lavorato in pubblicità, nella gestione risorse umane – soprattutto nella formazione e nella selezione del personale – presso privati e aziende, e in una Comunità Terapeutica per tossicodipendenti dove, dopo aver partecipato alla progettazione e all’istituzione della comunità stessa, ne sono stata la psicologa e successivamente la psicoterapeuta.
Iscritta all'albo professionale sono col numero 3025/a, esercito l'attività di psicoterapia come libero professionista, abbinandone la formazione, l’insegnamento, le consulenze, e di volta in volta incarichi professionali nelle varie province della nostra regione.
{source}<!-- HERO Psicoterapia Sistemico-Relazionale (box + immagine visibile) -->
<section class="sr-hero" aria-label="Presentazione Psicoterapia Sistemico-Relazionale"><div class="sr-hero__warm" aria-hidden="true"></div>
<div class="sr-hero__wrap">
<div class="sr-hero__grid">
<!-- BOX TESTO -->
<div class="sr-hero__card">
<p class="sr-hero__kicker">Psicoterapia sistemico-relazionale</p>
<h1 class="sr-hero__title">
Ritrovare equilibrio nelle relazioni, con uno sguardo sul sistema
</h1>
<p class="sr-hero__text">
La psicoterapia sistemico-relazionale permette di intervenire in situazioni di disagio
dell’individuo, della coppia e della famiglia, con uno sguardo che mette al centro
il sistema, ossia la rete di relazioni in cui è inserita la persona cosiddetta “malata”.
Questo permette di agire da subito sull’equilibrio delle relazioni, alleggerendo il paziente
e realizzando, in tempi non troppo lunghi, un relativo benessere.
</p>
<p class="sr-hero__text sr-hero__text--small">
La stessa ottica si presta molto agevolmente anche a gestire i gruppi in attività di formazione.
</p>
<div class="sr-hero__actions">
<a class="sr-btn sr-btn--primary" href="/./contattami.html">Prenota un colloquio</a>
<a class="sr-btn sr-btn--ghost" href="/./di-cosa-mi-occupo.html">Scopri i percorsi</a>
</div>
<div class="sr-hero__tags" aria-label="Aree di intervento">
<span class="sr-tag">Individuale</span>
<span class="sr-tag">Coppia</span>
<span class="sr-tag">Famiglia</span>
<span class="sr-tag">Formazione</span>
</div>
</div>
<!-- IMMAGINE -->
<figure class="sr-hero__media" aria-label="Immagine di accoglienza">
<div class="sr-hero__img" role="img" aria-label="Immagine psicoterapia"></div>
<figcaption class="sr-hero__caption">
Uno spazio sicuro per comprendere, riorganizzare, ripartire.
</figcaption>
</figure>
</div>
</div>
</section>
<style>
:root{--sr-white: #ffffff;
--sr-ink: #1b1b1b;
--sr-ink-soft: rgba(27,27,27,.78);
--sr-warm-1: #ffb36b;
--sr-warm-2: #ff7a2f;
--sr-warm-3: #d4551f;
--sr-card: rgba(255,255,255,.86);
--sr-border: rgba(255, 255, 255, .55);
--sr-shadow: 0 20px 55px rgba(0,0,0,.20);
--sr-radius: 18px;
--sr-max: 1180px;
}
/* SEZIONE */
.sr-hero{position: relative;
overflow: hidden;
color: var(--sr-ink);
background: #fff;
}
/* Sfondo caldo (MA NON copre l’immagine perché non è sopra la figure) */
.sr-hero__warm{position:absolute;
inset:0;
background:
radial-gradient(70% 60% at 15% 25%, rgba(255,179,107,.55) 0%, rgba(255,179,107,0) 60%),
radial-gradient(70% 60% at 80% 30%, rgba(255,122,47,.35) 0%, rgba(255,122,47,0) 60%),
linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,247,240,1) 45%, rgba(255,255,255,1) 100%);
pointer-events:none;
}
.sr-hero__wrap{position: relative;
max-width: var(--sr-max);
margin: 0 auto;
padding: clamp(22px, 4vw, 56px);
}
/* Layout: 2 colonne desktop, 1 colonna mobile (box sopra, immagine sotto) */
.sr-hero__grid{display: grid;
grid-template-columns: 1.05fr .95fr;
gap: clamp(16px, 2.4vw, 28px);
align-items: stretch;
}
/* CARD */
.sr-hero__card{background: var(--sr-card);
border: 1px solid var(--sr-border);
border-radius: var(--sr-radius);
box-shadow: var(--sr-shadow);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
padding: clamp(18px, 3.2vw, 34px);
position: relative;
}
/* bordo luminoso caldo */
.sr-hero__card::before{content:"";
position:absolute;
inset:-1px;
border-radius: calc(var(--sr-radius) + 1px);
padding: 1px;
background: linear-gradient(135deg, rgba(255,179,107,.55), rgba(255,122,47,.55), rgba(212,85,31,.30));
-webkit-mask:
linear-gradient(#000 0 0) content-box,
linear-gradient(#000 0 0);
-webkit-mask-composite: xor;
mask-composite: exclude;
pointer-events:none;
}
.sr-hero__kicker{margin: 0 0 10px 0;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
font-size: 12px;
color: rgba(27,27,27,.65);
}
.sr-hero__title{margin: 0 0 14px 0;
font-size: clamp(26px, 3.1vw, 42px);
line-height: 1.06;
color: var(--sr-ink);
}
.sr-hero__text{margin: 0 0 12px 0;
font-size: 16px;
line-height: 1.65;
color: var(--sr-ink-soft);
}
.sr-hero__text--small{font-size: 14px;
color: rgba(27,27,27,.72);
}
/* BOTTONI */
.sr-hero__actions{display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 18px;
}
.sr-btn{display: inline-flex;
align-items: center;
justify-content: center;
padding: 12px 16px;
border-radius: 12px;
text-decoration: none;
font-weight: 700;
border: 1px solid transparent;
transition: transform .12s ease, box-shadow .12s ease, background .12s ease, color .12s ease;
user-select: none;
}
.sr-btn:active{ transform: translateY(1px); }
.sr-btn--primary{background: linear-gradient(135deg, var(--sr-warm-2), var(--sr-warm-3));
color: var(--sr-white);
box-shadow: 0 12px 30px rgba(255,122,47,.25);
}
.sr-btn--primary:hover{transform: translateY(-1px);
box-shadow: 0 16px 36px rgba(255,122,47,.30);
}
.sr-btn--ghost{background: rgba(255,255,255,.75);
color: var(--sr-ink);
border-color: rgba(0,0,0,.08);
}
.sr-btn--ghost:hover{background: rgba(255,255,255,.92);
transform: translateY(-1px);
}
/* TAGS */
.sr-hero__tags{display:flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 16px;
}
.sr-tag{font-size: 12px;
font-weight: 700;
padding: 7px 10px;
border-radius: 999px;
background: rgba(255, 122, 47, .10);
border: 1px solid rgba(255, 122, 47, .20);
color: rgba(27,27,27,.78);
}
/* MEDIA (immagine visibile, incorniciata) */
.sr-hero__media{margin: 0;
display: grid;
grid-template-rows: 1fr auto;
gap: 10px;
}
.sr-hero__img{border-radius: var(--sr-radius);
border: 1px solid rgba(255, 122, 47, .22);
box-shadow: 0 18px 46px rgba(0,0,0,.22);
overflow: hidden;
min-height: clamp(320px, 44vh, 520px);
background-image: url("/./home/immagine.png");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
position: relative;
}
/* leggero overlay per leggibilità e stile, ma NON la uccide */
.sr-hero__img::after{content:"";
position:absolute;
inset:0;
background:
radial-gradient(60% 60% at 30% 30%, rgba(255,179,107,.16) 0%, rgba(255,179,107,0) 60%),
linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.18) 100%);
pointer-events:none;
}
.sr-hero__caption{font-size: 13px;
color: rgba(27,27,27,.66);
padding: 0 2px;
}
/* MOBILE: verticale (box sopra, immagine sotto) */
@media (max-width: 860px){.sr-hero__grid{
grid-template-columns: 1fr;
}
.sr-hero__img{
min-height: 320px;
}
}
</style>{/source}