/* Auto-generated by scripts/css_mechanical_split.py
   Source: property_detail_part_01.css
   Part 2/2 - load order critical.
   Do not reorder or merge without re-running the splitter. */

  @media (max-width:760px){
    .similar-agency-logo{
      left:9px;
      bottom:9px;
      width:54px;
      height:34px;
      border-radius:12px;
    }
  }

/* HERO DETTAGLIO - LAYOUT E SPAZIATURA EFFETTIVI */

  @media (min-width: 1100px){
    .property-hero-layout-fix.property-detail-hero-grid{
      display:grid !important;
      grid-template-columns:minmax(0, 1fr) 360px !important;
      gap:28px !important;
      align-items:start !important;
    }

    .property-hero-box-fix.property-detail-price-box{
      width:360px !important;
      min-width:360px !important;
      max-width:360px !important;
      justify-self:end !important;
      align-self:start !important;
      margin-top:0 !important;
      margin-bottom:0 !important;
    }

    .property-hero-shell-fix{
      padding-bottom:42px !important;
    }
  }

  @media (max-width: 1099px){
    .property-hero-layout-fix.property-detail-hero-grid{
      display:flex !important;
      flex-direction:column !important;
      gap:32px !important;
      align-items:stretch !important;
    }

    .property-hero-box-fix.property-detail-price-box{
      width:100% !important;
      min-width:0 !important;
      max-width:100% !important;
      margin-top:4px !important;
      margin-bottom:22px !important;
    }

    .property-hero-shell-fix{
      padding-bottom:44px !important;
    }
  }

@media (max-width: 1100px){
      #detailSplit{
        grid-template-columns:minmax(0,1fr) !important;
      }
      #detailSplit > aside{
        order:2;
      }
    }@media (max-width: 900px){
      .hero-shell{
        padding:18px !important;
      }

      .hero-shell h1{
        font-size:clamp(24px, 7vw, 34px) !important;
        line-height:1.08 !important;
      }

      .hero-shell .lead{
        font-size:14px !important;
        line-height:1.55 !important;
      }

      .hero-shell > div:first-child{
        gap:16px !important;
      }

      .hero-shell .card{
        min-width:0 !important;
        max-width:none !important;
        width:100% !important;
        padding:18px !important;
      }

      .hero-shell .btn-row{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:10px !important;
      }

      .hero-shell .btn-row .btn{
        width:100% !important;
        justify-content:center !important;
      }

      #detailPrevBtn,
      #detailNextBtn{
        width:40px !important;
        height:40px !important;
        font-size:20px !important;
      }

      #detailGalleryCounter{
        right:12px !important;
        bottom:12px !important;
        font-size:12px !important;
        padding:6px 10px !important;
      }

      .grid-4{
        grid-template-columns:repeat(2, minmax(0,1fr)) !important;
        gap:12px !important;
      }

      #featureBoxes{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
      }

      #detailMap{
        height:320px !important;
      }

      .section.card{
        padding:18px !important;
      }

      .section.card h2{
        font-size:24px !important;
      }

      aside .card{
        padding:18px !important;
      }
    }
}

  /* STEP 03A — Dettaglio immobile: SEO/head corretto + hero premium */
  .property-detail-premium-hero{
    padding:30px !important;
    margin-bottom:28px !important;
    border:1px solid rgba(var(--brand-rgb), .12);
    background:
      radial-gradient(circle at 14% 8%, rgba(var(--brand-rgb), .15), transparent 28%),
      linear-gradient(135deg, rgba(255,255,255,.96), rgba(247,243,236,.90));
    box-shadow:0 22px 60px rgba(15,23,42,.08);
  }

  .property-detail-title{
    margin:0;
    max-width:880px;
    color:var(--ink-strong);
    font-family:var(--font-display);
    font-size:clamp(31px, 4vw, 56px);
    line-height:1.02;
    letter-spacing:-.048em;
    font-weight:540;
  }

  .property-detail-location{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
    margin-top:13px !important;
    max-width:820px;
    color:rgba(24,53,42,.72);
    font-size:clamp(14px, 1.2vw, 17px);
    line-height:1.55;
  }

  .property-detail-pills{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
    margin-top:18px;
  }

  .property-detail-pills .pill{
    border:1px solid rgba(var(--brand-rgb), .12);
    background:rgba(255,255,255,.70);
    color:rgba(24,53,42,.78);
    font-family:var(--font-display);
    font-size:11.5px;
    font-weight:800;
    letter-spacing:.035em;
    box-shadow:0 8px 22px rgba(15,23,42,.045);
  }

  .property-detail-excerpt{
    max-width:850px;
    margin-top:18px;
    color:rgba(24,53,42,.70);
    font-size:15px;
    line-height:1.68;
  }

  .property-detail-cta-card{
    padding:24px !important;
    border:1px solid rgba(var(--brand-rgb), .14);
    background:rgba(255,255,255,.78);
    box-shadow:0 20px 48px rgba(15,23,42,.08);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }

  .property-detail-price-main{
    margin-top:6px;
    color:var(--ink-strong);
    font-family:var(--font-display);
    font-size:clamp(28px, 2.6vw, 36px);
    font-weight:760;
    line-height:1.05;
    letter-spacing:-.045em;
  }

  .property-detail-cta-row{
    margin-top:18px;
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    align-items:stretch;
  }

  .property-detail-cta-btn{
    width:100%;
    min-height:48px;
    justify-content:center;
    text-align:center;
    border-radius:16px;
    font-family:var(--font-display);
    font-weight:850;
    letter-spacing:.065em;
    text-transform:uppercase;
  }

  .property-detail-cta-btn.is-disabled{
    opacity:.55;
    cursor:not-allowed;
    pointer-events:none;
  }

  .property-detail-login-note{
    margin-top:12px;
    line-height:1.6;
    font-size:13px;
  }

  @media (max-width:900px){
    .property-detail-premium-hero{
      padding:20px !important;
      margin-bottom:22px !important;
      border-radius:26px;
    }

    .property-detail-title{
      font-size:clamp(30px, 9vw, 43px);
      line-height:1.04;
      letter-spacing:-.04em;
    }

    .property-detail-location{
      margin-top:10px !important;
      font-size:14px;
      line-height:1.5;
    }

    .property-detail-pills{
      margin-top:14px;
      gap:7px;
    }

    .property-detail-pills .pill{
      font-size:10.5px;
      padding:7px 9px;
    }

    .property-detail-excerpt{
      margin-top:14px;
      font-size:14px;
      line-height:1.6;
    }

    .property-detail-cta-card{
      padding:18px !important;
      border-radius:22px;
    }

    .property-detail-price-main{
      font-size:30px;
    }

    .property-detail-cta-btn{
      min-height:50px;
      border-radius:17px;
    }
  }


    #detailAside{
      background:rgba(255,255,255,.72) !important;
      border:1px solid rgba(148,163,184,.18) !important;
      border-radius:22px !important;
      box-shadow:0 10px 30px rgba(15,23,42,.04) !important;
      padding:22px !important;
      box-sizing:border-box !important;
      background-clip:padding-box !important;
    }

    #similarPropertiesCard{
      background:transparent !important;
      border:0 !important;
      box-shadow:none !important;
      padding:0 !important;
      border-radius:0 !important;
    }

    .similar-card:hover{
      border-color:rgba(var(--brand-rgb), .28) !important;
    }

    .similar-link{
      background:var(--brand) !important;
      border:1px solid rgba(var(--brand-rgb), .28) !important;
      color:#fff !important;
    }

    .similar-link:hover{
      background:var(--brand-strong) !important;
      border-color:var(--brand-strong) !important;
      color:#fff !important;
    }

  @media (min-width: 1100px){
    .property-detail-hero,
    .property-hero,
    .property-detail-shell,
