Buenas!
1.- Le he estado echando un vistazo a tú código y lo primero que se aprecia es que tienes un serio problema de "dividitis" o lo que es lo mismo, metes mogollon de etiquetas div que no hacen falta.
Por ejemplo con tu primer problema de las almenas tú tienes esto:
Código:
<div id="cabecera">
<div id="almena1"></div>
<div id="almena2"></div>
<div id="almena3"></div>
<div id="almena4"></div>
<div id="almena5"></div>
</div>
Eso en verdad es una lista y tu codigo HTML debería ser:
Código:
<div id="cabecera">
<ul id="almenas">
<li>lala</li>
<li>lele</li>
<li>lili</li>
<li>lolo</li>
<li>lulu</li>
</ul>
y luego pondrías en tú css:
Código:
ul#almenas{
width: los_pixeles que quieras
list-style: none;
}
ul#almenas li{
display: inline;
margin-right: 10px;
}
2.- El segundo punto no te entiendo así que deberías explicarte mejor...
3.- Vuelves a tener problemas con los divs. No tienes que meter mas divs tienes que quitar y muchos. A simple vista tú pagina debería tener la siguiente estructura:
Código:
<div id="contenedor">
<div id="cabecera">
</div>
<div id="torre1">
</div>
<div id="contenidos"
<div id="contenidos_texto">
</div>
</div>
<div id="torre2">
</div>
<div id="pie"
</div>
</div>
A partir de hay te sera más fácil darle estilo a tú página.
4.- Este texto al que tu quieres dejar unos espacios iría en la etiqueta div - contenidos_texto. Por ejemplo el HTML sería asi:
Código:
<div id="contenidos_texto">
<h2>Subtitulo</h2>
<p>Hola Mundo!</p>
</div>
y tu CSS sería:
Código:
div#contenidos_texto{
overflow: auto;
}
div#contenidos_texto p{
margin: 10px;
}
con margin dejas los espacios entre el div y el texto.
Espero qu esto te sirva de guía para ir encaminando tú proyecto. Te recomiendo que antes de hacer nada te leas estos tutoriales por que sino te vas a perder un poco:
==================================
Tutorial XHTML
==================================
http://www.w3schools.com/xhtml/default.asp
==================================
Tutorial CSS
==================================
http://www.w3schools.com/css/
Un saludo y suerte!