
:root{--ink:#101820;--orange:#ff3d1a;--paper:#f6f5f0;--mist:#e7e9e6;--muted:#626e73;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--display:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font);-webkit-font-smoothing:antialiased}body.lock{overflow:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.wrap{max-width:1390px;width:calc(100% - 112px);margin-inline:auto}.skip{position:absolute;left:-9999px;top:auto;background:#fff;color:#101820;z-index:150;padding:12px 20px}.skip:focus{left:16px;top:16px}.eyebrow,.card-tag{display:block;font-weight:800;letter-spacing:2.3px;font-size:10px;text-transform:uppercase;color:var(--orange)}.orange{color:#ff6246}.masthead{height:79px;position:sticky;z-index:60;top:0;background:#101820;color:#fff;border-bottom:1px solid #35434b}.header-inner{height:100%;display:flex;align-items:center;gap:17px}.brand{display:block;flex:0 0 auto;width:173px}.brand img{width:100%;height:auto}.brand-line{height:28px;width:1px;background:#59636a}.brand-area{letter-spacing:2.8px;font-weight:850;font-size:12px;white-space:nowrap}.brand-dot{color:var(--orange)}.nav{display:flex;align-items:center;margin-left:auto;gap:22px}.nav>a:not(.nav-cta){text-transform:uppercase;font-weight:700;letter-spacing:1.15px;font-size:10px;color:#c5cdcf}.nav>a:hover,.language a:hover{color:#fff}.language{display:flex;align-items:center;gap:7px;margin-left:8px;font-size:11px;color:#7f929a}.language a{color:#9da7ad;padding:5px}.language a[aria-current=page]{color:#fff;font-weight:900;border-bottom:2px solid var(--orange)}.nav-cta{border:1px solid var(--orange);background:var(--orange);padding:12px 14px;color:#fff;font-size:11px;letter-spacing:.3px;font-weight:750;white-space:nowrap}.nav-cta span{margin-left:17px}.nav-cta:hover{background:#e73011}.menu-toggle{display:none}.hero{position:relative;min-height:740px;display:flex;flex-direction:column;justify-content:center;background:#101820;color:#fff;overflow:hidden}.hero-visual{position:absolute;inset:0;z-index:0}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,18,24,.99) 0%,rgba(11,18,24,.95) 26%,rgba(11,18,24,.67) 53%,rgba(11,18,24,.05) 100%),linear-gradient(0deg,rgba(11,18,24,.50),transparent 35%)}.hero-inner{position:relative;z-index:2;padding:105px 0 138px}.hero-overline{letter-spacing:2px;font-size:11px;font-weight:650;margin:25px 0 22px;color:#dfebf0}.hero h1{font-size:clamp(62px,8vw,128px);line-height:.95;letter-spacing:-.071em;font-weight:900;max-width:990px;margin:0 0 30px}.hero h1 em{font-family:var(--display);font-weight:400;letter-spacing:-.055em;font-size:.95em;color:#fff}.hero-sub{font-size:clamp(17px,1.5vw,22px);line-height:1.55;max-width:625px;color:#e2ebef;margin:0 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:17px 22px;font-size:13px;font-weight:750;border:1px solid transparent;min-height:55px;transition:background .2s,color .2s}.btn-orange{background:var(--orange);color:white;border-color:var(--orange)}.btn-orange:hover{background:#d82d0e;border-color:#d82d0e}.btn-line{border-color:#879297;color:#fff}.btn-line:hover{background:#fff;color:#101820}.hero-foot{position:absolute;bottom:0;left:0;right:0;z-index:2;border-top:1px solid #ffffff45;background:#09131b64}.hero-foot-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;letter-spacing:1.5px;font-size:10px;color:#dce6e8;text-transform:uppercase}.credential{background:#e9ecea}.credential-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.credential span{padding:25px 18px;font-size:10px;letter-spacing:1.2px;font-weight:800;border-left:2px solid #cfd5d2}.credential span:first-child{border-color:var(--orange)}.section{padding:115px 0}.section h2{font-size:clamp(44px,5.45vw,84px);font-weight:850;letter-spacing:-.065em;line-height:1.06;margin:20px 0 24px}.section h2 em{font-family:var(--display);font-size:.94em;letter-spacing:-.055em;font-weight:400}.section-top{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:45px}.section-top h2{margin-bottom:0}.section-top>p,.journal-top>p{max-width:430px;line-height:1.75;font-size:15px;color:var(--muted);margin:0 0 8px}.manifesto{background:#fff}.manifesto-grid{display:grid;grid-template-columns:32% 1fr;gap:55px}.line-mark{width:45px;height:3px;background:var(--orange);margin:31px 0}.tiny-record{font-size:10px;line-height:1.9;letter-spacing:1.5px;color:#6c797c}.manifesto h2{font-size:clamp(47px,5.7vw,90px);margin-top:0}.lead{max-width:720px;font-size:clamp(17px,1.7vw,23px);line-height:1.65;color:#424f55}.manifesto-footer{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700;color:#7b888b;margin-top:34px}.portfolio{background:#fafaf8}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:29px}.filter{background:#fff;color:#415056;border:1px solid #d9dfdc;padding:11px 16px;font-weight:750;font-size:11px}.filter:hover,.filter.is-active{background:#101820;border-color:#101820;color:#fff}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px;row-gap:35px}.photo-card{margin:0;min-width:0}.photo-card.card-lead{grid-column:span 2}.photo-trigger{border:0;padding:0;width:100%;position:relative;display:block;overflow:hidden;height:290px;background:#d7dfde}.card-lead .photo-trigger{height:400px}.photo-trigger img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.photo-trigger:hover img{transform:scale(1.035)}.expand{position:absolute;top:13px;right:13px;background:#fff;color:#101820;font-size:19px;padding:7px 11px;line-height:1}.photo-card figcaption{display:flex;justify-content:space-between;gap:14px;padding-top:16px;align-items:start}.photo-card figcaption>div{display:flex;flex-direction:column;gap:7px}.card-tag{letter-spacing:1.8px;font-size:9px}.photo-card figcaption strong{font-size:19px;letter-spacing:-.5px;line-height:1.2}.photo-card figcaption small{font-size:12px;color:#7a878b}.card-arrow{font-size:20px;color:var(--orange)}.photo-card.hidden-card{display:none}.gallery-tail{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:48px;border-top:1px solid #dbe0dd;padding-top:18px;color:#626e70;font-size:13px}.gallery-tail>a{color:#ec3817;font-weight:800}.services{background:#101820;color:#fff}.services .section-top>p{color:#bcc7cc}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#344249;border:1px solid #344249}.service{background:#172229;padding:29px 26px 27px;min-height:390px;display:flex;flex-direction:column;transition:background .2s}.service:hover{background:#203039}.service-n{display:flex;justify-content:space-between;color:#f66a4f;font-size:10px;font-weight:850;letter-spacing:1.3px}.service-n span:last-child{font-size:24px;line-height:0.7}.service h3{font-size:clamp(24px,2.5vw,37px);line-height:1.12;letter-spacing:-1.3px;margin:43px 0 20px}.service h3 span{color:var(--orange)}.service>p{line-height:1.6;color:#c5d0d5;font-size:13px;margin:0 0 30px}.service-bottom{margin-top:auto;display:flex;flex-direction:column;gap:20px}.service-bottom span{font-size:10px;color:#99acb4;letter-spacing:.5px}.service-bottom a{font-size:12px;font-weight:800;color:#fff}.service-bottom a:hover{color:#ff654a}.updates{background:#fff}.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.update-card{background:#f6f6f3}.update-card img{height:225px;width:100%;object-fit:cover}.update-card>div{padding:18px}.update-card h3{font-size:21px;margin:7px 0;letter-spacing:-.65px}.update-card p{font-size:12px;color:#6b797b;margin:0}.update-note{font-size:12px;color:#798687;margin-top:22px}.insights{background:#edeee9}.insights-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:68px;align-items:start}.insights .lead{font-size:16px;color:#536063}.text-cta{color:#ec391d;font-size:13px;font-weight:850;display:inline-block;margin-top:20px}.explainers{display:grid;grid-template-columns:1fr 1fr;gap:16px}.explainers figure{margin:0;background:#fff;overflow:hidden}.explainers img{width:100%;height:245px;object-fit:cover;object-position:top}.explainers figcaption{display:flex;gap:7px;flex-direction:column;padding:16px}.explainers strong{font-size:13px}.explainers small{font-size:9px;color:#c04429;font-weight:700;letter-spacing:.6px}.journal{background:#fff}.journal-top{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:40px}.journal-cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d7dedb;border-bottom:1px solid #d7dedb}.journal-card{padding:31px 25px 28px 0;display:flex;flex-direction:column;gap:10px;min-height:210px;border-right:1px solid #d7dedb}.journal-card:not(:first-child){padding-left:25px}.journal-card:last-child{border-right:0}.journal-card>span:first-child{font-size:10px;color:#fc3e1c;font-weight:800;letter-spacing:1.8px}.journal-card strong{font-size:29px;letter-spacing:-1.2px}.journal-card p{font-size:13px;color:#667578;margin:0}.journal-action{font-size:11px;font-weight:800;margin-top:auto}.journal-card:hover strong{color:var(--orange)}.workflow{background:#fafaf8}.workflow>div>h2{max-width:1000px}.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:50px 0 36px}.workflow-grid>div{border-left:1px solid #d6dcd8;padding:3px 27px 12px}.workflow-grid>div:first-child{border-left:3px solid var(--orange)}.workflow-grid span{font-size:11px;color:var(--orange);font-weight:800;letter-spacing:1px}.workflow-grid h3{font-size:24px;letter-spacing:-.8px;margin:31px 0 12px}.workflow-grid p{font-size:13px;color:#687578;line-height:1.65;margin:0}.rights{background:#e9ece8;padding:24px 30px;display:flex;align-items:center;gap:30px}.rights strong{font-size:14px;white-space:nowrap}.rights p{color:#617074;font-size:12px;line-height:1.55;margin:0}.faq-grid{display:grid;grid-template-columns:38% 1fr;gap:80px}.faq-aside p{color:#6a7779;line-height:1.7;max-width:330px}.faq-list{border-top:1px solid #dce2de}.faq-list details{border-bottom:1px solid #dce2de}.faq-list summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-weight:750;font-size:15px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--orange);font-size:22px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:14px;line-height:1.75;color:#667377;margin:0 30px 23px 0}.contact{background:#101820;color:#fff}.contact-grid{display:grid;grid-template-columns:40% 1fr;gap:70px}.contact h2{margin:23px 0 27px}.contact-grid>div:first-child>p{font-size:17px;line-height:1.6;color:#c1cbd0}.direct{margin-top:70px;display:flex;flex-direction:column;gap:13px}.direct small{font-size:10px;letter-spacing:2px;color:#ff684f;font-weight:800}.direct a{font-size:24px;font-weight:700}.direct span{font-size:12px;color:#97aab0}.contact-panel{background:#fff;color:#101820;padding:35px}.form-heading{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:31px}.form-heading strong{font-size:21px;line-height:1.3;letter-spacing:-.6px;max-width:315px}.form-heading span{color:#718184;font-size:11px;max-width:155px;line-height:1.5;text-align:right}.contact-panel label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:750;margin-bottom:18px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-panel input,.contact-panel select,.contact-panel textarea{display:block;padding:13px 14px;width:100%;min-width:0;border-radius:0;border:1px solid #cdd6d2;background:#fafbfa;color:#101820;font-size:13px;font-weight:500}.contact-panel textarea{resize:vertical}.contact-panel label .optional{font-size:11px;color:#899699;font-weight:400}.bot-trap{height:0;overflow:hidden;position:absolute;left:-9999px}.privacy{font-size:11px;line-height:1.7;color:#7c8a8c;margin:6px 0 19px}.privacy a{text-decoration:underline;text-underline-offset:2px}.btn-send{width:100%;justify-content:space-between}.required{display:block;margin-top:14px;color:#738183;font-size:11px}.footer{background:#090f13;color:#fff}.footer-main{display:grid;grid-template-columns:200px 1fr auto;gap:35px;align-items:start;padding:43px 0}.footer-main img{max-width:190px}.footer-main strong{font-size:18px;letter-spacing:2px}.footer-main strong span{color:var(--orange)}.footer-main p{font-size:11px;color:#9facb3;line-height:1.7}.footer-main>a:last-child{font-size:13px;font-weight:750}.footer-lower{border-top:1px solid #2b383e;padding:23px 0;display:flex;gap:33px;align-items:center;font-size:11px;color:#9eabb2}.footer-lower a:hover{color:#fff}.lightbox{display:none;position:fixed;z-index:120;inset:0;background:#071015f5;color:#fff;flex-direction:column;align-items:center;justify-content:center;padding:70px 25px 25px}.lightbox.visible{display:flex}.lightbox img{width:auto;height:auto;max-height:calc(100dvh - 180px);object-fit:contain}.lightbox button{position:absolute;top:13px;right:25px;color:white;background:transparent;border:0;font-size:45px}.lightbox-meta{text-align:center;display:flex;gap:5px;flex-direction:column;margin-top:18px}.lightbox-meta span{color:#a0b2ba;font-size:12px}.thanks{min-height:100vh;background:#101820;color:#fff;display:grid;place-items:center;padding:30px}.thanks-inner{max-width:670px}.thanks-brand{display:block;width:200px;margin-bottom:95px}.thanks-inner h1{font-size:clamp(45px,7vw,78px);line-height:1.05;letter-spacing:-3px}.thanks-inner p{font-size:17px;color:#d7e1e6;line-height:1.6;margin:20px 0 36px}
@media(max-width:1200px){.wrap{width:calc(100% - 74px)}.nav{gap:14px}.nav>a:not(.nav-cta){font-size:9px}.service-grid{grid-template-columns:repeat(2,1fr)}.service{min-height:330px}.insights-grid{gap:30px}}
@media(max-width:900px){.wrap{width:calc(100% - 44px)}.masthead{height:72px}.header-inner{gap:12px}.brand{width:143px}.brand-area{font-size:11px;letter-spacing:1.5px}.brand-line{height:23px}.menu-toggle{display:flex;border:1px solid #44525b;background:transparent;color:white;width:42px;height:40px;flex-direction:column;justify-content:center;gap:5px;align-items:center;margin-left:auto}.menu-toggle span{width:18px;height:2px;background:#fff}.nav{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#101820;border-bottom:1px solid #4c5b62;padding:15px 22px 26px;margin:0}.nav.open{display:flex}.nav>a:not(.nav-cta){padding:15px 0;border-bottom:1px solid #2d4049;font-size:12px}.language{margin:15px 0;gap:12px}.nav-cta{display:flex;justify-content:space-between}.hero{min-height:680px}.hero-inner{padding:98px 0 132px}.hero h1{font-size:clamp(60px,10vw,100px)}.section{padding:83px 0}.section-top{display:block}.section-top>p{max-width:650px;margin-top:25px}.manifesto-grid{grid-template-columns:1fr;gap:18px}.manifesto h2{margin-top:0}.tiny-record{display:none}.gallery{grid-template-columns:repeat(2,1fr)}.photo-card.card-lead{grid-column:span 2}.insights-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.explainers img{height:240px}.journal-top{display:block}.journal-top>p{margin-top:20px}.workflow-grid{grid-template-columns:repeat(2,1fr);gap:20px}.workflow-grid>div:nth-child(3){border-left:3px solid var(--orange)}.footer-main{grid-template-columns:180px 1fr}.footer-main>a:last-child{grid-column:2}}
@media(max-width:580px){.wrap{width:calc(100% - 30px)}.hero{min-height:720px}.hero-visual img{object-position:55% center}.hero-overlay{background:linear-gradient(90deg,rgba(11,18,24,.88),rgba(11,18,24,.52)),linear-gradient(0deg,#0b1218cf,transparent 40%)}.hero-inner{padding:88px 0 132px}.hero h1{font-size:clamp(51px,14vw,70px);letter-spacing:-.07em}.hero-sub{font-size:16px}.hero-overline{font-size:10px}.hero-actions{flex-direction:column;align-items:stretch}.btn{justify-content:space-between}.hero-foot-inner{flex-direction:column;align-items:start;gap:7px;font-size:9px;padding:15px 0}.credential-inner{grid-template-columns:repeat(2,1fr)}.credential span{padding:16px 7px;font-size:9px}.section{padding:70px 0}.section h2{font-size:clamp(45px,10vw,62px)}.lead{font-size:17px}.gallery{grid-template-columns:1fr;gap:26px}.photo-card.card-lead{grid-column:span 1}.photo-trigger,.card-lead .photo-trigger{height:265px}.photo-card figcaption strong{font-size:18px}.gallery-tail{align-items:start;flex-direction:column}.service-grid{grid-template-columns:1fr}.service{min-height:300px}.service h3{margin-top:32px}.update-grid,.journal-cards,.explainers,.workflow-grid{grid-template-columns:1fr}.update-card img{height:240px}.insights-grid{gap:24px}.explainers img{height:270px;object-fit:contain;background:#fff}.journal-card,.journal-card:not(:first-child){padding:24px 0;border-right:0;border-bottom:1px solid #dce2de;min-height:175px}.journal-card:last-child{border-bottom:0}.workflow-grid>div,.workflow-grid>div:nth-child(3){border-left:3px solid var(--orange);padding:0 15px 20px}.workflow-grid h3{margin-top:12px}.rights{display:block;padding:22px}.rights strong{white-space:normal}.rights p{margin-top:13px}.faq-list summary{font-size:14px}.contact-grid{gap:32px}.direct{margin-top:30px}.direct a{font-size:21px}.contact-panel{padding:23px 18px}.form-pair{grid-template-columns:1fr;gap:0}.form-heading{display:block}.form-heading span{display:block;text-align:left;margin-top:10px}.footer-main{grid-template-columns:1fr}.footer-main>a:last-child{grid-column:auto}.footer-lower{flex-wrap:wrap;gap:15px}.brand{width:136px}.brand-area{font-size:10px}.eyebrow{font-size:9px;letter-spacing:1.5px}.lightbox{padding:64px 15px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* CITYGUIDE V2.1 – EDITORIAL FRAMING FIX
   The original photographs are predominantly portrait orientation.
   Display them at natural aspect ratios so no landmarks or foregrounds are cropped.
   The hero instead anchors the image at the top, keeping Prague Castle visible. */
.hero-visual img { object-position: 50% 0%; }
/* Natural-ratio masonry portfolio. No destructive cover cropping. */
.gallery { display: block; column-count: 3; column-gap: 24px; }
.photo-card, .photo-card.card-lead { display: inline-block; vertical-align: top; width: 100%; margin: 0 0 39px; break-inside: avoid; page-break-inside: avoid; grid-column: auto; }
.photo-card.hidden-card { display: none; }
.photo-trigger, .card-lead .photo-trigger { width: 100%; height: auto; background: #e7e9e6; }
.photo-trigger img, .card-lead .photo-trigger img { display: block; width: 100%; height: auto; object-fit: contain; object-position: center center; }
/* Tall source photos need room: no forced landscape aspect ratio. */
.photo-card figcaption { padding-top: 13px; }
@media (max-width: 900px) { .gallery { column-count: 2; column-gap: 17px; } .photo-card, .photo-card.card-lead { margin-bottom: 30px; } }
@media (max-width: 580px) { .gallery { column-count: 1; column-gap: 0; } .photo-card, .photo-card.card-lead { margin-bottom: 26px; } .hero-visual img { object-position: 63% 0%; } }

/* V2.2 — Editorial layouts: clean horizontal and portrait rows, no masonry */
.gallery{display:flex !important; flex-direction:column; gap:38px;}
.gallery-row{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:start;}
.gallery-row--portrait{grid-template-columns:repeat(4,minmax(0,1fr));}
.gallery-row.is-empty{display:none;}
.gallery-row .photo-card,.gallery-row .photo-card.card-lead{display:block; width:auto; margin:0; min-width:0;}
.gallery-row .photo-card.hidden-card{display:none;}
.gallery-row .photo-trigger,.gallery-row .card-lead .photo-trigger{width:100%; height:auto; aspect-ratio:4/3; display:block; background:#eef0ed;}
.gallery-row--portrait .photo-trigger{aspect-ratio:3/4;}
.gallery-row .photo-trigger img,.gallery-row .card-lead .photo-trigger img{display:block; width:100%; height:100%; object-fit:contain; object-position:center;}
.gallery-row .photo-card figcaption{padding-top:13px;}
/* Hero: crisp full landmark photo to the right, clean dark editorial typography on left */
.hero{min-height:690px; background:#101820;}
.hero-visual{left:auto;right:0;width:56%;height:100%;}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#101820 0%,rgba(16,24,32,.70) 5%,transparent 31%),linear-gradient(0deg,rgba(16,24,32,.28),transparent 28%);}
.hero-inner{padding:100px 0 126px;}
.hero h1{font-size:clamp(62px,6.5vw,105px);max-width:820px;}
.hero-sub{max-width:475px;}
.hero-foot{background:rgba(9,16,23,.54);}
/* The two POIs are separate editorial dossiers with orientation-aware photography */
.poi-section{margin:50px 0 52px;}
.poi-heading{margin:0 0 30px;max-width:760px;}
.poi-heading h3{font-size:clamp(31px,3.7vw,57px);letter-spacing:-.055em;line-height:1.08;margin:14px 0;}
.poi-heading p{max-width:720px;font-size:15px;line-height:1.7;color:#657074;}
.poi-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:center;padding:28px 0;border-top:1px solid #dce0dc;}
.poi-feature--portrait{grid-template-columns:1.1fr .9fr;}
.poi-feature-media{margin:0;min-width:0;}
.poi-feature-media img{display:block;width:100%;height:auto;object-fit:contain;}
.poi-photo-pair{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;}
.poi-photo-pair img{display:block;width:100%;height:auto;}
.poi-feature-copy{max-width:460px;}
.poi-kicker{color:#ff3d1a;letter-spacing:2px;font-size:11px;font-weight:800;}
.poi-feature-copy h4{font-size:clamp(27px,3.1vw,49px);letter-spacing:-.055em;line-height:1.05;margin:17px 0;}
.poi-feature-copy p{color:#566367;line-height:1.75;font-size:16px;margin:0 0 18px;}
.poi-feature-copy small{color:#78888d;font-size:12px;}
.poi-disclaimer{font-size:12px;color:#7e898a;line-height:1.6;margin:14px 0 7px;}
.poi-journal-link{font-size:13px;color:#657074;}.poi-journal-link a{color:#e63b20;font-weight:800;}
.urban-heading{border-top:2px solid #101820;padding-top:24px;margin:10px 0 22px;color:#101820;font-size:11px;letter-spacing:2px;font-weight:900;}
@media(max-width:1000px){.hero-visual{width:62%;}.hero h1{font-size:clamp(55px,7vw,86px)}.gallery-row{grid-template-columns:repeat(2,minmax(0,1fr));}.gallery-row--portrait{grid-template-columns:repeat(2,minmax(0,1fr))}.poi-feature,.poi-feature--portrait{gap:25px;}}
@media(max-width:700px){.hero{min-height:720px;justify-content:flex-end;}.hero-visual{left:0;top:0;right:0;width:100%;height:52%;}.hero-visual img{object-fit:contain;object-position:center top;}.hero-overlay{background:linear-gradient(0deg,#101820 0%,rgba(16,24,32,.85) 10%,transparent 60%);}.hero-inner{padding:290px 0 90px;}.hero h1{font-size:clamp(49px,12vw,72px);}.hero-sub{font-size:14px;max-width:100%;}.gallery-row{grid-template-columns:1fr;gap:26px;}.gallery-row--portrait{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}.gallery-row--portrait .photo-card figcaption strong{font-size:15px}.gallery-row--portrait .photo-card figcaption small{font-size:11px}.gallery-row .photo-card{margin:0;}.poi-feature,.poi-feature--portrait{grid-template-columns:1fr;gap:18px;padding:24px 0;}.poi-photo-pair{gap:12px;}.poi-feature-copy h4{margin:12px 0;font-size:30px;}.poi-heading h3{font-size:35px;}.poi-section{margin:36px 0;}}


/* V2.3 — proportion fixes + 3 infographic styles */
.manifesto{padding-top:92px;padding-bottom:88px;}
.manifesto-grid{grid-template-columns:28% 1fr;gap:46px;align-items:start;}
.manifesto h2{font-size:clamp(38px,4.7vw,72px);max-width:700px;line-height:1.03;}
.manifesto .lead{max-width:790px;font-size:clamp(16px,1.45vw,20px);line-height:1.68;}
.manifesto-footer{margin-top:24px;}

.insights{padding-top:92px;padding-bottom:92px;}
.insights-grid{grid-template-columns:.82fr 1.58fr;gap:42px;align-items:start;}
.insights h2{font-size:clamp(38px,4.6vw,68px);max-width:420px;line-height:1.02;}
.insights .lead{max-width:470px;font-size:15px;line-height:1.78;}
.explainers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start;}
.explainers figure{margin:0;background:#fff;overflow:hidden;border:1px solid #dde2de;display:flex;flex-direction:column;}
.explainers img{width:100%;height:230px;object-fit:cover;object-position:center top;background:#fff;}
.explainers figcaption{display:flex;gap:7px;flex-direction:column;padding:16px;min-height:90px;}
.explainers strong{font-size:14px;line-height:1.25;}
.explainers small{font-size:9px;color:#c04429;font-weight:700;letter-spacing:.6px;}

@media(max-width:1200px){
  .manifesto h2{font-size:clamp(38px,4.4vw,64px);} 
  .insights-grid{grid-template-columns:1fr;gap:28px;}
  .insights h2{max-width:520px;}
  .explainers{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:900px){
  .manifesto{padding-top:82px;padding-bottom:78px;}
  .insights{padding-top:82px;padding-bottom:82px;}
  .explainers{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:580px){
  .manifesto h2,.insights h2{font-size:clamp(34px,10vw,52px);} 
  .explainers{grid-template-columns:1fr;}
  .explainers img{height:260px;object-fit:contain;}
}


/* V2.4 — finition éditoriale. Hero, portfolio et 4 offres inchangés. */
/* Mieux relier les zones éditoriales, sans changer la hiérarchie commerciale. */
.manifesto { padding-top: 84px; padding-bottom: 84px; }
.manifesto-grid { align-items: center; }
.manifesto .lead { margin-top: 18px; }
.manifesto-footer { line-height: 1.7; }

/* POI : mêmes images et textes, dimensions rapprochées de « Urban Transformations ». */
.updates .section-top { margin-bottom: 32px; }
.poi-section { margin: 36px 0 38px; }
.poi-heading { max-width: 720px; margin-bottom: 22px; }
.poi-heading h3 { font-size: clamp(29px, 3vw, 44px); line-height: 1.06; margin: 12px 0; }
.poi-heading p { font-size: 14px; line-height: 1.7; margin-bottom: 8px; }
.poi-feature,
.poi-feature--portrait { grid-template-columns: minmax(0, 1fr) minmax(0, .92fr); gap: 30px; padding: 21px 0; }
.poi-feature-media { display: flex; align-items: flex-start; justify-content: flex-start; }
.poi-feature-media img { width: auto; max-width: 100%; max-height: 360px; object-fit: contain; }
.poi-photo-pair { gap: 13px; }
.poi-photo-pair img { width: 100%; max-height: 348px; object-fit: contain; object-position: top; }
.poi-feature-copy h4 { font-size: clamp(25px, 2.6vw, 38px); line-height: 1.08; margin: 10px 0 14px; }
.poi-feature-copy p { font-size: 14px; line-height: 1.72; margin-bottom: 12px; }
.poi-feature-copy small { font-size: 11px; }
.poi-disclaimer { margin: 14px 0 7px; }
.poi-journal-link { margin-bottom: 30px; }
.urban-heading { margin-top: 0; border-top-width: 1px; padding-top: 20px; margin-bottom: 23px; }

/* Infographies : trois vrais styles lisibles, sans découper les textes de l'image. */
.insights { padding-top: 82px; padding-bottom: 82px; }
.insights-grid { gap: 34px; }
.insights h2 { font-size: clamp(36px, 4vw, 62px); margin-top: 18px; }
.insights .lead { font-size: 14px; line-height: 1.75; }
.explainers { gap: 12px; }
.explainers figure { border: 1px solid #d4dcd8; }
.explainers img { display: block; width: 100%; height: auto; aspect-ratio: 1.47; object-fit: contain; object-position: center; background: #fff; }
.explainers figcaption { padding: 13px; min-height: 89px; }
.explainers strong { font-size: 13px; }
.explainers small { font-size: 9px; line-height: 1.5; }

/* Finitions de lisibilité des sections non photographiques. */
.workflow-grid > div { padding-right: 24px; }
.journal-cards { margin-top: 26px; }
.journal-card { transition: color .2s ease, background .2s ease; }
.journal-card:focus-visible { outline-offset: -3px; }
.faq-list summary:hover { color: #dc391e; }
.contact-panel input:focus,
.contact-panel select:focus,
.contact-panel textarea:focus { border-color: #ff3d1a; background: #fff; }

@media (max-width: 1000px) {
  .poi-feature,.poi-feature--portrait { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 25px; }
  .poi-feature-media img { max-height: 330px; }
  .poi-photo-pair img { max-height: 315px; }
}
@media (max-width: 700px) {
  .manifesto { padding-top: 65px; padding-bottom: 65px; }
  .manifesto-grid { align-items: start; }
  .poi-section { margin: 32px 0 38px; }
  .poi-feature,.poi-feature--portrait { grid-template-columns: 1fr; gap: 16px; padding: 21px 0; }
  .poi-feature-media img { max-height: none; width: 100%; }
  .poi-photo-pair img { max-height: none; }
  .poi-feature-copy h4 { font-size: 29px; }
  .insights { padding-top: 65px; padding-bottom: 65px; }
  .explainers img { aspect-ratio: auto; height: auto; max-height: none; object-fit: contain; }
}


/* CITYGUIDE V2.5 — clarify the offer; keep hero, portfolio and four commercial services untouched */
.what-we-do{background:#fff;padding:76px 0 77px;}
.what-intro{display:grid;grid-template-columns:minmax(180px,.27fr) minmax(0,1fr);gap:42px;align-items:start;}
.what-label{padding-top:10px;}
.what-rule{display:block;width:34px;height:2px;background:var(--orange);margin:23px 0 21px;}
.what-signature{color:#718087;font-weight:650;letter-spacing:1.55px;line-height:1.8;font-size:9px;text-transform:uppercase;}
.what-copy h2{max-width:890px;font-size:clamp(38px,4.4vw,70px);line-height:1.04;letter-spacing:-.058em;margin:0 0 23px;font-weight:800;color:#101820;}
.what-copy h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;}
.what-lead{max-width:800px;font-size:clamp(17px,1.65vw,23px);font-weight:500;line-height:1.5;margin:0 0 13px;color:#28343a;}
.what-support{max-width:780px;font-size:15px;line-height:1.8;color:#58676d;margin:0;}
.what-capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:45px;padding-top:23px;border-top:1px solid #dfe4e1;}
.what-capability{display:flex;flex-direction:column;gap:7px;padding-top:4px;}
.what-capability .cap-index{color:#f43d22;font-size:10px;font-weight:800;letter-spacing:1.2px;}
.what-capability strong{font-size:20px;letter-spacing:-.035em;color:#101820;line-height:1.2;}
.what-capability > span:last-child{font-size:12px;line-height:1.6;color:#647279;}

/* City Updates as two compact POI dossiers plus one restrained 3-photo row */
.updates-v25{padding-top:88px;padding-bottom:88px;}
.updates-v25 .section-top{margin-bottom:25px;}
.updates-v25 .section-top h2{font-size:clamp(36px,4.6vw,70px);}
.updates-v25 .poi-section{margin:0 0 26px;}
.updates-v25 .compact-subheading{display:flex;align-items:baseline;justify-content:space-between;gap:30px;margin:0 0 17px;padding:0 0 12px;border-bottom:1px solid #dde3df;}
.updates-v25 .compact-subheading .eyebrow{white-space:nowrap;}
.updates-v25 .compact-subheading p{margin:0;color:#68767b;font-size:13px;line-height:1.6;max-width:520px;text-align:right;}
.poi-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.poi-compact-card{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:18px;align-items:center;border:1px solid #dee4e0;padding:13px;background:#fff;min-height:240px;}
.poi-compact-image{height:218px;min-width:0;background:#f0f1ed;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.poi-compact-image img{max-width:100%;max-height:100%;height:100%;width:100%;object-fit:contain;object-position:center center;}
.poi-compact-image--portrait img{width:auto;max-width:100%;}
.poi-compact-copy{padding:3px 2px;min-width:0;}
.poi-compact-copy .poi-kicker{font-size:9px;letter-spacing:1.1px;}
.poi-compact-copy h3{font-size:clamp(19px,2vw,29px);line-height:1.1;letter-spacing:-.045em;margin:9px 0 10px;color:#101820;}
.poi-compact-copy p{color:#57666b;font-size:12.5px;line-height:1.6;margin:0 0 10px;}
.poi-compact-copy small{color:#77858a;font-size:10.5px;}
.updates-v25 .poi-disclaimer{font-size:11px;margin:12px 0 0;color:#68767b;line-height:1.6;}
.updates-v25 .poi-disclaimer a{color:#e43f25;font-weight:750;}
.updates-v25 .urban-heading{margin:28px 0 14px;padding-top:18px;}
.updates-v25 .update-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.updates-v25 .update-card img{height:160px;object-fit:cover;object-position:center center;}
.updates-v25 .update-card>div{padding:15px;}
.updates-v25 .update-card h3{font-size:17px;letter-spacing:-.03em;margin:5px 0;line-height:1.25;}
.updates-v25 .update-card p{font-size:12px;margin:0;}

@media (max-width:1100px){
 .what-intro{grid-template-columns:1fr;gap:18px;}
 .what-label{display:flex;gap:24px;align-items:baseline;}
 .what-rule,.what-signature{display:none;}
 .poi-compact-card{grid-template-columns:1fr;gap:12px;min-height:0;align-items:start;}
 .poi-compact-image{height:220px;}
 .poi-compact-copy{padding:2px 4px 6px;}
}
@media (max-width:740px){
 .what-we-do{padding:56px 0 62px;}
 .what-copy h2{font-size:clamp(37px,9vw,55px);margin:0 0 19px;}
 .what-lead{font-size:17px;}
 .what-support{font-size:14px;}
 .what-capabilities{grid-template-columns:1fr;gap:14px;margin-top:30px;padding-top:15px;}
 .what-capability{padding:5px 0 10px;}
 .what-capability strong{font-size:18px;}
 .updates-v25{padding-top:65px;padding-bottom:65px;}
 .updates-v25 .compact-subheading{display:block;}
 .updates-v25 .compact-subheading p{text-align:left;margin-top:8px;}
 .poi-compact-grid{grid-template-columns:1fr;gap:13px;}
 .poi-compact-card{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);min-height:0;}
 .poi-compact-image{height:180px;}
 .updates-v25 .update-grid{gap:9px;}
 .updates-v25 .update-card img{height:110px;}
 .updates-v25 .update-card>div{padding:9px;}
 .updates-v25 .update-card h3{font-size:13px;}
 .updates-v25 .update-card .card-tag{font-size:8px;letter-spacing:.7px;}
 .updates-v25 .update-card p{font-size:10px;}
}
@media (max-width:510px){
 .poi-compact-card{grid-template-columns:1fr;gap:10px;}
 .poi-compact-image{height:230px;}
 .poi-compact-copy{padding:4px 3px 7px;}
 .updates-v25 .update-grid{grid-template-columns:1fr;gap:12px;}
 .updates-v25 .update-card{display:grid;grid-template-columns:40% 60%;min-height:120px;}
 .updates-v25 .update-card img{height:100%;min-height:124px;max-height:160px;}
 .updates-v25 .update-card>div{padding:12px;align-self:center;}
 .updates-v25 .update-card h3{font-size:15px;}
}


/* V2.6 — two carefully scoped, fully independent editorial sections.
   Official hero, portfolio gallery and services remain unchanged. */
.section.v26-what {background:#fff;padding:70px 0 68px;color:#101820;}
.v26-what .eyebrow,.v26-updates .eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:2px;line-height:1.5;color:#ff3d1a;}
.v26-what-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:46px;align-items:end;margin-top:18px;}
.v26-what h2{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-size:clamp(35px,3.7vw,58px);max-width:760px;letter-spacing:-.055em;line-height:1.08;font-weight:800;margin:0;color:#101820;}
.v26-what h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em;}
.v26-what-copy{max-width:480px;padding-bottom:2px;}
.v26-what-copy p{font-size:15px;line-height:1.67;color:#39474e;margin:0 0 12px;}
.v26-what-copy p:last-child{margin-bottom:0;color:#68767b;font-size:13px;line-height:1.7;}
.v26-topic-nav{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px;}
.v26-topic-nav a{display:inline-flex;align-items:center;gap:24px;justify-content:space-between;min-height:43px;padding:11px 15px;border:1px solid #d4dbd9;background:#fff;color:#34434a;font-size:12px;font-weight:750;line-height:1.2;transition:background .2s,color .2s,border-color .2s;}
.v26-topic-nav a:first-child{background:#101820;color:#fff;border-color:#101820;}
.v26-topic-nav a:hover,.v26-topic-nav a:focus-visible{background:#ff3d1a;color:#fff;border-color:#ff3d1a;}
.v26-topic-nav .v26-link-arrow{font-weight:800;font-size:15px;}
.section.v26-updates{background:#fff;padding:70px 0 74px;color:#101820;}
.v26-updates-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin:15px 0 30px;}
.v26-updates h2{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;max-width:740px;font-size:clamp(32px,3.5vw,52px);font-weight:800;letter-spacing:-.05em;line-height:1.11;color:#101820;margin:0;}
.v26-updates-head p{font-size:13px;line-height:1.65;color:#66747b;max-width:360px;margin:0 0 3px;}
.v26-subhead{border-top:1px solid #cdd5d2;margin:0 0 14px;padding-top:16px;display:flex;align-items:baseline;justify-content:space-between;gap:14px;}
.v26-subhead strong{font-size:11px;letter-spacing:1.55px;color:#101820;font-weight:800;line-height:1.4;}
.v26-subhead span{font-size:11px;color:#7a8588;line-height:1.3;}
.v26-thumb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:stretch;}
.v26-tile{display:flex;flex-direction:column;min-width:0;background:#f5f6f4;margin:0;}
.v26-thumb{width:100%;height:170px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#edf0ed;}
.v26-thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;}
.v26-thumb--work img{object-fit:cover;}
.v26-tile-copy{padding:15px 16px 17px;}
.v26-tile-copy .v26-tile-tag{display:block;font-size:9px;font-weight:850;letter-spacing:1.2px;color:#ff3d1a;line-height:1.5;margin-bottom:6px;}
.v26-tile-copy h3{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-size:18px;font-weight:800;letter-spacing:-.035em;color:#101820;line-height:1.2;margin:0 0 5px;}
.v26-tile-copy p{font-size:12px;line-height:1.5;color:#6c7a80;margin:0;}
.v26-poi-info{border:1px solid #dbe1de;background:#fff;padding:22px 21px;display:flex;flex-direction:column;justify-content:space-between;min-height:0;}
.v26-poi-info .v26-info-top{font-size:10px;letter-spacing:1.4px;font-weight:850;color:#ff3d1a;}
.v26-poi-info p{font-size:13px;line-height:1.65;color:#536269;margin:12px 0 18px;}
.v26-poi-info a{font-size:12px;font-weight:800;color:#101820;text-decoration:underline;text-decoration-color:#ff3d1a;text-underline-offset:4px;}
.v26-block{margin-top:26px;}
.v26-updates .v26-brief-note{color:#768389;font-size:10px;line-height:1.6;margin:19px 0 0;}
@media(max-width:950px){
 .v26-what-grid{grid-template-columns:1fr;gap:16px;align-items:start;}
 .v26-what h2{font-size:clamp(36px,5.8vw,54px);}
 .v26-updates-head{align-items:start;flex-direction:column;gap:13px;}
 .v26-thumb{height:145px;}
 .v26-tile-copy{padding:12px 13px 14px;}
 .v26-tile-copy h3{font-size:16px;}
 .v26-poi-info{padding:16px;}
}
@media(max-width:640px){
 .section.v26-what{padding:56px 0;}
 .v26-what h2{font-size:clamp(32px,8vw,43px);line-height:1.1;}
 .v26-what-copy p{font-size:14px;}
 .v26-topic-nav{gap:8px;margin-top:24px;}
 .v26-topic-nav a{min-height:40px;gap:10px;padding:9px 11px;font-size:11px;}
 .section.v26-updates{padding:55px 0 60px;}
 .v26-updates h2{font-size:clamp(30px,7vw,40px);}
 .v26-thumb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
 .v26-poi-info{grid-column:1 / -1;}
 .v26-thumb{height:155px;}
 .v26-updates .v26-thumb-grid--work .v26-tile:last-child{grid-column:1 / -1;max-width:calc((100% - 11px)/2);}
 .v26-subhead{align-items:start;flex-direction:column;gap:5px;}
}
@media(max-width:400px){
 .v26-thumb{height:135px;}
 .v26-tile-copy h3{font-size:15px;}
 .v26-tile-copy p{font-size:11px;}
}


/* CITYGUIDE V2.6 final — original image ratios / clean POI grids (no decorative borders). */
.v26-updates .v27-poi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;}
.v26-updates .v27-poi{margin:0;display:grid;grid-template-columns:minmax(0,43%) minmax(0,1fr);align-items:start;gap:18px;padding:0 0 10px;background:#fff;min-width:0;border:0;outline:0;box-shadow:none;}
.v26-updates .v27-poi-media{height:213px;min-width:0;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;background:#fff;border:0;outline:0;box-shadow:none;}
.v26-updates .v27-poi-media img{display:block;width:auto;height:auto;max-width:100%;max-height:208px;object-fit:contain;object-position:center top;box-shadow:none;border:0;outline:0;background:transparent;}
.v26-updates .v27-poi-copy{min-width:0;padding-top:5px;}
.v26-updates .v27-poi-label{font-size:10px;letter-spacing:1.3px;color:#fa3e25;font-weight:800;line-height:1.4;display:block;margin-bottom:13px;}
.v26-updates .v27-poi-copy h3{font-size:clamp(20px,1.8vw,27px);font-weight:790;letter-spacing:-.05em;line-height:1.13;margin:0 0 8px;color:#101820;}
.v26-updates .v27-poi-copy p{font-size:12px;line-height:1.6;color:#607075;margin:0 0 9px;}
.v26-updates .v27-poi-location{font-size:11px;color:#7d888d;line-height:1.5;}
.v26-updates .v27-journal{display:flex;gap:8px 20px;flex-wrap:wrap;align-items:baseline;justify-content:space-between;margin:12px 0 5px;padding:11px 0 0;border-top:1px solid #e5e9e7;}
.v26-updates .v27-journal p{font-size:11px;line-height:1.4;color:#647279;margin:0;}
.v26-updates .v27-journal a{color:#101820;font-size:11px;font-weight:780;text-decoration:underline;text-decoration-color:#ff3d1a;text-underline-offset:4px;}
.v26-updates .v27-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:17px;}
.v26-updates .v27-work{margin:0;min-width:0;background:#fff;border:0;outline:0;box-shadow:none;}
.v26-updates .v27-work-image{width:100%;height:194px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;border:0;outline:0;box-shadow:none;}
.v26-updates .v27-work-image img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center center;border:0;outline:0;box-shadow:none;background:transparent;}
.v26-updates .v27-work figcaption{padding:11px 0 5px;display:flex;flex-direction:column;gap:4px;}
.v26-updates .v27-work figcaption small{color:#ff3d1a;letter-spacing:1px;font-size:9px;font-weight:800;}
.v26-updates .v27-work figcaption strong{font-size:17px;letter-spacing:-.03em;line-height:1.3;color:#101820;}
.v26-updates .v27-work figcaption span{color:#66767c;font-size:11px;}
.v26-updates .v26-block{margin-top:26px;}
@media(max-width:1000px){
 .v26-updates .v27-poi{gap:12px;grid-template-columns:minmax(0,40%) minmax(0,1fr);}
 .v26-updates .v27-poi-media{height:188px;}
 .v26-updates .v27-poi-media img{max-height:185px;}
 .v26-updates .v27-poi-copy h3{font-size:20px;}
 .v26-updates .v27-work-image{height:168px;}
}
@media(max-width:760px){
 .v26-updates .v27-poi-grid{grid-template-columns:1fr;gap:18px;}
 .v26-updates .v27-poi{grid-template-columns:minmax(0,38%) minmax(0,1fr);border-bottom:1px solid #e3e8e5;padding-bottom:17px;}
 .v26-updates .v27-poi-media{height:200px;}
 .v26-updates .v27-poi-media img{max-height:198px;}
 .v26-updates .v27-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
 .v26-updates .v27-work-image{height:122px;}
 .v26-updates .v27-work figcaption strong{font-size:14px;}
}
@media(max-width:520px){
 .v26-updates .v27-poi{grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:12px;}
 .v26-updates .v27-poi-media{height:155px;}
 .v26-updates .v27-poi-media img{max-height:155px;}
 .v26-updates .v27-poi-copy h3{font-size:19px;}
 .v26-updates .v27-poi-copy p{font-size:11px;line-height:1.4;}
 .v26-updates .v27-poi-label{font-size:9px;letter-spacing:.6px;margin-bottom:6px;}
 .v26-updates .v27-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
 .v26-updates .v27-work-image{height:90px;}
 .v26-updates .v27-work figcaption small{font-size:8px;letter-spacing:.4px;}
 .v26-updates .v27-work figcaption strong{font-size:12px;line-height:1.3;}
 .v26-updates .v27-work figcaption span{font-size:9px;}
}

/* Balanced, neutral image panels: no pink outlines, no destructive photo crop. */
@media (min-width:761px) {
  .v26-updates .v27-work-image { height:250px; background:#f5f6f3; }
}
@media (max-width:760px) {
  .v26-updates .v27-work-image { background:#f5f6f3; }
}


/* V2.7 — clean photographic presentation, no decorative arrows or coloured image mats.
   Photos remain clickable for the fullscreen viewer. Crop settings are unchanged. */
.photo-card .expand,
.photo-card .card-arrow { display:none !important; }
.gallery-row .photo-trigger,
.gallery-row .card-lead .photo-trigger,
.v26-updates .v27-poi-media,
.v26-updates .v27-work-image,
.explainers figure,
.explainers img {
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
/* Work photos can keep their current height but sit directly on white, without gray sidebands. */
.v26-updates .v27-work-image { background:#fff !important; }
.v26-updates .v27-work-image img,
.v26-updates .v27-poi-media img { border:0 !important; outline:0 !important; box-shadow:none !important; }
.photo-card figcaption { justify-content:flex-start; }

/* V2.9 — consolidated cityguide introduction; existing original Budapest image */
.hero{min-height:565px}.hero-inner{padding:82px 0 100px;position:relative;z-index:2}.hero h1{font-family:Inter,Arial,sans-serif;font-size:clamp(39px,4.5vw,69px);letter-spacing:-.055em;line-height:1.08;max-width:770px;margin:16px 0 24px}.hero h1 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}.hero-sub{max-width:545px;margin:0 0 12px;font-size:clamp(15px,1.35vw,19px);line-height:1.55}.hero .eyebrow{font-size:11px}.section.v26-what{padding:34px 0 45px}.v26-topic-nav{margin:0}.cityguide-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.cityguide-cta .btn{display:inline-flex;align-items:center;gap:20px;justify-content:space-between}.hero-visual{width:57%}.hero-overlay{background:linear-gradient(90deg,#101820 0%,rgba(16,24,32,.84) 8%,transparent 46%)}
@media(max-width:700px){.hero{min-height:0;display:block}.hero-visual{position:relative;width:100%;height:230px;left:auto;right:auto;top:auto}.hero-visual img{object-fit:cover}.hero-overlay{display:none}.hero-inner{padding:32px 0 38px}.hero h1{font-size:clamp(36px,8vw,49px)}.hero-sub{font-size:15px}.hero-foot{position:relative}.cityguide-cta{flex-direction:column}.cityguide-cta .btn{width:100%}.section.v26-what{padding:26px 0 36px}}

/* V3.0 — compact editorial hero, desktop and mobile */
@media(min-width:701px){
.hero{min-height:0;height:510px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.hero-visual{position:absolute;top:0;right:0;bottom:0;left:auto;width:59%;height:100%}
.hero-visual img{object-fit:cover;object-position:center 53%}
.hero-overlay{background:linear-gradient(90deg,#101820 0%,rgba(16,24,32,.75) 9%,transparent 35%)}
.hero-inner{width:100%;padding:38px 0 68px;position:relative;z-index:2}
.hero-inner .eyebrow{margin-bottom:15px}
.hero h1{font-size:clamp(38px,4.0vw,59px);line-height:1.08;letter-spacing:-.055em;max-width:660px;margin:0 0 22px}
.hero h1 em{font-size:.93em}
.hero-sub{font-size:clamp(14px,1.1vw,17px);line-height:1.55;max-width:390px;margin:0}
.hero-foot{position:absolute;bottom:0;left:0;right:0;z-index:3}
.section.v26-what{padding:24px 0 28px}
.v26-what .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.v26-topic-nav{margin:0;gap:9px}
.cityguide-cta{margin:0;flex-shrink:0}
.cityguide-cta .btn{min-height:43px;padding:11px 16px;font-size:12px}
}
@media(max-width:700px){
.hero{display:flex;flex-direction:column;min-height:0}
.hero-visual{order:2;position:relative;width:100%;height:235px}
.hero-visual img{object-fit:cover;object-position:center 58%}
.hero-inner{order:1;padding:34px 0 30px}
.hero h1{font-size:clamp(33px,8.3vw,49px);line-height:1.09;margin:12px 0 18px}
.hero-sub{font-size:14px;line-height:1.55;max-width:420px;margin:0}
.hero-foot{order:3;position:relative}
.section.v26-what{padding:20px 0 25px}
.v26-topic-nav{margin:0;gap:7px}
.v26-topic-nav a{font-size:11px;padding:10px 12px;min-height:40px}
.cityguide-cta{margin-top:16px}
.cityguide-cta .btn{width:100%;justify-content:space-between}
}

/* V3.1 — unified hero navigation; retains original Budapest photograph */
.hero-navigation{margin-top:24px;max-width:760px}
.hero-navigation .v26-topic-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.hero-navigation .v26-topic-nav a{min-height:42px;padding:10px 13px;font-size:12px;background:rgba(16,24,32,.88);color:#fff;border:1px solid #87939a}
.hero-navigation .v26-topic-nav a:first-child{background:#fff;color:#101820;border-color:#fff}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.hero-actions .btn{display:inline-flex;justify-content:space-between;align-items:center;gap:18px;min-height:48px;padding:13px 17px;font-size:13px;text-decoration:none}
.hero-actions .btn-outline{color:#fff;border:1px solid #a5b0b6;background:rgba(16,24,32,.82)}
@media(min-width:701px){.hero{height:600px}.hero-inner{padding:36px 0 72px}.hero h1{font-size:clamp(35px,3.6vw,54px);max-width:610px;margin-bottom:14px}.hero-sub{max-width:465px}.hero-navigation{max-width:720px}.hero-visual{width:59%}}
@media(max-width:700px){.hero-inner{padding:28px 0}.hero-navigation{margin-top:18px}.hero-navigation .v26-topic-nav a{font-size:11px;padding:9px 10px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.hero-visual{height:235px}}

/* V3.2 — clearly separated navigation and CTAs; no overlapping image */
.hero-navigation{display:flex;flex-direction:column;gap:19px;margin-top:25px}
.hero-navigation .v26-topic-nav{display:flex;gap:8px;flex-wrap:wrap;align-items:stretch}
.hero-navigation .v26-topic-nav a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:10px 12px;white-space:nowrap;font-size:11px}
.hero-navigation .hero-actions{display:flex;gap:12px;margin-top:0}
.hero-navigation .hero-actions .btn{box-sizing:border-box;min-height:51px;display:flex;align-items:center;justify-content:space-between;padding:12px 15px;font-size:12px;white-space:nowrap}
@media(min-width:1001px){
 .hero{height:620px}
 .hero-inner{padding:35px 0 70px}
 .hero-navigation{max-width:555px}
 .hero-navigation .v26-topic-nav a{flex:0 1 auto}
 .hero-navigation .hero-actions .btn{flex:1 1 0}
 .hero h1{font-size:clamp(35px,3.45vw,53px)}
}
@media(min-width:701px) and (max-width:1000px){
 .hero{height:auto;min-height:610px}
 .hero-inner{padding:45px 0 90px}
 .hero-navigation{max-width:490px}
 .hero-navigation .hero-actions{flex-wrap:wrap}
 .hero-navigation .hero-actions .btn{flex:1 1 205px}
}
@media(max-width:700px){
 .hero-navigation{max-width:100%;gap:18px;margin-top:22px}
 .hero-navigation .v26-topic-nav{gap:8px}
 .hero-navigation .v26-topic-nav a{white-space:normal;font-size:11px;min-height:44px}
 .hero-navigation .hero-actions{gap:10px;flex-direction:column}
 .hero-navigation .hero-actions .btn{width:100%;font-size:13px}
}

/* V3.4 — Both photographic captions grouped at the right */
.hero-foot .hero-foot-inner.hero-foot-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;text-align:right;padding-top:11px;padding-bottom:11px;}
.hero-foot .hero-foot-inner.hero-foot-right span{display:block;width:100%;text-align:right;}
@media(max-width:580px){.hero-foot .hero-foot-inner.hero-foot-right{align-items:flex-end;gap:5px;padding-top:12px;padding-bottom:12px;}.hero-foot .hero-foot-inner.hero-foot-right span{text-align:right;}}
