:root{--ink:#242139;--muted:#797489;--teal:#009fa6;--paper:#fff;--wash:#f7f6fa;--line:#e5e3ed;--accent:#d85094}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Roboto Condensed',system-ui,sans-serif;font-size:18px;line-height:1.65}a{color:inherit;text-underline-offset:4px}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.15}h1{font-size:clamp(38px,5.2vw,70px);letter-spacing:.025em}h2{font-size:clamp(29px,3.1vw,44px)}h3{font-size:27px}p{color:var(--muted)}.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}.section{padding-block:85px}.soft{background:var(--wash)}.script{font-family:'Caveat',cursive;font-size:29px;line-height:1.4;color:var(--teal);margin:0 0 14px}.center{text-align:center}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.cards{display:grid;gap:25px;margin-top:35px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:18px;padding:32px;background:white;min-width:0}.card p:last-child{margin-bottom:0}.text-link{color:var(--teal);font-size:16px;font-weight:500;display:inline-block}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:13px 25px;border-radius:999px;text-decoration:none;font-size:15px;letter-spacing:.06em;text-transform:uppercase;line-height:1.5;transition:background .18s,transform .18s;cursor:pointer}.button:hover{background:var(--teal);border-color:var(--teal)}.button.small{font-size:12px;padding:10px 17px}.button.light{background:#fff;color:var(--ink);border-color:#fff}.button.ghost{color:white;background:transparent;border-color:#ffffff80}.button.secondary{background:white;color:var(--ink);border-color:var(--line)}.button:disabled{cursor:default;opacity:.55}.site-header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:19px max(30px,calc((100vw - 1220px)/2));min-height:89px;border-bottom:1px solid #eeecf2;background:white;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0;font-size:20px;line-height:1.2}.brand img{height:42px;width:34px;object-fit:contain;filter:brightness(0);opacity:.85}.brand small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:2.2px;color:#92899f;margin-top:6px}.site-header nav{display:flex;gap:23px;align-items:center;font-size:14px;line-height:1.3}.site-header nav>a{text-decoration:none}.site-header nav>a:hover{color:var(--teal)}.menu-toggle{display:none;background:transparent;border:0;font-size:27px;padding:5px 10px;color:var(--ink)}.hero{padding:95px 0 105px;background:#211f38 url('/wp-content/uploads/2026/01/Teatro-sussurri-sfondo-home-scaled.jpg') center/cover;color:white;text-align:center}.hero h1{max-width:930px;margin:0 auto 23px}.hero .script{color:#b5e5e5}.hero-subtitle{font-size:22px;color:#ddd8eb;max-width:740px;margin:0 auto;line-height:1.6}.hero-actions{display:flex;justify-content:center;gap:14px;margin-top:30px;flex-wrap:wrap}.hero.teal{background:#009fa6}.hero.teal .script{color:#bceff0}.photo img,.wide-photo img{display:block;border-radius:18px;margin:auto;width:100%;object-fit:contain}.wide-photo{margin-bottom:50px;max-width:800px;margin-inline:auto}.course-category{padding:0;overflow:hidden}.course-category img{width:100%;height:auto;display:block;max-height:440px;object-fit:contain;background:#f4f2f7}.course-category>div{padding:28px}.course-category h2{font-size:30px}.course-card{display:flex;flex-direction:column}.course-card .fee{color:var(--teal);font-size:22px}.course-card .button{margin-top:auto;align-self:flex-start}.course-card h3{font-size:24px}.faq{max-width:800px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-size:22px;cursor:pointer}.faq details p{padding-top:16px}.closing{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:55px max(32px,calc((100vw - 1120px)/2));background:#242139;color:white}.closing h2{font-size:34px;margin:0}.closing .script{color:#b3e6e6}.site-footer{display:grid;grid-template-columns:1.1fr 1fr 1.2fr;gap:40px;padding:55px max(32px,calc((100vw - 1120px)/2)) 25px;font-size:15px;background:#faf9fc}.site-footer p{margin-bottom:0}.site-footer strong{font-weight:500}.site-footer a{overflow-wrap:anywhere}.footer-bottom{grid-column:1/-1;display:flex;gap:24px;justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:#948b9f}.contact-layout{align-items:start}.contact-layout aside a{overflow-wrap:anywhere}.empty{background:#f3f7f8;border:1px solid #deebec;padding:25px;border-radius:14px;margin:20px 0;color:#5c777c}.empty h3{margin-bottom:10px}.tag{display:inline-block;padding:5px 10px;border-radius:99px;background:#e8f6f6;color:#23747b;font-size:12px}.event-card img{width:100%;border-radius:10px;margin-bottom:18px;object-fit:contain}.event-meta{font-size:14px;color:var(--teal)}.form-wrap{max-width:960px;margin:50px auto 75px;width:calc(100% - 48px)}.native-form{border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 18px 60px #24213908;overflow:hidden}.form-intro{padding:32px 36px 28px;background:linear-gradient(115deg,#effafa,#fbf8fd 75%,#fff9ef);border-bottom:1px solid var(--line)}.form-intro h2{font-size:34px;margin-bottom:12px}.form-intro p{font-size:16px;margin-bottom:0}.form-body{padding:30px 36px 36px}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.field{min-width:0}.full{grid-column:1/-1}.field label,.field legend{display:block;font-size:15px;font-weight:500;color:var(--ink);margin-bottom:9px}.field fieldset{padding:0;border:0;min-width:0;margin:0}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,.admin-search{width:100%;min-height:50px;border:1px solid #dedce7;border-radius:10px;padding:12px 14px;background:#fbfafc;color:var(--ink);font-size:16px;line-height:1.5;box-shadow:none}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid #009fa660;outline-offset:2px;border-color:var(--teal);background:white}.field .help,.help{font-size:13px;line-height:1.65;color:#8a8297;margin:8px 0 0}.required{color:var(--teal)}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{display:flex!important;align-items:flex-start;gap:12px;border:1px solid var(--line);padding:15px;border-radius:12px;font-size:15px!important;font-weight:400!important;line-height:1.5;margin:0!important;cursor:pointer}.choice:has(input:checked){background:#effafa;border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--teal);flex-shrink:0;margin-top:3px}.choice small{display:block;color:var(--teal)}.checkbox{display:flex!important;gap:12px;align-items:flex-start;font-size:14px!important;line-height:1.6;font-weight:400!important}.form-section{grid-column:1/-1;display:flex;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line);margin:12px 0 0}.form-section span{color:var(--teal);background:#effafa;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:11px}.form-section h3{font-size:21px;margin:0}.form-notice{font-size:14px;color:#576d78;background:#f0f7f9;border:1px solid #e0ebef;padding:16px 18px;border-radius:12px}.form-actions{display:flex;align-items:center;gap:20px;margin-top:26px;flex-wrap:wrap}.form-actions p{font-size:12px;margin:0;max-width:360px}.form-error{border:1px solid #df9ba9;background:#fff4f6;color:#a23450;border-radius:10px;padding:15px;grid-column:1/-1;font-size:14px}.success-panel{padding:45px;text-align:center;background:#f3fbfa;border:1px solid #d4eeeb;border-radius:18px}.success-panel h2{font-size:33px}.success-panel .reference{display:inline-block;background:white;border:1px solid var(--line);border-radius:8px;padding:8px 16px;color:var(--teal);font-size:20px;letter-spacing:1px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.admin-wrap{max-width:1200px;width:calc(100% - 48px);margin:45px auto 80px}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.admin-nav a{font-size:14px;color:var(--teal)}.admin-tools{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:22px}.admin-search{max-width:340px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;font-size:15px;background:white}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8c8197;background:#faf9fc}td small{display:block;color:var(--muted)}td button{font-size:13px;color:var(--teal);border:0;background:none;text-decoration:underline}.admin-detail{margin-top:25px;border:1px solid var(--line);padding:26px;border-radius:16px;background:#faf9fc}.admin-detail dl{display:grid;grid-template-columns:170px 1fr;gap:12px;font-size:16px}.admin-detail dt{color:var(--muted)}.admin-detail dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.status{color:#367f85;background:#eaf7f6;border-radius:99px;padding:4px 10px;font-size:12px;white-space:nowrap}.prose{max-width:800px}.prose h2{font-size:29px;margin-top:35px}.prose p,.prose li{color:var(--muted)}.admin-live{font-size:14px;color:var(--teal)}[hidden]{display:none!important}:focus-visible{outline:3px solid #6dcbd0;outline-offset:4px}.link-button{background:none;border:0;color:var(--teal);text-decoration:underline;padding:0;font-size:15px}.hero.compact{padding:55px 0}.hero.compact h1{font-size:45px}.notice-small{font-size:14px;margin-top:14px}.optional{font-size:12px;color:var(--muted);font-weight:400}
@media(max-width:1000px){.site-header{padding:18px 24px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 24px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #2421390a}.site-header nav.open{display:grid;gap:20px}.site-header nav .button{justify-self:start}.split{gap:35px}.three{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{grid-template-columns:1fr 1fr}.site-footer>.brand{grid-column:1/-1}}
@media(max-width:640px){body{font-size:17px}.wrap{width:calc(100% - 40px)}.section{padding-block:48px}.hero{padding:55px 0 65px}.hero h1{font-size:38px;letter-spacing:.015em}.hero .script{font-size:25px}.hero-subtitle{font-size:19px}.hero-actions{gap:12px}.split,.two,.three{grid-template-columns:minmax(0,1fr)}.split{gap:30px}.cards{gap:20px;margin-top:25px}.card{padding:25px}.course-category{padding:0}.course-category img{max-height:none}.course-category>div{padding:24px}.site-header{padding:16px 20px;min-height:78px;gap:12px}.brand{font-size:18px}.brand img{height:37px;width:29px}.brand small{font-size:9px}.closing{padding:40px 24px;display:block}.closing h2{font-size:30px;margin-bottom:24px}.site-footer{display:block;padding:40px 24px 22px}.site-footer>div{margin-top:25px}.footer-bottom{display:flex;gap:15px;font-size:12px}.script{font-size:26px}.form-wrap{width:calc(100% - 24px);margin:25px auto 45px}.form-intro{padding:26px 20px}.form-intro h2{font-size:29px}.form-body{padding:24px 20px 28px}.form-grid,.choice-grid{grid-template-columns:minmax(0,1fr)}.form-grid{gap:20px}.form-actions .button{width:100%}.native-form{border-radius:17px}.success-panel{padding:30px 22px}.admin-wrap{width:calc(100% - 28px);margin-top:25px}.admin-detail{padding:20px}.admin-detail dl{grid-template-columns:minmax(0,1fr);gap:5px}.admin-detail dd{margin-bottom:12px}.hero.compact h1{font-size:34px}.admin-tools .button{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* The original company illustrations bring the new layout back into its identity. */
.hero{position:relative;isolation:isolate;overflow:hidden}.hero>.wrap{position:relative;z-index:1}.brand-illustrations{display:flex;justify-content:center;align-items:center;gap:24px;max-width:540px;margin:28px auto -40px;position:relative;z-index:1}.brand-illustrations span{display:block;width:100px}.brand-illustrations img{display:block;width:100%;height:auto;filter:drop-shadow(0 6px 14px #15152d12)}.brand-illustrations span:first-child{transform:rotate(-9deg)}.brand-illustrations span:last-child{transform:rotate(8deg)}.photo{border-radius:42px 14px 45px 14px;overflow:hidden}.photo img{display:block}.memory-section{padding-top:20px}.memory-heading{max-width:650px}.memory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:center;padding:22px 0 10px}.memory-grid figure{margin:0;padding:9px 9px 24px;background:#fff;box-shadow:0 8px 30px #25213916;border:1px solid #eeebf2;transform:rotate(-3deg);border-radius:3px}.memory-grid figure:nth-child(even){transform:rotate(3deg);margin-top:35px}.memory-grid img{width:100%;height:auto;display:block;border-radius:2px}.illustrated-card{border:0;background:transparent;padding-top:8px}.service-drawing{width:110px;height:110px;object-fit:contain;display:block;margin-bottom:22px}.course-drawing{display:block;float:right;width:86px;margin:-4px -8px 10px 16px}.course-drawing img{display:block;width:100%;height:auto}.entity-drawing{display:block;width:96px;margin:10px 0 20px}.entity-drawing img{display:block;width:100%;height:auto}.organic-photo{border-radius:45px 10px 45px 10px;overflow:hidden}.form-intro{position:relative;padding-right:130px}.form-intro:after{content:'';position:absolute;right:22px;top:35px;width:88px;height:100px;background:url('/wp-content/uploads/2026/01/Teatro-sussurri-contattaci2.png') center/contain no-repeat;transform:rotate(7deg)}form[data-native-kind=course] .form-intro:after{background-image:url('/wp-content/uploads/2026/01/Teatro-sussurri_corsi1.png')}form[data-native-kind=membership] .form-intro:after{background-image:url('/wp-content/uploads/2026/01/Teatro-sussurri_corsi3.png')}.closing{position:relative}.closing:before{content:'';width:95px;height:100px;background:url('/wp-content/uploads/2026/01/Teatro-sussurri-home1.png') center/contain no-repeat;flex-shrink:0}.closing>div{flex:1}.card{transition:box-shadow .2s}.card:hover{box-shadow:0 10px 30px #24213908}
@media(min-width:1100px){.hero:has(.brand-illustrations){padding-bottom:85px}.hero .brand-illustrations{position:absolute;inset:0;margin:0;max-width:none;pointer-events:none;z-index:0}.hero .brand-illustrations span{position:absolute;width:135px}.hero .brand-illustrations span:nth-child(1){left:3%;top:20%}.hero .brand-illustrations span:nth-child(2){right:3%;top:22%}.hero .brand-illustrations span:nth-child(3){right:10%;bottom:5%;width:95px}.hero:has(.brand-illustrations)>.wrap{max-width:900px}}
@media(max-width:640px){.brand-illustrations{gap:20px;margin:24px auto -22px}.brand-illustrations span{width:64px}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.memory-grid figure{padding:6px 6px 18px}.memory-grid figure:nth-child(even){margin-top:18px}.memory-section{overflow:hidden}.service-drawing{width:88px;height:88px;margin-bottom:16px}.illustrated-card{padding-inline:12px}.form-intro{padding-right:24px;padding-top:90px}.form-intro:after{left:21px;right:auto;top:15px;width:65px;height:65px}.course-drawing{width:65px;margin-left:10px}.closing:before{width:70px;height:70px}.closing{gap:18px}.entity-drawing{width:80px}.hero .hero-subtitle{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.card{transition:none}}
/* Theatre programme: the original vivid illustrations meet a browsable catalogue. */
.catalog-hero{position:relative;overflow:hidden;padding:85px 0 100px;background:#f6fbfb;text-align:center;background-image:radial-gradient(ellipse at 12% 15%,#c9f0e699,transparent 42%),radial-gradient(ellipse at 90% 90%,#f7d8e377,transparent 38%)}.catalog-hero:before,.catalog-hero:after{content:'';position:absolute;width:155px;height:180px;background:center/contain no-repeat;pointer-events:none;opacity:.8}.catalog-hero:before{left:2%;top:18%;background-image:url('/wp-content/uploads/2026/01/Teatro-sussurri_corsi0.png');transform:rotate(-9deg)}.catalog-hero:after{right:2%;bottom:5%;background-image:url('/wp-content/uploads/2026/01/Teatro-sussurri-home2.png');transform:rotate(9deg)}.catalog-hero .wrap{position:relative;z-index:1;max-width:950px}.catalog-hero h1{font-size:clamp(40px,5.8vw,78px);letter-spacing:-.025em;line-height:1.05;margin:20px 0 28px}.catalog-hero h1 em{font-family:'Caveat',cursive;font-weight:500;color:var(--teal);font-size:1.14em}.catalog-lead{max-width:640px;margin:0 auto;font-size:21px;line-height:1.6}.catalog-intro{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;padding-block:85px}.catalog-intro-photo{position:relative}.catalog-intro-photo>img:first-child{width:100%;max-height:530px;object-fit:contain;display:block;border-radius:36px 8px 36px 8px;background:#f1f3f5}.catalog-intro-photo .catalog-sticker{position:absolute;width:125px;right:-35px;bottom:-25px;transform:rotate(12deg)}.catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}.catalog-heading h2{margin-bottom:0}.catalog-filters{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.catalog-filters a{border:1px solid var(--line);padding:9px 20px;border-radius:100px;font-size:15px;text-decoration:none}.catalog-filters a[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}.catalog-search{margin-bottom:25px;max-width:600px}.catalog-search label{display:block;font-size:14px;margin-bottom:7px}.catalog-search>div{display:flex;gap:10px}.catalog-search input:not([type=hidden]){min-width:0;flex:1;border:1px solid var(--line);border-radius:10px;padding:10px 15px;font-size:16px;color:var(--ink)}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 27px}.offer-card{min-width:0;border-bottom:1px solid #dfdce8;display:flex;flex-direction:column}.offer-photo{display:block;background:#f3f1f5;border-radius:22px 5px 22px 5px;overflow:hidden;aspect-ratio:4/3}.offer-photo img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s}.offer-photo:hover img{transform:scale(1.025)}.offer-copy{padding:24px 0;flex:1;display:flex;flex-direction:column}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--teal);font-weight:600}.offer-copy h3{font-size:28px;margin:10px 0 14px}.offer-copy h3 a{text-decoration:none}.offer-copy>p{font-size:17px;line-height:1.6;margin-bottom:20px}.offer-meta{font-size:13px;display:flex;flex-direction:column;color:var(--muted);padding-top:12px;border-top:1px solid var(--line);gap:4px;margin-top:auto}.offer-price-line{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:22px;flex-wrap:wrap}.offer-price-line strong{font-size:27px;font-weight:400;color:var(--ink)}.offer-price-line small{display:block;font-size:11px;color:var(--muted)}.offer-price-line .button{font-size:11px;letter-spacing:.02em;padding:10px 14px}.breadcrumbs{padding-top:30px;font-size:13px;color:var(--muted)}.breadcrumbs a{color:var(--teal)}.offer-detail{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;padding-top:45px;padding-bottom:75px;align-items:start}.detail-visual{position:sticky;top:115px}.detail-photo{width:100%;max-height:600px;object-fit:contain;display:block;background:#f4f2f7;border-radius:35px 7px 35px 7px}.source-note{display:block;font-size:11px;color:var(--muted);margin-top:12px}.detail-copy h1{font-size:clamp(38px,4vw,58px);letter-spacing:-.015em}.detail-teaser{font-size:23px;color:var(--ink);line-height:1.4}.offer-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px 25px;margin:28px 0 0;padding-top:25px;border-top:1px solid var(--line)}.offer-facts dt{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal)}.offer-facts dd{margin:5px 0 0;font-size:16px;line-height:1.5}.purchase-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.offer-includes{padding:0;list-style:none}.offer-includes li{padding:13px 0 13px 30px;position:relative;border-bottom:1px solid var(--line);color:var(--muted);font-size:17px}.offer-includes li:before{content:'✓';position:absolute;left:0;color:var(--teal)}.price-option{padding:22px 0;border-top:1px solid var(--line);display:flex;gap:22px;align-items:center;justify-content:space-between}.price-option h3{font-size:20px;margin-bottom:6px}.price-option strong{font-size:33px;font-weight:400}.price-option p{font-size:12px;margin:5px 0 0}.price-option .button{font-size:11px;padding:12px 17px;letter-spacing:.02em;flex-shrink:0}.purchase-terms{display:grid;grid-template-columns:1fr 1fr;gap:70px}.purchase-terms .faq details:first-child{margin-top:0}.booking-layout{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);gap:40px;align-items:start}.booking-summary{border:1px solid var(--line);border-radius:18px;overflow:hidden;position:sticky;top:110px;background:#fff}.booking-summary>img{width:100%;height:240px;object-fit:contain;display:block;background:#f5f3f8}.booking-summary>div{padding:28px}.booking-summary h2{font-size:29px;margin-bottom:12px}.booking-summary .summary-price{font-size:36px;font-weight:400;color:var(--teal)}.booking-summary .offer-facts{grid-template-columns:1fr}.booking-summary .text-link{margin-top:25px}.form-grid>.full{grid-column:1/-1}form[data-native-kind=booking] .form-intro:after{background-image:url('/wp-content/uploads/2026/01/Teatro-sussurri-che-cosa-facciamo2.png')}.booking-layout .native-form{min-width:0}.shop-teaser{background-image:radial-gradient(ellipse at top right,#e1f5f0,transparent 65%)}
/* Restore more of the airy, illustrated rhythm of the old site. */
.service-drawing{width:155px;height:155px}.illustrated-card{padding:15px 22px 30px;text-align:center}.illustrated-card .service-drawing{margin:0 auto 25px}.hero .script{font-size:34px}.photo,.organic-photo{border-radius:60px 8px 60px 8px}.section.soft:has(.illustrated-card){background:#fff}.section:has(.illustrated-card) h2{max-width:700px;margin-inline:auto;text-align:center}.section:has(.illustrated-card)>.wrap>.script{text-align:center}.card.course-category{border:0;background:#f8f9fb}.course-drawing{width:115px}.closing h2{font-family:'Caveat',cursive;font-size:clamp(34px,4vw,55px)}
@media(max-width:1100px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-hero:before,.catalog-hero:after{width:95px;opacity:.3}.catalog-intro{gap:45px}.purchase-grid,.purchase-terms{gap:40px}.offer-detail{gap:40px}.booking-layout{grid-template-columns:1fr 1.5fr;gap:24px}.price-option{align-items:start;flex-direction:column}.site-nav{gap:12px}}
@media(max-width:760px){.catalog-hero{padding:55px 0 65px}.catalog-lead{font-size:18px}.catalog-hero:before{left:-30px;top:4%}.catalog-hero:after{right:-30px;bottom:0}.catalog-intro{grid-template-columns:1fr;gap:45px;padding-block:50px}.catalog-intro-photo{max-width:550px}.catalog-intro-photo .catalog-sticker{right:0;width:95px}.offer-detail,.purchase-grid,.purchase-terms,.booking-layout{grid-template-columns:1fr;gap:35px}.detail-visual,.booking-summary{position:static}.detail-photo{max-height:430px}.offer-detail{padding-top:25px;padding-bottom:45px}.detail-copy h1{font-size:38px}.catalog-heading{align-items:start;flex-direction:column}.booking-summary .offer-facts{grid-template-columns:1fr 1fr}.booking-summary>img{height:220px}.price-option{flex-direction:row;align-items:center}.catalog-filters{gap:8px}.catalog-filters a{font-size:13px;padding:7px 12px}.catalog-search>div{flex-wrap:wrap}.catalog-search input{width:100%;flex-basis:70%}}
@media(max-width:520px){.offer-grid{grid-template-columns:1fr;gap:35px}.offer-photo{aspect-ratio:4/3}.offer-copy h3{font-size:28px}.offer-price-line .button{font-size:12px}.price-option{flex-direction:column;align-items:start}.catalog-hero h1{font-size:40px}.offer-facts{gap:18px}.booking-summary>div{padding:22px}.service-drawing{width:120px;height:120px}.course-drawing{width:85px}.hero .script{font-size:28px}.catalog-intro .catalog-sticker{width:82px}.catalog-intro-photo>img:first-child{max-height:400px}}
/* Unified photographic cards, retaining complete portrait and landscape originals. */
.offer-card{background:#fff;border:1px solid #e9e6ef;border-radius:19px;overflow:hidden;box-shadow:0 5px 22px #28223d05;transition:box-shadow .2s}.offer-card:hover{box-shadow:0 10px 30px #28223d10}.offer-photo{position:relative;isolation:isolate;border-radius:0;aspect-ratio:3/2;background:#252536;display:grid;place-items:center}.offer-photo:before,.detail-photo-frame:before{content:'';position:absolute;inset:-20px;background-image:linear-gradient(#24213955,#24213955),var(--offer-image);background-position:center;background-size:cover;filter:blur(16px);z-index:-1;opacity:.85}.offer-photo img{position:relative;width:100%;height:100%;object-fit:contain;max-height:100%;transition:none}.offer-photo:hover img{transform:none}.offer-copy{padding:24px;gap:0}.offer-copy h3{font-size:25px;line-height:1.2;min-height:2.4em}.offer-copy>p{font-size:16px;line-height:1.6;min-height:4.8em}.offer-meta{min-height:88px;justify-content:center;border-bottom:1px solid var(--line);padding-block:12px}.offer-price-line{align-items:end;margin-top:20px;gap:16px}.offer-price-line strong{font-size:30px}.offer-price-line .button{width:100%;padding:12px 17px;font-size:12px}.offer-grid{align-items:stretch;gap:30px}.detail-photo-frame{position:relative;isolation:isolate;background:#242139;overflow:hidden;border-radius:25px;display:grid;place-items:center;min-height:340px;aspect-ratio:4/5;max-height:620px}.detail-photo-frame .detail-photo{position:relative;border-radius:0;background:transparent;width:100%;height:100%;max-height:620px;object-fit:contain}.detail-copy h1{font-size:clamp(36px,3.8vw,54px);line-height:1.08;margin-bottom:23px}.detail-copy>p:not(.script):not(.detail-teaser){font-size:17px;line-height:1.8}.detail-teaser{font-size:24px;line-height:1.45;padding-bottom:20px;border-bottom:1px solid var(--line)}.detail-buy-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;margin-top:15px;border-top:1px solid var(--line)}.detail-buy-link strong{font-size:32px;font-weight:400;color:var(--teal)}.detail-buy-link small{display:block;font-size:12px;color:var(--muted)}.detail-buy-link .button{font-size:12px;letter-spacing:.02em}.price-options{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px}.price-options h2{font-size:34px}.price-option{gap:15px;padding:24px 0}.price-option .button{white-space:normal;max-width:190px}.person-card{padding:0;overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column}.person-photo{background:#f1eff5;aspect-ratio:4/5;overflow:hidden;display:grid;place-items:center}.person-photo img{display:block;width:100%;height:100%;object-fit:contain}.person-copy{padding:26px}.person-copy h3{margin-bottom:13px}.person-copy p{font-size:16px;line-height:1.65}.person-card .person-photo img{border-radius:0}.course-category>img{display:block;background:#eeedf2;aspect-ratio:4/3;object-fit:contain}.course-category{overflow:hidden}.source-note{font-size:12px;line-height:1.5}
@media(max-width:760px){.detail-photo-frame{max-height:440px;min-height:0;aspect-ratio:1/1}.detail-photo-frame .detail-photo{max-height:440px}.offer-detail{gap:25px}.offer-detail .detail-visual{position:static}.detail-copy h1{font-size:38px}.price-options{padding:25px}.offer-copy h3,.offer-copy>p{min-height:0}.offer-meta{min-height:0}.detail-buy-link{gap:15px;flex-wrap:wrap}.detail-buy-link strong{font-size:30px}.person-photo{aspect-ratio:1/1}.offer-photo{aspect-ratio:3/2}.offer-copy{padding:23px}.price-option .button{max-width:none}.purchase-grid{gap:30px}}
@media(prefers-reduced-motion:reduce){.offer-card{transition:none}}
.offer-photo img,.detail-photo-frame .detail-photo{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}.person-photo{position:relative}.person-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.course-category>img{height:auto;aspect-ratio:auto}.offer-copy>p{min-height:3.2em}
/* Fill photographic frames; preserve natural proportions through cropping. */
.offer-photo img,.detail-photo-frame .detail-photo,.person-photo img,.booking-summary>img{object-fit:cover;object-position:50% 45%}.offer-photo:before,.detail-photo-frame:before{display:none}.offer-photo[href*="/commedia-arte/"] img{object-position:50% 77%}.offer-photo[href*="/prehina/"] img{object-position:50% 65%}.offer-photo[href*="/amore-niente/"] img{object-position:50% 24%}.offer-photo[href*="/radio-antenna/"] img{object-position:50% 40%}.person-photo img{object-position:50% 30%}.catalog-intro-photo>img:first-child{object-fit:cover;object-position:50% 40%}.detail-photo-frame:has(img[src*="commedia-arte"]) .detail-photo{object-position:50% 70%}.detail-photo-frame:has(img[src*="amore-niente"]) .detail-photo{object-position:50% 25%}.booking-summary>img[src*="commedia-arte"]{object-position:50% 77%}.booking-summary>img[src*="amore-niente"]{object-position:50% 24%}
/* Soldi al fresco: keep both actors' faces in the crop. */
.offer-photo[href*="/soldi-fresco/"] img,.detail-photo-frame .detail-photo[src*="soldi-fresco"],.booking-summary>img[src*="soldi-fresco"]{object-position:50% 12%}
/* A full opening stage, in the original company gradient. */
body:has(.home-hero) .site-header{position:absolute;top:0;left:0;width:100%;background:transparent;border-bottom:1px solid #ffffff20;color:white;z-index:20}body:has(.home-hero) .site-header .brand img{filter:brightness(0) invert(1)}body:has(.home-hero) .site-header .brand small{color:#ffffffba}body:has(.home-hero) .site-header nav>a:hover{color:#a5e8e4}body:has(.home-hero) .menu-toggle{color:#fff}body:has(.home-hero) .site-header nav>.button{background:#ffffff17;border-color:#ffffff66}.home-hero{min-height:100svh;min-height:100vh;min-height:100svh;padding:170px 0 100px;display:flex;align-items:center;justify-content:center;background-position:center;background-size:cover}.home-hero>.wrap{width:min(1240px,calc(100% - 70px));max-width:1240px!important}.home-hero h1{font-size:clamp(55px,7.8vw,112px);max-width:none;letter-spacing:.015em;line-height:1.08;margin:25px 0 35px;text-shadow:0 2px 28px #12132a22}.home-hero .script{font-size:clamp(30px,3vw,43px);color:#c8f3eb}.home-hero .hero-subtitle{font-size:clamp(21px,2.3vw,31px);color:#fff;max-width:850px;margin-inline:auto}.home-hero .hero-actions{margin-top:36px}.home-hero .brand-illustrations span:nth-child(1){top:auto;bottom:6%;left:4%;width:110px}.home-hero .brand-illustrations span:nth-child(2){top:20%;right:4%;width:110px}.home-hero .brand-illustrations span:nth-child(3){right:5%;bottom:6%;width:95px}
:root{--brand-flow:linear-gradient(115deg,#148f9a 0%,#306da9 40%,#6554a0 73%,#ad548c 100%)}.button:not(.light):not(.ghost):not(.secondary){background:var(--brand-flow);border-color:transparent}.button:not(.light):not(.ghost):not(.secondary):hover{filter:brightness(1.08)}.soft{background-color:#f8f8fc;background-image:radial-gradient(ellipse at 0% 0%,#cdece94d,transparent 60%),radial-gradient(ellipse at 100% 100%,#ead7ed66,transparent 58%)}.closing{background:#242139 url('/wp-content/uploads/2026/01/Teatro-sussurri-sfondo-home-scaled.jpg') center/cover}.closing p,.closing h2{color:#fff}.catalog-hero{background-image:radial-gradient(ellipse at 2% 8%,#79d5ce70,transparent 48%),radial-gradient(ellipse at 75% 100%,#ac8ed866,transparent 55%),radial-gradient(ellipse at 100% 20%,#f3b8c266,transparent 42%)}.form-intro{background-image:linear-gradient(120deg,#ddf2f0 0%,#e9eafa 50%,#f6e2ee 100%)}.price-options{border-top:5px solid #8c78b1;background-image:linear-gradient(140deg,#ffffff,#f7f5fc)}.person-copy{background:linear-gradient(130deg,#fff,#f1f5fa)}.offer-card{border-color:#e3deef}.offer-copy .eyebrow{color:#438494}
@media(max-width:1000px){body:has(.home-hero) .site-header nav{background:#fff;color:var(--ink);box-shadow:0 12px 25px #17132b18}body:has(.home-hero) .site-header nav>a:hover{color:var(--teal)}body:has(.home-hero) .site-header nav>.button{background:var(--brand-flow);color:white;border-color:transparent}.site-header{position:relative;top:auto;transform:none}.site-header nav{position:absolute;top:100%;bottom:auto;max-height:calc(100svh - 85px);overflow-y:auto;overscroll-behavior:contain}.site-header nav:not(.open){display:none!important}.home-hero{flex-direction:column;min-height:100svh;padding:140px 0 60px}.home-hero .brand-illustrations{margin:35px auto 0;gap:35px}.home-hero .brand-illustrations span{position:static!important;width:75px!important;transform:none}}
@media(max-width:640px){.home-hero{padding-top:135px;padding-bottom:45px}.home-hero>.wrap{width:calc(100% - 40px)}.home-hero h1{font-size:clamp(45px,12.2vw,70px);line-height:1.09;margin:24px 0}.home-hero .hero-subtitle{font-size:22px}.home-hero .script{font-size:29px}.home-hero .hero-actions{margin-top:29px}.home-hero .brand-illustrations{gap:23px;margin-top:32px}.home-hero .brand-illustrations span{width:62px!important}.home-hero .hero-actions .button{font-size:13px}.closing .script{color:#c4eee5}}
.type-word{display:inline-block;white-space:nowrap}.type-letter{display:inline-block;opacity:0;transform:translateY(.2em);animation:tds-letter-in .35s ease-out forwards;animation-delay:var(--letter-delay)}@keyframes tds-letter-in{to{opacity:1;transform:translateY(0)}}.wide-check{max-width:1000px}.membership-check{border:1px solid #dddce9;background:linear-gradient(125deg,#eff9f7,#f7eff8);border-radius:20px;padding:30px;display:grid;grid-template-columns:1.5fr 1fr;gap:30px;margin-bottom:30px}.membership-check h2{font-size:29px;margin-bottom:18px}.membership-check p:not(.script){font-size:16px;line-height:1.6;margin:15px 0 0}.membership-actions{display:flex;flex-direction:column;justify-content:center;gap:15px;align-items:start}.membership-actions .button{font-size:12px}.account-toolbar{display:flex;justify-content:space-between;gap:25px;align-items:start}.account-toolbar>p{max-width:750px}.account-links{display:flex;gap:15px;flex-wrap:wrap;margin:15px 0 45px}.account-reminders{padding:30px;border:1px solid var(--line);border-radius:20px;margin-bottom:45px;background:linear-gradient(140deg,#f5f8fc,#faf4f9)}.account-reminders h2{font-size:32px}.account-reminders ul{list-style:none;padding:0;margin:0}.account-reminders li{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid var(--line);font-size:16px}.account-reminders li span{color:var(--muted)}.account-records{display:grid;gap:25px}.account-record-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.account-record-heading h3{margin-top:10px}.account-record-heading .status{white-space:normal;flex-shrink:0}.account-payments{border-top:1px solid var(--line);padding-top:25px;margin-top:25px}.account-payments>h3{font-size:25px}.payment-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:25px}.payment-totals span{font-size:13px;color:var(--muted);border-radius:10px;background:#f7f7fb;padding:17px}.payment-totals strong{font-size:26px;display:block;color:var(--ink);font-weight:400;margin-top:5px}.status.good{background:#e0f4eb;color:#246c50}.status.late{background:#fce9e9;color:#9a333d}.account-management{border-top:1px solid var(--line);margin-top:30px;padding-top:30px}.account-management form{border:1px solid var(--line);padding:25px;margin-top:25px;border-radius:14px;background:white}.account-management input{max-width:100%;width:100%;border:1px solid #dcd8e5;border-radius:8px;padding:9px 12px;color:var(--ink);background:#fff}.account-management label{font-size:14px;display:block;color:var(--muted)}.account-management input[type=checkbox]{width:18px;flex-shrink:0}.membership-admin>label{display:inline-block;margin-right:18px;max-width:240px}.installment-editor{border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:20px}.installment-editor legend{font-size:15px;color:var(--teal);padding:0 8px}.installment-editor .form-grid{align-items:end}.installment-editor .checkbox{align-self:center}.installment-editor>.link-button{margin-top:14px}.account-management [data-feedback]{font-size:15px;color:var(--teal);margin-top:15px}.success-panel>.button{margin:8px}.success-panel>.text-link{display:block;margin-top:18px}
@media(max-width:1000px){.site-header nav{font-size:14px}}
@media(max-width:700px){.membership-check{grid-template-columns:1fr;padding:25px;gap:22px}.payment-totals{grid-template-columns:1fr;gap:10px}.payment-totals span{display:flex;justify-content:space-between;align-items:center}.payment-totals strong{margin:0;font-size:23px}.account-record-heading{flex-direction:column;gap:8px}.account-record{padding:24px}.account-reminders{padding:25px}.account-reminders li{flex-direction:column;gap:5px}.account-toolbar{flex-wrap:wrap}.account-management form{padding:18px}.account-management .form-grid{grid-template-columns:1fr}.membership-admin>.button{margin-top:15px}.account-links .button{font-size:12px}.type-word{max-width:100%}}
@media(prefers-reduced-motion:reduce){.type-letter{opacity:1;transform:none;animation:none}}
.profile-wrap{padding-top:50px}.profile-card{display:grid;grid-template-columns:140px 1fr;gap:35px;border:1px solid #e2deec;border-radius:22px;background:linear-gradient(130deg,#edf7f6,#f5ecf7);padding:35px}.profile-avatar{width:140px;height:140px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--brand-flow);color:#fff;font-size:42px}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-info h2{font-size:32px;overflow-wrap:anywhere}.profile-info .script{font-size:26px}.profile-info form>label{font-size:13px;display:block;margin-bottom:6px}.profile-info form>div{display:flex;gap:12px;flex-wrap:wrap}.profile-info input:not([type=file]){background:#fff;border:1px solid #d7d0e0;border-radius:8px;padding:10px 14px;max-width:100%;min-width:0;flex:1;font-size:16px}.avatar-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:20px 0 12px}.avatar-file-label{cursor:pointer;position:relative;overflow:hidden}.avatar-file-label input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.avatar-file-label:focus-within{outline:3px solid #56abb5;outline-offset:4px}#avatar-preview{border:1px solid var(--line);border-radius:12px;padding:20px;background:#fff;margin-top:20px}#avatar-preview>img{display:block;width:140px;height:140px;border-radius:50%;object-fit:cover;margin-bottom:12px}#avatar-preview>.button{margin-right:15px}#profile-feedback{font-size:15px;color:#267780;min-height:1.5em;margin:12px 0 0}.profile-info>.help{margin-top:12px}.form-notice h3{font-size:22px}.form-notice p{font-size:15px;line-height:1.6}
@media(max-width:640px){.profile-wrap{padding-top:30px}.profile-card{grid-template-columns:1fr;gap:22px;padding:25px}.profile-avatar{width:100px;height:100px;font-size:32px}.profile-info h2{font-size:29px}.profile-info form>div{flex-direction:column}.profile-info form .button{align-self:start}.avatar-actions{gap:15px}.profile-info .help{overflow-wrap:anywhere}}

.dinner-examples{border:1px solid var(--line);border-radius:18px;padding:24px;background:linear-gradient(130deg,#eff8f7,#faf1f6);margin:22px 0}.dinner-examples h3{font-size:26px}.dinner-examples p{font-size:15px;line-height:1.65}.dinner-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.dinner-example-grid article{background:#fff;border-radius:12px;padding:16px;min-width:0}.dinner-example-grid h4{font-size:17px;margin:0 0 10px}.dinner-example-grid strong{font-size:27px;color:var(--teal)}.dinner-example-grid p{font-size:13px}
@media(max-width:1100px){.dinner-example-grid{grid-template-columns:1fr}}@media(max-width:640px){.dinner-examples{padding:18px}}

.cv-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px;align-items:start}.cv-layout h2{font-size:36px}.cv-card{padding:32px}.cv-card form>label:not(.checkbox){display:block;font-weight:600;margin:20px 0 8px}.cv-card input:not([type=checkbox]){width:100%;max-width:100%;padding:12px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);font:inherit}.cv-card input[type=file]{font-size:14px}.cv-card .checkbox{margin:22px 0;font-size:14px;align-items:start}.cv-card .checkbox input{margin-top:5px}.cv-card button:disabled{opacity:.6}.cv-card #cv-feedback{min-height:1.6em;font-size:15px}.cv-card #cv-current{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.cv-footer-link{padding:0 0 20px;font-size:14px}.cv-layout .form-notice{margin:24px 0}.cv-layout p{line-height:1.7}
@media(max-width:760px){.cv-layout{grid-template-columns:1fr;gap:28px}.cv-layout h2{font-size:29px}.cv-card{padding:22px}.cv-card .form-actions{align-items:start;flex-direction:column}}
.professional-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.professional-intro h2{font-size:44px;line-height:1.15}.professional-intro>p{font-size:19px;line-height:1.8}.professional-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:35px}.professional-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 8px 30px #211f3808}.professional-photo{aspect-ratio:4/5;background:linear-gradient(135deg,#e2eeee,#f2e3ef);overflow:hidden}.professional-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%}.professional-copy{padding:25px}.professional-copy h2{font-size:29px;line-height:1.2;margin:0 0 10px;overflow-wrap:anywhere}.professional-role{font-size:15px;font-weight:600;color:var(--teal);margin:0 0 16px}.professional-bio{font-size:15px;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere}.professional-actions{display:flex;flex-wrap:wrap;align-items:center;gap:17px;margin:24px 0 20px}.professional-contact{font-size:13px;color:var(--ink);text-decoration:underline;text-underline-offset:4px}.professional-empty{padding:50px 25px}.professional-join{display:flex;flex-wrap:wrap;align-items:center;gap:25px}.professional-join>div{flex:1 1 50%}.professional-join h2{font-size:34px}.cv-editor{display:grid;gap:28px}.pro-editor-photo{display:block;width:150px;height:190px;object-fit:cover;object-position:center 28%;border-radius:12px;margin:20px 0}.pro-editor-photo[hidden]{display:none}.cv-card textarea{display:block;width:100%;max-width:100%;font:inherit;border:1px solid var(--line);border-radius:9px;padding:12px}.cv-card #pro-photo-form{margin-bottom:32px}.cv-card #pro-photo-form>label{display:block;font-weight:600;margin:15px 0 8px}
@media(min-width:1001px) and (max-width:1250px){.site-header{gap:14px}.site-header nav{gap:13px}.site-header nav>a{font-size:14px}.site-header .brand{gap:10px}.site-header .brand span{font-size:21px}.site-header .brand small{font-size:9px}}
@media(max-width:1000px){.professional-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.professional-intro{gap:30px}.professional-intro h2{font-size:36px}}
@media(max-width:640px){.professional-grid{grid-template-columns:1fr;gap:24px}.professional-intro{grid-template-columns:1fr;gap:16px}.professional-intro h2{font-size:32px}.professional-intro>p{font-size:17px}.professional-copy{padding:22px}.professional-join{align-items:start;flex-direction:column}.professional-photo{aspect-ratio:4/4.5}}
/* Larger navigation labels, generous tap targets and stronger focus contrast. */
.site-header nav,.site-header nav>a{font-size:16px;font-weight:500;line-height:1.4}.site-header nav{gap:20px}.site-header nav>a{padding-block:10px}.site-header nav>a:focus-visible{outline:3px solid var(--teal);outline-offset:5px;border-radius:5px}.site-header nav>.button{font-size:14px;font-weight:600}
@media(min-width:1201px) and (max-width:1370px){.site-header{padding-inline:28px;gap:20px}.site-header nav{gap:16px}.site-header .brand span{font-size:20px}}
@media(max-width:1200px){.site-header{position:relative;top:auto;transform:none;padding:18px 24px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;bottom:auto;background:white;color:var(--ink);padding:18px 24px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #2421390a;max-height:calc(100svh - 85px);overflow-y:auto;overscroll-behavior:contain}.site-header nav.open{display:grid;gap:6px}.site-header nav:not(.open){display:none!important}.site-header nav>a{font-size:18px;font-weight:500;min-height:44px;padding:10px 4px}.site-header nav>.button{justify-self:start;padding:12px 20px;font-size:15px}.site-header nav>a:hover{color:var(--teal)}body:has(.home-hero) .site-header nav{background:white;color:var(--ink);box-shadow:0 12px 25px #17132b18}body:has(.home-hero) .site-header nav>a:hover{color:var(--teal)}body:has(.home-hero) .site-header nav>.button{background:var(--brand-flow);color:#fff;border-color:transparent}}
.access-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:45px;align-items:start}.access-card{padding:30px}.access-card label{display:block;margin:18px 0 8px;font-weight:600}.access-card input,.access-card select{display:block;width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);font:inherit}.access-card button{margin-top:20px}.access-card #created-invite{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.access-card #created-invite[hidden]{display:none}.access-card code{display:block;overflow-wrap:anywhere;word-break:break-word;background:var(--wash);padding:15px;border-radius:8px;font-size:16px;user-select:all}.account-role{font-weight:600;color:#24757c}.access-layout h2{font-size:35px}
@media(max-width:760px){.access-layout{grid-template-columns:minmax(0,1fr);gap:26px}.access-card{padding:22px}.access-layout h2{font-size:29px}}
.payment-page,.payment-receipt{max-width:850px}.payment-page h1,.payment-receipt h1{font-size:44px}.payment-page .form-notice{margin:24px 0}.payment-installment,.payment-received{padding:24px;border:1px solid var(--line);border-radius:15px;margin:18px 0;background:#fff}.payment-received{background:linear-gradient(120deg,#eef9f7,#f7f1f8)}#payment-feedback{font-size:21px;font-weight:500;margin:24px 0;color:#217b80}#payment-actions{margin:24px 0}.payment-receipt dl{display:grid;grid-template-columns:1fr 2fr;gap:14px;padding:24px;background:var(--wash);border-radius:16px}.payment-receipt dt{font-weight:600}.payment-receipt dd{margin:0;overflow-wrap:anywhere}.payment-page .reference{overflow-wrap:anywhere}
@media(max-width:640px){.payment-page h1,.payment-receipt h1{font-size:34px}.payment-installment,.payment-received{padding:20px}.payment-receipt dl{grid-template-columns:1fr;gap:5px}.payment-receipt dd{margin-bottom:12px}}
@media print{body:has(.payment-receipt) .site-header,body:has(.payment-receipt) .site-footer,body:has(.payment-receipt) .closing,.payment-receipt button,.payment-receipt a{display:none!important}.payment-receipt{max-width:none;width:100%;padding:10mm}.payment-receipt dl{background:#fff;border:1px solid #ddd}}
/* Project stories and the open experimentation company. */
.creative-page .prose{max-width:850px}.creative-page .prose h2:not(:first-child){margin-top:2em}.creative-page figure{margin:0}.creative-page figure img{display:block;width:100%;height:auto;border-radius:24px}.project-wide{max-width:1080px;margin:auto!important}.project-wide figcaption{font-size:.9rem;color:var(--muted,#777);padding:.7rem 0}.project-card>img{width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:16px;margin-bottom:1rem}.experimentation-teaser p:not(.script){max-width:780px}.experimentation-teaser{background:linear-gradient(115deg,#e8f6f5,#f0eaf8 65%,#faeee9)}@media(max-width:680px){.creative-page .hero h1{font-size:clamp(2.5rem,10vw,4rem);overflow-wrap:anywhere}.creative-page .cards.three{grid-template-columns:1fr}.creative-page .split{gap:1.5rem}.project-wide figcaption{font-size:.85rem}}
.ballo-photo-lead{padding-top:2.5rem}.ballo-photo-lead figure{margin:0}.ballo-photo-lead img{width:100%;height:auto;display:block;border-radius:24px}.ballo-photo-lead figcaption,.ballo-photo-grid figcaption{padding:.8rem .15rem;color:var(--muted,#777);font-size:1rem;line-height:1.5}.ballo-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 1.5rem;margin-top:2rem}.ballo-photo-grid figure{margin:0;min-width:0}.ballo-photo-grid a{display:block;border-radius:20px;overflow:hidden}.creative-page .ballo-photo-grid img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:20px}.ballo-photo-grid a:focus-visible{outline:3px solid #009fa6;outline-offset:5px}@media(max-width:850px){.ballo-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.ballo-photo-grid{grid-template-columns:1fr;gap:1.5rem}.ballo-photo-lead{padding-top:1.5rem}.ballo-photo-lead img{border-radius:16px}}
.leto-heading{display:flex;align-items:center;justify-content:space-between;gap:2rem}.leto-heading>div{max-width:850px}.creative-page .leto-heading>img{width:140px;height:auto;border-radius:50%;flex-shrink:0}.leto-programme{display:grid;gap:1.2rem;margin-top:2rem}.leto-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin:2rem 0}.leto-numbers strong{font-size:clamp(2.8rem,6vw,4rem);color:#009fa6;line-height:1}.leto-numbers p{margin:.5rem 0}.leto-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;align-items:start;margin-top:2rem}.leto-photo-grid figure{margin:0;min-width:0}.leto-photo-grid .landscape{grid-column:span 2}.leto-photo-grid a{display:block;border-radius:20px;overflow:hidden}.creative-page .leto-photo-grid img{display:block;width:100%;height:auto;border-radius:20px}.leto-photo-grid figcaption{font-size:1rem;line-height:1.5;padding:.8rem .15rem;color:var(--muted,#777)}.leto-photo-grid a:focus-visible{outline:3px solid #009fa6;outline-offset:5px}@media(max-width:800px){.leto-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.leto-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.creative-page .leto-heading>img{width:95px}}@media(max-width:560px){.leto-heading{align-items:flex-start;flex-direction:column-reverse;gap:1rem}.creative-page .leto-heading>img{width:80px}.leto-photo-grid{grid-template-columns:1fr}.leto-photo-grid .landscape{grid-column:span 1}.leto-numbers{gap:1.2rem}}

/* La compagnia: a shared home for its different groups. */
.company-groups{background:linear-gradient(135deg,#eefafa 0%,#f4f0fa 55%,#fff2e9 100%);scroll-margin-top:110px}
.company-groups-intro{max-width:760px;margin-bottom:2rem}
.company-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.company-group-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:2rem;border:1px solid #dedbe9;border-radius:26px;background:#ffffffdb;box-shadow:0 12px 35px #211f3807}
.company-group-card:nth-child(2){border-top:4px solid #965b9f}
.company-group-card:first-child{border-top:4px solid #00a3ad}
.company-group-card:nth-child(3){border-top:4px solid #d58d65}
.company-group-card h3{font-size:clamp(1.55rem,2.3vw,2rem);line-height:1.15;margin:.5rem 0 1rem}
.company-group-card .script{font-size:1.55rem;margin:.7rem 0 0}
.company-group-card .group-number{font-size:.85rem;letter-spacing:.14em;color:#767184}
.company-group-card .button{margin-top:auto;white-space:normal;text-align:center;font-size:.9rem;width:100%;padding:1rem .8rem}
.company-group-card>p:not(.script){margin-bottom:1.75rem}
.company-breadcrumb{padding-top:1rem;padding-bottom:1rem}
@media(max-width:900px){.company-group-grid{grid-template-columns:1fr}.company-group-card{padding:1.6rem}.company-group-card .button{width:auto}.company-groups{scroll-margin-top:80px}}
@media(prefers-reduced-motion:no-preference){.company-group-card{transition:transform .2s,box-shadow .2s}.company-group-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px #211f3810}}

/* Compagnia di sperimentazione: foto del gruppo e del processo creativo. */
.creative-page .split figure{margin:0}.creative-page .split figure img{display:block;width:100%;height:auto;border-radius:24px}.experiment-gallery figure{margin:0;min-width:0}.experiment-gallery figure img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:20px}.experiment-gallery figcaption{font-weight:600;font-size:1.15rem;padding:14px 0}.experiment-gallery>p:not(.script){max-width:720px;margin-bottom:30px}

/* Original illustrated identities for the company's three paths. */
.company-groups{background:radial-gradient(ellipse at 10% 5%,#b9eece88,transparent 45%),radial-gradient(ellipse at 94% 85%,#c1c4ff66,transparent 50%),#fbf9f5}
.company-group-grid{gap:1.6rem;align-items:stretch}
.company-group-card{isolation:isolate;border:0!important;border-radius:42px 42px 24px 42px;padding:1.8rem 1.7rem 1.6rem;overflow:visible;box-shadow:0 14px 34px #25213d0d}
.company-group-card.group-sperimentazione{--group-ink:#086459;--group-dark:#07594f;background:linear-gradient(155deg,#b8e9d9,#e7f2b8 65%,#f8fae9)}
.company-group-card.group-produzione{--group-ink:#923822;--group-dark:#8b3025;background:linear-gradient(155deg,#ffc4af,#ffe0a6 65%,#fff2d7);border-radius:42px 24px 42px 24px}
.company-group-card.group-territorio{--group-ink:#443778;--group-dark:#413375;background:linear-gradient(155deg,#c1e7f7,#d5ccf2 65%,#eee8fa);border-radius:24px 42px 42px 24px}
.company-group-symbol{display:block;width:min(100%,245px);aspect-ratio:1;object-fit:contain;align-self:center;margin:-.35rem auto .4rem;filter:drop-shadow(0 10px 16px #211f3809)}
.company-group-card h3{color:var(--group-ink);font-size:clamp(1.8rem,2.5vw,2.15rem)}
.company-group-card .script{color:var(--group-ink);font-size:1.65rem}
.company-group-card>p:not(.script){color:#292738;line-height:1.65}
.company-group-card .group-explore{display:flex;align-items:center;justify-content:space-between;gap:.7rem;position:static;background:var(--group-dark);color:#fff;text-align:left;border:0;border-radius:16px 28px 28px 16px;padding:.7rem .65rem .7rem 1.1rem;letter-spacing:.025em;font-size:.95rem;min-height:60px;box-shadow:0 6px 16px #211f3814}
.company-group-card .group-explore:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;cursor:pointer}
.group-arrow{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:50%;background:#ffffff24;font-size:1.4rem}
.company-group-card:focus-within{outline:3px solid var(--group-ink);outline-offset:5px}
.company-group-card .group-explore:focus-visible{outline:0}
.company-group-card:hover .group-explore{background:var(--group-ink)}
.experiment-branded .hero{background:radial-gradient(ellipse at 95% 0%,#dcefa0,transparent 65%),linear-gradient(120deg,#c2ebdd,#eef6d7);color:#183e38}
.experiment-hero{display:flex;align-items:center;gap:3rem}
.experiment-hero>div{flex:1;min-width:0}
.experiment-hero-symbol{width:clamp(180px,25vw,300px);height:auto;flex-shrink:0}
.experiment-branded .cards.three .card{border:0;border-radius:28px 28px 12px 28px;background:linear-gradient(140deg,#d7eee2,#edf3cf);border-left:5px solid #4f9c88}
.experiment-branded .cards.three .card:nth-child(3n+2){background:linear-gradient(140deg,#ffe0c6,#fff0cf);border-color:#ca7350}
.experiment-branded .cards.three .card:nth-child(3n){background:linear-gradient(140deg,#ddd5f0,#dbeaf7);border-color:#7d6aab}
.experiment-branded .button{background:linear-gradient(115deg,#07594f,#286b5d);border-radius:16px 30px 30px 16px;box-shadow:0 8px 20px #07594f18}
.company-breadcrumb a{display:inline-flex;padding:.6rem 1rem;border-radius:12px 24px 24px 12px;background:#e5f1eb;color:#07594f;font-weight:600;text-decoration:none}
@media(min-width:901px){.company-group-card.group-produzione{margin-top:1rem;margin-bottom:-1rem}}
@media(max-width:900px){.company-group-card{padding:1.5rem 1.7rem}.company-group-symbol{width:200px}.company-group-card .group-explore{width:100%}.experiment-hero{gap:1rem}.experiment-hero-symbol{width:180px}}
@media(max-width:600px){.experiment-hero{flex-direction:column-reverse;align-items:flex-start}.experiment-hero-symbol{width:145px}.company-group-symbol{width:190px}.company-group-card{border-radius:32px!important}.company-group-grid{gap:1.5rem}}
@media(prefers-reduced-motion:no-preference){.company-group-card .company-group-symbol,.group-arrow{transition:transform .25s}.company-group-card:hover .company-group-symbol{transform:rotate(-3deg) scale(1.025)}.company-group-card:hover .group-arrow{transform:rotate(8deg)}.company-group-card:hover{transform:translateY(-5px)}}

/* Group colours: production / experimentation / Under 18. */
.company-group-card.group-produzione{--group-ink:#665000;--group-button:linear-gradient(115deg,#f0c62e,#ffe487 60%,#fff0b5);--group-text:#493800;background:linear-gradient(145deg,#fff1a7,#fff9dc 60%,#ffe18a)}
.company-group-card.group-sperimentazione{--group-ink:#244f91;--group-button:linear-gradient(115deg,#bedcff,#dbeeff 55%,#b6d3fa);--group-text:#183c74;background:linear-gradient(145deg,#bedbfa,#eff7ff 60%,#c9ddfb)}
.company-group-card.group-under18{--group-ink:#65418b;--group-button:linear-gradient(115deg,#d2b4ee,#eadcf7 55%,#d9c0f0);--group-text:#4f2b70;background:linear-gradient(145deg,#ddc8f2,#f6effc 60%,#e3d0f4);border-radius:24px 42px 42px 24px}
.company-group-card .group-explore,.company-group-card:hover .group-explore{background:var(--group-button);color:var(--group-text);border:1px solid #ffffffb3;border-radius:50px;box-shadow:0 5px 16px #35245612;text-align:center;justify-content:center;padding:1rem 1.15rem;font-weight:600;letter-spacing:.035em}
.company-group-card .group-arrow{background:none;width:auto;height:auto;font-size:1.25rem;margin-left:.3rem}
.company-group-card .group-explore:after{border-radius:30px}
@media(min-width:901px){.company-group-card.group-produzione{margin-top:0;margin-bottom:0}.company-group-card.group-sperimentazione{margin-top:1rem;margin-bottom:-1rem}}
.experiment-branded .hero{background:radial-gradient(ellipse at 95% 0%,#c5e4ff,transparent 65%),linear-gradient(120deg,#c5dafa,#eff6ff);color:#1b3e71}
.experiment-branded .cards.three .card{background:linear-gradient(135deg,#c8def8,#edf5ff);border-color:#5386c0}
.experiment-branded .cards.three .card:nth-child(3n+2){background:linear-gradient(135deg,#d5e9fb,#f0f7ff);border-color:#739dd0}
.experiment-branded .cards.three .card:nth-child(3n){background:linear-gradient(135deg,#cddaf5,#e8f0ff);border-color:#6c83b7}
.experiment-branded .button{background:linear-gradient(115deg,#bddbff,#e2f0ff,#b7d3f7);color:#183c74;border-radius:50px;box-shadow:0 5px 16px #244f9114}
.under18-branded .hero{background:linear-gradient(130deg,#d9c1ee,#f1e7fa 65%,#e0c8f4);color:#4f2b70}
.under18-branded .button{background:linear-gradient(115deg,#d2b4ee,#eadcf7,#d9c0f0);color:#4f2b70;border-radius:50px;box-shadow:0 5px 16px #65418b14}
.experiment-branded .company-breadcrumb a{background:#e5effc;color:#244f91}.under18-branded .company-breadcrumb a{background:#eee4f7;color:#65418b}

/* Group buttons override the shared multicolour brand button rule. */
.company-group-card.group-produzione{--group-button:linear-gradient(115deg,rgba(240,198,46,.66),rgba(255,228,135,.72) 60%,rgba(255,240,181,.65));--group-button-border:rgba(164,125,12,.25)}
.company-group-card.group-sperimentazione{--group-button:linear-gradient(115deg,rgba(87,151,232,.48),rgba(164,205,248,.64) 60%,rgba(116,166,231,.48));--group-button-border:rgba(36,79,145,.23)}
.company-group-card.group-under18{--group-button:linear-gradient(115deg,rgba(177,129,217,.5),rgba(218,191,239,.67) 60%,rgba(193,156,224,.5));--group-button-border:rgba(101,65,139,.23)}
.company-groups .company-group-card .button.group-explore,
.company-groups .company-group-card:hover .button.group-explore,
.company-groups .company-group-card .button.group-explore:focus-visible,
.company-groups .company-group-card .button.group-explore:active{background:var(--group-button);color:var(--group-text);border:1px solid var(--group-button-border);box-shadow:inset 0 1px 0 #ffffff70,0 5px 14px #3524560a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:1}

/* Illustrated event identities, shared between project cards and stories. */
.event-ballo{--event-ink:#205635;--event-wash:linear-gradient(130deg,#cee9c3,#eff8e5 58%,#c8e7da);--event-button:linear-gradient(115deg,#8fc69a88,#c8e7b8bb,#9dd1bd88);--event-soft:#f0f7ec}
.event-binario{--event-ink:#854017;--event-wash:linear-gradient(130deg,#ffd2a5,#fff0dc 58%,#ffceac);--event-button:linear-gradient(115deg,#efa55f88,#ffddb5bb,#f7b38088);--event-soft:#fff4e8}
.event-leto{--event-ink:#593274;--event-wash:linear-gradient(125deg,#d8bfef,#eee0f4 40%,#fff1ad 75%,#ffe28d);--event-button:linear-gradient(115deg,#b88ad988,#d4b7e8aa 35%,#ffe382b0);--event-soft:#f8f1fc}
.event-branded .hero{background:var(--event-wash);color:var(--event-ink)}
.event-branded .hero .script,.event-branded .hero .hero-subtitle,.event-branded h2,.event-branded h3,.event-branded .script{color:var(--event-ink)}
.event-branded .hero .hero-subtitle{opacity:.9}
.event-hero-layout{display:flex;align-items:center;gap:3rem;text-align:left}
.event-hero-layout>div{flex:1;min-width:0}
.event-hero-layout h1{margin-left:0}
.event-hero-layout .hero-subtitle{margin-left:0}
.event-branded .event-hero-layout>img.event-hero-symbol{display:block;width:clamp(190px,26vw,300px);height:auto;aspect-ratio:1;object-fit:contain;flex-shrink:0;border-radius:0}
.event-branded .leto-official-logo{display:block;width:75px;height:auto;margin-bottom:1.25rem;border-radius:50%}
.event-branded .soft{background:var(--event-soft)}
.event-branded .card{border-color:color-mix(in srgb,var(--event-ink) 18%,transparent);border-radius:28px;background:linear-gradient(135deg,#ffffffd9,var(--event-soft))}
.event-branded .leto-numbers strong{color:var(--event-ink)}
.event-branded.creative-page .button:not(.light):not(.ghost):not(.secondary),
.event-branded.project-card .text-link{background:var(--event-button);color:var(--event-ink);border:1px solid color-mix(in srgb,var(--event-ink) 20%,transparent);border-radius:40px;box-shadow:inset 0 1px 0 #ffffff80,0 5px 14px #35245609;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:13px 23px;text-decoration:none;min-height:48px;font-weight:600}
.event-branded.creative-page .button:not(.light):not(.ghost):not(.secondary):hover,.event-branded.project-card .text-link:hover{background:var(--event-button);box-shadow:0 7px 18px #35245619}
.event-branded.project-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;background:var(--event-wash);border:0;border-radius:32px;padding:26px}
.event-branded.project-card>img:first-child{width:100%;margin-bottom:0}
.event-branded.project-card>img.event-card-symbol{width:110px;height:110px;aspect-ratio:1;object-fit:contain;border-radius:0;margin:-40px -4px .25rem auto;position:relative;filter:drop-shadow(0 3px 7px #ffffff90)}
.event-branded.project-card>p:not(.script){color:#48404f}
.event-branded.project-card .text-link{margin-top:auto;display:inline-flex;align-items:center}
.event-branded.project-card h3{font-size:30px}
.event-branded.project-card .script{margin-bottom:.7rem}
.event-branded a:focus-visible{outline:3px solid var(--event-ink);outline-offset:4px}
@media(max-width:700px){.event-hero-layout{flex-direction:column-reverse;align-items:flex-start;gap:1.5rem}.event-branded .event-hero-layout>img.event-hero-symbol{width:165px}.event-branded.project-card{padding:21px}.event-branded.project-card>img.event-card-symbol{width:90px;height:90px;margin-top:-30px}.event-branded .leto-official-logo{width:60px}}

.event-bandi{--event-ink:#38527a;--event-wash:linear-gradient(135deg,#d3e8f7,#e5daf3 60%,#e8eff9);--event-button:linear-gradient(115deg,#a4c5ec88,#d9c6edaa,#c3daf2a0);--event-soft:#f2f5fb}
.event-branded.project-card>img.leto-group-cover{object-position:center 56%}
.event-branded.project-card>img.grant-cover{object-fit:contain;aspect-ratio:1.6;max-height:290px;margin-bottom:1.5rem}
.grant-role{display:inline-block;color:var(--event-ink);font-size:.92rem;font-weight:600;padding:.4rem .75rem;border-radius:18px;background:#ffffffb0;border:1px solid #38527a20}
.grant-sources{font-size:.9rem;margin-top:1.2rem!important;line-height:1.7}
.grant-sources a{color:#38527a;overflow-wrap:anywhere}
.grant-nav{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.grant-nav a{padding:.65rem 1rem;border-radius:25px;background:var(--event-button);color:var(--event-ink);text-decoration:none;border:1px solid #38527a25;font-weight:500}
.event-bandi section[id]{scroll-margin-top:100px}
@media(max-width:600px){.event-branded.project-card>img.leto-group-cover{aspect-ratio:1.2;object-position:center 58%}.grant-nav{gap:.6rem}.grant-nav a{font-size:1rem}}

/* Bandi belongs to the primary navigation and has its own red identity. */
.event-bandi{--event-ink:#872c35;--event-wash:linear-gradient(130deg,#f6b9ba,#fff0ee 58%,#f2c2c5);--event-button:linear-gradient(115deg,#d96a7288,#f3b7bbaa,#e9929988);--event-soft:#fff1f1}
.event-bandi .grant-sources a{color:#872c35}
.event-bandi .grant-role{border-color:#872c3528}
.event-bandi .grant-nav a{border-color:#872c3528}
.site-header nav>a.nav-bandi{color:#9b3444}
body:has(.home-hero) .site-header nav>a.nav-bandi{color:inherit}
@media(min-width:1201px){.site-header nav{gap:clamp(10px,1.1vw,18px)}.site-header{gap:20px}}
@media(max-width:1200px){body:has(.home-hero) .site-header nav>a.nav-bandi{color:#9b3444}}

/* A shared illustrated language for selectable experiences throughout the site. */
.option-themed.theme-famiglie,.option-themed.theme-green{--option-ink:#245b45;--option-wash:linear-gradient(135deg,#def0d6,#eff9e9 55%,#cfe9dd);--option-fill:linear-gradient(115deg,#9bcba388,#d4e9b6b0,#a5d5c58a)}
.option-themed.theme-prosa,.option-themed.theme-gold{--option-ink:#654e08;--option-wash:linear-gradient(135deg,#ffedaa,#fff9df 55%,#f8e0a1);--option-fill:linear-gradient(115deg,#efc74999,#ffebb3bd,#f0cf7b88)}
.option-themed.theme-laboratori,.option-themed.theme-blue{--option-ink:#244f84;--option-wash:linear-gradient(135deg,#cfdef7,#eff7ff 55%,#c6e4f2);--option-fill:linear-gradient(115deg,#98bcec88,#cee5f9b0,#aec5ef88)}
.option-themed.theme-lilac{--option-ink:#65418b;--option-wash:linear-gradient(135deg,#e1d1f1,#f6effc 55%,#d8c9f3);--option-fill:linear-gradient(115deg,#bfa1df88,#eadcf7bb,#cbb5e888)}
.option-themed.theme-red{--option-ink:#872c35;--option-wash:linear-gradient(135deg,#f6d0d2,#fff1f0 55%,#ecc4c8);--option-fill:linear-gradient(115deg,#db919988,#f3b7bbaa,#e9929988)}
.card.option-themed,.professional-card.option-themed,.offer-card.option-themed{border:1px solid #ffffffa0;background:var(--option-wash);border-radius:30px;box-shadow:0 10px 26px #25213908}
.option-themed h2,.option-themed h3,.option-themed .script{color:var(--option-ink)}
.option-themed .option-symbol{display:block;width:105px;height:105px;object-fit:contain;aspect-ratio:1;border-radius:0;margin:0 0 1rem auto;max-height:none}
.option-themed.course-category .option-symbol{width:90px;height:90px;margin:1rem 1.3rem 0 auto}
.option-themed.illustrated-card .option-symbol{width:100px;height:100px}
.option-themed .offer-copy{background:transparent}
.offer-quote-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem}
.option-themed .button:not(.light):not(.ghost):not(.secondary),.option-themed .button.secondary,.option-themed .themed-action{background:var(--option-fill);color:var(--option-ink);border:1px solid color-mix(in srgb,var(--option-ink) 20%,transparent);border-radius:40px;padding:12px 22px;min-height:46px;box-shadow:inset 0 1px 0 #ffffff80,0 4px 14px #25213909;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;backdrop-filter:blur(7px)}
.option-themed .button:not(.light):not(.ghost):not(.secondary):hover,.option-themed .themed-action:hover{background:var(--option-fill);box-shadow:0 7px 18px #25213919}
.option-themed .catalog-hero{background:var(--option-wash);color:var(--option-ink)}
.option-themed .catalog-lead{color:var(--option-ink)}
.quote-school{border:1px solid #c5d7e5;border-radius:18px;padding:20px}.quote-school[hidden]{display:none}.art-area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.art-area-grid .checkbox{margin:0!important}.cv-card fieldset{margin:24px 0;padding:20px;border:1px solid #d5d9e7;border-radius:18px}.cv-card textarea{white-space:pre-wrap}.collaboration-home{max-width:1000px}.collaboration-card{margin:18px 0;background:linear-gradient(135deg,#e3f1f6,#eee5f5);border-radius:25px}.conversation-message{margin:12px 0}.conversation-message p{white-space:pre-wrap;overflow-wrap:anywhere;color:#453d50}.collaboration-home textarea{width:100%;min-height:140px;padding:15px;border:1px solid #ccc7d9;border-radius:15px}.collaboration-home form label{display:block}.collaboration-home #collaboration-thread{margin-top:40px;padding-top:25px;border-top:2px solid #ddd6eb;scroll-margin-top:100px}.mailbox-heading{display:flex;align-items:center;gap:25px;margin:0 0 30px}.mailbox-heading>img{width:120px;height:120px;object-fit:contain}.mailbox-heading h2{margin-bottom:0}.account-links .mailbox-link{display:inline-flex;gap:12px;align-items:center;padding:10px 22px 10px 12px;background:linear-gradient(115deg,#c7e7ee,#d2dff5,#e5cfed);color:#363469;border-color:#c8cce0}.mailbox-link img{width:55px;height:55px;object-fit:contain}.quote-message-details{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:8px 20px;padding:22px;border-radius:20px;background:#f5f3fa}.quote-message-details dt{font-weight:600}.quote-message-details dd{margin:0;overflow-wrap:anywhere}#production-people{display:grid;gap:12px;margin:20px 0}#production-retry{margin-top:20px}
@media(max-width:600px){.art-area-grid{grid-template-columns:1fr}.mailbox-heading{gap:15px}.mailbox-heading>img{width:85px;height:85px}.quote-message-details{grid-template-columns:1fr;gap:5px}.quote-message-details dd{margin-bottom:10px}.offer-quote-actions .button{width:100%}.option-themed .option-symbol{width:85px;height:85px}.collaboration-home .catalog-heading{align-items:flex-start;gap:15px;flex-direction:column}}
.option-themed.theme-orange{--option-ink:#884019;--option-wash:linear-gradient(135deg,#ffd2b9,#fff0dd 55%,#ffdbaf);--option-fill:linear-gradient(115deg,#ec9c6e88,#ffdaadbb,#edb78988)}

/* Home: soft title colour, centred typography and connected values. */
.homepage h1,.homepage h2,.homepage h3{text-align:center;text-transform:uppercase}
.homepage h2{letter-spacing:.045em}
.homepage .section>.script,.homepage .section>.wrap>.script,.homepage .memory-heading,.homepage .catalog-heading>div,.homepage .home-values-heading{text-align:center}
.homepage .catalog-heading{justify-content:center;flex-direction:column;gap:1.2rem}
.homepage .catalog-heading h2{margin-bottom:0}
.homepage .experimentation-teaser .wrap{text-align:center}.homepage .experimentation-teaser p{margin-inline:auto}
.homepage .home-hero h1{background:linear-gradient(115deg,#ffffff 12%,#d8f6f0 48%,#e6dcf4 84%,#ffffff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#eef8f8;text-shadow:none}
.home-values{background:radial-gradient(ellipse at 8% 30%,#dbeaf655,transparent 48%),radial-gradient(ellipse at 90% 65%,#dfe9c955,transparent 46%),#faf9f6;padding-bottom:105px}
.home-values-heading{max-width:760px;margin:0 auto 45px}.home-values-heading>p:last-child{max-width:650px;margin-inline:auto}
.home-values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:stretch;position:relative}
.home-value{padding:25px 25px 32px;text-align:center;position:relative;border:1px solid #ffffffc0;box-shadow:0 10px 30px #25213907;border-radius:44px 44px 24px 44px}
.value-experiment{background:linear-gradient(145deg,#cfe0f6,#eef6ff);--value-ink:#345783}
.value-create{background:linear-gradient(145deg,#deedbb,#eff7de);--value-ink:#486337;border-radius:30px 48px 40px 30px}
.value-persist{background:linear-gradient(145deg,#d9d7f1,#eef0fa);--value-ink:#514e89;border-radius:44px 28px 44px 28px}
.home-value>img{display:block;width:165px;height:165px;object-fit:contain;margin:0 auto 18px}
.home-value h3{color:var(--value-ink);font-size:clamp(1.45rem,2.1vw,1.8rem);letter-spacing:.045em;margin:14px 0}
.home-value .value-note{color:var(--value-ink);font-size:1.6rem;line-height:1.25;margin-bottom:12px}
.home-value>p:last-child{color:#514d60;font-size:1.05rem;margin-bottom:0;line-height:1.7}
.upcoming-carousel{margin:32px 0}.upcoming-track{position:relative;display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 5px 25px;scrollbar-width:thin;scrollbar-color:#a7bfd3 #edf2f6;overscroll-behavior-inline:contain}
.upcoming-track.single{justify-content:center}.upcoming-slide{flex:0 0 calc((100% - 48px)/3);min-width:285px;scroll-snap-align:start;border-radius:27px;overflow:hidden;background:linear-gradient(145deg,#e7f1f4,#efe5f2);box-shadow:0 8px 26px #211f380b;border:1px solid #e4e4ed}
.upcoming-track.single .upcoming-slide{flex-basis:min(100%,740px);display:grid;grid-template-columns:1fr 1fr;min-width:0;align-items:start}
.upcoming-poster{display:block;background:#f4f1ed}.upcoming-poster img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}.upcoming-copy{padding:24px}.upcoming-copy h3{font-size:24px;margin-bottom:16px}.upcoming-copy .event-meta{color:#755773;font-weight:600;font-size:1rem}.upcoming-location{font-weight:600;color:#433e57!important}.upcoming-copy>p:not(.event-meta){font-size:1rem}.upcoming-copy .button:not(.light):not(.ghost):not(.secondary){background:linear-gradient(115deg,#c8e0e9aa,#e5d3edbb);color:#423c65;border-color:#423c6520;min-height:48px}
.upcoming-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin-bottom:18px}.upcoming-controls[hidden]{display:none}.upcoming-controls p{margin:0;min-width:60px;text-align:center}.carousel-arrow{display:grid;place-items:center;border:1px solid #cccddd;background:linear-gradient(120deg,#e1edf7,#eee2f1);color:#423c65;width:48px;height:48px;border-radius:50%;font-size:24px}.carousel-arrow:disabled{opacity:.35;cursor:default}.upcoming-track:focus-visible,.upcoming-poster:focus-visible{outline:3px solid #527fab;outline-offset:3px}
@media(min-width:851px){.value-create{transform:translateY(18px)}}
@media(max-width:1000px){.upcoming-slide{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:850px){.home-values-grid{grid-template-columns:1fr;max-width:600px;margin:auto}.home-value{padding:24px 28px 30px}.home-value>img{width:135px;height:135px}.home-values{padding-bottom:65px}}
@media(max-width:600px){.upcoming-track{padding-inline:2px}.upcoming-slide{flex-basis:88%;min-width:0}.upcoming-track.single .upcoming-slide{display:block;flex-basis:100%}.upcoming-copy{padding:22px}.upcoming-copy h3{font-size:23px}.home-value h3{font-size:1.65rem}.homepage h2{letter-spacing:.025em}}
@media(prefers-reduced-motion:reduce){.homepage .home-hero h1 .type-letter{animation:none;opacity:1;filter:none;transform:none}}

/* Catalogue identity is explicit per proposal; preserve every original course illustration. */
.offer-identity .offer-quote-actions .text-link{color:var(--option-ink)}
.offer-identity .section.soft{background:var(--option-wash)}
.offer-identity .price-option{border-color:color-mix(in srgb,var(--option-ink) 18%,white)}

/* The heading stays fully visible: only its colour graduates, never its opacity. */
.homepage .home-hero h1{opacity:1;filter:none;animation:none;background:linear-gradient(110deg,#fff 5%,#bcebe5 38%,#d7c4ec 68%,#fff1d1 97%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
/* Course identities use their own original transparent PNG, without extra symbols. */
.course-category[data-course-design="0"]{--option-ink:#70571b;--option-wash:linear-gradient(135deg,#f9e3a0,#fff9e9 56%,#f5d781);--option-fill:linear-gradient(115deg,#f2c75b70,#fbe6ae99)}
.course-category[data-course-design="1"]{--option-ink:#14646b;--option-wash:linear-gradient(135deg,#c3e9e9,#f1fbfa 56%,#a9dfe0);--option-fill:linear-gradient(115deg,#1b9fa760,#b6e9e399)}
.course-category[data-course-design="2"]{--option-ink:#292e54;--option-wash:linear-gradient(135deg,#d4d6e5,#f3f3fa 56%,#c1c6dd);--option-fill:linear-gradient(115deg,#555c9560,#d4d8ed99)}
.course-category[data-course-design="3"]{--option-ink:#8c1851;--option-wash:linear-gradient(135deg,#f4c3db,#fff1f7 56%,#eaa6cb);--option-fill:linear-gradient(115deg,#ce0b6660,#f7c9e399)}
.card.course-category.option-themed{background:var(--option-wash);border:1px solid #ffffffb3;border-radius:30px;overflow:hidden}
.course-category>div{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}
.course-category .course-drawing{float:none;display:block;align-self:flex-end;width:112px;height:112px;margin:0 0 18px 16px;flex-shrink:0}
.course-category .course-drawing img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:1;object-fit:contain;background:transparent;border:0;border-radius:0}
.course-category h2{color:var(--option-ink)}
.course-category .themed-action{margin-top:auto}
@media(max-width:600px){.course-category .course-drawing{width:92px;height:92px;margin-bottom:16px}.course-category>div{padding:24px}}

/* Large homepage typography with a slower character-by-character entrance. */
.homepage .home-hero h1{font-family:'Roboto Condensed',sans-serif;font-size:clamp(55px,7.8vw,112px);font-weight:400;line-height:1.08;letter-spacing:.015em;max-width:none;margin:25px 0 35px;padding-left:0;background:none;background-clip:border-box;-webkit-background-clip:border-box;color:#fff;-webkit-text-fill-color:#fff;text-shadow:none;opacity:1;filter:none;animation:none}
.homepage .home-hero h1 .title-word{display:inline-block;white-space:nowrap}
.homepage .home-hero h1 .title-letter{display:inline-block;color:#fff;-webkit-text-fill-color:#fff;opacity:1;filter:none;transform:none;animation:tds-original-title-in 1.15s cubic-bezier(.645,.045,.355,1) both;animation-delay:var(--title-delay)}
@keyframes tds-original-title-in{from{opacity:0;filter:blur(30px);transform:translateY(var(--title-from-y)) scale(.9)}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}
@media(max-width:480px){.homepage .home-hero h1{font-size:clamp(40px,11vw,55px)}}
@media(prefers-reduced-motion:reduce){.homepage .home-hero h1 .title-letter{animation:none;opacity:1;filter:none;transform:none}}

/* Light blue experimentation hero needs dark copy, overriding shared dark-hero colours. */
.experiment-branded .hero .hero-subtitle{color:#314f73;opacity:1}
.experiment-branded .hero .script{color:#285f87;opacity:1}

/* Readable copy on the light lilac Under 18 hero. */
.under18-branded .hero .hero-subtitle{color:#50365f;opacity:1}
.under18-branded .hero .script{color:#674180;opacity:1}

.offer-copy>.offer-credit,.detail-copy>.offer-credit,.booking-summary .offer-credit{min-height:0;font-size:16px;line-height:1.5;font-weight:600;color:var(--option-ink,#42334f);padding:10px 14px;border-left:3px solid currentColor;border-radius:0 10px 10px 0;background:#ffffff85;margin:0 0 20px}
.school-brochure{margin-top:22px}.school-brochure p{font-size:14px;margin-top:12px}
.grant-project-list{background:radial-gradient(ellipse at 0 25%,#f4ccd555,transparent 60%),linear-gradient(135deg,#fff8f5,#f5f2fa)}
.grant-project{background:#fff;border-radius:32px;overflow:hidden;border:1px solid #eed8dc;box-shadow:0 12px 40px #6d213509;margin:0 auto 50px;max-width:1000px;scroll-margin-top:110px}
.grant-project-heading{display:flex;gap:22px;padding:35px 38px 28px;align-items:flex-start;background:linear-gradient(120deg,#f8d7db77,#fff4ed)}
.grant-number{color:#a13b4d;font-size:16px;padding-top:12px}.grant-project-heading h2{font-size:clamp(27px,3vw,38px);color:#762d3d;margin:0}.grant-project-heading .script{font-size:24px;color:#9b4051}
.grant-project figure{margin:0}.grant-project figure img{display:block;width:100%;height:clamp(230px,35vw,420px);object-fit:cover}.grant-project figure figcaption{font-size:11px;color:#82707a;padding:10px 38px}
.grant-project-copy{padding:20px 38px 38px}.grant-project-copy dl{display:grid;gap:16px;border-block:1px solid #efdee2;padding:22px 0;margin:18px 0 25px}.grant-project-copy dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:15px}.grant-project-copy dt{font-size:13px;text-transform:uppercase;color:#9a5260}.grant-project-copy dd{margin:0;overflow-wrap:anywhere}.grant-project-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:25px}.grant-project-links .button{background:linear-gradient(120deg,#f1bdc7,#f9ddd5);color:#782e40;border-color:#e8b9c5}.grant-project-links .text-link{color:#8b3f51}
@media(max-width:600px){.grant-project-heading{padding:25px 24px;gap:14px}.grant-project-copy{padding:18px 24px 28px}.grant-project figure figcaption{padding-inline:24px}.grant-project-copy dl>div{grid-template-columns:1fr;gap:4px}.grant-project{border-radius:24px;margin-bottom:30px}.grant-project-links{align-items:flex-start;flex-direction:column}}
/* Project identities: dedicated palettes and symbols. */
.projects-directory{background:radial-gradient(ellipse at 0 20%,#dbeaf644,transparent 50%),radial-gradient(ellipse at 100% 80%,#ead9ee55,transparent 50%),#faf9f6}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:40px}.project-tile{border-radius:28px;overflow:hidden;background:linear-gradient(140deg,color-mix(in srgb,var(--project-a) 19%,white),color-mix(in srgb,var(--project-b) 28%,white));border:1px solid color-mix(in srgb,var(--project-a) 25%,white);display:flex;flex-direction:column}.project-cover{width:100%;height:235px;object-fit:cover}.project-tile-copy{padding:30px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.project-tile h3{color:var(--project-ink);font-size:30px;max-width:90%;margin:18px 0}.project-tile p{color:#514e5b}.project-tile .project-symbol{width:115px;height:115px;object-fit:contain}.project-tile .project-action{margin-top:auto;width:100%}.project-action.button:not(.light):not(.ghost):not(.secondary){background:linear-gradient(110deg,color-mix(in srgb,var(--project-a) 38%,transparent),color-mix(in srgb,var(--project-b) 48%,transparent));border-color:color-mix(in srgb,var(--project-ink) 30%,transparent);color:var(--project-ink)}.project-action:hover{filter:brightness(.96)}.project-detail-hero{padding:75px 0 60px;background:radial-gradient(ellipse at 10% 10%,color-mix(in srgb,var(--project-a) 26%,transparent),transparent 70%),linear-gradient(135deg,#fff,color-mix(in srgb,var(--project-b) 24%,white))}.project-detail-heading{display:grid;grid-template-columns:1fr 260px;align-items:center;gap:50px;margin-top:35px}.project-detail-heading .script,.project-detail-heading h1{color:var(--project-ink)}.project-intro{font-size:23px;color:#514e5b}.community-project figure{margin:32px 0}.community-project figure img{border-radius:20px;max-height:480px;width:100%;object-fit:cover}.community-project figcaption{font-size:14px;color:var(--muted)}.artist-credit{display:block;width:fit-content;margin-top:12px;padding:8px 15px;border-radius:12px;background:linear-gradient(115deg,#e1efb9,#c6e4d9);color:#284d3c;font-size:18px;font-weight:600}.grant-official-art img{object-fit:contain!important;background:white;padding:20px;height:auto!important;max-height:440px}.grant-official-art figcaption{padding:10px 20px}.grant-official-art a{color:inherit}
@media(max-width:640px){.projects-grid{grid-template-columns:1fr;gap:22px}.project-tile-copy{padding:25px}.project-tile h3{font-size:27px}.project-symbol{width:95px!important;height:95px!important}.project-cover{height:200px}.project-detail-hero{padding:40px 0}.project-detail-heading{grid-template-columns:1fr;gap:10px;margin-top:25px}.project-detail-heading>img{grid-row:1;width:140px;height:140px}.project-detail-heading h1{font-size:36px}.project-intro{font-size:20px}}
/* Only the mobile homepage is rebalanced; desktop and title animation stay intact. */
@media(max-width:640px){
.homepage .wrap{width:calc(100% - 40px)}
.homepage .home-hero{min-height:0;padding:118px 0 38px}
.homepage .home-hero>.wrap{max-width:440px}
.homepage .home-hero .script{font-size:25px;margin-bottom:16px}
.homepage .home-hero h1{font-size:clamp(36px,9.7vw,48px);line-height:1.12;margin:18px 0 23px;letter-spacing:.01em}
.homepage .home-hero .hero-subtitle{font-size:20px;line-height:1.4;margin-bottom:23px}
.homepage .home-hero .hero-actions{gap:12px;margin-top:0}
.homepage .home-hero .button{min-height:46px;padding:11px 20px;font-size:12px;width:min(100%,280px)}
.homepage .home-hero .brand-illustrations{gap:20px;margin-top:26px}
.homepage .home-hero .brand-illustrations img{width:48px;height:48px}
.homepage .section{padding-block:48px}
.homepage .section h2{font-size:29px;line-height:1.2}
.homepage .section p{font-size:17px;line-height:1.6}
.homepage .section .script{font-size:25px}
.homepage .cards{margin-top:24px;gap:18px}
.homepage .illustrated-card{padding:24px}
.homepage .illustrated-card .service-drawing{width:85px;height:85px;margin-bottom:10px}
.homepage .home-values-heading{margin-bottom:24px}
.homepage .home-values-grid{gap:16px}
.homepage .home-value{padding:22px 24px}
.homepage .home-value>img{width:88px;height:88px;margin-bottom:10px}
.homepage .home-value h3{font-size:25px;margin-bottom:12px}
.homepage .home-value .value-note{font-size:23px}
.homepage .memory-grid{gap:12px}
.homepage .press-heading{margin-bottom:25px}
.homepage .press-home .press-story-copy{padding:22px}
.homepage .press-home .press-story h3{font-size:25px}
.homepage .upcoming-carousel img{max-height:360px;object-fit:contain}
}
