@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Inter:wght@400;500;600&family=Caveat:wght@400;600;700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Outfit:wght@200;300;400;500&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";.sicily-page{--terra: #C2654A;--terra-d: #A44E36;--terra-l: #D9917A;--sea: #9ECFDD;--sea-d: #6BB0C4;--green: #B5D49A;--green-d: #7DA864;--ink: #2C261F;--ink-s: #5C544A;--ink-l: #8A8078;--cream: #FFF9ED;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-spring: cubic-bezier(.23, 1, .32, 1)}.sicily-page{display:flex;flex-direction:column;align-items:center;padding:5rem 1.5rem 3rem;position:relative;z-index:2}.sicily-wrap{max-width:960px;width:100%;position:relative;z-index:1}.sicily-hdr{animation:sicilyRevealUp .9s var(--ease-spring) both}@keyframes sicilyRevealUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.sicily-hdr{text-align:center;margin-bottom:1rem}.sicily-hdr h1{font-family:Playfair Display,Georgia,serif;font-weight:400;font-size:clamp(2.2rem,5vw,3.2rem);letter-spacing:.06em;line-height:1.15}.sicily-hdr h1 em{font-style:italic;color:var(--terra);position:relative}.sicily-hdr h1 em:after{content:"";position:absolute;left:5%;right:5%;bottom:.05em;height:2px;background:var(--terra);opacity:.3;border-radius:2px}.sicily-hdr .sicily-sub{font-family:Caveat,cursive;font-size:clamp(1rem,2.4vw,1.3rem);color:var(--terra);opacity:.72;margin-top:.25rem;letter-spacing:.08em}.sicily-hdr .sicily-eyebrow{font-family:Outfit,sans-serif;font-size:.68rem;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-l);opacity:.55;margin-top:.5rem}.sicily-frame{border-radius:16px;position:relative;animation:sicilyRevealUp 1s var(--ease-spring) .15s both;box-shadow:0 1px 2px #2c261f08,0 4px 8px #2c261f0a,0 8px 24px #2c261f0f,0 16px 48px #2c261f14,0 0 0 1px #2c261f08;transition:transform .6s var(--ease-spring),box-shadow .6s ease}.sicily-frame-inner{overflow:hidden;border-radius:inherit}.sicily-frame:hover .sicily-map{transform:rotateX(.4deg) rotateY(-.2deg)}.sicily-frame:hover{transform:translateY(-3px);box-shadow:0 1px 2px #2c261f08,0 6px 12px #2c261f0d,0 12px 32px #2c261f12,0 20px 56px #2c261f1a,0 0 0 1px #2c261f08}.sicily-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.12) 50%,transparent 60%);background-size:200% 100%;animation:sicilyShimmer 2.5s ease-in-out .8s 1 forwards;opacity:0;visibility:hidden}@keyframes sicilyShimmer{0%{opacity:0;background-position:200% 0;visibility:visible}8%{opacity:.6}55%{opacity:.4;background-position:-200% 0}to{opacity:0;background-position:-200% 0;visibility:hidden}}.sicily-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2;border-radius:16px;box-shadow:inset 0 0 80px #2c261f1a,inset 0 0 160px #2c261f0d}.sicily-frame-inner .sicily-map{filter:brightness(.97) contrast(1.03)}.sicily-map{width:100%;height:auto;display:block;transform-origin:center;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.sicily-frame:hover .sicily-map{transition:transform .8s var(--ease-spring)}.sicily-page .loc{cursor:pointer;animation:sicilyPinDrop .7s var(--ease-out-back) both}.sicily-page .loc .glow{transition:opacity .4s var(--ease-out-back);opacity:0}.sicily-page .loc:hover{will-change:transform}.sicily-page .loc:hover .glow{opacity:.45}.sicily-page .loc .icon-wrap{transition:transform .4s var(--ease-out-back),filter .4s ease;transform-origin:center bottom}.sicily-page .loc:hover .icon-wrap{transform:scale(1.15) translateY(-4px);filter:brightness(1.08) drop-shadow(0 2px 4px rgba(44,38,31,.25))}.sicily-page .loc .tip{display:none!important}@keyframes sicilyPinDrop{0%{opacity:0;transform:translateY(-35px) scale(.6)}to{opacity:1;transform:translateY(0) scale(1)}}.sicily-page .pls{animation:sicilyPulse 4s ease-in-out infinite;transform-origin:center}@keyframes sicilyPulse{0%,to{r:14;opacity:.12}50%{r:28;opacity:0}}.sicily-page .wv{animation:sicilyWave 8s ease-in-out infinite}.sicily-page .wv:nth-child(2n){animation-delay:-4s;animation-direction:reverse}@keyframes sicilyWave{0%,to{transform:translate(0)}50%{transform:translate(6px)}}.sicily-page .coast-pulse{animation:sicilyCoastGlow 6s ease-in-out infinite}@keyframes sicilyCoastGlow{0%,to{stroke-opacity:.85}50%{stroke-opacity:.95}}.sicily-page .heart-beat{animation:sicilyHeartBeat 2.4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes sicilyHeartBeat{0%,to{transform:scale(1)}10%{transform:scale(1.18)}18%{transform:scale(1)}26%{transform:scale(1.12)}34%{transform:scale(1)}}.sicily-bio{text-align:center;max-width:560px;margin:1.8rem auto 0;padding:0 1rem;animation:sicilyRevealUp .8s var(--ease-spring) .5s both}.sicily-bio-card{background:#ffffff59;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:14px;padding:1.8rem 2rem 1.5rem;border:1px solid rgba(255,255,255,.5);box-shadow:0 2px 12px #2c261f0a,0 8px 32px #2c261f08}.sicily-bio .sicily-dv{font-size:.65rem;color:var(--terra-l);letter-spacing:1.2em;margin-bottom:.8rem;opacity:0;animation:sicilyDivReveal 1.5s var(--ease-spring) 1.2s forwards}@keyframes sicilyDivReveal{0%{opacity:0;letter-spacing:3em}to{opacity:.4;letter-spacing:1.2em}}.sicily-bio p{animation:sicilyRevealUp .8s var(--ease-spring) .65s both;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(.95rem,1.8vw,1.08rem);line-height:2;color:var(--ink-s);font-style:italic;font-weight:300}.sicily-bio .sicily-sg{animation:sicilyRevealUp .7s var(--ease-spring) .85s both;font-family:Caveat,cursive;font-size:1.2rem;color:var(--terra);margin-top:.8rem;display:inline-block;opacity:.7;transition:opacity .3s ease,transform .3s ease}.sicily-bio .sicily-sg:after{content:"";display:block;width:0;height:1px;background:var(--terra);transition:width .4s var(--ease-spring);margin-top:2px}.sicily-bio .sicily-sg:hover{opacity:1}.sicily-bio .sicily-sg:hover:after{width:100%}.town-info-section{max-width:640px;margin:2rem auto 0;padding:0 1rem;animation:sicilyRevealUp .6s var(--ease-spring) both}.town-info-card{background:#ffffff73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:18px;padding:2rem 2.5rem;border:1px solid rgba(255,255,255,.6);box-shadow:0 4px 20px #2c261f0f,0 12px 40px #2c261f0a,0 0 0 1px #2c261f05;position:relative;transition:transform .3s var(--ease-spring),box-shadow .3s ease}.town-info-card:hover{transform:translateY(-2px);box-shadow:0 6px 25px #2c261f14,0 16px 48px #2c261f0f}.town-info-header{margin-bottom:1.2rem}.town-info-header h3{font-family:Playfair Display,Georgia,serif;font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:600;margin:0 0 .3rem;letter-spacing:.02em}.town-subtitle{font-family:Caveat,cursive;font-size:clamp(1.1rem,2.2vw,1.4rem);margin:0;opacity:.8;letter-spacing:.02em}.town-description{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.8;margin:0;font-style:italic;font-weight:400}.town-close{position:absolute;top:1.2rem;right:1.2rem;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:14px;font-weight:400;display:flex;align-items:center;justify-content:center;transition:all .3s var(--ease-spring)}.town-close:hover{background:#0000000d!important;transform:scale(1.05)}.town-close:active{transform:scale(.95)}.sicily-page .loc:focus-visible{outline:2px solid var(--terra);outline-offset:4px;border-radius:50%}@media (max-width: 768px){.sicily-page{padding:4.5rem 1rem 2rem}.sicily-hdr h1{letter-spacing:.04em}.sicily-frame,.sicily-frame:after{border-radius:12px}.sicily-leg{gap:.7rem 1rem}.town-info-card{padding:1.5rem 1.8rem;border-radius:14px}.town-close{top:1rem;right:1rem;width:28px;height:28px;font-size:12px}}@media (max-width: 480px){.sicily-page{padding:4rem .75rem 1.5rem}.sicily-hdr{margin-bottom:.6rem}.sicily-hdr h1{font-size:1.8rem}.sicily-bio{margin-top:1.2rem}.sicily-bio p{line-height:1.8}.sicily-leg span{font-size:.78rem}.sicily-leg{gap:.5rem .8rem}.sicily-frame,.sicily-frame:after{border-radius:10px}.town-info-section{margin-top:1.5rem}.town-info-card{padding:1.2rem 1.4rem;border-radius:12px}.town-info-header{margin-bottom:1rem}.town-close{top:.8rem;right:.8rem;width:26px;height:26px;font-size:11px}}@media (hover: none){.sicily-frame:hover,.sicily-frame:hover .sicily-map{transform:none}.sicily-page .loc:active .icon-wrap{transform:scale(1.1)}}@media (prefers-reduced-motion: reduce){.sicily-page *,.sicily-page *:before,.sicily-page *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}body{overflow-x:hidden;background-color:var(--bg-color);color:var(--text-color)}::selection{background:var(--selection-color);color:var(--text-color)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scroll-thumb-color);border-radius:2px}input::placeholder{color:var(--text-ghost-color)}@media (hover: hover) and (pointer: fine){*{cursor:none!important}}*::-webkit-scrollbar:horizontal{height:0}@media (max-width: 640px){.fn-spine{display:none!important}}#works button:focus-visible{outline:2px solid #8a6d2b;outline-offset:3px}html[data-theme=dark] #works button:focus-visible{outline-color:#c9a84c}@keyframes gentleFloat{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-8px) rotate(2deg)}66%{transform:translateY(4px) rotate(-1deg)}}@keyframes scrollPulse{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(8px)}}@keyframes float0{0%,to{transform:translate(20%) translateY(30%) translateZ(0)}50%{transform:translate(25%) translateY(25%) translateZ(0)}}@keyframes float1{0%,to{transform:translate(80%) translateY(55%) translateZ(0)}50%{transform:translate(75%) translateY(60%) translateZ(0)}}@keyframes float2{0%,to{transform:translate(140%) translateY(80%) translateZ(0)}50%{transform:translate(135%) translateY(75%) translateZ(0)}}@keyframes heroBreath{0%{transform:scale(1)}to{transform:scale(1.045)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){[style*="animation: marquee"],[style*="animation:marquee"]{animation-play-state:paused!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes rippleEffect{to{transform:scale(2);opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
