/* P04 / LOCKED DESIGN 2026-10-25. Reference panels in approved_references/01..08.
   Desktops first. No fictional inventory/contacts/agents. */
:root{--locked-ink:#171b1e;--locked-bronze:#ad906e;--locked-paper:#fbfaf6;--locked-muted:#7b756d;--locked-serif:Georgia,'Times New Roman',serif}
body{background:var(--locked-paper);color:#262723} body[data-locale="ka"]{font-family:Arial,'Noto Sans Georgian',sans-serif}
.site-header{min-height:80px}.header-inner{max-width:1680px}.primary-nav{gap:clamp(12px,1.25vw,21px)}.primary-nav a{font-size:12px}.header-actions{gap:15px}.header-actions .button{padding-inline:15px}.brand>span{font-size:27px}
.p04-home .site-header,.p04-about .site-header{position:absolute;left:0;right:0;top:0;z-index:20;background:transparent;border-bottom:1px solid #ffffff31;color:white}
.p04-home .site-header .button-dark,.p04-about .site-header .button-dark{background:#16191c;border:1px solid #ffffff60}
.p04-home .site-header .brand,.p04-about .site-header .brand{color:#fff}.p04-home .site-header .primary-nav a,.p04-about .site-header .primary-nav a{color:#fff}
.p04-home .site-header .language-switcher a,.p04-about .site-header .language-switcher a{color:#eee}
.p04-home .site-header .utility-link,.p04-about .site-header .utility-link{color:#fff}
.locked-kicker{display:block;font:600 10px/1.4 'Segoe UI',Arial,sans-serif;letter-spacing:3.2px;text-transform:uppercase;color:var(--locked-bronze);margin-bottom:22px}
.locked-home-hero{position:relative;min-height:730px;height:min(860px,96vh);background:linear-gradient(110deg,#0c1928,#263443 75%,#61574f);overflow:hidden;color:#fff}
.locked-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.locked-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,13,24,.84),rgba(4,14,24,.45) 55%,rgba(2,10,15,.10) 100%),linear-gradient(0deg,rgba(5,17,28,.74),transparent 34%)}
.locked-hero-copy{position:relative;z-index:2;padding-top:clamp(200px,29vh,290px);padding-bottom:165px}.locked-hero-copy .locked-kicker,.locked-about-copy .locked-kicker,.locked-cta .locked-kicker{color:#e5d9c6}
.locked-hero-copy h1{font:400 clamp(53px,5.1vw,85px)/1.04 var(--locked-serif);letter-spacing:-2px;max-width:830px;margin:0 0 25px}
.locked-hero-copy p{font:16px/1.6 'Segoe UI',Arial,sans-serif;max-width:550px;color:#f0eae1;margin:0}
.locked-hero-search{position:absolute;z-index:3;bottom:74px;left:max(56px,calc((100% - 1420px)/2));width:min(990px,calc(100% - 112px));height:69px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 210px;background:#fefcf8;color:#272723}
.locked-hero-search label{display:flex;flex-direction:column;gap:4px;padding:11px 17px;border-right:1px solid #dfd9ce;min-width:0}.locked-hero-search label span{font-size:10px;color:#756f64}
.locked-hero-search input,.locked-hero-search select{width:100%;border:0;background:transparent;min-width:0;min-height:26px;font:16px var(--locked-serif);color:#232322;outline:none}
.locked-hero-search button{background:#161b1e;border:0;color:#fff;font:12px Arial,sans-serif}.locked-hero-search button:hover{background:#394048}
.locked-section{padding-top:86px;padding-bottom:95px}.locked-section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:35px}.locked-section-heading h2{font:400 clamp(38px,3.6vw,55px)/1.06 var(--locked-serif);letter-spacing:-1px;max-width:560px}.locked-text-link{font:14px var(--locked-serif);border-bottom:1px solid var(--locked-bronze);padding-bottom:8px;color:#6e5d4c;white-space:nowrap}
.locked-listing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:27px}.locked-listing-grid .property-card-photo{aspect-ratio:1.73}
.locked-editorial-categories,.locked-journal-promo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.locked-editorial-categories a{position:relative;display:block;min-height:270px;overflow:hidden;background:#151a1b}.locked-editorial-categories img{width:100%;height:270px;object-fit:cover}.locked-editorial-categories a:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#091116b8)}.locked-editorial-categories span{position:absolute;left:22px;bottom:20px;z-index:2;font:25px var(--locked-serif);color:#fff}
.locked-services-rail{background:#f0ebe3}.locked-services-row{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:25px;padding-block:70px}.locked-services-row h2{font:42px/1.1 var(--locked-serif)}.locked-services-row>a{padding:6px 10px 6px 23px;border-left:1px solid #d2c7b7}.locked-services-row>a span{font:11px Arial,sans-serif;color:#ad906e}.locked-services-row>a h3{font:23px var(--locked-serif);margin:10px 0}.locked-services-row>a p{font:13px/1.55 Arial,sans-serif;color:#66635c}
.locked-journal-promo>a{display:block;min-height:250px;overflow:hidden}.locked-journal-promo img{width:100%;height:250px;object-fit:cover;transition:transform .4s}.locked-journal-promo a:hover img{transform:scale(1.035)}
.locked-cta{position:relative;color:#fff;min-height:210px;background:#14202a var(--locked-cta-image) center/cover}.locked-cta:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#08111bcf,#0a121b9c)}.locked-cta-row{position:relative;min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:30px}.locked-cta h2{font:clamp(30px,3vw,45px)/1.14 var(--locked-serif);font-weight:400;max-width:650px}
.locked-catalog-banner{height:280px;background:#eee9e2;position:relative;overflow:hidden}.locked-catalog-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}.locked-catalog-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#faf8f6ef,#f5f2eacf 41%,#ffffff0d 75%)}.locked-catalog-banner>.container{position:relative;z-index:1;padding-top:66px}.locked-catalog-banner h1{font:400 clamp(44px,4.1vw,62px)/1.04 var(--locked-serif);max-width:620px}.locked-catalog-banner p{max-width:550px;color:#45433e}
.locked-catalog-main{padding-top:25px;padding-bottom:110px}.locked-catalog-filters{display:grid;grid-template-columns:1.3fr 1fr .85fr .85fr .75fr 1.1fr auto auto;gap:12px;align-items:end;border-bottom:1px solid #e6e0d7;padding-bottom:28px}.locked-catalog-filters label{font-size:10px;color:#72685c;display:flex;flex-direction:column;gap:7px}.locked-catalog-filters input,.locked-catalog-filters select{height:41px;width:100%;min-width:0;border:1px solid #e0dad0;background:#fffdf9;padding:8px;font:13px Arial,sans-serif}.locked-catalog-filters .button{min-height:41px;padding:9px 13px;font-size:11px}.locked-catalog-filters .locked-text-link{align-self:center;font-size:12px}.locked-results-top{display:flex;justify-content:space-between;align-items:center;margin:40px 0 28px}.locked-results-top h2{font:40px var(--locked-serif)}.locked-results-top span{color:#777;font-size:13px}
.locked-catalog-empty{padding:45px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.locked-catalog-empty h3{font:28px var(--locked-serif);max-width:700px}
.locked-detail{padding-top:36px;padding-bottom:70px}.locked-detail-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:repeat(3,150px);gap:8px;margin-bottom:38px}.locked-detail-photo{display:block;overflow:hidden;background:#ede9e3}.locked-detail-photo:first-child{grid-row:1/span 3}.locked-detail-photo:nth-child(n+5){display:none}.locked-detail-gallery img{width:100%;height:100%;object-fit:cover}.locked-detail-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:55px}.locked-detail-main h1{font:clamp(39px,3.7vw,58px)/1.07 var(--locked-serif);max-width:900px;margin:0 0 15px}.locked-location{font:14px Arial;color:#786f62}.locked-detail-facts{display:flex;flex-wrap:wrap;gap:20px;border-block:1px solid #e4ddd2;padding:23px 0;margin:35px 0}.locked-detail-facts>div{display:flex;flex-direction:column;gap:4px;padding-right:20px;border-right:1px solid #ddd}.locked-detail-facts strong{font:25px var(--locked-serif)}.locked-detail-facts span{font-size:11px;color:#777}.locked-detail-main h2{font:35px var(--locked-serif);margin-top:35px}.locked-prose{font:17px/1.65 var(--locked-serif);color:#595753}.locked-detail-aside{position:sticky;top:20px;align-self:start;background:#f4f1ec;padding:30px;display:flex;flex-direction:column;gap:12px}.locked-price{font:36px var(--locked-serif);margin-bottom:12px}.locked-button-outline{border-color:#272521;color:#272521}.locked-action{border:1px solid #dad5cb;padding:13px;background:white;text-align:left}.locked-reference{font:11px Arial;color:#858079}
.locked-about-hero{position:relative;min-height:640px;background:#141d26;color:white}.locked-about-copy{position:relative;z-index:2;padding-top:230px;padding-bottom:125px}.locked-about-copy h1{font:400 clamp(54px,5.4vw,80px)/1.05 var(--locked-serif);max-width:830px;letter-spacing:-2px}.locked-about-copy p{font:17px/1.6 Arial,sans-serif;max-width:580px;color:#f0ebe7}.locked-about-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px}.locked-about-intro h2{font:clamp(38px,3.5vw,55px)/1.1 var(--locked-serif)}.locked-about-intro p{font:19px/1.6 var(--locked-serif);color:#66625d}.locked-about-editorial{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-bottom:95px}.locked-about-photo img{width:100%;height:450px;object-fit:cover}.locked-about-editorial h2{font:46px/1.1 var(--locked-serif)}.locked-about-editorial p{font:18px/1.6 var(--locked-serif);color:#6c665f}.locked-services-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.locked-services-gallery>a{display:block;background:#fcfaf7;border:1px solid #e9e4db;padding-bottom:24px;position:relative}.locked-services-gallery img{width:100%;height:185px;object-fit:cover}.locked-services-gallery h3,.locked-services-gallery h2{font:25px/1.1 var(--locked-serif);margin:23px 18px 9px}.locked-services-gallery p{font:13px/1.5 Arial,sans-serif;color:#787168;margin:0 18px}.locked-services-gallery a>span{position:absolute;right:16px;bottom:16px}.locked-team{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.locked-team img{aspect-ratio:4/5;width:100%;object-fit:cover}.locked-team h3{font:25px var(--locked-serif)}.locked-services-heading h1,.locked-journal-page h1,.locked-contact h1{font:clamp(45px,4.8vw,71px)/1.07 var(--locked-serif);max-width:850px;margin:0}.locked-service-page{padding-bottom:110px}.locked-service-page img{height:270px}
.locked-journal-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:42px}.locked-journal-article:first-child{grid-column:span 3}.locked-journal-article:first-child .locked-journal-photo img{height:390px}.locked-journal-photo{background:#f0ece5;overflow:hidden}.locked-journal-photo img{width:100%;height:230px;object-fit:cover}.locked-journal-article h2{font:27px var(--locked-serif);padding-top:18px}.locked-journal-article p{color:#8e816f;font-size:12px}.locked-journal-empty{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:40px;align-items:center}.locked-journal-empty .locked-journal-photo img{height:360px}.locked-journal-empty h2{font:40px var(--locked-serif)}
.locked-contact{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.locked-contact>div:first-child>p{font:18px var(--locked-serif);color:#666}.locked-contact-methods{display:flex;flex-direction:column;gap:18px;margin-top:35px;font:18px var(--locked-serif)}.locked-contact-image img{width:100%;height:430px;object-fit:cover}.locked-contact-form .form-section{background:#f3eee7}
.locked-secondary-hero{color:white;min-height:420px;background:#131f27;position:relative;display:flex;align-items:center;isolation:isolate}.locked-secondary-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09121be0,#15232b44),var(--locked-section-bg) center/cover}.locked-secondary-hero .container{padding:95px 0}.locked-secondary-hero h1{font:clamp(46px,5vw,75px)/1.06 var(--locked-serif);max-width:830px}.locked-secondary-hero p{font:16px/1.6 Arial;max-width:620px}.locked-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:36px}.locked-steps article{border-top:1px solid #cfbeac;padding-top:20px}.locked-steps span{color:var(--locked-bronze)}.locked-steps h3{font:29px var(--locked-serif)}.locked-steps p{color:#76716a}
@media(max-width:1400px){.locked-catalog-filters{grid-template-columns:repeat(4,1fr)}.locked-services-gallery{grid-template-columns:repeat(2,1fr)}.locked-hero-search{left:56px}.locked-hero-copy h1{max-width:760px}.primary-nav{gap:10px}.primary-nav a{font-size:11px}}
@media(max-width:1100px){.locked-services-row{grid-template-columns:1fr 1fr}.locked-detail-body{grid-template-columns:1fr 280px;gap:22px}.locked-hero-search{grid-template-columns:repeat(3,1fr) 160px}.locked-home-hero{height:740px}}
/* This release is desktop first. Preserve basic smaller-screen usability; mobile refinement is a separate milestone. */
@media(max-width:970px){.p04-home .site-header,.p04-about .site-header{position:relative;background:#fdfbf8;color:#242520}.p04-home .site-header .brand,.p04-about .site-header .brand{color:#242520}.p04-home .mobile-toggle span,.p04-about .mobile-toggle span{background:#222}.locked-hero-copy{padding-top:130px}.locked-hero-search{left:20px;right:20px;width:auto}.locked-detail-body,.locked-about-intro,.locked-about-editorial,.locked-contact{grid-template-columns:1fr}.locked-hero-copy h1{font-size:51px}}
@media(max-width:650px){.locked-home-hero{min-height:700px}.locked-hero-copy{padding-bottom:260px}.locked-hero-copy h1{font-size:clamp(38px,9vw,52px)}.locked-hero-search{grid-template-columns:1fr 1fr;height:auto;bottom:20px}.locked-hero-search button{grid-column:span 2;min-height:50px}.locked-editorial-categories,.locked-journal-promo,.locked-listing-grid,.locked-services-gallery,.locked-steps,.locked-journal-articles{grid-template-columns:1fr}.locked-journal-article:first-child{grid-column:span 1}.locked-section-heading,.locked-cta-row{display:block}.locked-services-row{grid-template-columns:1fr}.locked-detail-gallery{grid-template-rows:repeat(3,95px)}.locked-detail-aside{position:static}.locked-catalog-filters{grid-template-columns:1fr 1fr}.locked-about-copy{padding:100px 0}.locked-about-copy h1{font-size:42px}}

/* P04 HOME DESKTOP 0.4.1: exact-layout pass, no placeholder banners with painted UI. */
@media (min-width: 1101px) {
  .p04-home .locked-home-hero{min-height:620px;height:min(740px,85vh)}
  .p04-home .locked-hero-copy{padding-top:clamp(205px,23vh,245px);padding-bottom:138px}
  .p04-home .locked-hero-copy h1{font-size:clamp(48px,4.1vw,70px);line-height:1.055;max-width:790px;letter-spacing:-1.4px;margin-bottom:25px}
  .p04-home .locked-hero-copy p{font-size:15px;line-height:1.6;max-width:565px}
  .p04-home .locked-hero-search{bottom:42px}
}
.p04-home .locked-hero-overlay{background:linear-gradient(90deg,rgba(4,14,21,.79),rgba(5,15,22,.49) 48%,rgba(4,12,17,.11) 100%),linear-gradient(0deg,rgba(5,17,24,.58),transparent 36%)}
.p04-home .locked-featured.locked-section{padding-top:68px;padding-bottom:78px}
.p04-home .locked-featured .locked-section-heading h2{max-width:600px;font-size:clamp(40px,3.4vw,52px)}
.p04-home .locked-editorial-categories a{min-height:300px;background:#181c1c;transition:filter .2s}
.p04-home .locked-editorial-categories img{height:300px;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.p04-home .locked-editorial-categories a:hover img{transform:scale(1.045)}
.p04-home .locked-editorial-categories a:after{inset:36% 0 0;background:linear-gradient(transparent,#0c1316c9)}
.p04-home .locked-editorial-categories span{font-size:clamp(24px,2.3vw,32px);bottom:22px;left:24px;right:24px;display:flex;align-items:end;justify-content:space-between;gap:6px}
.p04-home .locked-editorial-categories span b{font:400 19px Arial,sans-serif}
.p04-home .locked-services-rail{background:#f4f0ea}
.p04-home .locked-services-row{grid-template-columns:1.12fr repeat(4,minmax(0,1fr));gap:17px;padding-block:65px}
.p04-home .locked-services-heading{padding-right:18px}
.p04-home .locked-services-row h2{font:400 clamp(31px,2.7vw,39px)/1.12 var(--locked-serif);margin:0 0 26px}
.p04-home .locked-services-row>a{padding:0 0 10px;border-left:0;min-width:0;display:block;border-bottom:1px solid #d3c9ba}
.p04-home .locked-services-row>a img{height:135px;object-fit:cover;width:100%;display:block;margin-bottom:14px}
.p04-home .locked-services-row>a span{font:11px Arial,sans-serif;color:#9e8769;letter-spacing:1px}
.p04-home .locked-services-row>a h3{font:400 clamp(19px,1.4vw,23px)/1.1 var(--locked-serif);margin:7px 0 10px}
.p04-home .locked-services-row>a p{font:12px/1.55 'Segoe UI',Arial,sans-serif;color:#696560;margin:0}
.p04-home .locked-journal-home.locked-section{padding-top:75px;padding-bottom:87px}
.p04-home .locked-journal-promo{grid-template-columns:1.35fr 1fr 1fr;gap:18px}
.p04-home .locked-journal-promo>a{position:relative;min-height:290px;background:#1b2629;overflow:hidden}
.p04-home .locked-journal-promo img{height:290px;width:100%;object-fit:cover}
.p04-home .locked-journal-promo>a:after{content:'';position:absolute;inset:27% 0 0;background:linear-gradient(transparent,rgba(3,10,15,.78));pointer-events:none}
.p04-home .locked-journal-promo a>span,.p04-home .locked-journal-promo a>strong{position:absolute;z-index:2;left:22px;right:18px;color:#fff}
.p04-home .locked-journal-promo a>span{bottom:92px;letter-spacing:2px;font:600 10px 'Segoe UI',Arial,sans-serif;text-transform:uppercase;color:#eee0d3}
.p04-home .locked-journal-promo a>strong{bottom:20px;font:400 clamp(21px,2vw,29px)/1.11 var(--locked-serif);max-width:380px}
.p04-home .locked-cta{min-height:205px;background-position:center center}
.p04-home .locked-cta-row{min-height:205px}
.p04-home .locked-cta:before{background:linear-gradient(90deg,rgba(4,11,17,.86),rgba(4,11,17,.48) 72%,rgba(4,11,17,.55))}
.p04-home .locked-cta h2{font-size:clamp(29px,2.8vw,43px);max-width:650px}
@media(min-width:970px) and (max-width:1350px){
 .p04-home .locked-services-row{grid-template-columns:repeat(4,minmax(0,1fr))}
 .p04-home .locked-services-heading{grid-column:1/-1}
}
@media(max-width:970px){
 .p04-home .locked-services-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .p04-home .locked-services-heading{grid-column:1/-1}
 .p04-home .locked-journal-promo{grid-template-columns:1fr 1fr}
 .p04-home .locked-journal-promo a:first-child{grid-column:span 2}
}
@media(max-width:650px){
 .p04-home .locked-services-row,.p04-home .locked-journal-promo{grid-template-columns:1fr}
 .p04-home .locked-journal-promo a:first-child{grid-column:auto}
}

/* P04 v0.4.6 gallery: preserve approved locked mosaic; add every-photo access */
.p04-gallery-strip{display:flex;gap:7px;overflow-x:auto;padding:10px 1px 18px;scrollbar-width:thin;margin-top:-28px;margin-bottom:26px}
.p04-gallery-thumb{height:85px;min-width:126px;max-width:126px;position:relative;display:block;flex-shrink:0;overflow:hidden;background:#efede9;border:2px solid transparent}
.p04-gallery-thumb.is-cover{border-color:#b59673}
.p04-gallery-thumb img{width:100%;height:100%;object-fit:cover}
.p04-gallery-thumb span{position:absolute;bottom:4px;right:5px;background:rgba(0,0,0,.58);color:#fff;padding:2px 6px;font:11px Arial}
.p04-gallery-dialog{width:min(1150px,95vw);max-height:96vh;padding:0;background:#171715;color:white;border:0;box-shadow:0 20px 90px #0007}
.p04-gallery-dialog::backdrop{background:rgba(0,0,0,.88)}
.p04-gallery-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 20px;font:12px Arial;letter-spacing:1px}
.p04-gallery-close{background:transparent;border:0;color:white;font:34px Arial;cursor:pointer;padding:0 10px}
.p04-gallery-stage{display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center;min-height:250px}
.p04-gallery-stage img{width:100%;max-height:75vh;object-fit:contain}
.p04-gallery-stage button{background:transparent;border:0;color:white;font:45px Georgia;cursor:pointer}
.p04-gallery-caption{text-align:center;font:14px Arial;color:#d4cec5;margin:8px 18px 22px}
@media(max-width:650px){.p04-gallery-thumb{min-width:86px;max-width:86px;height:62px}.p04-gallery-stage{grid-template-columns:36px minmax(0,1fr) 36px}.p04-gallery-strip{margin-top:-26px}}
