/* Estate visual system v1.7. Content, routes and palette 0/layout 0 stay original.
   Palette + layout are independent; selectors are intentionally scoped to avoid admin/form regressions. */
:root{--v17-nav: #eef1e8;--v17-nav-text:#20362e;--v17-nav-hover:#dde9da;--v17-header:#fff;--v17-header-text:#25372d;--v17-popup:#fff;--v17-popup-text:#25372d;--v17-card:#fff;--v17-card-text:#283831;--v17-action:#273d32;--v17-action-text:#fff;--v17-line:#c8d0c2;--v17-float:#233a32;--v17-float-text:#fff}
:root[data-palette="1"]{--v17-nav:#d9be79;--v17-nav-text:#203426;--v17-nav-hover:#f5e6bc;--v17-header:#17382e;--v17-header-text:#fdf2d9;--v17-popup:#fdf8e9;--v17-popup-text:#203d31;--v17-card:#fffdf5;--v17-card-text:#1f3a2e;--v17-action:#224c39;--v17-action-text:#fff9e7;--v17-line:#a8bda5;--v17-float:#214c3f;--v17-float-text:#fff9e7}
:root[data-palette="2"]{--v17-nav:#262522;--v17-nav-text:#fff1cd;--v17-nav-hover:#48402e;--v17-header:#151515;--v17-header-text:#fff2d6;--v17-popup:#383329;--v17-popup-text:#fff1cf;--v17-card:#33302a;--v17-card-text:#fff2d8;--v17-action:#d5aa59;--v17-action-text:#241b12;--v17-line:#8c7955;--v17-float:#d5aa59;--v17-float-text:#241b12}
:root[data-palette="3"]{--v17-nav:#e2e7e1;--v17-nav-text:#24372c;--v17-nav-hover:#c8d5c9;--v17-header:#e9f0eb;--v17-header-text:#273e30;--v17-popup:#fff;--v17-popup-text:#26382e;--v17-card:#fff;--v17-card-text:#28372d;--v17-action:#3e5448;--v17-action-text:#fff;--v17-line:#bec8c0;--v17-float:#3e5448;--v17-float-text:#fff}
:root[data-palette="4"]{--v17-nav:#ffe0f0;--v17-nav-text:#59345e;--v17-nav-hover:#f7b6d9;--v17-header:#894b83;--v17-header-text:#fff8fe;--v17-popup:#fff6fc;--v17-popup-text:#583160;--v17-card:#fff7fc;--v17-card-text:#59365b;--v17-action:#75477e;--v17-action-text:#fff;--v17-line:#e3b7d9;--v17-float:#724478;--v17-float-text:#fff}
:root[data-palette="5"]{--v17-nav:#bde7f6;--v17-nav-text:#143b5b;--v17-nav-hover:#8bd4ec;--v17-header:#17385d;--v17-header-text:#f0faff;--v17-popup:#effaff;--v17-popup-text:#153957;--v17-card:#fcfeff;--v17-card-text:#153957;--v17-action:#175075;--v17-action-text:#fff;--v17-line:#9fc9df;--v17-float:#194c70;--v17-float-text:#fff}
:root[data-palette="6"]{--v17-nav:#edd0c6;--v17-nav-text:#59293f;--v17-nav-hover:#e8b5b7;--v17-header:#6a2c44;--v17-header-text:#fff2e6;--v17-popup:#fff5ef;--v17-popup-text:#5c293e;--v17-card:#fff8f4;--v17-card-text:#603046;--v17-action:#76324d;--v17-action-text:#fff1e7;--v17-line:#dcb7c4;--v17-float:#77364d;--v17-float-text:#fff}
:root[data-palette="7"]{--v17-nav:#ffe2d8;--v17-nav-text:#3b314c;--v17-nav-hover:#fbb6a6;--v17-header:#24334d;--v17-header-text:#f6faff;--v17-popup:#fff9f4;--v17-popup-text:#33304b;--v17-card:#fff;--v17-card-text:#2a3853;--v17-action:#293b58;--v17-action-text:#fff;--v17-line:#cad0e0;--v17-float:#263c59;--v17-float-text:#fff}
/* Contrast repair for every non-original palette: top bar, all menu items and submenu states. */
:root[data-palette]:not([data-palette="0"]) .site-header .header-main{background:var(--v17-header)!important;color:var(--v17-header-text)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .header-main .brand strong,
:root[data-palette]:not([data-palette="0"]) .site-header .header-main .brand small,
:root[data-palette]:not([data-palette="0"]) .site-header .header-main .header-links>a,
:root[data-palette]:not([data-palette="0"]) .site-header .header-main .customer-top-group>a,
:root[data-palette]:not([data-palette="0"]) .site-header .header-main .customer-top-group>.submenu-toggle,
:root[data-palette]:not([data-palette="0"]) .site-header .header-main .menu-toggle{color:var(--v17-header-text)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .shared-nav{background:transparent!important;border-color:color-mix(in srgb,var(--v17-header-text),transparent 63%)!important;box-shadow:none!important}
:root[data-palette]:not([data-palette="0"]) .site-header .header-links>a:hover,
:root[data-palette]:not([data-palette="0"]) .site-header .header-links>a.current,
:root[data-palette]:not([data-palette="0"]) .site-header .customer-top-group:hover{background:color-mix(in srgb,var(--v17-header-text),transparent 85%)!important;color:var(--v17-header-text)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav{background:var(--v17-nav)!important;color:var(--v17-nav-text)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-inner{background:transparent!important;border-color:color-mix(in srgb,var(--v17-nav-text),transparent 65%)!important;box-shadow:none!important}
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-inner>a,
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-inner>.nav-group>a,
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-inner>.nav-group>.submenu-toggle,
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .mobile-links>a{color:var(--v17-nav-text)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-inner>a:hover,
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-inner>a.current,
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-group:hover,
:root[data-palette]:not([data-palette="0"]) .site-header .main-nav .nav-group:focus-within{background:var(--v17-nav-hover)!important;color:var(--v17-nav-text)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .nav-group>.submenu{background:var(--v17-popup)!important;color:var(--v17-popup-text)!important;border-color:var(--v17-line)!important}
:root[data-palette]:not([data-palette="0"]) .site-header .nav-group>.submenu a{color:var(--v17-popup-text)!important;background:transparent!important}
:root[data-palette]:not([data-palette="0"]) .site-header .nav-group>.submenu a:hover,
:root[data-palette]:not([data-palette="0"]) .site-header .nav-group>.submenu a:focus-visible{color:var(--v17-popup-text)!important;background:color-mix(in srgb,var(--v17-popup-text),transparent 88%)!important}
/* A light background must never inherit light type from global header rules. */
:root[data-palette="2"] .site-header .main-nav .submenu a{color:#fff1cf!important}
:root[data-palette]:not([data-palette="0"]) .site-header .nav-inner>.nav-group>a.current{color:var(--v17-nav-text)!important}
:root[data-palette]:not([data-palette="0"]) .office-featured .arrow-link,
:root[data-palette]:not([data-palette="0"]) .service-intro-link,
:root[data-palette]:not([data-palette="0"]) .search-panel .quick-search label{color:var(--v17-card-text)!important}
:root[data-palette]:not([data-palette="0"]) .search-panel,
:root[data-palette]:not([data-palette="0"]) .property-card,
:root[data-palette]:not([data-palette="0"]) .post-card{color:var(--v17-card-text)!important}
:root[data-palette]:not([data-palette="0"]) .search-panel .quick-search-submit,
:root[data-palette]:not([data-palette="0"]) .button.dark{background:var(--v17-action)!important;color:var(--v17-action-text)!important;border-color:var(--v17-action)!important}
:root[data-palette]:not([data-palette="0"]) .button.gold{color:#1e1a13!important}
:root[data-palette="2"] .search-panel .search-tabs a,
:root[data-palette="2"] .search-panel .search-panel-title,
:root[data-palette="2"] .search-panel .inventory-corner,
:root[data-palette="2"] .section-head>a,
:root[data-palette="2"] .service-links>a{color:var(--v17-card-text)!important}
:root[data-palette="2"] .inventory-corner a{background:#363128!important;color:#fff0c9!important;border-color:#9f8454!important}
:root[data-palette="2"] .inventory-corner a strong{color:#fbd98f!important}
:root[data-palette]:not([data-palette="0"]) .floating-contact>a,
:root[data-palette]:not([data-palette="0"]) .floating-contact>button{background:var(--v17-float)!important;color:var(--v17-float-text)!important;border-color:var(--v17-line)!important}
:root[data-palette]:not([data-palette="0"]) .photo-controls>button,
:root[data-palette]:not([data-palette="0"]) .carousel-controls button{background:var(--v17-action)!important;color:var(--v17-action-text)!important;border-color:var(--v17-line)!important}
:root[data-palette]:not([data-palette="0"]) .photo-controls [data-photo-count],
:root[data-palette]:not([data-palette="0"]) .carousel-controls [data-carousel-count]{background:var(--v17-action)!important;color:var(--v17-action-text)!important}
:root[data-palette]:not([data-palette="0"]) .service-links a>span:last-child{color:var(--v17-card-text)!important}
/* Search inventory integrated INTO search card, no position overlap or clipped decoration. */
.search-panel .search-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0 3px;min-width:0}
.search-panel .search-panel-title{font-size:clamp(1rem,2vw,1.35rem);color:inherit;margin:0;flex:none}
.search-panel .inventory-corner{width:auto;max-width:100%;margin:0!important;justify-content:flex-end;flex:1}
.search-panel .inventory-corner>a{display:flex;align-items:center;gap:9px;flex-wrap:wrap;width:auto;max-width:100%;padding:7px 12px;background:color-mix(in srgb,var(--cream,#eef1e8),white 19%);color:var(--ink);border:1px solid var(--line,#d2d9cb);box-shadow:none;border-radius:10px;font-size:.79rem}
.search-panel .inventory-corner strong{font-size:1.15rem;color:inherit}
.search-panel .inventory-corner small{opacity:1;color:inherit;white-space:normal}
.search-panel .search-tabs{margin-bottom:16px}
/* Original layout and color are deliberately maintained except the inventory's position. */
:root[data-layout="0"] .search-panel .search-panel-title{font-size:1.05rem}
/* All four optional layouts: every section and control belongs to that layout. */
:root[data-layout]:not([data-layout="0"]) .search-panel .quick-search-submit,
:root[data-layout]:not([data-layout="0"]) .hero-action,
:root[data-layout]:not([data-layout="0"]) .section-head>a,
:root[data-layout]:not([data-layout="0"]) .service-intro-link{font-weight:700;transition:transform .2s,border-color .2s,box-shadow .2s}
:root[data-layout]:not([data-layout="0"]) .office-featured .arrow-link{border:1px solid var(--v17-line);padding:9px 18px;display:inline-flex;min-height:44px;background:var(--v17-card);color:var(--v17-card-text)}
:root[data-layout]:not([data-layout="0"]) .service-intro-link{border:1px solid var(--v17-line);padding:10px 16px;min-height:44px;background:var(--v17-card);color:var(--v17-card-text)}
:root[data-layout]:not([data-layout="0"]) .photo-controls{align-items:center}
:root[data-layout]:not([data-layout="0"]) .photo-controls>button,
:root[data-layout]:not([data-layout="0"]) .carousel-controls button{min-height:40px;min-width:42px}
:root[data-layout]:not([data-layout="0"]) .hero-caption .gold-line{height:3px;width:56px}
:root[data-layout]:not([data-layout="0"]) .service-links>a{transition:transform .18s,border-color .18s,box-shadow .18s}
:root[data-layout]:not([data-layout="0"]) .section-head{position:relative}
/* Layout 1: precise symmetry, squared cards, centered controls and purposeful double rules. */
:root[data-layout="1"] .hero{border-radius:0!important;min-height:560px}
:root[data-layout="1"] .hero-copy{border:2px solid #d4b978;padding:22px 28px!important;background:rgba(19,34,32,.48)}
:root[data-layout="1"] .search-panel{border:1px solid var(--v17-line);border-radius:0!important;transform:none!important}
:root[data-layout="1"] .search-panel-top{border-bottom:2px double var(--v17-line)}
:root[data-layout="1"] .search-panel-title{margin-inline:auto}
:root[data-layout="1"] .search-panel .inventory-corner{flex:0 1 100%;justify-content:center}
:root[data-layout="1"] .search-panel .inventory-corner a{justify-content:center;border-radius:0}
:root[data-layout="1"] .search-tabs{justify-content:center;gap:18px}
:root[data-layout="1"] .search-tabs a{border:1px solid var(--v17-line);min-width:110px;text-align:center;border-radius:0;padding:5px 10px}
:root[data-layout="1"] .quick-search-submit,:root[data-layout="1"] .hero-action,:root[data-layout="1"] .office-featured .arrow-link,:root[data-layout="1"] .service-intro-link{border-radius:0!important}
:root[data-layout="1"] .section-head{border-block:1px solid var(--v17-line);padding:12px 0}
:root[data-layout="1"] .section-head>a{border-bottom:2px solid var(--gold);padding:8px 14px}
:root[data-layout="1"] .property-card,:root[data-layout="1"] .post-card,:root[data-layout="1"] .city-visual{border-radius:0!important}
:root[data-layout="1"] .service-links>a{border:1px solid var(--v17-line);margin:7px 0;padding:18px 24px;justify-content:center}
:root[data-layout="1"] .service-links>a .service-no{border-inline:1px solid var(--gold);padding-inline:10px}
:root[data-layout="1"] .service-links>a>span:last-child{font-size:18px}
:root[data-layout="1"] .photo-controls>button,:root[data-layout="1"] .carousel-controls button,:root[data-layout="1"] .photo-controls span{border-radius:0!important}
:root[data-layout="1"] .floating-contact{right:20px;left:auto;bottom:20px;gap:7px}
:root[data-layout="1"] .floating-contact>*{border-radius:4px!important;box-shadow:0 0 0 2px var(--v17-line)!important}
:root[data-layout="1"] .header-main .shared-nav{border:0!important;border-bottom:2px double currentColor!important;border-radius:0!important}
/* Layout 2: free architecture, staggered collage and expressive curves. */
:root[data-layout="2"] .hero{border-radius:0 0 110px 16px!important}
:root[data-layout="2"] .hero-copy{border-inline-start:5px solid var(--gold);box-shadow:14px 12px 0 color-mix(in srgb,var(--gold),transparent 60%)}
:root[data-layout="2"] .search-panel{border:2px solid var(--v17-line);border-radius:36px 5px 40px 8px!important}
:root[data-layout="2"] .search-panel:before{content:"";position:absolute;top:10px;left:20px;width:63px;height:7px;background:var(--gold);border-radius:9px}
:root[data-layout="2"] .search-panel-top{border-bottom:2px dashed var(--v17-line)}
:root[data-layout="2"] .search-panel-title{font-size:1.6rem;transform:rotate(-2deg)}
:root[data-layout="2"] .search-panel .inventory-corner a{border-radius:36px 4px 36px 5px}
:root[data-layout="2"] .search-tabs a{background:color-mix(in srgb,var(--gold),transparent 82%);border-radius:30px 4px 30px 5px;padding:4px 14px}
:root[data-layout="2"] .search-tabs a:nth-child(even){border-radius:3px 30px 3px 30px;transform:translateY(3px)}
:root[data-layout="2"] .quick-search-submit{border-radius:28px 3px 23px 4px!important;transform:rotate(1deg)}
:root[data-layout="2"] .hero-action{border-radius:4px 24px 4px 28px!important}
:root[data-layout="2"] .office-featured .arrow-link{border-radius:28px 4px 4px 28px;transform:rotate(-1deg)}
:root[data-layout="2"] .service-intro-link{border-radius:25px 5px 30px 6px;transform:rotate(1deg)}
:root[data-layout="2"] .section-head:after{content:"";width:46px;height:4px;background:var(--gold);position:absolute;bottom:-15px;right:18%;transform:rotate(-8deg)}
:root[data-layout="2"] .service-links>a:nth-child(odd){transform:translateX(-10px);border-radius:24px 4px 20px 4px}
:root[data-layout="2"] .service-links>a:nth-child(even){transform:translateX(7px);border:1px solid var(--v17-line);border-radius:4px 25px 4px 20px}
:root[data-layout="2"] .services-band{border-radius:65px 5px 40px 8px}
:root[data-layout="2"] .photo-controls>button:nth-child(odd){border-radius:28px 3px 18px 4px!important;transform:rotate(-4deg)}
:root[data-layout="2"] .photo-controls>button:nth-child(even){border-radius:4px 20px 4px 28px!important}
:root[data-layout="2"] .carousel-controls button{border-radius:22px 2px 22px 2px}
:root[data-layout="2"] .floating-contact{inset-inline-end:auto!important;left:max(15px,env(safe-area-inset-left));right:auto;bottom:80px;flex-direction:column;gap:7px}
:root[data-layout="2"] .floating-contact>*:nth-child(1){border-radius:45% 9% 40% 9%!important;transform:rotate(-8deg)}
:root[data-layout="2"] .floating-contact>*:nth-child(2){border-radius:10% 45% 10% 45%!important;transform:rotate(5deg)}
:root[data-layout="2"] .floating-contact>*:nth-child(3){border-radius:4px 30px 4px 30px!important}
:root[data-layout="2"] .support-panel{inset-inline-end:auto;left:76px;right:auto}
/* Layout 3: controlled creative rebellion; geometry varies, text stays horizontal and clickable. */
:root[data-layout="3"] .hero{border-radius:0 0 12% 3%!important;box-shadow:inset 0 -10px var(--gold)}
:root[data-layout="3"] .hero-copy{transform:rotate(-2.3deg)!important;border:3px dashed var(--gold);border-radius:42px 3px 51px 8px;padding:26px!important;max-width:540px;background:#172a27cb}
:root[data-layout="3"] .hero-caption{transform:rotate(5deg);left:50px;bottom:47px}
:root[data-layout="3"] .search-panel{transform:rotate(1.4deg)!important;border:3px dashed var(--gold);border-radius:6px 65px 8px 47px!important;box-shadow:-13px 15px 0 color-mix(in srgb,var(--gold),transparent 68%)}
:root[data-layout="3"] .search-panel-top{border-bottom:3px dotted var(--v17-line)}
:root[data-layout="3"] .search-panel-title{transform:rotate(-4deg);font-size:1.55rem}
:root[data-layout="3"] .search-panel .inventory-corner a{border-radius:50% 4px 24px 3px;transform:rotate(-1deg);border:2px dashed var(--gold)}
:root[data-layout="3"] .search-tabs a:nth-child(5n+1){border-radius:49% 4% 43% 4%!important;transform:rotate(-5deg)!important}
:root[data-layout="3"] .search-tabs a:nth-child(5n+2){clip-path:polygon(13% 0%,100% 0%,86% 100%,0 100%);border-radius:0!important;transform:rotate(4deg)!important}
:root[data-layout="3"] .search-tabs a:nth-child(5n+3){border-radius:50%!important;min-width:100px;min-height:55px;transform:rotate(-3deg)!important}
:root[data-layout="3"] .search-tabs a:nth-child(5n+4){clip-path:polygon(0% 0%,90% 0%,100% 50%,90% 100%,0% 100%,10% 50%);border-radius:0!important;transform:rotate(3deg)!important}
:root[data-layout="3"] .search-tabs a:nth-child(5n+5){border-radius:55% 15% 48% 12%!important;transform:rotate(-4deg)!important}
:root[data-layout="3"] .quick-search-submit{clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);border-radius:0!important;transform:rotate(-3deg);padding-inline:28px}
:root[data-layout="3"] .hero-action{border-radius:55% 9% 52% 12%!important;transform:rotate(3deg);padding:16px 30px}
:root[data-layout="3"] .office-featured .arrow-link{clip-path:polygon(7% 0,100% 7%,96% 96%,0 100%);border-radius:0;transform:rotate(-3deg);padding:14px 27px}
:root[data-layout="3"] .service-intro-link{border-radius:40px 4px 29px 3px!important;transform:rotate(-3deg)}
:root[data-layout="3"] .section-head:nth-of-type(odd){transform:rotate(-1.5deg)}
:root[data-layout="3"] .office-featured .section-head:before{content:"";position:absolute;top:-13px;right:8%;width:95px;border-top:5px dashed var(--gold);transform:rotate(12deg)}
:root[data-layout="3"] .service-links>a:nth-child(3n+1){border:2px dashed var(--v17-line);border-radius:60% 6% 45% 5%;transform:rotate(-2.3deg);padding:19px}
:root[data-layout="3"] .service-links>a:nth-child(3n+2){border:2px solid var(--gold);clip-path:polygon(5% 0,100% 0,95% 100%,0 100%);background:color-mix(in srgb,var(--gold),transparent 83%);transform:rotate(2.5deg);padding:19px}
:root[data-layout="3"] .service-links>a:nth-child(3n+3){border:2px dotted var(--v17-line);border-radius:6px 48px 4px 32px;transform:rotate(-2deg);padding:19px}
:root[data-layout="3"] .service-no{display:inline-flex;justify-content:center;align-items:center;min-width:42px;min-height:42px;border:2px solid var(--gold);border-radius:50%;transform:rotate(11deg)}
:root[data-layout="3"] .services-band{border-radius:8px 66px 12px 52px;transform:skewY(-.35deg);padding-inline:8px}
:root[data-layout="3"] .city-visual{transform:rotate(-1.7deg);border-radius:40% 7px 34px 5px!important}
:root[data-layout="3"] .property-card:nth-child(5n+1){transform:rotate(-1.2deg) translateY(-4px)}
:root[data-layout="3"] .property-card:nth-child(5n+2){transform:rotate(1deg) translateY(6px)}
:root[data-layout="3"] .property-card:nth-child(5n+3){transform:rotate(-1.6deg) translateY(2px)}
:root[data-layout="3"] .property-card:nth-child(5n+4){transform:rotate(1.4deg) translateY(-3px)}
:root[data-layout="3"] .property-card:nth-child(5n+5){transform:rotate(-.8deg) translateY(4px)}
:root[data-layout="3"] .property-card:hover{transform:translateY(-4px) rotate(0)!important}
:root[data-layout="3"] .photo-controls>button:nth-of-type(1){border-radius:50% 5% 40% 10%!important;transform:rotate(-7deg)}
:root[data-layout="3"] .photo-controls>button:nth-of-type(2){clip-path:polygon(10% 0,100% 0,90% 100%,0 100%);border-radius:0!important;transform:rotate(6deg)}
:root[data-layout="3"] .photo-controls>button:nth-of-type(3){border-radius:5px 30px 3px 30px!important;transform:rotate(-4deg)}
:root[data-layout="3"] .photo-controls [data-photo-count]{transform:rotate(4deg);border-radius:3px 24px 3px 24px}
:root[data-layout="3"] .carousel-controls button{border-radius:22px 3px 26px 4px;transform:rotate(-5deg)}
:root[data-layout="3"] .carousel-controls button:last-child{transform:rotate(4deg)}
:root[data-layout="3"] .floating-contact{inset-inline-end:auto!important;right:auto;left:18px;bottom:95px;flex-direction:column-reverse;gap:13px}
:root[data-layout="3"] .floating-contact>*:nth-child(1){clip-path:polygon(50% 0,100% 40%,83% 100%,12% 100%,0 42%);border-radius:0!important;transform:rotate(-7deg)}
:root[data-layout="3"] .floating-contact>*:nth-child(2){border-radius:50% 12% 50% 12%!important;transform:rotate(11deg)}
:root[data-layout="3"] .floating-contact>*:nth-child(3){border-radius:4px 28px 4px 30px!important;transform:rotate(-8deg)}
:root[data-layout="3"] .support-panel{inset-inline-end:auto;left:82px;right:auto}
/* Layout 4: sharp-cornered, restrained luxurious grid with paired gold strokes. */
:root[data-layout="4"] .hero{border-radius:0!important;border-bottom:5px double var(--gold)}
:root[data-layout="4"] .hero-copy{border:1px solid var(--gold);border-right:4px double var(--gold);padding:24px 28px!important;background:rgba(8,12,12,.42)}
:root[data-layout="4"] .hero-caption{border-bottom:1px solid var(--gold);padding-bottom:13px}
:root[data-layout="4"] .search-panel{border:1px solid var(--gold);border-top:4px double var(--gold);border-radius:0!important;transform:none!important;box-shadow:0 17px 35px #0002}
:root[data-layout="4"] .search-panel-top{border-bottom:1px solid var(--gold)}
:root[data-layout="4"] .search-panel-title{font-family:Georgia,'Vazirmatn',sans-serif;letter-spacing:.02em}
:root[data-layout="4"] .search-panel .inventory-corner a{border:1px solid var(--gold);border-radius:0!important;background:transparent}
:root[data-layout="4"] .search-tabs a{border-bottom:2px solid var(--gold);padding:4px 10px}
:root[data-layout="4"] .quick-search-submit,:root[data-layout="4"] .hero-action,:root[data-layout="4"] .office-featured .arrow-link,:root[data-layout="4"] .service-intro-link{border-radius:0!important;border:1px solid var(--gold)!important;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--gold),transparent 70%)}
:root[data-layout="4"] .section-head{border-right:4px double var(--gold);padding-right:18px}
:root[data-layout="4"] .section-head:after{content:"";height:2px;width:75px;background:var(--gold);position:absolute;bottom:-15px;right:0}
:root[data-layout="4"] .service-links>a{border:1px solid var(--gold);border-radius:0;transform:none!important;margin-block:9px;padding:16px 24px;background:color-mix(in srgb,var(--gold),transparent 94%)}
:root[data-layout="4"] .service-no{border-left:1px solid var(--gold);padding-left:16px}
:root[data-layout="4"] .property-card,:root[data-layout="4"] .post-card,:root[data-layout="4"] .city-visual{border-radius:0!important;border:1px solid var(--gold)}
:root[data-layout="4"] .photo-controls>button,:root[data-layout="4"] .carousel-controls button,:root[data-layout="4"] .photo-controls span{border-radius:0!important;border-color:var(--gold)!important}
:root[data-layout="4"] .floating-contact{right:20px;left:auto;bottom:15px;flex-direction:row}
:root[data-layout="4"] .floating-contact>*{border-radius:0!important;border:1px solid var(--gold)!important;box-shadow:inset 0 0 0 2px #0003!important}
:root[data-layout="4"] .header-main .shared-nav{border:0!important;border-bottom:1px solid var(--gold)!important;border-radius:0!important}
/* Desktop navigation: no wrapping or clipping; content remains center-aligned. */
@media(min-width:1181px){
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner{border:0!important;box-shadow:none!important;display:flex;flex-wrap:nowrap!important;justify-content:center;align-items:center;gap:clamp(1px,.35vw,5px);width:min(1560px,calc(100% - 18px));max-width:none;padding:9px 2px!important;min-height:72px;overflow:visible}
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>a,
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>.nav-group{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;white-space:nowrap;min-width:0;min-height:43px;padding:0 3px!important;transform:none}
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>a,
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>.nav-group>a{font-size:clamp(10px,.77vw,12px);line-height:1.55;padding:9px 3px!important;white-space:nowrap}
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>.nav-group>.submenu-toggle{padding:4px 2px!important;font-size:12px}
 :root[data-layout="1"] .main-nav .nav-inner>a,:root[data-layout="1"] .main-nav .nav-inner>.nav-group{border:1px solid var(--v17-line);border-radius:0!important}
 :root[data-layout="2"] .main-nav .nav-inner>a:nth-child(3n),:root[data-layout="2"] .main-nav .nav-inner>.nav-group:nth-child(3n){border-radius:18px 3px 18px 3px!important;transform:translateY(-3px)}
 :root[data-layout="2"] .main-nav .nav-inner>a:nth-child(3n+1),:root[data-layout="2"] .main-nav .nav-inner>.nav-group:nth-child(3n+1){border-radius:2px 15px 3px 18px!important;transform:translateY(2px)}
 :root[data-layout="3"] .main-nav .nav-inner>a,:root[data-layout="3"] .main-nav .nav-inner>.nav-group{border:1px solid var(--v17-line)!important;box-shadow:2px 3px 0 #0002;min-height:43px;align-self:center;transform-origin:50% 50%}
 :root[data-layout="3"] .main-nav .nav-inner>a:nth-child(5n+1),:root[data-layout="3"] .main-nav .nav-inner>.nav-group:nth-child(5n+1){transform:rotate(-3deg);border-radius:45% 6% 40% 9%!important}
 :root[data-layout="3"] .main-nav .nav-inner>a:nth-child(5n+2),:root[data-layout="3"] .main-nav .nav-inner>.nav-group:nth-child(5n+2){transform:rotate(2.5deg);clip-path:none;border-radius:3px!important}
 :root[data-layout="3"] .main-nav .nav-inner>a:nth-child(5n+3),:root[data-layout="3"] .main-nav .nav-inner>.nav-group:nth-child(5n+3){transform:rotate(-2deg);border-radius:4px 24px 5px 24px!important}
 :root[data-layout="3"] .main-nav .nav-inner>a:nth-child(5n+4),:root[data-layout="3"] .main-nav .nav-inner>.nav-group:nth-child(5n+4){transform:rotate(2deg);border-radius:50% 10% 50% 10%!important}
 :root[data-layout="3"] .main-nav .nav-inner>a:nth-child(5n+5),:root[data-layout="3"] .main-nav .nav-inner>.nav-group:nth-child(5n+5){transform:rotate(-2deg);border-radius:2px 25px 2px 25px!important}
 :root[data-layout="3"] .main-nav .nav-inner .nav-group>a{align-self:center;display:flex;align-items:center;min-height:40px;line-height:1.5}
 :root[data-layout="4"] .main-nav .nav-inner>a,:root[data-layout="4"] .main-nav .nav-inner>.nav-group{border:1px solid var(--gold)!important;border-radius:0!important}
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>.nav-group>.submenu{transform:none;clip-path:none;z-index:200;min-width:220px;top:100%;right:0;border:1px solid var(--v17-line);box-shadow:0 16px 28px #0004}
 :root[data-layout="3"] .main-nav .nav-inner>.nav-group>.submenu{animation:none!important;translate:0 0}
 :root[data-layout="3"] .main-nav .nav-inner>.nav-group:nth-child(2n+1)>.submenu{translate:-10px 0}
 :root[data-layout="3"] .main-nav .nav-inner>.nav-group:hover{z-index:100}
}
/* Type and controls must remain legible without hover in the gold-on-dark theme. */
:root[data-palette="2"] .site-header .header-links>a,
:root[data-palette="2"] .site-header .customer-top-group>a,
:root[data-palette="2"] .site-header .main-nav .nav-inner>a,
:root[data-palette="2"] .site-header .main-nav .nav-group>a,
:root[data-palette="2"] .site-header .main-nav .nav-group>.submenu-toggle{color:#fff1cd!important}
:root[data-palette="2"] .site-header .main-nav .nav-inner>a.current,
:root[data-palette="2"] .site-header .main-nav .nav-group:hover{background:#48402e!important;color:#fff1cd!important}
/* Variation of floating icon glyphs is decorative; original aria-labels retained. */
:root[data-layout="2"] .floating-contact>* svg,
:root[data-layout="3"] .floating-contact>* svg,
:root[data-layout="4"] .floating-contact>* svg{display:none}
:root[data-layout="2"] .floating-contact>*:nth-child(1):before{content:"◎";font-size:27px}
:root[data-layout="2"] .floating-contact>*:nth-child(2):before{content:"☎";font-size:25px}
:root[data-layout="2"] .floating-contact>*:nth-child(3):before{content:"✦";font-size:26px}
:root[data-layout="3"] .floating-contact>*:nth-child(1):before{content:"◎";font-size:25px}
:root[data-layout="3"] .floating-contact>*:nth-child(2):before{content:"☎";font-size:24px}
:root[data-layout="3"] .floating-contact>*:nth-child(3):before{content:"✦";font-size:26px}
:root[data-layout="4"] .floating-contact>*:nth-child(1):before{content:"◎";font-size:22px}
:root[data-layout="4"] .floating-contact>*:nth-child(2):before{content:"☎";font-size:23px}
:root[data-layout="4"] .floating-contact>*:nth-child(3):before{content:"✧";font-size:24px}
/* Touch/mobile: no rotated hit zones, no offscreen floating tools. */
@media(max-width:1180px){
 :root[data-layout]:not([data-layout="0"]) .site-header .main-nav .nav-inner{border:none!important;box-shadow:none!important}
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>a,
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>.nav-group{transform:none!important;clip-path:none!important;border-radius:8px!important;min-height:44px}
 :root[data-layout]:not([data-layout="0"]) .main-nav .nav-inner>.nav-group>.submenu{transform:none!important;translate:0!important;animation:none!important;position:static;min-width:0;max-width:100%;width:100%;box-shadow:none}
 :root[data-layout="3"] .main-nav .nav-inner{display:block!important}
 :root[data-layout="3"] .search-panel{transform:none!important}
 :root[data-layout="2"] .search-panel{transform:none!important}
}
@media(max-width:740px){
 .search-panel .search-panel-top{display:flex;flex-direction:column;align-items:stretch}
 .search-panel .inventory-corner{width:100%!important;justify-content:stretch!important}
 .search-panel .inventory-corner>a{width:100%;justify-content:space-between}
 .search-panel .inventory-corner small{flex-basis:100%}
 :root[data-layout="2"] .floating-contact,:root[data-layout="3"] .floating-contact{bottom:12px;left:12px;flex-direction:row}
 :root[data-layout="2"] .support-panel,:root[data-layout="3"] .support-panel{left:12px;right:12px;bottom:72px}
 :root[data-layout="3"] .hero-copy{transform:none!important;padding:15px!important;border-width:2px}
 :root[data-layout="3"] .search-tabs a{transform:none!important;clip-path:none!important;min-height:42px;border-radius:12px!important}
 :root[data-layout="3"] .search-panel{border-radius:8px 30px!important}
 :root[data-layout="3"] .service-links>a{clip-path:none!important;transform:none!important;border-radius:12px!important}
 :root[data-layout="2"] .service-links>a{transform:none!important}
 :root[data-layout="3"] .property-card{transform:none!important;clip-path:none!important}
 .studio-shell{z-index:1010}
}
@media(prefers-reduced-motion:reduce){:root[data-layout]:not([data-layout="0"]) .hero-action,:root[data-layout]:not([data-layout="0"]) .office-view-all,:root[data-layout]:not([data-layout="0"]) .search-panel{transition:none!important;animation:none!important}}
/* High-contrast tabs in the crown palette: pale labels on pale controls are not allowed. */
:root[data-palette="2"] .search-panel .search-tabs a{background:#493e2c!important;color:#fff2d3!important;border:1px solid #c4a15d!important}
:root[data-palette="2"] .search-panel .search-tabs a:hover,
:root[data-palette="2"] .search-panel .search-tabs a:focus-visible{background:#e0b965!important;color:#241b12!important}
:root[data-palette="2"] .search-panel .search-panel-title{color:#fff0d0!important}
:root[data-palette="2"] .office-featured .arrow-link{background:#4b402e!important;color:#fff1d4!important;border-color:#bc9957!important}
:root[data-palette="2"] .service-intro-link{background:#4b402e!important;color:#fff1d4!important;border-color:#bc9957!important}
:root[data-palette="2"] .search-panel .inventory-corner small{color:#fff1d4!important}
/* In all themes keyboard users must see where the focus is. */
:root[data-palette]:not([data-palette="0"]) .search-panel a:focus-visible,
:root[data-palette]:not([data-palette="0"]) .main-nav a:focus-visible,
:root[data-palette]:not([data-palette="0"]) .floating-contact>*:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
/* Secondary pages: keep visual language across listings, gallery, property, construction and legal content. */
:root[data-layout="1"] body:not(.admin-body) :is(.filter-panel,.detail-box,.estate-panel,.gallery-category,.gallery-slider,.post-card,.article-toc,.page-heading,.support-panel){border-radius:0!important;border:1px solid var(--v17-line)}
:root[data-layout="1"] body:not(.admin-body) :is(.collection-buttons button,.phase-pills a,.gallery-controls button,.support-shortcuts button,.support-panel button){border-radius:0!important}
:root[data-layout="1"] body:not(.admin-body) .page-heading{border-block:2px double var(--gold);text-align:center;padding-block:30px}
:root[data-layout="1"] body:not(.admin-body) .contact-strip{border-block:3px double var(--gold)}
:root[data-layout="1"] body:not(.admin-body) .site-footer{border-top:4px double var(--gold)}
:root[data-layout="1"] body:not(.admin-body) .gallery-categories{gap:16px}
:root[data-layout="2"] body:not(.admin-body) :is(.filter-panel,.detail-box,.estate-panel,.gallery-category,.article-toc,.post-card){border-radius:25px 4px 30px 5px!important;border:1px solid var(--v17-line)}
:root[data-layout="2"] body:not(.admin-body) .gallery-category:nth-child(even){border-radius:5px 38px 5px 28px!important;transform:translateY(9px)}
:root[data-layout="2"] body:not(.admin-body) .page-heading{border-radius:4px 38px 4px 38px;background:color-mix(in srgb,var(--gold),transparent 90%);padding-inline:22px}
:root[data-layout="2"] body:not(.admin-body) :is(.collection-buttons button,.phase-pills a,.gallery-controls button,.support-shortcuts button){border-radius:20px 3px 24px 4px!important}
:root[data-layout="2"] body:not(.admin-body) .post-card:nth-child(even){transform:translateY(8px)}
:root[data-layout="2"] body:not(.admin-body) .contact-strip{border-radius:45px 0 45px 0}
:root[data-layout="2"] body:not(.admin-body) .site-footer{border-top:7px solid var(--gold)}
:root[data-layout="3"] body:not(.admin-body) .page-heading{border-inline-start:7px dashed var(--gold);transform:rotate(-.7deg);padding-inline:18px}
:root[data-layout="3"] body:not(.admin-body) .filter-panel{border-radius:40px 3px 32px 4px;border:2px dashed var(--gold)}
:root[data-layout="3"] body:not(.admin-body) .detail-box:nth-of-type(3n+1),
:root[data-layout="3"] body:not(.admin-body) .estate-panel:nth-of-type(3n+1){border-radius:45px 4px 30px 3px!important;border:2px dotted var(--gold)}
:root[data-layout="3"] body:not(.admin-body) .detail-box:nth-of-type(3n+2),
:root[data-layout="3"] body:not(.admin-body) .estate-panel:nth-of-type(3n+2){border-radius:3px 48px 4px 25px!important;border:2px dashed var(--v17-line)}
:root[data-layout="3"] body:not(.admin-body) .gallery-category:nth-child(4n+1){border-radius:48% 7px 26px 5px!important;transform:rotate(-1deg)}
:root[data-layout="3"] body:not(.admin-body) .gallery-category:nth-child(4n+2){border-radius:5px 40px 4px 30px!important;transform:rotate(.8deg)}
:root[data-layout="3"] body:not(.admin-body) .gallery-category:nth-child(4n+3){border-radius:30px 3px 50px 3px!important;transform:rotate(-1.1deg)}
:root[data-layout="3"] body:not(.admin-body) .gallery-category:nth-child(4n+4){border-radius:3px!important;transform:rotate(1.2deg)}
:root[data-layout="3"] body:not(.admin-body) .post-card:nth-child(3n+1){border-radius:30px 5px 25px 4px!important;transform:rotate(-1deg)}
:root[data-layout="3"] body:not(.admin-body) .post-card:nth-child(3n+2){border-radius:4px 45px 4px 35px!important;transform:rotate(.8deg)}
:root[data-layout="3"] body:not(.admin-body) .post-card:nth-child(3n+3){border-radius:4px!important;transform:rotate(-.7deg)}
:root[data-layout="3"] body:not(.admin-body) :is(.collection-buttons button,.phase-pills a,.support-shortcuts button):nth-child(3n+1){border-radius:50% 6% 40% 6%!important;transform:rotate(-3deg)}
:root[data-layout="3"] body:not(.admin-body) :is(.collection-buttons button,.phase-pills a,.support-shortcuts button):nth-child(3n+2){border-radius:3px 28px 4px 25px!important;transform:rotate(2deg)}
:root[data-layout="3"] body:not(.admin-body) :is(.collection-buttons button,.phase-pills a,.support-shortcuts button):nth-child(3n+3){clip-path:polygon(10% 0,100% 0,90% 100%,0 100%);border-radius:0!important}
:root[data-layout="3"] body:not(.admin-body) .contact-strip{border:3px dashed var(--gold);transform:skewY(.45deg)}
:root[data-layout="3"] body:not(.admin-body) .site-footer{border-top:7px dotted var(--gold)}
:root[data-layout="4"] body:not(.admin-body) :is(.filter-panel,.detail-box,.estate-panel,.gallery-category,.gallery-slider,.post-card,.article-toc,.page-heading,.support-panel){border-radius:0!important;border:1px solid var(--gold)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold),transparent 73%)}
:root[data-layout="4"] body:not(.admin-body) :is(.collection-buttons button,.phase-pills a,.gallery-controls button,.support-shortcuts button,.support-panel button){border-radius:0!important;border:1px solid var(--gold)}
:root[data-layout="4"] body:not(.admin-body) .page-heading{padding-block:30px;border-right:4px double var(--gold)!important;padding-right:24px}
:root[data-layout="4"] body:not(.admin-body) .contact-strip{border-block:4px double var(--gold)}
:root[data-layout="4"] body:not(.admin-body) .site-footer{border-top:6px double var(--gold)}
/* Normalize text against dark cards, including the gold/crown theme and non-hover state. */
:root[data-palette="2"] body:not(.admin-body) :is(.property-card,.detail-box,.filter-panel,.estate-panel,.post-card,.gallery-category,.support-panel){background:var(--v17-card)!important;color:var(--v17-card-text)!important}
:root[data-palette="2"] body:not(.admin-body) :is(.property-card,.detail-box,.filter-panel,.estate-panel,.post-card,.gallery-category,.support-panel) :is(h2,h3,strong,label,a){color:inherit}
:root[data-palette="2"] body:not(.admin-body) :is(.property-card,.detail-box,.filter-panel,.estate-panel,.post-card,.gallery-category,.support-panel) p{color:#e0d1b3!important}
:root[data-palette="2"] body:not(.admin-body) :is(.search-panel,.estate-panel,.filter-panel) :is(input,select,textarea){background:#3f3b33!important;color:#fff5db!important;border-color:#a58b5d!important}
:root[data-palette="2"] body:not(.admin-body) :is(.search-panel,.estate-panel,.filter-panel) input::placeholder{color:#cdbd9d!important}
:root[data-palette="2"] body:not(.admin-body) .services-band :is(h2,h3,p,a){color:#f4e6c8}
:root[data-palette="2"] body:not(.admin-body) .service-links>a{background:color-mix(in srgb,var(--gold),transparent 92%);border-color:var(--gold)}
/* The support panel moves with its trigger but remains inside viewable area on narrow screens. */
@media(max-width:740px){
 :root[data-layout="2"] body:not(.admin-body) .gallery-category:nth-child(n),
 :root[data-layout="3"] body:not(.admin-body) .gallery-category:nth-child(n),
 :root[data-layout="3"] body:not(.admin-body) .post-card:nth-child(n){transform:none!important}
 :root[data-layout="3"] body:not(.admin-body) .page-heading{transform:none!important}
 :root[data-layout]:not([data-layout="0"]) body:not(.admin-body) .site-footer{padding-bottom:110px}
}
