


:root{
      --text:#111217;
      --muted:rgba(17,18,23,.65);
      --accent:#8a8a88;
      --glass:rgba(250,250,249,.86);
      --glass-soft:rgba(245,245,244,.92);
      --border:rgba(255,255,255,.58);
      --shadow:0 16px 40px rgba(70,70,70,.08);
      --overlay:rgba(247,247,246,.985);
    }

    *{
      box-sizing:border-box;
      margin:0;
      padding:0;
      -webkit-tap-highlight-color:transparent;
    }

    html{ scroll-behavior:smooth; }

    body{
      margin:0;
      font-family:"Montserrat",sans-serif;
      color:var(--text);
      background:#e9e9e7;
      overflow-x:hidden;
      transition:background .3s ease,color .3s ease;
    }

    body.dark{
      --text:#f7f7f7;
      --muted:rgba(255,255,255,.60);
      --accent:#c8c8c8;
      --glass:rgba(18,18,19,.68);
      --glass-soft:rgba(255,255,255,.045);
      --border:rgba(255,255,255,.10);
      --shadow:0 20px 60px rgba(0,0,0,.48);
      --overlay:rgba(6,6,7,.98);
      background:#050505;
    }

    button, input, select, textarea{ font:inherit; }
    button{ color:inherit; }
    a{ color:inherit; text-decoration:none; }

    #page{
      min-height:100vh;
      min-height:100svh;
      background-image:
        linear-gradient(
          to bottom,
          rgba(255,255,255,0) 0%,
          rgba(255,255,255,0) 53%,
          rgba(233,233,231,.20) 68%,
          rgba(233,233,231,.65) 81%,
          rgba(233,233,231,.94) 92%,
          #e9e9e7 100%
        ),
        url("/assets/backgrounds/ui-texture-915a72b84346.webp");
      background-repeat:no-repeat;
      background-position:42% top;
      background-size:100% auto;
      background-color:#e9e9e7;
    }

    body.dark #page{
      background-image:
        linear-gradient(
          to bottom,
          rgba(0,0,0,0) 0%,
          rgba(0,0,0,0) 53%,
          rgba(5,5,6,.17) 68%,
          rgba(5,5,6,.62) 81%,
          rgba(5,5,6,.94) 92%,
          #050505 100%
        ),
        url("/assets/backgrounds/ui-texture-915a72b84346.webp");
      background-repeat:no-repeat;
      background-position:42% top;
      background-size:100% auto;
      background-color:#050505;
    }

    .glass{
      background:var(--glass);
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      -webkit-backdrop-filter:blur(25px) saturate(145%);
      backdrop-filter:blur(25px) saturate(145%);
    }

    h1, h2, h3, strong, .section-title, .hero-title, .rental-name, .property-content h3, .stat strong, .tour-body h3, .tour-total strong, .rental-price strong, .rental-price-box strong{
      font-family:"Montserrat",sans-serif !important;
    }

    .site-header{
      position:fixed;
      z-index:3000;
      top:calc(8px + env(safe-area-inset-top));
      left:10px;
      right:10px;
      height:92px;
      padding:8px 10px 8px 12px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:5px;
      overflow:hidden;
      border-radius:33px 36px 31px 35px / 31px 34px 35px 32px;

      background-color:#eeeeeb;
      background-image:
        linear-gradient(rgba(255,255,255,.10),rgba(255,255,255,.10)),
        url("/assets/backgrounds/ui-texture-b08cc5207ae0.jpg");
      background-size:cover;
      background-position:center center;
      background-repeat:no-repeat;

      border:1px solid rgba(255,255,255,.60);
      box-shadow:0 14px 40px rgba(0,0,0,.14);
      -webkit-backdrop-filter:none;
      backdrop-filter:none;

      transform:translate3d(0,0,0);
      opacity:1;
      transition:transform .68s cubic-bezier(.22,.8,.25,1),opacity .48s ease;
    }

    body.dark .site-header{
      background-color:#161616;
      background-image:
        linear-gradient(rgba(0,0,0,.12),rgba(0,0,0,.12)),
        url("/assets/backgrounds/ui-texture-2eeefd99586a.jpg");
      background-size:cover;
      background-position:center center;
      background-repeat:no-repeat;

      border-color:rgba(255,255,255,.10);
      box-shadow:0 16px 48px rgba(0,0,0,.50);
    }

    .site-header.header-hidden{
      transform:translate3d(0,calc(-160% - env(safe-area-inset-top)),0);
      opacity:0;
      pointer-events:none;
    }





    .header-actions{
      flex:0 0 auto;
      display:flex;
      align-items:center;
      gap:4px;
      transform:translateY(5px);
    }

    .round-control{
      width:38px;
      height:38px;
      flex:0 0 38px;
      padding:0;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.56);
      background:rgba(255,255,255,.25);
      display:grid;
      place-items:center;
      cursor:pointer;
      color:var(--text);
      -webkit-backdrop-filter:blur(14px);
      backdrop-filter:blur(14px);
      transition:transform .18s ease,background .18s ease;
    }

    .round-control:active{ transform:scale(.92); }

    body.dark .round-control{
      background:rgba(255,255,255,.055);
      border-color:rgba(255,255,255,.12);
      color:#fff;
    }

    .language-icon{ font-size:12px;font-weight:500;letter-spacing:-.02em; }

    .theme-symbol{
      width:16px;height:16px;display:block;fill:none;stroke:currentColor;
      stroke-width:1.6;stroke-linecap:round;
    }

    .whatsapp-control i{ font-size:17px;font-weight:400; }

    .language-menu{
      position:fixed;
      z-index:5000;
      top:calc(109px + env(safe-area-inset-top));
      right:14px;
      width:170px;
      padding:8px;
      border-radius:21px;
      background:rgba(241,234,247,.94);
      border:1px solid rgba(255,255,255,.65);
      box-shadow:0 18px 50px rgba(55,40,70,.18);
      -webkit-backdrop-filter:blur(25px);
      backdrop-filter:blur(25px);
    }

    body.dark .language-menu{
      background:rgba(13,13,14,.96);
      border-color:rgba(255,255,255,.10);
    }

    .language-menu[hidden]{ display:none; }

    .language-menu button{
      width:100%;
      border:0;
      background:transparent;
      border-radius:14px;
      text-align:left;
      padding:11px 12px;
      cursor:pointer;
      font-size:11px;
      letter-spacing:.08em;
    }

    .home-shell{
      width:100%;
      max-width:448px;
      margin:0 auto;
      padding:calc(112px + env(safe-area-inset-top)) 16px calc(70px + env(safe-area-inset-bottom));
    }

    .hero-space{
      min-height:345px;
      display:flex;
      align-items:flex-start;
      justify-content:flex-start;
      padding:25px 5px 0 18px;
    }

    .hero-title{
      font-size:41px;
      line-height:.86;
      font-weight:400;
      letter-spacing:.055em;
      text-align:left;
      color:var(--text);
      text-transform:uppercase;
      transform:scaleY(.88);
      transform-origin:left top;
    }

    body.dark .hero-title{ color:#fff; }

    .hero-title small{
      display:block;
      margin-bottom:8px;
      font-family:"Montserrat",sans-serif;
      font-size:9px;
      line-height:1;
      font-weight:400;
      letter-spacing:.28em;
    }

    

    

    

    .action-icon{
      width:58px;height:58px;display:flex;align-items:center;justify-content:center;pointer-events:none;
    }

    .action-icon svg{
      width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1.55;
      stroke-linecap:round;stroke-linejoin:round;
    }

    .action-bottom{
      width:100%;display:flex;flex-direction:column;align-items:center;pointer-events:none;
    }

    

    .arrow-circle{
      width:34px;height:34px;border-radius:50%;border:1px solid rgba(17,18,23,.28);
      display:grid;place-items:center;
    }

    body.dark .arrow-circle{ border-color:rgba(255,255,255,.27); }

    .arrow-circle svg{
      width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;
      stroke-linecap:round;stroke-linejoin:round;
    }

    .info-card, .institution{
      margin-top:15px;padding:24px 20px;border-radius:30px;
    }

    .eyebrow{
      font-size:8px;font-weight:500;letter-spacing:.21em;line-height:1.6;
      text-transform:uppercase;color:var(--muted);
    }

    .info-card h2{
      margin-top:12px;font-size:27px;line-height:.96;font-weight:400;letter-spacing:.04em;
      text-transform:uppercase;transform:scaleY(.90);transform-origin:left;
    }

    .info-card h3{
      margin-top:10px;font-size:12px;font-weight:500;letter-spacing:.08em;
      text-transform:uppercase;transform:scaleY(.92);transform-origin:left;
    }

    .info-card p, .institution p{
      margin-top:14px;font-size:11px;line-height:1.8;color:var(--muted);
    }

    .stats{
      display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px;
    }

    .stat{
      padding:18px 10px;border-radius:25px;text-align:center;
    }

    .stat strong{
      display:block;font-size:24px;line-height:.95;font-weight:500;letter-spacing:.03em;
      transform:scaleY(.88);transform-origin:center;
    }

    .stat span{
      display:block;margin-top:7px;font-size:7px;line-height:1.4;letter-spacing:.13em;
      text-transform:uppercase;color:var(--muted);
    }

    .cta{
      margin-top:18px;width:100%;min-height:47px;border:0;border-radius:18px;padding:12px;
      background:#111217;color:#fff;font-size:8px;font-weight:500;letter-spacing:.15em;
      text-transform:uppercase;cursor:pointer;
    }

    body.dark .cta{ background:#fff;color:#111; }

    .contact-card{
      margin-top:15px;padding:22px 20px;border-radius:30px;
    }

    .contact-row{
      display:flex;align-items:center;gap:11px;padding:11px 0;
      border-bottom:1px solid rgba(17,18,23,.08);font-size:11px;
    }

    body.dark .contact-row{ border-color:rgba(255,255,255,.08); }
    .contact-row{font-size:clamp(14px,1.25vw,18px);gap:14px;}
    .contact-row span{font-size:inherit;line-height:1.35;overflow-wrap:anywhere;}
    .contact-row i, .contact-row .inline-ui-icon{width:22px;height:22px;flex:0 0 22px;}
    @media (max-width:700px){.contact-card{padding:24px 22px}.contact-row{font-size:16px;padding:15px 0;gap:14px}}
    .contact-row:last-child{ border-bottom:0; }
    .contact-row i{ width:20px;text-align:center; }

    .overlay{
      position:fixed;z-index:1200;inset:0;display:none;overflow:hidden;
      background:var(--overlay);color:var(--text);
    }

    .overlay.active{ display:block; }

    .overlay-scroll{
      position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;
      -webkit-overflow-scrolling:touch;overscroll-behavior-y:auto;touch-action:pan-y;
      padding:calc(125px + env(safe-area-inset-top)) 16px calc(100px + env(safe-area-inset-bottom));
    }

    .overlay-inner{
      width:100%;max-width:448px;margin:0 auto;padding-top:25px;padding-bottom:100px;
    }

    .overlay-close{
      position:fixed;z-index:2900;top:calc(112px + env(safe-area-inset-top));right:16px;
      width:39px;height:39px;border-radius:50%;border:1px solid var(--border);
      background:var(--glass);display:grid;place-items:center;
      -webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:pointer;
    }

    .section-title{
      font-family:"Montserrat",sans-serif;font-size:36px;line-height:.94;font-weight:400;
      letter-spacing:.09em;text-transform:uppercase;transform:scaleY(.88);transform-origin:left top;
    }

    .section-title small{
      display:block;margin-bottom:10px;font-size:9px;line-height:1;letter-spacing:.28em;
      font-weight:400;text-transform:uppercase;
    }

    .section-intro{
      margin-top:16px;max-width:350px;font-size:10px;line-height:1.75;
      font-weight:300;letter-spacing:.025em;color:var(--muted);
    }

    .property-mode{
      margin-top:24px;display:flex;gap:7px;
    }

    .property-mode button{
      flex:1;min-height:40px;border:1px solid var(--border);border-radius:18px;
      background:var(--glass-soft);font-size:8px;font-weight:500;letter-spacing:.14em;
      text-transform:uppercase;cursor:pointer;
    }

    .property-mode button.active{
      background:#111217;color:#fff;border-color:#111217;
    }

    body.dark .property-mode button.active{
      background:#fff;color:#111;border-color:#fff;
    }

    .property-mode button i{ margin-left:4px;font-size:9px; }

    .category-tabs{
      display:flex;gap:7px;margin-top:10px;overflow:auto;padding-bottom:2px;scrollbar-width:none;
    }

    .category-tabs::-webkit-scrollbar{ display:none; }

    .category-tabs button{
      border:1px solid var(--border);background:var(--glass-soft);border-radius:999px;
      padding:10px 16px;white-space:nowrap;font-size:8px;font-weight:500;
      letter-spacing:.13em;text-transform:uppercase;cursor:pointer;
    }

    .category-tabs button.active{
      background:var(--text);color:var(--overlay);
    }

    .property-list{ margin-top:18px;display:grid;gap:13px; }
    .property-card{ border-radius:28px;overflow:hidden; }

    .property-photo{
      width:100%;aspect-ratio:16/10;object-fit:cover;display:block;
    }

    .property-content{ padding:18px; }

    .property-content h3{
      font-size:21px;line-height:.96;font-weight:500;letter-spacing:.055em;
      text-transform:uppercase;transform:scaleY(.90);transform-origin:left;
    }

    .property-location{
      margin-top:8px;font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
    }

    .property-content p{
      margin-top:11px;font-size:10px;line-height:1.7;color:var(--muted);
    }

    .property-bottom{
      margin-top:15px;display:flex;align-items:center;justify-content:space-between;gap:10px;
    }

    .property-price{
      font-size:10px;font-weight:500;letter-spacing:.03em;
    }

    .mini-button{
      border:0;border-radius:999px;padding:10px 14px;background:#111217;color:#fff;
      font-size:8px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;
    }

    body.dark .mini-button{ background:#fff;color:#111; }

    .tour-section{ margin-top:28px; }

    .tour-section-title{
      margin-bottom:12px;font-size:10px;font-weight:500;letter-spacing:.19em;
      text-transform:uppercase;color:var(--muted);transform:scaleY(.92);transform-origin:left;
    }

    .tour-list{ display:grid;gap:12px; }
    .tour-card{ border-radius:27px;overflow:hidden; }

    .tour-img{
      display:block;width:100%;aspect-ratio:16/9;object-fit:cover;
    }

    .tour-body{ padding:17px; }

    .tour-body h3{
      font-size:15px;line-height:1.15;font-weight:500;letter-spacing:.055em;
      text-transform:uppercase;transform:scaleY(.90);transform-origin:left;
    }

    .tour-price{
      margin-top:10px;font-size:10px;font-weight:500;letter-spacing:.03em;
    }

    .tour-controls{
      margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;
    }

    .pax-control{ display:flex;align-items:center;gap:9px; }

    .pax-button{
      width:32px;height:32px;border-radius:50%;border:1px solid var(--border);
      background:var(--glass-soft);cursor:pointer;
    }

    .pax-number{ min-width:18px;text-align:center;font-size:10px; }
    .tour-total{ text-align:right; }

    .tour-total small{
      display:block;color:var(--muted);font-size:7px;letter-spacing:.10em;text-transform:uppercase;
    }

    .tour-total strong{
      display:block;margin-top:4px;font-size:15px;line-height:1;font-weight:500;
      letter-spacing:.03em;transform:scaleY(.90);transform-origin:right;
    }

    .tour-actions{
      margin-top:13px;display:grid;grid-template-columns:1fr 1fr;gap:7px;
    }

    .tour-actions button{
      min-height:40px;border-radius:16px;border:1px solid var(--border);
      background:var(--glass-soft);font-size:8px;font-weight:500;letter-spacing:.12em;
      text-transform:uppercase;cursor:pointer;
    }

    .tour-actions button:last-child{
      background:#111217;color:#fff;border-color:#111217;
    }

    body.dark .tour-actions button:last-child{
      background:#fff;color:#111;border-color:#fff;
    }

    .rental-list{ margin-top:24px;display:grid;gap:15px; }
    .rental-card{ overflow:hidden;border-radius:30px; }
    .rental-image-wrap{ width:100%;background:#fff;overflow:hidden; }

    .rental-image{
      display:block;width:100%;aspect-ratio:16/11;object-fit:contain;
      object-position:center;background:#fff;
    }

    .rental-body{ padding:18px; }

    .rental-top{
      display:flex;align-items:flex-start;justify-content:space-between;gap:15px;
    }

    .rental-name{
      font-size:21px;line-height:.94;font-weight:500;letter-spacing:.055em;
      text-transform:uppercase;transform:scaleY(.89);transform-origin:left;
    }

    .rental-type{
      margin-top:8px;font-size:8px;line-height:1;font-weight:400;letter-spacing:.16em;
      text-transform:uppercase;color:var(--muted);
    }

    .rental-price{ text-align:right;white-space:nowrap; }

    .rental-price strong{
      display:block;font-size:17px;line-height:1;font-weight:500;letter-spacing:.03em;
      transform:scaleY(.90);transform-origin:right;
    }

    .rental-price small{
      display:block;margin-top:6px;font-size:7px;font-weight:400;letter-spacing:.15em;
      text-transform:uppercase;color:var(--muted);
    }

    .rental-prices{
      margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:8px;
    }

    .rental-price-box{
      padding:12px;border-radius:17px;background:var(--glass-soft);border:1px solid var(--border);
    }

    .rental-price-box span{
      display:block;font-size:7px;font-weight:400;letter-spacing:.16em;
      text-transform:uppercase;color:var(--muted);
    }

    .rental-price-box strong{
      display:block;margin-top:5px;font-size:15px;line-height:1;font-weight:500;
      transform:scaleY(.90);transform-origin:left;
    }

    .rental-book{
      width:100%;min-height:45px;margin-top:13px;border:0;border-radius:18px;
      background:#111217;color:#fff;font-size:8px;font-weight:500;letter-spacing:.17em;
      text-transform:uppercase;cursor:pointer;
    }

    body.dark .rental-book{ background:#fff;color:#111; }

    .photo-modal{
      position:fixed;z-index:6000;inset:0;display:none;align-items:center;
      justify-content:center;padding:20px;background:rgba(0,0,0,.82);
    }

    .photo-modal.active{ display:flex; }

    .photo-modal-card{
      width:100%;max-width:450px;border-radius:25px;overflow:hidden;background:#fff;
    }

    .photo-modal-card img{
      display:block;width:100%;max-height:70vh;object-fit:contain;background:#fff;
    }

    .photo-modal-close{
      position:absolute;top:calc(20px + env(safe-area-inset-top));right:20px;
      width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.25);
      background:rgba(0,0,0,.4);color:#fff;cursor:pointer;
    }

    @media(max-width:420px){

      .hero-space{ padding-top:24px;padding-left:18px; }
    }

    @media(max-width:390px){

      .header-actions{ gap:3px; }
      .round-control{ width:36px;height:36px;flex-basis:36px; }
      .hero-title{ font-size:38px; }
      .section-title{ font-size:33px; }
      .hero-space{ padding-top:22px;padding-left:16px; }
      
    }

    @media(max-width:350px){

      .round-control{ width:34px;height:34px;flex-basis:34px; }
      
    }

    

    @media (min-width:768px){

      #page{
        background-size:cover;
        background-position:center top;
        background-attachment:fixed;
      }

      body.dark #page{
        background-size:cover;
        background-position:center top;
        background-attachment:fixed;
      }

      .site-header{
        left:0;
        right:0;
        width:min(1180px, calc(100% - 40px));
        margin-left:auto;
        margin-right:auto;
        height:88px;
        padding:8px 16px 8px 20px;
      }





      .home-shell{
        max-width:1180px;
        padding:
          calc(125px + env(safe-area-inset-top))
          28px
          90px;
      }

      .hero-space{
        min-height:520px;
        padding:70px 0 0 20px;
        align-items:flex-start;
      }

      .hero-title{
        font-size:66px;
        line-height:.88;
        max-width:600px;
      }

      .hero-title small{
        font-size:12px;
      }

      

      

      .action-icon{
        width:76px;
        height:76px;
      }

      .action-icon svg{
        width:58px;
        height:58px;
      }

      

      .arrow-circle{
        width:40px;
        height:40px;
      }

      .info-card, .institution, .contact-card{
        padding:34px 36px;
        border-radius:34px;
      }

      .info-card h2{
        font-size:34px;
      }

      .info-card h3{
        font-size:14px;
      }

      .info-card p, .institution p{
        font-size:13px;
        max-width:850px;
      }

      .stats{
        gap:14px;
      }

      .stat{
        padding:26px 16px;
      }

      .stat strong{
        font-size:31px;
      }

      .stat span{
        font-size:8px;
      }

      .overlay-scroll{
        padding:
          calc(130px + env(safe-area-inset-top))
          28px
          100px;
      }

      .overlay-inner{
        max-width:1180px;
      }

      .section-title{
        font-size:52px;
      }

      .section-intro{
        max-width:640px;
        font-size:12px;
      }

      .property-mode{
        max-width:520px;
      }

      .category-tabs{
        max-width:720px;
      }

      .property-list{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px;
      }

      .property-photo{
        aspect-ratio:16/9;
      }

      .property-content h3{
        font-size:24px;
      }

      .property-content p{
        font-size:11px;
      }

      .tour-list{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px;
      }

      .rental-list{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px;
      }

      .rental-card, .tour-card, .property-card{
        height:100%;
      }

      .language-menu{
        right:max(24px, calc((100vw - 1180px)/2 + 10px));
      }

      .overlay-close{
        right:max(28px, calc((100vw - 1180px)/2 + 6px));
      }
    }

    @media (min-width:1100px){

      .home-shell{
        padding-left:34px;
        padding-right:34px;
      }

      .hero-space{
        min-height:560px;
      }

      

      .property-list{
        grid-template-columns:repeat(3,minmax(0,1fr));
      }

      .tour-list{
        grid-template-columns:repeat(3,minmax(0,1fr));
      }

      .rental-list{
        grid-template-columns:repeat(3,minmax(0,1fr));
      }
    }


    
    @media (min-width:768px){

      .site-header{
        height:108px;
        width:min(1240px, calc(100% - 48px));
        padding:12px 18px 12px 24px;
        border-radius:38px;
      }





      .header-actions{
        gap:9px;
        transform:none;
      }

      .round-control{
        width:48px;
        height:48px;
        flex-basis:48px;
      }

      .language-icon{
        font-size:14px;
      }

      .theme-symbol{
        width:20px;
        height:20px;
      }

      .whatsapp-control i{
        font-size:21px;
      }

      .home-shell{
        padding-top:calc(150px + env(safe-area-inset-top));
      }

      .language-menu{
        top:calc(130px + env(safe-area-inset-top));
      }

      .overlay-scroll{
        padding-top:calc(155px + env(safe-area-inset-top));
      }

      .overlay-close{
        top:calc(132px + env(safe-area-inset-top));
      }
    }

    @media (min-width:1100px){

      .site-header{
        height:120px;
        width:min(1320px, calc(100% - 64px));
        padding:14px 22px 14px 28px;
        border-radius:42px;
      }





      .header-actions{
        gap:11px;
      }

      .round-control{
        width:54px;
        height:54px;
        flex-basis:54px;
      }

      .language-icon{
        font-size:15px;
      }

      .theme-symbol{
        width:22px;
        height:22px;
      }

      .whatsapp-control i{
        font-size:23px;
      }

      .home-shell{
        padding-top:calc(165px + env(safe-area-inset-top));
      }

      .language-menu{
        top:calc(145px + env(safe-area-inset-top));
      }

      .overlay-scroll{
        padding-top:calc(170px + env(safe-area-inset-top));
      }

      .overlay-close{
        top:calc(146px + env(safe-area-inset-top));
      }
    }


    
    .theme-switch{
      flex:0 0 auto;
      width:62px;
      height:38px;
      padding:0;
      border:0;
      background:transparent;
      cursor:pointer;
    }

    .theme-switch-track{
      position:relative;
      width:62px;
      height:38px;
      display:block;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.56);
      background:rgba(255,255,255,.28);
      -webkit-backdrop-filter:blur(14px);
      backdrop-filter:blur(14px);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.34);
      transition:background .28s ease,border-color .28s ease;
    }

    .theme-switch-thumb{
      position:absolute;
      z-index:2;
      top:3px;
      left:3px;
      width:30px;
      height:30px;
      border-radius:50%;
      background:#fff;
      box-shadow:0 3px 10px rgba(0,0,0,.18);
      transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s ease;
    }

    .theme-switch-icon{
      position:absolute;
      z-index:1;
      top:50%;
      transform:translateY(-50%);
      font-size:12px;
      line-height:1;
      pointer-events:none;
    }

    .sun-mini{ left:11px; color:#6a5a76; }
    .moon-mini{ right:11px; color:#746d7c; }

    body.dark .theme-switch-track{
      background:rgba(255,255,255,.08);
      border-color:rgba(255,255,255,.13);
    }

    body.dark .theme-switch-thumb{
      transform:translateX(26px);
      background:#f7f7f7;
    }

    body.dark .sun-mini{ color:#858188; }
    body.dark .moon-mini{ color:#fff; }

    
    .language-menu{
      max-height:min(68vh,520px);
      overflow-y:auto;
      overscroll-behavior:contain;
      -webkit-overflow-scrolling:touch;
      touch-action:pan-y;
    }

    .language-menu button{
      min-height:42px;
    }

    
    .tour-category-grid{
      display:grid;
      grid-template-columns:1fr;
      gap:12px;
      margin-top:26px;
    }

    .tour-category-card{
      width:100%;
      min-height:112px;
      border-radius:28px;
      padding:18px 18px;
      display:grid;
      grid-template-columns:52px 1fr 24px;
      align-items:center;
      gap:14px;
      text-align:left;
      cursor:pointer;
      color:inherit;
    }

    .tour-category-icon{
      width:52px;
      height:52px;
      border-radius:50%;
      display:grid;
      place-items:center;
      background:var(--glass-soft);
      border:1px solid var(--border);
      font-size:19px;
    }

    .tour-category-card strong{
      display:block;
      font-size:13px;
      font-weight:500;
      letter-spacing:.10em;
      text-transform:uppercase;
    }

    .tour-category-card small{
      display:block;
      margin-top:7px;
      font-size:9px;
      line-height:1.5;
      color:var(--muted);
    }

    .tour-category-arrow{
      font-size:29px;
      font-weight:300;
      color:var(--muted);
    }

    .tour-back{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-bottom:24px;
      padding:10px 14px;
      border-radius:999px;
      border:1px solid var(--border);
      background:var(--glass-soft);
      color:inherit;
      font-size:8px;
      letter-spacing:.13em;
      cursor:pointer;
    }

    #tourListView[hidden], #tourCategoriesView[hidden]{
      display:none !important;
    }

    @media (min-width:768px){
      .theme-switch{
        width:78px;
        height:48px;
      }

      .theme-switch-track{
        width:78px;
        height:48px;
      }

      .theme-switch-thumb{
        top:4px;
        left:4px;
        width:38px;
        height:38px;
      }

      body.dark .theme-switch-thumb{
        transform:translateX(32px);
      }

      .theme-switch-icon{
        font-size:15px;
      }

      .sun-mini{ left:14px; }
      .moon-mini{ right:14px; }

      .tour-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px;
      }

      .tour-category-card{
        min-height:150px;
        padding:24px;
      }

      .tour-category-card strong{
        font-size:15px;
      }

      .tour-category-card small{
        font-size:10px;
      }
    }

    @media (min-width:1100px){
      .theme-switch{
        width:86px;
        height:54px;
      }

      .theme-switch-track{
        width:86px;
        height:54px;
      }

      .theme-switch-thumb{
        top:4px;
        left:4px;
        width:44px;
        height:44px;
      }

      body.dark .theme-switch-thumb{
        transform:translateX(34px);
      }
    }


    
    .language-menu{
      max-height:calc(100svh - 135px - env(safe-area-inset-bottom)) !important;
      overflow-y:auto !important;
      overflow-x:hidden !important;
      overscroll-behavior:contain;
      -webkit-overflow-scrolling:touch;
      touch-action:pan-y;
      scrollbar-width:thin;
    }

    .language-menu button{
      display:block;
      width:100%;
      min-height:44px;
      flex:0 0 auto;
    }

    @media (min-width:768px){
      .language-menu{
        max-height:calc(100svh - 155px - env(safe-area-inset-bottom)) !important;
      }
    }

    @media (min-width:1100px){
      .language-menu{
        max-height:calc(100svh - 170px - env(safe-area-inset-bottom)) !important;
      }
    }


    
    .theme-switch-icon{
      width:16px;
      height:16px;
      display:grid;
      place-items:center;
      color:#111;
    }

    .theme-switch-icon svg{
      width:14px;
      height:14px;
      fill:none;
      stroke:currentColor;
      stroke-width:1.5;
      stroke-linecap:round;
      stroke-linejoin:round;
    }

    .sun-mini{
      left:10px;
      color:#111 !important;
    }

    .moon-mini{
      right:10px;
      color:#111 !important;
    }

    body.dark .sun-mini{
      color:#111 !important;
      opacity:.55;
    }

    body.dark .moon-mini{
      color:#111 !important;
      opacity:1;
    }

    @media (min-width:768px){
      .theme-switch-icon{
        width:18px;
        height:18px;
      }

      .theme-switch-icon svg{
        width:16px;
        height:16px;
      }
    }


    
    .sun-mini{
      color:#fff !important;
      opacity:1 !important;
    }

    .sun-mini svg{
      fill:none !important;
      stroke:#fff !important;
      stroke-width:1.45 !important;
    }

    body.dark .sun-mini{
      color:#fff !important;
      opacity:.55 !important;
    }


    


    

    

    

    

    





    




    

    


    
    .site-header{
      display:flex !important;
      align-items:center !important;
    }





    .header-actions{
      display:flex !important;
      align-items:center !important;
      justify-content:center !important;
      align-self:center !important;
      transform:none !important;
      margin:0 !important;
    }

    .round-control, .theme-switch{
      align-self:center !important;
      margin:0 !important;
    }

    .round-control{
      display:grid !important;
      place-items:center !important;
    }

    .theme-switch{
      display:flex !important;
      align-items:center !important;
      justify-content:center !important;
    }

    @media (max-width:767px){
      .site-header{
        min-height:92px !important;
      }





      .header-actions{
        gap:5px !important;
      }
    }

    

    


    
    .tour-category-intro{
      max-width:760px;
      margin:8px auto 28px;
      text-align:center;
      font-size:14px;
      line-height:1.75;
      opacity:.78;
      letter-spacing:.01em;
    }

    .tour-subtitle{
      margin-top:-4px;
      margin-bottom:10px;
      font-size:12px;
      line-height:1.4;
      letter-spacing:.08em;
      text-transform:uppercase;
      opacity:.62;
    }

    .tour-included{
      margin-top:8px;
      font-size:12px;
      line-height:1.5;
      opacity:.72;
    }

    @media (min-width:768px){
      .tour-category-intro{
        font-size:15px;
        margin-bottom:32px;
      }

      .tour-subtitle{
        font-size:13px;
      }

      .tour-included{
        font-size:13px;
      }
    }


    
    .tour-category-intro{
      max-width:620px !important;
      margin:4px 0 24px 0 !important;
      text-align:left !important;
      font-family:"Montserrat",sans-serif !important;
      font-size:12px !important;
      font-weight:400 !important;
      line-height:1.65 !important;
      letter-spacing:.015em !important;
      opacity:.72 !important;
    }

    @media (min-width:768px){
      .tour-category-intro{
        max-width:650px !important;
        font-size:13px !important;
        margin-bottom:28px !important;
      }
    }


    
    .property-mode-main{
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:8px !important;
      margin-bottom:24px !important;
    }

    .property-mode-main button{
      min-height:44px !important;
      padding:10px 9px !important;
      font-size:10px !important;
      line-height:1.25 !important;
      letter-spacing:.06em !important;
      white-space:normal !important;
      text-align:center !important;
    }

    @media (min-width:768px){
      .property-mode-main{
        max-width:720px !important;
        gap:10px !important;
      }

      .property-mode-main button{
        min-height:48px !important;
        font-size:11px !important;
      }
    }


    
    html[dir="rtl"] .tour-category-intro, html[dir="rtl"] .section-intro, html[dir="rtl"] .property-copy, html[dir="rtl"] .tour-body{
      text-align:right !important;
    }

    html[dir="rtl"] .tour-category-arrow{
      transform:scaleX(-1);
    }


    
    #activeTourList .tour-card h3{
      line-height:1.25 !important;
      min-height:2.5em;
      display:flex;
      align-items:flex-start;
      margin-bottom:8px !important;
    }

    #activeTourList .tour-card .tour-price{
      margin-top:0 !important;
    }

    .category-tabs{
      display:grid !important;
      grid-template-columns:repeat(4,minmax(0,1fr)) !important;
      gap:7px !important;
      overflow:visible !important;
      margin-bottom:24px !important;
    }

    .category-tabs button{
      min-width:0 !important;
      width:100% !important;
      padding:9px 5px !important;
      font-size:9px !important;
      letter-spacing:.04em !important;
      white-space:normal !important;
      line-height:1.2 !important;
      text-align:center !important;
    }

    @media (min-width:768px){
      .category-tabs{
        max-width:720px;
        gap:10px !important;
      }
      .category-tabs button{
        font-size:11px !important;
        padding:10px 8px !important;
      }
    }


    
    #tourCategoryIntro.tour-category-intro{
      display:block;
      width:100%;
      max-width:610px !important;
      margin:6px 0 22px 0 !important;
      padding:0 !important;
      text-align:left !important;
      font-family:"Montserrat",sans-serif !important;
      font-size:11px !important;
      font-weight:400 !important;
      line-height:1.65 !important;
      letter-spacing:.012em !important;
      opacity:.74 !important;
    }

    #tourCategoryIntro.tour-category-intro:empty{
      display:none !important;
    }

    .compact-tour-title{
      font-size:13px !important;
      line-height:1.22 !important;
      letter-spacing:.035em !important;
      min-height:0 !important;
    }

    #activeTourList .tour-img{
      display:block !important;
      width:100% !important;
      aspect-ratio:16/9 !important;
      object-fit:cover !important;
      background:#e8e8e8;
    }

    @media (min-width:768px){
      #tourCategoryIntro.tour-category-intro{
        font-size:12px !important;
        max-width:640px !important;
      }

      .compact-tour-title{
        font-size:14px !important;
      }
    }


    
    #tourCategoryIntro{
      display:none;
      width:100%;
      max-width:640px;
      margin:8px 0 24px 0;
      padding:0;
      text-align:left;
      font-family:"Montserrat",sans-serif;
    }

    #tourCategoryIntro .tour-intro-lead{
      margin:0 0 6px 0;
      font-size:12px;
      line-height:1.4;
      font-weight:600;
      letter-spacing:.02em;
      opacity:.92;
    }

    #tourCategoryIntro .tour-intro-body{
      margin:0;
      font-size:11px;
      line-height:1.65;
      font-weight:400;
      letter-spacing:.01em;
      opacity:.72;
    }

    html[dir="rtl"] #tourCategoryIntro{
      text-align:right;
    }

    @media (min-width:768px){
      #tourCategoryIntro .tour-intro-lead{
        font-size:13px;
      }
      #tourCategoryIntro .tour-intro-body{
        font-size:12px;
      }
    }








    
    body:not(.dark){
      background:#ececea !important;
    }

    body:not(.dark) #page{
      background:
        linear-gradient(
          to bottom,
          rgba(255,255,255,.18) 0%,
          rgba(247,247,246,.55) 55%,
          rgba(236,236,234,.92) 100%
        ) !important;
      background-color:#ececea !important;
    }

    .site-header{
      background:
        linear-gradient(
          145deg,
          rgba(255,255,255,.96),
          rgba(238,238,236,.94)
        ) !important;
      background-image:none !important;
      border-color:rgba(255,255,255,.82) !important;
      box-shadow:
        0 14px 34px rgba(40,40,40,.08),
        inset 0 1px 0 rgba(255,255,255,.70) !important;
    }

    body.dark .site-header{
      background:
        linear-gradient(
          145deg,
          rgba(34,34,34,.97),
          rgba(14,14,14,.98)
        ) !important;
      background-image:none !important;
      border-color:rgba(255,255,255,.08) !important;
    }

    body:not(.dark) .glass, body:not(.dark) .stat, body:not(.dark) .contact-card, body:not(.dark) .property-card, body:not(.dark) .tour-card, body:not(.dark) .tour-category-card, body:not(.dark) .rental-card{
      background:rgba(250,250,249,.88) !important;
      background-image:none !important;
      border-color:rgba(255,255,255,.78) !important;
      box-shadow:0 10px 26px rgba(0,0,0,.06) !important;
    }

    body.dark .glass, body.dark .stat, body.dark .contact-card, body.dark .property-card, body.dark .tour-card, body.dark .tour-category-card, body.dark .rental-card{
      background:rgba(24,24,24,.92) !important;
      background-image:none !important;
      border-color:rgba(255,255,255,.08) !important;
    }

    .action-icon, .arrow-circle, .tour-category-icon, .property-mode button, .category-tabs button, .tour-back, .pax-button, .tour-actions button, .rental-price-box, .site-header .round-control, .site-header .theme-switch-track{
      background:rgba(245,245,244,.96) !important;
      background-image:none !important;
      border-color:rgba(220,220,218,.92) !important;
      box-shadow:0 3px 10px rgba(0,0,0,.045) !important;
    }

    body.dark .action-icon, body.dark .arrow-circle, body.dark .tour-category-icon, body.dark .property-mode button, body.dark .category-tabs button, body.dark .tour-back, body.dark .pax-button, body.dark .tour-actions button, body.dark .rental-price-box, body.dark .site-header .round-control, body.dark .site-header .theme-switch-track{
      background:rgba(31,31,31,.96) !important;
      background-image:none !important;
      border-color:rgba(255,255,255,.09) !important;
      box-shadow:0 3px 12px rgba(0,0,0,.20) !important;
    }

    .site-header .theme-switch{
      background:transparent !important;
      background-image:none !important;
      border:0 !important;
      box-shadow:none !important;
    }

    body:not(.dark) .property-mode button.active, body:not(.dark) .category-tabs button.active, body:not(.dark) .tour-actions button:last-child, body:not(.dark) .mini-button, body:not(.dark) .cta{
      background:#dededc !important;
      background-image:none !important;
      color:#111 !important;
      border-color:#d4d4d2 !important;
    }

    body.dark .property-mode button.active, body.dark .category-tabs button.active, body.dark .tour-actions button:last-child, body.dark .mini-button, body.dark .cta{
      background:#f2f2f0 !important;
      background-image:none !important;
      color:#111 !important;
      border-color:#f2f2f0 !important;
    }

    body:not(.dark) .sun-mini, body:not(.dark) .moon-mini{
      color:#777 !important;
    }





    

    
    body:not(.dark) .site-header{
      background-color:#eeeeeb !important;
      background-image:
        linear-gradient(rgba(255,255,255,.11), rgba(255,255,255,.11)),
        url("/assets/backgrounds/ui-texture-c12d19c44ba8.jpg") !important;
      background-size:cover !important;
      background-position:center !important;
      background-repeat:no-repeat !important;
      border-color:rgba(255,255,255,.72) !important;
      box-shadow:0 14px 34px rgba(40,40,40,.09), inset 0 1px 0 rgba(255,255,255,.62) !important;
    }

    
    body:not(.dark) .arrow-circle, body:not(.dark) .tour-category-icon, body:not(.dark) .pax-button, body:not(.dark) .site-header .round-control, body:not(.dark) .site-header .theme-switch-track{
      background-color:#eeeeeb !important;
      background-image:
        linear-gradient(rgba(255,255,255,.13), rgba(255,255,255,.13)),
        url("/assets/backgrounds/ui-texture-c12d19c44ba8.jpg") !important;
      background-size:cover !important;
      background-position:center !important;
      background-repeat:no-repeat !important;
      border-color:rgba(255,255,255,.70) !important;
      box-shadow:0 4px 12px rgba(0,0,0,.05) !important;
    }

    
    body:not(.dark) .action-icon, body:not(.dark) .property-mode button, body:not(.dark) .category-tabs button, body:not(.dark) .tour-back, body:not(.dark) .tour-actions button, body:not(.dark) .rental-price-box, body:not(.dark) .language-menu button, body:not(.dark) .mini-button, body:not(.dark) .cta{
      background-image:none !important;
    }

    body:not(.dark) .property-mode button, body:not(.dark) .category-tabs button, body:not(.dark) .tour-back, body:not(.dark) .tour-actions button, body:not(.dark) .rental-price-box{
      background:rgba(245,245,244,.96) !important;
      border-color:rgba(220,220,218,.92) !important;
      box-shadow:0 3px 10px rgba(0,0,0,.045) !important;
    }

    body:not(.dark) .property-mode button.active, body:not(.dark) .category-tabs button.active, body:not(.dark) .tour-actions button:last-child, body:not(.dark) .mini-button, body:not(.dark) .cta{
      background:#dededc !important;
      color:#111 !important;
      border-color:#d4d4d2 !important;
    }

    .site-header .theme-switch{
      background:transparent !important;
      background-image:none !important;
      border:0 !important;
      box-shadow:none !important;
      border-radius:999px !important;
    }

    
    body.dark .site-header{
      background:linear-gradient(145deg, rgba(34,34,34,.97), rgba(14,14,14,.98)) !important;
      background-image:none !important;
    }

    body.dark .arrow-circle, body.dark .tour-category-icon, body.dark .pax-button, body.dark .site-header .round-control, body.dark .site-header .theme-switch-track{
      background-image:none !important;
    }

    
    .header-actions{ margin-right:18px !important; }
    @media (max-width:767px){ .header-actions{ margin-right:15px !important; } }

    .tour-description{
      margin-top:10px;
      font-size:9px;
      line-height:1.6;
      color:var(--muted);
      letter-spacing:.01em;
      text-transform:none;
    }





    

    
    .hero-space{
      min-height:285px !important;
      align-items:flex-end !important;
      justify-content:flex-start !important;
      padding:0 5px 36px 18px !important;
    }

    
    

    

    

    @media (max-width:767px){
      .hero-space{
        min-height:282px !important;
        padding:0 5px 34px 18px !important;
      }
    }














    
    .site-header{
      display:flex !important;
      flex-direction:row !important;
      align-items:center !important;
      justify-content:space-between !important;
      gap:8px !important;
      padding-left:12px !important;
      padding-right:12px !important;
    }

    .header-actions{
      order:1 !important;
      position:static !important;
      display:flex !important;
      align-items:center !important;
      justify-content:flex-start !important;
      gap:4px !important;
      margin:0 !important;
      padding:0 !important;
      flex:0 0 auto !important;
      transform:translate(13px, 4px) !important;
    }



    .essence-uploaded-logo{
      display:block !important;
      width:195px !important;
      height:auto !important;
      max-width:none !important;
      margin:0 !important;
      padding:0 !important;
      object-fit:contain !important;
      object-position:right center !important;
      background:transparent !important;
      border:0 !important;
      box-shadow:none !important;
    }

    body.dark .essence-uploaded-logo{
      filter:invert(1) brightness(1.08) !important;
    }

    @media (max-width:767px){
      .site-header{
        gap:5px !important;
        padding-left:10px !important;
        padding-right:10px !important;
      }

      .header-actions{
        gap:3px !important;
      }

      .essence-uploaded-logo{
        width:174px !important;
      }


    }





    
    .site-header{
      display:flex !important;
      flex-direction:row !important;
      align-items:center !important;
      justify-content:space-between !important;
      gap:8px !important;
      padding-left:12px !important;
      padding-right:12px !important;
    }





    .essence-wordmark-image{
      display:block !important;
      width:170px !important;
      height:auto !important;
      max-width:none !important;
      margin:0 !important;
      padding:0 !important;
      background:transparent !important;
      border:0 !important;
      box-shadow:none !important;
    }



    .header-actions{
      order:2 !important;
      position:static !important;
      display:flex !important;
      align-items:center !important;
      justify-content:flex-end !important;
      gap:4px !important;
      margin-left:auto !important;
      margin-right:0 !important;
      padding:0 !important;
      flex:0 0 auto !important;
      transform:translateY(5px) !important;
    }

    body.dark .essence-wordmark-image{
      filter:invert(1) brightness(1.08) !important;
    }



    @media (max-width:767px){
      .site-header{
        gap:5px !important;
        padding-left:10px !important;
        padding-right:10px !important;
      }





      .header-actions{
        gap:3px !important;
      }
    }



#siteHeader.site-header{
  position:fixed !important;
  left:10px !important;
  right:10px !important;
  top:10px !important;
  width:auto !important;
  max-width:none !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  margin:0 !important;
  padding-left:10px !important;
  padding-right:8px !important;
}


#siteHeader .essence-wordmark-image{
  display:block !important;
  width:170px !important;
  height:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
#siteHeader .header-actions{
  order:2 !important;
  position:absolute !important;
  right:18px !important;
  left:auto !important;
  top:53% !important;
  bottom:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:4px !important;
  margin:0 !important;
  padding:0 !important;
  flex:0 0 auto !important;
  transform:translateY(-45%) !important;
  z-index:20 !important;
}
@media (max-width:767px){
  #siteHeader.site-header{
    left:6px !important;
    right:6px !important;
    top:6px !important;
    padding-left:8px !important;
    padding-right:4px !important;
  }

  #siteHeader .header-actions{
    right:18px !important;
    gap:3px !important;
    transform:translateY(-45%) !important;
  }
}


    .long-term-card strong{
      font-size:7px !important;
      line-height:1.2 !important;
      max-width:78px !important;
    }

    @media (min-width:768px){
      .long-term-card strong{
        font-size:10px !important;
        max-width:140px !important;
      }
    }



    
    
    
    


    
    .hero-space.home-photo-hero{
      position:relative !important;
      min-height:0 !important;
      height:auto !important;
      padding:0 !important;
      margin:0 0 14px 0 !important;
      display:block !important;
      overflow:hidden !important;
      border-radius:28px !important;
      background:none !important;
    }

    .home-main-photo{
      position:relative !important;
      display:block !important;
      width:100% !important;
      height:auto !important;
      max-width:100% !important;
      object-fit:contain !important;
      object-position:center center !important;
      transform:none !important;
      scale:1 !important;
      margin:0 !important;
      padding:0 !important;
    }

    .home-main-photo-day{ display:block !important; }
    .home-main-photo-night{ display:none !important; }

    body.dark .home-main-photo-day{ display:none !important; }
    body.dark .home-main-photo-night{ display:block !important; }

    .home-photo-hero .hero-title{
      position:absolute !important;
      left:18px !important;
      bottom:28px !important;
      z-index:2 !important;
      margin:0 !important;
      color:#fff !important;
      text-shadow:0 2px 16px rgba(0,0,0,.22) !important;
    }

    body.dark .home-photo-hero .hero-title{
      color:#fff !important;
    }



    .longterm-description{
      margin:16px 0 18px !important;
      font-size:12px !important;
      line-height:1.65 !important;
      color:var(--muted) !important;
    }
    .longterm-price{
      max-width:135px !important;
      text-align:right !important;
    }
    .longterm-price strong{
      font-size:11px !important;
      line-height:1.25 !important;
    }



    
    .home-photo-hero .hero-title{
      left:28px !important;
      top:110px !important;
      bottom:auto !important;
      font-size:56px !important;
      line-height:.84 !important;
      letter-spacing:.045em !important;
      text-shadow:0 2px 18px rgba(0,0,0,.18) !important;
    }

    .home-photo-hero .hero-title small{
      font-size:14px !important;
      margin-bottom:10px !important;
      letter-spacing:.28em !important;
    }

    @media (max-width:767px){
      .home-photo-hero .hero-title{
        left:26px !important;
        top:94px !important;
        font-size:52px !important;
      }

      .home-photo-hero .hero-title small{
        font-size:13px !important;
      }
    }

    
    

    

    

    

    

    
    .longterm-gallery{
      padding:10px 10px 0 !important;
    }

    .longterm-main-photo{
      width:100% !important;
      height:auto !important;
      display:block !important;
      border-radius:22px !important;
      object-fit:contain !important;
      background:transparent !important;
    }

    .longterm-thumbs{
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:8px !important;
      margin-top:8px !important;
    }

    .longterm-thumb{
      width:100% !important;
      aspect-ratio:1.2/1 !important;
      object-fit:cover !important;
      border-radius:14px !important;
      display:block !important;
      cursor:pointer !important;
    }



    
    .longterm-filters{
      display:grid !important;
      grid-template-columns:repeat(3,minmax(0,1fr)) !important;
      gap:8px !important;
      margin:18px 0 20px !important;
    }

    .longterm-filter{
      position:relative !important;
      overflow:hidden !important;
      isolation:isolate !important;
      border:1px solid rgba(255,255,255,.34) !important;
      background:rgba(255,255,255,.20) !important;
      color:var(--text) !important;
      border-radius:18px !important;
      min-height:82px !important;
      padding:10px 8px !important;
      display:flex !important;
      flex-direction:column !important;
      align-items:center !important;
      justify-content:center !important;
      gap:8px !important;
      font-family:Montserrat,sans-serif !important;
      cursor:pointer !important;
      box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
      backdrop-filter:blur(12px) saturate(115%) !important;
      -webkit-backdrop-filter:blur(12px) saturate(115%) !important;
    }

    .longterm-filter::before{
      content:"" !important;
      position:absolute !important;
      inset:-14px !important;
      z-index:0 !important;
      filter:blur(10px) !important;
      opacity:.82 !important;
      transform:scale(1.16) !important;
    }

    .longterm-filter::after{
      content:"" !important;
      position:absolute !important;
      inset:0 !important;
      z-index:1 !important;
      background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.04)) !important;
    }

    .longterm-filter > *{
      position:relative !important;
      z-index:2 !important;
    }

    .longterm-filter-1::before{
      background-image:url("https://i.ibb.co/pr5zDvdJ/IMG-3167.jpg") !important;
      background-size:cover !important;
      background-position:18% 38% !important;
    }

    .longterm-filter-2::before{
      background-image:url("https://i.ibb.co/pr5zDvdJ/IMG-3167.jpg") !important;
      background-size:cover !important;
      background-position:52% 52% !important;
    }

    .longterm-filter-3::before{
      background-image:url("https://i.ibb.co/pr5zDvdJ/IMG-3167.jpg") !important;
      background-size:cover !important;
      background-position:82% 60% !important;
    }

    .longterm-filter.active{
      border-color:rgba(255,255,255,.7) !important;
      box-shadow:0 12px 28px rgba(0,0,0,.12) !important;
    }

    body.dark .longterm-filter{
      border-color:rgba(255,255,255,.12) !important;
      background:rgba(19,24,31,.28) !important;
      box-shadow:0 10px 24px rgba(0,0,0,.24) !important;
    }

    body.dark .longterm-filter::after{
      background:linear-gradient(180deg, rgba(12,15,21,.10), rgba(12,15,21,.18)) !important;
    }







    .longterm-filter i{
      font-size:18px !important;
      line-height:1 !important;
    }

    .longterm-filter span{
      font-size:8px !important;
      font-weight:700 !important;
      letter-spacing:.06em !important;
      line-height:1.15 !important;
      text-align:center !important;
    }

    .longterm-filter.active{
      border-color:currentColor !important;
      background:rgba(127,127,127,.08) !important;
    }

    body.dark .longterm-filter{
      background:transparent !important;
    }


    
    #longterm .longterm-filter i{
      color:#91877b !important;
      opacity:1 !important;
    }

    body.dark #longterm .longterm-filter i{
      color:#aaa096 !important;
    }

    
    #longterm .longterm-filter span{
      color:#746d65 !important;
    }

    body.dark #longterm .longterm-filter span{
      color:#c0b8af !important;
    }





body:not(.dark) #tours{
  background-image:
    linear-gradient(rgba(255,255,255,.16), rgba(255,255,255,.22)),
    none !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

body.dark #tours{
  background-image:
    linear-gradient(rgba(5,10,7,.24), rgba(5,10,7,.34)),
    none !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

#tours .overlay-scroll{
  -webkit-backdrop-filter:blur(4px) saturate(105%) !important;
  backdrop-filter:blur(4px) saturate(105%) !important;
  background:rgba(255,255,255,.02) !important;
}

body.dark #tours .overlay-scroll{
  background:rgba(0,0,0,.035) !important;
}




.long-term-card{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
}


html[dir="rtl"] #siteHeader.site-header, body[dir="rtl"] #siteHeader.site-header, html[lang="ar"] #siteHeader.site-header{
  direction:ltr !important;
  flex-direction:row !important;
  justify-content:space-between !important;
}





html[dir="rtl"] #siteHeader .essence-wordmark-image, body[dir="rtl"] #siteHeader .essence-wordmark-image, html[lang="ar"] #siteHeader .essence-wordmark-image{
  object-position:left center !important;
  margin-left:0 !important;
  margin-right:auto !important;
}



html[dir="rtl"] #siteHeader .header-actions, body[dir="rtl"] #siteHeader .header-actions, html[lang="ar"] #siteHeader .header-actions{
  order:2 !important;
  right:18px !important;
  left:auto !important;
  direction:ltr !important;
}








#longterm .longterm-filter{
  background-color:#eeeeeb !important;
  background-image:linear-gradient(rgba(255,255,255,.11), rgba(255,255,255,.11)),
        url("/assets/backgrounds/ui-texture-c12d19c44ba8.jpg") !important !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}


#longterm .longterm-filter::before{
  content:none !important;
  display:none !important;
}

#longterm .longterm-filter::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:rgba(255,255,255,.08) !important;
  pointer-events:none !important;
}

#longterm .longterm-filter > *{
  position:relative !important;
  z-index:1 !important;
}


#longterm .longterm-filter i{
  color:#81776c !important;
  stroke:#81776c !important;
}

#longterm .longterm-filter span{
  color:#6f665d !important;
}


#longterm .longterm-filter.active{
  outline:2px solid rgba(88,79,69,.75) !important;
  outline-offset:-2px !important;
}


.whatsapp-control{
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:4000 !important;
}

.whatsapp-control i{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  font-family:"Font Awesome 6 Brands" !important;
}

.overlay-close{
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:5000 !important;
}

.overlay-close i{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  font-family:"Font Awesome 6 Free" !important;
  font-weight:900 !important;
}


body.dark #longterm .longterm-filter{
  background-color:#4c4843 !important;
  background-image:
    linear-gradient(rgba(15,15,15,.48),rgba(15,15,15,.48)),
    255,255,.11), rgba(255,255,255,.11)),
        url("/assets/backgrounds/ui-texture-c12d19c44ba8.jpg") !important !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

body.dark #longterm .longterm-filter i{
  color:#c4b9ac !important;
  stroke:#c4b9ac !important;
}

body.dark #longterm .longterm-filter span{
  color:#d2c8bc !important;
}





@media (min-width:768px){

  .site-header{
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    height:104px !important;
    padding:10px 28px !important;
    border-radius:0 0 30px 30px !important;
  }





  .header-actions{
    gap:10px !important;
    transform:translateY(4px) !important;
  }

  .round-control{
    width:44px !important;
    height:44px !important;
    flex-basis:44px !important;
  }

  .home-shell{
    max-width:920px !important;
    padding:
      calc(126px + env(safe-area-inset-top))
      28px
      calc(80px + env(safe-area-inset-bottom)) !important;
  }

  .hero-space.home-photo-hero{
    border-radius:34px !important;
    margin-bottom:22px !important;
  }

  .home-photo-hero .hero-title{
    left:44px !important;
    top:18% !important;
    font-size:76px !important;
  }

  .home-photo-hero .hero-title small{
    font-size:17px !important;
  }

  

  

  

  

  

  .overlay-scroll{
    padding:
      calc(138px + env(safe-area-inset-top))
      30px
      calc(110px + env(safe-area-inset-bottom)) !important;
  }

  .overlay-inner{
    max-width:900px !important;
    padding-top:30px !important;
  }

  .overlay-close{
    top:118px !important;
    right:30px !important;
    width:46px !important;
    height:46px !important;
  }

  .section-title{
    font-size:48px !important;
  }

  .section-intro{
    max-width:620px !important;
    font-size:12px !important;
  }

  .language-menu{
    top:112px !important;
    right:28px !important;
  }
}



@media (min-width:1100px){

  .site-header{
    height:118px !important;
    padding:12px 44px !important;
    border-radius:0 0 34px 34px !important;
  }





  .header-actions{
    gap:13px !important;
  }

  .round-control{
    width:48px !important;
    height:48px !important;
    flex-basis:48px !important;
  }

  .home-shell{
    max-width:1240px !important;
    padding:
      calc(145px + env(safe-area-inset-top))
      42px
      calc(95px + env(safe-area-inset-bottom)) !important;
  }

  .hero-space.home-photo-hero{
    border-radius:40px !important;
    margin-bottom:28px !important;
  }

  .home-photo-hero .hero-title{
    left:62px !important;
    top:18% !important;
    font-size:94px !important;
  }

  .home-photo-hero .hero-title small{
    font-size:19px !important;
    margin-bottom:14px !important;
  }

  

  

  

  

  

  .arrow-circle{
    width:40px !important;
    height:40px !important;
  }

  .overlay-scroll{
    padding:
      calc(155px + env(safe-area-inset-top))
      46px
      calc(120px + env(safe-area-inset-bottom)) !important;
  }

  .overlay-inner{
    max-width:1180px !important;
    padding-top:36px !important;
  }

  .overlay-close{
    top:132px !important;
    right:44px !important;
    width:50px !important;
    height:50px !important;
  }

  .section-title{
    font-size:58px !important;
  }

  .section-title small{
    font-size:12px !important;
  }

  .section-intro{
    max-width:760px !important;
    font-size:13px !important;
    line-height:1.8 !important;
  }

  .language-menu{
    top:125px !important;
    right:42px !important;
    width:190px !important;
  }
}



@media (min-width:1500px){

  .site-header{
    height:126px !important;
    padding-left:64px !important;
    padding-right:64px !important;
  }



  .home-shell{
    max-width:1440px !important;
    padding-left:56px !important;
    padding-right:56px !important;
  }

  .home-photo-hero .hero-title{
    left:76px !important;
    font-size:108px !important;
  }

  

  

  .overlay-inner{
    max-width:1360px !important;
  }
}



@media (min-width:768px){
  html[dir="rtl"] #siteHeader.site-header, body[dir="rtl"] #siteHeader.site-header, html[lang="ar"] #siteHeader.site-header{
    direction:ltr !important;
  }



  html[dir="rtl"] #siteHeader .header-actions, body[dir="rtl"] #siteHeader .header-actions, html[lang="ar"] #siteHeader .header-actions{
    margin-left:auto !important;
    margin-right:0 !important;
    right:auto !important;
    left:auto !important;
    position:static !important;
    transform:translateY(4px) !important;
    direction:ltr !important;
  }
}




.music-toggle{
  position:fixed;
  right:18px;
  bottom:calc(18px + env(safe-area-inset-bottom));
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.62);
  background:rgba(245,245,243,.78);
  color:#171717;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:99999;
  cursor:pointer;
  box-shadow:0 10px 30px rgba(0,0,0,.16);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  backdrop-filter:blur(18px) saturate(150%);
  transition:transform .2s ease, background .25s ease, color .25s ease;
}
.music-toggle:active{ transform:scale(.93); }
.music-toggle i{ font-size:17px; pointer-events:none; }
body.dark .music-toggle{
  background:rgba(20,20,20,.72);
  color:#fff;
  border-color:rgba(255,255,255,.16);
}
@media (max-width:600px){
  .music-toggle{
    right:14px;
    bottom:calc(14px + env(safe-area-inset-bottom));
    width:46px;
    height:46px;
  }
}



.zanzi-live-card{
  margin-top:18px;
  padding:18px;
  border-radius:28px;
  overflow:hidden;
}
.zanzi-live-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}
.zanzi-live-kicker{
  font-size:10px;
  letter-spacing:.18em;
  font-weight:600;
  opacity:.62;
  text-transform:uppercase;
}
.zanzi-live-title{
  margin-top:5px;
  font-family:"Montserrat",sans-serif;
  font-size:22px;
  font-weight:600;
  letter-spacing:-.02em;
}
.zanzi-live-updated{
  font-size:10px;
  line-height:1.35;
  opacity:.55;
  text-align:right;
  white-space:nowrap;
}
.zanzi-live-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.zanzi-live-item{
  min-height:92px;
  padding:14px;
  border-radius:20px;
  background:rgba(255,255,255,.34);
  border:1px solid rgba(255,255,255,.42);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
body.dark .zanzi-live-item{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.09);
}
.zanzi-live-label{
  display:flex;
  align-items:center;
  gap:7px;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.58;
  font-weight:600;
}
.zanzi-live-label i{ font-size:12px; }
.zanzi-live-value{
  margin-top:10px;
  font-size:20px;
  font-weight:600;
  letter-spacing:-.02em;
}
.zanzi-live-sub{
  margin-top:3px;
  font-size:11px;
  line-height:1.35;
  opacity:.62;
}
.zanzi-live-note{
  margin-top:12px;
  font-size:9px;
  line-height:1.45;
  opacity:.45;
}
.zanzi-live-loading{
  animation:zanziPulse 1.4s ease-in-out infinite alternate;
}
@keyframes zanziPulse{from{opacity:.35}to{opacity:.8}}
.zanzi-live-tide{
  grid-column:span 2;
}
.zanzi-tide-events{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:11px;
}
.zanzi-tide-event{
  padding:10px 11px;
  border-radius:14px;
  background:rgba(255,255,255,.28);
  border:1px solid rgba(255,255,255,.34);
}
body.dark .zanzi-tide-event{
  background:rgba(255,255,255,.035);
  border-color:rgba(255,255,255,.08);
}
.zanzi-tide-event span{
  display:block;
  font-size:8px;
  letter-spacing:.12em;
  opacity:.48;
  font-weight:600;
}
.zanzi-tide-event strong{
  display:block;
  margin-top:4px;
  font-size:16px;
  line-height:1.1;
  font-weight:600;
}
.zanzi-tide-event small{
  display:block;
  margin-top:2px;
  font-size:9px;
  opacity:.52;
}

@media (min-width:700px){
  .zanzi-live-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}




body.dark #page{
  background-image:none !important;
  background:#050505 !important;
}

body.dark .site-header{
  background-image:none !important;
  background:rgba(18,18,19,.78) !important;
  border-color:rgba(255,255,255,.10) !important;
  box-shadow:0 16px 48px rgba(0,0,0,.50) !important;
}

body.dark .site-header::before, body.dark .site-header::after, body.dark #tours, body.dark #realestate, body.dark #rental, body.dark #longterm{
  background-image:none !important;
}





#siteHeader .essence-wordmark-vector{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  font-family:"Bodoni Moda","Times New Roman",serif !important;
  font-size:31px !important;
  font-weight:400 !important;
  line-height:.82 !important;
  letter-spacing:.105em !important;
  white-space:nowrap !important;
  text-align:left !important;
  color:#111 !important;
  -webkit-font-smoothing:antialiased !important;
  text-rendering:geometricPrecision !important;
}





@media (max-width:767px){

  #siteHeader .essence-wordmark-vector{
    font-size:27px !important;
    letter-spacing:.10em !important;
  }

}





#siteHeader .essence-wordmark-vector{
  display:block !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  font-family:"Cormorant Garamond","Bodoni Moda","Times New Roman",serif !important;
  font-size:76px !important;
  font-weight:300 !important;
  font-style:normal !important;
  line-height:.68 !important;
  letter-spacing:-0.025em !important;
  text-transform:none !important;
  white-space:nowrap !important;
  text-align:left !important;
  color:#111 !important;
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
  text-rendering:geometricPrecision !important;
}





@media (max-width:767px){

  #siteHeader .essence-wordmark-vector{
    font-size:67px !important;
    line-height:.68 !important;
    letter-spacing:-0.02em !important;
  }

}







#siteHeader .essence-wordmark-vector{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
  max-width:none !important;
  font-family:"Cormorant Garamond","Bodoni Moda","Times New Roman",serif !important;
  font-size:76px !important;
  font-weight:300 !important;
  font-style:normal !important;
  line-height:.67 !important;
  letter-spacing:-.028em !important;
  text-transform:none !important;
  white-space:nowrap !important;
  color:#111 !important;
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
  text-rendering:optimizeLegibility !important;
  font-kerning:normal !important;
  font-synthesis:none !important;
}





@media (max-width:767px){

  #siteHeader .essence-wordmark-vector{
    font-size:67px !important;
    line-height:.67 !important;
    letter-spacing:-.025em !important;
  }

}

@media (max-width:390px){
  #siteHeader .essence-wordmark-vector{
    font-size:61px !important;
  }

}





#siteHeader .header-actions{
  top:50% !important;
  transform:translateY(-50%) !important;
}
@media (max-width:767px){

  #siteHeader .header-actions{transform:translateY(-50%) !important;}
}



@media (max-width: 767px){
  .section-title{
    font-size:36px !important;
    line-height:.96 !important;
    letter-spacing:.04em !important;
    max-width:320px !important;
    margin-bottom:22px !important;
  }
  .section-title small, .eyebrow, .subtitle{
    font-size:10px !important;
    line-height:1.2 !important;
  }
  .info-card h2{
    font-size:23px !important;
    line-height:1.02 !important;
  }
  .info-card h3{
    font-size:11px !important;
    line-height:1.3 !important;
  }
  .info-card p, .institution p, .property-copy, .tour-description, .tour-intro-body, .tour-intro-lead, .tour-included, .faq-item p{
    font-size:13px !important;
    line-height:1.65 !important;
  }
  .property-content h3, .tour-body h3, .rental-name, .tour-section-title, .compact-tour-title{
    font-size:18px !important;
    line-height:1.15 !important;
  }
}

@media (min-width: 768px){
  .section-title{
    font-size:40px !important;
    line-height:.96 !important;
  }
  .info-card h2{font-size:30px !important;}
  .info-card p, .institution p{font-size:12.5px !important;}
}



.contact-card .contact-row .inline-ui-icon{
  width:18px !important;
  height:18px !important;
  stroke-width:1.35 !important;
}
.contact-card .contact-row i{
  width:18px !important;
  font-size:13px !important;
}
.contact-card .contact-row{
  font-size:10.5px !important;
}

.info-card h2, #faq h2, #essence-services-seo h2{
  font-size:24px !important;
  line-height:1.02 !important;
  letter-spacing:.03em !important;
  font-weight:400 !important;
  transform:none !important;
}

.info-card h3, .info-card .island-opportunity-subtitle{
  font-size:10.5px !important;
  line-height:1.28 !important;
  letter-spacing:.09em !important;
  font-weight:500 !important;
  transform:none !important;
}

.info-card p, .institution p{
  font-size:10.5px !important;
  line-height:1.74 !important;
}

.section-title{
  font-size:32px !important;
  line-height:1.00 !important;
  letter-spacing:.05em !important;
  font-weight:400 !important;
  transform:none !important;
  max-width:340px !important;
}

.section-title small{
  font-size:9px !important;
  letter-spacing:.24em !important;
  margin-bottom:10px !important;
}

.section-intro{
  font-size:12px !important;
  line-height:1.6 !important;
  max-width:350px !important;
}

@media (max-width: 767px){
  .info-card h2, #faq h2, #essence-services-seo h2{
    font-size:22px !important;
    line-height:1.03 !important;
    letter-spacing:.028em !important;
  }

  .info-card h3, .info-card .island-opportunity-subtitle{
    font-size:10px !important;
    letter-spacing:.08em !important;
  }

  .info-card p, .institution p{
    font-size:13px !important;
    line-height:1.68 !important;
  }

  .section-title, #longterm .section-title{
    font-size:37px !important;
    line-height:.98 !important;
    letter-spacing:.045em !important;
    max-width:315px !important;
    margin-bottom:20px !important;
  }

  .section-title small, #longterm .section-title small{
    font-size:9.5px !important;
    letter-spacing:.22em !important;
    margin-bottom:10px !important;
  }

  .section-intro, #longterm .section-intro{
    font-size:13px !important;
    line-height:1.58 !important;
    margin-bottom:20px !important;
    max-width:330px !important;
  }

  .contact-card .contact-row .inline-ui-icon{
    width:16px !important;
    height:16px !important;
    stroke-width:1.25 !important;
  }

  .contact-card .contact-row i{
    width:16px !important;
    font-size:12px !important;
  }

  .contact-card .contact-row{
    gap:10px !important;
    font-size:10px !important;
  }
}









@media (min-width:700px){
  .zanzi-live-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    align-items:start !important;
  }

  .zanzi-live-item{
    justify-content:flex-start !important;
  }

  .zanzi-live-item > div:last-child{
    margin-top:26px !important;
  }

  .zanzi-live-tide > div:last-child{
    margin-top:26px !important;
  }

  .zanzi-live-label{
    min-height:16px !important;
    align-items:center !important;
  }

  .zanzi-live-value{
    margin-top:0 !important;
  }

  .zanzi-live-tide{
    grid-column:span 2 !important;
  }

  
  #zanziTemp, #zanziTide, #zanziWind{
    min-height:24px !important;
    display:flex !important;
    align-items:center !important;
  }
}







#holiday .holiday-inner{max-width:1120px !important}
.holiday-type-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:20px 0 24px;
}
.holiday-type-tab{
  border:0;
  min-height:74px;
  border-radius:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font:inherit;
  color:var(--text);
  cursor:pointer;
}
.holiday-type-tab i{font-size:18px}
.holiday-type-tab.active{outline:1.5px solid currentColor;outline-offset:-2px}
.holiday-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.holiday-stay-card{
  overflow:hidden;
  border-radius:28px;
  padding:0 !important;
}
.holiday-stay-visual{
  aspect-ratio:16/9;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.42),transparent 34%),
    linear-gradient(135deg,rgba(208,218,211,.85),rgba(225,217,204,.92));
  color:#6f665d;
}
body.dark .holiday-stay-visual{
  background:linear-gradient(135deg,#171717,#272727);
  color:#f2f2f2;
}
.holiday-stay-visual i{font-size:42px;opacity:.85}
.holiday-stay-body{padding:18px}
.holiday-stay-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.holiday-stay-title{margin:0;font-size:19px;font-weight:500}
.holiday-stay-location{font-size:12px;opacity:.65;margin-top:4px}
.holiday-stay-tag{
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  opacity:.65;
}
.holiday-date-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:16px;
}
.holiday-date-field label{
  display:block;
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:.64;
  margin-bottom:6px;
}
.holiday-date-field input{
  width:100%;
  border:1px solid rgba(120,120,120,.22);
  background:rgba(255,255,255,.35);
  color:var(--text);
  border-radius:14px;
  padding:11px 10px;
  font:inherit;
  outline:none;
}
body.dark .holiday-date-field input{background:rgba(255,255,255,.06);color:#fff}
.holiday-price-box{
  margin-top:14px;
  border-radius:16px;
  padding:13px 14px;
  background:rgba(127,127,127,.08);
}
.holiday-price-label{
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  opacity:.6;
}
.holiday-price-value{
  margin-top:5px;
  font-size:18px;
  font-weight:600;
}
.holiday-price-meta{font-size:11px;opacity:.65;margin-top:3px}
.holiday-note{
  margin-top:18px;
  padding:16px 18px;
  border-radius:18px;
  line-height:1.55;
}
.holiday-note strong{font-size:11px;letter-spacing:.13em}
.holiday-note p{margin:7px 0 0;font-size:13px;opacity:.78}
@media(max-width:760px){
  .holiday-list{grid-template-columns:1fr}
  .holiday-date-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .holiday-date-grid{grid-template-columns:1fr}
}



.holiday-search-panel{margin:0 0 24px;padding:18px;border-radius:26px}
.holiday-search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.holiday-search-field span{display:block;margin:0 0 7px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;opacity:.68}
.holiday-search-field input, .holiday-search-field select{width:100%;height:54px;box-sizing:border-box;border:1px solid rgba(120,120,120,.24);border-radius:16px;background:rgba(255,255,255,.38);color:var(--text);padding:0 14px;font:inherit;font-size:14px;outline:none}
body.dark .holiday-search-field input, body.dark .holiday-search-field select{background:rgba(255,255,255,.06);color:#fff;color-scheme:dark}
.holiday-search-button{display:block;width:min(360px,100%);height:56px;margin:18px auto 0;border:0;border-radius:999px;background:var(--text);color:var(--bg);font:inherit;font-size:13px;font-weight:600;letter-spacing:.16em;cursor:pointer}
@media(max-width:760px){.holiday-search-panel{padding:16px}.holiday-search-grid{grid-template-columns:1fr 1fr;gap:12px}.holiday-search-field input, .holiday-search-field select{height:52px}}


.holiday-price-box{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}
.holiday-price-content{
  min-width:0;
  flex:1 1 auto;
}
.holiday-book-now{
  flex:0 0 auto;
  border:0;
  border-radius:999px;
  padding:11px 16px;
  min-width:104px;
  cursor:pointer;
  font:inherit;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:rgba(127,127,127,.12);
  color:var(--text);
  transition:transform .18s ease, background .18s ease;
}
.holiday-book-now:hover{transform:translateY(-1px);background:rgba(127,127,127,.18)}
body.dark .holiday-book-now{background:rgba(255,255,255,.10);color:#fff}
@media(max-width:460px){
  .holiday-price-box{align-items:flex-end !important}
  .holiday-book-now{padding:10px 13px;min-width:92px;font-size:10px}
}


#siteHeader.site-header{
  transition: transform .38s ease, opacity .28s ease !important;
}
#siteHeader.site-header.header-hidden{
  transform: translate3d(0,-140px,0) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}



#musicToggle.music-toggle{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  position:fixed !important;
  right:14px !important;
  left:auto !important;
  bottom:calc(14px + env(safe-area-inset-bottom)) !important;
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  min-height:48px !important;
  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.72) !important;
  background:rgba(245,245,243,.82) !important;
  color:#171717 !important;
  box-shadow:0 8px 24px rgba(0,0,0,.14) !important;
  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;
  z-index:2147483647 !important;
}
#musicToggle.music-toggle i{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  font-size:16px !important;
}
body.dark #musicToggle.music-toggle{
  background:rgba(20,20,20,.72) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.18) !important;
}
@media (min-width:601px){
  #musicToggle.music-toggle{
    right:18px !important;
    bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  }
}


.floating-quick-controls{
  position:fixed !important;
  right:17px !important;
  bottom:calc(72px + env(safe-area-inset-bottom)) !important;
  z-index:2147483646 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:7px !important;
  pointer-events:auto !important;
}
.floating-quick-btn{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.72) !important;
  background:rgba(245,245,243,.82) !important;
  color:#171717 !important;
  box-shadow:0 8px 24px rgba(0,0,0,.12) !important;
  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  font:500 12px/1 "Montserrat",sans-serif !important;
  cursor:pointer !important;
}
.floating-quick-btn i{font-size:16px !important;}
body.dark .floating-quick-btn{
  background:rgba(22,22,22,.78) !important;
  color:#f7f7f4 !important;
  border-color:rgba(255,255,255,.22) !important;
}
@media (min-width:768px){
  .floating-quick-controls{
    right:20px !important;
    bottom:calc(78px + env(safe-area-inset-bottom)) !important;
    gap:8px !important;
  }
  .floating-quick-btn{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
  }
}



#siteHeader.site-header{
  min-height:98px !important;
  height:98px !important;
  padding-top:4px !important;
  padding-bottom:4px !important;
}


#siteHeader .header-actions{
  gap:1px !important;
  right:14px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
#siteHeader .round-control, #siteHeader .theme-switch{
  margin:0 !important;
}
@media (min-width:1280px){
  #siteHeader.site-header{
    min-height:108px !important;
    height:108px !important;
  }


}
@media (max-width:767px){
  #siteHeader.site-header{
    min-height:90px !important;
    height:90px !important;
    padding-top:4px !important;
    padding-bottom:4px !important;
  }


  #siteHeader .header-actions{
    gap:1px !important;
    right:12px !important;
  }
}





@media (max-width:767px){
  
  #realestate .property-mode-main button{font-size:11.5px !important;min-height:46px !important;font-weight:500 !important;letter-spacing:.08em !important;}
  
  #realestate .category-tabs button{font-size:11px !important;min-height:44px !important;padding:9px 13px !important;font-weight:400 !important;letter-spacing:.10em !important;}
  
  #realestate .property-price{font-size:15px !important;line-height:1.15 !important;font-weight:400 !important;letter-spacing:.025em !important;}
  #realestate .mini-button{font-size:11px !important;min-height:43px !important;padding:9px 15px !important;font-weight:400 !important;letter-spacing:.10em !important;}

  
  #holiday .holiday-price-label{font-size:9.5px !important;font-weight:400 !important;letter-spacing:.10em !important;}
  #holiday .holiday-price-value{font-size:15px !important;line-height:1.2 !important;font-weight:500 !important;}
  #holiday .holiday-price-meta{font-size:9.5px !important;}
  #holiday .holiday-book-now{font-size:11px !important;min-width:98px !important;padding:11px 14px !important;font-weight:500 !important;letter-spacing:.09em !important;}

  
  #tours .tour-price{font-size:14px !important;line-height:1.25 !important;font-weight:400 !important;}
  #tours .tour-total small{font-size:9px !important;}
  #tours .tour-total strong{font-size:14px !important;font-weight:500 !important;}
  #tours .tour-actions button{font-size:8.5px !important;min-height:41px !important;padding:0 9px !important;font-weight:500 !important;letter-spacing:.09em !important;}

  
  #longterm .rental-price, #rentcar .rental-price{font-size:15px !important;line-height:1.2 !important;}
  #longterm .rental-price strong, #rentcar .rental-price strong{font-size:15px !important;font-weight:500 !important;}
  #longterm .rental-price small, #rentcar .rental-price small{font-size:9px !important;}
  #longterm .rental-book, #rentcar .rental-book{font-size:11px !important;min-height:43px !important;font-weight:500 !important;letter-spacing:.11em !important;}
}



@media (max-width:767px){
  
  #realestate .category-tabs{gap:7px !important; overflow:visible !important;}
  #realestate .category-tabs button{font-size:10.5px !important; padding:9px 10px !important; min-width:0 !important; flex:1 1 0 !important; letter-spacing:.075em !important; white-space:nowrap !important;}
  #realestate .category-tabs button[data-i18n="business"]{flex:1.22 1 0 !important; font-size:10px !important; padding-left:8px !important; padding-right:8px !important;}

  
  #holiday .holiday-price-value{font-size:13.5px !important; line-height:1.18 !important; letter-spacing:.025em !important;}

  
  #tours .section-title span[data-i18n="discoverZanzibar"]{font-size:.88em !important; line-height:1.05 !important; letter-spacing:.015em !important;}

  
  #tours .tour-actions button{font-size:8px !important; min-height:41px !important; padding:0 9px !important; letter-spacing:.075em !important;}

  
  #longterm .longterm-price{display:inline-flex !important; align-items:center !important; justify-content:center !important; width:auto !important; max-width:145px !important; min-height:40px !important; padding:8px 13px !important; border:1px solid rgba(20,20,20,.14) !important; border-radius:999px !important; text-align:center !important; background:rgba(255,255,255,.32) !important;}
  body.dark #longterm .longterm-price{border-color:rgba(255,255,255,.22) !important; background:rgba(255,255,255,.06) !important;}
  #longterm .longterm-price strong{font-size:9.5px !important; line-height:1.2 !important; letter-spacing:.075em !important; font-weight:500 !important; white-space:normal !important;}

  
  #couples .couples-experience-card h3{font-size:15px !important; line-height:1.22 !important; font-weight:500 !important; letter-spacing:.055em !important; text-transform:uppercase !important;}
}



#siteHeader, .site-header, #langMenu{display:none !important;}
.home-shell{
  padding-top:0 !important;
}

.hero-space.home-photo-hero{
  margin-top:0 !important;
  border-radius:0 0 28px 28px !important;
  overflow:hidden !important;
}
.home-main-photo{
  border-radius:0 0 28px 28px !important;
}


@media (max-width:767px){
  .home-shell{padding-top:0 !important;}
  .hero-space.home-photo-hero, .home-main-photo{border-radius:0 0 24px 24px !important;}
}



body:not(.overlay-view) .home-photo-hero .hero-title, body:not(.overlay-view) .home-photo-hero .hero-title small, body:not(.overlay-view) .home-photo-hero .hero-title span{
  text-align:right !important;
}
body:not(.overlay-view) .home-photo-hero .hero-title small, body:not(.overlay-view) .home-photo-hero .hero-title span{
  display:block !important; width:100% !important; margin-left:0 !important; margin-right:0 !important;
}

body:not(.overlay-view) #musicToggle.music-toggle{
  display:flex !important; visibility:visible !important; opacity:1 !important;
  position:fixed !important; right:17px !important;
  bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  z-index:2147483647 !important;
}

body:not(.overlay-view) .floating-quick-controls{
  right:17px !important;
  bottom:calc(67px + env(safe-area-inset-bottom)) !important;
  z-index:2147483647 !important;
}

#floatingLangMenu{
  position:fixed; right:68px; bottom:calc(67px + env(safe-area-inset-bottom)); z-index:2147483647;
  display:grid; grid-template-columns:repeat(2,minmax(52px,auto)); gap:6px; padding:9px;
  border:1px solid rgba(255,255,255,.55); border-radius:18px;
  background:rgba(245,245,243,.58); box-shadow:0 12px 34px rgba(0,0,0,.16);
  -webkit-backdrop-filter:blur(22px) saturate(180%); backdrop-filter:blur(22px) saturate(180%);
}
#floatingLangMenu[hidden]{display:none !important;}
#floatingLangMenu button{
  border:0; border-radius:12px; min-height:34px; padding:0 10px; background:rgba(255,255,255,.38);
  color:#111; font:600 11px/1 Montserrat,sans-serif; cursor:pointer;
}
body.dark #floatingLangMenu{background:rgba(16,20,26,.55);border-color:rgba(255,255,255,.28);}
body.dark #floatingLangMenu button{background:rgba(255,255,255,.12);color:#fff;}



#realestate .overlay-inner, #holiday .overlay-inner, #tours .overlay-inner{
  padding-top:18px !important;
}
@media (max-width:767px){
  #realestate .overlay-inner, #holiday .overlay-inner, #tours .overlay-inner{padding-top:10px !important;}
}

#realestate .category-tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  overflow:visible !important;
  gap:7px !important;
}
#realestate .category-tabs button{
  flex:1 1 auto !important;
  width:auto !important;
  min-width:max-content !important;
  max-width:100% !important;
  min-height:44px !important;
  height:auto !important;
  padding:9px 13px !important;
  white-space:normal !important;
  line-height:1.15 !important;
  overflow-wrap:anywhere !important;
}
html[lang="de"] #realestate .category-tabs button, html[lang="pl"] #realestate .category-tabs button, html[lang="ru"] #realestate .category-tabs button, html[lang="ro"] #realestate .category-tabs button, html[lang="sr"] #realestate .category-tabs button{font-size:9.5px !important;}
@media (max-width:430px){
 #realestate .category-tabs button{flex:1 1 calc(50% - 7px) !important; min-width:calc(50% - 7px) !important;}
}

#floatingLanguage{display:inline-block !important; min-width:2.2em !important; text-align:center !important; white-space:nowrap !important;}
.floating-quick-btn[aria-label="Language"]{overflow:visible !important;}


body:not(.overlay-view) .hero-space.home-photo-hero{position:relative!important;overflow:hidden!important}body:not(.overlay-view) .home-photo-hero .home-main-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important;z-index:0!important;border-radius:0 0 28px 28px!important}body:not(.overlay-view) .home-photo-hero .hero-title{z-index:2!important}@media(max-width:767px){body:not(.overlay-view) .home-photo-hero .home-main-video{border-radius:0 0 24px 24px!important}}


body:not(.overlay-view) .home-photo-hero .home-essence-logo{
  position:absolute!important;
  top:24px!important;
  left:22px!important;
  width:min(52vw,390px)!important;
  height:auto!important;
  object-fit:contain!important;
  z-index:3!important;
  display:block!important;
  pointer-events:none!important;
}
@media(max-width:767px){
 body:not(.overlay-view) .home-photo-hero .home-essence-logo{top:18px!important;left:16px!important;width:min(57vw,330px)!important;}
}



@media (max-width:767px){
  
  body:not(.overlay-view) .home-photo-hero::before{
    content:"" !important; position:absolute !important; top:4px !important; left:8px !important;
    width:min(72vw,390px) !important; height:78px !important; border-radius:27px !important;
    background:linear-gradient(145deg,rgba(255,255,255,.27),rgba(255,255,255,.08)) !important;
    border:1px solid rgba(255,255,255,.56) !important;
    box-shadow:0 10px 30px rgba(0,0,0,.13),inset 0 1px 1px rgba(255,255,255,.62) !important;
    -webkit-backdrop-filter:blur(24px) saturate(185%) !important; backdrop-filter:blur(24px) saturate(185%) !important;
    z-index:2 !important; pointer-events:none !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:10px !important; left:16px !important; width:min(64vw,360px) !important; z-index:3 !important;
  }

  
  .floating-quick-controls{
    position:fixed !important; right:16px !important; bottom:calc(72px + env(safe-area-inset-bottom)) !important;
    display:flex !important; flex-direction:column !important; align-items:center !important; gap:7px !important;
    z-index:2147483646 !important; visibility:visible !important; opacity:1 !important;
  }
  .floating-quick-btn{width:42px !important;height:42px !important;min-width:42px !important;}
  
  #musicToggle.music-toggle{
    position:fixed !important; right:16px !important; bottom:calc(18px + env(safe-area-inset-bottom)) !important;
    width:42px !important; height:42px !important; min-width:42px !important; min-height:42px !important;
    z-index:2147483647 !important; visibility:visible !important; opacity:1 !important;
  }
  #floatingLangMenu{right:66px !important; bottom:calc(126px + env(safe-area-inset-bottom)) !important;}

  
  .overlay.active .overlay-close{
    position:fixed !important; top:50% !important; right:16px !important; bottom:auto !important; left:auto !important;
    transform:translateY(-50%) !important; width:44px !important; height:44px !important;
    z-index:2147483647 !important;
  }
}


@media (max-width:767px){
  body:not(.overlay-view) .home-photo-hero::before{
    height:76px !important;
    border-radius:0 0 24px 24px !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:38px !important;
    left:18px !important;
    right:auto !important;
    width:min(61vw,340px) !important;
    transform:translateY(-50%) !important;
    filter:brightness(0) saturate(100%) !important;
    z-index:21 !important;
  }
}






.home-photo-hero{
  position:relative !important;
  overflow:hidden !important;
  background:none !important;
}
.home-photo-hero::before, .home-photo-hero::after{
  display:none !important;
}
.home-photo-hero .home-main-photo{
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  opacity:1 !important;
  visibility:visible !important;
}
body:not(.dark) .home-photo-hero .home-main-photo-day{
  display:block !important;
}
body:not(.dark) .home-photo-hero .home-main-photo-night{
  display:none !important;
}
body.dark .home-photo-hero .home-main-photo-day{
  display:none !important;
}
body.dark .home-photo-hero .home-main-photo-night{
  display:block !important;
}

body.dark #page{
  background-image:none !important;
  background:#050505 !important;
}



@media (max-width:767px){

  
  #siteHeader.site-header{
    height:98px !important;
    left:7px !important;
    right:7px !important;
    top:7px !important;
    padding-left:12px !important;
    padding-right:10px !important;
    gap:6px !important;
    align-items:center !important;
  }







  #siteHeader .header-actions{
    right:11px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    gap:5px !important;
    margin:0 !important;
  }

  #siteHeader .round-control{
    width:42px !important;
    height:42px !important;
    flex:0 0 42px !important;
  }

  #siteHeader .language-icon{
    font-size:14px !important;
    font-weight:500 !important;
  }

  #siteHeader .theme-switch{
    width:68px !important;
    height:42px !important;
  }

  #siteHeader .theme-switch-track{
    width:68px !important;
    height:42px !important;
  }

  #siteHeader .theme-switch-thumb{
    width:34px !important;
    height:34px !important;
    top:3px !important;
    left:3px !important;
  }

  body.dark #siteHeader .theme-switch-thumb{
    transform:translateX(28px) !important;
  }

  #siteHeader .theme-switch-icon{
    font-size:13px !important;
  }

  #siteHeader .sun-mini{ left:11px !important; }
  #siteHeader .moon-mini{ right:11px !important; }

  #siteHeader .whatsapp-control svg{
    width:20px !important;
    height:20px !important;
  }

  
  .home-shell{
    padding-top:calc(122px + env(safe-area-inset-top)) !important;
  }

  .overlay-scroll{
    padding-top:calc(134px + env(safe-area-inset-top)) !important;
  }

  .overlay-close{
    top:calc(118px + env(safe-area-inset-top)) !important;
    width:43px !important;
    height:43px !important;
  }

  
  .home-photo-hero .hero-title{
    left:28px !important;
    top:100px !important;
    font-size:58px !important;
    line-height:.84 !important;
  }

  .home-photo-hero .hero-title small{
    font-size:14px !important;
    margin-bottom:10px !important;
  }

  
  .section-title{
    font-size:40px !important;
  }

  .section-title small{
    font-size:10px !important;
  }

  .section-intro{
    font-size:11.2px !important;
    line-height:1.72 !important;
    max-width:370px !important;
  }

  .info-card p, .institution p{
    font-size:11.5px !important;
  }

  
  

  

  

  
  .language-menu{
    width:184px !important;
    top:calc(113px + env(safe-area-inset-top)) !important;
  }

  .language-menu button{
    min-height:46px !important;
    font-size:11px !important;
  }
}



@media (max-width:767px){

  
  html{
    font-size:17px !important;
  }

  body{
    font-size:1rem !important;
  }

  
  #siteHeader.site-header{
    height:112px !important;
    left:6px !important;
    right:6px !important;
    top:6px !important;
    border-radius:34px !important;
    padding-left:14px !important;
    padding-right:12px !important;
  }





  #siteHeader .header-actions{
    right:10px !important;
    gap:7px !important;
  }

  #siteHeader .round-control{
    width:48px !important;
    height:48px !important;
    flex:0 0 48px !important;
  }

  #siteHeader .language-icon{
    font-size:15.5px !important;
  }

  #siteHeader .theme-switch, #siteHeader .theme-switch-track{
    width:78px !important;
    height:48px !important;
  }

  #siteHeader .theme-switch-thumb{
    width:39px !important;
    height:39px !important;
    top:4px !important;
    left:4px !important;
  }

  body.dark #siteHeader .theme-switch-thumb{
    transform:translateX(31px) !important;
  }

  #siteHeader .sun-mini{ left:12px !important; }
  #siteHeader .moon-mini{ right:12px !important; }

  #siteHeader .theme-switch-icon{
    font-size:14px !important;
  }

  #siteHeader .whatsapp-control svg{
    width:23px !important;
    height:23px !important;
  }

  
  .home-shell{
    padding-top:calc(138px + env(safe-area-inset-top)) !important;
  }

  .overlay-scroll{
    padding-top:calc(150px + env(safe-area-inset-top)) !important;
  }

  .overlay-close{
    top:calc(130px + env(safe-area-inset-top)) !important;
    width:48px !important;
    height:48px !important;
  }

  
  .home-photo-hero{
    border-radius:30px !important;
    min-height:calc(100vh - 165px) !important;
  }

  .home-photo-hero .hero-title{
    left:32px !important;
    top:120px !important;
    font-size:68px !important;
    line-height:.82 !important;
    max-width:82% !important;
  }

  .home-photo-hero .hero-title small{
    font-size:16px !important;
    letter-spacing:.26em !important;
    margin-bottom:12px !important;
  }

  
  .section-title{
    font-size:46px !important;
    line-height:.95 !important;
  }

  .section-title small{
    font-size:11px !important;
    letter-spacing:.24em !important;
  }

  .section-intro, .institution p, .info-card p{
    font-size:13px !important;
    line-height:1.7 !important;
  }

  
  

  

  

  

  

  
  .property-card, .tour-card, .vehicle-card{
    border-radius:28px !important;
  }

  .property-card h3, .tour-card h3, .vehicle-card h3{
    font-size:19px !important;
  }

  .property-card p, .tour-card p, .vehicle-card p{
    font-size:12.5px !important;
  }

  
  .primary-btn, .secondary-btn, .glass-btn, .cta-btn{
    min-height:48px !important;
    font-size:12px !important;
    border-radius:24px !important;
  }

  
  .faq-item summary{
    font-size:13px !important;
    padding:18px 16px !important;
  }

  .faq-item p{
    font-size:12.5px !important;
    line-height:1.7 !important;
  }

  
  .institution, .essence-services{
    padding:24px 18px !important;
    border-radius:28px !important;
  }

  
  .language-menu{
    width:200px !important;
    top:calc(128px + env(safe-area-inset-top)) !important;
  }

  .language-menu button{
    min-height:50px !important;
    font-size:12px !important;
  }
}



@media (max-width:767px){

  
  body, button, input, select, textarea{
    font-size:16px !important;
  }

  
  .eyebrow, .subtitle, .section-title small, .property-location, .property-mode, .priceLabel, .zanzi-live-label, .tour-subtitle, .tour-section-title, .compact-tour-title, .rental-price-box small, .property-content small{
    font-size:12.5px !important;
    line-height:1.35 !important;
  }

  
  h1, .hero-title{
    font-size:70px !important;
  }

  h2, .section-title, .title{
    font-size:48px !important;
    line-height:.98 !important;
  }

  h3, .property-card h3, .tour-card h3, .vehicle-card h3, .long-term-card h3, .rental-card h3, .zanzi-live-title{
    font-size:21px !important;
    line-height:1.15 !important;
  }

  
  p, .section-intro, .institution p, .info-card p, .property-copy, .property-content, .tour-description, .tour-intro-body, .tour-intro-lead, .tour-included, .contact-card, .rental-card, .long-term-card{
    font-size:14.5px !important;
    line-height:1.7 !important;
  }

  
  .price, .property-price, .tour-price, .tour-total, .rental-price, .longterm-price{
    font-size:18px !important;
    line-height:1.2 !important;
  }

  
  .primary-btn, .secondary-btn, .glass-btn, .cta-btn, .mini-button, .pax-button, .tour-back, .category-tabs button, .longterm-filter, .property-mode-main{
    font-size:13.5px !important;
    min-height:50px !important;
  }

  
  .longterm-filter, .bedrooms, .category, .property-mode-main{
    font-size:13.5px !important;
    letter-spacing:.04em !important;
  }

  

  
  .tour-category-card{
    min-height:138px !important;
  }

  .tour-category-card, .tour-category-intro{
    font-size:13.5px !important;
  }

  
  .faq-item summary{
    font-size:14.5px !important;
    line-height:1.45 !important;
  }

  .faq-item p{
    font-size:14px !important;
  }

  
  .language-menu button{
    font-size:13px !important;
  }

  
  #siteHeader .language-icon{
    font-size:16.5px !important;
  }



  
  .property-copy, .section-intro, .tour-description, .faq-item p, .institution p, .info-card p{
    font-weight:inherit !important;
  }
}



@media (max-width:767px){

  body{
    overflow-x:hidden !important;
  }

  
  #siteHeader.site-header{
    top:10px !important;
    left:10px !important;
    right:10px !important;
    height:116px !important;
    padding:0 14px 0 18px !important;
    border-radius:34px !important;
    display:flex !important;
    align-items:center !important;
  }





  #siteHeader .essence-wordmark-vector{
    font-size:58px !important;
    line-height:.78 !important;
    letter-spacing:-.015em !important;
  }



  #siteHeader .header-actions{
    right:13px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
  }

  #siteHeader .round-control{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    flex:0 0 50px !important;
  }

  #siteHeader .language-icon{
    font-size:16px !important;
    line-height:1 !important;
  }

  #siteHeader .theme-switch, #siteHeader .theme-switch-track{
    width:80px !important;
    height:50px !important;
  }

  #siteHeader .theme-switch-thumb{
    width:41px !important;
    height:41px !important;
    top:4px !important;
    left:4px !important;
  }

  body.dark #siteHeader .theme-switch-thumb{
    transform:translateX(31px) !important;
  }

  #siteHeader .theme-switch-icon{
    font-size:14px !important;
  }

  #siteHeader .whatsapp-control svg{
    width:25px !important;
    height:25px !important;
    stroke-width:.78 !important;
  }

  
  .home-shell{
    padding-top:142px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .home-photo-hero{
    min-height:calc(100vh - 160px) !important;
    border-radius:34px !important;
    overflow:hidden !important;
    margin:0 !important;
  }

  .home-photo-hero img, .home-photo-hero .hero-bg{
    object-fit:cover !important;
    object-position:center center !important;
  }

  .home-photo-hero .hero-title{
    left:34px !important;
    top:116px !important;
    font-size:68px !important;
    line-height:.84 !important;
    letter-spacing:.01em !important;
    max-width:84% !important;
  }

  .home-photo-hero .hero-title small{
    font-size:16px !important;
    letter-spacing:.28em !important;
    margin-bottom:12px !important;
  }

  .sound-button, .music-toggle, .sound-control{
    width:64px !important;
    height:64px !important;
    right:20px !important;
    bottom:20px !important;
  }

  
  .section-title{
    font-size:48px !important;
    line-height:.96 !important;
  }

  .section-title small, .eyebrow, .subtitle{
    font-size:12.5px !important;
  }

  p, .section-intro, .institution p, .info-card p, .property-copy, .tour-description, .tour-intro-body, .faq-item p{
    font-size:15px !important;
    line-height:1.7 !important;
  }

  .property-card h3, .tour-card h3, .vehicle-card h3, .long-term-card h3, .rental-card h3{
    font-size:21px !important;
  }

  .property-price, .tour-price, .rental-price, .longterm-price{
    font-size:19px !important;
  }

  
  

  .longterm-filter, .bedrooms, .category, .property-mode-main, .category-tabs button{
    font-size:14px !important;
  }

  .primary-btn, .secondary-btn, .glass-btn, .cta-btn, .mini-button, .pax-button, .tour-back{
    min-height:50px !important;
    font-size:14px !important;
    border-radius:25px !important;
  }

  .faq-item summary{
    font-size:15px !important;
    padding:19px 16px !important;
  }

  .language-menu{
    top:134px !important;
    width:200px !important;
  }

  .language-menu button{
    min-height:50px !important;
    font-size:13px !important;
  }

  
  .overlay-scroll{
    padding-top:154px !important;
  }

  .overlay-close{
    top:132px !important;
    width:50px !important;
    height:50px !important;
  }
}



@media (max-width:767px){

  
  #siteHeader .header-actions{
    right:12px !important;
    gap:5px !important;
  }

  #siteHeader .round-control{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    flex:0 0 42px !important;
  }

  #siteHeader .language-icon{
    font-size:14px !important;
  }

  #siteHeader .theme-switch, #siteHeader .theme-switch-track{
    width:68px !important;
    height:42px !important;
  }

  #siteHeader .theme-switch-thumb{
    width:34px !important;
    height:34px !important;
    top:3px !important;
    left:3px !important;
  }

  body.dark #siteHeader .theme-switch-thumb{
    transform:translateX(27px) !important;
  }

  #siteHeader .theme-switch-icon{
    font-size:12px !important;
  }

  #siteHeader .whatsapp-control svg{
    width:21px !important;
    height:21px !important;
    stroke-width:.78 !important;
  }

  
  .hero-space.home-photo-hero, .home-photo-hero{
    margin-bottom:18px !important;
  }

  

  

  

  

  

  .long-term-card strong{
    font-size:8.5px !important;
    line-height:1.08 !important;
    max-width:74px !important;
  }

  .arrow-circle{
    width:27px !important;
    height:27px !important;
  }

  .arrow-circle svg{
    width:13px !important;
    height:13px !important;
  }
}



@media (max-width:767px){

  
  #siteHeader .essence-wordmark-vector{
    font-family:"Bodoni Moda","Didot","Bodoni 72","Times New Roman",serif !important;
    font-size:52px !important;
    font-weight:400 !important;
    font-style:normal !important;
    line-height:.78 !important;
    letter-spacing:-.015em !important;
    font-synthesis:none !important;
  }



  
  #siteHeader .header-actions{
    right:10px !important;
    gap:4px !important;
  }

  #siteHeader .round-control{
    width:39px !important;
    height:39px !important;
    min-width:39px !important;
    flex:0 0 39px !important;
  }

  #siteHeader .language-icon{
    font-size:13px !important;
  }

  #siteHeader .theme-switch, #siteHeader .theme-switch-track{
    width:62px !important;
    height:39px !important;
  }

  #siteHeader .theme-switch-thumb{
    width:31px !important;
    height:31px !important;
    top:3px !important;
    left:3px !important;
  }

  body.dark #siteHeader .theme-switch-thumb{
    transform:translateX(25px) !important;
  }

  #siteHeader .theme-switch-icon{
    font-size:11px !important;
  }

  #siteHeader .whatsapp-control svg{
    width:19px !important;
    height:19px !important;
    stroke-width:.78 !important;
  }

  
  

  

  

  

  

  .long-term-card strong{
    font-size:9px !important;
    line-height:1.12 !important;
    max-width:92px !important;
  }

  .arrow-circle{
    width:29px !important;
    height:29px !important;
    margin-top:6px !important;
  }

  .arrow-circle svg{
    width:14px !important;
    height:14px !important;
  }
}



@media (max-width:767px){

  
  #siteHeader.site-header{
    top:9px !important;
    left:8px !important;
    right:8px !important;
    height:94px !important;
    padding:0 12px 0 16px !important;
    border-radius:28px !important;
    display:flex !important;
    align-items:center !important;
    overflow:visible !important;
  }





  #siteHeader .essence-wordmark-vector{
    font-family:"Bodoni Moda","Didot","Bodoni 72","Times New Roman",serif !important;
    font-size:50px !important;
    font-weight:400 !important;
    line-height:.76 !important;
    letter-spacing:-.012em !important;
    white-space:nowrap !important;
    font-synthesis:none !important;
  }



  #siteHeader .header-actions{
    position:absolute !important;
    right:11px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
    margin:0 !important;
  }

  #siteHeader .round-control{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    flex:0 0 40px !important;
  }

  #siteHeader .language-icon{
    font-size:13.5px !important;
    font-weight:500 !important;
  }

  #siteHeader .theme-switch, #siteHeader .theme-switch-track{
    width:64px !important;
    height:40px !important;
  }

  #siteHeader .theme-switch-thumb{
    width:32px !important;
    height:32px !important;
    top:3px !important;
    left:3px !important;
  }

  body.dark #siteHeader .theme-switch-thumb{
    transform:translateX(26px) !important;
  }

  #siteHeader .theme-switch-icon{
    font-size:11.5px !important;
  }

  #siteHeader .sun-mini{left:10px !important;}
  #siteHeader .moon-mini{right:10px !important;}

  #siteHeader .whatsapp-control svg{
    width:19px !important;
    height:19px !important;
    stroke-width:.78 !important;
  }

  
  .home-shell{
    padding-top:116px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  .home-photo-hero{
    border-radius:28px !important;
    margin-bottom:18px !important;
  }

  .home-photo-hero .hero-title{
    left:28px !important;
    top:96px !important;
    font-size:58px !important;
    line-height:.86 !important;
  }

  .home-photo-hero .hero-title small{
    font-size:13px !important;
    letter-spacing:.25em !important;
    margin-bottom:10px !important;
  }

  
  

  

  

  

  

  .long-term-card strong{
    font-size:8.5px !important;
    line-height:1.08 !important;
    max-width:90px !important;
  }

  .arrow-circle{
    width:28px !important;
    height:28px !important;
  }

  
  .overlay-scroll{
    padding-top:142px !important;
  }

  .overlay-inner{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .overlay-close{
    top:116px !important;
    right:18px !important;
    width:44px !important;
    height:44px !important;
  }

  .overlay-close .inline-ui-icon{
    width:23px !important;
    height:23px !important;
    stroke-width:2.1 !important;
  }

  
  .section-title{
    margin-top:0 !important;
    margin-bottom:22px !important;
    font-size:45px !important;
    line-height:.94 !important;
    letter-spacing:.04em !important;
    max-width:340px !important;
  }

  .section-title small{
    display:block !important;
    font-size:10.5px !important;
    line-height:1 !important;
    letter-spacing:.28em !important;
    margin-bottom:12px !important;
  }

  .section-intro{
    font-size:15px !important;
    line-height:1.55 !important;
    margin:0 0 22px !important;
    max-width:355px !important;
  }

  
  #longterm .overlay-inner{
    padding-left:17px !important;
    padding-right:17px !important;
  }

  #longterm .section-title{
    font-size:45px !important;
    line-height:.91 !important;
    letter-spacing:.045em !important;
    max-width:330px !important;
    margin-bottom:28px !important;
  }

  #longterm .section-title small{
    font-size:10.5px !important;
    margin-bottom:14px !important;
  }

  #longterm .section-intro{
    font-size:15px !important;
    line-height:1.45 !important;
    margin-bottom:23px !important;
  }

  #longterm .longterm-filters{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:0 0 25px !important;
  }

  #longterm .longterm-filter{
    min-height:86px !important;
    height:86px !important;
    padding:10px 5px !important;
    border-radius:18px !important;
    gap:7px !important;
    font-size:11px !important;
    line-height:1.05 !important;
  }

  #longterm .longterm-filter i{
    font-size:18px !important;
  }

  #longterm .longterm-filter span{
    font-size:10.5px !important;
    line-height:1.08 !important;
    white-space:nowrap !important;
  }

  #longterm .rental-card{
    margin-top:0 !important;
    border-radius:28px !important;
  }

  #longterm .longterm-gallery{
    padding:11px 11px 0 !important;
  }

  #longterm .longterm-main-photo{
    border-radius:22px !important;
  }

  
  .property-card h3, .tour-card h3, .vehicle-card h3, .rental-card h3{
    font-size:19px !important;
    line-height:1.16 !important;
  }

  .property-card p, .tour-card p, .vehicle-card p, .rental-card p, .faq-item p{
    font-size:13px !important;
    line-height:1.6 !important;
  }

  .faq-item summary{
    font-size:13.5px !important;
    line-height:1.35 !important;
  }

  .language-menu{
    top:108px !important;
    width:185px !important;
  }

  .language-menu button{
    min-height:45px !important;
    font-size:12px !important;
  }
}


#siteHeader{
  display:flex !important;
  align-items:center !important;
}






@media (max-width:767px){
  #siteHeader.site-header{
    height:104px !important;
    min-height:104px !important;
    padding-left:7px !important;
    padding-right:9px !important;
  }





  #siteHeader .header-actions{
    flex:0 0 auto !important;
    margin-left:auto !important;
    position:static !important;
    transform:none !important;
    align-items:center !important;
  }
}




@media (min-width:768px){
  #siteHeader.site-header{
    height:126px !important;
    min-height:126px !important;
    padding-left:18px !important;
  }





  #siteHeader .header-actions{
    position:static !important;
    margin-left:auto !important;
    transform:none !important;
    align-items:center !important;
  }
}




html[dir="rtl"] #siteHeader, body[dir="rtl"] #siteHeader, html[lang="ar"] #siteHeader{
  direction:ltr !important;
}



#tours, body:not(.dark) #tours, body.dark #tours{
  background-image:none !important;
  background:var(--overlay) !important;
  background-color:var(--overlay) !important;
}

#tours .overlay-scroll, body:not(.dark) #tours .overlay-scroll, body.dark #tours .overlay-scroll{
  background:transparent !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}


#tours .tour-back{
  position:fixed !important;
  left:18px !important;
  right:auto !important;
  bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  z-index:99998 !important;

  width:auto !important;
  min-width:92px !important;
  height:48px !important;
  min-height:48px !important;

  margin:0 !important;
  padding:0 17px !important;
  border-radius:999px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;

  border:1px solid rgba(255,255,255,.62) !important;
  background:rgba(245,245,243,.78) !important;
  color:#171717 !important;
  box-shadow:0 10px 30px rgba(0,0,0,.16) !important;

  -webkit-backdrop-filter:blur(18px) saturate(150%) !important;
  backdrop-filter:blur(18px) saturate(150%) !important;

  font-size:11px !important;
  font-weight:500 !important;
  line-height:1 !important;
  letter-spacing:.13em !important;
  text-transform:uppercase !important;
}

#tours .tour-back i{
  font-size:13px !important;
}

body.dark #tours .tour-back{
  background:rgba(20,20,20,.72) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.16) !important;
}


@media (max-width:600px){
  #tours .tour-back{
    left:14px !important;
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
    height:46px !important;
    min-height:46px !important;
    min-width:88px !important;
    padding:0 15px !important;
    font-size:10.5px !important;
  }
}


#tours .overlay-inner{
  padding-bottom:130px !important;
}



#musicToggle.music-toggle{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  position:fixed !important;

  right:18px !important;
  left:auto !important;
  bottom:calc(18px + env(safe-area-inset-bottom)) !important;

  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  min-height:48px !important;

  border-radius:50% !important;
  z-index:2147483647 !important;

  transform:none !important;
}

#musicToggle.music-toggle i{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  font-size:17px !important;
}


#tours .tour-back{
  z-index:2147483646 !important;
}

@media (max-width:600px){
  #musicToggle.music-toggle{
    right:14px !important;
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
  }
}



#tours .tour-actions button{
  font-size:8px !important;
  letter-spacing:.09em !important;
  min-height:40px !important;
  padding:0 9px !important;
}

@media (max-width:430px){
  #tours .tour-actions button{
    font-size:7.6px !important;
    letter-spacing:.08em !important;
  }
}



#siteHeader.site-header{
  align-items:center !important;
}





#siteHeader .header-actions{
  top:50% !important;
  transform:translateY(-50%) !important;
  align-items:center !important;
}

@media (max-width:767px){
  body:not(.overlay-view) #siteHeader.site-header{
    align-items:center !important;
  }





  body:not(.overlay-view) #siteHeader .header-actions{
    align-self:center !important;
    transform:none !important;
  }
}



@media (max-width:767px){
  body:not(.overlay-view) #siteHeader.site-header{
    position:fixed !important;
    top:10px !important;
    left:14px !important;
    right:14px !important;
    height:78px !important;
    min-height:78px !important;
    padding:0 18px 0 18px !important;
    border-radius:24px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    column-gap:8px !important;
    align-items:center !important;
    overflow:hidden !important;
  }

  body:not(.overlay-view):not(.dark) #siteHeader #essenceLogoDay{
    filter:none !important;
  }





  body:not(.overlay-view) #siteHeader .header-actions{
    position:absolute !important;
    top:50% !important;
    right:18px !important;
    left:auto !important;
    width:auto !important;
    min-width:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    transform:translateY(-50%) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
  }

  body:not(.overlay-view) #siteHeader .round-control{
    position:relative !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    flex:0 0 40px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
  }

  body:not(.overlay-view) #siteHeader .language-icon{
    font-size:14px !important;
  }

  body:not(.overlay-view) #siteHeader .theme-switch{
    min-height:40px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-track{
    width:70px !important;
    height:40px !important;
  }

  body:not(.overlay-view) #siteHeader .theme-switch-thumb{
    width:34px !important;
    height:34px !important;
    top:3px !important;
    left:3px !important;
  }

  body.dark:not(.overlay-view) #siteHeader .theme-switch-thumb{
    transform:translateX(30px) !important;
  }

  body:not(.overlay-view) #siteHeader .whatsapp-control svg{
    width:21px !important;
    height:21px !important;
  }

  body:not(.overlay-view) .home-shell{
    padding-top:108px !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero{
    position:relative !important;
    height:calc(100svh - 108px) !important;
    min-height:470px !important;
    max-height:620px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  body:not(.overlay-view) .home-photo-hero .home-main-photo, body:not(.overlay-view) .home-photo-hero img, body:not(.overlay-view) .home-photo-hero .hero-bg{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center 53% !important;
    transform:none !important;
  }

  body:not(.overlay-view) .home-photo-hero .hero-title{
    position:absolute !important;
    left:26px !important;
    top:44px !important;
    margin:0 !important;
    padding:0 !important;
    max-width:80% !important;
    font-size:56px !important;
    line-height:.86 !important;
    letter-spacing:.005em !important;
    z-index:3 !important;
  }

  body:not(.overlay-view) .home-photo-hero .hero-title small{
    display:block !important;
    margin:0 0 9px 2px !important;
    font-size:15px !important;
    line-height:1 !important;
    letter-spacing:.30em !important;
  }

  
  

  
  
  

  
  body:not(.overlay-view) .couple-card{
    cursor:pointer !important;
  }
  body:not(.overlay-view) .couple-action-icon svg{
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:1.8 !important;
  }
}

@media (max-width:390px){
  body:not(.overlay-view) #siteHeader.site-header{
    left:12px !important;
    right:12px !important;
    padding-left:15px !important;
    padding-right:18px !important;
  }

  body:not(.overlay-view) #siteHeader .header-actions{
    right:10px !important;
    gap:4px !important;
  }
  body:not(.overlay-view) #siteHeader .round-control{
    width:37px !important;
    height:37px !important;
    min-width:37px !important;
    flex-basis:37px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch, body:not(.overlay-view) #siteHeader .theme-switch-track{
    width:64px !important;
    height:37px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-thumb{
    width:31px !important;
    height:31px !important;
    top:3px !important;
    left:3px !important;
  }
  body.dark:not(.overlay-view) #siteHeader .theme-switch-thumb{
    transform:translateX(27px) !important;
  }
  body:not(.overlay-view) .home-shell{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  body:not(.overlay-view) .home-photo-hero .hero-title{
    left:24px !important;
    top:43px !important;
    font-size:53px !important;
  }
}


#couples .couples-experience-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-top:24px;
}
#couples .couples-experience-card{
  padding:20px 20px 24px;
  border-radius:30px;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  min-height:460px;
}
#couples .couples-experience-photo{
  position:relative;
  width:100%;
  height:260px;
  border-radius:22px;
  overflow:hidden;
  margin-bottom:18px;
}
#couples .couples-experience-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
#couples .couples-experience-badge{
  position:absolute;
  right:14px;
  bottom:14px;
  width:46px;
  height:46px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.78);
  color:#1a1a1a;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}
#couples .couples-experience-badge svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#couples .couples-experience-card h3{
  margin:0 0 12px;
  font-size:20px;
  line-height:1.18;
  font-weight:500;
}
#couples .couples-experience-card p{
  margin:0;
  font-size:13px;
  line-height:1.65;
  opacity:.86;
  max-width:420px;
}
#couples .couples-book{
  margin-top:auto;
  padding:12px 22px;
  border-radius:999px;
  border:1px solid currentColor;
  background:transparent;
  color:inherit;
  font:600 11px/1 "Montserrat",sans-serif;
  letter-spacing:.14em;
  cursor:pointer;
}
@media (max-width:767px){
  #couples .couples-experience-grid{grid-template-columns:1fr;gap:14px;margin-top:18px;}
  #couples .couples-experience-card{min-height:0;padding:16px 16px 20px;border-radius:24px;}
  #couples .couples-experience-photo{height:210px;margin-bottom:15px;border-radius:20px;}
  #couples .couples-experience-card h3{font-size:17px;}
  #couples .couples-experience-card p{font-size:12px;line-height:1.55;}
  #couples .couples-experience-badge{width:42px;height:42px;right:12px;bottom:12px;}
  #couples .couples-experience-badge svg{width:22px;height:22px;}
  #couples .couples-book{margin-top:18px;}
}


@media (max-width:767px){
  body:not(.overlay-view) #siteHeader.site-header{
    align-items:center !important;
  }
  body:not(.overlay-view) #siteHeader .header-actions{
    position:absolute !important;
    top:50% !important;
    bottom:auto !important;
    right:18px !important;
    left:auto !important;
    transform:translateY(-50%) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    height:40px !important;
    margin:0 !important;
    padding:0 !important;
    gap:6px !important;
  }
  body:not(.overlay-view) #siteHeader .round-control, body:not(.overlay-view) #siteHeader .theme-switch, body:not(.overlay-view) #siteHeader .whatsapp-control{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    margin:0 !important;
  }
  body:not(.overlay-view) #siteHeader .round-control{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    flex:0 0 40px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch{
    width:70px !important;
    height:40px !important;
    min-width:70px !important;
    flex:0 0 70px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-track{
    width:70px !important;
    height:40px !important;
    display:flex !important;
    align-items:center !important;
  }
  body:not(.overlay-view) #siteHeader .language-icon, body:not(.overlay-view) #siteHeader .whatsapp-control svg{
    display:block !important;
    margin:auto !important;
  }
}
@media (max-width:390px){
  body:not(.overlay-view) #siteHeader .header-actions{
    right:10px !important;
    height:37px !important;
    gap:4px !important;
  }
  body:not(.overlay-view) #siteHeader .round-control{
    width:37px !important;
    height:37px !important;
    min-width:37px !important;
    flex-basis:37px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch, body:not(.overlay-view) #siteHeader .theme-switch-track{
    width:64px !important;
    height:37px !important;
  }
}


#siteHeader.site-header{
  transition:transform .55s cubic-bezier(.22,.8,.25,1), opacity .35s ease !important;
  will-change:transform,opacity;
}
#siteHeader.site-header.header-hidden{
  transform:translate3d(0,calc(-160% - env(safe-area-inset-top)),0) !important;
  opacity:0 !important;

/* Final desktop header alignment for laptop/desktop */
@media (min-width:768px){
  body:not(.overlay-view) #siteHeader.site-header{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
  }
body:not(.overlay-view) #siteHeader .header-actions{
    position:absolute !important;
    top:54% !important;
    bottom:auto !important;
    right:34px !important;
    left:auto !important;
    transform:translateY(-50%) !important;
    height:46px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
  }
  body:not(.overlay-view) #siteHeader .round-control,
  body:not(.overlay-view) #siteHeader .theme-switch,
  body:not(.overlay-view) #siteHeader .whatsapp-control{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    margin:0 !important;
  }
  body:not(.overlay-view) #siteHeader .round-control{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    flex:0 0 46px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch{
    width:82px !important;
    height:46px !important;
    min-width:82px !important;
    flex:0 0 82px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-track{
    width:82px !important;
    height:46px !important;
    display:flex !important;
    align-items:center !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-thumb{
    width:38px !important;
    height:38px !important;
    top:4px !important;
    left:4px !important;
  }
  body.dark:not(.overlay-view) #siteHeader .theme-switch-thumb{
    transform:translateX(36px) !important;
  }
  body:not(.overlay-view) #siteHeader .language-icon,
  body:not(.overlay-view) #siteHeader .whatsapp-control svg{
    display:block !important;
    margin:auto !important;
  }
}

  pointer-events:none !important;
}


#siteHeader.site-header{
  -webkit-transform:translate3d(0,0,0);
  transform:translate3d(0,0,0);
  transition:transform .24s cubic-bezier(.22,.8,.25,1),opacity .18s ease !important;
  contain:layout paint style;
}
#siteHeader.site-header.header-hidden{
  -webkit-transform:translate3d(0,calc(-160% - env(safe-area-inset-top)),0) !important;
  transform:translate3d(0,calc(-160% - env(safe-area-inset-top)),0) !important;
}


@media (max-width:767px){
  
  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero{
    height:83svh !important;
    min-height:83svh !important;
    max-height:83svh !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-main-video{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:0 0 24px 24px !important;
  }
}


@media (min-width:768px){
  body:not(.overlay-view) #siteHeader .header-actions{
    top:64% !important;
    transform:translateY(-50%) !important;
  }
}



#couples .couples-experience-card{
  min-height:460px !important;
  padding:20px 20px 24px !important;
}
#couples .couples-experience-photo{
  width:100% !important;
  height:260px !important;
  margin-bottom:18px !important;
}
#couples .couples-experience-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media (max-width:767px){
  #couples .couples-experience-card{
    min-height:0 !important;
    padding:16px 16px 20px !important;
  }
  #couples .couples-experience-photo{
    height:210px !important;
    margin-bottom:15px !important;
  }
}



@media (min-width:768px){
  body:not(.overlay-view) .info-card p, body:not(.overlay-view) .institution p{
    font-size:15.5px !important;
    line-height:1.65 !important;
  }

  body:not(.overlay-view) .eyebrow{
    font-size:11.5px !important;
    line-height:1.55 !important;
    letter-spacing:.20em !important;
  }

  body:not(.overlay-view) .stat span{
    font-size:11.5px !important;
    line-height:1.35 !important;
  }

  body:not(.overlay-view) #faq summary{
    font-size:15px !important;
    line-height:1.45 !important;
  }

  body:not(.overlay-view) #faq p{
    font-size:14.5px !important;
    line-height:1.7 !important;
  }
}



#siteHeader.site-header{
  position:fixed !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}


#siteHeader .header-actions, body:not(.overlay-view) #siteHeader .header-actions{
  position:absolute !important;
  right:18px !important;
  left:auto !important;
  top:50% !important;
  height:auto !important;
  gap:5px !important;
  margin:0 !important;
  padding:0 !important;
  transform:translateY(-50%) !important;
}
body:not(.overlay-view) #siteHeader .round-control{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  flex:0 0 38px !important;
}
body:not(.overlay-view) #siteHeader .theme-switch{
  width:68px !important;
  height:38px !important;
  min-width:68px !important;
  flex:0 0 68px !important;
}
body:not(.overlay-view) #siteHeader .theme-switch-track{
  width:68px !important;
  height:38px !important;
}
body:not(.overlay-view) #siteHeader .theme-switch-thumb{
  width:32px !important;
  height:32px !important;
  top:3px !important;
  left:3px !important;
}
body.dark:not(.overlay-view) #siteHeader .theme-switch-thumb{
  transform:translateX(30px) !important;
}
@media (max-width:767px){

  #siteHeader .header-actions, body:not(.overlay-view) #siteHeader .header-actions{ right:10px !important; gap:3px !important; }
  body:not(.overlay-view) #siteHeader .round-control{
    width:34px !important; height:34px !important; min-width:34px !important; flex-basis:34px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch{
    width:60px !important; height:34px !important; min-width:60px !important; flex-basis:60px !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-track{ width:60px !important; height:34px !important; }
  body:not(.overlay-view) #siteHeader .theme-switch-thumb{ width:28px !important; height:28px !important; top:3px !important; left:3px !important; }
  body.dark:not(.overlay-view) #siteHeader .theme-switch-thumb{ transform:translateX(26px) !important; }
}




#siteHeader.site-header{
  transition:transform .28s cubic-bezier(.22,.8,.25,1), opacity .20s ease !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
  transform:translate3d(0,0,0);
  will-change:transform,opacity;
}
#siteHeader.site-header.header-hidden{
  transform:translate3d(0,calc(-160% - env(safe-area-inset-top)),0) !important;
}
body.overlay-view #siteHeader .header-actions{
  position:absolute !important; right:18px !important; left:auto !important; top:50% !important;
  height:auto !important; gap:5px !important; margin:0 !important; padding:0 !important;
  transform:translateY(-50%) !important;
}
body.overlay-view #siteHeader .round-control{width:38px !important;height:38px !important;min-width:38px !important;flex:0 0 38px !important;}
body.overlay-view #siteHeader .theme-switch{width:68px !important;height:38px !important;min-width:68px !important;flex:0 0 68px !important;}
body.overlay-view #siteHeader .theme-switch-track{width:68px !important;height:38px !important;}
body.overlay-view #siteHeader .theme-switch-thumb{width:32px !important;height:32px !important;top:3px !important;left:3px !important;}
body.dark.overlay-view #siteHeader .theme-switch-thumb{transform:translateX(30px) !important;}
@media(max-width:767px){
  body.overlay-view #siteHeader .header-actions{right:10px !important;gap:3px !important;}
  body.overlay-view #siteHeader .round-control{width:34px !important;height:34px !important;min-width:34px !important;flex-basis:34px !important;}
  body.overlay-view #siteHeader .theme-switch{width:60px !important;height:34px !important;min-width:60px !important;flex-basis:60px !important;}
  body.overlay-view #siteHeader .theme-switch-track{width:60px !important;height:34px !important;}
  body.overlay-view #siteHeader .theme-switch-thumb{width:28px !important;height:28px !important;top:3px !important;left:3px !important;}
  body.dark.overlay-view #siteHeader .theme-switch-thumb{transform:translateX(26px) !important;}
}



@media (max-width:767px){
  body:not(.overlay-view) #siteHeader.site-header{
    position:fixed !important;
    top:calc(10px + env(safe-area-inset-top)) !important;
    left:10px !important;
    right:10px !important;
    width:auto !important;
    height:70px !important;
    min-height:70px !important;
    padding:7px 12px !important;
    margin:0 !important;
    border-radius:25px !important;
    overflow:visible !important;
    z-index:1000 !important;
    background:linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,.10)) !important;
    border:1px solid rgba(255,255,255,.52) !important;
    box-shadow:0 8px 30px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.62), inset 0 -1px 0 rgba(255,255,255,.16) !important;
    -webkit-backdrop-filter:blur(18px) saturate(155%) !important;
    backdrop-filter:blur(18px) saturate(155%) !important;
  }
  body.dark:not(.overlay-view) #siteHeader.site-header{
    background:linear-gradient(135deg,rgba(20,28,38,.36),rgba(8,14,22,.16)) !important;
    border-color:rgba(255,255,255,.30) !important;
    box-shadow:0 8px 30px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.34), inset 0 -1px 0 rgba(255,255,255,.08) !important;
  }

  body:not(.overlay-view) #siteHeader .logo-wrap{
    position:relative !important;
    z-index:2 !important;
    display:flex !important;
    align-items:center !important;
    height:100% !important;
    min-width:0 !important;
  }
  body:not(.overlay-view) #siteHeader .logo-image, body:not(.overlay-view) #siteHeader .essence-wordmark-image{
    width:174px !important;
    max-width:calc(100vw - 190px) !important;
    height:auto !important;
    object-fit:contain !important;
  }
  body:not(.overlay-view) #siteHeader .header-actions{
    right:10px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    gap:4px !important;
  }
  body:not(.overlay-view) #siteHeader .round-control{
    background:rgba(255,255,255,.18) !important;
    border-color:rgba(255,255,255,.48) !important;
    -webkit-backdrop-filter:blur(12px) saturate(150%) !important;
    backdrop-filter:blur(12px) saturate(150%) !important;
  }
  body:not(.overlay-view) #siteHeader .theme-switch-track{
    background:rgba(255,255,255,.18) !important;
    border-color:rgba(255,255,255,.48) !important;
    -webkit-backdrop-filter:blur(12px) saturate(150%) !important;
    backdrop-filter:blur(12px) saturate(150%) !important;
  }

  
  body:not(.overlay-view) .home-shell{
    max-width:none !important;
    width:100% !important;
    padding:0 0 calc(80px + env(safe-area-inset-bottom)) !important;
    margin:0 !important;
  }
  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero{
    width:100vw !important;
    height:100svh !important;
    min-height:620px !important;
    max-height:none !important;
    margin:0 !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-main-photo, body:not(.overlay-view) .home-photo-hero img, body:not(.overlay-view) .home-photo-hero .hero-bg{
    inset:0 !important;
    width:100vw !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center 50% !important;
  }
  body:not(.overlay-view) .home-photo-hero .hero-title{
    left:28px !important;
    top:155px !important;
  }
  
}



body:not(.overlay-view) .home-shell > *:not(.home-photo-hero){
  width:calc(100% - 28px) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
}


body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero, body:not(.overlay-view) .home-photo-hero .home-main-photo, body:not(.overlay-view) .home-photo-hero img{
  border-radius:0 0 28px 28px !important;
}
@media (max-width:767px){
  body:not(.overlay-view) .home-shell > *:not(.home-photo-hero){
    width:calc(100% - 24px) !important;
  }
  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero, body:not(.overlay-view) .home-photo-hero .home-main-photo, body:not(.overlay-view) .home-photo-hero img{
    border-radius:0 0 24px 24px !important;
  }
}



body:not(.overlay-view) .home-photo-hero .hero-title{
  text-align:right !important;
}
body:not(.overlay-view) .home-photo-hero .hero-title small{
  display:block !important;
  width:100% !important;
  text-align:right !important;
  margin-left:auto !important;
  margin-right:0 !important;
}
body:not(.overlay-view) .home-photo-hero .hero-title span{
  display:block !important;
  text-align:right !important;
}


.floating-quick-btn, #musicToggle.music-toggle{
  border:1px solid rgba(255,255,255,.58) !important;
  background:
    radial-gradient(circle at 28% 18%, rgba(255,255,255,.58), rgba(255,255,255,.16) 34%, rgba(255,255,255,.08) 68%),
    linear-gradient(145deg, rgba(255,255,255,.34), rgba(255,255,255,.12)) !important;
  color:#111 !important;
  box-shadow:
    0 10px 28px rgba(0,0,0,.14),
    inset 0 1px 1px rgba(255,255,255,.82),
    inset 0 -1px 1px rgba(255,255,255,.20) !important;
  -webkit-backdrop-filter:blur(22px) saturate(180%) !important;
  backdrop-filter:blur(22px) saturate(180%) !important;
}
.floating-quick-btn::before, #musicToggle.music-toggle::before{
  content:"" !important;
  position:absolute !important;
  inset:2px !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  background:linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,0) 48%,rgba(255,255,255,.10)) !important;
}
.floating-quick-btn, #musicToggle.music-toggle{position:relative !important;overflow:hidden !important;}
body.dark .floating-quick-btn, body.dark #musicToggle.music-toggle{
  background:
    radial-gradient(circle at 28% 18%, rgba(255,255,255,.24), rgba(32,38,46,.30) 38%, rgba(8,12,18,.28) 72%),
    linear-gradient(145deg, rgba(255,255,255,.16), rgba(10,14,20,.20)) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.32) !important;
  box-shadow:0 10px 30px rgba(0,0,0,.28), inset 0 1px 1px rgba(255,255,255,.38) !important;
}


@media (max-width:767px){
  
  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero{
    height:76svh !important;
    min-height:0 !important;
    max-height:76svh !important;
    border-radius:0 0 24px 24px !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-main-video{
    height:100% !important;
    border-radius:0 0 24px 24px !important;
    object-fit:cover !important;
  }
  
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:10px !important;
    left:16px !important;
    width:min(62vw,350px) !important;
  }
  
  body:not(.overlay-view) .home-photo-hero .hero-title{
    top:auto !important;
    left:auto !important;
    right:92px !important;
    bottom:28px !important;
    width:auto !important;
    max-width:56vw !important;
    margin:0 !important;
    text-align:right !important;
    z-index:4 !important;
  }
  body:not(.overlay-view) .home-photo-hero .hero-title small, body:not(.overlay-view) .home-photo-hero .hero-title span{
    width:auto !important;
    text-align:right !important;
  }
  
  body:not(.overlay-view) .floating-quick-controls{
    right:17px !important;
    bottom:calc(28svh + env(safe-area-inset-bottom)) !important;
  }
  body:not(.overlay-view) #musicToggle.music-toggle{
    right:14px !important;
    bottom:calc(22svh + env(safe-area-inset-bottom)) !important;
  }
  #floatingLangMenu{
    right:68px !important;
    bottom:calc(28svh + env(safe-area-inset-bottom)) !important;
  }
}


@media (max-width:767px){
  
  body:not(.overlay-view) .home-photo-hero::before{
    content:"" !important;
    position:absolute !important;
    top:5px !important;
    left:9px !important;
    width:min(67vw,370px) !important;
    height:70px !important;
    border-radius:24px !important;
    border:1px solid rgba(255,255,255,.52) !important;
    background:linear-gradient(145deg,rgba(255,255,255,.25),rgba(255,255,255,.08)) !important;
    box-shadow:0 8px 28px rgba(0,0,0,.12),inset 0 1px 1px rgba(255,255,255,.58) !important;
    -webkit-backdrop-filter:blur(22px) saturate(180%) !important;
    backdrop-filter:blur(22px) saturate(180%) !important;
    z-index:2 !important;
    pointer-events:none !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:10px !important;
    left:16px !important;
    width:min(62vw,350px) !important;
    z-index:3 !important;
  }

  
  body:not(.overlay-view) .floating-quick-controls{
    position:fixed !important;
    right:66px !important;
    bottom:calc(16px + env(safe-area-inset-bottom)) !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:7px !important;
    z-index:2147483647 !important;
  }
  body:not(.overlay-view) #musicToggle.music-toggle{
    position:fixed !important;
    right:16px !important;
    bottom:calc(16px + env(safe-area-inset-bottom)) !important;
    width:42px !important;
    height:42px !important;
    z-index:2147483647 !important;
  }
  #floatingLangMenu{
    right:16px !important;
    bottom:calc(66px + env(safe-area-inset-bottom)) !important;
  }
}


.overlay.active .overlay-close{
  display:grid !important;
  visibility:visible !important;
  opacity:1 !important;
  position:fixed !important;
  top:calc(16px + env(safe-area-inset-top)) !important;
  right:16px !important;
  width:44px !important;
  height:44px !important;
  border-radius:50% !important;
  z-index:2147483647 !important;
  color:var(--text) !important;
  background:rgba(245,245,243,.70) !important;
  border:1px solid rgba(255,255,255,.62) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.14) !important;
  -webkit-backdrop-filter:blur(20px) saturate(170%) !important;
  backdrop-filter:blur(20px) saturate(170%) !important;
}
body.dark .overlay.active .overlay-close{background:rgba(22,22,22,.68) !important;color:#fff !important;border-color:rgba(255,255,255,.25) !important;}
.overlay.active .overlay-close svg{display:block !important;width:20px !important;height:20px !important;stroke:currentColor !important;stroke-width:2 !important;fill:none !important;}



@media (max-width:767px){
  
  body:not(.overlay-view) .home-photo-hero::before{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:14px !important;
    left:12px !important;
    width:min(70vw,390px) !important;
    height:82px !important;
    border-radius:28px !important;
    border:1px solid rgba(255,255,255,.58) !important;
    background:linear-gradient(135deg,rgba(255,255,255,.30),rgba(255,255,255,.10)) !important;
    box-shadow:0 10px 30px rgba(0,0,0,.13), inset 0 1px 1px rgba(255,255,255,.70) !important;
    -webkit-backdrop-filter:blur(24px) saturate(185%) !important;
    backdrop-filter:blur(24px) saturate(185%) !important;
    z-index:20 !important;
    pointer-events:none !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:22px !important;
    left:22px !important;
    width:min(64vw,355px) !important;
    z-index:21 !important;
  }

  
  .floating-quick-controls, body:not(.overlay-view) .floating-quick-controls, body.overlay-view .floating-quick-controls{
    position:fixed !important;
    right:14px !important;
    bottom:calc(174px + env(safe-area-inset-bottom)) !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    z-index:2147483646 !important;
  }
  .floating-quick-btn{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
  }

  
  #musicToggle.music-toggle, body:not(.overlay-view) #musicToggle.music-toggle, body.overlay-view #musicToggle.music-toggle{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:fixed !important;
    right:14px !important;
    bottom:calc(120px + env(safe-area-inset-bottom)) !important;
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
    border-radius:50% !important;
    z-index:2147483647 !important;
  }
  #floatingLangMenu{
    position:fixed !important;
    right:68px !important;
    bottom:calc(174px + env(safe-area-inset-bottom)) !important;
    z-index:2147483647 !important;
  }

  
  .overlay.active .overlay-close{
    display:grid !important;
    visibility:visible !important;
    opacity:1 !important;
    position:fixed !important;
    top:50% !important;
    right:14px !important;
    bottom:auto !important;
    left:auto !important;
    transform:translateY(-50%) !important;
    width:46px !important;
    height:46px !important;
    border-radius:50% !important;
    z-index:2147483647 !important;
  }
}


@media (max-width:767px){
  
  body:not(.overlay-view) .home-photo-hero::before{
    top:16px !important;
    left:16px !important;
    width:min(67vw,372px) !important;
    height:68px !important;
    border-radius:24px !important;
    border:1px solid rgba(255,255,255,.72) !important;
    background:
      radial-gradient(120% 110% at 18% 0%,rgba(255,255,255,.46) 0%,rgba(255,255,255,.14) 46%,rgba(255,255,255,.07) 72%),
      linear-gradient(135deg,rgba(255,255,255,.22),rgba(185,220,255,.10) 50%,rgba(255,255,255,.08)) !important;
    box-shadow:
      0 12px 32px rgba(15,35,55,.16),
      inset 0 1px 1px rgba(255,255,255,.92),
      inset 0 -1px 1px rgba(255,255,255,.20) !important;
    -webkit-backdrop-filter:blur(30px) saturate(205%) contrast(108%) !important;
    backdrop-filter:blur(30px) saturate(205%) contrast(108%) !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:23px !important;
    left:24px !important;
    width:min(63vw,350px) !important;
  }

  
  .floating-quick-controls, body:not(.overlay-view) .floating-quick-controls, body.overlay-view .floating-quick-controls{
    bottom:calc(112px + env(safe-area-inset-bottom)) !important;
  }
  #musicToggle.music-toggle, body:not(.overlay-view) #musicToggle.music-toggle, body.overlay-view #musicToggle.music-toggle{
    bottom:calc(58px + env(safe-area-inset-bottom)) !important;
  }
  #floatingLangMenu{
    bottom:calc(112px + env(safe-area-inset-bottom)) !important;
  }
}


@media (max-width:767px){
  
  body:not(.overlay-view) .home-photo-hero::before{
    top:16px !important;
    left:16px !important;
    width:min(66vw,368px) !important;
    height:64px !important;
    border-radius:22px !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:50px !important;
    left:28px !important;
    width:min(61vw,340px) !important;
    transform:translateY(-50%) !important;
    z-index:21 !important;
  }

  
  .floating-quick-controls, body:not(.overlay-view) .floating-quick-controls, body.overlay-view .floating-quick-controls{
    right:12px !important;
    bottom:calc(72px + env(safe-area-inset-bottom)) !important;
    gap:7px !important;
  }
  #musicToggle.music-toggle, body:not(.overlay-view) #musicToggle.music-toggle, body.overlay-view #musicToggle.music-toggle{
    right:12px !important;
    bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  }
  #floatingLangMenu{
    right:66px !important;
    bottom:calc(72px + env(safe-area-inset-bottom)) !important;
  }
}


@media (max-width:767px){
  
  body:not(.overlay-view) .home-photo-hero::before{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:112px !important;
    border-radius:0 0 28px 28px !important;
    border:0 !important;
    border-bottom:1px solid rgba(255,255,255,.62) !important;
    background:
      radial-gradient(130% 150% at 18% -20%,rgba(255,255,255,.50),rgba(255,255,255,.16) 44%,rgba(255,255,255,.08) 74%),
      linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.10)) !important;
    box-shadow:0 14px 34px rgba(10,30,45,.13), inset 0 1px 1px rgba(255,255,255,.92), inset 0 -1px 1px rgba(255,255,255,.20) !important;
    -webkit-backdrop-filter:blur(30px) saturate(210%) contrast(108%) !important;
    backdrop-filter:blur(30px) saturate(210%) contrast(108%) !important;
    z-index:20 !important;
    pointer-events:none !important;
  }

  
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:56px !important;
    right:18px !important;
    left:auto !important;
    width:min(62vw,350px) !important;
    transform:translateY(-50%) !important;
    filter:brightness(0) saturate(100%) !important;
    z-index:21 !important;
  }

  
  .floating-quick-controls, body:not(.overlay-view) .floating-quick-controls, body.overlay-view .floating-quick-controls{
    right:12px !important;
    bottom:calc(72px + env(safe-area-inset-bottom)) !important;
  }
  #musicToggle.music-toggle, body:not(.overlay-view) #musicToggle.music-toggle, body.overlay-view #musicToggle.music-toggle{
    right:12px !important;
    bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  }
}


@media (max-width:767px){
  body:not(.overlay-view) .home-photo-hero::before{
    height:78px !important;
    border-radius:0 0 24px 24px !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    top:39px !important;
    left:18px !important;
    right:auto !important;
    width:min(60vw,335px) !important;
    transform:translateY(-50%) !important;
    filter:brightness(0) saturate(100%) !important;
  }
}



@media (min-width:768px){
  body:not(.overlay-view) .home-shell{
    width:100% !important;
    max-width:1600px !important;
    margin:0 auto !important;
    padding:0 24px 90px !important;
  }
  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero{
    position:relative !important;
    width:100% !important;
    height:72svh !important;
    min-height:620px !important;
    max-height:900px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:0 0 34px 34px !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-main-video{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:0 0 34px 34px !important;
    z-index:0 !important;
  }
  
  body:not(.overlay-view) .home-photo-hero::before{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    top:18px !important;
    left:20px !important;
    right:20px !important;
    width:auto !important;
    height:104px !important;
    border-radius:32px !important;
    border:1px solid rgba(255,255,255,.70) !important;
    background:linear-gradient(135deg,rgba(255,255,255,.34),rgba(255,255,255,.10)) !important;
    box-shadow:0 14px 38px rgba(15,35,55,.15),inset 0 1px 1px rgba(255,255,255,.88) !important;
    -webkit-backdrop-filter:blur(30px) saturate(190%) !important;
    backdrop-filter:blur(30px) saturate(190%) !important;
    pointer-events:none !important;
    z-index:20 !important;
  }
  body:not(.overlay-view) .home-photo-hero .home-essence-logo{
    position:absolute !important;
    top:70px !important;
    left:48px !important;
    width:clamp(330px,31vw,520px) !important;
    max-height:76px !important;
    object-fit:contain !important;
    object-position:left center !important;
    transform:translateY(-50%) !important;
    filter:brightness(0) saturate(100%) !important;
    z-index:21 !important;
  }
  body.dark:not(.overlay-view) .home-photo-hero .home-essence-logo{
    filter:brightness(0) invert(1) !important;
  }
  body:not(.overlay-view) .home-photo-hero .hero-title{
    position:absolute !important;
    left:auto !important;
    right:90px !important;
    top:auto !important;
    bottom:54px !important;
    margin:0 !important;
    width:auto !important;
    max-width:46vw !important;
    font-size:clamp(58px,6vw,92px) !important;
    text-align:right !important;
    z-index:4 !important;
  }
  body:not(.overlay-view) .home-photo-hero .hero-title small, body:not(.overlay-view) .home-photo-hero .hero-title span{
    text-align:right !important;
  }
  
  
  .floating-quick-controls{
    right:24px !important;
  }
  #musicToggle.music-toggle{
    right:24px !important;
  }
}
@media (min-width:1400px){
  body:not(.overlay-view) .home-shell{max-width:1840px !important;padding-left:32px !important;padding-right:32px !important;}
  body:not(.overlay-view) .hero-space.home-photo-hero{height:74svh !important;max-height:980px !important;}
}


@media (max-width:767px){
  body:not(.overlay-view) .hero-space.home-photo-hero, body:not(.overlay-view) .home-photo-hero{
    height:88svh !important;
    min-height:88svh !important;
    max-height:88svh !important;
  }
}






@media (min-width:768px){
  
  
  
  

  
  #realestate .overlay-inner{
    width:min(94vw,1500px) !important;
    max-width:1500px !important;
    padding-left:clamp(28px,4vw,68px) !important;
    padding-right:clamp(28px,4vw,68px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  #realestate .property-mode-main{
    width:100% !important;
    max-width:1050px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    gap:14px !important;
  }
  #realestate .property-mode-main button{
    min-height:58px !important;
    padding:14px 26px !important;
    font-size:14px !important;
  }
  #realestate .category-tabs{
    width:100% !important;
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    gap:14px !important;
    overflow:visible !important;
  }
  #realestate .category-tabs button{
    flex:1 1 0 !important;
    min-height:56px !important;
    padding:13px 22px !important;
    font-size:13px !important;
    white-space:nowrap !important;
  }
  #realestate .property-list{
    width:100% !important;
    max-width:1320px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  
  #musicToggle.music-toggle, body.overlay-view #musicToggle.music-toggle{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:fixed !important;
    right:24px !important;
    bottom:22px !important;
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
    z-index:2147483647 !important;
  }

  
  .overlay.active .overlay-close{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:fixed !important;
    top:50% !important;
    right:24px !important;
    left:auto !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    width:50px !important;
    height:50px !important;
    z-index:2147483647 !important;
  }
}

.info-card .island-opportunity-subtitle{font-size:10.5px!important;line-height:1.28!important;letter-spacing:.09em!important;font-weight:500!important;transform:none!important;}
@media(max-width:767px){.info-card .island-opportunity-subtitle{font-size:10px!important;letter-spacing:.08em!important;}}


@supports (content-visibility:auto){
  body:not(.overlay-view) .info-card, body:not(.overlay-view) .zanzibar-live-card, body:not(.overlay-view) .site-footer{content-visibility:auto;contain-intrinsic-size:700px;}
  .overlay:not(.active){content-visibility:hidden;}
}


#longterm .longterm-villa-card .rental-top{align-items:center;gap:18px}
#longterm .longterm-villa-card .longterm-price{margin-left:auto;display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-width:170px;padding:14px 20px!important;border-radius:22px!important;text-align:center;background:rgba(255,255,255,.5);border:1px solid rgba(20,20,20,.12);box-shadow:0 10px 30px rgba(0,0,0,.06)}
#longterm .lt-price-amount{font-size:25px;font-weight:600;line-height:1;letter-spacing:-.02em}
#longterm .lt-price-period{font-size:9px;letter-spacing:.18em;margin-top:7px;opacity:.62}
#longterm .longterm-description{max-width:760px;line-height:1.55;margin:16px 0 15px;opacity:.78}
#longterm .lt-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}
#longterm .lt-fact{min-height:86px;padding:12px 8px;border-radius:18px;border:1px solid rgba(20,20,20,.10);background:rgba(255,255,255,.34);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
#longterm .lt-icon{font-size:20px;line-height:1;margin-bottom:7px;opacity:.72}
#longterm .lt-fact b{font-size:11px;letter-spacing:.08em;font-weight:600}
#longterm .lt-fact small{font-size:8px;letter-spacing:.12em;opacity:.58;margin-top:4px}
#longterm .lt-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0 18px}
#longterm .lt-dates label{border:1px solid rgba(20,20,20,.12);background:rgba(255,255,255,.3);border-radius:17px;padding:10px 13px;display:flex;flex-direction:column;gap:5px}
#longterm .lt-dates label span{font-size:8px;letter-spacing:.15em;opacity:.58}
#longterm .lt-dates input{border:0;background:transparent;font:inherit;font-size:12px;outline:none;width:100%}
body.dark #longterm .lt-fact, body.dark #longterm .lt-dates label, body.dark #longterm .longterm-villa-card .longterm-price{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.05)}
@media(max-width:767px){#longterm .longterm-villa-card .rental-top{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}#longterm .longterm-villa-card .longterm-price{margin:8px auto 0!important;min-width:150px!important;max-width:none!important;padding:13px 18px!important}#longterm .lt-price-amount{font-size:22px!important}#longterm .lt-price-period{font-size:8px!important}#longterm .longterm-description{text-align:center;font-size:12px;line-height:1.55}#longterm .lt-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}#longterm .lt-fact{min-height:78px;padding:9px 5px;border-radius:15px}#longterm .lt-icon{font-size:18px}#longterm .lt-fact b{font-size:9px}#longterm .lt-fact small{font-size:6.8px}#longterm .lt-dates{gap:7px}#longterm .lt-dates label{padding:9px 10px;border-radius:14px}}


.lt-icon svg{width:25px;height:25px;display:block;margin:0 auto;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;color:inherit}
.lt-icon{color:#a9a9a9!important;display:flex!important;align-items:center;justify-content:center}


    
    .photo-modal-close{
      z-index:6010!important;display:flex!important;align-items:center;justify-content:center;
      width:48px!important;height:48px!important;border-radius:50%!important;
      background:rgba(255,255,255,.96)!important;color:#111!important;
      border:1px solid rgba(0,0,0,.12)!important;box-shadow:0 6px 22px rgba(0,0,0,.28)!important;
      font-size:34px!important;font-family:Arial,sans-serif!important;font-weight:300!important;
      line-height:1!important;padding:0!important;
    }
    .photo-modal-close span{display:block;transform:translateY(-1px);pointer-events:none;}
    @media(max-width:600px){.photo-modal-close{top:calc(12px + env(safe-area-inset-top))!important;right:12px!important;}}




#essence-services-seo h1, section.glass.info-card h1{font-size:clamp(20px,2.25vw,32px)!important;line-height:1.08!important;letter-spacing:-.025em!important;}



.rental-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 10px;}
.rental-date-field{display:flex;flex-direction:column;gap:6px;}
.rental-date-field span{font-size:9px;letter-spacing:.11em;text-transform:uppercase;opacity:.72;}
.rental-date-field input{width:100%;box-sizing:border-box;border:1px solid rgba(127,127,127,.22);border-radius:13px;padding:11px 10px;background:rgba(255,255,255,.10);color:inherit;font:inherit;font-size:12px;outline:none;}
body:not(.dark) .rental-date-field input{background:rgba(255,255,255,.72);}
@media(max-width:640px){section.glass.info-card h1{font-size:20px!important;line-height:1.1!important}.rental-dates{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;margin:10px 0 7px}.rental-date-field{min-width:0;gap:4px}.rental-date-field span{font-size:7px;letter-spacing:.08em}.rental-date-field input{min-width:0;width:100%;padding:8px 4px;border-radius:10px;font-size:10px}.rental-card .rental-book{min-height:36px!important;margin-top:8px!important;border-radius:14px!important;font-size:7px!important;letter-spacing:.11em!important;padding:0 8px!important}}




.rental-card .rental-dates{display:flex!important;flex-direction:row!important;align-items:flex-end!important;gap:5px!important;width:100%!important;margin:8px 0 6px!important;}
.rental-card .rental-date-field{flex:1 1 0!important;width:0!important;min-width:0!important;max-width:50%!important;overflow:hidden!important;gap:3px!important;}
.rental-card .rental-date-field span{font-size:6.5px!important;letter-spacing:.06em!important;line-height:1!important;white-space:nowrap!important;}
.rental-card .rental-date-field input[type="date"]{-webkit-appearance:none!important;appearance:none!important;display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:29px!important;box-sizing:border-box!important;padding:3px 2px!important;border-radius:8px!important;font-size:8px!important;line-height:1!important;}
.rental-card .rental-date-field input[type="date"]::-webkit-date-and-time-value{text-align:left!important;margin:0!important;padding:0!important;}
.rental-card .rental-date-field input[type="date"]::-webkit-calendar-picker-indicator{margin:0!important;padding:0!important;width:12px!important;height:12px!important;}
.rental-card .rental-book{min-height:31px!important;height:31px!important;margin-top:5px!important;padding:0 6px!important;border-radius:12px!important;font-size:6.5px!important;letter-spacing:.08em!important;line-height:1!important;}
@media(min-width:641px){.rental-card .rental-dates{max-width:260px!important;margin-left:auto!important;margin-right:auto!important}.rental-card .rental-date-field input[type="date"]{height:32px!important;font-size:9px!important}.rental-card .rental-book{min-height:34px!important;height:34px!important;font-size:7px!important}}




.ef-property{overflow:hidden}.ef-photo{height:290px;border-radius:22px 22px 0 0;overflow:hidden;background:rgba(130,130,130,.12);display:flex;align-items:center;justify-content:center}.ef-photo img{width:100%;height:100%;object-fit:cover}.ef-placeholder{flex-direction:column;gap:10px;color:var(--muted);letter-spacing:.12em;font-size:11px}.ef-placeholder i{font-size:44px}.ef-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.ef-price{text-align:center;min-width:130px;padding:12px 16px;border-radius:18px;background:rgba(255,255,255,.32);border:1px solid var(--border)}.ef-price strong{display:block;font-size:24px}.ef-price small{font-size:10px;letter-spacing:.1em}.ef-facts,.ef-amenities{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.ef-facts span,.ef-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border-radius:999px;background:rgba(255,255,255,.24);border:1px solid var(--border);font-size:12px}.ef-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.ef-dates label{font-size:10px;letter-spacing:.08em}.ef-dates input{display:block;width:100%;margin-top:6px;padding:11px;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,.28);color:inherit}.dark .ef-price,.dark .ef-facts span,.dark .ef-chip,.dark .ef-dates input{background:rgba(255,255,255,.06)}@media(max-width:620px){.ef-photo{height:220px}.ef-head{flex-direction:column}.ef-price{width:100%}.ef-dates{grid-template-columns:1fr 1fr}}



#longterm .longterm-location-filters{
 display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;
 margin:0 auto 14px;max-width:980px
}
#longterm .longterm-location-filter{
 border:1px solid rgba(127,127,127,.28);background:rgba(255,255,255,.10);
 color:inherit;border-radius:999px;padding:9px 15px;min-height:40px;
 font:inherit;font-size:11px;font-weight:600;letter-spacing:.05em;
 backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);cursor:pointer
}
#longterm .longterm-location-filter.active{
 background:rgba(255,255,255,.28);border-color:rgba(127,127,127,.48);
 box-shadow:0 6px 18px rgba(0,0,0,.07)
}
body.dark #longterm .longterm-location-filter{background:rgba(20,20,20,.25);border-color:rgba(255,255,255,.18)}
body.dark #longterm .longterm-location-filter.active{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.38)}
@media(max-width:640px){
 #longterm .longterm-location-filters{gap:6px;margin-bottom:10px}
 #longterm .longterm-location-filter{padding:8px 10px;min-height:36px;font-size:9.5px}
}



#longterm .essence-studio-static .longterm-gallery{width:100%;overflow:hidden;border-radius:inherit}
#longterm .essence-studio-static .longterm-main-photo{display:block;width:100%;height:auto;max-height:560px;object-fit:cover}
#longterm .essence-studio-static .longterm-thumbnails{display:flex;gap:7px;overflow-x:auto;padding:8px 2px}
#longterm .essence-studio-static .longterm-thumb{border:0;background:transparent;padding:0;flex:0 0 68px;cursor:pointer}
#longterm .essence-studio-static .longterm-thumb img{display:block;width:68px;height:52px;object-fit:cover;border-radius:9px}



.essence-search-bar{display:block;width:min(760px,100%);margin:20px auto 8px;padding:15px 22px;border:1px solid rgba(80,80,80,.34);border-radius:999px;background:rgba(255,255,255,.38);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font:inherit;font-size:13px;font-weight:600;letter-spacing:.13em;color:inherit;cursor:pointer}
#realestate .property-mode-main button,#realestate .category-tabs button,#longterm .longterm-location-filter,#longterm .longterm-filter{pointer-events:auto!important;cursor:pointer!important;position:relative!important;z-index:40!important}
#realestate .property-mode-main button.active,#realestate .category-tabs button.active,
#longterm .longterm-location-filter.active,#longterm .longterm-filter.active{border-color:rgba(25,25,25,.82)!important;box-shadow:0 0 0 1px rgba(25,25,25,.25),0 7px 18px rgba(0,0,0,.09)!important}
body.dark #realestate .property-mode-main button.active,body.dark #realestate .category-tabs button.active,
body.dark #longterm .longterm-location-filter.active,body.dark #longterm .longterm-filter.active{border-color:rgba(255,255,255,.82)!important}

.essence-no-results{display:none;text-align:center;margin:24px auto;padding:18px;max-width:680px;border-radius:20px;opacity:.72}





#siteHeader.site-header{display:flex !important;}



#essenceInternalHeader{position:fixed;top:max(8px,env(safe-area-inset-top));left:10px;right:10px;height:62px;z-index:999999;display:none;align-items:center;justify-content:space-between;gap:16px;padding:6px 16px;box-sizing:border-box;border:1px solid rgba(255,255,255,.55);border-radius:22px;background:rgba(244,244,244,.72);box-shadow:0 8px 24px rgba(0,0,0,.12);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%)}
#essenceInternalHeader.is-visible{display:flex}
#essenceInternalHeader .eih-home{display:flex;align-items:center;min-width:0;height:100%;flex:0 1 205px}
#essenceInternalHeader .eih-logo{display:block;width:190px;max-width:100%;height:44px;object-fit:contain;object-position:left center;filter:brightness(0)}
#essenceInternalHeader .eih-title{flex:0 0 auto;max-width:48vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;font-family:Arial,sans-serif;font-size:12px;font-weight:600;line-height:1;letter-spacing:.11em;color:#111}
body.dark #essenceInternalHeader{background:rgba(18,18,18,.72);border-color:rgba(255,255,255,.24)}
body.dark #essenceInternalHeader .eih-logo{filter:brightness(0) invert(1)}
body.dark #essenceInternalHeader .eih-title{color:#fff}
@media(max-width:767px){#essenceInternalHeader{left:8px;right:8px;height:56px;padding:5px 11px;border-radius:20px;gap:8px}#essenceInternalHeader .eih-home{flex-basis:150px}#essenceInternalHeader .eih-logo{width:145px;height:38px}#essenceInternalHeader .eih-title{max-width:45vw;font-size:10px;letter-spacing:.055em}}



.essence-location-picker{position:relative;width:100%;margin:12px 0 12px;}
.essence-location-picker:after{content:"⌄";position:absolute;right:22px;top:50%;transform:translateY(-55%);font-size:22px;pointer-events:none;color:var(--text);}
.essence-location-picker select{width:100%;min-height:56px;appearance:none;-webkit-appearance:none;border:1px solid rgba(0,0,0,.13);border-radius:24px;background:rgba(255,255,255,.76);padding:0 54px 0 22px;font:inherit;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--text);outline:none;}
body.dark .essence-location-picker select{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.20);color:var(--text);}
@media(max-width:640px){.essence-location-picker{margin:10px 0}.essence-location-picker select{min-height:50px;border-radius:21px;font-size:12px;padding-left:18px}.essence-location-picker:after{right:19px}}



.essence-location-wrap{width:min(100%,680px);margin:16px auto 12px;position:relative}.essence-location-select{width:100%;min-height:52px;padding:0 48px 0 20px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(255,255,255,.10);color:inherit;font:inherit;font-weight:600;letter-spacing:.02em;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);outline:none;appearance:auto}.essence-location-select option{color:#111;background:#fff}@media(max-width:600px){.essence-location-wrap{margin:13px auto 10px}.essence-location-select{min-height:48px;border-radius:16px;padding-left:16px}}



#siteHeader,.site-header,#essenceInternalHeader{transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform;contain:layout paint;}
.overlay,.overlay-scroll{overscroll-behavior:contain;}
@media(max-width:767px){body{overflow-x:hidden}.site-header,#siteHeader{transition:transform .22s ease,opacity .18s ease!important}}




#holiday .section-title small{font-size:15px !important;letter-spacing:.24em !important;font-weight:500 !important;margin-bottom:12px !important}
#holiday .holiday-search-panel{padding:20px 18px 19px !important}
#holiday .holiday-search-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:16px !important;align-items:end !important}
#holiday .holiday-search-field{display:block;min-width:0;margin:0 !important}
#holiday .holiday-search-field input,#holiday .holiday-search-field select{display:block;width:100% !important;min-width:0 !important;margin:0 auto !important}
#holiday .holiday-search-button{width:min(390px,100%) !important;font-size:13px !important;letter-spacing:.18em !important;box-shadow:0 8px 24px rgba(0,0,0,.12)}
#holiday .holiday-card-from{font-size:14px;font-weight:650;letter-spacing:.08em;white-space:nowrap}
@media(max-width:760px){
 #holiday .section-title small{font-size:14px !important}
 #holiday .holiday-search-panel{padding:18px 16px !important}
 #holiday .holiday-search-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;column-gap:14px !important;row-gap:16px !important}
 #holiday .holiday-search-field input,#holiday .holiday-search-field select{padding-left:12px !important;padding-right:10px !important;font-size:13px !important}
 #holiday .holiday-price-box{gap:10px !important}
 #holiday .holiday-card-from{font-size:12px;letter-spacing:.055em}
}
@media(max-width:390px){
 #holiday .holiday-search-grid{column-gap:12px !important}
 #holiday .holiday-search-panel{padding-left:14px !important;padding-right:14px !important}
 #holiday .holiday-book-now{padding-left:13px !important;padding-right:13px !important;min-width:0 !important}
}




@media (min-width:768px){
 body:not(.overlay-view) .home-photo-hero .home-essence-logo{width:clamp(370px,34vw,565px) !important;max-height:82px !important;}
}
@media (max-width:767px){
 body:not(.overlay-view) .home-photo-hero .home-essence-logo{width:min(64vw,370px) !important;}
}

#holiday .holiday-search-panel{padding-left:20px !important;padding-right:20px !important;}
#holiday .holiday-search-grid{column-gap:18px !important;}
@media(max-width:760px){
 #holiday .holiday-search-panel{padding-left:14px !important;padding-right:14px !important;}
 #holiday .holiday-search-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;column-gap:16px !important;}
 #holiday .holiday-search-field:first-child{margin-left:0 !important;}
 #holiday .holiday-search-field:nth-child(2){margin-right:0 !important;}
}



#holiday .holiday-search-button{color:#fff !important;background:#111 !important;}
#holiday .holiday-search-field:first-child{transform:translateX(-8px);}
@media(max-width:760px){#holiday .holiday-search-field:first-child{transform:translateX(-6px);}}
#holiday .holiday-card-from{font-weight:600;letter-spacing:.06em;}




#holiday .holiday-search-field input[type="date"]{
  text-align:center !important;
  font-size:17px !important;
  font-weight:500 !important;
  padding-left:8px !important;
  padding-right:8px !important;
}
#holiday .holiday-search-field input[type="date"]::-webkit-date-and-time-value{
  text-align:center !important;
  width:100% !important;
}
@media(max-width:760px){
  #holiday .holiday-search-field:first-child{transform:none !important;}
  #holiday .holiday-search-field:first-child input[type="date"],
  #holiday .holiday-search-field:nth-child(2) input[type="date"]{
    width:94% !important;
    height:48px !important;
    font-size:17px !important;
  }
  #holiday .holiday-search-field:first-child input[type="date"]{margin-left:0 !important;margin-right:auto !important;}
  #holiday .holiday-search-field:nth-child(2){transform:translateX(-5px) !important;}
  #holiday .holiday-search-field:nth-child(2) input[type="date"]{margin-left:0 !important;margin-right:auto !important;}
}

#holiday .holiday-card-from{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  line-height:1.05 !important;
  white-space:normal !important;
  letter-spacing:0 !important;
}
#holiday .holiday-card-from .from-label{
  display:block;
  font-size:10px !important;
  font-weight:500 !important;
  letter-spacing:.14em !important;
  margin-bottom:5px;
}
#holiday .holiday-card-from .from-value{
  display:block;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:650 !important;
  letter-spacing:.015em !important;
}
@media(max-width:390px){#holiday .holiday-card-from .from-value{font-size:22px !important;}}



#holiday .holiday-price-box{
  width:100% !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
#holiday .holiday-card-from{
  flex:1 1 0 !important;
  min-width:0 !important;
}
#holiday .holiday-card-from .rate-unavailable{
  display:block !important;
  font-size:11px !important;
  line-height:1.25 !important;
  font-weight:600 !important;
  letter-spacing:.08em !important;
  white-space:normal !important;
}
#holiday .holiday-book-now{
  flex:0 0 auto !important;
  white-space:nowrap !important;
  max-width:58% !important;
  box-sizing:border-box !important;
}
@media(max-width:390px){
  #holiday .holiday-price-box{padding-left:12px !important;padding-right:12px !important;gap:8px !important;}
  #holiday .holiday-book-now{font-size:9.5px !important;padding-left:11px !important;padding-right:11px !important;max-width:62% !important;}
}




#holiday .holiday-search-field input[type="date"]{
  box-sizing:border-box !important;
  text-align:center !important;
  text-align-last:center !important;
}
#holiday .holiday-search-field input[type="date"]::-webkit-date-and-time-value{
  display:block !important;
  width:100% !important;
  text-align:center !important;
  margin:0 !important;
  padding:0 !important;
}
@media(max-width:760px){
  #holiday .holiday-search-grid{column-gap:18px !important;}
  #holiday .holiday-search-field:first-child,
  #holiday .holiday-search-field:nth-child(2){transform:none !important;}
  #holiday .holiday-search-field:first-child input[type="date"],
  #holiday .holiday-search-field:nth-child(2) input[type="date"]{
    width:88% !important;
    height:48px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:6px !important;
    padding-right:6px !important;
    font-size:17px !important;
  }
}



#holiday .holiday-search-field input[type="date"]{box-sizing:border-box!important;text-align:center!important;text-align-last:center!important;padding-left:6px!important;padding-right:6px!important;}
#holiday .holiday-search-field input[type="date"]::-webkit-date-and-time-value{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;width:100%!important;height:100%!important;}
#holiday .holiday-search-field input[type="date"]::-webkit-datetime-edit{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;padding:0!important;}
#holiday .holiday-search-field input[type="date"]::-webkit-datetime-edit-fields-wrapper{display:flex!important;align-items:center!important;justify-content:center!important;margin:auto!important;}
#holiday .holiday-card-from{align-items:center!important;text-align:center!important;min-width:94px;}
#holiday .holiday-card-from .from-label{width:100%;text-align:center!important;margin-bottom:4px!important;}
#holiday .holiday-card-from .from-value{display:flex!important;align-items:baseline!important;justify-content:center!important;gap:5px!important;width:100%;}
#holiday .holiday-card-from .from-currency{font-size:13px!important;font-weight:600!important;}
#holiday .holiday-card-from .from-amount{font-size:27px!important;font-weight:700!important;line-height:1!important;}
@media(max-width:760px){#holiday .holiday-search-field:first-child input[type=date],#holiday .holiday-search-field:nth-child(2) input[type=date]{width:88%!important;max-width:154px!important;height:48px!important;margin-left:auto!important;margin-right:auto!important;}#holiday .holiday-search-field:nth-child(2){transform:none!important;}}




.essence-service-card,
.service-card,
.home-card,
.menu-card,
.category-card,
[data-service-card] {
  text-align: center !important;
}
.essence-service-card .icon,
.service-card .icon,
.home-card .icon,
.menu-card .icon,
.category-card .icon,
[data-service-card] .icon,
.essence-service-card svg,
.service-card svg,
.home-card svg,
.menu-card svg,
.category-card svg,
[data-service-card] svg {
  margin-left: auto !important;
  margin-right: auto !important;
}




























.owner-listing-bar{
  position:fixed!important; left:14px!important; right:14px!important;
  bottom:calc(10px + env(safe-area-inset-bottom))!important; height:66px!important;
  z-index:2147483600!important; display:grid!important;
  grid-template-columns:1fr 1px 1fr!important; align-items:center!important;
  border-radius:28px!important;
  background:linear-gradient(105deg,rgba(239,250,242,.96),rgba(222,244,229,.94),rgba(235,249,239,.96))!important;
  border:1px solid rgba(255,255,255,.94)!important;
  box-shadow:0 8px 24px rgba(104,160,119,.12),inset 0 1px 0 rgba(255,255,255,.95)!important;
  backdrop-filter:blur(22px) saturate(125%)!important; -webkit-backdrop-filter:blur(22px) saturate(125%)!important;
  overflow:hidden!important;
}
.owner-listing-choice{appearance:none!important;border:0!important;background:transparent!important;color:#42644c!important;height:100%!important;padding:0 7px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;font:500 7.5px/1.18 "Montserrat",sans-serif!important;letter-spacing:.045em!important;text-transform:uppercase!important;}
.owner-mini-icon{width:23px!important;height:23px!important;display:grid!important;place-items:center!important;flex:0 0 23px!important;}
.owner-mini-icon svg{width:23px!important;height:23px!important;fill:none!important;stroke:#42644c!important;stroke-width:1.7!important;}
.owner-listing-divider{width:1px!important;height:38px!important;background:rgba(66,100,76,.38)!important;}
.owner-listing-arrow{position:absolute!important;right:8px!important;top:8px!important;width:50px!important;height:50px!important;border:0!important;border-radius:50%!important;background:rgba(190,226,199,.78)!important;display:grid!important;place-items:center!important;}
.owner-listing-arrow svg{width:19px!important;height:19px!important;fill:none!important;stroke:#42644c!important;}



#floatingThemeIcon.essence-minimal-sun{width:21px;height:21px;display:block;position:relative;border:1.6px solid currentColor;border-radius:50%;font-size:0}#floatingThemeIcon.essence-minimal-sun:before,#floatingThemeIcon.essence-minimal-sun:after{content:"";position:absolute;left:50%;top:50%;width:29px;height:1.5px;background:currentColor;transform:translate(-50%,-50%);box-shadow:none}#floatingThemeIcon.essence-minimal-sun:after{transform:translate(-50%,-50%) rotate(90deg)}#floatingThemeIcon.essence-minimal-sun{box-shadow:0 -7px 0 -6px currentColor,0 7px 0 -6px currentColor,7px 0 0 -6px currentColor,-7px 0 0 -6px currentColor}

#floatingThemeIcon.essence-sun-svg{display:block;width:30px;height:30px;font-size:0;line-height:0}#floatingThemeIcon.essence-sun-svg svg{display:block;width:100%;height:100%;overflow:visible}



@media (max-width:767px){
  
  
  
  
  
  
  
  
  
  
  
  
  .owner-listing-bar{position:fixed!important;left:14px!important;right:14px!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;width:auto!important;height:66px!important;margin:0!important;z-index:2147483600!important;grid-template-columns:minmax(0,.92fr) 1px minmax(0,1.08fr)!important;padding-right:60px!important;box-sizing:border-box!important;transition:transform .28s ease,opacity .22s ease!important;transform:translateY(0)!important;opacity:1!important;pointer-events:auto!important}.owner-listing-bar.essence-scroll-hidden{transform:translateY(calc(100% + 28px))!important;opacity:0!important;pointer-events:none!important}
  .owner-listing-choice{padding:0 3px!important;gap:5px!important;font-size:7.2px!important;letter-spacing:.035em!important;white-space:nowrap!important}
  .owner-mini-icon{width:20px!important;height:20px!important;flex-basis:20px!important}.owner-mini-icon svg{width:20px!important;height:20px!important}.owner-listing-arrow{right:8px!important}
  .floating-quick-controls,body:not(.overlay-view) .floating-quick-controls,body.overlay-view .floating-quick-controls{position:fixed!important;right:14px!important;bottom:calc(138px + env(safe-area-inset-bottom))!important;display:flex!important;flex-direction:column!important;gap:8px!important;padding:0!important;z-index:2147483646!important}
  #musicToggle.music-toggle,body:not(.overlay-view) #musicToggle.music-toggle,body.overlay-view #musicToggle.music-toggle{position:fixed!important;right:14px!important;bottom:calc(84px + env(safe-area-inset-bottom))!important;width:46px!important;height:46px!important;z-index:2147483647!important}
  #floatingLangMenu{right:68px!important;bottom:calc(138px + env(safe-area-inset-bottom))!important}
}




body.dark .owner-listing-bar{
  background:linear-gradient(110deg,rgba(255,232,204,.82),rgba(246,210,168,.76),rgba(255,226,190,.84))!important;
  border:1px solid rgba(255,246,234,.88)!important;
  box-shadow:0 10px 30px rgba(185,120,63,.16),inset 0 1px 0 rgba(255,255,255,.86),inset 0 -1px 0 rgba(255,255,255,.20)!important;
  backdrop-filter:blur(26px) saturate(145%)!important;-webkit-backdrop-filter:blur(26px) saturate(145%)!important;
}
body.dark .owner-listing-choice{color:#76543b!important}
body.dark .owner-mini-icon svg{stroke:#76543b!important}
body.dark .owner-listing-divider{background:rgba(118,84,59,.34)!important}
body.dark .owner-listing-arrow{background:rgba(255,211,160,.70)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.58)!important}
body.dark .owner-listing-arrow svg{stroke:#76543b!important}

#floatingThemeIcon.essence-sun-svg{width:22px!important;height:22px!important}
#floatingThemeIcon.essence-sun-svg svg{width:22px!important;height:22px!important}




#realestate .admin-property-item[data-category="land"] .admin-land-facts span:first-child{font-weight:650;}
#realestate .admin-property-item[data-category="land"] .admin-land-facts .fa-vector-square{font-size:15px;}
n/* ESSENCE FINAL HOME MOBILE 2026-09-28 — canonical, overrides legacy home rules */
@media (max-width:767px){
  .home-shell>.action-grid.essence-six-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:10px 0 0!important;padding:0!important;}
  .home-shell>.action-grid.essence-six-grid>.real-estate-feature-card{grid-column:1/-1!important;height:220px!important;min-height:220px!important;padding:0!important;border-radius:28px!important;}
  .real-estate-kicker{top:20px!important;font-size:10px!important;letter-spacing:.16em!important;}
  .real-estate-find{top:51px!important;font-size:20px!important;line-height:1!important;letter-spacing:.045em!important;}
  .real-estate-icons{top:94px!important;left:50%!important;width:92%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;align-items:start!important;}
  .real-estate-option{gap:4px!important;}
  .real-estate-side-icon{width:42px!important;height:42px!important;}
  .real-estate-side-icon svg{width:40px!important;height:40px!important;stroke-width:1.35!important;}
  .real-estate-option span{font-size:7.4px!important;line-height:1.18!important;letter-spacing:.045em!important;}
  .home-shell>.action-grid.essence-six-grid .real-estate-bottom{height:40px!important;bottom:5px!important;align-items:center!important;}
  .home-shell>.action-grid.essence-six-grid .real-estate-bottom .arrow-circle{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;bottom:0!important;}
  .home-shell>.action-grid.essence-six-grid .real-estate-bottom .arrow-circle svg{width:18px!important;height:18px!important;}
  .home-shell>.action-grid.essence-six-grid>.action-card:not(.real-estate-feature-card){grid-column:auto!important;width:100%!important;height:158px!important;min-height:158px!important;}
}

/* ESSENCE_NATIVE_SCROLL_FINAL_20260929
   Internal URL pages use the browser document as the only vertical scroller. */
html.essence-native-route{scroll-behavior:auto!important;overflow-x:hidden!important;overflow-y:auto!important;}
html.essence-native-route body{overflow-x:hidden!important;overflow-y:visible!important;height:auto!important;min-height:100%!important;}
html.essence-native-route body.overlay-view{overflow-y:visible!important;}
html.essence-native-route #page{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;}
html.essence-native-route .overlay{position:relative!important;inset:auto!important;overflow:visible!important;min-height:100vh!important;height:auto!important;}
html.essence-native-route .overlay.active{display:block!important;}
html.essence-native-route .overlay-scroll{position:relative!important;inset:auto!important;overflow:visible!important;height:auto!important;max-height:none!important;overscroll-behavior:auto!important;-webkit-overflow-scrolling:auto!important;touch-action:auto!important;}
html.essence-native-route .overlay-close{display:none!important;}
html.essence-native-route.essence-re-base #realestate .essence-pagination{display:none!important;}
html.essence-native-route.essence-re-results #realestate .essence-pagination{display:flex;}

/* ESSENCE INTERNAL URL COMPACT TOP — 2026-09-29 */
html.essence-native-route .overlay-close{display:none!important;visibility:hidden!important;pointer-events:none!important}
html.essence-native-route .overlay-scroll{padding-top:82px!important}
html.essence-native-route .overlay-inner{padding-top:8px!important}
@media(max-width:767px){
 html.essence-native-route .overlay-scroll{padding:76px 12px calc(92px + env(safe-area-inset-bottom))!important}
 html.essence-native-route .overlay-inner{padding-top:4px!important}
}

/* ESSENCE 2026-09-29 — INTERNAL CATEGORY TOP SPACE FIX
   One authoritative rule: category content starts directly below the compact header. */
html.essence-native-route .overlay,
html.essence-native-route .overlay.active{
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
}
html.essence-native-route .overlay-scroll{
  margin:0 !important;
  padding:76px 12px calc(92px + env(safe-area-inset-bottom)) !important;
}
html.essence-native-route .overlay-inner,
html.essence-native-route #realestate .overlay-inner,
html.essence-native-route #tours .overlay-inner,
html.essence-native-route #longterm .overlay-inner,
html.essence-native-route #rental .overlay-inner,
html.essence-native-route #couples .overlay-inner{
  margin-top:0 !important;
  padding-top:0 !important;
  transform:none !important;
}
@media(min-width:768px){
  html.essence-native-route .overlay-scroll{padding-top:92px !important;}
}

/* Tours category background — user approved 2026-10-05. 65% transparency = 35% pattern visibility. */
#tours #tourCategoriesView .tour-category-grid{
  background-image:
    linear-gradient(rgba(248,246,240,.65), rgba(248,246,240,.65)),
    none;
  background-repeat: repeat;
  background-position: center top;
  background-size: 360px auto;
}
body.dark #tours #tourCategoriesView .tour-category-grid{
  background-image:
    linear-gradient(rgba(18,18,18,.65), rgba(18,18,18,.65)),
    none;
}

/* Long-term card dates + enquiry — 2026-10-05 */
#longterm .longterm-villa-card .ef-dates{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;margin:22px 0 14px!important;width:100%!important;}
#longterm .longterm-villa-card .ef-dates label{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;min-width:0!important;font-size:10px!important;letter-spacing:.12em!important;}
#longterm .longterm-villa-card .ef-dates input[type=date]{display:block!important;width:100%!important;min-width:0!important;height:48px!important;margin-top:8px!important;padding:8px 10px!important;text-align:center!important;border-radius:14px!important;box-sizing:border-box!important;}
#longterm .longterm-villa-card .ef-dates input[type=date]::-webkit-date-and-time-value{text-align:center!important;}
#longterm .lt-enquire-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;margin:4px 0 2px!important;}
#longterm .lt-enquire-btn{height:42px!important;border-radius:999px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0 12px!important;text-decoration:none!important;font-size:9px!important;font-weight:600!important;letter-spacing:.10em!important;border:1px solid rgba(255,255,255,.8)!important;box-shadow:0 6px 18px rgba(0,0,0,.07)!important;}
#longterm .lt-enquire-btn i:first-child{font-size:15px!important;}
#longterm .lt-enquire-btn i:last-child{font-size:10px!important;}
#longterm .lt-enquire-btn.lt-wa{background:rgba(221,245,228,.92)!important;color:#245c37!important;}
#longterm .lt-enquire-btn.lt-mail{background:rgba(220,239,250,.94)!important;color:#285d7a!important;}
body.dark #longterm .lt-enquire-btn.lt-wa{background:rgba(75,128,90,.34)!important;color:#eaffef!important;}
body.dark #longterm .lt-enquire-btn.lt-mail{background:rgba(70,118,145,.36)!important;color:#edf8ff!important;}
@media(max-width:620px){#longterm .longterm-villa-card .ef-dates{gap:14px!important}#longterm .longterm-villa-card .ef-dates input[type=date]{height:46px!important;font-size:12px!important}#longterm .lt-enquire-row{gap:8px!important}#longterm .lt-enquire-btn{height:40px!important;font-size:8px!important;padding:0 8px!important}}

/* LONGTERM-DATES-ENQUIRE-20261005 */
#longterm .longterm-villa-card .ef-dates{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:22px!important;margin:24px 0 14px!important;width:100%!important}
#longterm .longterm-villa-card .ef-dates label{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-width:0!important;font-size:10px!important;letter-spacing:.12em!important}
#longterm .longterm-villa-card .ef-dates input[type=date]{display:block!important;width:100%!important;min-width:0!important;height:48px!important;margin-top:9px!important;padding:8px 10px!important;text-align:center!important;border-radius:14px!important;box-sizing:border-box!important}
#longterm .longterm-villa-card .ef-dates input[type=date]::-webkit-date-and-time-value{text-align:center!important}
#longterm .lt-enquire-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;margin:12px 0 2px!important}
#longterm .lt-enquire-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;height:42px!important;border-radius:999px!important;padding:0 10px!important;font-size:9px!important;font-weight:600!important;letter-spacing:.08em!important;text-decoration:none!important;border:1px solid rgba(0,0,0,.08)!important;background:rgba(255,255,255,.72)!important;box-shadow:0 8px 22px rgba(0,0,0,.05)!important}
#longterm .lt-wa i:first-child{color:#25D366!important;font-size:15px!important}#longterm .lt-mail i:first-child{color:#4da3d9!important;font-size:14px!important}#longterm .lt-enquire-btn i:last-child{font-size:9px!important}
@media(max-width:620px){#longterm .longterm-villa-card .ef-dates{gap:18px!important}#longterm .lt-enquire-row{gap:8px!important}#longterm .lt-enquire-btn{height:40px!important;font-size:8px!important;padding:0 7px!important}}

/* The all-Hot route shows results immediately without search controls. */
body.essence-hot-all #realestate .category-tabs,body.essence-hot-all #realestate .essence-location-picker,body.essence-hot-all #realestate #essenceRealSearch{display:none!important}

/* AUDIT 2026-10-16: readable contrast for the live weather card */.zanzi-live-kicker,.zanzi-live-updated,.zanzi-live-label,.zanzi-live-sub,.zanzi-live-note{opacity:.9!important}
.zanzi-tide-event small,.zanzi-tide-event span{opacity:.9!important}
