#landing_top{
      --yellow:#ffea00;
      --black:#0b0b0b;
      --paper:#f5f4ef;
      --line:#deddd7;
      --gold:#b89a58;
      --muted:#6a6a66;
      --white:#fff;
      --max:1200px;
    }
    #landing_top, #landing_top *, #landing_top *::before, #landing_top *::after{box-sizing:border-box}
    #landing_top{scroll-behavior:smooth}
    #landing_top{margin:0;color:var(--black);background:#fff;line-height:1.55}
    #landing_top img{display:block;max-width:100%}
    #landing_top a{color:inherit;text-decoration:none}
    #landing_top button, #landing_top input, #landing_top select, #landing_top textarea{font:inherit}
    #landing_top .container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
    #landing_top .eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;display:inline-block;border-bottom:3px solid var(--yellow);padding-bottom:4px}
    #landing_top .section{padding:100px 0}
    #landing_top .section-title{font-size:clamp(28px,4vw,40px);line-height:1.05;margin:12px 0 24px;letter-spacing:-.045em}
    #landing_top .lead{font-size:clamp(17px,2vw,21px);max-width:780px;color:#3f3f3c}
    #landing_top .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;border:1px solid var(--black);background:var(--black);color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:.2s}
    #landing_top .btn:hover{transform:translateY(-2px)}
    #landing_top .btn-yellow{background:var(--yellow);color:var(--black);border-color:var(--yellow)}
    #landing_top .btn-outline{background:transparent;color:var(--black)}

    #landing_top .topbar{background:#171717;color:#fff;font-size:12px;padding:11px 0}
    #landing_top .topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}
    #landing_top .bank-lockup{display:flex;align-items:center;gap:12px;color:#ddd}
    #landing_top .bank-logo{width:94px;height:30px;object-fit:contain;}
    #landing_top .top-contact{display:flex;gap:20px;color:#bbb}

    #landing_top .demo-site-header{background:#0b0b0b;color:#fff}
    #landing_top .nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    #landing_top .logo{font-weight:900;font-size:26px;letter-spacing:-.05em;line-height:.85}
    #landing_top .logo small{display:block;font-size:7px;letter-spacing:.2em;margin-top:6px}
    #landing_top .nav-links{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:600}
    #landing_top .nav-links a{opacity:.8}#landing_top .nav-links a:hover{opacity:1}
    #landing_top .project-subnav{background:#fff;border-bottom:1px solid #e4e4df;position:sticky;top:0;z-index:4}
    #landing_top .project-subnav-inner{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    #landing_top .project-subnav-title{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}
    #landing_top .project-subnav-links{display:flex;align-items:center;gap:24px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
    #landing_top .project-subnav-links a:hover{border-bottom:3px solid var(--yellow);padding-bottom:5px}

    #landing_top .hero{min-height:620px;position:relative;background:#111;color:#fff;overflow:hidden;display:flex;align-items:flex-end}
    #landing_top .hero-media{position:absolute;inset:0}
    #landing_top .hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 62%}
    #landing_top .hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.92) 0%,rgba(5,5,5,.74) 37%,rgba(5,5,5,.18) 72%,rgba(5,5,5,.28) 100%)}
    #landing_top .hero-content{position:relative;z-index:2;padding:105px 0 68px;max-width:720px}
    #landing_top .hero-kicker{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
    #landing_top .hero-kicker:before{content:"";width:46px;height:4px;background:var(--yellow)}
    #landing_top .hero h1{font-size:clamp(48px,7vw,88px);line-height:.92;margin:24px 0;letter-spacing:-.065em;text-transform:uppercase;font-weight: 800}
    #landing_top .hero h1 span{color:var(--yellow)}
    #landing_top .hero p{font-size:clamp(18px,2vw,23px);max-width:620px;color:#e2e2e2}
    #landing_top .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
    #landing_top .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.2);margin-top:38px;max-width:680px}
    #landing_top .hero-stat{background:rgba(5,5,5,.76);padding:20px}
    #landing_top .hero-stat strong{display:block;font-size:28px}#landing_top .hero-stat span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#cfcfcf}

    #landing_top .intro-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}
    #landing_top .intro-image{position:relative}
    #landing_top .intro-image img{width:100%}
    #landing_top .intro-tag{position:absolute;left:-24px;bottom:32px;background:var(--yellow);padding:26px 32px;font-size:24px;font-weight:900;line-height:1.1}
    #landing_top .feature-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px}
    #landing_top .feature{border-top:1px solid var(--black);padding-top:16px}
    #landing_top .feature strong{font-size:14px}#landing_top .feature p{font-size:13px;color:var(--muted);margin:7px 0 0}

    #landing_top .location{background:var(--paper)}
    #landing_top .location-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:stretch}
    #landing_top .location-copy{background:var(--yellow);padding:54px}
    #landing_top .location-copy h2{font-size:clamp(34px,5vw,58px);line-height:1;margin:10px 0 24px;letter-spacing:-.05em}
    #landing_top .location-points{display:grid;gap:14px;margin-top:28px}
    #landing_top .location-point{display:flex;gap:14px;font-size:14px;font-weight:600}
    #landing_top .location-point b{width:28px;height:28px;border:1px solid #111;display:grid;place-items:center;flex:0 0 auto}
    #landing_top .map-card{position:relative;min-height:540px;background:#ddd;overflow:hidden}
    #landing_top .map-card img{width:100%;height:100%;object-fit:cover}
    #landing_top .map-label{position:absolute;right:24px;bottom:24px;background:#111;color:#fff;padding:18px 22px;font-weight:700;max-width:310px}

    #landing_top .facts{background:#0b0b0b;color:#fff}
    #landing_top .facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
    #landing_top .fact{border:1px solid #3a3a3a;padding:30px;min-height:190px;position:relative}
    #landing_top .fact:after{content:"";position:absolute;right:0;bottom:0;width:40px;height:4px;background:var(--yellow)}
    #landing_top .fact strong{display:block;font-size:42px;line-height:1;margin-bottom:14px}#landing_top .fact span{font-size:13px;color:#bdbdbd}

    #landing_top .apartments-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:42px}
    #landing_top .filters{display:flex;gap:8px;flex-wrap:wrap;min-width:300px}
    #landing_top .filter{border:1px solid #cfcfcf;background:#fff;padding:11px 15px;font-size:11px;font-weight:800;text-transform:uppercase;cursor:pointer}
    #landing_top .filter.active{background:#111;color:#fff;border-color:#111}
    #landing_top .apartment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
    #landing_top .apartment{border:1px solid var(--line);background:#fff;overflow:hidden;transition:.2s;display:flex;flex-direction:column}
    #landing_top .apartment:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(0,0,0,.08)}
    #landing_top .apartment-media{background:#f2eee8;aspect-ratio:1.2/1;overflow:hidden;position:relative}
    #landing_top .apartment-media img{width:100%;height:100%;object-fit:cover}
    #landing_top .type-tag{position:absolute;left:12px;top:12px;background:var(--yellow);font-weight:900;padding:7px 10px;font-size:12px}
    #landing_top .apartment-body{padding:20px;display:flex;flex-direction:column;flex:1}
    #landing_top .apartment-body h3{font-size:22px;margin:0 0 8px}#landing_top .apartment-meta{font-size:13px;color:var(--muted)}
    #landing_top .apartment-details{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;margin-top:18px;font-size:12px}
    #landing_top .apartment button{margin-top:18px;width:100%}

    #landing_top .finance{padding:80px 0;background:linear-gradient(110deg,var(--yellow) 0 61%,#111 61%);position:relative;overflow:hidden}
    #landing_top .finance-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}
    #landing_top .finance h2{font-size:clamp(38px,5vw,66px);line-height:1;margin:0 0 22px;letter-spacing:-.055em;max-width:720px}
    #landing_top .finance-note{font-size:12px;max-width:670px}
    #landing_top .finance-card{background:#fff;padding:34px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
    #landing_top .finance-card h3{margin-top:0;font-size:22px}
    #landing_top .finance-card ul{padding-left:18px;font-size:13px;color:#444}

    #landing_top .gallery{background:#f6f6f3}
    #landing_top .gallery-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:280px 280px;gap:18px;margin-top:42px}
    #landing_top .gallery-grid img{width:100%;height:100%;object-fit:cover}
    #landing_top .gallery-grid .large{grid-row:1/3}

    #landing_top .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}
    #landing_top .contact-details{display:grid;gap:16px;margin-top:28px;font-weight:600}
    #landing_top .form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    #landing_top .form .full{grid-column:1/-1}
    #landing_top .form input, #landing_top .form select, #landing_top .form textarea{width:100%;border:1px solid #bdbdbd;padding:15px;background:#fff}
    #landing_top .form textarea{min-height:130px;resize:vertical}
    #landing_top .form label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;display:block;margin-bottom:7px}

    #landing_top .demo-site-footer{background:#0a0a0a;color:#fff;padding:62px 0 28px}
    #landing_top .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}
    #landing_top .demo-site-footer p, #landing_top .demo-site-footer a{font-size:12px;color:#b8b8b8}
    #landing_top .footer-bottom{border-top:1px solid #282828;margin-top:42px;padding-top:22px;display:flex;justify-content:space-between;font-size:10px;color:#777}

    #landing_modal{position:fixed;inset:0;background:rgba(0,0,0,.84);z-index:100;display:none;align-items:center;justify-content:center;padding:24px}
    #landing_modal.open{display:flex}
    #landing_modal .modal-box{background:#fff;width:min(980px,100%);max-height:92vh;overflow:auto;display:grid;grid-template-columns:1.2fr .8fr;position:relative}
    #landing_modal .modal-img{background:#eee;min-height:540px}#landing_modal .modal-img img{width:100%;height:100%;object-fit:contain}
    #landing_modal .modal-copy{padding:42px}#landing_modal .modal-close{position:absolute;right:12px;top:12px;width:42px;height:42px;border:0;background:#111;color:#fff;font-size:22px;cursor:pointer}

    #contact {
      scroll-margin-top: 50px;
    }

    .landing-contact-steps {
      display: grid;
      gap: 20px;
      margin-top: 36px;
    }

    .landing-contact-step {
      display: grid;
      grid-template-columns: 42px 1fr;
      gap: 16px;
      align-items: start;
      padding-top: 18px;
      border-top: 1px solid #deddd7;
    }

    .landing-contact-step > span {
      width: 42px;
      height: 42px;
      display: grid;
      place-items: center;
      background: #ffea00;
      color: #0b0b0b;
      font-size: 11px;
      font-weight: 800;
    }

    .landing-contact-step strong {
      display: block;
      margin-bottom: 5px;
      font-size: 15px;
    }

    .landing-contact-step p {
      margin: 0;
      color: #666;
      font-size: 13px;
      line-height: 1.55;
    }

    @media(max-width:980px){
      #landing_top .nav-links{display:none}
      #landing_top .hero{min-height:590px}
      #landing_top .intro-grid, #landing_top .location-grid, #landing_top .finance-grid, #landing_top .contact-grid{grid-template-columns:1fr}
      #landing_top .facts-grid{grid-template-columns:1fr 1fr}
      #landing_top .apartment-grid{grid-template-columns:1fr 1fr}
      #landing_top .gallery-grid{grid-template-columns:1fr 1fr}
      #landing_top .finance{background:var(--yellow)}
      #landing_modal .modal-box{grid-template-columns: 1fr;}
      #landing_modal .modal-box{grid-template-columns:1fr}
      #landing_modal .modal-img{min-height:380px}
    }
    @media(max-width:620px){
      #landing_top .container{width:min(calc(100% - 28px),var(--max))}
      #landing_top .section{padding:72px 0}
      #landing_top .top-contact{display:none}
      #landing_top .nav{height:70px}
      #landing_top .hero-content{padding:82px 0 48px}
      #landing_top .project-subnav-inner{align-items:flex-start;flex-direction:column;padding:14px 0}
      #landing_top .project-subnav-links{width:100%;overflow-x:auto;gap:18px;padding-bottom:4px}
      #landing_top .hero-stats{grid-template-columns:1fr}
      #landing_top .intro-tag{left:0}
      #landing_top .feature-list, #landing_top .facts-grid, #landing_top .apartment-grid, #landing_top .form, #landing_top .footer-grid{grid-template-columns:1fr}
      #landing_top .apartments-head{align-items:start;flex-direction:column}
      #landing_top .location-copy{padding:34px 24px}
      #landing_top .gallery-grid{display:block}
      #landing_top .gallery-grid img{height:270px;margin-bottom:12px}
      #landing_top .footer-bottom{display:block}
      #landing_modal .modal-copy{padding:28px}
      #landing_top .hero-media:after{background:linear-gradient(90deg,rgba(5,5,5,.9),rgba(5,5,5,.45))}
    }

    #landing_top {
      padding-top: 18px;
    }
    @media(max-width: 768px) {
      #landing_top {
         padding-top: 4px;
      }
    }
    @media(max-width: 480px) {
      #landing_top {
         padding-top: 0;
      }
    }

    /* Landing page Contact Form 7 */
    .landing-contact-form {
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 32px;
      background: #fff;
      box-shadow: 0 10px 35px rgba(0, 0, 0, 0.08);
    }

    /* Two-column layout */
    .landing-contact-form .landing-form-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px 16px;
    }

    /* Form groups */
    .landing-contact-form .form-group {
      min-width: 0;
      margin: 0;
    }

    .landing-contact-form .form-group-full {
      grid-column: 1 / -1;
    }

    /* Labels */
    .landing-contact-form .form-group > span:first-child:not(.wpcf7-form-control-wrap) {
      display: block;
      margin: 0 0 6px;
      color: #111;
      font-size: 10px;
      font-weight: 800;
      line-height: 1.3;
      letter-spacing: 0.07em;
      text-transform: uppercase;
    }

    .landing-contact-form .wpcf7-form-control-wrap {
      display: block;
      width: 100%;
    }

    /* Fields */
    .landing-contact-form input[type="text"],
    .landing-contact-form input[type="email"],
    .landing-contact-form input[type="tel"],
    .landing-contact-form select,
    .landing-contact-form textarea {
      display: block;
      width: 100% !important;
      max-width: none !important;
      margin: 0;
      border: 1px solid #d8d8d3;
      border-radius: 0;
      background-color: #fff;
      color: #111;
      font-family: inherit;
      font-size: 13px;
      font-weight: 400;
      line-height: 1.4;
      box-shadow: none;
      transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
    }

    .landing-contact-form input[type="text"],
    .landing-contact-form input[type="email"],
    .landing-contact-form input[type="tel"],
    .landing-contact-form select {
      height: 46px !important;
      padding: 0 14px !important;
    }

    /* Compact message field */
    .landing-contact-form textarea {
      width: 100% !important;
      height: 82px !important;
      min-height: 82px;
      padding: 11px 14px !important;
      resize: vertical;
    }

    /* Select */
    .landing-contact-form select {
      padding-right: 42px !important;
      background-position:
        calc(100% - 18px) 19px,
        calc(100% - 13px) 19px,
        calc(100% - 37px) 11px;
      background-size:
        5px 5px,
        5px 5px,
        1px 24px;
    }

    /* Focus */
    .landing-contact-form input[type="text"]:focus,
    .landing-contact-form input[type="email"]:focus,
    .landing-contact-form input[type="tel"]:focus,
    .landing-contact-form select:focus,
    .landing-contact-form textarea:focus {
      border-color: #111;
      box-shadow: 0 0 0 2px rgba(255, 234, 0, 0.4);
    }

    /* Placeholders */
    .landing-contact-form input::placeholder,
    .landing-contact-form textarea::placeholder {
      color: #8a8a85;
      opacity: 1;
    }

    /* Acceptance checkbox */
    .landing-contact-form .landing-acceptance {
      font-size: 11px;
      line-height: 1.4;
      color: #5f5f5b;
    }

    .landing-contact-form .landing-acceptance .wpcf7-list-item {
      display: block;
      margin: 0;
    }

    .landing-contact-form .landing-acceptance label {
      display: flex;
      align-items: flex-start;
      gap: 8px;
      margin: 0;
      cursor: pointer;
    }

    .landing-contact-form .landing-acceptance input[type="checkbox"] {
      width: 15px !important;
      height: 15px;
      flex: 0 0 15px;
      margin: 1px 0 0;
      padding: 0;
      accent-color: #111;
    }

    .landing-contact-form .landing-acceptance .wpcf7-list-item-label {
      flex: 1;
    }

    /* Submit row */
    .landing-contact-form .landing-submit {
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .landing-contact-form input[type="submit"] {
      width: auto !important;
      min-width: 180px;
      height: 48px !important;
      margin: 0;
      padding: 0 24px !important;
      border: 1px solid #ffea00;
      background: #ffea00;
      color: #0b0b0b;
      font-size: 11px;
      font-weight: 800;
      line-height: 1;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
    }

    .landing-contact-form input[type="submit"]:hover {
      border-color: #0b0b0b;
      background: #0b0b0b;
      color: #fff;
      transform: translateY(-2px);
    }

    .landing-contact-form input[type="submit"]:disabled {
      cursor: not-allowed;
      opacity: 0.55;
      transform: none;
    }

    /* reCAPTCHA notice */
    .landing-contact-form .landing-submit small {
      display: block;
      max-width: 340px;
      margin: 0;
      color: #777;
      font-size: 9px;
      font-weight: 400;
      line-height: 1.4;
    }

    .landing-contact-form .landing-submit small a {
      color: inherit;
      text-decoration: underline;
    }

    /* Contact Form 7 spinner */
    .landing-contact-form .wpcf7-spinner {
      flex: 0 0 24px;
      margin: 0;
    }

    /* Validation messages */
    .landing-contact-form .wpcf7-not-valid {
      border-color: #dc3232;
    }

    .landing-contact-form .wpcf7-not-valid-tip {
      display: block;
      margin-top: 4px;
      font-size: 10px;
      line-height: 1.3;
    }

    .landing-contact-form ~ .wpcf7-response-output,
    .wpcf7 form .landing-contact-form + .wpcf7-response-output {
      margin: 14px 0 0;
      padding: 10px 14px;
      font-size: 12px;
      line-height: 1.4;
    }

    /* Tablet and mobile */
    @media (max-width: 767px) {
      .landing-contact-form {
        padding: 24px 20px;
      }

      .landing-contact-form .landing-form-grid {
        grid-template-columns: 1fr;
        gap: 13px;
      }

      .landing-contact-form .form-group-full {
        grid-column: auto;
      }

      .landing-contact-form .landing-submit {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
      }

      .landing-contact-form input[type="submit"] {
        width: 100% !important;
      }

      .landing-contact-form .landing-submit small {
        max-width: none;
      }
    }

