:root{--navy:#143747;--sea:#087e86;--sea-dark:#06636b;--paper:#fcfaf5;--linen:#f2ede3;--gold:#e4ae63}
body.travel-ui{background:var(--paper);color:var(--navy)}
.travel-ui .top{background:rgba(255,255,255,.97);z-index:40}
.travel-ui .top .shell{min-height:73px}
.travel-ui .top nav{gap:28px;align-items:center}
.travel-ui .top nav a{font-size:14px}
.travel-ui .top nav a.owner-link{background:var(--navy);color:#fff;padding:11px 20px;border-radius:9px;font-weight:750}
.travel-ui .top nav a.owner-link:hover{background:var(--sea-dark);color:#fff}
.travel-hero{min-height:595px;background:linear-gradient(90deg,rgba(9,30,40,.78) 0%,rgba(13,42,57,.42) 48%,rgba(13,42,57,.13) 100%),url('/assets/greek-island.jpg') center 47%/cover no-repeat;position:relative;display:flex;align-items:center;color:#fff}
.travel-hero .shell{padding:74px 0 125px;width:min(1260px,calc(100% - 50px))}
.travel-hero .eyebrow{color:#ffe2b3;letter-spacing:.23em;font-size:12px}
.travel-hero h1{font-size:clamp(45px,6vw,83px);line-height:1.05;letter-spacing:-.047em;max-width:740px;font-weight:830;text-wrap:balance}
.travel-hero p.hero-sub{font-size:20px;max-width:570px;line-height:1.6;color:#eef7f6;margin:25px 0}
.hero-search{position:relative;margin:-102px auto 0;width:min(1260px,calc(100% - 50px));background:#fff;border-radius:20px;box-shadow:0 22px 65px rgba(12,46,50,.16);z-index:4;padding:25px 27px}
.hero-search h2{font-size:22px;margin-bottom:16px;letter-spacing:-.035em}
.travel-ui .geo-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.travel-ui .geo-fields .field label{color:#385761}
.travel-ui .geo-fields select,.travel-ui .geo-fields input{min-height:54px;background:#fafbf9;border-color:#dae4de;font-size:14px}
.travel-ui .geo-actions{display:flex;gap:20px;align-items:center;margin-top:18px;flex-wrap:wrap}
.travel-ui .btn.main{background:var(--sea);border-color:var(--sea);padding:15px 30px;border-radius:12px}
.travel-ui .btn.main:hover{background:var(--sea-dark)}
.travel-ui #geo-notice{font-size:12px;color:#697e84;margin:12px 0 0}
.travel-explore{padding:70px 0 48px}
.travel-explore .eyebrow,.registry-view .eyebrow{color:var(--sea)}
.travel-explore .section-title{font-size:clamp(30px,3.5vw,49px);max-width:770px;margin-bottom:16px}
.travel-explore .section-sub{font-size:17px;color:#637780;max-width:735px;margin-bottom:27px}
.travel-tiles{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px}
.travel-tile{min-height:300px;border-radius:18px;position:relative;overflow:hidden;display:flex;align-items:end;text-decoration:none;background:#e3e7e0}
.travel-tile:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,34,43,.8),rgba(12,34,43,.05) 75%)}
.travel-tile.t1{background:linear-gradient(150deg,#538d99,#d1b38d)}
.travel-tile.t2{background:linear-gradient(145deg,#2d726e,#a5bc93)}
.travel-tile.t3{background:linear-gradient(155deg,#637c92,#d9c38f)}
.travel-tile .tile-content{position:relative;padding:26px;color:#fff}
.travel-tile .tile-content span{font-size:12px;letter-spacing:.1em;color:#f1dbb9}
.travel-tile .tile-content h3{font-size:26px;margin:6px 0 8px}
.travel-tile .tile-content p{color:#e1e9e7}
.travel-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:37px}
.travel-benefits article{border-top:2px solid #e2d3bd;padding-top:18px}
.travel-benefits h3{font-size:19px;margin-bottom:7px}
.travel-benefits p{color:#698089;font-size:14px;line-height:1.7}
.travel-footer{background:#173a43;color:#dae4e4;margin-top:45px;padding:28px 0;font-size:12px}
.registry-view .page-head{padding:42px 0;background:linear-gradient(110deg,#f4eee4,#edf5ef)}
.registry-view .page-head h1{font-size:clamp(33px,3.3vw,50px)}
.registry-view .geo-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
.registry-view .stay-meta{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:25px 0}
.registry-view #map{min-height:400px;border-radius:17px;border:1px solid #dae4de;background:#e7f0eb;overflow:hidden}
.registry-view .catalog-map-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.9fr);gap:24px}
.registry-view #results{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.registry-view #results .card{padding:15px;overflow:hidden}
.registry-view #results .card img{height:175px;object-fit:cover}
.registry-view .demo-copy{font-size:12px;color:#63777f;margin:10px 0}
.registry-view .map-fail{background:#f2f0e9;padding:16px;border-radius:12px}
@media(max-width:1020px){.travel-ui .geo-fields,.registry-view .geo-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.travel-tiles{grid-template-columns:1fr 1fr}.travel-tile.t3{grid-column:span 2}.registry-view .catalog-map-grid{grid-template-columns:1fr}}
@media(max-width:640px){.travel-ui .top nav{gap:10px}.travel-ui .top nav a{font-size:12px}.travel-ui .top nav a.owner-link{padding:9px 12px}.travel-hero{min-height:500px}.travel-hero .shell{padding:50px 0 140px}.travel-hero h1{font-size:44px}.hero-search{margin-top:-108px;width:calc(100% - 24px);padding:18px}.travel-ui .geo-fields,.registry-view .geo-fields{grid-template-columns:1fr}.travel-tiles,.travel-benefits{grid-template-columns:1fr}.travel-tile,.travel-tile.t3{grid-column:auto;min-height:220px}.registry-view #results{grid-template-columns:1fr}.registry-view .catalog-map-grid{display:block}.registry-view #map{height:300px;margin-top:20px}}
