/* HAMAKA Contraste — local V1 visual system
   Presentation only: existing application state and business logic stay intact. */

:root{
  --hc-canvas:#f4f1e8;
  --hc-surface:#fefdfb;
  --hc-ink:#101010;
  --hc-ink-soft:#292929;
  --hc-muted:#575757;
  --hc-line:#434649;
  --hc-line-soft:#a8a69f;
  --hc-accent:#434649;
  --hc-accent-soft:#eddecd;
  --hc-on-accent:#fefdfb;
  --hc-radius:18px;
  --hc-radius-small:12px;
  --hc-pill:999px;
  --hc-shadow:0 16px 42px rgba(16,16,16,.055);
  --bg:var(--hc-canvas);
  --panel:var(--hc-surface);
  --text:var(--hc-ink);
  --muted:var(--hc-muted);
  --line:var(--hc-line-soft);
  --soft:#ebe7dd;
  --radius-compact:8px;
  --radius-surface:var(--hc-radius-small);
  --radius-dialog:var(--hc-radius);
}

html{
  background:var(--hc-canvas);
}

body{
  background:var(--hc-canvas);
  color:var(--hc-ink);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

button,
input,
select,
textarea{
  color:inherit;
  font-family:inherit;
}

button,
a,
summary{
  -webkit-tap-highlight-color:transparent;
}

:where(button,input,select,textarea,a,summary):focus-visible{
  outline:3px solid #1e5b4c;
  outline-offset:3px;
}

.title,
.workspacetitle,
.logintitle,
.profilehead h1,
.healthsummarymessage,
.directorymocktitle,
.directorysplitdetail h3,
.discussioninboxhead strong,
.discussiondetailhead h2,
.realestatemarkethead h1,
.realestatehead h1,
.realestateorganizationhead h1,
.realestatereporthead h2,
.realestatemarketproperty strong,
.realestateproperty strong,
.cadastredetail h2,
.appfooter strong{
  font-family:Georgia,"Times New Roman",serif;
  color:var(--hc-ink);
}

/* Authentication */
.loginpage{
  min-height:100dvh;
  padding:24px;
}

.logincard{
  max-width:500px;
  margin:auto;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  padding:40px 44px 36px;
  box-shadow:var(--hc-shadow);
}

.partnerlockup{margin-bottom:28px}
.partnerlogo{max-width:300px}
.logineyebrow{
  color:var(--hc-muted);
  font-size:11px;
  letter-spacing:.16em;
}
.logintitle{
  margin-top:8px;
  color:var(--hc-ink);
  font-size:42px;
  font-weight:700;
}
.loginsubtitle{
  margin-bottom:27px;
  color:var(--hc-muted);
  font-size:14px;
}
.loginform{gap:17px}
.loginfield label{
  margin-bottom:8px;
  color:var(--hc-ink-soft);
  font-size:11px;
  letter-spacing:.12em;
}
.loginfield input{
  height:50px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
  padding:0 15px;
  font-size:15px;
}
.loginfield input:focus{
  border-color:var(--hc-ink);
  box-shadow:0 0 0 3px rgba(16,16,16,.08);
}
.loginforgot{
  color:var(--hc-ink-soft);
  font-size:12px;
  font-weight:700;
}
.loginforgot:hover,
.loginforgot:focus-visible{
  color:var(--hc-ink);
}
.loginbutton{
  min-height:50px;
  border-radius:var(--hc-pill)!important;
}
.loginerror{font-size:13px}
.loginprivacy{
  margin-top:18px;
  color:var(--hc-muted);
  font-size:10px;
}

/* Global shell */
.shell{
  position:relative;
  max-width:none;
  margin:0;
  padding:0 28px 72px;
}

.apputilitybar{
  width:100vw;
  min-height:43px;
  margin:0 0 0 calc(50% - 50vw);
  padding:7px 28px;
  border:0;
  border-bottom:1px solid rgba(67,70,73,.42);
  background:var(--hc-canvas);
  color:var(--hc-ink);
}
.apputilityrate{color:var(--hc-muted);font-size:11px}
.apputilitylabel{font-size:10px;letter-spacing:.12em}
.apputilityvalue{color:var(--hc-ink);font-size:12px}
.apputilitymeta{color:var(--hc-muted);font-size:10px}
.apputilityswap{
  width:30px;
  height:28px;
  border:1px solid var(--hc-line);
  border-radius:var(--hc-pill);
  color:var(--hc-ink);
}
.apputilityswap:hover:not(:disabled){background:var(--hc-ink);color:#fff}
.apputilityactions{gap:10px}
.apputilityavatar{
  width:34px;
  height:34px;
  border:1px solid var(--hc-ink);
  background:var(--hc-ink);
  color:var(--hc-on-accent);
  font-size:13px;
}
.apputilitysession,
.apputilitylink{
  color:var(--hc-ink-soft);
  font-size:11px;
  letter-spacing:.07em;
}
.apputilityhealthstatus{color:var(--hc-muted);font-size:9px}
.apputilityseparator{color:var(--hc-line-soft)}
.apputilitylink:hover,
.apputilitylink.active{border-bottom-color:var(--hc-ink);color:var(--hc-ink)}

.appmasthead{
  width:100vw;
  min-height:66px;
  margin:0 0 38px calc(50% - 50vw);
  padding:0 28px;
  border-bottom:1.5px solid var(--hc-line);
  grid-template-columns:minmax(250px,auto) minmax(0,1fr);
  background:var(--hc-canvas);
  gap:36px;
}
.appidentity{gap:14px}
.appidentity img{width:126px}
.appidentityname{
  padding-left:14px;
  border-left:1px solid var(--hc-line);
  color:var(--hc-ink);
  font-family:inherit;
  font-size:12px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.appnav{gap:30px}
.appnavbutton{
  padding:22px 0 19px;
  color:var(--hc-ink-soft);
  font-size:13px;
  font-weight:400;
  letter-spacing:0;
  text-transform:uppercase;
}
.appnavbutton::after{bottom:13px;height:2px}
.appnavbutton:hover,.appnavbutton.active{color:var(--hc-ink)}
.appnavsubmenu{
  min-width:250px;
  padding:9px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
  box-shadow:var(--hc-shadow);
}
.appnavsubbutton{
  min-height:45px;
  border-radius:8px;
  color:var(--hc-ink-soft);
  font-size:12px;
  font-weight:400;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.appnavsubbutton:hover,.appnavsubbutton.active{background:var(--hc-accent-soft);color:var(--hc-ink)}
.appnavbutton.active,
.appnavmenu.active > .appnavsummary,
.appnavsubbutton.active{font-weight:700}

.shell > main{
  width:100%;
  max-width:1224px;
  margin:0 auto;
}

.workspaceeyebrow,
.logineyebrow,
.searchbox > label,
.discussioninboxeyebrow,
.realestateeyebrow,
.realestatemarketeyebrow{
  color:var(--hc-ink-soft);
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.workspacetitle,
.profilehead h1,
.realestatemarkethead h1,
.realestatehead h1,
.realestateorganizationhead h1{
  font-size:52px;
  font-weight:700;
  line-height:1.02;
  letter-spacing:-.02em;
}
.workspacesubtitle,
.directorypagehead .workspacesubtitle,
.realestatemarkethead p,
.realestatehead p,
.realestateorganizationhead p{
  color:var(--hc-ink-soft);
  font-size:15px;
  line-height:1.55;
}

/* Shared controls and surfaces */
.primary,
.secondary,
.resetsearch,
.refreshresults,
.resulttoolbarbutton,
.directoryfilter,
.directoryfavoritesbutton,
.discussionnewbutton,
.discussionaction,
.discussioncomposersend,
.realestatemarketrefresh,
.realestatecadastrelink,
.realestatemarketclear,
.cadastresearchbutton,
.cadastrereportaction,
.cadastredetailreportaction,
#realEstateApply{
  min-height:46px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-pill);
  background:transparent;
  color:var(--hc-ink);
  padding:0 18px;
  font-size:12px;
  font-weight:750;
  letter-spacing:.03em;
  text-transform:none;
}
.primary,
.discussionnewbutton,
.discussionaction.primaryaction,
.discussioncomposersend,
.cadastresearchbutton,
.cadastrereportaction.primary,
.cadastredetailreportaction,
#realEstateApply{
  border-color:var(--hc-accent);
  background:var(--hc-accent);
  color:var(--hc-on-accent);
}
.primary:hover:not(:disabled),
.discussionnewbutton:hover:not(:disabled),
.discussionaction.primaryaction:hover:not(:disabled),
.discussioncomposersend:hover:not(:disabled),
.cadastresearchbutton:hover:not(:disabled),
#realEstateApply:hover:not(:disabled){
  border-color:var(--hc-ink);
  background:var(--hc-ink);
  transform:translateY(-1px);
}
.secondary:hover:not(:disabled),
.resetsearch:hover:not(:disabled),
.refreshresults:hover:not(:disabled),
.resulttoolbarbutton:hover:not(:disabled),
.directoryfilter:hover:not(:disabled),
.directoryfavoritesbutton:hover:not(:disabled){
  border-color:var(--hc-ink);
  background:var(--hc-accent-soft);
  color:var(--hc-ink);
}
.directoryfilter.selected,
.discussiontab.active{
  border-color:var(--hc-ink);
  background:var(--hc-accent-soft);
  color:var(--hc-ink);
}

input,
select,
textarea,
.directorysearch,
.discussionrenameform input,
.realestatemarketfilter input,
.realestatemarketfilter select,
.realestatecontrols input,
.realestatecontrols select{
  border-color:var(--hc-line-soft);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
  color:var(--hc-ink);
}

/* Rental search */
#rentalSearchView{max-width:1224px;margin:0 auto}
.ask-header{
  max-width:880px;
  margin:0 0 28px;
  padding:0;
  text-align:left;
}
.ask-header::before{
  display:block;
  margin-bottom:8px;
  color:var(--hc-ink-soft);
  content:"RECHERCHE DE VILLAS";
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
}
.ask-header .title{
  margin:0;
  color:var(--hc-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:52px;
  font-weight:700;
  line-height:1.03;
  letter-spacing:-.02em;
}
.ask-header .subtitle{
  max-width:760px;
  margin-top:9px;
  color:var(--hc-ink-soft);
  font-size:15px;
}
.searchbox{
  min-height:330px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  padding:28px 28px 22px;
  box-shadow:none;
}
.searchbox > label{display:block;margin-bottom:12px}
.searchbox textarea{
  min-height:205px;
  border:0;
  border-radius:0;
  background:transparent;
  padding:0;
  color:var(--hc-ink-soft);
  font-size:17px;
  line-height:1.6;
}
.searchbox textarea:focus{box-shadow:none}
.searchfooter{
  margin-top:14px;
  padding-top:15px;
  border-top:1px solid var(--hc-line-soft);
}
.chat{
  margin-top:22px;
  overflow:hidden;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
}
.messages{padding:22px;gap:14px}
.message{
  max-width:min(760px,82%);
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
  padding:14px 16px;
  color:var(--hc-ink);
  font-size:14px;
}
.message.user{background:var(--hc-ink);color:#fff}
.message.gustav{border-color:var(--hc-line);background:var(--hc-surface)}
.chatcomposer{
  border-top:1px solid var(--hc-line-soft);
  padding:12px;
  background:var(--hc-canvas);
}
.chatcomposer input{min-height:48px;border:1.5px solid var(--hc-line);font-size:14px}
.status{color:var(--hc-muted);font-size:13px}
.briefbar{
  margin-top:20px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  padding:15px 18px;
}
.chip{
  border-radius:var(--hc-pill);
  background:var(--hc-accent-soft);
  color:var(--hc-ink);
  font-size:12px;
}
.resultshead{margin-top:42px}
.resultshead h2{font-family:Georgia,"Times New Roman",serif;font-size:38px;font-weight:700}
.resultmeta{color:var(--hc-muted);font-size:13px}
.resultsnapshottools{gap:10px}
.resultsortoptions{
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
  box-shadow:var(--hc-shadow);
}
.resultsortoption{min-height:44px;font-size:12px}
.resultlegend{
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  padding:15px 18px;
}
.legendtitle,.legenditem{font-size:11px}
.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{
  overflow:hidden;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  box-shadow:none;
}
.card.selectable:hover{transform:translateY(-2px);box-shadow:var(--hc-shadow)}
.card.selected{border:2px solid var(--hc-ink)}
.cardbody{padding:20px}
.card h3{font-family:Georgia,"Times New Roman",serif;font-size:28px;font-weight:700}
.selection{
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  padding:24px;
}
.selectionhead h2{font-family:Georgia,"Times New Roman",serif;font-size:30px}
.selectionsharepanel{border-radius:var(--hc-radius-small)}

/* Villa Collection */
.directorypage{max-width:1224px}
.directorypagehead{margin-bottom:22px}
.directorypagehead .workspacetitle{margin:7px 0 6px;font-size:52px}
.directorypageheadline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.directorypageheadactions{
  display:flex;
  flex:0 0 auto;
  align-items:flex-end;
  justify-content:flex-end;
  gap:12px;
}
.directoryavailabilityquickwrap{
  position:relative;
  z-index:20;
}
.directoryavailabilityquick{
  display:grid;
  grid-template-columns:minmax(142px,1fr) minmax(142px,1fr) auto;
  align-items:end;
  gap:8px;
}
.directoryavailabilityquickfield{
  display:grid;
  min-width:140px;
  gap:6px;
}
.directoryavailabilityquickfield > span{
  color:var(--hc-muted);
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
.directoryavailabilityquick .directoryavailabilitydateinput{
  min-height:48px;
  border:1.5px solid var(--hc-line);
  border-radius:4px;
  background:var(--hc-surface);
  padding:9px 12px;
  font:600 12px/1.2 Georgia,"Times New Roman",serif;
}
.directoryavailabilityquick .directoryavailabilitydateinput:hover{
  border-color:var(--hc-ink);
}
.directoryavailabilityquickcheck{
  min-width:92px;
  min-height:48px;
  border:1.5px solid var(--hc-ink);
  border-radius:4px;
  background:var(--hc-ink);
  padding:0 17px;
  color:#fff;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.directoryavailabilityquickcheck:hover{background:#292824}
.directoryavailabilityquickcheck:focus-visible{
  outline:3px solid #1e5b4c;
  outline-offset:-4px;
}
.directoryavailabilityquickcheck:disabled{
  cursor:wait;
  opacity:.62;
}
.directoryavailabilitycalendar{
  border-radius:4px;
}
.directoryavailabilitycalendarquick{
  position:absolute;
  z-index:90;
  top:calc(100% + 9px);
  right:0;
  width:min(680px,calc(100vw - 32px));
  border:1.5px solid var(--hc-line);
  background:var(--hc-surface);
  box-shadow:0 18px 42px rgba(28,26,23,.16);
}
.directoryavailabilitycalendarquick[hidden]{display:none!important}
.directoryavailabilitycalendarnav{
  border-radius:4px;
}
.directoryfavoritesbutton.directoryfavoritesbuttonhead{
  display:inline-flex;
  width:auto;
  min-height:48px;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1.5px solid var(--hc-line);
  border-radius:999px;
  background:#eee4d7;
  padding:0 10px 0 16px;
  color:var(--hc-ink);
  font-size:12px;
  letter-spacing:.02em;
  text-transform:none;
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,transform .16s ease;
}
.directoryfavoritesbutton.directoryfavoritesbuttonhead:hover{
  border-color:var(--hc-ink);
  background:#e6d6c3;
  transform:translateY(-1px);
}
.directoryfavoritesbutton.directoryfavoritesbuttonhead:focus-visible{
  outline:3px solid #1e5b4c;
  outline-offset:3px;
}
.directoryfavoritesbuttonicon{
  font-size:15px;
  line-height:1;
}
.directoryfavoritesbuttoncount{
  display:inline-grid;
  min-width:28px;
  height:28px;
  place-items:center;
  border-radius:50%;
  background:#fff;
  font-size:11px;
  line-height:1;
}
.directoryavailabilityfilterbar{
  display:flex;
  align-items:center;
  gap:14px;
  border-top:1px solid var(--hc-line-soft);
  border-bottom:1px solid var(--hc-line);
  background:#f6f1e9;
  padding:11px 16px;
}
.directoryavailabilityfilterbar[hidden]{display:none!important}
.directoryavailabilityfilters{
  display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:7px;
}
.directoryavailabilityfilter{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  gap:7px;
  border:1px solid var(--hc-line);
  border-radius:999px;
  background:transparent;
  padding:0 11px;
  color:var(--hc-ink);
  font-size:10px;
  font-weight:700;
  cursor:pointer;
}
.directoryavailabilityfilter span:last-child{
  display:inline-grid;
  min-width:20px;
  height:20px;
  place-items:center;
  border-radius:50%;
  background:rgba(0,0,0,.07);
  font-size:9px;
}
.directoryavailabilityfilter.selected{
  border-color:var(--hc-ink);
  background:var(--hc-ink);
  color:#fff;
}
.directoryavailabilityfilter.selected span:last-child{
  background:#fff;
  color:var(--hc-ink);
}
.directoryavailabilityfilter:disabled{
  cursor:default;
  opacity:.5;
}
.directoryavailabilitywindowstatus{
  display:grid;
  min-width:0;
  flex:1 1 auto;
  gap:2px;
  color:var(--hc-muted);
  font-size:10px;
  line-height:1.35;
}
.directoryavailabilitywindowstatus strong{
  color:var(--hc-ink);
  font-size:11px;
}
.directoryavailabilitywindowstatus.error{color:#8a2f25}
.directoryavailabilityreset{
  flex:0 0 auto;
  border:0;
  border-bottom:1px solid currentColor;
  background:transparent;
  padding:2px 0;
  color:var(--hc-muted);
  font-size:10px;
  cursor:pointer;
}
.directorysubnav{margin:0 0 18px;border-bottom-color:var(--hc-line)}
.directorysubnavbutton{font-size:12px;text-transform:none;letter-spacing:0}
.directorymock{
  overflow:hidden;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
}
.directorymockhead{
  min-height:74px;
  border-bottom:1px solid var(--hc-line);
  padding:18px 22px;
}
.directorymocktitle{font-size:28px;font-weight:700}
.directorymockmeta,.directorymockcount{color:var(--hc-muted);font-size:12px}
.directoryfavoritesbutton{min-height:46px;font-size:12px}
.directoryfavoriteheart{
  display:inline-flex;
  width:46px;
  min-height:46px;
  align-items:center;
  justify-content:center;
  border:1.5px solid var(--hc-line);
  border-radius:50%;
  background:transparent;
  color:var(--hc-ink);
  font-size:18px;
  line-height:1;
}
.directoryfavoriteheart.active{background:var(--hc-ink);color:#fff}
.directorysplititemrow{grid-template-columns:minmax(0,1fr) 46px}
.directoryfavoriteheart.directoryfavoriteheartcompact{
  position:relative;
  isolation:isolate;
  width:42px;
  min-height:42px;
  border:0;
  background:transparent;
  font-size:18px;
}
.directoryfavoriteheart.directoryfavoriteheartcompact::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:50%;
  left:50%;
  width:34px;
  height:34px;
  transform:translate(-50%,-50%);
  border:1.5px solid var(--hc-line);
  border-radius:50%;
  background:var(--hc-surface);
}
.directoryfavoriteheart.directoryfavoriteheartcompact.active{
  background:transparent;
  color:#fff;
}
.directoryfavoriteheart.directoryfavoriteheartcompact.active::before{
  border-color:var(--hc-ink);
  background:var(--hc-ink);
}
.directorytoolbar{
  border-bottom:1px solid var(--hc-line);
  padding:14px 16px;
  gap:10px;
}
.directorysearch{
  min-height:46px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-pill);
  padding:0 16px;
  font-size:14px;
}
.directorytoolbar .directorysearch:focus,
.directorytoolbar .directorysearch:focus-visible{
  border:2px solid var(--hc-ink);
  outline:0;
  box-shadow:none;
}
.directorysplit{grid-template-columns:390px minmax(0,1fr);min-height:660px}
.directorysplitlist{border-right:1px solid var(--hc-line);background:var(--hc-canvas)}
.directorysplititemrow{border-bottom:1px solid var(--hc-line);background:transparent}
.directorysplititemrow.active,.directorysplititemrow.active .directorysplititem{background:var(--hc-surface)}
.directorysplititem{
  min-height:78px;
  border-bottom:1px solid var(--hc-line);
  background:transparent;
  padding:15px 18px;
}
.directorysplititem.active{box-shadow:inset 3px 0 0 var(--hc-ink);background:var(--hc-surface)}
.directorysplititem strong{font-size:19px;font-weight:700}
.directorysplititem small{color:var(--hc-muted);font-size:12px}
.directorysplititemstatuses{
  display:flex;
  flex:0 0 auto;
  align-items:flex-end;
  flex-direction:column;
  gap:6px;
}
.directoryavailabilitybadge{
  display:inline-flex;
  min-height:22px;
  align-items:center;
  border:1px solid #b9b3a8;
  border-radius:999px;
  background:#f1eee8;
  padding:0 8px;
  color:#5f5a52;
  font-size:9px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.directoryavailabilitybadge.available{
  border-color:#b8d7c8;
  background:#edf7f1;
  color:#276a50;
}
.directoryavailabilitybadge.unavailable{
  border-color:#d9b8b2;
  background:#faefec;
  color:#8a2f25;
}
.directoryavailabilitybadge.to_verify{
  border-color:#ddc99d;
  background:#faf1dd;
  color:#7a5a16;
}
.directorysplitdetail{padding:22px}
.directorysplitdetailhead{border-bottom:1px solid var(--hc-line)}
.directorysplitdetail h3{font-size:32px;font-weight:700}
.directoryfeaturedimage{border-radius:var(--hc-radius);background:#ddd7cc}
.directorygalleryarrow{width:44px;height:44px;border-radius:50%}
.directorygallerycounter{font-size:11px}
.directorydetailtabs{border-bottom:1px solid var(--hc-line);gap:24px}
.directorydetailtab{font-size:12px;letter-spacing:0;text-transform:none}
.directorydetailgrid > div,
.directorylocationgrid > div,
.directorycardexgrid > div{
  border-color:var(--hc-line-soft);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
}
.directoryavailabilitychecker,
.directoryavailabilitynotice,
.directoryfavoritespanel{
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
}
.directorypublication{display:grid;gap:20px}
.directorypublicationnotice{
  display:grid;
  grid-template-columns:minmax(210px,.8fr) minmax(0,1.6fr);
  gap:22px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius-small);
  background:#eee4d7;
  padding:18px 20px;
}
.directorypublicationnotice div{display:grid;align-content:start;gap:5px}
.directorypublicationnotice span,
.directorypublicationsectiontitle{
  color:var(--hc-muted);
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.directorypublicationnotice strong{font-size:15px}
.directorypublicationnotice p{margin:0;color:var(--hc-muted);line-height:1.55}
.directorypublicationhead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.directorypublicationstatus,
.directorypublicationreadiness{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  border:1px solid var(--hc-line);
  border-radius:999px;
  padding:0 12px;
  font-size:11px;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.directorypublicationstatus.reviewed,
.directorypublicationstatus.published,
.directorypublicationreadiness.ready{
  border-color:#1e5b4c;
  background:#e2ede8;
  color:#174a3e;
}
.directorypublicationstatus.to_review{background:#f4ead1}
.directorypublicationstatus.withdrawn{background:#eadfdb;color:#6f332d}
.directorypublicationreadiness{background:#eeeae1;color:var(--hc-muted)}
.directorypublicationfacts .directorydetailfield strong{overflow-wrap:anywhere}
.directorypublicationchecks{
  border-left:3px solid #8d4b3f;
  background:#f5ece8;
  padding:16px 18px;
}
.directorypublicationchecks > strong{font-size:13px}
.directorypublicationchecks ul{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}
.directorypublicationchecks li{color:#68423c;font-size:12px;line-height:1.45}
.directorypublicationchecks li span{
  display:inline-block;
  margin-right:8px;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:10px;
  font-weight:700;
}
.directorypublicationsectiontitle{margin:0 0 9px}
.directorypublicationpreview{
  display:grid;
  overflow:hidden;
  grid-template-columns:minmax(220px,.92fr) minmax(0,1.08fr);
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:#f4f1e8;
}
.directorypublicationpreviewmedia{min-height:350px;background:#ddd7cc}
.directorypublicationpreviewmedia img{width:100%;height:100%;object-fit:cover}
.directorypublicationpreviewempty{
  display:grid;
  height:100%;
  min-height:350px;
  place-items:center;
  padding:20px;
  color:var(--hc-muted);
  text-align:center;
}
.directorypublicationpreviewcontent{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  flex-direction:column;
  padding:32px;
}
.directorypublicationpreviewcontent > span{
  color:var(--hc-muted);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.directorypublicationpreviewcontent h4{
  margin:8px 0 12px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:34px;
  line-height:1.05;
}
.directorypublicationpreviewcontent p{margin:0;color:var(--hc-muted);line-height:1.6}
.directorypublicationpreviewfacts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px;font-size:12px}
.directorypublicationpreviewcontent ul{display:grid;gap:6px;margin:18px 0 0;padding-left:18px;font-size:12px}
.directorypublicationpreviewcontent button{
  min-height:44px;
  margin-top:22px;
  border:0;
  border-radius:999px;
  background:var(--hc-ink);
  padding:0 20px;
  color:#fff;
  opacity:1;
}
.directorypublicationcontrols{margin:0}
.directorypublicationcontrols small,
.directorypublicationlocale small{color:var(--hc-muted);font-size:11px;line-height:1.45}
.directorypublicationlocales{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.directorypublicationlocale{
  min-width:0;
  margin:0;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  padding:18px;
}
.directorypublicationlocale legend{
  padding:0 8px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:20px;
  font-weight:700;
}
.directorypublicationlocale .directoryformgrid{grid-template-columns:1fr;margin:0}
.directorypublicationdescription{min-height:180px!important}
.directorypublicationtabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  border-bottom:1px solid var(--hc-line);
  padding-bottom:10px;
}
.directorypublicationtab{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  gap:9px;
  border:1px solid var(--hc-line);
  border-radius:999px;
  background:var(--hc-surface);
  padding:0 16px;
  color:var(--hc-muted);
  white-space:nowrap;
}
.directorypublicationtab span{
  display:inline-grid;
  min-width:24px;
  min-height:24px;
  place-items:center;
  border-radius:999px;
  background:#e8e2d8;
  font-size:10px;
  font-weight:700;
}
.directorypublicationtab.active{
  border-color:var(--hc-ink);
  background:var(--hc-ink);
  color:#fff;
}
.directorypublicationtab.active span{background:rgba(255,255,255,.18)}
.directorypublicationimport{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr)) auto;
  gap:12px;
  align-items:center;
  border:1px solid var(--hc-line-soft);
  border-radius:var(--hc-radius-small);
  background:#f7f4ed;
  padding:14px 16px;
}
.directorypublicationimport div{display:grid;gap:4px;min-width:0}
.directorypublicationimport span{
  color:var(--hc-muted);
  font-size:9px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.directorypublicationimport strong{font-size:11px;overflow-wrap:anywhere}
.directorypublicationimport a{color:var(--hc-ink);font-size:11px;font-weight:700}
.directorypublicationsectionsreadonly{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.directorypublicationsectionsreadonly article{
  border:1px solid var(--hc-line-soft);
  border-radius:var(--hc-radius-small);
  background:var(--hc-surface);
  padding:15px;
}
.directorypublicationsectionsreadonly strong{font-size:13px}
.directorypublicationsectionsreadonly p{margin:7px 0 0;color:var(--hc-muted);font-size:12px;line-height:1.55;white-space:pre-line}
.directorypublicationempty{margin:0;color:var(--hc-muted);font-size:13px}
.directorypublicationfieldhead,.directoryweeklyrateshead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.directorypublicationadd{
  min-height:34px;
  border:1px solid var(--hc-line);
  border-radius:999px;
  background:var(--hc-surface);
  padding:0 12px;
  color:var(--hc-ink);
  font-size:10px;
  font-weight:700;
}
.directorypublicationsectioneditor{display:grid;gap:10px;margin-top:9px}
.directorypublicationsectionrow{
  position:relative;
  display:grid;
  gap:7px;
  border:1px solid var(--hc-line-soft);
  border-radius:var(--hc-radius-small);
  padding:12px 44px 12px 12px;
}
.directorypublicationsectionrow textarea{min-height:88px!important}
.directorypublicationsectionrow > button{
  position:absolute;
  top:10px;
  right:10px;
  width:28px;
  height:28px;
  border:1px solid var(--hc-line);
  border-radius:50%;
  background:var(--hc-surface);
  color:var(--hc-muted);
  font-size:18px;
}
.directoryweeklyrateshead > div{display:grid;gap:5px}
.directoryweeklyrateshead > div > strong{font-size:18px}
.directoryweeklyrateshead > span,.directorypublicationisolation{color:var(--hc-muted);font-size:11px}
.directorypublicationisolation{margin:-8px 0 0;line-height:1.55}
.directoryratesavailability{display:grid;gap:26px}
.directoryweeklyratescompact{
  display:grid;
  gap:14px;
  border-top:1px solid var(--hc-line);
  padding-top:22px;
}
.directoryweeklyratescompact .directoryweeklyrateshead > span{
  max-width:460px;
  line-height:1.45;
  text-align:right;
}
.directoryratesourcedetails{
  border:1px solid var(--hc-line-soft);
  border-radius:var(--hc-radius-small);
  background:#f7f4ed;
  color:var(--hc-muted);
  font-size:11px;
}
.directoryratesourcedetails summary{
  cursor:pointer;
  padding:12px 14px;
  color:var(--hc-ink);
  font-weight:700;
}
.directoryratesourcedetails > p{
  margin:0;
  padding:0 14px 12px;
  line-height:1.5;
}
.directoryratesourcedetails .directorypublicationimport{
  margin:0 12px 12px;
  background:var(--hc-surface);
}
.directoryweeklyratetablewrap{overflow-x:auto;border:1px solid var(--hc-line);border-radius:var(--hc-radius-small)}
.directoryweeklyratetable{width:100%;border-collapse:collapse;min-width:760px}
.directoryweeklyratetable th,.directoryweeklyratetable td{border-bottom:1px solid var(--hc-line-soft);padding:12px;text-align:left;font-size:11px;vertical-align:top}
.directoryweeklyratetable th{background:#f3efe7;color:var(--hc-muted);font-size:9px;letter-spacing:.06em;text-transform:uppercase}
.directoryweeklyratetable tr:last-child td{border-bottom:0}
.directoryweeklyratestatus{display:inline-flex;border-radius:999px;background:#f4ead1;padding:5px 8px;font-size:9px;font-weight:700;text-transform:uppercase}
.directoryweeklyratestatus.approved_for_hamaka_com{background:#e2ede8;color:#174a3e}
.directoryweeklyratestatus.archived{background:#eeeae1;color:var(--hc-muted)}
.directoryweeklyrateeditors{display:grid;gap:12px}
.directoryweeklyrateeditor{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius-small);
  background:#faf8f3;
  padding:16px;
}
.directoryweeklyrateeditor .wide{grid-column:span 2}
.directorypublicationremove{
  justify-self:start;
  min-height:34px;
  border:1px solid #b98e85;
  border-radius:999px;
  background:#f5ece8;
  padding:0 12px;
  color:#68423c;
  font-size:10px;
  font-weight:700;
}

/* Discussions */
.discussionspage{max-width:1224px}
.discussionsworkspace{
  overflow:hidden;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
  box-shadow:none;
}
.discussioninboxhead{min-height:78px;border-bottom:1px solid var(--hc-line);padding:16px 18px}
.discussioninboxhead strong{font-size:26px;font-weight:700}
#discussionSummary{color:var(--hc-muted);font-size:12px}
.discussiontabs{border:0;background:transparent;padding:0;gap:7px}
.discussiontab{min-height:40px;border:1.5px solid transparent;padding:0 13px;font-size:11px;text-transform:none;letter-spacing:0}
.discussiontab.active{border-color:var(--hc-line);background:var(--hc-accent-soft)}
.discussionsystempanel{
  display:grid;
  width:min(100%,1060px);
  grid-template-columns:minmax(160px,.62fr) minmax(0,3fr);
  margin:64px auto 0;
  border-top:1px solid var(--hc-line);
  border-bottom:1px solid var(--hc-line);
  border-radius:0;
  background:transparent;
  padding:18px 0;
}
.discussionsystemhead{border:0;background:transparent;padding:0 24px 0 0}
.discussioncapabilities{background:transparent}
.discussioncapability{
  min-height:68px;
  align-items:flex-start;
  justify-content:center;
  flex-direction:column;
  gap:7px;
  border-right:0;
  border-left:1px solid var(--hc-line);
  padding:0 24px;
}
.discussionsystempanel .discussioncapabilitystate{
  border:0;
  border-radius:0;
  background:transparent;
  padding:0;
}
.discussionsystempanel .discussioncapability.planned .discussioncapabilitystate{
  border:0;
  background:transparent;
}
.discussioncapabilitytext strong{font-size:11px}
.discussioncapabilitytext span{font-size:10px}
@media(max-width:720px){
  .discussionsystempanel{grid-template-columns:1fr;margin-top:40px;padding:16px 0 0}
  .discussionsystemhead{padding:0 16px 14px}
  .discussioncapability{border-top:1px solid var(--hc-line);border-left:0;border-bottom:0;padding:12px 16px}
}
.discussionlayout{grid-template-columns:390px minmax(0,1fr);height:clamp(650px,72vh,820px)}
.discussionrail{border-right:1px solid var(--hc-line);background:var(--hc-canvas)}
.discussionrailhead{border-bottom:1px solid var(--hc-line)}
.discussionlist,.discussionitem{background:var(--hc-canvas)}
.discussionitem{border-bottom:1px solid var(--hc-line);padding:18px 20px}
.discussionitem.active{box-shadow:inset 3px 0 0 var(--hc-ink);background:var(--hc-surface)}
.discussionitem strong{font-size:19px;font-weight:700}
.discussionitem p{font-size:12px}
.discussionitemmeta{font-size:10px}
.discussiondetailhead{border-bottom:1px solid var(--hc-line);padding:20px 23px}
.discussiondetailhead h2{font-size:30px;font-weight:700}
.discussiondetailsummary{font-size:13px}
.discussionaction{font-size:11px}
.discussionaction.stayaction{
  border-color:#216b45;
  background:#216b45;
  color:#fff;
}
.discussionaction.stayaction:hover:not(:disabled){
  border-color:#174c32;
  background:#174c32;
}
.discussionmessages{background:var(--hc-surface);padding:25px}
.discussionmessage{border:1.5px solid var(--hc-line);border-radius:var(--hc-radius-small);box-shadow:none}
.discussionmessage p{font-size:14px}
.discussionmessage.team{border-color:var(--hc-ink);background:var(--hc-ink)}
.discussionmessage.client{border-color:var(--hc-line);background:var(--hc-surface)}
.discussioncomposer{border-top:1px solid var(--hc-line);background:var(--hc-canvas)}
.discussioncomposerrow{border:1.5px solid var(--hc-line);border-radius:var(--hc-pill);background:var(--hc-surface)}
.discussioncomposer textarea{font-size:14px}
.discussioncomposersend{border-radius:var(--hc-pill)}

.staypage,.yachtpage{max-width:1224px}
.staycomingsoon,.yachtcomingsoon{
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
}
.staycomingsoonbadge{
  border-color:#a9cbb8;
  background:#edf6f0;
  color:#216b45;
}
.yachtcomingsoonbadge{
  border-color:#c8b9a8;
  background:#f4eee6;
  color:#63503c;
}

/* Real Estate, public acts and Cadastre */
.realestatemarketpage,
.realestatepage,
.realestateorganizationpage,
.cadastrepage{max-width:1224px;margin:0 auto}
.realestatemarkethead,
.realestatehead,
.realestateorganizationhead{margin-bottom:24px}
.realestatemarketsignals,
.realestatemarketworkspace,
.realestatesummary,
.realestatereport,
.realestateworkspace,
.realestateorganizationnotice,
.realestateorganizationcard,
.realestateorganizationpolicy,
.cadastreworkspace,
.cadastrecontroldeck{
  border-color:var(--hc-line)!important;
  border-width:1.5px!important;
  border-radius:var(--hc-radius)!important;
  background:var(--hc-surface)!important;
  box-shadow:none!important;
  overflow:hidden;
}
.realestatemarketsignalgrid button,
.realestatemetric,
.realestatereportcard,
.realestateorganizationcard{
  border-color:var(--hc-line)!important;
}
.realestatemarketsignalgrid strong,
.realestatemetric strong,
.realestatereportcard strong{
  color:var(--hc-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:30px;
  font-weight:700;
}
.realestatemarketfilters,
.realestatecontrols,
.cadastremaplegend,
.realestatemarketlisthead,
.realestatelisthead{
  border-color:var(--hc-line)!important;
  background:var(--hc-canvas)!important;
}
.realestatemarkettable th,
.realestatemarkettable td,
.realestatetable th,
.realestatetable td{
  border-color:var(--hc-line)!important;
  color:var(--hc-ink-soft);
}
.realestatemarkettable th,
.realestatetable th{
  background:var(--hc-canvas);
  color:var(--hc-ink);
  font-size:11px;
}
.realestatemarketproperty strong,
.realestateproperty strong{font-size:20px;font-weight:700}
.realestatemarketdetail,
.realestatedetail,
.cadastredetail{
  border-color:var(--hc-line)!important;
  background:var(--hc-surface)!important;
}
.cadastrebody{border-top:1px solid var(--hc-line)}
.cadastremapcolumn{border-right:1px solid var(--hc-line)}
.cadastremapwrap{border-color:var(--hc-line);border-radius:var(--hc-radius-small);overflow:hidden}
.cadastremaplegend{border-radius:var(--hc-radius-small)}

/* Profile, health and footer */
.profilepage,.healthpage{max-width:1080px;margin:0 auto}
.profilepanel,.healthpanel{
  overflow:hidden;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-radius);
  background:var(--hc-surface);
}
.profilepanelhead,.healthsummary,.healthcheck{border-color:var(--hc-line)}
.healthsummarymessage{font-size:29px;font-weight:700}
.appfooter{
  max-width:1224px;
  margin:64px auto 0;
  border-top:1px solid var(--hc-line);
  color:var(--hc-muted);
  font-size:11px;
}

@media(max-width:1100px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .appnav{gap:20px}
  .appnavbutton{font-size:12px}
  .directorysplit,.discussionlayout{grid-template-columns:340px minmax(0,1fr)}
}

@media(max-width:850px){
  .shell{padding-right:18px;padding-left:18px}
  .apputilitybar{margin-left:calc(50% - 50vw);padding:9px 18px}
  .apputilityactions{flex-wrap:wrap}
  .appmasthead{
    min-height:auto;
    margin-bottom:28px;
    padding:14px 18px 0;
    grid-template-columns:1fr;
    gap:9px;
  }
  .appidentity{justify-content:center}
  .appnav{width:100%;justify-content:flex-start;overflow-x:auto;gap:24px}
  .appnavbutton{padding:12px 0 17px}
  .appnavbutton::after{bottom:8px}
  .workspacetitle,
  .directorypagehead .workspacetitle,
  .ask-header .title,
  .realestatemarkethead h1,
  .realestatehead h1,
  .realestateorganizationhead h1{font-size:44px}
  .directorysplit,.discussionlayout{grid-template-columns:1fr;height:auto;min-height:0}
  .directorysplitlist,.discussionrail{max-height:390px;border-right:0;border-bottom:1px solid var(--hc-line)}
  .discussiondetail{min-height:610px}
}

@media(max-width:680px){
  body{font-size:14px}
  .shell{padding-right:12px;padding-left:12px}
  .apputilitybar{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
    padding:10px 12px;
  }
  .apputilityrate{width:100%;justify-content:space-between}
  .apputilityactions{width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:3px}
  .apputilityseparator{display:none}
  .appmasthead{padding-right:12px;padding-left:12px}
  .appidentity img{width:112px}
  .appidentityname{font-size:11px}
  .appnav{gap:20px}
  .appnavbutton{font-size:12px}
  .ask-header .title,
  .workspacetitle,
  .directorypagehead .workspacetitle,
  .profilehead h1,
  .realestatemarkethead h1,
  .realestatehead h1,
  .realestateorganizationhead h1{font-size:38px}
  .ask-header .subtitle,.workspacesubtitle{font-size:14px}
  .searchbox{min-height:300px;padding:22px 18px 18px}
  .searchbox textarea{min-height:180px;font-size:16px}
  .searchfooter{align-items:stretch;flex-direction:column-reverse}
  .searchfooter button{width:100%}
  .grid{grid-template-columns:1fr}
  .resultshead{align-items:flex-start;flex-direction:column;gap:15px}
  .resultsnapshottools{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .selection{padding:18px}
  .directorypagehead,.realestatemarkethead,.realestatehead,.realestateorganizationhead{align-items:flex-start;flex-direction:column}
  .directorypageheadline{width:100%;align-items:flex-start;flex-direction:column;gap:17px}
  .directorypageheadactions{width:100%;align-items:stretch;flex-direction:column}
  .directoryavailabilityquickwrap{width:100%}
  .directoryavailabilityquick{
    width:100%;
    min-height:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;
  }
  .directoryavailabilityquickfield{
    min-width:0;
    min-height:0;
  }
  .directoryavailabilityquickcheck{
    grid-column:1/-1;
    min-height:48px;
    border-radius:4px;
  }
  .directoryavailabilitycalendarquick{
    position:static;
    width:100%;
    margin-top:8px;
  }
  .directoryfavoritesbutton.directoryfavoritesbuttonhead{width:100%;min-height:50px}
  .directoryavailabilityfilterbar{align-items:stretch;flex-direction:column}
  .directoryavailabilityfilters{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .directoryavailabilityfilter{width:100%;justify-content:space-between}
  .directoryavailabilityreset{align-self:flex-start}
  .directorymockhead{align-items:flex-start;flex-direction:column}
  .directorymockactions{width:100%;justify-content:space-between}
  .directorytoolbar{align-items:stretch;flex-direction:column}
  .directoryfilter,.directoryfavoritesbutton{width:100%}
  .directorysplitdetail{padding:16px}
  .directoryfeaturedimage{aspect-ratio:16/10}
  .directorypublicationnotice,
  .directorypublicationpreview,
  .directorypublicationlocales,
  .directorypublicationimport,
  .directorypublicationsectionsreadonly,
  .directoryweeklyrateeditor{grid-template-columns:1fr}
  .directorypublicationlocales{grid-template-columns:1fr}
  .directoryweeklyrateeditor .wide{grid-column:auto}
  .directorypublicationfieldhead,.directoryweeklyrateshead{align-items:flex-start;flex-direction:column}
  .directoryweeklyratescompact .directoryweeklyrateshead > span{text-align:left}
  .directorypublicationhead{align-items:flex-start;flex-direction:column}
  .directorypublicationpreviewmedia,
  .directorypublicationpreviewempty{min-height:260px}
  .directorypublicationpreviewcontent{padding:24px 20px}
  .directorypublicationpreviewcontent h4{font-size:29px}
  .discussioninboxhead{align-items:flex-start;flex-direction:column}
  .discussiontabs{max-width:100%;overflow-x:auto}
  .discussionlayout{display:block}
  .discussionrail{max-height:360px}
  .discussiondetail{min-height:580px}
  .discussiondetailtop{align-items:flex-start;flex-direction:column}
  .discussionactions{justify-content:flex-start}
  .discussionmessage{max-width:92%}
  .realestatemarketsignalgrid,.realestatesummary,.realestatereportcards{grid-template-columns:1fr!important}
}

/* Post-review corrections — 2026-08-28 */
.apputilitybar{
  border-bottom-color:#2f2f2f;
  background:#141414;
  color:#fff;
}
.apputilityrate,
.apputilitylabel,
.apputilitymeta,
.apputilitysession,
.apputilitylink,
.apputilityhealthstatus{color:#f3f1ea}
.apputilityvalue{color:#fff}
.apputilityseparator{color:#777}
.apputilityswap{
  border-color:#f3f1ea;
  background:transparent;
  color:#fff;
}
.apputilityswap:hover:not(:disabled),
.apputilitylink:hover,
.apputilitylink.active{
  border-bottom-color:#fff;
  color:#fff;
}
.apputilityavatar{border-color:#fff}

.searchbox textarea,
.searchbox textarea:focus,
.searchbox textarea:focus-visible{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.searchbox:focus-within{
  box-shadow:0 0 0 2px #1e5b4c;
}
.chatcomposer{background:transparent}
.chatcomposer input{background:#fff}

.discussiontabs{
  gap:8px;
  overflow:visible;
}
.discussiontab,
.discussiontabprimary,
.discussiontabsecondary{
  min-height:44px;
  border:1.5px solid var(--hc-line);
  border-radius:var(--hc-pill);
  background:#fff;
  padding:0 15px;
  color:var(--hc-ink)!important;
  font-size:12px;
  font-weight:750;
  letter-spacing:.02em;
}
.discussiontab.active{
  border-color:var(--hc-ink);
  background:var(--hc-ink);
  color:#fff!important;
}
.discussiontab > span:first-child{
  display:inline;
  min-width:0;
  height:auto;
  margin:0;
  border-radius:0;
  background:transparent;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
}
.discussiontab [data-discussion-count]{
  display:inline-flex;
  min-width:23px;
  height:23px;
  margin-left:8px;
  border-radius:50%;
  background:var(--hc-accent-soft);
  color:var(--hc-ink);
  font-size:10px;
}
.discussiontab.active [data-discussion-count]{
  background:rgba(255,255,255,.2);
  color:#fff;
}
.discussiontabseparator{display:none}

.discussionpagehead{
  align-items:flex-end;
}
.discussionpagehead > div:first-child{
  width:min(100%,620px);
  flex:1 1 auto;
}
.discussionpagehead h1{margin-bottom:16px}
.discussionpagesearch{
  display:flex;
  width:min(100%,560px);
  min-height:50px;
  align-items:center;
  gap:10px;
  border:1.5px solid var(--hc-line);
  background:var(--hc-surface);
  padding:0 15px;
}
.discussionsearchicon{
  display:inline-flex;
  width:20px;
  height:20px;
  flex:0 0 20px;
  align-items:center;
  justify-content:center;
  color:var(--hc-ink);
}
.discussionsearchicon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-width:1.8;
}
.discussionpagesearch input{
  width:100%;
  min-width:0;
  height:48px;
  border:0;
  background:transparent;
  color:var(--hc-ink);
  font:500 15px/1.4 Arial,Helvetica,sans-serif;
  outline:0;
}
.discussionpagesearch:focus-within{
  border-color:var(--hc-ink);
  outline:0;
  box-shadow:0 0 0 1px var(--hc-ink);
}
.discussionspage .discussionpagesearch input:focus-visible{
  outline:0;
  box-shadow:none;
}

.discussionrailhead{
  min-height:66px;
  border-bottom-color:#141414;
  background:#141414;
  color:#fff;
  padding:10px 17px;
}
.discussionrailhead strong{
  color:#fff;
  font-size:11px;
}
.discussionrailsort{
  display:flex;
  align-items:center;
  gap:8px;
  color:#d6d2ca;
  font-size:10px;
}
.discussionrailsort > span{
  color:#d6d2ca;
  font-size:10px;
  white-space:nowrap;
}
.discussionrailsort select{
  min-height:36px;
  border:1px solid #6d6d6d;
  border-radius:0;
  background:#fff;
  padding:0 30px 0 10px;
  color:#141414;
  font:700 11px/1 Arial,Helvetica,sans-serif;
}

.discussionlayout{
  grid-template-columns:370px minmax(0,1fr);
  height:clamp(680px,72vh,840px);
}
.discussiondetailhead{
  padding:28px 30px 24px;
}
.discussiondetailtop{
  display:block;
}
.discussiondetailhead h2{
  max-width:820px;
  margin-top:8px;
  font-size:34px;
  line-height:1.12;
}
.discussiondetailmeta{
  margin-top:10px;
  font-size:11px;
}
.discussiondetailsummary{
  max-width:820px;
  margin:18px 0 0;
  border-left:3px solid var(--hc-ink);
  background:var(--hc-canvas);
  padding:12px 15px;
  font-size:14px;
  line-height:1.6;
}
.discussionactions{
  width:100%;
  justify-content:flex-start;
  margin-top:20px;
  border-top:1px solid var(--hc-line-soft);
  padding-top:18px;
}
.discussionmessages{
  gap:22px;
  background:#f1eee7;
  padding:34px 32px 40px;
}
.discussionmessage{
  max-width:min(72%,720px);
  padding:16px 18px 17px;
  line-height:1.6;
}
.discussionmessage.assistant{
  border-color:var(--hc-line);
  background:var(--hc-surface);
  align-self:flex-start;
}
.discussionmessage.team{
  align-self:flex-end;
}
.discussionmessagemeta{
  margin-bottom:10px;
  font-size:9px;
}
.discussionmessage p{
  font-size:15px;
  line-height:1.65;
}
.discussioncomposer{
  padding:18px 26px 16px;
}
.discussioncomposerlabel{
  margin-bottom:11px;
}
.discussioncomposerlabel strong{font-size:11px}
.discussioncomposerlabel span{font-size:10px}
.discussioncomposerrow{
  gap:9px;
  padding:7px;
}
.discussioncomposer textarea{
  min-height:54px;
  padding:14px;
  font-size:15px;
}
.discussioncomposersend{
  min-width:108px;
  min-height:50px;
  font-size:10px;
}
.discussioncomposerhint{font-size:10px}

.directoryfeaturedimage,
.directoryfeaturedimage img{
  border-radius:0!important;
}

/* Keep one rounded outer Cadastre workspace; internal geometry is square. */
.cadastrecontroldeck,
.cadastretoolbar,
.cadastrereporttray,
.cadastremapwrap,
.cadastremaplegend,
.cadastrelegendbody,
.cadastrezonelegenditem,
.cadastrezonelegendaction,
.cadastresearchform input,
.cadastresearchbutton,
.cadastrereportaction,
.cadastredetailreportaction,
.cadastredetailfield,
.cadastrezonesummary,
.cadastretransactions,
.cadastreowners,
.cadastrelinkedvillas,
.cadastretransaction,
.cadastreowner,
.cadastrelinkedvilla,
.cadastretransactionbadge,
.cadastreownerbadge,
.cadastrelayercontrol,
.cadastreownercompanylink,
.cadastreownersourcelink,
.cadastrelinkedvillaaction{
  border-radius:0!important;
}
.cadastresearchwrap,
.cadastresearchform,
.cadastresearchform input,
.cadastretoolbar .directorysearch{
  background:#fff!important;
}
.cadastrecontroldeck .cadastretoolbar{
  background:var(--hc-surface)!important;
}
.cadastrezonelegenditem input{
  width:17px;
  height:17px;
  appearance:none;
  -webkit-appearance:none;
  border:1.5px solid var(--hc-ink);
  border-radius:0!important;
  background:#fff;
}
.cadastrezonelegenditem input:checked{
  background-color:var(--hc-ink);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.2' d='m3 8 3 3 7-7'/%3E%3C/svg%3E");
  background-position:center;
  background-repeat:no-repeat;
  background-size:14px 14px;
}
.cadastrezonelegenditem input:focus-visible{
  outline:3px solid #1e5b4c;
  outline-offset:2px;
}
.cadastrelayercontrol input{
  width:17px;
  height:17px;
  appearance:none;
  -webkit-appearance:none;
  border:1.5px solid var(--hc-ink);
  border-radius:0!important;
  background:#fff;
}
.cadastrelayercontrol input:checked{
  background-color:var(--hc-ink);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.2' d='m3 8 3 3 7-7'/%3E%3C/svg%3E");
  background-position:center;
  background-repeat:no-repeat;
  background-size:14px 14px;
}
.cadastrelayercontrol input:focus-visible{
  outline:3px solid #1e5b4c;
  outline-offset:2px;
}
.cadastreparcelintelligence{
  border-top:1px solid var(--hc-line);
  background:#ebe9e3;
  padding:20px;
}
.cadastreparcelintelligence[hidden]{display:none}
.cadastreparcelintelligencehead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.cadastreparcelintelligencehead h3{
  margin:4px 0 0;
  font:700 26px/1.15 Georgia,"Times New Roman",serif;
}
.cadastreparcelintelligencehead p{
  margin:6px 0 0;
  color:var(--hc-muted);
  font-size:12px;
}
.cadastreparcelintelligencegrid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
}
.cadastreparcelintelligence .cadastretransactions,
.cadastreparcelintelligence .cadastreowners,
.cadastreparcelintelligence .cadastrelinkedvillas{
  margin:0;
  border:1px solid var(--hc-line);
  background:var(--hc-surface);
  padding:17px;
}
.cadastreparcelintelligence .cadastrelinkedvillas{
  margin-top:14px;
}

.realestatesummary,
.realestatereport,
.realestatecontrols,
.realestatemarketfilters,
.realestatemarketlisthead,
.realestatelisthead{
  border-radius:0!important;
}
.realestateworkspace > .realestatesummary,
.realestateworkspace > .realestatereport,
.realestateworkspace > .realestatecontrols,
.realestateworkspace > .realestatebody{
  border-radius:0!important;
}
.realestateworkspace > .realestatesummary,
.realestateworkspace > .realestatereport{
  overflow:visible;
}
.realestatecadastrelink{
  display:inline-flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  line-height:1.25;
  text-align:center;
}
.realestatemarketbody{
  grid-template-columns:minmax(0,1.9fr) minmax(300px,.62fr);
}
.realestatemarkettable{min-width:880px}
.realestatemarkettable th:last-child,
.realestatemarkettable td:last-child{min-width:112px;padding-right:14px}
.realestatemarketstatus{margin:0 5px 5px 0}
.realestatemarketpricesort{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  gap:7px;
  border:0;
  background:transparent;
  padding:0;
  color:inherit;
  font:inherit;
  font-weight:800;
  letter-spacing:inherit;
  text-transform:inherit;
  cursor:pointer;
}
.realestatemarketpricesorticon{
  display:inline-flex;
  width:22px;
  height:22px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--hc-line);
  background:#fff;
  color:var(--hc-ink);
  font-size:13px;
  line-height:1;
}
.realestatemarketpricesort:hover .realestatemarketpricesorticon,
.realestatemarketpricesort:focus-visible .realestatemarketpricesorticon{
  background:var(--hc-ink);
  color:#fff;
}

@media(max-width:850px){
  .discussionpagehead{align-items:stretch}
  .discussionpagehead > div:first-child{width:100%}
  .discussionpagesearch{width:100%}
  .discussionpageactions{width:100%}
  .discussionlayout{grid-template-columns:1fr;height:auto;min-height:0}
  .discussionrail{max-height:390px;border-right:0;border-bottom:1px solid var(--hc-line)}
  .discussionlist{max-height:320px}
  .discussiondetail{min-height:620px}
  .cadastreparcelintelligencegrid{grid-template-columns:1fr}
}

@media(max-width:680px){
  .discussiontabs{width:100%;gap:6px}
  .discussiontab{flex:1 1 auto;padding:0 10px;font-size:11px}
  .discussionpagehead h1{margin-bottom:13px}
  .discussionpagesearch{min-height:48px}
  .discussionrailhead{align-items:flex-start;flex-direction:column;gap:8px;padding:13px 15px}
  .discussionrailsort{width:100%;justify-content:space-between}
  .discussionrailsort select{min-width:145px}
  .discussiondetailhead{padding:23px 18px 20px}
  .discussiondetailhead h2{font-size:29px}
  .discussiondetailsummary{font-size:13px}
  .discussionactions{display:grid;grid-template-columns:1fr 1fr}
  .discussionactions .discussionaction{width:100%}
  .discussionactions .primaryaction,
  .discussionactions .destructiveaction{grid-column:1/-1}
  .discussionactions .stayaction{grid-column:1/-1}
  .discussionmessages{max-height:470px;padding:25px 16px 30px}
  .discussionmessage{max-width:92%;padding:14px 15px}
  .discussionmessage p{font-size:14px}
  .discussioncomposer{padding:15px 14px}
  .discussioncomposerlabel{align-items:flex-start;flex-direction:column;gap:4px}
  .cadastreparcelintelligence{padding:15px}
  .cadastreparcelintelligencehead h3{font-size:23px}
}

/* Keep phone landscape viewports fixed too, without disabling inner scrollers. */
@media(max-width:920px) and (pointer:coarse){
  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior-x:none;
    overscroll-behavior-y:auto;
  }

  html,
  body,
  .appmobilemenupanel,
  .directoryfavoritespanel,
  .directoryreallist,
  .directorysplitdetail,
  .locationreviewdetail,
  .discussionlist,
  .discussionmessages,
  .cadastredetail,
  .realestatetablewrap,
  .realestatedetail,
  .realestatemarkettablewrap,
  .realestatemarketdetail,
  .yachtdetail{
    -webkit-overflow-scrolling:touch;
  }

  .directoryreallist,
  .directorysplitdetail,
  .locationreviewdetail,
  .discussionlist,
  .discussionmessages,
  .cadastredetail,
  .realestatedetail,
  .realestatemarketdetail,
  .yachtdetail{
    overscroll-behavior-y:auto;
    touch-action:pan-y;
  }

  .realestatetablewrap,
  .realestatemarkettablewrap{
    touch-action:auto;
  }

  .cadastrepage .leaflet-container{
    touch-action:auto!important;
  }

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

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}

/* Mobile shell: brand-first header with navigation and account tools in one menu. */
.appmobilemenu{display:none}

@media(max-width:680px){
  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
    overscroll-behavior-x:none;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }
  body{
    min-height:100dvh;
    position:relative;
  }

  .loginpage{
    width:100%;
    max-width:100%;
    min-width:0;
    padding:18px 14px;
    overflow-x:hidden;
    touch-action:pan-y pinch-zoom;
  }
  .appcurrentview{display:none!important}
  .cadastrepage .leaflet-container{
    touch-action:auto!important;
  }
  .logincard{
    width:100%;
    max-width:min(500px,calc(100vw - 28px));
    min-width:0;
  }

  body.authenticated .shell{
    width:var(--gustav-mobile-viewport-width,100%);
    max-width:var(--gustav-mobile-viewport-width,100%);
    min-width:0;
    padding-right:0;
    padding-left:0;
  }

  body.authenticated .shell > main{
    width:100%;
    max-width:100%;
    min-width:0;
    padding-right:16px;
    padding-left:16px;
    padding-right:max(16px,env(safe-area-inset-right));
    padding-left:max(16px,env(safe-area-inset-left));
  }

  #rentalSearchView{
    width:100%;
    max-width:100%;
    min-width:0;
    margin-right:0;
    margin-left:0;
  }

  body.authenticated .shell,
  .shell > main{
    overflow-x:hidden;
    overscroll-behavior-x:none;
  }

  .apputilitybar{display:none}

  .appmasthead{
    width:100%;
    max-width:100%;
    min-height:74px;
    margin-left:0;
    margin-bottom:18px;
    padding:11px 16px;
    padding-right:max(16px,env(safe-area-inset-right));
    padding-left:max(16px,env(safe-area-inset-left));
    display:grid;
    grid-template-columns:52px minmax(0,1fr) 52px;
    align-items:center;
    gap:0;
  }

  .appidentity{
    z-index:1;
    grid-column:1/-1;
    grid-row:1;
    justify-self:center;
    justify-content:center;
  }
  .appidentity img{
    width:210px;
    max-width:calc(100vw - 112px);
  }
  .appidentityname{display:none}
  .appnav{display:none}

  .appmobilemenu{
    position:relative;
    z-index:3;
    grid-column:3;
    grid-row:1;
    display:block;
    justify-self:end;
  }
  .appmobilemenu > summary{list-style:none}
  .appmobilemenu > summary::-webkit-details-marker{display:none}

  .appmobilemenutrigger{
    width:46px;
    height:46px;
    border:1.5px solid var(--hc-line);
    border-radius:50%;
    background:var(--hc-surface);
    display:grid;
    place-items:center;
    color:var(--hc-ink);
    cursor:pointer;
  }
  .appmobilemenutrigger > span:first-child{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip-path:inset(50%);
    white-space:nowrap;
  }
  .appmobilemenuicon{display:grid;gap:4px}
  .appmobilemenuicon i{
    display:block;
    width:19px;
    height:1.5px;
    background:currentColor;
    transition:transform .16s ease,opacity .16s ease;
  }
  .appmobilemenu[open] .appmobilemenuicon i:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
  .appmobilemenu[open] .appmobilemenuicon i:nth-child(2){opacity:0}
  .appmobilemenu[open] .appmobilemenuicon i:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}

  .appmobilemenupanel{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    width:min(340px,calc(100vw - 24px));
    max-height:calc(100dvh - 96px);
    overflow:auto;
    border:1.5px solid var(--hc-line);
    border-radius:var(--hc-radius);
    background:var(--hc-surface);
    padding:9px;
    box-shadow:0 22px 54px rgba(16,16,16,.18);
  }

  .appmobilenav{display:grid}
  .appmobilenavbutton,
  .appmobilenavsubbutton,
  .appmobileutilitybutton{
    width:100%;
    min-height:48px;
    border:0;
    border-radius:9px;
    background:transparent;
    padding:12px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    color:var(--hc-ink-soft);
    font-size:14px;
    font-weight:400;
    line-height:1.3;
    text-align:left;
    text-transform:uppercase;
    cursor:pointer;
  }
  .appmobilenavbutton:hover,
  .appmobilenavbutton.active,
  .appmobilenavsubbutton:hover,
  .appmobilenavsubbutton.active,
  .appmobileutilitybutton:hover,
  .appmobileutilitybutton.active{
    background:var(--hc-accent-soft);
    color:var(--hc-ink);
  }
  .appmobilenavbutton.active,
  .appmobilenavsubbutton.active,
  .appmobileutilitybutton.active,
  .appmobilenavgroup.active > .appmobilenavsummary{
    font-weight:700;
  }

  .appmobilenavgroup > summary{list-style:none}
  .appmobilenavgroup > summary::-webkit-details-marker{display:none}
  .appmobilenavgroup[open] .appnavchevron{transform:translateY(2px) rotate(225deg)}
  .appmobilenavsubgroup{
    display:grid;
    margin:0 0 5px 12px;
    padding:5px 0 5px 10px;
    border-left:1px solid var(--hc-line-soft);
  }
  .appmobilenavsubbutton{
    min-height:44px;
    color:var(--hc-muted);
    font-size:13px;
  }

  .appmobileutilities{
    display:grid;
    margin-top:7px;
    padding-top:7px;
    border-top:1px solid var(--hc-line-soft);
  }
  .appmobileutilitybutton{font-size:13px}
  #mobileLogoutBtn{color:#803d36}

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

  .ask-header,
  .ask-brand,
  .searchbox{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .ask-header{margin-bottom:16px}
  .ask-header::before{margin-bottom:6px}
  .ask-header .title{
    max-width:100%;
    font-size:clamp(38px,10.5vw,44px);
    line-height:.99;
    overflow-wrap:break-word;
  }
  .ask-header .subtitle{
    margin-top:8px;
    font-size:15px;
    line-height:1.4;
  }
  #rentalSearchView .searchbox{
    width:100%;
    max-width:100%;
    min-width:0;
    margin-right:0;
    margin-left:0;
    min-height:0;
    padding:18px 16px 14px;
  }
  .searchbox textarea{
    min-height:120px;
    min-height:clamp(108px,18svh,138px);
    overflow:auto;
    resize:none;
    -webkit-overflow-scrolling:touch;
  }
  .searchfooter{
    gap:12px;
    margin-top:12px;
    padding-top:12px;
  }
  .searchfooter button{min-height:48px}
}

/* Persistent connected navigation and secondary HAMAKA.COM shortcut. */
html{scroll-padding-top:90px}

body.authenticated .appmasthead{
  position:sticky;
  z-index:960;
  top:0;
  background:var(--hc-canvas);
  box-shadow:0 10px 26px rgba(16,16,16,.055);
}

.appnavbutton.active::after,
.appnavmenu.active > .appnavsummary::after{
  height:3px;
}

.appnavexternal{
  min-height:36px;
  padding:7px 11px;
  border:1px solid var(--hc-line-soft);
  border-radius:var(--hc-pill);
  background:var(--hc-surface);
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--hc-muted);
  font-weight:700;
  text-decoration:none;
}

.appnavexternal::after{display:none}
.appnavexternal:hover{border-color:var(--hc-line);color:var(--hc-ink)}
.appnavexternalicon{font-size:.9em;line-height:1}
.appcurrentview{display:none}

@media(max-width:1100px) and (min-width:851px){
  .appnav{gap:14px}
  .appnavbutton{font-size:11px}
  .appnavexternal{padding-right:9px;padding-left:9px}
}

@media(max-width:680px){
  html{scroll-padding-top:104px}
  body.authenticated .shell{
    /* Reserve the space removed from flow by the fixed mobile masthead. */
    padding-top:106px;
    overflow:visible;
  }
  body.authenticated .appmasthead{
    position:fixed;
    inset:0 0 auto;
    width:100%;
    margin:0;
  }
  .appidentity{flex-direction:column;gap:3px}
  .appcurrentview{
    display:block;
    max-width:230px;
    overflow:hidden;
    color:var(--hc-muted);
    font-size:10px;
    font-weight:700;
    line-height:1.2;
    text-overflow:ellipsis;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .appmobilenavbutton.active,
  .appmobilenavsubbutton.active,
  .appmobileutilitybutton.active{
    box-shadow:inset 3px 0 0 #1e5b4c;
  }
  .appmobilenavexternal{
    border:0;
    border-radius:9px;
    background:transparent;
    font-weight:700;
    text-decoration:none;
  }
}

/* Responsive content containment for dense application workspaces. */
@media(max-width:1050px){
  .realestatemarketbody{
    grid-template-columns:minmax(0,1fr);
  }
}

@media(max-width:760px){
  .realestatemarketfilter,
  .realestatemarketfilter input,
  .realestatemarketfilter select,
  .realestatemarketlistpane,
  .realestatemarkettablewrap,
  .realestatemarkettable{
    width:100%;
    max-width:100%;
    min-width:0;
  }
}

@media(max-width:680px){
  .discussiontabs{
    width:100%;
    max-width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
    display:grid;
    gap:6px;
    overflow:visible;
  }
  .discussiontab{
    width:100%;
    min-width:0;
    padding-right:6px;
    padding-left:6px;
  }
  .discussiontab span{
    min-width:18px;
    flex:0 0 auto;
    margin-left:5px;
  }
  .discussiontabseparator{display:none}

  .directorysplit,
  .directorysplitlist,
  .directorysplitdetail,
  .directorysplititemrow,
  .directorysplititem{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .directorysplititem{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
  .directorystatus{
    max-width:100%;
    white-space:normal;
  }
}

@media(max-width:360px){
  .discussiontab{font-size:10px}
}

@media(max-width:480px){
  .realestatemarketfilters{
    grid-template-columns:minmax(0,1fr);
  }
  .realestatemarketfilteractions{
    width:100%;
    min-width:0;
    grid-template-columns:minmax(0,1fr);
    display:grid;
  }
  .realestatemarketfilteractions button{
    width:100%;
    min-width:0;
    white-space:normal;
  }
}
