*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
  :root { --sun: #F97316; --sun-light: #FED7AA; --sun-dark: #C2410C; --sky: #0EA5E9; --sky-dark: #0369A1; --sky-deeper: #0C4A6E; --night: #0F172A; --slate: #334155; --muted: #64748B; --border: #E2E8F0; --surface: #F8FAFC; --white: #FFFFFF; --green: #22C55E; --radius: 16px; --radius-sm: 10px; --shadow: 0 4px 24px rgba(15,23,42,.08); --shadow-lg: 0 12px 48px rgba(15,23,42,.14); }
  html { scroll-behavior: smooth; }
  body { font-family: 'DM Sans', sans-serif; color: var(--night); background: var(--white); overflow-x: hidden; }
  #navbar { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 0 5%; height: 68px; background: rgba(255,255,255,.92); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(226,232,240,.6); transition: box-shadow .3s; }
  #navbar.scrolled { box-shadow: 0 2px 20px rgba(15,23,42,.08); }
  .logo { display: flex; align-items: center; text-decoration: none; }
  .nav-links { display: flex; align-items: center; gap: 32px; list-style: none; }
  .nav-links a { font-size: .9rem; font-weight: 500; color: var(--slate); text-decoration: none; transition: color .2s; }
  .nav-links a:hover { color: var(--sun); }
  .btn-nav { background: linear-gradient(135deg, var(--sun), var(--sun-dark)); color: white; border: none; border-radius: 50px; padding: 10px 22px; font-size: .875rem; font-weight: 600; cursor: pointer; font-family: 'DM Sans', sans-serif; transition: transform .2s, box-shadow .2s; box-shadow: 0 4px 14px rgba(249,115,22,.35); }
  .btn-nav:hover { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(249,115,22,.45); }
  .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; }
  .hamburger span { display: block; width: 24px; height: 2px; background: var(--night); border-radius: 2px; transition: .3s; }
  .hero { position: relative; min-height: 100vh; display: flex; align-items: center; padding: 100px 5% 60px; overflow: hidden; }
  .hero-bg { position: absolute; inset: 0; background: linear-gradient(135deg, var(--sky-deeper) 0%, var(--sky-dark) 40%, var(--slate) 100%); }
  .hero-bg img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .35; mix-blend-mode: luminosity; }
  .hero-bg::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to right, rgba(12,74,110,.85) 0%, rgba(12,74,110,.4) 55%, transparent 100%); }
  .sun-ray { position: absolute; top: -120px; right: -80px; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(249,115,22,.3) 0%, transparent 70%); animation: pulse 4s ease-in-out infinite; }
  @keyframes pulse { 0%,100%{ opacity:.6; transform:scale(1); } 50%{ opacity:1; transform:scale(1.08); } }
  .hero-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 440px; gap: 60px; align-items: center; width: 100%; max-width: 1200px; margin: 0 auto; }
  .hero-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(249,115,22,.18); border: 1px solid rgba(249,115,22,.4); color: var(--sun-light); border-radius: 50px; padding: 6px 16px; font-size: .8rem; font-weight: 600; margin-bottom: 20px; animation: fadeUp .6s ease both; }
  .hero-badge::before { content: '●'; color: var(--sun); animation: blink 1.5s infinite; }
  @keyframes blink { 0%,100%{ opacity:1; } 50%{ opacity:.3; } }
  .hero h1 { font-family: 'Sora', sans-serif; font-weight: 800; font-size: clamp(2.2rem, 4.5vw, 3.6rem); line-height: 1.1; color: white; margin-bottom: 20px; animation: fadeUp .7s .1s ease both; }
  .hero h1 .accent { color: var(--sun); }
  .hero-sub { color: rgba(255,255,255,.75); font-size: 1.05rem; line-height: 1.65; max-width: 440px; margin-bottom: 32px; animation: fadeUp .7s .2s ease both; }
  .hero-trust { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; animation: fadeUp .7s .3s ease both; }
  .trust-pill { display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.2); border-radius: 50px; padding: 8px 16px; color: white; font-size: .85rem; font-weight: 500; }
  .trust-pill svg { width: 16px; height: 16px; }
  @keyframes fadeUp { from{ opacity:0; transform:translateY(24px); } to{ opacity:1; transform:translateY(0); } }
  .form-card { background: white; border-radius: 24px; box-shadow: 0 24px 80px rgba(15,23,42,.22); padding: 32px; animation: fadeUp .8s .2s ease both; }
  .form-card h2.form-title { font-family: 'Sora', sans-serif; font-size: 1.15rem; font-weight: 700; color: var(--night); text-align: center; margin-bottom: 4px; }
  .form-card .subtitle { text-align: center; font-size: .82rem; color: var(--muted); margin-bottom: 20px; }
  .form-card .subtitle span { color: var(--sun); font-weight: 600; }
  .tab-group { display: flex; background: var(--surface); border-radius: var(--radius-sm); padding: 4px; margin-bottom: 20px; gap: 4px; }
  .tab { flex: 1; padding: 9px; border: none; background: none; border-radius: 8px; font-size: .875rem; font-weight: 500; cursor: pointer; transition: all .2s; color: var(--muted); font-family: 'DM Sans', sans-serif; }
  .tab.active { background: white; color: var(--night); box-shadow: 0 2px 8px rgba(15,23,42,.1); font-weight: 600; }
  .form-label { font-size: .8rem; font-weight: 600; color: var(--sun); text-transform: uppercase; letter-spacing: .06em; display: block; margin-bottom: 10px; }
  .option-pill { display: flex; align-items: center; gap: 8px; border: 1.5px solid var(--border); border-radius: var(--radius-sm); padding: 10px 14px; cursor: pointer; transition: all .2s; margin-bottom: 8px; font-size: .875rem; color: var(--slate); background: white; }
  .option-pill:hover { border-color: var(--sky); background: #F0F9FF; }
  .option-pill input { accent-color: var(--sky); width: 16px; height: 16px; flex-shrink: 0; }
  .option-pill.selected { border-color: var(--sky); background: #F0F9FF; color: var(--sky-dark); font-weight: 500; }
  .building-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 20px; }
  .building-option { display: flex; align-items: center; gap: 8px; border: 1.5px solid var(--border); border-radius: var(--radius-sm); padding: 10px 12px; cursor: pointer; transition: all .2s; font-size: .85rem; color: var(--slate); background: white; }
  .building-option:hover { border-color: var(--sky); background: #F0F9FF; }
  .building-option input { accent-color: var(--sky); flex-shrink: 0; }
  .building-option.selected { border-color: var(--sky); background: #F0F9FF; color: var(--sky-dark); font-weight: 500; }
  .btn-primary { width: 100%; padding: 15px; border: none; border-radius: var(--radius-sm); background: linear-gradient(135deg, var(--green) 0%, #16A34A 100%); color: white; font-size: 1rem; font-weight: 700; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; font-family: 'DM Sans', sans-serif; transition: transform .2s, box-shadow .2s; box-shadow: 0 4px 16px rgba(34,197,94,.35); }
  .btn-primary:hover { transform: translateY(-1px); box-shadow: 0 8px 24px rgba(34,197,94,.45); }
  .form-footer { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 12px; font-size: .75rem; color: var(--muted); }
  section { padding: 90px 5%; }
  .section-tag { display: inline-block; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--sky); background: #E0F2FE; border-radius: 50px; padding: 5px 14px; margin-bottom: 14px; }
  .section-title { font-family: 'Sora', sans-serif; font-weight: 800; font-size: clamp(1.8rem, 3vw, 2.6rem); color: var(--night); line-height: 1.2; margin-bottom: 14px; }
  .section-title .hl { color: var(--sun); }
  .section-sub { color: var(--muted); font-size: 1rem; line-height: 1.7; max-width: 580px; margin: 0 auto 60px; }
  .text-center { text-align: center; }
  .intro-section { background: var(--white); }
  .intro-inner { max-width: 880px; margin: 0 auto; }
  .intro-inner p { color: var(--slate); font-size: 1.02rem; line-height: 1.8; margin-bottom: 18px; }
  .intro-inner p strong { color: var(--night); }
  .intro-inner h3 { font-family:'Sora',sans-serif; font-size:1.2rem; font-weight:700; color:var(--night); margin:28px 0 12px; }
  .intro-figure { margin:30px 0 8px; border-radius:18px; overflow:hidden; border:1.5px solid var(--border); box-shadow:var(--shadow); }
  .intro-figure img { width:100%; height:auto; display:block; }
  .intro-figure figcaption { font-size:.8rem; color:var(--muted); padding:10px 16px; background:var(--surface); }
  .steps-wrap { max-width: 1100px; margin: 0 auto; }
  .steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; position: relative; }
  .steps-grid::before { content: ''; position: absolute; top: 48px; left: calc(16.67% + 24px); right: calc(16.67% + 24px); height: 2px; background: linear-gradient(to right, #BAE6FD, var(--sky)); z-index: 0; }
  .step-card { background: white; border-radius: 20px; padding: 32px 24px; border: 1.5px solid var(--border); position: relative; z-index: 1; transition: transform .3s, box-shadow .3s, border-color .3s; text-align: center; }
  .step-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); border-color: var(--sky); }
  .step-num { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background: linear-gradient(135deg, var(--sky), var(--sky-dark)); color: white; font-family: 'Sora', sans-serif; font-weight: 800; font-size: 1.1rem; margin-bottom: 16px; }
  .step-card:nth-child(2) .step-num { background: linear-gradient(135deg, var(--sun), var(--sun-dark)); }
  .step-card:nth-child(3) .step-num { background: linear-gradient(135deg, var(--green), #15803D); }
  .step-icon { width: 48px; height: 48px; margin: 0 auto 16px; background: var(--surface); border-radius: 14px; display: flex; align-items: center; justify-content: center; }
  .step-icon svg { width: 26px; height: 26px; }
  .step-label { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--sky); margin-bottom: 10px; }
  .step-card:nth-child(2) .step-label { color: var(--sun); }
  .step-card:nth-child(3) .step-label { color: var(--green); }
  .step-card h3 { font-family: 'Sora', sans-serif; font-size: 1.1rem; font-weight: 700; margin-bottom: 10px; }
  .step-card p { font-size: .9rem; color: var(--muted); line-height: 1.6; }
  .cta-center { text-align: center; margin-top: 48px; }
  .btn-cta { display: inline-flex; align-items: center; gap: 10px; background: linear-gradient(135deg, var(--sun), var(--sun-dark)); color: white; border: none; border-radius: 50px; padding: 16px 36px; font-size: 1rem; font-weight: 700; cursor: pointer; font-family: 'DM Sans', sans-serif; transition: transform .2s, box-shadow .2s; box-shadow: 0 6px 24px rgba(249,115,22,.4); text-decoration: none; }
  .btn-cta:hover { transform: translateY(-2px); box-shadow: 0 10px 32px rgba(249,115,22,.5); }
  .packages-section { background: var(--white); }
  .packages-grid { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
  .pkg-card { border:1.5px solid var(--border); border-radius:20px; padding:30px 26px; background:white; transition:transform .3s, box-shadow .3s, border-color .3s; position:relative; }
  .pkg-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--sky); }
  .pkg-card.featured { border-color:var(--sun); box-shadow:0 8px 28px rgba(249,115,22,.18); }
  .pkg-flag { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,var(--sun),var(--sun-dark)); color:white; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; padding:5px 16px; border-radius:50px; }
  .pkg-card h3 { font-family:'Sora',sans-serif; font-size:1.25rem; font-weight:800; margin-bottom:6px; }
  .pkg-card .pkg-tag { font-size:.82rem; color:var(--muted); margin-bottom:18px; }
  .pkg-price { font-family:'Sora',sans-serif; font-weight:800; color:var(--sky-dark); font-size:1.9rem; line-height:1; }
  .pkg-price small { font-size:.85rem; color:var(--muted); font-weight:500; }
  .pkg-anticipo { font-size:.78rem; color:var(--green); font-weight:700; margin:6px 0 18px; }
  .pkg-list { list-style:none; display:flex; flex-direction:column; gap:10px; margin-bottom:22px; }
  .pkg-list li { font-size:.88rem; color:var(--slate); display:flex; gap:8px; align-items:flex-start; line-height:1.45; }
  .pkg-list li::before { content:'✓'; color:var(--green); font-weight:800; flex-shrink:0; }
  .pkg-card .btn-primary { padding:12px; font-size:.92rem; }
  .why-section { background: var(--surface); }
  .why-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
  .why-visual { position: relative; border-radius: 24px; overflow: hidden; aspect-ratio: 4/3; background: linear-gradient(135deg, var(--sky-deeper), var(--sky-dark)); box-shadow: var(--shadow-lg); }
  .why-visual img { width: 100%; height: 100%; object-fit: cover; opacity: 1; }
  .why-stat-badge { position: absolute; bottom: 24px; left: 24px; background: white; border-radius: 16px; padding: 16px 20px; box-shadow: var(--shadow-lg); }
  .why-stat-badge .num { font-family: 'Sora', sans-serif; font-weight: 800; font-size: 2rem; color: var(--sun); line-height: 1; }
  .why-stat-badge .label { font-size: .8rem; color: var(--muted); margin-top: 2px; }
  .why-features { display: flex; flex-direction: column; gap: 20px; margin-top: 36px; }
  .why-feature { display: flex; align-items: flex-start; gap: 16px; padding: 20px; background: white; border-radius: var(--radius-sm); border: 1.5px solid var(--border); transition: border-color .2s, box-shadow .2s; }
  .why-feature:hover { border-color: var(--sky); box-shadow: 0 4px 16px rgba(14,165,233,.1); }
  .why-feature-icon { width: 44px; height: 44px; border-radius: 12px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
  .why-feature-icon svg { width: 22px; height: 22px; }
  .icon-blue { background: #E0F2FE; color: var(--sky); }
  .icon-orange { background: #FFF7ED; color: var(--sun); }
  .icon-green { background: #F0FDF4; color: var(--green); }
  .why-feature h3 { font-family: 'Sora', sans-serif; font-weight: 700; font-size: .95rem; margin-bottom: 4px; }
  .why-feature p { font-size: .85rem; color: var(--muted); line-height: 1.5; }
  .zone-section { background: var(--white); }
  .zone-inner { max-width:1100px; margin:0 auto; }
  .zone-grid { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; max-width:900px; margin:0 auto; }
  .zone-pill { background:var(--surface); border:1.5px solid var(--border); border-radius:50px; padding:9px 18px; font-size:.88rem; font-weight:500; color:var(--slate); transition:all .2s; }
  .zone-pill:hover { border-color:var(--sky); background:#F0F9FF; color:var(--sky-dark); }
  .zone-pill strong { color:var(--sun); font-weight:700; }
  .incentivi-section { background: var(--surface); }
  .incentivi-grid { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
  .incentivo-card { background:white; border:1.5px solid var(--border); border-radius:18px; padding:26px; transition:transform .3s, box-shadow .3s, border-color .3s; }
  .incentivo-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:var(--sun-light); }
  .incentivo-card .inc-head { display:flex; align-items:center; gap:12px; margin-bottom:12px; }
  .incentivo-card .inc-badge { background:linear-gradient(135deg,var(--green),#15803D); color:white; font-family:'Sora',sans-serif; font-weight:800; font-size:1rem; border-radius:12px; padding:8px 14px; flex-shrink:0; }
  .incentivo-card h3 { font-family:'Sora',sans-serif; font-size:1.05rem; font-weight:700; }
  .incentivo-card p { font-size:.9rem; color:var(--muted); line-height:1.6; }
  .reviews-embed { max-width:900px; margin:0 auto 52px; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .embed-card { display:flex; flex-direction:column; align-items:center; text-align:center; background:white; border:1.5px solid var(--border); border-radius:18px; padding:26px 22px; transition:transform .3s, box-shadow .3s, border-color .3s; text-decoration:none; color:inherit; }
  .embed-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:var(--sky); }
  .embed-logo { font-family:'Sora',sans-serif; font-weight:800; font-size:1.15rem; display:flex; align-items:center; gap:8px; margin-bottom:10px; }
  .embed-tp { color:#00B67A; }
  .embed-stars { display:flex; gap:3px; margin-bottom:10px; }
  .embed-stars svg { width:22px; height:22px; }
  .embed-tp-stars svg { fill:#00B67A; }
  .embed-g-stars svg { fill:#FBBF24; }
  .embed-score { font-family:'Sora',sans-serif; font-weight:800; font-size:1.6rem; color:var(--night); line-height:1; }
  .embed-score small { font-size:.9rem; color:var(--muted); font-weight:500; }
  .embed-meta { font-size:.82rem; color:var(--muted); margin-top:6px; }
  .embed-link { margin-top:14px; font-size:.85rem; font-weight:700; color:var(--sky-dark); display:inline-flex; align-items:center; gap:6px; }
  .embed-gcolor span:nth-child(1){color:#4285F4}.embed-gcolor span:nth-child(2){color:#EA4335}.embed-gcolor span:nth-child(3){color:#FBBC05}.embed-gcolor span:nth-child(4){color:#4285F4}.embed-gcolor span:nth-child(5){color:#34A853}.embed-gcolor span:nth-child(6){color:#EA4335}
  .testimonials-section { background: white; }
  .testimonials-inner { max-width: 1100px; margin: 0 auto; }
  .reviews-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-bottom: 60px; }
  .review-card { background: white; border-radius: 20px; padding: 24px; border: 1.5px solid var(--border); transition: transform .3s, box-shadow .3s, border-color .3s; position: relative; }
  .review-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); border-color: var(--sun-light); }
  .review-card::before { content: '"'; position: absolute; top: -10px; right: 24px; font-size: 6rem; color: var(--sun-light); font-family: 'Sora', sans-serif; line-height: 1; pointer-events: none; }
  .stars { display: flex; gap: 3px; margin-bottom: 12px; }
  .stars svg { width: 16px; height: 16px; fill: #FBBF24; }
  .review-text { font-size: .9rem; color: var(--slate); line-height: 1.65; margin-bottom: 16px; font-style: italic; }
  .review-author { display: flex; align-items: center; justify-content: space-between; }
  .author-info { display: flex; flex-direction: column; }
  .author-name { font-weight: 700; font-size: .9rem; color: var(--night); }
  .author-loc { font-size: .78rem; color: var(--muted); margin-top: 2px; }
  .savings-badge { background: linear-gradient(135deg, #DCFCE7, #BBF7D0); color: #15803D; font-size: .8rem; font-weight: 700; padding: 4px 12px; border-radius: 50px; }
  .stats-bar { background: linear-gradient(135deg, var(--night), var(--slate)); border-radius: 24px; padding: 48px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
  .stat-item { text-align: center; }
  .stat-num { font-family: 'Sora', sans-serif; font-size: 2.5rem; font-weight: 800; color: var(--sun); line-height: 1; margin-bottom: 6px; }
  .stat-label { font-size: .85rem; color: rgba(255,255,255,.6); }
  .faq-section { background: var(--surface); }
  .faq-inner { max-width: 820px; margin: 0 auto; }
  .faq-item { background:white; border:1.5px solid var(--border); border-radius:14px; margin-bottom:14px; overflow:hidden; transition:border-color .2s; }
  .faq-item:hover { border-color:var(--sky); }
  .faq-q { width:100%; text-align:left; background:none; border:none; cursor:pointer; padding:20px 24px; font-family:'Sora',sans-serif; font-size:1rem; font-weight:600; color:var(--night); display:flex; justify-content:space-between; align-items:center; gap:16px; }
  .faq-q .faq-icon { flex-shrink:0; transition:transform .3s; color:var(--sun); font-size:1.4rem; line-height:1; }
  .faq-item.open .faq-icon { transform:rotate(45deg); }
  .faq-a { max-height:0; overflow:hidden; transition:max-height .35s ease; }
  .faq-a-inner { padding:0 24px 20px; font-size:.92rem; color:var(--slate); line-height:1.7; }
  .faq-item.open .faq-a { max-height:500px; }
  .cta-section { background: linear-gradient(135deg, var(--sky-deeper) 0%, var(--sky-dark) 60%, var(--sky) 100%); position: relative; overflow: hidden; }
  .cta-section::before { content: ''; position: absolute; top: -80px; right: -80px; width: 400px; height: 400px; border-radius: 50%; background: radial-gradient(circle, rgba(249,115,22,.25) 0%, transparent 70%); }
  .cta-inner { max-width: 700px; margin: 0 auto; text-align: center; position: relative; z-index: 1; }
  .cta-icon { width: 64px; height: 64px; border-radius: 50%; background: rgba(255,255,255,.15); backdrop-filter: blur(8px); display: flex; align-items: center; justify-content: center; margin: 0 auto 24px; border: 1.5px solid rgba(255,255,255,.25); }
  .cta-icon svg { width: 32px; height: 32px; fill: white; }
  .cta-section h2 { font-family: 'Sora', sans-serif; font-weight: 800; font-size: clamp(1.8rem, 3.5vw, 2.8rem); color: white; line-height: 1.2; margin-bottom: 16px; }
  .cta-section p { color: rgba(255,255,255,.75); font-size: 1rem; margin-bottom: 36px; line-height: 1.6; }
  .btn-cta-white { display: inline-flex; align-items: center; gap: 10px; background: white; color: var(--sky-dark); border: none; border-radius: 50px; padding: 16px 36px; font-size: 1rem; font-weight: 700; cursor: pointer; font-family: 'DM Sans', sans-serif; transition: transform .2s, box-shadow .2s; text-decoration: none; box-shadow: 0 8px 32px rgba(15,23,42,.2); }
  .btn-cta-white:hover { transform: translateY(-2px); box-shadow: 0 12px 40px rgba(15,23,42,.3); }
  footer { background: var(--night); color: rgba(255,255,255,.6); padding: 64px 5% 32px; }
  .footer-inner { max-width: 1100px; margin: 0 auto; }
  .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
  .footer-brand p { font-size: .875rem; line-height: 1.7; max-width: 260px; }
  .footer-col h3 { font-family: 'Sora', sans-serif; font-weight: 700; font-size: .875rem; color: white; margin-bottom: 16px; }
  .footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }
  .footer-col a { font-size: .85rem; color: rgba(255,255,255,.55); text-decoration: none; transition: color .2s; }
  .footer-col a:hover { color: var(--sun); }
  .footer-col span { font-size: .85rem; color: rgba(255,255,255,.55); }
  .footer-bottom { border-top: 1px solid rgba(255,255,255,.1); padding-top: 28px; display: flex; align-items: center; justify-content: space-between; font-size: .8rem; flex-wrap:wrap; gap:12px; }
  .gdpr-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); display: inline-block; margin-right: 6px; }
  .modal-overlay { display: none; position: fixed; inset: 0; z-index: 200; background: rgba(15,23,42,.6); backdrop-filter: blur(4px); align-items: center; justify-content: center; padding: 20px; }
  .modal-overlay.open { display: flex; }
  .modal { background: white; border-radius: 24px; padding: 40px; max-width: 520px; width: 100%; max-height: 92vh; overflow-y: auto; box-shadow: 0 32px 80px rgba(15,23,42,.25); animation: modalIn .3s ease; position: relative; }
  @keyframes modalIn { from{ opacity:0; transform:scale(.96) translateY(20px); } to{ opacity:1; transform:scale(1) translateY(0); } }
  .modal h3 { font-family: 'Sora', sans-serif; font-size: 1.4rem; font-weight: 800; margin-bottom: 8px; }
  .modal .modal-sub { color: var(--muted); font-size: .9rem; margin-bottom: 28px; }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .form-group { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
  .form-group label { font-size: .8rem; font-weight: 600; color: var(--slate); }
  .form-group input, .form-group select { padding: 12px 14px; border: 1.5px solid var(--border); border-radius: var(--radius-sm); font-size: .9rem; font-family: 'DM Sans', sans-serif; color: var(--night); transition: border-color .2s; }
  .form-group input:focus, .form-group select:focus { outline: none; border-color: var(--sky); }
  .privacy-note { font-size: .78rem; color: var(--muted); text-align: center; margin-top: 12px; line-height: 1.5; }
  .privacy-note a { color: var(--sky); }
  .modal-close { position: absolute; top: 16px; right: 16px; width: 36px; height: 36px; border: none; background: var(--surface); border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .2s; }
  .modal-close:hover { background: var(--border); }
  .reveal { opacity: 0; transform: translateY(32px); transition: opacity .7s ease, transform .7s ease; }
  .reveal.visible { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: .1s; } .reveal-delay-2 { transition-delay: .2s; } .reveal-delay-3 { transition-delay: .3s; }
  .form-group input.error, .form-group select.error { border-color: #EF4444 !important; background: #FEF2F2; animation: shake .35s ease; }
  @keyframes shake { 0%,100%{ transform:translateX(0); } 20%{ transform:translateX(-5px); } 40%{ transform:translateX(5px); } 60%{ transform:translateX(-4px); } 80%{ transform:translateX(4px); } }
  .field-error { font-size:.73rem; color:#EF4444; margin-top:3px; display:none; }
  .field-error.show { display:block; }
  .region-warning { display:none; background:#FFF7ED; border:1.5px solid #FED7AA; border-radius:var(--radius-sm); padding:12px 14px; font-size:.82rem; color:#92400E; line-height:1.5; margin-top:4px; gap:8px; }
  .region-warning.show { display:flex; align-items:flex-start; }
  .selection-summary { background:var(--surface); border-radius:var(--radius-sm); padding:10px 14px; margin-bottom:20px; display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
  .selection-summary-label { font-size:.72rem; color:var(--muted); font-weight:600; text-transform:uppercase; letter-spacing:.06em; width:100%; margin-bottom:2px; }
  .sum-pill { display:inline-flex; align-items:center; gap:5px; background:white; border:1.5px solid var(--border); border-radius:50px; padding:4px 12px; font-size:.78rem; font-weight:600; color:var(--sky-dark); }
  .btn-primary.sending { opacity:.75; pointer-events:none; }
  .spinner { display:none; width:16px; height:16px; border:2px solid rgba(255,255,255,.4); border-top-color:white; border-radius:50%; animation:spin .7s linear infinite; }
  .btn-primary.sending .spinner { display:inline-block; }
  .btn-primary.sending .btn-check { display:none; }
  @keyframes spin{ to{ transform:rotate(360deg); } }
  .gallery-section { background: var(--white); }
  .gallery-grid { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
  .gallery-card { border:1.5px solid var(--border); border-radius:18px; overflow:hidden; background:white; transition:transform .3s, box-shadow .3s, border-color .3s; }
  .gallery-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); border-color:var(--sky); }
  .gallery-card .gimg { aspect-ratio:1/1; background:var(--surface); display:flex; align-items:center; justify-content:center; padding:20px; }
  .gallery-card .gimg img { width:100%; height:100%; object-fit:contain; }
  .gallery-card .gcap { padding:16px 18px 20px; }
  .gallery-card .gcap h3 { font-family:'Sora',sans-serif; font-size:.98rem; font-weight:700; margin-bottom:5px; }
  .gallery-card .gcap p { font-size:.82rem; color:var(--muted); line-height:1.5; }
  @media (max-width: 900px) { .hero-inner { grid-template-columns: 1fr; } .form-card { max-width: 440px; margin: 0 auto; } .steps-grid { grid-template-columns: 1fr; } .steps-grid::before { display: none; } .reviews-grid { grid-template-columns: 1fr; } .reviews-embed { grid-template-columns: 1fr; } .why-inner { grid-template-columns: 1fr; } .packages-grid { grid-template-columns: 1fr; } .incentivi-grid { grid-template-columns: 1fr; } .stats-bar { grid-template-columns: repeat(2,1fr); } .footer-grid { grid-template-columns: 1fr 1fr; } .nav-links { display: none; } .hamburger { display: flex; } .gallery-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 600px) { .stats-bar { grid-template-columns: 1fr 1fr; padding: 32px 20px; } .footer-grid { grid-template-columns: 1fr; } .form-row { grid-template-columns: 1fr; } section { padding: 64px 5%; } .gallery-grid { grid-template-columns: 1fr; } }

.nav-tel{display:none}
.crumbs{position:static;height:auto;display:block;background:none;backdrop-filter:none;border:0;box-shadow:none;z-index:auto;max-width:1100px;margin:0 auto;padding:18px 5% 0;font-size:.85rem;color:var(--muted)}.crumbs a{color:var(--sky);text-decoration:none}.crumbs a:hover{text-decoration:underline}
.page-hero{background:linear-gradient(135deg,#0C4A6E,#0EA5E9);color:#fff;padding:118px 5% 56px;text-align:center}.page-hero .section-tag{background:rgba(255,255,255,.16);color:#fff}.page-hero h1{font-family:'Sora',sans-serif;font-size:clamp(1.8rem,4.4vw,2.7rem);line-height:1.14;margin:16px auto 16px;max-width:820px}.page-hero p.lead{font-size:1.06rem;line-height:1.62;opacity:.96;max-width:680px;margin:0 auto 26px}
.data-table{width:100%;border-collapse:collapse;margin:8px 0 6px;font-size:.95rem;background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden}.data-table th,.data-table td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--border)}.data-table th{background:var(--surface);font-family:'Sora',sans-serif;font-weight:700;font-size:.86rem;color:var(--slate)}.data-table tr:last-child td{border-bottom:none}.data-table td strong{color:var(--night)}
.prose{max-width:820px;margin:0 auto;padding:8px 5%}.prose h2{font-family:'Sora',sans-serif;font-size:1.5rem;margin:34px 0 12px;color:var(--night)}.prose h3{font-family:'Sora',sans-serif;font-size:1.12rem;margin:22px 0 8px;color:var(--night)}.prose p{color:var(--slate);line-height:1.72;margin-bottom:14px}.prose ul{color:var(--slate);line-height:1.7;margin:0 0 16px 20px}.prose li{margin-bottom:7px}
.hub-grid{max-width:1100px;margin:0 auto;padding:0 5%;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.hub-card{display:block;background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:24px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}.hub-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--sky)}.hub-card .hub-ico{font-size:1.7rem}.hub-card h3{font-family:'Sora',sans-serif;color:var(--night);margin:10px 0 6px;font-size:1.08rem}.hub-card p{color:var(--muted);font-size:.9rem;line-height:1.55;margin:0}.hub-card .hub-go{display:inline-block;margin-top:12px;color:var(--sky);font-weight:700;font-size:.9rem}
