 .technical-section {
     min-height: 100vh;
     padding: 150px 30px 80px;
     background: #0b211a;
     text-align: center;
 }

 .technical-container {
     max-width: 1500px;
     margin: 0 auto;
 }

 .technical-eyebrow {
     color: #c6a66b;
     letter-spacing: 4px;
     font-size: 12px;
     margin-bottom: 25px;
 }

 .technical-title {
     color: #d5bd88;
     font-family: Georgia, serif;
     font-size: clamp(30px, 4vw, 54px);
     font-weight: 400;
     letter-spacing: 3px;
     margin-bottom: 20px;
 }

 .technical-divider {
     color: #c6a66b;
     font-size: 22px;
     margin-bottom: 25px;
 }

 .technical-description {
     color: #d8d6c9;
     font-size: 16px;
     line-height: 1.8;
     margin: 0 auto 50px;
     max-width: 750px;
 }

 .estate-map {
     position: relative;
     width: 100%;
     margin: 0 auto;
 }

 .estate-map img {
     display: block;
     width: 100%;
     height: auto;
     border-radius: 4px;
 }

 @media (max-width: 768px) {
     .technical-section {
         padding: 125px 15px 60px;
     }

     .technical-description {
         font-size: 14px;
         margin-bottom: 30px;
     }
 }

 /* Золотые интерактивные метки */

 .estate-marker {
     position: absolute;
     width: 16px;
     height: 16px;
     padding: 0;
     border: 2px solid #e6cf91;
     border-radius: 50%;
     background: #c6a66b;
     transform: translate(-50%, -50%);
     cursor: pointer;
     z-index: 2;
     box-shadow: 0 0 12px rgba(198, 166, 107, 0.7);
 }

 .estate-marker::before {
     content: "";
     position: absolute;
     inset: -9px;
     border: 1px solid rgba(230, 207, 145, 0.8);
     border-radius: 50%;
     animation: estatePulse 3s ease-out infinite;
 }

 .estate-marker:hover {
     background: #f0dca8;
     box-shadow: 0 0 18px rgba(240, 220, 168, 0.9);
 }

 @keyframes estatePulse {
     0% {
         transform: scale(0.65);
         opacity: 0.9;
     }

     100% {
         transform: scale(1.8);
         opacity: 0;
     }
 }


 /* MOBILE — INTERACTIVE ESTATE MARKERS */

 @media (max-width: 768px) {
     .estate-marker {
         display: block;
         width: 22px;
         height: 22px;
         border-width: 2px;
         z-index: 5;
     }

     .estate-marker::before {
         inset: -7px;
     }
 }


 /* Уважение к настройкам уменьшения анимации */

 @media (prefers-reduced-motion: reduce) {
     .estate-marker::before {
         animation: none;
     }
 }

 /* Окно технического описания */

 .estate-modal {
     position: fixed;
     inset: 0;
     display: none;
     align-items: center;
     justify-content: center;
     padding: 20px;
     background: rgba(3, 14, 10, 0.82);
     z-index: 1000;
 }

 .estate-modal.is-open {
     display: flex;
 }

 .estate-modal-content {
     position: relative;
     width: min(100%, 720px);
     max-height: 85vh;
     overflow-y: auto;
     padding: 55px 45px;
     background: #10291f;
     border: 1px solid rgba(198, 166, 107, 0.45);
     box-shadow: 0 20px 70px rgba(0, 0, 0, 0.45);
     text-align: center;
 }

 .estate-modal-close {
     position: absolute;
     top: 15px;
     right: 20px;
     border: 0;
     background: transparent;
     color: #d5bd88;
     font-size: 34px;
     cursor: pointer;
 }

 .estate-modal-eyebrow {
     color: #c6a66b;
     font-size: 11px;
     letter-spacing: 3px;
     margin-bottom: 25px;
 }

 .estate-modal-title {
     color: #d5bd88;
     font-family: Georgia, serif;
     font-size: clamp(28px, 4vw, 42px);
     font-weight: 400;
     margin-bottom: 20px;
 }

 .estate-modal-divider {
     color: #c6a66b;
     margin-bottom: 25px;
 }

 .estate-modal-description {
     color: #e0ded3;
     font-size: 16px;
     line-height: 1.9;
 }

 @media (max-width: 768px) {
     .estate-modal-content {
         padding: 50px 25px 35px;
     }
 }

 /* =========================================
   RESIDENCE — TECHNICAL DOSSIER
   ========================================= */

 .estate-dossier-section {
     margin: 0 0 34px;
 }

 .estate-dossier-heading {
     margin: 0 0 14px;
     color: #d4b46a;
     font-size: 19px;
     font-weight: 500;
     letter-spacing: 0.04em;
     line-height: 1.4;
 }

 .estate-dossier-paragraph {
     margin: 0 0 12px;
     color: #f1eee6;
     font-size: 15px;
     font-weight: 400;
     line-height: 1.85;
 }

 .estate-dossier-image {
     display: block;
     width: 100%;
     height: auto;
     margin: 22px auto 8px;
     border: 1px solid rgba(212, 180, 106, 0.35);
     border-radius: 4px;
 }

 .estate-dossier-closing {
     margin: 38px 0 0;
     padding: 22px 0 0;
     border-top: 1px solid rgba(212, 180, 106, 0.35);
     color: #d4b46a;
     font-size: 16px;
     font-style: italic;
     line-height: 1.8;
 }

 /* Mobile */

 @media (max-width: 600px) {
     .estate-dossier-section {
         margin-bottom: 28px;
     }

     .estate-dossier-heading {
         font-size: 17px;
     }

     .estate-dossier-paragraph {
         font-size: 14px;
         line-height: 1.75;
     }

     .estate-dossier-closing {
         font-size: 15px;
     }
 }