.page-contatti{background:var(--bg-dark)}.contatti-hero{padding-top:120px;padding-bottom:clamp(64px,8vw,120px);position:relative;overflow:hidden;background:var(--bg-dark);color:#fff}.contatti-hero .container{position:relative;z-index:3}.contatti-hero-rings{position:absolute;right:-12vw;top:50%;transform:translateY(-50%);width:60vw;max-width:640px;aspect-ratio:1;pointer-events:none;z-index:1;opacity:.7}.contatti-hero-rings svg{width:100%;height:100%;overflow:visible}@keyframes ctRingRotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.ct-ring--1{transform-origin:300px 300px;animation:ctRingRotate 3s linear infinite}.ct-ring--2{transform-origin:300px 300px;animation:ctRingRotate 2s linear infinite reverse}.ct-ring--3{transform-origin:300px 300px;animation:ctRingRotate 1.6s linear infinite}.ct-dot{transform-origin:300px 300px;animation:ctRingRotate 1.2s linear infinite;filter:drop-shadow(0 0 12px rgba(0,255,205,.7))}@media (max-width:900px){.contatti-hero-rings{right:-35vw;opacity:.4}}.contatti-hero .pcl-crumb{color:rgba(255,255,255,.7);border-color:var(--mint)}.contatti-hero .pcl-crumb a{color:var(--mint)}.contatti-hero .pcl-crumb span[aria-hidden]{color:var(--mint)}.contatti-hero-eyebrow{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.75);font-weight:500;margin:28px 0 36px}.ct-eyebrow-num{color:var(--mint)}.ct-eyebrow-rule{width:36px;height:1px;background:var(--mint)}.ct-eyebrow-tag{color:#fff}.contatti-hero-h1{font-family:var(--font-sans);font-weight:200;font-size:clamp(56px,9vw,152px);line-height:.92;letter-spacing:-.04em;margin:0;color:#fff;display:flex;flex-direction:column;gap:0}.ct-line{display:block}.ct-line:nth-child(2){padding-left:12vw}.ct-line:nth-child(3){text-align:right}.contatti-hero-h1 em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--mint)}.contatti-hero-foot{margin-top:clamp(56px,7vw,96px);padding-top:28px;border-top:1px solid var(--mint);display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,5vw,80px);align-items:start}.contatti-hero-lead{font-size:clamp(20px,1.7vw,26px);line-height:1.35;color:rgba(255,255,255,.88);margin:0;max-width:560px}.contatti-hero-lead strong{color:#fff}.contatti-hero-lead em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--mint)}.contatti-hero-direct{display:flex;flex-direction:column;gap:18px}.ct-direct{display:flex;flex-direction:column;gap:4px;padding:18px 24px;border:1px solid rgba(0,255,205,.3);border-radius:12px;color:#fff;text-decoration:none;transition:border-color .24s,background .24s}.ct-direct:hover{border-color:var(--mint);background:rgba(0,255,205,.04)}.ct-direct-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);font-weight:500}.ct-direct-value{font-family:var(--font-sans);font-weight:500;font-size:20px;letter-spacing:-.005em;color:#fff}@media (max-width:900px){.contatti-hero-foot{grid-template-columns:1fr}.ct-line:nth-child(2){padding-left:0}.ct-line:nth-child(3){text-align:left}}.ct-process{padding:clamp(72px,9vw,120px) 0;background:var(--bg-light)}.ct-steps{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ct-step{padding:40px 32px 44px;border:1px solid var(--ink-15);border-radius:16px;background:var(--bg-light);transition:border-color .32s,background .32s,transform .32s var(--ease-out)}.ct-step:hover{border-color:var(--mint);background:#ececec;transform:translateY(-3px)}.ct-step-num{font-family:var(--font-sans);font-size:11px;letter-spacing:.22em;color:var(--mint);font-weight:500;display:block;margin-bottom:32px}.ct-step-h{font-family:var(--font-sans);font-weight:700;font-size:clamp(22px,2vw,28px);letter-spacing:-.01em;margin:0 0 16px;color:var(--ink)}.ct-step-p{font-size:15px;line-height:1.55;color:var(--ink-70);margin:0}.ct-step-p em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--ink)}@media (max-width:900px){.ct-steps{grid-template-columns:1fr}}.ct-form-section{padding:clamp(72px,9vw,120px) 0;position:relative;overflow:hidden}.ct-form-section .container{position:relative;z-index:2}.ct-form{margin-top:32px;max-width:980px}.ct-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ct-field{display:flex;flex-direction:column;gap:8px}.ct-field--full{grid-column:1/-1}.ct-field-label{font-family:var(--font-sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);font-weight:500}.ct-field input,.ct-field textarea,.ct-field select{background:0 0;border:0;border-bottom:1px solid rgba(255,255,255,.3);padding:14px 0;font-family:var(--font-sans);font-weight:400;font-size:16px;color:#fff;outline:none;transition:border-color .24s;width:100%;border-radius:0}.ct-field textarea{resize:vertical;min-height:120px;padding-top:14px}.ct-field input:focus,.ct-field textarea:focus,.ct-field select:focus{border-bottom-color:var(--mint)}.ct-field input::placeholder,.ct-field textarea::placeholder{color:rgba(255,255,255,.4)}.ct-select-wrap{position:relative}.ct-select-wrap select{appearance:none;-webkit-appearance:none;padding-right:32px;cursor:pointer}.ct-select-wrap select option{background:var(--bg-dark);color:#fff}.ct-select-arrow{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:12px;height:8px;color:var(--mint);pointer-events:none}.ct-radio-group{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.ct-radio{position:relative;cursor:pointer}.ct-radio input{position:absolute;opacity:0;pointer-events:none}.ct-radio-box{display:inline-block;padding:12px 22px;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-family:var(--font-sans);font-weight:500;font-size:14px;color:#fff;transition:background .24s,border-color .24s,color .24s}.ct-radio:hover .ct-radio-box{border-color:var(--mint);color:var(--mint)}.ct-radio input:checked+.ct-radio-box{background:var(--mint);color:var(--ink);border-color:var(--mint)}.ct-checkbox{display:flex;align-items:flex-start;gap:12px;margin-top:4px;font-family:var(--font-sans);font-size:13px;color:rgba(255,255,255,.7);line-height:1.5;cursor:pointer}.ct-checkbox input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--mint);cursor:pointer}.ct-checkbox a{color:var(--mint)}.ct-submit{margin-top:40px;display:inline-flex;align-items:center;gap:16px;padding:18px 36px;background:var(--mint);color:var(--ink);border:0;border-radius:999px;font-family:var(--font-sans);font-weight:700;font-size:14px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:transform .24s var(--ease-out),filter .24s}.ct-submit:hover{transform:translateY(-3px);filter:brightness(.95)}.ct-submit .arrow,.ct-submit svg{transition:transform .24s var(--ease-out)}.ct-submit:hover svg{transform:translateX(6px)}.ct-form-note{margin:18px 0 0;font-size:12px;letter-spacing:.02em;color:rgba(255,255,255,.5)}.ct-form-note strong{color:#fff}.ct-form-success{margin-top:32px;padding:56px 48px;border:1px solid var(--mint);border-radius:20px;background:rgba(0,255,205,.04)}.ct-success-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);font-weight:500}.ct-success-h{font-family:var(--font-sans);font-weight:200;font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-.025em;margin:14px 0 18px;color:#fff}.ct-success-h em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--mint)}.ct-success-p{font-size:16px;line-height:1.55;color:rgba(255,255,255,.7);margin:0}.ct-success-p a{color:var(--mint)}.ct-success-p strong{color:#fff}@media (max-width:720px){.ct-form-grid{grid-template-columns:1fr}}.ct-info{padding:clamp(72px,9vw,120px) 0;background:var(--bg-light)}.ct-info-grid{margin-top:32px;display:grid;grid-template-columns:1fr 1.4fr;gap:24px}.ct-info-left{padding:48px 40px;border:1px solid var(--ink-15);border-radius:20px;background:var(--bg-light)}.ct-info-h{font-family:var(--font-sans);font-weight:200;font-size:clamp(40px,4.5vw,64px);line-height:1;letter-spacing:-.03em;margin:0 0 36px;color:var(--ink)}.ct-info-h em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--mint)}.ct-info-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink-15)}.ct-info-list li{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--ink-15)}.ct-info-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);font-weight:500}.ct-info-value{font-family:var(--font-sans);font-weight:500;font-size:15px;letter-spacing:-.005em;color:var(--ink);line-height:1.4}a.ct-info-value{text-decoration:none;transition:color .2s}a.ct-info-value:hover{color:var(--mint)}.ct-info-socials{display:flex;gap:12px;margin-top:32px}.ct-info-socials a{width:44px;height:44px;border:1px solid var(--ink-15);border-radius:50%;display:grid;place-items:center;color:var(--ink);transition:background .24s,border-color .24s,color .24s}.ct-info-socials a:hover{background:var(--mint);border-color:var(--mint);color:var(--ink)}.ct-info-socials svg{width:18px;height:18px}.ct-map{position:relative;border-radius:20px;overflow:hidden;min-height:clamp(380px,50vw,560px);background:#1a1a1a}.ct-map iframe{filter:grayscale(.85) contrast(1.05);display:block}.ct-map-cta{position:absolute;bottom:24px;right:24px;z-index:2;display:inline-flex;align-items:center;gap:10px;padding:12px 22px;background:var(--ink);color:#fff;border-radius:999px;font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:.04em;text-decoration:none;transition:gap .24s var(--ease-out),background .24s}.ct-map-cta:hover{gap:16px;background:var(--mint);color:var(--ink)}@media (max-width:900px){.ct-info-grid{grid-template-columns:1fr}}.ct-faq-section{padding:clamp(72px,9vw,120px) 0}.ct-faq-section .container{position:relative;z-index:2}.ct-faq-wrap{display:grid;grid-template-columns:380px 1fr;gap:80px;margin-top:32px;align-items:start}.ct-faq-aside{position:sticky;top:120px}.ct-faq-aside-eyebrow{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);font-weight:500;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--mint)}.ct-faq-aside-body{font-family:var(--font-sans);font-weight:300;font-size:clamp(20px,1.8vw,26px);line-height:1.3;letter-spacing:-.01em;margin:0 0 40px;color:#fff}.ct-faq-aside-body em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--mint)}.ct-faq-aside-cta{display:inline-flex;align-items:center;gap:12px;padding:14px 28px;border:1px solid var(--mint);border-radius:999px;font-family:var(--font-sans);font-weight:500;font-size:13px;letter-spacing:.04em;color:var(--mint);background:0 0;text-decoration:none;transition:background .24s,gap .24s}.ct-faq-aside-cta:hover{background:rgba(0,255,205,.1);gap:16px}.ct-faq-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(0,255,205,.22)}.ct-faq{border-bottom:1px solid rgba(0,255,205,.22)}.ct-faq-q{display:grid;grid-template-columns:64px 1fr 36px;align-items:center;gap:20px;width:100%;padding:24px 0;background:0 0;border:0;text-align:left;cursor:pointer;font-family:var(--font-sans);transition:color .2s,padding .24s var(--ease-out)}.ct-faq-q:hover{padding-left:8px}.ct-faq-num{font-size:11px;letter-spacing:.22em;color:var(--mint);font-weight:500}.ct-faq-text{font-family:var(--font-sans);font-weight:500;font-size:clamp(17px,1.5vw,22px);line-height:1.3;letter-spacing:-.01em;color:#fff}.ct-faq-toggle{width:36px;height:36px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;color:#fff;transition:background .24s,border-color .24s,color .24s}.ct-faq-toggle svg{width:14px;height:14px}.ct-faq-toggle-v{transition:opacity .32s var(--ease-out)}.ct-faq.is-open .ct-faq-toggle{background:var(--mint);border-color:var(--mint);color:var(--ink)}.ct-faq.is-open .ct-faq-toggle-v{opacity:0}.ct-faq-a{max-height:0;overflow:hidden;transition:max-height .54s cubic-bezier(.22,1,.36,1),padding .32s var(--ease-out)}.ct-faq.is-open .ct-faq-a{max-height:320px;padding:0 0 28px 84px}.ct-faq-a p{margin:0;font-size:clamp(15px,1.1vw,17px);line-height:1.65;color:rgba(255,255,255,.75);max-width:720px}.ct-faq-a strong{color:#fff}.ct-faq-a em{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--mint)}@media (max-width:1100px){.ct-faq-wrap{grid-template-columns:1fr;gap:32px}.ct-faq-aside{position:static}}