/* Casa aperta — shared surfaces, depth and practical routes. */
:root{
 --radius:28px;--radius-sm:18px;--radius-lg:42px;
 --surface:#FBF6EE;--edge:#FFFFFFB8;
 --shadow-sm:0 6px 18px #1722390B,0 1px 3px #17223908;
 --shadow:0 18px 50px -18px #17223932,0 3px 10px #17223908;
 --shadow-deep:0 30px 75px -24px #111A3652,0 8px 24px #17223917;
 --header:108px;
}
body{background:#FBF8F2;color:var(--ink)}
.ui-icon{width:26px;height:26px;flex-shrink:0;display:block}
h1,h2,h3{font-weight:500;letter-spacing:-.025em}
p{ text-wrap:pretty }
:focus-visible{outline:3px solid #AA624B!important;outline-offset:5px!important}
button,a{touch-action:manipulation}
/* A floating navigation object, shared by every page. */
.site-header,.home-page .site-header,.home-page .site-header.on-story{
 position:sticky;top:16px;left:20px;width:calc(100% - 40px);height:76px;
 margin:16px 20px 0;padding:0 24px;gap:24px;border:1px solid #FFFFFF40;
 border-radius:24px;background:#172239;color:#FAF3E9;
 box-shadow:0 14px 40px -10px #10183144,inset 0 1px 0 #FFFFFF24;
 transition:box-shadow .25s,background .25s;
}
.home-page .site-header,.home-page .site-header.on-story{position:fixed;margin:0;top:16px}
.site-header.scrolled{box-shadow:0 14px 40px -10px #10183166,inset 0 1px 0 #FFFFFF24}
@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(130deg,#33405AE8,#172239DE 60%,#3C2D43E8);
  -webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%);
 }
}
.site-header .brand,.home-page .site-header.on-story .brand{color:#FAF3E9;font-size:20px;line-height:.98}
.header-links{gap:6px;font-size:14px;min-width:0}
.header-links>a{padding:12px 15px;border-radius:14px;white-space:nowrap;color:#FAF3E9;transition:background .2s}
.header-links>a:hover,.header-links>a[aria-current=page]{background:#FFFFFF17;color:#FFF8ED}
.site-header .header-links .header-support,.home-page .site-header.on-story .header-support{
 padding:12px 20px;background:#F4EADB;color:#172239;border:1px solid #FFFFFF94;
 border-radius:999px;margin-left:10px;box-shadow:inset 0 1px 0 #FFFFFF,0 3px 8px #00000015;
}
.site-header .header-support:hover{background:#FFF9F0;transform:translateY(-1px)}
.header-links button{margin-left:10px;padding:12px 14px;border-radius:14px;min-height:46px;gap:14px}
.header-links button:hover{background:#FFFFFF14}
.menu-icon{width:22px;height:8px}
.skip{color:#FFF8ED;border-radius:14px}
/* Buttons have one recognisable silhouette and tangible states. */
.button,.tale-copy .button{
 min-height:56px;padding:16px 25px;gap:12px;border-radius:999px;
 background:linear-gradient(160deg,#91445A,var(--wine));border:1px solid #FFFFFF2B;color:#FFF8ED;
 box-shadow:0 7px 18px -8px #57243870,inset 0 1px 0 #FFFFFF30;
 transition:transform .22s var(--ease),box-shadow .22s,background .22s;
 font-weight:500;font-size:15px;line-height:1.4;
}
.button:hover,.tale-copy .button:hover{transform:translateY(-3px);box-shadow:0 13px 24px -10px #57243870,inset 0 1px 0 #FFFFFF30;background:#70263B;color:#FFF8ED}
.button:active,.tale-copy .button:active{transform:translateY(0);box-shadow:inset 0 2px 6px #00000020}
.button.outline,.tale-copy .button.outline{background:#FFFFFF4D;color:var(--ink);border:1px solid #17223924;box-shadow:var(--shadow-sm),inset 0 1px 0 #FFFFFF}
.button.outline:hover,.tale-copy .button.outline:hover{background:#FFF9F0;color:var(--ink);border-color:#17223944}
.text-link{border-bottom:1px solid #17223950;text-underline-offset:5px;padding:11px 0;font-size:15px}
.text-link:hover{border-color:currentColor}
/* Quiet frosted panels are secondary to the photographs. */
.glass-button,.welcome-glass{background:#FFF9EFDD;box-shadow:var(--shadow-deep),inset 0 1px 0 #FFFFFF;border:1px solid #FFFFFFB8;color:#172239}
@supports ((backdrop-filter:blur(20px)) or (-webkit-backdrop-filter:blur(20px))){
 .glass-button,.welcome-glass{background:linear-gradient(135deg,#FFF9EFD4,#FFF9EFB3);-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%)}
}
/* The home remains a continuous photographic story. */
.arrival-copy h1{text-shadow:0 4px 28px #0B112240;font-size:clamp(64px,7.4vw,110px);font-weight:500;line-height:.99}
.arrival-copy p{font-size:18px;line-height:1.5;color:#FCF3E6}
.arrival-copy .button{padding:17px 27px;background:linear-gradient(150deg,#FFF9F0,#EADACA);color:#172239;border-color:#FFF9F0;box-shadow:0 14px 32px -12px #060B2070,inset 0 1px 0 white}
.scroll-ready .story-skip{border-radius:999px;background:#F6EFE3D9;border:1px solid #FFFFFFA8;backdrop-filter:blur(12px);padding:12px 20px;box-shadow:var(--shadow)}
.scroll-ready .house-photo{border-radius:var(--house-radius,0)}
.scroll-ready .house-copy h2,.scroll-ready .study-copy h2{font-weight:500}
.home-page .vocation-passage{margin:20px 20px 0;border-radius:var(--radius-lg);background:radial-gradient(ellipse at 0 0,#A6536740,transparent 60%),#69283D;box-shadow:var(--shadow-deep);gap:6vw;padding:75px 5vw}
.vocation-photo{border-radius:26px;overflow:hidden;box-shadow:var(--shadow-deep);background:#522032}
.vocation-photo img{height:500px;border-radius:26px}
.vocation-photo figcaption{padding:0 22px 16px;margin-top:14px}
.vocation-copy h2{font-size:clamp(42px,4.6vw,68px)}
.home-page .home-paths{grid-template-columns:.8fr 1.2fr;gap:7vw;padding-top:110px;padding-bottom:75px;background:none}
.home-paths>div{top:140px}
.home-paths h2{max-width:480px}
.home-page .path-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0;margin:0;overflow:visible}
.home-page .path-list a{border:1px solid #FFFFFF;position:relative;border-radius:22px;background:linear-gradient(150deg,#FFFBF5,#EDE3D6);padding:27px!important;box-shadow:var(--shadow-sm);transform:none;transition:transform .25s,box-shadow .25s;min-height:190px}
.home-page .path-list a:first-child{grid-column:1/-1;background:#172239;color:#F8F0E3;border-color:#FFFFFF20;box-shadow:var(--shadow);min-height:200px}
.home-page .path-list a h3{font-size:27px;max-width:350px;line-height:1.12}
.home-page .path-list a span{font-size:15px;line-height:1.6;margin-top:22px;display:block;color:#65616B}
.home-page .path-list a:first-child span{color:#CBC7CF}
.home-page .path-list a:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.home-page .path-list a:first-child:hover h3{color:#7A2940}
/* Every internal opening has a readable page name and a tighter action group. */
.interior-tale{background:radial-gradient(ellipse at 95% 10%,#DEC7AF55,transparent 57%),var(--paper)}
.tale-stage{gap:6vw;padding:45px var(--gutter) 70px;overflow:visible}
.tales-on .interior-tale{height:min(var(--tale-span),155svh)}
.tales-on .tale-stage{height:calc(100svh - 108px);top:108px}
.tales-on .tale-sostieni{height:195svh}
.tale-copy h1{font-weight:500;font-size:clamp(42px,4.9vw,74px);line-height:1.04;max-width:710px}
.tale-copy>p.tale-label{font-size:17px;line-height:1.5;margin:0 0 22px;color:var(--wine);font-weight:500}
.tale-copy>p:not(.tale-label){font-size:18px;line-height:1.75;margin:27px 0 30px;max-width:480px}
.tale-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.tale-secondary{margin:0;padding:15px 12px}
.tale-visual{isolation:isolate}
.tale-visual figure{border-radius:28px;box-shadow:var(--shadow-deep)}
.tale-visual figcaption{background:linear-gradient(0deg,#172239ED,#172239A8);backdrop-filter:blur(10px);padding:10px 16px}
.tale-comunita,.tale-cappella{margin:20px;border-radius:var(--radius-lg);background:radial-gradient(ellipse at top right,#69424C55,transparent 60%),#172239;color:#FAF3E9}
.tale-comunita .tale-stage,.tale-cappella .tale-stage{padding-left:4.5vw;padding-right:4.5vw}
.tale-comunita .tale-label,.tale-cappella .tale-label{color:#E8C798!important}
.tale-comunita .tale-actions .button,.tale-cappella .tale-actions .button{background:#F4EADC;color:#172239;box-shadow:0 8px 25px #00000030;border-color:#FFFFFF80}
.tale-comunita .tale-secondary{color:#F4EADC;border-color:#FFFFFF80}
.community-inset{right:-1%;border:5px solid #EDE4D5;box-shadow:var(--shadow-deep)}
.history-date strong,.history-date>p{border-radius:14px;box-shadow:var(--shadow-sm)}
.history-date strong{padding:6px 18px 10px 8px}
.history-date>p{padding:13px 16px;background:#FFF9F0E8}
.history-window{border:5px solid #FCF5EB}
.history-rule{display:none}
.care-network{padding-left:40px;gap:12px}
.care-node{background:#FBF6EE;border:1px solid #FFFFFF;padding:18px 22px;border-radius:20px;box-shadow:var(--shadow-sm);transform:none}
.care-node h2{font-size:28px}.care-node p{font-size:14px;margin-top:6px}
.care-node:nth-child(n){margin-left:0}
.care-node:before{left:-31px;top:30px;background:#7A2940;box-shadow:0 0 0 5px #FBF8F2}
.study-sheets i,.culture-sheets i{border-radius:24px;box-shadow:var(--shadow)}
.study-spread,.culture-book{border:5px solid #FFF7EB}
.study-thought,.culture-line{font-size:32px;background:#FAF4EAD9;padding:14px 20px;border:1px solid #FFFFFF90;border-radius:20px;backdrop-filter:blur(14px);box-shadow:var(--shadow)}
.contact-letter{border:1px solid #FFFFFF;border-radius:32px;background:linear-gradient(145deg,#FFF9F0,#E9DFD2);box-shadow:var(--shadow-deep)}
.contact-letter nav a{border-radius:999px;background:#F5EBDD;box-shadow:var(--shadow-sm);padding:12px 18px}
.theatre-scene{border-radius:32px;overflow:hidden;box-shadow:var(--shadow-deep)}
.event-doorways a{border-radius:28px;box-shadow:var(--shadow);border:1px solid #FFFFFF35;transition:transform .25s,box-shadow .25s}
.event-doorways a:hover{transform:translateY(-4px);box-shadow:var(--shadow-deep)}
.event-doorways a:first-child{background:radial-gradient(ellipse at 100% 100%,#53607970,transparent 70%),#172239}
.event-doorways a:last-child{background:radial-gradient(ellipse at top right,#C27D8760,transparent 70%),#752B42}
/* Hospitality: a full photograph and one practical floating glass panel. */
.tale-ospitalita .tale-stage{grid-template-columns:.9fr 1.1fr;gap:5vw}
.tale-ospitalita .tale-copy h1{font-size:clamp(43px,4.5vw,68px)}
.tale-ospitalita .tale-visual{margin:12px 0 24px;height:100%;max-height:570px}
.tale-ospitalita .hospitality-window{inset:0;border-radius:120px 30px 30px 30px;clip-path:none;border:6px solid #FFF8EF;box-shadow:var(--shadow-deep)}
.tale-ospitalita .hospitality-window img{transform:scale(calc(1.08 - var(--p) * .08));object-position:53% center}
.welcome-glass{position:absolute;left:-35px;right:28px;bottom:-24px;z-index:3;border-radius:24px;padding:24px 28px;display:block;transform:translateY(calc(var(--q) * 12px));transition:box-shadow .25s,background .25s}
.welcome-glass>span{display:block;font-size:27px;font-weight:500;letter-spacing:-.035em;line-height:1.1}
.welcome-glass>p{font-size:15px;margin-top:9px;color:#565464}
.welcome-glass>strong{display:inline-block;font-size:14px;font-weight:500;margin-top:17px;border-bottom:1px solid #17223955;padding-bottom:3px}
.welcome-glass:hover{color:#172239;background:#FFFBF0;box-shadow:0 30px 65px -20px #17223955}
.welcome-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start;padding-top:90px;padding-bottom:60px}
.welcome-intro h2{font-size:clamp(32px,3.3vw,49px);line-height:1.13;max-width:470px}
.welcome-intro .prose p{font-size:19px;line-height:1.85}
.welcome-audience{padding-top:35px;padding-bottom:85px}
.welcome-audience .section-heading h2{font-size:36px}
.audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.audience-card{background:linear-gradient(145deg,#FFFBF4,#EDE2D3);border:1px solid #FFFFFF;border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);min-width:0}
.icon-tile{width:57px;height:57px;display:grid;place-items:center;border-radius:18px;background:#7A29400C;color:#7A2940;border:1px solid #7A294019;box-shadow:inset 0 1px 0 #FFFFFF;margin-bottom:29px}
.audience-card h3{font-size:26px;line-height:1.15;max-width:270px}
.audience-card p{font-size:16px;line-height:1.75;color:#65616A;margin-top:20px}
.welcome-availability{font-size:16px;line-height:1.8;color:#65616A;max-width:850px;margin-top:35px}
.hospitality-services{margin:0 20px;border-radius:var(--radius-lg);padding:72px 5vw;background:radial-gradient(ellipse at top left,#75627644,transparent 55%),#172239;grid-template-columns:.85fr 1.15fr;gap:6vw;box-shadow:var(--shadow-deep)}
.services-intro{position:sticky;top:140px}
.services-intro h2{font-size:clamp(42px,4.2vw,64px)}
.services-intro p{font-size:18px;line-height:1.8;margin-top:25px;color:#D0CCD2}
.services-intro .button{margin-top:30px;background:#F4EBDDDE;color:#172239;border-color:#FFFFFF80;box-shadow:inset 0 1px 0 #FFFFFF,0 8px 24px #00000020}
.hospitality-services .amenities-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hospitality-services .amenities-grid li{border:1px solid #FFFFFF21;min-height:139px;border-radius:21px;background:linear-gradient(140deg,#FFFFFF13,#FFFFFF06);padding:23px;font-size:18px;line-height:1.35;transform:none;box-shadow:inset 0 1px 0 #FFFFFF12,0 6px 12px #0000000A;display:flex;flex-direction:column;gap:20px}
.amenities-grid li:last-child{grid-column:1/-1;flex-direction:row;align-items:center;min-height:100px}
.service-symbol{color:#E6C89F}.service-symbol .ui-icon{width:29px;height:29px}
.welcome-values{padding-top:85px;padding-bottom:35px;display:grid;grid-template-columns:.4fr 1fr;gap:8vw;align-items:center;max-width:1200px;margin:auto}
.welcome-values-symbol{width:190px;aspect-ratio:1;display:grid;place-items:center;justify-self:center;border:1px solid #FFFFFF;border-radius:55px;background:linear-gradient(145deg,#FFF9F0,#E2D4C2);box-shadow:var(--shadow);color:#7A2940;transform:rotate(-5deg)}
.welcome-values-symbol .ui-icon{width:76px;height:76px;transform:rotate(5deg);stroke-width:.8}
.welcome-values h2{font-size:40px;line-height:1.1}
.welcome-values p{font-size:19px;line-height:1.85;margin-top:25px;color:#65616A}
.steps-list{gap:20px;counter-reset:steps;padding-top:65px;padding-bottom:65px}
.steps-list>h2{font-size:40px;line-height:1.1}
.steps-list>article{background:#FBF6EE;border:1px solid #FFFFFF;border-radius:24px;padding:28px;box-shadow:var(--shadow-sm);counter-increment:steps}
.steps-list>article:before{content:counter(steps,decimal-leading-zero);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#172239;color:#F4EBDD;font-size:14px;margin-bottom:25px}
.steps-list h3{font-size:24px}.steps-list p{font-size:16px;line-height:1.75;margin-top:16px;color:#65616A}
/* Shared body chapters: less dead space, readable text and deliberate surfaces. */
.content-section{padding-top:55px;padding-bottom:55px;align-items:start;gap:7vw;border:0}
.content-section h2{font-size:clamp(31px,3.1vw,46px);line-height:1.13;transform:none;max-width:520px}
.content-section .prose{background:#FFF9F080;border:1px solid #FFFFFF9C;border-radius:26px;padding:30px 34px;box-shadow:var(--shadow-sm)}
.content-section .prose p{font-size:19px;line-height:1.85;transform:none;opacity:1}
.contact-band{margin:40px 20px 60px;padding:55px 5vw;border-radius:var(--radius-lg);background:radial-gradient(ellipse at 100% 0,#58657B66,transparent 65%),#172239;color:#F4EBDD;gap:5vw;box-shadow:var(--shadow-deep)}
.contact-band h2{font-size:clamp(35px,3.8vw,55px);max-width:700px;line-height:1.1}
.contact-band p{font-size:18px;line-height:1.8;max-width:720px;margin-top:22px;color:#D4D0D6}
.contact-band .button{background:#F5EBDD;color:#172239;box-shadow:inset 0 1px 0 white,0 7px 18px #00000020;border-color:#FFFFFF80;flex-shrink:0}
.contact-band .button:hover{background:#FFF9F0}
.gift-band{margin:24px 20px 60px;border-radius:var(--radius-lg);padding:65px 5vw;background:radial-gradient(ellipse at 0 0,#C57A8555,transparent 65%),#70283F;box-shadow:var(--shadow-deep);overflow:hidden}
.gift-band h2{font-size:clamp(44px,4.8vw,72px)}
.gift-band .button{box-shadow:0 8px 20px #300B2525,inset 0 1px 0 #FFFFFF}
/* Cards clearly communicate linked destinations. */
.community-directory{padding-top:70px;padding-bottom:70px;grid-template-columns:.7fr 1.3fr;gap:6vw}
.community-directory h2{font-size:48px}
.link-rows{display:grid;grid-template-columns:1fr;gap:14px}
.link-rows a{padding:26px 30px;background:linear-gradient(145deg,#FFF9F0,#EDE2D5);border:1px solid white;border-radius:22px;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s}
.link-rows a h3{font-size:29px}.link-rows a:hover{transform:translateX(5px);box-shadow:var(--shadow)}
.project-grid{gap:22px;margin-top:40px}
.project-card{border:1px solid #FFFFFF35;border-radius:28px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;min-height:320px}
.project-card:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #FFFFFF28;border-radius:50%;right:-90px;bottom:-100px;pointer-events:none}
.project-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-deep)}
.project-card h3{font-size:31px;line-height:1.12;margin-top:auto}.project-card p{font-size:16px;margin-top:22px;line-height:1.7}
.project-symbol{display:grid;place-items:center;width:54px;height:54px;border:1px solid currentColor;border-radius:17px;opacity:.7;margin-bottom:38px}
.project-card.ortus .project-symbol{color:#48654B}
.team-cards{gap:24px;padding-top:55px;padding-bottom:65px;background:none}
.team-card{border:1px solid #FFFFFF;border-radius:30px;box-shadow:var(--shadow);background:#FBF5EA}
.team-card-image{height:340px}
.team-card-role{display:inline-block;padding:7px 13px;background:#7A29400D;border:1px solid #7A294020;border-radius:999px;font-size:14px;margin-bottom:20px}
.team-card-copy{padding:32px}.team-card-copy h2{font-size:34px;line-height:1.1}
.team-card-copy>p:not(.team-card-role){font-size:17px;line-height:1.8}
.team-card-lead{background:radial-gradient(ellipse at top right,#61556966,transparent 65%),#172239;border-color:#FFFFFF30;box-shadow:var(--shadow-deep)}
.team-card-lead .team-card-role{color:#E6C79D;border-color:#E6C79D40;background:#FFFFFF08}
.team-card-lead .team-card-copy h2{font-size:41px}
.team-card-lead .team-card-copy{padding:40px}
.team-card-lead .text-link{border-color:#FFFFFF70}
.team-card-lead .team-card-image{height:410px}
.rector-memory{margin:20px;border-radius:var(--radius-lg);padding:65px 4.5vw;background:#E9DECF}
.rector-heading{gap:7vw;margin-bottom:40px}.rector-heading h2{font-size:clamp(40px,4vw,60px)}
.rector-heading>div>p{font-size:18px}
.rector-timeline:before{left:0}
.rector-row{grid-template-columns:145px 145px 1fr;gap:28px;padding:30px;margin:0 0 20px 15px;border:1px solid #FFFFFFB8;background:#FAF4E8;border-radius:24px;box-shadow:var(--shadow-sm)}
.rector-row:before{left:-16px;width:2px;top:25px;bottom:25px;border-radius:2px}
.rector-period>p{font-size:26px}.rector-portrait{width:145px;height:185px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm)}
.rector-copy h3{font-size:32px}.rector-copy>p{font-size:17px;line-height:1.8;margin-top:18px}
.rector-current{background:#172239;color:#F4EBDD;border-color:#FFFFFF30}
.rector-current .rector-period>p{color:#E4C195}.rector-current .rector-period>span{color:#CCC6D1}.rector-current .rector-sources{border-color:#FFFFFF30}
.rector-current a:hover{color:#E4C195}.rector-current .portrait-credit{color:#CCC6D1}
.place-links{gap:25px;padding-bottom:70px}
.place-links>a{background:#FCF6EB;border:1px solid #FFFFFF;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);padding:0 0 30px;transition:transform .25s}
.place-links>a:hover{transform:translateY(-5px)}
.place-links img{height:320px;object-fit:cover;margin-bottom:28px}.place-links h2,.place-links p{margin-left:30px;margin-right:30px}.place-links h2{font-size:31px}
.history-feature{padding-top:60px;padding-bottom:60px}.history-year{font-size:clamp(100px,13vw,190px)}
.history-feature h2{font-size:43px}.history-feature p{font-size:19px;line-height:1.8}
.reopening-memory{margin:20px;border-radius:var(--radius-lg);padding:65px 5vw;box-shadow:var(--shadow-deep)}
.daily-passage,.student-life-essay,.project-passage{margin:20px;border-radius:var(--radius-lg);padding:65px 5vw;box-shadow:var(--shadow)}
.daily-passage figure,.student-life-photo{border-radius:26px;overflow:hidden}
.daily-passage h2,.student-life-essay h2{font-size:clamp(36px,4vw,59px)}
.theatre-passage,.orchestra-passage,.ortus-passage{border-radius:var(--radius-lg)}
/* Events are easy to scan: uncropped poster, date, title, action. */
.event-paths{gap:22px;padding-top:55px;padding-bottom:35px}
.event-paths>a{border:1px solid #FFFFFF;border-radius:28px;box-shadow:var(--shadow);padding:33px 36px;background:#FFF9F0;transition:transform .25s}
.event-paths>a:last-child{background:#EAE0D4}.event-paths>a:hover{transform:translateY(-5px)}
.event-paths h2{font-size:40px}.event-paths p{font-size:17px;margin-top:15px}
.events-collection{padding-top:45px;padding-bottom:50px}
.events-collection>h2{font-size:43px;margin-bottom:30px}
.events-grid{gap:24px}
.event-card{background:#FBF5EA;border:1px solid #FFFFFF;border-radius:28px;box-shadow:var(--shadow);overflow:hidden;transition:transform .25s,box-shadow .25s}
.event-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-deep)}
.event-card>a{border:0;padding:18px;grid-template-columns:.8fr 1fr;gap:23px;height:100%}
.event-card-poster{border-radius:17px;overflow:hidden;background:#E7DECF;align-self:stretch;display:grid;align-items:center}
.event-card-poster img{height:auto;width:100%;max-height:none;object-fit:contain}
.event-card-copy{padding:12px 8px 12px 0;align-self:center}
.event-card-date{font-size:14px;padding:6px 10px;border:1px solid #7A294028;border-radius:10px;display:inline-block;background:#7A294009}
.event-card-copy h3{font-size:29px;line-height:1.1}
.event-card-copy>p:not(.event-card-date){font-size:15px;line-height:1.75;margin-top:18px}
.event-card-copy .text-link{font-size:13px;margin-top:15px}
.event-crosslink{margin:30px 20px 60px;border-radius:32px;padding:40px 5vw;background:#E6DAC9;box-shadow:inset 0 1px 0 #FFFFFF}
.event-crosslink h2{font-size:36px}.event-crosslink p{font-size:18px}
.event-article{padding-top:65px}.event-article-header{max-width:1100px}
.event-article h1{font-size:clamp(43px,5.7vw,82px);max-width:1100px}
.event-facts{border:1px solid #FFFFFF;background:#FBF5EB;border-radius:24px;padding:28px;box-shadow:var(--shadow-sm);margin:40px 0 50px}
.event-poster{padding:15px;background:#FCF7EE;border:1px solid #FFFFFF;border-radius:27px;box-shadow:var(--shadow-deep)}
.event-poster img{border-radius:15px}.event-poster .text-link{margin:15px 10px 0}
.event-body>p{font-size:19px;line-height:1.9}.event-program article{padding:25px;background:#FBF5EB;border:1px solid white;border-radius:22px;box-shadow:var(--shadow-sm)}
.event-program p{font-size:18px}
.event-price{padding:30px;background:#E6D9C6;border:1px solid #FFFFFF;border-radius:26px}
.event-contact{padding:30px;background:#172239;border:1px solid #FFFFFF30;border-radius:26px;color:#FAF3E9;box-shadow:var(--shadow)}
.event-contact .button{background:#F5EBDD;color:#172239;border-color:#FFFFFF70}
/* News, archive, donations and requests share the same level of finish. */
.news-grid{gap:26px}
.news-card{border-radius:28px;overflow:hidden;background:#FCF6ED;border:1px solid #FFFFFF;box-shadow:var(--shadow);padding:12px 12px 28px;transition:transform .25s,box-shadow .25s}
.news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-deep)}
.news-media{border-radius:19px;overflow:hidden}
.news-card h3{padding:0 16px;font-size:29px;line-height:1.15}.news-card .news-meta{padding:0 16px;margin-top:22px;margin-bottom:15px;font-size:13px}
.editorial-news .news-grid{grid-template-columns:1.2fr 1fr;gap:28px;align-items:start}
.editorial-news .news-card:nth-child(2){margin-top:70px;padding-top:12px}
.editorial-news .news-card h3{font-size:32px}
.filter-bar{background:#FBF5EA;border:1px solid #FFFFFF;border-radius:26px;padding:25px;box-shadow:var(--shadow-sm)}
.search-label input{font-size:26px}.filter-options{gap:9px}
.filter-options button,.archive-tabs button{border-radius:999px;border-color:#17223922;min-height:44px;background:#FFFBF4;padding:10px 17px;font-size:14px;box-shadow:0 2px 4px #17223908}
.filter-options button[aria-pressed=true],.archive-tabs button[aria-pressed=true]{box-shadow:0 5px 10px #7A294025;background:#7A2940;border-color:#7A2940;color:#FFF9F0}
.gallery-item{padding:12px 12px 22px;border:1px solid #FFFFFF;background:#FCF6ED;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}
.gallery-item img{border-radius:17px}.gallery-item>span{font-size:25px;padding-left:12px}
#photo-dialog{border-radius:26px;box-shadow:0 30px 120px #00000080;border:1px solid #FFFFFF40}
#photo-dialog::backdrop{background:#0D1427CC;backdrop-filter:blur(12px)}
.article-header{max-width:1000px}.article-header h1{font-size:clamp(43px,5.3vw,80px)}
.article-visual{border-radius:30px;overflow:hidden;box-shadow:var(--shadow-deep)}
.article-body>p{font-size:19px;line-height:1.9}
.bank-card{border:1px solid #FFFFFF;border-radius:28px;background:linear-gradient(140deg,#FFF9ED,#E8D9C2);box-shadow:var(--shadow-deep);padding:38px}
.bank-card .iban{font-size:clamp(19px,2vw,29px);overflow-wrap:anywhere;letter-spacing:0}
.faq details{padding:23px 27px;background:#FBF6ED;border:1px solid #FFFFFF;border-radius:20px;margin-bottom:13px;box-shadow:var(--shadow-sm)}
.faq summary{padding:0;min-height:30px;font-size:22px}.faq p{font-size:18px;line-height:1.8}
.faq details[open]{background:#FFF9F0;box-shadow:var(--shadow)}
.donation-intro h2{font-size:60px}.donation-section h2{font-size:48px}.faq-section h2{font-size:48px}
.contact-layout{gap:7vw;align-items:start}
.contact-layout>aside{position:sticky;top:140px}
.contact-layout h2{font-size:44px;line-height:1.1}
#request-form,.request-preview{padding:34px;border:1px solid #FFFFFF;border-radius:30px;background:#FCF7EF;box-shadow:var(--shadow)}
input,textarea,select{border-radius:14px;border:1px solid #17223928;background:#FFFCF6;box-shadow:inset 0 2px 5px #17223904;padding:15px 16px;color:#172239}
input:focus,textarea:focus,select:focus{background:#FFFFFF;border-color:#7A2940}
label{font-size:15px;font-weight:500;line-height:1.5}
#stay-fields{border:1px solid #17223920;border-radius:20px;background:#EEE4D6;padding:20px}
#stay-fields legend{padding:0 8px;font-size:16px}
.address-box{padding:25px;border:1px solid #FFFFFF;border-radius:24px;background:#EAE0D2;box-shadow:var(--shadow-sm)}
.caption{font-size:13px;line-height:1.7}.form-row{gap:18px}
/* A contained footer closes the page instead of cutting it off. */
.site-footer{margin:0 20px 20px;border:1px solid #FFFFFF25;border-radius:var(--radius-lg);padding:65px 5vw 28px;background:radial-gradient(ellipse at top left,#57596E55,transparent 60%),#172239;box-shadow:var(--shadow-deep)}
.footer-top{gap:4vw}.footer-top a{font-size:15px;line-height:1.6}.footer-top p{font-size:16px;line-height:1.6}.footer-top .brand img{width:185px}
.footer-bottom{margin-top:40px;font-size:12px;padding-top:24px}
/* The menu is a frosted, scrollable sheet with visible grouped destinations. */
.site-menu{inset:14px;margin:0;width:calc(100% - 28px);height:calc(100svh - 28px);max-height:calc(100svh - 28px);border:1px solid #FFFFFF;border-radius:32px;background:#F6EFE5F5;box-shadow:0 35px 100px #090F2955;overflow:auto}
.site-menu::backdrop{background:#101A33B8;backdrop-filter:blur(14px)}
.dialog-top{height:95px;padding:0 4vw;background:#F6EFE5F5;border-color:#17223916}
.dialog-top button{padding:12px 18px;border:1px solid #17223925;border-radius:999px;background:#FFFBF380;font-size:14px}
.menu-links{padding:20px 4vw 35px;gap:16px 25px}
.menu-links>a,.menu-group>summary{font-size:30px;line-height:1.13;padding:24px;border:1px solid #FFFFFF;border-radius:22px;background:#FFFBF59C;box-shadow:var(--shadow-sm)}
.menu-links>a:hover,.menu-group>summary:hover{background:#FFFFFF;color:#7A2940}
.menu-group[open]{background:#FFF9F0;border-radius:22px;box-shadow:var(--shadow)}
.menu-group[open]>summary{box-shadow:none;border-bottom:1px solid #17223912;border-bottom-left-radius:0;border-bottom-right-radius:0}
.menu-children{padding:10px 24px 22px;border:0;display:grid;grid-template-columns:1fr 1fr;gap:2px 15px}
.menu-children a{font-size:16px;line-height:1.5;padding:10px 0;min-height:44px}
.menu-children a:hover{text-decoration:underline;text-underline-offset:5px}
.menu-bottom{padding:24px 4vw 30px;border-top:1px solid #17223918}
/* Original ORTUS material keeps its palette and typography. */
.interior-page.ortus .tale-label{color:#48654B}.interior-page.ortus .tale-actions .button{background:#48654B;color:#FFF2DD;border-color:#48654B;box-shadow:0 7px 20px #48654B30}
@media(min-width:1700px){.site-header{max-width:1550px;left:auto;margin-left:auto;margin-right:auto;transform:none}.home-page .site-header,.home-page .site-header.on-story{left:50%;margin:0;transform:translateX(-50%)}.tale-stage{max-width:1700px;margin:auto}}
@media(max-width:1150px){.header-links>a{padding:12px 10px}.header-links{gap:2px}.header-links>a:nth-child(4){display:none}.site-header{padding:0 20px}.event-card-copy h3{font-size:25px}.audience-card{padding:27px}.rector-row{grid-template-columns:115px 115px 1fr;gap:24px}.rector-portrait{width:115px;height:150px}.rector-copy h3{font-size:29px}.rector-period>p{font-size:24px}}
@media(max-width:1000px) and (min-width:761px){.header-links>a:nth-child(-n+3){display:none}.tale-stage{gap:4vw}.tale-copy h1{font-size:45px}.tale-copy>p:not(.tale-label){font-size:17px}.tale-actions .button{padding:14px 18px;font-size:14px}.welcome-glass{left:-10px;right:15px;padding:20px}.welcome-glass>span{font-size:24px}.home-page .home-paths{grid-template-columns:1fr;gap:35px}.home-paths>div{position:static}.home-page .path-list{grid-template-columns:repeat(3,1fr)}.home-page .path-list a:first-child{grid-column:span 2}.audience-grid{gap:15px}.audience-card{padding:24px}.audience-card h3{font-size:24px}.hospitality-services{gap:4vw}.hospitality-services .amenities-grid li{font-size:17px;padding:20px}.project-card{padding:28px}.project-card h3{font-size:28px}.event-card>a{gap:20px}.footer-top{gap:35px}}
@media(max-width:760px){
 :root{--gutter:6vw;--header:94px;--radius-lg:29px;--radius:24px}
 .site-header,.home-page .site-header,.home-page .site-header.on-story{left:12px;top:12px;width:calc(100% - 24px);height:66px;margin:12px 12px 0;padding:0 16px;border-radius:21px;gap:12px}
 .home-page .site-header,.home-page .site-header.on-story{position:fixed;margin:0}
 .site-header .brand,.home-page .site-header.on-story .brand{font-size:16px;letter-spacing:-.045em}
 .header-links{gap:0}.header-links>a:not(.header-support){display:none}
 .site-header .header-links .header-support,.home-page .site-header.on-story .header-support{padding:10px 15px;font-size:13px;margin-left:0;min-height:44px;display:grid;place-items:center}
 .header-links button{font-size:13px;padding:11px 8px;margin-left:5px;gap:8px}.menu-icon{width:18px}
 .button,.tale-copy .button{min-height:52px;padding:14px 21px;font-size:14px}
 .tale-stage,.tale-ospitalita .tale-stage{grid-template-columns:1fr;padding:38px var(--gutter) 55px;gap:36px;min-height:0;overflow:clip}
 .tales-on .interior-tale{height:auto}.tales-on .tale-stage{position:relative;top:0;height:auto;min-height:0}
 .tales-on .tale-copy{transform:none}
 .tale-copy h1,.tale-ospitalita .tale-copy h1{font-size:clamp(37px,10.2vw,64px);line-height:1.05}
 .tale-copy>p.tale-label{font-size:16px;margin:0 0 17px}
 .tale-copy>p:not(.tale-label){font-size:17px;line-height:1.7;margin:23px 0 26px}
 .tale-actions{gap:10px}.tale-actions .button{width:fit-content}.tale-secondary{font-size:14px;padding:12px 0}
 .tale-visual,.tales-on .tale-visual{height:380px;max-height:none}
 .tale-visual figure{border-radius:22px}.tale-visual figcaption{font-size:11px}
 .tale-comunita,.tale-cappella{margin:18px 12px 0;border-radius:29px}
 .tale-comunita .tale-stage,.tale-cappella .tale-stage{padding:35px 6vw 45px}
 .tale-comunita .tale-visual,.tale-cappella .tale-visual{height:330px}
 .tale-ospitalita .tale-visual{height:400px;margin:0 0 24px}
 .tale-ospitalita .hospitality-window{border-width:4px;border-radius:78px 24px 24px 24px}
 .welcome-glass{left:16px;right:16px;bottom:-22px;padding:21px 22px;border-radius:21px;transform:none}
 .welcome-glass>span{font-size:25px}.welcome-glass>p{font-size:14px}.welcome-glass>strong{font-size:13px;margin-top:13px}
 .tale-ospitalita .tale-actions .button{padding:14px 19px;font-size:13px}
 .care-network{gap:10px;padding-left:28px}.care-node{padding:15px 18px;border-radius:16px}.care-node h2{font-size:23px}.care-node p{font-size:13px}.care-node:before{left:-25px;top:23px}.care-line{left:8px}
 .study-thought,.culture-line{font-size:26px;padding:13px 17px;bottom:0}.student-life-essay,.daily-passage,.project-passage{margin:18px 12px;padding:42px 6vw}
 .student-life-photo{margin:0}.student-life-essay h2{font-size:36px}
 .event-doorways{gap:15px}.event-doorways a{border-radius:22px;padding:25px}.event-doorways span{font-size:35px}
 .welcome-intro{grid-template-columns:1fr;gap:26px;padding-top:45px;padding-bottom:35px}
 .welcome-intro h2{font-size:33px;max-width:550px}.welcome-intro .prose p{font-size:18px;line-height:1.85}
 .welcome-audience{padding-top:25px;padding-bottom:45px}.welcome-audience .section-heading h2{font-size:31px}
 .audience-grid{grid-template-columns:1fr;gap:15px}.audience-card{display:grid;grid-template-columns:47px 1fr;gap:0 18px;padding:25px;border-radius:23px}
 .icon-tile{width:47px;height:47px;border-radius:15px;grid-row:1/3;margin:0}.icon-tile .ui-icon{width:23px;height:23px}
 .audience-card h3{font-size:24px;max-width:100%}.audience-card p{font-size:16px;margin-top:13px;grid-column:2}
 .welcome-availability{font-size:15px;margin-top:25px}
 .hospitality-services{margin:0 12px;padding:42px 6vw;border-radius:29px;grid-template-columns:1fr;gap:35px}
 .services-intro{position:static}.services-intro h2{font-size:42px}.services-intro p{font-size:17px;line-height:1.75;margin-top:22px}
 .services-intro .button{margin-top:25px}.hospitality-services .amenities-grid{gap:11px}
 .hospitality-services .amenities-grid li{padding:20px 18px;font-size:16px;border-radius:19px;min-height:135px;gap:19px}
 .amenities-grid li:last-child{min-height:87px}.service-symbol .ui-icon{width:26px;height:26px}
 .welcome-values{grid-template-columns:1fr;gap:30px;padding-top:45px;padding-bottom:20px}.welcome-values-symbol{width:105px;border-radius:32px;justify-self:start;margin-left:5px}.welcome-values-symbol .ui-icon{width:47px;height:47px}
 .welcome-values h2{font-size:35px}.welcome-values p{font-size:18px;margin-top:22px}
 .steps-list{padding-top:40px;padding-bottom:25px;grid-template-columns:1fr;gap:15px}.steps-list>h2{font-size:34px;margin-bottom:10px}.steps-list>article{padding:25px;display:grid;grid-template-columns:38px 1fr;gap:0 18px}.steps-list>article:before{width:36px;height:36px;margin:0;grid-row:1/3;font-size:12px}.steps-list h3{font-size:23px}.steps-list p{grid-column:2;margin-top:13px;font-size:16px}
 .content-section{padding-top:32px;padding-bottom:27px;gap:23px}.content-section h2{font-size:32px}.content-section .prose{padding:25px;border-radius:23px}.content-section .prose p{font-size:17px;line-height:1.85}
 .contact-band{margin:30px 12px 38px;padding:37px 6vw;border-radius:29px}.contact-band h2{font-size:35px}.contact-band p{font-size:17px;line-height:1.8;margin-top:20px}.contact-band .button{margin-top:25px}
 .gift-band{margin:20px 12px 38px;padding:43px 6vw;border-radius:29px}.gift-band h2{font-size:45px}.gift-band p{font-size:18px}.gift-art{max-width:300px;min-height:270px}
 .home-page .vocation-passage{margin:12px 12px 0;padding:43px 6vw;gap:32px;border-radius:29px}.vocation-copy h2{font-size:40px}.vocation-copy p{font-size:17px}.vocation-photo img{height:340px;border-radius:22px}.vocation-photo{border-radius:22px}
 .arrival-copy h1{font-size:clamp(52px,13.5vw,82px);line-height:1}.arrival-copy p{font-size:16px}.arrival-copy .button{font-size:14px}
 .scroll-ready .story-skip{padding:10px 15px;font-size:12px}.home-page .home-paths{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:45px}.home-paths h2{font-size:38px}
 .home-page .path-list{gap:12px;grid-template-columns:1fr 1fr}.home-page .path-list a{min-height:185px;padding:22px!important;border-radius:23px}.home-page .path-list a:first-child{min-height:170px}.home-page .path-list a h3{font-size:24px}.home-page .path-list a span{font-size:14px;line-height:1.6;margin-top:20px}
 .community-directory{grid-template-columns:1fr;gap:28px;padding-top:45px;padding-bottom:45px}.community-directory h2{font-size:39px}.link-rows a{padding:24px}.link-rows a h3{font-size:28px}
 .project-grid{gap:15px;margin-top:28px}.project-card{border-radius:24px;padding:29px;min-height:280px}.project-symbol{width:49px;height:49px;margin-bottom:32px}.project-card h3{font-size:33px}
 .team-cards{gap:20px;padding-top:35px;padding-bottom:40px}.team-card{border-radius:25px}.team-card-image,.team-card-lead .team-card-image{height:310px}.team-card-copy,.team-card-lead .team-card-copy{padding:28px}.team-card-copy h2,.team-card-lead .team-card-copy h2{font-size:32px}.team-card-role{font-size:13px;padding:6px 11px}.team-card-copy>p:not(.team-card-role){font-size:17px}
 .rector-memory{margin:12px;border-radius:29px;padding:40px 6vw}.rector-heading{gap:22px;margin-bottom:30px}.rector-heading h2{font-size:39px}.rector-heading>div>p{font-size:17px}.rector-row{grid-template-columns:75px 1fr;gap:18px;margin-left:0;padding:23px;border-radius:22px;margin-bottom:15px}.rector-row:before,.rector-timeline:before{display:none}.rector-period{grid-column:1/-1;position:static}.rector-period>p{font-size:27px}.rector-portrait{width:75px;height:100px;border-radius:14px}.rector-copy h3{font-size:25px}.rector-copy>p{font-size:16px;margin-top:0}.rector-biography p{font-size:16px}.rector-period>span{font-size:11px}
 .place-links{gap:20px}.place-links>a{border-radius:25px}.place-links img{height:250px}.place-links h2,.place-links p{margin-left:25px;margin-right:25px}.place-links h2{font-size:29px}
 .reopening-memory{margin:12px;padding:43px 6vw;border-radius:29px}.reopening-memory p{font-size:18px}.reopening-memory h2{font-size:37px}.history-feature h2{font-size:36px}.history-feature p{font-size:18px}
 .event-paths{gap:15px;padding-top:35px;padding-bottom:20px}.event-paths>a{padding:28px;border-radius:23px}.event-paths h2{font-size:35px}.event-paths p{font-size:16px;margin-top:12px}
 .events-collection{padding-top:30px;padding-bottom:30px}.events-collection>h2{font-size:34px;margin-bottom:25px}.events-grid{gap:20px}.event-card{border-radius:24px}.event-card>a{padding:14px;grid-template-columns:.75fr 1fr;gap:17px}.event-card-poster{border-radius:13px}.event-card-copy{padding:5px 0}.event-card-copy h3{font-size:24px}.event-card-date{font-size:12px;padding:5px 7px;border-radius:8px;margin-bottom:14px}.event-card-copy>p:not(.event-card-date){font-size:14px;margin-top:16px}.event-card-copy .text-link{font-size:12px;margin-top:12px}
 .event-crosslink{margin:25px 12px 38px;padding:32px 6vw;border-radius:27px}.event-crosslink h2{font-size:33px}.event-crosslink p{font-size:17px}
 .event-article{padding-top:42px}.event-article h1{font-size:40px}.event-subtitle{font-size:21px}.event-facts{padding:24px;border-radius:23px;gap:20px;margin:30px 0 35px}.event-facts dd{font-size:17px}.event-layout{gap:35px}.event-body>p{font-size:18px;line-height:1.85}.event-poster{border-radius:23px;padding:12px}.event-program article{padding:24px}.event-program p{font-size:17px}.event-contact,.event-price{padding:25px;border-radius:23px}.event-contact .button{font-size:13px}
 .news-card{border-radius:24px;padding:10px 10px 25px}.news-media{border-radius:16px}.news-card h3,.editorial-news .news-card h3{font-size:29px;padding:0 14px}.news-card .news-meta{padding:0 14px}.editorial-news .news-grid{grid-template-columns:1fr;gap:23px}.editorial-news .news-card:nth-child(2){margin-top:0;padding-top:10px}
 .filter-bar{padding:22px;border-radius:24px}.filter-options button,.archive-tabs button{padding:9px 13px;font-size:13px}.search-label input{font-size:23px}.gallery-item{border-radius:23px}.gallery-item img{border-radius:15px}
 .article-header h1{font-size:39px}.article-visual{margin-left:0;margin-right:0;border-radius:23px}.article-body>p{font-size:18px}
 .donation-intro h2{font-size:48px}.donation-section h2,.faq-section h2{font-size:38px}.bank-card{padding:28px;border-radius:25px}.bank-card .iban{font-size:21px}.faq details{padding:23px}.faq summary{font-size:20px}.faq p{font-size:17px}
 .contact-layout>aside{position:static}.contact-layout h2{font-size:37px}#request-form,.request-preview{padding:24px;border-radius:25px}.contact-layout{gap:32px}.form-row{gap:0}input,textarea,select{padding:14px 13px;font-size:16px}#stay-fields{padding:17px}.address-box{padding:24px}.caption{font-size:12px}
 .site-footer{margin:0 12px 12px;padding:43px 6vw 25px;border-radius:29px}.footer-top{gap:25px}.footer-top a{font-size:15px}.footer-bottom{font-size:12px;margin-top:30px}
 .site-menu{inset:9px;width:calc(100% - 18px);height:calc(100svh - 18px);max-height:calc(100svh - 18px);border-radius:25px}.dialog-top{height:85px;padding:0 6vw}.dialog-top .site-wordmark{font-size:18px}.dialog-top button{font-size:13px;padding:10px 14px;gap:12px}.dialog-top button span{font-size:25px}
 .menu-links{padding:12px 5vw 25px;grid-template-columns:1fr;gap:12px}.menu-links>a,.menu-group>summary{font-size:25px;padding:22px;border-radius:19px}.menu-children{grid-template-columns:1fr;padding:8px 22px 20px;gap:0}.menu-children a{font-size:16px}.menu-bottom{padding:22px 6vw;font-size:13px}
}
@media(max-width:380px){
 .site-header,.home-page .site-header,.home-page .site-header.on-story{padding:0 13px;gap:8px}.site-header .brand,.home-page .site-header.on-story .brand{font-size:14px}.site-header .header-links .header-support,.home-page .site-header.on-story .header-support{padding:9px 11px;font-size:12px}.header-links button{padding:11px 6px;gap:6px;margin-left:2px;font-size:12px}
 .tale-copy h1,.tale-ospitalita .tale-copy h1{font-size:36px}.tale-ospitalita .tale-actions{flex-direction:column;align-items:flex-start}.tale-ospitalita .tale-visual{height:350px}
 .home-page .path-list{grid-template-columns:1fr}.home-page .path-list a:first-child{grid-column:auto}.home-page .path-list a{min-height:155px}
 .hospitality-services .amenities-grid li{padding:19px 15px;font-size:15px}.audience-card{padding:22px;gap:0 15px;grid-template-columns:41px 1fr}.icon-tile{width:41px;height:41px;border-radius:13px}.audience-card h3{font-size:22px}
 .event-card>a{grid-template-columns:1fr;gap:20px;padding:17px}.event-card-poster{max-height:390px}.event-card-poster img{max-height:390px}.event-card-copy{padding:0 5px 8px}.event-card-copy h3{font-size:27px}.event-card-copy>p:not(.event-card-date){font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{scroll-behavior:auto!important;transition:none!important}
 .button:hover,.project-card:hover,.event-card:hover,.news-card:hover,.link-rows a:hover,.path-list a:hover{transform:none!important}
 .tales-on .tale-stage{position:relative;height:auto;top:0}.tales-on .interior-tale{height:auto}
}
@media(prefers-contrast:more){.site-header,.home-page .site-header,.home-page .site-header.on-story{background:#172239;backdrop-filter:none}.welcome-glass{background:#FFF9EF;backdrop-filter:none}.audience-card,.news-card,.team-card,.event-card{border-color:#17223980}}
#request-form input,#request-form textarea,#request-form select{border-radius:14px;border:1px solid #17223928;background:#FFFCF6;box-shadow:inset 0 2px 5px #17223904;padding:15px 16px;color:#172239;font-size:16px}
#request-form input:focus,#request-form textarea:focus,#request-form select:focus{background:white;border-color:#7A2940}
.steps-list h3{margin-bottom:0}
/* Direct navigation must reach its target without competing with scroll stories. */
html{scroll-behavior:auto}
.scroll-ready .story-skip{opacity:1;pointer-events:auto;color:#172239}
#request-form input,#request-form textarea,#request-form select{border-color:#79777E}
.home-page .path-list a:first-child{background:linear-gradient(90deg,#172239 2%,#172239E8 48%,#17223930),url('assets/seminario.jpg') center/cover;min-height:220px}
.home-page .path-list a:first-child h3,.home-page .path-list a:first-child span{max-width:65%}
@media(max-width:760px){.home-page .path-list a:first-child{min-height:200px}.home-page .path-list a:first-child h3,.home-page .path-list a:first-child span{max-width:85%}}
.event-category-nav{display:flex;flex-wrap:wrap;gap:5px;width:fit-content;margin:40px var(--gutter) 0;padding:6px;border:1px solid #FFFFFF;border-radius:999px;background:#FBF6EEDB;box-shadow:var(--shadow-sm)}
.event-category-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 21px;border-radius:999px;font-size:15px}
.event-category-nav a[aria-current=page]{background:#7A2940;color:#FFF9EF;box-shadow:0 5px 12px #7A294020}
.event-category-nav a:hover{background:#E9DFD0;color:#172239}.event-category-nav a[aria-current=page]:hover{background:#652238;color:#FFF9EF}
@media(max-width:760px){.event-category-nav{margin-top:28px}.event-category-nav a{padding:10px 16px;font-size:14px}}

.project-symbol img{width:auto;height:31px;max-width:35px}
