@charset "utf-8";

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: Arial, sans-serif;
}

body {
  background: #dcdcdc;
  padding: 40px;
}

/* CONTENITORE ESTERNO GRIGIO RAISED */
.outer-box {
  background: #f0f0f0; /* grigio chiaro */
  padding: 25px;
  border-radius: 18px;
  max-width: 1350px;
  margin: 0 auto;
  box-shadow: 0 8px 20px rgba(0,0,0,0.25); /* effetto raised */
}

/* CONTENITORE BLU INTERNO */
.wrapper {
  background: #1e4f8f;
  padding: 25px;
  border-radius: 12px;
  color: white;
}

.wrapper h1 {
  text-align: center;
  margin-bottom: 25px;
  font-size: 28px;
  font-weight: bold;
}

/* CONTENITORE INTERNO BIANCO */
.container {
  display: flex;
  background: #ffffff;
  border-radius: 10px;
  overflow: hidden;
  min-height: 450px;
  color: black;
}

/* COLONNA SINISTRA */
.tab-list {
  width: 30%;
  background: #f0f0f0;
  border-right: 1px solid #ccc;
}

.tab-button {
  display: block;
  width: 100%;
  padding: 14px 16px;
  border: none;
  border-bottom: 1px solid #ddd;
  background: transparent;
  text-align: left;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.3;
  white-space: normal;
}

.tab-button:hover {
  background: #e2e2e2;
}

.tab-button.active {
  background: #d0d0d0;
  font-weight: bold;
}

/* COLONNA DESTRA */
.tab-content-wrapper {
  width: 70%;
  padding: 25px;
}

.tab-content {
  display: none;
  animation: fadeIn 0.2s ease-in-out;
}

.tab-content.active {
  display: block;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

h2 {
  margin-bottom: 10px;
  font-size: 20px;
}

p {
  margin-bottom: 8px;
  font-size: 14px;
}
@media screen and (max-width: 480px) {

.wrapper h1 {
	font-size: 18px;
}

.tab-button {
	font-size: 15px;
	padding: 14px;
}

.tab-content-wrapper {
	padding: 10px;
}

p,
li,
span {
	font-size: 14px !important;
}
}
.tab-button {
  display: block;
  width: 100%;
  padding: 14px 16px;
  border: none;
  border-bottom: 1px solid #c9a44f;
  background: #d9a441; /* ocra */
  text-align: left;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.3;
  white-space: normal;
  color: #4a3a12;
  font-weight: bold;

  /* bordo stondato verso destra */
  border-top-right-radius: 14px;
  border-bottom-right-radius: 14px;

  /* effetto raised */
  box-shadow: 3px 3px 6px rgba(0,0,0,0.25);
}

/* TAB attivo */
.tab-button.active {
  background: #e8b85a;
  color: #2e240c;
}

/* TAB hover */
.tab-button:hover {
  background: #e0ad4f;
}

/* Primo tab (nord) con bordo superiore stondato */
.tab-button:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 18px;
}

/* Ultimo tab (sud) con bordo inferiore normale */
.tab-button:last-child {
  border-bottom-right-radius: 0;
}

/* =========================================
   VERSIONE TELEFONO E TABLET
   ========================================= */

@media screen and (max-width: 768px) {

    body {
        padding: 10px;
    }

    .wrapper {
        padding: 10px;
    }

    .container {
        flex-direction: column;
    }

    .tab-list {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #ccc;
    }

    .tab-content-wrapper {
        width: 100%;
        padding: 15px;
    }

    .wrapper h1 {
        font-size: 22px;
    }

    .tab-button {
        font-size: 16px;
        padding: 16px;
    }

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

@media screen and (max-width: 480px) {

    .wrapper h1 {
        font-size: 18px;
    }

    .tab-button {
        font-size: 15px;
        padding: 14px;
    }

    .tab-content-wrapper {
        padding: 10px;
    }

    p,
    li,
    span {
        font-size: 14px !important;
    }
}

.piccolo { font-size:12px; }
.medio   { font-size:14px; }
.grande  { font-size:18px; }
.tabIniziale { font-size:18px; font-weight:bold; font-style:italic; color:#990; }
.normalDark { font-size:12px; font-weight:bold; font-style:normal; color:black; }
.italicDark { font-size:12px; font-weight:bold; font-style:italic; color:black; }
.italicRed  { font-size:12px; font-weight:bold; font-style:italic; color:red;}
.bigItalicRed { font-size:18px; font-weight:bold; font-style:italic; color:red; }
.medioRed   { font-size:14px; font-weight:bold; font-style:italic; color:red; }
.normalBlue { font-size:12px; font-weight:bold;font-style:italic; color:blue; }

@media screen and (max-width:480px){

    .piccolo { font-size:14px; }
    .medio   { font-size:16px; }
    .grande  { font-size:18px; }
	
	.tabIniziale { font-size:20px; font-weight:bold; font-style:italic; color:#990; }
	.normalDark { font-size:14px; font-weight:bold; font-style:normal; color:black; }
	.italicDark { style="font-size:14px; font-weight:bold; font-style:italic; color:black; }
	.italicRed  { font-size:14px; font-weight:bold; font-style:italic; color:red;}
	.medioRed { font-size:16px; font-weight:bold; font-style:italic; color:red; }
	.bigItalicRed { font-size:20px; font-weight:bold; font-style:italic; color:red; }
	.normalBlue { font-size:14px; font-weight:bold;font-style:italic; color:blue; }
}