.elementor-11421 .elementor-element.elementor-element-862fac0{--display:flex;--min-height:35vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--margin-top:-150px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11421 .elementor-element.elementor-element-862fac0:not(.elementor-motion-effects-element-type-background), .elementor-11421 .elementor-element.elementor-element-862fac0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-11421 .elementor-element.elementor-element-56e5266{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-86bc52e{text-align:center;}.elementor-11421 .elementor-element.elementor-element-86bc52e .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:20px;font-weight:600;color:#E12833;}.elementor-11421 .elementor-element.elementor-element-510823e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-11421 .elementor-element.elementor-element-510823e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-11421 .elementor-element.elementor-element-259ca3c{--display:flex;--min-height:50vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-11421 .elementor-element.elementor-element-259ca3c:not(.elementor-motion-effects-element-type-background), .elementor-11421 .elementor-element.elementor-element-259ca3c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.scuoladellearti.com/wp-content/uploads/2024/12/MG_8493-scaled-e1758144768851.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-11421 .elementor-element.elementor-element-ac80ad9 > .elementor-widget-container{background-color:transparent;margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;background-image:linear-gradient(151deg, var( --e-global-color-accent ) 18%, var( --e-global-color-secondary ) 100%);}.elementor-11421 .elementor-element.elementor-element-ac80ad9.elementor-element{--align-self:flex-start;}.elementor-11421 .elementor-element.elementor-element-ac80ad9 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:40px;font-weight:600;color:var( --e-global-color-3909d51 );}.elementor-11421 .elementor-element.elementor-element-da3b8f2{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-01689db > .elementor-widget-container{background-color:var( --e-global-color-3909d51 );padding:30px 30px 30px 30px;}.elementor-11421 .elementor-element.elementor-element-8e7c27c{--display:flex;}.elementor-11421 .elementor-element.elementor-element-7578622 > .elementor-widget-container{background-color:var( --e-global-color-3909d51 );padding:30px 30px 30px 30px;}.elementor-11421 .elementor-element.elementor-element-081df8b{--display:flex;}.elementor-11421 .elementor-element.elementor-element-8333996 > .elementor-widget-container{background-color:var( --e-global-color-3909d51 );padding:30px 30px 30px 30px;}.elementor-11421 .elementor-element.elementor-element-175fe47{--display:flex;}.elementor-11421 .elementor-element.elementor-element-632088b > .elementor-widget-container{background-color:var( --e-global-color-3909d51 );padding:30px 30px 30px 30px;}.elementor-11421 .elementor-element.elementor-element-04e63d5{--display:flex;}.elementor-11421 .elementor-element.elementor-element-3c5404f > .elementor-widget-container{background-color:var( --e-global-color-3909d51 );padding:30px 30px 30px 30px;}.elementor-11421 .elementor-element.elementor-element-089f4f9{--display:flex;}.elementor-11421 .elementor-element.elementor-element-4c075cb > .elementor-widget-container{background-color:var( --e-global-color-3909d51 );padding:30px 30px 30px 30px;}.elementor-11421 .elementor-element.elementor-element-adad4f6{--display:flex;}.elementor-11421 .elementor-element.elementor-element-552d117{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-11421 .elementor-element.elementor-element-552d117:not(.elementor-motion-effects-element-type-background), .elementor-11421 .elementor-element.elementor-element-552d117 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-11421 .elementor-element.elementor-element-09b71aa{--display:flex;}.elementor-11421 .elementor-element.elementor-element-01d76cc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-11421 .elementor-element.elementor-element-01d76cc:not(.elementor-motion-effects-element-type-background), .elementor-11421 .elementor-element.elementor-element-01d76cc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-11421 .elementor-element.elementor-element-21ee4a1{--n-accordion-title-font-size:var( --e-global-typography-secondary-font-size );--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-title-normal-color:var( --e-global-color-3909d51 );--n-accordion-title-hover-color:var( --e-global-color-3909d51 );--n-accordion-title-active-color:var( --e-global-color-text );--n-accordion-icon-size:15px;}.elementor-11421 .elementor-element.elementor-element-21ee4a1 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{background-color:var( --e-global-color-accent );}.elementor-11421 .elementor-element.elementor-element-21ee4a1 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title:hover{background-color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-21ee4a1 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item[open] > .e-n-accordion-item-title{background-color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-21ee4a1 > .elementor-widget-container{margin:0px 0px 50px 0px;}:where( .elementor-11421 .elementor-element.elementor-element-21ee4a1 > .elementor-widget-container > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-11421 .elementor-element.elementor-element-96240ce{--display:flex;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:10;}.elementor-11421 .elementor-element.elementor-element-1a6174e > .elementor-widget-container{background-color:transparent;margin:0px 0px 0px 0px;padding:10px 10px 10px 10px;background-image:linear-gradient(151deg, var( --e-global-color-accent ) 18%, var( --e-global-color-secondary ) 100%);}.elementor-11421 .elementor-element.elementor-element-1a6174e.elementor-element{--align-self:flex-start;}.elementor-11421 .elementor-element.elementor-element-1a6174e .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:30px;font-weight:600;color:var( --e-global-color-3909d51 );}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-11421 .elementor-element.elementor-element-06509ed > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:25px;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-25px;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group.recaptcha_v3-bottomleft, .elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-11421 .elementor-element.elementor-element-06509ed .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-11421 .elementor-element.elementor-element-06509ed .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-11421 .elementor-element.elementor-element-06509ed .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group > label, .elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-type-html{padding-bottom:0px;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-field-group .elementor-select-wrapper::before{color:var( --e-global-color-primary );}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-11421 .elementor-element.elementor-element-06509ed .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button[type="submit"]{color:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-primary );color:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-11421 .elementor-element.elementor-element-06509ed{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-11421 .elementor-element.elementor-element-510823e{--width:83.358%;}}@media(max-width:1024px){.elementor-11421 .elementor-element.elementor-element-862fac0{--margin-top:-120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-11421 .elementor-element.elementor-element-ac80ad9 .elementor-heading-title{font-size:30px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-11421 .elementor-element.elementor-element-21ee4a1{--n-accordion-title-font-size:var( --e-global-typography-secondary-font-size );}.elementor-11421 .elementor-element.elementor-element-1a6174e .elementor-heading-title{font-size:30px;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-11421 .elementor-element.elementor-element-862fac0{--min-height:50vh;--margin-top:-120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-11421 .elementor-element.elementor-element-ac80ad9 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-11421 .elementor-element.elementor-element-ac80ad9 .elementor-heading-title{font-size:20px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-11421 .elementor-element.elementor-element-21ee4a1{--n-accordion-title-font-size:var( --e-global-typography-secondary-font-size );}.elementor-11421 .elementor-element.elementor-element-1a6174e .elementor-heading-title{font-size:20px;}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );}.elementor-11421 .elementor-element.elementor-element-06509ed .elementor-button{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS *//* RESET E BASE */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Arial', 'Helvetica', sans-serif;
    line-height: 1.7;
    color: #5a5a5a;
    background: #f8f6f3;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* TIPOGRAFIA */
h1, h2, h3, h4 {
    color: #3a3a3a;
    font-weight: 600;
}

h2 {
    font-size: 2.5em;
    margin-bottom: 15px;
}

h3 {
    font-size: 1.8em;
    margin-bottom: 12px;
}

/* SEZIONI */
.section {
    padding: 80px 0;
}

.section-light {
    background: #ffffff;
}

.section-soft {
    background: #f8f6f3;
}

.section-accent {
    background: #e8eef2;
}

.section-title {
    text-align: center;
    font-size: 2.5em;
    margin-bottom: 15px;
    color: #3a3a3a;
}

.section-subtitle {
    text-align: center;
    font-size: 1.2em;
    color: #6a6a6a;
    margin-bottom: 50px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}

/* LAYOUT TESTO + FOTO ALTERNATI */
.text-image-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    margin: 60px 0;
}

.text-image-row.reverse {
    direction: rtl;
}

.text-image-row.reverse > * {
    direction: ltr;
}

.text-content h3 {
    color: #6ba3c8;
    margin-bottom: 20px;
}

.text-content p {
    margin-bottom: 15px;
    line-height: 1.8;
}

.text-content ul {
    list-style: none;
    padding-left: 0;
}

.text-content ul li {
    padding: 8px 0 8px 25px;
    position: relative;
}

.text-content ul li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #6ba3c8;
    font-weight: bold;
}

.image-content {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.image-content img {
    width: 100%;
    height: auto;
    display: block;
}

/* PLACEHOLDER IMMAGINI */
.img-placeholder {
    background: #e8eef2;
    padding: 80px 20px;
    text-align: center;
    border-radius: 8px;
    color: #6ba3c8;
}

.img-placeholder strong {
    display: block;
    font-size: 1.1em;
    margin-bottom: 8px;
}

.img-placeholder small {
    color: #8a8a8a;
}

/* CARD GRID */
.card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 50px;
}

.card {
    background: #ffffff;
    padding: 35px 25px;
    border-radius: 8px;
    box-shadow: 0 2px 15px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}

.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 25px rgba(0,0,0,0.1);
}

.card-icon {
    width: 70px;
    height: 70px;
    background: #e8eef2;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 2em;
    color: #6ba3c8;
}

.card h3 {
    font-size: 1.4em;
    margin-bottom: 15px;
    text-align: center;
    color: #3a3a3a;
}

.card p {
    text-align: center;
    line-height: 1.7;
    color: #6a6a6a;
}

/* LISTA NUMERATA */
.numbered-list {
    margin-top: 50px;
}

.numbered-item {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 25px;
    margin-bottom: 30px;
    padding: 25px;
    background: #ffffff;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.numbered-item:hover {
    background: #f8f6f3;
    transform: translateX(5px);
}

.item-number {
    font-size: 2.5em;
    font-weight: bold;
    color: #a8c5da;
    text-align: center;
}

.item-content h3 {
    font-size: 1.4em;
    margin-bottom: 10px;
    color: #3a3a3a;
}

.item-content p {
    color: #6a6a6a;
    line-height: 1.7;
}

/* BOX PREZZI */
.pricing-section {
    padding: 80px 0;
    background: #e8eef2;
}

.pricing-container {
    background: #ffffff;
    padding: 50px;
    border-radius: 12px;
    max-width: 900px;
    margin: 40px auto;
    box-shadow: 0 5px 30px rgba(0,0,0,0.08);
}

.pricing-container h2 {
    font-size: 2.2em;
    margin-bottom: 25px;
    text-align: center;
    color: #6ba3c8;
}

.dates-highlight {
    text-align: center;
    font-size: 1.4em;
    color: #3a3a3a;
    margin: 20px 0 30px;
    font-weight: 600;
}

.price-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin: 40px 0;
}

.price-box {
    border: 2px solid #a8c5da;
    padding: 35px 25px;
    border-radius: 10px;
    text-align: center;
    transition: all 0.3s ease;
}

.price-box:hover {
    border-color: #6ba3c8;
    box-shadow: 0 5px 20px rgba(107,163,200,0.15);
}

.price-box.featured {
    background: #6ba3c8;
    color: white;
    border-color: #6ba3c8;
    transform: scale(1.03);
}

.price-box h3 {
    font-size: 1.6em;
    margin-bottom: 15px;
}

.price-box.featured h3 {
    color: white;
}

.price-amount {
    font-size: 2.8em;
    font-weight: bold;
    margin: 20px 0;
    color: #6ba3c8;
}

.price-box.featured .price-amount {
    color: white;
}

.price-details {
    margin: 20px 0;
    line-height: 1.9;
    font-size: 1.05em;
}

.contact-box {
    margin-top: 40px;
    padding: 30px;
    background: #f8f6f3;
    border-radius: 8px;
    text-align: center;
}

.contact-box p {
    margin: 15px 0;
    font-size: 1.1em;
}

.contact-box strong {
    color: #6ba3c8;
}

.contact-box a {
    color: #6ba3c8;
    text-decoration: none;
    font-weight: 600;
}

.contact-box a:hover {
    text-decoration: underline;
}

.guarantee-badge {
    display: inline-block;
    background: #e8f4e8;
    color: #4a8a4a;
    padding: 12px 25px;
    border-radius: 25px;
    margin: 20px 0;
    font-weight: 600;
}

/* PROGRAMMA */
.program-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 40px;
    margin-top: 50px;
}

.program-box {
    background: #ffffff;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 3px 20px rgba(0,0,0,0.06);
}

.program-box h3 {
    font-size: 1.8em;
    margin-bottom: 15px;
    color: #6ba3c8;
}

.recommended {
    display: inline-block;
    background: #6ba3c8;
    color: white;
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 0.85em;
    margin-bottom: 15px;
    font-weight: 600;
}

.program-box h4 {
    font-size: 1.3em;
    margin: 25px 0 12px;
    color: #3a3a3a;
}

.program-box ul {
    list-style: none;
    padding-left: 0;
}

.program-box ul li {
    padding: 10px 0 10px 28px;
    position: relative;
    color: #6a6a6a;
    line-height: 1.6;
}

.program-box ul li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #6ba3c8;
    font-weight: bold;
    font-size: 1.2em;
}

/* TESTIMONIANZE */
.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-top: 50px;
}

.testimonial {
    background: #ffffff;
    padding: 35px;
    border-radius: 10px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.06);
}

.stars {
    color: #f5a623;
    font-size: 1.3em;
    margin-bottom: 15px;
}

.testimonial-text {
    color: #6a6a6a;
    line-height: 1.8;
    margin-bottom: 20px;
    font-style: italic;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.author-initial {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #a8c5da;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 1.1em;
}

.author-name {
    font-weight: 600;
    color: #3a3a3a;
}

.author-course {
    font-size: 0.9em;
    color: #8a8a8a;
}

/* FAQ */
.faq-container {
    max-width: 900px;
    margin: 50px auto;
}

.faq-item {
    background: #ffffff;
    padding: 30px;
    margin-bottom: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.05);
}

.faq-question {
    font-size: 1.25em;
    font-weight: 600;
    color: #6ba3c8;
    margin-bottom: 12px;
}

.faq-answer {
    color: #6a6a6a;
    line-height: 1.8;
}

/* DOCENTI */
.teachers-row {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 50px;
    align-items: center;
    margin-top: 50px;
}

.teachers-photos {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.teacher-img {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    border: 4px solid #ffffff;
}

.teachers-text h3 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #6ba3c8;
}

.teachers-text p {
    margin-bottom: 15px;
    line-height: 1.8;
}

.clients-box {
    margin-top: 25px;
    padding: 20px;
    background: #e8eef2;
    border-radius: 8px;
    border-left: 4px solid #6ba3c8;
}

/* BOTTONI */
.btn {
    display: inline-block;
    padding: 16px 45px;
    font-size: 1.1em;
    font-weight: 600;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    text-align: center;
}

.btn-primary {
    background: #E12833;
    color: white;
    box-shadow: 0 4px 15px rgba(225,40,51,0.3);
}

.btn-primary:hover {
    background: #c22030;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(225,40,51,0.4);
}

.btn-secondary {
    background: transparent;
    color: #6ba3c8;
    border: 2px solid #6ba3c8;
}

.btn-secondary:hover {
    background: #6ba3c8;
    color: white;
}

/* HIGHLIGHT BOX */
.highlight-box {
    background: #fff8e6;
    border-left: 4px solid #f5a623;
    padding: 20px 25px;
    margin: 25px 0;
    border-radius: 6px;
}

.highlight-box p {
    margin: 0;
    color: #8a6d3b;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .section {
        padding: 50px 0;
    }
    
    h2 {
        font-size: 2em;
    }
    
    .text-image-row {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .text-image-row.reverse {
        direction: ltr;
    }
    
    .card-grid,
    .program-grid,
    .testimonials-grid {
        grid-template-columns: 1fr;
    }
    
    .price-grid {
        grid-template-columns: 1fr;
    }
    
    .numbered-item {
        grid-template-columns: 60px 1fr;
        gap: 15px;
    }
    
    .item-number {
        font-size: 2em;
    }
    
    .teachers-row {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    .pricing-container {
        padding: 30px 20px;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0 15px;
    }
    
    h2 {
        font-size: 1.8em;
    }
    
    .card,
    .program-box,
    .testimonial,
    .faq-item {
        padding: 25px 20px;
    }
}
/* RESPONSIVE MOBILE */
@media (max-width: 768px) {
    div[style*="grid-template-columns"] {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
}
 /* RESET E BASE */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Arial', 'Helvetica', sans-serif;
    line-height: 1.7;
    color: #5a5a5a;
    background: #f8f6f3;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* TIPOGRAFIA */
h1, h2, h3, h4 {
    color: #3a3a3a;
    font-weight: 600;
}

h2 {
    font-size: 2.5em;
    margin-bottom: 15px;
}

h3 {
    font-size: 1.8em;
    margin-bottom: 12px;
}

/* SEZIONI */
.section {
    padding: 80px 0;
}

.section-light {
    background: #ffffff;
}

.section-soft {
    background: #f8f6f3;
}

.section-accent {
    background: #e8eef2;
}

.section-title {
    text-align: center;
    font-size: 2.5em;
    margin-bottom: 15px;
    color: #3a3a3a;
}

.section-subtitle {
    text-align: center;
    font-size: 1.2em;
    color: #6a6a6a;
    margin-bottom: 50px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}

/* LAYOUT TESTO + FOTO ALTERNATI */
.text-image-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    margin: 60px 0;
}

.text-image-row.reverse {
    direction: rtl;
}

.text-image-row.reverse > * {
    direction: ltr;
}

.text-content h3 {
    color: #6ba3c8;
    margin-bottom: 20px;
}

.text-content p {
    margin-bottom: 15px;
    line-height: 1.8;
}

.text-content ul {
    list-style: none;
    padding-left: 0;
}

.text-content ul li {
    padding: 8px 0 8px 25px;
    position: relative;
}

.text-content ul li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #6ba3c8;
    font-weight: bold;
}

.image-content {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.image-content img {
    width: 100%;
    height: auto;
    display: block;
}

/* PLACEHOLDER IMMAGINI */
.img-placeholder {
    background: #e8eef2;
    padding: 80px 20px;
    text-align: center;
    border-radius: 8px;
    color: #6ba3c8;
}

.img-placeholder strong {
    display: block;
    font-size: 1.1em;
    margin-bottom: 8px;
}

.img-placeholder small {
    color: #8a8a8a;
}

/* CARD GRID */
.card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 50px;
}

.card {
    background: #ffffff;
    padding: 35px 25px;
    border-radius: 8px;
    box-shadow: 0 2px 15px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}

.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 25px rgba(0,0,0,0.1);
}

.card-icon {
    width: 70px;
    height: 70px;
    background: #e8eef2;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 2em;
    color: #6ba3c8;
}

.card h3 {
    font-size: 1.4em;
    margin-bottom: 15px;
    text-align: center;
    color: #3a3a3a;
}

.card p {
    text-align: center;
    line-height: 1.7;
    color: #6a6a6a;
}

/* LISTA NUMERATA */
.numbered-list {
    margin-top: 50px;
}

.numbered-item {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 25px;
    margin-bottom: 30px;
    padding: 25px;
    background: #ffffff;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.numbered-item:hover {
    background: #f8f6f3;
    transform: translateX(5px);
}

.item-number {
    font-size: 2.5em;
    font-weight: bold;
    color: #a8c5da;
    text-align: center;
}

.item-content h3 {
    font-size: 1.4em;
    margin-bottom: 10px;
    color: #3a3a3a;
}

.item-content p {
    color: #6a6a6a;
    line-height: 1.7;
}

/* BOX PREZZI */
.pricing-section {
    padding: 80px 0;
    background: #e8eef2;
}

.pricing-container {
    background: #ffffff;
    padding: 50px;
    border-radius: 12px;
    max-width: 900px;
    margin: 40px auto;
    box-shadow: 0 5px 30px rgba(0,0,0,0.08);
}

.pricing-container h2 {
    font-size: 2.2em;
    margin-bottom: 25px;
    text-align: center;
    color: #6ba3c8;
}

.dates-highlight {
    text-align: center;
    font-size: 1.4em;
    color: #3a3a3a;
    margin: 20px 0 30px;
    font-weight: 600;
}

.price-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin: 40px 0;
}

.price-box {
    border: 2px solid #a8c5da;
    padding: 35px 25px;
    border-radius: 10px;
    text-align: center;
    transition: all 0.3s ease;
}

.price-box:hover {
    border-color: #6ba3c8;
    box-shadow: 0 5px 20px rgba(107,163,200,0.15);
}

.price-box.featured {
    background: #6ba3c8;
    color: white;
    border-color: #6ba3c8;
    transform: scale(1.03);
}

.price-box h3 {
    font-size: 1.6em;
    margin-bottom: 15px;
}

.price-box.featured h3 {
    color: white;
}

.price-amount {
    font-size: 2.8em;
    font-weight: bold;
    margin: 20px 0;
    color: #6ba3c8;
}

.price-box.featured .price-amount {
    color: white;
}

.price-details {
    margin: 20px 0;
    line-height: 1.9;
    font-size: 1.05em;
}

.contact-box {
    margin-top: 40px;
    padding: 30px;
    background: #f8f6f3;
    border-radius: 8px;
    text-align: center;
}

.contact-box p {
    margin: 15px 0;
    font-size: 1.1em;
}

.contact-box strong {
    color: #6ba3c8;
}

.contact-box a {
    color: #6ba3c8;
    text-decoration: none;
    font-weight: 600;
}

.contact-box a:hover {
    text-decoration: underline;
}

.guarantee-badge {
    display: inline-block;
    background: #e8f4e8;
    color: #4a8a4a;
    padding: 12px 25px;
    border-radius: 25px;
    margin: 20px 0;
    font-weight: 600;
}

/* PROGRAMMA */
.program-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 40px;
    margin-top: 50px;
}

.program-box {
    background: #ffffff;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 3px 20px rgba(0,0,0,0.06);
}

.program-box h3 {
    font-size: 1.8em;
    margin-bottom: 15px;
    color: #6ba3c8;
}

.recommended {
    display: inline-block;
    background: #6ba3c8;
    color: white;
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 0.85em;
    margin-bottom: 15px;
    font-weight: 600;
}

.program-box h4 {
    font-size: 1.3em;
    margin: 25px 0 12px;
    color: #3a3a3a;
}

.program-box ul {
    list-style: none;
    padding-left: 0;
}

.program-box ul li {
    padding: 10px 0 10px 28px;
    position: relative;
    color: #6a6a6a;
    line-height: 1.6;
}

.program-box ul li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #6ba3c8;
    font-weight: bold;
    font-size: 1.2em;
}

/* TESTIMONIANZE */
.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-top: 50px;
}

.testimonial {
    background: #ffffff;
    padding: 35px;
    border-radius: 10px;
    box-shadow: 0 3px 15px rgba(0,0,0,0.06);
}

.stars {
    color: #f5a623;
    font-size: 1.3em;
    margin-bottom: 15px;
}

.testimonial-text {
    color: #6a6a6a;
    line-height: 1.8;
    margin-bottom: 20px;
    font-style: italic;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.author-initial {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #a8c5da;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 1.1em;
}

.author-name {
    font-weight: 600;
    color: #3a3a3a;
}

.author-course {
    font-size: 0.9em;
    color: #8a8a8a;
}

/* FAQ */
.faq-container {
    max-width: 900px;
    margin: 50px auto;
}

.faq-item {
    background: #ffffff;
    padding: 30px;
    margin-bottom: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.05);
}

.faq-question {
    font-size: 1.25em;
    font-weight: 600;
    color: #6ba3c8;
    margin-bottom: 12px;
}

.faq-answer {
    color: #6a6a6a;
    line-height: 1.8;
}

/* DOCENTI */
.teachers-row {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 50px;
    align-items: center;
    margin-top: 50px;
}

.teachers-photos {
    display: flex;
    gap: 5px;
    justify-content: center;
}

.teacher-img {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    border: 4px solid #ffffff;
}

.teachers-text h3 {
    font-size: 2em;
    margin-bottom: 20px;
    color: #6ba3c8;
}

.teachers-text p {
    margin-bottom: 15px;
    line-height: 1.8;
}

.clients-box {
    margin-top: 25px;
    padding: 20px;
    background: #e8eef2;
    border-radius: 8px;
    border-left: 4px solid #6ba3c8;
}

/* BOTTONI */
.btn {
    display: inline-block;
    padding: 16px 45px;
    font-size: 1.1em;
    font-weight: 600;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    text-align: center;
}

.btn-primary {
    background: #E12833;
    color: white;
    box-shadow: 0 4px 15px rgba(225,40,51,0.3);
}

.btn-primary:hover {
    background: #c22030;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(225,40,51,0.4);
}

.btn-secondary {
    background: transparent;
    color: #6ba3c8;
    border: 2px solid #6ba3c8;
}

.btn-secondary:hover {
    background: #6ba3c8;
    color: white;
}

/* HIGHLIGHT BOX */
.highlight-box {
    background: #fff8e6;
    border-left: 4px solid #f5a623;
    padding: 20px 25px;
    margin: 25px 0;
    border-radius: 6px;
}

.highlight-box p {
    margin: 0;
    color: #8a6d3b;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .section {
        padding: 50px 0;
    }
    
    h2 {
        font-size: 2em;
    }
    
    .text-image-row {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .text-image-row.reverse {
        direction: ltr;
    }
    
    .card-grid,
    .program-grid,
    .testimonials-grid {
        grid-template-columns: 1fr;
    }
    
    .price-grid {
        grid-template-columns: 1fr;
    }
    
    .numbered-item {
        grid-template-columns: 60px 1fr;
        gap: 15px;
    }
    
    .item-number {
        font-size: 2em;
    }
    
    .teachers-row {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    .pricing-container {
        padding: 30px 20px;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0 15px;
    }
    
    h2 {
        font-size: 1.8em;
    }
    
    .card,
    .program-box,
    .testimonial,
    .faq-item {
        padding: 25px 20px;
    }
}/* End custom CSS */