/* Local brand study: Newsreader headings, luminous paper, bordeaux structure. */
@font-face{font-family:Newsreader;src:url('assets/fonts/Newsreader-latin.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
:root{--paper:#FBF8F2;--cream:#FBF8F2;--soft:#F4EDE6;--surface:#FFFDFA;--wine:#7A2940;--accent:#7A2940;--wine-deep:#5D2033;--display:Newsreader,Georgia,'Times New Roman',serif}
.site-name{display:block;font-family:var(--display);font-optical-sizing:auto;font-size:27px;font-weight:500;line-height:1.12;letter-spacing:-.012em;white-space:nowrap}
.site-name-dedication,.name-dedication{white-space:nowrap}
.dialog-top .site-name{font-size:30px}
.site-footer .site-name{font-size:31px;white-space:normal}
.site-wordmark,.site-footer .site-wordmark{display:inline-flex;align-items:center;gap:12px}
.site-header .site-monogram,.dialog-top .site-monogram{width:32px;height:auto;flex:none;display:block}
.site-footer .site-wordmark .site-monogram{width:38px;height:auto;flex:none;display:block}
html,body{background:var(--paper)}
body:not(.ortus) :is(h1,h2,h3){font-family:var(--display);font-optical-sizing:auto;font-weight:450;letter-spacing:-.018em}
body:not(.ortus) .arrival-copy h1{font-weight:500;letter-spacing:-.025em;line-height:1.02}
body:not(.ortus) .tale-copy h1{font-weight:450;line-height:1.05;letter-spacing:-.018em}
body:not(.ortus) .story-copy h2,body:not(.ortus) .community-copy h2{font-weight:450;line-height:1.07;letter-spacing:-.018em}
body:not(.ortus) .tale-copy h1,
.house-copy h2,.study-copy h2,.home-paths h2,.home-news h2,
.content-section h2,.welcome-intro h2,.welcome-audience h2,.hospitality-services h2,
.welcome-values h2,.steps-list h2,.community-directory h2,.rector-heading h2,
.student-life-essay h2,.daily-passage h2,.timeline-section>h2,.history-feature h2,
.donation-intro h2,.donation-section h2,.faq-section h2,.contact-layout h2,
.events-collection>h2,.event-article-header h1,.article-header h1,
.brand-cover h1,.guide-section h2{color:var(--wine)}
/* A recognisable wine navigation with an opaque fallback. */
.site-header,.home-page .site-header,.home-page .site-header.on-story{background:var(--wine-deep);color:var(--cream);border-color:#FFFFFF40}
@supports ((backdrop-filter:blur(20px)) or (-webkit-backdrop-filter:blur(20px))){
 .site-header,.home-page .site-header,.home-page .site-header.on-story{background:linear-gradient(115deg,#7A2940ED,#5D2033F0);-webkit-backdrop-filter:blur(24px) saturate(120%);backdrop-filter:blur(24px) saturate(120%)}
}
.site-header .header-links .header-support,.home-page .site-header.on-story .header-support{background:var(--cream);color:var(--wine-deep)}
.site-header .header-support:hover{background:#FFFFFF}
.button,.tale-copy .button{background:var(--wine);color:var(--cream)}
.button:hover,.tale-copy .button:hover{background:var(--wine-deep);color:var(--cream)}
.button.outline,.tale-copy .button.outline{background:#FFFFFF90;color:var(--wine);border-color:#7A294038}
.arrival-copy .button{background:var(--cream);color:var(--wine-deep);border-color:#FFFFFF90}
.arrival-copy .button:hover{background:#FFFFFF;color:var(--wine-deep)}
.scroll-ready .story-skip{background:#FBF8F2ED;border-color:#FFFFFF;color:var(--wine-deep)}
.interior-tale{background-image:none}
.brand-cover{background:var(--paper)}
/* Broad bordeaux fields make the institutional identity visible beyond buttons. */
.community-scene{background:var(--wine-deep);color:var(--cream)}
.tale-comunita,.tale-cappella{background:var(--wine-deep);color:var(--cream)}
body:not(.ortus) .tale-comunita .tale-copy h1,
body:not(.ortus) .tale-cappella .tale-copy h1{color:var(--cream)}
.tale-comunita .tale-actions .button,.tale-cappella .tale-actions .button{background:var(--cream);color:var(--wine-deep)}
.tale-comunita .tale-secondary{color:var(--cream)}
.home-page .vocation-passage{background:var(--wine);color:var(--cream)}
.daily-passage,.student-life-essay{background:var(--wine-deep);color:var(--cream)}
.daily-passage h2,.student-life-essay h2{color:var(--cream)}
.vocation-copy h2,.community-copy h2,.gift-band h2,.contact-band h2,.reopening-memory h2{color:var(--cream)}
.vocation-copy .button,.gift-band .button,.contact-band .button{background:var(--cream);color:var(--wine-deep);border-color:#FFFFFF80}
.vocation-copy .button:hover,.gift-band .button:hover,.contact-band .button:hover{background:#FFFFFF;color:var(--wine-deep)}
.vocation-photo{background:var(--wine-deep)}
.contact-band,.gift-band,.reopening-memory{background:var(--wine);color:var(--cream)}
.contact-band p,.gift-band p,.reopening-memory p{color:#F1E3E3}
.contact-band .text-link,.reopening-memory .text-link{color:var(--cream);border-color:#FBF8F280}
.site-footer{background:var(--wine-deep);color:var(--cream)}
.site-footer .footer-bottom,.site-footer p{color:#EAD9DD}
.team-card-lead,.rector-current{background:var(--wine-deep);color:var(--cream)}
.team-card-lead h2,.rector-current h3{color:var(--cream)}
.home-page .path-list a:first-child{background:linear-gradient(90deg,#5D2033 2%,#5D2033E8 48%,#5D203355),url('assets/seminario.jpg') center/cover;color:var(--cream)}
.home-page .path-list a:first-child h3{color:var(--cream)}
/* Light surfaces are warm whites, without the previous beige wash. */
.home-page .path-list a:not(:first-child),.news-card,.event-card,.audience-card,
.care-node,
.amenities-grid li,.place-links>a,.team-card:not(.team-card-lead),
.rector-row:not(.rector-current),.vocation-steps article,.steps-list article,
.content-section .prose,.event-facts,.event-program article,.event-poster,
.faq details,.filter-bar,.gallery-item,#request-form,.request-preview{background:var(--surface)}
.home-page .path-list a:not(:first-child) h3,.news-card h3,.event-card h3,.audience-card h3{color:var(--wine)}
.welcome-values,.rector-memory,.event-crosslink,.event-price,.address-box,#stay-fields,.origin-pair .origin-mark{background:var(--soft)}
.bank-card{background:linear-gradient(140deg,#FFFDFA,#F4EDE6)}
.site-menu,.dialog-top{background:#FBF8F2FA}
.menu-links>a,.menu-group>summary{background:#FFFDFA}
.menu-group[open]{background:#FFFDFA}
.glass-button,.welcome-glass{background:#FFFDFAEB;color:var(--ink)}
.social-section{background:var(--wine-deep);color:var(--cream)}
.social-section h2{color:var(--cream)}
.brand-guide .logo-pair>div:last-child{background:var(--wine-deep)}
.brand-guide .button{color:var(--cream)}
/* AllegraMente: concrete activities and direct association contacts. */
.association-activities .section-heading{align-items:end;gap:30px}
.association-activities .section-heading h2,.association-contact h2{color:var(--wine)}
.association-activities .section-heading p{max-width:460px;font-size:18px;line-height:1.7;color:var(--muted)}
.association-activity-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.association-activity-grid li{padding:30px;background:var(--surface);border:1px solid #FFFFFF;border-radius:24px;box-shadow:var(--shadow-sm)}
.association-activity-grid h3{font-size:29px;line-height:1.15;color:var(--wine)}
.association-activity-grid p{font-size:17px;line-height:1.75;margin-top:18px;color:var(--muted)}
.association-reading{display:flex;align-items:center;justify-content:space-between;gap:45px;background:var(--soft);border-radius:30px;padding:40px;margin-top:10px;margin-bottom:30px}
.association-reading>div{max-width:740px}.association-reading h2{font-size:30px;color:var(--wine);margin-bottom:22px}
.association-reading h3{font-size:34px;line-height:1.15}.association-reading p{font-size:17px;line-height:1.8;margin-top:20px}
.association-reading>.button{flex-shrink:0}
.association-contact{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}
.association-contact>div>p{margin-top:25px;font-size:19px;line-height:1.75;max-width:460px}
.association-contact address{font-style:normal;font-size:18px;line-height:1.8;margin-top:22px}
.association-contact-card{padding:32px;border:1px solid #FFFFFF;border-radius:28px;background:var(--surface);box-shadow:var(--shadow-sm);min-width:0}
.association-contact-card h3{font-size:34px;color:var(--wine)}
.association-contact .association-contact-card>p{font-size:17px;margin-top:20px}
.association-contact-actions{display:flex;flex-direction:column;align-items:start;gap:10px;margin-top:25px}
.association-email{overflow-wrap:anywhere;max-width:100%}
@media(max-width:1000px){.association-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.association-reading{gap:28px}}
@media(max-width:760px){
 .association-activities .section-heading{align-items:start;gap:22px}
 .association-activity-grid{grid-template-columns:1fr;gap:15px}
 .association-activity-grid li{padding:25px}.association-activity-grid h3{font-size:28px}
 .association-reading{display:block;padding:28px;margin-top:0}.association-reading h3{font-size:29px}.association-reading>.button{margin-top:26px}
 .association-contact{grid-template-columns:1fr;gap:30px}.association-contact-card{padding:26px}
}
@media(max-width:760px){
 .site-wordmark{gap:9px}
 .site-header .site-monogram,.dialog-top .site-monogram{width:27px}
 .dialog-top .site-name-dedication{display:block}
 .site-header .site-name{font-size:23px;line-height:1.02}
 .site-header .site-name-dedication{display:block}
 .dialog-top .site-name{font-size:25px}
 body:not(.ortus) .arrival-copy h1{font-size:clamp(48px,12.5vw,78px);line-height:1.03}
 body:not(.ortus) .tale-copy h1{line-height:1.07}
 .brand-cover h1{font-size:clamp(42px,11vw,53px)}
}
@media(max-width:380px){.site-header .site-name{font-size:22px}.dialog-top .site-name{font-size:23px}}
@media(max-width:380px){.event-article-header h1{font-size:34px;line-height:1.08}}
@media(prefers-contrast:more){.site-header,.home-page .site-header,.home-page .site-header.on-story{background:var(--wine-deep);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Mille Semi: la casa e un segno tipografico comune a pagina e richiami */
.mille-visual{position:relative;width:100%;height:100%;max-height:500px;isolation:isolate}
.mille-visual>img{position:absolute;inset:3% 0 7% 8%;width:92%;height:90%;object-fit:cover;object-position:center;border-radius:26px;box-shadow:0 22px 55px #29101D55;transform:translateY(calc(var(--q,0) * 12px))}
.mille-card{position:absolute;left:0;bottom:0;width:min(66%,350px);padding:25px 28px 23px;background:#FBF8F2;color:#5D2033;border:1px solid #FFFFFFAA;border-radius:20px;box-shadow:0 20px 50px #2A0F1D50;transform:translateY(calc(var(--q,0) * 18px))}
.mille-name{display:block;font-family:var(--sans);font-weight:500;font-size:15px;letter-spacing:0}
.mille-amount,.gift-amount{display:flex;align-items:center;gap:10px}
.mille-amount{margin:14px 0 8px}
.mille-amount strong,.gift-amount strong{font-family:Newsreader,Georgia,serif;font-weight:450;font-size:clamp(70px,8vw,110px);line-height:.8;letter-spacing:-.04em}
.mille-amount span,.gift-amount span{font-family:var(--sans);font-size:16px;line-height:1.25;font-weight:500}
.mille-card p{font-size:14px;line-height:1.5;color:#674D50;max-width:220px}
.gift-band .gift-art{position:relative;display:block;min-height:0;height:clamp(220px,24vw,330px);max-width:none}
.gift-art img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:22px;box-shadow:0 18px 40px #300B2550}
.gift-art .gift-amount{position:absolute;left:-22px;bottom:-18px;padding:18px 24px;background:#FBF8F2;color:#5D2033;border-radius:17px;box-shadow:0 15px 35px #300B2550}
.gift-amount strong{font-size:clamp(55px,6vw,82px)}
.gift-amount span{font-size:14px}
@media(max-width:760px){.tale-sostieni .tale-visual{height:min(350px,60svh);max-height:350px}.mille-visual>img{inset:0 0 10% 5%;width:95%;height:90%;border-radius:20px}.mille-card{width:min(70%,280px);padding:19px 21px;border-radius:17px}.mille-amount strong{font-size:72px}.mille-amount{margin:12px 0 7px}.mille-card p{font-size:13px}.gift-band .gift-art{height:230px;margin:0 0 12px 12px}.gift-art .gift-amount{left:-12px;bottom:-12px;padding:15px 19px}.gift-amount strong{font-size:62px}}
@media(prefers-reduced-motion:reduce){.mille-visual>img,.mille-card{transform:none}}
.tale-sostieni{background:var(--paper);color:var(--wine-deep);--muted:#5C5660}
.tale-sostieni .tale-copy .button{color:var(--cream);background:var(--wine);border-color:var(--wine)}
.tale-sostieni .tale-copy .button:hover{color:var(--cream);background:var(--wine-deep)}
/* Contrasto della pagina vocazionale sulla superficie avorio */
.tale-cammino-vocazionale{--muted:#5C5660}
.tale-cammino-vocazionale .tale-copy .button{color:var(--cream);background:var(--wine);border-color:var(--wine)}
.tale-cammino-vocazionale .tale-copy .button:hover{color:var(--cream);background:var(--wine-deep)}
/* Un velo graduato protegge il titolo sovrapposto alla fotografia */
.house-photo:after{background:linear-gradient(0deg,#121426e8 0%,#121426b8 30%,#12142660 65%,#12142645 100%)}


/* Materiali del 29 ottobre: Serra Club e momenti informali degli studenti. */
.project-grid>.project-card,.project-grid>.project-card:nth-last-child(-n+2){grid-column:span 2}
.project-card.serra-club{background:#723548;color:#FBF8F2}
.serra-photo{position:relative!important;inset:auto!important;width:100%;margin:0;overflow:hidden;border:5px solid #fff9;border-radius:22px;background:#F2E8DB;box-shadow:0 20px 48px #40172725;transform:translateY(calc(var(--q,0) * 12px))}
.tale-serra-club .tale-visual{display:flex;align-items:center}
.serra-photo img{display:block;width:100%;height:auto!important;max-height:min(55svh,520px);object-fit:contain!important;transform:none!important}
.serra-photo figcaption{padding:12px 16px;color:#5D2033;font-size:14px;line-height:1.5;background:#FBF8F2}
.student-moments{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;margin:0!important;align-items:start!important}
.student-moment{margin:0;min-width:0}
.student-moment>a{display:block;overflow:hidden;border:4px solid #FBF8F2;border-radius:16px;background:#FBF8F2;box-shadow:0 12px 28px #2A0D182E;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.student-moment>a:hover{transform:translateY(-4px);box-shadow:0 18px 32px #2A0D1840}
.student-moment>a:focus-visible{outline:3px solid #E4BE88;outline-offset:6px}
.student-moment img{display:block;width:100%;height:auto;max-height:52svh;object-fit:contain;transform:none}
.student-moment figcaption{font-size:15px;line-height:1.6;color:#FBF8F2;padding-top:16px}
@media(max-width:760px){
 .project-grid>.project-card,.project-grid>.project-card:nth-last-child(-n+2){grid-column:auto}
 .serra-photo{border-radius:16px}.serra-photo img{max-height:46svh}
 .student-moments{grid-template-columns:1fr!important;gap:30px!important}
 .student-moment{max-width:540px;width:100%;margin-inline:auto}
 .student-moment img{max-height:55svh}.student-moment figcaption{padding-top:12px}
}
@media(prefers-reduced-motion:reduce){.serra-photo,.student-moment>a:hover{transform:none}.student-moment>a{transition:none}}
