/* Brand colours sampled from the supplied NAD and Accademia Cappiello logos. */
:root{--nad:#f47b2b;--ac:#e5007e;--plum:#331229;--peach:#fff0e4;--pink:#ffecf5;--ink:#262121}
body{background:#fffaf5;color:var(--ink)}
.header{background:#fffaf5f5;border-bottom-color:#efdfd6;gap:23px}
.wordmark svg>circle:nth-of-type(1){fill:var(--nad)}.wordmark svg>circle:nth-of-type(2){fill:var(--ac)}.wordmark svg>circle:nth-of-type(3){fill:#331229}
.language-switch{display:flex;gap:3px;border:1px solid #e8cad9;padding:4px;flex-shrink:0;border-radius:24px;line-height:1}
.language-switch a{font-size:10px;letter-spacing:.4px;padding:10px 11px;border-radius:18px;font-weight:600;color:#74606b;transition:background .2s,color .2s}
.language-switch a[aria-current=page]{background:var(--ac);color:#fff}.language-switch a:hover{background:#f9d4e8;color:#4b1636}.language-switch a[aria-current=page]:hover{background:#b30062;color:white}
.header-link{margin-left:auto;color:#6a2049;border-color:#e5aac8}.desktop-nav{margin-left:auto;gap:28px}.desktop-nav a:after{background:var(--ac);height:2px}
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:80;pointer-events:none}.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--nad),var(--ac));transform:scaleX(0);transform-origin:left}
.hero-copy{position:relative;background:radial-gradient(ellipse at 5% 0%,#ffe1ca 0,transparent 60%),#fffaf5;overflow:hidden}
.hero-copy:before{content:'';position:absolute;width:250px;height:250px;border:1px solid #f3bfca;border-radius:50%;top:-165px;right:-90px;pointer-events:none}
.hero h1 em{color:var(--ac)}.hero .dot{background:var(--ac)}.hero-visual{background:#b76c55}.hero-photo{filter:saturate(.95)}
.hero-stamp{background:var(--nad);color:#321c11;box-shadow:10px 10px 0 #e5007e;transition:transform .35s}.hero-stamp:hover{transform:translateY(-6px)}.hero-stamp a{transition:transform .2s}.hero-stamp a:hover{transform:translate(3px,-3px)}
.hero .button-dark{background:var(--ac);color:#fff}.hero .button-dark:hover{background:#b80066}.button span,.text-link span,.header-link span{transition:transform .25s}.button:hover span,.text-link:hover span,.header-link:hover span{transform:translate(3px,-3px)}
.brand-strip{position:relative;border-bottom:0}.brand-strip:after{content:'';height:3px;position:absolute;bottom:0;left:64px;right:64px;background:linear-gradient(90deg,var(--nad) 0 50%,var(--ac) 50% 100%)}
.brand-cappiello{background:var(--plum);padding:12px 17px;color:#fff}.brand-cappiello img{filter:none;width:190px;height:auto}.brand-cappiello>span{color:#f8c9e4;font-size:7px}
.connection-strip{display:flex;align-items:center;background:var(--nad);border-top:0;color:#3b1b0d;overflow:hidden;height:68px;position:relative}
.connection-window{overflow:hidden;flex:1}.connection-track{display:flex;width:max-content;animation:connections 34s linear infinite}.connection-track>span{white-space:nowrap;display:block;font-size:25px;font-weight:600;letter-spacing:-.6px;padding-right:32px}.connection-track i{font-style:normal;color:#741536;display:inline-block;margin:0 30px;font-size:30px;vertical-align:middle}
.motion-toggle{height:68px;width:58px;flex-shrink:0;border-left:1px solid #c9562c;background:var(--nad);display:grid;place-items:center;z-index:1}.motion-toggle:hover{background:#f89550}.play-symbol{display:none}.motion-toggle[aria-pressed=true] .pause-symbol{display:none}.motion-toggle[aria-pressed=true] .play-symbol{display:block}
@keyframes connections{to{transform:translateX(-50%)}}
.section-label{border-color:#e5cfcb}.section-label>span:first-child{color:#92375f}.vision h2 em{color:var(--ac)}.text-link{border-color:#bd5588}.text-link:hover{color:#b60065}
.principles>div{border-top:3px solid var(--nad);padding:24px 20px;background:#fff0e4;transition:transform .3s,background .3s}.principles>div:nth-child(2){background:#ffedf6;border-color:var(--ac)}.principles>div:nth-child(3){background:#f1e9f6;border-color:#964b98}.principles>div:hover{transform:translateY(-6px)}.principles .small-number{color:#925127}.principles>div:nth-child(2) .small-number{color:#9b235e}
.territories{background:var(--peach);position:relative;overflow:hidden}.territories:before{content:'';position:absolute;right:-160px;top:-190px;width:420px;height:420px;border:60px solid #f47b2b0a;border-radius:50%;pointer-events:none}.territories h2 em{color:#a94b15}.network-card{background:#fffcf9;border-top:4px solid var(--nad);box-shadow:0 18px 50px #a4542910}.city-tab{padding-left:12px;padding-right:12px;transition:background .25s,padding .25s;border-color:#edcdbb}.city-tab.active{background:var(--nad);padding-left:20px}.city-tab.active strong,.city-tab.active small,.city-tab.active .city-number{color:#42200e}.city-tab[data-city=firenze].active{background:var(--ac)}.city-tab[data-city=firenze].active strong,.city-tab[data-city=firenze].active small,.city-tab[data-city=firenze].active .city-number,.city-tab[data-city=firenze].active .city-arrow{color:#fff}.city-tab:hover:not(.active){background:#fbe3d4}.city-arrow{transform:rotate(0deg);transition:transform .25s,opacity .2s}.city-tab:hover .city-arrow{transform:translate(3px,-3px)}
.map-node.selected>circle:first-child{fill:var(--nad);transform-box:fill-box;transform-origin:center;animation:node-breathe 2.8s ease-in-out infinite}.map-node[data-node=firenze].selected>circle:first-child{fill:var(--ac)}.map-node[data-node=firenze].selected .node-center{fill:white}.map-node text{fill:#65564c}.network-map>path:last-of-type{stroke:var(--ac);stroke-dasharray:5 7;animation:network-flow 5s linear infinite}.map-node.future.selected>circle:first-child{fill:#ffc2e2;stroke:var(--ac)}.city-panel{border-color:#edd4c5}.city-panel.refreshing,.audience-panel.refreshing{animation:panel-in .4s ease both}
@keyframes node-breathe{50%{transform:scale(1.14)}}@keyframes network-flow{to{stroke-dashoffset:-48}}@keyframes panel-in{from{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.method-content h2 em{color:var(--ac)}.method-image img{filter:saturate(.9);transition:transform .7s}.method-image{isolation:isolate}.method-image:after{background:var(--nad);left:-14px;bottom:18px}.method-image:hover img{transform:translate(5px,-5px)}.method-steps>div{border-color:#edcfdc}.method-steps>div>span{color:#a9286f}.method-steps>div:hover h3{color:#ba0066}
blockquote{background:var(--pink);border:0;padding:54px 35px;margin-top:75px;position:relative}blockquote:before{content:'“';font-family:Georgia,serif;position:absolute;top:6px;left:20px;color:#e5007e25;font-size:135px;line-height:1}blockquote em{color:#ba0066}.quote-line{background:var(--nad)}
.dh{background:radial-gradient(ellipse at 95% 15%,#831149 0,transparent 47%),radial-gradient(ellipse at 0% 100%,#593028 0,transparent 45%),#290e22;color:#fff7fc;position:relative}.dh:before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--nad),var(--ac))}.dh .section-label{border-color:#814060}.dh .section-label>span:first-child{color:#ffc1df}.dh .section-label>span:last-child{color:#ffd9eb}.dh-badge{border-color:#b76b95;background:#e5007e12}.dh-heading .eyebrow{color:#ffab71}.dh-heading h2 em{color:#ff9dd2}.dh-heading>p,.format-description,.format-phases details>p{color:#e5c9da}.dh-image img{filter:saturate(1.05);border:1px solid #8f3c67}.dh-image figcaption{color:#d4a9c2}.format-heading>span{color:#ff9a58}.format-phases details,.format-phases details:last-child{border-color:#8b4e71}.format-phases details[open]{background:#ffffff08}.format-phases summary{padding-left:8px;padding-right:8px}.format-phases summary>span,.format-phases summary small,.format-phases summary i{color:#f3c3df}.format-phases summary:hover strong{color:#ffab71}.dh-note{color:#d8b2ca}.outputs{border-color:#8c416c}.outputs>span{color:#edbed9}.outputs b{color:#ff9a58}
.courses h2 em{color:var(--ac)}.course-cards article{background:#fff0e4;border:0;border-top:5px solid var(--nad);transition:transform .3s,box-shadow .3s}.course-cards article:nth-child(2){background:var(--ac);color:white;border-color:#ab005e}.course-cards article:nth-child(3){background:var(--plum);color:white;border-color:var(--ac)}.course-cards article:hover{transform:translateY(-8px);box-shadow:0 20px 28px #95145719}.course-cards article:not(:first-child) .course-tag,.course-cards article:not(:first-child) .course-duration>span,.course-cards article:not(:first-child)>p:not(.course-duration){color:#fff0f8}.course-cards article:not(:first-child) .text-link{border-color:#ffffff80;color:#fff}.course-cards article:first-child .course-tag{color:#98501c}.course-duration{color:#8f3a0b}.course-cards article:not(:first-child) .course-duration{color:white}.course-cards .text-link:hover span{transform:translate(4px,-4px)}
.participate{background:#ffedf6}.participate h2 em{color:#c4006c}.audience-tabs{border-color:#e8bfd4}.audience-tabs button{color:#795469;padding:14px 18px 18px;transition:background .25s}.audience-tabs button[aria-selected=true]{background:var(--ac);color:white;border-color:var(--ac)}.audience-panel .eyebrow{color:#a14071}.audience-panel>div:last-child>p{color:#6f475d}.audience-contribution{border-color:#e4b8d0}.audience-contribution>span{color:#995676}.audience-contribution p{color:#633449}
.closing{max-width:none;background:radial-gradient(ellipse at 0% 100%,#ffdfc3,transparent 55%),radial-gradient(ellipse at 100% 0%,#ffd8ec,transparent 55%),#fffaf5}.closing h2 em{color:var(--ac)}.closing .button{background:var(--ac)}.closing .button:hover{background:#b00062}.footer{border-top:3px solid var(--ac)}.footer-bottom{border-color:#ead2db}
dialog{background:#fffaf7;border-top:5px solid var(--ac)}dialog::backdrop{background:#290e22d9}.dialog-close{color:var(--ac)}dialog .dialog-note{border-color:#ebcddd}
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal-ready.revealed{opacity:1;transform:translateY(0)}
.motion-paused .connection-track,.motion-paused .network-map>path,.motion-paused .map-node.selected>circle:first-child{animation-play-state:paused}.motion-paused .reveal-ready{opacity:1;transform:none;transition:none}.motion-paused .refreshing{animation:none}
html[lang=en] .hero h1{font-size:clamp(64px,6.7vw,102px)}html[lang=en] .hero h1 em{white-space:nowrap}html[lang=en] .section-intro h2{font-size:clamp(38px,4.2vw,60px)}
@media(max-width:1100px){.header{gap:17px}.desktop-nav{gap:19px}.header-link{gap:14px;font-size:10px}.language-switch a{padding:9px;font-size:9px}.brand-strip:after{left:38px;right:38px}.brand-cappiello img{width:158px}.brand-cappiello{padding:10px 12px}.principles>div{padding:20px 15px}.audience-tabs{gap:14px}}
@media(max-width:800px){.header{gap:20px}.language-switch{margin-left:auto}.menu-toggle{margin-left:0}.brand-strip:after{left:26px;right:26px}.brand-cappiello img{width:145px}.brand-cappiello{padding:9px 12px}.connection-strip,.motion-toggle{height:58px}.connection-track>span{font-size:21px}.connection-track i{font-size:25px;margin:0 24px}.hero h1{font-size:58px}.city-tab.active{padding-left:14px}.city-tab{padding-left:7px;padding-right:7px}.audience-tabs{gap:0}.audience-tabs button{padding:14px 14px 18px}.mobile-nav:not([hidden]){background:#fff3f8;border-bottom:3px solid var(--ac)}html[lang=en] .hero h1{font-size:60px}html[lang=en] .hero h1 em{font-size:59px}html[lang=en] .section-intro h2{font-size:40px}}
@media(max-width:580px){.header{gap:14px}.language-switch{padding:3px}.language-switch a{padding:9px 10px;font-size:9px}.menu-toggle{width:27px}.hero-copy{background:radial-gradient(ellipse at 0 0,#ffe1ca,transparent 65%),#fffaf5}.hero h1{font-size:65px}.hero-visual{margin-bottom:10px}.hero-stamp{box-shadow:7px 7px 0 var(--ac)}.brand-strip{gap:11px;margin-left:24px;margin-right:24px}.brand-strip:after{left:0;right:0}.brand-cappiello{padding:8px 10px}.brand-cappiello img{width:118px}.brand-cappiello>span{font-size:5px}.brand-nad img{width:36px;height:36px}.brand-hdemy>span{font-size:9px}.brand-hdemy img{width:22px}.connection-strip,.motion-toggle{height:53px}.connection-track>span{font-size:19px;letter-spacing:-.3px}.connection-track i{font-size:23px;margin:0 21px}.motion-toggle{width:44px}.principles>div{padding:20px;grid-template-columns:25px 1fr}.city-tab{padding:20px 12px}.city-tab.active{padding-left:17px}.method-image:after{left:-8px}blockquote{padding:43px 20px;margin-top:35px}blockquote:before{font-size:90px;left:10px}.course-cards article{padding:25px}.course-cards h3{max-width:75%;font-size:26px}.course-duration{right:25px;top:50px;font-size:50px}.audience-tabs button{padding:12px 10px;font-size:10px;max-width:33.333%}.audience-panel{min-height:380px}.dh-badge{background:#510e35}.closing{padding-left:24px;padding-right:24px}html[lang=en] .hero h1{font-size:69px}html[lang=en] .hero h1 em{font-size:68px}html[lang=en] .section-intro h2{font-size:39px}html[lang=en] .course-cards h3{font-size:25px}html[lang=en] .dh .section-label>span:first-child{max-width:55%;font-size:7px}.network-top{letter-spacing:.5px}}
@media(prefers-reduced-motion:reduce){.connection-track,.network-map>path,.map-node.selected>circle:first-child{animation:none!important}.reveal-ready{opacity:1;transform:none;transition:none}.hero-stamp:hover,.course-cards article:hover,.principles>div:hover,.method-image:hover img{transform:none}}
