/* FiloEdizioni — Collaborazioni editoriali: progetto redazionale, non servizi. */
.fe-ed-hero,.fe-ed-section,.fe-ed-footer-cta { overflow:clip; }
.fe-ed-hero { padding:34px 0 88px; background:radial-gradient(circle at 100% 0, #f4ebe1 0%, #faf8f2 50%, #faf8f2 100%); border-bottom:1px solid var(--color-line); }
.fe-ed-crumb { display:flex; gap:12px; align-items:center; font-size:12px; color:#777067; margin-bottom:75px; }
.fe-ed-crumb a:hover { text-decoration:underline; }
.fe-ed-hero-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); align-items:center; gap:85px; }
.fe-ed-kicker { display:block; font-size:11px; font-weight:750; letter-spacing:.16em; text-transform:uppercase; color:var(--color-brand); margin-bottom:16px; }
.fe-ed-hero h1,.fe-ed-section h2 { font-weight:400; letter-spacing:-.044em; line-height:1.06; }
.fe-ed-hero h1 { max-width:800px; font-size:clamp(46px,5.8vw,76px); margin:0 0 26px; }
.fe-ed-hero h1 em,.fe-ed-section h2 em { font-weight:400; color:var(--color-brand); }
.fe-ed-lede { font-family:var(--font-serif); font-size:clamp(20px,2.3vw,25px); line-height:1.55; color:#3c3c36; max-width:710px; margin:0 0 16px; }
.fe-ed-text { max-width:635px; font-size:15px; line-height:1.8; color:var(--color-muted); }
.fe-ed-actions { display:flex; gap:28px; flex-wrap:wrap; align-items:center; margin-top:34px; }
.fe-ed-button { display:inline-flex; justify-content:center; gap:24px; align-items:center; min-height:52px; border:1px solid var(--color-brand-deep); background:var(--color-brand-deep); color:#fff; padding:12px 22px; font-size:13px; line-height:1.4; font-weight:650; transition:background .2s ease,transform .2s ease; }
.fe-ed-button:hover { background:var(--color-brand); color:#fff; transform:translateY(-2px); }
.fe-ed-inline { font-size:13px; font-weight:650; color:var(--color-brand-deep); text-decoration:underline; text-underline-offset:5px; }
.fe-ed-inline:hover { color:var(--color-brand-bright); }
.fe-ed-hero-side { background:#eae0d1; border:1px solid #d9cbbb; padding:45px 42px 40px; box-shadow:22px 22px 0 #f1e8dc; min-height:320px; }
.fe-ed-side-eyebrow { font-size:10px; font-weight:700; letter-spacing:.15em; color:#5b5148; }
.fe-ed-quote-mark { display:block; font-family:var(--font-display); line-height:1; height:58px; font-size:92px; color:var(--color-brand); margin-top:18px; }
.fe-ed-hero-side p { font-family:var(--font-display); font-size:clamp(25px,2.5vw,36px); line-height:1.26; letter-spacing:-.02em; margin:6px 0 28px; }
.fe-ed-side-caption { padding-top:18px; border-top:1px solid #c9b9a8; font-size:12px; color:#69594b; }
.fe-ed-section { padding:88px 0; }
.fe-ed-section-heading { max-width:850px; margin:0 0 44px; }
.fe-ed-section h2 { font-size:clamp(34px,4.4vw,54px); margin:0 0 18px; }
.fe-ed-section-heading p { max-width:750px; color:var(--color-muted); font-size:16px; line-height:1.8; }
.fe-ed-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.fe-ed-cards article { min-width:0; background:#fff; border:1px solid var(--color-line-soft); border-top:3px solid var(--color-brand); padding:32px 28px 35px; }
.fe-ed-card-number { font-size:10px; letter-spacing:.13em; font-weight:750; color:var(--color-brand); }
.fe-ed-cards h3 { font-size:clamp(24px,2.5vw,31px); font-weight:400; line-height:1.15; margin:24px 0 14px; }
.fe-ed-cards p { font-size:14px; line-height:1.8; color:var(--color-muted); }
.fe-ed-principles { background:#ede7dc; }
.fe-ed-principles-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:88px; }
.fe-ed-prose { border-left:2px solid var(--color-brand); padding-left:32px; }
.fe-ed-prose p { color:#45443e; line-height:1.85; font-size:15.5px; margin:0 0 18px; }
.fe-ed-prose p:last-child { margin-bottom:0; }
.fe-ed-prose strong { color:var(--color-brand-deep); }
.fe-ed-how { background:#faf8f2; }
.fe-ed-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; list-style:none; padding:0; margin:30px 0 0; }
.fe-ed-steps li { padding-top:18px; border-top:1px solid var(--color-line); display:grid; grid-template-columns:34px 1fr; gap:15px; align-content:start; }
.fe-ed-steps li > span { font-family:var(--font-serif); font-size:23px; color:var(--color-brand); line-height:1.2; }
.fe-ed-steps h3 { font-size:23px; font-weight:400; line-height:1.25; margin:0 0 12px; }
.fe-ed-steps p { color:var(--color-muted); font-size:14px; line-height:1.75; }
.fe-ed-submit { background:#f1ede4; padding:96px 0; }
.fe-ed-submit-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:70px; align-items:start; }
.fe-ed-submit-intro > p { max-width:440px; font-size:16px; color:#5d5b54; line-height:1.8; }
.fe-ed-submit-note { max-width:425px; margin-top:44px; padding:25px; border-left:3px solid var(--color-brass); background:rgba(255,255,255,.45); }
.fe-ed-submit-note strong { font-size:14px; }
.fe-ed-submit-note p { font-size:13px; color:var(--color-muted); line-height:1.75; margin:7px 0 0; }
.fe-ed-form-card { background:#fff; border:1px solid #e1d8c7; padding:38px 38px 40px; box-shadow:0 16px 42px rgba(41,30,23,.07); }
.fe-ed-form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.fe-ed-field { min-width:0; margin-bottom:19px; }
.fe-ed-field label { display:block; font-size:13px; line-height:1.55; font-weight:650; margin:0 0 7px; }
.fe-ed-field label span { color:var(--color-brand); }
.fe-ed-field label small { font-size:11px; font-weight:400; color:var(--color-muted); }
.fe-ed-field input,.fe-ed-field select,.fe-ed-field textarea { display:block; width:100%; min-height:46px; max-width:100%; border:1px solid #d8d3ca; color:var(--color-ink); border-radius:0; background:#fff; font:400 14px/1.5 var(--font-sans); padding:12px; box-shadow:none; }
.fe-ed-field textarea { min-height:154px; resize:vertical; }
.fe-ed-field input:focus,.fe-ed-field textarea:focus,.fe-ed-field select:focus { border-color:var(--color-brand); outline:2px solid #e5bfcb; outline-offset:1px; }
.fe-ed-field input::placeholder,.fe-ed-field textarea::placeholder { color:#99948b; }
.fe-ed-field > small { display:block; margin-top:6px; font-size:11px; line-height:1.55; color:var(--color-muted); }
.fe-ed-check { display:flex; gap:11px; align-items:flex-start; font-size:12.5px; line-height:1.7; margin:22px 0 25px; }
.fe-ed-check input { margin-top:4px; width:16px; height:16px; accent-color:var(--color-brand); flex:0 0 auto; }
.fe-ed-check a { color:var(--color-brand); text-decoration:underline; }
.fe-ed-check strong { color:var(--color-brand); }
.fe-ed-submit-button { width:100%; justify-content:space-between; }
.fe-ed-form-disclaimer { margin:15px 0 0; font-size:11.5px; line-height:1.65; color:var(--color-muted); }
.fe-ed-trap { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; opacity:0!important; pointer-events:none!important; }
.fe-ed-message { padding:18px 20px; border:1px solid #d4d1c7; margin-bottom:24px; font-size:14px; line-height:1.7; }
.fe-ed-message p { margin:6px 0 0; }
.fe-ed-message-success { border-color:#bed1c2; background:#edf5ed; color:#205235; }
.fe-ed-message-error { border-color:#e3c1c1; background:#fff1f0; color:#7c2e28; }
.fe-ed-footer-cta { background:#fdfbf7; border-top:1px solid var(--color-line); padding:54px 0 64px; }
.fe-ed-footer-inner { display:flex; justify-content:space-between; align-items:center; gap:42px; }
.fe-ed-footer-cta h2 { margin:0 0 12px; font-size:clamp(26px,3.1vw,38px); font-weight:400; line-height:1.2; }
.fe-ed-footer-cta p { max-width:655px; color:var(--color-muted); font-size:14px; line-height:1.7; }
.fe-ed-footer-links { display:flex; flex-direction:column; flex:0 0 200px; gap:12px; }
.fe-ed-footer-links a { border-bottom:1px solid #d5c6b9; padding:10px 0; display:flex; align-items:center; justify-content:space-between; gap:15px; font-size:13px; font-weight:650; color:var(--color-brand-deep); }
.fe-ed-footer-links a:hover { color:var(--color-brand-bright); }
@media(max-width:1000px){.fe-ed-hero-grid{gap:45px;grid-template-columns:1.2fr .8fr}.fe-ed-hero-side{padding:30px 26px;min-height:0}.fe-ed-principles-grid,.fe-ed-submit-grid{gap:45px}.fe-ed-steps{gap:20px}.fe-ed-cards article{padding:28px 20px}}
@media(max-width:780px){.fe-ed-hero{padding:27px 0 60px}.fe-ed-crumb{margin-bottom:45px}.fe-ed-hero-grid,.fe-ed-principles-grid,.fe-ed-submit-grid{grid-template-columns:1fr;gap:42px}.fe-ed-hero-side{box-shadow:10px 10px 0 #f1e8dc}.fe-ed-hero h1{max-width:690px}.fe-ed-section{padding:60px 0}.fe-ed-cards,.fe-ed-steps{grid-template-columns:1fr}.fe-ed-cards{gap:14px}.fe-ed-cards article{padding:26px}.fe-ed-cards h3{margin:15px 0 8px}.fe-ed-principles-grid{gap:14px}.fe-ed-submit{padding:60px 0}.fe-ed-submit-note{margin-top:25px}.fe-ed-footer-inner{align-items:flex-start;flex-direction:column;gap:25px}.fe-ed-footer-links{flex-basis:auto;width:100%}}
@media(max-width:520px){.fe-ed-hero h1{font-size:clamp(42px,11.2vw,57px)}.fe-ed-lede{font-size:19px}.fe-ed-actions{gap:16px}.fe-ed-actions .fe-ed-button{width:100%;justify-content:space-between}.fe-ed-hero-side p{font-size:27px}.fe-ed-section h2{font-size:clamp(33px,9vw,43px)}.fe-ed-prose{padding-left:18px}.fe-ed-form-card{padding:25px 18px}.fe-ed-form-row{grid-template-columns:1fr;gap:0}}
