:root{--city-navy:#0d1328;--city-panel:#10162c;--city-cream:#f6f3e9;--city-gold:#d6ad37;--city-line:rgba(214,173,55,.28);--city-muted:rgba(246,243,233,.64)}
*{box-sizing:border-box}
body.city-designer{margin:0;background:#090e20;color:var(--city-cream);font-family:Poppins,Arial,sans-serif;overflow-x:hidden}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.city-head{position:sticky;top:0;z-index:100;display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr);align-items:center;gap:24px;height:72px;padding:0 28px;border-bottom:1px solid rgba(214,173,55,.18);background:rgba(9,14,32,.96);backdrop-filter:blur(16px)}
.city-brand{justify-self:start;min-width:0;margin-left:50px}.city-brand img{display:block;width:152px;height:42px;object-fit:contain}
.city-head-copy{display:flex;align-items:baseline;justify-content:center;gap:10px}.city-head-copy span{color:var(--city-gold);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase}.city-head-copy strong{font-family:"Cormorant Garamond",serif;font-size:1.18rem;font-weight:500}
.city-head-actions{display:flex;align-items:center;justify-self:end;gap:12px;white-space:nowrap}.city-head-actions>a{color:var(--city-cream);font-size:.78rem;text-decoration:none}.city-cart{position:relative;display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid rgba(246,243,233,.36);border-radius:50%}.city-cart>b{position:absolute;right:-5px;top:-6px;display:none;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--city-gold);color:var(--city-navy);font-size:.62rem;line-height:18px;text-align:center}
.city-cart>svg{display:block;width:22px;height:22px}
body.city-designer.neb-language-inline .city-head .neb-language-toggle{position:static;top:auto;right:auto;flex:0 0 auto;margin:0;transform:none}
.city-layout{display:grid;grid-template-columns:minmax(410px,46%) minmax(480px,54%);min-height:calc(100vh - 72px)}
.city-panel{height:calc(100vh - 72px);overflow-y:auto;padding:34px;background:var(--city-panel);border-right:1px solid rgba(214,173,55,.16)}
.city-intro{margin-bottom:28px}.city-kicker{display:block;margin-bottom:9px;color:var(--city-gold);font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.city-intro h1{margin:0 0 8px;font-family:"Cormorant Garamond",serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:500;line-height:.98}.city-intro h1 em{color:var(--city-gold);font-weight:500}.city-intro p{max-width:660px;margin:0;color:var(--city-muted);font-size:.79rem;line-height:1.65}
.city-control{padding:23px 0;border-top:1px solid rgba(214,173,55,.16)}.city-control h2{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-family:"Cormorant Garamond",serif;font-size:1.34rem;font-weight:500}.city-control h2>span{display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(214,173,55,.48);border-radius:50%;color:var(--city-gold);font-family:Poppins,sans-serif;font-size:.65rem}
.city-product-types{display:grid;grid-template-columns:1fr 1fr;gap:9px}.city-product-types button{min-height:76px;padding:13px 10px;border:1px solid var(--city-line);border-radius:13px;background:#0b1125;color:var(--city-cream)}.city-product-types strong,.city-product-types small{display:block}.city-product-types strong{font-size:.84rem}.city-product-types small{margin-top:4px;color:var(--city-muted);font-size:.61rem;line-height:1.35}.city-product-types button.selected{border-color:var(--city-gold);background:var(--city-gold);color:var(--city-navy)}.city-product-types button.selected small{color:rgba(13,19,40,.72)}
.city-search label,.city-fields label,.city-label{display:block;margin:11px 0 7px;color:var(--city-muted);font-size:.7rem}.city-search label:first-child{margin-top:0}.city-search-row{display:grid;grid-template-columns:1fr auto;gap:8px}.city-search .city-search-scope{display:block}.city-search select{width:100%;height:42px;padding:0 34px 0 12px;border:1px solid var(--city-line);border-radius:10px;outline:0;background:#0b1125;color:var(--city-cream)}.city-search input,.city-fields input,.city-fields textarea{width:100%;border:1px solid var(--city-line);border-radius:11px;outline:0;background:#0b1125;color:var(--city-cream)}.city-search input{height:46px;padding:0 13px}.city-search input:disabled,.city-search button:disabled{cursor:not-allowed;opacity:.46}.city-search button{padding:0 18px;border:0;border-radius:11px;background:var(--city-gold);color:var(--city-navy);font-weight:600}.city-search input:focus,.city-search select:focus,.city-fields input:focus,.city-fields textarea:focus{border-color:var(--city-gold);box-shadow:0 0 0 2px rgba(214,173,55,.13)}
.city-results{display:grid;gap:6px;margin-top:8px}.city-results.suggestions{max-height:280px;padding:6px;overflow-y:auto;border:1px solid rgba(214,173,55,.34);border-radius:12px;background:#080e21;box-shadow:0 14px 32px rgba(0,0,0,.28)}.city-locality-results.suggestions{max-height:210px}.city-results .city-result{padding:10px 12px;border:1px solid rgba(214,173,55,.22);border-radius:10px;background:#0b1125;color:var(--city-cream);font-size:.72rem;line-height:1.4;text-align:left}.city-results .city-result:hover,.city-results .city-result:focus-visible{border-color:var(--city-gold);outline:0;background:#111a35}.city-results .city-result small{display:block;margin-top:4px;color:var(--city-muted);font-size:.59rem}.city-results .message{padding:9px 2px;color:var(--city-muted);font-size:.69rem}.city-results.suggestions .message{padding:5px 7px}.city-location-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:11px 12px;border-radius:10px;background:rgba(214,173,55,.08)}.city-location-summary strong{font-size:.74rem}.city-location-summary span{color:var(--city-muted);font-size:.62rem;white-space:nowrap}.city-map-tools{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin-top:10px}.city-map-tools button{height:36px;border:1px solid var(--city-line);border-radius:9px;background:#0b1125;color:var(--city-cream);font-size:1.1rem}.city-map-tools span{color:var(--city-muted);font-size:.64rem;text-align:center}.city-marker-controls{margin-top:12px;padding:12px;border:1px solid rgba(214,173,55,.18);border-radius:11px;background:rgba(214,173,55,.055)}.city-marker-controls>label{display:block;margin-bottom:8px;color:var(--city-muted);font-size:.7rem}.city-marker-controls>div{display:grid;grid-template-columns:1fr auto;gap:8px}.city-marker-controls select{height:40px;padding:0 34px 0 11px;border:1px solid var(--city-line);border-radius:9px;outline:0;background:#0b1125;color:var(--city-cream)}.city-marker-color{display:flex;min-width:92px;height:40px;align-items:center;gap:7px;padding:0 8px;border:1px solid var(--city-line);border-radius:9px;color:var(--city-muted);font-size:.62rem}.city-marker-color input{width:28px;height:28px;padding:0;border:0;border-radius:6px;background:transparent}.city-marker-color.disabled{opacity:.42}.city-marker-controls small{display:block;margin-top:7px;color:rgba(246,243,233,.44);font-size:.58rem;line-height:1.45}.city-policy-note{margin:9px 0 0;color:rgba(246,243,233,.42);font-size:.59rem;line-height:1.5}
.city-styles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.city-styles button{padding:8px 5px;border:1px solid var(--city-line);border-radius:11px;background:#0b1125;color:var(--city-cream);font-size:.65rem}.city-styles i{display:block;width:100%;height:36px;margin-bottom:6px;border-radius:7px;background:linear-gradient(135deg,#050914,#24324d)}.city-styles button[data-style="ivory"] i{background:linear-gradient(135deg,#efe8d6,#b6aa91)}.city-styles button[data-style="mono"] i{background:linear-gradient(135deg,#fff,#777)}.city-styles button[data-style="blue"] i{background:linear-gradient(135deg,#06152e,#1f6d91)}.city-styles button[data-style="circle"] i{background:radial-gradient(circle at 50% 45%,#d5e2e3 0 38%,#282828 39% 40%,#f7f6f1 41%)}.city-styles button[data-style="band"] i{background:linear-gradient(to bottom,#d7d7d3 0 20%,#fff 20% 52%,#bdbdb9 52%)}.city-styles button.selected{border-color:var(--city-gold);box-shadow:0 0 0 1px var(--city-gold)}
.city-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.city-fields label:last-child{grid-column:1/-1}.city-fields input{height:43px;padding:0 12px}.city-fields textarea{padding:10px 12px;resize:vertical}.city-fields label{margin:0}
.city-sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:16px}.city-sizes button,.city-frames button{min-height:39px;border:1px solid var(--city-line);border-radius:9px;background:#0b1125;color:var(--city-cream);font-size:.67rem}.city-sizes button.selected,.city-frames button.selected{border-color:var(--city-gold);background:rgba(214,173,55,.12)}.city-frames{display:grid;grid-template-columns:1fr 1fr;gap:8px}.city-frames button{display:flex;align-items:center;justify-content:center;gap:8px}.city-frames i{display:block;width:16px;height:16px;border:3px solid #050505;background:#eee}.city-frames button[data-frame="white"] i{border-color:#eee;background:#444}
.city-access-controls{margin-top:16px}.city-access-controls[hidden]{display:none}.city-access-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.city-access-options button{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:3px 9px;min-height:62px;padding:9px 10px;border:1px solid var(--city-line);border-radius:10px;background:#0b1125;color:var(--city-cream);font-family:inherit;text-align:left}.city-access-options button>span{display:flex;grid-row:1/3;width:32px;height:32px;align-items:center;justify-content:center;border:1px solid rgba(214,173,55,.48);border-radius:50%;color:var(--city-gold);font-weight:700}.city-access-options button>span.nfc{font-size:.62rem;letter-spacing:-.06em}.city-access-options strong{font-size:.67rem}.city-access-options small{color:var(--city-muted);font-size:.57rem}.city-access-options button.selected{border-color:var(--city-gold);background:linear-gradient(135deg,#dfb934,#cda73d);color:var(--city-navy);box-shadow:0 0 0 1px var(--city-gold)}.city-access-options button.selected>span{border-color:var(--city-navy);background:var(--city-navy);color:var(--city-gold)}.city-access-options button.selected small{color:rgba(10,17,37,.7)}.city-nfc-detail{margin-top:9px;padding:11px 12px;border-radius:10px;background:#f7f5ef;color:#11182d}.city-nfc-detail[hidden]{display:none}.city-nfc-detail strong{display:block;font-size:.69rem}.city-nfc-detail p{margin:4px 0 8px;color:#596171;font-size:.58rem;line-height:1.45}.city-nfc-detail a{color:#11182d;font-size:.61rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--city-gold)}
.city-buybar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:10px 0 0;padding:18px 0 0;border-top:1px solid rgba(214,173,55,.2)}.city-buybar span,.city-buybar strong{display:block}.city-buybar span{color:var(--city-muted);font-size:.62rem}.city-buybar strong{font-size:1.02rem}.city-buybar button{padding:13px 21px;border:0;border-radius:999px;background:var(--city-gold);color:var(--city-navy);font-weight:600}.city-status{min-height:18px;margin:10px 0 0;color:var(--city-gold);font-size:.7rem}.city-status.error{color:#ffa8a8}
.city-preview{position:sticky;top:72px;display:flex;height:calc(100vh - 72px);min-height:660px;align-items:center;justify-content:center;flex-direction:column;padding:54px 40px;background:radial-gradient(circle at 50% 25%,#f8f5ed,#dfdbd1 70%,#d0cbc1)}.city-preview-head{position:absolute;left:34px;right:34px;top:22px;display:flex;justify-content:space-between;color:#4e5360}.city-preview-head span{font-family:"Cormorant Garamond",serif;font-size:1.05rem}.city-preview-head small{font-size:.64rem}
.city-frame-shell{width:min(52vh,430px);padding:12px;background:#0b0b0b;box-shadow:0 24px 60px rgba(25,24,20,.28),0 0 0 1px rgba(0,0,0,.25)}.city-frame-shell.white{background:#f8f7f2;box-shadow:0 24px 60px rgba(25,24,20,.2),0 0 0 1px rgba(0,0,0,.13)}.city-poster{--paper:#0d1426;--ink:#f7f2e7;--accent:#d8b95d;position:relative;aspect-ratio:2/3;overflow:hidden;background:var(--paper);color:var(--ink)}.city-poster-copy{position:absolute;left:0;right:0;z-index:6;text-align:center;pointer-events:none}.city-poster-copy.top{top:5.5%}.city-poster-copy.top>span{font:500 clamp(.42rem,1vh,.62rem)/1.2 Montserrat,sans-serif;letter-spacing:.3em}.city-poster-copy h2{margin:.9% 0 0;font-family:"Cormorant Garamond",serif;font-size:clamp(1.8rem,5.4vh,3.1rem);font-weight:500;letter-spacing:.08em;line-height:.9}.city-poster-copy.top small{font:400 clamp(.4rem,.82vh,.58rem)/1 Montserrat,sans-serif;letter-spacing:.38em;opacity:.68}.city-map{position:absolute!important;left:5.5%;right:5.5%;top:25%;height:43%;z-index:2;background:#111827}.city-map .leaflet-control-attribution{max-width:86%;padding:1px 3px!important;background:rgba(255,255,255,.76)!important;color:#222!important;font:7px/1.2 Arial,sans-serif!important}.city-map .leaflet-control-attribution a{color:#111!important}.city-map .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) saturate(.45) brightness(.72) contrast(1.15)}.city-center-pin{position:absolute;left:50%;top:46.5%;z-index:5;width:19px;height:19px;border:2px solid var(--accent);border-radius:50% 50% 50% 0;transform:translate(-50%,-100%) rotate(-45deg);pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.city-center-pin i{position:absolute;inset:5px;border-radius:50%;background:var(--accent)}.city-preview-mark{position:absolute;left:50%;top:46.5%;z-index:5;color:rgba(255,255,255,.7);font:600 .43rem/1 Montserrat,sans-serif;letter-spacing:.22em;transform:translate(-50%,13px);text-shadow:0 1px 3px #000;pointer-events:none}.city-poster-copy.bottom{bottom:4.2%}.city-poster-copy.bottom p{margin:0 auto 1.5%;max-width:80%;font-family:"Cormorant Garamond",serif;font-size:clamp(.68rem,1.55vh,.95rem);font-style:italic;line-height:1.25}.city-poster-copy.bottom strong{display:block;font-family:"Great Vibes",cursive;font-size:clamp(1.4rem,3.8vh,2.3rem);font-weight:400;line-height:1.1;color:var(--accent)}.city-poster-copy.bottom>span,.city-poster-copy.bottom>small{display:block;font:400 clamp(.39rem,.76vh,.54rem)/1.6 Montserrat,sans-serif;letter-spacing:.13em}.city-poster-copy.bottom>small{opacity:.68}.city-poster-copy.bottom img{display:block;width:54px;height:auto;margin:3% auto 0;object-fit:contain}
.city-poster.style-ivory{--paper:#eee8d8;--ink:#17181a;--accent:#8d6a24}.city-poster.style-ivory .city-map .leaflet-tile-pane{filter:sepia(.62) saturate(.58) brightness(1.08) contrast(.91)}.city-poster.style-ivory .city-preview-mark{color:rgba(0,0,0,.5);text-shadow:0 1px 2px #fff}.city-poster.style-ivory .city-poster-copy.bottom img{content:url('assets/branding/signature-black.png?v=20260722-brand')}.city-poster.style-mono{--paper:#f4f4f2;--ink:#111;--accent:#111}.city-poster.style-mono .city-map .leaflet-tile-pane{filter:grayscale(1) contrast(1.25)}.city-poster.style-mono .city-preview-mark{color:rgba(0,0,0,.48);text-shadow:0 1px 2px #fff}.city-poster.style-mono .city-poster-copy.bottom img{content:url('assets/branding/signature-black.png?v=20260722-brand')}.city-poster.style-blue{--paper:#06162f;--ink:#eef8ff;--accent:#8fd3e8}.city-poster.style-blue .city-map .leaflet-tile-pane{filter:invert(1) sepia(.28) hue-rotate(154deg) saturate(1.65) brightness(.7) contrast(1.2)}

/* Modelos editoriales: el mapa es la pieza visual, no una interfaz técnica. */
.city-styles button[data-style="editorial"] i{background:linear-gradient(135deg,#faf9f5,#c9c8c3)}
.city-styles button[data-style="contrast"] i{background:linear-gradient(135deg,#080808,#393939)}
.city-frame-shell{padding:17px}
.city-frame-shell.digital{padding:0;background:transparent;box-shadow:none}
.city-poster{--paper:#fff;--ink:#121212;--accent:#121212;background:var(--paper);color:var(--ink)}
.city-poster::after{display:none;content:none}
.city-map{left:4.6%;right:4.6%;top:3.8%;height:70.5%;background:#efefeb}
.city-map .leaflet-tile-pane{filter:grayscale(1) brightness(1.08) contrast(1.18)}
.city-map-art{position:absolute;left:4.6%;right:4.6%;top:3.8%;z-index:3;width:90.8%;height:70.5%;display:block;object-fit:cover;background:#fff;opacity:0;pointer-events:none;transition:opacity .1s ease;user-select:none;-webkit-user-drag:none}
.city-map-art.ready{opacity:1}
.city-map-marker{position:absolute;z-index:7;display:block;color:#d6ad37;font:700 clamp(1rem,3.2vh,1.8rem)/1 Arial,sans-serif;text-shadow:0 1px 2px rgba(255,255,255,.92),0 2px 6px rgba(0,0,0,.3);transform:translate(-50%,-50%);pointer-events:none}.city-map-marker[hidden]{display:none}.city-map-marker.shape-circle{font-size:clamp(.82rem,2.6vh,1.4rem)}
.city-map-loading{position:absolute;left:50%;top:44%;z-index:12;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(214,173,55,.48);border-radius:999px;background:rgba(9,14,32,.9);color:#fff;box-shadow:0 7px 22px rgba(0,0,0,.22);font:600 clamp(.45rem,.9vh,.62rem)/1 Poppins,Arial,sans-serif;letter-spacing:.02em;transform:translate(-50%,-50%);pointer-events:none}.city-map-loading[hidden]{display:none}.city-map-loading i{display:block;width:12px;height:12px;border:2px solid rgba(255,255,255,.28);border-top-color:#d6ad37;border-radius:50%;animation:city-map-spin .75s linear infinite}@keyframes city-map-spin{to{transform:rotate(360deg)}}
.city-map{opacity:0;pointer-events:none}
.city-map .leaflet-control-container{display:none}
.city-center-pin,.city-preview-mark{display:none}
.city-poster-copy.bottom{bottom:3.2%;display:flex;height:20.7%;align-items:center;justify-content:flex-start;flex-direction:column}
.city-poster-copy.bottom p{max-width:82%;margin:0 auto 1.2%;font-family:Montserrat,sans-serif;font-size:clamp(.36rem,.77vh,.51rem);font-style:italic;font-weight:400;line-height:1.3}
.city-name-lockup{display:flex;width:82%;align-items:center;justify-content:center;gap:4.5%}
.city-name-lockup i{height:1px;flex:1;background:currentColor;opacity:.72}
.city-poster-copy .city-name-lockup h2{max-width:100%;margin:0;flex:0 1 auto;overflow:hidden;font-family:Montserrat,sans-serif;font-size:clamp(1.25rem,3.5vh,2.05rem);font-weight:400;letter-spacing:.32em;line-height:1;text-indent:.32em;text-overflow:ellipsis;white-space:nowrap}
.city-poster-copy .city-name-lockup h2.long{font-size:clamp(.9rem,2.7vh,1.55rem);letter-spacing:.22em;text-indent:.22em}
.city-poster-copy .city-name-lockup h2.very-long{font-size:clamp(.7rem,2.15vh,1.15rem);letter-spacing:.14em;text-indent:.14em}
.city-poster-copy.bottom>small#posterCountry{margin-top:1.2%;font:500 clamp(.34rem,.68vh,.47rem)/1 Montserrat,sans-serif;letter-spacing:.28em;text-indent:.28em;opacity:.92}
.city-poster-copy.bottom>span,.city-poster-copy.bottom>strong{display:block;margin-top:1.1%;font:400 clamp(.31rem,.62vh,.43rem)/1.25 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.city-poster-copy.bottom>strong{font-weight:500;color:inherit}
.city-poster-copy.bottom>:empty:not(img){display:none}
.city-poster-copy.bottom img{display:block;width:42px;height:auto;margin:auto auto 0;object-fit:contain;content:url('assets/branding/signature-black.png?v=20260722-brand')}
.city-map-credit{position:absolute;right:1.1%;bottom:.55%;z-index:8;color:currentColor;font:400 3.2px/1 Arial,sans-serif;opacity:.42;pointer-events:none}
.city-poster.style-editorial{--paper:#fff;--ink:#121212;--accent:#121212}
.city-poster.style-editorial .city-map,.city-poster.style-editorial .city-map-art{left:0;right:0;top:0;width:100%;height:100%}
.city-poster.style-editorial::after{position:absolute;inset:0;z-index:4;display:block;background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,rgba(255,255,255,0) 53%,rgba(255,255,255,.18) 62%,rgba(255,255,255,.72) 72%,#fff 82%,#fff 100%);content:"";pointer-events:none}
.city-poster.style-editorial .city-map .leaflet-tile-pane{filter:grayscale(1) brightness(1.06) contrast(1.2)}
.city-poster.style-editorial .city-map-art{filter:grayscale(1) contrast(1.55) brightness(1.1)}
.city-poster.style-contrast{--paper:#0b0b0b;--ink:#f6f4ee;--accent:#f6f4ee}
.city-poster.style-contrast::after{mix-blend-mode:screen;opacity:.25}
.city-poster.style-contrast .city-map{background:#111}
.city-poster.style-contrast .city-map .leaflet-tile-pane{filter:grayscale(1) invert(1) brightness(.86) contrast(1.28)}
.city-poster.style-contrast .city-map-art{filter:grayscale(1) invert(1) contrast(1.45) brightness(.92)}
.city-poster.style-contrast .city-poster-copy.bottom img,.city-poster.style-blue .city-poster-copy.bottom img{content:url('assets/branding/signature-white.png?v=20260722-brand')}
.city-poster.style-ivory{--paper:#eee9dc;--ink:#252018;--accent:#252018}
.city-poster.style-ivory .city-map{background:#e8e1d1}
.city-poster.style-ivory .city-map .leaflet-tile-pane{filter:grayscale(1) sepia(.3) brightness(1.03) contrast(1.13)}
.city-poster.style-ivory .city-map-art{filter:grayscale(1) sepia(.2) contrast(1.42) brightness(1.05)}
.city-poster.style-blue{--paper:#09182e;--ink:#eef3f5;--accent:#eef3f5}
.city-poster.style-blue .city-map{background:#10213a}
.city-poster.style-blue .city-map .leaflet-tile-pane{filter:grayscale(1) invert(1) sepia(.18) hue-rotate(155deg) saturate(1.3) brightness(.72) contrast(1.18)}
.city-poster.style-blue .city-map-art{filter:grayscale(1) invert(1) sepia(.32) hue-rotate(158deg) saturate(1.5) brightness(.64) contrast(1.35)}
.city-poster.style-circle{--paper:#fff;--ink:#111;--accent:#111}
.city-poster.style-circle .city-map,.city-poster.style-circle .city-map-art{left:10%;right:10%;top:7.5%;width:80%;height:53.333%;border:1px solid rgba(22,22,22,.68);border-radius:50%;background:#e7efef;box-sizing:border-box;overflow:hidden}
.city-poster.style-circle .city-map .leaflet-tile-pane,.city-poster.style-circle .city-map-art{filter:grayscale(.88) sepia(.08) hue-rotate(145deg) saturate(.72) brightness(1.1) contrast(1.18)}
.city-poster.style-circle .city-poster-copy.bottom{bottom:7%;height:24%;justify-content:flex-start}
.city-poster.style-circle .city-poster-copy.bottom p,.city-poster.style-circle .city-poster-copy.bottom>span,.city-poster.style-circle .city-poster-copy.bottom>strong,.city-poster.style-circle .city-poster-copy.bottom img{display:none!important}
.city-poster.style-circle .city-name-lockup{width:90%;margin-top:4%}.city-poster.style-circle .city-name-lockup i{display:none}.city-poster.style-circle .city-poster-copy .city-name-lockup h2{font-size:clamp(1.35rem,3.8vh,2.25rem);font-weight:500;letter-spacing:.34em;text-indent:.34em}.city-poster.style-circle .city-poster-copy.bottom>small#posterCountry{margin-top:2.4%;font-size:clamp(.42rem,.8vh,.58rem);letter-spacing:.34em;text-indent:.34em}
.city-poster.style-circle .city-poster-copy .city-name-lockup h2.long{font-size:clamp(1.05rem,3.1vh,1.75rem);letter-spacing:.22em;text-indent:.22em}.city-poster.style-circle .city-poster-copy .city-name-lockup h2.very-long{font-size:clamp(.72rem,2.2vh,1.2rem);letter-spacing:.12em;text-indent:.12em}
.city-poster.style-circle::before,.city-poster.style-band::before{position:absolute;left:50%;bottom:2.1%;z-index:7;width:44px;height:14px;background:url('assets/branding/signature-black.png?v=20260722-brand') center/contain no-repeat;content:"";transform:translateX(-50%);pointer-events:none}
.city-poster.style-band{--paper:#fff;--ink:#111;--accent:#111}
.city-poster.style-band .city-map,.city-poster.style-band .city-map-art{left:0;right:0;top:0;width:100%;height:100%;background:#f0f0ed}
.city-poster.style-band .city-map .leaflet-tile-pane,.city-poster.style-band .city-map-art{filter:grayscale(1) brightness(1.12) contrast(1.28)}
.city-poster.style-band .city-poster-copy.bottom{top:10%;bottom:auto;height:15.5%;justify-content:center;background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(0,0,0,.08),0 -1px 0 rgba(0,0,0,.08)}
.city-poster.style-band .city-poster-copy.bottom p,.city-poster.style-band .city-poster-copy.bottom>span,.city-poster.style-band .city-poster-copy.bottom>strong,.city-poster.style-band .city-poster-copy.bottom img{display:none!important}
.city-poster.style-band .city-name-lockup{width:92%}.city-poster.style-band .city-name-lockup i{display:none}.city-poster.style-band .city-poster-copy .city-name-lockup h2{font-size:clamp(1.55rem,4.6vh,2.6rem);font-weight:500;letter-spacing:.2em;text-indent:.2em}.city-poster.style-band .city-poster-copy.bottom>small#posterCountry{margin-top:2%;font-size:clamp(.38rem,.72vh,.52rem);letter-spacing:.22em;text-indent:.22em}
.city-poster.style-band .city-poster-copy .city-name-lockup h2.long{font-size:clamp(1.22rem,3.65vh,2.05rem);letter-spacing:.14em;text-indent:.14em}.city-poster.style-band .city-poster-copy .city-name-lockup h2.very-long{font-size:clamp(.82rem,2.5vh,1.35rem);letter-spacing:.08em;text-indent:.08em}
.city-poster.style-band::after{display:none;content:none}
.city-poster.style-band::before{bottom:1.5%;width:68px;height:22px;padding:0;border:1px solid rgba(17,17,17,.78);border-radius:999px;background-color:rgba(255,255,255,.94);background-size:46px auto;box-shadow:none;box-sizing:border-box}
.city-attribution-copy{max-width:460px;margin:13px 0 0;color:#666b76;font-size:.58rem;line-height:1.45;text-align:center}.city-owner{display:flex;align-items:center;gap:12px;margin-top:12px}.city-owner button{padding:10px 16px;border:0;border-radius:999px;background:#161c35;color:#fff}.city-owner span{color:#343846;font-size:.7rem}
.city-toast{position:fixed;left:50%;bottom:24px;z-index:999;display:flex;align-items:center;gap:15px;padding:13px 18px;border:1px solid rgba(214,173,55,.28);border-radius:14px;background:#0d1428;color:#fff;box-shadow:0 16px 44px rgba(0,0,0,.35);opacity:0;pointer-events:none;transform:translate(-50%,130%);transition:.3s}.city-toast.show{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.city-toast a{padding:7px 12px;border-radius:999px;background:var(--city-gold);color:var(--city-navy);font-size:.72rem;font-weight:600;text-decoration:none}
.city-map-tools button:disabled{cursor:not-allowed;opacity:.38}
@media(max-width:1100px){.city-head{grid-template-columns:minmax(205px,1fr) auto minmax(205px,1fr);gap:16px;padding-right:20px}.city-brand{margin-left:46px}.city-head-copy span{display:none}}
@media(max-width:850px){.city-head{grid-template-columns:minmax(0,1fr) auto}.city-head-copy{display:none}.city-head-actions{gap:9px}}
@media(max-width:1050px){.city-layout{grid-template-columns:1fr}.city-panel{height:auto;overflow:visible}.city-preview{position:relative;top:auto;height:auto;min-height:720px}.city-frame-shell{width:min(72vw,430px)}}
@media(max-width:640px){.city-head{grid-template-columns:minmax(0,1fr) auto;height:64px;padding:0 12px}.city-brand{margin-left:42px}.city-brand img{width:128px}.city-head-copy{display:none}.city-head-actions{gap:7px}.city-head-actions>a:first-child{display:none}body.city-designer.neb-language-inline .city-head .neb-language-toggle{min-width:58px;height:36px;padding:0 9px;font-size:10px}.city-layout{min-height:0}.city-panel{padding:27px 18px}.city-intro h1{font-size:2.35rem}.city-product-types,.city-fields{grid-template-columns:1fr}.city-fields label:last-child{grid-column:auto}.city-styles{grid-template-columns:1fr 1fr}.city-sizes{grid-template-columns:1fr 1fr}.city-location-summary{align-items:flex-start;flex-direction:column}.city-marker-controls>div{grid-template-columns:1fr}.city-marker-color{justify-content:space-between}.city-buybar{margin:10px 0 0;padding:16px 0 0}.city-buybar button{padding:12px 16px}.city-status{margin-top:10px}.city-preview{min-height:620px;padding:68px 14px 38px}.city-preview-head{left:18px;right:18px;top:20px}.city-preview-head small{display:none}.city-frame-shell{width:min(82vw,390px);padding:9px}.city-toast{width:calc(100% - 28px);justify-content:space-between;font-size:.72rem}}
