*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--wine:#281515;--rust:#281515;--rust-warm:#281515;--gold:#FEF1D7;--gold-light:#FEF1D7;--cream:#FEF1D7;--cream-warm:#FEF1D7;--text-light:rgba(255,255,255,0.88);--text-muted:rgba(255,255,255,0.50);--serif:minion-pro,Georgia,serif;--sans:'Jost',sans-serif;--ease:cubic-bezier(0.4,0,0.2,1)}html{scroll-behavior:smooth}body{background:var(--wine);color:var(--text-light);font-family:var(--sans);font-weight:300;line-height:1.65;overflow-x:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}body.intro-active{overflow:hidden}#site-wrapper{opacity:1}#intro{position:fixed;inset:0;z-index:10000;pointer-events:all;overflow:hidden;background:#F6E7CF}.skip-loom-intro #intro{display:none !important}#intro:has(.intro-curtain){background:transparent}#intro::after{display:none}.intro-tellaio-stage{position:absolute;inset:0;z-index:2;display:grid;place-items:center;padding:clamp(12px,2.4vw,34px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.intro-tellaio-stage.fade-out{opacity:0;transform:translateY(-12px);pointer-events:none}.intro-tellaio-frame{position:relative;width:min(64vh,92vw);aspect-ratio:1023 / 1537;filter:drop-shadow(0 16px 24px rgba(75,42,10,0.18));animation:introTellaioSettle 900ms cubic-bezier(0.3,0.9,0.2,1) both}#introLoom{position:absolute;inset:0;width:100%;height:100%;display:block}.intro-tellaio-vignette{position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(circle at 50% 38%,transparent 0 66%,rgba(72,38,9,0.08) 100%)}.intro-tellaio-tagline{position:absolute;left:50%;bottom:clamp(18px,4vh,38px);z-index:5;translate:-50% 8px;width:min(88vw,560px);color:rgba(76,45,22,0.72);font-family:var(--serif);font-size:clamp(13px,2vw,16px);font-style:italic;font-weight:300;letter-spacing:0.18em;text-align:center;opacity:0;animation:introTellaioTaglineIn 1.1s ease 1s forwards;transition:opacity 0.8s ease,translate 0.8s ease}.intro-tellaio-tagline.hide{animation:none;opacity:0;translate:-50% -4px}.intro-tellaio-copy{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:24px;text-align:center;color:rgba(72,43,20,0.86);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity 0.85s ease,transform 0.85s ease}.intro-tellaio-copy.visible{opacity:1;transform:translateY(0)}.intro-tellaio-copy-inner{width:min(88vw,680px)}.intro-tellaio-copy-title{color:rgba(68,40,18,0.9);font-family:cofo-raffine,var(--serif);font-size:clamp(30px,5.8vw,62px);font-weight:300;letter-spacing:0.08em;line-height:1;margin-bottom:10px}.intro-tellaio-copy p{color:rgba(93,59,30,0.8);font-family:var(--serif);font-size:clamp(14px,2vw,18px);font-style:italic;font-weight:300;letter-spacing:0.12em;line-height:1.35}.intro-curtain{position:absolute;inset:0;display:flex}.intro-panel{flex:0 0 51%;background:var(--cream-warm);background-image:radial-gradient(ellipse at 20% 80%,rgba(254,241,215,0.09) 0%,transparent 55%),radial-gradient(ellipse at 80% 20%,rgba(254,241,215,0.06) 0%,transparent 55%);will-change:transform;position:relative}.intro-panel:first-child{box-shadow:inset -12px 0 24px rgba(160,100,60,0.08)}.intro-panel:last-child{box-shadow:inset 12px 0 24px rgba(160,100,60,0.08)}.intro-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3;pointer-events:none;background:radial-gradient(ellipse 60% 55% at 50% 50%,var(--cream-warm) 55%,transparent 100%)}.intro-line{display:none}.intro-line-top{display:none}.intro-line-bottom{display:none}.intro-logo-block{display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;transform:translateY(14px);will-change:opacity,transform}.intro-monogram{display:flex;align-items:center;justify-content:center;width:auto;height:auto;background:none;border:none;border-radius:0;margin-bottom:8px}.intro-monogram svg{display:none}.intro-logo-img{width:clamp(200px,26vw,300px);height:auto;object-fit:contain;display:block;filter:drop-shadow(0 2px 20px rgba(254,241,215,0.18))}.intro-brand-name{font-family:cofo-raffine,sans-serif;font-size:clamp(34px,5.5vw,60px);font-weight:300;letter-spacing:0.08em;color:var(--wine);line-height:1;text-align:center}.intro-brand-name em{font-style:normal;color:inherit}.intro-tagline{font-family:var(--sans);font-size:9px;letter-spacing:0.34em;text-transform:uppercase;color:rgba(40,21,21,0.4);text-align:center;margin-top:2px}.intro-location{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:9px;letter-spacing:0.3em;text-transform:uppercase;color:rgba(40,21,21,0.5)}.intro-location::before,.intro-location::after{display:none}.intro-loader{position:absolute;bottom:52px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:16px;z-index:4;pointer-events:none}.intro-loader-count{font-family:var(--serif);font-size:clamp(11px,1.8vw,14px);font-weight:300;letter-spacing:0.3em;color:rgba(40,21,21,0.45);font-variant-numeric:tabular-nums;min-width:4ch;text-align:center}.intro-loader-track{display:none}.intro-loader-fill{display:none}@keyframes introLogoIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes introLineExtend{from{width:0}to{width:min(240px,28vw)}}@keyframes introCenterFade{from{opacity:1}to{opacity:0}}@keyframes introGrainDrift{0%{transform:translate(0,0)}33%{transform:translate(-1.4%,1%)}66%{transform:translate(1%,-1.4%)}100%{transform:translate(0,0)}}@keyframes introTellaioSettle{from{opacity:0;transform:translateY(10px) scale(0.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes introTellaioTaglineIn{to{opacity:1;translate:-50% 0}}body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='1'/%3E%3C/svg%3E");pointer-events:none;z-index:9000;opacity:0.055;mix-blend-mode:overlay}@media (hover:hover){*{cursor:none}}#cursor-dot{position:fixed;top:0;left:0;width:8px;height:8px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:opacity 0.25s;will-change:transform}#cursor-ring{position:fixed;top:0;left:0;width:36px;height:36px;border:1px solid rgba(254,241,215,0.5);border-radius:50%;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:width 0.4s cubic-bezier(0.16,1,0.3,1),height 0.4s cubic-bezier(0.16,1,0.3,1),background 0.3s,border-color 0.3s,opacity 0.3s;will-change:transform}#cursor-label{position:fixed;top:0;left:0;pointer-events:none;z-index:99999;font-size:11px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--wine);font-family:var(--sans);white-space:nowrap;opacity:0;transform:translate(-50%,-50%);transition:opacity 0.25s}body.cursor-hover #cursor-ring{width:56px;height:56px;border-color:rgba(254,241,215,0.8)}body.cursor-room #cursor-ring{width:88px;height:88px;background:var(--gold);border-color:var(--gold)}body.cursor-room #cursor-dot{opacity:0}body.cursor-room #cursor-label{opacity:1}@media (hover:none){#cursor-dot,#cursor-ring,#cursor-label{display:none}}nav{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 48px;transition:background 0.5s var(--ease),padding 0.4s var(--ease)}nav.scrolled{background:rgba(40,21,21,0.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:18px 48px;border-bottom:1px solid rgba(254,241,215,0.12)}@media (max-width:860px){nav.scrolled{background:rgba(40,21,21,0.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(254,241,215,0.12)}nav.scrolled::before{content:"";position:absolute;top:0;left:0;right:0;height:env(safe-area-inset-top,0px);background:var(--wine)}}.nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;line-height:1}.nav-logo-img{height:52px;width:auto;max-width:200px;object-fit:contain;display:block;transition:opacity 0.3s var(--ease);filter:drop-shadow(0 1px 6px rgba(0,0,0,0.22))}.nav-logo:hover .nav-logo-img{opacity:0.82}.nav-logo-text{font-family:cofo-raffine,var(--serif);font-size:30px;font-weight:400;letter-spacing:0.03em;line-height:1;color:var(--cream);white-space:nowrap;transition:opacity 0.3s var(--ease)}.nav-logo:hover .nav-logo-text{opacity:0.82}@media (max-width:768px){.nav-logo-img{height:62px;max-width:200px}.nav-logo-text{font-size:24px}}.nav-links{display:flex;gap:40px;list-style:none}.nav-links a{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-muted);transition:color 0.3s,transform 0.3s cubic-bezier(0.25,0,0.1,1);display:inline-block}.nav-links a:hover{color:var(--cream);transform:scale(1.1)}.nav-links a.active{color:var(--gold)}.nav-cta{font-size:11px;letter-spacing:0.16em;text-transform:uppercase;padding:10px 22px;border:1px solid rgba(254,241,215,0.45);color:var(--gold-light);transition:background 0.3s,color 0.3s}.nav-cta:hover{background:var(--gold);color:var(--wine)}.nav-hamburger{display:none;align-items:center;justify-content:center;position:relative;width:44px;height:44px;padding:0;background:none;border:none;border-radius:50%;cursor:pointer;transition:transform 0.64s cubic-bezier(0.18,0.92,0.18,1)}.nav-hamburger::before{content:'';position:absolute;inset:4px;border:1px solid rgba(254,241,215,0.24);border-radius:50%;background:rgba(254,241,215,0.035);transform:scale(0.72);opacity:0;transition:transform 0.64s cubic-bezier(0.18,0.92,0.18,1),opacity 0.42s var(--ease)}.nav-hamburger span{position:absolute;left:12px;display:block;width:20px;height:1px;background:var(--cream);transform-origin:center;transition:transform 0.62s cubic-bezier(0.18,0.92,0.18,1),opacity 0.32s var(--ease),width 0.48s var(--ease);will-change:transform,opacity,width}.nav-hamburger span:nth-child(1){transform:translateY(-7px)}.nav-hamburger span:nth-child(2){transform:translateY(0);width:24px}.nav-hamburger span:nth-child(3){transform:translateY(7px)}.nav-hamburger.open{transform:scale(1.04) rotate(90deg)}.nav-hamburger.open::before{opacity:1;transform:scale(1)}.nav-hamburger.open span:nth-child(1){width:24px;animation:hamburgerFoldTop 0.68s cubic-bezier(0.16,1,0.3,1) both}.nav-hamburger.open span:nth-child(2){animation:hamburgerFoldMiddle 0.52s cubic-bezier(0.16,1,0.3,1) 0.04s both}.nav-hamburger.open span:nth-child(3){width:24px;animation:hamburgerFoldBottom 0.68s cubic-bezier(0.16,1,0.3,1) both}@keyframes hamburgerFoldTop{0%{transform:translateY(-7px) rotate(0)}42%{transform:translateY(0) rotate(0)}100%{transform:translateY(0) rotate(45deg)}}@keyframes hamburgerFoldMiddle{0%{opacity:1;transform:translateY(0) rotate(0) scaleX(1)}45%{opacity:0.55;transform:translateY(0) rotate(0) scaleX(0.62)}100%{opacity:0;transform:translateY(0) rotate(90deg) scaleX(0.18)}}@keyframes hamburgerFoldBottom{0%{transform:translateY(7px) rotate(0)}42%{transform:translateY(0) rotate(0)}100%{transform:translateY(0) rotate(-45deg)}}.desktop-header-links{display:none}body.desktop-menu-open{overflow:hidden}body.desktop-menu-open #mainNav{background:transparent !important;border-bottom-color:transparent !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important}.page-transition{position:fixed;inset:0;z-index:100000;display:block;overflow:hidden;visibility:hidden;opacity:0;pointer-events:none}.page-transition.active{visibility:visible;opacity:1;pointer-events:all;cursor:progress}.pt-cover{position:absolute;inset:-2px;background:linear-gradient(90deg,var(--wine) 0%,#321818 72%,rgba(254,241,215,0.18) 100%);opacity:1;transform:translateX(-104%);will-change:transform}.pt-cover::after{content:'';position:absolute;top:0;right:-12vw;width:18vw;height:100%;background:linear-gradient(90deg,rgba(254,241,215,0),rgba(254,241,215,.32),rgba(254,241,215,0));filter:blur(10px)}.pt-focus{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:clamp(14px,1.6vw,22px);pointer-events:none;will-change:transform,opacity}.pt-focus-mark{display:block}.pt-focus-mark.is-glyph{background-color:var(--cream)}.pt-focus-mark.is-photo{background-position:center;background-size:cover;background-repeat:no-repeat;border-radius:18px;box-shadow:0 40px 120px rgba(0,0,0,0.55)}.pt-focus-mark.is-ring{border:2px solid var(--cream);border-radius:50%}.pt-focus-label{font-family:cofo-raffine,var(--serif);font-size:clamp(20px,2.6vw,38px);font-weight:300;letter-spacing:0.04em;color:var(--cream);white-space:nowrap}html.pt-in::after{content:'';position:fixed;inset:-2px;z-index:100000;background:linear-gradient(90deg,var(--wine) 0%,#321818 72%,rgba(254,241,215,0.18) 100%);pointer-events:none;animation:ptSlideReveal 0.82s cubic-bezier(0.16,1,0.3,1) forwards;will-change:transform}@keyframes ptSlideReveal{from{transform:translateX(0)}to{transform:translateX(104%)}}@media (prefers-reduced-motion:reduce){html.pt-in::after{animation:none;transform:translateX(104%)}}.desktop-menu-panel{position:fixed;inset:0 0 auto;z-index:220;display:grid;grid-template-rows:auto 1fr auto;gap:clamp(34px,4.6vw,68px);min-height:min(82svh,800px);max-height:82svh;padding:clamp(34px,4vw,76px) clamp(42px,5vw,92px);overflow:hidden;background:rgba(254,241,215,0.6);backdrop-filter:blur(40px) saturate(1.08);-webkit-backdrop-filter:blur(40px) saturate(1.08);color:var(--wine);border-bottom:1px solid rgba(40,21,21,0.14);box-shadow:0 28px 80px rgba(0,0,0,0.24);opacity:0;transform:translateY(-100%);border-radius:0;pointer-events:none;--desktop-menu-sweep:-48%;will-change:opacity,transform;transition:opacity 0.4s var(--ease),transform 0.56s cubic-bezier(0.22,1,0.36,1)}.desktop-menu-panel[hidden]{display:none}.desktop-menu-panel.open{opacity:1;transform:translateY(0);pointer-events:all}.desktop-menu-panel.closing{opacity:0;transform:translateY(-100%);pointer-events:none;transition:opacity 0.34s var(--ease),transform 0.42s cubic-bezier(0.7,0,0.84,0)}.desktop-menu-panel::before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(115deg,transparent 0 32%,rgba(40,21,21,0.08) 46%,transparent 62%),radial-gradient(circle at 78% 0%,rgba(40,21,21,0.08),transparent 38%);opacity:0;transform:translateX(var(--desktop-menu-sweep));transition:opacity 0.42s var(--ease),transform 1s cubic-bezier(0.16,1,0.3,1);pointer-events:none}.desktop-menu-panel.open::before{opacity:1;transform:translateX(42%)}.desktop-menu-panel > *{position:relative;z-index:1}.desktop-menu-panel.animating,.desktop-menu-panel.animating::before,.desktop-menu-panel.animating .desktop-menu-top,.desktop-menu-panel.animating .desktop-menu-primary a,.desktop-menu-panel.animating .desktop-menu-feature,.desktop-menu-panel.animating .desktop-menu-bottom > *{transition:none !important}.desktop-menu-top,.desktop-menu-primary a,.desktop-menu-feature,.desktop-menu-bottom > *{opacity:0;transform:translateY(32px) scale(0.985);transition:opacity 0.5s var(--ease),transform 0.78s cubic-bezier(0.16,1,0.3,1)}.desktop-menu-panel.open .desktop-menu-top,.desktop-menu-panel.open .desktop-menu-primary a,.desktop-menu-panel.open .desktop-menu-feature,.desktop-menu-panel.open .desktop-menu-bottom > *{opacity:1;transform:translateY(0) scale(1)}.desktop-menu-panel.open .desktop-menu-top{transition-delay:0.18s}.desktop-menu-panel.open .desktop-menu-primary a:nth-child(1){transition-delay:0.24s}.desktop-menu-panel.open .desktop-menu-primary a:nth-child(2){transition-delay:0.28s}.desktop-menu-panel.open .desktop-menu-primary a:nth-child(3){transition-delay:0.32s}.desktop-menu-panel.open .desktop-menu-primary a:nth-child(4){transition-delay:0.36s}.desktop-menu-panel.open .desktop-menu-primary a:nth-child(5){transition-delay:0.40s}.desktop-menu-panel.open .desktop-menu-primary a:nth-child(6){transition-delay:0.44s}.desktop-menu-panel.open .desktop-menu-feature:nth-child(1){transition-delay:0.30s}.desktop-menu-panel.open .desktop-menu-feature:nth-child(2){transition-delay:0.36s}.desktop-menu-panel.open .desktop-menu-feature:nth-child(3){transition-delay:0.42s}.desktop-menu-panel.open .desktop-menu-bottom > *{transition-delay:0.50s}.desktop-menu-panel.closing .desktop-menu-top,.desktop-menu-panel.closing .desktop-menu-primary a,.desktop-menu-panel.closing .desktop-menu-feature,.desktop-menu-panel.closing .desktop-menu-bottom > *{opacity:0;transform:translateY(-14px) scale(0.99);transition:opacity 0.18s var(--ease),transform 0.24s cubic-bezier(0.7,0,0.84,0)}.desktop-menu-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:start}.desktop-menu-quick,.desktop-header-links{gap:clamp(22px,2.4vw,44px);font-family:var(--serif);font-size:clamp(22px,1.55vw,32px);line-height:1;text-transform:uppercase}.desktop-menu-quick{display:flex}.desktop-menu-brand-text{font-family:cofo-raffine,var(--serif);font-size:clamp(34px,2.6vw,52px);font-weight:300;letter-spacing:0.04em;line-height:0.95;white-space:nowrap}.desktop-menu-quick a,.desktop-header-links a,.desktop-menu-bottom a{color:rgba(40,21,21,0.86);text-decoration:none;transition:color 0.28s var(--ease)}.desktop-menu-quick a:hover,.desktop-header-links a:hover,.desktop-menu-bottom a:hover{color:var(--wine)}.desktop-menu-logo{justify-self:center;display:flex;line-height:1}.desktop-menu-logo img{width:clamp(96px,7vw,140px);height:auto;display:block;object-fit:contain}.desktop-menu-close{justify-self:end;position:relative;width:clamp(44px,3vw,58px);height:clamp(44px,3vw,58px);border:0;background:transparent;color:var(--wine);cursor:pointer}.desktop-menu-close span{position:absolute;top:50%;left:0;display:block;width:100%;height:2px;border-radius:999px;background:currentColor}.desktop-menu-close span:first-child{transform:rotate(45deg)}.desktop-menu-close span:last-child{transform:rotate(-45deg)}.desktop-menu-body{display:grid;grid-template-columns:minmax(250px,0.78fr) minmax(560px,1.6fr);gap:clamp(54px,7vw,130px);align-items:center}.desktop-menu-primary{display:grid;gap:clamp(11px,1vw,17px)}.desktop-menu-primary a{position:relative;width:fit-content;color:rgba(40,21,21,0.74);font-family:var(--sans);font-size:clamp(24px,1.75vw,38px);line-height:1.12;letter-spacing:0.02em;text-transform:uppercase;text-decoration:none;transition:transform 0.42s cubic-bezier(0.16,1,0.3,1),color 0.28s var(--ease),letter-spacing 0.32s var(--ease)}.desktop-menu-primary a::after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;opacity:0;transform:scaleX(0);transform-origin:left center;transition:opacity 0.28s var(--ease),transform 0.46s cubic-bezier(0.16,1,0.3,1)}.desktop-menu-primary a:hover,.desktop-menu-primary a:focus-visible{color:var(--wine);letter-spacing:0.05em;transform:translateX(12px)}.desktop-menu-primary a:hover::after,.desktop-menu-primary a:focus-visible::after{opacity:0.64;transform:scaleX(1)}.desktop-menu-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,2vw,36px)}.desktop-menu-feature{position:relative;display:grid;gap:16px;text-decoration:none;transition:transform 0.38s cubic-bezier(0.22,1,0.36,1)}.desktop-menu-feature img{width:100%;aspect-ratio:1.42;object-fit:cover;display:block;border-radius:18px;clip-path:inset(0 round 18px);filter:brightness(0.82) saturate(0.92);transition:transform 0.55s cubic-bezier(0.22,1,0.36,1),filter 0.55s var(--ease),box-shadow 0.55s var(--ease)}.desktop-menu-feature span{color:rgba(40,21,21,0.78);font-family:var(--sans);font-size:clamp(20px,1.6vw,34px);line-height:1;letter-spacing:0.02em;text-transform:uppercase;transition:color 0.35s var(--ease),letter-spacing 0.35s var(--ease),transform 0.35s var(--ease)}.desktop-menu-feature:hover{transform:translateY(-8px)}.desktop-menu-feature:hover img{transform:scale(1.045);filter:brightness(0.94) saturate(1);box-shadow:0 24px 56px rgba(0,0,0,0.24)}.desktop-menu-feature:hover span{color:var(--wine);letter-spacing:0.04em;transform:translateY(3px)}.desktop-menu-feature-soon::after{content:'In costruzione';position:absolute;top:16px;right:16px;color:rgba(40,21,21,0.68);font-family:var(--sans);font-size:9px;letter-spacing:0.18em;text-transform:uppercase;opacity:0;transform:translateY(-6px);transition:opacity 0.35s var(--ease),transform 0.35s var(--ease)}.desktop-menu-feature-soon:hover::after,.desktop-menu-feature-soon:focus-visible::after,.desktop-menu-feature-soon[aria-disabled="true"]::after{opacity:1;transform:translateY(0)}.desktop-menu-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;color:rgba(40,21,21,0.78);font-family:var(--serif);font-size:clamp(20px,1.2vw,27px)}.desktop-menu-bottom span{color:rgba(40,21,21,0.68)}.desktop-menu-legal{text-align:left;font-family:var(--sans);font-size:clamp(12px,0.82vw,15px);line-height:1.6;letter-spacing:0.02em}.desktop-menu-legal a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(40,21,21,0.28);padding-bottom:1px;transition:color 0.25s var(--ease),border-color 0.25s var(--ease)}.desktop-menu-legal a:hover{color:var(--wine);border-bottom-color:var(--wine)}.desktop-menu-panel .desktop-menu-top,.desktop-menu-panel .desktop-menu-primary a,.desktop-menu-panel .desktop-menu-feature,.desktop-menu-panel .desktop-menu-bottom > *{transition:opacity 0.5s var(--ease),transform 0.78s cubic-bezier(0.16,1,0.3,1),color 0.28s var(--ease),letter-spacing 0.35s var(--ease)}.desktop-menu-panel .desktop-menu-feature img{transition:transform 0.55s cubic-bezier(0.22,1,0.36,1),filter 0.55s var(--ease),box-shadow 0.55s var(--ease)}@media (min-width:861px){#mainNav.has-desktop-menu{display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:clamp(88px,6vw,118px);padding:0 clamp(42px,4.2vw,86px)}#mainNav.has-desktop-menu.scrolled{padding:0 clamp(42px,4.2vw,86px)}#mainNav.has-desktop-menu .desktop-header-links{display:none;justify-self:start}#mainNav.has-desktop-menu .nav-logo{justify-self:start;grid-column:1}#mainNav.has-desktop-menu .nav-logo-img{height:clamp(62px,5vw,92px);max-width:320px}#mainNav.has-desktop-menu .nav-logo-text{font-size:clamp(28px,2.6vw,42px)}#mainNav.has-desktop-menu .nav-links,#mainNav.has-desktop-menu .nav-cta{display:none}#mainNav.has-desktop-menu .nav-hamburger{display:flex;justify-self:end;grid-column:3}}@media (max-width:1100px) and (min-width:861px){.desktop-menu-panel{min-height:78svh;max-height:86svh;overflow:auto}.desktop-menu-body{grid-template-columns:1fr;gap:44px}.desktop-menu-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.desktop-menu-panel,.desktop-header-links{display:none !important}}.construction-page{min-height:100svh;display:grid;grid-template-rows:auto 1fr;padding:clamp(30px,4vw,72px);color:var(--cream);background:linear-gradient(180deg,rgba(0,0,0,0.42),rgba(0,0,0,0.18)),var(--wine);overflow:hidden}body.construction-body,body.construction-body *{cursor:auto !important}body.construction-body #cursor-dot,body.construction-body #cursor-ring,body.construction-body #cursor-label{display:none !important}body.construction-body .construction-back{cursor:pointer !important}.construction-brand{width:fit-content;color:rgba(254,241,215,0.72);font-family:cofo-raffine,var(--serif);font-size:clamp(22px,2vw,36px);font-weight:300;letter-spacing:0.04em;line-height:1;text-decoration:none}.construction-inner{display:grid;place-items:center;align-content:center;gap:28px;max-width:760px;margin:0 auto;text-align:center}.construction-kicker{color:rgba(254,241,215,0.58);font-family:var(--sans);font-size:10px;letter-spacing:0.28em;text-transform:uppercase;margin:0}.construction-progress{width:min(360px,78vw);margin:16px 0;display:flex;flex-direction:column;gap:12px}.construction-progress-label{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:0.32em;text-transform:uppercase;color:rgba(254,241,215,0.6);text-align:center}.construction-bar{position:relative;height:5px;border-radius:999px;background:rgba(254,241,215,0.16);overflow:hidden}.construction-bar-fill{position:absolute;top:0;left:0;bottom:0;width:0;border-radius:999px;background:var(--cream);animation:constructionLoad 2.8s cubic-bezier(0.62,0,0.38,1) infinite}.construction-bar-scale{display:flex;justify-content:space-between;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:0.22em;color:rgba(254,241,215,0.42)}@keyframes constructionLoad{0%{width:0%;opacity:0}6%{width:0%;opacity:1}80%{width:100%;opacity:1}90%{width:100%;opacity:1}97%,100%{width:100%;opacity:0}}.construction-inner h1{max-width:760px;color:var(--cream);font-family:var(--sans);font-size:clamp(32px,3.1vw,52px);font-weight:400;line-height:1.16;letter-spacing:0.04em;margin:0}.construction-inner h1 em{color:var(--gold-light);font-style:italic}.construction-copy{max-width:640px;color:rgba(255,255,255,0.64);font-size:clamp(16px,1.4vw,22px);line-height:1.65;margin:0}.construction-back{margin-top:28px;appearance:none;border:1px solid rgba(254,241,215,0.72);border-radius:999px;background:var(--cream);color:var(--wine);min-height:58px;padding:0 38px;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:0.02em;text-transform:none;cursor:pointer;box-shadow:0 20px 58px rgba(0,0,0,0.2);transition:background 0.35s var(--ease),color 0.35s var(--ease),transform 0.35s var(--ease),box-shadow 0.35s var(--ease)}.construction-back:hover,.construction-back:focus-visible{background:rgba(254,241,215,0.86);color:var(--wine);transform:translateY(-3px);box-shadow:0 26px 68px rgba(0,0,0,0.26)}@media (max-width:700px){.construction-page{padding:28px 24px 44px}.construction-inner{gap:20px}.construction-progress{margin:10px 0;width:min(312px,84vw)}}.mobile-menu{position:fixed;inset:0;z-index:200;background:rgba(20,10,8,0);pointer-events:none;transition:background 0.72s cubic-bezier(0.16,1,0.3,1)}.mobile-menu.open{background:rgba(20,10,8,0.34);pointer-events:all}.mobile-menu:focus{outline:none}.mm-panel{background:var(--wine);border-radius:26px;margin:calc(18px + env(safe-area-inset-top)) 0 0;padding:18px 26px calc(28px + env(safe-area-inset-bottom));max-height:100%;overflow-y:auto;opacity:0;transform:translateY(-24px) scale(0.86);transform-origin:top right;transition:opacity 0.42s var(--ease),transform 0.72s cubic-bezier(0.16,1,0.3,1);box-shadow:0 26px 60px rgba(0,0,0,0.38);will-change:transform,opacity}.mobile-menu.open .mm-panel{opacity:1;transform:translateY(0) scale(1);animation:menuPanelBloom 0.82s cubic-bezier(0.16,1,0.3,1) both}.mm-top,.mm-contact,.mm-or{opacity:0;transform:translateY(-8px);transition:opacity 0.46s var(--ease),transform 0.58s cubic-bezier(0.16,1,0.3,1)}.mobile-menu.open .mm-top{opacity:1;transform:translateY(0);transition-delay:0.14s}.mobile-menu.open .mm-contact{opacity:1;transform:translateY(0);transition-delay:0.22s}.mobile-menu.open .mm-or{opacity:1;transform:translateY(0);transition-delay:0.30s}@keyframes menuPanelBloom{0%{opacity:0;transform:translateY(-26px) scale(0.86)}58%{opacity:1;transform:translateY(2px) scale(1.012)}100%{opacity:1;transform:translateY(0) scale(1)}}.mm-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.mm-codes{display:grid;gap:3px;min-width:0;font-family:var(--sans);font-size:8px;font-weight:400;letter-spacing:0.16em;line-height:1.25;text-transform:uppercase;color:var(--text-muted)}.mm-codes span{display:block;white-space:nowrap}.mm-close{display:inline-flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:6px 0 6px 10px;font-family:var(--serif);font-size:20px;color:var(--cream);transition:opacity 0.3s var(--ease)}.mm-close:hover{opacity:0.6}.mm-close .mm-close-x{font-size:26px;line-height:0}.mm-contact{margin-top:clamp(54px,16vw,86px)}.mm-talk-row{display:flex;align-items:stretch;gap:18px}.mm-talk{font-family:var(--serif);font-size:clamp(26px,7.6vw,34px);font-weight:300;color:var(--cream);line-height:1;white-space:nowrap;align-self:center}.mm-talk-div{flex:0 0 1px;background:rgba(255,255,255,0.22)}.mm-info-list{flex:1;min-width:0;display:grid;gap:12px;align-self:center}.mm-info-list a{display:grid;gap:3px;min-width:0;color:var(--cream);opacity:0.86;transition:opacity 0.3s var(--ease)}.mm-info-list a:hover,.mm-info-list a:active{opacity:1}.mm-info-list span{font-family:var(--sans);font-size:9px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-muted)}.mm-info-list strong{display:block;min-width:0;overflow-wrap:anywhere;font-family:var(--serif);font-size:clamp(13px,3.55vw,18px);font-weight:300;color:var(--cream);line-height:1.18}.mm-or{margin-top:42px;font-family:var(--serif);font-size:16px;font-weight:300;color:var(--text-muted);line-height:1.7}.mm-or .mm-wa{display:inline-block;color:var(--cream);border:1px solid rgba(255,255,255,0.4);border-radius:999px;padding:4px 14px;margin:0 3px;white-space:nowrap;transition:background 0.3s var(--ease),color 0.3s var(--ease)}.mm-or .mm-wa:hover{background:var(--cream);color:var(--wine)}.mm-close:focus:not(:focus-visible),.mm-copy:focus:not(:focus-visible),.mobile-menu a:focus:not(:focus-visible){outline:none}.mm-close:focus-visible,.mm-copy:focus-visible,.mobile-menu a:focus-visible{outline:1px solid rgba(254,241,215,0.6);outline-offset:3px}.mobile-page-menu{display:none}@media (max-width:860px){body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.mobile-page-menu{position:fixed;left:26px;right:26px;bottom:calc(var(--mobile-menu-bottom,14px) + env(safe-area-inset-bottom));z-index:1000;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;min-height:54px;padding:4px;border:1px solid rgba(40,21,21,0.12);border-radius:999px;background:rgba(254,241,215,0.46);box-shadow:0 16px 40px rgba(0,0,0,0.24),inset 0 1px 0 rgba(255,255,255,0.14);backdrop-filter:blur(16px) saturate(1.08);-webkit-backdrop-filter:blur(16px) saturate(1.08);transform:translate3d(0,0,0);will-change:bottom}.mobile-page-menu a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;height:46px;padding:5px 4px 4px;border-radius:999px;color:var(--wine);opacity:0.78;transition:background 0.3s var(--ease),opacity 0.3s var(--ease),transform 0.3s var(--ease)}.mobile-page-menu a.is-active{background:rgba(40,21,21,0.16);box-shadow:inset 0 1px 0 rgba(254,241,215,0.1);opacity:1}.mobile-page-menu img{width:min(25px,7vw);height:min(25px,7vw);object-fit:contain;display:block;border-radius:0;filter:brightness(0) saturate(100%) invert(8%) sepia(11%) saturate(1175%) hue-rotate(314deg) brightness(92%) contrast(94%);opacity:0.98}.mobile-page-menu span{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:nowrap;margin-top:2px;font-family:var(--sans);font-size:6.5px;line-height:1;letter-spacing:0.18em;text-transform:uppercase;color:rgba(40,21,21,0.78)}.mobile-page-menu a:hover,.mobile-page-menu a:active{background:rgba(40,21,21,0.11);opacity:1;transform:translateY(-1px)}}.hero{position:relative;height:100vh;height:100dvh;min-height:600px;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-bg{position:absolute;inset:0;background:linear-gradient( to bottom,rgba(40,21,21,0.15) 0%,rgba(40,21,21,0.05) 40%,rgba(40,21,21,0.55) 75%,rgba(40,21,21,0.90) 100% );z-index:1}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;transform:scale(1.12);background:var(--wine);will-change:transform}.hero-img-fallback{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 40%,#281515 0%,var(--wine) 60%);will-change:transform}.hero-content{position:relative;z-index:2;width:100%;padding:0 72px;text-align:center}.hero-meta{position:absolute;bottom:48px;left:72px;z-index:2;text-align:left}.hero-location{font-size:10px;letter-spacing:0.26em;text-transform:uppercase;color:var(--gold);margin-top:0;margin-bottom:10px;display:flex;align-items:center;justify-content:flex-start;gap:12px}.hero-location::before{display:none}.hero-title{font-family:cofo-raffine,sans-serif;font-size:clamp(48px,11vw,190px);font-weight:400;line-height:0.92;letter-spacing:-0.01em;color:#FEF1D7;margin-bottom:0;white-space:nowrap}.hero-title em{font-style:normal;color:#FEF1D7}.hero-payoff{font-family:minion-pro-display,minion-pro,Georgia,serif;font-size:clamp(16px,1.4vw,20px);font-style:italic;font-weight:400;color:rgba(254,241,215,0.72);letter-spacing:0.02em;margin-top:-8px}.hero-sub{font-size:13px;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;margin-bottom:5px}.hero-scroll{position:absolute;bottom:48px;right:72px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted)}.hero-scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,transparent,var(--gold));animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,100%{opacity:0.4}50%{opacity:1}}@media (max-width:600px){.hero-scroll,.room-hero-scroll{display:none}.hero-meta{right:28px}}.room-hero{position:relative;height:100vh;height:100dvh;min-height:640px;overflow:hidden;display:flex;align-items:flex-end}.room-hero-bg{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(40,21,21,0.2) 0%,rgba(40,21,21,0.04) 35%,rgba(40,21,21,0.6) 70%,rgba(40,21,21,0.97) 100%);z-index:1}.room-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;transform:scale(1.06);will-change:transform}.room-hero-fallback{position:absolute;inset:0;background:radial-gradient(ellipse at 55% 35%,#281515 0%,var(--wine) 60%)}.room-hero-content{position:relative;z-index:2;width:100%;padding:0 72px 80px}.hero-animate{opacity:0;transform:translateY(18px);transition:opacity 0.9s var(--ease),transform 0.9s var(--ease)}.hero-animate.in{opacity:1;transform:translateY(0)}.hero-d1{transition-delay:0.1s}.hero-d2{transition-delay:0.28s}.hero-d3{transition-delay:0.50s}.hero-d4{transition-delay:0.74s}.room-hero-breadcrumb{font-size:10px;letter-spacing:0.26em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;display:flex;align-items:center;gap:12px}.room-hero-breadcrumb a{color:var(--gold);opacity:0.7;transition:opacity 0.3s}.room-hero-breadcrumb a:hover{opacity:1}.room-hero-breadcrumb::before{display:none}.room-hero-number{font-size:11px;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;opacity:0.8}.room-hero-title{font-family:"marauder",var(--serif);font-size:clamp(58px,8.5vw,120px);font-weight:300;line-height:0.93;letter-spacing:-0.01em;color:var(--cream);margin-bottom:28px}.room-hero-title em{font-style:italic;color:var(--gold-light)}.room-hero-meta{display:flex;align-items:center;gap:32px}.room-hero-tag{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-muted);display:flex;align-items:center;gap:8px}.room-hero-tag::before{content:'';display:block;width:4px;height:4px;border-radius:50%;background:var(--gold);opacity:0.6}.room-hero-tag:first-child::before{display:none}.room-hero-cta{margin-left:auto;font-size:11px;letter-spacing:0.2em;text-transform:uppercase;padding:14px 32px;border:1px solid rgba(254,241,215,0.5);color:var(--gold-light);position:relative;overflow:hidden;transition:color 0.4s,border-color 0.4s}.room-hero-cta::before{content:'';position:absolute;inset:0;background:var(--gold);transform:translateX(-101%);transition:transform 0.45s cubic-bezier(0.76,0,0.24,1);z-index:0}.room-hero-cta:hover{color:var(--wine);border-color:var(--gold)}.room-hero-cta:hover::before{transform:translateX(0)}.room-hero-cta span{position:relative;z-index:1}.room-hero-scroll{position:absolute;bottom:48px;right:72px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted)}.room-hero-scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,transparent,var(--gold));animation:scrollPulse 2s ease-in-out infinite}.section-kicker{font-size:10px;letter-spacing:0.26em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:14px}.section-kicker::before{display:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.8s var(--ease),transform 0.8s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:0.1s}.reveal-delay-2{transition-delay:0.2s}.reveal-delay-3{transition-delay:0.3s}.reveal-delay-4{transition-delay:0.4s}.identity,.rooms,.request{position:relative}.identity::before{display:none}.identity{background:var(--wine);padding:100px 0 100px 72px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;overflow:hidden}.identity-text h2{font-family:"minion-pro-display","minion-pro",'Cormorant Garamond',Georgia,serif;font-size:50px;font-weight:400;font-style:normal;line-height:1.08;color:var(--cream);margin-bottom:36px}.identity-text h2 em{font-family:"minion-pro-display","minion-pro",'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:400;color:var(--gold-light)}.identity-text h2 .line-wrap{display:block;overflow:hidden;padding-bottom:0.08em}.identity-text h2 .line-inner{display:block}.identity-text p{font-size:15px;line-height:1.8;color:rgba(255,255,255,0.65);margin-bottom:20px;max-width:440px}.identity-text p:last-of-type{margin-bottom:40px}.identity-link{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);transition:gap 0.3s}.identity-link:hover{gap:22px}.identity-link::after{content:'→';font-size:14px}.identity-visual{position:relative;display:flex;justify-content:flex-end;align-items:center;align-self:stretch}.identity-mask-wrap{width:calc(85% + 51px);max-width:none;aspect-ratio:1;flex-shrink:0;clip-path:polygon( 50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50% )}.identity-visual.visible .identity-mask-wrap{animation:mask-expand 1.6s cubic-bezier(0.25,0,0.05,1) 0.2s forwards}@keyframes mask-expand{to{clip-path:polygon( 38% 0%,62% 0%,62% 22%,80% 22%,80% 38%,100% 38%,100% 62%,80% 62%,80% 78%,62% 78%,62% 100%,38% 100%,38% 78%,20% 78%,20% 62%,0% 62%,0% 38%,20% 38%,20% 22%,38% 22% )}}.identity-mask-photo{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;opacity:0;transition:opacity 1s ease 0.6s}.identity-visual.visible .identity-mask-photo{opacity:1}.identity-badge{position:absolute;bottom:-20px;right:-20px;width:100px;height:100px;border-radius:50%;border:1px solid rgba(254,241,215,0.3);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);line-height:1.6;text-align:center;background:var(--wine)}.sardinian-divider{padding:22px 0;overflow:hidden}.sardinian-pattern-track{height:45px;margin:0;display:flex;align-items:center;justify-content:center;gap:28px;clip-path:inset(0 50% 0 50%)}.sardinian-flower{height:38px;width:auto;flex-shrink:0;display:block}.sardinia-map-section{background:var(--wine);padding:72px 72px;display:flex;align-items:center;justify-content:center;border-top:1px solid rgba(254,241,215,0.08);border-bottom:1px solid rgba(254,241,215,0.08)}.sardinia-map-inner{display:flex;align-items:center;gap:80px;max-width:900px;width:100%}.sardinia-map-text{flex:0 0 220px}.sardinia-map-text h3{font-family:var(--serif);font-size:clamp(28px,3vw,42px);font-weight:300;color:var(--cream);line-height:1.1;margin-bottom:16px}.sardinia-map-text h3 em{font-style:italic;color:var(--gold-light)}.sardinia-map-text p{font-size:13px;line-height:1.75;color:var(--text-muted)}.sardinia-map-svg{flex:1;max-width:360px;opacity:0.9}.rooms{background:var(--wine);padding:80px 0 0}.rooms-header{padding:0 72px 60px;display:flex;align-items:flex-end;justify-content:space-between}.rooms-header-left h2{font-family:var(--serif);font-size:clamp(42px,5vw,72px);font-weight:300;line-height:1.02;color:var(--cream)}.rooms-header-left h2 em{font-style:italic;color:var(--gold-light)}.rooms-header-right{font-size:13px;color:var(--text-muted);max-width:240px;text-align:right;line-height:1.7;padding-bottom:8px}.rooms-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:520px;overflow:hidden}.room-card{position:relative;overflow:hidden;transition:flex 0.4s var(--ease)}.room-card-inner{position:absolute;inset:0}.room-card img{width:100%;height:100%;object-fit:cover;transition:transform 0.7s var(--ease)}.room-card:hover img{transform:scale(1.04)}.room-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,21,21,0.85) 0%,rgba(40,21,21,0.10) 55%,transparent 100%);transition:opacity 0.4s}.room-card::before{content:'';position:absolute;top:0;left:0;width:1px;height:100%;background:rgba(254,241,215,0.15);z-index:3}.room-card-info{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:28px 24px;transform:translateY(36px);transition:transform 0.4s var(--ease)}.room-card:hover .room-card-info{transform:translateY(0)}.room-card-label{display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:8px}.room-card .room-card-icon,.room-card-mobile .room-card-icon{width:54px;height:54px;object-fit:contain;flex:0 0 54px;opacity:0.82;filter:brightness(0) saturate(100%) invert(92%) sepia(15%) saturate(514%) hue-rotate(331deg) brightness(108%) contrast(99%);transform:translateX(-15px);transition:opacity 0.3s var(--ease)}.room-card:hover .room-card-icon,.room-card-mobile:hover .room-card-icon{transform:translateX(-15px);opacity:1}.room-card-number{font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold);margin-bottom:0}.room-card-name{font-family:var(--serif);font-size:22px;font-weight:400;color:var(--cream);margin-bottom:10px}.room-card-detail{font-size:11px;letter-spacing:0.1em;color:var(--text-muted);opacity:0;transition:opacity 0.4s 0.1s var(--ease)}.room-card:hover .room-card-detail{opacity:1}.room-card-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity 0.4s 0.15s var(--ease)}.room-card:hover .room-card-cta{opacity:1}.rooms-slider-mobile{display:none;overflow:hidden;position:relative}.rooms-track-mobile{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 24px 32px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.rooms-track-mobile::-webkit-scrollbar{display:none}.room-card-mobile{flex:0 0 80%;height:440px;border-radius:14px;overflow:hidden;scroll-snap-align:center;position:relative;text-decoration:none;display:block}.room-card-mobile img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s var(--ease)}.room-card-mobile::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,21,21,0.9) 0%,transparent 55%)}.room-card-mobile-info{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:24px 22px}.room-card-mobile-num{font-size:9px;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold);margin-bottom:0}.room-card-mobile-name{font-family:var(--serif);font-size:28px;font-weight:300;color:var(--cream)}.rooms-mobile-counter{display:flex;align-items:center;justify-content:center;gap:14px;padding:18px 24px 0}.rooms-mobile-count{font-size:11px;letter-spacing:0.15em;color:var(--text-muted);font-variant-numeric:tabular-nums}.rooms-mobile-hint{font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold);display:inline-flex;align-items:center;gap:7px}.rooms-mobile-hint span{display:inline-block;animation:roomsHintArrow 1.6s ease-in-out infinite}@keyframes roomsHintArrow{0%,100%{transform:translateX(0);opacity:0.6}50%{transform:translateX(5px);opacity:1}}.rooms-mobile-dots{display:flex;gap:6px}.rooms-mobile-dot{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,0.2);transition:background 0.3s,width 0.3s}.rooms-mobile-dot.active{background:var(--gold);width:16px;border-radius:2px}.request{background:var(--wine);padding:clamp(20px,2.4vh,44px) clamp(28px,5vw,56px);overflow:hidden;position:relative}.request::before{display:none}.request-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:start;max-width:1100px;margin:0 auto}.request-left{display:flex;flex-direction:column}.request-left h2{font-family:var(--serif);font-size:clamp(36px,4vw,60px);font-weight:300;line-height:1.1;color:var(--cream);margin-bottom:24px}.request-left h2 em{font-style:italic;color:var(--gold-light)}.request-left p{font-size:14px;line-height:1.75;color:var(--text-muted);max-width:340px;margin-bottom:48px}.request-details{display:flex;flex-direction:column;gap:20px}.request-detail-item{display:flex;gap:16px;align-items:flex-start}.request-detail-icon{width:32px;height:32px;border:1px solid rgba(254,241,215,0.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;margin-top:2px;color:var(--gold)}.request-detail-text strong{display:block;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream);font-weight:400;margin-bottom:2px}.request-detail-text span{font-size:13px;color:var(--text-muted)}.prenota-trust{position:relative;padding:92px 72px 96px;background:radial-gradient(ellipse at 50% 0%,rgba(254,241,215,0.055),transparent 48%),var(--wine);border-top:1px solid rgba(254,241,215,0.06);border-bottom:1px solid rgba(254,241,215,0.06)}.prenota-trust-inner{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1180px;margin:0 auto;padding-bottom:0}.prenota-trust-track{position:absolute;top:37px;left:16%;right:16%;height:1px;display:flex;align-items:center;gap:0;pointer-events:none;z-index:0}.prenota-trust-track-line{flex:1;height:1px;background:linear-gradient(to right,transparent,rgba(254,241,215,0.24),transparent);transform:scaleX(0);transform-origin:left center;transition:transform 1.8s cubic-bezier(0.22,0.6,0.32,1)}.prenota-trust-track-arrow{display:none}.prenota-trust-track-arrow path{fill:none;stroke:rgba(254,241,215,0.55);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.prenota-trust-track.visible .prenota-trust-track-line{transform:scaleX(1)}.prenota-trust-track.visible .prenota-trust-track-arrow{opacity:1;transform:translateX(0);transition-delay:1.4s}.prenota-trust-item{position:relative;z-index:1;min-height:230px;padding:30px 30px 32px;border:1px solid rgba(254,241,215,0.13);border-radius:18px;background:linear-gradient(145deg,rgba(254,241,215,0.052),rgba(254,241,215,0.018));box-shadow:0 24px 70px rgba(0,0,0,0.12);transition:transform 0.45s cubic-bezier(0.16,1,0.3,1),border-color 0.35s var(--ease),background 0.35s var(--ease)}.prenota-trust-item:hover{transform:translateY(-8px);border-color:rgba(254,241,215,0.24);background:linear-gradient(145deg,rgba(254,241,215,0.075),rgba(254,241,215,0.026))}.prenota-trust-num{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;font-family:var(--serif);font-size:21px;font-style:italic;color:var(--gold-light);margin-bottom:30px;border:1px solid rgba(254,241,215,0.18);border-radius:50%;background:rgba(40,21,21,0.38)}.prenota-trust-item h3{font-family:var(--sans);font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--cream);font-weight:400;margin:0 0 16px}.prenota-trust-item p{font-size:14px;line-height:1.75;color:rgba(255,255,255,0.58);margin:0;max-width:36ch}@media (max-width:860px){.prenota-trust{padding:64px 24px 58px}.prenota-trust-inner{grid-template-columns:1fr;gap:14px;padding-bottom:0}.prenota-trust-track{display:none}.prenota-trust-item{min-height:0;padding:24px 22px 26px;border-radius:16px}.prenota-trust-num{width:48px;height:48px;margin-bottom:20px}}.request-cross{width:min(360px,92%);aspect-ratio:1;margin:0 auto;clip-path:polygon( 38% 0%,62% 0%,62% 22%,80% 22%,80% 38%,100% 38%,100% 62%,80% 62%,80% 78%,62% 78%,62% 100%,38% 100%,38% 78%,20% 78%,20% 62%,0% 62%,0% 38%,20% 38%,20% 22%,38% 22% );position:relative;overflow:hidden;opacity:0.94}.request-cross img{width:100%;height:100%;object-fit:cover;object-position:center 34%;filter:brightness(0.78) saturate(0.92)}.request-form,.availability-form{background:rgba(255,255,255,0.025);border:1px solid rgba(254,241,215,0.13);border-top:2px solid var(--gold);padding:52px 48px 48px;position:relative;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.form-row,.form-dates{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.form-field{position:relative;margin-bottom:32px}.form-field label{position:absolute;top:11px;left:0;font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.28);pointer-events:none;transform-origin:left top;transition:transform 0.25s cubic-bezier(0.4,0,0.2,1),color 0.25s;will-change:transform;white-space:nowrap}.form-field.floated label,.form-field:focus-within label{transform:translateY(-20px) scale(0.8);color:var(--gold);letter-spacing:0.24em}.form-field:has(input[type="date"]) label,.form-field:has(input[type="time"]) label,.form-field:has(select) label{transform:translateY(-20px) scale(0.8);color:rgba(254,241,215,0.55);letter-spacing:0.24em}.form-field:has(input[type="date"]):focus-within label,.form-field:has(input[type="time"]):focus-within label,.form-field:has(select):focus-within label{color:rgba(254,241,215,0.72)}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,0.1);padding:11px 0 9px;color:var(--cream);font-family:var(--sans);font-size:14px;font-weight:300;outline:none;appearance:none;-webkit-appearance:none;transition:border-color 0.3s;caret-color:var(--gold)}input[type="date"],input[type="time"],.form-field select{padding-top:18px;color:rgba(254,241,215,0.86);-webkit-text-fill-color:rgba(254,241,215,0.86);color-scheme:dark}input[type="date"]::-webkit-date-and-time-value,input[type="time"]::-webkit-date-and-time-value,input[type="date"]::-webkit-datetime-edit,input[type="time"]::-webkit-datetime-edit,input[type="date"]::-webkit-datetime-edit-fields-wrapper,input[type="time"]::-webkit-datetime-edit-fields-wrapper,input[type="date"]::-webkit-datetime-edit-text,input[type="time"]::-webkit-datetime-edit-text,input[type="date"]::-webkit-datetime-edit-month-field,input[type="date"]::-webkit-datetime-edit-day-field,input[type="date"]::-webkit-datetime-edit-year-field,input[type="time"]::-webkit-datetime-edit-hour-field,input[type="time"]::-webkit-datetime-edit-minute-field{color:rgba(254,241,215,0.86);-webkit-text-fill-color:rgba(254,241,215,0.86)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-bottom-color:rgba(254,241,215,0.55)}.form-field::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width 0.35s cubic-bezier(0.4,0,0.2,1);pointer-events:none}.form-field:focus-within::after{width:100%}.form-field input::placeholder,.form-field textarea::placeholder{color:transparent}.form-field select option{background:var(--wine);color:var(--cream)}.form-field textarea{resize:none;height:68px;line-height:1.6;padding-top:13px}input[type="date"]::-webkit-calendar-picker-indicator,input[type="time"]::-webkit-calendar-picker-indicator{filter:invert(0.5) sepia(1) hue-rotate(320deg) brightness(0.85);cursor:pointer;opacity:0.5;transition:opacity 0.2s}input[type="date"]:hover::-webkit-calendar-picker-indicator,input[type="time"]:hover::-webkit-calendar-picker-indicator{opacity:0.9}.payment-label{font-size:9px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;display:block}.payment-options{display:flex;gap:12px;margin-bottom:32px}.payment-option{flex:1;border:1px solid rgba(255,255,255,0.09);padding:15px 18px;display:flex;align-items:center;gap:11px;transition:border-color 0.25s,background 0.25s;position:relative}.payment-option:hover{border-color:rgba(254,241,215,0.3)}.payment-option:has(input:checked){border-color:rgba(254,241,215,0.55);background:rgba(254,241,215,0.05)}.payment-option input[type="radio"]{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1px solid rgba(254,241,215,0.4);border-radius:50%;flex-shrink:0;background:transparent;position:relative;transition:border-color 0.2s}.payment-option input[type="radio"]::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--gold);opacity:0;transform:scale(0.4);transition:opacity 0.2s,transform 0.2s cubic-bezier(0.34,1.56,0.64,1)}.payment-option input[type="radio"]:checked{border-color:var(--gold)}.payment-option input[type="radio"]:checked::after{opacity:1;transform:scale(1)}.payment-option span{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-muted);transition:color 0.25s}.payment-option:has(input:checked) span{color:var(--gold-light)}.form-summary{overflow:hidden;max-height:0;opacity:0;padding:0 20px;margin-bottom:0;border:1px solid transparent;background:rgba(254,241,215,0.04);transition:max-height 0.45s cubic-bezier(0.4,0,0.2,1),opacity 0.35s 0.05s,margin-bottom 0.35s,border-color 0.35s,padding 0.35s}.form-summary.visible{max-height:120px;opacity:1;padding:18px 20px;margin-bottom:28px;border-color:rgba(254,241,215,0.18)}.form-summary-row{display:flex;justify-content:space-between;align-items:baseline;font-size:13px}.form-summary-row + .form-summary-row{margin-top:12px;padding-top:12px;border-top:1px solid rgba(254,241,215,0.08)}.form-summary-label{font-size:11px;letter-spacing:0.08em;color:var(--text-muted)}.form-summary-value{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--gold-light)}.form-notice{font-size:11px;letter-spacing:0.06em;color:#d97070;margin-bottom:18px;display:none}.form-notice.visible{display:block}.form-submit{width:100%;padding:18px 24px;background:transparent;border:1px solid rgba(254,241,215,0.4);color:var(--gold-light);font-family:var(--sans);font-size:10px;letter-spacing:0.28em;text-transform:uppercase;position:relative;overflow:hidden;transition:color 0.4s,border-color 0.4s;cursor:pointer}.form-submit::before{content:'';position:absolute;inset:0;background:var(--gold);transform:translateX(-101%);transition:transform 0.45s cubic-bezier(0.76,0,0.24,1);z-index:0}.form-submit:hover{color:var(--wine);border-color:var(--gold)}.form-submit:hover::before{transform:translateX(0)}.form-submit span{position:relative;z-index:1}.form-success{margin-top:20px;font-family:var(--serif);font-size:16px;font-style:italic;color:var(--gold-light);letter-spacing:0.04em;display:none;text-align:center;line-height:1.5}.form-success.visible{display:block}.request-inner{grid-template-columns:1fr;gap:0;max-width:1040px}.booking-panel{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:stretch;border:1px solid rgba(254,241,215,0.14);background:rgba(254,241,215,0.025);border-radius:14px;overflow:hidden;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.booking-main{padding:clamp(18px,3vw,30px)}.booking-aside{border-left:1px solid rgba(254,241,215,0.14);background:rgba(254,241,215,0.045);display:flex;flex-direction:column;min-height:100%}.booking-section + .booking-section{margin-top:16px;padding-top:16px;border-top:1px solid rgba(254,241,215,0.08)}.booking-section-label{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:rgba(254,241,215,0.58);margin-bottom:11px}.booking-section-label::before{display:none}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 16px}.booking-grid.single{grid-template-columns:1fr}.booking-field label{display:block;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(254,241,215,0.58);margin-bottom:6px}.booking-field input,.booking-field select,.booking-field textarea{width:100%;min-height:46px;border:1px solid rgba(254,241,215,0.14);background:rgba(254,241,215,0.04);color:rgba(254,241,215,0.82);-webkit-text-fill-color:rgba(254,241,215,0.82);font:300 14px/1.2 var(--sans);padding:11px 14px;outline:none;border-radius:8px;transition:border-color 0.25s var(--ease),background-color 0.25s var(--ease);color-scheme:dark}.booking-field textarea{min-height:60px;resize:vertical;line-height:1.5}.booking-field{min-width:0}.booking-field input,.booking-field select,.booking-field textarea{max-width:100%}.booking-field input[type="date"],.booking-field input[type="time"]{-webkit-appearance:none;appearance:none;min-width:0}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{border-color:rgba(254,241,215,0.42);background:rgba(254,241,215,0.07)}.booking-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,rgba(254,241,215,0.72) 50%),linear-gradient(135deg,rgba(254,241,215,0.72) 50%,transparent 50%);background-position:calc(100% - 20px) 19px,calc(100% - 14px) 19px;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.booking-payment-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-payment-choice{border:1px solid rgba(254,241,215,0.14);background:rgba(254,241,215,0.04);min-height:46px;display:flex;align-items:center;gap:12px;padding:0 16px;color:rgba(254,241,215,0.82);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;border-radius:8px}.booking-payment-choice input{appearance:none;width:15px;height:15px;border-radius:50%;border:1px solid rgba(254,241,215,0.42);position:relative}.booking-payment-choice input::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--cream);opacity:0}.booking-payment-choice input:checked::after{opacity:1}.booking-room-preview{position:relative;height:118px;overflow:hidden;border-bottom:1px solid rgba(254,241,215,0.14)}.booking-room-preview img{width:100%;height:100%;object-fit:cover;filter:brightness(0.68);transition:opacity 0.22s var(--ease),transform 0.55s var(--ease)}.booking-room-preview::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,21,21,0.58),transparent 58%);pointer-events:none}.booking-room-preview-caption{position:absolute;left:24px;right:24px;bottom:22px;z-index:1}.booking-room-preview-caption span,.booking-side-label{display:block;font-size:9px;letter-spacing:0.24em;text-transform:uppercase;color:rgba(254,241,215,0.58);margin-bottom:8px}.booking-room-preview-caption strong{font-family:var(--serif);font-size:25px;font-weight:300;line-height:1;color:var(--cream)}.booking-aside-content{padding:14px 22px 0}.booking-aside-content h3{font-family:var(--serif);font-size:23px;font-weight:300;line-height:1.05;color:var(--cream);margin-bottom:9px}.booking-aside-content p{font-size:12.5px;line-height:1.5;color:rgba(254,241,215,0.58)}.booking-room-services,.booking-stay-recap{margin:10px 22px 0;padding:11px 13px;border-radius:8px}.booking-room-services{border:1px solid rgba(254,241,215,0.12);background:rgba(254,241,215,0.035)}.booking-stay-recap{border:1px solid rgba(254,241,215,0.16);background:rgba(254,241,215,0.055)}.booking-services-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.booking-services-list li{display:flex;align-items:center;gap:9px;color:rgba(254,241,215,0.82);font-size:11px;line-height:1.35}.booking-service-icon{width:18px;height:18px;flex:0 0 auto;color:var(--cream);opacity:0.82}.booking-service-icon svg,.booking-contact-action svg,.booking-legal-code svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.booking-service-icon svg{stroke-width:1.6}.booking-recap-list{display:grid;gap:7px}.booking-recap-row{display:flex;justify-content:space-between;gap:18px;font-size:12px;color:rgba(254,241,215,0.58)}.booking-recap-row strong{color:var(--cream);font-weight:400;text-align:right}.booking-recap-row.is-empty{display:none}.booking-consent-check{width:calc(100% - 44px);margin:9px 22px;display:flex;align-items:flex-start;gap:12px;color:rgba(254,241,215,0.58);font-size:11px;line-height:1.55}.booking-consent-check input{appearance:none;width:15px;height:15px;margin-top:2px;border:1px solid rgba(254,241,215,0.42);border-radius:4px;flex:0 0 auto;position:relative}.booking-consent-check input::after{content:'';position:absolute;inset:3px;background:var(--cream);opacity:0;border-radius:2px}.booking-consent-check input:checked::after{opacity:1}.booking-consent-check a{color:var(--cream);border-bottom:1px solid rgba(254,241,215,0.34)}.booking-submit{width:calc(100% - 44px);margin:0 22px;min-height:50px;border:1px solid rgba(254,241,215,0.42);background:var(--cream);color:var(--wine);font:500 10px/1 var(--sans);letter-spacing:0.28em;text-transform:uppercase;cursor:pointer;border-radius:8px;box-shadow:0 16px 34px rgba(0,0,0,0.12);transition:transform 0.28s var(--ease),box-shadow 0.28s var(--ease),background 0.28s var(--ease)}.booking-submit:hover{transform:translateY(-3px);box-shadow:0 22px 44px rgba(0,0,0,0.2);background:#fff5df}.booking-contact-actions{margin:auto 22px 16px;padding-top:12px;display:grid;gap:8px}.booking-contact-action{min-height:42px;border:1px solid rgba(254,241,215,0.18);background:rgba(254,241,215,0.035);color:var(--cream);display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:0 16px;font-size:11px;letter-spacing:0.16em;text-transform:uppercase;border-radius:8px;transition:border-color 0.25s var(--ease),background 0.25s var(--ease),transform 0.25s var(--ease)}.booking-contact-action:hover{border-color:rgba(254,241,215,0.46);background:rgba(254,241,215,0.065);transform:translateY(-2px)}.booking-contact-action svg{width:17px;height:17px;stroke-width:1.7}.booking-social-contact{margin:0 30px 24px;padding-top:34px;display:flex;justify-content:center;gap:14px}.booking-social-contact a{width:42px;height:42px;border:1px solid rgba(254,241,215,0.22);color:var(--cream);display:inline-flex;align-items:center;justify-content:center;border-radius:8px;transition:border-color 0.25s var(--ease),background 0.25s var(--ease),transform 0.25s var(--ease)}.booking-social-contact a:hover{border-color:rgba(254,241,215,0.5);background:rgba(254,241,215,0.055);transform:translateY(-2px)}.booking-social-contact svg{width:18px;height:18px;fill:currentColor}.booking-legal-codes{border-top:1px solid rgba(254,241,215,0.12);margin:0 30px 34px;padding-top:18px;display:grid;gap:9px}.booking-legal-code{border:1px solid rgba(254,241,215,0.14);padding:12px 14px;background:rgba(254,241,215,0.025);border-radius:8px;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:center}.booking-legal-code svg{width:17px;height:17px;color:var(--cream);opacity:0.82;stroke-width:1.6}.booking-legal-code span{display:block;font-size:8px;letter-spacing:0.22em;text-transform:uppercase;color:rgba(254,241,215,0.58);margin-bottom:7px}.booking-legal-code strong{display:block;color:var(--cream);font-size:11px;font-weight:400;line-height:1.25}.camere-section{background:var(--wine);padding:80px 72px 80px;position:relative}.camere-page-title{padding-top:60px;padding-bottom:64px;text-align:center}.camere-page-title em{font-style:italic;color:var(--gold)}.camere-page-title h1{font-family:var(--serif);font-size:clamp(52px,7.5vw,128px);font-weight:400;line-height:1;color:var(--cream);white-space:nowrap;margin:0}.camere-page-title > p{font-family:var(--sans);font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--text-muted);margin-top:18px}.camere-section::before{display:none}.camere-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:60px}.camere-header-left h2{font-family:var(--serif);font-size:clamp(38px,4.5vw,66px);font-weight:300;line-height:1.06;color:var(--cream)}.camere-header-left h2 em{font-style:italic;color:var(--gold-light)}.camere-header-right{font-size:13px;color:var(--text-muted);max-width:240px;text-align:right;line-height:1.7}.camere-grid-top{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-bottom:3px}.camere-grid-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.camera-card{position:relative;overflow:hidden;display:block}.camere-grid-top .camera-card-img{height:560px}.camere-grid-bottom .camera-card-img{height:420px}.camera-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.7s var(--ease)}.camera-card:hover .camera-card-img{transform:scale(1.04)}.camera-card-top{position:absolute;top:24px;left:24px;right:24px;z-index:3;display:flex;align-items:center;justify-content:space-between}.camera-badge{font-size:9px;letter-spacing:0.22em;text-transform:uppercase;color:var(--wine);background:var(--gold);padding:5px 12px}.camera-price{font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:var(--cream);opacity:0.8}.camera-vertical{position:absolute;top:50%;left:24px;transform:translateY(-50%) rotate(-90deg);transform-origin:center;font-family:var(--serif);font-size:80px;font-weight:300;color:rgba(255,255,255,0.04);letter-spacing:-0.02em;z-index:1;pointer-events:none;user-select:none}.camera-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,21,21,0.9) 0%,rgba(40,21,21,0.2) 45%,transparent 75%);z-index:2;transition:opacity 0.4s}.camera-card-info{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:32px 28px;transform:translateY(155px);transition:transform 0.55s var(--ease)}.camera-card:hover .camera-card-info{transform:translateY(0)}.camera-number{font-family:var(--sans);font-size:clamp(20px,2.2vw,30px);font-weight:300;letter-spacing:0.2em;text-transform:uppercase;color:var(--cream);margin-bottom:14px}.camera-name{font-family:var(--serif);font-size:clamp(24px,2.8vw,38px);font-weight:300;color:var(--cream);line-height:1.08;margin-bottom:14px}.camera-desc{font-size:13px;color:rgba(255,255,255,0.55);line-height:1.65;max-width:280px;margin-bottom:16px;opacity:0;transition:opacity 0.4s 0.05s var(--ease)}.camera-card:hover .camera-desc{opacity:1}.camera-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px;opacity:0;transition:opacity 0.4s 0.1s var(--ease)}.camera-card:hover .camera-pills{opacity:1}.camera-pill{font-size:9px;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(254,241,215,0.3);padding:4px 10px}.camera-cta{font-size:10px;letter-spacing:0.22em;text-transform:uppercase;color:var(--gold-light);display:inline-flex;align-items:center;gap:8px;opacity:0;transition:opacity 0.4s 0.15s var(--ease),gap 0.3s}.camera-card:hover .camera-cta{opacity:1}.camera-cta:hover{gap:14px}.faq-section{background:var(--wine);padding:0 72px 120px}.faq-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:40px;padding-top:24px;border-top:1px solid rgba(254,241,215,0.1)}.faq-title{font-family:var(--serif);font-size:clamp(32px,3.5vw,52px);font-weight:300;color:var(--cream)}.faq-title em{font-style:italic;color:var(--gold-light)}.faq-hint{font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted)}.faq-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.faq-item{border-bottom:1px solid rgba(255,255,255,0.07);overflow:hidden}.faq-q{width:100%;display:flex;align-items:center;gap:16px;padding:22px 0;background:transparent;border:0;color:var(--cream);font-family:var(--sans);font-size:14px;font-weight:300;letter-spacing:0.03em;cursor:pointer;text-align:left;transition:color 0.3s}.faq-q:hover{color:var(--gold)}.faq-icon{width:24px;height:24px;flex-shrink:0;border:1px solid rgba(254,241,215,0.3);border-radius:50%;display:grid;place-items:center;font-size:14px;color:var(--gold);transition:transform 0.4s var(--ease),background 0.3s}.faq-item.open .faq-icon{transform:rotate(45deg);background:rgba(254,241,215,0.08)}.faq-a{height:0;overflow:hidden;opacity:0}.faq-a-inner{padding:0 0 22px 40px;font-size:14px;color:var(--text-muted);line-height:1.75}.faq-a-inner b{color:var(--cream);font-weight:400}.room-identity{background:var(--wine);padding:100px 72px;display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;position:relative}.room-identity::before{display:none}.room-identity-text h2{font-family:var(--serif);font-size:clamp(34px,3.8vw,56px);font-weight:300;line-height:1.08;color:var(--cream);margin-bottom:28px}.room-identity-text h2 em{font-style:italic;color:var(--gold-light)}.room-identity-text p{font-size:14px;line-height:1.85;color:rgba(255,255,255,0.58);margin-bottom:18px;max-width:400px}.room-identity-text p:last-of-type{margin-bottom:36px}.room-identity-link{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);transition:gap 0.3s}.room-identity-link:hover{gap:22px}.room-identity-link::after{content:'→';font-size:14px}.room-amenities .section-kicker{margin-bottom:28px}.amenities-grid{display:flex;flex-direction:column}.amenity-item{display:flex;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid rgba(254,241,215,0.08);transition:gap 0.3s var(--ease);cursor:default}.amenity-item:first-child{border-top:1px solid rgba(254,241,215,0.08)}.amenity-item:hover{gap:24px}.amenity-icon{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;opacity:0.7;transition:opacity 0.3s,transform 0.3s}.amenity-item:hover .amenity-icon{opacity:1;transform:scale(1.3)}.amenity-label{font-size:13px;letter-spacing:0.06em;color:rgba(255,255,255,0.65);font-weight:300;transition:color 0.3s}.amenity-item:hover .amenity-label{color:var(--cream)}.room-interlude{background:var(--wine);border-top:1px solid rgba(254,241,215,0.07);border-bottom:1px solid rgba(254,241,215,0.07);padding:96px 72px}.interlude-quote{max-width:680px}.interlude-quote blockquote{font-family:var(--serif);font-size:clamp(26px,3.2vw,46px);font-weight:300;font-style:italic;line-height:1.3;color:var(--cream);padding-left:32px;position:relative}.interlude-quote blockquote::before{content:'';position:absolute;left:0;top:6px;width:2px;height:calc(100% - 12px);background:var(--gold);opacity:0.45}.interlude-quote cite{display:block;margin-top:28px;padding-left:32px;font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--text-muted);font-style:normal}.room-gallery{background:var(--wine);border-top:1px solid rgba(254,241,215,0.06)}.room-gallery-header{padding:80px 72px 48px}.room-gallery-header h2{font-family:var(--serif);font-size:clamp(36px,4vw,56px);font-weight:300;color:var(--cream);line-height:1.05}.room-gallery-header h2 em{font-style:italic;color:var(--gold-light)}.gallery-editorial{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0 72px 80px}.gallery-cell{position:relative;overflow:hidden;cursor:zoom-in;aspect-ratio:3 / 2}.gallery-cell img{width:100%;height:100%;object-fit:cover;transition:transform 0.7s var(--ease),opacity 0.5s;opacity:0}.gallery-cell img.loaded{opacity:1}.gallery-cell:hover img{transform:scale(1.04)}.gallery-cell::after{content:'';position:absolute;inset:0;background:rgba(40,21,21,0.3);opacity:0;transition:opacity 0.35s;z-index:1;pointer-events:none}.gallery-cell:hover::after{opacity:1}.gallery-main{grid-column:1 / -1;aspect-ratio:16 / 9}.gallery-cell:last-child:nth-child(even){grid-column:1 / -1;aspect-ratio:16 / 9}.gallery-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(14,3,3,0.97);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.4s var(--ease)}.gallery-lightbox.open{opacity:1;pointer-events:all}.gallery-lightbox-img{max-width:86vw;max-height:86vh;object-fit:contain;transform:scale(0.96);transition:transform 0.4s var(--ease)}.gallery-lightbox.open .gallery-lightbox-img{transform:scale(1)}.gallery-lightbox-close{position:absolute;top:32px;right:40px;font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-muted);background:none;border:none;cursor:pointer;transition:color 0.3s;font-family:var(--sans)}.gallery-lightbox-close:hover{color:var(--cream)}.gallery-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:none;border:1px solid rgba(254,241,215,0.25);width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px;cursor:pointer;transition:border-color 0.3s,background 0.3s}.gallery-lightbox-nav:hover{border-color:var(--gold);background:rgba(254,241,215,0.08)}.gallery-lightbox-prev{left:32px}.gallery-lightbox-next{right:32px}.gallery-mobile{display:none;overflow:hidden}.gallery-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 28px 28px;scrollbar-width:none}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{flex:0 0 85%;aspect-ratio:3 / 2;scroll-snap-align:center;overflow:hidden}.gallery-slide img{width:100%;height:100%;object-fit:cover}.gallery-count{padding:0 28px 52px;display:flex;align-items:center;justify-content:space-between}.gallery-count-text{font-size:11px;letter-spacing:0.15em;color:var(--text-muted)}.gallery-dots{display:flex;gap:6px}.gallery-dot{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,0.2);transition:background 0.3s,width 0.3s}.gallery-dot.active{background:var(--gold);width:16px;border-radius:2px}.room-faq-section{position:relative;background:var(--wine);padding:100px 72px;border-top:1px solid rgba(254,241,215,0.06)}.room-faq-header{margin-bottom:64px}.room-faq-header h2{font-family:var(--serif);font-size:clamp(36px,4vw,56px);font-weight:300;line-height:1.1;color:var(--cream);margin:8px 0 0}.room-faq-header h2 em{font-style:italic;color:var(--gold-light)}.room-faq-section::before{display:none}.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:0 80px}.faq-list .faq-item{border-top:1px solid rgba(254,241,215,0.1);overflow:hidden}.faq-list .faq-item:last-child{border-bottom:1px solid rgba(254,241,215,0.1)}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:22px 0;cursor:pointer;gap:20px;font-size:13px;letter-spacing:0.04em;color:var(--cream);font-weight:400;transition:color 0.3s;background:none;border:none;width:100%;text-align:left}.faq-question:hover{color:var(--gold-light)}.faq-toggle{width:22px;height:22px;border:1px solid rgba(254,241,215,0.25);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gold);font-size:14px;transition:transform 0.35s var(--ease),border-color 0.3s;line-height:1}.faq-list .faq-item.open .faq-toggle{transform:rotate(45deg);border-color:rgba(254,241,215,0.6)}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.45s cubic-bezier(0.4,0,0.2,1)}.faq-list .faq-item.open .faq-answer{max-height:200px}.faq-answer p{font-size:13px;line-height:1.8;color:var(--text-muted);padding:0 0 24px;max-width:460px}.room-availability{position:relative;background:var(--wine);padding:120px 72px;overflow:hidden;border-top:1px solid rgba(254,241,215,0.06)}.room-availability::before{display:none}.availability-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:start;max-width:1100px;margin:0 auto}.availability-inner.room-booking-inner{display:block;max-width:1280px}.availability-left h2{font-family:var(--serif);font-size:clamp(36px,4vw,60px);font-weight:300;line-height:1.1;color:var(--cream);margin-bottom:24px}.availability-left h2 em{font-style:italic;color:var(--gold-light)}.availability-left p{font-size:14px;line-height:1.75;color:var(--text-muted);max-width:320px;margin-bottom:48px}.availability-details{display:flex;flex-direction:column;gap:20px}.availability-detail{display:flex;gap:16px;align-items:flex-start}.availability-detail-icon{width:32px;height:32px;border:1px solid rgba(254,241,215,0.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;margin-top:2px;color:var(--gold)}.availability-detail-text strong{display:block;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream);font-weight:400;margin-bottom:2px}.availability-detail-text span{font-size:13px;color:var(--text-muted)}.room-cta-banner{background:var(--wine);border-top:1px solid rgba(254,241,215,0.07);padding:80px 72px;display:flex;align-items:center;justify-content:space-between;gap:40px}.room-cta-banner-left p{font-size:10px;letter-spacing:0.26em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;display:flex;align-items:center;gap:14px}.room-cta-banner-left p::before{display:none}.room-cta-banner-left h2{font-family:var(--serif);font-size:clamp(30px,3.8vw,54px);font-weight:300;line-height:1.06;color:var(--cream)}.room-cta-banner-left h2 em{font-style:italic;color:var(--gold-light)}.room-cta-banner-right{display:flex;flex-direction:column;align-items:flex-end;gap:20px;flex-shrink:0}.room-cta-phone{font-family:var(--serif);font-size:clamp(24px,3vw,40px);font-weight:300;color:var(--cream);letter-spacing:0.02em;transition:color 0.3s}.room-cta-phone:hover{color:var(--gold-light)}.room-cta-btn{font-size:10px;letter-spacing:0.24em;text-transform:uppercase;padding:14px 32px;border:1px solid rgba(254,241,215,0.4);color:var(--gold-light);position:relative;overflow:hidden;transition:color 0.4s,border-color 0.4s}.room-cta-btn::before{content:'';position:absolute;inset:0;background:var(--gold);transform:translateX(-101%);transition:transform 0.45s cubic-bezier(0.76,0,0.24,1);z-index:0}.room-cta-btn:hover{color:var(--wine);border-color:var(--gold)}.room-cta-btn:hover::before{transform:translateX(0)}.room-cta-btn span{position:relative;z-index:1}.other-rooms{background:var(--wine);padding:80px 0 0;border-top:1px solid rgba(254,241,215,0.06)}.other-rooms-header{padding:0 72px 52px;display:flex;align-items:flex-end;justify-content:space-between}.other-rooms-header-left h2{font-family:var(--serif);font-size:clamp(36px,4vw,60px);font-weight:300;line-height:1.02;color:var(--cream)}.other-rooms-header-left h2 em{font-style:italic;color:var(--gold-light)}.other-rooms-link{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:10px;transition:gap 0.3s;padding-bottom:8px}.other-rooms-link:hover{gap:18px}.other-rooms-link::after{content:'→';font-size:14px}.other-rooms-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:440px;overflow:hidden}.other-room-card{position:relative;overflow:hidden;display:block}.other-room-card img{width:100%;height:100%;object-fit:cover;transition:transform 0.7s var(--ease)}.other-room-card:hover img{transform:scale(1.04)}.other-room-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,21,21,0.85) 0%,rgba(40,21,21,0.10) 55%,transparent 100%)}.other-room-card::before{content:'';position:absolute;top:0;left:0;width:1px;height:100%;background:rgba(254,241,215,0.15);z-index:3}.other-room-info{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:28px 24px;transform:translateY(36px);transition:transform 0.4s var(--ease)}.other-room-card:hover .other-room-info{transform:translateY(0)}.other-room-number{font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}.other-room-name{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--cream);margin-bottom:10px}.other-room-cta{font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);opacity:0;transition:opacity 0.4s 0.15s var(--ease)}.other-room-card:hover .other-room-cta{opacity:1}.other-rooms-mobile{display:none;overflow:hidden}.other-rooms-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 24px 32px;scrollbar-width:none}.other-rooms-track::-webkit-scrollbar{display:none}.other-room-card-mobile{flex:0 0 80%;height:380px;border-radius:14px;overflow:hidden;scroll-snap-align:center;position:relative;display:block}.other-room-card-mobile img{width:100%;height:100%;object-fit:cover}.other-room-card-mobile::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(40,21,21,0.9) 0%,transparent 55%)}.other-room-card-mobile-info{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:24px 22px}.other-room-card-mobile-num{font-size:9px;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}.other-room-card-mobile-name{font-family:var(--serif);font-size:26px;font-weight:300;color:var(--cream)}.contact-section{background:var(--wine);padding:120px 72px 100px;position:relative}.contact-section::before{display:none}.contact-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:start;max-width:1100px;margin:0 auto}.contact-left h2{font-family:var(--serif);font-size:clamp(38px,4.5vw,66px);font-weight:300;line-height:1.08;color:var(--cream);margin-bottom:32px}.contact-left h2 em{font-style:italic;color:var(--gold-light)}.contact-left p{font-size:14px;line-height:1.8;color:rgba(255,255,255,0.65);max-width:360px;margin-bottom:52px}.contact-details{display:flex;flex-direction:column;gap:28px}.contact-detail{display:flex;gap:20px;align-items:flex-start}.contact-detail-icon{width:40px;height:40px;border:1px solid rgba(254,241,215,0.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;color:var(--gold)}.contact-detail-body strong{display:block;font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--cream);font-weight:400;margin-bottom:4px}.contact-detail-body a,.contact-detail-body span{font-size:14px;color:var(--text-muted);transition:color 0.3s;line-height:1.7}.contact-detail-body a:hover{color:var(--gold-light)}.contact-info-strip{background:var(--wine);border-top:1px solid rgba(254,241,215,0.08);border-bottom:1px solid rgba(254,241,215,0.08);padding:64px 72px}.contact-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;max-width:900px}.contact-info-item{}.contact-info-label{font-size:9px;letter-spacing:0.28em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}.contact-info-value{font-family:var(--serif);font-size:clamp(18px,2vw,26px);font-weight:300;color:var(--cream);line-height:1.3}.contact-info-sub{font-size:12px;color:var(--text-muted);margin-top:6px;line-height:1.6}footer{background:var(--wine);border-top:1px solid rgba(254,241,215,0.1);padding:80px 72px 40px}.footer-upper{display:grid;grid-template-columns:1.2fr 0.85fr 1.15fr 0.9fr 0.85fr 0.85fr;align-items:baseline;gap:36px;max-width:1500px;margin-right:auto;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,0.06);margin-bottom:40px}.footer-brand h3{font-family:cofo-raffine,sans-serif;font-size:28px;font-weight:400;color:var(--cream);margin-bottom:14px;line-height:1.1}.footer-brand h3 em{font-style:normal;color:var(--cream)}.footer-brand p{font-size:13px;color:var(--text-muted);line-height:1.7;max-width:220px}.footer-col h4{font-size:9px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}.footer-col ul li a{font-size:13px;color:var(--text-muted);transition:color 0.3s}.footer-col ul li a:hover{color:var(--cream)}.footer-col .footer-contact-bubbles{gap:10px;align-items:flex-start}.footer-col .footer-contact-bubbles a{display:inline-block;color:rgba(254,241,215,0.62);line-height:1.5;transition:color 0.3s}.footer-col .footer-contact-bubbles a:hover{color:var(--cream)}.footer-col .footer-contact-bubbles .footer-bubble-static{display:inline-block;color:rgba(254,241,215,0.62);line-height:1.5;font-size:13px}.footer-col address{font-style:normal;font-size:13px;color:var(--text-muted);line-height:1.7}.footer-col address strong{display:block;color:var(--cream);font-weight:400;margin-bottom:4px}.footer-legal-codes{margin-top:12px;font-size:13px;color:rgba(254,241,215,0.62);letter-spacing:0.05em;display:flex;flex-direction:column;gap:4px}.footer-legal-codes span{display:block;line-height:1.5;white-space:nowrap}.footer-socials{display:flex;gap:12px;margin-top:20px}.footer-social{width:36px;height:36px;border:1px solid rgba(255,255,255,0.12);border-radius:999px;background:rgba(254,241,215,0.025);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:14px;transition:border-color 0.3s,color 0.3s,background 0.3s;text-decoration:none}.footer-social:hover{border-color:rgba(254,241,215,0.42);color:var(--gold);background:rgba(254,241,215,0.055)}.footer-lower{display:flex;align-items:center;justify-content:space-between;max-width:1500px;margin-right:auto;font-size:11px;color:rgba(255,255,255,0.22);letter-spacing:0.06em}.footer-lower a{color:rgba(255,255,255,0.22);transition:color 0.3s}.footer-lower a:hover{color:var(--gold)}@media (max-width:1100px){nav,nav.scrolled{padding-left:36px;padding-right:36px}.hero-content{padding:0 48px}.hero-meta{left:48px}.hero-scroll{right:48px}.identity{padding:80px 0 80px 48px;gap:40px}.identity::before{left:48px}.sardinia-map-section{padding:52px 48px}.rooms-header{padding:0 48px 48px}.rooms::before{left:48px}.request{padding:100px 48px}.request::before{left:48px}.request-inner{grid-template-columns:1fr;gap:56px}.request-left p{max-width:520px}.camere-section{padding:80px 48px}.camere-section::before{left:48px}.faq-section{padding:0 48px 80px}.room-hero-content{padding:0 48px 72px}.room-hero-scroll{right:48px}.room-identity{padding:100px 48px 80px;gap:60px}.room-identity::before{left:48px}.room-interlude{padding:80px 48px}.room-gallery-header{padding:60px 48px 40px}.gallery-editorial{padding:0 48px 64px}.room-faq-section{padding:80px 48px}.room-faq-section::before{left:48px}.room-availability{padding:100px 48px}.room-availability::before{left:48px}.room-cta-banner{padding:60px 48px}.other-rooms-header{padding:0 48px 48px}.contact-section{padding:100px 48px 80px}.contact-section::before{left:48px}.contact-info-strip{padding:52px 48px}footer{padding:60px 48px 32px}.footer-upper{grid-template-columns:1fr 1fr 1fr;gap:32px}}@media (max-width:860px){nav{padding:calc(22px + env(safe-area-inset-top,0px)) 24px 22px}nav.scrolled{padding:calc(14px + env(safe-area-inset-top,0px)) 24px 14px}.nav-links,.nav-cta{display:none}.nav-hamburger{display:flex}.sardinia-map-section{padding:52px 28px}.sardinia-map-inner{flex-direction:column;gap:40px;text-align:center}.sardinia-map-text{flex:none}.sardinia-map-svg{max-width:240px}.hero-content{padding:0 28px}.hero-meta{left:28px;bottom:36px}.hero-scroll{right:28px;bottom:36px}.hero-sub{white-space:normal;font-size:11px}.identity{grid-template-columns:1fr;padding:80px 28px;gap:52px;overflow:hidden}.identity::before{left:28px}.identity-visual{order:-1;justify-content:center;align-self:auto;margin:0 -28px}.identity-mask-wrap{width:100%}.rooms{padding-top:80px}.rooms::before{left:28px}.rooms-header{flex-direction:column;align-items:flex-start;gap:16px;padding:0 28px 40px}.rooms-header-right{text-align:left;max-width:100%}.rooms-grid{display:none}.rooms-slider-mobile{display:block}.request{padding:80px 28px}.request::before{left:28px}.request-inner{grid-template-columns:1fr;gap:60px}.request-form{padding:36px 24px 32px}.form-row,.form-dates{grid-template-columns:1fr}.payment-options{flex-direction:column}.booking-panel{grid-template-columns:1fr}.booking-aside{border-left:0;border-top:1px solid rgba(254,241,215,0.14)}.booking-grid,.booking-payment-row,.booking-services-list{grid-template-columns:1fr}.booking-room-preview{height:260px}.booking-main{padding:36px 24px}.booking-aside{min-height:0}.booking-contact-actions{margin-top:28px}.booking-aside-content,.booking-room-services,.booking-stay-recap,.booking-contact-actions,.booking-social-contact,.booking-legal-codes{margin-left:24px;margin-right:24px}.booking-aside-content{padding-left:0;padding-right:0}.booking-consent-check,.booking-submit{width:calc(100% - 48px);margin-left:24px;margin-right:24px}.camere-section{padding:72px 20px 60px}.camere-section::before{left:20px}.camere-header{flex-direction:column;align-items:flex-start;gap:16px}.camere-header-right{text-align:left;max-width:100%}.camere-grid-top{grid-template-columns:1fr}.camere-grid-bottom{grid-template-columns:1fr}.camere-grid-top .camera-card-img{height:380px}.camere-grid-bottom .camera-card-img{height:320px}.camera-desc{opacity:1}.camera-pills{opacity:1}.camera-cta{opacity:1}.camera-card-info{transform:translateY(0)}.faq-section{padding:0 24px 80px}.faq-cols{grid-template-columns:1fr}.room-hero-content{padding:0 28px 64px}.room-hero-scroll{right:28px;bottom:36px}.room-hero-meta{flex-wrap:wrap;gap:16px}.room-hero-cta{margin-left:0}.room-identity{grid-template-columns:1fr;padding:80px 28px;gap:52px}.room-identity::before{left:28px}.room-interlude{padding:64px 28px}.room-gallery-header{padding:52px 28px 36px}.gallery-editorial{display:none}.gallery-mobile{display:block}.room-faq-section{padding:80px 28px}.room-faq-section::before{left:28px}.faq-list{grid-template-columns:1fr;gap:0}.room-availability{padding:80px 28px}.room-availability::before{left:28px}.availability-inner{grid-template-columns:1fr;gap:60px}.availability-form{padding:36px 24px 32px}.room-cta-banner{flex-direction:column;align-items:flex-start;padding:60px 28px}.room-cta-banner-right{align-items:flex-start}.other-rooms-header{flex-direction:column;align-items:flex-start;gap:16px;padding:0 28px 40px}.other-rooms-grid{display:none}.other-rooms-mobile{display:block}.gallery-lightbox-nav{display:none}.contact-section{padding:80px 28px 60px}.contact-section::before{left:28px}.contact-inner{grid-template-columns:1fr;gap:60px}.contact-info-strip{padding:48px 28px}.contact-info-grid{grid-template-columns:1fr;gap:36px}footer{padding:52px 28px 28px}.footer-upper{grid-template-columns:1fr;gap:36px}.footer-lower{flex-direction:column;gap:12px;text-align:center}}.legal-hero{position:relative;padding:200px 60px 80px;background:var(--wine);color:var(--cream);border-bottom:1px solid rgba(254,241,215,0.12);overflow:hidden}.legal-hero::before{display:none}.legal-hero-inner{position:relative;max-width:960px;margin:0 auto}.legal-hero .section-kicker{color:var(--cream);opacity:.7}.legal-hero h1{font-family:'minion-pro-display','Cormorant Garamond',serif;font-weight:400;font-size:clamp(3rem,6vw,5rem);line-height:1.05;letter-spacing:-0.01em;margin:14px 0 18px}.legal-hero h1 em{font-style:italic;color:var(--cream);opacity:.9}.legal-hero p.legal-hero-sub{font-family:'articulat-cf',sans-serif;font-size:1.05rem;line-height:1.6;max-width:560px;opacity:.78}.legal-hero .legal-updated{display:inline-block;margin-top:24px;font-family:'articulat-cf',sans-serif;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;opacity:.55}.legal-content{background:var(--wine);color:var(--cream);padding:90px 60px 120px}.legal-content-inner{max-width:820px;margin:0 auto;font-family:'articulat-cf',sans-serif;font-size:1.02rem;line-height:1.75}.legal-content h2{font-family:'minion-pro-display','Cormorant Garamond',serif;font-weight:400;font-size:clamp(1.8rem,3vw,2.3rem);line-height:1.15;margin:54px 0 18px;letter-spacing:-0.005em}.legal-content h2:first-child{margin-top:0}.legal-content h2 em{font-style:italic;opacity:.85}.legal-content h3{font-family:'articulat-cf',sans-serif;font-weight:500;font-size:1.02rem;letter-spacing:.14em;text-transform:uppercase;margin:32px 0 10px;opacity:.8}.legal-content p{margin:0 0 16px}.legal-content ul,.legal-content ol{margin:0 0 20px;padding-left:22px}.legal-content li{margin:0 0 8px}.legal-content a{color:var(--gold-light);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:opacity .2s}.legal-content a:hover{opacity:.6}.legal-content strong{font-weight:600;color:var(--cream)}.legal-content hr{border:0;border-top:1px solid rgba(254,241,215,0.15);margin:48px 0}.legal-content .legal-note{display:block;padding:22px 26px;margin:24px 0;border-left:2px solid var(--gold);background:rgba(254,241,215,0.04);font-size:.95rem;line-height:1.65}.legal-content .legal-meta{margin-top:60px;padding-top:24px;border-top:1px solid rgba(254,241,215,0.15);font-size:.88rem;opacity:.7}.legal-content .legal-meta p{margin:0 0 6px}@media (max-width:860px){.legal-hero{padding:150px 24px 60px}.legal-content{padding:60px 24px 80px}}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:0}.service-item{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid rgba(254,241,215,0.1);border-radius:10px;background:rgba(254,241,215,0.04);transition:background 0.3s var(--ease),border-color 0.3s var(--ease)}.service-item:hover{background:rgba(254,241,215,0.08);border-color:rgba(254,241,215,0.2)}.service-icon{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid rgba(254,241,215,0.14);color:var(--gold)}.service-icon img{width:26px;height:26px;object-fit:contain;opacity:0.92}.service-icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.service-label{font-family:var(--sans);font-size:13px;font-weight:400;color:rgba(255,255,255,0.72);letter-spacing:0.03em;line-height:1.3}@media (max-width:1100px){.services-grid{grid-template-columns:1fr 1fr;gap:8px}}@media (max-width:860px){.services-grid{grid-template-columns:1fr 1fr;gap:8px}.service-item{padding:12px 14px;gap:12px}.service-icon{width:36px;height:36px}.service-icon svg{width:18px;height:18px}.service-label{font-size:12px}}.all-rooms-strip{background:var(--wine);padding-top:80px;border-top:1px solid rgba(254,241,215,0.06)}.all-rooms-strip-header{display:flex;align-items:flex-end;justify-content:space-between;padding:0 72px 48px;flex-wrap:wrap;gap:16px}.all-rooms-strip-header h2{font-family:var(--serif);font-size:clamp(34px,3.8vw,56px);font-weight:300;line-height:1.08;color:var(--cream);margin:8px 0 0}.all-rooms-strip-header h2 em{font-style:italic;color:var(--gold-light)}.all-rooms-view-all{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);text-decoration:none;opacity:0.65;transition:opacity 0.3s,gap 0.3s var(--ease);white-space:nowrap;padding-bottom:4px}.all-rooms-view-all::after{content:'→';font-size:14px}.all-rooms-view-all:hover{opacity:1;gap:16px}.all-rooms-track{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:340px}.all-rooms-card[aria-current="page"]{display:none}.all-rooms-card{position:relative;overflow:hidden;display:block;text-decoration:none;cursor:pointer}.all-rooms-card img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(0.45);transition:filter 0.5s var(--ease),transform 0.6s var(--ease)}.all-rooms-card:hover img{filter:brightness(0.62);transform:scale(1.05)}.all-rooms-card[aria-current] img{filter:brightness(0.55)}.all-rooms-card-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:20px 18px 22px;pointer-events:none;background:linear-gradient(to top,rgba(40,21,21,0.55) 0%,transparent 55%)}.all-rooms-card-icon{margin-bottom:10px;color:rgba(254,241,215,0.65)}.all-rooms-card-icon svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}img.all-rooms-card-icon{width:32px;height:32px;object-fit:contain;display:block;opacity:0.85;filter:brightness(0) saturate(100%) invert(92%) sepia(15%) saturate(514%) hue-rotate(331deg) brightness(108%) contrast(99%)}.all-rooms-card-name{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:0.2em;color:rgba(255,255,255,0.9);text-transform:uppercase;line-height:1}.all-rooms-card-bar{width:20px;height:2px;background:var(--gold);margin-top:10px;opacity:0;transition:opacity 0.3s,width 0.4s var(--ease)}.all-rooms-card[aria-current] .all-rooms-card-bar,.all-rooms-card:hover .all-rooms-card-bar{opacity:1}.all-rooms-card[aria-current] .all-rooms-card-icon{color:rgba(254,241,215,0.9)}@media (max-width:1100px){.all-rooms-strip-header{padding:0 48px 40px}.all-rooms-track{height:280px}}@media (max-width:860px){.all-rooms-strip{padding-top:60px}.all-rooms-strip-header{padding:0 28px 36px;flex-direction:column;align-items:flex-start;gap:14px}.all-rooms-track{grid-auto-flow:column;grid-auto-columns:160px;height:240px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.all-rooms-track::-webkit-scrollbar{display:none}.all-rooms-card{scroll-snap-align:start}}.camere-intro{max-width:760px;margin:0 auto 72px;padding:0 72px;text-align:center}.camere-intro h2{font-family:var(--serif);font-size:clamp(28px,3.2vw,44px);font-weight:400;line-height:1.15;color:var(--cream);margin:0 0 22px}.camere-intro p{font-family:var(--sans);font-size:15px;line-height:1.75;color:var(--text-muted);margin:0}.prenota-trust-header{max-width:760px;margin:0 auto 56px;padding:0 72px;text-align:center}.prenota-trust-header .section-kicker,.prenota-trust-header p:first-child{font-family:var(--sans);font-size:10px;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold);margin:0 0 16px}.prenota-trust-header h2{font-family:var(--serif);font-size:clamp(28px,3.2vw,44px);font-weight:400;line-height:1.15;color:var(--cream);margin:0}@media (max-width:860px){.camere-intro,.prenota-trust-header{padding:0 28px}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}a[aria-label="Trustpilot"][href="#"]{display:none}.camere-section{padding:0 0 96px}.camere-hero{position:relative;text-align:center;max-width:720px;margin:0 auto;padding:146px 24px 0}.camere-hero > *{position:relative;z-index:1}.camere-hero .section-kicker{justify-content:center;margin-bottom:22px}.camere-hero h1{font-family:var(--serif);font-size:clamp(46px,6.5vw,92px);font-weight:400;line-height:1.02;color:var(--cream);margin:0 0 24px}.camere-hero h1 em{font-style:italic;color:var(--gold-light)}.camere-lead{font-family:var(--sans);font-size:15px;line-height:1.75;color:var(--text-muted);max-width:1040px;margin:0 auto;white-space:nowrap}.camere-filters{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:1280px;margin:0 auto;padding:44px 40px 60px}.camere-filter{appearance:none;background:transparent;border:1px solid rgba(254,241,215,0.20);color:var(--cream);font-family:var(--sans);font-size:11px;font-weight:400;letter-spacing:0.18em;text-transform:uppercase;padding:11px 24px;cursor:pointer;border-radius:999px;transition:background 0.3s var(--ease),color 0.3s var(--ease),border-color 0.3s var(--ease);display:inline-flex;align-items:center;gap:9px;line-height:1}.camere-filter span{font-size:10px;letter-spacing:0;opacity:0.5;font-variant-numeric:tabular-nums}.camere-filter:hover{border-color:rgba(254,241,215,0.5)}.camere-filter.is-active{background:var(--cream);color:var(--wine);border-color:var(--cream)}.camere-filter.is-active span{opacity:0.55}.camere-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 36px;max-width:1280px;margin:0 auto;padding:0 40px}.cat-card{display:flex;flex-direction:column;background:rgba(254,241,215,0.022);border:1px solid rgba(254,241,215,0.10);border-radius:16px;overflow:hidden;transition:border-color 0.45s var(--ease),background 0.45s var(--ease),transform 0.45s var(--ease)}.cat-card.is-hidden{display:none}.cat-card.is-leaving{opacity:0;transform:translateY(10px);transition:opacity 0.22s var(--ease),transform 0.22s var(--ease);pointer-events:none}@keyframes catCardIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.cat-card.is-entering{animation:catCardIn 0.5s var(--ease) both}@media (prefers-reduced-motion:reduce){.cat-card.is-leaving,.cat-card.is-entering{transition:none;animation:none}}.cat-card:hover{border-color:rgba(254,241,215,0.28);background:rgba(254,241,215,0.045);transform:translateY(-6px)}.cat-card-media{position:relative;display:block;overflow:hidden;aspect-ratio:5 / 4;background:rgba(0,0,0,0.25);border-radius:15px 15px 0 0}.cat-card-media img{width:100%;height:100%;object-fit:cover;object-position:center 60%;display:block;transition:transform 0.9s var(--ease)}.cat-card:hover .cat-card-media img{transform:scale(1.05)}.cat-card-badge{position:absolute;top:16px;left:16px;font-family:var(--sans);font-size:9px;letter-spacing:0.2em;text-transform:uppercase;color:var(--wine);background:var(--cream);padding:6px 13px;border-radius:999px}.cat-card-body{display:flex;flex-direction:column;flex:1;padding:26px 26px 28px}.cat-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.cat-card-title{font-family:var(--serif);font-size:29px;font-weight:400;color:var(--cream);margin:0;line-height:1}.cat-card-price{font-family:var(--sans);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(254,241,215,0.5);white-space:nowrap}.cat-card-price strong{color:var(--cream);font-weight:500;font-size:13px;letter-spacing:0.02em}.cat-card-desc{font-family:var(--sans);font-size:13.5px;line-height:1.65;color:rgba(255,255,255,0.6);margin:14px 0 0}.cat-card-feats{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 22px;padding:0}.cat-card-feats li{font-size:9px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(254,241,215,0.78);border:1px solid rgba(254,241,215,0.2);padding:5px 12px;border-radius:999px}.cat-card-link{margin-top:auto;padding-top:20px;border-top:1px solid rgba(254,241,215,0.1);font-family:var(--sans);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--cream);display:inline-flex;align-items:center;justify-content:space-between;gap:8px}.cat-card-link span{transition:transform 0.35s var(--ease)}.cat-card:hover .cat-card-link span{transform:translateX(6px)}.camere-empty{text-align:center;padding:80px 40px;font-family:var(--sans);color:var(--text-muted);font-size:14px;letter-spacing:0.06em}@media (max-width:1024px){.camere-grid{grid-template-columns:repeat(2,1fr);gap:48px 28px}}@media (max-width:860px){.camere-hero{padding:128px 20px 0}.camere-lead{white-space:normal;max-width:560px}.camere-filters{padding:36px 20px 48px;gap:8px}.camere-filter{padding:10px 18px;letter-spacing:0.14em}.camere-grid{padding:0 24px}}@media (max-width:600px){.camere-grid{grid-template-columns:1fr;gap:44px;max-width:440px}}@media (min-width:861px){.request:has(.booking-panel){padding-left:20px;padding-right:20px}.request-inner:has(.booking-panel){max-width:2100px !important;width:100%}}@media (min-width:861px){.booking-main{padding:clamp(12px,2vw,20px)}.booking-section + .booking-section{margin-top:11px;padding-top:11px}.booking-section-label{margin-bottom:7px}.booking-field label{margin-bottom:4px}.booking-grid{gap:9px 14px}.booking-field input,.booking-field select,.booking-field textarea{min-height:40px;padding:8px 12px;font-size:13px}.booking-field textarea{min-height:44px}.booking-field select{background-position:calc(100% - 18px) 16px,calc(100% - 12px) 16px}.booking-payment-choice{min-height:40px}.booking-room-preview{height:245px}.booking-aside-content{display:none}.booking-aside-content h3{font-size:19px;margin-bottom:6px}.booking-aside-content p{font-size:11.5px;line-height:1.4}.booking-room-services,.booking-stay-recap{margin:0 18px;padding:12px 0;border-left:0;border-right:0;border-bottom:0;border-radius:0;background:transparent}.booking-room-services{display:none}.booking-stay-recap{border-top:1px solid rgba(254,241,215,0.1)}.booking-services-list{gap:6px 12px}.booking-services-list li{font-size:10.5px}.booking-recap-list{gap:4px}.booking-recap-row{font-size:11px}.booking-consent-check{width:calc(100% - 36px);margin:6px 18px;font-size:10.5px}.booking-submit{width:calc(100% - 36px);margin:0 18px 12px;min-height:44px}.booking-contact-actions{margin:auto 18px 10px;padding-top:8px;gap:6px}.booking-contact-action{min-height:36px;font-size:10.5px}}@media (min-width:861px){.bk-cols{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;align-items:start}.bk-col{display:flex;flex-direction:column;gap:18px}.booking-section + .booking-section{margin-top:0;padding-top:0;border-top:none}}@media (min-width:861px){.booking-panel{grid-template-columns:minmax(0,1fr) clamp(380px,28vw,460px)}.booking-formfoot{grid-column:1 / -1;display:grid;grid-template-columns:minmax(430px,560px) minmax(245px,330px) auto;gap:10px;align-items:center;justify-content:start;margin-top:12px;padding-top:13px;border-top:1px solid rgba(254,241,215,0.08)}.booking-formfoot > *{margin:0 !important;width:auto !important;padding-top:0 !important}.booking-formfoot .booking-contact-actions{display:grid;grid-template-columns:150px minmax(0,1fr);gap:6px;min-width:0}.booking-formfoot .booking-contact-action{min-height:32px;border-color:rgba(254,241,215,0.12);background:transparent;padding:0 10px;font-size:9px;letter-spacing:0.12em;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.booking-formfoot .booking-contact-action svg{width:15px;height:15px}.booking-formfoot .booking-social-contact{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;justify-content:flex-end}.booking-formfoot .booking-social-contact a{width:36px;height:36px;border-color:rgba(254,241,215,0.16);background:transparent}.booking-formfoot .booking-social-contact svg{width:16px;height:16px}.booking-formfoot .booking-legal-codes{border-top:0;display:grid;grid-template-columns:68px minmax(0,1fr);gap:6px;min-width:0}.booking-formfoot .booking-legal-code{min-height:36px;padding:7px 8px;border-color:rgba(254,241,215,0.1);background:transparent;gap:7px;min-width:0}.booking-formfoot .booking-legal-code svg{width:14px;height:14px}.booking-formfoot .booking-legal-code span{margin-bottom:3px;font-size:7px}.booking-formfoot .booking-legal-code strong{font-size:9px;overflow-wrap:anywhere}}.desktop-menu-top{display:flex;justify-content:center;align-items:center}.desktop-menu-logo{display:none}.desktop-menu-close{display:none}.desktop-menu-quick{justify-content:center;text-transform:none}.desktop-menu-brand-text{text-transform:none;letter-spacing:0.02em}.desktop-menu-primary a,.desktop-menu-feature span,.desktop-header-links,.desktop-menu-bottom,.desktop-menu-bottom > *{text-transform:none}body.desktop-menu-open #mainNav{z-index:300;background:transparent !important;box-shadow:none !important}body.desktop-menu-open #mainNav .nav-logo{opacity:0;pointer-events:none}body.desktop-menu-open .nav-hamburger span{background:var(--wine)}.experiences-page{background:var(--cream);color:var(--wine)}.experiences-page::before{opacity:0.035;mix-blend-mode:multiply}.experiences-page #mainNav:not(.scrolled) .nav-logo-text,.experiences-page #mainNav:not(.scrolled) .nav-links a,.experiences-page #mainNav:not(.scrolled) .nav-cta,.experiences-page #mainNav:not(.scrolled) .nav-hamburger{color:var(--wine)}.experiences-page #mainNav:not(.scrolled) .nav-cta{border-color:rgba(40,21,21,0.32)}.experiences-page #mainNav:not(.scrolled) .nav-hamburger span{background:var(--wine)}.experiences-hero{position:relative;min-height:100svh;overflow:hidden;background:var(--cream);color:var(--wine)}.experiences-hero-stage{position:relative;min-height:100svh;height:100svh;overflow:hidden;display:block;background:var(--cream);isolation:isolate;transform-origin:center top;will-change:filter,opacity,transform}.experiences-hero-kicker{position:absolute;z-index:6;top:clamp(96px,9vw,148px);left:clamp(36px,5vw,86px);color:rgba(40,21,21,0.58)}.experiences-hero-title{position:absolute;z-index:4;left:50%;top:50%;width:min(92vw,1420px);margin:0;translate:-50% -50%;color:rgba(143,28,19,0.92);font-family:var(--serif);font-size:clamp(92px,13vw,246px);font-weight:400;letter-spacing:0;line-height:0.78;text-align:center;pointer-events:none;will-change:opacity,transform}.experiences-hero-title span{display:block}.experiences-hero-title-muted{z-index:6;color:rgba(254,241,215,0.52);opacity:0.72;clip-path:inset(0 calc(50% - 12vw));mix-blend-mode:screen;will-change:opacity,visibility}.experiences-hero-card{position:absolute;z-index:4;left:50%;top:50%;width:clamp(250px,18vw,315px);height:clamp(390px,55vh,620px);transform:translate3d(-50%,-50%,0);margin:0;background:rgba(40,21,21,0.08);box-shadow:0 18px 54px rgba(40,21,21,0.10);opacity:0;visibility:visible;will-change:transform,opacity;contain:paint;backface-visibility:hidden;transform-style:preserve-3d;-webkit-backface-visibility:hidden}.experiences-hero-card img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(0.82) contrast(0.96) sepia(0.06);transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.experiences-hero-card-1{z-index:5;opacity:0.74}.experiences-hero-card-2{z-index:5;width:24vw;height:58vh}.experiences-hero-card-3{z-index:2;width:22vw;height:24vh}.experiences-hero-card-4{z-index:2;width:14vw;height:33vh}.experiences-hero-card-5{z-index:2;width:28vw;height:24vh}.experiences-scroll-cue{position:absolute;z-index:6;left:50%;bottom:clamp(28px,5vh,54px);margin:0;transform:translateX(-50%);color:rgba(143,28,19,0.72);font-family:var(--serif);font-size:clamp(15px,1.1vw,20px);line-height:1}.experiences-manifesto{position:relative;z-index:20;overflow:hidden;margin-top:-85vh;min-height:100svh;display:grid;place-items:center;align-content:center;gap:clamp(26px,3vw,46px);padding:clamp(86px,8vw,142px) clamp(24px,6vw,96px);background:#fff;color:var(--wine);text-align:center;will-change:background-color}.experiences-manifesto h2{margin:0;color:rgba(40,21,21,0.86);font-family:var(--serif);font-size:clamp(62px,8.9vw,158px);font-weight:400;letter-spacing:0;line-height:0.9;transform-origin:center center;will-change:transform,color}.experiences-manifesto p{max-width:620px;margin:0;color:rgba(40,21,21,0.64);font-size:clamp(15px,1.25vw,22px);line-height:1.6;will-change:opacity,color,transform}.experiences-pin-wrap{position:relative;overflow:hidden;background:var(--wine)}.experiences-pin{position:relative;height:100svh;overflow:hidden;background:var(--wine);color:var(--cream);isolation:isolate}.exp-slide{position:absolute;inset:0;display:block;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;will-change:opacity,transform,visibility}.exp-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}.exp-slide-bg{position:absolute;inset:0;overflow:hidden}.exp-slide-bg::after{content:'';position:absolute;inset:0;background:rgba(40,21,21,0.48);pointer-events:none}.exp-slide-bg img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(0.78) brightness(0.82) sepia(0.05);will-change:transform}.exp-slide-card{position:absolute;z-index:3;left:50%;top:calc(50% + 42px);width:clamp(270px,20vw,430px);height:min(70svh,700px);overflow:hidden;opacity:0.92;pointer-events:none;will-change:transform,opacity}.exp-slide-card img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(0.96) saturate(0.84) sepia(0.04)}.exp-slide-copy{position:absolute;z-index:4;left:50%;top:50%;width:min(72vw,1120px);color:var(--cream);text-align:center;transform:translate(-50%,-38%);pointer-events:none}.exp-slide-copy .section-kicker{color:rgba(254,241,215,0.76);margin-bottom:clamp(14px,1.5vw,24px)}.exp-slide-copy h2{margin:0;color:rgba(254,241,215,0.96);font-family:var(--serif);font-size:clamp(74px,8.2vw,162px);font-weight:400;line-height:0.88;letter-spacing:0}.exp-slide-copy p:not(.section-kicker){width:min(640px,54vw);margin:clamp(18px,2vw,32px) auto 0;color:rgba(254,241,215,0.82);font-size:clamp(16px,1.2vw,22px);line-height:1.42}.exp-slide-script{position:absolute;z-index:5;left:50%;top:calc(18% + 28px);width:min(74vw,1120px);margin:0;transform:translateX(-50%);color:rgba(254,241,215,0.9);font-family:"Snell Roundhand","Apple Chancery","Bradley Hand",cursive;font-size:clamp(32px,4.35vw,76px);font-style:normal;font-weight:300;line-height:0.9;text-align:center;letter-spacing:0.015em;pointer-events:none}.exp-nav{position:absolute;z-index:8;top:50%;display:grid;place-items:center;width:clamp(92px,7.6vw,150px);aspect-ratio:1;border:1px solid rgba(254,241,215,0.86);border-radius:50%;background:transparent;color:var(--cream);font-family:var(--sans);font-size:clamp(34px,3vw,58px);font-weight:300;line-height:1;transform:translateY(-50%);cursor:pointer;transition:transform 0.45s cubic-bezier(0.16,1,0.3,1),background 0.35s var(--ease),color 0.35s var(--ease),border-color 0.35s var(--ease)}.exp-nav:hover,.exp-nav:focus-visible{transform:translateY(-50%) scale(1.06);background:rgba(254,241,215,0.12);border-color:var(--cream)}.exp-nav-prev{left:clamp(22px,3vw,52px)}.exp-nav-next{right:clamp(22px,3vw,52px)}.experiences-cta{margin:0;padding:clamp(42px,6vw,86px);border-top:1px solid rgba(40,21,21,0.12);border-radius:0;background:linear-gradient(135deg,rgba(254,241,215,0.78),rgba(254,241,215,0.58)),url('img/prenota.jpg') center/cover;background-blend-mode:normal,soft-light;text-align:center}.experiences-cta h2{max-width:760px;margin:0 auto 28px;color:var(--wine);font-family:var(--serif);font-size:clamp(34px,5.2vw,84px);font-weight:400;line-height:1}@media (max-width:980px){.experiences-hero{min-height:100svh}.experiences-hero-title{width:min(94vw,820px);font-size:clamp(72px,15vw,132px)}.experiences-hero-card{width:clamp(210px,32vw,330px);height:clamp(300px,48vw,500px)}.experiences-hero-card-2{width:clamp(280px,48vw,460px);height:clamp(360px,58vw,600px)}.experiences-hero-card-3,.experiences-hero-card-5{width:clamp(220px,40vw,360px);height:clamp(140px,25vw,230px)}.experiences-hero-card-4{width:clamp(200px,34vw,300px);height:clamp(170px,42vw,360px)}.exp-slide-card{width:clamp(210px,34vw,330px);height:min(56svh,520px)}}@media (max-width:860px){.experiences-hero{min-height:100svh}.experiences-hero-title{top:50%;width:96vw;font-size:clamp(56px,18vw,92px);line-height:0.82}.experiences-hero-kicker{top:110px;left:22px}.experiences-hero-card{width:min(48vw,220px);height:40svh}.experiences-hero-card-2{width:min(64vw,300px);height:48svh}.experiences-hero-card-3,.experiences-hero-card-5{width:min(50vw,230px);height:26svh}.experiences-hero-card-4{width:min(42vw,190px);height:36svh}.experiences-manifesto{min-height:82svh;padding:72px 24px}.experiences-manifesto h2{font-size:clamp(48px,15vw,78px)}.experiences-pin{height:88svh}.exp-slide-bg,.exp-slide:nth-child(even) .exp-slide-bg{min-height:88svh;height:88svh}.exp-slide-copy,.exp-slide:nth-child(even) .exp-slide-copy{left:50%;right:auto;top:51%;width:min(86vw,560px);transform:translate(-50%,-38%)}.exp-slide-copy h2{font-size:clamp(48px,15vw,84px)}.exp-slide-copy p:not(.section-kicker){width:100%}.exp-slide-script{top:18%;width:82vw;font-size:clamp(24px,8vw,42px)}.exp-slide-card{width:min(48vw,220px);height:42svh}.exp-nav{width:58px;font-size:28px}.exp-nav-prev{left:14px}.exp-nav-next{right:14px}.experiences-cta{padding-bottom:110px}}@media (max-width:860px){html,body{width:100%;max-width:100%;overflow-x:hidden}#site-wrapper,main,section,footer{max-width:100%}.hero,.room-hero{min-height:100svh;height:100svh}.hero-img{transform:none;object-position:center center;image-rendering:auto;backface-visibility:hidden}.hero-content{width:100%;padding:0 24px}.hero-title{max-width:94vw;margin-left:auto;margin-right:auto;white-space:normal;font-size:clamp(54px,18vw,82px);line-height:0.9}.hero-payoff{margin-top:8px;font-size:clamp(15px,4.4vw,18px)}.hero-meta{left:24px;right:24px;bottom:104px;max-width:calc(100vw - 48px)}.hero-location,.hero-sub{max-width:100%;overflow-wrap:anywhere}.identity,.request,.room-identity,.room-faq-section,.room-availability,.contact-section,.contact-info-strip,.legal-hero,.legal-content{padding-left:24px;padding-right:24px}.identity::before,.request::before,.room-identity::before,.room-faq-section::before,.room-availability::before,.contact-section::before,.camere-section::before{left:24px}.identity-text h2,.room-identity-text h2,.request-left h2,.contact-left h2,.availability-left h2,.rooms-header h2,.camere-header h2,.room-gallery-header h2,.legal-hero h1{max-width:100%;overflow-wrap:normal}.identity-text p,.room-identity-text p,.request-left p,.contact-left p,.availability-left p,.rooms-header-right,.camere-header-right,.legal-content-inner{max-width:100%}.identity-visual{margin-left:-24px;margin-right:-24px}.identity-mask-wrap{max-width:min(100%,430px);margin:0 auto}.rooms{padding-top:72px}.rooms-track-mobile{padding-left:24px;padding-right:24px}.room-card-mobile{flex-basis:min(82vw,330px);height:min(112vw,430px)}.request{padding-top:72px;padding-bottom:72px}.request-inner{width:100%;gap:44px}.booking-panel{width:100%;overflow:hidden}.booking-main{padding:30px 20px}.booking-room-preview{height:min(62vw,260px)}.booking-aside-content,.booking-room-services,.booking-stay-recap,.booking-contact-actions,.booking-social-contact,.booking-legal-codes{margin-left:20px;margin-right:20px}.booking-consent-check,.booking-submit{width:calc(100% - 40px);margin-left:20px;margin-right:20px}.booking-contact-action,.booking-legal-code,.booking-social-contact a,.booking-field input,.booking-field select,.booking-field textarea{min-width:0}.booking-contact-action{overflow-wrap:anywhere}.booking-legal-code strong{overflow-wrap:anywhere}.camere-hero{padding-top:118px;max-width:100%}.camere-hero h1{font-size:clamp(44px,15vw,64px)}.camere-lead{max-width:34ch;margin-left:auto;margin-right:auto}.camere-filters{padding-left:18px;padding-right:18px}.camere-grid{padding-left:20px;padding-right:20px}.cat-card{border-radius:14px}.cat-card-media{aspect-ratio:4 / 3}.cat-card-body{padding:24px 22px 26px}.room-hero-content{width:100%;padding-left:24px;padding-right:24px;padding-bottom:96px}.room-hero-title{font-size:clamp(54px,18vw,78px);max-width:94vw}.room-hero-meta{gap:10px}.room-hero-tag,.room-hero-cta{max-width:100%}.services-grid{grid-template-columns:1fr 1fr}.service-item{min-width:0}.room-gallery-header{padding-left:24px;padding-right:24px}.gallery-mobile-track,.gallery-track{padding-left:24px;padding-right:24px}.gallery-slide{max-width:calc(100vw - 48px)}.footer-upper,.footer-lower{max-width:100%}}@media (max-width:420px){.hero-title{font-size:clamp(50px,17vw,70px)}.hero-meta{bottom:96px}.booking-main{padding:28px 18px}.services-grid{gap:8px}.service-item{padding:11px 10px}}@media (max-width:860px){.request:has(.booking-panel){padding:74px 16px 138px}.request-inner:has(.booking-panel)::before{content:'Prenota ora';display:block;width:100%;margin:0 0 14px;font-family:var(--sans);font-size:11px;font-weight:400;letter-spacing:0.22em;line-height:1;text-transform:uppercase;color:rgba(254,241,215,0.72)}.request-inner:has(.booking-panel){gap:28px}.booking-panel{display:flex;flex-direction:column;border-radius:18px;background:rgba(254,241,215,0.028);border-color:rgba(254,241,215,0.16);overflow:visible}.booking-main{display:flex;flex-direction:column;gap:14px;padding:16px}.bk-cols,.bk-col{display:contents}.bk-col:first-child .booking-section:nth-child(1){order:1}.bk-col:first-child .booking-section:nth-child(2){order:2}.bk-col:nth-child(2) .booking-section:nth-child(1){order:3}.bk-col:nth-child(2) .booking-section:nth-child(2){order:4}.bk-col:nth-child(2) .booking-section:nth-child(3){order:5}.booking-section{padding:18px 16px 16px;border:1px solid rgba(254,241,215,0.12);border-radius:14px;background:rgba(254,241,215,0.035)}.booking-section + .booking-section{margin-top:0;padding-top:18px;border-top:1px solid rgba(254,241,215,0.12)}.booking-section-label{margin-bottom:14px;font-size:10px;letter-spacing:0.18em;color:rgba(254,241,215,0.72)}.booking-grid,.booking-grid.single,.booking-payment-row{grid-template-columns:1fr;gap:13px}.booking-field label{margin-bottom:7px;font-size:9px;letter-spacing:0.18em;color:rgba(254,241,215,0.62)}.booking-field input,.booking-field select,.booking-field textarea{min-height:52px;border-radius:10px;padding:13px 14px;font-size:16px;line-height:1.25;background-color:rgba(254,241,215,0.055);border-color:rgba(254,241,215,0.16);transition:border-color 0.25s var(--ease),background-color 0.25s var(--ease),opacity 0.22s var(--ease)}.booking-field textarea{min-height:92px}.booking-field select{padding-right:46px;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 18 18' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 6.5 9 12l6-5.5z' fill='%23FEF1D7' fill-opacity='.78'/%3E%3C/svg%3E");background-position:right 16px center;background-size:18px 18px;background-repeat:no-repeat}.booking-payment-choice{min-height:52px;border-radius:10px;padding:0 15px;background:rgba(254,241,215,0.055);border-color:rgba(254,241,215,0.16);font-size:11px}.booking-payment-choice input{width:18px;height:18px;flex:0 0 auto}.booking-payment-choice input::after{inset:4px}.booking-aside{border-top:1px solid rgba(254,241,215,0.12);background:rgba(254,241,215,0.026);border-radius:0 0 18px 18px;overflow:hidden;display:flex;flex-direction:column}.booking-room-preview{height:205px;border-bottom-color:rgba(254,241,215,0.12)}.booking-section .booking-room-preview{height:190px;margin:0;border:1px solid rgba(254,241,215,0.14);border-radius:12px;border-bottom-color:rgba(254,241,215,0.14);background:rgba(254,241,215,0.04)}.booking-room-preview img{filter:brightness(0.74)}.booking-room-preview-caption{left:18px;right:18px;bottom:18px}.booking-room-preview-caption strong{font-size:28px}.booking-aside-content{display:none}.booking-formfoot{display:flex;flex-direction:column;gap:12px;margin:16px 16px 0;padding:0 0 16px;border-bottom:1px solid rgba(254,241,215,0.1);order:2}.booking-formfoot > *{margin:0 !important;width:100% !important}.booking-room-services,.booking-stay-recap,.booking-contact-actions,.booking-social-contact,.booking-legal-codes{margin-left:16px;margin-right:16px}.booking-room-services,.booking-stay-recap{padding:16px;border-radius:14px;background:rgba(254,241,215,0.035);border-color:rgba(254,241,215,0.12)}.booking-room-services{margin-top:16px;order:3}.booking-services-list{grid-template-columns:1fr;gap:10px}.booking-services-list li{font-size:13px;line-height:1.35}.booking-stay-recap{margin-top:12px;order:4}.booking-recap-list{gap:10px}.booking-recap-row{align-items:flex-start;gap:16px;font-size:13px}.booking-recap-row strong{max-width:52%;text-align:right;overflow-wrap:anywhere}.booking-consent-check{width:calc(100% - 32px);margin:18px 16px 12px;align-items:flex-start;gap:12px;font-size:13px;line-height:1.45;order:5}.booking-consent-check input{width:24px;height:24px;flex:0 0 auto}.booking-submit{width:calc(100% - 32px);min-height:58px;margin:0 16px 18px;border-radius:12px;font-size:12px;letter-spacing:0.24em;order:6}.booking-contact-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:0;padding-top:0}.booking-contact-action{min-height:50px;justify-content:flex-start;border-radius:12px;padding:0 14px;font-size:11px;letter-spacing:0.12em}.booking-social-contact{justify-content:center;gap:10px;margin-top:14px}.booking-panel .booking-social-contact{display:none !important}.booking-social-contact a{width:46px;height:46px;border-radius:12px}.booking-legal-codes{grid-template-columns:1fr;gap:10px;margin-top:0;padding-top:0;border-top:0;padding-bottom:0}.booking-legal-code{min-height:50px;border-radius:12px;padding:10px 13px}}@media (max-width:420px){.request:has(.booking-panel){padding-left:12px;padding-right:12px}.booking-main{padding:12px}.booking-section{padding-left:14px;padding-right:14px}}.discover-tonara{position:relative;width:100%;min-height:clamp(480px,72vh,820px);background:var(--wine)}.dt-sticky{position:relative;display:grid;place-items:center;min-height:clamp(480px,72vh,820px);overflow:hidden}.dt-media{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;z-index:0}.dt-media .discover-tonara-bg,.dt-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.dt-media::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(40,21,21,0.32) 0%,rgba(40,21,21,0.22) 100%)}.discover-tonara-inner{position:relative;z-index:1;width:100%;padding:clamp(40px,6vw,80px) 24px;text-align:center}.discover-tonara-title{margin:0;font-weight:500;font-family:var(--sans);font-size:clamp(13px,1.5vw,18px);letter-spacing:0.32em;text-transform:uppercase;color:rgba(254,241,215,0.95)}.dt-word{display:inline}@media (min-width:601px){.discover-tonara{height:130vh}.dt-sticky{position:sticky;top:0;height:100vh;min-height:0;overflow:hidden;display:block}.dt-media{inset:auto;top:50%;left:50%;width:100vw;height:100vh;transform:translate(-50%,calc(-50% - 29vh)) scale(0.3);transform-origin:center;will-change:transform}.discover-tonara-inner{position:absolute;inset:0;z-index:2;padding:0;pointer-events:none}.discover-tonara-title{text-transform:none;letter-spacing:0.02em}.dt-word{position:absolute;top:50%;left:50%;font-family:cofo-raffine,var(--serif);font-weight:300;font-size:clamp(40px,5.2vw,90px);letter-spacing:0.02em;line-height:1;color:var(--cream);white-space:nowrap;text-shadow:0 2px 28px rgba(40,21,21,0.45);will-change:transform}.dt-word[data-w="1"]{transform:translate(-50%,calc(-50% - 29vh)) translateX(-30vw)}.dt-word[data-w="2"]{transform:translate(-50%,calc(-50% - 29vh)) translateX(30vw)}.discover-tonara.dt-ready .dt-media,.discover-tonara.dt-ready .dt-word{transition:transform 1.4s cubic-bezier(0.22,1,0.36,1)}}