/* Stile delle pagine portate da remeamilano.it (generato da porta_remea.py, non modificare a mano) */
.rm{--charcoal: #26352D; --deep-olive: #3A463C; --sage: #7A8B72; --soft-sage: #A8B5A3; --pale-stone: #F1EBE0; --ivory: #F7F3EC; --warm-beige: #E7D0C0; --clay: #D6CBBE; --warm-grey: #6F746E; --font-title: 'Cormorant Garamond', Georgia, 'Times New Roman', serif; --font-body: 'Manrope', Arial, Helvetica, sans-serif; --max-width: 1200px; --section-pad: clamp(4rem, 8vw, 7rem);}
:where(.rm) *,:where(.rm) *::before,:where(.rm) *::after{margin: 0; padding: 0; box-sizing: border-box;}
.rm{font-size: 16px; scroll-behavior: smooth; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
.rm{font-family: var(--font-body); font-weight: 400; color: var(--charcoal); background: var(--ivory); line-height: 1.7; letter-spacing: 0.01em; overflow-x: hidden;}
:where(.rm) img{max-width: 100%; height: auto; display: block;}
:where(.rm) a{color: inherit; text-decoration: none;}
.rm-container{width: 90%; max-width: var(--max-width); margin: 0 auto;}
.rm-section-label{font-family: var(--font-body); font-size: 0.7rem; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--warm-grey); margin-bottom: 1.2rem;}
.rm-section-title{font-family: var(--font-title); font-weight: 400; font-size: clamp(2rem, 4.5vw, 3.2rem); line-height: 1.15; color: var(--charcoal); letter-spacing: -0.01em;}
.rm-section-title em{font-style: italic; color: var(--sage);}
.rm-body-text{font-size: 0.95rem; line-height: 1.8; color: var(--deep-olive); max-width: 560px;}
.rm-btn-primary{display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--font-body); font-size: 0.78rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ivory); background: var(--charcoal); padding: 1rem 2.2rem; border: none; cursor: pointer; transition: background 0.4s ease, transform 0.3s ease;}
.rm-btn-primary:hover{background: var(--deep-olive); transform: translateY(-1px);}
.rm-btn-outline{display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--font-body); font-size: 0.75rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--charcoal); background: transparent; padding: 0.85rem 0; border: none; border-bottom: 1px solid var(--charcoal); cursor: pointer; transition: color 0.3s ease, border-color 0.3s ease;}
.rm-btn-outline:hover{color: var(--sage); border-color: var(--sage);}
.rm-btn-outline .rm-arrow{transition: transform 0.3s ease;}
.rm-btn-outline:hover .rm-arrow{transform: translateX(4px);}
.rm-btn-primary-light{display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--font-body); font-size: 0.78rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--charcoal); background: var(--ivory); padding: 1rem 2.5rem; border: none; cursor: pointer; transition: background 0.4s ease, transform 0.3s ease;}
.rm-btn-primary-light:hover{background: var(--soft-sage); transform: translateY(-1px);}
.rm-page-hero{padding-top: 7rem; padding-bottom: var(--section-pad); background: var(--pale-stone);}
.rm-page-hero-inner{display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center;}
.rm-page-hero-content{opacity: 0; animation: rm-fadeUp 0.8s ease 0.2s forwards;}
.rm-page-hero h1{font-family: var(--font-title); font-weight: 300; font-size: clamp(2.6rem, 5vw, 3.8rem); line-height: 1.1; color: var(--charcoal); letter-spacing: -0.02em; margin-bottom: 1.5rem;}
.rm-page-hero h1 em{font-style: italic; color: var(--sage);}
.rm-page-hero-desc{font-size: 1rem; line-height: 1.8; color: var(--deep-olive); max-width: 460px;}
.rm-page-hero-image{height: 55vh; min-height: 400px; opacity: 0; animation: rm-fadeIn 1s ease 0.4s forwards;}
.rm-page-hero-image img{width: 100%; height: 100%; object-fit: cover;}
.rm-faq{padding: var(--section-pad) 0; background: var(--pale-stone);}
.rm-faq-header{text-align: center; margin-bottom: 3rem;}
.rm-faq-list{max-width: 720px; margin: 0 auto;}
.rm-faq-item{border-bottom: 1px solid rgba(38, 53, 45, 0.08);}
.rm-faq-question{width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 1.5rem 0; background: none; border: none; cursor: pointer; text-align: left; font-family: var(--font-title); font-size: 1.15rem; font-weight: 400; color: var(--charcoal);}
.rm-faq-question .rm-icon{font-size: 1.2rem; color: var(--sage); transition: transform 0.3s ease; flex-shrink: 0; margin-left: 1rem;}
.rm-faq-item[open] .rm-faq-question .rm-icon{transform: rotate(45deg);}
.rm-faq-answer{max-height: 0; overflow: hidden; transition: max-height 0.4s ease;}
.rm-faq-answer-inner{padding-bottom: 1.5rem; font-size: 0.9rem; line-height: 1.8; color: var(--deep-olive); max-width: 600px;}
.rm-cta-final{padding: clamp(4rem, 8vw, 6rem) 0; background: var(--charcoal); text-align: center; color: var(--ivory);}
.rm-cta-final .rm-section-label{color: var(--warm-grey);}
.rm-cta-final .rm-section-title{color: var(--ivory); margin-bottom: 1rem;}
.rm-cta-final .rm-section-title em{color: var(--soft-sage);}
.rm-cta-final-desc{font-size: 0.95rem; line-height: 1.8; color: rgba(247, 243, 236, 0.65); max-width: 480px; margin: 0 auto 2.5rem;}
@keyframes rm-fadeUp{from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); }}
@keyframes rm-fadeIn{from { opacity: 0; } to { opacity: 1; }}
.rm-percorso-steps{display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;}
.rm-percorso-step{padding: 2.5rem 2rem; border-left: 1px solid var(--pale-stone);}
.rm-percorso-step:first-child{border-left: none;}
.rm-step-number{font-family: var(--font-title); font-size: 3.5rem; font-weight: 300; color: var(--soft-sage); line-height: 1; margin-bottom: 1.2rem; opacity: 0.7;}
.rm-percorso-step h3{font-family: var(--font-title); font-size: 1.35rem; font-weight: 400; color: var(--charcoal); margin-bottom: 0.8rem;}
.rm-percorso-step p{font-size: 0.88rem; line-height: 1.8; color: var(--deep-olive);}
.rm-ambiti{padding: var(--section-pad) 0; background: var(--pale-stone);}
.rm-ambiti-grid{display: grid; grid-template-columns: 5fr 7fr; gap: 4rem; align-items: start;}
.rm-ambiti-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-ambiti-text{font-size: 0.95rem; line-height: 1.85; color: var(--deep-olive); max-width: 440px; margin-bottom: 2rem;}
.rm-ambiti-list{display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem;}
.rm-ambito-item{background: var(--ivory); padding: 1.8rem 1.5rem; transition: transform 0.3s;}
.rm-ambito-item:hover{transform: translateY(-2px);}
.rm-ambito-item h4{font-family: var(--font-title); font-size: 1.1rem; font-weight: 400; color: var(--charcoal); margin-bottom: 0.5rem;}
.rm-ambito-item p{font-size: 0.82rem; line-height: 1.7; color: var(--deep-olive);}
.rm-metodo{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-metodo-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center;}
.rm-metodo-image img{width: 100%; height: 480px; object-fit: cover;}
.rm-metodo-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-metodo-text{font-size: 0.95rem; line-height: 1.85; color: var(--deep-olive); max-width: 500px; margin-bottom: 1rem;}
.rm-metodo-cta{margin-top: 2rem; display: flex; align-items: center; gap: 2rem;}
@media (max-width: 1024px){.rm-percorso-steps{grid-template-columns: 1fr;}.rm-percorso-step{border-left: none; border-top: 1px solid var(--pale-stone);}.rm-percorso-step:first-child{border-top: none;}.rm-ambiti-grid{grid-template-columns: 1fr; gap: 2.5rem;}.rm-ambiti-list{grid-template-columns: 1fr;}.rm-metodo-grid{grid-template-columns: 1fr; gap: 2.5rem;}.rm-metodo-image img{height: 360px;}}
@media (max-width: 640px){.rm-metodo-cta{flex-direction: column; align-items: flex-start; gap: 1rem;}}
@media (max-width: 1024px){.rm-page-hero-inner{grid-template-columns: 1fr; gap: 2rem;}.rm-page-hero-image{height: 45vh; min-height: 300px;}}
@media (max-width: 640px){.rm-page-hero{padding-top: 5.5rem;}.rm-page-hero h1{font-size: 2.2rem;}}
@media (max-width: 768px){.rm{padding-bottom: 60px;}}
@media (max-width: 768px){.rm{padding-bottom: 52px;}}
:where(.rm) img{-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; pointer-events: auto; -webkit-touch-callout: none;}
@media (prefers-reduced-motion: reduce){.rm-page-hero-image,.rm-page-hero-content{opacity: 1 !important; transform: none !important; animation: none !important;}}
.rm-ambito-item,.rm-ambito-pp-card,.rm-fase-card,.rm-indicazione-card,.rm-meccanismo-card,.rm-sintomo-card{border-radius: 18px !important; transition: transform .35s cubic-bezier(0.4,0,0.2,1), box-shadow .35s cubic-bezier(0.4,0,0.2,1) !important;}
.rm-ambito-item:hover,.rm-ambito-pp-card:hover,.rm-fase-card:hover,.rm-indicazione-card:hover,.rm-meccanismo-card:hover,.rm-sintomo-card:hover{transform: translateY(-5px); box-shadow: 0 16px 44px rgba(38,53,45,0.12);}
.rm-btn-primary,.rm-btn-primary-light,:where(.rm) button.rm-btn-primary,:where(.rm) a.rm-btn-primary,.rm-metodo-cta{border-radius: 14px !important; transition: background .3s ease, transform .25s ease, box-shadow .25s ease !important; box-shadow: 0 2px 10px rgba(38,53,45,0.10);}
.rm-btn-primary:hover,.rm-btn-primary-light:hover,.rm-metodo-cta:hover{transform: translateY(-2px); box-shadow: 0 8px 22px rgba(38,53,45,0.18);}
.rm-btn-outline{border-radius: 14px !important; border: 1.5px solid var(--charcoal) !important; border-bottom: 1.5px solid var(--charcoal) !important; padding: 1rem 2.2rem !important; background: transparent; box-shadow: none !important; transition: background .3s ease, color .3s ease, transform .25s ease !important;}
.rm-btn-outline:hover{background: var(--charcoal); color: var(--ivory) !important; transform: translateY(-2px); box-shadow: 0 8px 22px rgba(38,53,45,0.16) !important;}
.rm-page-hero-image img,.rm-metodo-image img,.rm-cose-image img,.rm-contesto-image img{border-radius: 16px;}
.rm-section-label{border-radius: 999px;}
.rm-contesto{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-contesto-grid{display: grid; grid-template-columns: 6fr 5fr; gap: 4rem; align-items: start;}
.rm-contesto-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-contesto-text{font-size: .95rem; line-height: 1.85; color: var(--deep-olive); max-width: 520px; margin-bottom: 1rem;}
.rm-contesto-quote{margin-top: 2rem; padding: 2rem; background: var(--pale-stone); border-left: 3px solid var(--sage);}
.rm-contesto-quote p{font-family: var(--font-title); font-size: 1.1rem; font-style: italic; line-height: 1.6; color: var(--deep-olive);}
.rm-contesto-image img{width: 100%; height: 480px; object-fit: cover;}
.rm-fasi{padding: var(--section-pad) 0; background: var(--charcoal); color: var(--ivory);}
.rm-fasi-header{text-align: center; margin-bottom: 3.5rem;}
.rm-fasi-header .rm-section-label{color: var(--warm-grey);}
.rm-fasi-header .rm-section-title{color: var(--ivory);}
.rm-fasi-header .rm-section-title em{color: var(--soft-sage);}
.rm-fasi-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem;}
.rm-fase-card{padding: 2.5rem 2rem; border: 1px solid rgba(247, 243, 236,.08); text-align: center; transition: border-color .4s;}
.rm-fase-card:hover{border-color: var(--soft-sage);}
.rm-fase-number{font-family: var(--font-title); font-size: 2.5rem; font-weight: 300; color: var(--soft-sage); line-height: 1; margin-bottom: 1rem; opacity: .6;}
.rm-fase-card h3{font-family: var(--font-title); font-size: 1.3rem; font-weight: 400; font-style: italic; color: var(--ivory); margin-bottom: .7rem;}
.rm-fase-card p{font-size: .85rem; line-height: 1.75; color: rgba(247, 243, 236,.6); max-width: 280px; margin: 0 auto;}
.rm-ambiti-pp{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-ambiti-pp-header{max-width: 640px; margin-bottom: 3rem;}
.rm-ambiti-pp-header .rm-section-title{margin-top: .5rem; margin-bottom: 1rem;}
.rm-ambiti-pp-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem;}
.rm-ambito-pp-card{padding: 2rem 1.8rem; background: var(--pale-stone); position: relative; overflow: hidden; transition: transform .3s;}
.rm-ambito-pp-card:hover{transform: translateY(-3px);}
.rm-ambito-pp-line{position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: var(--sage); transform: scaleX(0); transform-origin: left; transition: transform .5s;}
.rm-ambito-pp-card:hover .rm-ambito-pp-line{transform: scaleX(1);}
.rm-ambito-pp-card h4{font-family: var(--font-title); font-size: 1.15rem; font-weight: 400; color: var(--charcoal); margin-bottom: .6rem;}
.rm-ambito-pp-card p{font-size: .85rem; line-height: 1.75; color: var(--deep-olive);}
@media (max-width: 1024px){.rm-contesto-grid{grid-template-columns: 1fr; gap: 2.5rem;}.rm-contesto-image img{height: 360px;}.rm-fasi-grid{grid-template-columns: 1fr; gap: 1.5rem;}.rm-ambiti-pp-grid{grid-template-columns: 1fr;}}
.rm-spiegazione{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-spiegazione-grid{display: grid; grid-template-columns: 6fr 5fr; gap: 4rem; align-items: start;}
.rm-spiegazione-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-spiegazione-text{font-size: .95rem; line-height: 1.85; color: var(--deep-olive); max-width: 520px; margin-bottom: 1rem;}
.rm-spiegazione-image img{width: 100%; height: 480px; object-fit: cover;}
.rm-sintomi{padding: var(--section-pad) 0; background: var(--charcoal); color: var(--ivory);}
.rm-sintomi-header{text-align: center; margin-bottom: 3.5rem;}
.rm-sintomi-header .rm-section-label{color: var(--warm-grey);}
.rm-sintomi-header .rm-section-title{color: var(--ivory);}
.rm-sintomi-header .rm-section-title em{color: var(--soft-sage);}
.rm-sintomi-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem;}
.rm-sintomo-card{padding: 2rem 1.8rem; border: 1px solid rgba(247, 243, 236,.08); transition: border-color .4s;}
.rm-sintomo-card:hover{border-color: var(--soft-sage);}
.rm-sintomo-card h4{font-family: var(--font-title); font-size: 1.15rem; font-weight: 400; font-style: italic; color: var(--ivory); margin-bottom: .5rem;}
.rm-sintomo-card p{font-size: .84rem; line-height: 1.7; color: rgba(247, 243, 236,.6);}
@media (max-width: 1024px){.rm-spiegazione-grid{grid-template-columns: 1fr; gap: 2.5rem;}.rm-spiegazione-image img{height: 360px;}.rm-sintomi-grid{grid-template-columns: 1fr;}}
.rm-cose{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-cose-grid{display: grid; grid-template-columns: 6fr 5fr; gap: 4rem; align-items: start;}
.rm-cose-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-cose-text{font-size: 0.95rem; line-height: 1.85; color: var(--deep-olive); max-width: 520px; margin-bottom: 1rem;}
.rm-cose-image img{width: 100%; height: 480px; object-fit: cover;}
.rm-meccanismo{padding: var(--section-pad) 0; background: var(--charcoal); color: var(--ivory);}
.rm-meccanismo-header{text-align: center; margin-bottom: 3.5rem;}
.rm-meccanismo-header .rm-section-label{color: var(--warm-grey);}
.rm-meccanismo-header .rm-section-title{color: var(--ivory);}
.rm-meccanismo-header .rm-section-title em{color: var(--soft-sage);}
.rm-meccanismo-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem;}
.rm-meccanismo-card{padding: 2.5rem 2rem; border: 1px solid rgba(247, 243, 236,.08); text-align: center; transition: border-color .4s;}
.rm-meccanismo-card:hover{border-color: var(--soft-sage);}
.rm-meccanismo-card h3{font-family: var(--font-title); font-size: 1.3rem; font-weight: 400; font-style: italic; color: var(--ivory); margin-bottom: .7rem;}
.rm-meccanismo-card p{font-size: .85rem; line-height: 1.75; color: rgba(247, 243, 236,.6); max-width: 280px; margin: 0 auto;}
.rm-indicazioni{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-indicazioni-header{max-width: 640px; margin-bottom: 3rem;}
.rm-indicazioni-header .rm-section-title{margin-top: .5rem; margin-bottom: 1rem;}
.rm-indicazioni-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem;}
.rm-indicazione-card{padding: 2rem 1.8rem; background: var(--pale-stone); position: relative; overflow: hidden; transition: transform .3s;}
.rm-indicazione-card:hover{transform: translateY(-3px);}
.rm-indicazione-line{position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: var(--sage); transform: scaleX(0); transform-origin: left; transition: transform .5s;}
.rm-indicazione-card:hover .rm-indicazione-line{transform: scaleX(1);}
.rm-indicazione-card h4{font-family: var(--font-title); font-size: 1.15rem; font-weight: 400; color: var(--charcoal); margin-bottom: .6rem;}
.rm-indicazione-card p{font-size: .85rem; line-height: 1.75; color: var(--deep-olive);}
.rm-pressioni{padding: var(--section-pad) 0; background: var(--pale-stone);}
.rm-pressioni-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start;}
.rm-pressioni-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-pressioni-text{font-size: .95rem; line-height: 1.85; color: var(--deep-olive); max-width: 500px; margin-bottom: 1rem;}
.rm-quando{padding: var(--section-pad) 0; background: var(--ivory);}
.rm-quando-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start;}
.rm-quando-content .rm-section-title{margin-bottom: 1.5rem;}
.rm-quando-text{font-size: .95rem; line-height: 1.85; color: var(--deep-olive); max-width: 500px; margin-bottom: 1rem;}
.rm-quando-list{list-style: none; display: flex; flex-direction: column; gap: .7rem; margin-top: 1.5rem;}
.rm-quando-list li{display: flex; align-items: flex-start; gap: .7rem; font-size: .88rem; color: var(--deep-olive);}
.rm-quando-list .rm-dot{width: 6px; height: 6px; border-radius: 50%; background: var(--sage); flex-shrink: 0; margin-top: 7px;}
@media (max-width: 1024px){.rm-cose-grid{grid-template-columns: 1fr; gap: 2.5rem;}.rm-cose-image img{height: 360px;}.rm-meccanismo-grid{grid-template-columns: 1fr;}.rm-indicazioni-grid{grid-template-columns: 1fr;}.rm-pressioni-grid{grid-template-columns: 1fr; gap: 2.5rem;}.rm-quando-grid{grid-template-columns: 1fr; gap: 2.5rem;}}
.rm details.rm-faq-item>summary{list-style:none;cursor:pointer}.rm details.rm-faq-item>summary::-webkit-details-marker{display:none}
.rm details.rm-faq-item .rm-faq-answer{max-height:none!important}
.rm{padding-bottom:0!important;overflow-x:clip!important}
