:root{--paper:#f7f6f3;--ink:#20201f;--muted:#777873;--line:#dddcd7;--tile:#eae9e5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{font:inherit;color:inherit}a{text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}[hidden]{display:none!important}.site-header{height:84px;padding:0 3.3%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:clamp(25px,2.4vw,36px);letter-spacing:.11em;font-weight:400;line-height:1}.site-header nav{display:flex;gap:36px;font-size:11px;letter-spacing:.04em}.site-header nav a:hover,footer a:hover{opacity:.5}.work{padding:0 2.1% 70px}.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:start}.project{display:block;text-align:left;background:none;border:0;padding:0;min-width:0}.project-visual{aspect-ratio:2/3;overflow:hidden;background:var(--tile)}.project-visual img{height:100%;width:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.project:hover img{transform:scale(1.035)}.project-meta{display:grid;grid-template-columns:1fr auto;gap:12px;padding:25px 22px 38px;align-items:end}.project-left{min-width:0}.project-index{display:block;font-size:10px;color:var(--muted);margin-bottom:12px;letter-spacing:.07em}.project-index:after{content:' —';color:#bbb}.project-name{display:block;font-size:clamp(26px,2.7vw,46px);font-weight:400;letter-spacing:-.065em;line-height:1.08;overflow-wrap:anywhere}.project-arrow{font-size:25px;font-weight:300;line-height:1}.loading{padding:25px;color:var(--muted);font-size:13px}.contact{margin:0 3.3%;border-top:1px solid var(--line);padding:32px 0 90px}.contact-head{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.09em}.contact-content{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-top:70px}.contact h2{font-size:clamp(48px,8vw,120px);letter-spacing:-.075em;font-weight:400;line-height:1;margin:0}.contact-links{display:flex;flex-direction:column;gap:12px;align-items:flex-start;font-size:13px}.contact-links p{margin:0 0 8px}.contact-links a:hover{text-decoration:underline}.gallery-page{padding:15px 3.3% 100px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:22px 0;font-size:11px;color:var(--muted);letter-spacing:.06em}.gallery-toolbar button,.bottom-back{border:0;background:none;padding:0;color:var(--ink);font-size:11px;letter-spacing:.05em}.gallery-page h1{font-size:clamp(52px,8vw,125px);font-weight:400;letter-spacing:-.075em;margin:35px 0 55px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.photo{aspect-ratio:4/3;background:var(--tile);border:0;padding:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.photo img{width:100%;height:100%;object-fit:contain;transition:transform .25s}.photo:hover img{transform:scale(1.025)}.bottom-back{margin-top:75px}footer{border-top:1px solid var(--line);margin:0 3.3%;padding:35px 0 45px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;letter-spacing:.06em}footer div{display:flex;gap:35px}dialog{border:0;background:rgba(18,19,18,.985);width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:55px 65px;color:white}dialog::backdrop{background:#111}dialog[open]{display:flex;align-items:center;justify-content:center}#large{max-width:100%;max-height:calc(100dvh - 115px);object-fit:contain;user-select:none}.close,.nav{position:absolute;color:white;background:none;border:0;cursor:pointer}.close{right:26px;top:16px;font-size:36px}.nav{font-size:55px;top:50%;transform:translateY(-50%)}.prev{left:12px}.next{right:12px}#counter{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:.12em}@media(max-width:900px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}.project-visual{aspect-ratio:3/4}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.project-meta{padding:19px 10px 28px}.contact-content{align-items:start;flex-direction:column}.contact-links{padding-top:20px}}@media(max-width:560px){.site-header{height:73px;padding:0 4%}.brand{font-size:24px}.site-header nav{gap:20px}.work{padding:0 3% 50px}.projects{grid-template-columns:1fr;gap:6px}.project-visual{aspect-ratio:4/5}.project-meta{padding:15px 6px 34px}.project-name{font-size:36px}.contact{margin:0 4%;padding-bottom:75px}.gallery-page{padding:10px 4% 75px}.gallery-page h1{margin:25px 0 35px}.gallery{gap:7px}.photo{padding:5px}.contact-head span:last-child{display:none}footer{margin:0 4%}dialog{padding:55px 35px}.nav{font-size:38px}.prev{left:2px}.next{right:2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Copertine orizzontali compatte, senza ritagli */
.project-visual{aspect-ratio:3/2;position:relative;overflow:hidden}
.project-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 1.1s ease;transform:none!important;pointer-events:none}
.project-visual img.active{opacity:1}
.project-meta{padding:17px 12px 30px}
.project-index{margin-bottom:7px}
.project-name{font-size:clamp(23px,2.3vw,38px)}
.floating-back{position:fixed;z-index:20;top:95px;left:3.3%;border:1px solid var(--line);background:rgba(247,246,243,.96);color:var(--ink);padding:12px 16px;font-size:11px;letter-spacing:.06em;box-shadow:0 4px 18px rgba(0,0,0,.05);backdrop-filter:blur(8px)}
.floating-back:hover{background:#eae9e5}
.gallery-page{padding-top:60px}
img{-webkit-user-drag:none;user-select:none;-webkit-user-select:none}
@media(max-width:900px){.project-visual{aspect-ratio:3/2}}
@media(max-width:560px){.project-visual{aspect-ratio:3/2}.floating-back{top:auto;bottom:18px;left:16px;padding:14px 17px;box-shadow:0 5px 25px rgba(0,0,0,.15)}.gallery-page{padding-top:22px}.project-meta{padding:13px 5px 29px}.project-name{font-size:33px}}
@media(prefers-reduced-motion:reduce){.project-visual img{transition:none}}

/* WORLD ATLAS — editorial map navigation */
.map-section{padding:35px 3.3% 95px;scroll-margin-top:12px}
.map-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:10px 0 40px}
.eyebrow,.work-heading,.map-bottom{font-size:10px;letter-spacing:.13em;color:var(--muted)}
.map-intro h1{font-weight:400;letter-spacing:-.065em;line-height:1.08;font-size:clamp(38px,5.7vw,84px);margin:19px 0 0}
.map-intro p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 6px}
.map-intro p a{color:var(--ink);border-bottom:1px solid var(--ink)}
.map-frame{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0 15px}
.world-map{position:relative;aspect-ratio:1080/435;width:100%;overflow:visible;color:#d7d7d1;background:transparent}
.world-shape{display:block;width:100%;height:100%}
.map-pins{position:absolute;inset:0;pointer-events:none}
.map-pin{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;transform:translate(-6px,-50%);border:0;background:transparent;padding:12px 5px;white-space:nowrap;pointer-events:auto}
.map-dot{width:12px;height:12px;flex:0 0 12px;background:var(--ink);border:3px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px var(--ink);transition:transform .2s}
.map-pin-label{background:var(--paper);font-size:clamp(10px,1.05vw,13px);letter-spacing:.01em;padding:6px 8px;transition:background .2s}
.map-pin:hover .map-dot,.map-pin:focus-visible .map-dot{transform:scale(1.35)}
.map-pin:hover .map-pin-label,.map-pin:focus-visible .map-pin-label{background:#e7e5df}
.map-pin--edinburgh{transform:translate(-100%,-115%);flex-direction:row-reverse}
.map-pin--york{transform:translate(0%,6%)}
.map-pin--patagonia{transform:translate(-5%,-50%)}
.map-bottom{display:flex;justify-content:space-between;padding:10px 0 0}
.work{scroll-margin-top:25px}
.work-heading{display:flex;justify-content:space-between;gap:15px;padding:0 1.2% 22px}
@media(max-width:900px){.map-section{padding:25px 3% 70px}.map-intro{padding-bottom:25px}.map-intro h1{font-size:clamp(34px,6vw,62px)}.map-pin-label{font-size:11px}}
@media(max-width:560px){.map-section{padding:25px 4% 55px}.map-intro{display:block}.map-intro h1{font-size:43px}.map-intro p{margin-top:15px}.world-map{aspect-ratio:1080/435}.world-shape{height:100%;object-fit:contain}.map-pin{gap:4px;padding:8px 2px}.map-dot{width:9px;height:9px;flex-basis:9px;border-width:2px}.map-pin-label{font-size:10px;padding:4px}.map-pin--edinburgh{transform:translate(-95%,-135%)}.map-pin--york{transform:translate(0%,25%)}.map-bottom{font-size:8px}.work-heading{font-size:9px}}

/* ALTROVE. / Compact atlas refinement */
@media (min-width: 901px) {
  .map-section {padding-top: 12px; padding-bottom: 52px;}
  .map-intro {padding-bottom: 22px;}
  .map-intro h1 {font-size: clamp(36px, 4.1vw, 62px); margin-top: 12px;}
  .map-frame {width: 84%; max-width: 1050px; margin-inline: auto; padding-top: 12px; padding-bottom: 12px;}
  .world-map {max-height: 425px;}
}
@media (min-width: 561px) and (max-width: 900px) {
  .map-section {padding-bottom: 45px;}
  .map-intro {padding-bottom: 20px;}
  .map-frame {width: 92%; margin-inline: auto; padding-top: 12px; padding-bottom: 12px;}
}
@media (max-width: 560px) {
  .map-section {padding-top: 10px; padding-bottom: 36px;}
  .map-intro {padding-bottom: 15px;}
  .map-intro h1 {font-size: 36px; margin-top: 10px;}
  .map-intro p {margin-top: 10px;}
  .map-frame {width: 100%; padding-top: 12px; padding-bottom: 10px;}
  .map-bottom {padding-top: 8px;}
}

/* Atlas: coordinate frame matches the SVG exactly at every viewport width. */
.world-map{width:100%;height:auto;aspect-ratio:1080 / 435;max-height:none!important;overflow:visible}
.world-shape{display:block;width:100%;height:100%;object-fit:fill}
.map-pins{position:absolute;inset:0;width:100%;height:100%}
.map-pin,.map-pin--edinburgh,.map-pin--york,.map-pin--patagonia{
  position:absolute;display:block;width:24px;height:24px;min-width:24px;
  padding:0;margin:0;transform:translate(-50%,-50%);border:0;
  background:transparent;cursor:pointer;z-index:2;
}
.map-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
 width:12px;height:12px;display:block;background:var(--ink);
 border:3px solid var(--paper);border-radius:50%;box-shadow:0 0 0 1px var(--ink)}
.map-pin:hover .map-dot,.map-pin:focus-visible .map-dot{transform:translate(-50%,-50%) scale(1.3)}
.map-pin-label{position:absolute;left:calc(100% + 3px);top:50%;transform:translateY(-50%);
 color:var(--ink);background:var(--paper);font-size:12px;padding:4px 6px;
 white-space:nowrap;pointer-events:none}
.map-pin--edinburgh .map-pin-label{left:auto;right:calc(100% + 4px)}
.map-pin--york .map-pin-label{top:calc(100% + 2px);transform:none}
@media(max-width:560px){
 .world-map{aspect-ratio:1080 / 435!important;max-height:none!important}
 .map-pin,.map-pin--edinburgh,.map-pin--york,.map-pin--patagonia{
  width:24px;height:24px;min-width:24px;transform:translate(-50%,-50%)}
 .map-dot{width:10px;height:10px;border-width:2px}
 .map-pin-label{font-size:10px;padding:3px 4px}
 .map-pin--edinburgh .map-pin-label{right:calc(100% + 2px)}
 .map-pin--york .map-pin-label{top:calc(100% + 2px)}
}

/* ALTROVE. / Geographic atlas — within the original map footprint */
.world-map{position:relative;isolation:isolate;overflow:hidden!important;}
.world-shape{width:100%;height:100%;display:block;}
.atlas-country{fill:#d7d7d1;stroke:#f7f6f2;stroke-width:.65;vector-effect:non-scaling-stroke;transition:fill .2s ease;}
.atlas-country--active{fill:#383838;cursor:pointer;}
.atlas-country--active:hover,.atlas-country--active:focus-visible,.atlas-country--selected{fill:#77736c;outline:none;}
.atlas-nav{position:absolute;top:8px;left:8px;z-index:3;display:flex;gap:5px;}
.atlas-region{appearance:none;border:1px solid #d8d7d1;background:rgba(247,246,242,.96);color:#333;border-radius:0;padding:8px 21px 8px 9px;font-size:10px;font-weight:500;line-height:1.2;letter-spacing:.07em;max-width:150px;cursor:pointer;}
.atlas-region:disabled{opacity:.4;cursor:default;}
.atlas-panel{position:absolute;z-index:4;right:8px;top:8px;width:min(235px,48%);max-height:calc(100% - 16px);overflow:auto;background:rgba(247,246,242,.98);border:1px solid #d8d7d1;box-shadow:0 6px 24px #0000000d;padding:12px;}
.atlas-panel[hidden]{display:none!important;}
.atlas-panel-head{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.13em;color:#666;margin-bottom:7px;}
.atlas-panel-head button{background:none;border:0;color:#333;font-size:22px;cursor:pointer;padding:0 4px;}
.atlas-destination{display:block;text-align:left;width:100%;background:none;border:0;border-top:1px solid #deddd7;padding:12px 0;color:#242424;font-size:clamp(12px,1.5vw,16px);cursor:pointer;}
.atlas-destination:hover,.atlas-destination:focus-visible{text-decoration:underline;}
@media(max-width:560px){.atlas-nav{top:3px;left:3px;gap:3px}.atlas-region{font-size:9px;padding:6px 4px;max-width:100px}.atlas-panel{top:3px;right:3px;padding:7px;width:46%;max-height:calc(100% - 6px)}.atlas-panel-head{font-size:8px}.atlas-destination{font-size:12px;padding:7px 0}}

/* ALTROVE. — refined atlas proportions and section hierarchy */
@media (min-width: 901px) {
 .map-frame {width:92%;max-width:1220px;padding-top:10px;padding-bottom:8px;}
 .map-section {padding-bottom:40px;}
 .map-intro {padding-bottom:20px;}
}
@media (min-width: 561px) and (max-width: 900px) {
 .map-frame {width:96%;padding-top:10px;padding-bottom:8px;}
 .map-section {padding-bottom:36px;}
}
@media (max-width:560px) {
 .map-section {padding-bottom:28px;}
 .map-frame {padding-top:8px;padding-bottom:6px;}
 .atlas-region {min-height:30px;}
}

/* ALTROVE. — minimal photographic edition */
.site-header{height:auto;min-height:104px;padding:24px 3.3% 23px;align-items:center}
.identity{display:flex;flex-direction:column;gap:7px;align-items:flex-start}
.byline{font-size:12px;letter-spacing:.005em;color:#777873}
.site-header nav{gap:32px}
.work{padding:18px 3.3% 45px}
.work-heading{align-items:center;padding:0 0 22px;gap:20px}
.filters{display:flex;gap:8px;align-items:center}
.filters select{appearance:auto;min-height:39px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-size:11px;letter-spacing:.045em;padding:8px 11px;min-width:145px;cursor:pointer}
.filters select:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.project-visual{aspect-ratio:3/2}
.project-meta{padding:16px 5px 34px}
.project-index{font-size:10px;margin-bottom:7px}
.project-name{font-size:clamp(21px,2vw,31px);letter-spacing:-.035em}
.project-arrow{font-size:19px}
.filter-empty{font-size:13px;color:var(--muted);padding:28px 0}
.contact{padding:23px 0 34px}
.contact-head{font-size:10px}
.contact-content{padding-top:28px;display:block}
.contact-links{display:flex;flex-direction:row;gap:12px 35px;flex-wrap:wrap;align-items:center;font-size:12px}
.contact-links p{margin:0;font-size:14px}
footer{padding:20px 0 28px;font-size:10px;letter-spacing:.015em}
.gallery-page h1{font-size:clamp(36px,5vw,72px);margin:22px 0 38px}
.copyright-toast{position:fixed;z-index:9999;width:230px;background:#fff;color:#222;border:1px solid #ddd;padding:11px 13px;font-size:11px;line-height:1.5;box-shadow:0 5px 22px #0002;pointer-events:none}
@media(max-width:900px){.project-visual{aspect-ratio:3/2}}
@media(max-width:560px){
 .site-header{min-height:90px;padding:18px 4%}
 .brand{font-size:25px}.byline{font-size:11px}
 .site-header nav{gap:18px;font-size:10px}
 .work{padding:12px 4% 28px}
 .work-heading{align-items:flex-start;flex-direction:column;gap:14px;padding-bottom:18px}
 .filters{width:100%}.filters select{flex:1;min-width:0;max-width:50%;font-size:11px;min-height:44px}
 .project-visual{aspect-ratio:3/2}.project-meta{padding:13px 3px 27px}
 .project-name{font-size:26px}
 .contact{padding-bottom:25px}.contact-content{padding-top:20px}
 .contact-links{flex-direction:column;align-items:flex-start;gap:12px}
 footer{flex-direction:column;gap:12px}footer div{gap:22px}
}

/* ALTROVE. — editorial galleries and minimal footer */
.site-header{min-height:100px}
.work-heading{justify-content:flex-start;padding:0 0 18px}
.work-heading .filters{margin-left:0}
.gallery{display:columns;columns:3;column-gap:clamp(14px,2vw,32px)}
.gallery .photo{display:block;width:100%;height:auto;aspect-ratio:auto;break-inside:avoid;page-break-inside:avoid;margin:0 0 clamp(14px,2vw,32px);padding:0;border:0;background:none;text-align:left;overflow:visible}
.gallery .photo img{width:100%;height:auto;object-fit:contain;display:block;transform:none!important;transition:opacity .25s}
.gallery .photo:hover img{opacity:.86}
.gallery-page h1{font-size:clamp(32px,4vw,62px);margin:14px 0 34px}
footer{align-items:center;padding:24px 0 30px;letter-spacing:0;font-size:10px}
.footer-social{display:flex;align-items:center;gap:22px}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;color:#777873;transition:color .2s}
.footer-social a:hover,.footer-social a:focus-visible{color:#20201f;opacity:1}
.footer-social svg{width:21px;height:21px}
@media(max-width:900px){.gallery{columns:2}}
@media(max-width:560px){.site-header{min-height:84px}.gallery{columns:1;column-gap:0}.gallery .photo{margin-bottom:20px}footer{flex-direction:row;align-items:center;gap:12px}footer>span{max-width:68%;line-height:1.5}.footer-social{gap:8px}.footer-social a{width:44px;height:44px}}

/* Gallery refinement: compact editorial masonry, no cropping */
.gallery-page{padding-top:8px}
.gallery-heading{border-top:1px solid var(--line);padding:18px 0 24px;display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.gallery-page .gallery-heading h1{font-size:clamp(30px,3.1vw,50px);font-weight:400;letter-spacing:-.055em;line-height:1.12;margin:0}
.gallery-heading #gallery-count{font-size:10px;letter-spacing:.07em;color:var(--muted);white-space:nowrap}
.gallery{display:block;columns:4;column-gap:clamp(12px,1.35vw,24px)}
.gallery .photo{margin-bottom:clamp(12px,1.35vw,24px);break-inside:avoid;display:inline-block;vertical-align:top}
.gallery .photo img{width:100%;height:auto;object-fit:contain}
#lightbox .copyright-toast{position:fixed;z-index:9999}
@media(max-width:1150px){.gallery{columns:3}}
@media(max-width:760px){.gallery{columns:2}.gallery-heading{padding:14px 0 20px}}
@media(max-width:440px){.gallery{columns:1}.gallery-page .gallery-heading h1{font-size:32px}.gallery-heading #gallery-count{font-size:9px}}

/* Filters: unobtrusive one-click reset */
.filters .reset-filters{border:0;background:none;color:#777873;font-size:11px;letter-spacing:.065em;min-height:39px;padding:8px 12px;white-space:nowrap;cursor:pointer;transition:color .2s}
.filters .reset-filters:hover,.filters .reset-filters:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.filters .reset-filters:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
/* The dialog itself must be transparent, otherwise its full-screen background hides the gallery. */
#lightbox{background:rgba(23,25,25,.83)}
#lightbox::backdrop{background:transparent}
@media(max-width:560px){.filters{flex-wrap:wrap}.filters select{flex:1 1 35%;max-width:none}.filters .reset-filters{min-height:44px;padding:8px 6px}}

/* ALTROVE. — editorial identity / understated depth */
:root{--paper:#f7f6f3;--ink:#222321;--accent:#696e69}
.site-header{min-height:120px;padding-top:27px;padding-bottom:25px}
.identity{gap:10px}
.brand{display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:clamp(32px,3.1vw,49px);font-weight:300;letter-spacing:.155em;line-height:1.08;white-space:nowrap;transition:letter-spacing .4s cubic-bezier(.2,.7,.2,1),color .25s}
.brand:hover,.brand:focus-visible{letter-spacing:.185em;color:#555b56}
.brand-period{color:#777c75;letter-spacing:0}
.byline{font-size:9px;letter-spacing:.155em;line-height:1.5;color:#888a85;font-weight:400}
.byline strong{color:#535751;font-weight:500}
/* A subtle gallery-like separation; no visible drop shadows on photographs. */
.site-header{border-bottom:1px solid rgba(40,43,38,.055)}
.project-visual{transition:background-color .3s}
.project-visual img{transition:opacity 1.1s ease,filter .65s ease!important}
.project:hover .project-visual img.active,.project:focus-visible .project-visual img.active{filter:contrast(1.045) brightness(.975)}
.project-arrow{transition:transform .35s ease}
.project:hover .project-arrow,.project:focus-visible .project-arrow{transform:translate(4px,-3px)}
.gallery .photo img{transition:opacity .4s ease,filter .4s ease!important}
.gallery .photo:hover img,.gallery .photo:focus-visible img{opacity:1;filter:brightness(.94)}
#lightbox[open]{animation:altrove-appear .24s ease-out both}
#lightbox #large{animation:altrove-photo .28s ease-out both}
@keyframes altrove-appear{from{opacity:0}to{opacity:1}}
@keyframes altrove-photo{from{opacity:.65;transform:scale(.992)}to{opacity:1;transform:scale(1)}}
@media(max-width:560px){.site-header{min-height:100px;padding-top:20px;padding-bottom:19px}.brand{font-size:30px;letter-spacing:.12em}.byline{font-size:8px;letter-spacing:.11em}}
@media(prefers-reduced-motion:reduce){#lightbox[open],#lightbox #large{animation:none}.brand,.project-arrow,.gallery .photo img{transition:none!important}}

/* ALTROVE. / Eight destinations, editorial visual rhythm */
@media(min-width:761px){.projects{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(18px,2.4vw,40px);row-gap:8px}}
.project-visual{aspect-ratio:3/2}
.project-meta{padding-top:17px;padding-bottom:43px}
/* Fixed image geometry before loading prevents masonry reflow / layout shifts. */
.gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:8px;grid-auto-flow:row dense;column-gap:clamp(18px,2.2vw,36px);row-gap:clamp(18px,2.2vw,36px)}
.gallery .photo{display:block!important;position:relative;min-width:0;width:100%;margin:0!important;padding:0!important;align-self:start;break-inside:auto;overflow:hidden;aspect-ratio:auto}
.gallery .photo img{width:100%;height:auto;display:block;aspect-ratio:auto;object-fit:contain}
.gallery .photo--feature{grid-column:span 2}
#lightbox{background:rgba(23,25,25,.90)}
@media(max-width:900px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gallery{grid-template-columns:1fr;column-gap:0;row-gap:20px}.gallery .photo--feature{grid-column:span 1}.projects{grid-template-columns:1fr}}


/* ALTROVE. — experimental photographic atlas (homepage only) */
.work{padding-left:clamp(24px,5.2vw,105px);padding-right:clamp(24px,5.2vw,105px)}
.atlas-intro{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:24px 0 23px;font-size:9px;letter-spacing:.19em;color:#92918a}
.atlas-direction{font-size:15px;vertical-align:-1px;margin:0 8px}
.projects.projects--atlas{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.45fr) minmax(0,.8fr);column-gap:clamp(22px,4.5vw,90px);align-items:start;row-gap:0;min-height:600px}
.atlas-lane{min-width:0;position:relative}
.atlas-lane-label{font-size:9px;letter-spacing:.17em;color:#aaa9a2;padding:0 0 27px}
.atlas-lane-cards{display:flex;flex-direction:column;align-items:stretch;gap:clamp(52px,6vw,116px)}
.atlas-lane--americas{padding-top:130px}
.atlas-lane--europe{padding-top:0}
.atlas-lane--africa{padding-top:320px}
.atlas-lane--americas .atlas-lane-cards .project:nth-child(2){margin-left:13%;width:87%}
.atlas-lane--americas .atlas-lane-cards .project:nth-child(3){margin-left:5%;width:93%}
.atlas-lane--europe .atlas-lane-cards{gap:clamp(45px,5.1vw,95px)}
.atlas-lane--europe .atlas-lane-cards .project:nth-child(1){width:76%;margin-left:15%}
.atlas-lane--europe .atlas-lane-cards .project:nth-child(2){width:85%;margin-left:0}
.atlas-lane--europe .atlas-lane-cards .project:nth-child(3){width:82%;margin-left:17%}
.atlas-lane--europe .atlas-lane-cards .project:nth-child(4){width:92%;margin-left:0}
.atlas-lane--africa .atlas-lane-cards .project{width:100%}
.projects--atlas .project{display:block;width:100%;min-width:0;text-align:left;transition:opacity .28s ease,transform .4s ease}
.projects--atlas .project:hover{transform:translateY(-4px)}
.projects--atlas .project-visual{aspect-ratio:unset;height:auto;min-height:0;background:transparent;overflow:hidden;position:relative}
.projects--atlas .project-visual::before{content:'';display:block;aspect-ratio:var(--cover-ratio,3/2);background:#e9e8e3}
.projects--atlas .project-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.projects--atlas .project-meta{padding:12px 0 0;display:flex;align-items:center;gap:9px}
.projects--atlas .project-left{display:flex;gap:10px;align-items:baseline;min-width:0}
.projects--atlas .project-index{display:inline;font-size:9px;letter-spacing:.05em;margin:0;color:#aaa9a2}
.projects--atlas .project-index::after{content:none}
.projects--atlas .project-name{font-size:clamp(15px,1.55vw,23px);letter-spacing:-.025em;line-height:1.25;overflow-wrap:normal}
.projects--atlas .project-arrow{margin-left:auto;font-size:16px}
.projects--atlas.atlas-filtered{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:clamp(25px,5vw,80px)}
.projects--atlas.atlas-filtered .atlas-lane{padding-top:0}
.projects--atlas.atlas-filtered .atlas-lane-cards{gap:40px}
@media(max-width:1050px){.projects.projects--atlas{column-gap:clamp(16px,3vw,45px)}.atlas-lane--americas{padding-top:85px}.atlas-lane--africa{padding-top:230px}}
@media(max-width:760px){.work{padding-left:5%;padding-right:5%}.projects.projects--atlas,.projects--atlas.atlas-filtered{display:block;min-height:0}.atlas-lane,.projects--atlas.atlas-filtered .atlas-lane{padding-top:0;margin-bottom:52px}.atlas-lane-label{padding:0 0 17px}.atlas-lane-cards,.projects--atlas.atlas-filtered .atlas-lane-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:26px 18px}.projects--atlas .atlas-lane-cards .project,.projects--atlas .atlas-lane-cards .project:nth-child(n){margin:0;width:100%}.projects--atlas .atlas-lane-cards .project:nth-child(even){margin-top:40px}.projects--atlas .project-name{font-size:18px}.atlas-intro{padding:19px 0}}
@media(max-width:440px){.atlas-lane-cards,.projects--atlas.atlas-filtered .atlas-lane-cards{gap:22px 13px}.projects--atlas .project-name{font-size:15px}.projects--atlas .project-meta{padding-top:9px}.projects--atlas .project-left{gap:5px}.projects--atlas .project-arrow{font-size:13px}.atlas-intro{font-size:8px;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){.projects--atlas .project{transition:none}}


/* ALTROVE. / Editorial destination index — October 2026 */
.work{padding:0 4.2% 85px}
.site-header{padding-left:4.2%;padding-right:4.2%}
.editorial-intro{border-top:1px solid var(--line);padding:25px 0 38px;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.14em;color:#777873}
.editorial-intro span:last-child{color:#a09e97}
.editorial-shell{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:clamp(42px,6.5vw,112px);align-items:start}
.projects.projects--editorial{display:block;min-width:0;min-height:0}
.destination{width:100%;margin:0 0 clamp(56px,8vw,130px);scroll-margin-top:110px}
.destination .project{width:100%;display:block;text-align:left}
.destination .project-visual{width:100%;aspect-ratio:var(--cover-ratio,3/2);max-height:610px;background:#eae9e5}
.destination .project-visual img{object-fit:contain}
.destination:nth-child(3n+2){width:81%;margin-left:auto}
.destination:nth-child(4n+3){width:88%}
.destination:nth-child(5n+4){width:75%;margin-left:8%}
.destination .project-meta{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:19px 0 0}
.destination .project-index{font-size:9px;letter-spacing:.12em;color:#99978e;margin:0 0 11px}
.destination .project-index:after{content:none}
.destination .project-name{font-size:clamp(27px,3vw,45px);letter-spacing:-.045em;line-height:1.12}
.project-location{display:block;font-size:10px;letter-spacing:.13em;color:#85847d;margin-top:10px}
.project-coordinates{font-size:10px;letter-spacing:.06em;color:#85847d;white-space:nowrap;padding-bottom:3px}
.destination-sidebar{position:sticky;top:34px;align-self:start}
.sidebar-inner{border-top:1px solid var(--line);padding-top:20px}
.sidebar-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em;color:#87857e;margin-bottom:24px}
#destination-index{display:flex;flex-direction:column;gap:0}
.index-link{display:flex;gap:15px;align-items:baseline;padding:11px 0;font-size:14px;color:#88867f;transition:color .2s ease;line-height:1.35}
.index-link:hover,.index-link:focus-visible,.index-link.is-active{color:#1f201e}
.index-link.is-active{font-weight:600}
.index-number{font-size:9px;color:#aaa8a0;letter-spacing:.06em;min-width:20px}
.sidebar-bottom{border-top:1px solid var(--line);margin-top:29px;padding-top:18px;font-size:9px;line-height:1.8;letter-spacing:.12em;color:#a09e97}
@media(min-width:1300px){.editorial-shell{grid-template-columns:minmax(0,900px) 230px;justify-content:space-between}.destination .project-visual{max-height:670px}}
@media(max-width:760px){.work{padding:0 4% 65px}.site-header{padding-left:4%;padding-right:4%}.editorial-intro{padding:20px 0 25px;font-size:9px}.editorial-intro span:last-child{display:none}.editorial-shell{display:flex;flex-direction:column-reverse;gap:30px}.destination-sidebar{position:static;width:100%}.sidebar-inner{padding-top:13px}.sidebar-top{margin-bottom:8px}.sidebar-bottom{display:none}#destination-index{display:flex;flex-direction:row;gap:5px 20px;flex-wrap:wrap}.index-link{font-size:12px;padding:8px 0;gap:7px}.index-number{min-width:0}.projects.projects--editorial{width:100%}.destination{margin-bottom:65px}.destination:nth-child(n){width:100%;margin-left:0}.destination .project-visual{max-height:none}.destination .project-name{font-size:clamp(27px,7vw,38px)}.project-coordinates{font-size:9px}.destination .project-meta{padding-top:15px}}
@media(max-width:440px){.project-coordinates{display:none}.destination .project-visual{max-height:none}.destination .project-name{font-size:30px}.index-link{font-size:11px}}

/* ALTROVE. / Final single-column editorial homepage */
.work-heading{padding-bottom:27px}
.editorial-shell{display:grid;grid-template-columns:minmax(0,1fr) clamp(195px,18vw,235px);gap:clamp(38px,5vw,90px);border-top:1px solid var(--line);padding-top:29px;align-items:start}
.projects.projects--editorial{display:block;min-width:0}
.projects--editorial .destination,.projects--editorial .destination:nth-child(n){width:100%;margin:0 0 clamp(68px,7.2vw,110px);margin-left:0;scroll-margin-top:95px}
.projects--editorial .destination:nth-child(3n+2){width:92%;margin-left:auto}
.projects--editorial .destination:nth-child(4n+3){width:96%;margin-left:0}
.projects--editorial .destination .project-visual{width:100%;aspect-ratio:var(--cover-ratio,3/2);height:auto;max-height:none;background:transparent;overflow:hidden}
.projects--editorial .destination .project-visual::before{background:transparent!important}
.projects--editorial .destination .project-visual img{object-fit:contain}
.projects--editorial .destination .project-meta{padding:18px 0 0;gap:20px;align-items:end}
.projects--editorial .destination .project-name{font-size:clamp(29px,3.1vw,44px);letter-spacing:-.045em}
.projects--editorial .destination .project-index{margin-bottom:10px}
.projects--editorial .destination .project-location{font-size:10px;margin-top:9px}
.projects--editorial .destination .project-coordinates{display:block}
.destination-sidebar{position:sticky;top:30px;align-self:start}
.sidebar-inner{border-top:0;padding-top:0}
.sidebar-top{margin-bottom:18px}
.sidebar-bottom{font-size:11px;line-height:1.65;letter-spacing:.13em;color:#5c5c56;margin-top:35px;padding-top:19px}
@media(min-width:1300px){.editorial-shell{grid-template-columns:minmax(0,890px) 230px;justify-content:space-between}}
@media(max-width:760px){
 .work-heading{padding-bottom:23px}
 .editorial-shell{display:flex;flex-direction:column-reverse;gap:32px;padding-top:20px}
 .destination-sidebar{position:static;width:100%}
 .sidebar-inner{padding-top:0;border-top:0}
 .sidebar-top{margin-bottom:8px}
 .sidebar-bottom{display:block;margin-top:19px;padding-top:15px}
 .projects.projects--editorial{display:block;width:100%}
 .projects--editorial .destination,.projects--editorial .destination:nth-child(n){width:100%;margin-left:0;margin-bottom:65px}
 .projects--editorial .destination .project-name{font-size:clamp(28px,6vw,38px)}
 .projects--editorial .destination .project-meta{padding-top:15px}
 .projects--editorial .destination .project-coordinates{font-size:9px}
}
@media(max-width:440px){.projects--editorial .destination .project-coordinates{display:none}}

/* ALTROVE. / Refined architectural composition — 15 October 2026.
   A centered editorial spread, one photographic column and a close index. */
@media (min-width: 761px) {
  .site-header {max-width: 1380px; margin-inline: auto; padding-inline: 42px;}
  .work {padding-inline: 42px;}
  .work-heading, .editorial-shell {max-width: 1296px; margin-inline: auto;}
  .work-heading {padding: 0 0 27px;}
  .editorial-shell {
    grid-template-columns: minmax(0, 1fr) clamp(205px, 18vw, 238px);
    justify-content: initial;
    gap: clamp(38px, 4vw, 64px);
    padding-top: 30px;
  }
  .projects--editorial .destination,
  .projects--editorial .destination:nth-child(n) {
    width: 100%; margin-left: 0; margin-bottom: clamp(78px, 8vw, 118px);
  }
  .projects--editorial .destination .project-visual {
    width: 100%; max-height: none; background: transparent;
  }
  .projects--editorial .destination .project-meta {padding-top: 19px;}
  .projects--editorial .destination .project-name {font-size: clamp(27px, 2.5vw, 37px);}
  .destination-sidebar {top: 32px;}
  .sidebar-inner {padding: 0;}
  .sidebar-top {margin-bottom: 15px;}
  .index-link {padding-block: 10px; font-size: 13px;}
  .sidebar-bottom {margin-top: 28px; padding-top: 18px;}
}
@media (min-width: 1300px) {
  .editorial-shell {
    grid-template-columns: minmax(0, 1fr) 230px;
    justify-content: initial;
    gap: 56px;
  }
}
@media (min-width: 761px) and (max-width: 1000px) {
  .site-header {padding-inline: 28px;}
  .work {padding-inline: 28px;}
  .editorial-shell {grid-template-columns: minmax(0, 1fr) 195px; gap: 30px;}
}
@media (max-width: 760px) {
  .editorial-shell {display: flex; flex-direction: column-reverse; gap: 28px;}
  .projects--editorial .destination,
  .projects--editorial .destination:nth-child(n) {width: 100%; margin-left: 0;}
}

/* ALTROVE. / Balanced spacing around geographic filters */
.work-heading{padding-top:24px!important;padding-bottom:27px!important;}
@media(max-width:760px){.work-heading{padding-top:20px!important;padding-bottom:23px!important;}}

/* ALTROVE. / Editorial identity and responsive destination index */
.sidebar-statement{font-size:11px;line-height:1.65;letter-spacing:.13em;color:#5c5c56;padding:0 0 19px;border-bottom:1px solid var(--line);margin:0 0 20px}
.destination-details{min-width:0}
.destination-details .sidebar-top{list-style:none;cursor:default;margin:0 0 15px;align-items:center}
.destination-details .sidebar-top::-webkit-details-marker{display:none}
.mobile-index-count,.mobile-index-toggle{display:none}
.destination-details #destination-index{display:flex;flex-direction:column;gap:0}
@media(max-width:760px){
 .site-header{min-height:0;padding-top:21px;padding-bottom:19px}
 .brand{font-size:30px}
 .byline{margin-top:9px}
 .work-heading{padding-top:17px!important;padding-bottom:19px!important}
 .editorial-shell{padding-top:19px;gap:24px}
 .destination-sidebar{width:100%;position:static}
 .sidebar-inner{padding:0;border:0}
 .sidebar-statement{border:0;padding:0;margin:0 0 17px;font-size:10px;line-height:1.7}
 .destination-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
 .destination-details .sidebar-top{display:flex;justify-content:space-between;gap:15px;margin:0;padding:15px 0;cursor:pointer;font-size:10px;letter-spacing:.13em;color:#66645e}
 .destination-details .sidebar-top:focus-visible{outline:2px solid currentColor;outline-offset:3px}
 .desktop-index-count{display:none}
 .mobile-index-count{display:inline}
 .mobile-index-toggle{display:block;width:8px;height:8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-right:4px;margin-top:-4px;transition:transform .18s ease}
 .destination-details[open] .mobile-index-toggle{transform:rotate(225deg);margin-top:4px}
 .destination-details #destination-index{display:flex;flex-direction:column;gap:0;padding:0 0 13px}
 .destination-details .index-link{font-size:13px;line-height:1.4;padding:9px 0;gap:15px}
 .destination-details .index-number{min-width:20px}
 .projects.projects--editorial{width:100%}
 .projects--editorial .destination,.projects--editorial .destination:nth-child(n){margin-bottom:65px}
}
@media(max-width:440px){
 .site-header{padding-top:18px;padding-bottom:16px}
 .work-heading{padding-top:15px!important;padding-bottom:17px!important}
 .editorial-shell{padding-top:17px;gap:20px}
}
@media(prefers-reduced-motion:reduce){.mobile-index-toggle{transition:none}}


/* ALTROVE. / Unified navigation: identity, explore, destinations, photographs */
.work-heading{display:none!important}
.editorial-shell{border-top:0;padding-top:0}
.sidebar-inner{border-top:0}
.sidebar-statement{border-bottom:0;margin-bottom:0;padding-bottom:0}
.sidebar-explore{margin-top:23px;padding-top:19px;border-top:1px solid var(--line);padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:21px}
.sidebar-explore-label{font-size:10px;letter-spacing:.14em;color:#87857e;margin-bottom:14px}
.sidebar-explore .filters{display:flex;flex-direction:column;align-items:stretch;gap:9px}
.sidebar-explore .filters select{display:block;width:100%;min-width:0;min-height:39px;font-size:10px;padding:8px 10px}
.sidebar-explore .reset-filters{align-self:flex-start;min-height:30px;padding:5px 0;font-size:10px}
.destination-details .sidebar-top{margin-bottom:15px}
@media(min-width:761px){
 .editorial-shell{padding-top:0}
 .destination-sidebar{top:30px;max-height:calc(100dvh - 60px);overflow-y:auto;scrollbar-width:thin}
}
@media(max-width:760px){
 .site-header{padding-bottom:17px}
 .editorial-shell{padding-top:19px;gap:23px}
 .sidebar-statement{font-size:10px;line-height:1.7;margin-bottom:0}
 .sidebar-explore{margin-top:15px;padding-top:15px;padding-bottom:16px;margin-bottom:0;border-bottom:0}
 .sidebar-explore-label{font-size:9px;margin-bottom:9px}
 .sidebar-explore .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .sidebar-explore .filters select{min-width:0;width:100%;font-size:11px;min-height:42px}
 .sidebar-explore .reset-filters{grid-column:1/-1;justify-self:start}
 .destination-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
 .destination-details .sidebar-top{margin:0;padding:14px 0}
 .destination-details #destination-index{padding-bottom:12px}
}
@media(max-width:440px){
 .editorial-shell{padding-top:16px;gap:19px}
 .sidebar-explore{margin-top:13px;padding-top:13px;padding-bottom:14px}
}

/* ALTROVE. / 16 October — balanced architectural layout */
/* A quiet transition between identity and photographs. */
.site-header{border-bottom:0}
.work::before{content:"";display:block;max-width:1320px;margin:22px auto 35px;border-top:1px solid var(--line)}
/* One restrained divider in the sidebar; spacing does the rest. */
.sidebar-statement{padding-bottom:20px;margin-bottom:21px;border-bottom:1px solid var(--line)}
.sidebar-explore{border:0;margin:0 0 24px;padding:0}
.sidebar-explore-label{margin-bottom:11px}
.sidebar-explore .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}
.sidebar-explore .filters select{width:100%;min-width:0;min-height:38px;padding:8px 21px 8px 9px;font-size:9px;letter-spacing:.015em}
.sidebar-explore .reset-filters{grid-column:1/-1;justify-self:start;padding:3px 0;min-height:24px}
@media(min-width:761px){
  .site-header{max-width:1404px}
  .editorial-shell{max-width:1320px;grid-template-columns:minmax(0,1fr) 248px;gap:clamp(35px,3.4vw,53px)}
  .destination-sidebar{top:24px}
  .destination-details .sidebar-top{margin-bottom:12px}
  .destination-details .index-link{padding-block:9px}
}
@media(min-width:761px) and (max-width:1000px){
  .editorial-shell{grid-template-columns:minmax(0,1fr) 220px;gap:30px}
  .sidebar-explore .filters select{font-size:8px;padding-left:7px;padding-right:18px}
}
@media(max-width:760px){
  .site-header{padding-top:20px;padding-bottom:15px}
  .work::before{margin:10px auto 20px}
  .editorial-shell{padding-top:0;gap:20px}
  .sidebar-statement{padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid var(--line);font-size:10px}
  .sidebar-explore{margin:0 0 13px;padding:0;border:0}
  .sidebar-explore-label{margin-bottom:9px}
  .sidebar-explore .filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .sidebar-explore .filters select{font-size:11px;min-height:42px;padding-left:11px}
  .destination-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .destination-details .sidebar-top{padding:13px 0}
  .projects--editorial .destination .project-meta{padding-top:14px}
}
@media(max-width:440px){
  .site-header{padding-top:17px;padding-bottom:13px}
  .work::before{margin:8px auto 17px}
  .editorial-shell{padding-top:0;gap:17px}
  .sidebar-statement{padding-bottom:11px;margin-bottom:12px}
  .sidebar-explore{margin-bottom:11px}
}

/* ALTROVE. / Final navigation refinements — 16 October 2026.
   Keep the approved editorial layout, improve filter readability,
   and remove unnecessary horizontal rules on narrow screens. */
@media (min-width:761px) {
  .sidebar-explore .filters {
    grid-template-columns: minmax(0, 0.40fr) minmax(0, 0.60fr);
    gap: 7px;
  }
  .sidebar-explore .filters select {
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0;
    font-size: 10px;
    letter-spacing: 0;
    padding: 8px 17px 8px 8px;
  }
  .sidebar-explore {margin-bottom: 34px;}
}
@media (min-width:761px) and (max-width:1000px) {
  .sidebar-explore .filters select {font-size: 9px; padding-left: 6px; padding-right: 16px;}
}
@media (max-width:760px) {
  /* One separator after the masthead; the rest uses whitespace. */
  .site-header {padding-bottom: 13px;}
  .work::before {margin: 7px auto 18px;}
  .sidebar-statement {
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 20px;
  }
  .sidebar-explore {margin-bottom: 15px;}
  .sidebar-explore-label {margin-bottom: 10px;}
  .sidebar-explore .filters {
    grid-template-columns: minmax(0, 0.43fr) minmax(0, 0.57fr);
    gap: 10px;
  }
  .sidebar-explore .filters select {
    min-width: 0;
    max-width: 100%;
    width: 100%;
    padding: 8px 24px 8px 11px;
    font-size: 11px;
  }
  .destination-details {
    border-top: 0;
    border-bottom: 1px solid var(--line);
  }
  .destination-details .sidebar-top {padding: 0 0 16px;}
  .editorial-shell {gap: 23px;}
}
@media (max-width:440px) {
  .sidebar-statement {margin-bottom: 18px;}
  .sidebar-explore {margin-bottom: 14px;}
  .destination-details .sidebar-top {padding-bottom: 15px;}
  .editorial-shell {gap: 21px;}
}

/* ALTROVE. — measured desktop width and consistent mobile navigation */
@media (min-width: 1101px) {
  /* Expand the editorial spread without using the entire viewport. */
  .site-header {max-width: 1560px; padding-inline: 42px;}
  .editorial-shell {max-width: 1480px; grid-template-columns: minmax(0, 1fr) 282px; gap: clamp(42px, 3.5vw, 58px);}
  .work::before {max-width: 1480px;}
  .sidebar-explore .filters {grid-template-columns: minmax(0, .39fr) minmax(0, .61fr);}
  .sidebar-explore .filters select {font-size: 10px; padding-left: 9px; padding-right: 19px;}
}
@media (min-width: 761px) and (max-width: 1100px) {
  .sidebar-explore .filters {grid-template-columns: minmax(0, .38fr) minmax(0, .62fr);}
  .sidebar-explore .filters select {font-size: 9px; padding-left: 7px; padding-right: 18px;}
}
@media (max-width: 760px) {
  /* Match the two navigation labels precisely. */
  .sidebar-explore-label,
  .destination-details .sidebar-top {
    font-size: 10px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .13em;
    color: #777873;
  }
  /* Spacing replaces extra rules; retain only the masthead and index separators. */
  .sidebar-statement {margin-bottom: 17px;}
  .sidebar-explore-label {margin-bottom: 10px;}
  .sidebar-explore {margin-bottom: 17px;}
  .destination-details .sidebar-top {padding-bottom: 14px;}
  .editorial-shell {gap: 20px;}
}
@media (max-width: 440px) {
  .sidebar-statement {margin-bottom: 16px;}
  .sidebar-explore {margin-bottom: 15px;}
  .editorial-shell {gap: 19px;}
}


/* ALTROVE. / 16 October 2026 — equal filters and clear keyboard focus */
/* Use a contained focus ring: it cannot be clipped by the sidebar edges. */
.sidebar-explore .filters select {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  width: 100%;
  outline: none;
}
.sidebar-explore .filters select:focus,
.sidebar-explore .filters select:focus-visible {
  border-color: #292929;
  box-shadow: inset 0 0 0 1px #292929;
}
/* The destination heading is an interactive summary on all screen sizes. */
.destination-details > summary.sidebar-top,
.destination-details .sidebar-top {
  cursor: pointer;
}
@media (min-width: 1101px) {
  .editorial-shell {
    grid-template-columns: minmax(0, 1fr) 310px;
  }
  .sidebar-explore .filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .sidebar-explore .filters select {
    font-size: 10px;
    padding: 8px 20px 8px 10px;
  }
}
@media (min-width: 761px) and (max-width: 1100px) {
  .editorial-shell {
    grid-template-columns: minmax(0, 1fr) 270px;
  }
  .sidebar-explore .filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .sidebar-explore .filters select {
    font-size: 9px;
    padding: 8px 17px 8px 7px;
  }
}
@media (max-width: 760px) {
  .sidebar-explore .filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Mobile only: place the atlas statement within the masthead.
   Desktop remains exactly as in the previously approved stylesheet. */
.mobile-header-statement { display: none; }
@media (max-width: 760px) {
  .mobile-header-statement {
    display: block;
    margin-top: 17px;
    font-size: 10px;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: .13em;
    color: #5c5c56;
  }
  .destination-sidebar .sidebar-statement { display: none; }
  .site-header { padding-bottom: 13px; }
  .work::before { margin-top: 13px; margin-bottom: 18px; }
}
@media (max-width: 440px) {
  .mobile-header-statement { margin-top: 15px; }
  .work::before { margin-top: 11px; margin-bottom: 17px; }
}

/* ALTROVE. / Desktop masthead refinement — mobile intentionally unchanged. */
.header-social { display: none; }
@media (min-width: 761px) {
  /* Lower the masthead slightly; keep the divider's vertical breathing room equal. */
  .site-header { padding-top: 49px; padding-bottom: 31px; }
  .work::before { margin-top: 28px; margin-bottom: 28px; }
  /* Exact same Instagram glyph, link and interaction as the footer. */
  .header-social { display: flex; align-items: center; align-self: center; }
  .header-social a { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; color: #777873; transition: color .2s; }
  .header-social a:hover, .header-social a:focus-visible { color: #20201f; }
  .header-social svg { width: 21px; height: 21px; }
}

/* ALTROVE. / Desktop masthead spacing correction — 16 October 2026.
   Return the logo to a conventional header position and balance the
   divider-to-byline / divider-to-photograph whitespace. Mobile unchanged. */
@media (min-width: 761px) {
  .site-header { padding-top: 23px; padding-bottom: 15px; }
  .work::before { margin-top: 12px; margin-bottom: 28px; }
}

/* Mobile header: show the existing Instagram link without changing layout. */
@media (max-width: 760px) {
  .site-header { position: relative; }
  .header-social {
    display: flex;
    position: absolute;
    top: 18px;
    right: 4%;
    align-items: center;
  }
  .header-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    color: #777873;
    transition: color .2s;
  }
  .header-social a:hover, .header-social a:focus-visible { color: #20201f; }
  .header-social svg { width: 21px; height: 21px; }
}
