/*! Accademia Ving Tsun Ticino — autodifesa.ch
 * Design e codice © 2026 Accademia Ving Tsun Ticino, Sifu Luca Bomba. Tutti i diritti riservati.
 * Layout, composizione, illustrazioni e fotografie non sono riutilizzabili senza autorizzazione scritta.
 */
:root{--motion:1}
@media (prefers-reduced-motion:reduce){:root{--motion:0}}
:root[data-motion="full"]{--motion:1}
:root[data-motion="reduce"]{--motion:0}
:root{--oro-1x:-28%;--oro-1y:-36%;--oro-2x:-26%;--oro-2y:-32%;--oro-3x:46%;--oro-3y:56%;--luce-x:80%;--luce-y:0%}
[data-luce="sinistra"]{--oro-1x:-12%;--oro-2x:-42%;--oro-3x:20%;--luce-x:16%}
[data-luce="alta"]{--oro-1y:-54%;--oro-3y:32%;--luce-y:-8%}
[data-luce="bassa"]{--oro-1y:-16%;--oro-2y:-12%;--oro-3y:70%;--luce-y:14%}
:root{
--carta:#ECDFCF;
--carta-2:#F3EBDF;
--carta-3:#E2D4C1;
--inchiostro:#1F1C18;
--inchiostro-2:#2A2722;
--seppia:#5B4A38;
--seppia-2:#8C7A63;
--seppia-3:#B9A88F;
--sigillo:#B5432A;
--sigillo-2:#9A3621;
--rosso:#D2311C;
--rosso-2:#B0261A;
--oro:#C39A4A;
--giada:#6E8A78;
--verde-wa:#148444;
--giada-2:#41584A;
--display:"Fraunces","Iowan Old Style","Georgia",serif;
--sans:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;
--ease:cubic-bezier(.2,.65,.3,1);
--gutter:clamp(20px,5vw,80px);
--w:1280px;
--header-h:100px;
--ctabar-h:58px;
--seal:var(--sigillo);
--seal-ink:var(--carta);
--scene-fiume:none;
--scene-montagne:none;
--scene-foschia:none;
--scene-o:.28;
--marea-1:var(--sigillo);
--marea-2:var(--oro);
--marea-3:var(--seppia);
}
.ink{--marea-1:var(--oro);--marea-2:var(--sigillo);--marea-3:var(--seppia-3)}
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:block;src:url("../fonts/fraunces-roman.woff2") format("woff2")}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:100 900;font-display:block;src:url("../fonts/fraunces-italic.woff2") format("woff2")}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:100 900;font-display:block;src:url("../fonts/bricolage-grotesque.woff2") format("woff2")}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--header-h)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;color:var(--inchiostro);
background-color:var(--carta);
background-image:
radial-gradient(120% 30% at var(--luce-x) var(--luce-y),rgba(195,154,74,.22),transparent 62%),
radial-gradient(95% 22% at 4% 18%,rgba(91,74,56,.09),transparent 66%),
radial-gradient(130% 26% at 96% 48%,rgba(195,154,74,.13),transparent 64%),
radial-gradient(110% 22% at 8% 76%,rgba(91,74,56,.07),transparent 62%),
linear-gradient(180deg,var(--carta-2) 0%,var(--carta) 22%,#EFE6D8 48%,var(--carta) 72%,var(--carta-3) 100%);
background-repeat:no-repeat;
font-family:var(--sans);font-size:17px;line-height:1.55;font-optical-sizing:auto;overflow-x:hidden}
img,canvas,picture{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3{margin:0;font-weight:500;line-height:1;text-wrap:balance}
p{margin:0}
:focus-visible{outline:2px solid var(--sigillo);outline-offset:3px}
.ink :focus-visible,.footer :focus-visible,.ctabar :focus-visible{outline-color:var(--carta)}
::selection{background:var(--sigillo);color:var(--carta)}
.disp{font-family:var(--display);font-variation-settings:"opsz" 144,"SOFT" 0,"WONK" 1;font-weight:600;letter-spacing:-.03em;line-height:.92}
.disp i,.disp em{font-style:italic;font-weight:500;font-variation-settings:"opsz" 144,"WONK" 1}
.h2{font-family:var(--display);font-variation-settings:"opsz" 96,"WONK" 1;font-weight:600;font-size:clamp(36px,5.2vw,68px);letter-spacing:-.025em;line-height:.98}
.h2 em{font-style:italic;font-weight:500}
.lead{font-size:clamp(18px,1.55vw,22px);line-height:1.45;font-weight:400;color:var(--seppia)}
.kicker{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--sigillo-2)}
.kicker.sep{color:var(--seppia)}
.wrap{width:min(var(--w),100% - 2*var(--gutter));margin-inline:auto}
.section{padding-block:clamp(64px,9vw,128px);position:relative}
.ink{background:var(--fondo-scuro);color:var(--carta)}
:root{--fondo-scuro:
radial-gradient(58% 72% at 18% 30%,rgba(91,74,56,.42),transparent 70%),
radial-gradient(42% 52% at 90% 88%,rgba(195,154,74,.10),transparent 70%),
var(--inchiostro)}
.ink .lead{color:var(--seppia-3)}
.ink .kicker.sep{color:var(--seppia-3)}
.prose p+p{margin-top:1em}
.prose{max-width:58ch}
.skip{position:absolute;left:var(--gutter);top:-200px;z-index:100;background:var(--inchiostro);color:var(--carta);padding:12px 18px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.skip:focus{top:12px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.btn{display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:0 28px;background:var(--rosso);color:#fff;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;transition:background .3s var(--ease),transform .3s var(--ease)}
.btn:hover{background:var(--rosso-2);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--inchiostro);border:1px solid rgba(31,28,24,.45)}
.btn.ghost:hover{background:var(--inchiostro);color:var(--carta);border-color:var(--inchiostro)}
.ink .btn.ghost{color:var(--carta);border-color:rgba(236,223,207,.45)}
.ink .btn.ghost:hover{background:var(--carta);color:var(--inchiostro)}
.link{display:inline-flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;position:relative;padding-bottom:4px}
.link::after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:100%;background:currentColor;transform:scaleX(.35);transform-origin:left;transition:transform .45s var(--ease)}
.link:hover::after{transform:scaleX(1)}
.link .arr{transition:transform .35s var(--ease)}
.link:hover .arr{transform:translateX(6px)}
.btn.tuta{background:var(--inchiostro);color:var(--carta);box-shadow:inset 0 0 0 1.5px var(--rosso);gap:14px}
.btn.tuta::before{content:"";width:10px;height:10px;background:var(--rosso);flex:none}
.btn.tuta .arr{color:var(--rosso);transition:transform .35s var(--ease)}
.btn.tuta:hover{background:var(--rosso);color:#fff;box-shadow:inset 0 0 0 1.5px var(--rosso)}
.btn.tuta:hover::before{background:var(--inchiostro)}
.btn.tuta:hover .arr{color:#fff;transform:translateX(4px)}
.ink .btn.tuta{box-shadow:inset 0 0 0 1.5px var(--rosso),0 0 0 1px rgba(236,223,207,.08)}
.han{font-family:"Noto Serif TC","Songti TC","STSong","MS Mincho","SimSun",serif;font-style:normal;font-weight:500;font-size:.86em;letter-spacing:.06em}
.ico{width:32px;height:32px;flex:none;display:block}
.social{list-style:none;margin:20px 0 0;padding:0;display:flex;gap:8px 18px;flex-wrap:wrap}
.social a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:inherit}
.social a:hover{color:var(--carta)}
.social a .ico{transition:transform .3s var(--ease)}
.social a:hover .ico{transform:translateY(-2px)}
.social.compact{gap:10px}
.social.compact .lbl{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.social.compact .ico{width:40px;height:40px}
.social.compact a{min-height:44px;min-width:44px;justify-content:center}
.wa{--seal:var(--sigillo)}
.has-scene{position:relative;isolation:isolate}
.has-scene>.wrap,.has-scene>.hero-inner{position:relative;z-index:1}
.scene{position:absolute;inset:0;z-index:0;pointer-events:none;background-repeat:no-repeat;background-size:cover;background-position:center;opacity:var(--scene-o);mix-blend-mode:multiply;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)}
.scene[data-scene="fiume"]{background-image:var(--scene-fiume);background-position:center bottom}
.scene[data-scene="montagne"]{background-image:var(--scene-montagne);background-position:center top}
.scene[data-scene="foschia"]{background-image:var(--scene-foschia)}
.ink .scene{mix-blend-mode:screen;opacity:calc(var(--scene-o) * .6)}
.oro{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;contain:layout paint}
.oro i{position:absolute;display:block;aspect-ratio:1;border-radius:50%;mix-blend-mode:multiply;
background:radial-gradient(closest-side,rgba(195,154,74,var(--oro-a,.46)),rgba(195,154,74,calc(var(--oro-a,.46)*.5)) 40%,rgba(195,154,74,calc(var(--oro-a,.46)*.14)) 68%,transparent 100%)}
.oro .o1{width:min(84%,980px);left:var(--oro-1x,-28%);top:var(--oro-1y,-36%);animation:oro-a 41s ease-in-out infinite alternate}
.oro .o2{width:min(72%,860px);right:var(--oro-2x,-26%);bottom:var(--oro-2y,-32%);animation:oro-b 53s ease-in-out infinite alternate}
.oro .o3{width:min(36%,440px);left:var(--oro-3x,46%);top:var(--oro-3y,56%);opacity:.5;animation:oro-c 67s ease-in-out infinite alternate}
@keyframes oro-a{0%{transform:translate(0,0) scale(.92);opacity:.55}38%{transform:translate(5%,7%) scale(1.12);opacity:1}72%{transform:translate(-3%,4%) scale(.9);opacity:.5}100%{transform:translate(3%,-5%) scale(1.06);opacity:.9}}
@keyframes oro-b{0%{transform:translate(0,0) scale(1.05);opacity:.9}30%{transform:translate(-6%,-4%) scale(.88);opacity:.45}64%{transform:translate(2%,-8%) scale(1.14);opacity:1}100%{transform:translate(-4%,3%) scale(.95);opacity:.6}}
@keyframes oro-c{0%{transform:translate(0,0) scale(1);opacity:.35}45%{transform:translate(8%,-10%) scale(1.25);opacity:.7}100%{transform:translate(-9%,6%) scale(.85);opacity:.3}}
@media (max-width:640px){.oro i{opacity:.5}.oro .o3{display:none}}
.anim-off,.anim-off>*,.anim-off img,.anim-off .film-track{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){:root:not([data-motion="full"]) .oro i{animation:none}}
:root[data-motion="reduce"] .oro i{animation:none}
.draghi{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.draghi picture{position:absolute;top:0;bottom:0;width:min(34vw,600px);display:block;opacity:var(--draghi-o,.16);mix-blend-mode:darken;
-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%)}
.draghi picture img{width:100%;height:100%;object-fit:contain}
.draghi .sx{left:calc(-1*var(--gutter) + 1vw)}.draghi .sx img{object-position:left top}
.draghi .dx{right:calc(-1*var(--gutter) + 1vw)}.draghi .dx img{object-position:right bottom}
@media (max-width:1024px){.draghi picture{width:38vw;opacity:calc(var(--draghi-o,.14) * .8)}}
@media (max-width:640px){.draghi .sx{display:none}.draghi .dx{width:60vw;right:-14vw}}
.plus{display:inline-flex;align-items:center;gap:16px;cursor:pointer;list-style:none;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;min-height:44px;color:inherit}
.plus::-webkit-details-marker{display:none}
.plus-i{display:inline-block;font-family:var(--display);font-variation-settings:"opsz" 48;font-style:normal;font-weight:400;font-size:34px;line-height:1;width:1em;text-align:center;color:var(--sigillo);transition:transform .4s var(--ease),color .3s}
.plus-i::before{content:"+"}
.plus:hover .plus-i{transform:scale(1.12)}
details[open]>.plus .plus-i{transform:rotate(45deg)}
details[open]>.plus .plus-n{display:none}
.ink .plus-i{color:var(--oro)}
.plus .plus-n{font-family:var(--display);font-variation-settings:"opsz" 36;font-weight:500;font-size:17px;letter-spacing:0;text-transform:none;color:var(--seppia)}
.ink .plus .plus-n{color:var(--seppia-3)}
.piu>.plus{margin-top:clamp(22px,3vw,40px)}
@media (prefers-reduced-motion:reduce){.plus-i{transition:none}}
.header{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--header-h);display:flex;align-items:center;transition:background .4s var(--ease),box-shadow .4s var(--ease)}
.header-in{width:min(var(--w),100% - 2*var(--gutter));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:clamp(22px,3.4vw,60px)}
.header .wordmark{grid-area:1/1;justify-self:start;gap:13px}
.header .nav{grid-area:1/2;justify-self:center}
.header .right{grid-area:1/3;justify-self:end}
[data-testa="scura"] .header:not(.scrolled) .nav>a,
[data-testa="scura"] .header:not(.scrolled) .nav .navbtn,
[data-testa="scura"] .header:not(.scrolled) .navtog,
[data-testa="scura"] .header:not(.scrolled) .wordmark b{color:var(--carta)}
[data-testa="scura"] .header:not(.scrolled) .wordmark span{color:var(--seppia-3)}
[data-testa="scura"] .header:not(.scrolled) .nav>a::after,
[data-testa="scura"] .header:not(.scrolled) .nav .navbtn::after{background:var(--oro)}
[data-testa="scura"] .header:not(.scrolled) .burger i{background:var(--carta)}
.header.scrolled{background:rgba(236,223,207,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(31,28,24,.1)}
.wordmark{display:flex;align-items:center;gap:12px;line-height:1;text-transform:uppercase}
.wordmark .wm{display:flex;flex-direction:column}
.header .wordmark .wm{white-space:nowrap}
.wordmark .logo{width:54px;height:54px;flex:none}
.header .wordmark .logo{width:54px;height:54px}
.wordmark .logo img{width:100%;height:100%;object-fit:contain}
.header .wordmark b{font-size:15.5px}
.header .wordmark span{margin-top:4px;font-size:9px;letter-spacing:.26em}
@media (max-width:640px){
.wordmark .logo{width:42px;height:42px}.wordmark{gap:10px}
.header .wordmark .logo{width:40px;height:40px}.header .wordmark{gap:9px}
.header .wordmark b{font-size:12px}
.header .wordmark .wm>span{display:none}
}
.wordmark b{font-family:var(--display);font-variation-settings:"opsz" 24;font-weight:700;font-size:17px;letter-spacing:.02em;text-transform:none}
.wordmark span{font-size:9.5px;letter-spacing:.28em;color:var(--seppia);margin-top:5px;font-weight:600}
.nav{display:flex;align-items:center;gap:clamp(13px,1.4vw,20px)}
.nav>a,.nav .navbtn{display:inline-flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--inchiostro);position:relative;min-height:44px}
.nav>a::after,.nav .navbtn::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1.5px;background:var(--sigillo);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav>a:hover::after,.nav .has-sub:hover .navbtn::after,.nav .has-sub.open .navbtn::after,.nav>a[aria-current="page"]::after,.nav .has-sub[data-current="true"] .navbtn::after{transform:scaleX(1)}
.nav .navbtn svg{width:9px;height:9px;transition:transform .3s}
.has-sub{position:relative;display:inline-flex;align-items:center;gap:3px}
.navtog{display:inline-flex;align-items:center;justify-content:center;min-height:44px;width:20px;color:var(--inchiostro);cursor:pointer}
.navtog svg{width:9px;height:9px;transition:transform .3s}
.has-sub.open .navtog svg{transform:rotate(180deg)}
.has-sub::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}
.sub a[aria-current="page"]{color:var(--sigillo)}
.mobile-menu a[aria-current="page"]{color:var(--sigillo)}
.has-sub.open .navbtn svg{transform:rotate(180deg)}
.sub{position:absolute;top:calc(100% + 6px);left:-22px;min-width:260px;background:var(--carta-2);border:1px solid rgba(31,28,24,.12);box-shadow:0 18px 40px -20px rgba(31,28,24,.35);padding:10px 0;display:none;flex-direction:column}
.sub.wide{min-width:340px}
.has-sub.open .sub{display:flex}
.sub a{display:block;padding:11px 22px;font-size:15px;line-height:1.3;color:var(--inchiostro);max-width:360px}
.sub a small{display:block;font-size:12.5px;color:var(--seppia);margin-top:2px;letter-spacing:.02em}
.sub a:hover{background:var(--carta);color:var(--sigillo)}
.sub .lbl{padding:6px 22px 8px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--seppia);font-weight:600}
.sub hr{border:0;border-top:1px solid rgba(31,28,24,.1);margin:6px 22px}
.header .right{display:flex;align-items:center;gap:clamp(10px,1.2vw,18px)}
.header .social{margin:0;gap:2px;transition:opacity .28s var(--ease),visibility .28s}
.header.scrolled .social{opacity:0;visibility:hidden;pointer-events:none}
.header .social{--seal:transparent}
.header .social a{opacity:.88;transition:opacity .3s var(--ease)}
.header .social a:hover{opacity:1}
.header .social .wa{--seal:transparent;--seal-ink:#1FA855}
.header .social .s-facebook{--seal-ink:#2160B8}
.header .social .s-instagram{--seal-ink:#C13584}
.header .social .s-youtube{--seal-ink:#C4302B}
.header .social .s-linkedin{--seal-ink:#17618F}
.header .social a:hover .ico{transform:translateY(-2px)}
.header .social.compact .ico{width:28px;height:28px}
.header .social.compact a{min-height:38px;min-width:34px}
@media (max-width:1180px){.header .social{display:none}}
.header .btn{min-height:44px;padding:0 20px;font-size:11.5px}
.burger{display:none;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;gap:6px}
.burger i{display:block;width:26px;height:2px;background:var(--inchiostro);transition:transform .3s var(--ease),opacity .3s}
.burger[aria-expanded="true"] i:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:45;display:none;flex-direction:column;
padding:calc(var(--header-h) + 18px) var(--gutter) calc(20px + env(safe-area-inset-bottom));
background:linear-gradient(168deg,var(--carta) 0%,var(--carta-2) 46%,#E6D8C2 100%)}
.mobile-menu.open{display:flex}
.mobile-menu .mm-voci{flex:1 1 auto;overflow:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}
.mobile-menu .mm-voci>a,.mobile-menu .mm-g>summary{font-family:var(--display);font-variation-settings:"opsz" 72;font-weight:600;
font-size:clamp(26px,7vw,36px);letter-spacing:-.02em;padding:11px 0;border-bottom:1px solid rgba(31,28,24,.12);
display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}
.mobile-menu .mm-g>summary::-webkit-details-marker{display:none}
.mobile-menu .mm-g>summary svg{width:14px;height:14px;flex:none;transition:transform .3s var(--ease)}
.mobile-menu .mm-g>summary a{color:inherit;flex:1 1 auto}
.mobile-menu .mm-g[open]>summary svg{transform:rotate(180deg)}
.mobile-menu .mm-g[open]>summary{border-bottom-color:transparent}
.mobile-menu .mm-sub{display:grid;gap:2px;padding:2px 0 12px;border-bottom:1px solid rgba(31,28,24,.12)}
.mobile-menu .mm-sub a{font-size:16.5px;line-height:1.3;padding:9px 0 9px 16px;color:var(--seppia)}
.mobile-menu .mm-sub a small{display:block;font-size:12.5px;margin-top:2px;color:var(--seppia)}
.mobile-menu .mm-azioni{flex:none;display:grid;gap:10px;padding-top:18px;margin-top:12px;border-top:1px solid rgba(31,28,24,.16)}
.mobile-menu .mm-azioni .btn{width:100%;min-height:52px;height:auto;padding:13px 18px;justify-content:center;text-align:center;
white-space:normal;line-height:1.3;letter-spacing:.12em;font-size:12px}
.ctabar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;grid-template-columns:1fr 1fr;background:var(--inchiostro);color:var(--carta);transform:translateY(100%);transition:transform .4s var(--ease)}
.ctabar.show{transform:translateY(0)}
.ctabar a{display:flex;align-items:center;justify-content:center;min-height:var(--ctabar-h);font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.ctabar a.primary{background:var(--verde-wa);color:#fff;gap:9px}
.ctabar a .ico{width:22px;height:22px;--seal:transparent;--seal-ink:#fff}
.rv{opacity:1;transform:none}
@media (prefers-reduced-motion:no-preference){
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}
}
.photo{position:relative;overflow:hidden;background:linear-gradient(160deg,#D9CDBA,#C9BBA6 60%,#BBAD98);border:6px solid #F7F2EA;box-shadow:0 24px 40px -28px rgba(31,28,24,.55)}
.photo::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .2 0 0 0 0 .17 0 0 0 0 .12 0 0 0 .7 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.photo>img,.photo>picture,.photo>picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0}
figure.photo{margin:0}
.photo[data-photo="real"] .cap{color:rgba(236,223,207,.85);text-shadow:0 1px 2px rgba(0,0,0,.35)}
.photo[data-photo="real"]::after{opacity:.12}
.photo .cap{position:absolute;left:14px;bottom:12px;z-index:2;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(31,28,24,.6);font-weight:600;display:flex;gap:10px;align-items:center}
.photo .cap::before{content:"";width:16px;height:1px;background:currentColor}
.ink .photo{border-color:#2F2B26;background:linear-gradient(160deg,#4A4038,#332C26 60%,#272220)}
.ink .photo .cap{color:rgba(236,223,207,.6)}
.tavola{display:block;pointer-events:none;user-select:none}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);z-index:70;background:var(--inchiostro);color:var(--carta);padding:12px 18px;font-size:13px;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;max-width:calc(100% - 40px)}
.toast.show{opacity:1;transform:translate(-50%,0)}
.hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden;padding-top:var(--header-h);isolation:isolate}
.hero-inner{--hp-t:clamp(40px,6vh,80px);--hp-b:clamp(48px,7vh,90px);--hero-in:clamp(0px,4.6vw,82px);position:relative;z-index:2;width:min(1320px,100% - 2*var(--gutter));margin:0 auto;padding:var(--hp-t) 0 var(--hp-b);display:grid;grid-template-columns:minmax(0,1fr);align-items:center}
.hero-text{grid-area:1/1;position:relative;z-index:1;justify-self:start;width:min(100%,760px);margin-left:var(--hero-in)}
.hero-art{grid-area:1/1;position:relative;z-index:0;justify-self:end;width:min(66%,690px);height:min(78vh,740px);margin-right:clamp(0px,1.5vw,30px);pointer-events:none}
.hero-art:not(.anim-off){will-change:transform}
.hero-art picture{width:100%;height:100%}
.hero-art .ha-sifu{translate:2.6% -1.2%}
.hero-art img{width:100%;height:100%;object-fit:contain;object-position:18% 58%}
@media (min-width:1025px){.hero-art{translate:0 -8%}}
.hero-art{animation:sifuBreath calc(var(--motion)*9s) ease-in-out infinite alternate}
@keyframes sifuBreath{from{transform:scale(1)}to{transform:scale(1.018)}}
.ha-logo{position:absolute;inset:0;opacity:0;pointer-events:none}
.ha-logo img{position:absolute;left:50%;top:50%;translate:-50% -50%;width:min(72%,500px);height:auto;object-fit:contain;object-position:center}
@media (min-width:1025px){
.motion .hero-art .ha-sifu{animation:heroTavola 20s var(--ease) 2s infinite}
.motion .hero-art .ha-logo{animation:heroSigillo 20s var(--ease) 2s infinite}
}
@keyframes heroTavola{0%,30%{opacity:1}39%,70%{opacity:0}79%,100%{opacity:1}}
@keyframes heroSigillo{0%,30%{opacity:0}39%,70%{opacity:1}79%,100%{opacity:0}}
.hero-art .ha-sifu img{clip-path:inset(0 0 100% 0);transform:translateY(20px);animation:artIn calc(var(--motion)*1.3s) var(--ease) forwards}
@keyframes artIn{to{clip-path:inset(0 0 0 0);transform:none}}
.gw{position:absolute;left:1.15em;bottom:-.12em;z-index:0;font-family:var(--display);font-variation-settings:"opsz" 144,"WONK" 1;font-style:italic;font-weight:500;font-size:clamp(120px,22vw,340px);line-height:1;letter-spacing:-.04em;color:var(--inchiostro);opacity:.045;white-space:nowrap;pointer-events:none;user-select:none}
.hero h1{font-size:clamp(56px,9.4vw,152px);max-width:11ch;position:relative}
.hero h1 .ln{display:block}
.hero h1 .ln:nth-child(1){padding-left:1.01em}
.hero h1 .ln:nth-child(3){padding-left:1.55em}
.hero h1 .ln:nth-child(3){color:var(--rosso)}
.hero h1 .ln{opacity:0;transform:translateY(.35em);animation:lnIn calc(var(--motion)*.9s) var(--ease) forwards}
.hero h1 .ln:nth-child(1){animation-delay:calc(var(--motion)*.05s)}.hero h1 .ln:nth-child(2){animation-delay:calc(var(--motion)*.17s)}.hero h1 .ln:nth-child(3){animation-delay:calc(var(--motion)*.29s)}
@keyframes lnIn{to{opacity:1;transform:none}}
.hero h1.settled .ln{animation:none;opacity:1;transform:none}
.hero .hero-sub{margin-top:clamp(28px,4vh,44px);max-width:34ch;font-size:clamp(19px,1.8vw,26px);line-height:1.35;font-weight:500;color:var(--inchiostro)}
.hero .hero-sub b{font-weight:600}
.hero .hero-sub small{display:block;margin-top:10px;font-size:15.5px;font-weight:400;color:var(--seppia);letter-spacing:0}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:clamp(28px,4vh,40px)}
@media (min-width:1025px){
.hero-actions,.hero-meta{margin-left:calc(-1 * var(--hero-in) + (min(1320px,100vw - 2*var(--gutter)) - min(var(--w),100vw - 2*var(--gutter)))/2)}
}
.hero h1+.hero-actions{margin-top:clamp(40px,6vh,64px)}
.hero .hero-meta{max-width:none}
.hero-meta{margin-top:clamp(40px,7vh,72px);padding-top:18px;border-top:1px solid rgba(31,28,24,.25);display:flex;gap:34px;flex-wrap:wrap;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--seppia);max-width:640px}
.hero-meta .seal{display:inline-flex;align-items:center;gap:10px}
.hero-meta .seal::before{content:"";width:10px;height:10px;background:var(--sigillo)}
.hero-cap{position:absolute;right:var(--gutter);bottom:22px;z-index:2;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--seppia);font-weight:600}
.inizio{overflow:hidden}
.inizio .grid{display:grid;grid-template-columns:5fr 7fr;align-items:center;gap:clamp(32px,5vw,80px);position:relative;z-index:1}
.inizio .big{font-family:var(--display);font-variation-settings:"opsz" 96,"WONK" 1;font-weight:600;font-size:clamp(36px,4.8vw,64px);letter-spacing:-.025em;line-height:1.02}
.inizio .big em{font-style:italic;color:var(--sigillo)}
.inizio .txt{margin-top:24px;max-width:42ch;color:var(--seppia)}
.inizio .left{position:relative}
.inizio .big,.inizio .txt{position:relative;z-index:1}
.strips{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px);align-items:start;padding-top:10px;position:relative;z-index:2}
.strip{display:block;position:relative;transition:transform .5s var(--ease)}
.strip:nth-child(2){margin-top:64px}
.strip:nth-child(3){margin-top:128px}
.strip:hover{transform:translateY(-8px)}
.strip .photo{aspect-ratio:3/5}
.strip .lab{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:baseline;margin-top:14px}
.strip .lab .n{font-family:var(--display);font-style:italic;font-weight:500;color:var(--sigillo);font-size:20px}
.strip .lab b{font-family:var(--display);font-variation-settings:"opsz" 48;font-weight:600;font-size:clamp(20px,1.9vw,26px);letter-spacing:-.01em;display:block;line-height:1.05}
.strip .lab span{display:block;font-size:14px;color:var(--seppia);margin-top:6px;line-height:1.4}
.strip .arr{font-size:22px;color:var(--sigillo);transition:transform .35s var(--ease)}
.strip:hover .arr{transform:translateX(6px)}
.anche{position:relative;z-index:2;margin-top:clamp(28px,4vw,56px);padding-top:22px;border-top:1px solid rgba(31,28,24,.22);display:grid;grid-template-columns:auto 1fr auto;gap:clamp(20px,3vw,48px);align-items:baseline}
.anche .lbl{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--sigillo-2)}
.anche p{font-family:var(--display);font-variation-settings:"opsz" 36;font-size:clamp(18px,1.6vw,22px);font-weight:500;line-height:1.35;color:var(--inchiostro)}
.anche p i{font-style:normal;color:var(--sigillo);padding:0 .35em}
.anche p a:hover{color:var(--sigillo)}
.home main{position:relative}
.draghi-home{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.draghi-home picture{position:absolute;display:block;opacity:var(--o,.32)}
.draghi-home img{width:100%;height:auto;display:block;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 7%,#000 92%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 7%,#000 92%,transparent 100%)}
.draghi-home .dsx{left:clamp(0px,.7vw,16px);width:clamp(230px,23vw,340px);top:var(--dsx-top,52svh);--o:.38}
.draghi-home .ddx{right:clamp(0px,.7vw,16px);width:clamp(220px,21vw,320px);top:var(--ddx-top,150svh);--o:.34}
.luca{position:relative;z-index:1;clip-path:polygon(0 6vw,100% 0,100% calc(100% - 6vw),0 100%);margin-top:-6vw;margin-bottom:-6vw;padding-top:calc(6vw + clamp(72px,9vw,128px));padding-bottom:calc(6vw + clamp(72px,9vw,128px));
background:var(--fondo-scuro)}
.luca .grid{display:grid;grid-template-columns:6fr 6fr;gap:clamp(32px,5vw,96px);align-items:center}
.luca .photo{aspect-ratio:4/5}
.luca .name{font-size:clamp(44px,5.6vw,80px)}
.luca .prose{margin-top:24px;color:var(--seppia-3);font-size:17.5px}
.luca .prose p:first-child{font-size:clamp(18px,1.5vw,21px);color:var(--carta)}
.gr{margin-inline:auto;margin-top:clamp(28px,4vw,44px);padding-top:clamp(22px,3vw,32px);border-top:1px solid rgba(236,223,207,.22);display:grid;justify-items:center;text-align:center;gap:14px;max-width:46ch}
.gr-top{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--seppia-3)}
.gr-stars{color:var(--oro);letter-spacing:.1em;font-size:14px}
.gr-top b{font-family:var(--display);font-variation-settings:"opsz" 24;font-size:17px;letter-spacing:0;color:var(--carta)}
.gr-src{color:var(--seppia-3);opacity:.85}
.gr-track{display:grid;width:100%}
.gr-q{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity .6s var(--ease);align-self:center}
.gr-q.is-on{opacity:1;visibility:visible}
.gr-q p{margin:0;font-family:var(--display);font-variation-settings:"opsz" 48,"WONK" 1;font-style:italic;font-size:clamp(20px,2.2vw,27px);line-height:1.22;color:var(--carta);text-wrap:pretty}
.gr-q cite{display:block;margin-top:12px;font-family:var(--sans);font-style:normal;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--seppia-3)}
.gr-all{font-size:12px}
@media (prefers-reduced-motion:reduce){.gr-q{transition:none}}
.gal{overflow:hidden;z-index:0;padding-top:calc(6vw + clamp(64px,9vw,128px));padding-bottom:calc(6vw + clamp(64px,9vw,128px))}
.gal .head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:36px}
.film{--film-gap:clamp(16px,2.4vw,36px);overflow:hidden;padding:20px 0;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 5%,#000 95%,transparent 100%)}
.film-track{display:flex;width:max-content;animation:filmScroll var(--film-dur,150s) linear infinite}
.film:hover .film-track,.film:focus-within .film-track,.film.anim-off .film-track{animation-play-state:paused}
.film-set{display:flex;gap:var(--film-gap);padding-right:var(--film-gap);margin:0;align-items:center}
@keyframes filmScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.film .photo{flex:0 0 clamp(220px,26vw,380px);aspect-ratio:4/5}
.film .photo:nth-child(odd){transform:rotate(-1.4deg)}
.film .photo:nth-child(even){transform:rotate(1.1deg) translateY(28px);flex-basis:clamp(180px,20vw,300px);aspect-ratio:3/4}
:root[data-motion="reduce"] .film{overflow-x:auto;scrollbar-width:none}
:root[data-motion="reduce"] .film-track{animation:none}
:root[data-motion="reduce"] .film-set[aria-hidden="true"]{display:none}
@media (prefers-reduced-motion:reduce){
:root:not([data-motion="full"]) .film{overflow-x:auto;scrollbar-width:none}
.film::-webkit-scrollbar{display:none}
:root:not([data-motion="full"]) .film-track{animation:none}
:root:not([data-motion="full"]) .film-set[aria-hidden="true"]{display:none}
}
.cta{overflow:hidden;z-index:1;clip-path:polygon(0 0,100% 6vw,100% 100%,0 100%);margin-top:-6vw;padding-top:calc(6vw + clamp(64px,9vw,128px));background:var(--fondo-scuro)}
.cta .gw{opacity:.05;color:var(--carta);right:-.05em;left:auto;bottom:-.15em}
.cta .row{position:relative;z-index:1;display:grid;grid-template-columns:7fr 5fr;gap:40px;align-items:end}
.cta .h2{font-size:clamp(44px,7vw,104px)}
.cta .contact{font-size:16px;line-height:1.8;color:var(--seppia-3)}
.cta .contact a{color:var(--carta);border-bottom:1px solid rgba(236,223,207,.35)}
.cta .contact a:hover{border-color:var(--carta)}
.cta .contact .social{margin-top:22px}
.cta .contact .social a{color:var(--seppia-3)}
.footer{border-top:1px solid rgba(31,28,24,.14);color:var(--seppia);font-size:12.5px}
.footer-in{width:min(var(--w),100% - 2*var(--gutter));margin-inline:auto;min-height:76px;
display:flex;align-items:center;flex-wrap:wrap;gap:10px clamp(18px,2.4vw,38px);padding:14px 0}
.footer p{margin:0}
.footer a{color:var(--seppia)}
.footer a:hover{color:var(--sigillo)}
.f-legale{font-weight:600;color:var(--inchiostro);white-space:nowrap}
.f-recapiti{display:flex;flex-wrap:wrap;align-items:center;gap:6px clamp(12px,1.6vw,24px);margin-left:auto}
.f-recapiti>*+*::before{content:"·";margin-right:clamp(12px,1.6vw,24px);color:rgba(31,28,24,.3)}
.f-privacy{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.f-privacy[aria-current="page"]{color:var(--sigillo)}
.footer .social{--seal:transparent;margin:0;gap:2px}
.footer .social .wa{--seal:transparent;--seal-ink:#1FA855}
.footer .social .s-facebook{--seal-ink:#2160B8}
.footer .social .s-instagram{--seal-ink:#C13584}
.footer .social .s-youtube{--seal-ink:#C4302B}
.footer .social .s-linkedin{--seal-ink:#17618F}
.footer .social a{opacity:.85;transition:opacity .3s var(--ease)}
.footer .social a:hover{opacity:1;--seal:transparent}
.footer .social.compact .ico{width:26px;height:26px}
.footer .social.compact a{min-height:38px;min-width:32px}
@media (max-width:1360px){.nav{gap:clamp(12px,1.2vw,18px)}.nav>a,.nav .navbtn{font-size:10.5px;letter-spacing:.1em}
.header .wordmark b{font-size:14px}}
@media (max-width:1180px){.header .btn{padding:0 16px;font-size:11px}.nav{display:none}.burger{display:flex}
}
@media (max-width:1280px){.hero-inner{--hero-in:clamp(0px,9.5vw,140px)}.hero-art{width:min(66%,640px)}.wordmark .logo{width:46px;height:46px}}
@media (max-width:1024px){
html{scroll-padding-bottom:var(--ctabar-h)}
.header .right .btn{display:none}
.ctabar{display:grid}
.hero{min-height:auto;display:block;padding-top:96px}
.hero-inner{padding:24px 0 0;display:block;position:relative}
.hero-text{padding-left:0}
.hero h1{font-size:clamp(52px,12vw,110px);max-width:none}
.hero-art{position:absolute;top:-2%;right:-12%;bottom:auto;width:min(60%,460px);height:auto;aspect-ratio:2/3;margin:0;justify-self:auto;opacity:.6;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 40%);mask-image:linear-gradient(90deg,transparent 0,#000 40%)}
.hero-art picture,.hero-art img{height:100%}
.hero-art img{object-fit:contain;object-position:right top}
.hero .hero-sub{max-width:34ch;margin-top:22px}
.gw{font-size:26vw}
.hero-cap{position:static;display:block;text-align:right;padding:8px var(--gutter) 0}
.inizio .grid,.luca .grid,.cta .row{grid-template-columns:1fr}
.draghi-home .dsx{width:27vw;left:0}.draghi-home .ddx{width:25vw;right:0}
.strips{grid-template-columns:repeat(3,1fr);padding-top:0}
.strip:nth-child(2){margin-top:40px}.strip:nth-child(3){margin-top:80px}
.anche{grid-template-columns:1fr;gap:12px}
.luca{clip-path:polygon(0 5vw,100% 0,100% calc(100% - 5vw),0 100%);margin-top:-5vw;margin-bottom:-5vw;padding-top:calc(5vw + 72px);padding-bottom:calc(5vw + 72px)}
.gal{padding-top:calc(5vw + 64px);padding-bottom:calc(5vw + 64px)}
.cta{clip-path:polygon(0 0,100% 5vw,100% 100%,0 100%);margin-top:-5vw;padding-top:calc(5vw + 64px)}
.luca .photo{aspect-ratio:4/3}
.footer-in{padding-bottom:calc(14px + var(--ctabar-h))}
}
@media (max-width:640px){
body{font-size:16px}
.gw{display:none}
.hero{padding-top:88px}
.hero h1{font-size:clamp(46px,14.5vw,72px)}
.hero h1 .ln:nth-child(1){padding-left:.62em}
.hero h1 .ln:nth-child(3){padding-left:.55em}
.hero-art{width:min(72%,340px);right:-16%;top:0;opacity:.5}
.hero .hero-sub{font-size:19px}
.hero-meta{gap:14px 24px}
.strips{grid-template-columns:1fr 1fr;gap:14px}
.strip:nth-child(2){margin-top:36px}.strip:nth-child(3){margin-top:0;grid-column:1/-1}
.strip:nth-child(3) .photo{aspect-ratio:16/10}
.film{--film-gap:14px;--film-dur:190s}
.film .photo{flex-basis:62vw}
.film .photo:nth-child(even){flex-basis:48vw;transform:rotate(1.1deg) translateY(18px)}
.draghi-home .dsx{width:34vw;left:-2vw;--o:.3}.draghi-home .ddx{width:35vw;right:-3vw;--o:.28}
.film .photo{flex-basis:74vw}
.film .photo:nth-child(even){flex-basis:58vw}
.pan::after{background:linear-gradient(var(--lx),rgba(31,28,24,.03),transparent 60%);-webkit-mask-size:auto 100%;mask-size:auto 100%;-webkit-mask-position:var(--bx) 0;mask-position:var(--bx) 0}
}
.phead{position:relative;overflow:hidden;padding:calc(var(--header-h) + clamp(24px,3.4vw,58px)) 0 clamp(40px,6vw,84px);
}
.phead .wrap{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);column-gap:clamp(24px,4vw,72px);align-items:end}
.phead h1{font-size:clamp(46px,7.6vw,118px);max-width:11ch;margin-top:14px}
.phead .lead{margin-top:clamp(20px,3vw,32px);max-width:42ch}
.phead .meta{display:grid;gap:12px;padding-top:18px;border-top:1px solid rgba(31,28,24,.25);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--seppia)}
.phead .meta b{font-weight:700;color:var(--inchiostro)}
.phead .meta .seal{display:inline-flex;align-items:center;gap:10px}
.phead .meta .seal::before{content:"";width:10px;height:10px;background:var(--sigillo);flex:none}
.phead.has-tav{padding-bottom:clamp(110px,13vw,190px)}
.phead.has-tav .wrap{width:min(var(--w),100% - 2*var(--gutter));grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.phead.has-tav .meta{grid-column:1;max-width:44ch;margin-top:clamp(24px,3vw,40px)}
.phead-tav{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;
opacity:var(--ptav-o,.46);mix-blend-mode:darken;
-webkit-mask-image:linear-gradient(180deg,#000 0,#000 58%,rgba(0,0,0,.55) 80%,rgba(0,0,0,.16) 93%,transparent 100%);
mask-image:linear-gradient(180deg,#000 0,#000 58%,rgba(0,0,0,.55) 80%,rgba(0,0,0,.16) 93%,transparent 100%)}
.phead-tav .tav{position:absolute;left:var(--ptav-l,36%);right:1%;bottom:var(--ptav-b,-6%);display:block;
-webkit-mask-image:radial-gradient(ellipse 62% 64% at 50% 50%,#000 40%,transparent 100%);
mask-image:radial-gradient(ellipse 62% 64% at 50% 50%,#000 40%,transparent 100%)}
.phead-tav img{width:100%;height:auto;display:block}
.phead-tav.sfuma-su{
-webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.5) 8%,#000 22%,#000 58%,rgba(0,0,0,.55) 80%,rgba(0,0,0,.16) 93%,transparent 100%);
mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.5) 8%,#000 22%,#000 58%,rgba(0,0,0,.55) 80%,rgba(0,0,0,.16) 93%,transparent 100%)}
.phead.tav-lunga{overflow:visible}
.phead.tav-lunga .phead-tav{bottom:calc(-1 * var(--tav-giu,520px))}
@media (max-width:1024px){.phead.tav-lunga .phead-tav{bottom:calc(-1 * var(--tav-giu-p,300px))}}
@media (max-width:1024px){.phead.has-tav{padding-bottom:clamp(150px,42vw,260px)}.phead-tav{opacity:.32}.phead-tav .tav{left:14%;right:-6%;bottom:-2%}}
@media (prefers-reduced-motion:no-preference){.phead-tav{transition:opacity .9s var(--ease)}}
.phead.mid .wrap{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
.phead.mid h1{max-width:14ch}
.phead.mid .lead{max-width:52ch}
.head-azione{margin-top:clamp(22px,2.8vw,36px)}
.phead.ink{background:radial-gradient(55% 70% at 18% 35%,rgba(91,74,56,.42),transparent 70%),var(--inchiostro)}
.phead.ink .meta{border-color:rgba(236,223,207,.25);color:var(--seppia-3)}
.phead.ink .meta b{color:var(--carta)}
.ed .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2.5vw,40px);row-gap:clamp(28px,4vw,64px)}
.c-1-4{grid-column:1/5}.c-2-7{grid-column:2/8}.c-10-13{grid-column:10/13}.c-1-5{grid-column:1/6}.c-1-6{grid-column:1/7}.c-1-7{grid-column:1/8}.c-1-8{grid-column:1/9}.c-2-8{grid-column:2/9}.c-2-9{grid-column:2/10}
.c-3-11{grid-column:3/12}.c-4-12{grid-column:4/13}.c-5-13{grid-column:5/13}.c-6-13{grid-column:6/13}.c-7-13{grid-column:7/13}.c-8-13{grid-column:8/13}.c-9-13{grid-column:9/13}.c-1-13{grid-column:1/13}
.up{margin-top:clamp(-56px,-4vw,-24px)}
.down{margin-top:clamp(32px,5vw,96px)}
.ed h2{font-family:var(--display);font-variation-settings:"opsz" 96,"WONK" 1;font-weight:600;font-size:clamp(32px,4.4vw,58px);letter-spacing:-.025em;line-height:1}
.ed h2 em{font-style:italic;font-weight:500;color:var(--sigillo)}
.ed h3{font-family:var(--display);font-variation-settings:"opsz" 48;font-weight:600;font-size:clamp(22px,2.2vw,30px);letter-spacing:-.01em;line-height:1.1}
.ed .prose{margin-top:18px;color:var(--seppia)}
.ed .prose.big{font-size:clamp(18px,1.5vw,21px);color:var(--inchiostro);max-width:46ch}
.ed .kicker+h2{margin-top:16px}
.ink.ed .prose{color:var(--seppia-3)}
.ink.ed .prose.big{color:var(--carta)}
.ink.ed h2 em{color:var(--oro)}
.nota{border-left:2px solid var(--sigillo);padding:2px 0 2px 18px;font-size:14px;line-height:1.5;color:var(--seppia);max-width:36ch}
.nota b{color:var(--inchiostro);font-weight:600}
.nota.larga{max-width:none;border-left:0;border-top:1px solid rgba(31,28,24,.18);padding:clamp(16px,1.8vw,24px) 0 0;margin-top:clamp(20px,3vw,40px)}
.ink .nota.larga{border-top-color:rgba(236,223,207,.20)}
.orari + .nota.larga{border-top:0;padding-top:0}
.ink .nota{color:var(--seppia-3)}.ink .nota b{color:var(--carta)}
.cit{font-family:var(--display);font-variation-settings:"opsz" 96,"WONK" 1;font-style:italic;font-weight:500;font-size:clamp(24px,2.8vw,40px);line-height:1.15;letter-spacing:-.015em;max-width:24ch}
.cit+.chi{margin-top:16px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--seppia)}
.cit.centrata{max-width:30ch;margin-inline:auto;text-align:center}
.cit.centrata+.chi{text-align:center}
.ed .orari{margin-top:clamp(10px,1.6vw,26px)}
.orari{list-style:none;margin:20px 0 0;padding:0;border-top:2px solid var(--inchiostro)}
.orari li{display:grid;grid-template-columns:8.5ch 1fr auto;gap:18px;align-items:baseline;padding:13px 0;border-bottom:1px solid rgba(31,28,24,.15)}
.orari .g{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--sigillo-2)}
.orari .o{font-family:var(--display);font-variation-settings:"opsz" 36;font-size:clamp(19px,1.7vw,24px);font-weight:600;letter-spacing:-.01em}
.orari .c{font-size:14px;color:var(--seppia);text-align:right}
.orari.distesa li{grid-template-columns:1fr auto 1fr;gap:clamp(20px,4vw,64px);padding:clamp(14px,1.6vw,20px) 0}
.orari.distesa .c{order:2;text-align:center}
.orari.distesa .o{order:3;text-align:right}
.ink .orari{border-top-color:var(--carta)}.ink .orari li{border-bottom-color:rgba(236,223,207,.15)}.ink .orari .g{color:var(--oro)}.ink .orari .c{color:var(--seppia-3)}
.passi{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:22px}
.passi li{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:baseline}
.passi .n{font-family:var(--display);font-style:italic;font-weight:500;color:var(--sigillo);font-size:20px}
.passi b{font-family:var(--display);font-variation-settings:"opsz" 48;font-weight:600;font-size:clamp(20px,1.8vw,24px);letter-spacing:-.01em;display:block;line-height:1.1}
.passi span{display:block;font-size:15px;color:var(--seppia);margin-top:6px;line-height:1.45}
.passi .n{color:var(--sigillo-2)}
.ink .passi .n{color:var(--oro)}.ink .passi span{color:var(--seppia-3)}.ink .passi b{color:var(--carta)}
.ink .cit+.chi{color:var(--seppia-3)}
.passi:not(.plain) li:nth-child(2){margin-left:clamp(0px,3vw,48px)}
.passi:not(.plain) li:nth-child(3){margin-left:clamp(0px,6vw,96px)}
.canali{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:18px}
.contatti-tav{align-self:center}
.canali li{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.canali .ico{width:44px;height:44px}
.canali li:has(a[href*="wa.me"]) .ico{--seal:var(--verde-wa);--seal-ink:#fff}
.canali a,.canali .v{font-family:var(--display);font-variation-settings:"opsz" 48;font-weight:600;font-size:clamp(20px,2vw,28px);letter-spacing:-.01em;line-height:1.1}
.canali a:hover{color:var(--sigillo)}
.canali small{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--seppia);margin-bottom:4px}
.tav{display:block;pointer-events:none;user-select:none}
.tav img{width:100%;height:auto}
.tav img,.phead-tav img,.section .photo img{animation:tavRespiro calc(var(--motion)*18s) ease-in-out infinite alternate;transform-origin:center}
.home .tav img,.home .photo img,.draghi img,.draghi-home img,.hero-art img,.film .photo img{animation:none}
@keyframes tavRespiro{from{transform:scale(1)}to{transform:scale(1.028)}}
.section:not(.ink) .tav img,.draghi img{mix-blend-mode:darken}
.tav.bleed-l{margin-left:calc(-1*var(--gutter) - 2vw);width:calc(100% + var(--gutter) + 2vw)}
.tav.bleed-r{margin-right:calc(-1*var(--gutter) - 2vw);width:calc(100% + var(--gutter) + 2vw)}
.tav.pending{aspect-ratio:4/3;background:radial-gradient(60% 60% at 50% 45%,rgba(120,140,128,.14),rgba(120,140,128,.04) 60%,transparent 78%);position:relative}
.tav.pending .cap{position:absolute;left:clamp(12px,2vw,28px);bottom:10px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(65,88,74,.7);font-weight:600}
.ed .photo{aspect-ratio:4/5}
.ed .c-8-13>.photo,.ed .c-9-13>.photo,.ed .c-7-13>.photo{max-width:440px}
.cta .contact a,.chiusura .contact a{display:inline-block;padding:2px 0;line-height:1.45}
.stampe{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px);align-items:start}
.stampe .photo{aspect-ratio:3/4}
.stampe>:nth-child(2){margin-top:48px}
.stampe>:nth-child(3){margin-top:96px}
.stampe.due{grid-template-columns:5fr 7fr}
.stampe.due .photo:first-child{aspect-ratio:3/4}.stampe.due .photo:last-child{aspect-ratio:16/10;margin-top:64px}
.photo.wide{aspect-ratio:16/10}
.piu{margin-top:0}
.piu.testo{margin-top:18px}
.piu.testo>.plus{margin-top:0;font-size:11.5px}
.piu.testo .prose{margin-top:16px}
.piu>.altre{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px);align-items:start;margin-top:clamp(18px,2.5vw,32px)}
.piu>.altre .photo{aspect-ratio:3/4}
.piu>.altre>:nth-child(3n+2){margin-top:32px}
.piu>.altre>:nth-child(3n){margin-top:64px}
@media (prefers-reduced-motion:no-preference){.piu[open]>.altre{animation:altreIn .6s var(--ease)}@keyframes altreIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}
.video{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:14px}
.video a{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:14px 0;border-top:1px solid rgba(31,28,24,.15);font-family:var(--display);font-variation-settings:"opsz" 36;font-size:clamp(17px,1.5vw,21px);font-weight:500;line-height:1.25}
.video a:hover{color:var(--sigillo)}
.video .arr{color:var(--sigillo)}
.video .vt{display:grid;gap:4px}
.video .vthumb{width:clamp(88px,9vw,132px);aspect-ratio:16/9;flex:none;background:linear-gradient(160deg,#D9CDBA,#C9BBA6 60%,#BBAD98);border:3px solid #F7F2EA;box-shadow:0 12px 22px -16px rgba(31,28,24,.55);overflow:hidden}
.video .vthumb img{width:100%;height:100%;object-fit:cover;display:block}
.video .plus-i{justify-self:end}
.respiro{padding-block:clamp(40px,6vw,84px);overflow:hidden}
.respiro .wrap{display:grid;justify-items:center}
.respiro-tav{width:min(100%,1120px);margin-inline:calc(-1*var(--gutter));max-width:calc(100% + 2*var(--gutter))}
.respiro-tav .tav img{width:100%;height:auto}
.tav img,.phead-tav img{animation:tavRespiro calc(var(--motion)*18s) ease-in-out infinite alternate;transform-origin:center}
.home .tav img,.draghi img,.draghi-home img,.hero-art img{animation:none}
@keyframes tavRespiro{from{transform:scale(1)}to{transform:scale(1.028)}}
.respiro-cap{margin-top:clamp(18px,2.4vw,32px);max-width:52ch;text-align:center;font-family:var(--display);font-variation-settings:"opsz" 36;font-size:clamp(17px,1.5vw,21px);line-height:1.4;color:var(--seppia)}
.respiro-cap em{font-style:italic;color:var(--inchiostro)}
@media (max-width:640px){.respiro-cap{text-align:left;font-size:16px}}
.chiusura{padding-block:clamp(56px,6.5vw,104px)}
.chiusura{background:linear-gradient(156deg,#3B3026 0%,#2C241D 44%,#211D18 100%)}
.section.ink:not(.luca):not(.cta):not(.chiusura){
clip-path:polygon(0 4.5vw,100% 0,100% calc(100% - 4.5vw),0 100%);
padding-block:calc(4.5vw + clamp(48px,6vw,92px))}
.chiusura .row{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center;gap:clamp(22px,2.6vw,34px)}
.chiusura .hero-actions{justify-content:center}
.chiusura .contact{text-align:center}
.chiusura .h2{font-size:clamp(36px,5.2vw,72px)}
.chiusura .hero-actions{margin-top:28px}
.section.ink + .section.ink.chiusura{background:none;color:var(--inchiostro)}
.section.ink + .section.ink.chiusura .lead{color:var(--seppia)}
.section.ink + .section.ink.chiusura :focus-visible{outline-color:var(--inchiostro)}
.section.ink + .section.ink.chiusura .btn.ghost{color:var(--inchiostro);border-color:rgba(31,28,24,.45)}
.section.ink + .section.ink.chiusura .btn.ghost:hover{background:var(--inchiostro);color:var(--carta)}
@media (max-width:1024px){
.phead .wrap{grid-template-columns:1fr;row-gap:28px}
.phead .meta{padding-top:14px}
.ed .wrap{grid-template-columns:1fr;row-gap:36px}
.ed .wrap>[class*="c-"]{grid-column:1/-1}
.up,.down{margin-top:0}
.passi:not(.plain) li:nth-child(2),.passi:not(.plain) li:nth-child(3){margin-left:0}
.stampe{grid-template-columns:repeat(3,1fr)}
.stampe>:nth-child(2){margin-top:32px}.stampe>:nth-child(3){margin-top:64px}
.chiusura .row{grid-template-columns:1fr}
.tav.bleed-l,.tav.bleed-r{margin-left:0;margin-right:0;width:100%}
}
@media (max-width:640px){
.phead h1{font-size:clamp(40px,12vw,64px)}
.orari li{grid-template-columns:1fr;gap:4px}
.orari .c{text-align:left}
.orari.distesa li{grid-template-columns:1fr}.orari.distesa .o{text-align:left}
.stampe{grid-template-columns:1fr 1fr}
.stampe>:nth-child(3){grid-column:1/-1;margin-top:0}
.stampe.due{grid-template-columns:1fr}.stampe.due .photo:last-child{margin-top:0}
.canali .ico{width:40px;height:40px}
}
.motti{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid rgba(31,28,24,.16)}
.motti li{padding:clamp(13px,1.5vw,19px) 0;border-bottom:1px solid rgba(31,28,24,.16);
font-family:var(--display);font-variation-settings:"opsz" 48,"WONK" 1;font-style:italic;font-weight:500;
font-size:clamp(20px,2.1vw,28px);line-height:1.2;letter-spacing:-.01em}
.ink .motti{border-top-color:rgba(236,223,207,.20)}
.ink .motti li{border-bottom-color:rgba(236,223,207,.20)}
.kuit{list-style:none;margin:clamp(26px,3.4vw,44px) 0 0;padding:0;display:grid;gap:0}
.kuit li{display:grid;grid-template-columns:clamp(52px,5vw,78px) minmax(0,1fr);align-items:baseline;
column-gap:clamp(14px,1.8vw,26px);padding:clamp(18px,2.2vw,30px) 0;border-top:1px solid rgba(31,28,24,.16)}
.kuit li:last-child{border-bottom:1px solid rgba(31,28,24,.16)}
.ink .kuit li{border-top-color:rgba(236,223,207,.20)}
.ink .kuit li:last-child{border-bottom-color:rgba(236,223,207,.20)}
.kuit .n{grid-row:1/3;font-family:var(--display);font-variation-settings:"opsz" 48;font-style:italic;
font-weight:500;font-size:clamp(24px,2.4vw,34px);color:var(--sigillo);line-height:1}
.ink .kuit .n{color:var(--oro)}
.kuit .k-it{margin:0;font-family:var(--display);font-variation-settings:"opsz" 72,"WONK" 1;font-weight:600;
font-size:clamp(23px,2.9vw,40px);line-height:1.06;letter-spacing:-.02em;text-wrap:balance}
.kuit .k-han{grid-column:2;margin:10px 0 0;font-size:clamp(14px,1.25vw,18px);line-height:1.7;color:var(--seppia)}
.ink .kuit .k-han{color:var(--seppia-3)}
@media (max-width:640px){.kuit li{grid-template-columns:38px minmax(0,1fr);column-gap:12px}.kuit .n{font-size:20px}}
.massime{list-style:none;margin:clamp(16px,2vw,24px) 0 0;padding:0;display:grid;gap:0;
border-top:1px solid rgba(31,28,24,.14)}
.massime li{padding:clamp(11px,1.2vw,15px) 0;border-bottom:1px solid rgba(31,28,24,.14);
font-size:clamp(15.5px,1.15vw,17px);line-height:1.45;color:var(--inchiostro)}
.ink .massime{border-top-color:rgba(236,223,207,.18)}
.ink .massime li{border-bottom-color:rgba(236,223,207,.18);color:var(--carta)}
.forma{margin-top:clamp(30px,4vw,56px)}
.forma h3{font-family:var(--display);font-variation-settings:"opsz" 72,"WONK" 1;font-weight:600;
font-size:clamp(26px,3.2vw,44px);line-height:1.04;letter-spacing:-.02em;margin:0;
display:flex;align-items:baseline;flex-wrap:wrap;gap:0 14px}
.forma h3 .han{font-size:.62em;color:var(--seppia)}
.ink .forma h3 .han{color:var(--seppia-3)}
.forma h3 em{font-style:italic;font-weight:500;font-size:.5em;color:var(--sigillo);letter-spacing:0}
.ink .forma h3 em{color:var(--oro)}
@media (min-width:1025px){.forma .massime,.forma .piu{max-width:74ch}}
.quattro{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
gap:clamp(18px,2.4vw,34px)}
.quattro li{display:grid;gap:6px;padding-top:14px;border-top:2px solid var(--inchiostro)}
.ink .quattro li{border-top-color:var(--carta)}
.quattro b{font-family:var(--display);font-variation-settings:"opsz" 48;font-weight:600;
font-size:clamp(24px,2.4vw,34px);letter-spacing:.01em;line-height:1}
.quattro span{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--seppia)}
.ink .quattro span{color:var(--seppia-3)}
@media (max-width:640px){.quattro{grid-template-columns:1fr}}
.precetti{list-style:none;margin:clamp(26px,3.4vw,44px) 0 0;padding:0;display:grid;gap:0}
.precetti li{display:grid;grid-template-columns:clamp(52px,5vw,78px) minmax(0,1fr);align-items:baseline;
column-gap:clamp(14px,1.8vw,26px);padding:clamp(18px,2.2vw,28px) 0;border-top:1px solid rgba(236,223,207,.20)}
.precetti li:last-child{border-bottom:1px solid rgba(236,223,207,.20)}
.precetti .n{grid-row:1/3;font-family:var(--display);font-variation-settings:"opsz" 48;font-style:italic;
font-weight:500;font-size:clamp(24px,2.4vw,34px);color:var(--oro);line-height:1}
.precetti .p-it{margin:0;font-size:clamp(17px,1.5vw,21px);line-height:1.4;color:var(--carta)}
.precetti .p-tr{grid-column:2;margin:9px 0 0;font-family:var(--display);font-style:italic;font-weight:500;
font-size:clamp(14px,1.15vw,16.5px);letter-spacing:.02em;color:var(--seppia-3)}
@media (max-width:640px){.precetti li{grid-template-columns:38px minmax(0,1fr);column-gap:12px}.precetti .n{font-size:20px}}
.capitoli{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid rgba(31,28,24,.16)}
.capitoli li{display:grid;grid-template-columns:clamp(46px,4.4vw,70px) minmax(0,1fr);align-items:baseline;
column-gap:clamp(14px,1.8vw,24px);padding:clamp(20px,2.6vw,34px) 0;border-bottom:1px solid rgba(31,28,24,.16)}
.capitoli .n{font-family:var(--display);font-variation-settings:"opsz" 48;font-style:italic;font-weight:500;
font-size:clamp(22px,2.2vw,30px);color:var(--sigillo);line-height:1}
.capitoli h3{margin:0;font-family:var(--display);font-variation-settings:"opsz" 72,"WONK" 1;font-weight:600;
font-size:clamp(24px,2.8vw,38px);line-height:1.05;letter-spacing:-.02em}
.capitoli h3 a{color:inherit}
.capitoli h3 a:hover{color:var(--sigillo)}
.capitoli p{margin:8px 0 14px;color:var(--seppia);font-size:16px}
.capitoli .link-attesa{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--seppia)}
.capitoli li.attesa h3,.capitoli li.attesa p{opacity:.62}
.ink .capitoli{border-top-color:rgba(236,223,207,.20)}
.ink .capitoli li{border-bottom-color:rgba(236,223,207,.20)}
.ink .capitoli .n{color:var(--oro)}
.ink .capitoli p{color:var(--seppia-3)}
.capitoli-su .capitoli h2{margin:0;font-family:var(--display);font-variation-settings:"opsz" 72,"WONK" 1;font-weight:600;
font-size:clamp(24px,2.8vw,38px);line-height:1.05;letter-spacing:-.02em}
.capitoli-su .capitoli h2 a{color:inherit}
.capitoli-su .capitoli h2 a:hover{color:var(--sigillo)}
.capitoli-su{padding-bottom:clamp(40px,5vw,76px)}
.coda-capitoli{padding-top:clamp(30px,4vw,56px)}
.rimandi{display:flex;flex-wrap:wrap;gap:clamp(18px,2.6vw,44px);margin:16px 0 0}
.chiusura .h2.detta{font-size:clamp(25px,3.2vw,44px);max-width:26ch;margin-inline:auto;line-height:1.14}
.chiusura .chi{margin-top:18px}
.glo-gruppo{margin-top:clamp(34px,4.4vw,64px)}
.glo-gruppo:first-child{margin-top:clamp(20px,2.6vw,34px)}
.glo-titolo{margin:0 0 6px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;
color:var(--oro);display:flex;align-items:baseline;gap:10px}
.glo-n{font-family:var(--display);font-style:italic;font-weight:500;font-size:15px;letter-spacing:0;
text-transform:none;color:var(--seppia-3)}
.glossario{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid rgba(236,223,207,.20)}
.glossario>li{padding:clamp(14px,1.6vw,20px) 0;border-bottom:1px solid rgba(236,223,207,.20)}
.glo-riga{display:grid;grid-template-columns:clamp(64px,6vw,96px) minmax(0,1fr);align-items:baseline;
column-gap:clamp(14px,1.8vw,26px)}
.glo-han{font-size:clamp(22px,2.2vw,30px);line-height:1;color:var(--carta)}
.glo-testo{display:grid;gap:3px;grid-column:2}
.glo-testo b{font-family:var(--display);font-variation-settings:"opsz" 36;font-weight:600;
font-size:clamp(19px,1.7vw,24px);letter-spacing:-.005em;line-height:1.1;color:var(--carta)}
.glo-it{font-size:15.5px;line-height:1.4;color:var(--seppia-3)}
.glo-piu{grid-column:1/-1}
.glo-piu>.plus{margin-top:10px;font-size:11px;letter-spacing:.18em}
.glo-piu .plus-i{font-size:26px}
.glo-dentro{padding:8px 0 4px;max-width:62ch}
.glo-dentro p{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--seppia-3)}
.glo-dentro b{color:var(--carta);font-weight:600}
.glo-stato{font-size:12.5px;letter-spacing:.04em;color:var(--oro)}
@media (max-width:640px){
.glo-riga{grid-template-columns:1fr;row-gap:6px}
.glo-testo{grid-column:1}
.glo-han{font-size:26px}
}
.tappe{list-style:none;margin:clamp(20px,2.6vw,32px) 0 0;padding:0;display:grid;gap:0;
border-top:1px solid rgba(31,28,24,.16)}
.tappe li{display:grid;grid-template-columns:clamp(74px,7vw,110px) minmax(0,1fr);align-items:baseline;
column-gap:clamp(14px,1.8vw,26px);padding:clamp(15px,1.8vw,22px) 0;border-bottom:1px solid rgba(31,28,24,.16)}
.tappe .a{font-family:var(--display);font-variation-settings:"opsz" 48;font-style:italic;font-weight:500;
font-size:clamp(20px,2vw,27px);color:var(--sigillo);line-height:1}
.tappe p{margin:0;font-size:clamp(15.5px,1.15vw,17px);line-height:1.45}
.ink .tappe{border-top-color:rgba(236,223,207,.20)}
.ink .tappe li{border-bottom-color:rgba(236,223,207,.20)}
.ink .tappe .a{color:var(--oro)}
@media (max-width:640px){.tappe li{grid-template-columns:1fr;row-gap:5px}.tappe .a{font-size:19px}}